@jmruthers/pace-core 0.5.121 → 0.5.123

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.
Files changed (254) hide show
  1. package/dist/{AuthService-D4646R4b.d.ts → AuthService-DYuQPJj6.d.ts} +0 -9
  2. package/dist/{DataTable-DGZDJUYM.js → DataTable-WTS4IRF2.js} +7 -8
  3. package/dist/{PublicLoadingSpinner-DgDWTFqn.d.ts → PublicLoadingSpinner-CaoRbHvJ.d.ts} +30 -4
  4. package/dist/{UnifiedAuthProvider-UACKFATV.js → UnifiedAuthProvider-6C47WIML.js} +3 -4
  5. package/dist/{chunk-D6BOFXYR.js → chunk-35ZDPMBM.js} +3 -3
  6. package/dist/{chunk-CGURJ27Z.js → chunk-4MXVZVNS.js} +2 -2
  7. package/dist/{chunk-ZYJ6O5CA.js → chunk-C43QIDN3.js} +2 -2
  8. package/dist/{chunk-VKOCWWVY.js → chunk-CX5M4ZAG.js} +1 -6
  9. package/dist/{chunk-VKOCWWVY.js 3.map → chunk-CX5M4ZAG.js.map} +1 -1
  10. package/dist/{chunk-HFBOFZ3Z.js → chunk-DHMFMXFV.js} +258 -243
  11. package/dist/chunk-DHMFMXFV.js.map +1 -0
  12. package/dist/{chunk-RIEJGKD3.js → chunk-ESJTIADP.js} +15 -6
  13. package/dist/{chunk-RIEJGKD3.js.map → chunk-ESJTIADP.js.map} +1 -1
  14. package/dist/{chunk-SMJZMKYN.js → chunk-GEVIB2UB.js} +43 -10
  15. package/dist/chunk-GEVIB2UB.js.map +1 -0
  16. package/dist/{chunk-TDNI6ZWL.js → chunk-IJOZZOGT.js} +7 -7
  17. package/dist/chunk-IJOZZOGT.js.map +1 -0
  18. package/dist/{chunk-GZRXOUBE.js → chunk-M6DDYFUD.js} +2 -2
  19. package/dist/chunk-M6DDYFUD.js.map +1 -0
  20. package/dist/{chunk-B4GZ2BXO.js → chunk-NZGLXZGP.js} +3 -3
  21. package/dist/{chunk-NZ32EONV.js → chunk-QWNJCQXZ.js} +2 -2
  22. package/dist/{chunk-FKFHZUGF.js → chunk-XN6GWKMV.js} +43 -56
  23. package/dist/chunk-XN6GWKMV.js.map +1 -0
  24. package/dist/{chunk-BHWIUEYH.js → chunk-ZBLK676C.js} +1 -61
  25. package/dist/chunk-ZBLK676C.js.map +1 -0
  26. package/dist/{chunk-QPI2CCBA.js → chunk-ZPJMYGEP.js} +149 -96
  27. package/dist/chunk-ZPJMYGEP.js.map +1 -0
  28. package/dist/components.d.ts +1 -1
  29. package/dist/components.js +11 -11
  30. package/dist/{formatting-B1jSqgl-.d.ts → formatting-DFcCxUEk.d.ts} +1 -1
  31. package/dist/hooks.d.ts +1 -1
  32. package/dist/hooks.js +9 -8
  33. package/dist/hooks.js.map +1 -1
  34. package/dist/index.d.ts +6 -6
  35. package/dist/index.js +19 -17
  36. package/dist/index.js.map +1 -1
  37. package/dist/providers.d.ts +2 -2
  38. package/dist/providers.js +2 -3
  39. package/dist/rbac/index.js +7 -8
  40. package/dist/styles/index.d.ts +1 -1
  41. package/dist/styles/index.js +5 -3
  42. package/dist/theming/runtime.d.ts +73 -1
  43. package/dist/theming/runtime.js +5 -5
  44. package/dist/{usePublicRouteParams-BdF8bZgs.d.ts → usePublicRouteParams-Dyt1tzI9.d.ts} +60 -8
  45. package/dist/utils.d.ts +1 -1
  46. package/dist/utils.js +5 -5
  47. package/docs/api/classes/ColumnFactory.md +1 -1
  48. package/docs/api/classes/ErrorBoundary.md +1 -1
  49. package/docs/api/classes/InvalidScopeError.md +1 -1
  50. package/docs/api/classes/MissingUserContextError.md +1 -1
  51. package/docs/api/classes/OrganisationContextRequiredError.md +1 -1
  52. package/docs/api/classes/PermissionDeniedError.md +1 -1
  53. package/docs/api/classes/PublicErrorBoundary.md +6 -6
  54. package/docs/api/classes/RBACAuditManager.md +1 -1
  55. package/docs/api/classes/RBACCache.md +1 -1
  56. package/docs/api/classes/RBACEngine.md +1 -1
  57. package/docs/api/classes/RBACError.md +1 -1
  58. package/docs/api/classes/RBACNotInitializedError.md +1 -1
  59. package/docs/api/classes/SecureSupabaseClient.md +6 -6
  60. package/docs/api/classes/StorageUtils.md +1 -1
  61. package/docs/api/enums/FileCategory.md +1 -1
  62. package/docs/api/interfaces/AggregateConfig.md +1 -1
  63. package/docs/api/interfaces/ButtonProps.md +1 -1
  64. package/docs/api/interfaces/CardProps.md +1 -1
  65. package/docs/api/interfaces/ColorPalette.md +1 -1
  66. package/docs/api/interfaces/ColorShade.md +1 -1
  67. package/docs/api/interfaces/DataAccessRecord.md +1 -1
  68. package/docs/api/interfaces/DataRecord.md +1 -1
  69. package/docs/api/interfaces/DataTableAction.md +1 -1
  70. package/docs/api/interfaces/DataTableColumn.md +1 -1
  71. package/docs/api/interfaces/DataTableProps.md +1 -1
  72. package/docs/api/interfaces/DataTableToolbarButton.md +1 -1
  73. package/docs/api/interfaces/EmptyStateConfig.md +1 -1
  74. package/docs/api/interfaces/EnhancedNavigationMenuProps.md +1 -1
  75. package/docs/api/interfaces/EventAppRoleData.md +1 -1
  76. package/docs/api/interfaces/FileDisplayProps.md +1 -1
  77. package/docs/api/interfaces/FileMetadata.md +1 -1
  78. package/docs/api/interfaces/FileReference.md +1 -1
  79. package/docs/api/interfaces/FileSizeLimits.md +1 -1
  80. package/docs/api/interfaces/FileUploadOptions.md +1 -1
  81. package/docs/api/interfaces/FileUploadProps.md +1 -1
  82. package/docs/api/interfaces/FooterProps.md +1 -1
  83. package/docs/api/interfaces/GrantEventAppRoleParams.md +1 -1
  84. package/docs/api/interfaces/InactivityWarningModalProps.md +1 -1
  85. package/docs/api/interfaces/InputProps.md +1 -1
  86. package/docs/api/interfaces/LabelProps.md +1 -1
  87. package/docs/api/interfaces/LoginFormProps.md +1 -1
  88. package/docs/api/interfaces/NavigationAccessRecord.md +1 -1
  89. package/docs/api/interfaces/NavigationContextType.md +1 -1
  90. package/docs/api/interfaces/NavigationGuardProps.md +1 -1
  91. package/docs/api/interfaces/NavigationItem.md +1 -1
  92. package/docs/api/interfaces/NavigationMenuProps.md +1 -1
  93. package/docs/api/interfaces/NavigationProviderProps.md +1 -1
  94. package/docs/api/interfaces/Organisation.md +1 -1
  95. package/docs/api/interfaces/OrganisationContextType.md +1 -1
  96. package/docs/api/interfaces/OrganisationMembership.md +1 -1
  97. package/docs/api/interfaces/OrganisationProviderProps.md +1 -1
  98. package/docs/api/interfaces/OrganisationSecurityError.md +1 -1
  99. package/docs/api/interfaces/PaceAppLayoutProps.md +1 -1
  100. package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
  101. package/docs/api/interfaces/PageAccessRecord.md +1 -1
  102. package/docs/api/interfaces/PagePermissionContextType.md +1 -1
  103. package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
  104. package/docs/api/interfaces/PagePermissionProviderProps.md +1 -1
  105. package/docs/api/interfaces/PaletteData.md +1 -1
  106. package/docs/api/interfaces/PermissionEnforcerProps.md +1 -1
  107. package/docs/api/interfaces/ProtectedRouteProps.md +1 -1
  108. package/docs/api/interfaces/PublicErrorBoundaryProps.md +7 -7
  109. package/docs/api/interfaces/PublicErrorBoundaryState.md +5 -5
  110. package/docs/api/interfaces/PublicLoadingSpinnerProps.md +7 -7
  111. package/docs/api/interfaces/PublicPageFooterProps.md +1 -1
  112. package/docs/api/interfaces/PublicPageHeaderProps.md +51 -12
  113. package/docs/api/interfaces/PublicPageLayoutProps.md +72 -12
  114. package/docs/api/interfaces/RBACConfig.md +1 -1
  115. package/docs/api/interfaces/RBACLogger.md +1 -1
  116. package/docs/api/interfaces/RevokeEventAppRoleParams.md +1 -1
  117. package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
  118. package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
  119. package/docs/api/interfaces/RoleManagementResult.md +1 -1
  120. package/docs/api/interfaces/RouteAccessRecord.md +1 -1
  121. package/docs/api/interfaces/RouteConfig.md +1 -1
  122. package/docs/api/interfaces/SecureDataContextType.md +1 -1
  123. package/docs/api/interfaces/SecureDataProviderProps.md +1 -1
  124. package/docs/api/interfaces/StorageConfig.md +1 -1
  125. package/docs/api/interfaces/StorageFileInfo.md +1 -1
  126. package/docs/api/interfaces/StorageFileMetadata.md +1 -1
  127. package/docs/api/interfaces/StorageListOptions.md +1 -1
  128. package/docs/api/interfaces/StorageListResult.md +1 -1
  129. package/docs/api/interfaces/StorageUploadOptions.md +1 -1
  130. package/docs/api/interfaces/StorageUploadResult.md +1 -1
  131. package/docs/api/interfaces/StorageUrlOptions.md +1 -1
  132. package/docs/api/interfaces/StyleImport.md +1 -1
  133. package/docs/api/interfaces/SwitchProps.md +1 -1
  134. package/docs/api/interfaces/ToastActionElement.md +1 -1
  135. package/docs/api/interfaces/ToastProps.md +1 -1
  136. package/docs/api/interfaces/UnifiedAuthContextType.md +1 -1
  137. package/docs/api/interfaces/UnifiedAuthProviderProps.md +1 -1
  138. package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
  139. package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
  140. package/docs/api/interfaces/UsePublicEventOptions.md +1 -1
  141. package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
  142. package/docs/api/interfaces/UsePublicFileDisplayOptions.md +1 -1
  143. package/docs/api/interfaces/UsePublicFileDisplayReturn.md +1 -1
  144. package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
  145. package/docs/api/interfaces/UseResolvedScopeOptions.md +1 -1
  146. package/docs/api/interfaces/UseResolvedScopeReturn.md +1 -1
  147. package/docs/api/interfaces/UserEventAccess.md +1 -1
  148. package/docs/api/interfaces/UserMenuProps.md +1 -1
  149. package/docs/api/interfaces/UserProfile.md +1 -1
  150. package/docs/api/modules.md +140 -30
  151. package/docs/best-practices/README.md +1 -1
  152. package/docs/implementation-guides/datatable-filtering.md +313 -0
  153. package/docs/implementation-guides/datatable-rbac-usage.md +317 -0
  154. package/docs/implementation-guides/hierarchical-datatable.md +850 -0
  155. package/docs/implementation-guides/large-datasets.md +281 -0
  156. package/docs/implementation-guides/performance.md +403 -0
  157. package/docs/implementation-guides/public-pages.md +4 -4
  158. package/docs/migration/quick-migration-guide.md +320 -0
  159. package/docs/rbac/quick-start.md +16 -16
  160. package/docs/troubleshooting/README.md +4 -4
  161. package/docs/troubleshooting/cake-page-permission-guard-issue-summary.md +1 -1
  162. package/docs/troubleshooting/debugging.md +1117 -0
  163. package/docs/troubleshooting/migration.md +918 -0
  164. package/examples/public-pages/CorrectPublicPageImplementation.tsx +30 -30
  165. package/examples/public-pages/PublicEventPage.tsx +41 -41
  166. package/examples/public-pages/PublicPageApp.tsx +33 -33
  167. package/examples/public-pages/PublicPageUsageExample.tsx +30 -30
  168. package/package.json +4 -4
  169. package/src/__tests__/hooks/usePermissions.test.ts +265 -0
  170. package/src/components/DataTable/DataTable.test.tsx +9 -38
  171. package/src/components/DataTable/DataTable.tsx +0 -7
  172. package/src/components/DataTable/components/DataTableCore.tsx +66 -136
  173. package/src/components/DataTable/components/DataTableModals.tsx +25 -22
  174. package/src/components/DataTable/components/EditableRow.tsx +118 -42
  175. package/src/components/DataTable/components/UnifiedTableBody.tsx +129 -76
  176. package/src/components/DataTable/components/__tests__/DataTableModals.test.tsx +33 -14
  177. package/src/components/DataTable/utils/__tests__/exportUtils.test.ts +17 -5
  178. package/src/components/DataTable/utils/exportUtils.ts +3 -2
  179. package/src/components/Dialog/Dialog.tsx +1 -1
  180. package/src/components/Dialog/README.md +24 -24
  181. package/src/components/Dialog/examples/BasicHtmlTest.tsx +2 -2
  182. package/src/components/Dialog/examples/DebugHtmlExample.tsx +6 -6
  183. package/src/components/Dialog/examples/HtmlDialogExample.tsx +2 -2
  184. package/src/components/Dialog/examples/SimpleHtmlTest.tsx +3 -3
  185. package/src/components/Dialog/examples/__tests__/SimpleHtmlTest.test.tsx +4 -4
  186. package/src/components/PaceAppLayout/PaceAppLayout.tsx +12 -1
  187. package/src/components/PublicLayout/EventLogo.tsx +175 -0
  188. package/src/components/PublicLayout/PublicErrorBoundary.tsx +22 -18
  189. package/src/components/PublicLayout/PublicLoadingSpinner.tsx +22 -14
  190. package/src/components/PublicLayout/PublicPageHeader.tsx +133 -40
  191. package/src/components/PublicLayout/PublicPageLayout.tsx +75 -72
  192. package/src/components/PublicLayout/__tests__/PublicErrorBoundary.test.tsx +1 -1
  193. package/src/components/PublicLayout/__tests__/PublicLoadingSpinner.test.tsx +8 -8
  194. package/src/components/PublicLayout/__tests__/PublicPageHeader.test.tsx +23 -16
  195. package/src/components/PublicLayout/__tests__/PublicPageLayout.test.tsx +86 -14
  196. package/src/examples/CorrectPublicPageImplementation.tsx +30 -30
  197. package/src/examples/PublicEventPage.tsx +41 -41
  198. package/src/examples/PublicPageApp.tsx +33 -33
  199. package/src/examples/PublicPageUsageExample.tsx +30 -30
  200. package/src/hooks/__tests__/usePublicEvent.unit.test.ts +583 -0
  201. package/src/hooks/__tests__/usePublicRouteParams.unit.test.ts +10 -3
  202. package/src/hooks/index.ts +1 -1
  203. package/src/hooks/public/usePublicEventLogo.ts +285 -0
  204. package/src/hooks/public/usePublicRouteParams.ts +21 -4
  205. package/src/hooks/useEventTheme.test.ts +119 -43
  206. package/src/hooks/useEventTheme.ts +84 -55
  207. package/src/index.ts +3 -1
  208. package/src/rbac/components/__tests__/EnhancedNavigationMenu.test.tsx +630 -0
  209. package/src/rbac/components/__tests__/NavigationProvider.test.tsx +667 -0
  210. package/src/rbac/components/__tests__/PagePermissionProvider.test.tsx +647 -0
  211. package/src/rbac/components/__tests__/SecureDataProvider.fixed.test.tsx +496 -0
  212. package/src/rbac/components/__tests__/SecureDataProvider.test.tsx +496 -0
  213. package/src/rbac/secureClient.ts +4 -2
  214. package/src/services/EventService.ts +0 -66
  215. package/src/services/__tests__/EventService.eventColours.test.ts +44 -40
  216. package/src/styles/index.ts +1 -1
  217. package/src/theming/__tests__/parseEventColours.test.ts +209 -0
  218. package/src/theming/parseEventColours.ts +123 -0
  219. package/src/theming/runtime.ts +3 -0
  220. package/src/types/__tests__/file-reference.test.ts +447 -0
  221. package/src/utils/formatDate.test.ts +11 -11
  222. package/src/utils/formatting.ts +3 -2
  223. package/dist/chunk-BDZUMRBD.js 3.map +0 -1
  224. package/dist/chunk-BHWIUEYH.js.map +0 -1
  225. package/dist/chunk-CGURJ27Z.js.map +0 -1
  226. package/dist/chunk-FKFHZUGF.js.map +0 -1
  227. package/dist/chunk-GKHF54DI 2.js +0 -619
  228. package/dist/chunk-GKHF54DI.js 2.map +0 -1
  229. package/dist/chunk-GZRXOUBE.js.map +0 -1
  230. package/dist/chunk-HFBOFZ3Z.js.map +0 -1
  231. package/dist/chunk-NZ32EONV.js.map +0 -1
  232. package/dist/chunk-O3NWNXDY 2.js +0 -76
  233. package/dist/chunk-QPI2CCBA.js.map +0 -1
  234. package/dist/chunk-SMJZMKYN.js.map +0 -1
  235. package/dist/chunk-TDNI6ZWL.js 2.map +0 -1
  236. package/dist/chunk-TDNI6ZWL.js.map +0 -1
  237. package/dist/chunk-VKOCWWVY.js.map +0 -1
  238. package/dist/chunk-WP5I5GLN 2.js +0 -1564
  239. package/dist/index 3.js +0 -856
  240. package/dist/providers 3.js +0 -38
  241. package/dist/providers.js 3.map +0 -1
  242. package/dist/types 3.js +0 -128
  243. package/dist/types.js 3.map +0 -1
  244. package/dist/useInactivityTracker-MRUU55XI.js 3.map +0 -1
  245. package/dist/utils.js 3.map +0 -1
  246. package/dist/validation 3.js +0 -479
  247. package/src/styles/semantic.css +0 -24
  248. /package/dist/{DataTable-DGZDJUYM.js.map → DataTable-WTS4IRF2.js.map} +0 -0
  249. /package/dist/{UnifiedAuthProvider-UACKFATV.js.map → UnifiedAuthProvider-6C47WIML.js.map} +0 -0
  250. /package/dist/{chunk-D6BOFXYR.js.map → chunk-35ZDPMBM.js.map} +0 -0
  251. /package/dist/{chunk-CGURJ27Z.js 2.map → chunk-4MXVZVNS.js.map} +0 -0
  252. /package/dist/{chunk-ZYJ6O5CA.js.map → chunk-C43QIDN3.js.map} +0 -0
  253. /package/dist/{chunk-B4GZ2BXO.js.map → chunk-NZGLXZGP.js.map} +0 -0
  254. /package/dist/{chunk-NZ32EONV.js 2.map → chunk-QWNJCQXZ.js.map} +0 -0
