@economic/taco 2.49.0-server.1 → 2.49.0-server.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. package/dist/components/Table3/features/useEditingState.d.ts +3 -3
  2. package/dist/components/Table3/features/useTableEditing.d.ts +3 -3
  3. package/dist/components/Table3/types.d.ts +2 -0
  4. package/dist/esm/packages/taco/src/components/Menu/components/Content.js +6 -1
  5. package/dist/esm/packages/taco/src/components/Menu/components/Content.js.map +1 -1
  6. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js +6 -6
  7. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
  8. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js +1 -0
  9. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js.map +1 -1
  10. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js +29 -18
  11. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js.map +1 -1
  12. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js +2 -2
  13. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js.map +1 -1
  14. package/dist/esm/packages/taco/src/components/Table3/useTable3.js +1 -1
  15. package/dist/esm/packages/taco/src/components/Table3/useTable3.js.map +1 -1
  16. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +2 -2
  17. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  18. package/dist/esm/packages/taco/src/index.js +1 -1
  19. package/dist/esm/packages/taco/src/primitives/Button.js +6 -1
  20. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  21. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js +3 -4
  22. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js.map +1 -1
  23. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js +1 -2
  24. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
  25. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js +1 -1
  26. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js.map +1 -1
  27. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js +1 -1
  28. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
  29. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js +3 -4
  30. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js.map +1 -1
  31. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js +1 -1
  32. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js.map +1 -1
  33. package/dist/esm/packages/taco/src/primitives/Table/types.js +1 -7
  34. package/dist/esm/packages/taco/src/primitives/Table/types.js.map +1 -1
  35. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js +13 -10
  36. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js.map +1 -1
  37. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js +8 -8
  38. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js.map +1 -1
  39. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js +17 -10
  40. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js.map +1 -1
  41. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js +1 -1
  42. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js.map +1 -1
  43. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js +1 -1
  44. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js.map +1 -1
  45. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js +2 -2
  46. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js.map +1 -1
  47. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js +1 -1
  48. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js.map +1 -1
  49. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js +2 -1
  50. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js.map +1 -1
  51. package/dist/esm/packages/taco/src/utils/keyboard.js +2 -5
  52. package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
  53. package/dist/hooks/useGlobalKeyDown.d.ts +1 -1
  54. package/dist/primitives/Table/types.d.ts +2 -7
  55. package/dist/primitives/Table/useTableDataLoader.d.ts +2 -2
  56. package/dist/primitives/Table/useTableDataLoader2.d.ts +2 -2
  57. package/dist/primitives/Table/useTableManager/features/useTableServerLoading.d.ts +3 -3
  58. package/dist/taco.cjs.development.js +110 -85
  59. package/dist/taco.cjs.development.js.map +1 -1
  60. package/dist/taco.cjs.production.min.js +1 -1
  61. package/dist/taco.cjs.production.min.js.map +1 -1
  62. package/dist/utils/keyboard.d.ts +1 -1
  63. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useTableSearchListener.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/listeners/useTableSearchListener.ts"],"sourcesContent":["import { Table as ReactTable, TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport { resetHighlightedColumnIndexes } from '../util/search';\nimport { useLocalization } from '../../../../components/Provider/Localization';\nimport { useLazyEffect } from '../../../../hooks/useLazyEffect';\nimport { getHiddenColumns } from '../util/columns';\n\nexport function useTableSearchListener<TType = unknown>(table: ReactTable<TType>) {\n const meta = table.options.meta as ReactTableMeta<TType>;\n const localization = useLocalization();\n const hiddenColumns = getHiddenColumns(table.getState().columnVisibility);\n const query = table.getState().globalFilter;\n\n // Need to re-run search when columns are getting shown/hidden.\n useLazyEffect(() => {\n if (meta.search.isEnabled) {\n const currentFilter = query;\n requestAnimationFrame(() => {\n table.resetGlobalFilter();\n table.setGlobalFilter(currentFilter);\n });\n\n if (meta.search.handleSearch && meta.search.enableGlobalFilter && query) {\n meta.search.handleSearch(query, hiddenColumns);\n }\n }\n }, [hiddenColumns.length]);\n\n // recalculates highlighted indexes whenever something important changes\n useLazyEffect(() => {\n if (meta.search.isEnabled) {\n resetHighlightedColumnIndexes(query, table, localization);\n }\n }, [\n meta.server.loadAllStatus,\n meta.search.isEnabled,\n meta.search.enableGlobalFilter,\n table.getRowModel().rows.length,\n query,\n JSON.stringify(table.getState().sorting),\n ]);\n}\n"],"names":["useTableSearchListener","table","meta","options","localization","useLocalization","hiddenColumns","getHiddenColumns","getState","columnVisibility","query","globalFilter","useLazyEffect","search","isEnabled","currentFilter","requestAnimationFrame","resetGlobalFilter","setGlobalFilter","handleSearch","enableGlobalFilter","length","resetHighlightedColumnIndexes","server","loadAllStatus","getRowModel","rows","JSON","stringify","sorting"],"mappings":";;;;;SAMgBA,sBAAsBA,CAAkBC,KAAwB;EAC5E,IAAMC,IAAI,GAAGD,KAAK,CAACE,OAAO,CAACD,IAA6B;EACxD,IAAME,YAAY,GAAGC,eAAe,EAAE;EACtC,IAAMC,aAAa,GAAGC,gBAAgB,CAACN,KAAK,CAACO,QAAQ,EAAE,CAACC,gBAAgB,CAAC;EACzE,IAAMC,KAAK,GAAGT,KAAK,CAACO,QAAQ,EAAE,CAACG,YAAY;;EAG3CC,aAAa,CAAC;IACV,IAAIV,IAAI,CAACW,MAAM,CAACC,SAAS,EAAE;MACvB,IAAMC,aAAa,GAAGL,KAAK;MAC3BM,qBAAqB,CAAC;QAClBf,KAAK,CAACgB,iBAAiB,EAAE;QACzBhB,KAAK,CAACiB,eAAe,CAACH,aAAa,CAAC;OACvC,CAAC;MAEF,IAAIb,IAAI,CAACW,MAAM,CAACM,YAAY,IAAIjB,IAAI,CAACW,MAAM,CAACO,kBAAkB,IAAIV,KAAK,EAAE;QACrER,IAAI,CAACW,MAAM,CAACM,YAAY,CAACT,KAAK,EAAEJ,aAAa,CAAC;;;GAGzD,EAAE,CAACA,aAAa,CAACe,MAAM,CAAC,CAAC;;EAG1BT,aAAa,CAAC;IACV,IAAIV,IAAI,CAACW,MAAM,CAACC,SAAS,EAAE;MACvBQ,6BAA6B,CAACZ,KAAK,EAAET,KAAK,EAAEG,YAAY,CAAC;;GAEhE,EAAE,CACCF,IAAI,CAACqB,MAAM,CAACC,aAAa,EACzBtB,IAAI,CAACW,MAAM,CAACC,SAAS,EACrBZ,IAAI,CAACW,MAAM,CAACO,kBAAkB,EAC9BnB,KAAK,CAACwB,WAAW,EAAE,CAACC,IAAI,CAACL,MAAM,EAC/BX,KAAK,EACLiB,IAAI,CAACC,SAAS,CAAC3B,KAAK,CAACO,QAAQ,EAAE,CAACqB,OAAO,CAAC,CAC3C,CAAC;AACN;;;;"}
1
+ {"version":3,"file":"useTableSearchListener.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/listeners/useTableSearchListener.ts"],"sourcesContent":["import { Table as ReactTable, TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport { resetHighlightedColumnIndexes } from '../util/search';\nimport { useLocalization } from '../../../../components/Provider/Localization';\nimport { useLazyEffect } from '../../../../hooks/useLazyEffect';\nimport { getHiddenColumns } from '../util/columns';\n\nexport function useTableSearchListener<TType = unknown>(table: ReactTable<TType>) {\n const meta = table.options.meta as ReactTableMeta<TType>;\n const localization = useLocalization();\n\n const hiddenColumns = getHiddenColumns(table.getState().columnVisibility);\n const query = table.getState().globalFilter;\n\n // Need to re-run search when columns are getting shown/hidden.\n useLazyEffect(() => {\n if (meta.search.isEnabled) {\n const currentFilter = query;\n requestAnimationFrame(() => {\n table.resetGlobalFilter();\n table.setGlobalFilter(currentFilter);\n });\n\n if (meta.search.handleSearch && meta.search.enableGlobalFilter && query) {\n meta.search.handleSearch(query, hiddenColumns);\n }\n }\n }, [hiddenColumns.length]);\n\n // recalculates highlighted indexes whenever something important changes\n useLazyEffect(() => {\n if (meta.search.isEnabled) {\n resetHighlightedColumnIndexes(query, table, localization);\n }\n }, [\n meta.server.loading,\n meta.search.isEnabled,\n meta.search.enableGlobalFilter,\n table.getRowModel().rows.length,\n query,\n JSON.stringify(table.getState().sorting),\n ]);\n}\n"],"names":["useTableSearchListener","table","meta","options","localization","useLocalization","hiddenColumns","getHiddenColumns","getState","columnVisibility","query","globalFilter","useLazyEffect","search","isEnabled","currentFilter","requestAnimationFrame","resetGlobalFilter","setGlobalFilter","handleSearch","enableGlobalFilter","length","resetHighlightedColumnIndexes","server","loading","getRowModel","rows","JSON","stringify","sorting"],"mappings":";;;;;SAMgBA,sBAAsBA,CAAkBC,KAAwB;EAC5E,IAAMC,IAAI,GAAGD,KAAK,CAACE,OAAO,CAACD,IAA6B;EACxD,IAAME,YAAY,GAAGC,eAAe,EAAE;EAEtC,IAAMC,aAAa,GAAGC,gBAAgB,CAACN,KAAK,CAACO,QAAQ,EAAE,CAACC,gBAAgB,CAAC;EACzE,IAAMC,KAAK,GAAGT,KAAK,CAACO,QAAQ,EAAE,CAACG,YAAY;;EAG3CC,aAAa,CAAC;IACV,IAAIV,IAAI,CAACW,MAAM,CAACC,SAAS,EAAE;MACvB,IAAMC,aAAa,GAAGL,KAAK;MAC3BM,qBAAqB,CAAC;QAClBf,KAAK,CAACgB,iBAAiB,EAAE;QACzBhB,KAAK,CAACiB,eAAe,CAACH,aAAa,CAAC;OACvC,CAAC;MAEF,IAAIb,IAAI,CAACW,MAAM,CAACM,YAAY,IAAIjB,IAAI,CAACW,MAAM,CAACO,kBAAkB,IAAIV,KAAK,EAAE;QACrER,IAAI,CAACW,MAAM,CAACM,YAAY,CAACT,KAAK,EAAEJ,aAAa,CAAC;;;GAGzD,EAAE,CAACA,aAAa,CAACe,MAAM,CAAC,CAAC;;EAG1BT,aAAa,CAAC;IACV,IAAIV,IAAI,CAACW,MAAM,CAACC,SAAS,EAAE;MACvBQ,6BAA6B,CAACZ,KAAK,EAAET,KAAK,EAAEG,YAAY,CAAC;;GAEhE,EAAE,CACCF,IAAI,CAACqB,MAAM,CAACC,OAAO,EACnBtB,IAAI,CAACW,MAAM,CAACC,SAAS,EACrBZ,IAAI,CAACW,MAAM,CAACO,kBAAkB,EAC9BnB,KAAK,CAACwB,WAAW,EAAE,CAACC,IAAI,CAACL,MAAM,EAC/BX,KAAK,EACLiB,IAAI,CAACC,SAAS,CAAC3B,KAAK,CAACO,QAAQ,EAAE,CAACqB,OAAO,CAAC,CAC3C,CAAC;AACN;;;;"}
@@ -8,9 +8,9 @@ function useTableServerLoadingListener(table, loadPage) {
8
8
  if (loadPage) {
9
9
  var sorting = table.getState().sorting;
10
10
  var columnFilters = table.getState().columnFilters;
11
- var search = meta.search.enableGlobalFilter ? table.getState().globalFilter : undefined;
12
11
  var hiddenColumns = getHiddenColumns(table.getState().columnVisibility);
13
- loadPage(0, sorting, columnFilters, search, hiddenColumns);
12
+ var search = meta.search.enableGlobalFilter ? table.getState().globalFilter : undefined;
13
+ loadPage(0, sorting, columnFilters, hiddenColumns, search);
14
14
  }
15
15
  }, []);
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useTableServerLoadingListener.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as ReactTable, TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport { TableServerLoadPageHandler } from '../../types';\nimport { getHiddenColumns } from '../util/columns';\n\nexport function useTableServerLoadingListener<TType = unknown>(table: ReactTable<TType>, loadPage?: TableServerLoadPageHandler) {\n const meta = table.options.meta as ReactTableMeta<TType>;\n\n // trigger load of the first page on mount\n React.useEffect(() => {\n if (loadPage) {\n const sorting = table.getState().sorting;\n const columnFilters = table.getState().columnFilters;\n const search = meta.search.enableGlobalFilter ? table.getState().globalFilter : undefined;\n const hiddenColumns = getHiddenColumns(table.getState().columnVisibility);\n\n loadPage(0, sorting, columnFilters, search, hiddenColumns);\n }\n }, []);\n}\n"],"names":["useTableServerLoadingListener","table","loadPage","meta","options","React","useEffect","sorting","getState","columnFilters","search","enableGlobalFilter","globalFilter","undefined","hiddenColumns","getHiddenColumns","columnVisibility"],"mappings":";;;SAKgBA,6BAA6BA,CAAkBC,KAAwB,EAAEC,QAAqC;EAC1H,IAAMC,IAAI,GAAGF,KAAK,CAACG,OAAO,CAACD,IAA6B;;EAGxDE,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIJ,QAAQ,EAAE;MACV,IAAMK,OAAO,GAAGN,KAAK,CAACO,QAAQ,EAAE,CAACD,OAAO;MACxC,IAAME,aAAa,GAAGR,KAAK,CAACO,QAAQ,EAAE,CAACC,aAAa;MACpD,IAAMC,MAAM,GAAGP,IAAI,CAACO,MAAM,CAACC,kBAAkB,GAAGV,KAAK,CAACO,QAAQ,EAAE,CAACI,YAAY,GAAGC,SAAS;MACzF,IAAMC,aAAa,GAAGC,gBAAgB,CAACd,KAAK,CAACO,QAAQ,EAAE,CAACQ,gBAAgB,CAAC;MAEzEd,QAAQ,CAAC,CAAC,EAAEK,OAAO,EAAEE,aAAa,EAAEC,MAAM,EAAEI,aAAa,CAAC;;GAEjE,EAAE,EAAE,CAAC;AACV;;;;"}
1
+ {"version":3,"file":"useTableServerLoadingListener.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.ts"],"sourcesContent":["import React from 'react';\nimport { Table as ReactTable, TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport { TableServerLoadPageHandler } from '../../types';\nimport { getHiddenColumns } from '../util/columns';\n\nexport function useTableServerLoadingListener<TType = unknown>(table: ReactTable<TType>, loadPage?: TableServerLoadPageHandler) {\n const meta = table.options.meta as ReactTableMeta<TType>;\n\n // trigger load of the first page on mount\n React.useEffect(() => {\n if (loadPage) {\n const sorting = table.getState().sorting;\n const columnFilters = table.getState().columnFilters;\n const hiddenColumns = getHiddenColumns(table.getState().columnVisibility);\n const search = meta.search.enableGlobalFilter ? table.getState().globalFilter : undefined;\n\n loadPage(0, sorting, columnFilters, hiddenColumns, search);\n }\n }, []);\n}\n"],"names":["useTableServerLoadingListener","table","loadPage","meta","options","React","useEffect","sorting","getState","columnFilters","hiddenColumns","getHiddenColumns","columnVisibility","search","enableGlobalFilter","globalFilter","undefined"],"mappings":";;;SAKgBA,6BAA6BA,CAAkBC,KAAwB,EAAEC,QAAqC;EAC1H,IAAMC,IAAI,GAAGF,KAAK,CAACG,OAAO,CAACD,IAA6B;;EAGxDE,cAAK,CAACC,SAAS,CAAC;IACZ,IAAIJ,QAAQ,EAAE;MACV,IAAMK,OAAO,GAAGN,KAAK,CAACO,QAAQ,EAAE,CAACD,OAAO;MACxC,IAAME,aAAa,GAAGR,KAAK,CAACO,QAAQ,EAAE,CAACC,aAAa;MACpD,IAAMC,aAAa,GAAGC,gBAAgB,CAACV,KAAK,CAACO,QAAQ,EAAE,CAACI,gBAAgB,CAAC;MACzE,IAAMC,MAAM,GAAGV,IAAI,CAACU,MAAM,CAACC,kBAAkB,GAAGb,KAAK,CAACO,QAAQ,EAAE,CAACO,YAAY,GAAGC,SAAS;MAEzFd,QAAQ,CAAC,CAAC,EAAEK,OAAO,EAAEE,aAAa,EAAEC,aAAa,EAAEG,MAAM,CAAC;;GAEjE,EAAE,EAAE,CAAC;AACV;;;;"}
@@ -66,7 +66,7 @@ function useTableManager(props, meta, internalColumns) {
66
66
  var rowHeight = useTableRowHeight(options.enableRowHeight, settings.rowHeight);
67
67
  var rowSelection = useTableRowSelection(!!options.enableRowSelection);
68
68
  var search = useTableSearch(options.enableSearch, props.onChangeSearch, settings.excludeUnmatchedRecordsInSearch);
69
- var server = useTableServerLoading(length, props.loadPage, props.loadAll, props.pages, props.pageSize, props._experimentalDataLoader2);
69
+ var server = useTableServerLoading(length, data, props.loadPage, props.loadAll, props.pages, props.pageSize, props._experimentalDataLoader2);
70
70
  // TODO: memoise
71
71
  // convert jsx column components into valid table columns
72
72
  var _mapTableChildrenToCo = mapTableChildrenToColumns(props, settings, options, internalColumns, localization),
@@ -1 +1 @@
1
- {"version":3,"file":"useTableManager.js","sources":["../../../../../../../../src/primitives/Table/useTableManager/useTableManager.ts"],"sourcesContent":["import { useReactTable, TableMeta as ReactTableMeta, RowData, getCoreRowModel } from '@tanstack/react-table';\nimport {\n TableColumnAlignment,\n TableColumnClassNameHandler,\n TableColumnDataType,\n TableColumnMenu,\n TableColumnRenderer,\n TableColumnRendererControl,\n TableFilterComparator,\n TableProps,\n} from '../types';\nimport { useReactTableInitialState, configureReactTableOptions, mapTableChildrenToColumns } from './util/setup';\nimport { getTableFeaturePreset } from './util/presets';\nimport { useTableColumnFreezing } from './features/useTableColumnFreezing';\nimport { useTableColumnOrdering } from './features/useTableColumnOrdering';\nimport { useTableFooter } from './features/useTableFooter';\nimport { useTableFontSize } from './features/useTableFontSize';\nimport { useTablePrinting } from './features/useTablePrinting';\nimport { useTableRowActions } from './features/useTableRowActions';\nimport { useTableRowActive } from './features/useTableRowActive';\nimport { useTableRowClick } from './features/useTableRowClick';\nimport { useTableRowExpansion } from './features/useTableRowExpansion';\nimport { useTableRowGoto } from './features/useTableRowGoto';\nimport { useTableRowGroups } from './features/useTableRowGroups';\nimport { useTableRowHeight } from './features/useTableRowHeight';\nimport { useTableRowSelection } from './features/useTableRowSelection';\nimport { useTableSearch } from './features/useTableSearch';\nimport { useTableServerLoading } from './features/useTableServerLoading';\nimport { useTableSettings } from './features/useTableSettings';\nimport { useTableDataListener } from './listeners/useTableDataListener';\nimport { useTableFilterListener } from './listeners/useTableFilterListener';\nimport { useTableFontSizeListener } from './listeners/useTableFontSizeListener';\nimport { useTableRowHeightListener } from './listeners/useTableRowHeightListener';\nimport { useTableRowSelectionListener } from './listeners/useTableRowSelectionListener';\nimport { useTableSearchListener } from './listeners/useTableSearchListener';\nimport { useTableSettingsListener } from './listeners/useTableSettingsListener';\nimport { useTableShortcutsListener } from './listeners/useTableShortcutsListener';\nimport { useTableSortingListener } from './listeners/useTableSortingListener';\nimport { useTableServerLoadingListener } from './listeners/useTableServerLoadingListener';\nimport { useTableManagerInternalColumns } from './types';\nimport { useTableRowDrag } from './features/useTableRowDrag';\nimport { useTableRowDrop } from './features/useTableRowDrop';\nimport { useLocalization } from '../../../components/Provider/Localization';\n\n/*\n EDITING THIS FILE? READ ME FIRST!\n\n This is a shared, common hook for multiple tables. It's feature set is specifically chosen to support features\n common across those tables. If you are adding a new feature or changing an existing one, before writing any code\n in this file ask yourself the question - is this specific to a given table, or is it common to all of them.\n If you are unsure, ask your team first.\n*/\n\ndeclare module '@tanstack/table-core' {\n interface TableMeta<TData extends RowData> {\n columnFreezing: ReturnType<typeof useTableColumnFreezing>;\n columnOrdering: ReturnType<typeof useTableColumnOrdering>;\n fontSize: ReturnType<typeof useTableFontSize>;\n footer: ReturnType<typeof useTableFooter>;\n length: number;\n printing: ReturnType<typeof useTablePrinting>;\n rowActions: ReturnType<typeof useTableRowActions>;\n rowActive: ReturnType<typeof useTableRowActive>;\n rowClick: ReturnType<typeof useTableRowClick>;\n rowDrag: ReturnType<typeof useTableRowDrag>;\n rowDrop: ReturnType<typeof useTableRowDrop>;\n rowExpansion: ReturnType<typeof useTableRowExpansion>;\n rowGoto: ReturnType<typeof useTableRowGoto>;\n rowGroups: ReturnType<typeof useTableRowGroups>;\n rowHeight: ReturnType<typeof useTableRowHeight>;\n rowIdentityAccessor: keyof TData;\n rowSelection: ReturnType<typeof useTableRowSelection>;\n search: ReturnType<typeof useTableSearch>;\n server: ReturnType<typeof useTableServerLoading>;\n }\n\n interface ColumnMeta<TData extends RowData, TValue> {\n align?: TableColumnAlignment;\n className?: TableColumnClassNameHandler<TData>;\n control?: TableColumnRendererControl<TData>;\n dataType?: TableColumnDataType;\n defaultWidth?: number;\n enableEditing?: boolean;\n enableOrdering?: boolean;\n enablePrinting?: boolean;\n enableSearch?: boolean;\n enableTruncate?: boolean;\n filters?: TableFilterComparator[];\n header: string;\n headerClassName?: string;\n menu?: TableColumnMenu;\n renderer?: TableColumnRenderer<TValue, TData>;\n tooltip?: string;\n }\n}\n\n// Placed this array outside the hook to avoid creating a new array reference on each hook re-render\nconst DEFAULT_EMPTY_ARRAY = [];\n\nexport function useTableManager<TType = unknown, TMeta = {}>(\n props: TableProps<TType>,\n meta?: Partial<ReactTableMeta<TType>> & TMeta,\n internalColumns?: useTableManagerInternalColumns<TType>\n) {\n const localization = useLocalization();\n // CSS.escape would be best here, but it doesn't seem to work very well\n const safeId = props.id.replace('.', '_');\n // configure table options, merging props with presets\n const options = getTableFeaturePreset(props);\n\n // load any persisted table settings and merge them with any defaults\n const [settings, setSettings] = useTableSettings(\n options.enableSaveSettings,\n safeId,\n props.defaultSettings,\n props.onChangeSettings\n );\n\n // ensure data is always valid\n const data = props.data ?? DEFAULT_EMPTY_ARRAY;\n const length = props.length ?? data.length;\n\n // configure common custom features\n const columnFreezing = useTableColumnFreezing(options.enableColumnFreezing);\n const columnOrdering = useTableColumnOrdering(options.enableColumnOrdering);\n const fontSize = useTableFontSize(options.enableFontSize, settings.fontSize);\n const footer = useTableFooter(options.enableFooter);\n const printing = useTablePrinting(options.enablePrinting, safeId);\n const rowActive = useTableRowActive(options.enableRowActive, props.defaultRowActiveIndex);\n const rowActions = useTableRowActions<TType>(options.enableRowActions, props.rowActions, props.rowActionsLength);\n const rowClick = useTableRowClick<TType>(options.enableRowClick, props.onRowClick);\n const rowDrag = useTableRowDrag<TType>(options.enableRowDrag && !meta?.editing?.isEditing, props.onRowDrag);\n const rowDrop = useTableRowDrop<TType>(options.enableRowDrop, props.onRowDrop);\n const rowExpansion = useTableRowExpansion<TType>(\n options.enableRowExpansion,\n options.enableRowExpansionAll,\n props.rowExpansionRenderer\n );\n const rowGoto = useTableRowGoto(options.enableRowGoto, props.onRowGoto);\n const rowGroups = useTableRowGroups(props.rowActionsForGroup);\n const rowHeight = useTableRowHeight(options.enableRowHeight, settings.rowHeight);\n const rowSelection = useTableRowSelection(!!options.enableRowSelection);\n const search = useTableSearch(options.enableSearch, props.onChangeSearch, settings.excludeUnmatchedRecordsInSearch);\n const server = useTableServerLoading(\n length,\n props.loadPage,\n props.loadAll,\n props.pages,\n props.pageSize,\n props._experimentalDataLoader2\n );\n\n // TODO: memoise\n // convert jsx column components into valid table columns\n const { columns, ...defaultState } = mapTableChildrenToColumns<TType>(\n props,\n settings,\n options,\n internalColumns,\n localization\n );\n\n // configure initial table state\n const initialState = useReactTableInitialState<TType>(props, columns, settings, defaultState);\n\n // create a react-table instance\n const instance = useReactTable<TType>({\n data,\n columns,\n // configure initial table state\n initialState,\n getCoreRowModel: getCoreRowModel<TType>(),\n // configure react-table built-in features\n ...configureReactTableOptions<TType>(options, props, localization),\n // settings that can be toggled by the user, and therefore require our own state\n enableGlobalFilter: search.enableGlobalFilter,\n // custom context\n meta: {\n // spread features from specific implementations\n ...meta,\n columnFreezing,\n columnOrdering,\n fontSize,\n footer,\n length,\n printing,\n rowActions: rowActions as any, // no other way around ReturnType<typeof X> not supporting generics\n rowActive,\n rowClick: rowClick as any, // no other way around ReturnType<typeof X> not supporting generics\n rowDrag,\n rowDrop: rowDrop as any, // no other way around ReturnType<typeof X> not supporting generics\n rowExpansion: rowExpansion as any, // no other way around ReturnType<typeof X> not supporting generics\n rowIdentityAccessor: props.rowIdentityAccessor,\n rowGoto,\n rowGroups: rowGroups as any, // no other way around ReturnType<typeof X> not supporting generics\n rowHeight,\n rowSelection,\n search,\n server,\n } as ReactTableMeta<TType> & TMeta,\n });\n\n // state listeners - we have these so that we don't have to control state outside the table\n useTableDataListener(instance);\n useTableFilterListener(instance, props.onChangeFilter);\n useTableFontSizeListener(instance);\n useTableRowHeightListener(instance);\n useTableRowSelectionListener(instance, props.onRowSelect);\n useTableSearchListener(instance);\n useTableServerLoadingListener(instance, server.loadPage);\n useTableSettingsListener(instance, setSettings);\n useTableShortcutsListener(instance, props.shortcuts);\n useTableSortingListener(instance, props.onChangeSort);\n\n return {\n id: safeId,\n instance,\n meta: (instance.options.meta ?? {}) as ReactTableMeta<TType> & TMeta,\n state: instance.getState(),\n };\n}\n"],"names":["DEFAULT_EMPTY_ARRAY","useTableManager","props","meta","internalColumns","localization","useLocalization","safeId","id","replace","options","getTableFeaturePreset","_useTableSettings","useTableSettings","enableSaveSettings","defaultSettings","onChangeSettings","settings","setSettings","data","_props$data","length","_props$length","columnFreezing","useTableColumnFreezing","enableColumnFreezing","columnOrdering","useTableColumnOrdering","enableColumnOrdering","fontSize","useTableFontSize","enableFontSize","footer","useTableFooter","enableFooter","printing","useTablePrinting","enablePrinting","rowActive","useTableRowActive","enableRowActive","defaultRowActiveIndex","rowActions","useTableRowActions","enableRowActions","rowActionsLength","rowClick","useTableRowClick","enableRowClick","onRowClick","rowDrag","useTableRowDrag","enableRowDrag","_meta$editing","editing","isEditing","onRowDrag","rowDrop","useTableRowDrop","enableRowDrop","onRowDrop","rowExpansion","useTableRowExpansion","enableRowExpansion","enableRowExpansionAll","rowExpansionRenderer","rowGoto","useTableRowGoto","enableRowGoto","onRowGoto","rowGroups","useTableRowGroups","rowActionsForGroup","rowHeight","useTableRowHeight","enableRowHeight","rowSelection","useTableRowSelection","enableRowSelection","search","useTableSearch","enableSearch","onChangeSearch","excludeUnmatchedRecordsInSearch","server","useTableServerLoading","loadPage","loadAll","pages","pageSize","_experimentalDataLoader2","_mapTableChildrenToCo","mapTableChildrenToColumns","columns","defaultState","_objectWithoutPropertiesLoose","_excluded","initialState","useReactTableInitialState","instance","useReactTable","_extends","getCoreRowModel","configureReactTableOptions","enableGlobalFilter","rowIdentityAccessor","useTableDataListener","useTableFilterListener","onChangeFilter","useTableFontSizeListener","useTableRowHeightListener","useTableRowSelectionListener","onRowSelect","useTableSearchListener","useTableServerLoadingListener","useTableSettingsListener","useTableShortcutsListener","shortcuts","useTableSortingListener","onChangeSort","_instance$options$met","state","getState"],"mappings":"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"}
1
+ {"version":3,"file":"useTableManager.js","sources":["../../../../../../../../src/primitives/Table/useTableManager/useTableManager.ts"],"sourcesContent":["import { useReactTable, TableMeta as ReactTableMeta, RowData, getCoreRowModel } from '@tanstack/react-table';\nimport {\n TableColumnAlignment,\n TableColumnClassNameHandler,\n TableColumnDataType,\n TableColumnMenu,\n TableColumnRenderer,\n TableColumnRendererControl,\n TableFilterComparator,\n TableProps,\n} from '../types';\nimport { useReactTableInitialState, configureReactTableOptions, mapTableChildrenToColumns } from './util/setup';\nimport { getTableFeaturePreset } from './util/presets';\nimport { useTableColumnFreezing } from './features/useTableColumnFreezing';\nimport { useTableColumnOrdering } from './features/useTableColumnOrdering';\nimport { useTableFooter } from './features/useTableFooter';\nimport { useTableFontSize } from './features/useTableFontSize';\nimport { useTablePrinting } from './features/useTablePrinting';\nimport { useTableRowActions } from './features/useTableRowActions';\nimport { useTableRowActive } from './features/useTableRowActive';\nimport { useTableRowClick } from './features/useTableRowClick';\nimport { useTableRowExpansion } from './features/useTableRowExpansion';\nimport { useTableRowGoto } from './features/useTableRowGoto';\nimport { useTableRowGroups } from './features/useTableRowGroups';\nimport { useTableRowHeight } from './features/useTableRowHeight';\nimport { useTableRowSelection } from './features/useTableRowSelection';\nimport { useTableSearch } from './features/useTableSearch';\nimport { useTableServerLoading } from './features/useTableServerLoading';\nimport { useTableSettings } from './features/useTableSettings';\nimport { useTableDataListener } from './listeners/useTableDataListener';\nimport { useTableFilterListener } from './listeners/useTableFilterListener';\nimport { useTableFontSizeListener } from './listeners/useTableFontSizeListener';\nimport { useTableRowHeightListener } from './listeners/useTableRowHeightListener';\nimport { useTableRowSelectionListener } from './listeners/useTableRowSelectionListener';\nimport { useTableSearchListener } from './listeners/useTableSearchListener';\nimport { useTableSettingsListener } from './listeners/useTableSettingsListener';\nimport { useTableShortcutsListener } from './listeners/useTableShortcutsListener';\nimport { useTableSortingListener } from './listeners/useTableSortingListener';\nimport { useTableServerLoadingListener } from './listeners/useTableServerLoadingListener';\nimport { useTableManagerInternalColumns } from './types';\nimport { useTableRowDrag } from './features/useTableRowDrag';\nimport { useTableRowDrop } from './features/useTableRowDrop';\nimport { useLocalization } from '../../../components/Provider/Localization';\n\n/*\n EDITING THIS FILE? READ ME FIRST!\n\n This is a shared, common hook for multiple tables. It's feature set is specifically chosen to support features\n common across those tables. If you are adding a new feature or changing an existing one, before writing any code\n in this file ask yourself the question - is this specific to a given table, or is it common to all of them.\n If you are unsure, ask your team first.\n*/\n\ndeclare module '@tanstack/table-core' {\n interface TableMeta<TData extends RowData> {\n columnFreezing: ReturnType<typeof useTableColumnFreezing>;\n columnOrdering: ReturnType<typeof useTableColumnOrdering>;\n fontSize: ReturnType<typeof useTableFontSize>;\n footer: ReturnType<typeof useTableFooter>;\n length: number;\n printing: ReturnType<typeof useTablePrinting>;\n rowActions: ReturnType<typeof useTableRowActions>;\n rowActive: ReturnType<typeof useTableRowActive>;\n rowClick: ReturnType<typeof useTableRowClick>;\n rowDrag: ReturnType<typeof useTableRowDrag>;\n rowDrop: ReturnType<typeof useTableRowDrop>;\n rowExpansion: ReturnType<typeof useTableRowExpansion>;\n rowGoto: ReturnType<typeof useTableRowGoto>;\n rowGroups: ReturnType<typeof useTableRowGroups>;\n rowHeight: ReturnType<typeof useTableRowHeight>;\n rowIdentityAccessor: keyof TData;\n rowSelection: ReturnType<typeof useTableRowSelection>;\n search: ReturnType<typeof useTableSearch>;\n server: ReturnType<typeof useTableServerLoading>;\n }\n\n interface ColumnMeta<TData extends RowData, TValue> {\n align?: TableColumnAlignment;\n className?: TableColumnClassNameHandler<TData>;\n control?: TableColumnRendererControl<TData>;\n dataType?: TableColumnDataType;\n defaultWidth?: number;\n enableEditing?: boolean;\n enableOrdering?: boolean;\n enablePrinting?: boolean;\n enableSearch?: boolean;\n enableTruncate?: boolean;\n filters?: TableFilterComparator[];\n header: string;\n headerClassName?: string;\n menu?: TableColumnMenu;\n renderer?: TableColumnRenderer<TValue, TData>;\n tooltip?: string;\n }\n}\n\n// Placed this array outside the hook to avoid creating a new array reference on each hook re-render\nconst DEFAULT_EMPTY_ARRAY = [];\n\nexport function useTableManager<TType = unknown, TMeta = {}>(\n props: TableProps<TType>,\n meta?: Partial<ReactTableMeta<TType>> & TMeta,\n internalColumns?: useTableManagerInternalColumns<TType>\n) {\n const localization = useLocalization();\n // CSS.escape would be best here, but it doesn't seem to work very well\n const safeId = props.id.replace('.', '_');\n // configure table options, merging props with presets\n const options = getTableFeaturePreset(props);\n\n // load any persisted table settings and merge them with any defaults\n const [settings, setSettings] = useTableSettings(\n options.enableSaveSettings,\n safeId,\n props.defaultSettings,\n props.onChangeSettings\n );\n\n // ensure data is always valid\n const data = props.data ?? DEFAULT_EMPTY_ARRAY;\n const length = props.length ?? data.length;\n\n // configure common custom features\n const columnFreezing = useTableColumnFreezing(options.enableColumnFreezing);\n const columnOrdering = useTableColumnOrdering(options.enableColumnOrdering);\n const fontSize = useTableFontSize(options.enableFontSize, settings.fontSize);\n const footer = useTableFooter(options.enableFooter);\n const printing = useTablePrinting(options.enablePrinting, safeId);\n const rowActive = useTableRowActive(options.enableRowActive, props.defaultRowActiveIndex);\n const rowActions = useTableRowActions<TType>(options.enableRowActions, props.rowActions, props.rowActionsLength);\n const rowClick = useTableRowClick<TType>(options.enableRowClick, props.onRowClick);\n const rowDrag = useTableRowDrag<TType>(options.enableRowDrag && !meta?.editing?.isEditing, props.onRowDrag);\n const rowDrop = useTableRowDrop<TType>(options.enableRowDrop, props.onRowDrop);\n const rowExpansion = useTableRowExpansion<TType>(\n options.enableRowExpansion,\n options.enableRowExpansionAll,\n props.rowExpansionRenderer\n );\n const rowGoto = useTableRowGoto(options.enableRowGoto, props.onRowGoto);\n const rowGroups = useTableRowGroups(props.rowActionsForGroup);\n const rowHeight = useTableRowHeight(options.enableRowHeight, settings.rowHeight);\n const rowSelection = useTableRowSelection(!!options.enableRowSelection);\n const search = useTableSearch(options.enableSearch, props.onChangeSearch, settings.excludeUnmatchedRecordsInSearch);\n const server = useTableServerLoading(\n length,\n data,\n props.loadPage,\n props.loadAll,\n props.pages,\n props.pageSize,\n props._experimentalDataLoader2\n );\n\n // TODO: memoise\n // convert jsx column components into valid table columns\n const { columns, ...defaultState } = mapTableChildrenToColumns<TType>(\n props,\n settings,\n options,\n internalColumns,\n localization\n );\n\n // configure initial table state\n const initialState = useReactTableInitialState<TType>(props, columns, settings, defaultState);\n\n // create a react-table instance\n const instance = useReactTable<TType>({\n data,\n columns,\n // configure initial table state\n initialState,\n getCoreRowModel: getCoreRowModel<TType>(),\n // configure react-table built-in features\n ...configureReactTableOptions<TType>(options, props, localization),\n // settings that can be toggled by the user, and therefore require our own state\n enableGlobalFilter: search.enableGlobalFilter,\n // custom context\n meta: {\n // spread features from specific implementations\n ...meta,\n columnFreezing,\n columnOrdering,\n fontSize,\n footer,\n length,\n printing,\n rowActions: rowActions as any, // no other way around ReturnType<typeof X> not supporting generics\n rowActive,\n rowClick: rowClick as any, // no other way around ReturnType<typeof X> not supporting generics\n rowDrag,\n rowDrop: rowDrop as any, // no other way around ReturnType<typeof X> not supporting generics\n rowExpansion: rowExpansion as any, // no other way around ReturnType<typeof X> not supporting generics\n rowIdentityAccessor: props.rowIdentityAccessor,\n rowGoto,\n rowGroups: rowGroups as any, // no other way around ReturnType<typeof X> not supporting generics\n rowHeight,\n rowSelection,\n search,\n server,\n } as ReactTableMeta<TType> & TMeta,\n });\n\n // state listeners - we have these so that we don't have to control state outside the table\n useTableDataListener(instance);\n useTableFilterListener(instance, props.onChangeFilter);\n useTableFontSizeListener(instance);\n useTableRowHeightListener(instance);\n useTableRowSelectionListener(instance, props.onRowSelect);\n useTableSearchListener(instance);\n useTableServerLoadingListener(instance, server.loadPage);\n useTableSettingsListener(instance, setSettings);\n useTableShortcutsListener(instance, props.shortcuts);\n useTableSortingListener(instance, props.onChangeSort);\n\n return {\n id: safeId,\n instance,\n meta: (instance.options.meta ?? {}) as ReactTableMeta<TType> & TMeta,\n state: instance.getState(),\n };\n}\n"],"names":["DEFAULT_EMPTY_ARRAY","useTableManager","props","meta","internalColumns","localization","useLocalization","safeId","id","replace","options","getTableFeaturePreset","_useTableSettings","useTableSettings","enableSaveSettings","defaultSettings","onChangeSettings","settings","setSettings","data","_props$data","length","_props$length","columnFreezing","useTableColumnFreezing","enableColumnFreezing","columnOrdering","useTableColumnOrdering","enableColumnOrdering","fontSize","useTableFontSize","enableFontSize","footer","useTableFooter","enableFooter","printing","useTablePrinting","enablePrinting","rowActive","useTableRowActive","enableRowActive","defaultRowActiveIndex","rowActions","useTableRowActions","enableRowActions","rowActionsLength","rowClick","useTableRowClick","enableRowClick","onRowClick","rowDrag","useTableRowDrag","enableRowDrag","_meta$editing","editing","isEditing","onRowDrag","rowDrop","useTableRowDrop","enableRowDrop","onRowDrop","rowExpansion","useTableRowExpansion","enableRowExpansion","enableRowExpansionAll","rowExpansionRenderer","rowGoto","useTableRowGoto","enableRowGoto","onRowGoto","rowGroups","useTableRowGroups","rowActionsForGroup","rowHeight","useTableRowHeight","enableRowHeight","rowSelection","useTableRowSelection","enableRowSelection","search","useTableSearch","enableSearch","onChangeSearch","excludeUnmatchedRecordsInSearch","server","useTableServerLoading","loadPage","loadAll","pages","pageSize","_experimentalDataLoader2","_mapTableChildrenToCo","mapTableChildrenToColumns","columns","defaultState","_objectWithoutPropertiesLoose","_excluded","initialState","useReactTableInitialState","instance","useReactTable","_extends","getCoreRowModel","configureReactTableOptions","enableGlobalFilter","rowIdentityAccessor","useTableDataListener","useTableFilterListener","onChangeFilter","useTableFontSizeListener","useTableRowHeightListener","useTableRowSelectionListener","onRowSelect","useTableSearchListener","useTableServerLoadingListener","useTableSettingsListener","useTableShortcutsListener","shortcuts","useTableSortingListener","onChangeSort","_instance$options$met","state","getState"],"mappings":"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"}
@@ -265,7 +265,8 @@ function configureReactTableOptions(options, props, localization) {
265
265
  getExpandedRowModel: getExpandedRowModel(),
266
266
  getGroupedRowModel: getGroupedRowModel(),
267
267
  getRowId: getRowId,
268
- groupedColumnMode: false
268
+ groupedColumnMode: false,
269
+ keepPinnedRows: false
269
270
  };
270
271
  if (tableOptions.enableColumnResizing) {
271
272
  tableOptions.columnResizeMode = 'onChange';
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/util/setup.ts"],"sourcesContent":["import React from 'react';\nimport {\n createColumnHelper,\n getExpandedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getSortedRowModel,\n TableOptions as ReactTableOptions,\n Row as ReactTableRow,\n Column as ReactTableColumn,\n ColumnDef as ReactTableColumnDef,\n ColumnPinningState as ReactTableColumnPinningState,\n ColumnSizingState as ReactTableColumnSizingState,\n ColumnSort as ReactTableColumnSort,\n TableState as ReactTableState,\n VisibilityState as ReactTableVisibilityState,\n} from '@tanstack/react-table';\nimport get from 'lodash/get';\nimport { useTableManagerInternalColumns, useTableManagerInternalColumn } from '../types';\nimport { TableColumnProps, TableFeatureProps, TableGroupProps, TableProps, TableSettings } from '../../types';\nimport { getSortingFn } from './sorting';\nimport { ensureOrdering, freezeUptoExternalColumn, getCellMinWidth, unfreezeAllExternalColumns } from './columns';\nimport { columnFilterFn } from './filtering';\nimport { globalFilterFn } from './search';\nimport { ignoreInternalColumns } from './settings';\nimport { getDataTypeProperties } from './dataTypes';\nimport { Localization } from '../../../../components/Provider/Localization';\n\n// mapping children to react-table columns\nfunction processChildren<TType>(\n child: React.ReactChild | React.ReactFragment | React.ReactPortal,\n columns: ReactTableColumnDef<TType>[],\n defaultSizing: ReactTableColumnSizingState,\n defaultSorting: ReactTableColumnSort[],\n defaultVisibility: ReactTableVisibilityState,\n settings: TableSettings,\n defaultRowGroupColumnId: keyof TType | undefined,\n localization: Localization\n): ReactTableColumnDef<TType>[] {\n const columnHelper = createColumnHelper<TType>();\n\n if (React.isValidElement<TableGroupProps>(child) && child.props.children) {\n const { children, id, header } = child.props;\n\n columns.push(\n columnHelper.group({\n id,\n header,\n columns: React.Children.toArray(children).reduce(\n (columns: ReactTableColumnDef<TType>[], child) =>\n processChildren<TType>(\n child,\n columns,\n defaultSizing,\n defaultSorting,\n defaultVisibility,\n settings,\n defaultRowGroupColumnId,\n localization\n ),\n []\n ),\n // we don't want to let column groups be grouped/aggregrated\n enableGrouping: false,\n })\n );\n } else if (React.isValidElement<TableColumnProps<TType>>(child) && (child.props.accessor || child.props.id)) {\n const {\n id: untypedId,\n accessor: accessorKey = untypedId,\n // renderers\n renderer,\n aggregate,\n footer,\n header,\n // options\n aggregationFn,\n defaultHidden,\n defaultWidth,\n enableEditing = !!child.props.control,\n enableFiltering: enableColumnFilter = true,\n enableGrouping = false,\n enableHiding = true,\n enableOrdering = true,\n enablePrinting = true,\n enableResizing = true,\n enableSearch: enableGlobalFilter = true,\n enableSorting = true,\n enableTruncate = false,\n minWidth: minSize = getCellMinWidth(settings.fontSize),\n sort,\n sortFn,\n ...meta\n } = child.props;\n const id = untypedId as string;\n const dataTypeProperties = getDataTypeProperties<TType>(child.props.dataType);\n\n if (defaultHidden && enableHiding) {\n defaultVisibility[id] = false;\n }\n\n if (defaultWidth) {\n defaultSizing[id] = defaultWidth as any;\n }\n\n const isGrouped = defaultRowGroupColumnId === id;\n\n if (child.props.sort !== undefined || isGrouped) {\n defaultSorting.push({\n id,\n desc: sort === 'desc',\n });\n }\n\n const column: ReactTableColumnDef<TType, any> = {\n id,\n accessorKey,\n // To avoid errors caused by undefined row data values, we pass accessorFn as a preventive measure\n // accessorKey can be dot notated strings, so we use lodash.get to access deeply nested children\n accessorFn: row => get(row, accessorKey),\n header: header,\n // features\n enableColumnFilter,\n enableGlobalFilter,\n enableGrouping,\n enableHiding: isGrouped ? false : enableHiding,\n enableResizing,\n enableSorting,\n // config - sizing\n minSize,\n // meta\n meta: {\n ...(meta as any),\n align: meta.align ?? dataTypeProperties.align,\n defaultWidth,\n enableOrdering: isGrouped ? false : enableOrdering,\n enablePrinting,\n enableTruncate,\n enableEditing,\n header,\n renderer,\n },\n };\n\n // renderers - use defined renderers first, then fall back to data type renderers (if there is one)\n if (typeof renderer === 'function') {\n column.cell = info => renderer(info.getValue(), info.row.original);\n } else if (dataTypeProperties.getDisplayValue) {\n const dataTypeRenderer = (value: any) => {\n const displayValue = dataTypeProperties.getDisplayValue?.(value, { localization });\n\n if (Array.isArray(displayValue)) {\n return displayValue[0] ?? value;\n }\n\n return displayValue ?? value;\n };\n column.cell = info => dataTypeRenderer(info.getValue());\n (column.meta as any).renderer = dataTypeRenderer;\n }\n\n if (typeof footer === 'function') {\n column.footer = info =>\n footer(info.table.getRowModel().rows.flatMap(row => (row.original !== undefined ? row.original : [])));\n }\n\n // config - filtering\n if (enableColumnFilter) {\n column.filterFn = 'tacoFilter' as any;\n }\n\n // config - grouping/aggregation\n if (enableGrouping) {\n column.aggregationFn = aggregationFn;\n\n if (typeof aggregate === 'function') {\n column.aggregatedCell = info => aggregate(info.getValue(), info.row.original);\n }\n }\n\n // config - sorting\n if (enableSorting) {\n column.sortingFn = getSortingFn<TType>(child.props.dataType, sortFn);\n column.sortDescFirst = false;\n column.sortUndefined = 1;\n }\n\n columns.push(column);\n }\n\n return columns;\n}\n\nfunction createInternalColumn<TType = unknown>(\n id: string,\n column: useTableManagerInternalColumn<TType>,\n defaultSizing: ReactTableColumnSizingState\n) {\n if (column.size) {\n defaultSizing[id] = column.size;\n }\n\n return {\n id,\n accessorKey: id,\n header: column.header,\n cell: column.renderer,\n // features\n enableColumnFilter: false,\n enableGlobalFilter: false,\n enableGrouping: false,\n enableHiding: false,\n enableResizing: false,\n enableSorting: false,\n // config - sizing\n size: column.size,\n minSize: column.size,\n // meta\n meta: {\n ...(column.meta as any),\n enableOrdering: false,\n enablePrinting: false,\n enableTruncate: false,\n },\n } as ReactTableColumnDef<TType, any>;\n}\n\nexport function mapTableChildrenToColumns<TType = unknown>(\n props: TableProps<TType>,\n settings: TableSettings,\n options: TableFeatureProps<TType>,\n internalColumns: useTableManagerInternalColumns<TType> | undefined,\n localization: Localization\n) {\n const { children, defaultRowGroupColumnId } = props;\n const defaultSizing: ReactTableColumnSizingState = {};\n const defaultSorting: ReactTableColumnSort[] = [];\n const defaultVisibility: ReactTableVisibilityState = {};\n\n const columns = React.Children.toArray(children).reduce(\n (columns: ReactTableColumnDef<TType>[], child) =>\n processChildren<TType>(\n child,\n columns,\n defaultSizing,\n defaultSorting,\n defaultVisibility,\n settings,\n defaultRowGroupColumnId,\n localization\n ),\n\n []\n );\n\n if (internalColumns) {\n if (options.enableRowExpansion && props.rowExpansionRenderer && internalColumns.rowExpansion) {\n const column = createInternalColumn<TType>('__expansion', internalColumns.rowExpansion, defaultSizing);\n columns.unshift(column);\n }\n\n if (options.enableRowSelection && internalColumns.rowSelection) {\n const column = createInternalColumn<TType>('__select', internalColumns.rowSelection, defaultSizing);\n columns.unshift(column);\n }\n\n if (options.enableRowDrag && props.onRowDrag && internalColumns.rowDrag) {\n const column = createInternalColumn<TType>('__drag', internalColumns.rowDrag, defaultSizing);\n columns.unshift(column);\n }\n\n if (options.enableRowActions && props.rowActions?.length && internalColumns.rowActions) {\n const column = createInternalColumn<TType>('__actions', internalColumns.rowActions, defaultSizing);\n columns.push(column);\n }\n }\n\n return { columns, defaultSizing, defaultSorting, defaultVisibility };\n}\n\nexport function configureReactTableOptions<TType = unknown>(\n options: TableFeatureProps<TType>,\n props: TableProps<TType>,\n localization: Localization\n) {\n // We don't want to expose internal Tanstack Table row, so we need to wrap enableRowSelection callback into additional function,\n // which receives the React Table Row object and passes row.original to a callback.\n const reactTableEnableRowSelection =\n typeof options.enableRowSelection === 'function'\n ? (row: ReactTableRow<TType>) => (options.enableRowSelection as (row: TType) => boolean)(row.original)\n : options.enableRowSelection;\n\n let getRowId;\n\n if (props.rowIdentityAccessor) {\n getRowId = (originalRow: TType | undefined, index: number) => {\n if (originalRow) {\n return String(originalRow[props.rowIdentityAccessor as string]);\n }\n\n return String(index);\n };\n }\n\n const tableOptions: Partial<ReactTableOptions<TType>> = {\n defaultColumn: {\n enableColumnFilter: options.enableFiltering || true,\n enableGrouping: false,\n enableHiding: options.enableColumnHiding || true,\n enableResizing: options.enableColumnResizing || true,\n enableGlobalFilter: options.enableSearch || true,\n enableSorting: options.enableSorting || true,\n minSize: 1,\n // the default is 150, which is a bit random\n size: 1,\n },\n enableColumnFilters: options.enableFiltering ?? false,\n enableColumnResizing: options.enableColumnResizing ?? false,\n enableExpanding: options.enableRowExpansion ?? false,\n enableGrouping: true, // users can't customise row grouping, so it can just be always enabled and left to the defaultRowGroupColumnId prop\n enableHiding: options.enableColumnHiding ?? false,\n enablePinning: options.enableColumnFreezing ?? false,\n enableRowPinning: true, // users can't customise row pinning, so it can just be always enabled\n enableRowSelection: reactTableEnableRowSelection ?? false,\n enableSorting: options.enableSorting ?? false,\n // models for default features\n getExpandedRowModel: getExpandedRowModel<TType>(),\n getGroupedRowModel: getGroupedRowModel<TType>(),\n getRowId,\n groupedColumnMode: false,\n };\n\n if (tableOptions.enableColumnResizing) {\n tableOptions.columnResizeMode = 'onChange';\n }\n\n if (tableOptions.enableColumnFilters) {\n // enter controlled filter mode (controlled could be local state, but usually the server)\n if (props.onChangeFilter) {\n // tableOptions.manualFiltering = true;\n // we don't set it because it breaks global filtering (used for search, which is fully client side)\n //\n // tableOptions.onColumnFiltersChange = ...\n // we don't set this because it expects state to be maintained externally, and we don't want\n // consumers to control state outside the table. instead we have a listener that calls onFilter\n } else {\n tableOptions.getFilteredRowModel = getFilteredRowModel<TType>();\n tableOptions.filterFns = {\n tacoFilter: (row: ReactTableRow<TType>, columnId: string, filter: any) =>\n columnFilterFn(row.getValue(columnId), filter),\n };\n }\n }\n\n if (options.enableSearch) {\n // always set these because enableGlobalFilter can be toggled on and off by the user\n tableOptions.getFilteredRowModel = getFilteredRowModel<TType>();\n tableOptions.globalFilterFn = (row: ReactTableRow<TType>, columnId: string, searchQuery: any) =>\n globalFilterFn(row, columnId, searchQuery, localization);\n tableOptions.getColumnCanGlobalFilter = (column: ReactTableColumn<TType>) =>\n column.columnDef.meta?.enableSearch !== false && column.getIsVisible();\n\n // enter controlled search mode (controlled could be local state, but usually the server)\n if (props.onChangeSearch) {\n if (props._experimentalDataLoader2) {\n tableOptions.manualFiltering = true;\n } else {\n // tableOptions.manualFiltering = true;\n // we don't set this because controlled search is not currently supported, search is always client side\n //\n // tableOptions.onGlobalFilterChange = ...\n // we don't set this because it expects state to be maintained externally, and we don't want\n // consumers to control state outside the table. instead we have a listener that calls onSearch.\n //\n // we also don't always filter when searching, we have the highlight functionality as the default\n // and filtering can be toggled by the user\n }\n }\n }\n\n if (tableOptions.enableSorting) {\n // enter controlled sort mode (controlled could be local state, but usually the server)\n if (props.onChangeSort) {\n tableOptions.manualSorting = true;\n\n // tableOptions.onSortingChange = ...\n // we don't set this because it expects state to be maintained externally, and we don't want\n // consumers to control state outside the table. instead we have a listener that calls onSort\n } else {\n tableOptions.getSortedRowModel = getSortedRowModel();\n }\n }\n\n return tableOptions;\n}\n\nexport function useReactTableInitialState<TType = unknown>(\n props: TableProps<TType>,\n columns: ReactTableColumnDef<TType>[],\n persistedSettings: TableSettings,\n defaults: {\n defaultSizing: ReactTableColumnSizingState;\n defaultSorting: ReactTableColumnSort[];\n defaultVisibility: ReactTableVisibilityState;\n }\n): Partial<ReactTableState> {\n return React.useMemo(() => {\n const ignoreNotDefinedColumns = column => columns.find(definedColumn => definedColumn.id === column.id);\n\n const columnPinning: ReactTableColumnPinningState =\n persistedSettings.columnPinning ?? props.defaultSettings?.columnPinning ?? {};\n\n const columnOrder = ensureOrdering<TType>(\n columns,\n persistedSettings.columnOrder ?? props.defaultSettings?.columnOrder,\n columnPinning.left\n );\n\n // ensure internal columns are pinned, and are pinned in the correct order\n if (columnPinning?.left?.length) {\n columnPinning.left = freezeUptoExternalColumn(\n columnOrder.indexOf(columnPinning.left[columnPinning.left.length - 1]),\n columnOrder\n );\n } else {\n if (props.defaultColumnFreezingIndex) {\n columnPinning.left = freezeUptoExternalColumn(props.defaultColumnFreezingIndex, columnOrder);\n } else {\n columnPinning.left = unfreezeAllExternalColumns(columnOrder);\n }\n }\n\n const state: Partial<ReactTableState> = {\n columnFilters: persistedSettings.columnFilters ?? props.defaultSettings?.columnFilters ?? [],\n columnOrder,\n columnPinning,\n columnSizing: ignoreInternalColumns(\n persistedSettings.columnSizing ?? props.defaultSettings?.columnSizing ?? defaults.defaultSizing ?? {}\n ),\n columnVisibility:\n persistedSettings.columnVisibility ?? props.defaultSettings?.columnVisibility ?? defaults.defaultVisibility ?? {},\n globalFilter: persistedSettings.searchQuery ?? props.defaultSettings?.searchQuery,\n sorting: persistedSettings.sorting\n ? persistedSettings.sorting.filter(ignoreNotDefinedColumns)\n : props.defaultSettings?.sorting ?? defaults.defaultSorting,\n };\n\n if (props.defaultRowGroupColumnId) {\n state.grouping = [props.defaultRowGroupColumnId as string];\n // row groups should (all) always be expanded by default\n state.expanded = true;\n }\n\n return state;\n }, []);\n}\n"],"names":["processChildren","child","columns","defaultSizing","defaultSorting","defaultVisibility","settings","defaultRowGroupColumnId","localization","columnHelper","createColumnHelper","React","isValidElement","props","children","_child$props","id","header","push","group","Children","toArray","reduce","enableGrouping","accessor","_meta$align","_child$props2","untypedId","_child$props2$accesso","accessorKey","renderer","aggregate","footer","aggregationFn","defaultHidden","defaultWidth","_child$props2$enableE","enableEditing","control","_child$props2$enableF","enableFiltering","enableColumnFilter","_child$props2$enableG","_child$props2$enableH","enableHiding","_child$props2$enableO","enableOrdering","_child$props2$enableP","enablePrinting","_child$props2$enableR","enableResizing","_child$props2$enableS","enableSearch","enableGlobalFilter","_child$props2$enableS2","enableSorting","_child$props2$enableT","enableTruncate","_child$props2$minWidt","minWidth","minSize","getCellMinWidth","fontSize","sort","sortFn","meta","_objectWithoutPropertiesLoose","_excluded","dataTypeProperties","getDataTypeProperties","dataType","isGrouped","undefined","desc","column","accessorFn","row","get","_extends","align","cell","info","getValue","original","getDisplayValue","dataTypeRenderer","value","displayValue","_dataTypeProperties$g","call","Array","isArray","_displayValue$","table","getRowModel","rows","flatMap","filterFn","aggregatedCell","sortingFn","getSortingFn","sortDescFirst","sortUndefined","createInternalColumn","size","mapTableChildrenToColumns","options","internalColumns","_props$rowActions","enableRowExpansion","rowExpansionRenderer","rowExpansion","unshift","enableRowSelection","rowSelection","enableRowDrag","onRowDrag","rowDrag","enableRowActions","rowActions","length","configureReactTableOptions","reactTableEnableRowSelection","getRowId","rowIdentityAccessor","originalRow","index","String","tableOptions","defaultColumn","enableColumnHiding","enableColumnResizing","enableColumnFilters","_options$enableFilter","_options$enableColumn","enableExpanding","_options$enableRowExp","_options$enableColumn2","enablePinning","_options$enableColumn3","enableColumnFreezing","enableRowPinning","_options$enableSortin","getExpandedRowModel","getGroupedRowModel","groupedColumnMode","columnResizeMode","onChangeFilter","getFilteredRowModel","filterFns","tacoFilter","columnId","filter","columnFilterFn","globalFilterFn","searchQuery","getColumnCanGlobalFilter","_column$columnDef$met","columnDef","getIsVisible","onChangeSearch","_experimentalDataLoader2","manualFiltering","onChangeSort","manualSorting","getSortedRowModel","useReactTableInitialState","persistedSettings","defaults","useMemo","ignoreNotDefinedColumns","find","definedColumn","columnPinning","_ref","_persistedSettings$co","_props$defaultSetting","defaultSettings","columnOrder","ensureOrdering","_persistedSettings$co2","_props$defaultSetting2","left","_columnPinning$left","freezeUptoExternalColumn","indexOf","defaultColumnFreezingIndex","unfreezeAllExternalColumns","state","columnFilters","_ref2","_persistedSettings$co3","_props$defaultSetting3","columnSizing","ignoreInternalColumns","_ref3","_ref4","_persistedSettings$co4","_props$defaultSetting4","columnVisibility","_ref5","_ref6","_persistedSettings$co5","_props$defaultSetting5","globalFilter","_persistedSettings$se","_props$defaultSetting6","sorting","_props$defaultSetting7","_props$defaultSetting8","grouping","expanded"],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sources":["../../../../../../../../../src/primitives/Table/useTableManager/util/setup.ts"],"sourcesContent":["import React from 'react';\nimport {\n createColumnHelper,\n getExpandedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getSortedRowModel,\n TableOptions as ReactTableOptions,\n Row as ReactTableRow,\n Column as ReactTableColumn,\n ColumnDef as ReactTableColumnDef,\n ColumnPinningState as ReactTableColumnPinningState,\n ColumnSizingState as ReactTableColumnSizingState,\n ColumnSort as ReactTableColumnSort,\n TableState as ReactTableState,\n VisibilityState as ReactTableVisibilityState,\n} from '@tanstack/react-table';\nimport get from 'lodash/get';\nimport { useTableManagerInternalColumns, useTableManagerInternalColumn } from '../types';\nimport { TableColumnProps, TableFeatureProps, TableGroupProps, TableProps, TableSettings } from '../../types';\nimport { getSortingFn } from './sorting';\nimport { ensureOrdering, freezeUptoExternalColumn, getCellMinWidth, unfreezeAllExternalColumns } from './columns';\nimport { columnFilterFn } from './filtering';\nimport { globalFilterFn } from './search';\nimport { ignoreInternalColumns } from './settings';\nimport { getDataTypeProperties } from './dataTypes';\nimport { Localization } from '../../../../components/Provider/Localization';\n\n// mapping children to react-table columns\nfunction processChildren<TType>(\n child: React.ReactChild | React.ReactFragment | React.ReactPortal,\n columns: ReactTableColumnDef<TType>[],\n defaultSizing: ReactTableColumnSizingState,\n defaultSorting: ReactTableColumnSort[],\n defaultVisibility: ReactTableVisibilityState,\n settings: TableSettings,\n defaultRowGroupColumnId: keyof TType | undefined,\n localization: Localization\n): ReactTableColumnDef<TType>[] {\n const columnHelper = createColumnHelper<TType>();\n\n if (React.isValidElement<TableGroupProps>(child) && child.props.children) {\n const { children, id, header } = child.props;\n\n columns.push(\n columnHelper.group({\n id,\n header,\n columns: React.Children.toArray(children).reduce(\n (columns: ReactTableColumnDef<TType>[], child) =>\n processChildren<TType>(\n child,\n columns,\n defaultSizing,\n defaultSorting,\n defaultVisibility,\n settings,\n defaultRowGroupColumnId,\n localization\n ),\n []\n ),\n // we don't want to let column groups be grouped/aggregrated\n enableGrouping: false,\n })\n );\n } else if (React.isValidElement<TableColumnProps<TType>>(child) && (child.props.accessor || child.props.id)) {\n const {\n id: untypedId,\n accessor: accessorKey = untypedId,\n // renderers\n renderer,\n aggregate,\n footer,\n header,\n // options\n aggregationFn,\n defaultHidden,\n defaultWidth,\n enableEditing = !!child.props.control,\n enableFiltering: enableColumnFilter = true,\n enableGrouping = false,\n enableHiding = true,\n enableOrdering = true,\n enablePrinting = true,\n enableResizing = true,\n enableSearch: enableGlobalFilter = true,\n enableSorting = true,\n enableTruncate = false,\n minWidth: minSize = getCellMinWidth(settings.fontSize),\n sort,\n sortFn,\n ...meta\n } = child.props;\n const id = untypedId as string;\n const dataTypeProperties = getDataTypeProperties<TType>(child.props.dataType);\n\n if (defaultHidden && enableHiding) {\n defaultVisibility[id] = false;\n }\n\n if (defaultWidth) {\n defaultSizing[id] = defaultWidth as any;\n }\n\n const isGrouped = defaultRowGroupColumnId === id;\n\n if (child.props.sort !== undefined || isGrouped) {\n defaultSorting.push({\n id,\n desc: sort === 'desc',\n });\n }\n\n const column: ReactTableColumnDef<TType, any> = {\n id,\n accessorKey,\n // To avoid errors caused by undefined row data values, we pass accessorFn as a preventive measure\n // accessorKey can be dot notated strings, so we use lodash.get to access deeply nested children\n accessorFn: row => get(row, accessorKey),\n header: header,\n // features\n enableColumnFilter,\n enableGlobalFilter,\n enableGrouping,\n enableHiding: isGrouped ? false : enableHiding,\n enableResizing,\n enableSorting,\n // config - sizing\n minSize,\n // meta\n meta: {\n ...(meta as any),\n align: meta.align ?? dataTypeProperties.align,\n defaultWidth,\n enableOrdering: isGrouped ? false : enableOrdering,\n enablePrinting,\n enableTruncate,\n enableEditing,\n header,\n renderer,\n },\n };\n\n // renderers - use defined renderers first, then fall back to data type renderers (if there is one)\n if (typeof renderer === 'function') {\n column.cell = info => renderer(info.getValue(), info.row.original);\n } else if (dataTypeProperties.getDisplayValue) {\n const dataTypeRenderer = (value: any) => {\n const displayValue = dataTypeProperties.getDisplayValue?.(value, { localization });\n\n if (Array.isArray(displayValue)) {\n return displayValue[0] ?? value;\n }\n\n return displayValue ?? value;\n };\n column.cell = info => dataTypeRenderer(info.getValue());\n (column.meta as any).renderer = dataTypeRenderer;\n }\n\n if (typeof footer === 'function') {\n column.footer = info =>\n footer(info.table.getRowModel().rows.flatMap(row => (row.original !== undefined ? row.original : [])));\n }\n\n // config - filtering\n if (enableColumnFilter) {\n column.filterFn = 'tacoFilter' as any;\n }\n\n // config - grouping/aggregation\n if (enableGrouping) {\n column.aggregationFn = aggregationFn;\n\n if (typeof aggregate === 'function') {\n column.aggregatedCell = info => aggregate(info.getValue(), info.row.original);\n }\n }\n\n // config - sorting\n if (enableSorting) {\n column.sortingFn = getSortingFn<TType>(child.props.dataType, sortFn);\n column.sortDescFirst = false;\n column.sortUndefined = 1;\n }\n\n columns.push(column);\n }\n\n return columns;\n}\n\nfunction createInternalColumn<TType = unknown>(\n id: string,\n column: useTableManagerInternalColumn<TType>,\n defaultSizing: ReactTableColumnSizingState\n) {\n if (column.size) {\n defaultSizing[id] = column.size;\n }\n\n return {\n id,\n accessorKey: id,\n header: column.header,\n cell: column.renderer,\n // features\n enableColumnFilter: false,\n enableGlobalFilter: false,\n enableGrouping: false,\n enableHiding: false,\n enableResizing: false,\n enableSorting: false,\n // config - sizing\n size: column.size,\n minSize: column.size,\n // meta\n meta: {\n ...(column.meta as any),\n enableOrdering: false,\n enablePrinting: false,\n enableTruncate: false,\n },\n } as ReactTableColumnDef<TType, any>;\n}\n\nexport function mapTableChildrenToColumns<TType = unknown>(\n props: TableProps<TType>,\n settings: TableSettings,\n options: TableFeatureProps<TType>,\n internalColumns: useTableManagerInternalColumns<TType> | undefined,\n localization: Localization\n) {\n const { children, defaultRowGroupColumnId } = props;\n const defaultSizing: ReactTableColumnSizingState = {};\n const defaultSorting: ReactTableColumnSort[] = [];\n const defaultVisibility: ReactTableVisibilityState = {};\n\n const columns = React.Children.toArray(children).reduce(\n (columns: ReactTableColumnDef<TType>[], child) =>\n processChildren<TType>(\n child,\n columns,\n defaultSizing,\n defaultSorting,\n defaultVisibility,\n settings,\n defaultRowGroupColumnId,\n localization\n ),\n\n []\n );\n\n if (internalColumns) {\n if (options.enableRowExpansion && props.rowExpansionRenderer && internalColumns.rowExpansion) {\n const column = createInternalColumn<TType>('__expansion', internalColumns.rowExpansion, defaultSizing);\n columns.unshift(column);\n }\n\n if (options.enableRowSelection && internalColumns.rowSelection) {\n const column = createInternalColumn<TType>('__select', internalColumns.rowSelection, defaultSizing);\n columns.unshift(column);\n }\n\n if (options.enableRowDrag && props.onRowDrag && internalColumns.rowDrag) {\n const column = createInternalColumn<TType>('__drag', internalColumns.rowDrag, defaultSizing);\n columns.unshift(column);\n }\n\n if (options.enableRowActions && props.rowActions?.length && internalColumns.rowActions) {\n const column = createInternalColumn<TType>('__actions', internalColumns.rowActions, defaultSizing);\n columns.push(column);\n }\n }\n\n return { columns, defaultSizing, defaultSorting, defaultVisibility };\n}\n\nexport function configureReactTableOptions<TType = unknown>(\n options: TableFeatureProps<TType>,\n props: TableProps<TType>,\n localization: Localization\n) {\n // We don't want to expose internal Tanstack Table row, so we need to wrap enableRowSelection callback into additional function,\n // which receives the React Table Row object and passes row.original to a callback.\n const reactTableEnableRowSelection =\n typeof options.enableRowSelection === 'function'\n ? (row: ReactTableRow<TType>) => (options.enableRowSelection as (row: TType) => boolean)(row.original)\n : options.enableRowSelection;\n\n let getRowId;\n\n if (props.rowIdentityAccessor) {\n getRowId = (originalRow: TType | undefined, index: number) => {\n if (originalRow) {\n return String(originalRow[props.rowIdentityAccessor as string]);\n }\n\n return String(index);\n };\n }\n\n const tableOptions: Partial<ReactTableOptions<TType>> = {\n defaultColumn: {\n enableColumnFilter: options.enableFiltering || true,\n enableGrouping: false,\n enableHiding: options.enableColumnHiding || true,\n enableResizing: options.enableColumnResizing || true,\n enableGlobalFilter: options.enableSearch || true,\n enableSorting: options.enableSorting || true,\n minSize: 1,\n // the default is 150, which is a bit random\n size: 1,\n },\n enableColumnFilters: options.enableFiltering ?? false,\n enableColumnResizing: options.enableColumnResizing ?? false,\n enableExpanding: options.enableRowExpansion ?? false,\n enableGrouping: true, // users can't customise row grouping, so it can just be always enabled and left to the defaultRowGroupColumnId prop\n enableHiding: options.enableColumnHiding ?? false,\n enablePinning: options.enableColumnFreezing ?? false,\n enableRowPinning: true, // users can't customise row pinning, so it can just be always enabled\n enableRowSelection: reactTableEnableRowSelection ?? false,\n enableSorting: options.enableSorting ?? false,\n // models for default features\n getExpandedRowModel: getExpandedRowModel<TType>(),\n getGroupedRowModel: getGroupedRowModel<TType>(),\n getRowId,\n groupedColumnMode: false,\n keepPinnedRows: false,\n };\n\n if (tableOptions.enableColumnResizing) {\n tableOptions.columnResizeMode = 'onChange';\n }\n\n if (tableOptions.enableColumnFilters) {\n // enter controlled filter mode (controlled could be local state, but usually the server)\n if (props.onChangeFilter) {\n // tableOptions.manualFiltering = true;\n // we don't set it because it breaks global filtering (used for search, which is fully client side)\n //\n // tableOptions.onColumnFiltersChange = ...\n // we don't set this because it expects state to be maintained externally, and we don't want\n // consumers to control state outside the table. instead we have a listener that calls onFilter\n } else {\n tableOptions.getFilteredRowModel = getFilteredRowModel<TType>();\n tableOptions.filterFns = {\n tacoFilter: (row: ReactTableRow<TType>, columnId: string, filter: any) =>\n columnFilterFn(row.getValue(columnId), filter),\n };\n }\n }\n\n if (options.enableSearch) {\n // always set these because enableGlobalFilter can be toggled on and off by the user\n tableOptions.getFilteredRowModel = getFilteredRowModel<TType>();\n tableOptions.globalFilterFn = (row: ReactTableRow<TType>, columnId: string, searchQuery: any) =>\n globalFilterFn(row, columnId, searchQuery, localization);\n tableOptions.getColumnCanGlobalFilter = (column: ReactTableColumn<TType>) =>\n column.columnDef.meta?.enableSearch !== false && column.getIsVisible();\n\n // enter controlled search mode (controlled could be local state, but usually the server)\n if (props.onChangeSearch) {\n if (props._experimentalDataLoader2) {\n tableOptions.manualFiltering = true;\n } else {\n // tableOptions.manualFiltering = true;\n // we don't set this because controlled search is not currently supported, search is always client side\n //\n // tableOptions.onGlobalFilterChange = ...\n // we don't set this because it expects state to be maintained externally, and we don't want\n // consumers to control state outside the table. instead we have a listener that calls onSearch.\n //\n // we also don't always filter when searching, we have the highlight functionality as the default\n // and filtering can be toggled by the user\n }\n }\n }\n\n if (tableOptions.enableSorting) {\n // enter controlled sort mode (controlled could be local state, but usually the server)\n if (props.onChangeSort) {\n tableOptions.manualSorting = true;\n\n // tableOptions.onSortingChange = ...\n // we don't set this because it expects state to be maintained externally, and we don't want\n // consumers to control state outside the table. instead we have a listener that calls onSort\n } else {\n tableOptions.getSortedRowModel = getSortedRowModel();\n }\n }\n\n return tableOptions;\n}\n\nexport function useReactTableInitialState<TType = unknown>(\n props: TableProps<TType>,\n columns: ReactTableColumnDef<TType>[],\n persistedSettings: TableSettings,\n defaults: {\n defaultSizing: ReactTableColumnSizingState;\n defaultSorting: ReactTableColumnSort[];\n defaultVisibility: ReactTableVisibilityState;\n }\n): Partial<ReactTableState> {\n return React.useMemo(() => {\n const ignoreNotDefinedColumns = column => columns.find(definedColumn => definedColumn.id === column.id);\n\n const columnPinning: ReactTableColumnPinningState =\n persistedSettings.columnPinning ?? props.defaultSettings?.columnPinning ?? {};\n\n const columnOrder = ensureOrdering<TType>(\n columns,\n persistedSettings.columnOrder ?? props.defaultSettings?.columnOrder,\n columnPinning.left\n );\n\n // ensure internal columns are pinned, and are pinned in the correct order\n if (columnPinning?.left?.length) {\n columnPinning.left = freezeUptoExternalColumn(\n columnOrder.indexOf(columnPinning.left[columnPinning.left.length - 1]),\n columnOrder\n );\n } else {\n if (props.defaultColumnFreezingIndex) {\n columnPinning.left = freezeUptoExternalColumn(props.defaultColumnFreezingIndex, columnOrder);\n } else {\n columnPinning.left = unfreezeAllExternalColumns(columnOrder);\n }\n }\n\n const state: Partial<ReactTableState> = {\n columnFilters: persistedSettings.columnFilters ?? props.defaultSettings?.columnFilters ?? [],\n columnOrder,\n columnPinning,\n columnSizing: ignoreInternalColumns(\n persistedSettings.columnSizing ?? props.defaultSettings?.columnSizing ?? defaults.defaultSizing ?? {}\n ),\n columnVisibility:\n persistedSettings.columnVisibility ?? props.defaultSettings?.columnVisibility ?? defaults.defaultVisibility ?? {},\n globalFilter: persistedSettings.searchQuery ?? props.defaultSettings?.searchQuery,\n sorting: persistedSettings.sorting\n ? persistedSettings.sorting.filter(ignoreNotDefinedColumns)\n : props.defaultSettings?.sorting ?? defaults.defaultSorting,\n };\n\n if (props.defaultRowGroupColumnId) {\n state.grouping = [props.defaultRowGroupColumnId as string];\n // row groups should (all) always be expanded by default\n state.expanded = true;\n }\n\n return state;\n }, []);\n}\n"],"names":["processChildren","child","columns","defaultSizing","defaultSorting","defaultVisibility","settings","defaultRowGroupColumnId","localization","columnHelper","createColumnHelper","React","isValidElement","props","children","_child$props","id","header","push","group","Children","toArray","reduce","enableGrouping","accessor","_meta$align","_child$props2","untypedId","_child$props2$accesso","accessorKey","renderer","aggregate","footer","aggregationFn","defaultHidden","defaultWidth","_child$props2$enableE","enableEditing","control","_child$props2$enableF","enableFiltering","enableColumnFilter","_child$props2$enableG","_child$props2$enableH","enableHiding","_child$props2$enableO","enableOrdering","_child$props2$enableP","enablePrinting","_child$props2$enableR","enableResizing","_child$props2$enableS","enableSearch","enableGlobalFilter","_child$props2$enableS2","enableSorting","_child$props2$enableT","enableTruncate","_child$props2$minWidt","minWidth","minSize","getCellMinWidth","fontSize","sort","sortFn","meta","_objectWithoutPropertiesLoose","_excluded","dataTypeProperties","getDataTypeProperties","dataType","isGrouped","undefined","desc","column","accessorFn","row","get","_extends","align","cell","info","getValue","original","getDisplayValue","dataTypeRenderer","value","displayValue","_dataTypeProperties$g","call","Array","isArray","_displayValue$","table","getRowModel","rows","flatMap","filterFn","aggregatedCell","sortingFn","getSortingFn","sortDescFirst","sortUndefined","createInternalColumn","size","mapTableChildrenToColumns","options","internalColumns","_props$rowActions","enableRowExpansion","rowExpansionRenderer","rowExpansion","unshift","enableRowSelection","rowSelection","enableRowDrag","onRowDrag","rowDrag","enableRowActions","rowActions","length","configureReactTableOptions","reactTableEnableRowSelection","getRowId","rowIdentityAccessor","originalRow","index","String","tableOptions","defaultColumn","enableColumnHiding","enableColumnResizing","enableColumnFilters","_options$enableFilter","_options$enableColumn","enableExpanding","_options$enableRowExp","_options$enableColumn2","enablePinning","_options$enableColumn3","enableColumnFreezing","enableRowPinning","_options$enableSortin","getExpandedRowModel","getGroupedRowModel","groupedColumnMode","keepPinnedRows","columnResizeMode","onChangeFilter","getFilteredRowModel","filterFns","tacoFilter","columnId","filter","columnFilterFn","globalFilterFn","searchQuery","getColumnCanGlobalFilter","_column$columnDef$met","columnDef","getIsVisible","onChangeSearch","_experimentalDataLoader2","manualFiltering","onChangeSort","manualSorting","getSortedRowModel","useReactTableInitialState","persistedSettings","defaults","useMemo","ignoreNotDefinedColumns","find","definedColumn","columnPinning","_ref","_persistedSettings$co","_props$defaultSetting","defaultSettings","columnOrder","ensureOrdering","_persistedSettings$co2","_props$defaultSetting2","left","_columnPinning$left","freezeUptoExternalColumn","indexOf","defaultColumnFreezingIndex","unfreezeAllExternalColumns","state","columnFilters","_ref2","_persistedSettings$co3","_props$defaultSetting3","columnSizing","ignoreInternalColumns","_ref3","_ref4","_persistedSettings$co4","_props$defaultSetting4","columnVisibility","_ref5","_ref6","_persistedSettings$co5","_props$defaultSetting5","globalFilter","_persistedSettings$se","_props$defaultSetting6","sorting","_props$defaultSetting7","_props$defaultSetting8","grouping","expanded"],"mappings":"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"}
@@ -17,15 +17,12 @@ function shouldTriggerShortcut(event, key) {
17
17
  }
18
18
  return event.key.toLowerCase() === keyOptions.key.toLowerCase();
19
19
  }
20
- function createShortcutKeyDownHandler(key, handler, stopPropagation, element) {
20
+ function createShortcutKeyDownHandler(key, handler, stopPropagation) {
21
21
  if (stopPropagation === void 0) {
22
22
  stopPropagation = true;
23
23
  }
24
24
  return function (event) {
25
- var dialog = document.querySelector('[role="dialog"]');
26
- var isOutsideDialog = element && dialog && !dialog.contains(element);
27
- if (event.target !== event.currentTarget && isElementInteractive(event.target) && !isPressingMetaKey(event) || isOutsideDialog // Avoid triggering shortcut if dialog is open and element is outside the dialog
28
- ) {
25
+ if (event.target !== event.currentTarget && isElementInteractive(event.target) && !isPressingMetaKey(event)) {
29
26
  return;
30
27
  }
31
28
  var condition = shouldTriggerShortcut(event, key);
@@ -1 +1 @@
1
- {"version":3,"file":"keyboard.js","sources":["../../../../../../src/utils/keyboard.ts"],"sourcesContent":["import React from 'react';\nimport { isElementInteractive } from './dom';\n\nexport type KeyDownHandlerOptions = { key: string; meta?: boolean; shift?: boolean };\n\nexport function isPressingMetaKey<T = Element>(event: KeyboardEvent | React.KeyboardEvent<T>) {\n return isMacOs() ? event.metaKey : event.ctrlKey;\n}\n\nexport function shouldTriggerShortcut<T = Element>(\n event: KeyboardEvent | React.KeyboardEvent<T>,\n key: string | KeyDownHandlerOptions\n) {\n const keyOptions: KeyDownHandlerOptions = typeof key === 'string' ? { key, meta: false, shift: false } : key;\n\n if (\n (keyOptions.meta && (isMacOs() ? !event.metaKey : !event.ctrlKey)) ||\n (!keyOptions.meta && (isMacOs() ? event.metaKey : event.ctrlKey))\n ) {\n return false;\n }\n\n if ((keyOptions.shift && !event.shiftKey) || (keyOptions.shift === false && event.shiftKey)) {\n return false;\n }\n\n return event.key.toLowerCase() === keyOptions.key.toLowerCase();\n}\n\nexport function createShortcutKeyDownHandler<T = Element>(\n key: string | KeyDownHandlerOptions,\n handler: (event: KeyboardEvent | React.KeyboardEvent<T>) => void,\n stopPropagation = true,\n element?: HTMLElement | null\n) {\n return function (event: KeyboardEvent | React.KeyboardEvent<T>) {\n const dialog = document.querySelector('[role=\"dialog\"]');\n const isOutsideDialog = element && dialog && !dialog.contains(element);\n\n if (\n (event.target !== event.currentTarget &&\n isElementInteractive(event.target as HTMLElement) &&\n !isPressingMetaKey(event)) ||\n isOutsideDialog // Avoid triggering shortcut if dialog is open and element is outside the dialog\n ) {\n return;\n }\n\n const condition = shouldTriggerShortcut(event, key);\n\n if (condition) {\n if (stopPropagation) {\n // stops react handlers bubbling up to global\n event.stopPropagation();\n // stops global handlers bubbling up to other global\n (event as KeyboardEvent).stopImmediatePropagation?.();\n }\n\n handler(event);\n }\n };\n}\n\nexport const isMacOs = () => window?.navigator.userAgent.includes('Mac');\n"],"names":["isPressingMetaKey","event","isMacOs","metaKey","ctrlKey","shouldTriggerShortcut","key","keyOptions","meta","shift","shiftKey","toLowerCase","createShortcutKeyDownHandler","handler","stopPropagation","element","dialog","document","querySelector","isOutsideDialog","contains","target","currentTarget","isElementInteractive","condition","_event$stopImmediateP","stopImmediatePropagation","call","_window","window","navigator","userAgent","includes"],"mappings":";;SAKgBA,iBAAiBA,CAAcC,KAA6C;EACxF,OAAOC,OAAO,EAAE,GAAGD,KAAK,CAACE,OAAO,GAAGF,KAAK,CAACG,OAAO;AACpD;SAEgBC,qBAAqBA,CACjCJ,KAA6C,EAC7CK,GAAmC;EAEnC,IAAMC,UAAU,GAA0B,OAAOD,GAAG,KAAK,QAAQ,GAAG;IAAEA,GAAG,EAAHA,GAAG;IAAEE,IAAI,EAAE,KAAK;IAAEC,KAAK,EAAE;GAAO,GAAGH,GAAG;EAE5G,IACKC,UAAU,CAACC,IAAI,KAAKN,OAAO,EAAE,GAAG,CAACD,KAAK,CAACE,OAAO,GAAG,CAACF,KAAK,CAACG,OAAO,CAAC,IAChE,CAACG,UAAU,CAACC,IAAI,KAAKN,OAAO,EAAE,GAAGD,KAAK,CAACE,OAAO,GAAGF,KAAK,CAACG,OAAO,CAAE,EACnE;IACE,OAAO,KAAK;;EAGhB,IAAKG,UAAU,CAACE,KAAK,IAAI,CAACR,KAAK,CAACS,QAAQ,IAAMH,UAAU,CAACE,KAAK,KAAK,KAAK,IAAIR,KAAK,CAACS,QAAS,EAAE;IACzF,OAAO,KAAK;;EAGhB,OAAOT,KAAK,CAACK,GAAG,CAACK,WAAW,EAAE,KAAKJ,UAAU,CAACD,GAAG,CAACK,WAAW,EAAE;AACnE;SAEgBC,4BAA4BA,CACxCN,GAAmC,EACnCO,OAAgE,EAChEC,eAAe,EACfC,OAA4B;MAD5BD,eAAe;IAAfA,eAAe,GAAG,IAAI;;EAGtB,OAAO,UAAUb,KAA6C;IAC1D,IAAMe,MAAM,GAAGC,QAAQ,CAACC,aAAa,CAAC,iBAAiB,CAAC;IACxD,IAAMC,eAAe,GAAGJ,OAAO,IAAIC,MAAM,IAAI,CAACA,MAAM,CAACI,QAAQ,CAACL,OAAO,CAAC;IAEtE,IACKd,KAAK,CAACoB,MAAM,KAAKpB,KAAK,CAACqB,aAAa,IACjCC,oBAAoB,CAACtB,KAAK,CAACoB,MAAqB,CAAC,IACjD,CAACrB,iBAAiB,CAACC,KAAK,CAAC,IAC7BkB,eAAe;MACjB;MACE;;IAGJ,IAAMK,SAAS,GAAGnB,qBAAqB,CAACJ,KAAK,EAAEK,GAAG,CAAC;IAEnD,IAAIkB,SAAS,EAAE;MACX,IAAIV,eAAe,EAAE;QAAA,IAAAW,qBAAA;;QAEjBxB,KAAK,CAACa,eAAe,EAAE;;QAEtB,CAAAW,qBAAA,GAAAxB,KAAuB,CAACyB,wBAAwB,cAAAD,qBAAA,uBAAhDA,qBAAA,CAAAE,IAAA,CAAA1B,MAAoD;;MAGzDY,OAAO,CAACZ,KAAK,CAAC;;GAErB;AACL;IAEaC,OAAO,GAAG,SAAVA,OAAOA;EAAA,IAAA0B,OAAA;EAAA,QAAAA,OAAA,GAASC,MAAM,cAAAD,OAAA,uBAANA,OAAA,CAAQE,SAAS,CAACC,SAAS,CAACC,QAAQ,CAAC,KAAK,CAAC;AAAA;;;;"}
1
+ {"version":3,"file":"keyboard.js","sources":["../../../../../../src/utils/keyboard.ts"],"sourcesContent":["import React from 'react';\nimport { isElementInteractive } from './dom';\n\nexport type KeyDownHandlerOptions = { key: string; meta?: boolean; shift?: boolean };\n\nexport function isPressingMetaKey<T = Element>(event: KeyboardEvent | React.KeyboardEvent<T>) {\n return isMacOs() ? event.metaKey : event.ctrlKey;\n}\n\nexport function shouldTriggerShortcut<T = Element>(\n event: KeyboardEvent | React.KeyboardEvent<T>,\n key: string | KeyDownHandlerOptions\n) {\n const keyOptions: KeyDownHandlerOptions = typeof key === 'string' ? { key, meta: false, shift: false } : key;\n\n if (\n (keyOptions.meta && (isMacOs() ? !event.metaKey : !event.ctrlKey)) ||\n (!keyOptions.meta && (isMacOs() ? event.metaKey : event.ctrlKey))\n ) {\n return false;\n }\n\n if ((keyOptions.shift && !event.shiftKey) || (keyOptions.shift === false && event.shiftKey)) {\n return false;\n }\n\n return event.key.toLowerCase() === keyOptions.key.toLowerCase();\n}\n\nexport function createShortcutKeyDownHandler<T = Element>(\n key: string | KeyDownHandlerOptions,\n handler: (event: KeyboardEvent | React.KeyboardEvent<T>) => void,\n stopPropagation = true\n) {\n return function (event: KeyboardEvent | React.KeyboardEvent<T>) {\n if (\n event.target !== event.currentTarget &&\n isElementInteractive(event.target as HTMLElement) &&\n !isPressingMetaKey(event)\n ) {\n return;\n }\n\n const condition = shouldTriggerShortcut(event, key);\n\n if (condition) {\n if (stopPropagation) {\n // stops react handlers bubbling up to global\n event.stopPropagation();\n // stops global handlers bubbling up to other global\n (event as KeyboardEvent).stopImmediatePropagation?.();\n }\n\n handler(event);\n }\n };\n}\n\nexport const isMacOs = () => window?.navigator.userAgent.includes('Mac');\n"],"names":["isPressingMetaKey","event","isMacOs","metaKey","ctrlKey","shouldTriggerShortcut","key","keyOptions","meta","shift","shiftKey","toLowerCase","createShortcutKeyDownHandler","handler","stopPropagation","target","currentTarget","isElementInteractive","condition","_event$stopImmediateP","stopImmediatePropagation","call","_window","window","navigator","userAgent","includes"],"mappings":";;SAKgBA,iBAAiBA,CAAcC,KAA6C;EACxF,OAAOC,OAAO,EAAE,GAAGD,KAAK,CAACE,OAAO,GAAGF,KAAK,CAACG,OAAO;AACpD;SAEgBC,qBAAqBA,CACjCJ,KAA6C,EAC7CK,GAAmC;EAEnC,IAAMC,UAAU,GAA0B,OAAOD,GAAG,KAAK,QAAQ,GAAG;IAAEA,GAAG,EAAHA,GAAG;IAAEE,IAAI,EAAE,KAAK;IAAEC,KAAK,EAAE;GAAO,GAAGH,GAAG;EAE5G,IACKC,UAAU,CAACC,IAAI,KAAKN,OAAO,EAAE,GAAG,CAACD,KAAK,CAACE,OAAO,GAAG,CAACF,KAAK,CAACG,OAAO,CAAC,IAChE,CAACG,UAAU,CAACC,IAAI,KAAKN,OAAO,EAAE,GAAGD,KAAK,CAACE,OAAO,GAAGF,KAAK,CAACG,OAAO,CAAE,EACnE;IACE,OAAO,KAAK;;EAGhB,IAAKG,UAAU,CAACE,KAAK,IAAI,CAACR,KAAK,CAACS,QAAQ,IAAMH,UAAU,CAACE,KAAK,KAAK,KAAK,IAAIR,KAAK,CAACS,QAAS,EAAE;IACzF,OAAO,KAAK;;EAGhB,OAAOT,KAAK,CAACK,GAAG,CAACK,WAAW,EAAE,KAAKJ,UAAU,CAACD,GAAG,CAACK,WAAW,EAAE;AACnE;SAEgBC,4BAA4BA,CACxCN,GAAmC,EACnCO,OAAgE,EAChEC,eAAe;MAAfA,eAAe;IAAfA,eAAe,GAAG,IAAI;;EAEtB,OAAO,UAAUb,KAA6C;IAC1D,IACIA,KAAK,CAACc,MAAM,KAAKd,KAAK,CAACe,aAAa,IACpCC,oBAAoB,CAAChB,KAAK,CAACc,MAAqB,CAAC,IACjD,CAACf,iBAAiB,CAACC,KAAK,CAAC,EAC3B;MACE;;IAGJ,IAAMiB,SAAS,GAAGb,qBAAqB,CAACJ,KAAK,EAAEK,GAAG,CAAC;IAEnD,IAAIY,SAAS,EAAE;MACX,IAAIJ,eAAe,EAAE;QAAA,IAAAK,qBAAA;;QAEjBlB,KAAK,CAACa,eAAe,EAAE;;QAEtB,CAAAK,qBAAA,GAAAlB,KAAuB,CAACmB,wBAAwB,cAAAD,qBAAA,uBAAhDA,qBAAA,CAAAE,IAAA,CAAApB,MAAoD;;MAGzDY,OAAO,CAACZ,KAAK,CAAC;;GAErB;AACL;IAEaC,OAAO,GAAG,SAAVA,OAAOA;EAAA,IAAAoB,OAAA;EAAA,QAAAA,OAAA,GAASC,MAAM,cAAAD,OAAA,uBAANA,OAAA,CAAQE,SAAS,CAACC,SAAS,CAACC,QAAQ,CAAC,KAAK,CAAC;AAAA;;;;"}
@@ -1,2 +1,2 @@
1
1
  import { KeyDownHandlerOptions } from '../utils/keyboard';
2
- export declare const useGlobalKeyDown: (shortcut: string | KeyDownHandlerOptions | undefined, handler: (event: KeyboardEvent) => void, element?: HTMLElement | null | undefined) => void;
2
+ export declare const useGlobalKeyDown: (shortcut: string | KeyDownHandlerOptions | undefined, handler: (event: KeyboardEvent) => void) => void;
@@ -88,13 +88,8 @@ export declare type TableRowExpansionRenderer<TType = unknown> = (row: TType) =>
88
88
  export declare type TableScrollToIndexHandler = (index: number, options?: {
89
89
  align: 'start' | 'center' | 'end' | 'auto';
90
90
  }) => void;
91
- export declare type TableServerLoadPageHandler = (pageIndex: number, sorting: TableColumnSort[], filters: TableColumnFilter[], search: string | undefined, hiddenColumns: string[]) => Promise<void>;
92
- export declare type TableServerLoadAllHandler = (sorting: TableColumnSort[], filters: TableColumnFilter[], search: string | undefined, hiddenColumns: string[]) => Promise<void>;
93
- export declare enum TableServerLoadAllState {
94
- Incomplete = 0,
95
- Loading = 1,
96
- Completed = 2
97
- }
91
+ export declare type TableServerLoadPageHandler = (pageIndex: number, sorting: TableColumnSort[], filters: TableColumnFilter[], hiddenColumns: string[], search: string | undefined) => Promise<void>;
92
+ export declare type TableServerLoadAllHandler = (sorting: TableColumnSort[], filters: TableColumnFilter[], hiddenColumns: string[], search: string | undefined) => Promise<void>;
98
93
  export declare type TableSettingsHandler = (settings: TableSettings) => void | Promise<void>;
99
94
  export declare type TableShortcuts<TType = unknown> = Record<string, TableShortcutHandlerFn<TType> | TableShortcutHandlerObject<TType>>;
100
95
  export declare type TableCustomSettingsRenderer = (props: TableSettings) => React.ReactElement<MenuItemProps>[];
@@ -1,10 +1,10 @@
1
1
  import { TableColumnFilter, TableColumnSort, TableFilterHandler, TableServerLoadPageHandler, TableServerLoadAllHandler, TableSortHandler, TableSearchHandler } from './types';
2
2
  export declare const DEFAULT_PAGE_SIZE = 100;
3
- export declare type useTableDataPageFetcher<TType = unknown> = (pageIndex: number, pageSize: number, sorting: TableColumnSort[], filters: TableColumnFilter[]) => Promise<{
3
+ export declare type useTableDataPageFetcher<TType = unknown> = (pageIndex: number, pageSize: number, sorting: TableColumnSort[], filters: TableColumnFilter[], hiddenColumns: string[]) => Promise<{
4
4
  data: TType[];
5
5
  length: number;
6
6
  }>;
7
- export declare type useTableDataAllFetcher<TType = unknown> = (sorting: TableColumnSort[], filters: TableColumnFilter[]) => Promise<{
7
+ export declare type useTableDataAllFetcher<TType = unknown> = (sorting: TableColumnSort[], filters: TableColumnFilter[], hiddenColumns: string[]) => Promise<{
8
8
  data: TType[];
9
9
  length: number;
10
10
  }>;
@@ -1,10 +1,10 @@
1
1
  import { TableColumnFilter, TableColumnSort, TableFilterHandler, TableServerLoadPageHandler, TableServerLoadAllHandler, TableSortHandler, TableSearchHandler } from './types';
2
2
  import { useTableDataLoaderOptions } from './useTableDataLoader';
3
- export declare type useTableDataPageFetcher2<TType = unknown> = (pageIndex: number, pageSize: number, sorting: TableColumnSort[], filters: TableColumnFilter[], search: string | undefined, hiddenColumns: string[]) => Promise<{
3
+ export declare type useTableDataPageFetcher2<TType = unknown> = (pageIndex: number, pageSize: number, sorting: TableColumnSort[], filters: TableColumnFilter[], hiddenColumns: string[], search: string | undefined) => Promise<{
4
4
  data: TType[];
5
5
  length: number;
6
6
  }>;
7
- export declare type useTableDataAllFetcher2<TType = unknown> = (sorting: TableColumnSort[], filters: TableColumnFilter[], search: string | undefined, hiddenColumns: string[]) => Promise<{
7
+ export declare type useTableDataAllFetcher2<TType = unknown> = (sorting: TableColumnSort[], filters: TableColumnFilter[], hiddenColumns: string[], search: string | undefined) => Promise<{
8
8
  data: TType[];
9
9
  length: number;
10
10
  }>;
@@ -1,12 +1,12 @@
1
- import { TableServerLoadAllHandler, TableServerLoadAllState, TableServerLoadPageHandler } from '../../types';
2
- export declare function useTableServerLoading(length: number, loadPage?: TableServerLoadPageHandler, loadAll?: TableServerLoadAllHandler, pages?: number[], pageSize?: number, _experimentalDataLoader2?: boolean): {
1
+ import { TableServerLoadAllHandler, TableServerLoadPageHandler } from '../../types';
2
+ export declare function useTableServerLoading<TType = unknown>(length: number, data: TType[], loadPage?: TableServerLoadPageHandler, loadAll?: TableServerLoadAllHandler, pages?: number[], pageSize?: number, _experimentalDataLoader2?: boolean): {
3
3
  pages: number[] | undefined;
4
4
  isEnabled: boolean;
5
5
  isReady: boolean;
6
6
  loadPage: TableServerLoadPageHandler | undefined;
7
7
  loadAll: TableServerLoadAllHandler | undefined;
8
8
  loadAllIfNeeded: TableServerLoadAllHandler | undefined;
9
- loadAllStatus: TableServerLoadAllState;
9
+ loading: boolean;
10
10
  pageSize: number;
11
11
  pageCount: number;
12
12
  _experimentalDataLoader2: boolean;