@jmruthers/pace-core 0.5.152 → 0.5.154
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/{chunk-UHNMAVK4.js → chunk-UM4TRLQG.js} +46 -2
- package/dist/chunk-UM4TRLQG.js.map +1 -0
- package/dist/components.js +1 -1
- package/dist/index.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/BadgeProps.md +1 -1
- package/docs/api/interfaces/ButtonProps.md +1 -1
- package/docs/api/interfaces/CalendarProps.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/EventAppRoleData.md +1 -1
- package/docs/api/interfaces/EventLogoProps.md +1 -1
- package/docs/api/interfaces/ExportColumn.md +1 -1
- package/docs/api/interfaces/ExportOptions.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/GrantEventAppRoleParams.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/ProtectedRouteProps.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/ResourcePermissions.md +1 -1
- package/docs/api/interfaces/RevokeEventAppRoleParams.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
- package/docs/api/interfaces/RoleManagementResult.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/SessionRestorationLoaderProps.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/TabsContentProps.md +1 -1
- package/docs/api/interfaces/TabsListProps.md +1 -1
- package/docs/api/interfaces/TabsProps.md +1 -1
- package/docs/api/interfaces/TabsTriggerProps.md +1 -1
- package/docs/api/interfaces/TextareaProps.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/UsePublicEventOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
- package/docs/api/interfaces/UsePublicFileDisplayOptions.md +1 -1
- package/docs/api/interfaces/UsePublicFileDisplayReturn.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/UseResourcePermissionsOptions.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/NavigationMenu/NavigationMenu.tsx +50 -1
- package/dist/chunk-UHNMAVK4.js.map +0 -1
|
@@ -1187,14 +1187,33 @@ var NavigationMenu = React12.forwardRef(({
|
|
|
1187
1187
|
}, [scopeLoading, resolvedScope?.appId, selectedOrganisation?.id, authContext?.appName, authContext?.user?.id, resolvedAppId]);
|
|
1188
1188
|
const effectiveScope = React12.useMemo(() => {
|
|
1189
1189
|
if (!scopeLoading && resolvedScope?.organisationId) {
|
|
1190
|
+
logger.warn("NavigationMenu", "Using resolvedScope", {
|
|
1191
|
+
organisationId: resolvedScope.organisationId,
|
|
1192
|
+
eventId: resolvedScope.eventId,
|
|
1193
|
+
appId: resolvedScope.appId
|
|
1194
|
+
});
|
|
1190
1195
|
return resolvedScope;
|
|
1191
1196
|
} else if (!scopeLoading && selectedOrganisation?.id) {
|
|
1192
|
-
|
|
1197
|
+
const fallbackScope = {
|
|
1193
1198
|
organisationId: selectedOrganisation.id,
|
|
1194
1199
|
eventId: selectedEvent?.event_id || void 0,
|
|
1195
1200
|
appId: resolvedAppId
|
|
1196
1201
|
};
|
|
1202
|
+
logger.warn("NavigationMenu", "Using fallback scope", {
|
|
1203
|
+
organisationId: fallbackScope.organisationId,
|
|
1204
|
+
eventId: fallbackScope.eventId,
|
|
1205
|
+
appId: fallbackScope.appId,
|
|
1206
|
+
resolvedAppId,
|
|
1207
|
+
hasResolvedScope: !!resolvedScope,
|
|
1208
|
+
scopeLoading
|
|
1209
|
+
});
|
|
1210
|
+
return fallbackScope;
|
|
1197
1211
|
}
|
|
1212
|
+
logger.warn("NavigationMenu", "effectiveScope is null", {
|
|
1213
|
+
scopeLoading,
|
|
1214
|
+
hasResolvedScope: !!resolvedScope,
|
|
1215
|
+
hasSelectedOrganisation: !!selectedOrganisation?.id
|
|
1216
|
+
});
|
|
1198
1217
|
return null;
|
|
1199
1218
|
}, [scopeLoading, resolvedScope, selectedOrganisation?.id, selectedEvent?.event_id, resolvedAppId]);
|
|
1200
1219
|
const stableScope = React12.useMemo(() => {
|
|
@@ -1212,10 +1231,35 @@ var NavigationMenu = React12.forwardRef(({
|
|
|
1212
1231
|
};
|
|
1213
1232
|
}, [effectiveScope?.organisationId, effectiveScope?.eventId, effectiveScope?.appId]);
|
|
1214
1233
|
const userId = authContext?.user?.id || "";
|
|
1234
|
+
React12.useEffect(() => {
|
|
1235
|
+
if (filterByPermissions && stableScope.organisationId) {
|
|
1236
|
+
logger.warn("NavigationMenu", "usePermissions scope", {
|
|
1237
|
+
userId,
|
|
1238
|
+
scope: stableScope,
|
|
1239
|
+
hasOrganisationId: !!stableScope.organisationId,
|
|
1240
|
+
hasEventId: !!stableScope.eventId,
|
|
1241
|
+
hasAppId: !!stableScope.appId,
|
|
1242
|
+
organisationId: stableScope.organisationId,
|
|
1243
|
+
eventId: stableScope.eventId,
|
|
1244
|
+
appId: stableScope.appId
|
|
1245
|
+
});
|
|
1246
|
+
}
|
|
1247
|
+
}, [filterByPermissions, stableScope.organisationId, stableScope.eventId, stableScope.appId, userId]);
|
|
1215
1248
|
const { permissions: permissionMap, hasAnyPermission, isLoading: permissionsLoading, error: permissionsError } = usePermissions(
|
|
1216
1249
|
userId,
|
|
1217
1250
|
stableScope
|
|
1218
1251
|
);
|
|
1252
|
+
React12.useEffect(() => {
|
|
1253
|
+
if (filterByPermissions) {
|
|
1254
|
+
logger.warn("NavigationMenu", "usePermissions result", {
|
|
1255
|
+
permissionMapSize: permissionMap ? Object.keys(permissionMap).length : 0,
|
|
1256
|
+
isLoading: permissionsLoading,
|
|
1257
|
+
error: permissionsError?.message,
|
|
1258
|
+
hasError: !!permissionsError,
|
|
1259
|
+
scope: stableScope
|
|
1260
|
+
});
|
|
1261
|
+
}
|
|
1262
|
+
}, [filterByPermissions, permissionMap, permissionsLoading, permissionsError, stableScope]);
|
|
1219
1263
|
const previousFilteredItemsRef = React12.useRef([]);
|
|
1220
1264
|
const filteredItems = React12.useMemo(() => {
|
|
1221
1265
|
if (filterByPermissions) {
|
|
@@ -4591,4 +4635,4 @@ export {
|
|
|
4591
4635
|
EventLogoCompact,
|
|
4592
4636
|
EventLogoLarge
|
|
4593
4637
|
};
|
|
4594
|
-
//# sourceMappingURL=chunk-
|
|
4638
|
+
//# sourceMappingURL=chunk-UM4TRLQG.js.map
|