@jmruthers/pace-core 0.5.135 → 0.5.137
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-A36PJG6N.js → DataTable-6M4L6BI2.js} +26 -13
- package/dist/{DataTable-C7GaRZye.d.ts → DataTable-CWAZZcXC.d.ts} +1 -1
- package/dist/{PublicLoadingSpinner-CUAnTvcg.d.ts → EventLogo-rFL_kRjk.d.ts} +123 -135
- package/dist/{UnifiedAuthProvider-BVKmQd9u.d.ts → UnifiedAuthProvider-DJxGTftH.d.ts} +1 -1
- package/dist/{UnifiedAuthProvider-CQDZRJIS.js → UnifiedAuthProvider-XIQQ7LVU.js} +5 -5
- package/dist/{api-TNIBJWLM.js → api-45XYYO2A.js} +4 -3
- package/dist/{audit-T36HM7IM.js → audit-64X3VJXB.js} +3 -2
- package/dist/{chunk-F64FFPOZ.js → chunk-22WKWKRX.js} +26 -20
- package/dist/chunk-22WKWKRX.js.map +1 -0
- package/dist/{chunk-VZ5OR6HD.js → chunk-4C7EXCAR.js} +62 -150
- package/dist/chunk-4C7EXCAR.js.map +1 -0
- package/dist/{chunk-PYUXFQJ3.js → chunk-56XJ3TU6.js} +2 -2
- package/dist/chunk-56XJ3TU6.js.map +1 -0
- package/dist/{chunk-CTJRBUX2.js → chunk-6LAAY47Q.js} +2 -2
- package/dist/{chunk-UJI6WSMD.js → chunk-7QCC6MCP.js} +90 -3
- package/dist/chunk-7QCC6MCP.js.map +1 -0
- package/dist/{chunk-66C4BSAY.js → chunk-ANBQRTPX.js} +9 -2
- package/dist/chunk-ANBQRTPX.js.map +1 -0
- package/dist/{chunk-CQZU6TFE.js → chunk-BCIBECNB.js} +100 -62
- package/dist/chunk-BCIBECNB.js.map +1 -0
- package/dist/{chunk-GKHF54DI.js → chunk-BESYRHQM.js} +10 -4
- package/dist/chunk-BESYRHQM.js.map +1 -0
- package/dist/chunk-BJPBT3CU.js +21 -0
- package/dist/chunk-BJPBT3CU.js.map +1 -0
- package/dist/{chunk-BYXRHAIF.js → chunk-BLCXZEYF.js} +23 -14
- package/dist/chunk-BLCXZEYF.js.map +1 -0
- package/dist/{chunk-WP5I5GLN.js → chunk-BVYWGZVV.js} +112 -97
- package/dist/chunk-BVYWGZVV.js.map +1 -0
- package/dist/{chunk-GEVIB2UB.js → chunk-ERISIBYU.js} +14 -5
- package/dist/chunk-ERISIBYU.js.map +1 -0
- package/dist/{chunk-O3NWNXDY.js → chunk-FMUCXFII.js} +2 -2
- package/dist/chunk-FMUCXFII.js.map +1 -0
- package/dist/{chunk-GVDR7WNV.js → chunk-HAWZXGR2.js} +334 -614
- package/dist/chunk-HAWZXGR2.js.map +1 -0
- package/dist/{chunk-ZV77RZMU.js → chunk-INQLMHPF.js} +2 -2
- package/dist/chunk-JISYG63F.js +70 -0
- package/dist/chunk-JISYG63F.js.map +1 -0
- package/dist/{chunk-HMNOSGVA.js → chunk-KYRHUBIU.js} +576 -767
- package/dist/chunk-KYRHUBIU.js.map +1 -0
- package/dist/{chunk-M6DDYFUD.js → chunk-LS353YLY.js} +19 -16
- package/dist/chunk-LS353YLY.js.map +1 -0
- package/dist/{chunk-TGIY2AR2.js → chunk-MA6EPSGZ.js} +4 -3
- package/dist/{chunk-TGIY2AR2.js.map → chunk-MA6EPSGZ.js.map} +1 -1
- package/dist/chunk-OWAG3GSU.js +58 -0
- package/dist/chunk-OWAG3GSU.js.map +1 -0
- package/dist/{chunk-JCQZ6LA7.js → chunk-Q5QRDWKI.js} +9 -3
- package/dist/chunk-Q5QRDWKI.js.map +1 -0
- package/dist/chunk-S5OFRT4M.js +94 -0
- package/dist/chunk-S5OFRT4M.js.map +1 -0
- package/dist/{chunk-3DBFLLLU.js → chunk-SBVILCCA.js} +14 -9
- package/dist/chunk-SBVILCCA.js.map +1 -0
- package/dist/{chunk-ZYZCRSBD.js → chunk-T6JN6LH6.js} +16 -11
- package/dist/chunk-T6JN6LH6.js.map +1 -0
- package/dist/chunk-XDNLUEXI.js +138 -0
- package/dist/chunk-XDNLUEXI.js.map +1 -0
- package/dist/{chunk-3CG5L6RN.js → chunk-YCWDTTUK.js} +90 -75
- package/dist/chunk-YCWDTTUK.js.map +1 -0
- package/dist/{chunk-5F3NDPJV.js → chunk-ZZ2SS7NI.js} +10 -5
- package/dist/chunk-ZZ2SS7NI.js.map +1 -0
- package/dist/components.d.ts +7 -287
- package/dist/components.js +27 -157
- package/dist/components.js.map +1 -1
- package/dist/{file-reference-C9isKNPn.d.ts → file-reference-C6Gkn77H.d.ts} +1 -1
- package/dist/{formatting-DFcCxUEk.d.ts → formatting-CvUXy2mF.d.ts} +1 -1
- package/dist/hooks.d.ts +3 -3
- package/dist/hooks.js +21 -16
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +101 -9
- package/dist/index.js +44 -31
- package/dist/index.js.map +1 -1
- package/dist/providers.d.ts +1 -1
- package/dist/providers.js +4 -4
- package/dist/rbac/index.js +12 -12
- package/dist/schema-DTDZQe2u.d.ts +28 -0
- package/dist/styles/index.js +2 -1
- package/dist/theming/runtime.d.ts +2 -19
- package/dist/theming/runtime.js +2 -1
- package/dist/{types-D5rqZQXk.d.ts → types-Dfz9dmVH.d.ts} +12 -1
- package/dist/types.d.ts +153 -4
- package/dist/types.js +51 -16
- package/dist/types.js.map +1 -1
- package/dist/{useInactivityTracker-MRUU55XI.js → useInactivityTracker-TO6ZOF35.js} +3 -2
- package/dist/{usePublicRouteParams-Dyt1tzI9.d.ts → usePublicRouteParams-B7PabvuH.d.ts} +1 -1
- package/dist/utils.d.ts +221 -173
- package/dist/utils.js +185 -225
- package/dist/utils.js.map +1 -1
- package/dist/validation.d.ts +24 -115
- package/dist/validation.js +19 -474
- package/dist/validation.js.map +1 -1
- package/docs/api/classes/ColumnFactory.md +1 -1
- package/docs/api/classes/ErrorBoundary.md +6 -6
- 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 +6 -6
- package/docs/api/classes/RBACCache.md +1 -1
- package/docs/api/classes/RBACEngine.md +7 -7
- 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 +4 -4
- package/docs/api/interfaces/BadgeProps.md +27 -0
- 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 +29 -4
- package/docs/api/interfaces/DataAccessRecord.md +9 -9
- package/docs/api/interfaces/DataRecord.md +1 -1
- package/docs/api/interfaces/DataTableAction.md +18 -18
- package/docs/api/interfaces/DataTableColumn.md +61 -1
- package/docs/api/interfaces/DataTableProps.md +1 -1
- package/docs/api/interfaces/DataTableToolbarButton.md +7 -7
- package/docs/api/interfaces/EmptyStateConfig.md +5 -5
- package/docs/api/interfaces/EnhancedNavigationMenuProps.md +14 -14
- package/docs/api/interfaces/EventAppRoleData.md +1 -1
- package/docs/api/interfaces/EventLogoProps.md +152 -0
- package/docs/api/interfaces/ExportColumn.md +1 -1
- package/docs/api/interfaces/ExportOptions.md +8 -8
- package/docs/api/interfaces/FileDisplayProps.md +15 -15
- 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 +10 -10
- package/docs/api/interfaces/NavigationContextType.md +9 -9
- package/docs/api/interfaces/NavigationGuardProps.md +10 -10
- 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 +27 -27
- package/docs/api/interfaces/PaceLoginPageProps.md +4 -4
- package/docs/api/interfaces/PageAccessRecord.md +8 -8
- package/docs/api/interfaces/PagePermissionContextType.md +8 -8
- package/docs/api/interfaces/PagePermissionGuardProps.md +11 -11
- package/docs/api/interfaces/PagePermissionProviderProps.md +7 -7
- package/docs/api/interfaces/PaletteData.md +4 -4
- package/docs/api/interfaces/PermissionEnforcerProps.md +11 -11
- package/docs/api/interfaces/ProtectedRouteProps.md +6 -6
- 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/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/SecureDataContextType.md +9 -9
- package/docs/api/interfaces/SecureDataProviderProps.md +8 -8
- package/docs/api/interfaces/SessionRestorationLoaderProps.md +21 -0
- package/docs/api/interfaces/StorageConfig.md +1 -1
- package/docs/api/interfaces/StorageFileInfo.md +1 -1
- package/docs/api/interfaces/StorageFileMetadata.md +1 -1
- package/docs/api/interfaces/StorageListOptions.md +1 -1
- package/docs/api/interfaces/StorageListResult.md +1 -1
- package/docs/api/interfaces/StorageUploadOptions.md +1 -1
- package/docs/api/interfaces/StorageUploadResult.md +1 -1
- package/docs/api/interfaces/StorageUrlOptions.md +1 -1
- package/docs/api/interfaces/StyleImport.md +1 -1
- package/docs/api/interfaces/SwitchProps.md +1 -1
- package/docs/api/interfaces/ToastActionElement.md +1 -1
- package/docs/api/interfaces/ToastProps.md +1 -1
- package/docs/api/interfaces/UnifiedAuthContextType.md +53 -53
- package/docs/api/interfaces/UnifiedAuthProviderProps.md +13 -13
- package/docs/api/interfaces/UseInactivityTrackerOptions.md +9 -9
- package/docs/api/interfaces/UseInactivityTrackerReturn.md +8 -8
- package/docs/api/interfaces/UsePublicEventOptions.md +3 -3
- package/docs/api/interfaces/UsePublicEventReturn.md +5 -5
- package/docs/api/interfaces/UsePublicFileDisplayOptions.md +4 -4
- package/docs/api/interfaces/UsePublicFileDisplayReturn.md +9 -9
- 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/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 +591 -220
- package/docs/api-reference/components.md +106 -26
- package/docs/architecture/README.md +0 -3
- package/docs/implementation-guides/data-tables.md +277 -13
- package/docs/implementation-guides/forms.md +1 -16
- package/docs/implementation-guides/permission-enforcement.md +8 -2
- package/docs/styles/README.md +0 -2
- package/examples/README.md +30 -14
- package/examples/STRUCTURE.md +125 -0
- package/examples/components 2/DataTable/HierarchicalActionsExample.tsx +421 -0
- package/examples/components 2/DataTable/HierarchicalExample.tsx +475 -0
- package/examples/components 2/DataTable/InitialPageSizeExample.tsx +177 -0
- package/examples/components 2/DataTable/PerformanceExample.tsx +506 -0
- package/examples/components 2/DataTable/index.ts +13 -0
- package/examples/components 2/Dialog/BasicHtmlTest.tsx +55 -0
- package/examples/components 2/Dialog/DebugHtmlExample.tsx +68 -0
- package/examples/components 2/Dialog/HtmlDialogExample.tsx +202 -0
- package/examples/components 2/Dialog/ScrollableDialogExample.tsx +290 -0
- package/examples/components 2/Dialog/SimpleHtmlTest.tsx +61 -0
- package/examples/components 2/Dialog/SmartDialogExample.tsx +322 -0
- package/examples/components 2/Dialog/index.ts +15 -0
- package/examples/components 2/index.ts +11 -0
- package/examples/features/index.ts +12 -0
- package/{src/examples → examples/features/public-pages}/CorrectPublicPageImplementation.tsx +14 -17
- package/{src/examples → examples/features/public-pages}/PublicEventPage.tsx +14 -27
- package/{src/examples → examples/features/public-pages}/PublicPageApp.tsx +15 -28
- package/{src/examples → examples/features/public-pages}/PublicPageUsageExample.tsx +8 -10
- package/examples/features/public-pages/index.ts +14 -0
- package/examples/features/rbac/CompleteRBACExample.tsx +324 -0
- package/examples/features/rbac/EventBasedApp.tsx +239 -0
- package/examples/features/rbac/PermissionExample.tsx +151 -0
- package/examples/features/rbac/index.ts +13 -0
- package/examples/index.ts +11 -3
- package/package.json +30 -19
- package/src/__tests__/TEST_STANDARD.md +92 -0
- package/src/components/Alert/Alert.tsx +1 -1
- package/src/components/Avatar/Avatar.tsx +1 -1
- package/src/components/Badge/Badge.test.tsx +314 -0
- package/src/components/Badge/Badge.tsx +304 -0
- package/src/components/Badge/index.ts +3 -0
- package/src/components/Button/Button.tsx +1 -1
- package/src/components/Card/Card.tsx +1 -1
- package/src/components/Checkbox/Checkbox.tsx +1 -1
- package/src/components/DataTable/DataTable.test.tsx +1 -1
- package/src/components/DataTable/DataTable.tsx +1 -30
- package/src/components/DataTable/__tests__/DataTable.grouping-aggregation.test.tsx +562 -0
- package/src/components/DataTable/__tests__/DataTableCore.test-setup.ts +217 -0
- package/src/components/DataTable/__tests__/styles.test.ts +3 -3
- package/src/components/DataTable/components/ActionButtons.tsx +0 -15
- package/src/components/DataTable/components/ColumnFilter.tsx +8 -4
- package/src/components/DataTable/components/DataTableBody.tsx +461 -0
- package/src/components/DataTable/components/DataTableCore.tsx +4 -185
- package/src/components/DataTable/components/DataTableErrorBoundary.tsx +1 -1
- package/src/components/DataTable/components/DataTableModals.tsx +1 -27
- package/src/components/DataTable/components/DraggableColumnHeader.tsx +144 -0
- package/src/components/DataTable/components/EditableRow.tsx +1 -1
- package/src/components/DataTable/components/FilterRow.tsx +9 -3
- package/src/components/DataTable/components/ImportModal.tsx +2 -14
- package/src/components/DataTable/components/PaginationControls.tsx +2 -1
- package/src/components/DataTable/components/UnifiedTableBody.tsx +109 -82
- package/src/components/DataTable/components/VirtualizedDataTable.tsx +513 -0
- package/src/components/DataTable/components/__tests__/AccessDeniedPage.test.tsx +14 -68
- package/src/components/DataTable/components/__tests__/ActionButtons.test.tsx +1 -1
- package/src/components/DataTable/components/__tests__/ColumnFilter.test.tsx +62 -0
- package/src/components/DataTable/components/__tests__/DataTableErrorBoundary.test.tsx +1 -1
- package/src/components/DataTable/components/__tests__/DataTableModals.test.tsx +1 -1
- package/src/components/DataTable/components/__tests__/FilterRow.test.tsx +43 -0
- package/src/components/DataTable/components/__tests__/ImportModal.test.tsx +1 -1
- package/src/components/DataTable/core/ActionManager.ts +235 -0
- package/src/components/DataTable/core/ColumnManager.ts +205 -0
- package/src/components/DataTable/core/DataManager.ts +188 -0
- package/src/components/DataTable/core/DataTableContext.tsx +181 -0
- package/src/components/DataTable/core/LocalDataAdapter.ts +273 -0
- package/src/components/DataTable/core/PluginRegistry.ts +229 -0
- package/src/components/DataTable/core/StateManager.ts +311 -0
- package/src/components/DataTable/core/interfaces.ts +338 -0
- package/src/components/DataTable/examples/GroupingAggregationExample.tsx +273 -0
- package/src/components/DataTable/examples/HierarchicalActionsExample.tsx +1 -1
- package/src/components/DataTable/examples/__tests__/HierarchicalActionsExample.test.tsx +1 -1
- package/src/components/DataTable/hooks/useColumnOrderPersistence.ts +1 -1
- package/src/components/DataTable/hooks/useColumnVisibilityPersistence.ts +1 -1
- package/src/components/DataTable/hooks/useDataTablePermissions.ts +2 -23
- package/src/components/DataTable/index.ts +4 -0
- package/src/components/DataTable/styles.ts +28 -7
- package/src/components/DataTable/types.ts +13 -0
- package/src/components/DataTable/utils/__tests__/columnUtils.test.ts +94 -0
- package/src/components/DataTable/utils/__tests__/exportUtils.test.ts +1 -1
- package/src/components/DataTable/utils/aggregationUtils.ts +161 -0
- package/src/components/DataTable/utils/columnUtils.ts +40 -0
- package/src/components/DataTable/utils/debugTools.ts +609 -0
- package/src/components/DataTable/utils/exportUtils.ts +1 -1
- package/src/components/DataTable/utils/flexibleImport.ts +1 -11
- package/src/components/DataTable/utils/index.ts +2 -0
- package/src/components/DataTable/utils/paginationUtils.ts +1 -1
- package/src/components/Dialog/Dialog.tsx +2 -2
- package/src/components/Dialog/utils/__tests__/safeHtml.unit.test.ts +8 -1
- package/src/components/ErrorBoundary/ErrorBoundary.test.tsx +35 -7
- package/src/components/ErrorBoundary/ErrorBoundary.tsx +5 -4
- package/src/components/EventSelector/EventSelector.tsx +3 -2
- package/src/components/FileDisplay/FileDisplay.tsx +2 -36
- package/src/components/FileUpload/FileUpload.test.tsx +2 -2
- package/src/components/FileUpload/FileUpload.tsx +2 -2
- package/src/components/Footer/Footer.test.tsx +1 -1
- package/src/components/Footer/Footer.tsx +1 -1
- package/src/components/Form/Form.test.tsx +5 -510
- package/src/components/Form/Form.tsx +1 -1
- package/src/components/Form/FormField.tsx +1 -1
- package/src/components/Form/index.ts +0 -12
- package/src/components/Header/Header.tsx +1 -1
- package/src/components/Input/Input.tsx +1 -1
- package/src/components/Label/Label.tsx +1 -1
- package/src/components/LoginForm/LoginForm.test.tsx +1 -1
- package/src/components/LoginForm/LoginForm.tsx +1 -1
- package/src/components/NavigationMenu/NavigationMenu.test.tsx +19 -3
- package/src/components/NavigationMenu/NavigationMenu.tsx +9 -8
- package/src/components/OrganisationSelector/OrganisationSelector.tsx +4 -3
- package/src/components/PaceAppLayout/PaceAppLayout.tsx +14 -12
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.integration.test.tsx +0 -16
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.performance.test.tsx +76 -10
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.security.test.tsx +0 -1
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.unit.test.tsx +0 -9
- package/src/components/PaceLoginPage/PaceLoginPage.test.tsx +35 -3
- package/src/components/PaceLoginPage/PaceLoginPage.tsx +14 -13
- package/src/components/PasswordReset/PasswordChangeForm.tsx +1 -1
- package/src/components/PasswordReset/index.ts +0 -2
- package/src/components/Progress/Progress.tsx +1 -1
- package/src/components/ProtectedRoute/ProtectedRoute.test.tsx +35 -8
- package/src/components/ProtectedRoute/ProtectedRoute.tsx +3 -2
- package/src/components/PublicLayout/PublicErrorBoundary.tsx +1 -1
- package/src/components/PublicLayout/PublicLoadingSpinner.tsx +1 -1
- package/src/components/PublicLayout/PublicPageContextChecker.tsx +44 -43
- package/src/components/PublicLayout/PublicPageFooter.tsx +1 -1
- package/src/components/PublicLayout/PublicPageHeader.tsx +1 -15
- package/src/components/PublicLayout/PublicPageProvider.tsx +3 -2
- package/src/components/PublicLayout/__tests__/PublicPageContextChecker.test.tsx +2 -0
- package/src/components/PublicLayout/__tests__/PublicPageFooter.test.tsx +1 -1
- package/src/components/PublicLayout/index.ts +4 -2
- package/src/components/Select/Select.test.tsx +1 -1
- package/src/components/Select/Select.tsx +21 -9
- package/src/components/{SessionRestorationLoader.tsx → SessionRestorationLoader/SessionRestorationLoader.tsx} +3 -2
- package/src/components/SessionRestorationLoader/index.ts +3 -0
- package/src/components/Switch/Switch.tsx +1 -1
- package/src/components/Table/Table.tsx +1 -1
- package/src/components/Table/__tests__/Table.test.tsx +1 -1
- package/src/components/Toast/Toast.tsx +1 -1
- package/src/components/Tooltip/Tooltip.tsx +1 -1
- package/src/components/index.ts +7 -10
- package/src/hooks/__tests__/hooks.integration.test.tsx +37 -22
- package/src/hooks/__tests__/useComponentPerformance.unit.test.tsx +33 -17
- package/src/hooks/__tests__/useDataTablePerformance.unit.test.ts +28 -3
- package/src/hooks/__tests__/useFileDisplay.unit.test.ts +36 -9
- package/src/hooks/__tests__/useFileUrl.unit.test.ts +83 -85
- package/src/hooks/__tests__/useInactivityTracker.unit.test.ts +26 -2
- package/src/hooks/__tests__/usePerformanceMonitor.unit.test.ts +19 -6
- package/src/hooks/__tests__/usePermissionCache.simple.test.ts +17 -4
- package/src/hooks/__tests__/usePermissionCache.unit.test.ts +17 -4
- package/src/hooks/__tests__/usePublicEvent.simple.test.ts +26 -6
- package/src/hooks/__tests__/usePublicFileDisplay.test.ts +16 -6
- package/src/hooks/__tests__/useSecureDataAccess.unit.test.tsx +3 -3
- package/src/hooks/__tests__/useSessionRestoration.unit.test.tsx +17 -3
- package/src/hooks/public/usePublicEvent.ts +7 -6
- package/src/hooks/public/usePublicEventLogo.ts +7 -4
- package/src/hooks/public/usePublicFileDisplay.ts +6 -150
- package/src/hooks/useComponentPerformance.ts +4 -1
- package/src/hooks/useDataTablePerformance.ts +4 -3
- package/src/hooks/useEventTheme.test.ts +18 -5
- package/src/hooks/useEventTheme.ts +4 -1
- package/src/hooks/useEvents.ts +2 -0
- package/src/hooks/useFileDisplay.ts +9 -8
- package/src/hooks/useFileReference.ts +4 -1
- package/src/hooks/useFileUrl.ts +4 -1
- package/src/hooks/useInactivityTracker.ts +5 -4
- package/src/hooks/useOrganisationSecurity.test.ts +33 -12
- package/src/hooks/useOrganisationSecurity.ts +8 -7
- package/src/hooks/usePerformanceMonitor.ts +6 -3
- package/src/hooks/usePermissionCache.ts +13 -6
- package/src/hooks/useSecureDataAccess.test.ts +2 -2
- package/src/hooks/useSecureDataAccess.ts +9 -8
- package/src/hooks/useSessionRestoration.ts +4 -1
- package/src/hooks/useStorage.ts +4 -1
- package/src/index.ts +20 -7
- package/src/providers/services/AuthServiceProvider.tsx +3 -2
- package/src/providers/services/EventServiceProvider.tsx +2 -1
- package/src/providers/services/InactivityServiceProvider.tsx +2 -1
- package/src/providers/services/OrganisationServiceProvider.tsx +2 -1
- package/src/providers/services/UnifiedAuthProvider.tsx +4 -3
- package/src/providers/services/__tests__/AuthServiceProvider.integration.test.tsx +22 -2
- package/src/providers/services/__tests__/UnifiedAuthProvider.integration.test.tsx +24 -2
- package/src/rbac/__tests__/cache-invalidation.test.ts +20 -6
- package/src/rbac/api.ts +5 -2
- package/src/rbac/audit-enhanced.ts +6 -6
- package/src/rbac/audit.test.ts +60 -38
- package/src/rbac/audit.ts +8 -8
- package/src/rbac/cache-invalidation.ts +7 -4
- package/src/rbac/components/EnhancedNavigationMenu.tsx +11 -5
- package/src/rbac/components/NavigationGuard.tsx +7 -3
- package/src/rbac/components/NavigationProvider.tsx +6 -3
- package/src/rbac/components/PagePermissionGuard.tsx +28 -16
- package/src/rbac/components/PagePermissionProvider.tsx +4 -1
- package/src/rbac/components/PermissionEnforcer.tsx +9 -3
- package/src/rbac/components/RoleBasedRouter.tsx +3 -1
- package/src/rbac/components/SecureDataProvider.tsx +7 -3
- package/src/rbac/components/__tests__/EnhancedNavigationMenu.test.tsx +87 -61
- package/src/rbac/components/__tests__/NavigationGuard.test.tsx +83 -33
- package/src/rbac/components/__tests__/NavigationProvider.test.tsx +36 -13
- package/src/rbac/components/__tests__/PagePermissionGuard.test.tsx +2 -2
- package/src/rbac/components/__tests__/PagePermissionProvider.test.tsx +22 -8
- package/src/rbac/components/__tests__/PermissionEnforcer.test.tsx +19 -6
- package/src/rbac/components/__tests__/SecureDataProvider.fixed.test.tsx +43 -17
- package/src/rbac/components/__tests__/SecureDataProvider.test.tsx +42 -17
- package/src/rbac/engine.ts +15 -7
- package/src/rbac/hooks/usePermissions.ts +7 -3
- package/src/rbac/hooks/useResolvedScope.test.ts +2 -2
- package/src/rbac/hooks/useResolvedScope.ts +10 -7
- package/src/rbac/permissions.ts +5 -2
- package/src/rbac/security.test.ts +27 -16
- package/src/rbac/security.ts +5 -4
- package/src/services/AuthService.ts +22 -21
- package/src/services/EventService.ts +12 -12
- package/src/services/InactivityService.ts +5 -4
- package/src/services/OrganisationService.ts +26 -25
- package/src/services/__tests__/AuthService.test.ts +51 -19
- package/src/services/__tests__/EventService.test.ts +37 -5
- package/src/services/__tests__/InactivityService.test.ts +38 -4
- package/src/services/__tests__/OrganisationService.test.ts +3 -8
- package/src/services/base/BaseService.ts +3 -1
- package/src/styles/core.css +3 -0
- package/src/theming/__tests__/runtime.test.ts +21 -12
- package/src/theming/parseEventColours.ts +5 -19
- package/src/theming/runtime.ts +8 -4
- package/src/types/validation.ts +2 -29
- package/src/utils/__tests__/appConfig.unit.test.ts +1 -1
- package/src/utils/__tests__/audit.unit.test.ts +1 -1
- package/src/utils/__tests__/auth-utils.unit.test.ts +1 -1
- package/src/utils/__tests__/bundleAnalysis.unit.test.ts +19 -19
- package/src/utils/__tests__/cn.unit.test.ts +1 -1
- package/src/utils/__tests__/debugLogger.test.ts +1 -1
- package/src/utils/__tests__/deviceFingerprint.unit.test.ts +1 -1
- package/src/utils/__tests__/dynamicUtils.unit.test.ts +1 -1
- package/src/utils/__tests__/formatting.unit.test.ts +1 -1
- package/src/utils/__tests__/lazyLoad.unit.test.tsx +1 -1
- package/src/utils/__tests__/logger.unit.test.ts +1 -1
- package/src/utils/__tests__/organisationContext.unit.test.ts +1 -1
- package/src/utils/__tests__/performanceBenchmark.test.ts +1 -1
- package/src/utils/__tests__/performanceBudgets.unit.test.ts +1 -1
- package/src/utils/__tests__/permissionTypes.unit.test.ts +1 -1
- package/src/utils/__tests__/permissionUtils.unit.test.ts +1 -1
- package/src/utils/__tests__/sanitization.unit.test.ts +1 -1
- package/src/utils/__tests__/schemaUtils.unit.test.ts +1 -1
- package/src/utils/__tests__/secureDataAccess.unit.test.ts +1 -1
- package/src/utils/__tests__/secureErrors.unit.test.ts +33 -15
- package/src/utils/__tests__/secureStorage.unit.test.ts +1 -1
- package/src/utils/__tests__/security.unit.test.ts +40 -18
- package/src/utils/__tests__/securityMonitor.unit.test.ts +1 -1
- package/src/utils/__tests__/sessionTracking.unit.test.ts +40 -29
- package/src/utils/__tests__/validationUtils.unit.test.ts +19 -6
- package/src/utils/app/appConfig.ts +47 -0
- package/src/utils/app/appIdResolver.test.ts +497 -0
- package/src/utils/app/appIdResolver.ts +133 -0
- package/src/utils/app/appNameResolver.simple.test.ts +212 -0
- package/src/utils/app/appNameResolver.test.ts +121 -0
- package/src/utils/app/appNameResolver.ts +195 -0
- package/src/utils/audit/audit.ts +127 -0
- package/src/utils/context/organisationContext.test.ts +322 -0
- package/src/utils/context/organisationContext.ts +156 -0
- package/src/utils/context/sessionTracking.ts +125 -0
- package/src/utils/core/cn.ts +7 -0
- package/src/utils/core/debugLogger.ts +67 -0
- package/src/utils/core/logger.ts +181 -0
- package/src/utils/device/deviceFingerprint.ts +215 -0
- package/src/utils/dynamic/dynamicUtils.ts +105 -0
- package/src/utils/dynamic/lazyLoad.tsx +44 -0
- package/src/utils/file-reference/__tests__/file-reference.test.ts +788 -0
- package/src/utils/file-reference/index.ts +501 -0
- package/src/utils/formatting/formatDate.test.ts +237 -0
- package/src/utils/formatting/formatting.ts +133 -0
- package/src/utils/index.ts +39 -54
- package/src/utils/performance/bundleAnalysis.ts +129 -0
- package/src/utils/performance/performanceBenchmark.ts +64 -0
- package/src/utils/performance/performanceBudgets.ts +110 -0
- package/src/utils/permissions/permissionTypes.ts +37 -0
- package/src/utils/permissions/permissionUtils.test.ts +393 -0
- package/src/utils/permissions/permissionUtils.ts +34 -0
- package/src/utils/security/auth-utils.ts +96 -0
- package/src/utils/security/secureDataAccess.test.ts +711 -0
- package/src/utils/security/secureDataAccess.ts +377 -0
- package/src/utils/security/secureErrors.ts +82 -0
- package/src/utils/security/secureStorage.ts +244 -0
- package/src/utils/security/security.ts +159 -0
- package/src/utils/security/securityMonitor.ts +45 -0
- package/src/utils/storage/__tests__/helpers.unit.test.ts +1 -4
- package/src/utils/storage/helpers.ts +15 -8
- package/src/utils/validation/__tests__/htmlSanitization.unit.test.ts +598 -0
- package/src/{validation → utils/validation}/csrf.ts +1 -1
- package/src/utils/validation/htmlSanitization.ts +184 -0
- package/src/utils/validation/index.ts +79 -0
- package/src/utils/validation/sanitization.ts +333 -0
- package/src/{validation/schemaUtils.ts → utils/validation/schema.ts} +11 -6
- package/src/{validation → utils/validation}/sqlInjectionProtection.ts +2 -0
- package/src/utils/validation/validation.ts +111 -0
- package/src/utils/validation/validationUtils.ts +123 -0
- package/src/validation/index.ts +3 -34
- package/dist/chunk-24MKLB7U.js +0 -81
- package/dist/chunk-24MKLB7U.js.map +0 -1
- package/dist/chunk-3CG5L6RN.js.map +0 -1
- package/dist/chunk-3DBFLLLU.js.map +0 -1
- package/dist/chunk-5F3NDPJV.js.map +0 -1
- package/dist/chunk-66C4BSAY.js.map +0 -1
- package/dist/chunk-BDZUMRBD.js +0 -87
- package/dist/chunk-BDZUMRBD.js.map +0 -1
- package/dist/chunk-BYXRHAIF.js.map +0 -1
- package/dist/chunk-CDQ3PX7L.js +0 -18
- package/dist/chunk-CDQ3PX7L.js.map +0 -1
- package/dist/chunk-CQZU6TFE.js.map +0 -1
- package/dist/chunk-F64FFPOZ.js.map +0 -1
- package/dist/chunk-GEVIB2UB.js.map +0 -1
- package/dist/chunk-GKHF54DI.js.map +0 -1
- package/dist/chunk-GVDR7WNV.js.map +0 -1
- package/dist/chunk-HMNOSGVA.js.map +0 -1
- package/dist/chunk-JCQZ6LA7.js.map +0 -1
- package/dist/chunk-M6DDYFUD.js.map +0 -1
- package/dist/chunk-O3NWNXDY.js.map +0 -1
- package/dist/chunk-PYUXFQJ3.js.map +0 -1
- package/dist/chunk-UJI6WSMD.js.map +0 -1
- package/dist/chunk-VZ5OR6HD.js.map +0 -1
- package/dist/chunk-WP5I5GLN.js.map +0 -1
- package/dist/chunk-ZYZCRSBD.js.map +0 -1
- package/dist/validation-DnhrNMju.d.ts +0 -159
- package/src/components/PublicLayout/__tests__/PublicPageDebugger.test.tsx +0 -185
- package/src/validation/__tests__/common.unit.test.ts +0 -101
- package/src/validation/__tests__/csrf.unit.test.ts +0 -365
- package/src/validation/__tests__/passwordSchema.unit.test.ts +0 -203
- package/src/validation/__tests__/sanitization.unit.test.ts +0 -250
- package/src/validation/__tests__/schemaUtils.unit.test.ts +0 -451
- package/src/validation/__tests__/sqlInjectionProtection.unit.test.ts +0 -462
- package/src/validation/__tests__/user.unit.test.ts +0 -440
- package/src/validation/sanitization.ts +0 -96
- /package/dist/{DataTable-A36PJG6N.js.map → DataTable-6M4L6BI2.js.map} +0 -0
- /package/dist/{UnifiedAuthProvider-CQDZRJIS.js.map → UnifiedAuthProvider-XIQQ7LVU.js.map} +0 -0
- /package/dist/{api-TNIBJWLM.js.map → api-45XYYO2A.js.map} +0 -0
- /package/dist/{audit-T36HM7IM.js.map → audit-64X3VJXB.js.map} +0 -0
- /package/dist/{chunk-CTJRBUX2.js.map → chunk-6LAAY47Q.js.map} +0 -0
- /package/dist/{chunk-ZV77RZMU.js.map → chunk-INQLMHPF.js.map} +0 -0
- /package/dist/{useInactivityTracker-MRUU55XI.js.map → useInactivityTracker-TO6ZOF35.js.map} +0 -0
- /package/src/{validation → utils/validation}/common.ts +0 -0
- /package/src/{validation → utils/validation}/passwordSchema.ts +0 -0
- /package/src/{validation → utils/validation}/user.ts +0 -0
|
@@ -25,11 +25,13 @@ import {
|
|
|
25
25
|
announceSearchResults,
|
|
26
26
|
announceSelectionChange,
|
|
27
27
|
announceSortChange,
|
|
28
|
+
average,
|
|
28
29
|
calculateAllDepths,
|
|
29
30
|
calculateAllIndentation,
|
|
30
31
|
calculateIndentation,
|
|
31
32
|
calculateOptimalPageSize,
|
|
32
33
|
cleanupLiveRegion,
|
|
34
|
+
count,
|
|
33
35
|
createHierarchicalStructure,
|
|
34
36
|
defaultDataTableFeatures,
|
|
35
37
|
exportToCSV,
|
|
@@ -37,6 +39,7 @@ import {
|
|
|
37
39
|
generateCSVContent,
|
|
38
40
|
getAriaSortValue,
|
|
39
41
|
getCellRenderer,
|
|
42
|
+
getColumnHeaderText,
|
|
40
43
|
getHierarchicalSortConfig,
|
|
41
44
|
getPageSizeOptions,
|
|
42
45
|
getPaginationBinding,
|
|
@@ -48,16 +51,19 @@ import {
|
|
|
48
51
|
hasValidRowId,
|
|
49
52
|
initializeLiveRegion,
|
|
50
53
|
isHierarchicalSortableColumn,
|
|
54
|
+
max,
|
|
55
|
+
min,
|
|
51
56
|
normalizeDataTableFeatures,
|
|
52
57
|
shouldShowColumnForRow,
|
|
53
58
|
sortHierarchicalDataByStructure,
|
|
54
59
|
sortHierarchicalDataWithSorting,
|
|
60
|
+
sum,
|
|
55
61
|
validateHierarchicalData,
|
|
56
62
|
validatePaginationConfig
|
|
57
|
-
} from "./chunk-
|
|
58
|
-
import "./chunk-
|
|
59
|
-
import "./chunk-
|
|
60
|
-
import "./chunk-
|
|
63
|
+
} from "./chunk-HAWZXGR2.js";
|
|
64
|
+
import "./chunk-BLCXZEYF.js";
|
|
65
|
+
import "./chunk-BVYWGZVV.js";
|
|
66
|
+
import "./chunk-SBVILCCA.js";
|
|
61
67
|
import {
|
|
62
68
|
CircuitBreaker,
|
|
63
69
|
DEFAULT_FALLBACK_CONFIG,
|
|
@@ -75,14 +81,15 @@ import {
|
|
|
75
81
|
safeExecute,
|
|
76
82
|
throttle,
|
|
77
83
|
useDataTablePerformance
|
|
78
|
-
} from "./chunk-
|
|
79
|
-
import "./chunk-
|
|
80
|
-
import "./chunk-
|
|
81
|
-
import "./chunk-
|
|
82
|
-
import "./chunk-
|
|
83
|
-
import "./chunk-
|
|
84
|
-
import "./chunk-
|
|
85
|
-
import "./chunk-
|
|
84
|
+
} from "./chunk-BESYRHQM.js";
|
|
85
|
+
import "./chunk-MA6EPSGZ.js";
|
|
86
|
+
import "./chunk-6LAAY47Q.js";
|
|
87
|
+
import "./chunk-YCWDTTUK.js";
|
|
88
|
+
import "./chunk-OWAG3GSU.js";
|
|
89
|
+
import "./chunk-Q5QRDWKI.js";
|
|
90
|
+
import "./chunk-56XJ3TU6.js";
|
|
91
|
+
import "./chunk-7QCC6MCP.js";
|
|
92
|
+
import "./chunk-XDNLUEXI.js";
|
|
86
93
|
import "./chunk-PLDDJCW6.js";
|
|
87
94
|
export {
|
|
88
95
|
ActionButtons,
|
|
@@ -120,12 +127,14 @@ export {
|
|
|
120
127
|
announceSearchResults,
|
|
121
128
|
announceSelectionChange,
|
|
122
129
|
announceSortChange,
|
|
130
|
+
average,
|
|
123
131
|
calculateAllDepths,
|
|
124
132
|
calculateAllIndentation,
|
|
125
133
|
calculateIndentation,
|
|
126
134
|
calculateOptimalPageSize,
|
|
127
135
|
chunkData,
|
|
128
136
|
cleanupLiveRegion,
|
|
137
|
+
count,
|
|
129
138
|
createHierarchicalStructure,
|
|
130
139
|
debounce,
|
|
131
140
|
defaultDataTableFeatures,
|
|
@@ -135,6 +144,7 @@ export {
|
|
|
135
144
|
generateCSVContent,
|
|
136
145
|
getAriaSortValue,
|
|
137
146
|
getCellRenderer,
|
|
147
|
+
getColumnHeaderText,
|
|
138
148
|
getHierarchicalSortConfig,
|
|
139
149
|
getOptimalPageSizeOptions,
|
|
140
150
|
getPageSizeOptions,
|
|
@@ -147,14 +157,17 @@ export {
|
|
|
147
157
|
hasValidRowId,
|
|
148
158
|
initializeLiveRegion,
|
|
149
159
|
isHierarchicalSortableColumn,
|
|
160
|
+
max,
|
|
161
|
+
min,
|
|
150
162
|
normalizeDataTableFeatures,
|
|
151
163
|
safeExecute,
|
|
152
164
|
shouldShowColumnForRow,
|
|
153
165
|
sortHierarchicalDataByStructure,
|
|
154
166
|
sortHierarchicalDataWithSorting,
|
|
167
|
+
sum,
|
|
155
168
|
throttle,
|
|
156
169
|
useDataTablePerformance,
|
|
157
170
|
validateHierarchicalData,
|
|
158
171
|
validatePaginationConfig
|
|
159
172
|
};
|
|
160
|
-
//# sourceMappingURL=DataTable-
|
|
173
|
+
//# sourceMappingURL=DataTable-6M4L6BI2.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
2
|
+
import { c as DataRecord, D as DataTableColumn, d as DataTableRBACConfig, e as DataTableFeatureConfig, H as HierarchicalConfig, P as PerformanceConfig, S as ServerSideConfig, f as PaginationMode, C as ChunkingConfig, g as SearchIndexConfig, h as ExportOptions, G as GetRowId, E as EmptyStateConfig, A as AggregateConfig, a as DataTableAction } from './types-Dfz9dmVH.js';
|
|
3
3
|
import React__default from 'react';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -14,7 +14,7 @@ import { z } from 'zod';
|
|
|
14
14
|
import { User, SupabaseClient, createClient } from '@supabase/supabase-js';
|
|
15
15
|
import { E as Event } from './unified-DQ4VcT7H.js';
|
|
16
16
|
import { O as Organisation } from './organisation-D6qRDtbF.js';
|
|
17
|
-
import {
|
|
17
|
+
import { F as FileCategory, e as FileUploadResult, U as UploadProgress, c as FileUploadOptions, a as FileReference } from './file-reference-C6Gkn77H.js';
|
|
18
18
|
|
|
19
19
|
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
20
20
|
/** Visual variant of the button */
|
|
@@ -421,6 +421,77 @@ declare const Avatar: React.ForwardRefExoticComponent<Omit<AvatarPrimitive.Avata
|
|
|
421
421
|
declare const AvatarImage: React.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarImageProps & React.RefAttributes<HTMLImageElement>, "ref"> & React.RefAttributes<HTMLImageElement>>;
|
|
422
422
|
declare const AvatarFallback: React.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarFallbackProps & React.RefAttributes<HTMLSpanElement>, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
423
423
|
|
|
424
|
+
/**
|
|
425
|
+
* @file Badge Component
|
|
426
|
+
* @package @jmruthers/pace-core
|
|
427
|
+
* @module Components
|
|
428
|
+
* @since 0.1.0
|
|
429
|
+
*
|
|
430
|
+
* A small, non-interactive visual label component for displaying concise information
|
|
431
|
+
* such as status indicators, tags, or labels. Acts as a visual alternative to buttons
|
|
432
|
+
* for non-interactive content.
|
|
433
|
+
*
|
|
434
|
+
* Features:
|
|
435
|
+
* - 27 combined variants (3 styles × 3 colors × 3 shades)
|
|
436
|
+
* - Non-interactive by default (renders as <span>)
|
|
437
|
+
* - Supports all pace-core color palettes (main, sec, acc)
|
|
438
|
+
* - Customizable styling via className prop
|
|
439
|
+
* - Accessible and screen reader friendly
|
|
440
|
+
*
|
|
441
|
+
* @example
|
|
442
|
+
* ```tsx
|
|
443
|
+
* // Basic badge with default variant
|
|
444
|
+
* <Badge>New</Badge>
|
|
445
|
+
*
|
|
446
|
+
* // Badge with specific variant
|
|
447
|
+
* <Badge variant="solid-main-normal">Active</Badge>
|
|
448
|
+
*
|
|
449
|
+
* // Outline variant
|
|
450
|
+
* <Badge variant="outline-sec-muted">Pending</Badge>
|
|
451
|
+
*
|
|
452
|
+
* // Soft variant with accent color
|
|
453
|
+
* <Badge variant="soft-acc-strong">Featured</Badge>
|
|
454
|
+
*
|
|
455
|
+
* // Custom styling
|
|
456
|
+
* <Badge variant="solid-main-normal" className="px-4">
|
|
457
|
+
* Custom Badge
|
|
458
|
+
* </Badge>
|
|
459
|
+
* ```
|
|
460
|
+
*
|
|
461
|
+
* @accessibility
|
|
462
|
+
* - Renders as semantic <span> element
|
|
463
|
+
* - No focus styles (non-interactive by default)
|
|
464
|
+
* - Screen reader friendly through semantic HTML
|
|
465
|
+
* - Can be wrapped in interactive elements if needed
|
|
466
|
+
*/
|
|
467
|
+
|
|
468
|
+
type BadgeVariant = 'solid-main-muted' | 'solid-main-normal' | 'solid-main-strong' | 'solid-sec-muted' | 'solid-sec-normal' | 'solid-sec-strong' | 'solid-acc-muted' | 'solid-acc-normal' | 'solid-acc-strong' | 'outline-main-muted' | 'outline-main-normal' | 'outline-main-strong' | 'outline-sec-muted' | 'outline-sec-normal' | 'outline-sec-strong' | 'outline-acc-muted' | 'outline-acc-normal' | 'outline-acc-strong' | 'soft-main-muted' | 'soft-main-normal' | 'soft-main-strong' | 'soft-sec-muted' | 'soft-sec-normal' | 'soft-sec-strong' | 'soft-acc-muted' | 'soft-acc-normal' | 'soft-acc-strong';
|
|
469
|
+
interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {
|
|
470
|
+
/** Visual variant of the badge (style-color-shade) */
|
|
471
|
+
variant?: BadgeVariant;
|
|
472
|
+
}
|
|
473
|
+
/**
|
|
474
|
+
* Badge Component
|
|
475
|
+
* A small, non-interactive visual label for displaying concise information.
|
|
476
|
+
*
|
|
477
|
+
* @component
|
|
478
|
+
* @example
|
|
479
|
+
* ```tsx
|
|
480
|
+
* // Default variant
|
|
481
|
+
* <Badge>New</Badge>
|
|
482
|
+
*
|
|
483
|
+
* // Specific variant
|
|
484
|
+
* <Badge variant="solid-main-normal">Active</Badge>
|
|
485
|
+
*
|
|
486
|
+
* // Outline variant
|
|
487
|
+
* <Badge variant="outline-sec-muted">Pending</Badge>
|
|
488
|
+
*
|
|
489
|
+
* // Soft variant
|
|
490
|
+
* <Badge variant="soft-acc-strong">Featured</Badge>
|
|
491
|
+
* ```
|
|
492
|
+
*/
|
|
493
|
+
declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
|
|
494
|
+
|
|
424
495
|
/**
|
|
425
496
|
* @file Checkbox Component
|
|
426
497
|
* @package @jmruthers/pace-core
|
|
@@ -895,6 +966,7 @@ interface UseSelectStateProps {
|
|
|
895
966
|
interface SelectProps extends Omit<React.HTMLAttributes<HTMLFormElement>, 'onChange' | 'onKeyDown' | 'onFocus' | 'onBlur'> {
|
|
896
967
|
children: React.ReactNode;
|
|
897
968
|
className?: string;
|
|
969
|
+
direction?: 'up' | 'down';
|
|
898
970
|
}
|
|
899
971
|
interface SelectTriggerProps extends Omit<ButtonProps, 'onClick' | 'onKeyDown'> {
|
|
900
972
|
children: React.ReactNode;
|
|
@@ -2783,7 +2855,7 @@ declare const LoadingSpinner: React__default.FC<LoadingSpinnerProps>;
|
|
|
2783
2855
|
/**
|
|
2784
2856
|
* @file SessionRestorationLoader Component
|
|
2785
2857
|
* @package @jmruthers/pace-core
|
|
2786
|
-
* @module Components
|
|
2858
|
+
* @module Components/SessionRestorationLoader
|
|
2787
2859
|
* @since 0.1.0
|
|
2788
2860
|
*
|
|
2789
2861
|
* Displays a consistent loading state while the authentication service
|
|
@@ -2862,92 +2934,6 @@ interface OrganisationSelectorProps {
|
|
|
2862
2934
|
*/
|
|
2863
2935
|
declare function OrganisationSelector({ placeholder, className, onOrganisationChange, showNoOrganisationsMessage, showRetryButton, showRole, compact, disabled }: OrganisationSelectorProps): react_jsx_runtime.JSX.Element | null;
|
|
2864
2936
|
|
|
2865
|
-
/**
|
|
2866
|
-
* @file Password Reset Form Component
|
|
2867
|
-
* @package @jmruthers/pace-core
|
|
2868
|
-
* @module Components/PasswordReset
|
|
2869
|
-
* @since 0.1.0
|
|
2870
|
-
*
|
|
2871
|
-
* A comprehensive password reset form component that handles email-based password recovery
|
|
2872
|
-
* with proper validation, loading states, and success feedback.
|
|
2873
|
-
*
|
|
2874
|
-
* Features:
|
|
2875
|
-
* - Email validation and submission
|
|
2876
|
-
* - Loading states with disabled form
|
|
2877
|
-
* - Success state with confirmation message
|
|
2878
|
-
* - Error handling and display
|
|
2879
|
-
* - Resend functionality
|
|
2880
|
-
* - Accessibility compliant
|
|
2881
|
-
* - Responsive design
|
|
2882
|
-
* - Integration with UnifiedAuthProvider
|
|
2883
|
-
* - Form validation
|
|
2884
|
-
* - Success and error callbacks
|
|
2885
|
-
*
|
|
2886
|
-
* @example
|
|
2887
|
-
* ```tsx
|
|
2888
|
-
* // Basic password reset form
|
|
2889
|
-
* <PasswordResetForm
|
|
2890
|
-
* onSuccess={() => {
|
|
2891
|
-
* toast.success('Password reset email sent!');
|
|
2892
|
-
* }}
|
|
2893
|
-
* onError={(error) => {
|
|
2894
|
-
* toast.error(`Failed to send reset email: ${error.message}`);
|
|
2895
|
-
* }}
|
|
2896
|
-
* />
|
|
2897
|
-
*
|
|
2898
|
-
* // Password reset form with custom styling
|
|
2899
|
-
* <PasswordResetForm
|
|
2900
|
-
* className="max-w-md mx-auto p-6 bg-main-50 rounded-lg shadow-md"
|
|
2901
|
-
* onSuccess={() => {
|
|
2902
|
-
* console.log('Reset email sent successfully');
|
|
2903
|
-
* navigate('/check-email');
|
|
2904
|
-
* }}
|
|
2905
|
-
* onError={(error) => {
|
|
2906
|
-
* console.error('Password reset failed:', error);
|
|
2907
|
-
* }}
|
|
2908
|
-
* />
|
|
2909
|
-
*
|
|
2910
|
-
* // Password reset form in a modal
|
|
2911
|
-
* <Modal isOpen={showResetForm} onClose={() => setShowResetForm(false)}>
|
|
2912
|
-
* <ModalContent>
|
|
2913
|
-
* <PasswordResetForm
|
|
2914
|
-
* onSuccess={() => {
|
|
2915
|
-
* setShowResetForm(false);
|
|
2916
|
-
* toast.success('Check your email for reset instructions');
|
|
2917
|
-
* }}
|
|
2918
|
-
* onError={(error) => {
|
|
2919
|
-
* toast.error(error.message);
|
|
2920
|
-
* }}
|
|
2921
|
-
* />
|
|
2922
|
-
* </ModalContent>
|
|
2923
|
-
* </Modal>
|
|
2924
|
-
* ```
|
|
2925
|
-
*
|
|
2926
|
-
* @accessibility
|
|
2927
|
-
* - WCAG 2.1 AA compliant
|
|
2928
|
-
* - Proper form labels and associations
|
|
2929
|
-
* - Screen reader friendly error messages
|
|
2930
|
-
* - Keyboard navigation support
|
|
2931
|
-
* - Focus management
|
|
2932
|
-
* - High contrast support
|
|
2933
|
-
* - Clear error identification
|
|
2934
|
-
* - Role="alert" for error announcements
|
|
2935
|
-
*
|
|
2936
|
-
* @dependencies
|
|
2937
|
-
* - React 18+ - Hooks and state
|
|
2938
|
-
* - UnifiedAuthProvider - Authentication context
|
|
2939
|
-
* - Button component
|
|
2940
|
-
* - Input component
|
|
2941
|
-
* - Label component
|
|
2942
|
-
* - Tailwind CSS - Styling
|
|
2943
|
-
*/
|
|
2944
|
-
interface PasswordResetFormProps {
|
|
2945
|
-
onSuccess?: () => void;
|
|
2946
|
-
onError?: (error: Error) => void;
|
|
2947
|
-
className?: string;
|
|
2948
|
-
}
|
|
2949
|
-
declare function PasswordResetForm({ onSuccess, onError, className }: PasswordResetFormProps): react_jsx_runtime.JSX.Element;
|
|
2950
|
-
|
|
2951
2937
|
interface FileUploadProps {
|
|
2952
2938
|
supabase: SupabaseClient;
|
|
2953
2939
|
table_name: string;
|
|
@@ -3403,52 +3389,6 @@ interface PublicPageFooterProps {
|
|
|
3403
3389
|
*/
|
|
3404
3390
|
declare function PublicPageFooter({ event, companyName, year, links, className, logo, copyright, children }: PublicPageFooterProps): react_jsx_runtime.JSX.Element;
|
|
3405
3391
|
|
|
3406
|
-
/**
|
|
3407
|
-
* @file Public Page Debugger
|
|
3408
|
-
* @package @jmruthers/pace-core
|
|
3409
|
-
* @module Components/PublicLayout
|
|
3410
|
-
* @since 1.0.0
|
|
3411
|
-
*
|
|
3412
|
-
* A debugging component that helps identify why authentication context
|
|
3413
|
-
* is being triggered in public pages.
|
|
3414
|
-
*/
|
|
3415
|
-
interface PublicPageDebuggerProps {
|
|
3416
|
-
/** Whether to enable debugging */
|
|
3417
|
-
enabled?: boolean;
|
|
3418
|
-
/** Custom label for this debugger instance */
|
|
3419
|
-
label?: string;
|
|
3420
|
-
}
|
|
3421
|
-
/**
|
|
3422
|
-
* Debugger component that logs context information
|
|
3423
|
-
*
|
|
3424
|
-
* This component helps identify why authentication context
|
|
3425
|
-
* is being triggered in public pages.
|
|
3426
|
-
*/
|
|
3427
|
-
declare function PublicPageDebugger({ enabled, label }: PublicPageDebuggerProps): react_jsx_runtime.JSX.Element | null;
|
|
3428
|
-
|
|
3429
|
-
/**
|
|
3430
|
-
* @file Public Page Diagnostic Component
|
|
3431
|
-
* @package @jmruthers/pace-core
|
|
3432
|
-
* @module Components/PublicLayout
|
|
3433
|
-
* @since 1.0.0
|
|
3434
|
-
*
|
|
3435
|
-
* A diagnostic component that helps identify exactly where authentication
|
|
3436
|
-
* context is being triggered in public pages.
|
|
3437
|
-
*/
|
|
3438
|
-
interface PublicPageDiagnosticProps {
|
|
3439
|
-
/** Whether to enable diagnostics */
|
|
3440
|
-
enabled?: boolean;
|
|
3441
|
-
/** Custom label for this diagnostic instance */
|
|
3442
|
-
label?: string;
|
|
3443
|
-
}
|
|
3444
|
-
/**
|
|
3445
|
-
* Diagnostic component that identifies authentication context issues
|
|
3446
|
-
*
|
|
3447
|
-
* This component will help you identify exactly where the problem is
|
|
3448
|
-
* in your public page implementation.
|
|
3449
|
-
*/
|
|
3450
|
-
declare function PublicPageDiagnostic({ enabled, label }: PublicPageDiagnosticProps): react_jsx_runtime.JSX.Element | null;
|
|
3451
|
-
|
|
3452
3392
|
/**
|
|
3453
3393
|
* @file Public Page Context Checker
|
|
3454
3394
|
* @package @jmruthers/pace-core
|
|
@@ -3469,6 +3409,8 @@ interface PublicPageContextCheckerProps {
|
|
|
3469
3409
|
*
|
|
3470
3410
|
* This component will immediately log to console if authentication context
|
|
3471
3411
|
* is being triggered in a public page.
|
|
3412
|
+
*
|
|
3413
|
+
* Only enabled in development mode when VITE_ENABLE_DEBUG_LOGS is 'true'
|
|
3472
3414
|
*/
|
|
3473
3415
|
declare function PublicPageContextChecker({ enabled, label }: PublicPageContextCheckerProps): react_jsx_runtime.JSX.Element | null;
|
|
3474
3416
|
|
|
@@ -3600,4 +3542,50 @@ declare function PublicLoadingSkeleton({ lines, className }: {
|
|
|
3600
3542
|
className?: string;
|
|
3601
3543
|
}): react_jsx_runtime.JSX.Element;
|
|
3602
3544
|
|
|
3603
|
-
|
|
3545
|
+
interface EventLogoProps {
|
|
3546
|
+
/** The event ID to fetch logo for */
|
|
3547
|
+
eventId: string;
|
|
3548
|
+
/** The event name for fallback text generation */
|
|
3549
|
+
eventName: string;
|
|
3550
|
+
/** The organisation ID for storage path */
|
|
3551
|
+
organisationId: string;
|
|
3552
|
+
/** Logo size variant */
|
|
3553
|
+
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
|
|
3554
|
+
/** Custom CSS classes */
|
|
3555
|
+
className?: string;
|
|
3556
|
+
/** Whether to show fallback text when no logo is available */
|
|
3557
|
+
showFallback?: boolean;
|
|
3558
|
+
/** Custom fallback text generator */
|
|
3559
|
+
generateFallbackText?: (eventName: string) => string;
|
|
3560
|
+
/** Whether to validate image existence (deprecated - FileDisplay handles this) */
|
|
3561
|
+
validateImage?: boolean;
|
|
3562
|
+
/** Custom loading component */
|
|
3563
|
+
loadingComponent?: React__default.ComponentType;
|
|
3564
|
+
/** Custom error component */
|
|
3565
|
+
errorComponent?: React__default.ComponentType<{
|
|
3566
|
+
error: Error;
|
|
3567
|
+
}>;
|
|
3568
|
+
}
|
|
3569
|
+
/**
|
|
3570
|
+
* Component for displaying event logos with fallback to initials
|
|
3571
|
+
*
|
|
3572
|
+
* This component is context-aware and automatically detects whether it's being used
|
|
3573
|
+
* in a public or authenticated context. It uses FileDisplay internally to fetch and
|
|
3574
|
+
* display event logos from storage, with automatic fallback to event initials if no
|
|
3575
|
+
* logo is available.
|
|
3576
|
+
*
|
|
3577
|
+
* @param props - Logo configuration and styling
|
|
3578
|
+
* @returns React element with event logo or fallback
|
|
3579
|
+
*/
|
|
3580
|
+
declare function EventLogo({ eventId, eventName, organisationId, size, className, showFallback, generateFallbackText, validateImage, // Deprecated but kept for backward compatibility
|
|
3581
|
+
loadingComponent: LoadingComponent, errorComponent: ErrorComponent }: EventLogoProps): react_jsx_runtime.JSX.Element;
|
|
3582
|
+
/**
|
|
3583
|
+
* Compact event logo for small spaces
|
|
3584
|
+
*/
|
|
3585
|
+
declare function EventLogoCompact(props: EventLogoProps): react_jsx_runtime.JSX.Element;
|
|
3586
|
+
/**
|
|
3587
|
+
* Large event logo for prominent display
|
|
3588
|
+
*/
|
|
3589
|
+
declare function EventLogoLarge(props: EventLogoProps): react_jsx_runtime.JSX.Element;
|
|
3590
|
+
|
|
3591
|
+
export { type DialogTitleProps as $, Alert as A, Button as B, Card as C, TableHead as D, TableRow as E, Dialog as F, DialogPortal as G, DialogOverlay as H, Input as I, DialogTrigger as J, DialogClose as K, Label as L, DialogContent as M, DialogHeader as N, DialogBody as O, Progress as P, DialogFooter as Q, DialogTitle as R, Switch as S, Table as T, DialogDescription as U, type DialogProps as V, type DialogTriggerProps as W, type DialogContentProps as X, type DialogOverlayProps as Y, type DialogHeaderProps as Z, type DialogFooterProps as _, type ButtonProps as a, useIsPublicPage as a$, type DialogDescriptionProps as a0, type DialogSize as a1, Select as a2, SelectGroup as a3, SelectValue as a4, SelectTrigger as a5, SelectContent as a6, SelectLabel as a7, SelectItem as a8, SelectSeparator as a9, type NavigationItem as aA, OrganisationSelector as aB, type OrganisationSelectorProps as aC, UserMenu as aD, ErrorBoundary as aE, type ErrorBoundaryProps as aF, type ErrorBoundaryState as aG, LoadingSpinner as aH, SessionRestorationLoader as aI, type SessionRestorationLoaderProps as aJ, EventSelector as aK, FileUpload as aL, type FileUploadProps as aM, FileDisplay as aN, type FileDisplayProps as aO, useFileReference as aP, useFileReferenceForRecord as aQ, useFileReferenceById as aR, useFilesByCategory as aS, type UseFileReferenceOptions as aT, type UseFileReferenceReturn as aU, type UseFileReferenceForRecordReturn as aV, PublicPageLayout as aW, usePublicPageContext$1 as aX, PublicPageHeader as aY, PublicPageProvider as aZ, usePublicPageContext as a_, Toast as aa, Toaster as ab, ToastAction as ac, ToastProvider as ad, ToastViewport as ae, ToastTitle as af, ToastDescription as ag, ToastClose as ah, type ToastActionElement as ai, type ToastProps as aj, Tooltip as ak, TooltipTrigger as al, TooltipContent as am, TooltipProvider as an, TooltipRoot as ao, Form as ap, type FormProps as aq, LoginForm as ar, type LoginFormProps as as, Header as at, Footer as au, type FooterProps as av, ProtectedRoute as aw, type ProtectedRouteProps as ax, NavigationMenu as ay, type NavigationMenuProps as az, CardHeader as b, PublicPageFooter as b0, PublicPageContextChecker as b1, PublicErrorBoundary as b2, useErrorBoundary as b3, DefaultPublicErrorFallback as b4, PublicLoadingSpinner as b5, PublicLoadingSpinnerFullPage as b6, PublicLoadingSkeleton as b7, EventLogo as b8, EventLogoCompact as b9, EventLogoLarge as ba, type EventLogoProps as bb, type PublicPageLayoutProps as bc, type PublicPageHeaderProps as bd, type PublicPageFooterProps as be, type PublicErrorBoundaryProps as bf, type PublicErrorBoundaryState as bg, type PublicLoadingSpinnerProps as bh, type PaceAppLayoutProps as bi, PaceAppLayout as bj, type PaceLoginPageProps as bk, PaceLoginPage as bl, type UserMenuProps as bm, CardFooter as c, CardTitle as d, CardDescription as e, CardContent as f, CardActions as g, type CardProps as h, type CardActionsProps as i, type InputProps as j, type LabelProps as k, AlertTitle as l, AlertDescription as m, Avatar as n, AvatarImage as o, AvatarFallback as p, Badge as q, type BadgeProps as r, type BadgeVariant as s, Checkbox as t, type SwitchProps as u, TableHeader as v, TableBody as w, TableCaption as x, TableCell as y, TableFooter as z };
|
|
@@ -111,4 +111,4 @@ persistState, enablePersistence, requireOrganisationContext, idleTimeoutMs, // 3
|
|
|
111
111
|
warnBeforeMs, // 60 seconds
|
|
112
112
|
onIdleLogout, renderInactivityWarning, dangerouslyDisableInactivity }: UnifiedAuthProviderProps): react_jsx_runtime.JSX.Element;
|
|
113
113
|
|
|
114
|
-
export {
|
|
114
|
+
export { UnifiedAuthProvider as U, type UnifiedAuthProviderProps as a, type UnifiedAuthContextType as b, type UserEventAccess as c, useUnifiedAuth as u };
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import {
|
|
2
2
|
init_UnifiedAuthProvider
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-6LAAY47Q.js";
|
|
4
4
|
import {
|
|
5
5
|
UnifiedAuthProvider,
|
|
6
6
|
useUnifiedAuth
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-YCWDTTUK.js";
|
|
8
|
+
import "./chunk-7QCC6MCP.js";
|
|
9
|
+
import "./chunk-XDNLUEXI.js";
|
|
10
10
|
import "./chunk-PLDDJCW6.js";
|
|
11
11
|
init_UnifiedAuthProvider();
|
|
12
12
|
export {
|
|
13
13
|
UnifiedAuthProvider,
|
|
14
14
|
useUnifiedAuth
|
|
15
15
|
};
|
|
16
|
-
//# sourceMappingURL=UnifiedAuthProvider-
|
|
16
|
+
//# sourceMappingURL=UnifiedAuthProvider-XIQQ7LVU.js.map
|
|
@@ -20,8 +20,9 @@ import {
|
|
|
20
20
|
isSuperAdmin,
|
|
21
21
|
resolveAppContext,
|
|
22
22
|
setupRBAC
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import "./chunk-
|
|
23
|
+
} from "./chunk-BVYWGZVV.js";
|
|
24
|
+
import "./chunk-SBVILCCA.js";
|
|
25
|
+
import "./chunk-XDNLUEXI.js";
|
|
25
26
|
import "./chunk-PLDDJCW6.js";
|
|
26
27
|
export {
|
|
27
28
|
OrganisationContextRequiredError,
|
|
@@ -46,4 +47,4 @@ export {
|
|
|
46
47
|
resolveAppContext,
|
|
47
48
|
setupRBAC
|
|
48
49
|
};
|
|
49
|
-
//# sourceMappingURL=api-
|
|
50
|
+
//# sourceMappingURL=api-45XYYO2A.js.map
|
|
@@ -4,7 +4,8 @@ import {
|
|
|
4
4
|
emitAuditEvent,
|
|
5
5
|
getGlobalAuditManager,
|
|
6
6
|
setGlobalAuditManager
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-SBVILCCA.js";
|
|
8
|
+
import "./chunk-XDNLUEXI.js";
|
|
8
9
|
import "./chunk-PLDDJCW6.js";
|
|
9
10
|
export {
|
|
10
11
|
RBACAuditManager,
|
|
@@ -13,4 +14,4 @@ export {
|
|
|
13
14
|
getGlobalAuditManager,
|
|
14
15
|
setGlobalAuditManager
|
|
15
16
|
};
|
|
16
|
-
//# sourceMappingURL=audit-
|
|
17
|
+
//# sourceMappingURL=audit-64X3VJXB.js.map
|