@@ -137,15 +137,6 @@ declare class EventService extends BaseService implements IEventService {
137
137
  protected doInitialize(): Promise<void>;
138
138
  protected doCleanup(): void;
139
139
  private fetchEvents;
140
- /**
141
- * Parse and normalize event_colours to PaletteData (supports ev-* keys and string JSON)
142
- */
143
- private parseAndNormalizeEventColours;
144
- /**
145
- * Apply or clear runtime theme variables based on the current selected event's colours
146
- * @param skipTheming - If true, skip theme application (useful during session restoration/login)
147
- */
148
- private updateThemeForSelectedEvent;
149
140
  getNextEventByDate(events?: Event[]): Event | null;
150
141
  }
151
142
 
@@ -54,8 +54,8 @@ import {
54
54
  sortHierarchicalDataWithSorting,
55
55
  validateHierarchicalData,
56
56
  validatePaginationConfig
57
- } from "./chunk-HFBOFZ3Z.js";
58
- import "./chunk-D6BOFXYR.js";
57
+ } from "./chunk-DHMFMXFV.js";
58
+ import "./chunk-35ZDPMBM.js";
59
59
  import "./chunk-WP5I5GLN.js";
60
60
  import "./chunk-3DBFLLLU.js";
61
61
  import {
@@ -76,14 +76,13 @@ import {
76
76
  throttle,
77
77
  useDataTablePerformance
78
78
  } from "./chunk-GKHF54DI.js";
79
- import "./chunk-CGURJ27Z.js";
80
- import "./chunk-ZYJ6O5CA.js";
81
- import "./chunk-BHWIUEYH.js";
82
- import "./chunk-PYUXFQJ3.js";
79
+ import "./chunk-4MXVZVNS.js";
80
+ import "./chunk-C43QIDN3.js";
81
+ import "./chunk-ZBLK676C.js";
83
82
  import "./chunk-JCQZ6LA7.js";
83
+ import "./chunk-PYUXFQJ3.js";
84
84
  import "./chunk-BDZUMRBD.js";
85
85
  import "./chunk-UJI6WSMD.js";
86
- import "./chunk-SMJZMKYN.js";
87
86
  import "./chunk-PLDDJCW6.js";
88
87
  export {
89
88
  ActionButtons,
@@ -158,4 +157,4 @@ export {
158
157
  validateHierarchicalData,
159
158
  validatePaginationConfig
160
159
  };
161
- //# sourceMappingURL=DataTable-DGZDJUYM.js.map
160
+ //# sourceMappingURL=DataTable-WTS4IRF2.js.map
@@ -3212,9 +3212,15 @@ interface PublicPageLayoutProps {
3212
3212
  children: ReactNode;
3213
3213
  /** Optional event data - if not provided, will be fetched by parent component */
3214
3214
  event?: Event | null;
3215
+ /** Loading state - if true, shows loading spinner */
3216
+ isLoading?: boolean;
3217
+ /** Error state - if provided, shows error message */
3218
+ error?: Error | null;
3219
+ /** Function to retry loading event data */
3220
+ refetch?: () => Promise<void> | void;
3215
3221
  /** Whether to show the footer (default: true) */
3216
3222
  showFooter?: boolean;
3217
- /** Custom CSS classes for the layout */
3223
+ /** @deprecated Custom CSS classes for the layout - no longer used as wrapper div was removed */
3218
3224
  className?: string;
3219
3225
  /** Custom error fallback component */
3220
3226
  errorFallback?: React__default.ComponentType<{
@@ -3229,6 +3235,8 @@ interface PublicPageLayoutProps {
3229
3235
  customFooter?: ReactNode;
3230
3236
  /** Whether to show event validation errors (default: true) */
3231
3237
  showValidationErrors?: boolean;
3238
+ /** Custom loading message */
3239
+ loadingMessage?: string;
3232
3240
  }
3233
3241
  /**
3234
3242
  * Layout component for public pages that don't require authentication
@@ -3236,10 +3244,13 @@ interface PublicPageLayoutProps {
3236
3244
  * This component provides a consistent structure for public event pages
3237
3245
  * with event-specific branding, error handling, and loading states.
3238
3246
  *
3247
+ * Automatically applies event colors from the event's event_colours field
3248
+ * when an event is provided, ensuring consistent theming across public pages.
3249
+ *
3239
3250
  * @param props - Layout configuration and content
3240
3251
  * @returns React element with complete public page layout
3241
3252
  */
3242
- declare function PublicPageLayout({ eventCode, children, event, showFooter, className, errorFallback: ErrorFallback, loadingFallback: LoadingFallback, customHeader, customFooter, showValidationErrors }: PublicPageLayoutProps): react_jsx_runtime.JSX.Element;
3253
+ declare function PublicPageLayout({ eventCode, children, event, isLoading, error, refetch, showFooter, className, errorFallback: ErrorFallback, loadingFallback: LoadingFallback, customHeader, customFooter, showValidationErrors, loadingMessage }: PublicPageLayoutProps): react_jsx_runtime.JSX.Element;
3243
3254
  /**
3244
3255
  * Hook for accessing public page context
3245
3256
  * Provides access to event data and layout state within public pages
@@ -3275,10 +3286,16 @@ interface PublicPageHeaderProps {
3275
3286
  className?: string;
3276
3287
  /** Custom content to display in the header */
3277
3288
  children?: ReactNode;
3278
- /** Custom app logo component */
3289
+ /** Custom app logo component (overrides logoUrl and auto-generated path) */
3279
3290
  customAppLogo?: ReactNode;
3280
3291
  /** Custom event logo component */
3281
3292
  customEventLogo?: ReactNode;
3293
+ /** URL to the app logo image (overrides auto-generated path, but customAppLogo takes precedence) */
3294
+ logoUrl?: string;
3295
+ /** Alt text for the app logo (defaults to appName from useAppConfig) */
3296
+ logoAlt?: string;
3297
+ /** URL to navigate to when app logo is clicked */
3298
+ logoHref?: string;
3282
3299
  }
3283
3300
  /**
3284
3301
  * Header component for public pages with event-specific branding
@@ -3286,10 +3303,19 @@ interface PublicPageHeaderProps {
3286
3303
  * This component displays the app logo, event logo, and event information
3287
3304
  * in a clean, accessible layout suitable for public pages.
3288
3305
  *
3306
+ * Logo handling follows a priority order:
3307
+ * 1. customAppLogo prop (if provided) - highest priority
3308
+ * 2. logoUrl prop (if provided) - direct URL override
3309
+ * 3. Auto-generated path from appName via useAppConfig() - convention-based
3310
+ * 4. Default SVG fallback - lowest priority
3311
+ *
3312
+ * The logo can be made clickable by providing the logoHref prop, which will
3313
+ * wrap the logo in a Link component for navigation.
3314
+ *
3289
3315
  * @param props - Header configuration and content
3290
3316
  * @returns React element with public page header
3291
3317
  */
3292
- declare function PublicPageHeader({ event, eventCode, title, description, showEventLogo, showAppLogo, className, children, customAppLogo, customEventLogo }: PublicPageHeaderProps): react_jsx_runtime.JSX.Element;
3318
+ declare function PublicPageHeader({ event, eventCode, title, description, showEventLogo, showAppLogo, className, children, customAppLogo, customEventLogo, logoUrl, logoAlt, logoHref }: PublicPageHeaderProps): react_jsx_runtime.JSX.Element;
3293
3319
 
3294
3320
  interface PublicPageContextType {
3295
3321
  isPublicPage: true;
@@ -1,17 +1,16 @@
1
1
  import {
2
2
  init_UnifiedAuthProvider
3
- } from "./chunk-ZYJ6O5CA.js";
3
+ } from "./chunk-C43QIDN3.js";
4
4
  import {
5
5
  UnifiedAuthProvider,
6
6
  useUnifiedAuth
7
- } from "./chunk-BHWIUEYH.js";
7
+ } from "./chunk-ZBLK676C.js";
8
8
  import "./chunk-BDZUMRBD.js";
9
9
  import "./chunk-UJI6WSMD.js";
10
- import "./chunk-SMJZMKYN.js";
11
10
  import "./chunk-PLDDJCW6.js";
12
11
  init_UnifiedAuthProvider();
13
12
  export {
14
13
  UnifiedAuthProvider,
15
14
  useUnifiedAuth
16
15
  };
17
- //# sourceMappingURL=UnifiedAuthProvider-UACKFATV.js.map
16
+ //# sourceMappingURL=UnifiedAuthProvider-6C47WIML.js.map
@@ -11,11 +11,11 @@ import {
11
11
  init_useOrganisations,
12
12
  useEvents,
13
13
  useOrganisations
14
- } from "./chunk-CGURJ27Z.js";
14
+ } from "./chunk-4MXVZVNS.js";
15
15
  import {
16
16
  init_UnifiedAuthProvider,
17
17
  useUnifiedAuth
18
- } from "./chunk-BHWIUEYH.js";
18
+ } from "./chunk-ZBLK676C.js";
19
19
  import {
20
20
  getCurrentAppName
21
21
  } from "./chunk-JCQZ6LA7.js";
