@jmruthers/pace-core 0.5.53 → 0.5.55
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/README.md +0 -4
- package/dist/{DataTable-7FMFXA7A.js → DataTable-4T627QFJ.js} +11 -11
- package/dist/{PublicLoadingSpinner-Bq_-BeK-.d.ts → PublicLoadingSpinner-SL8WaQN7.d.ts} +2 -21
- package/dist/{api-H5A3H4IR.js → api-LUNF5O6M.js} +3 -3
- package/dist/{appConfig-BVGyuvI7.d.ts → appConfig-DjpeG6P-.d.ts} +9 -1
- package/dist/{appNameResolver-7GHF5ED2.js → appNameResolver-UURKN7NF.js} +2 -2
- package/dist/{audit-BUW3LMJB.js → audit-6TOCAMKO.js} +2 -2
- package/dist/{chunk-MZBUOP4P.js → chunk-5BSLGBYI.js} +4 -3
- package/dist/chunk-5BSLGBYI.js.map +1 -0
- package/dist/{chunk-I5Z3QH5X.js → chunk-66C4BSAY.js} +2 -2
- package/dist/{chunk-I5Z3QH5X.js.map → chunk-66C4BSAY.js.map} +1 -1
- package/dist/{chunk-MYP2EGHX.js → chunk-AJ2KMES7.js} +21 -14
- package/dist/chunk-AJ2KMES7.js.map +1 -0
- package/dist/{chunk-EL2O4IUX.js → chunk-AQFRLC7K.js} +16 -24
- package/dist/{chunk-EL2O4IUX.js.map → chunk-AQFRLC7K.js.map} +1 -1
- package/dist/{chunk-7BNPOCLL.js → chunk-B2WTCLCV.js} +6 -2
- package/dist/chunk-B2WTCLCV.js.map +1 -0
- package/dist/{chunk-WJARTBCT.js → chunk-D7ARGIA3.js} +16 -7
- package/dist/chunk-D7ARGIA3.js.map +1 -0
- package/dist/{chunk-NRK4AIHQ.js → chunk-KBRACSJI.js} +3 -3
- package/dist/{chunk-NYUJ4FJR.js → chunk-KJDPSM64.js} +7 -7
- package/dist/chunk-KJDPSM64.js.map +1 -0
- package/dist/{chunk-GWSBHC4J.js → chunk-KLPVOPRI.js} +261 -38
- package/dist/chunk-KLPVOPRI.js.map +1 -0
- package/dist/{chunk-TRIZ7IB7.js → chunk-MPQDF75X.js} +148 -288
- package/dist/chunk-MPQDF75X.js.map +1 -0
- package/dist/{chunk-MSFACPQQ.js → chunk-PAEM3OWN.js} +11 -11
- package/dist/{chunk-MSFACPQQ.js.map → chunk-PAEM3OWN.js.map} +1 -1
- package/dist/{chunk-GIO7BFE7.js → chunk-RQD3D2CO.js} +66 -169
- package/dist/{chunk-GIO7BFE7.js.map → chunk-RQD3D2CO.js.map} +1 -1
- package/dist/{chunk-YDJW5XTN.js → chunk-STT7INZR.js} +25 -1
- package/dist/chunk-STT7INZR.js.map +1 -0
- package/dist/{chunk-6MTY77WU.js → chunk-TNMXZLDR.js} +3 -3
- package/dist/{chunk-BC3S53OZ.js → chunk-UQE2Y64H.js} +30 -14
- package/dist/chunk-UQE2Y64H.js.map +1 -0
- package/dist/{chunk-22KLBHPS.js → chunk-W66AZIOH.js} +2 -2
- package/dist/chunk-W66AZIOH.js.map +1 -0
- package/dist/{chunk-SS3E6QLB.js → chunk-YNUBMSMV.js} +2 -2
- package/dist/chunk-YNUBMSMV.js.map +1 -0
- package/dist/{chunk-NZ655MWE.js → chunk-ZOD2ZY6X.js} +5 -4
- package/dist/chunk-ZOD2ZY6X.js.map +1 -0
- package/dist/{chunk-74C6SNEC.js → chunk-ZPK5656W.js} +3 -3
- package/dist/{chunk-74C6SNEC.js.map → chunk-ZPK5656W.js.map} +1 -1
- package/dist/components.d.ts +22 -899
- package/dist/components.js +436 -3118
- package/dist/components.js.map +1 -1
- package/dist/file-reference-9xUOnwyt.d.ts +70 -0
- package/dist/hooks.d.ts +2 -2
- package/dist/hooks.js +10 -10
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +49 -9
- package/dist/index.js +190 -25
- package/dist/index.js.map +1 -1
- package/dist/{organisation-CO3Sh3_D.d.ts → organisation-t-vvQC3g.d.ts} +1 -8
- package/dist/providers.d.ts +2 -2
- package/dist/providers.js +5 -5
- package/dist/rbac/index.d.ts +65 -46
- package/dist/rbac/index.js +10 -12
- package/dist/styles/core.css +0 -125
- package/dist/types.d.ts +2 -1
- package/dist/types.js +3 -1
- package/dist/types.js.map +1 -1
- package/dist/{usePublicRouteParams-B2OcAsur.d.ts → usePublicRouteParams-CdoFxnJK.d.ts} +1 -1
- package/dist/utils.d.ts +3 -4
- package/dist/utils.js +44 -13
- package/dist/utils.js.map +1 -1
- package/docs/FILE_REFERENCE_SYSTEM.md +440 -0
- package/docs/INDEX.md +7 -5
- package/docs/README.md +0 -1
- package/docs/api/README.md +0 -4
- package/docs/api/classes/ErrorBoundary.md +1 -1
- package/docs/api/classes/InvalidScopeError.md +1 -1
- package/docs/api/classes/MissingUserContextError.md +1 -1
- package/docs/api/classes/OrganisationContextRequiredError.md +1 -1
- package/docs/api/classes/PermissionDeniedError.md +2 -2
- package/docs/api/classes/PublicErrorBoundary.md +1 -1
- package/docs/api/classes/RBACAuditManager.md +12 -12
- package/docs/api/classes/RBACCache.md +1 -1
- package/docs/api/classes/RBACEngine.md +6 -6
- 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 +281 -0
- package/docs/api/interfaces/AggregateConfig.md +1 -1
- package/docs/api/interfaces/ButtonProps.md +1 -1
- package/docs/api/interfaces/CardProps.md +1 -1
- package/docs/api/interfaces/ColorPalette.md +1 -1
- package/docs/api/interfaces/ColorShade.md +1 -1
- package/docs/api/interfaces/DataAccessRecord.md +1 -1
- package/docs/api/interfaces/DataTableAction.md +1 -1
- package/docs/api/interfaces/DataTableColumn.md +1 -1
- package/docs/api/interfaces/DataTableProps.md +1 -1
- package/docs/api/interfaces/DataTableToolbarButton.md +1 -1
- package/docs/api/interfaces/EmptyStateConfig.md +1 -1
- package/docs/api/interfaces/EnhancedNavigationMenuProps.md +1 -1
- package/docs/api/interfaces/EventContextType.md +1 -1
- package/docs/api/interfaces/EventLogoProps.md +1 -1
- package/docs/api/interfaces/EventProviderProps.md +1 -1
- package/docs/api/interfaces/FileSizeLimits.md +1 -1
- package/docs/api/interfaces/FileUploadProps.md +1 -1
- package/docs/api/interfaces/FooterProps.md +1 -1
- package/docs/api/interfaces/InactivityWarningModalProps.md +1 -1
- package/docs/api/interfaces/InputProps.md +1 -1
- package/docs/api/interfaces/LabelProps.md +1 -1
- package/docs/api/interfaces/LoginFormProps.md +1 -1
- package/docs/api/interfaces/NavigationAccessRecord.md +2 -2
- package/docs/api/interfaces/NavigationContextType.md +1 -1
- package/docs/api/interfaces/NavigationGuardProps.md +1 -1
- package/docs/api/interfaces/NavigationItem.md +1 -1
- package/docs/api/interfaces/NavigationMenuProps.md +1 -1
- package/docs/api/interfaces/NavigationProviderProps.md +1 -1
- package/docs/api/interfaces/Organisation.md +1 -1
- package/docs/api/interfaces/OrganisationContextType.md +1 -1
- package/docs/api/interfaces/OrganisationMembership.md +1 -1
- package/docs/api/interfaces/OrganisationProviderProps.md +1 -1
- package/docs/api/interfaces/OrganisationSecurityError.md +1 -1
- package/docs/api/interfaces/PaceAppLayoutProps.md +1 -1
- package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
- package/docs/api/interfaces/PageAccessRecord.md +1 -1
- package/docs/api/interfaces/PagePermissionContextType.md +1 -1
- package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
- package/docs/api/interfaces/PagePermissionProviderProps.md +1 -1
- package/docs/api/interfaces/PaletteData.md +1 -1
- package/docs/api/interfaces/PermissionEnforcerProps.md +4 -4
- package/docs/api/interfaces/PublicErrorBoundaryProps.md +1 -1
- package/docs/api/interfaces/PublicErrorBoundaryState.md +1 -1
- package/docs/api/interfaces/PublicLoadingSpinnerProps.md +1 -1
- package/docs/api/interfaces/PublicPageFooterProps.md +1 -1
- package/docs/api/interfaces/PublicPageHeaderProps.md +1 -1
- package/docs/api/interfaces/PublicPageLayoutProps.md +1 -1
- package/docs/api/interfaces/RBACConfig.md +1 -1
- package/docs/api/interfaces/RBACContextType.md +1 -1
- package/docs/api/interfaces/RBACLogger.md +1 -1
- package/docs/api/interfaces/RBACProviderProps.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
- package/docs/api/interfaces/RouteAccessRecord.md +2 -2
- package/docs/api/interfaces/RouteConfig.md +2 -2
- package/docs/api/interfaces/SecureDataContextType.md +1 -1
- package/docs/api/interfaces/SecureDataProviderProps.md +1 -1
- package/docs/api/interfaces/StorageConfig.md +1 -1
- package/docs/api/interfaces/StorageFileInfo.md +1 -1
- package/docs/api/interfaces/StorageFileMetadata.md +1 -1
- package/docs/api/interfaces/StorageListOptions.md +1 -1
- package/docs/api/interfaces/StorageListResult.md +1 -1
- package/docs/api/interfaces/StorageUploadOptions.md +1 -1
- package/docs/api/interfaces/StorageUploadResult.md +1 -1
- package/docs/api/interfaces/StorageUrlOptions.md +1 -1
- package/docs/api/interfaces/StyleImport.md +1 -1
- package/docs/api/interfaces/ToastActionElement.md +1 -1
- package/docs/api/interfaces/ToastProps.md +1 -1
- package/docs/api/interfaces/UnifiedAuthContextType.md +1 -1
- package/docs/api/interfaces/UnifiedAuthProviderProps.md +1 -1
- package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
- package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
- package/docs/api/interfaces/UsePublicEventLogoOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventLogoReturn.md +1 -1
- package/docs/api/interfaces/UsePublicEventOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
- package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
- package/docs/api/interfaces/UserEventAccess.md +1 -1
- package/docs/api/interfaces/UserMenuProps.md +1 -1
- package/docs/api/interfaces/UserProfile.md +1 -1
- package/docs/api/modules.md +204 -200
- package/docs/api-reference/components.md +141 -163
- package/docs/api-reference/hooks.md +347 -0
- package/docs/core-concepts/rbac-system.md +69 -16
- package/docs/getting-started/examples/basic-auth-app.md +0 -1
- package/docs/implementation-guides/datatable-rbac-usage.md +12 -11
- package/docs/implementation-guides/file-upload-storage.md +733 -0
- package/docs/implementation-guides/inactivity-tracking.md +779 -0
- package/docs/implementation-guides/organisation-security.md +748 -0
- package/docs/implementation-guides/public-pages-advanced.md +1022 -0
- package/docs/migration/MIGRATION_GUIDE.md +684 -0
- package/docs/migration/README.md +13 -2
- package/docs/migration/rbac-migration.md +73 -0
- package/docs/rbac/examples/rbac-rls-integration-example.md +11 -13
- package/docs/style-guide.md +269 -1
- package/package.json +1 -1
- package/src/__tests__/TESTING_GUIDELINES.md +331 -18
- package/src/__tests__/helpers/supabaseMock.ts +99 -0
- package/src/__tests__/rbac/PagePermissionGuard.test.tsx +10 -7
- package/src/__tests__/shared.ts +6 -0
- package/src/components/DataTable/components/ActionButtons.tsx +2 -2
- package/src/components/DataTable/components/DataTableCore.tsx +2 -2
- package/src/components/DataTable/components/UnifiedTableBody.tsx +1 -1
- package/src/components/DataTable/utils/debugTools.ts +2 -2
- package/src/components/Dialog/Dialog.test.tsx +12 -2
- package/src/components/ErrorBoundary/ErrorBoundary.test.tsx +6 -6
- package/src/components/ErrorBoundary/ErrorBoundary.tsx +2 -2
- package/src/components/FileDisplay.tsx +233 -0
- package/src/components/FileUpload.tsx +176 -0
- package/src/components/Footer/Footer.test.tsx +7 -7
- package/src/components/NavigationMenu/NavigationMenu.test.tsx +13 -6
- package/src/components/OrganisationSelector/OrganisationSelector.test.tsx +30 -3
- package/src/components/OrganisationSelector/OrganisationSelector.tsx +1 -1
- package/src/components/PaceAppLayout/__tests__/PaceAppLayout.rbac.test.tsx +558 -0
- package/src/components/PublicLayout/PublicErrorBoundary.tsx +1 -1
- package/src/components/PublicLayout/PublicPageDebugger.tsx +2 -2
- package/src/components/PublicLayout/PublicPageDiagnostic.tsx +2 -2
- package/src/components/PublicLayout/PublicPageProvider.tsx +2 -2
- package/src/components/Select/Select.test.tsx +50 -15
- package/src/components/SuperAdminGuard.tsx +2 -2
- package/src/components/__tests__/SuperAdminGuard.test.tsx +559 -0
- package/src/components/index.ts +0 -183
- package/src/hooks/__tests__/useOrganisationPermissions.unit.test.tsx +2 -2
- package/src/hooks/__tests__/usePermissionCache.unit.test.ts +1 -1
- package/src/hooks/__tests__/useRBAC.unit.test.ts +191 -138
- package/src/hooks/public/usePublicEvent.ts +2 -2
- package/src/hooks/useAppConfig.ts +3 -3
- package/src/hooks/useComponentPerformance.ts +1 -1
- package/src/hooks/useDataTablePerformance.ts +1 -1
- package/src/hooks/useFileReference.ts +232 -0
- package/src/hooks/useOrganisationPermissions.test.ts +254 -344
- package/src/hooks/useOrganisationPermissions.ts +15 -7
- package/src/hooks/useOrganisationSecurity.test.ts +390 -402
- package/src/hooks/usePerformanceMonitor.ts +1 -1
- package/src/hooks/usePermissionCache.test.ts +264 -395
- package/src/hooks/usePermissionCache.ts +34 -4
- package/src/hooks/useSecureDataAccess.test.ts +486 -0
- package/src/hooks/useSecureDataAccess.ts +4 -1
- package/src/providers/InactivityProvider.tsx +2 -2
- package/src/providers/OrganisationProvider.test.simple.tsx +168 -0
- package/src/providers/OrganisationProvider.test.tsx +168 -0
- package/src/providers/OrganisationProvider.tsx +18 -31
- package/src/providers/UnifiedAuthProvider.test.simple.tsx +205 -0
- package/src/providers/UnifiedAuthProvider.test.tsx +128 -0
- package/src/providers/__tests__/InactivityProvider.test.tsx +3 -4
- package/src/providers/__tests__/OrganisationProvider.test.tsx +19 -14
- package/src/rbac/__tests__/integration.authflow.test.tsx +123 -0
- package/src/rbac/__tests__/integration.navigation.test.tsx +72 -0
- package/src/rbac/__tests__/integration.securedata.test.tsx +92 -0
- package/src/rbac/__tests__/integration.smoke.test.tsx +73 -0
- package/src/rbac/__tests__/rbac-core.test.tsx +26 -22
- package/src/rbac/__tests__/rbac-engine-core-logic.test.ts +411 -0
- package/src/rbac/__tests__/rbac-engine-simplified.test.ts +285 -0
- package/src/rbac/__tests__/rbac-functions.test.ts +655 -0
- package/src/rbac/__tests__/rbac-integration.test.ts +532 -0
- package/src/rbac/__tests__/scenarios.user-role.test.tsx +196 -0
- package/src/rbac/api.test.ts +6 -6
- package/src/rbac/api.ts +2 -2
- package/src/rbac/audit.test.ts +485 -0
- package/src/rbac/audit.ts +7 -1
- package/src/rbac/cache-invalidation.ts +318 -0
- package/src/rbac/cache.test.ts +286 -0
- package/src/rbac/components/EnhancedNavigationMenu.test.tsx +559 -0
- package/src/rbac/components/EnhancedNavigationMenu.tsx +29 -23
- package/src/rbac/components/NavigationProvider.test.tsx +449 -0
- package/src/rbac/components/PagePermissionGuard.tsx +4 -4
- package/src/rbac/components/PagePermissionProvider.test.tsx +479 -0
- package/src/rbac/components/SecureDataProvider.test.tsx +511 -0
- package/src/rbac/components/__tests__/PagePermissionGuard.race-condition.test.tsx +159 -430
- package/src/rbac/components/__tests__/PagePermissionGuard.test.tsx +4 -5
- package/src/rbac/components/__tests__/PagePermissionGuard.verification.test.tsx +112 -118
- package/src/rbac/config.test.ts +410 -0
- package/src/rbac/engine.test.simple.ts +237 -0
- package/src/rbac/engine.test.ts +233 -0
- package/src/rbac/engine.ts +37 -41
- package/src/rbac/examples/CompleteRBACExample.tsx +3 -3
- package/src/rbac/examples/EventBasedApp.tsx +4 -4
- package/src/rbac/hooks/useRBAC.simple.test.ts +16 -0
- package/src/rbac/hooks/useRBAC.test.ts +207 -455
- package/src/rbac/hooks/useRBAC.ts +30 -22
- package/src/rbac/permissions.test.ts +128 -0
- package/src/rbac/permissions.ts +56 -141
- package/src/rbac/providers/RBACProvider.tsx +1 -1
- package/src/rbac/secureClient.test.ts +444 -0
- package/src/rbac/security.test.ts +390 -0
- package/src/rbac/security.ts +1 -1
- package/src/rbac/types.test.ts +382 -0
- package/src/rbac/types.ts +2 -2
- package/src/styles/base.css +208 -0
- package/src/styles/core.css +0 -125
- package/src/styles/semantic.css +24 -0
- package/src/types/file-reference.ts +77 -0
- package/src/types/rbac-functions.ts +290 -0
- package/src/types/supabase.ts +10 -28
- package/src/types/unified.ts +4 -1
- package/src/utils/__tests__/bundleAnalysis.unit.test.ts +81 -55
- package/src/utils/__tests__/lazyLoad.unit.test.tsx +21 -12
- package/src/utils/__tests__/organisationContext.unit.test.ts +13 -7
- package/src/utils/__tests__/performanceBudgets.unit.test.ts +3 -3
- package/src/utils/__tests__/sessionTracking.unit.test.ts +32 -12
- package/src/utils/appConfig.ts +1 -1
- package/src/utils/appIdResolver.test.ts +503 -0
- package/src/utils/appIdResolver.ts +1 -1
- package/src/utils/appNameResolver.test.ts +494 -0
- package/src/utils/appNameResolver.ts +3 -2
- package/src/utils/bundleAnalysis.ts +3 -3
- package/src/utils/debugLogger.ts +1 -1
- package/src/utils/file-reference.ts +263 -0
- package/src/utils/formatDate.test.ts +2 -2
- package/src/utils/organisationContext.test.ts +340 -0
- package/src/utils/organisationContext.ts +19 -6
- package/src/utils/performanceBudgets.ts +2 -2
- package/src/utils/permissionUtils.test.ts +393 -0
- package/src/utils/permissionUtils.ts +5 -2
- package/src/utils/secureDataAccess.test.ts +715 -0
- package/src/utils/secureDataAccess.ts +21 -5
- package/src/utils/sessionTracking.ts +34 -4
- package/src/utils/storage/__tests__/helpers.unit.test.ts +328 -0
- package/src/utils/storage/__tests__/index.unit.test.ts +16 -0
- package/src/utils/storage/helpers.ts +20 -25
- package/src/utils/storage/index.ts +29 -1
- package/src/vite-env.d.ts +17 -0
- package/dist/chunk-22KLBHPS.js.map +0 -1
- package/dist/chunk-7BNPOCLL.js.map +0 -1
- package/dist/chunk-BC3S53OZ.js.map +0 -1
- package/dist/chunk-GWSBHC4J.js.map +0 -1
- package/dist/chunk-MYP2EGHX.js.map +0 -1
- package/dist/chunk-MZBUOP4P.js.map +0 -1
- package/dist/chunk-NYUJ4FJR.js.map +0 -1
- package/dist/chunk-NZ655MWE.js.map +0 -1
- package/dist/chunk-SS3E6QLB.js.map +0 -1
- package/dist/chunk-TRIZ7IB7.js.map +0 -1
- package/dist/chunk-WJARTBCT.js.map +0 -1
- package/dist/chunk-YDJW5XTN.js.map +0 -1
- package/docs/print-components/README.md +0 -258
- package/docs/print-components/api-reference.md +0 -636
- package/docs/print-components/examples/README.md +0 -204
- package/docs/print-components/examples/basic-report.tsx +0 -92
- package/docs/print-components/examples/card-catalog.tsx +0 -149
- package/docs/print-components/examples/cover-page-report.tsx +0 -163
- package/docs/print-components/quick-start.md +0 -363
- package/src/components/PrintButton/PrintButton.tsx +0 -321
- package/src/components/PrintButton/PrintButtonGroup.tsx +0 -84
- package/src/components/PrintButton/PrintToolbar.tsx +0 -94
- package/src/components/PrintButton/__tests__/PrintButton.test.tsx +0 -271
- package/src/components/PrintButton/examples/PrintButtonShowcase.tsx +0 -438
- package/src/components/PrintButton/index.ts +0 -33
- package/src/components/PrintButton/types.ts +0 -173
- package/src/components/PrintCard/PrintCard.tsx +0 -154
- package/src/components/PrintCard/PrintCardContent.tsx +0 -57
- package/src/components/PrintCard/PrintCardFooter.tsx +0 -60
- package/src/components/PrintCard/PrintCardGrid.tsx +0 -91
- package/src/components/PrintCard/PrintCardHeader.tsx +0 -78
- package/src/components/PrintCard/PrintCardImage.tsx +0 -81
- package/src/components/PrintCard/examples/PrintCardShowcase.tsx +0 -239
- package/src/components/PrintCard/index.ts +0 -34
- package/src/components/PrintCard/types.ts +0 -171
- package/src/components/PrintDataTable/PrintDataTable.tsx +0 -215
- package/src/components/PrintDataTable/PrintTableGroup.tsx +0 -90
- package/src/components/PrintDataTable/PrintTableRow.tsx +0 -76
- package/src/components/PrintDataTable/index.ts +0 -25
- package/src/components/PrintDataTable/types.ts +0 -67
- package/src/components/PrintFooter/PrintFooter.tsx +0 -183
- package/src/components/PrintFooter/PrintFooterContent.tsx +0 -71
- package/src/components/PrintFooter/PrintFooterInfo.tsx +0 -86
- package/src/components/PrintFooter/PrintPageNumber.tsx +0 -90
- package/src/components/PrintFooter/examples/PrintFooterShowcase.tsx +0 -390
- package/src/components/PrintFooter/index.ts +0 -30
- package/src/components/PrintFooter/types.ts +0 -149
- package/src/components/PrintGrid/PrintGrid.tsx +0 -180
- package/src/components/PrintGrid/PrintGridBreakpoint.tsx +0 -109
- package/src/components/PrintGrid/PrintGridContainer.tsx +0 -128
- package/src/components/PrintGrid/PrintGridItem.tsx +0 -220
- package/src/components/PrintGrid/examples/PrintGridShowcase.tsx +0 -359
- package/src/components/PrintGrid/index.ts +0 -31
- package/src/components/PrintGrid/types.ts +0 -159
- package/src/components/PrintHeader/PrintCoverHeader.tsx +0 -230
- package/src/components/PrintHeader/PrintHeader.tsx +0 -150
- package/src/components/PrintHeader/index.ts +0 -17
- package/src/components/PrintHeader/types.ts +0 -42
- package/src/components/PrintLayout/PrintLayout.tsx +0 -122
- package/src/components/PrintLayout/PrintLayoutContext.tsx +0 -66
- package/src/components/PrintLayout/PrintPageBreak.tsx +0 -52
- package/src/components/PrintLayout/examples/PrintShowcase.tsx +0 -230
- package/src/components/PrintLayout/index.ts +0 -19
- package/src/components/PrintLayout/types.ts +0 -37
- package/src/components/PrintPageBreak/PrintPageBreak.tsx +0 -120
- package/src/components/PrintPageBreak/PrintPageBreakGroup.tsx +0 -90
- package/src/components/PrintPageBreak/PrintPageBreakIndicator.tsx +0 -112
- package/src/components/PrintPageBreak/examples/PrintPageBreakShowcase.tsx +0 -279
- package/src/components/PrintPageBreak/index.ts +0 -23
- package/src/components/PrintPageBreak/types.ts +0 -94
- package/src/components/PrintSection/PrintColumn.tsx +0 -104
- package/src/components/PrintSection/PrintDivider.tsx +0 -101
- package/src/components/PrintSection/PrintSection.tsx +0 -129
- package/src/components/PrintSection/PrintSectionContent.tsx +0 -75
- package/src/components/PrintSection/PrintSectionHeader.tsx +0 -97
- package/src/components/PrintSection/examples/PrintSectionShowcase.tsx +0 -258
- package/src/components/PrintSection/index.ts +0 -33
- package/src/components/PrintSection/types.ts +0 -155
- package/src/components/PrintText/PrintText.tsx +0 -116
- package/src/components/PrintText/index.ts +0 -16
- package/src/components/PrintText/types.ts +0 -24
- package/src/rbac/__tests__/integration.test.tsx +0 -218
- package/src/utils/print/PrintDataProcessor.ts +0 -390
- package/src/utils/print/examples/PrintUtilitiesShowcase.tsx +0 -397
- package/src/utils/print/index.ts +0 -29
- package/src/utils/print/types.ts +0 -196
- package/src/utils/print/usePrintOptimization.ts +0 -272
- /package/dist/{DataTable-7FMFXA7A.js.map → DataTable-4T627QFJ.js.map} +0 -0
- /package/dist/{api-H5A3H4IR.js.map → api-LUNF5O6M.js.map} +0 -0
- /package/dist/{appNameResolver-7GHF5ED2.js.map → appNameResolver-UURKN7NF.js.map} +0 -0
- /package/dist/{audit-BUW3LMJB.js.map → audit-6TOCAMKO.js.map} +0 -0
- /package/dist/{chunk-NRK4AIHQ.js.map → chunk-KBRACSJI.js.map} +0 -0
- /package/dist/{chunk-6MTY77WU.js.map → chunk-TNMXZLDR.js.map} +0 -0
|
@@ -1,390 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file PrintFooter Showcase Example
|
|
3
|
-
* @package @jmruthers/pace-core
|
|
4
|
-
* @module PrintFooterShowcase
|
|
5
|
-
* @since 0.4.38
|
|
6
|
-
*
|
|
7
|
-
* Example showcasing PrintFooter components usage.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
import React from 'react';
|
|
11
|
-
import {
|
|
12
|
-
PrintLayout,
|
|
13
|
-
PrintHeader,
|
|
14
|
-
PrintText,
|
|
15
|
-
PrintSection,
|
|
16
|
-
PrintFooter,
|
|
17
|
-
PrintPageNumber,
|
|
18
|
-
PrintFooterContent,
|
|
19
|
-
PrintFooterInfo
|
|
20
|
-
} from '../../index';
|
|
21
|
-
|
|
22
|
-
export function PrintFooterShowcase() {
|
|
23
|
-
return (
|
|
24
|
-
<PrintLayout
|
|
25
|
-
orientation="portrait"
|
|
26
|
-
pageSize="A4"
|
|
27
|
-
firstPageHeader={
|
|
28
|
-
<PrintHeader
|
|
29
|
-
title="Print Footer Components Showcase"
|
|
30
|
-
subtitle="Demonstrating page footers and numbering"
|
|
31
|
-
branding={{
|
|
32
|
-
logo: "/pace_logo_square.svg",
|
|
33
|
-
companyName: "Pace Core"
|
|
34
|
-
}}
|
|
35
|
-
metadata={[
|
|
36
|
-
{ label: 'Date', value: new Date().toLocaleDateString() },
|
|
37
|
-
{ label: 'Page', value: "1" }
|
|
38
|
-
]}
|
|
39
|
-
/>
|
|
40
|
-
}
|
|
41
|
-
>
|
|
42
|
-
<div className="space-y-8">
|
|
43
|
-
{/* Basic Footer */}
|
|
44
|
-
<PrintSection title="Basic Footer" background="white" showBorder>
|
|
45
|
-
<PrintSection>
|
|
46
|
-
<PrintText>
|
|
47
|
-
A basic footer with text content and page numbers.
|
|
48
|
-
</PrintText>
|
|
49
|
-
|
|
50
|
-
<PrintFooter
|
|
51
|
-
text="© 2024 Pace Core. All rights reserved."
|
|
52
|
-
showPageNumbers={true}
|
|
53
|
-
pageNumberFormat="Page 1 of 5"
|
|
54
|
-
showTotalPages={true}
|
|
55
|
-
background="gray"
|
|
56
|
-
showBorder={true}
|
|
57
|
-
className="mt-4"
|
|
58
|
-
/>
|
|
59
|
-
</PrintSection>
|
|
60
|
-
</PrintSection>
|
|
61
|
-
|
|
62
|
-
{/* Footer Positions */}
|
|
63
|
-
<PrintSection title="Footer Positions" background="gray">
|
|
64
|
-
<PrintSection>
|
|
65
|
-
<PrintText>
|
|
66
|
-
Different footer positions for various layout needs.
|
|
67
|
-
</PrintText>
|
|
68
|
-
|
|
69
|
-
<div className="space-y-4 mt-4">
|
|
70
|
-
<div className="relative h-20 border border-dashed border-gray-300 rounded">
|
|
71
|
-
<PrintText variant="small" className="p-2">Relative Position</PrintText>
|
|
72
|
-
<PrintFooter
|
|
73
|
-
position="relative"
|
|
74
|
-
text="Relative footer"
|
|
75
|
-
background="white"
|
|
76
|
-
showBorder={true}
|
|
77
|
-
className="absolute bottom-0 left-0 right-0"
|
|
78
|
-
/>
|
|
79
|
-
</div>
|
|
80
|
-
|
|
81
|
-
<div className="relative h-20 border border-dashed border-gray-300 rounded">
|
|
82
|
-
<PrintText variant="small" className="p-2">Absolute Position</PrintText>
|
|
83
|
-
<PrintFooter
|
|
84
|
-
position="absolute"
|
|
85
|
-
text="Absolute footer"
|
|
86
|
-
background="primary"
|
|
87
|
-
showBorder={true}
|
|
88
|
-
/>
|
|
89
|
-
</div>
|
|
90
|
-
|
|
91
|
-
<div className="relative h-20 border border-dashed border-gray-300 rounded">
|
|
92
|
-
<PrintText variant="small" className="p-2">Sticky Position</PrintText>
|
|
93
|
-
<PrintFooter
|
|
94
|
-
position="sticky"
|
|
95
|
-
text="Sticky footer"
|
|
96
|
-
background="secondary"
|
|
97
|
-
showBorder={true}
|
|
98
|
-
/>
|
|
99
|
-
</div>
|
|
100
|
-
</div>
|
|
101
|
-
</PrintSection>
|
|
102
|
-
</PrintSection>
|
|
103
|
-
|
|
104
|
-
{/* Footer Alignments */}
|
|
105
|
-
<PrintSection title="Footer Alignments" background="white" showBorder>
|
|
106
|
-
<PrintSection>
|
|
107
|
-
<PrintText>
|
|
108
|
-
Different footer alignments for content organization.
|
|
109
|
-
</PrintText>
|
|
110
|
-
|
|
111
|
-
<div className="space-y-4 mt-4">
|
|
112
|
-
<PrintFooter
|
|
113
|
-
align="left"
|
|
114
|
-
text="Left aligned footer"
|
|
115
|
-
background="gray"
|
|
116
|
-
showBorder={true}
|
|
117
|
-
/>
|
|
118
|
-
|
|
119
|
-
<PrintFooter
|
|
120
|
-
align="center"
|
|
121
|
-
text="Center aligned footer"
|
|
122
|
-
background="gray"
|
|
123
|
-
showBorder={true}
|
|
124
|
-
/>
|
|
125
|
-
|
|
126
|
-
<PrintFooter
|
|
127
|
-
align="right"
|
|
128
|
-
text="Right aligned footer"
|
|
129
|
-
background="gray"
|
|
130
|
-
showBorder={true}
|
|
131
|
-
/>
|
|
132
|
-
|
|
133
|
-
<PrintFooter
|
|
134
|
-
align="between"
|
|
135
|
-
text="Between aligned footer"
|
|
136
|
-
background="gray"
|
|
137
|
-
showBorder={true}
|
|
138
|
-
showPageNumbers={true}
|
|
139
|
-
pageNumberFormat="1"
|
|
140
|
-
/>
|
|
141
|
-
</div>
|
|
142
|
-
</PrintSection>
|
|
143
|
-
</PrintSection>
|
|
144
|
-
|
|
145
|
-
{/* Page Number Formats */}
|
|
146
|
-
<PrintSection title="Page Number Formats" background="gray">
|
|
147
|
-
<PrintSection>
|
|
148
|
-
<PrintText>
|
|
149
|
-
Different page number formats for various documentation needs.
|
|
150
|
-
</PrintText>
|
|
151
|
-
|
|
152
|
-
<div className="space-y-4 mt-4">
|
|
153
|
-
<PrintFooter
|
|
154
|
-
text="Simple page number"
|
|
155
|
-
showPageNumbers={true}
|
|
156
|
-
pageNumberFormat="1"
|
|
157
|
-
background="white"
|
|
158
|
-
showBorder={true}
|
|
159
|
-
/>
|
|
160
|
-
|
|
161
|
-
<PrintFooter
|
|
162
|
-
text="Page X format"
|
|
163
|
-
showPageNumbers={true}
|
|
164
|
-
pageNumberFormat="Page 1"
|
|
165
|
-
background="white"
|
|
166
|
-
showBorder={true}
|
|
167
|
-
/>
|
|
168
|
-
|
|
169
|
-
<PrintFooter
|
|
170
|
-
text="X of Y format"
|
|
171
|
-
showPageNumbers={true}
|
|
172
|
-
pageNumberFormat="1 of 5"
|
|
173
|
-
showTotalPages={true}
|
|
174
|
-
background="white"
|
|
175
|
-
showBorder={true}
|
|
176
|
-
/>
|
|
177
|
-
|
|
178
|
-
<PrintFooter
|
|
179
|
-
text="Page X of Y format"
|
|
180
|
-
showPageNumbers={true}
|
|
181
|
-
pageNumberFormat="Page 1 of 5"
|
|
182
|
-
showTotalPages={true}
|
|
183
|
-
background="white"
|
|
184
|
-
showBorder={true}
|
|
185
|
-
/>
|
|
186
|
-
|
|
187
|
-
<PrintFooter
|
|
188
|
-
text="X/Y format"
|
|
189
|
-
showPageNumbers={true}
|
|
190
|
-
pageNumberFormat="1/5"
|
|
191
|
-
showTotalPages={true}
|
|
192
|
-
background="white"
|
|
193
|
-
showBorder={true}
|
|
194
|
-
/>
|
|
195
|
-
|
|
196
|
-
<PrintFooter
|
|
197
|
-
text="Custom template"
|
|
198
|
-
showPageNumbers={true}
|
|
199
|
-
pageNumberTemplate="Document Page {current} of {total}"
|
|
200
|
-
showTotalPages={true}
|
|
201
|
-
background="white"
|
|
202
|
-
showBorder={true}
|
|
203
|
-
/>
|
|
204
|
-
</div>
|
|
205
|
-
</PrintSection>
|
|
206
|
-
</PrintSection>
|
|
207
|
-
|
|
208
|
-
{/* Footer Backgrounds */}
|
|
209
|
-
<PrintSection title="Footer Backgrounds" background="white" showBorder>
|
|
210
|
-
<PrintSection>
|
|
211
|
-
<PrintText>
|
|
212
|
-
Different footer backgrounds for visual hierarchy.
|
|
213
|
-
</PrintText>
|
|
214
|
-
|
|
215
|
-
<div className="space-y-4 mt-4">
|
|
216
|
-
<PrintFooter
|
|
217
|
-
text="Transparent background"
|
|
218
|
-
background="transparent"
|
|
219
|
-
showBorder={true}
|
|
220
|
-
/>
|
|
221
|
-
|
|
222
|
-
<PrintFooter
|
|
223
|
-
text="White background"
|
|
224
|
-
background="white"
|
|
225
|
-
showBorder={true}
|
|
226
|
-
/>
|
|
227
|
-
|
|
228
|
-
<PrintFooter
|
|
229
|
-
text="Gray background"
|
|
230
|
-
background="gray"
|
|
231
|
-
showBorder={true}
|
|
232
|
-
/>
|
|
233
|
-
|
|
234
|
-
<PrintFooter
|
|
235
|
-
text="Primary background"
|
|
236
|
-
background="primary"
|
|
237
|
-
showBorder={true}
|
|
238
|
-
/>
|
|
239
|
-
|
|
240
|
-
<PrintFooter
|
|
241
|
-
text="Secondary background"
|
|
242
|
-
background="secondary"
|
|
243
|
-
showBorder={true}
|
|
244
|
-
/>
|
|
245
|
-
</div>
|
|
246
|
-
</PrintSection>
|
|
247
|
-
</PrintSection>
|
|
248
|
-
|
|
249
|
-
{/* Footer Sizes */}
|
|
250
|
-
<PrintSection title="Footer Sizes" background="gray">
|
|
251
|
-
<PrintSection>
|
|
252
|
-
<PrintText>
|
|
253
|
-
Different footer sizes for various content needs.
|
|
254
|
-
</PrintText>
|
|
255
|
-
|
|
256
|
-
<div className="space-y-4 mt-4">
|
|
257
|
-
<PrintFooter
|
|
258
|
-
text="Small height footer"
|
|
259
|
-
height="sm"
|
|
260
|
-
background="white"
|
|
261
|
-
showBorder={true}
|
|
262
|
-
/>
|
|
263
|
-
|
|
264
|
-
<PrintFooter
|
|
265
|
-
text="Medium height footer"
|
|
266
|
-
height="md"
|
|
267
|
-
background="white"
|
|
268
|
-
showBorder={true}
|
|
269
|
-
/>
|
|
270
|
-
|
|
271
|
-
<PrintFooter
|
|
272
|
-
text="Large height footer"
|
|
273
|
-
height="lg"
|
|
274
|
-
background="white"
|
|
275
|
-
showBorder={true}
|
|
276
|
-
/>
|
|
277
|
-
|
|
278
|
-
<PrintFooter
|
|
279
|
-
text="Extra large height footer"
|
|
280
|
-
height="xl"
|
|
281
|
-
background="white"
|
|
282
|
-
showBorder={true}
|
|
283
|
-
/>
|
|
284
|
-
</div>
|
|
285
|
-
</PrintSection>
|
|
286
|
-
</PrintSection>
|
|
287
|
-
|
|
288
|
-
{/* Footer Content Components */}
|
|
289
|
-
<PrintSection title="Footer Content Components" background="white" showBorder>
|
|
290
|
-
<PrintSection>
|
|
291
|
-
<PrintText>
|
|
292
|
-
Using footer content components for complex layouts.
|
|
293
|
-
</PrintText>
|
|
294
|
-
|
|
295
|
-
<PrintFooter
|
|
296
|
-
align="between"
|
|
297
|
-
background="gray"
|
|
298
|
-
showBorder={true}
|
|
299
|
-
className="mt-4"
|
|
300
|
-
>
|
|
301
|
-
<PrintFooterContent align="left">
|
|
302
|
-
<PrintText variant="small">Left content</PrintText>
|
|
303
|
-
</PrintFooterContent>
|
|
304
|
-
|
|
305
|
-
<PrintFooterContent align="center">
|
|
306
|
-
<PrintText variant="small">Center content</PrintText>
|
|
307
|
-
</PrintFooterContent>
|
|
308
|
-
|
|
309
|
-
<PrintFooterContent align="right">
|
|
310
|
-
<PrintText variant="small">Right content</PrintText>
|
|
311
|
-
</PrintFooterContent>
|
|
312
|
-
</PrintFooter>
|
|
313
|
-
</PrintSection>
|
|
314
|
-
</PrintSection>
|
|
315
|
-
|
|
316
|
-
{/* Footer Info Components */}
|
|
317
|
-
<PrintSection title="Footer Info Components" background="gray">
|
|
318
|
-
<PrintSection>
|
|
319
|
-
<PrintText>
|
|
320
|
-
Using footer info components for additional information.
|
|
321
|
-
</PrintText>
|
|
322
|
-
|
|
323
|
-
<div className="space-y-4 mt-4">
|
|
324
|
-
<PrintFooterInfo
|
|
325
|
-
background="white"
|
|
326
|
-
showBorder={true}
|
|
327
|
-
align="left"
|
|
328
|
-
>
|
|
329
|
-
Contact: info@pacecore.com | Phone: +1 (555) 123-4567
|
|
330
|
-
</PrintFooterInfo>
|
|
331
|
-
|
|
332
|
-
<PrintFooterInfo
|
|
333
|
-
background="primary"
|
|
334
|
-
showBorder={true}
|
|
335
|
-
align="center"
|
|
336
|
-
>
|
|
337
|
-
Confidential Document - Internal Use Only
|
|
338
|
-
</PrintFooterInfo>
|
|
339
|
-
|
|
340
|
-
<PrintFooterInfo
|
|
341
|
-
background="secondary"
|
|
342
|
-
showBorder={true}
|
|
343
|
-
align="right"
|
|
344
|
-
>
|
|
345
|
-
Generated on {new Date().toLocaleDateString()}
|
|
346
|
-
</PrintFooterInfo>
|
|
347
|
-
</div>
|
|
348
|
-
</PrintSection>
|
|
349
|
-
</PrintSection>
|
|
350
|
-
|
|
351
|
-
{/* Complex Footer Layout */}
|
|
352
|
-
<PrintSection title="Complex Footer Layout" background="white" showBorder>
|
|
353
|
-
<PrintSection>
|
|
354
|
-
<PrintText>
|
|
355
|
-
A complex footer layout with multiple components and page numbering.
|
|
356
|
-
</PrintText>
|
|
357
|
-
|
|
358
|
-
<PrintFooter
|
|
359
|
-
align="between"
|
|
360
|
-
background="gray"
|
|
361
|
-
showBorder={true}
|
|
362
|
-
showPageNumbers={true}
|
|
363
|
-
pageNumberFormat="Page 1 of 5"
|
|
364
|
-
showTotalPages={true}
|
|
365
|
-
className="mt-4"
|
|
366
|
-
>
|
|
367
|
-
<PrintFooterContent align="left">
|
|
368
|
-
<PrintFooterInfo background="white" showBorder={true}>
|
|
369
|
-
Document ID: DOC-2024-001
|
|
370
|
-
</PrintFooterInfo>
|
|
371
|
-
</PrintFooterContent>
|
|
372
|
-
|
|
373
|
-
<PrintFooterContent align="center">
|
|
374
|
-
<PrintText variant="small" weight="semibold">
|
|
375
|
-
Pace Core Documentation
|
|
376
|
-
</PrintText>
|
|
377
|
-
</PrintFooterContent>
|
|
378
|
-
|
|
379
|
-
<PrintFooterContent align="right">
|
|
380
|
-
<PrintFooterInfo background="white" showBorder={true}>
|
|
381
|
-
Version 1.0
|
|
382
|
-
</PrintFooterInfo>
|
|
383
|
-
</PrintFooterContent>
|
|
384
|
-
</PrintFooter>
|
|
385
|
-
</PrintSection>
|
|
386
|
-
</PrintSection>
|
|
387
|
-
</div>
|
|
388
|
-
</PrintLayout>
|
|
389
|
-
);
|
|
390
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file PrintFooter Exports
|
|
3
|
-
* @package @jmruthers/pace-core
|
|
4
|
-
* @module PrintFooter
|
|
5
|
-
* @since 0.4.38
|
|
6
|
-
*
|
|
7
|
-
* Exports for PrintFooter components.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
export { PrintFooter } from './PrintFooter';
|
|
11
|
-
export { PrintPageNumber } from './PrintPageNumber';
|
|
12
|
-
export { PrintFooterContent } from './PrintFooterContent';
|
|
13
|
-
export { PrintFooterInfo } from './PrintFooterInfo';
|
|
14
|
-
|
|
15
|
-
export type {
|
|
16
|
-
PrintFooterProps,
|
|
17
|
-
PrintPageNumberProps,
|
|
18
|
-
PrintFooterContentProps,
|
|
19
|
-
PrintFooterInfoProps,
|
|
20
|
-
PrintFooterPosition,
|
|
21
|
-
PrintFooterAlign,
|
|
22
|
-
PrintPageNumberFormat,
|
|
23
|
-
PrintPageNumberPosition,
|
|
24
|
-
PrintFooterBackground,
|
|
25
|
-
PrintFooterPadding,
|
|
26
|
-
PrintFooterMargin,
|
|
27
|
-
PrintFooterHeight,
|
|
28
|
-
PrintFooterContentAlign,
|
|
29
|
-
PrintFooterInfoAlign,
|
|
30
|
-
} from './types';
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file PrintFooter Types
|
|
3
|
-
* @package @jmruthers/pace-core
|
|
4
|
-
* @module PrintFooter
|
|
5
|
-
* @since 0.4.38
|
|
6
|
-
*
|
|
7
|
-
* Type definitions for PrintFooter component.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
import { ReactNode } from 'react';
|
|
11
|
-
|
|
12
|
-
export interface PrintFooterProps {
|
|
13
|
-
/** Footer content */
|
|
14
|
-
children?: ReactNode;
|
|
15
|
-
|
|
16
|
-
/** Footer text */
|
|
17
|
-
text?: string;
|
|
18
|
-
|
|
19
|
-
/** Footer position */
|
|
20
|
-
position?: 'fixed' | 'absolute' | 'relative' | 'sticky';
|
|
21
|
-
|
|
22
|
-
/** Footer alignment */
|
|
23
|
-
align?: 'left' | 'center' | 'right' | 'between' | 'around' | 'evenly';
|
|
24
|
-
|
|
25
|
-
/** Show page numbers */
|
|
26
|
-
showPageNumbers?: boolean;
|
|
27
|
-
|
|
28
|
-
/** Page number format */
|
|
29
|
-
pageNumberFormat?: '1' | '1 of 5' | 'Page 1' | 'Page 1 of 5' | '1/5' | 'custom';
|
|
30
|
-
|
|
31
|
-
/** Custom page number template */
|
|
32
|
-
pageNumberTemplate?: string;
|
|
33
|
-
|
|
34
|
-
/** Page number position */
|
|
35
|
-
pageNumberPosition?: 'left' | 'center' | 'right';
|
|
36
|
-
|
|
37
|
-
/** Show total pages */
|
|
38
|
-
showTotalPages?: boolean;
|
|
39
|
-
|
|
40
|
-
/** Footer background */
|
|
41
|
-
background?: 'transparent' | 'white' | 'gray' | 'primary' | 'secondary';
|
|
42
|
-
|
|
43
|
-
/** Footer border */
|
|
44
|
-
showBorder?: boolean;
|
|
45
|
-
|
|
46
|
-
/** Footer padding */
|
|
47
|
-
padding?: 'none' | 'sm' | 'md' | 'lg' | 'xl';
|
|
48
|
-
|
|
49
|
-
/** Footer margin */
|
|
50
|
-
margin?: 'none' | 'sm' | 'md' | 'lg' | 'xl';
|
|
51
|
-
|
|
52
|
-
/** Footer height */
|
|
53
|
-
height?: 'auto' | 'sm' | 'md' | 'lg' | 'xl';
|
|
54
|
-
|
|
55
|
-
/** Print optimization */
|
|
56
|
-
printOptimized?: boolean;
|
|
57
|
-
|
|
58
|
-
/** Custom CSS classes */
|
|
59
|
-
className?: string;
|
|
60
|
-
|
|
61
|
-
/** Additional props */
|
|
62
|
-
[key: string]: any;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export interface PrintPageNumberProps {
|
|
66
|
-
/** Page number content */
|
|
67
|
-
children?: ReactNode;
|
|
68
|
-
|
|
69
|
-
/** Page number format */
|
|
70
|
-
format?: '1' | '1 of 5' | 'Page 1' | 'Page 1 of 5' | '1/5' | 'custom';
|
|
71
|
-
|
|
72
|
-
/** Custom page number template */
|
|
73
|
-
template?: string;
|
|
74
|
-
|
|
75
|
-
/** Page number position */
|
|
76
|
-
position?: 'left' | 'center' | 'right';
|
|
77
|
-
|
|
78
|
-
/** Show total pages */
|
|
79
|
-
showTotal?: boolean;
|
|
80
|
-
|
|
81
|
-
/** Current page */
|
|
82
|
-
currentPage?: number;
|
|
83
|
-
|
|
84
|
-
/** Total pages */
|
|
85
|
-
totalPages?: number;
|
|
86
|
-
|
|
87
|
-
/** Print optimization */
|
|
88
|
-
printOptimized?: boolean;
|
|
89
|
-
|
|
90
|
-
/** Custom CSS classes */
|
|
91
|
-
className?: string;
|
|
92
|
-
|
|
93
|
-
/** Additional props */
|
|
94
|
-
[key: string]: any;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
export interface PrintFooterContentProps {
|
|
98
|
-
/** Footer content */
|
|
99
|
-
children: ReactNode;
|
|
100
|
-
|
|
101
|
-
/** Content alignment */
|
|
102
|
-
align?: 'left' | 'center' | 'right';
|
|
103
|
-
|
|
104
|
-
/** Content padding */
|
|
105
|
-
padding?: 'none' | 'sm' | 'md' | 'lg' | 'xl';
|
|
106
|
-
|
|
107
|
-
/** Print optimization */
|
|
108
|
-
printOptimized?: boolean;
|
|
109
|
-
|
|
110
|
-
/** Custom CSS classes */
|
|
111
|
-
className?: string;
|
|
112
|
-
|
|
113
|
-
/** Additional props */
|
|
114
|
-
[key: string]: any;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
export interface PrintFooterInfoProps {
|
|
118
|
-
/** Footer info content */
|
|
119
|
-
children: ReactNode;
|
|
120
|
-
|
|
121
|
-
/** Info alignment */
|
|
122
|
-
align?: 'left' | 'center' | 'right';
|
|
123
|
-
|
|
124
|
-
/** Info background */
|
|
125
|
-
background?: 'transparent' | 'white' | 'gray' | 'primary' | 'secondary';
|
|
126
|
-
|
|
127
|
-
/** Info border */
|
|
128
|
-
showBorder?: boolean;
|
|
129
|
-
|
|
130
|
-
/** Print optimization */
|
|
131
|
-
printOptimized?: boolean;
|
|
132
|
-
|
|
133
|
-
/** Custom CSS classes */
|
|
134
|
-
className?: string;
|
|
135
|
-
|
|
136
|
-
/** Additional props */
|
|
137
|
-
[key: string]: any;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
export type PrintFooterPosition = 'fixed' | 'absolute' | 'relative' | 'sticky';
|
|
141
|
-
export type PrintFooterAlign = 'left' | 'center' | 'right' | 'between' | 'around' | 'evenly';
|
|
142
|
-
export type PrintPageNumberFormat = '1' | '1 of 5' | 'Page 1' | 'Page 1 of 5' | '1/5' | 'custom';
|
|
143
|
-
export type PrintPageNumberPosition = 'left' | 'center' | 'right';
|
|
144
|
-
export type PrintFooterBackground = 'transparent' | 'white' | 'gray' | 'primary' | 'secondary';
|
|
145
|
-
export type PrintFooterPadding = 'none' | 'sm' | 'md' | 'lg' | 'xl';
|
|
146
|
-
export type PrintFooterMargin = 'none' | 'sm' | 'md' | 'lg' | 'xl';
|
|
147
|
-
export type PrintFooterHeight = 'auto' | 'sm' | 'md' | 'lg' | 'xl';
|
|
148
|
-
export type PrintFooterContentAlign = 'left' | 'center' | 'right';
|
|
149
|
-
export type PrintFooterInfoAlign = 'left' | 'center' | 'right';
|