@jmruthers/pace-core 0.5.188 → 0.5.190
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/core-usage-manifest.json +0 -4
- package/dist/{AuthService-B-cd2MA4.d.ts → AuthService-CbP_utw2.d.ts} +7 -3
- package/dist/{DataTable-GUFUNZ3N.js → DataTable-ON3IXISJ.js} +8 -8
- package/dist/{PublicPageProvider-DrLDztHt.d.ts → PublicPageProvider-C4uxosp6.d.ts} +129 -40
- package/dist/{UnifiedAuthProvider-BG0AL5eE.d.ts → UnifiedAuthProvider-BYA9qB-o.d.ts} +4 -3
- package/dist/{UnifiedAuthProvider-643PUAIM.js → UnifiedAuthProvider-X5NXANVI.js} +4 -2
- package/dist/{api-YP7XD5L6.js → api-I6UCQ5S6.js} +4 -2
- package/dist/{chunk-DDM4CCYT.js → chunk-4QYC5L4K.js} +60 -35
- package/dist/chunk-4QYC5L4K.js.map +1 -0
- package/dist/{chunk-IM4QE42D.js → chunk-73HSNNOQ.js} +141 -326
- package/dist/chunk-73HSNNOQ.js.map +1 -0
- package/dist/{chunk-YHCN776L.js → chunk-DZWK57KZ.js} +2 -75
- package/dist/chunk-DZWK57KZ.js.map +1 -0
- package/dist/{chunk-3GOZZZYH.js → chunk-HQVPB5MZ.js} +238 -301
- package/dist/chunk-HQVPB5MZ.js.map +1 -0
- package/dist/{chunk-THRPYOFK.js → chunk-HW3OVDUF.js} +5 -5
- package/dist/chunk-HW3OVDUF.js.map +1 -0
- package/dist/{chunk-F2IMUDXZ.js → chunk-I7PSE6JW.js} +75 -2
- package/dist/chunk-I7PSE6JW.js.map +1 -0
- package/dist/{chunk-VGZZXKBR.js → chunk-J2XXC7R5.js} +280 -52
- package/dist/chunk-J2XXC7R5.js.map +1 -0
- package/dist/{chunk-UNOTYLQF.js → chunk-NIU6J6OX.js} +772 -725
- package/dist/chunk-NIU6J6OX.js.map +1 -0
- package/dist/{chunk-HESYZWZW.js → chunk-QWWZ5CAQ.js} +2 -2
- package/dist/{chunk-HEHYGYOX.js → chunk-RUYZKXOD.js} +401 -46
- package/dist/chunk-RUYZKXOD.js.map +1 -0
- package/dist/{chunk-2UUZZJFT.js → chunk-SDMHPX3X.js} +176 -160
- package/dist/{chunk-2UUZZJFT.js.map → chunk-SDMHPX3X.js.map} +1 -1
- package/dist/{chunk-IPCH26AG.js → chunk-STYK4OH2.js} +11 -11
- package/dist/chunk-STYK4OH2.js.map +1 -0
- package/dist/{chunk-EFCLXK7F.js → chunk-VVBAW5A5.js} +4201 -3809
- package/dist/chunk-VVBAW5A5.js.map +1 -0
- package/dist/chunk-Y4BUBBHD.js +614 -0
- package/dist/chunk-Y4BUBBHD.js.map +1 -0
- package/dist/{chunk-SAUPYVLF.js → chunk-ZSAAAMVR.js} +1 -1
- package/dist/chunk-ZSAAAMVR.js.map +1 -0
- package/dist/components.d.ts +3 -5
- package/dist/components.js +19 -23
- package/dist/components.js.map +1 -1
- package/dist/eslint-rules/pace-core-compliance.cjs +0 -2
- package/dist/{file-reference-D037xOFK.d.ts → file-reference-BavO2eQj.d.ts} +13 -10
- package/dist/hooks.d.ts +10 -5
- package/dist/hooks.js +14 -8
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +13 -12
- package/dist/index.js +79 -73
- package/dist/index.js.map +1 -1
- package/dist/providers.d.ts +3 -3
- package/dist/providers.js +3 -1
- package/dist/rbac/index.d.ts +76 -12
- package/dist/rbac/index.js +12 -9
- package/dist/types.d.ts +1 -1
- package/dist/types.js +1 -1
- package/dist/{usePublicRouteParams-CTDELQ7H.d.ts → usePublicRouteParams-DxIDS4bC.d.ts} +16 -9
- package/dist/utils.js +16 -16
- package/docs/README.md +2 -2
- package/docs/api/classes/ColumnFactory.md +1 -1
- package/docs/api/classes/ErrorBoundary.md +1 -1
- package/docs/api/classes/InvalidScopeError.md +2 -2
- package/docs/api/classes/Logger.md +1 -1
- package/docs/api/classes/MissingUserContextError.md +2 -2
- package/docs/api/classes/OrganisationContextRequiredError.md +1 -1
- package/docs/api/classes/PermissionDeniedError.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 +4 -4
- package/docs/api/classes/RBACError.md +1 -1
- package/docs/api/classes/RBACNotInitializedError.md +2 -2
- package/docs/api/classes/SecureSupabaseClient.md +21 -16
- package/docs/api/classes/StorageUtils.md +7 -4
- package/docs/api/enums/FileCategory.md +1 -1
- package/docs/api/enums/LogLevel.md +1 -1
- package/docs/api/enums/RBACErrorCode.md +1 -1
- package/docs/api/enums/RPCFunction.md +1 -1
- package/docs/api/interfaces/AddressFieldProps.md +1 -1
- package/docs/api/interfaces/AddressFieldRef.md +1 -1
- package/docs/api/interfaces/AggregateConfig.md +1 -1
- package/docs/api/interfaces/AutocompleteOptions.md +1 -1
- package/docs/api/interfaces/AvatarProps.md +128 -0
- package/docs/api/interfaces/BadgeProps.md +1 -1
- package/docs/api/interfaces/ButtonProps.md +1 -1
- package/docs/api/interfaces/CalendarProps.md +20 -6
- 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/ComplianceResult.md +1 -1
- package/docs/api/interfaces/DataAccessRecord.md +9 -9
- 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/DatabaseComplianceResult.md +1 -1
- package/docs/api/interfaces/DatabaseIssue.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/ExportColumn.md +1 -1
- package/docs/api/interfaces/ExportOptions.md +1 -1
- package/docs/api/interfaces/FileDisplayProps.md +62 -16
- package/docs/api/interfaces/FileMetadata.md +1 -1
- package/docs/api/interfaces/FileReference.md +2 -2
- package/docs/api/interfaces/FileSizeLimits.md +1 -1
- package/docs/api/interfaces/FileUploadOptions.md +26 -12
- package/docs/api/interfaces/FileUploadProps.md +30 -19
- package/docs/api/interfaces/FooterProps.md +1 -1
- package/docs/api/interfaces/FormFieldProps.md +1 -1
- package/docs/api/interfaces/FormProps.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/LoggerConfig.md +1 -1
- package/docs/api/interfaces/LoginFormProps.md +1 -1
- package/docs/api/interfaces/NavigationAccessRecord.md +10 -10
- package/docs/api/interfaces/NavigationContextType.md +9 -9
- 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 +7 -7
- 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 +8 -8
- package/docs/api/interfaces/PagePermissionContextType.md +8 -8
- package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
- package/docs/api/interfaces/PagePermissionProviderProps.md +7 -7
- package/docs/api/interfaces/PaletteData.md +1 -1
- package/docs/api/interfaces/ParsedAddress.md +1 -1
- package/docs/api/interfaces/PermissionEnforcerProps.md +1 -1
- package/docs/api/interfaces/ProgressProps.md +3 -11
- package/docs/api/interfaces/ProtectedRouteProps.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/QuickFix.md +1 -1
- package/docs/api/interfaces/RBACAccessValidateParams.md +1 -1
- package/docs/api/interfaces/RBACAccessValidateResult.md +1 -1
- package/docs/api/interfaces/RBACAuditLogParams.md +1 -1
- package/docs/api/interfaces/RBACAuditLogResult.md +1 -1
- package/docs/api/interfaces/RBACConfig.md +1 -1
- package/docs/api/interfaces/RBACContext.md +1 -1
- package/docs/api/interfaces/RBACLogger.md +1 -1
- package/docs/api/interfaces/RBACPageAccessCheckParams.md +1 -1
- package/docs/api/interfaces/RBACPerformanceMetrics.md +1 -1
- package/docs/api/interfaces/RBACPermissionCheckParams.md +1 -1
- package/docs/api/interfaces/RBACPermissionCheckResult.md +1 -1
- package/docs/api/interfaces/RBACPermissionsGetParams.md +1 -1
- package/docs/api/interfaces/RBACPermissionsGetResult.md +1 -1
- package/docs/api/interfaces/RBACResult.md +1 -1
- package/docs/api/interfaces/RBACRoleGrantParams.md +1 -1
- package/docs/api/interfaces/RBACRoleGrantResult.md +1 -1
- package/docs/api/interfaces/RBACRoleRevokeParams.md +1 -1
- package/docs/api/interfaces/RBACRoleRevokeResult.md +1 -1
- package/docs/api/interfaces/RBACRoleValidateParams.md +1 -1
- package/docs/api/interfaces/RBACRoleValidateResult.md +1 -1
- package/docs/api/interfaces/RBACRolesListParams.md +1 -1
- package/docs/api/interfaces/RBACRolesListResult.md +1 -1
- package/docs/api/interfaces/RBACSessionTrackParams.md +1 -1
- package/docs/api/interfaces/RBACSessionTrackResult.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 +8 -8
- package/docs/api/interfaces/RoleBasedRouterProps.md +10 -10
- package/docs/api/interfaces/RoleManagementResult.md +1 -1
- package/docs/api/interfaces/RouteAccessRecord.md +10 -10
- package/docs/api/interfaces/RouteConfig.md +10 -10
- package/docs/api/interfaces/RuntimeComplianceResult.md +1 -1
- package/docs/api/interfaces/SecureDataContextType.md +9 -9
- package/docs/api/interfaces/SecureDataProviderProps.md +8 -8
- package/docs/api/interfaces/SessionRestorationLoaderProps.md +1 -1
- package/docs/api/interfaces/SetupIssue.md +1 -1
- package/docs/api/interfaces/StorageConfig.md +4 -4
- package/docs/api/interfaces/StorageFileInfo.md +7 -7
- package/docs/api/interfaces/StorageFileMetadata.md +25 -14
- package/docs/api/interfaces/StorageListOptions.md +22 -9
- package/docs/api/interfaces/StorageListResult.md +4 -4
- package/docs/api/interfaces/StorageUploadOptions.md +21 -8
- package/docs/api/interfaces/StorageUploadResult.md +6 -6
- package/docs/api/interfaces/StorageUrlOptions.md +19 -6
- 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 +53 -53
- package/docs/api/interfaces/UnifiedAuthProviderProps.md +13 -13
- package/docs/api/interfaces/UseFormDialogOptions.md +1 -1
- package/docs/api/interfaces/UseFormDialogReturn.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/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 +4 -4
- package/docs/api/interfaces/UseResolvedScopeReturn.md +4 -4
- package/docs/api/interfaces/UseResourcePermissionsOptions.md +1 -1
- package/docs/api/interfaces/UserEventAccess.md +11 -11
- package/docs/api/interfaces/UserMenuProps.md +1 -1
- package/docs/api/interfaces/UserProfile.md +1 -1
- package/docs/api/modules.md +155 -135
- package/docs/api-reference/components.md +72 -29
- package/docs/api-reference/providers.md +2 -2
- package/docs/api-reference/rpc-functions.md +1 -0
- package/docs/best-practices/README.md +1 -1
- package/docs/best-practices/deployment.md +8 -8
- package/docs/getting-started/examples/README.md +2 -2
- package/docs/getting-started/installation-guide.md +4 -4
- package/docs/getting-started/quick-start.md +3 -3
- package/docs/migration/MIGRATION_GUIDE.md +3 -3
- package/docs/rbac/compliance/compliance-guide.md +2 -2
- package/docs/rbac/event-based-apps.md +2 -2
- package/docs/rbac/getting-started.md +2 -2
- package/docs/rbac/quick-start.md +2 -2
- package/docs/security/README.md +4 -4
- package/docs/standards/07-rbac-and-rls-standard.md +430 -7
- package/docs/troubleshooting/README.md +2 -2
- package/docs/troubleshooting/migration.md +3 -3
- package/package.json +1 -4
- package/scripts/check-pace-core-compliance.cjs +1 -1
- package/scripts/check-pace-core-compliance.js +1 -1
- package/src/__tests__/fixtures/supabase.ts +301 -0
- package/src/__tests__/public-recipe-view.test.ts +9 -9
- package/src/__tests__/rls-policies.test.ts +197 -61
- package/src/components/AddressField/AddressField.test.tsx +42 -0
- package/src/components/AddressField/AddressField.tsx +71 -60
- package/src/components/AddressField/README.md +1 -0
- package/src/components/Alert/Alert.test.tsx +50 -10
- package/src/components/Alert/Alert.tsx +5 -3
- package/src/components/Avatar/Avatar.test.tsx +252 -226
- package/src/components/Avatar/Avatar.tsx +179 -53
- package/src/components/Avatar/index.ts +1 -1
- package/src/components/Button/Button.test.tsx +2 -1
- package/src/components/Button/Button.tsx +3 -3
- package/src/components/Calendar/Calendar.test.tsx +53 -37
- package/src/components/Calendar/Calendar.tsx +409 -82
- package/src/components/Card/Card.test.tsx +7 -4
- package/src/components/Card/Card.tsx +3 -6
- package/src/components/Checkbox/Checkbox.tsx +2 -2
- package/src/components/DataTable/components/ActionButtons.tsx +5 -5
- package/src/components/DataTable/components/BulkOperationsDropdown.tsx +2 -2
- package/src/components/DataTable/components/ColumnFilter.tsx +1 -1
- package/src/components/DataTable/components/ColumnVisibilityDropdown.tsx +3 -3
- package/src/components/DataTable/components/DataTableBody.tsx +12 -12
- package/src/components/DataTable/components/DataTableCore.tsx +3 -3
- package/src/components/DataTable/components/DataTableToolbar.tsx +5 -5
- package/src/components/DataTable/components/DraggableColumnHeader.tsx +3 -3
- package/src/components/DataTable/components/EditableRow.tsx +2 -2
- package/src/components/DataTable/components/EmptyState.tsx +3 -3
- package/src/components/DataTable/components/GroupHeader.tsx +2 -2
- package/src/components/DataTable/components/GroupingDropdown.tsx +1 -1
- package/src/components/DataTable/components/ImportModal.tsx +4 -4
- package/src/components/DataTable/components/LoadingState.tsx +1 -1
- package/src/components/DataTable/components/PaginationControls.tsx +11 -11
- package/src/components/DataTable/components/UnifiedTableBody.tsx +9 -9
- package/src/components/DataTable/components/ViewRowModal.tsx +2 -2
- package/src/components/DataTable/components/__tests__/AccessDeniedPage.test.tsx +11 -37
- package/src/components/DataTable/components/__tests__/DataTableToolbar.test.tsx +157 -0
- package/src/components/DataTable/components/__tests__/LoadingState.test.tsx +2 -1
- package/src/components/DataTable/components/__tests__/VirtualizedDataTable.test.tsx +128 -0
- package/src/components/DataTable/core/__tests__/ActionManager.test.ts +19 -0
- package/src/components/DataTable/core/__tests__/ColumnFactory.test.ts +51 -0
- package/src/components/DataTable/core/__tests__/ColumnManager.test.ts +84 -0
- package/src/components/DataTable/core/__tests__/DataManager.test.ts +14 -0
- package/src/components/DataTable/core/__tests__/DataTableContext.test.tsx +136 -0
- package/src/components/DataTable/core/__tests__/LocalDataAdapter.test.ts +16 -0
- package/src/components/DataTable/core/__tests__/PluginRegistry.test.ts +18 -0
- package/src/components/DataTable/hooks/useDataTablePermissions.ts +28 -7
- package/src/components/DataTable/utils/__tests__/hierarchicalUtils.test.ts +30 -1
- package/src/components/DataTable/utils/hierarchicalUtils.ts +38 -10
- package/src/components/DatePickerWithTimezone/DatePickerWithTimezone.test.tsx +8 -3
- package/src/components/DatePickerWithTimezone/DatePickerWithTimezone.tsx +4 -4
- package/src/components/Dialog/Dialog.tsx +2 -2
- package/src/components/EventSelector/EventSelector.tsx +7 -7
- package/src/components/FileDisplay/FileDisplay.tsx +291 -179
- package/src/components/FileUpload/FileUpload.tsx +7 -4
- package/src/components/Header/Header.test.tsx +28 -0
- package/src/components/Header/Header.tsx +22 -9
- package/src/components/InactivityWarningModal/InactivityWarningModal.tsx +2 -2
- package/src/components/LoadingSpinner/LoadingSpinner.test.tsx +19 -14
- package/src/components/LoadingSpinner/LoadingSpinner.tsx +5 -5
- package/src/components/NavigationMenu/NavigationMenu.test.tsx +127 -1
- package/src/components/OrganisationSelector/OrganisationSelector.tsx +8 -8
- package/src/components/PaceAppLayout/PaceAppLayout.integration.test.tsx +4 -0
- package/src/components/PaceAppLayout/PaceAppLayout.performance.test.tsx +3 -0
- package/src/components/PaceAppLayout/PaceAppLayout.security.test.tsx +3 -0
- package/src/components/PaceAppLayout/PaceAppLayout.test.tsx +16 -6
- package/src/components/PaceAppLayout/PaceAppLayout.tsx +37 -3
- package/src/components/PaceAppLayout/test-setup.tsx +1 -0
- package/src/components/PaceLoginPage/PaceLoginPage.test.tsx +66 -45
- package/src/components/PaceLoginPage/PaceLoginPage.tsx +6 -4
- package/src/components/Progress/Progress.test.tsx +18 -19
- package/src/components/Progress/Progress.tsx +31 -32
- package/src/components/PublicLayout/PublicLayout.test.tsx +6 -6
- package/src/components/PublicLayout/PublicPageProvider.tsx +5 -3
- package/src/components/Select/Select.tsx +5 -5
- package/src/components/Switch/Switch.test.tsx +2 -1
- package/src/components/Switch/Switch.tsx +1 -1
- package/src/components/Toast/Toast.tsx +1 -1
- package/src/components/Tooltip/Tooltip.test.tsx +8 -2
- package/src/components/UserMenu/UserMenu.test.tsx +7 -9
- package/src/components/UserMenu/UserMenu.tsx +10 -8
- package/src/components/index.ts +2 -1
- package/src/eslint-rules/pace-core-compliance.cjs +0 -2
- package/src/eslint-rules/pace-core-compliance.js +0 -2
- package/src/hooks/__tests__/hooks.integration.test.tsx +4 -1
- package/src/hooks/__tests__/useAppConfig.unit.test.ts +76 -5
- package/src/hooks/__tests__/useDataTableState.test.ts +76 -0
- package/src/hooks/__tests__/useFileUrl.unit.test.ts +25 -69
- package/src/hooks/__tests__/useFileUrlCache.test.ts +129 -0
- package/src/hooks/__tests__/usePreventTabReload.test.ts +88 -0
- package/src/hooks/__tests__/{usePublicEvent.unit.test.ts → usePublicEvent.test.ts} +28 -1
- package/src/hooks/__tests__/useQueryCache.test.ts +144 -0
- package/src/hooks/__tests__/useSecureDataAccess.unit.test.tsx +58 -16
- package/src/hooks/index.ts +1 -1
- package/src/hooks/public/usePublicEvent.ts +2 -2
- package/src/hooks/public/usePublicFileDisplay.ts +173 -87
- package/src/hooks/useAppConfig.ts +24 -5
- package/src/hooks/useFileDisplay.ts +297 -34
- package/src/hooks/useFileReference.ts +56 -11
- package/src/hooks/useFileUrl.ts +1 -1
- package/src/hooks/useInactivityTracker.ts +16 -7
- package/src/hooks/usePermissionCache.test.ts +85 -8
- package/src/hooks/useQueryCache.ts +21 -0
- package/src/hooks/useSecureDataAccess.test.ts +80 -35
- package/src/hooks/useSecureDataAccess.ts +80 -37
- package/src/index.ts +2 -1
- package/src/providers/services/EventServiceProvider.tsx +37 -17
- package/src/providers/services/InactivityServiceProvider.tsx +4 -4
- package/src/providers/services/OrganisationServiceProvider.tsx +8 -1
- package/src/providers/services/UnifiedAuthProvider.tsx +115 -29
- package/src/rbac/__tests__/auth-rbac.e2e.test.tsx +451 -0
- package/src/rbac/__tests__/engine.comprehensive.test.ts +12 -0
- package/src/rbac/__tests__/rbac-engine-core-logic.test.ts +8 -0
- package/src/rbac/__tests__/rbac-engine-simplified.test.ts +4 -0
- package/src/rbac/api.ts +240 -36
- package/src/rbac/cache-invalidation.ts +21 -7
- package/src/rbac/compliance/quick-fix-suggestions.ts +1 -1
- package/src/rbac/components/NavigationGuard.tsx +23 -63
- package/src/rbac/components/NavigationProvider.test.tsx +52 -23
- package/src/rbac/components/NavigationProvider.tsx +13 -11
- package/src/rbac/components/PagePermissionGuard.tsx +77 -203
- package/src/rbac/components/PagePermissionProvider.tsx +13 -11
- package/src/rbac/components/PermissionEnforcer.tsx +24 -62
- package/src/rbac/components/RoleBasedRouter.tsx +14 -12
- package/src/rbac/components/SecureDataProvider.tsx +13 -11
- package/src/rbac/components/__tests__/NavigationGuard.test.tsx +104 -41
- package/src/rbac/components/__tests__/NavigationProvider.test.tsx +49 -12
- package/src/rbac/components/__tests__/PagePermissionGuard.race-condition.test.tsx +22 -1
- package/src/rbac/components/__tests__/PagePermissionGuard.test.tsx +161 -82
- package/src/rbac/components/__tests__/PagePermissionGuard.verification.test.tsx +22 -1
- package/src/rbac/components/__tests__/PermissionEnforcer.test.tsx +77 -30
- package/src/rbac/components/__tests__/RoleBasedRouter.test.tsx +39 -5
- package/src/rbac/components/__tests__/SecureDataProvider.test.tsx +47 -4
- package/src/rbac/engine.ts +4 -2
- package/src/rbac/hooks/__tests__/useSecureSupabase.test.ts +144 -52
- package/src/rbac/hooks/index.ts +3 -0
- package/src/rbac/hooks/useCan.test.ts +101 -53
- package/src/rbac/hooks/usePermissions.ts +108 -41
- package/src/rbac/hooks/useRBAC.test.ts +11 -3
- package/src/rbac/hooks/useRBAC.ts +83 -40
- package/src/rbac/hooks/useResolvedScope.test.ts +189 -63
- package/src/rbac/hooks/useResolvedScope.ts +128 -70
- package/src/rbac/hooks/useSecureSupabase.ts +36 -19
- package/src/rbac/hooks/useSuperAdminBypass.ts +126 -0
- package/src/rbac/request-deduplication.ts +1 -1
- package/src/rbac/secureClient.ts +72 -12
- package/src/rbac/security.ts +29 -23
- package/src/rbac/types.ts +10 -0
- package/src/rbac/utils/__tests__/contextValidator.test.ts +150 -0
- package/src/rbac/utils/__tests__/deep-equal.test.ts +53 -0
- package/src/rbac/utils/__tests__/eventContext.test.ts +6 -1
- package/src/rbac/utils/contextValidator.ts +288 -0
- package/src/rbac/utils/eventContext.ts +48 -2
- package/src/services/EventService.ts +165 -21
- package/src/services/OrganisationService.ts +37 -2
- package/src/services/__tests__/EventService.test.ts +26 -21
- package/src/types/file-reference.ts +13 -10
- package/src/utils/app/appNameResolver.test.ts +346 -73
- package/src/utils/context/superAdminOverride.ts +58 -0
- package/src/utils/file-reference/index.ts +61 -33
- package/src/utils/google-places/googlePlacesUtils.test.ts +98 -0
- package/src/utils/google-places/loadGoogleMapsScript.test.ts +83 -0
- package/src/utils/storage/helpers.test.ts +1 -1
- package/src/utils/storage/helpers.ts +38 -19
- package/src/utils/storage/types.ts +15 -8
- package/src/utils/validation/__tests__/csrf.test.ts +105 -0
- package/src/utils/validation/__tests__/sqlInjectionProtection.test.ts +92 -0
- package/src/vite-env.d.ts +2 -2
- package/dist/chunk-3GOZZZYH.js.map +0 -1
- package/dist/chunk-DDM4CCYT.js.map +0 -1
- package/dist/chunk-E7UAOUMY.js +0 -75
- package/dist/chunk-E7UAOUMY.js.map +0 -1
- package/dist/chunk-EFCLXK7F.js.map +0 -1
- package/dist/chunk-F2IMUDXZ.js.map +0 -1
- package/dist/chunk-HEHYGYOX.js.map +0 -1
- package/dist/chunk-IM4QE42D.js.map +0 -1
- package/dist/chunk-IPCH26AG.js.map +0 -1
- package/dist/chunk-SAUPYVLF.js.map +0 -1
- package/dist/chunk-THRPYOFK.js.map +0 -1
- package/dist/chunk-UNOTYLQF.js.map +0 -1
- package/dist/chunk-VGZZXKBR.js.map +0 -1
- package/dist/chunk-YHCN776L.js.map +0 -1
- package/src/hooks/__tests__/usePermissionCache.simple.test.ts +0 -192
- package/src/hooks/__tests__/usePermissionCache.unit.test.ts +0 -741
- package/src/hooks/__tests__/usePublicEvent.simple.test.ts +0 -703
- package/src/rbac/hooks/useRBAC.simple.test.ts +0 -95
- package/src/rbac/utils/__tests__/eventContext.unit.test.ts +0 -428
- /package/dist/{DataTable-GUFUNZ3N.js.map → DataTable-ON3IXISJ.js.map} +0 -0
- /package/dist/{UnifiedAuthProvider-643PUAIM.js.map → UnifiedAuthProvider-X5NXANVI.js.map} +0 -0
- /package/dist/{api-YP7XD5L6.js.map → api-I6UCQ5S6.js.map} +0 -0
- /package/dist/{chunk-HESYZWZW.js.map → chunk-QWWZ5CAQ.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.190](README.md) / Exports
|
|
2
2
|
|
|
3
|
-
# @jmruthers/pace-core - v0.5.
|
|
3
|
+
# @jmruthers/pace-core - v0.5.190
|
|
4
4
|
|
|
5
5
|
**`File`**
|
|
6
6
|
|
|
@@ -57,6 +57,7 @@ import { Dialog, NavigationMenu } from '@jmruthers/pace-core/components';
|
|
|
57
57
|
|
|
58
58
|
- [AddressFieldProps](interfaces/AddressFieldProps.md)
|
|
59
59
|
- [AddressFieldRef](interfaces/AddressFieldRef.md)
|
|
60
|
+
- [AvatarProps](interfaces/AvatarProps.md)
|
|
60
61
|
- [BadgeProps](interfaces/BadgeProps.md)
|
|
61
62
|
- [ButtonProps](interfaces/ButtonProps.md)
|
|
62
63
|
- [CalendarProps](interfaces/CalendarProps.md)
|
|
@@ -247,8 +248,6 @@ import { Dialog, NavigationMenu } from '@jmruthers/pace-core/components';
|
|
|
247
248
|
- [AlertTitle](modules.md#alerttitle)
|
|
248
249
|
- [AlertDescription](modules.md#alertdescription)
|
|
249
250
|
- [Avatar](modules.md#avatar)
|
|
250
|
-
- [AvatarImage](modules.md#avatarimage)
|
|
251
|
-
- [AvatarFallback](modules.md#avatarfallback)
|
|
252
251
|
- [Badge](modules.md#badge)
|
|
253
252
|
- [Button](modules.md#button)
|
|
254
253
|
- [Calendar](modules.md#calendar)
|
|
@@ -444,6 +443,7 @@ import { Dialog, NavigationMenu } from '@jmruthers/pace-core/components';
|
|
|
444
443
|
- [useResourcePermissions](modules.md#useresourcepermissions)
|
|
445
444
|
- [useRoleManagement](modules.md#userolemanagement)
|
|
446
445
|
- [useSecureSupabase](modules.md#usesecuresupabase)
|
|
446
|
+
- [useSuperAdminBypass](modules.md#usesuperadminbypass)
|
|
447
447
|
- [enablePerformanceMonitoring](modules.md#enableperformancemonitoring)
|
|
448
448
|
- [disablePerformanceMonitoring](modules.md#disableperformancemonitoring)
|
|
449
449
|
- [isPerformanceMonitoringEnabled](modules.md#isperformancemonitoringenabled)
|
|
@@ -587,7 +587,7 @@ ___
|
|
|
587
587
|
|
|
588
588
|
#### Defined in
|
|
589
589
|
|
|
590
|
-
[packages/core/src/hooks/useFileReference.ts:
|
|
590
|
+
[packages/core/src/hooks/useFileReference.ts:475](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/useFileReference.ts#L475)
|
|
591
591
|
|
|
592
592
|
___
|
|
593
593
|
|
|
@@ -613,7 +613,7 @@ ___
|
|
|
613
613
|
|
|
614
614
|
#### Defined in
|
|
615
615
|
|
|
616
|
-
[packages/core/src/hooks/useFileReference.ts:
|
|
616
|
+
[packages/core/src/hooks/useFileReference.ts:481](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/useFileReference.ts#L481)
|
|
617
617
|
|
|
618
618
|
___
|
|
619
619
|
|
|
@@ -641,7 +641,7 @@ ___
|
|
|
641
641
|
|
|
642
642
|
#### Defined in
|
|
643
643
|
|
|
644
|
-
[packages/core/src/hooks/useFileReference.ts:
|
|
644
|
+
[packages/core/src/hooks/useFileReference.ts:495](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/useFileReference.ts#L495)
|
|
645
645
|
|
|
646
646
|
___
|
|
647
647
|
|
|
@@ -1275,7 +1275,7 @@ JSX.Element - The rendered address field
|
|
|
1275
1275
|
|
|
1276
1276
|
#### Defined in
|
|
1277
1277
|
|
|
1278
|
-
[packages/core/src/components/AddressField/AddressField.tsx:
|
|
1278
|
+
[packages/core/src/components/AddressField/AddressField.tsx:56](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/AddressField/AddressField.tsx#L56)
|
|
1279
1279
|
|
|
1280
1280
|
___
|
|
1281
1281
|
|
|
@@ -1287,7 +1287,7 @@ ___
|
|
|
1287
1287
|
|
|
1288
1288
|
| Name | Type |
|
|
1289
1289
|
| :------ | :------ |
|
|
1290
|
-
| `props` | `HTMLAttributes`\<`
|
|
1290
|
+
| `props` | `HTMLAttributes`\<`HTMLElement`\> & \{ `variant?`: ``"default"`` \| ``"inline"`` \| ``"destructive"`` } & `RefAttributes`\<`HTMLElement`\> |
|
|
1291
1291
|
|
|
1292
1292
|
#### Returns
|
|
1293
1293
|
|
|
@@ -1295,7 +1295,7 @@ ___
|
|
|
1295
1295
|
|
|
1296
1296
|
#### Defined in
|
|
1297
1297
|
|
|
1298
|
-
[packages/core/src/components/Alert/Alert.tsx:
|
|
1298
|
+
[packages/core/src/components/Alert/Alert.tsx:69](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Alert/Alert.tsx#L69)
|
|
1299
1299
|
|
|
1300
1300
|
___
|
|
1301
1301
|
|
|
@@ -1315,7 +1315,7 @@ ___
|
|
|
1315
1315
|
|
|
1316
1316
|
#### Defined in
|
|
1317
1317
|
|
|
1318
|
-
[packages/core/src/components/Alert/Alert.tsx:
|
|
1318
|
+
[packages/core/src/components/Alert/Alert.tsx:96](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Alert/Alert.tsx#L96)
|
|
1319
1319
|
|
|
1320
1320
|
___
|
|
1321
1321
|
|
|
@@ -1335,7 +1335,7 @@ ___
|
|
|
1335
1335
|
|
|
1336
1336
|
#### Defined in
|
|
1337
1337
|
|
|
1338
|
-
[packages/core/src/components/Alert/Alert.tsx:
|
|
1338
|
+
[packages/core/src/components/Alert/Alert.tsx:116](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Alert/Alert.tsx#L116)
|
|
1339
1339
|
|
|
1340
1340
|
___
|
|
1341
1341
|
|
|
@@ -1343,51 +1343,13 @@ ___
|
|
|
1343
1343
|
|
|
1344
1344
|
▸ **Avatar**(`props`): `ReactNode`
|
|
1345
1345
|
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
| Name | Type |
|
|
1349
|
-
| :------ | :------ |
|
|
1350
|
-
| `props` | `Omit`\<`AvatarProps` & `RefAttributes`\<`HTMLSpanElement`\>, ``"ref"``\> & `RefAttributes`\<`HTMLSpanElement`\> |
|
|
1351
|
-
|
|
1352
|
-
#### Returns
|
|
1353
|
-
|
|
1354
|
-
`ReactNode`
|
|
1355
|
-
|
|
1356
|
-
#### Defined in
|
|
1357
|
-
|
|
1358
|
-
[packages/core/src/components/Avatar/Avatar.tsx:42](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Avatar/Avatar.tsx#L42)
|
|
1359
|
-
|
|
1360
|
-
___
|
|
1361
|
-
|
|
1362
|
-
### AvatarImage
|
|
1363
|
-
|
|
1364
|
-
▸ **AvatarImage**(`props`): `ReactNode`
|
|
1365
|
-
|
|
1366
|
-
#### Parameters
|
|
1367
|
-
|
|
1368
|
-
| Name | Type |
|
|
1369
|
-
| :------ | :------ |
|
|
1370
|
-
| `props` | `Omit`\<`AvatarImageProps` & `RefAttributes`\<`HTMLImageElement`\>, ``"ref"``\> & `RefAttributes`\<`HTMLImageElement`\> |
|
|
1371
|
-
|
|
1372
|
-
#### Returns
|
|
1373
|
-
|
|
1374
|
-
`ReactNode`
|
|
1375
|
-
|
|
1376
|
-
#### Defined in
|
|
1377
|
-
|
|
1378
|
-
[packages/core/src/components/Avatar/Avatar.tsx:57](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Avatar/Avatar.tsx#L57)
|
|
1379
|
-
|
|
1380
|
-
___
|
|
1381
|
-
|
|
1382
|
-
### AvatarFallback
|
|
1383
|
-
|
|
1384
|
-
▸ **AvatarFallback**(`props`): `ReactNode`
|
|
1346
|
+
Avatar component for displaying user profile images or initials
|
|
1385
1347
|
|
|
1386
1348
|
#### Parameters
|
|
1387
1349
|
|
|
1388
1350
|
| Name | Type |
|
|
1389
1351
|
| :------ | :------ |
|
|
1390
|
-
| `props` | `
|
|
1352
|
+
| `props` | [`AvatarProps`](interfaces/AvatarProps.md) & `RefAttributes`\<`HTMLDivElement`\> |
|
|
1391
1353
|
|
|
1392
1354
|
#### Returns
|
|
1393
1355
|
|
|
@@ -1395,7 +1357,7 @@ ___
|
|
|
1395
1357
|
|
|
1396
1358
|
#### Defined in
|
|
1397
1359
|
|
|
1398
|
-
[packages/core/src/components/Avatar/Avatar.tsx:
|
|
1360
|
+
[packages/core/src/components/Avatar/Avatar.tsx:99](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Avatar/Avatar.tsx#L99)
|
|
1399
1361
|
|
|
1400
1362
|
___
|
|
1401
1363
|
|
|
@@ -1488,11 +1450,20 @@ Calendar component
|
|
|
1488
1450
|
A flexible, accessible calendar component for date selection.
|
|
1489
1451
|
Built on react-day-picker with pace-core styling.
|
|
1490
1452
|
|
|
1453
|
+
Defaults to Australian locale (en-AU) with Monday as the first day of the week.
|
|
1454
|
+
The locale can be overridden by passing a `locale` prop.
|
|
1455
|
+
|
|
1456
|
+
Month navigation is automatically managed internally when `month` and `onMonthChange` props
|
|
1457
|
+
are not provided. The displayed month will sync with the selected date when available,
|
|
1458
|
+
or default to the current month. Navigation buttons (prev/next) work automatically.
|
|
1459
|
+
|
|
1460
|
+
For controlled month state, pass `month` and `onMonthChange` props.
|
|
1461
|
+
|
|
1491
1462
|
#### Parameters
|
|
1492
1463
|
|
|
1493
1464
|
| Name | Type | Description |
|
|
1494
1465
|
| :------ | :------ | :------ |
|
|
1495
|
-
| `props` | [`CalendarProps`](interfaces/CalendarProps.md) & `RefAttributes`\<`
|
|
1466
|
+
| `props` | [`CalendarProps`](interfaces/CalendarProps.md) & `RefAttributes`\<`HTMLTableElement`\> | Calendar configuration and styling |
|
|
1496
1467
|
|
|
1497
1468
|
#### Returns
|
|
1498
1469
|
|
|
@@ -1503,7 +1474,7 @@ JSX.Element - The rendered calendar element
|
|
|
1503
1474
|
**`Example`**
|
|
1504
1475
|
|
|
1505
1476
|
```tsx
|
|
1506
|
-
// Single date selection
|
|
1477
|
+
// Single date selection (uses default Australian locale)
|
|
1507
1478
|
<Calendar
|
|
1508
1479
|
mode="single"
|
|
1509
1480
|
selected={date}
|
|
@@ -1517,11 +1488,30 @@ JSX.Element - The rendered calendar element
|
|
|
1517
1488
|
onSelect={setDate}
|
|
1518
1489
|
disabled={(date) => date < new Date()}
|
|
1519
1490
|
/>
|
|
1491
|
+
|
|
1492
|
+
// Override locale (e.g., US locale with Sunday as first day)
|
|
1493
|
+
import { enUS } from 'date-fns/locale';
|
|
1494
|
+
<Calendar
|
|
1495
|
+
mode="single"
|
|
1496
|
+
selected={date}
|
|
1497
|
+
onSelect={setDate}
|
|
1498
|
+
locale={enUS}
|
|
1499
|
+
/>
|
|
1500
|
+
|
|
1501
|
+
// Controlled month state (optional - month is auto-managed if not provided)
|
|
1502
|
+
const [month, setMonth] = useState(new Date());
|
|
1503
|
+
<Calendar
|
|
1504
|
+
mode="single"
|
|
1505
|
+
selected={date}
|
|
1506
|
+
onSelect={setDate}
|
|
1507
|
+
month={month}
|
|
1508
|
+
onMonthChange={setMonth}
|
|
1509
|
+
/>
|
|
1520
1510
|
```
|
|
1521
1511
|
|
|
1522
1512
|
#### Defined in
|
|
1523
1513
|
|
|
1524
|
-
[packages/core/src/components/Calendar/Calendar.tsx:
|
|
1514
|
+
[packages/core/src/components/Calendar/Calendar.tsx:188](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Calendar/Calendar.tsx#L188)
|
|
1525
1515
|
|
|
1526
1516
|
___
|
|
1527
1517
|
|
|
@@ -1601,7 +1591,7 @@ ___
|
|
|
1601
1591
|
|
|
1602
1592
|
#### Defined in
|
|
1603
1593
|
|
|
1604
|
-
[packages/core/src/components/Card/Card.tsx:
|
|
1594
|
+
[packages/core/src/components/Card/Card.tsx:212](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Card/Card.tsx#L212)
|
|
1605
1595
|
|
|
1606
1596
|
___
|
|
1607
1597
|
|
|
@@ -1621,7 +1611,7 @@ ___
|
|
|
1621
1611
|
|
|
1622
1612
|
#### Defined in
|
|
1623
1613
|
|
|
1624
|
-
[packages/core/src/components/Card/Card.tsx:
|
|
1614
|
+
[packages/core/src/components/Card/Card.tsx:224](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Card/Card.tsx#L224)
|
|
1625
1615
|
|
|
1626
1616
|
___
|
|
1627
1617
|
|
|
@@ -1641,7 +1631,7 @@ ___
|
|
|
1641
1631
|
|
|
1642
1632
|
#### Defined in
|
|
1643
1633
|
|
|
1644
|
-
[packages/core/src/components/Card/Card.tsx:
|
|
1634
|
+
[packages/core/src/components/Card/Card.tsx:236](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Card/Card.tsx#L236)
|
|
1645
1635
|
|
|
1646
1636
|
___
|
|
1647
1637
|
|
|
@@ -1661,7 +1651,7 @@ ___
|
|
|
1661
1651
|
|
|
1662
1652
|
#### Defined in
|
|
1663
1653
|
|
|
1664
|
-
[packages/core/src/components/Card/Card.tsx:
|
|
1654
|
+
[packages/core/src/components/Card/Card.tsx:248](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Card/Card.tsx#L248)
|
|
1665
1655
|
|
|
1666
1656
|
___
|
|
1667
1657
|
|
|
@@ -2503,7 +2493,7 @@ React element with file display
|
|
|
2503
2493
|
|
|
2504
2494
|
#### Defined in
|
|
2505
2495
|
|
|
2506
|
-
[packages/core/src/components/FileDisplay/FileDisplay.tsx:
|
|
2496
|
+
[packages/core/src/components/FileDisplay/FileDisplay.tsx:900](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/FileDisplay/FileDisplay.tsx#L900)
|
|
2507
2497
|
|
|
2508
2498
|
___
|
|
2509
2499
|
|
|
@@ -2523,7 +2513,7 @@ ___
|
|
|
2523
2513
|
|
|
2524
2514
|
#### Defined in
|
|
2525
2515
|
|
|
2526
|
-
[packages/core/src/components/FileUpload/FileUpload.tsx:
|
|
2516
|
+
[packages/core/src/components/FileUpload/FileUpload.tsx:50](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/FileUpload/FileUpload.tsx#L50)
|
|
2527
2517
|
|
|
2528
2518
|
___
|
|
2529
2519
|
|
|
@@ -2804,7 +2794,7 @@ function MinimalHeader() {
|
|
|
2804
2794
|
|
|
2805
2795
|
#### Defined in
|
|
2806
2796
|
|
|
2807
|
-
[packages/core/src/components/Header/Header.tsx:
|
|
2797
|
+
[packages/core/src/components/Header/Header.tsx:241](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/Header/Header.tsx#L241)
|
|
2808
2798
|
|
|
2809
2799
|
___
|
|
2810
2800
|
|
|
@@ -3461,13 +3451,13 @@ ___
|
|
|
3461
3451
|
▸ **Progress**(`props`): `ReactNode`
|
|
3462
3452
|
|
|
3463
3453
|
Progress component
|
|
3464
|
-
An accessible progress bar with smooth animations
|
|
3454
|
+
An accessible progress bar with smooth animations using native HTML `<progress>` element
|
|
3465
3455
|
|
|
3466
3456
|
#### Parameters
|
|
3467
3457
|
|
|
3468
3458
|
| Name | Type | Description |
|
|
3469
3459
|
| :------ | :------ | :------ |
|
|
3470
|
-
| `props` | [`ProgressProps`](interfaces/ProgressProps.md) & `RefAttributes`\<`
|
|
3460
|
+
| `props` | [`ProgressProps`](interfaces/ProgressProps.md) & `RefAttributes`\<`HTMLProgressElement`\> | Progress configuration and styling |
|
|
3471
3461
|
|
|
3472
3462
|
#### Returns
|
|
3473
3463
|
|
|
@@ -3634,7 +3624,7 @@ Public page context with environment variables
|
|
|
3634
3624
|
|
|
3635
3625
|
#### Defined in
|
|
3636
3626
|
|
|
3637
|
-
[packages/core/src/components/PublicLayout/PublicPageProvider.tsx:
|
|
3627
|
+
[packages/core/src/components/PublicLayout/PublicPageProvider.tsx:133](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/PublicLayout/PublicPageProvider.tsx#L133)
|
|
3638
3628
|
|
|
3639
3629
|
___
|
|
3640
3630
|
|
|
@@ -3652,7 +3642,7 @@ True if we're in a public page context
|
|
|
3652
3642
|
|
|
3653
3643
|
#### Defined in
|
|
3654
3644
|
|
|
3655
|
-
[packages/core/src/components/PublicLayout/PublicPageProvider.tsx:
|
|
3645
|
+
[packages/core/src/components/PublicLayout/PublicPageProvider.tsx:148](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/components/PublicLayout/PublicPageProvider.tsx#L148)
|
|
3656
3646
|
|
|
3657
3647
|
___
|
|
3658
3648
|
|
|
@@ -4797,7 +4787,7 @@ Useful for testing or when you need to force refresh all data
|
|
|
4797
4787
|
|
|
4798
4788
|
#### Defined in
|
|
4799
4789
|
|
|
4800
|
-
[packages/core/src/hooks/public/usePublicFileDisplay.ts:
|
|
4790
|
+
[packages/core/src/hooks/public/usePublicFileDisplay.ts:482](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/public/usePublicFileDisplay.ts#L482)
|
|
4801
4791
|
|
|
4802
4792
|
___
|
|
4803
4793
|
|
|
@@ -4818,7 +4808,7 @@ Get cache statistics for debugging
|
|
|
4818
4808
|
|
|
4819
4809
|
#### Defined in
|
|
4820
4810
|
|
|
4821
|
-
[packages/core/src/hooks/public/usePublicFileDisplay.ts:
|
|
4811
|
+
[packages/core/src/hooks/public/usePublicFileDisplay.ts:493](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/public/usePublicFileDisplay.ts#L493)
|
|
4822
4812
|
|
|
4823
4813
|
___
|
|
4824
4814
|
|
|
@@ -5133,7 +5123,7 @@ ___
|
|
|
5133
5123
|
|
|
5134
5124
|
#### Defined in
|
|
5135
5125
|
|
|
5136
|
-
[packages/core/src/hooks/useFileReference.ts:
|
|
5126
|
+
[packages/core/src/hooks/useFileReference.ts:62](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/useFileReference.ts#L62)
|
|
5137
5127
|
|
|
5138
5128
|
___
|
|
5139
5129
|
|
|
@@ -5172,7 +5162,7 @@ ___
|
|
|
5172
5162
|
|
|
5173
5163
|
#### Defined in
|
|
5174
5164
|
|
|
5175
|
-
[packages/core/src/hooks/useFileReference.ts:
|
|
5165
|
+
[packages/core/src/hooks/useFileReference.ts:245](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/useFileReference.ts#L245)
|
|
5176
5166
|
|
|
5177
5167
|
___
|
|
5178
5168
|
|
|
@@ -5205,7 +5195,7 @@ Hook for getting a file reference by ID
|
|
|
5205
5195
|
|
|
5206
5196
|
#### Defined in
|
|
5207
5197
|
|
|
5208
|
-
[packages/core/src/hooks/useFileReference.ts:
|
|
5198
|
+
[packages/core/src/hooks/useFileReference.ts:349](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/useFileReference.ts#L349)
|
|
5209
5199
|
|
|
5210
5200
|
___
|
|
5211
5201
|
|
|
@@ -5249,7 +5239,7 @@ For more control, use useFileReference() directly and manage URLs yourself.
|
|
|
5249
5239
|
|
|
5250
5240
|
#### Defined in
|
|
5251
5241
|
|
|
5252
|
-
[packages/core/src/hooks/useFileReference.ts:
|
|
5242
|
+
[packages/core/src/hooks/useFileReference.ts:422](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/hooks/useFileReference.ts#L422)
|
|
5253
5243
|
|
|
5254
5244
|
___
|
|
5255
5245
|
|
|
@@ -5579,7 +5569,7 @@ ___
|
|
|
5579
5569
|
|
|
5580
5570
|
#### Defined in
|
|
5581
5571
|
|
|
5582
|
-
[packages/core/src/providers/services/UnifiedAuthProvider.tsx:
|
|
5572
|
+
[packages/core/src/providers/services/UnifiedAuthProvider.tsx:120](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/providers/services/UnifiedAuthProvider.tsx#L120)
|
|
5583
5573
|
|
|
5584
5574
|
___
|
|
5585
5575
|
|
|
@@ -5599,7 +5589,7 @@ ___
|
|
|
5599
5589
|
|
|
5600
5590
|
#### Defined in
|
|
5601
5591
|
|
|
5602
|
-
[packages/core/src/providers/services/UnifiedAuthProvider.tsx:
|
|
5592
|
+
[packages/core/src/providers/services/UnifiedAuthProvider.tsx:675](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/providers/services/UnifiedAuthProvider.tsx#L675)
|
|
5603
5593
|
|
|
5604
5594
|
___
|
|
5605
5595
|
|
|
@@ -6106,13 +6096,13 @@ Setup RBAC system
|
|
|
6106
6096
|
|
|
6107
6097
|
#### Defined in
|
|
6108
6098
|
|
|
6109
|
-
[packages/core/src/rbac/api.ts:
|
|
6099
|
+
[packages/core/src/rbac/api.ts:46](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L46)
|
|
6110
6100
|
|
|
6111
6101
|
___
|
|
6112
6102
|
|
|
6113
6103
|
### getAccessLevel
|
|
6114
6104
|
|
|
6115
|
-
▸ **getAccessLevel**(`input`): `Promise`\<[`AccessLevel`](modules.md#accesslevel)\>
|
|
6105
|
+
▸ **getAccessLevel**(`input`, `appConfig?`, `appName?`): `Promise`\<[`AccessLevel`](modules.md#accesslevel)\>
|
|
6116
6106
|
|
|
6117
6107
|
Get user's access level in a scope
|
|
6118
6108
|
|
|
@@ -6123,6 +6113,8 @@ Get user's access level in a scope
|
|
|
6123
6113
|
| `input` | `Object` | Access level input |
|
|
6124
6114
|
| `input.userId` | `string` | - |
|
|
6125
6115
|
| `input.scope` | [`Scope`](modules.md#scope) | - |
|
|
6116
|
+
| `appConfig?` | ``null`` \| `AppConfig` | Optional app configuration |
|
|
6117
|
+
| `appName?` | `string` | Optional app name |
|
|
6126
6118
|
|
|
6127
6119
|
#### Returns
|
|
6128
6120
|
|
|
@@ -6141,13 +6133,13 @@ const accessLevel = await getAccessLevel({
|
|
|
6141
6133
|
|
|
6142
6134
|
#### Defined in
|
|
6143
6135
|
|
|
6144
|
-
[packages/core/src/rbac/api.ts:
|
|
6136
|
+
[packages/core/src/rbac/api.ts:125](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L125)
|
|
6145
6137
|
|
|
6146
6138
|
___
|
|
6147
6139
|
|
|
6148
6140
|
### getPermissionMap
|
|
6149
6141
|
|
|
6150
|
-
▸ **getPermissionMap**(`input`): `Promise`\<[`PermissionMap`](modules.md#permissionmap)\>
|
|
6142
|
+
▸ **getPermissionMap**(`input`, `appConfig?`, `appName?`): `Promise`\<[`PermissionMap`](modules.md#permissionmap)\>
|
|
6151
6143
|
|
|
6152
6144
|
Get user's permission map for a scope
|
|
6153
6145
|
|
|
@@ -6158,6 +6150,8 @@ Get user's permission map for a scope
|
|
|
6158
6150
|
| `input` | `Object` | Permission map input |
|
|
6159
6151
|
| `input.userId` | `string` | - |
|
|
6160
6152
|
| `input.scope` | [`Scope`](modules.md#scope) | - |
|
|
6153
|
+
| `appConfig?` | ``null`` \| `AppConfig` | Optional app configuration |
|
|
6154
|
+
| `appName?` | `string` | Optional app name |
|
|
6161
6155
|
|
|
6162
6156
|
#### Returns
|
|
6163
6157
|
|
|
@@ -6180,7 +6174,7 @@ const permissions = await getPermissionMap({
|
|
|
6180
6174
|
|
|
6181
6175
|
#### Defined in
|
|
6182
6176
|
|
|
6183
|
-
[packages/core/src/rbac/api.ts:
|
|
6177
|
+
[packages/core/src/rbac/api.ts:188](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L188)
|
|
6184
6178
|
|
|
6185
6179
|
___
|
|
6186
6180
|
|
|
@@ -6202,13 +6196,13 @@ ___
|
|
|
6202
6196
|
|
|
6203
6197
|
#### Defined in
|
|
6204
6198
|
|
|
6205
|
-
[packages/core/src/rbac/api.ts:
|
|
6199
|
+
[packages/core/src/rbac/api.ts:225](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L225)
|
|
6206
6200
|
|
|
6207
6201
|
___
|
|
6208
6202
|
|
|
6209
6203
|
### getRoleContext
|
|
6210
6204
|
|
|
6211
|
-
▸ **getRoleContext**(`input`): `Promise`\<`RBACRoleContext`\>
|
|
6205
|
+
▸ **getRoleContext**(`input`, `appConfig?`, `appName?`): `Promise`\<`RBACRoleContext`\>
|
|
6212
6206
|
|
|
6213
6207
|
#### Parameters
|
|
6214
6208
|
|
|
@@ -6217,6 +6211,8 @@ ___
|
|
|
6217
6211
|
| `input` | `Object` |
|
|
6218
6212
|
| `input.userId` | `string` |
|
|
6219
6213
|
| `input.scope` | [`Scope`](modules.md#scope) |
|
|
6214
|
+
| `appConfig?` | ``null`` \| `AppConfig` |
|
|
6215
|
+
| `appName?` | `string` |
|
|
6220
6216
|
|
|
6221
6217
|
#### Returns
|
|
6222
6218
|
|
|
@@ -6224,13 +6220,13 @@ ___
|
|
|
6224
6220
|
|
|
6225
6221
|
#### Defined in
|
|
6226
6222
|
|
|
6227
|
-
[packages/core/src/rbac/api.ts:
|
|
6223
|
+
[packages/core/src/rbac/api.ts:233](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L233)
|
|
6228
6224
|
|
|
6229
6225
|
___
|
|
6230
6226
|
|
|
6231
6227
|
### isPermitted
|
|
6232
6228
|
|
|
6233
|
-
▸ **isPermitted**(`input`): `Promise`\<`boolean`\>
|
|
6229
|
+
▸ **isPermitted**(`input`, `appConfig?`, `appName?`): `Promise`\<`boolean`\>
|
|
6234
6230
|
|
|
6235
6231
|
Check if user has a specific permission
|
|
6236
6232
|
|
|
@@ -6239,6 +6235,8 @@ Check if user has a specific permission
|
|
|
6239
6235
|
| Name | Type | Description |
|
|
6240
6236
|
| :------ | :------ | :------ |
|
|
6241
6237
|
| `input` | [`PermissionCheck`](modules.md#permissioncheck) | Permission check input |
|
|
6238
|
+
| `appConfig?` | ``null`` \| `AppConfig` | Optional app configuration (if not provided, will be fetched) |
|
|
6239
|
+
| `appName?` | `string` | Optional app name (for PORTAL/ADMIN special case and config lookup) |
|
|
6242
6240
|
|
|
6243
6241
|
#### Returns
|
|
6244
6242
|
|
|
@@ -6259,13 +6257,13 @@ const canManage = await isPermitted({
|
|
|
6259
6257
|
|
|
6260
6258
|
#### Defined in
|
|
6261
6259
|
|
|
6262
|
-
[packages/core/src/rbac/api.ts:
|
|
6260
|
+
[packages/core/src/rbac/api.ts:288](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L288)
|
|
6263
6261
|
|
|
6264
6262
|
___
|
|
6265
6263
|
|
|
6266
6264
|
### isPermittedCached
|
|
6267
6265
|
|
|
6268
|
-
▸ **isPermittedCached**(`input`): `Promise`\<`boolean`\>
|
|
6266
|
+
▸ **isPermittedCached**(`input`, `appConfig?`, `appName?`): `Promise`\<`boolean`\>
|
|
6269
6267
|
|
|
6270
6268
|
Check if user has a specific permission (cached version)
|
|
6271
6269
|
|
|
@@ -6277,6 +6275,8 @@ and checks cache before making new requests. Uses session cache for page-level c
|
|
|
6277
6275
|
| Name | Type | Description |
|
|
6278
6276
|
| :------ | :------ | :------ |
|
|
6279
6277
|
| `input` | [`PermissionCheck`](modules.md#permissioncheck) | Permission check input |
|
|
6278
|
+
| `appConfig?` | ``null`` \| `AppConfig` | Optional app configuration |
|
|
6279
|
+
| `appName?` | `string` | Optional app name |
|
|
6280
6280
|
|
|
6281
6281
|
#### Returns
|
|
6282
6282
|
|
|
@@ -6286,7 +6286,7 @@ Promise resolving to permission result
|
|
|
6286
6286
|
|
|
6287
6287
|
#### Defined in
|
|
6288
6288
|
|
|
6289
|
-
[packages/core/src/rbac/api.ts:
|
|
6289
|
+
[packages/core/src/rbac/api.ts:363](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L363)
|
|
6290
6290
|
|
|
6291
6291
|
___
|
|
6292
6292
|
|
|
@@ -6310,7 +6310,7 @@ Promise<boolean> - True if user has permission
|
|
|
6310
6310
|
|
|
6311
6311
|
#### Defined in
|
|
6312
6312
|
|
|
6313
|
-
[packages/core/src/rbac/api.ts:
|
|
6313
|
+
[packages/core/src/rbac/api.ts:406](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L406)
|
|
6314
6314
|
|
|
6315
6315
|
___
|
|
6316
6316
|
|
|
@@ -6338,7 +6338,7 @@ Promise resolving to true if user has any permission
|
|
|
6338
6338
|
|
|
6339
6339
|
#### Defined in
|
|
6340
6340
|
|
|
6341
|
-
[packages/core/src/rbac/api.ts:
|
|
6341
|
+
[packages/core/src/rbac/api.ts:416](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L416)
|
|
6342
6342
|
|
|
6343
6343
|
___
|
|
6344
6344
|
|
|
@@ -6366,7 +6366,7 @@ Promise resolving to true if user has all permissions
|
|
|
6366
6366
|
|
|
6367
6367
|
#### Defined in
|
|
6368
6368
|
|
|
6369
|
-
[packages/core/src/rbac/api.ts:
|
|
6369
|
+
[packages/core/src/rbac/api.ts:444](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/api.ts#L444)
|
|
6370
6370
|
|
|
6371
6371
|
___
|
|
6372
6372
|
|
|
@@ -6752,7 +6752,7 @@ React element with navigation permission context
|
|
|
6752
6752
|
|
|
6753
6753
|
#### Defined in
|
|
6754
6754
|
|
|
6755
|
-
[packages/core/src/rbac/components/NavigationProvider.tsx:
|
|
6755
|
+
[packages/core/src/rbac/components/NavigationProvider.tsx:168](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/NavigationProvider.tsx#L168)
|
|
6756
6756
|
|
|
6757
6757
|
___
|
|
6758
6758
|
|
|
@@ -6774,7 +6774,7 @@ Error if used outside of NavigationProvider
|
|
|
6774
6774
|
|
|
6775
6775
|
#### Defined in
|
|
6776
6776
|
|
|
6777
|
-
[packages/core/src/rbac/components/NavigationProvider.tsx:
|
|
6777
|
+
[packages/core/src/rbac/components/NavigationProvider.tsx:333](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/NavigationProvider.tsx#L333)
|
|
6778
6778
|
|
|
6779
6779
|
___
|
|
6780
6780
|
|
|
@@ -6794,7 +6794,7 @@ ___
|
|
|
6794
6794
|
|
|
6795
6795
|
#### Defined in
|
|
6796
6796
|
|
|
6797
|
-
[packages/core/src/rbac/components/PagePermissionGuard.tsx:
|
|
6797
|
+
[packages/core/src/rbac/components/PagePermissionGuard.tsx:373](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/PagePermissionGuard.tsx#L373)
|
|
6798
6798
|
|
|
6799
6799
|
___
|
|
6800
6800
|
|
|
@@ -6821,7 +6821,7 @@ React element with page permission context
|
|
|
6821
6821
|
|
|
6822
6822
|
#### Defined in
|
|
6823
6823
|
|
|
6824
|
-
[packages/core/src/rbac/components/PagePermissionProvider.tsx:
|
|
6824
|
+
[packages/core/src/rbac/components/PagePermissionProvider.tsx:129](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/PagePermissionProvider.tsx#L129)
|
|
6825
6825
|
|
|
6826
6826
|
___
|
|
6827
6827
|
|
|
@@ -6843,7 +6843,7 @@ Error if used outside of PagePermissionProvider
|
|
|
6843
6843
|
|
|
6844
6844
|
#### Defined in
|
|
6845
6845
|
|
|
6846
|
-
[packages/core/src/rbac/components/PagePermissionProvider.tsx:
|
|
6846
|
+
[packages/core/src/rbac/components/PagePermissionProvider.tsx:269](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/PagePermissionProvider.tsx#L269)
|
|
6847
6847
|
|
|
6848
6848
|
___
|
|
6849
6849
|
|
|
@@ -6898,7 +6898,7 @@ React element with role-based routing
|
|
|
6898
6898
|
|
|
6899
6899
|
#### Defined in
|
|
6900
6900
|
|
|
6901
|
-
[packages/core/src/rbac/components/RoleBasedRouter.tsx:
|
|
6901
|
+
[packages/core/src/rbac/components/RoleBasedRouter.tsx:183](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/RoleBasedRouter.tsx#L183)
|
|
6902
6902
|
|
|
6903
6903
|
___
|
|
6904
6904
|
|
|
@@ -6920,7 +6920,7 @@ Error if used outside of RoleBasedRouter
|
|
|
6920
6920
|
|
|
6921
6921
|
#### Defined in
|
|
6922
6922
|
|
|
6923
|
-
[packages/core/src/rbac/components/RoleBasedRouter.tsx:
|
|
6923
|
+
[packages/core/src/rbac/components/RoleBasedRouter.tsx:399](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/RoleBasedRouter.tsx#L399)
|
|
6924
6924
|
|
|
6925
6925
|
___
|
|
6926
6926
|
|
|
@@ -6947,7 +6947,7 @@ React element with secure data context
|
|
|
6947
6947
|
|
|
6948
6948
|
#### Defined in
|
|
6949
6949
|
|
|
6950
|
-
[packages/core/src/rbac/components/SecureDataProvider.tsx:
|
|
6950
|
+
[packages/core/src/rbac/components/SecureDataProvider.tsx:137](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/SecureDataProvider.tsx#L137)
|
|
6951
6951
|
|
|
6952
6952
|
___
|
|
6953
6953
|
|
|
@@ -6969,7 +6969,7 @@ Error if used outside of SecureDataProvider
|
|
|
6969
6969
|
|
|
6970
6970
|
#### Defined in
|
|
6971
6971
|
|
|
6972
|
-
[packages/core/src/rbac/components/SecureDataProvider.tsx:
|
|
6972
|
+
[packages/core/src/rbac/components/SecureDataProvider.tsx:315](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/components/SecureDataProvider.tsx#L315)
|
|
6973
6973
|
|
|
6974
6974
|
___
|
|
6975
6975
|
|
|
@@ -7070,7 +7070,7 @@ RBACEngine instance
|
|
|
7070
7070
|
|
|
7071
7071
|
#### Defined in
|
|
7072
7072
|
|
|
7073
|
-
[packages/core/src/rbac/engine.ts:
|
|
7073
|
+
[packages/core/src/rbac/engine.ts:604](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/engine.ts#L604)
|
|
7074
7074
|
|
|
7075
7075
|
___
|
|
7076
7076
|
|
|
@@ -7130,13 +7130,13 @@ function MyComponent() {
|
|
|
7130
7130
|
|
|
7131
7131
|
#### Defined in
|
|
7132
7132
|
|
|
7133
|
-
[packages/core/src/rbac/hooks/usePermissions.ts:
|
|
7133
|
+
[packages/core/src/rbac/hooks/usePermissions.ts:60](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/usePermissions.ts#L60)
|
|
7134
7134
|
|
|
7135
7135
|
___
|
|
7136
7136
|
|
|
7137
7137
|
### useCan
|
|
7138
7138
|
|
|
7139
|
-
▸ **useCan**(`userId`, `scope`, `permission`, `pageId?`, `useCache?`): `Object`
|
|
7139
|
+
▸ **useCan**(`userId`, `scope`, `permission`, `pageId?`, `useCache?`, `appName?`): `Object`
|
|
7140
7140
|
|
|
7141
7141
|
Hook to check if user can perform an action
|
|
7142
7142
|
|
|
@@ -7149,6 +7149,7 @@ Hook to check if user can perform an action
|
|
|
7149
7149
|
| `permission` | \`create:$\{string}\` \| \`update:$\{string}\` \| \`read:$\{string}\` \| \`delete:$\{string}\` | `undefined` | Permission to check |
|
|
7150
7150
|
| `pageId?` | `string` | `undefined` | Optional page ID |
|
|
7151
7151
|
| `useCache` | `boolean` | `true` | Whether to use cached results |
|
|
7152
|
+
| `appName?` | `string` | `undefined` | Optional app name (for PORTAL/ADMIN special case) |
|
|
7152
7153
|
|
|
7153
7154
|
#### Returns
|
|
7154
7155
|
|
|
@@ -7178,7 +7179,7 @@ function MyComponent() {
|
|
|
7178
7179
|
|
|
7179
7180
|
#### Defined in
|
|
7180
7181
|
|
|
7181
|
-
[packages/core/src/rbac/hooks/usePermissions.ts:
|
|
7182
|
+
[packages/core/src/rbac/hooks/usePermissions.ts:305](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/usePermissions.ts#L305)
|
|
7182
7183
|
|
|
7183
7184
|
___
|
|
7184
7185
|
|
|
@@ -7228,7 +7229,7 @@ function MyComponent() {
|
|
|
7228
7229
|
|
|
7229
7230
|
#### Defined in
|
|
7230
7231
|
|
|
7231
|
-
[packages/core/src/rbac/hooks/usePermissions.ts:
|
|
7232
|
+
[packages/core/src/rbac/hooks/usePermissions.ts:547](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/usePermissions.ts#L547)
|
|
7232
7233
|
|
|
7233
7234
|
___
|
|
7234
7235
|
|
|
@@ -7285,7 +7286,7 @@ function MyComponent() {
|
|
|
7285
7286
|
|
|
7286
7287
|
#### Defined in
|
|
7287
7288
|
|
|
7288
|
-
[packages/core/src/rbac/hooks/usePermissions.ts:
|
|
7289
|
+
[packages/core/src/rbac/hooks/usePermissions.ts:653](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/usePermissions.ts#L653)
|
|
7289
7290
|
|
|
7290
7291
|
___
|
|
7291
7292
|
|
|
@@ -7336,7 +7337,7 @@ function MyComponent() {
|
|
|
7336
7337
|
|
|
7337
7338
|
#### Defined in
|
|
7338
7339
|
|
|
7339
|
-
[packages/core/src/rbac/hooks/usePermissions.ts:
|
|
7340
|
+
[packages/core/src/rbac/hooks/usePermissions.ts:736](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/usePermissions.ts#L736)
|
|
7340
7341
|
|
|
7341
7342
|
___
|
|
7342
7343
|
|
|
@@ -7387,7 +7388,7 @@ function MyComponent() {
|
|
|
7387
7388
|
|
|
7388
7389
|
#### Defined in
|
|
7389
7390
|
|
|
7390
|
-
[packages/core/src/rbac/hooks/usePermissions.ts:
|
|
7391
|
+
[packages/core/src/rbac/hooks/usePermissions.ts:822](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/usePermissions.ts#L822)
|
|
7391
7392
|
|
|
7392
7393
|
___
|
|
7393
7394
|
|
|
@@ -7438,7 +7439,7 @@ function MyComponent() {
|
|
|
7438
7439
|
|
|
7439
7440
|
#### Defined in
|
|
7440
7441
|
|
|
7441
|
-
[packages/core/src/rbac/hooks/usePermissions.ts:
|
|
7442
|
+
[packages/core/src/rbac/hooks/usePermissions.ts:907](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/usePermissions.ts#L907)
|
|
7442
7443
|
|
|
7443
7444
|
___
|
|
7444
7445
|
|
|
@@ -7458,7 +7459,7 @@ ___
|
|
|
7458
7459
|
|
|
7459
7460
|
#### Defined in
|
|
7460
7461
|
|
|
7461
|
-
[packages/core/src/rbac/hooks/useRBAC.ts:
|
|
7462
|
+
[packages/core/src/rbac/hooks/useRBAC.ts:52](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/useRBAC.ts#L52)
|
|
7462
7463
|
|
|
7463
7464
|
___
|
|
7464
7465
|
|
|
@@ -7501,7 +7502,7 @@ const permission = useCan(userId, resolvedScope, permission);
|
|
|
7501
7502
|
|
|
7502
7503
|
#### Defined in
|
|
7503
7504
|
|
|
7504
|
-
[packages/core/src/rbac/hooks/useResolvedScope.ts:
|
|
7505
|
+
[packages/core/src/rbac/hooks/useResolvedScope.ts:75](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/useResolvedScope.ts#L75)
|
|
7505
7506
|
|
|
7506
7507
|
___
|
|
7507
7508
|
|
|
@@ -7648,7 +7649,21 @@ function MyComponent() {
|
|
|
7648
7649
|
|
|
7649
7650
|
#### Defined in
|
|
7650
7651
|
|
|
7651
|
-
[packages/core/src/rbac/hooks/useSecureSupabase.ts:
|
|
7652
|
+
[packages/core/src/rbac/hooks/useSecureSupabase.ts:208](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/useSecureSupabase.ts#L208)
|
|
7653
|
+
|
|
7654
|
+
___
|
|
7655
|
+
|
|
7656
|
+
### useSuperAdminBypass
|
|
7657
|
+
|
|
7658
|
+
▸ **useSuperAdminBypass**(): `SuperAdminBypassState`
|
|
7659
|
+
|
|
7660
|
+
#### Returns
|
|
7661
|
+
|
|
7662
|
+
`SuperAdminBypassState`
|
|
7663
|
+
|
|
7664
|
+
#### Defined in
|
|
7665
|
+
|
|
7666
|
+
[packages/core/src/rbac/hooks/useSuperAdminBypass.ts:38](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/hooks/useSuperAdminBypass.ts#L38)
|
|
7652
7667
|
|
|
7653
7668
|
___
|
|
7654
7669
|
|
|
@@ -7893,19 +7908,20 @@ ___
|
|
|
7893
7908
|
|
|
7894
7909
|
### createSecureClient
|
|
7895
7910
|
|
|
7896
|
-
▸ **createSecureClient**(`supabaseUrl`, `supabaseKey`, `organisationId`, `eventId?`, `appId?`): [`SecureSupabaseClient`](classes/SecureSupabaseClient.md)
|
|
7911
|
+
▸ **createSecureClient**(`supabaseUrl`, `supabaseKey`, `organisationId`, `eventId?`, `appId?`, `isSuperAdmin?`): [`SecureSupabaseClient`](classes/SecureSupabaseClient.md)
|
|
7897
7912
|
|
|
7898
7913
|
Create a secure Supabase client with organisation context
|
|
7899
7914
|
|
|
7900
7915
|
#### Parameters
|
|
7901
7916
|
|
|
7902
|
-
| Name | Type | Description |
|
|
7903
|
-
| :------ | :------ | :------ |
|
|
7904
|
-
| `supabaseUrl` | `string` | Supabase project URL |
|
|
7905
|
-
| `supabaseKey` | `string` | Supabase publishable key or anon key (accepts both legacy anon keys and modern publishable keys) |
|
|
7906
|
-
| `organisationId` | `string` | Required organisation ID |
|
|
7907
|
-
| `eventId?` | `string` | Optional event ID |
|
|
7908
|
-
| `appId?` | `string` | Optional app ID |
|
|
7917
|
+
| Name | Type | Default value | Description |
|
|
7918
|
+
| :------ | :------ | :------ | :------ |
|
|
7919
|
+
| `supabaseUrl` | `string` | `undefined` | Supabase project URL |
|
|
7920
|
+
| `supabaseKey` | `string` | `undefined` | Supabase publishable key or anon key (accepts both legacy anon keys and modern publishable keys) |
|
|
7921
|
+
| `organisationId` | `string` | `undefined` | Required organisation ID |
|
|
7922
|
+
| `eventId?` | `string` | `undefined` | Optional event ID |
|
|
7923
|
+
| `appId?` | `string` | `undefined` | Optional app ID |
|
|
7924
|
+
| `isSuperAdmin` | `boolean` | `false` | Optional super admin flag (defaults to false) |
|
|
7909
7925
|
|
|
7910
7926
|
#### Returns
|
|
7911
7927
|
|
|
@@ -7921,13 +7937,14 @@ const client = createSecureClient(
|
|
|
7921
7937
|
'your-publishable-key-or-anon-key',
|
|
7922
7938
|
'org-123',
|
|
7923
7939
|
'event-456',
|
|
7924
|
-
'app-789'
|
|
7940
|
+
'app-789',
|
|
7941
|
+
false // isSuperAdmin
|
|
7925
7942
|
);
|
|
7926
7943
|
```
|
|
7927
7944
|
|
|
7928
7945
|
#### Defined in
|
|
7929
7946
|
|
|
7930
|
-
[packages/core/src/rbac/secureClient.ts:
|
|
7947
|
+
[packages/core/src/rbac/secureClient.ts:324](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/secureClient.ts#L324)
|
|
7931
7948
|
|
|
7932
7949
|
___
|
|
7933
7950
|
|
|
@@ -7954,7 +7971,7 @@ SecureSupabaseClient instance
|
|
|
7954
7971
|
|
|
7955
7972
|
#### Defined in
|
|
7956
7973
|
|
|
7957
|
-
[packages/core/src/rbac/secureClient.ts:
|
|
7974
|
+
[packages/core/src/rbac/secureClient.ts:344](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/rbac/secureClient.ts#L344)
|
|
7958
7975
|
|
|
7959
7976
|
___
|
|
7960
7977
|
|
|
@@ -8552,7 +8569,9 @@ ___
|
|
|
8552
8569
|
|
|
8553
8570
|
▸ **generateFilePath**(`options`, `fileName`): `string`
|
|
8554
8571
|
|
|
8555
|
-
Generate a file path based on organization-first structure
|
|
8572
|
+
Generate a file path based on organization-first or user-first structure
|
|
8573
|
+
- If orgId is provided: {orgId}/{folder}/filename
|
|
8574
|
+
- If userId is provided (and orgId is not): users/{userId}/{folder}/filename
|
|
8556
8575
|
|
|
8557
8576
|
#### Parameters
|
|
8558
8577
|
|
|
@@ -8567,7 +8586,7 @@ Generate a file path based on organization-first structure
|
|
|
8567
8586
|
|
|
8568
8587
|
#### Defined in
|
|
8569
8588
|
|
|
8570
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8589
|
+
[packages/core/src/utils/storage/helpers.ts:25](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L25)
|
|
8571
8590
|
|
|
8572
8591
|
___
|
|
8573
8592
|
|
|
@@ -8590,7 +8609,7 @@ Sanitizes the original filename to remove spaces and invalid characters for stor
|
|
|
8590
8609
|
|
|
8591
8610
|
#### Defined in
|
|
8592
8611
|
|
|
8593
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8612
|
+
[packages/core/src/utils/storage/helpers.ts:58](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L58)
|
|
8594
8613
|
|
|
8595
8614
|
___
|
|
8596
8615
|
|
|
@@ -8614,7 +8633,7 @@ Extract file metadata from a File object
|
|
|
8614
8633
|
|
|
8615
8634
|
#### Defined in
|
|
8616
8635
|
|
|
8617
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8636
|
+
[packages/core/src/utils/storage/helpers.ts:85](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L85)
|
|
8618
8637
|
|
|
8619
8638
|
___
|
|
8620
8639
|
|
|
@@ -8638,7 +8657,7 @@ Upload a file to Supabase storage with app segregation
|
|
|
8638
8657
|
|
|
8639
8658
|
#### Defined in
|
|
8640
8659
|
|
|
8641
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8660
|
+
[packages/core/src/utils/storage/helpers.ts:224](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L224)
|
|
8642
8661
|
|
|
8643
8662
|
___
|
|
8644
8663
|
|
|
@@ -8664,7 +8683,7 @@ Public URL for the file
|
|
|
8664
8683
|
|
|
8665
8684
|
#### Defined in
|
|
8666
8685
|
|
|
8667
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8686
|
+
[packages/core/src/utils/storage/helpers.ts:304](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L304)
|
|
8668
8687
|
|
|
8669
8688
|
___
|
|
8670
8689
|
|
|
@@ -8691,7 +8710,7 @@ Signed URL with expiration timestamp, or null if failed
|
|
|
8691
8710
|
|
|
8692
8711
|
#### Defined in
|
|
8693
8712
|
|
|
8694
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8713
|
+
[packages/core/src/utils/storage/helpers.ts:400](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L400)
|
|
8695
8714
|
|
|
8696
8715
|
___
|
|
8697
8716
|
|
|
@@ -8718,7 +8737,7 @@ Map of file ID to URL string (only includes successful URL generations)
|
|
|
8718
8737
|
|
|
8719
8738
|
#### Defined in
|
|
8720
8739
|
|
|
8721
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8740
|
+
[packages/core/src/utils/storage/helpers.ts:467](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L467)
|
|
8722
8741
|
|
|
8723
8742
|
___
|
|
8724
8743
|
|
|
@@ -8744,7 +8763,7 @@ Success status and optional error message
|
|
|
8744
8763
|
|
|
8745
8764
|
#### Defined in
|
|
8746
8765
|
|
|
8747
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8766
|
+
[packages/core/src/utils/storage/helpers.ts:574](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L574)
|
|
8748
8767
|
|
|
8749
8768
|
___
|
|
8750
8769
|
|
|
@@ -8769,7 +8788,7 @@ List of files with metadata
|
|
|
8769
8788
|
|
|
8770
8789
|
#### Defined in
|
|
8771
8790
|
|
|
8772
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8791
|
+
[packages/core/src/utils/storage/helpers.ts:608](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L608)
|
|
8773
8792
|
|
|
8774
8793
|
___
|
|
8775
8794
|
|
|
@@ -8795,7 +8814,7 @@ File blob with metadata, or null if failed
|
|
|
8795
8814
|
|
|
8796
8815
|
#### Defined in
|
|
8797
8816
|
|
|
8798
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8817
|
+
[packages/core/src/utils/storage/helpers.ts:675](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L675)
|
|
8799
8818
|
|
|
8800
8819
|
___
|
|
8801
8820
|
|
|
@@ -8813,7 +8832,8 @@ Move a file to archived location (soft delete)
|
|
|
8813
8832
|
| `path` | `string` | File path within the bucket |
|
|
8814
8833
|
| `options` | `Object` | Archive options including bucket selection via isPublic |
|
|
8815
8834
|
| `options.appName` | `string` | - |
|
|
8816
|
-
| `options.orgId
|
|
8835
|
+
| `options.orgId?` | `string` | - |
|
|
8836
|
+
| `options.userId?` | `string` | - |
|
|
8817
8837
|
| `options.isPublic?` | `boolean` | - |
|
|
8818
8838
|
|
|
8819
8839
|
#### Returns
|
|
@@ -8822,7 +8842,7 @@ Move a file to archived location (soft delete)
|
|
|
8822
8842
|
|
|
8823
8843
|
#### Defined in
|
|
8824
8844
|
|
|
8825
|
-
[packages/core/src/utils/storage/helpers.ts:
|
|
8845
|
+
[packages/core/src/utils/storage/helpers.ts:728](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/helpers.ts#L728)
|
|
8826
8846
|
|
|
8827
8847
|
___
|
|
8828
8848
|
|