@jmruthers/pace-core 0.5.30 → 0.5.31
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-B3QAKJN2.js → DataTable-XF5VBPW7.js} +2 -2
- package/dist/{chunk-ONTSSIGM.js → chunk-KIGLRBS2.js} +8 -1
- package/dist/chunk-KIGLRBS2.js.map +1 -0
- package/dist/{chunk-4MGZ5E3J.js → chunk-MIVOTEB5.js} +14 -7
- package/dist/chunk-MIVOTEB5.js.map +1 -0
- package/dist/{chunk-VLWG2SIU.js → chunk-UDMWWMBX.js} +2 -2
- package/dist/components.js +2 -2
- package/dist/index.js +3 -3
- package/dist/rbac/index.js +1 -1
- 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 +3 -3
- package/package.json +1 -1
- package/src/components/DataTable/components/DataTableCore.tsx +15 -6
- package/src/rbac/components/PagePermissionGuard.tsx +9 -0
- package/dist/chunk-4MGZ5E3J.js.map +0 -1
- package/dist/chunk-ONTSSIGM.js.map +0 -1
- /package/dist/{DataTable-B3QAKJN2.js.map → DataTable-XF5VBPW7.js.map} +0 -0
- /package/dist/{chunk-VLWG2SIU.js.map → chunk-UDMWWMBX.js.map} +0 -0
package/docs/api/modules.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
[@jmruthers/pace-core - v0.5.
|
|
1
|
+
[@jmruthers/pace-core - v0.5.31](README.md) / Exports
|
|
2
2
|
|
|
3
|
-
# @jmruthers/pace-core - v0.5.
|
|
3
|
+
# @jmruthers/pace-core - v0.5.31
|
|
4
4
|
|
|
5
5
|
**`File`**
|
|
6
6
|
|
|
@@ -5058,7 +5058,7 @@ React element with permission enforcement
|
|
|
5058
5058
|
|
|
5059
5059
|
#### Defined in
|
|
5060
5060
|
|
|
5061
|
-
[packages/core/src/rbac/components/PagePermissionGuard.tsx:
|
|
5061
|
+
[packages/core/src/rbac/components/PagePermissionGuard.tsx:665](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/PagePermissionGuard.tsx#L665)
|
|
5062
5062
|
|
|
5063
5063
|
___
|
|
5064
5064
|
|
package/package.json
CHANGED
|
@@ -423,13 +423,22 @@ function DataTableInternal<TData extends DataRecord>({
|
|
|
423
423
|
resolveScope();
|
|
424
424
|
}, [selectedOrganisationId, selectedEventId, supabase]);
|
|
425
425
|
|
|
426
|
+
// DEBUG: Log the exact parameters being passed to useCan
|
|
427
|
+
console.log('[DataTable] useCan parameters:', {
|
|
428
|
+
userId: user?.id || '',
|
|
429
|
+
stableScope,
|
|
430
|
+
permission: `read:page.${effectivePageId}`,
|
|
431
|
+
effectivePageId,
|
|
432
|
+
useCache: true
|
|
433
|
+
});
|
|
434
|
+
|
|
426
435
|
const permissions = {
|
|
427
|
-
canRead: useCan(user?.id || '', stableScope, `read:page.${effectivePageId}` as any, effectivePageId),
|
|
428
|
-
canCreate: useCan(user?.id || '', stableScope, `create:page.${effectivePageId}` as any, effectivePageId),
|
|
429
|
-
canUpdate: useCan(user?.id || '', stableScope, `update:page.${effectivePageId}` as any, effectivePageId),
|
|
430
|
-
canDelete: useCan(user?.id || '', stableScope, `delete:page.${effectivePageId}` as any, effectivePageId),
|
|
431
|
-
canExport: useCan(user?.id || '', stableScope, `manage:page.${effectivePageId}` as any, effectivePageId), // Using manage for export/import
|
|
432
|
-
canImport: useCan(user?.id || '', stableScope, `manage:page.${effectivePageId}` as any, effectivePageId), // Using manage for export/import
|
|
436
|
+
canRead: useCan(user?.id || '', stableScope, `read:page.${effectivePageId}` as any, effectivePageId, true),
|
|
437
|
+
canCreate: useCan(user?.id || '', stableScope, `create:page.${effectivePageId}` as any, effectivePageId, true),
|
|
438
|
+
canUpdate: useCan(user?.id || '', stableScope, `update:page.${effectivePageId}` as any, effectivePageId, true),
|
|
439
|
+
canDelete: useCan(user?.id || '', stableScope, `delete:page.${effectivePageId}` as any, effectivePageId, true),
|
|
440
|
+
canExport: useCan(user?.id || '', stableScope, `manage:page.${effectivePageId}` as any, effectivePageId, true), // Using manage for export/import
|
|
441
|
+
canImport: useCan(user?.id || '', stableScope, `manage:page.${effectivePageId}` as any, effectivePageId, true), // Using manage for export/import
|
|
433
442
|
};
|
|
434
443
|
|
|
435
444
|
// ============================================================================
|
|
@@ -373,6 +373,15 @@ const PagePermissionGuardComponent = ({
|
|
|
373
373
|
return `${operation}:page.${pageName}` as Permission;
|
|
374
374
|
}, [operation, pageName]);
|
|
375
375
|
|
|
376
|
+
// DEBUG: Log the exact parameters being passed to useCan
|
|
377
|
+
console.log('[PagePermissionGuard] useCan parameters:', {
|
|
378
|
+
userId: user?.id || '',
|
|
379
|
+
stableScope,
|
|
380
|
+
permission,
|
|
381
|
+
effectivePageId,
|
|
382
|
+
useCache: true
|
|
383
|
+
});
|
|
384
|
+
|
|
376
385
|
// Check if user has permission - only call useCan when we have a resolved scope
|
|
377
386
|
// If resolvedScope is null, we're still resolving, so show loading state
|
|
378
387
|
const { can, isLoading: canIsLoading, error: canError } = useCan(
|