@economic/taco 2.49.0-server.2 → 2.49.0-server.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js +5 -4
- package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js +2 -2
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js +1 -2
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js +2 -2
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/types.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js +13 -10
- package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js +8 -8
- package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js +2 -2
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js +2 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js.map +1 -1
- package/dist/primitives/Table/types.d.ts +2 -2
- package/dist/primitives/Table/useTableDataLoader.d.ts +2 -2
- package/dist/primitives/Table/useTableDataLoader2.d.ts +2 -2
- package/dist/taco.cjs.development.js +39 -35
- package/dist/taco.cjs.development.js.map +1 -1
- package/dist/taco.cjs.production.min.js +1 -1
- package/dist/taco.cjs.production.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -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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"}
|
|
@@ -88,8 +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
|
|
92
|
-
export declare type TableServerLoadAllHandler = (sorting: TableColumnSort[], filters: TableColumnFilter[], search: string | undefined
|
|
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>;
|
|
93
93
|
export declare type TableSettingsHandler = (settings: TableSettings) => void | Promise<void>;
|
|
94
94
|
export declare type TableShortcuts<TType = unknown> = Record<string, TableShortcutHandlerFn<TType> | TableShortcutHandlerObject<TType>>;
|
|
95
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
|
|
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
|
|
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
|
}>;
|
|
@@ -10948,7 +10948,8 @@ function configureReactTableOptions(options, props, localization) {
|
|
|
10948
10948
|
getExpandedRowModel: reactTable.getExpandedRowModel(),
|
|
10949
10949
|
getGroupedRowModel: reactTable.getGroupedRowModel(),
|
|
10950
10950
|
getRowId: getRowId,
|
|
10951
|
-
groupedColumnMode: false
|
|
10951
|
+
groupedColumnMode: false,
|
|
10952
|
+
keepPinnedRows: false
|
|
10952
10953
|
};
|
|
10953
10954
|
if (tableOptions.enableColumnResizing) {
|
|
10954
10955
|
tableOptions.columnResizeMode = 'onChange';
|
|
@@ -11823,9 +11824,10 @@ function useTableDataLoader(fetchPage, fetchAll, options) {
|
|
|
11823
11824
|
var _lastUsedSorting = React__default.useRef([]);
|
|
11824
11825
|
var _lastUsedFilters = React__default.useRef([]);
|
|
11825
11826
|
var _lastUsedSearch = React__default.useRef();
|
|
11827
|
+
var _lastUsedHiddenColumns = React__default.useRef([]);
|
|
11826
11828
|
var _lastUsedPageIndex = React__default.useRef();
|
|
11827
11829
|
var _forceReset = React__default.useRef(false);
|
|
11828
|
-
var loadPage = function loadPage(pageIndex, sorting, filters) {
|
|
11830
|
+
var loadPage = function loadPage(pageIndex, sorting, filters, hiddenColumns) {
|
|
11829
11831
|
try {
|
|
11830
11832
|
var reset = false;
|
|
11831
11833
|
// sorting or filters changed, reset everything
|
|
@@ -11847,9 +11849,10 @@ function useTableDataLoader(fetchPage, fetchAll, options) {
|
|
|
11847
11849
|
_lastUsedSorting.current = sorting;
|
|
11848
11850
|
// set the filters so we can track if it changed between loads
|
|
11849
11851
|
_lastUsedFilters.current = filters;
|
|
11852
|
+
_lastUsedHiddenColumns.current = hiddenColumns;
|
|
11850
11853
|
var _temp = _finallyRethrows(function () {
|
|
11851
11854
|
return _catch(function () {
|
|
11852
|
-
return Promise.resolve(fetchPage(pageIndex, pageSize, sorting, filters)).then(function (response) {
|
|
11855
|
+
return Promise.resolve(fetchPage(pageIndex, pageSize, sorting, filters, hiddenColumns)).then(function (response) {
|
|
11853
11856
|
// update state, here we do some "magic" to support "load in place"
|
|
11854
11857
|
setData(function (currentData) {
|
|
11855
11858
|
var _nextData;
|
|
@@ -11879,14 +11882,15 @@ function useTableDataLoader(fetchPage, fetchAll, options) {
|
|
|
11879
11882
|
return Promise.reject(e);
|
|
11880
11883
|
}
|
|
11881
11884
|
};
|
|
11882
|
-
var loadAll = function loadAll(sorting, filters) {
|
|
11885
|
+
var loadAll = function loadAll(sorting, filters, hiddenColumns) {
|
|
11883
11886
|
try {
|
|
11884
11887
|
// set the sorting so we can track if it changed between loads
|
|
11885
11888
|
_lastUsedSorting.current = sorting;
|
|
11886
11889
|
// set the filters so we can track if it changed between loads
|
|
11887
11890
|
_lastUsedFilters.current = filters;
|
|
11891
|
+
_lastUsedHiddenColumns.current = hiddenColumns;
|
|
11888
11892
|
var _temp2 = _catch(function () {
|
|
11889
|
-
return Promise.resolve(fetchAll(sorting, filters)).then(function (response) {
|
|
11893
|
+
return Promise.resolve(fetchAll(sorting, filters, hiddenColumns)).then(function (response) {
|
|
11890
11894
|
length.current = response.length;
|
|
11891
11895
|
setData(function () {
|
|
11892
11896
|
var nextData;
|
|
@@ -11912,11 +11916,11 @@ function useTableDataLoader(fetchPage, fetchAll, options) {
|
|
|
11912
11916
|
_forceReset.current = true;
|
|
11913
11917
|
if (_lastUsedSearch.current) {
|
|
11914
11918
|
// we're searching, which means we need to refetch all with the correct sorting applied
|
|
11915
|
-
return loadAll(_lastUsedSorting.current, _lastUsedFilters.current);
|
|
11919
|
+
return loadAll(_lastUsedSorting.current, _lastUsedFilters.current, _lastUsedHiddenColumns.current);
|
|
11916
11920
|
} else {
|
|
11917
11921
|
var _lastUsedPageIndex$cu;
|
|
11918
11922
|
// load the last page that we scrolled to
|
|
11919
|
-
return loadPage((_lastUsedPageIndex$cu = _lastUsedPageIndex.current) !== null && _lastUsedPageIndex$cu !== void 0 ? _lastUsedPageIndex$cu : 0, _lastUsedSorting.current, _lastUsedFilters.current);
|
|
11923
|
+
return loadPage((_lastUsedPageIndex$cu = _lastUsedPageIndex.current) !== null && _lastUsedPageIndex$cu !== void 0 ? _lastUsedPageIndex$cu : 0, _lastUsedSorting.current, _lastUsedFilters.current, _lastUsedHiddenColumns.current);
|
|
11920
11924
|
}
|
|
11921
11925
|
} catch (e) {
|
|
11922
11926
|
return Promise.reject(e);
|
|
@@ -11928,11 +11932,11 @@ function useTableDataLoader(fetchPage, fetchAll, options) {
|
|
|
11928
11932
|
try {
|
|
11929
11933
|
if (_lastUsedSearch.current) {
|
|
11930
11934
|
// we're searching, which means we need to refetch all with the correct sorting applied
|
|
11931
|
-
return loadAll(sorting, _lastUsedFilters.current);
|
|
11935
|
+
return loadAll(sorting, _lastUsedFilters.current, _lastUsedHiddenColumns.current);
|
|
11932
11936
|
} else {
|
|
11933
11937
|
var _lastUsedPageIndex$cu2;
|
|
11934
11938
|
// load the last page that we scrolled to
|
|
11935
|
-
return loadPage((_lastUsedPageIndex$cu2 = _lastUsedPageIndex.current) !== null && _lastUsedPageIndex$cu2 !== void 0 ? _lastUsedPageIndex$cu2 : 0, sorting, _lastUsedFilters.current);
|
|
11939
|
+
return loadPage((_lastUsedPageIndex$cu2 = _lastUsedPageIndex.current) !== null && _lastUsedPageIndex$cu2 !== void 0 ? _lastUsedPageIndex$cu2 : 0, sorting, _lastUsedFilters.current, _lastUsedHiddenColumns.current);
|
|
11936
11940
|
}
|
|
11937
11941
|
} catch (e) {
|
|
11938
11942
|
return Promise.reject(e);
|
|
@@ -11942,11 +11946,11 @@ function useTableDataLoader(fetchPage, fetchAll, options) {
|
|
|
11942
11946
|
try {
|
|
11943
11947
|
if (_lastUsedSearch.current) {
|
|
11944
11948
|
// we're searching, which means we need to refetch all with the correct sorting applied
|
|
11945
|
-
return loadAll(_lastUsedSorting.current, filters);
|
|
11949
|
+
return loadAll(_lastUsedSorting.current, filters, _lastUsedHiddenColumns.current);
|
|
11946
11950
|
} else {
|
|
11947
11951
|
var _lastUsedPageIndex$cu3;
|
|
11948
11952
|
// load the last page that we scrolled to
|
|
11949
|
-
return loadPage((_lastUsedPageIndex$cu3 = _lastUsedPageIndex.current) !== null && _lastUsedPageIndex$cu3 !== void 0 ? _lastUsedPageIndex$cu3 : 0, _lastUsedSorting.current, filters);
|
|
11953
|
+
return loadPage((_lastUsedPageIndex$cu3 = _lastUsedPageIndex.current) !== null && _lastUsedPageIndex$cu3 !== void 0 ? _lastUsedPageIndex$cu3 : 0, _lastUsedSorting.current, filters, _lastUsedHiddenColumns.current);
|
|
11950
11954
|
}
|
|
11951
11955
|
} catch (e) {
|
|
11952
11956
|
return Promise.reject(e);
|
|
@@ -12253,7 +12257,7 @@ function useTableRowSelectionListener(table, onRowSelect) {
|
|
|
12253
12257
|
* we only need to know if selection was enabled or disabled, because enableRowSelection function
|
|
12254
12258
|
* will be applied directly to particular rows.
|
|
12255
12259
|
*/
|
|
12256
|
-
}, [!!table.options.enableRowSelection, state]);
|
|
12260
|
+
}, [!!table.options.enableRowSelection, JSON.stringify(state)]);
|
|
12257
12261
|
}
|
|
12258
12262
|
|
|
12259
12263
|
function useTableSearchListener(table) {
|
|
@@ -12371,9 +12375,9 @@ function useTableServerLoadingListener(table, loadPage) {
|
|
|
12371
12375
|
if (loadPage) {
|
|
12372
12376
|
var sorting = table.getState().sorting;
|
|
12373
12377
|
var columnFilters = table.getState().columnFilters;
|
|
12374
|
-
var search = meta.search.enableGlobalFilter ? table.getState().globalFilter : undefined;
|
|
12375
12378
|
var hiddenColumns = getHiddenColumns(table.getState().columnVisibility);
|
|
12376
|
-
|
|
12379
|
+
var search = meta.search.enableGlobalFilter ? table.getState().globalFilter : undefined;
|
|
12380
|
+
loadPage(0, sorting, columnFilters, hiddenColumns, search);
|
|
12377
12381
|
}
|
|
12378
12382
|
}, []);
|
|
12379
12383
|
}
|
|
@@ -12713,7 +12717,7 @@ function useTableGlobalShortcuts(table, tableRef, scrollToIndex) {
|
|
|
12713
12717
|
};
|
|
12714
12718
|
},
|
|
12715
12719
|
// scrollToIndex function changes when row count changes, so it is important to update handlers
|
|
12716
|
-
[tableRef.current, tableMeta.rowActive.rowActiveIndex, scrollToIndex]);
|
|
12720
|
+
[tableRef.current, tableMeta.length, tableMeta.rowActive.rowActiveIndex, scrollToIndex]);
|
|
12717
12721
|
}
|
|
12718
12722
|
|
|
12719
12723
|
function useTableRef(table, ref) {
|
|
@@ -12848,7 +12852,7 @@ function RowWithServerLoading(props) {
|
|
|
12848
12852
|
var hiddenColumns = getHiddenColumns(props.table.getState().columnVisibility);
|
|
12849
12853
|
timeout = setTimeout(function () {
|
|
12850
12854
|
var _tableMeta$server$loa, _tableMeta$server;
|
|
12851
|
-
(_tableMeta$server$loa = (_tableMeta$server = tableMeta.server).loadPage) === null || _tableMeta$server$loa === void 0 ? void 0 : _tableMeta$server$loa.call(_tableMeta$server, pageIndex, sorting, filters, tableMeta.search.enableGlobalFilter ? search : undefined
|
|
12855
|
+
(_tableMeta$server$loa = (_tableMeta$server = tableMeta.server).loadPage) === null || _tableMeta$server$loa === void 0 ? void 0 : _tableMeta$server$loa.call(_tableMeta$server, pageIndex, sorting, filters, hiddenColumns, tableMeta.search.enableGlobalFilter ? search : undefined);
|
|
12852
12856
|
}, DELAY_BEFORE_LOAD_MS$1);
|
|
12853
12857
|
}
|
|
12854
12858
|
return function () {
|
|
@@ -13326,7 +13330,7 @@ function Header$4(context) {
|
|
|
13326
13330
|
if (tableMeta.server.loadAllIfNeeded) {
|
|
13327
13331
|
var hiddenColumns = getHiddenColumns(table.getState().columnVisibility);
|
|
13328
13332
|
// don't pass the search query because we need all data - not filtered data
|
|
13329
|
-
return Promise.resolve(tableMeta.server.loadAllIfNeeded(table.getState().sorting, table.getState().columnFilters, tableMeta.search.enableGlobalFilter ? table.getState().globalFilter : undefined
|
|
13333
|
+
return Promise.resolve(tableMeta.server.loadAllIfNeeded(table.getState().sorting, table.getState().columnFilters, hiddenColumns, tableMeta.search.enableGlobalFilter ? table.getState().globalFilter : undefined)).then(function () {});
|
|
13330
13334
|
}
|
|
13331
13335
|
}();
|
|
13332
13336
|
// load all data if that is possible
|
|
@@ -13400,7 +13404,7 @@ function Cell$3(context) {
|
|
|
13400
13404
|
if (tableMeta.server.loadAllIfNeeded) {
|
|
13401
13405
|
var hiddenColumns = getHiddenColumns(table.getState().columnVisibility);
|
|
13402
13406
|
// don't pass the search query because we need all data - not filtered data
|
|
13403
|
-
return Promise.resolve(tableMeta.server.loadAllIfNeeded(table.getState().sorting, table.getState().columnFilters, tableMeta.search.enableGlobalFilter ? table.getState().globalFilter : undefined
|
|
13407
|
+
return Promise.resolve(tableMeta.server.loadAllIfNeeded(table.getState().sorting, table.getState().columnFilters, hiddenColumns, tableMeta.search.enableGlobalFilter ? table.getState().globalFilter : undefined)).then(function () {});
|
|
13404
13408
|
}
|
|
13405
13409
|
}();
|
|
13406
13410
|
return _temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3);
|
|
@@ -14585,8 +14589,7 @@ function Summary(props) {
|
|
|
14585
14589
|
count = /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(rowsSelectedLength)), "\xA0", texts.table.footer.summary.count, "\xA0", /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(length)));
|
|
14586
14590
|
} else if (!tableMeta.server.isEnabled && ((_table$getState$colum = table.getState().columnFilters) !== null && _table$getState$colum !== void 0 && _table$getState$colum.length ||
|
|
14587
14591
|
// filtered data
|
|
14588
|
-
!!table.getState().globalFilter && table.options.enableGlobalFilter)
|
|
14589
|
-
) {
|
|
14592
|
+
!!table.getState().globalFilter && table.options.enableGlobalFilter)) {
|
|
14590
14593
|
label = texts.table.footer.summary.records;
|
|
14591
14594
|
count = /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(currentLength)), "\xA0", texts.table.footer.summary.count, "\xA0", /*#__PURE__*/React__default.createElement("strong", null, new Intl.NumberFormat(locale).format(length)));
|
|
14592
14595
|
} else {
|
|
@@ -14899,9 +14902,9 @@ function Search$1(props) {
|
|
|
14899
14902
|
var _temp = function () {
|
|
14900
14903
|
if (tableMeta.server.loadAllIfNeeded && !tableMeta.server._experimentalDataLoader2) {
|
|
14901
14904
|
// don't pass the search query because we need all data - not filtered data
|
|
14902
|
-
return Promise.resolve(tableMeta.server.loadAllIfNeeded(table.getState().sorting, table.getState().columnFilters,
|
|
14905
|
+
return Promise.resolve(tableMeta.server.loadAllIfNeeded(table.getState().sorting, table.getState().columnFilters, hiddenColumns,
|
|
14903
14906
|
// the old data loader doesn't have server side search
|
|
14904
|
-
undefined
|
|
14907
|
+
undefined)).then(function () {});
|
|
14905
14908
|
}
|
|
14906
14909
|
}();
|
|
14907
14910
|
// load all data if that is possible
|
|
@@ -17198,7 +17201,7 @@ function Print$1(props) {
|
|
|
17198
17201
|
if (tableMeta.server.isEnabled && tableMeta.server.loadAllIfNeeded) {
|
|
17199
17202
|
var hiddenColumns = getHiddenColumns(table.getState().columnVisibility);
|
|
17200
17203
|
var _temp = _catch(function () {
|
|
17201
|
-
return Promise.resolve(tableMeta.server.loadAllIfNeeded(table.getState().sorting, table.getState().columnFilters, tableMeta.search.enableGlobalFilter ? table.getState().globalFilter : undefined
|
|
17204
|
+
return Promise.resolve(tableMeta.server.loadAllIfNeeded(table.getState().sorting, table.getState().columnFilters, hiddenColumns, tableMeta.search.enableGlobalFilter ? table.getState().globalFilter : undefined)).then(function () {});
|
|
17202
17205
|
}, function (error) {
|
|
17203
17206
|
var errorMessage = texts.table.print.error + ": " + error;
|
|
17204
17207
|
console.error(errorMessage);
|
|
@@ -20205,11 +20208,12 @@ function useTableEditing(isEnabled, handleSave, handleChange, handleCreate, hand
|
|
|
20205
20208
|
// wait until set states have run
|
|
20206
20209
|
requestAnimationFrame(function () {
|
|
20207
20210
|
toggleEditing(true, table, scrollToIndex, false);
|
|
20208
|
-
|
|
20209
|
-
|
|
20210
|
-
|
|
20211
|
+
table.setRowPinning(function (currentState) {
|
|
20212
|
+
var _ref, _currentState$bottom;
|
|
20213
|
+
return _extends({}, currentState, {
|
|
20214
|
+
bottom: (_ref = (_currentState$bottom = currentState.bottom) !== null && _currentState$bottom !== void 0 ? _currentState$bottom : []) === null || _ref === void 0 ? void 0 : _ref.concat(newRowId)
|
|
20211
20215
|
});
|
|
20212
|
-
}
|
|
20216
|
+
});
|
|
20213
20217
|
});
|
|
20214
20218
|
}
|
|
20215
20219
|
} catch (error) {
|
|
@@ -23275,7 +23279,7 @@ Navigation2.Content = Content$a;
|
|
|
23275
23279
|
|
|
23276
23280
|
var DATASET_SIZE_MULTIPLIER = 15;
|
|
23277
23281
|
function useTableDataLoader2(fetchPage, fetchAll, options) {
|
|
23278
|
-
var loadPage = function loadPage(pageIndex, sorting, filters,
|
|
23282
|
+
var loadPage = function loadPage(pageIndex, sorting, filters, hiddenColumns, search, reset) {
|
|
23279
23283
|
if (reset === void 0) {
|
|
23280
23284
|
reset = false;
|
|
23281
23285
|
}
|
|
@@ -23295,7 +23299,7 @@ function useTableDataLoader2(fetchPage, fetchAll, options) {
|
|
|
23295
23299
|
_pendingPageRequests.current[pageIndex] = true;
|
|
23296
23300
|
var _temp2 = _catch(function () {
|
|
23297
23301
|
_lastRequestId.current = requestId;
|
|
23298
|
-
return Promise.resolve(fetchPage(pageIndex, pageSize, sorting, filters,
|
|
23302
|
+
return Promise.resolve(fetchPage(pageIndex, pageSize, sorting, filters, hiddenColumns, search)).then(function (response) {
|
|
23299
23303
|
length.current = response.length;
|
|
23300
23304
|
// update state, here we do some "magic" to support "load in place"
|
|
23301
23305
|
setData(function (currentData) {
|
|
@@ -23375,7 +23379,7 @@ function useTableDataLoader2(fetchPage, fetchAll, options) {
|
|
|
23375
23379
|
var _lastUsedFilters = React__default.useRef([]);
|
|
23376
23380
|
var _lastUsedSearch = React__default.useRef();
|
|
23377
23381
|
var _lastUsedHiddenColumns = React__default.useRef([]);
|
|
23378
|
-
var loadAll = function loadAll(sorting, filters,
|
|
23382
|
+
var loadAll = function loadAll(sorting, filters, hiddenColumns, search) {
|
|
23379
23383
|
try {
|
|
23380
23384
|
// set values so we can track if they changed between loads
|
|
23381
23385
|
_lastUsedSorting.current = sorting;
|
|
@@ -23384,7 +23388,7 @@ function useTableDataLoader2(fetchPage, fetchAll, options) {
|
|
|
23384
23388
|
_lastUsedHiddenColumns.current = hiddenColumns;
|
|
23385
23389
|
var _temp = _finallyRethrows(function () {
|
|
23386
23390
|
return _catch(function () {
|
|
23387
|
-
return Promise.resolve(fetchAll(sorting, filters,
|
|
23391
|
+
return Promise.resolve(fetchAll(sorting, filters, hiddenColumns, search)).then(function (response) {
|
|
23388
23392
|
length.current = response.length;
|
|
23389
23393
|
var pages = [];
|
|
23390
23394
|
var cache = {};
|
|
@@ -23417,7 +23421,7 @@ function useTableDataLoader2(fetchPage, fetchAll, options) {
|
|
|
23417
23421
|
// reset stuff
|
|
23418
23422
|
_pendingPageRequests.current = {};
|
|
23419
23423
|
// load the current page again
|
|
23420
|
-
return loadPage(getCurrentPage(data.pages), _lastUsedSorting.current, _lastUsedFilters.current,
|
|
23424
|
+
return loadPage(getCurrentPage(data.pages), _lastUsedSorting.current, _lastUsedFilters.current, _lastUsedHiddenColumns.current, _lastUsedSearch.current, true);
|
|
23421
23425
|
} catch (e) {
|
|
23422
23426
|
return Promise.reject(e);
|
|
23423
23427
|
}
|
|
@@ -23426,7 +23430,7 @@ function useTableDataLoader2(fetchPage, fetchAll, options) {
|
|
|
23426
23430
|
try {
|
|
23427
23431
|
// reset before loading the current page
|
|
23428
23432
|
_pendingPageRequests.current = {};
|
|
23429
|
-
return loadPage(getCurrentPage(data.pages), sorting, _lastUsedFilters.current,
|
|
23433
|
+
return loadPage(getCurrentPage(data.pages), sorting, _lastUsedFilters.current, _lastUsedHiddenColumns.current, _lastUsedSearch.current, true);
|
|
23430
23434
|
} catch (e) {
|
|
23431
23435
|
return Promise.reject(e);
|
|
23432
23436
|
}
|
|
@@ -23435,7 +23439,7 @@ function useTableDataLoader2(fetchPage, fetchAll, options) {
|
|
|
23435
23439
|
try {
|
|
23436
23440
|
// reset before loading the current page
|
|
23437
23441
|
_pendingPageRequests.current = {};
|
|
23438
|
-
return loadPage(0, _lastUsedSorting.current, filters, _lastUsedSearch.current,
|
|
23442
|
+
return loadPage(0, _lastUsedSorting.current, filters, hiddenColumns, _lastUsedSearch.current, true);
|
|
23439
23443
|
} catch (e) {
|
|
23440
23444
|
return Promise.reject(e);
|
|
23441
23445
|
}
|
|
@@ -23444,7 +23448,7 @@ function useTableDataLoader2(fetchPage, fetchAll, options) {
|
|
|
23444
23448
|
try {
|
|
23445
23449
|
// reset before loading the current page
|
|
23446
23450
|
_pendingPageRequests.current = {};
|
|
23447
|
-
return loadPage(0, _lastUsedSorting.current, _lastUsedFilters.current,
|
|
23451
|
+
return loadPage(0, _lastUsedSorting.current, _lastUsedFilters.current, hiddenColumns, search, true);
|
|
23448
23452
|
} catch (e) {
|
|
23449
23453
|
return Promise.reject(e);
|
|
23450
23454
|
}
|