@jmruthers/pace-core 0.5.25 → 0.5.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{DataTable-6J4HB5O3.js → DataTable-XBVIX3TJ.js} +2 -2
- package/dist/{chunk-7GIFTTH3.js → chunk-2HNC463D.js} +39 -62
- package/dist/chunk-2HNC463D.js.map +1 -0
- package/dist/{chunk-A3NJHR2H.js → chunk-H6ZSHTG7.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/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/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/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/EventContextType.md +1 -1
- package/docs/api/interfaces/EventLogoProps.md +1 -1
- package/docs/api/interfaces/EventProviderProps.md +1 -1
- package/docs/api/interfaces/FileSizeLimits.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/RBACContextType.md +1 -1
- package/docs/api/interfaces/RBACLogger.md +1 -1
- package/docs/api/interfaces/RBACProviderProps.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/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/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/components/DataTableCore.tsx +46 -61
- package/dist/chunk-7GIFTTH3.js.map +0 -1
- /package/dist/{DataTable-6J4HB5O3.js.map → DataTable-XBVIX3TJ.js.map} +0 -0
- /package/dist/{chunk-A3NJHR2H.js.map → chunk-H6ZSHTG7.js.map} +0 -0
|
@@ -32,7 +32,7 @@ import {
|
|
|
32
32
|
useDataTableContext,
|
|
33
33
|
usePluginRegistry,
|
|
34
34
|
useStateManager
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-2HNC463D.js";
|
|
36
36
|
import "./chunk-YA77BOZM.js";
|
|
37
37
|
import "./chunk-GWSBHC4J.js";
|
|
38
38
|
import "./chunk-7BNPOCLL.js";
|
|
@@ -96,4 +96,4 @@ export {
|
|
|
96
96
|
usePluginRegistry,
|
|
97
97
|
useStateManager
|
|
98
98
|
};
|
|
99
|
-
//# sourceMappingURL=DataTable-
|
|
99
|
+
//# sourceMappingURL=DataTable-XBVIX3TJ.js.map
|
|
@@ -3353,38 +3353,23 @@ function DataTableInternal({
|
|
|
3353
3353
|
throw new Error("DataTable requires either rbac.pageId or rbac.pageName for permission checking");
|
|
3354
3354
|
}
|
|
3355
3355
|
const effectivePageId = pageId || pageName;
|
|
3356
|
+
const { selectedOrganisationId, selectedEventId, supabase } = useUnifiedAuth();
|
|
3357
|
+
const resolvedScope = useMemo6(() => {
|
|
3358
|
+
if (!selectedOrganisationId) return null;
|
|
3359
|
+
return {
|
|
3360
|
+
organisationId: selectedOrganisationId,
|
|
3361
|
+
eventId: selectedEventId || void 0,
|
|
3362
|
+
appId: void 0
|
|
3363
|
+
};
|
|
3364
|
+
}, [selectedOrganisationId, selectedEventId]);
|
|
3356
3365
|
const permissions = {
|
|
3357
|
-
canRead: useCan(user?.id || "", {
|
|
3358
|
-
|
|
3359
|
-
|
|
3360
|
-
|
|
3361
|
-
}, `
|
|
3362
|
-
canCreate: useCan(user?.id || "", {
|
|
3363
|
-
organisationId: user?.user_metadata?.organisationId || user?.app_metadata?.organisationId,
|
|
3364
|
-
eventId: user?.user_metadata?.eventId || user?.app_metadata?.eventId,
|
|
3365
|
-
appId: user?.user_metadata?.appId || user?.app_metadata?.appId
|
|
3366
|
-
}, `create:page.${effectivePageId}`, effectivePageId),
|
|
3367
|
-
canUpdate: useCan(user?.id || "", {
|
|
3368
|
-
organisationId: user?.user_metadata?.organisationId || user?.app_metadata?.organisationId,
|
|
3369
|
-
eventId: user?.user_metadata?.eventId || user?.app_metadata?.eventId,
|
|
3370
|
-
appId: user?.user_metadata?.appId || user?.app_metadata?.appId
|
|
3371
|
-
}, `update:page.${effectivePageId}`, effectivePageId),
|
|
3372
|
-
canDelete: useCan(user?.id || "", {
|
|
3373
|
-
organisationId: user?.user_metadata?.organisationId || user?.app_metadata?.organisationId,
|
|
3374
|
-
eventId: user?.user_metadata?.eventId || user?.app_metadata?.eventId,
|
|
3375
|
-
appId: user?.user_metadata?.appId || user?.app_metadata?.appId
|
|
3376
|
-
}, `delete:page.${effectivePageId}`, effectivePageId),
|
|
3377
|
-
canExport: useCan(user?.id || "", {
|
|
3378
|
-
organisationId: user?.user_metadata?.organisationId || user?.app_metadata?.organisationId,
|
|
3379
|
-
eventId: user?.user_metadata?.eventId || user?.app_metadata?.eventId,
|
|
3380
|
-
appId: user?.user_metadata?.appId || user?.app_metadata?.appId
|
|
3381
|
-
}, `manage:page.${effectivePageId}`, effectivePageId),
|
|
3366
|
+
canRead: useCan(user?.id || "", resolvedScope || { organisationId: "", eventId: void 0, appId: void 0 }, `read:page.${effectivePageId}`, effectivePageId),
|
|
3367
|
+
canCreate: useCan(user?.id || "", resolvedScope || { organisationId: "", eventId: void 0, appId: void 0 }, `create:page.${effectivePageId}`, effectivePageId),
|
|
3368
|
+
canUpdate: useCan(user?.id || "", resolvedScope || { organisationId: "", eventId: void 0, appId: void 0 }, `update:page.${effectivePageId}`, effectivePageId),
|
|
3369
|
+
canDelete: useCan(user?.id || "", resolvedScope || { organisationId: "", eventId: void 0, appId: void 0 }, `delete:page.${effectivePageId}`, effectivePageId),
|
|
3370
|
+
canExport: useCan(user?.id || "", resolvedScope || { organisationId: "", eventId: void 0, appId: void 0 }, `manage:page.${effectivePageId}`, effectivePageId),
|
|
3382
3371
|
// Using manage for export/import
|
|
3383
|
-
canImport: useCan(user?.id || "", {
|
|
3384
|
-
organisationId: user?.user_metadata?.organisationId || user?.app_metadata?.organisationId,
|
|
3385
|
-
eventId: user?.user_metadata?.eventId || user?.app_metadata?.eventId,
|
|
3386
|
-
appId: user?.user_metadata?.appId || user?.app_metadata?.appId
|
|
3387
|
-
}, `manage:page.${effectivePageId}`, effectivePageId)
|
|
3372
|
+
canImport: useCan(user?.id || "", resolvedScope || { organisationId: "", eventId: void 0, appId: void 0 }, `manage:page.${effectivePageId}`, effectivePageId)
|
|
3388
3373
|
// Using manage for export/import
|
|
3389
3374
|
};
|
|
3390
3375
|
const finalPaginationMode = paginationMode || detectedMode;
|
|
@@ -3699,46 +3684,38 @@ function DataTableInternal({
|
|
|
3699
3684
|
eventId: user?.user_metadata?.eventId || user?.app_metadata?.eventId,
|
|
3700
3685
|
appId: user?.user_metadata?.appId || user?.app_metadata?.appId
|
|
3701
3686
|
};
|
|
3702
|
-
console.log("[DataTable] RBAC DEBUG:", {
|
|
3687
|
+
console.log("[DataTable] RBAC DEBUG - Basic Info:", {
|
|
3703
3688
|
effectivePageId,
|
|
3704
3689
|
pageId,
|
|
3705
3690
|
pageName,
|
|
3706
|
-
canRead: {
|
|
3707
|
-
can: permissions.canRead.can,
|
|
3708
|
-
isLoading: permissions.canRead.isLoading,
|
|
3709
|
-
error: permissions.canRead.error,
|
|
3710
|
-
refetch: typeof permissions.canRead.refetch
|
|
3711
|
-
},
|
|
3712
3691
|
userId: user?.id,
|
|
3713
|
-
scope: {
|
|
3714
|
-
organisationId: user?.user_metadata?.organisationId || user?.app_metadata?.organisationId,
|
|
3715
|
-
eventId: user?.user_metadata?.eventId || user?.app_metadata?.eventId,
|
|
3716
|
-
appId: user?.user_metadata?.appId || user?.app_metadata?.appId
|
|
3717
|
-
},
|
|
3718
3692
|
permission: `read:page.${effectivePageId}`
|
|
3719
3693
|
});
|
|
3694
|
+
console.log("[DataTable] RBAC DEBUG - CanRead Details:");
|
|
3695
|
+
console.log(" can:", permissions.canRead.can);
|
|
3696
|
+
console.log(" isLoading:", permissions.canRead.isLoading);
|
|
3697
|
+
console.log(" error:", permissions.canRead.error);
|
|
3698
|
+
console.log(" refetch type:", typeof permissions.canRead.refetch);
|
|
3699
|
+
console.log("[DataTable] RBAC DEBUG - Scope (FIXED):");
|
|
3700
|
+
console.log(" resolvedScope:", resolvedScope);
|
|
3701
|
+
console.log(" organisationId:", resolvedScope?.organisationId);
|
|
3702
|
+
console.log(" eventId:", resolvedScope?.eventId);
|
|
3703
|
+
console.log(" appId:", resolvedScope?.appId);
|
|
3720
3704
|
if (!permissions.canRead.can) {
|
|
3721
|
-
console.error("[DataTable] ACCESS DENIED - DataTable RBAC failing
|
|
3722
|
-
|
|
3723
|
-
|
|
3724
|
-
|
|
3725
|
-
|
|
3726
|
-
|
|
3727
|
-
|
|
3728
|
-
},
|
|
3729
|
-
permission: `read:page.${effectivePageId}`,
|
|
3730
|
-
fullCanReadObject: permissions.canRead
|
|
3731
|
-
});
|
|
3705
|
+
console.error("[DataTable] ACCESS DENIED - DataTable RBAC failing!");
|
|
3706
|
+
console.error(" effectivePageId:", effectivePageId);
|
|
3707
|
+
console.error(" canRead.can:", permissions.canRead.can);
|
|
3708
|
+
console.error(" canRead.isLoading:", permissions.canRead.isLoading);
|
|
3709
|
+
console.error(" canRead.error:", permissions.canRead.error);
|
|
3710
|
+
console.error(" permission:", `read:page.${effectivePageId}`);
|
|
3711
|
+
console.error(" Full canRead object:", permissions.canRead);
|
|
3732
3712
|
return /* @__PURE__ */ jsx20(AccessDeniedPage, { resource: effectivePageId || "unknown-page", operation: "read" });
|
|
3733
3713
|
}
|
|
3734
|
-
console.log("[DataTable] ACCESS GRANTED - DataTable RBAC working
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3739
|
-
error: permissions.canRead.error
|
|
3740
|
-
}
|
|
3741
|
-
});
|
|
3714
|
+
console.log("[DataTable] ACCESS GRANTED - DataTable RBAC working!");
|
|
3715
|
+
console.log(" effectivePageId:", effectivePageId);
|
|
3716
|
+
console.log(" canRead.can:", permissions.canRead.can);
|
|
3717
|
+
console.log(" canRead.isLoading:", permissions.canRead.isLoading);
|
|
3718
|
+
console.log(" canRead.error:", permissions.canRead.error);
|
|
3742
3719
|
if (isLoading) {
|
|
3743
3720
|
return /* @__PURE__ */ jsx20(LoadingComponent, {});
|
|
3744
3721
|
}
|
|
@@ -5502,4 +5479,4 @@ export {
|
|
|
5502
5479
|
GroupHeader,
|
|
5503
5480
|
EditableRow
|
|
5504
5481
|
};
|
|
5505
|
-
//# sourceMappingURL=chunk-
|
|
5482
|
+
//# sourceMappingURL=chunk-2HNC463D.js.map
|