@jmruthers/pace-core 0.5.83 → 0.5.85
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/{DataTable-7NVDMWPY.js → DataTable-4W5UPIJT.js} +2 -2
- package/dist/{chunk-JAA6F35O.js → chunk-X7R6NVYQ.js} +116 -46
- package/dist/{chunk-JAA6F35O.js.map → chunk-X7R6NVYQ.js.map} +1 -1
- package/dist/{chunk-IGMNHF3A.js → chunk-YEQDKCPW.js} +2 -2
- package/dist/components.js +2 -2
- package/dist/index.js +2 -2
- package/dist/utils.js +1 -1
- package/docs/api/classes/ColumnFactory.md +1 -1
- package/docs/api/classes/ErrorBoundary.md +1 -1
- package/docs/api/classes/InvalidScopeError.md +1 -1
- package/docs/api/classes/MissingUserContextError.md +1 -1
- package/docs/api/classes/OrganisationContextRequiredError.md +1 -1
- package/docs/api/classes/PermissionDeniedError.md +1 -1
- package/docs/api/classes/PublicErrorBoundary.md +1 -1
- package/docs/api/classes/RBACAuditManager.md +1 -1
- package/docs/api/classes/RBACCache.md +1 -1
- package/docs/api/classes/RBACEngine.md +1 -1
- package/docs/api/classes/RBACError.md +1 -1
- package/docs/api/classes/RBACNotInitializedError.md +1 -1
- package/docs/api/classes/SecureSupabaseClient.md +1 -1
- package/docs/api/classes/StorageUtils.md +1 -1
- package/docs/api/enums/FileCategory.md +1 -1
- package/docs/api/interfaces/AggregateConfig.md +1 -1
- package/docs/api/interfaces/ButtonProps.md +1 -1
- package/docs/api/interfaces/CardProps.md +1 -1
- package/docs/api/interfaces/ColorPalette.md +1 -1
- package/docs/api/interfaces/ColorShade.md +1 -1
- package/docs/api/interfaces/DataAccessRecord.md +1 -1
- package/docs/api/interfaces/DataRecord.md +1 -1
- package/docs/api/interfaces/DataTableAction.md +1 -1
- package/docs/api/interfaces/DataTableColumn.md +1 -1
- package/docs/api/interfaces/DataTableProps.md +1 -1
- package/docs/api/interfaces/DataTableToolbarButton.md +1 -1
- package/docs/api/interfaces/EmptyStateConfig.md +1 -1
- package/docs/api/interfaces/EnhancedNavigationMenuProps.md +1 -1
- package/docs/api/interfaces/EventLogoProps.md +1 -1
- package/docs/api/interfaces/FileDisplayProps.md +1 -1
- package/docs/api/interfaces/FileMetadata.md +1 -1
- package/docs/api/interfaces/FileReference.md +1 -1
- package/docs/api/interfaces/FileSizeLimits.md +1 -1
- package/docs/api/interfaces/FileUploadOptions.md +1 -1
- package/docs/api/interfaces/FileUploadProps.md +1 -1
- package/docs/api/interfaces/FooterProps.md +1 -1
- package/docs/api/interfaces/InactivityWarningModalProps.md +1 -1
- package/docs/api/interfaces/InputProps.md +1 -1
- package/docs/api/interfaces/LabelProps.md +1 -1
- package/docs/api/interfaces/LoginFormProps.md +1 -1
- package/docs/api/interfaces/NavigationAccessRecord.md +1 -1
- package/docs/api/interfaces/NavigationContextType.md +1 -1
- package/docs/api/interfaces/NavigationGuardProps.md +1 -1
- package/docs/api/interfaces/NavigationItem.md +1 -1
- package/docs/api/interfaces/NavigationMenuProps.md +1 -1
- package/docs/api/interfaces/NavigationProviderProps.md +1 -1
- package/docs/api/interfaces/Organisation.md +1 -1
- package/docs/api/interfaces/OrganisationContextType.md +1 -1
- package/docs/api/interfaces/OrganisationMembership.md +1 -1
- package/docs/api/interfaces/OrganisationProviderProps.md +1 -1
- package/docs/api/interfaces/OrganisationSecurityError.md +1 -1
- package/docs/api/interfaces/PaceAppLayoutProps.md +1 -1
- package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
- package/docs/api/interfaces/PageAccessRecord.md +1 -1
- package/docs/api/interfaces/PagePermissionContextType.md +1 -1
- package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
- package/docs/api/interfaces/PagePermissionProviderProps.md +1 -1
- package/docs/api/interfaces/PaletteData.md +1 -1
- package/docs/api/interfaces/PermissionEnforcerProps.md +1 -1
- package/docs/api/interfaces/PublicErrorBoundaryProps.md +1 -1
- package/docs/api/interfaces/PublicErrorBoundaryState.md +1 -1
- package/docs/api/interfaces/PublicLoadingSpinnerProps.md +1 -1
- package/docs/api/interfaces/PublicPageFooterProps.md +1 -1
- package/docs/api/interfaces/PublicPageHeaderProps.md +1 -1
- package/docs/api/interfaces/PublicPageLayoutProps.md +1 -1
- package/docs/api/interfaces/RBACConfig.md +1 -1
- package/docs/api/interfaces/RBACLogger.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
- package/docs/api/interfaces/RouteAccessRecord.md +1 -1
- package/docs/api/interfaces/RouteConfig.md +1 -1
- package/docs/api/interfaces/SecureDataContextType.md +1 -1
- package/docs/api/interfaces/SecureDataProviderProps.md +1 -1
- package/docs/api/interfaces/StorageConfig.md +1 -1
- package/docs/api/interfaces/StorageFileInfo.md +1 -1
- package/docs/api/interfaces/StorageFileMetadata.md +1 -1
- package/docs/api/interfaces/StorageListOptions.md +1 -1
- package/docs/api/interfaces/StorageListResult.md +1 -1
- package/docs/api/interfaces/StorageUploadOptions.md +1 -1
- package/docs/api/interfaces/StorageUploadResult.md +1 -1
- package/docs/api/interfaces/StorageUrlOptions.md +1 -1
- package/docs/api/interfaces/StyleImport.md +1 -1
- package/docs/api/interfaces/SwitchProps.md +1 -1
- package/docs/api/interfaces/ToastActionElement.md +1 -1
- package/docs/api/interfaces/ToastProps.md +1 -1
- package/docs/api/interfaces/UnifiedAuthContextType.md +1 -1
- package/docs/api/interfaces/UnifiedAuthProviderProps.md +1 -1
- package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
- package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
- package/docs/api/interfaces/UsePublicEventLogoOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventLogoReturn.md +1 -1
- package/docs/api/interfaces/UsePublicEventOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
- package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
- package/docs/api/interfaces/UseResolvedScopeOptions.md +1 -1
- package/docs/api/interfaces/UseResolvedScopeReturn.md +1 -1
- package/docs/api/interfaces/UserEventAccess.md +1 -1
- package/docs/api/interfaces/UserMenuProps.md +1 -1
- package/docs/api/interfaces/UserProfile.md +1 -1
- package/docs/api/modules.md +2 -2
- package/package.json +1 -1
- package/src/components/DataTable/DataTable.tsx +7 -0
- package/src/components/DataTable/components/DataTableCore.tsx +93 -40
- package/src/components/DataTable/components/UnifiedTableBody.tsx +27 -8
- /package/dist/{DataTable-7NVDMWPY.js.map → DataTable-4W5UPIJT.js.map} +0 -0
- /package/dist/{chunk-IGMNHF3A.js.map → chunk-YEQDKCPW.js.map} +0 -0
|
@@ -53,7 +53,7 @@ import {
|
|
|
53
53
|
sortHierarchicalDataWithSorting,
|
|
54
54
|
validateHierarchicalData,
|
|
55
55
|
validatePaginationConfig
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-X7R6NVYQ.js";
|
|
57
57
|
import "./chunk-YVUZWLQG.js";
|
|
58
58
|
import "./chunk-S63MFSY6.js";
|
|
59
59
|
import "./chunk-Q7APDV6H.js";
|
|
@@ -154,4 +154,4 @@ export {
|
|
|
154
154
|
validateHierarchicalData,
|
|
155
155
|
validatePaginationConfig
|
|
156
156
|
};
|
|
157
|
-
//# sourceMappingURL=DataTable-
|
|
157
|
+
//# sourceMappingURL=DataTable-4W5UPIJT.js.map
|
|
@@ -7660,19 +7660,32 @@ function UnifiedTableBody({
|
|
|
7660
7660
|
const shouldVirtualize = forceVirtualization || dataLength > VIRTUALIZATION_THRESHOLD;
|
|
7661
7661
|
const rows = table.getRowModel().rows;
|
|
7662
7662
|
const headerGroups = table.getHeaderGroups();
|
|
7663
|
+
console.log("[DataTable] \u{1F50D} UnifiedTableBody Render:", {
|
|
7664
|
+
dataLength,
|
|
7665
|
+
rowsLength: rows.length,
|
|
7666
|
+
coreRowsLength: table.getCoreRowModel().rows.length,
|
|
7667
|
+
prePaginationRowsLength: table.getPrePaginationRowModel?.()?.rows?.length || 0,
|
|
7668
|
+
shouldVirtualize
|
|
7669
|
+
});
|
|
7663
7670
|
useEffect3(() => {
|
|
7664
|
-
if (
|
|
7671
|
+
if (rows.length === 0 && dataLength > 0) {
|
|
7665
7672
|
const tableState = table.getState();
|
|
7666
7673
|
const pagination = tableState.pagination;
|
|
7667
7674
|
const columnFilters = tableState.columnFilters;
|
|
7668
7675
|
const globalFilter = tableState.globalFilter;
|
|
7669
|
-
const
|
|
7676
|
+
const coreRows = table.getCoreRowModel().rows;
|
|
7677
|
+
const prePaginationRows = table.getPrePaginationRowModel?.()?.rows || [];
|
|
7678
|
+
const filteredRows = table.getFilteredRowModel?.()?.rows || [];
|
|
7679
|
+
const sortedRows = table.getSortedRowModel?.()?.rows || [];
|
|
7670
7680
|
const rowCount = table.getRowCount();
|
|
7671
7681
|
const pageCount = table.getPageCount();
|
|
7672
|
-
console.warn("[DataTable]
|
|
7682
|
+
console.warn("[DataTable] \u26A0\uFE0F CRITICAL: Rows empty but data exists!", {
|
|
7673
7683
|
dataLength,
|
|
7674
7684
|
rowsLength: rows.length,
|
|
7675
|
-
|
|
7685
|
+
coreRowsLength: coreRows.length,
|
|
7686
|
+
prePaginationRowsLength: prePaginationRows.length,
|
|
7687
|
+
filteredRowsLength: filteredRows.length,
|
|
7688
|
+
sortedRowsLength: sortedRows.length,
|
|
7676
7689
|
rowCount,
|
|
7677
7690
|
pageCount,
|
|
7678
7691
|
pagination: {
|
|
@@ -7681,13 +7694,16 @@ function UnifiedTableBody({
|
|
|
7681
7694
|
},
|
|
7682
7695
|
columnFilters,
|
|
7683
7696
|
globalFilter,
|
|
7684
|
-
hasFilteredRows: table.getFilteredRowModel?.()?.rows?.length || 0,
|
|
7685
|
-
hasSortedRows: table.getSortedRowModel?.()?.rows?.length || 0,
|
|
7686
7697
|
tableOptions: {
|
|
7698
|
+
getCoreRowModel: !!table.options.getCoreRowModel,
|
|
7687
7699
|
getFilteredRowModel: !!table.options.getFilteredRowModel,
|
|
7688
7700
|
getSortedRowModel: !!table.options.getSortedRowModel,
|
|
7689
|
-
getPaginationRowModel: !!table.options.getPaginationRowModel
|
|
7690
|
-
|
|
7701
|
+
getPaginationRowModel: !!table.options.getPaginationRowModel,
|
|
7702
|
+
manualPagination: table.options.manualPagination,
|
|
7703
|
+
manualFiltering: table.options.manualFiltering,
|
|
7704
|
+
manualSorting: table.options.manualSorting
|
|
7705
|
+
},
|
|
7706
|
+
tableDataLength: table.options.data?.length || 0
|
|
7691
7707
|
});
|
|
7692
7708
|
}
|
|
7693
7709
|
}, [rows.length, dataLength, table]);
|
|
@@ -11042,6 +11058,12 @@ function DataTableInternal({
|
|
|
11042
11058
|
storageKey,
|
|
11043
11059
|
onLayoutChange
|
|
11044
11060
|
}) {
|
|
11061
|
+
console.log("[DataTable] \u{1F680} DataTableInternal RENDERED:", {
|
|
11062
|
+
dataLength: data.length,
|
|
11063
|
+
columnsCount: columns.length,
|
|
11064
|
+
isLoading: externalIsLoading,
|
|
11065
|
+
pageName: rbac?.pageName || rbac?.pageId
|
|
11066
|
+
});
|
|
11045
11067
|
const authResult = useUnifiedAuth();
|
|
11046
11068
|
const user = authResult.user;
|
|
11047
11069
|
const requestedFeatures = useMemo14(
|
|
@@ -11433,55 +11455,98 @@ function DataTableInternal({
|
|
|
11433
11455
|
hasServerSideConfig: !!serverSide
|
|
11434
11456
|
});
|
|
11435
11457
|
useEffect12(() => {
|
|
11436
|
-
|
|
11437
|
-
|
|
11438
|
-
|
|
11439
|
-
|
|
11440
|
-
|
|
11441
|
-
|
|
11442
|
-
|
|
11443
|
-
|
|
11444
|
-
|
|
11445
|
-
|
|
11446
|
-
|
|
11458
|
+
console.log("[DataTable] \u{1F50D} Table Config Created:", {
|
|
11459
|
+
finalTableDataLength: finalTableData.length,
|
|
11460
|
+
configDataLength: tableConfig.data?.length || 0,
|
|
11461
|
+
columnsCount: enhancedColumns.length,
|
|
11462
|
+
finalPaginationMode,
|
|
11463
|
+
hasServerSideConfig: !!serverSide,
|
|
11464
|
+
manualPagination: tableConfig.manualPagination,
|
|
11465
|
+
hasGetPaginationRowModel: !!tableConfig.getPaginationRowModel,
|
|
11466
|
+
effectivePageSize,
|
|
11467
|
+
paginationState: tableStateSnapshot.pagination
|
|
11468
|
+
});
|
|
11469
|
+
}, [finalTableData.length, tableConfig.data, tableConfig.manualPagination, tableConfig.getPaginationRowModel, finalPaginationMode, serverSide, effectivePageSize, tableStateSnapshot.pagination, enhancedColumns.length]);
|
|
11447
11470
|
const table = useReactTable(tableConfig);
|
|
11448
11471
|
useEffect12(() => {
|
|
11449
|
-
|
|
11450
|
-
|
|
11451
|
-
|
|
11452
|
-
|
|
11453
|
-
|
|
11454
|
-
|
|
11455
|
-
|
|
11456
|
-
|
|
11457
|
-
|
|
11458
|
-
|
|
11459
|
-
|
|
11460
|
-
|
|
11461
|
-
|
|
11462
|
-
|
|
11463
|
-
|
|
11464
|
-
|
|
11465
|
-
|
|
11466
|
-
|
|
11467
|
-
|
|
11468
|
-
|
|
11469
|
-
|
|
11470
|
-
|
|
11471
|
-
|
|
11472
|
-
|
|
11473
|
-
|
|
11472
|
+
const rows = table.getRowModel().rows;
|
|
11473
|
+
const coreRows = table.getCoreRowModel().rows;
|
|
11474
|
+
const prePaginationRows = table.getPrePaginationRowModel?.()?.rows || [];
|
|
11475
|
+
const filteredRows = table.getFilteredRowModel?.()?.rows || [];
|
|
11476
|
+
const sortedRows = table.getSortedRowModel?.()?.rows || [];
|
|
11477
|
+
const tableState = table.getState();
|
|
11478
|
+
console.log("[DataTable] \u{1F50D} Table Created - Row Counts:", {
|
|
11479
|
+
finalTableDataLength: finalTableData.length,
|
|
11480
|
+
tableConfigDataLength: tableConfig.data?.length || 0,
|
|
11481
|
+
coreRowsLength: coreRows.length,
|
|
11482
|
+
prePaginationRowsLength: prePaginationRows.length,
|
|
11483
|
+
filteredRowsLength: filteredRows.length,
|
|
11484
|
+
sortedRowsLength: sortedRows.length,
|
|
11485
|
+
finalRowsLength: rows.length,
|
|
11486
|
+
pagination: tableState.pagination,
|
|
11487
|
+
finalPaginationMode,
|
|
11488
|
+
hasServerSideConfig: !!serverSide,
|
|
11489
|
+
tableOptions: {
|
|
11490
|
+
getCoreRowModel: !!tableConfig.getCoreRowModel,
|
|
11491
|
+
getFilteredRowModel: !!tableConfig.getFilteredRowModel,
|
|
11492
|
+
getSortedRowModel: !!tableConfig.getSortedRowModel,
|
|
11493
|
+
getPaginationRowModel: !!tableConfig.getPaginationRowModel,
|
|
11494
|
+
manualPagination: tableConfig.manualPagination,
|
|
11495
|
+
manualFiltering: tableConfig.manualFiltering,
|
|
11496
|
+
manualSorting: tableConfig.manualSorting,
|
|
11497
|
+
pageCount: tableConfig.pageCount
|
|
11498
|
+
},
|
|
11499
|
+
hasRowId: !!resolvedGetRowId,
|
|
11500
|
+
effectivePageSize
|
|
11501
|
+
});
|
|
11502
|
+
if (rows.length === 0 && finalTableData.length > 0) {
|
|
11503
|
+
console.warn("[DataTable] \u26A0\uFE0F CRITICAL: Table created but rows are empty!", {
|
|
11504
|
+
finalTableDataLength: finalTableData.length,
|
|
11505
|
+
tableConfigDataLength: tableConfig.data?.length || 0,
|
|
11506
|
+
coreRowsLength: coreRows.length,
|
|
11507
|
+
prePaginationRowsLength: prePaginationRows.length,
|
|
11508
|
+
filteredRowsLength: filteredRows.length,
|
|
11509
|
+
sortedRowsLength: sortedRows.length,
|
|
11510
|
+
finalRowsLength: rows.length,
|
|
11511
|
+
pagination: tableState.pagination,
|
|
11512
|
+
finalPaginationMode,
|
|
11513
|
+
hasServerSideConfig: !!serverSide,
|
|
11514
|
+
tableOptions: {
|
|
11515
|
+
getCoreRowModel: !!tableConfig.getCoreRowModel,
|
|
11516
|
+
getFilteredRowModel: !!tableConfig.getFilteredRowModel,
|
|
11517
|
+
getSortedRowModel: !!tableConfig.getSortedRowModel,
|
|
11518
|
+
getPaginationRowModel: !!tableConfig.getPaginationRowModel,
|
|
11519
|
+
manualPagination: tableConfig.manualPagination,
|
|
11520
|
+
manualFiltering: tableConfig.manualFiltering,
|
|
11521
|
+
manualSorting: tableConfig.manualSorting,
|
|
11522
|
+
pageCount: tableConfig.pageCount
|
|
11523
|
+
},
|
|
11524
|
+
hasRowId: !!resolvedGetRowId,
|
|
11525
|
+
effectivePageSize
|
|
11526
|
+
});
|
|
11474
11527
|
}
|
|
11475
|
-
}, [table, finalTableData.length, tableConfig, resolvedGetRowId]);
|
|
11528
|
+
}, [table, finalTableData.length, tableConfig, resolvedGetRowId, finalPaginationMode, serverSide, effectivePageSize]);
|
|
11476
11529
|
if (!user) {
|
|
11477
11530
|
throw new Error("DataTable requires authenticated user for RBAC");
|
|
11478
11531
|
}
|
|
11479
11532
|
if (!permissions.canRead.can) {
|
|
11533
|
+
console.warn("[DataTable] \u{1F6AB} Access denied - no read permission:", {
|
|
11534
|
+
canRead: permissions.canRead,
|
|
11535
|
+
pageId: effectivePageId,
|
|
11536
|
+
isLoading: permissions.canRead.isLoading
|
|
11537
|
+
});
|
|
11480
11538
|
return /* @__PURE__ */ jsx24(AccessDeniedPage, { resource: effectivePageId || "unknown-page", operation: "read" });
|
|
11481
11539
|
}
|
|
11540
|
+
console.log("[DataTable] \u2705 Permission check passed - rendering table");
|
|
11482
11541
|
if (isLoading) {
|
|
11542
|
+
console.log("[DataTable] \u23F3 Loading state - showing loading component");
|
|
11483
11543
|
return /* @__PURE__ */ jsx24(LoadingComponent, {});
|
|
11484
11544
|
}
|
|
11545
|
+
console.log("[DataTable] \u{1F4CA} About to render table with data:", {
|
|
11546
|
+
finalTableDataLength: finalTableData.length,
|
|
11547
|
+
tableExists: !!table,
|
|
11548
|
+
canGetRows: !!table?.getRowModel
|
|
11549
|
+
});
|
|
11485
11550
|
const PaginationComponent = enhancedPagination || finalPaginationMode !== "client" ? EnhancedPaginationControls : PaginationControls;
|
|
11486
11551
|
const visibleColumns = table?.getVisibleFlatColumns() || [];
|
|
11487
11552
|
const dataColumns = visibleColumns.filter(
|
|
@@ -11741,6 +11806,11 @@ import { jsx as jsx25 } from "react/jsx-runtime";
|
|
|
11741
11806
|
function DataTable(props) {
|
|
11742
11807
|
const logger = React18.useMemo(() => createLogger("DataTable"), []);
|
|
11743
11808
|
const { features, ...rest } = props;
|
|
11809
|
+
console.log("[DataTable] \u{1F3AF} DataTable WRAPPER called:", {
|
|
11810
|
+
dataLength: props.data?.length || 0,
|
|
11811
|
+
columnsCount: props.columns?.length || 0,
|
|
11812
|
+
pageName: props.rbac?.pageName || props.rbac?.pageId
|
|
11813
|
+
});
|
|
11744
11814
|
const normalizedFeatures = React18.useMemo(
|
|
11745
11815
|
() => normalizeDataTableFeatures(features),
|
|
11746
11816
|
[features]
|
|
@@ -11969,4 +12039,4 @@ lodash/lodash.js:
|
|
|
11969
12039
|
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
|
11970
12040
|
*)
|
|
11971
12041
|
*/
|
|
11972
|
-
//# sourceMappingURL=chunk-
|
|
12042
|
+
//# sourceMappingURL=chunk-X7R6NVYQ.js.map
|