@@ -817,4 +817,4 @@ export {
817
817
  useCachedPermissions,
818
818
  useRoleManagement
819
819
  };
820
- //# sourceMappingURL=chunk-D6BOFXYR.js.map
820
+ //# sourceMappingURL=chunk-35ZDPMBM.js.map
@@ -3,7 +3,7 @@ import {
3
3
  init_useOrganisationService,
4
4
  useEventService2 as useEventService,
5
5
  useOrganisationService2 as useOrganisationService
6
- } from "./chunk-BHWIUEYH.js";
6
+ } from "./chunk-ZBLK676C.js";
7
7
  import {
8
8
  __esm
9
9
  } from "./chunk-PLDDJCW6.js";
@@ -57,4 +57,4 @@ export {
57
57
  init_useOrganisations,
58
58
  useEvents
59
59
  };
60
- //# sourceMappingURL=chunk-CGURJ27Z.js.map
60
+ //# sourceMappingURL=chunk-4MXVZVNS.js.map
@@ -2,7 +2,7 @@ import {
2
2
  UnifiedAuthProvider,
3
3
  init_UnifiedAuthProvider,
4
4
  useUnifiedAuth
5
- } from "./chunk-BHWIUEYH.js";
5
+ } from "./chunk-ZBLK676C.js";
6
6
  import {
7
7
  __esm,
8
8
  __export
@@ -24,4 +24,4 @@ export {
24
24
  UnifiedAuthProvider_exports,
25
25
  init_UnifiedAuthProvider2 as init_UnifiedAuthProvider
26
26
  };
27
- //# sourceMappingURL=chunk-ZYJ6O5CA.js.map
27
+ //# sourceMappingURL=chunk-C43QIDN3.js.map
@@ -1,9 +1,4 @@
1
- import {
2
- init_runtime
3
- } from "./chunk-SMJZMKYN.js";
4
-
5
1
  // src/styles/index.ts
6
- init_runtime();
7
2
  var styleConfig = {
8
3
  core: {
9
4
  path: "./core.css",
@@ -22,4 +17,4 @@ export {
22
17
  getStylePath,
23
18
  getAllStylePaths
24
19
  };
25
- //# sourceMappingURL=chunk-VKOCWWVY.js.map
20
+ //# sourceMappingURL=chunk-CX5M4ZAG.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/styles/index.ts"],"sourcesContent":["/**\n * @file Styles Index\n * @package @jmruthers/pace-core\n * @module Styles\n * @since 2.0.0\n * \n * Central export for all pace-core styles.\n * This file provides easy access to all CSS files for consuming applications.\n * \n * @example\n * ```tsx\n * // Import the core CSS file\n * import '@jmruthers/pace-core/src/styles/core.css';\n * ```\n * \n * @example\n * ```tsx\n * // Import theming runtime\n * import { applyPalette, clearPalette } from '@jmruthers/pace-core/theming/runtime';\n * ```\n */\n\n// Note: CSS files are available at runtime via package exports\n// Import them using the individual file paths\n\n// Type definitions for style imports\nexport interface StyleImport {\n default: string;\n}\n\n// Style configuration\nexport const styleConfig = {\n core: {\n path: './core.css',\n description: 'Complete CSS foundation including base styles, theme mappings, fonts, resets, and neutral tokens'\n }\n} as const;\n\n// Helper function to get style paths\nexport function getStylePath(style: keyof typeof styleConfig): string {\n return styleConfig[style].path;\n}\n\n// Helper function to get all style paths\nexport function getAllStylePaths(): string[] {\n return Object.values(styleConfig).map(config => config.path);\n}\n\n// Re-export theming runtime for convenience\nexport { applyPalette, clearPalette, generateSSRThemeCSS, isDynamicThemingActive, getCurrentThemeData } from '../theming/runtime';\nexport type { PaletteData, ColorPalette, ColorShade } from '../theming/runtime';\n"],"mappings":";;;;;AAiDA;AAlBO,IAAM,cAAc;AAAA,EACzB,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AACF;AAGO,SAAS,aAAa,OAAyC;AACpE,SAAO,YAAY,KAAK,EAAE;AAC5B;AAGO,SAAS,mBAA6B;AAC3C,SAAO,OAAO,OAAO,WAAW,EAAE,IAAI,YAAU,OAAO,IAAI;AAC7D;","names":[]}
1
+ {"version":3,"sources":["../src/styles/index.ts"],"sourcesContent":["/**\n * @file Styles Index\n * @package @jmruthers/pace-core\n * @module Styles\n * @since 2.0.0\n * \n * Central export for all pace-core styles.\n * This file provides easy access to all CSS files for consuming applications.\n * \n * @example\n * ```tsx\n * // Import the core CSS file\n * import '@jmruthers/pace-core/src/styles/core.css';\n * ```\n * \n * @example\n * ```tsx\n * // Import theming runtime\n * import { applyPalette, clearPalette } from '@jmruthers/pace-core/theming/runtime';\n * ```\n */\n\n// Note: CSS files are available at runtime via package exports\n// Import them using the individual file paths\n\n// Type definitions for style imports\nexport interface StyleImport {\n default: string;\n}\n\n// Style configuration\nexport const styleConfig = {\n core: {\n path: './core.css',\n description: 'Complete CSS foundation including base styles, theme mappings, fonts, resets, and neutral tokens'\n }\n} as const;\n\n// Helper function to get style paths\nexport function getStylePath(style: keyof typeof styleConfig): string {\n return styleConfig[style].path;\n}\n\n// Helper function to get all style paths\nexport function getAllStylePaths(): string[] {\n return Object.values(styleConfig).map(config => config.path);\n}\n\n// Re-export theming runtime for convenience\nexport { applyPalette, clearPalette, generateSSRThemeCSS, isDynamicThemingActive, getCurrentThemeData, parseAndNormalizeEventColours } from '../theming/runtime';\nexport type { PaletteData, ColorPalette, ColorShade } from '../theming/runtime';\n"],"mappings":";AA+BO,IAAM,cAAc;AAAA,EACzB,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AACF;AAGO,SAAS,aAAa,OAAyC;AACpE,SAAO,YAAY,KAAK,EAAE;AAC5B;AAGO,SAAS,mBAA6B;AAC3C,SAAO,OAAO,OAAO,WAAW,EAAE,IAAI,YAAU,OAAO,IAAI;AAC7D;","names":[]}