@jmruthers/pace-core 0.2.7 → 0.5.1

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 (541) hide show
  1. package/dist/{DataTable-EEUDXPE5.js → DataTable-GX3XERFJ.js} +8 -4
  2. package/dist/{DataTable-C1AEm9Cx.d.ts → DataTable-ltTFXHS3.d.ts} +3 -1
  3. package/dist/{chunk-VYG4AXYW.js → chunk-5EL3KHOQ.js} +2 -2
  4. package/dist/{chunk-ETEJVKYK.js → chunk-6CR3MRZN.js} +1426 -62
  5. package/dist/chunk-6CR3MRZN.js.map +1 -0
  6. package/dist/chunk-AUE24LVR.js +268 -0
  7. package/dist/chunk-AUE24LVR.js.map +1 -0
  8. package/dist/chunk-COBPIXXQ.js +379 -0
  9. package/dist/chunk-COBPIXXQ.js.map +1 -0
  10. package/dist/{chunk-EWKPTNPO.js → chunk-GSNM5D6H.js} +388 -86
  11. package/dist/chunk-GSNM5D6H.js.map +1 -0
  12. package/dist/{chunk-2V3Y6YBC.js → chunk-OEGRKULD.js} +1 -42
  13. package/dist/chunk-OEGRKULD.js.map +1 -0
  14. package/dist/chunk-OYRY44Q2.js +62 -0
  15. package/dist/chunk-OYRY44Q2.js.map +1 -0
  16. package/dist/{chunk-RRUYHORU.js → chunk-T3XIA4AJ.js} +297 -433
  17. package/dist/chunk-T3XIA4AJ.js.map +1 -0
  18. package/dist/{chunk-HEMJ4SUJ.js → chunk-TGDCLPP2.js} +11 -7
  19. package/dist/{chunk-HEMJ4SUJ.js.map → chunk-TGDCLPP2.js.map} +1 -1
  20. package/dist/{chunk-HNDFPXUU.js → chunk-U6JDHVC2.js} +6 -4
  21. package/dist/{chunk-HNDFPXUU.js.map → chunk-U6JDHVC2.js.map} +1 -1
  22. package/dist/{chunk-TIVL4UQ7.js → chunk-XJK2J4N6.js} +6 -4
  23. package/dist/{chunk-TIVL4UQ7.js.map → chunk-XJK2J4N6.js.map} +1 -1
  24. package/dist/components.d.ts +2 -2
  25. package/dist/components.js +21 -20
  26. package/dist/components.js.map +1 -1
  27. package/dist/hooks.d.ts +1 -1
  28. package/dist/hooks.js +7 -7
  29. package/dist/index.d.ts +2 -2
  30. package/dist/index.js +26 -25
  31. package/dist/index.js.map +1 -1
  32. package/dist/providers.js +8 -7
  33. package/dist/rbac/index.d.ts +806 -806
  34. package/dist/rbac/index.js +937 -1179
  35. package/dist/rbac/index.js.map +1 -1
  36. package/dist/{types-DiRQsGJs.d.ts → types-BRDU7N6w.d.ts} +12 -1
  37. package/dist/utils.d.ts +2 -2
  38. package/dist/utils.js +6 -6
  39. package/docs/api/classes/ErrorBoundary.md +1 -1
  40. package/docs/api/classes/PublicErrorBoundary.md +1 -1
  41. package/docs/api/interfaces/AggregateConfig.md +4 -4
  42. package/docs/api/interfaces/ButtonProps.md +1 -1
  43. package/docs/api/interfaces/CardProps.md +1 -1
  44. package/docs/api/interfaces/ColorPalette.md +1 -1
  45. package/docs/api/interfaces/ColorShade.md +1 -1
  46. package/docs/api/interfaces/DataTableAction.md +21 -8
  47. package/docs/api/interfaces/DataTableColumn.md +1 -1
  48. package/docs/api/interfaces/DataTableProps.md +46 -33
  49. package/docs/api/interfaces/DataTableToolbarButton.md +7 -7
  50. package/docs/api/interfaces/EmptyStateConfig.md +5 -5
  51. package/docs/api/interfaces/EventContextType.md +1 -1
  52. package/docs/api/interfaces/EventLogoProps.md +1 -1
  53. package/docs/api/interfaces/EventProviderProps.md +1 -1
  54. package/docs/api/interfaces/FileSizeLimits.md +1 -1
  55. package/docs/api/interfaces/FileUploadProps.md +1 -1
  56. package/docs/api/interfaces/FooterProps.md +1 -1
  57. package/docs/api/interfaces/InactivityWarningModalProps.md +1 -1
  58. package/docs/api/interfaces/InputProps.md +1 -1
  59. package/docs/api/interfaces/LabelProps.md +1 -1
  60. package/docs/api/interfaces/LoginFormProps.md +1 -1
  61. package/docs/api/interfaces/NavigationItem.md +1 -1
  62. package/docs/api/interfaces/NavigationMenuProps.md +1 -1
  63. package/docs/api/interfaces/Organisation.md +1 -1
  64. package/docs/api/interfaces/OrganisationContextType.md +1 -1
  65. package/docs/api/interfaces/OrganisationMembership.md +2 -2
  66. package/docs/api/interfaces/OrganisationProviderProps.md +1 -1
  67. package/docs/api/interfaces/OrganisationSecurityError.md +1 -1
  68. package/docs/api/interfaces/PaceAppLayoutProps.md +1 -1
  69. package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
  70. package/docs/api/interfaces/PaletteData.md +1 -1
  71. package/docs/api/interfaces/PublicErrorBoundaryProps.md +1 -1
  72. package/docs/api/interfaces/PublicErrorBoundaryState.md +1 -1
  73. package/docs/api/interfaces/PublicLoadingSpinnerProps.md +1 -1
  74. package/docs/api/interfaces/PublicPageFooterProps.md +1 -1
  75. package/docs/api/interfaces/PublicPageHeaderProps.md +1 -1
  76. package/docs/api/interfaces/PublicPageLayoutProps.md +1 -1
  77. package/docs/api/interfaces/StorageConfig.md +1 -1
  78. package/docs/api/interfaces/StorageFileInfo.md +1 -1
  79. package/docs/api/interfaces/StorageFileMetadata.md +1 -1
  80. package/docs/api/interfaces/StorageListOptions.md +1 -1
  81. package/docs/api/interfaces/StorageListResult.md +1 -1
  82. package/docs/api/interfaces/StorageUploadOptions.md +1 -1
  83. package/docs/api/interfaces/StorageUploadResult.md +1 -1
  84. package/docs/api/interfaces/StorageUrlOptions.md +1 -1
  85. package/docs/api/interfaces/StyleImport.md +1 -1
  86. package/docs/api/interfaces/ToastActionElement.md +1 -1
  87. package/docs/api/interfaces/ToastProps.md +1 -1
  88. package/docs/api/interfaces/UnifiedAuthContextType.md +1 -1
  89. package/docs/api/interfaces/UnifiedAuthProviderProps.md +1 -1
  90. package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
  91. package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
  92. package/docs/api/interfaces/UsePublicEventLogoOptions.md +1 -1
  93. package/docs/api/interfaces/UsePublicEventLogoReturn.md +1 -1
  94. package/docs/api/interfaces/UsePublicEventOptions.md +1 -1
  95. package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
  96. package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
  97. package/docs/api/interfaces/UserEventAccess.md +1 -1
  98. package/docs/api/interfaces/UserMenuProps.md +1 -1
  99. package/docs/api/interfaces/UserProfile.md +1 -1
  100. package/docs/api/modules.md +3 -3
  101. package/package.json +5 -2
  102. package/src/__tests__/REBUILD_PLAN.md +223 -0
  103. package/src/__tests__/TESTING_GUIDELINES.md +341 -0
  104. package/src/__tests__/fixtures/mocks.ts +93 -0
  105. package/src/__tests__/helpers/component-test-utils.tsx +145 -0
  106. package/src/__tests__/helpers/test-utils.tsx +117 -0
  107. package/src/__tests__/integration/UserProfile.test.tsx +128 -0
  108. package/src/__tests__/setup.ts +37 -225
  109. package/src/__tests__/templates/component.test.template.tsx +97 -75
  110. package/src/__tests__/templates/hook.test.template.ts +173 -0
  111. package/src/__tests__/types/test.types.ts +106 -0
  112. package/src/components/Alert/Alert.test.tsx +496 -0
  113. package/src/components/Avatar/Avatar.test.tsx +484 -0
  114. package/src/components/Button/Button.test.tsx +662 -0
  115. package/src/components/Card/Card.test.tsx +593 -0
  116. package/src/components/Checkbox/Checkbox.test.tsx +461 -0
  117. package/src/components/DataTable/DataTable.tsx +9 -1
  118. package/src/components/DataTable/components/AccessDeniedPage.tsx +168 -0
  119. package/src/components/DataTable/components/ActionButtons.tsx +18 -1
  120. package/src/components/DataTable/components/DataTableCore.tsx +97 -11
  121. package/src/components/DataTable/components/DataTableToolbar.tsx +22 -10
  122. package/src/components/DataTable/components/UnifiedTableBody.tsx +33 -4
  123. package/src/components/DataTable/examples/HierarchicalActionsExample.tsx +1 -0
  124. package/src/components/DataTable/examples/HierarchicalExample.tsx +3 -0
  125. package/src/components/DataTable/examples/InitialPageSizeExample.tsx +3 -0
  126. package/src/components/DataTable/examples/PerformanceExample.tsx +3 -0
  127. package/src/components/DataTable/types.ts +39 -1
  128. package/src/components/Dialog/Dialog.test.tsx +1139 -0
  129. package/src/components/ErrorBoundary/ErrorBoundary.test.tsx +752 -0
  130. package/src/components/FileUpload/FileUpload.test.tsx +665 -0
  131. package/src/hooks/useCounter.test.ts +135 -0
  132. package/src/rbac/index.ts +3 -3
  133. package/dist/chunk-2V3Y6YBC.js.map +0 -1
  134. package/dist/chunk-BEZRLNK3.js +0 -1744
  135. package/dist/chunk-BEZRLNK3.js.map +0 -1
  136. package/dist/chunk-ETEJVKYK.js.map +0 -1
  137. package/dist/chunk-EWKPTNPO.js.map +0 -1
  138. package/dist/chunk-OHXGNT3K.js +0 -21
  139. package/dist/chunk-OHXGNT3K.js.map +0 -1
  140. package/dist/chunk-RRUYHORU.js.map +0 -1
  141. package/src/__tests__/README.md +0 -404
  142. package/src/__tests__/debug-provider.unit.test.tsx +0 -67
  143. package/src/__tests__/e2e/workflows.test.tsx +0 -373
  144. package/src/__tests__/hybridPermissions.unit.test.tsx +0 -474
  145. package/src/__tests__/index.integration.test.ts +0 -491
  146. package/src/__tests__/mocks/MockAuthProvider-standalone.tsx +0 -47
  147. package/src/__tests__/mocks/MockAuthProvider.tsx +0 -63
  148. package/src/__tests__/mocks/enhancedSupabaseMock.ts +0 -252
  149. package/src/__tests__/mocks/index.test.ts +0 -23
  150. package/src/__tests__/mocks/index.ts +0 -16
  151. package/src/__tests__/mocks/mockAuth.ts +0 -155
  152. package/src/__tests__/mocks/mockSupabase.ts +0 -83
  153. package/src/__tests__/mocks/mockSupabaseClient.ts +0 -63
  154. package/src/__tests__/mocks/providers.tsx +0 -22
  155. package/src/__tests__/patterns/__tests__/testPatterns.test.ts +0 -394
  156. package/src/__tests__/patterns/testPatterns.ts +0 -124
  157. package/src/__tests__/performance/componentPerformance.performance.test.ts +0 -27
  158. package/src/__tests__/performance/index.ts +0 -24
  159. package/src/__tests__/performance/performanceValidation.performance.test.ts +0 -15
  160. package/src/__tests__/security/security.unit.test.tsx +0 -7
  161. package/src/__tests__/security/securityValidation.security.test.tsx +0 -153
  162. package/src/__tests__/setupTests.d.ts +0 -1
  163. package/src/__tests__/shared/componentTestUtils.tsx +0 -475
  164. package/src/__tests__/shared/errorHandlingTestUtils.ts +0 -107
  165. package/src/__tests__/shared/index.ts +0 -81
  166. package/src/__tests__/shared/integrationTestUtils.tsx +0 -375
  167. package/src/__tests__/shared/performanceTestUtils.tsx +0 -476
  168. package/src/__tests__/shared/testUtils.optimized.tsx +0 -685
  169. package/src/__tests__/simple.test.tsx +0 -20
  170. package/src/__tests__/test-utils/dataFactories.ts +0 -60
  171. package/src/__tests__/test-utils/index.ts +0 -6
  172. package/src/__tests__/typeSafety.unit.test.ts +0 -65
  173. package/src/__tests__/unifiedAuth.unit.test.tsx +0 -151
  174. package/src/__tests__/utils/accessibilityHelpers.ts +0 -254
  175. package/src/__tests__/utils/assertions.ts +0 -50
  176. package/src/__tests__/utils/deterministicHelpers.ts +0 -31
  177. package/src/__tests__/utils/edgeCaseConfig.test.ts +0 -75
  178. package/src/__tests__/utils/edgeCaseConfig.ts +0 -98
  179. package/src/__tests__/utils/mockHelpers.ts +0 -149
  180. package/src/__tests__/utils/mockLoader.ts +0 -101
  181. package/src/__tests__/utils/performanceHelpers.ts +0 -55
  182. package/src/__tests__/utils/performanceTestHelpers.ts +0 -68
  183. package/src/__tests__/utils/testDataFactories.ts +0 -28
  184. package/src/__tests__/utils/testIsolation.ts +0 -67
  185. package/src/__tests__/utils/visualTestHelpers.ts +0 -20
  186. package/src/__tests__/visual/__snapshots__/componentSnapshots.visual.test.tsx.snap +0 -68
  187. package/src/__tests__/visual/__snapshots__/componentVisuals.visual.test.tsx.snap +0 -14
  188. package/src/__tests__/visual/__snapshots__/visualRegression.test.tsx.snap +0 -217
  189. package/src/__tests__/visual/__snapshots__/visualRegression.visual.test.tsx.snap +0 -24
  190. package/src/__tests__/visual/componentSnapshots.visual.test.tsx +0 -33
  191. package/src/__tests__/visual/componentVisuals.visual.test.tsx +0 -12
  192. package/src/__tests__/visual/visualRegression.visual.test.tsx +0 -20
  193. package/src/components/Alert/__tests__/Alert.unit.test.tsx +0 -381
  194. package/src/components/Avatar/__tests__/Avatar.unit.test.tsx +0 -232
  195. package/src/components/Button/__tests__/Button.accessibility.test.tsx +0 -131
  196. package/src/components/Button/__tests__/Button.comprehensive.test.tsx +0 -721
  197. package/src/components/Button/__tests__/Button.unit.test.tsx +0 -189
  198. package/src/components/Button/__tests__/EventSelector.integration.test.tsx +0 -285
  199. package/src/components/Card/__tests__/Card.accessibility.test.tsx +0 -394
  200. package/src/components/Card/__tests__/Card.comprehensive.test.tsx +0 -599
  201. package/src/components/Card/__tests__/Card.integration.test.tsx +0 -673
  202. package/src/components/Card/__tests__/Card.performance.test.tsx +0 -546
  203. package/src/components/Card/__tests__/Card.unit.test.tsx +0 -330
  204. package/src/components/Card/__tests__/Card.visual.test.tsx +0 -599
  205. package/src/components/Card/__tests__/README.md +0 -211
  206. package/src/components/Checkbox/__tests__/Checkbox.unit.test.tsx +0 -520
  207. package/src/components/DataTable/__tests__/DataTable.errorHandling.test.tsx +0 -251
  208. package/src/components/DataTable/__tests__/DataTable.hierarchical.test.tsx +0 -680
  209. package/src/components/DataTable/__tests__/DataTable.infinite-loop.test.tsx +0 -323
  210. package/src/components/DataTable/__tests__/DataTable.integration.test.tsx +0 -716
  211. package/src/components/DataTable/__tests__/DataTable.performance.test.tsx +0 -589
  212. package/src/components/DataTable/__tests__/DataTable.permissions.test.tsx +0 -316
  213. package/src/components/DataTable/__tests__/DataTable.regressionFixes.test.tsx +0 -546
  214. package/src/components/DataTable/__tests__/DataTable.selection.controlled.test.tsx +0 -386
  215. package/src/components/DataTable/__tests__/DataTable.selection.test.tsx +0 -338
  216. package/src/components/DataTable/__tests__/DataTable.sorting.test.tsx +0 -321
  217. package/src/components/DataTable/__tests__/DataTable.userWorkflows.test.tsx +0 -320
  218. package/src/components/DataTable/__tests__/DataTable.workflowValidation.test.tsx +0 -583
  219. package/src/components/DataTable/__tests__/DataTable.workflows.test.tsx +0 -711
  220. package/src/components/DataTable/__tests__/performance-regression.test.tsx +0 -777
  221. package/src/components/DataTable/__tests__/performance.test.tsx +0 -365
  222. package/src/components/DataTable/components/__tests__/ActionButtons.unit.test.tsx +0 -150
  223. package/src/components/DataTable/components/__tests__/BulkOperationsDropdown.test.tsx +0 -224
  224. package/src/components/DataTable/components/__tests__/ColumnVisibilityDropdown.unit.test.tsx +0 -244
  225. package/src/components/DataTable/components/__tests__/DataTable.accessibility.test.tsx +0 -629
  226. package/src/components/DataTable/components/__tests__/DataTable.integration.test.tsx +0 -470
  227. package/src/components/DataTable/components/__tests__/DataTable.performance.test.tsx +0 -160
  228. package/src/components/DataTable/components/__tests__/DataTable.real.test.tsx +0 -251
  229. package/src/components/DataTable/components/__tests__/DataTable.security.test.tsx +0 -171
  230. package/src/components/DataTable/components/__tests__/DataTable.unit.test.tsx +0 -290
  231. package/src/components/DataTable/components/__tests__/DataTableBody.unit.test.tsx +0 -147
  232. package/src/components/DataTable/components/__tests__/DataTableErrorBoundary.unit.test.tsx +0 -182
  233. package/src/components/DataTable/components/__tests__/DataTableModals.unit.test.tsx +0 -123
  234. package/src/components/DataTable/components/__tests__/EditableRow.unit.test.tsx +0 -660
  235. package/src/components/DataTable/components/__tests__/EmptyState.unit.test.tsx +0 -256
  236. package/src/components/DataTable/components/__tests__/ExpandButton.test.tsx +0 -498
  237. package/src/components/DataTable/components/__tests__/FilterRow.unit.test.tsx +0 -112
  238. package/src/components/DataTable/components/__tests__/FilteringToggle.unit.test.tsx +0 -133
  239. package/src/components/DataTable/components/__tests__/GroupHeader.unit.test.tsx +0 -172
  240. package/src/components/DataTable/components/__tests__/GroupingDropdown.unit.test.tsx +0 -222
  241. package/src/components/DataTable/components/__tests__/ImportModal.unit.test.tsx +0 -780
  242. package/src/components/DataTable/components/__tests__/LoadingState.unit.test.tsx +0 -65
  243. package/src/components/DataTable/components/__tests__/PaginationControls.unit.test.tsx +0 -634
  244. package/src/components/DataTable/components/__tests__/StateComponents.unit.test.tsx +0 -48
  245. package/src/components/DataTable/components/__tests__/UnifiedTableBody.hierarchical.test.tsx +0 -541
  246. package/src/components/DataTable/components/__tests__/ViewRowModal.unit.test.tsx +0 -228
  247. package/src/components/DataTable/components/__tests__/VirtualizedDataTable.unit.test.tsx +0 -568
  248. package/src/components/DataTable/core/__tests__/ActionManager.unit.test.ts +0 -405
  249. package/src/components/DataTable/core/__tests__/ArchitectureIntegration.unit.test.tsx +0 -445
  250. package/src/components/DataTable/core/__tests__/ColumnFactory.unit.test.ts +0 -288
  251. package/src/components/DataTable/core/__tests__/ColumnManager.unit.test.ts +0 -623
  252. package/src/components/DataTable/core/__tests__/DataManager.unit.test.ts +0 -431
  253. package/src/components/DataTable/core/__tests__/DataTableContext.unit.test.tsx +0 -433
  254. package/src/components/DataTable/core/__tests__/LocalDataAdapter.unit.test.ts +0 -422
  255. package/src/components/DataTable/core/__tests__/PluginRegistry.unit.test.tsx +0 -207
  256. package/src/components/DataTable/core/__tests__/StateManager.unit.test.ts +0 -278
  257. package/src/components/DataTable/examples/__tests__/PerformanceExample.unit.test.tsx +0 -281
  258. package/src/components/DataTable/hooks/__tests__/useColumnOrderPersistence.unit.test.ts +0 -407
  259. package/src/components/DataTable/hooks/__tests__/useColumnReordering.unit.test.ts +0 -679
  260. package/src/components/DataTable/utils/__tests__/debugTools.unit.test.ts +0 -267
  261. package/src/components/DataTable/utils/__tests__/errorHandling.unit.test.ts +0 -467
  262. package/src/components/DataTable/utils/__tests__/exportUtils.unit.test.ts +0 -380
  263. package/src/components/DataTable/utils/__tests__/flexibleImport.unit.test.ts +0 -233
  264. package/src/components/DataTable/utils/__tests__/performanceUtils.unit.test.ts +0 -414
  265. package/src/components/Dialog/__tests__/Dialog.accessibility.test.tsx +0 -521
  266. package/src/components/Dialog/__tests__/Dialog.auto-size.example.tsx +0 -157
  267. package/src/components/Dialog/__tests__/Dialog.enhanced.test.tsx +0 -538
  268. package/src/components/Dialog/__tests__/Dialog.unit.test.tsx +0 -1373
  269. package/src/components/Dialog/examples/__tests__/SmartDialogExample.unit.test.tsx +0 -151
  270. package/src/components/Dialog/utils/__tests__/safeHtml.unit.test.ts +0 -611
  271. package/src/components/ErrorBoundary/__tests__/ErrorBoundary.accessibility.test.tsx +0 -517
  272. package/src/components/ErrorBoundary/__tests__/ErrorBoundary.integration.test.tsx +0 -572
  273. package/src/components/ErrorBoundary/__tests__/ErrorBoundary.unit.test.tsx +0 -579
  274. package/src/components/EventSelector/__tests__/EventSelector.test.tsx +0 -528
  275. package/src/components/FileUpload/__tests__/FileUpload.integration.test.tsx +0 -992
  276. package/src/components/FileUpload/__tests__/FileUpload.real.test.tsx +0 -927
  277. package/src/components/FileUpload/__tests__/FileUpload.test.tsx +0 -855
  278. package/src/components/FileUpload/__tests__/FileUpload.unit.test.tsx +0 -1311
  279. package/src/components/FileUpload/__tests__/FileUpload.unmocked.test.tsx +0 -937
  280. package/src/components/Footer/__tests__/Footer.accessibility.test.tsx +0 -359
  281. package/src/components/Footer/__tests__/Footer.integration.test.tsx +0 -353
  282. package/src/components/Footer/__tests__/Footer.performance.test.tsx +0 -309
  283. package/src/components/Footer/__tests__/Footer.unit.test.tsx +0 -309
  284. package/src/components/Footer/__tests__/Footer.visual.test.tsx +0 -335
  285. package/src/components/Form/__tests__/Form.accessibility.test.tsx +0 -820
  286. package/src/components/Form/__tests__/Form.unit.test.tsx +0 -305
  287. package/src/components/Form/__tests__/FormErrorSummary.unit.test.tsx +0 -285
  288. package/src/components/Form/__tests__/FormFieldset.unit.test.tsx +0 -241
  289. package/src/components/Header/__tests__/Header.accessibility.test.tsx +0 -382
  290. package/src/components/Header/__tests__/Header.comprehensive.test.tsx +0 -509
  291. package/src/components/Header/__tests__/Header.unit.test.tsx +0 -335
  292. package/src/components/InactivityWarningModal/InactivityWarningModal.test.tsx +0 -196
  293. package/src/components/InactivityWarningModal/__tests__/InactivityWarningModal.unit.test.tsx +0 -224
  294. package/src/components/Input/__tests__/Input.accessibility.test.tsx +0 -632
  295. package/src/components/Input/__tests__/Input.unit.test.tsx +0 -1121
  296. package/src/components/Label/__tests__/Label.accessibility.test.tsx +0 -239
  297. package/src/components/Label/__tests__/Label.unit.test.tsx +0 -331
  298. package/src/components/LoadingSpinner/__tests__/LoadingSpinner.accessibility.test.tsx +0 -116
  299. package/src/components/LoadingSpinner/__tests__/LoadingSpinner.unit.test.tsx +0 -144
  300. package/src/components/LoginForm/__tests__/LoginForm.accessibility.test.tsx +0 -201
  301. package/src/components/LoginForm/__tests__/LoginForm.unit.test.tsx +0 -119
  302. package/src/components/NavigationMenu/__tests__/NavigationMenu.accessibility.test.tsx +0 -378
  303. package/src/components/NavigationMenu/__tests__/NavigationMenu.enhanced.test.tsx +0 -768
  304. package/src/components/NavigationMenu/__tests__/NavigationMenu.integration.test.tsx +0 -576
  305. package/src/components/NavigationMenu/__tests__/NavigationMenu.performance.test.tsx +0 -585
  306. package/src/components/NavigationMenu/__tests__/NavigationMenu.real.component.test.tsx +0 -783
  307. package/src/components/NavigationMenu/__tests__/NavigationMenu.security.enhanced.test.tsx +0 -810
  308. package/src/components/NavigationMenu/__tests__/NavigationMenu.security.test.tsx +0 -494
  309. package/src/components/NavigationMenu/__tests__/NavigationMenu.unit.test.tsx +0 -331
  310. package/src/components/NavigationMenu/__tests__/NavigationMenu.userWorkflows.test.tsx +0 -347
  311. package/src/components/NavigationMenu/__tests__/NavigationMenu.workflows.test.tsx +0 -584
  312. package/src/components/OrganisationSelector/__tests__/OrganisationSelector.unit.test.tsx +0 -664
  313. package/src/components/PaceAppLayout/__tests__/PaceAppLayout.accessibility.test.tsx +0 -288
  314. package/src/components/PaceAppLayout/__tests__/PaceAppLayout.integration.test.tsx +0 -893
  315. package/src/components/PaceAppLayout/__tests__/PaceAppLayout.performance.test.tsx +0 -629
  316. package/src/components/PaceAppLayout/__tests__/PaceAppLayout.security.test.tsx +0 -782
  317. package/src/components/PaceAppLayout/__tests__/PaceAppLayout.unit.test.tsx +0 -904
  318. package/src/components/PaceLoginPage/__tests__/PaceLoginPage.accessibility.test.tsx +0 -463
  319. package/src/components/PaceLoginPage/__tests__/PaceLoginPage.integration.test.tsx +0 -586
  320. package/src/components/PaceLoginPage/__tests__/PaceLoginPage.unit.test.tsx +0 -533
  321. package/src/components/PasswordReset/__tests__/PasswordChangeForm.accessibility.test.tsx +0 -408
  322. package/src/components/PasswordReset/__tests__/PasswordChangeForm.unit.test.tsx +0 -561
  323. package/src/components/PasswordReset/__tests__/PasswordReset.integration.test.tsx +0 -304
  324. package/src/components/PasswordReset/__tests__/PasswordResetForm.accessibility.test.tsx +0 -20
  325. package/src/components/PasswordReset/__tests__/PasswordResetForm.unit.test.tsx +0 -523
  326. package/src/components/PasswordReset/__tests__/__mocks__/UnifiedAuthProvider.ts +0 -29
  327. package/src/components/Print/__tests__/Print.comprehensive.test.tsx +0 -331
  328. package/src/components/PrintButton/__tests__/PrintButton.unit.test.tsx +0 -429
  329. package/src/components/PrintButton/__tests__/PrintButtonGroup.unit.test.tsx +0 -277
  330. package/src/components/PrintButton/__tests__/PrintToolbar.unit.test.tsx +0 -264
  331. package/src/components/PrintCard/__tests__/PrintCard.unit.test.tsx +0 -233
  332. package/src/components/PrintCard/__tests__/PrintCardContent.test.tsx +0 -284
  333. package/src/components/PrintCard/__tests__/PrintCardGrid.unit.test.tsx +0 -214
  334. package/src/components/PrintCard/__tests__/PrintCardImage.unit.test.tsx +0 -264
  335. package/src/components/PrintDataTable/__tests__/PrintDataTable.unit.test.tsx +0 -361
  336. package/src/components/PrintDataTable/__tests__/PrintTableGroup.unit.test.tsx +0 -314
  337. package/src/components/PrintDataTable/__tests__/PrintTableRow.unit.test.tsx +0 -362
  338. package/src/components/PrintFooter/__tests__/PrintFooter.unit.test.tsx +0 -500
  339. package/src/components/PrintFooter/__tests__/PrintFooterContent.unit.test.tsx +0 -321
  340. package/src/components/PrintFooter/__tests__/PrintFooterInfo.unit.test.tsx +0 -335
  341. package/src/components/PrintFooter/__tests__/PrintPageNumber.unit.test.tsx +0 -340
  342. package/src/components/PrintGrid/__tests__/PrintGrid.unit.test.tsx +0 -340
  343. package/src/components/PrintGrid/__tests__/PrintGridBreakpoint.unit.test.tsx +0 -261
  344. package/src/components/PrintGrid/__tests__/PrintGridContainer.unit.test.tsx +0 -338
  345. package/src/components/PrintGrid/__tests__/PrintGridItem.unit.test.tsx +0 -338
  346. package/src/components/PrintHeader/__tests__/PrintCoverHeader.unit.test.tsx +0 -309
  347. package/src/components/PrintHeader/__tests__/PrintHeader.unit.test.tsx +0 -202
  348. package/src/components/PrintLayout/__tests__/PrintLayout.unit.test.tsx +0 -238
  349. package/src/components/PrintPageBreak/__tests__/PrintPageBreak.unit.test.tsx +0 -263
  350. package/src/components/PrintPageBreak/__tests__/PrintPageBreakGroup.unit.test.tsx +0 -239
  351. package/src/components/PrintPageBreak/__tests__/PrintPageBreakIndicator.unit.test.tsx +0 -235
  352. package/src/components/PrintSection/__tests__/PrintColumn.unit.test.tsx +0 -385
  353. package/src/components/PrintSection/__tests__/PrintDivider.unit.test.tsx +0 -373
  354. package/src/components/PrintSection/__tests__/PrintSection.unit.test.tsx +0 -390
  355. package/src/components/PrintSection/__tests__/PrintSectionContent.unit.test.tsx +0 -321
  356. package/src/components/PrintSection/__tests__/PrintSectionHeader.unit.test.tsx +0 -334
  357. package/src/components/PrintText/__tests__/PrintText.unit.test.tsx +0 -351
  358. package/src/components/Progress/__tests__/Progress.accessibility.test.tsx +0 -240
  359. package/src/components/Progress/__tests__/Progress.unit.test.tsx +0 -242
  360. package/src/components/PublicLayout/__tests__/EventLogo.test.tsx +0 -761
  361. package/src/components/PublicLayout/__tests__/PublicErrorBoundary.simplified.test.tsx +0 -228
  362. package/src/components/PublicLayout/__tests__/PublicErrorBoundary.test.tsx +0 -228
  363. package/src/components/PublicLayout/__tests__/PublicLoadingSpinner.test.tsx +0 -459
  364. package/src/components/PublicLayout/__tests__/PublicPageFooter.test.tsx +0 -362
  365. package/src/components/PublicLayout/__tests__/PublicPageHeader.test.tsx +0 -522
  366. package/src/components/PublicLayout/__tests__/PublicPageLayout.test.tsx +0 -599
  367. package/src/components/PublicLayout/__tests__/PublicPageProvider.test.tsx +0 -513
  368. package/src/components/RBAC/__tests__/PagePermissionGuard.unit.test.tsx +0 -683
  369. package/src/components/RBAC/__tests__/RBAC.integration.test.tsx +0 -573
  370. package/src/components/RBAC/__tests__/RBACGuard.unit.test.tsx +0 -467
  371. package/src/components/RBAC/__tests__/RBACProvider.accessibility.test.tsx +0 -475
  372. package/src/components/RBAC/__tests__/RBACProvider.advanced.test.tsx +0 -569
  373. package/src/components/RBAC/__tests__/RBACProvider.integration.test.tsx +0 -352
  374. package/src/components/RBAC/__tests__/RBACProvider.unit.test.tsx +0 -128
  375. package/src/components/RBAC/__tests__/RoleBasedContent.unit.test.tsx +0 -657
  376. package/src/components/Select/__tests__/SearchableSelect.unit.test.tsx +0 -437
  377. package/src/components/Select/__tests__/Select.accessibility.test.tsx +0 -1202
  378. package/src/components/Select/__tests__/Select.actual.test.tsx +0 -774
  379. package/src/components/Select/__tests__/Select.comprehensive.test.tsx +0 -837
  380. package/src/components/Select/__tests__/Select.enhanced.test.tsx +0 -1101
  381. package/src/components/Select/__tests__/Select.integration.test.tsx +0 -772
  382. package/src/components/Select/__tests__/Select.performance.test.tsx +0 -695
  383. package/src/components/Select/__tests__/Select.real-world.test.tsx +0 -1046
  384. package/src/components/Select/__tests__/Select.search-algorithms.test.tsx +0 -968
  385. package/src/components/Select/__tests__/Select.unit.test.tsx +0 -647
  386. package/src/components/Select/__tests__/Select.utils.test.tsx +0 -890
  387. package/src/components/Table/__tests__/Table.accessibility.test.tsx +0 -233
  388. package/src/components/Table/__tests__/Table.unit.test.tsx +0 -235
  389. package/src/components/Toast/__tests__/Toast.accessibility.test.tsx +0 -238
  390. package/src/components/Toast/__tests__/Toast.integration.test.tsx +0 -699
  391. package/src/components/Toast/__tests__/Toast.unit.test.tsx +0 -750
  392. package/src/components/Tooltip/__tests__/Tooltip.accessibility.test.tsx +0 -121
  393. package/src/components/Tooltip/__tests__/Tooltip.unit.test.tsx +0 -185
  394. package/src/components/UserMenu/__tests__/UserMenu.accessibility.test.tsx +0 -139
  395. package/src/components/UserMenu/__tests__/UserMenu.integration.test.tsx +0 -188
  396. package/src/components/UserMenu/__tests__/UserMenu.unit.test.tsx +0 -458
  397. package/src/components/__tests__/EdgeCaseTesting.enhanced.test.tsx +0 -524
  398. package/src/components/__tests__/ErrorTesting.enhanced.test.tsx +0 -455
  399. package/src/components/__tests__/SuperAdminGuard.test.tsx +0 -456
  400. package/src/components/__tests__/SuperAdminGuard.unit.test.tsx +0 -456
  401. package/src/components/examples/__tests__/PermissionExample.unit.test.tsx +0 -360
  402. package/src/hooks/__tests__/hooks.integration.test.tsx +0 -575
  403. package/src/hooks/__tests__/useApiFetch.unit.test.ts +0 -115
  404. package/src/hooks/__tests__/useComponentPerformance.unit.test.tsx +0 -133
  405. package/src/hooks/__tests__/useDebounce.unit.test.ts +0 -82
  406. package/src/hooks/__tests__/useFocusTrap.unit.test.tsx +0 -293
  407. package/src/hooks/__tests__/useInactivityTracker.unit.test.ts +0 -385
  408. package/src/hooks/__tests__/useOrganisationPermissions.unit.test.tsx +0 -286
  409. package/src/hooks/__tests__/useOrganisationSecurity.unit.test.tsx +0 -838
  410. package/src/hooks/__tests__/usePermissionCache.unit.test.ts +0 -627
  411. package/src/hooks/__tests__/useRBAC.unit.test.ts +0 -911
  412. package/src/hooks/__tests__/useSecureDataAccess.unit.test.tsx +0 -537
  413. package/src/hooks/__tests__/useToast.unit.test.tsx +0 -62
  414. package/src/hooks/__tests__/useZodForm.unit.test.tsx +0 -37
  415. package/src/hooks/public/__tests__/usePublicEvent.test.tsx +0 -397
  416. package/src/hooks/public/__tests__/usePublicEventLogo.test.tsx +0 -690
  417. package/src/hooks/public/__tests__/usePublicRouteParams.test.tsx +0 -449
  418. package/src/providers/__tests__/EventProvider.unit.test.tsx +0 -768
  419. package/src/providers/__tests__/OrganisationProvider.basic.test.tsx +0 -116
  420. package/src/providers/__tests__/OrganisationProvider.unit.test.tsx +0 -1312
  421. package/src/providers/__tests__/UnifiedAuthProvider.inactivity.test.tsx +0 -601
  422. package/src/providers/__tests__/UnifiedAuthProvider.unit.test.tsx +0 -683
  423. package/src/providers/__tests__/index.unit.test.ts +0 -78
  424. package/src/rbac/__tests__/PagePermissionGuard.test.tsx +0 -673
  425. package/src/rbac/__tests__/README.md +0 -170
  426. package/src/rbac/__tests__/RoleBasedRouter.test.tsx +0 -709
  427. package/src/rbac/__tests__/TestContext.tsx +0 -72
  428. package/src/rbac/__tests__/__mocks__/cache.ts +0 -144
  429. package/src/rbac/__tests__/__mocks__/supabase.ts +0 -152
  430. package/src/rbac/__tests__/adapters-hooks-comprehensive.test.tsx +0 -782
  431. package/src/rbac/__tests__/adapters-hooks.test.tsx +0 -561
  432. package/src/rbac/__tests__/adapters.comprehensive.test.tsx +0 -963
  433. package/src/rbac/__tests__/adapters.test.tsx +0 -444
  434. package/src/rbac/__tests__/api.test.ts +0 -620
  435. package/src/rbac/__tests__/audit-observability-comprehensive.test.ts +0 -792
  436. package/src/rbac/__tests__/audit-observability.test.ts +0 -549
  437. package/src/rbac/__tests__/audit.test.ts +0 -616
  438. package/src/rbac/__tests__/build-contract-compliance-simple.test.ts +0 -230
  439. package/src/rbac/__tests__/cache-invalidation-comprehensive.test.ts +0 -889
  440. package/src/rbac/__tests__/cache-invalidation.test.ts +0 -457
  441. package/src/rbac/__tests__/cache.test.ts +0 -458
  442. package/src/rbac/__tests__/components-navigation-guard.enhanced.test.tsx +0 -859
  443. package/src/rbac/__tests__/components-navigation-guard.test.tsx +0 -895
  444. package/src/rbac/__tests__/components-navigation-provider.test.tsx +0 -692
  445. package/src/rbac/__tests__/components-page-permission-guard.test.tsx +0 -673
  446. package/src/rbac/__tests__/components-page-permission-provider.test.tsx +0 -614
  447. package/src/rbac/__tests__/components-permission-enforcer.enhanced.fixed.test.tsx +0 -836
  448. package/src/rbac/__tests__/components-permission-enforcer.enhanced.test.tsx +0 -837
  449. package/src/rbac/__tests__/components-permission-enforcer.test.tsx +0 -825
  450. package/src/rbac/__tests__/components-role-based-router.test.tsx +0 -709
  451. package/src/rbac/__tests__/components-secure-data-provider.test.tsx +0 -607
  452. package/src/rbac/__tests__/config.test.ts +0 -583
  453. package/src/rbac/__tests__/core-logic-unit.test.ts +0 -190
  454. package/src/rbac/__tests__/core-permission-logic-comprehensive.test.ts +0 -1467
  455. package/src/rbac/__tests__/core-permission-logic-fixed.test.ts +0 -151
  456. package/src/rbac/__tests__/core-permission-logic-simple.test.ts +0 -968
  457. package/src/rbac/__tests__/core-permission-logic.test.ts +0 -966
  458. package/src/rbac/__tests__/edge-cases-comprehensive.test.ts +0 -988
  459. package/src/rbac/__tests__/edge-cases.test.ts +0 -654
  460. package/src/rbac/__tests__/engine.test.ts +0 -361
  461. package/src/rbac/__tests__/engine.unit.test.ts +0 -361
  462. package/src/rbac/__tests__/hooks.enhanced.test.tsx +0 -979
  463. package/src/rbac/__tests__/hooks.fixed.test.tsx +0 -475
  464. package/src/rbac/__tests__/hooks.test.tsx +0 -385
  465. package/src/rbac/__tests__/index.test.ts +0 -269
  466. package/src/rbac/__tests__/integration.enhanced.test.tsx +0 -824
  467. package/src/rbac/__tests__/page-permission-guard-super-admin.test.tsx +0 -261
  468. package/src/rbac/__tests__/performance.enhanced.test.tsx +0 -724
  469. package/src/rbac/__tests__/permissions.test.ts +0 -383
  470. package/src/rbac/__tests__/requires-event.test.ts +0 -330
  471. package/src/rbac/__tests__/scope-isolation-comprehensive.test.ts +0 -1349
  472. package/src/rbac/__tests__/scope-isolation.test.ts +0 -755
  473. package/src/rbac/__tests__/secure-client-rls-comprehensive.test.ts +0 -592
  474. package/src/rbac/__tests__/secure-client-rls.test.ts +0 -377
  475. package/src/rbac/__tests__/security.test.ts +0 -296
  476. package/src/rbac/__tests__/setup.ts +0 -228
  477. package/src/rbac/__tests__/test-utils-enhanced.tsx +0 -400
  478. package/src/rbac/__tests__/types.test.ts +0 -685
  479. package/src/rbac/components/__tests__/EnhancedNavigationMenu.test.tsx +0 -631
  480. package/src/rbac/components/__tests__/NavigationProvider.test.tsx +0 -667
  481. package/src/rbac/components/__tests__/PagePermissionProvider.test.tsx +0 -647
  482. package/src/rbac/components/__tests__/SecureDataProvider.test.tsx +0 -496
  483. package/src/rbac/testing/__tests__/index.test.tsx +0 -342
  484. package/src/rbac/utils/__tests__/eventContext.test.ts +0 -428
  485. package/src/rbac/utils/__tests__/eventContext.unit.test.ts +0 -428
  486. package/src/styles/__tests__/styles.unit.test.ts +0 -164
  487. package/src/test-dom-cleanup.test.tsx +0 -38
  488. package/src/theming/__tests__/README.md +0 -335
  489. package/src/theming/__tests__/runtime.accessibility.test.ts +0 -474
  490. package/src/theming/__tests__/runtime.error.test.ts +0 -616
  491. package/src/theming/__tests__/runtime.integration.test.ts +0 -376
  492. package/src/theming/__tests__/runtime.performance.test.ts +0 -411
  493. package/src/theming/__tests__/runtime.unit.test.ts +0 -470
  494. package/src/types/__tests__/database.unit.test.ts +0 -489
  495. package/src/types/__tests__/guards.unit.test.ts +0 -146
  496. package/src/types/__tests__/index.unit.test.ts +0 -77
  497. package/src/types/__tests__/organisation.unit.test.ts +0 -713
  498. package/src/types/__tests__/rbac.unit.test.ts +0 -621
  499. package/src/types/__tests__/security.unit.test.ts +0 -347
  500. package/src/types/__tests__/supabase.unit.test.ts +0 -658
  501. package/src/types/__tests__/theme.unit.test.ts +0 -218
  502. package/src/types/__tests__/unified.unit.test.ts +0 -537
  503. package/src/types/__tests__/validation.unit.test.ts +0 -616
  504. package/src/utils/__tests__/appConfig.unit.test.ts +0 -55
  505. package/src/utils/__tests__/appNameResolver.unit.test.ts +0 -137
  506. package/src/utils/__tests__/audit.unit.test.ts +0 -69
  507. package/src/utils/__tests__/auth-utils.unit.test.ts +0 -70
  508. package/src/utils/__tests__/bundleAnalysis.unit.test.ts +0 -317
  509. package/src/utils/__tests__/cn.unit.test.ts +0 -34
  510. package/src/utils/__tests__/deviceFingerprint.unit.test.ts +0 -480
  511. package/src/utils/__tests__/dynamicUtils.unit.test.ts +0 -322
  512. package/src/utils/__tests__/formatDate.unit.test.ts +0 -109
  513. package/src/utils/__tests__/formatting.unit.test.ts +0 -66
  514. package/src/utils/__tests__/index.unit.test.ts +0 -251
  515. package/src/utils/__tests__/lazyLoad.unit.test.tsx +0 -304
  516. package/src/utils/__tests__/organisationContext.unit.test.ts +0 -192
  517. package/src/utils/__tests__/performanceBudgets.unit.test.ts +0 -259
  518. package/src/utils/__tests__/permissionTypes.unit.test.ts +0 -250
  519. package/src/utils/__tests__/permissionUtils.unit.test.ts +0 -362
  520. package/src/utils/__tests__/sanitization.unit.test.ts +0 -346
  521. package/src/utils/__tests__/schemaUtils.unit.test.ts +0 -441
  522. package/src/utils/__tests__/secureDataAccess.unit.test.ts +0 -334
  523. package/src/utils/__tests__/secureErrors.unit.test.ts +0 -377
  524. package/src/utils/__tests__/secureStorage.unit.test.ts +0 -293
  525. package/src/utils/__tests__/security.unit.test.ts +0 -127
  526. package/src/utils/__tests__/securityMonitor.unit.test.ts +0 -280
  527. package/src/utils/__tests__/sessionTracking.unit.test.ts +0 -370
  528. package/src/utils/__tests__/validation.unit.test.ts +0 -84
  529. package/src/utils/__tests__/validationUtils.unit.test.ts +0 -571
  530. package/src/utils/print/__tests__/PrintDataProcessor.unit.test.ts +0 -219
  531. package/src/utils/print/__tests__/usePrintOptimization.unit.test.tsx +0 -353
  532. package/src/utils/storage/__tests__/config.unit.test.ts +0 -206
  533. package/src/utils/storage/__tests__/helpers.unit.test.ts +0 -648
  534. package/src/utils/storage/__tests__/index.unit.test.ts +0 -167
  535. package/src/utils/storage/__tests__/types.unit.test.ts +0 -441
  536. package/src/validation/__tests__/common.unit.test.ts +0 -101
  537. package/src/validation/__tests__/csrf.unit.test.ts +0 -302
  538. package/src/validation/__tests__/passwordSchema.unit.test.ts +0 -98
  539. package/src/validation/__tests__/sqlInjectionProtection.unit.test.ts +0 -466
  540. /package/dist/{DataTable-EEUDXPE5.js.map → DataTable-GX3XERFJ.js.map} +0 -0
  541. /package/dist/{chunk-VYG4AXYW.js.map → chunk-5EL3KHOQ.js.map} +0 -0
@@ -1,6 +1,12 @@
1
1
  import {
2
2
  Alert,
3
3
  AlertDescription,
4
+ Card,
5
+ CardContent,
6
+ CardDescription,
7
+ CardFooter,
8
+ CardHeader,
9
+ CardTitle,
4
10
  Input,
5
11
  Select,
6
12
  SelectContent,
@@ -9,7 +15,7 @@ import {
9
15
  SelectSeparator,
10
16
  SelectTrigger,
11
17
  SelectValue
12
- } from "./chunk-EWKPTNPO.js";
18
+ } from "./chunk-GSNM5D6H.js";
13
19
  import {
14
20
  isPermitted
15
21
  } from "./chunk-C5G2A4PO.js";
@@ -17,21 +23,18 @@ import {
17
23
  EventProvider_exports,
18
24
  init_EventProvider,
19
25
  useEvents
20
- } from "./chunk-HEMJ4SUJ.js";
26
+ } from "./chunk-TGDCLPP2.js";
21
27
  import {
22
28
  PublicErrorBoundary,
23
29
  useAppConfig,
24
30
  usePublicEventLogo,
25
31
  usePublicPageContext
26
- } from "./chunk-VYG4AXYW.js";
32
+ } from "./chunk-5EL3KHOQ.js";
27
33
  import {
28
34
  OrganisationProvider_exports,
29
- UnifiedAuthProvider_exports,
30
35
  init_OrganisationProvider,
31
- init_UnifiedAuthProvider,
32
- useOrganisations,
33
- useUnifiedAuth
34
- } from "./chunk-BEZRLNK3.js";
36
+ useOrganisations
37
+ } from "./chunk-COBPIXXQ.js";
35
38
  import {
36
39
  Button,
37
40
  Dialog,
@@ -40,8 +43,11 @@ import {
40
43
  DialogOverlay,
41
44
  DialogTitle,
42
45
  DialogTrigger,
43
- init_Button
44
- } from "./chunk-ETEJVKYK.js";
46
+ UnifiedAuthProvider_exports,
47
+ init_Button,
48
+ init_UnifiedAuthProvider,
49
+ useUnifiedAuth
50
+ } from "./chunk-6CR3MRZN.js";
45
51
  import {
46
52
  LoadingSpinner
47
53
  } from "./chunk-CDQ3PX7L.js";
@@ -51,156 +57,21 @@ import {
51
57
  import {
52
58
  cn,
53
59
  init_cn
54
- } from "./chunk-OHXGNT3K.js";
60
+ } from "./chunk-OYRY44Q2.js";
55
61
  import {
56
62
  __require,
57
63
  __toCommonJS
58
64
  } from "./chunk-PLDDJCW6.js";
59
65
 
60
- // src/components/Card/Card.tsx
61
- init_cn();
62
- import * as React from "react";
63
- import { jsx } from "react/jsx-runtime";
64
- function getCardClasses(variant = "default", size = "default") {
65
- const baseClasses = "rounded-lg border bg-card text-card-foreground shadow-sm";
66
- const variantClasses = {
67
- default: "shadow-xl",
68
- outline: "border-2",
69
- ghost: "border-0 shadow-none"
70
- };
71
- const sizeClasses3 = {
72
- default: "",
73
- sm: "text-sm",
74
- lg: "text-lg"
75
- };
76
- return `${baseClasses} ${variantClasses[variant]} ${sizeClasses3[size]}`;
77
- }
78
- var Card = React.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx(
79
- "article",
80
- {
81
- ref,
82
- className: cn(
83
- "grid grid-rows-[auto_1fr_auto] min-w-0 overflow-visible",
84
- getCardClasses(variant, size),
85
- className
86
- ),
87
- ...props
88
- }
89
- ));
90
- Card.displayName = "Card";
91
- var CardHeader = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
92
- "header",
93
- {
94
- ref,
95
- className: cn("flex flex-col space-y-1.5 p-6 min-w-0 w-full", className),
96
- ...props
97
- }
98
- ));
99
- CardHeader.displayName = "CardHeader";
100
- var CardTitle = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
101
- "h3",
102
- {
103
- ref,
104
- className: cn(
105
- "text-2xl font-semibold leading-none tracking-tight",
106
- className
107
- ),
108
- ...props
109
- }
110
- ));
111
- CardTitle.displayName = "CardTitle";
112
- var CardDescription = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
113
- "p",
114
- {
115
- ref,
116
- className: cn(className),
117
- ...props
118
- }
119
- ));
120
- CardDescription.displayName = "CardDescription";
121
- var CardContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
122
- "main",
123
- {
124
- ref,
125
- className: cn("p-6 pt-0 min-w-0 w-full", className),
126
- ...props
127
- }
128
- ));
129
- CardContent.displayName = "CardContent";
130
- var CardFooter = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
131
- "footer",
132
- {
133
- ref,
134
- className: cn("flex items-center p-6 pt-0 min-w-0 w-full", className),
135
- ...props
136
- }
137
- ));
138
- CardFooter.displayName = "CardFooter";
139
- var CardActions = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
140
- "nav",
141
- {
142
- ref,
143
- className: cn("flex gap-2", className),
144
- role: "group",
145
- "aria-label": "Card actions",
146
- ...props
147
- }
148
- ));
149
- CardActions.displayName = "CardActions";
150
- var HoverCard = React.forwardRef(({ children, className, ...props }, ref) => {
151
- return /* @__PURE__ */ jsx(
152
- "section",
153
- {
154
- ref,
155
- className: cn("relative inline-block", className),
156
- ...props,
157
- children
158
- }
159
- );
160
- });
161
- HoverCard.displayName = "HoverCard";
162
- var HoverCardTrigger = React.forwardRef(({ className, asChild, children, ...props }, ref) => {
163
- if (asChild) {
164
- return /* @__PURE__ */ jsx("span", { className: cn("cursor-pointer", className), children });
165
- }
166
- return /* @__PURE__ */ jsx(
167
- "button",
168
- {
169
- ref,
170
- type: "button",
171
- className: cn(
172
- "cursor-pointer bg-transparent border-0 p-0 m-0 font-inherit color-inherit text-left",
173
- className
174
- ),
175
- ...props,
176
- children
177
- }
178
- );
179
- });
180
- HoverCardTrigger.displayName = "HoverCardTrigger";
181
- var HoverCardContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
182
- "aside",
183
- {
184
- ref,
185
- className: cn(
186
- "absolute z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-4 text-popover-foreground shadow-md",
187
- className
188
- ),
189
- role: "tooltip",
190
- ...props
191
- }
192
- ));
193
- HoverCardContent.displayName = "HoverCardContent";
194
-
195
66
  // src/components/Label/Label.tsx
196
67
  init_cn();
197
- import * as React2 from "react";
68
+ import * as React from "react";
198
69
  import * as LabelPrimitive from "@radix-ui/react-label";
199
- import { Fragment, jsx as jsx2, jsxs } from "react/jsx-runtime";
70
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
200
71
  var getLabelClasses = () => {
201
72
  return "font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70";
202
73
  };
203
- var Label = React2.forwardRef(({
74
+ var Label = React.forwardRef(({
204
75
  className,
205
76
  required = false,
206
77
  requiredIndicator,
@@ -229,7 +100,7 @@ var Label = React2.forwardRef(({
229
100
  ...props,
230
101
  children: [
231
102
  children,
232
- required && /* @__PURE__ */ jsx2(
103
+ required && /* @__PURE__ */ jsx(
233
104
  "label",
234
105
  {
235
106
  "aria-label": "required",
@@ -243,8 +114,8 @@ var Label = React2.forwardRef(({
243
114
  ]
244
115
  }
245
116
  ),
246
- showHelperText && /* @__PURE__ */ jsx2("p", { className: cn("text-muted-foreground", helperTextClassName), children: helperText }),
247
- hasError && /* @__PURE__ */ jsx2(
117
+ showHelperText && /* @__PURE__ */ jsx("p", { className: cn("text-muted-foreground", helperTextClassName), children: helperText }),
118
+ hasError && /* @__PURE__ */ jsx(
248
119
  "p",
249
120
  {
250
121
  role: "alert",
@@ -259,10 +130,10 @@ Label.displayName = LabelPrimitive.Root.displayName;
259
130
 
260
131
  // src/components/Avatar/Avatar.tsx
261
132
  init_cn();
262
- import * as React3 from "react";
133
+ import * as React2 from "react";
263
134
  import * as AvatarPrimitive from "@radix-ui/react-avatar";
264
- import { jsx as jsx3 } from "react/jsx-runtime";
265
- var Avatar = React3.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx3(
135
+ import { jsx as jsx2 } from "react/jsx-runtime";
136
+ var Avatar = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx2(
266
137
  AvatarPrimitive.Root,
267
138
  {
268
139
  ref,
@@ -274,7 +145,7 @@ var Avatar = React3.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */
274
145
  }
275
146
  ));
276
147
  Avatar.displayName = AvatarPrimitive.Root.displayName;
277
- var AvatarImage = React3.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx3(
148
+ var AvatarImage = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx2(
278
149
  AvatarPrimitive.Image,
279
150
  {
280
151
  ref,
@@ -283,7 +154,7 @@ var AvatarImage = React3.forwardRef(({ className, ...props }, ref) => /* @__PURE
283
154
  }
284
155
  ));
285
156
  AvatarImage.displayName = AvatarPrimitive.Image.displayName;
286
- var AvatarFallback = React3.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx3(
157
+ var AvatarFallback = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx2(
287
158
  AvatarPrimitive.Fallback,
288
159
  {
289
160
  ref,
@@ -298,10 +169,10 @@ AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
298
169
 
299
170
  // src/components/Progress/Progress.tsx
300
171
  init_cn();
301
- import * as React4 from "react";
172
+ import * as React3 from "react";
302
173
  import * as ProgressPrimitive from "@radix-ui/react-progress";
303
- import { jsx as jsx4 } from "react/jsx-runtime";
304
- var Progress = React4.forwardRef(({ className, value, max = 100, ...props }, ref) => /* @__PURE__ */ jsx4(
174
+ import { jsx as jsx3 } from "react/jsx-runtime";
175
+ var Progress = React3.forwardRef(({ className, value, max = 100, ...props }, ref) => /* @__PURE__ */ jsx3(
305
176
  ProgressPrimitive.Root,
306
177
  {
307
178
  ref,
@@ -315,7 +186,7 @@ var Progress = React4.forwardRef(({ className, value, max = 100, ...props }, ref
315
186
  "aria-valuenow": value,
316
187
  "aria-valuemax": max,
317
188
  "aria-valuemin": 0,
318
- children: /* @__PURE__ */ jsx4(
189
+ children: /* @__PURE__ */ jsx3(
319
190
  ProgressPrimitive.Indicator,
320
191
  {
321
192
  className: "h-full w-full flex-1 bg-primary transition-all",
@@ -328,12 +199,12 @@ Progress.displayName = ProgressPrimitive.Root.displayName;
328
199
 
329
200
  // src/components/Toast/Toast.tsx
330
201
  init_cn();
331
- import * as React5 from "react";
202
+ import * as React4 from "react";
332
203
  import * as ToastPrimitives from "@radix-ui/react-toast";
333
204
  import { X } from "lucide-react";
334
- import { jsx as jsx5 } from "react/jsx-runtime";
205
+ import { jsx as jsx4 } from "react/jsx-runtime";
335
206
  var ToastProvider = ToastPrimitives.Provider;
336
- var ToastViewport = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx5(
207
+ var ToastViewport = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
337
208
  ToastPrimitives.Viewport,
338
209
  {
339
210
  ref,
@@ -346,8 +217,8 @@ var ToastViewport = React5.forwardRef(({ className, ...props }, ref) => /* @__PU
346
217
  }
347
218
  ));
348
219
  ToastViewport.displayName = ToastPrimitives.Viewport.displayName;
349
- var Toast = React5.forwardRef(({ className, ...props }, ref) => {
350
- return /* @__PURE__ */ jsx5(
220
+ var Toast = React4.forwardRef(({ className, ...props }, ref) => {
221
+ return /* @__PURE__ */ jsx4(
351
222
  ToastPrimitives.Root,
352
223
  {
353
224
  ref,
@@ -361,7 +232,7 @@ var Toast = React5.forwardRef(({ className, ...props }, ref) => {
361
232
  );
362
233
  });
363
234
  Toast.displayName = ToastPrimitives.Root.displayName;
364
- var ToastAction = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx5(
235
+ var ToastAction = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
365
236
  ToastPrimitives.Action,
366
237
  {
367
238
  ref,
@@ -374,7 +245,7 @@ var ToastAction = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE
374
245
  }
375
246
  ));
376
247
  ToastAction.displayName = ToastPrimitives.Action.displayName;
377
- var ToastClose = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx5(
248
+ var ToastClose = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
378
249
  ToastPrimitives.Close,
379
250
  {
380
251
  ref,
@@ -385,11 +256,11 @@ var ToastClose = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE_
385
256
  ),
386
257
  "toast-close": "",
387
258
  ...props,
388
- children: /* @__PURE__ */ jsx5(X, { className: "h-4 w-4" })
259
+ children: /* @__PURE__ */ jsx4(X, { className: "h-4 w-4" })
389
260
  }
390
261
  ));
391
262
  ToastClose.displayName = ToastPrimitives.Close.displayName;
392
- var ToastTitle = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx5(
263
+ var ToastTitle = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
393
264
  ToastPrimitives.Title,
394
265
  {
395
266
  ref,
@@ -399,7 +270,7 @@ var ToastTitle = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE_
399
270
  }
400
271
  ));
401
272
  ToastTitle.displayName = ToastPrimitives.Title.displayName;
402
- var ToastDescription = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx5(
273
+ var ToastDescription = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
403
274
  ToastPrimitives.Description,
404
275
  {
405
276
  ref,
@@ -420,14 +291,14 @@ function useToast() {
420
291
  };
421
292
  }
422
293
  function Toaster() {
423
- return /* @__PURE__ */ jsx5(ToastProvider, { "data-testid": "toast-provider", children: /* @__PURE__ */ jsx5(ToastViewport, {}) });
294
+ return /* @__PURE__ */ jsx4(ToastProvider, { "data-testid": "toast-provider", children: /* @__PURE__ */ jsx4(ToastViewport, {}) });
424
295
  }
425
296
 
426
297
  // src/components/Form/Form.tsx
427
298
  init_cn();
428
299
  import { useForm, FormProvider } from "react-hook-form";
429
300
  import { zodResolver } from "@hookform/resolvers/zod";
430
- import { jsx as jsx6 } from "react/jsx-runtime";
301
+ import { jsx as jsx5 } from "react/jsx-runtime";
431
302
  function Form({
432
303
  schema,
433
304
  defaultValues,
@@ -443,15 +314,15 @@ function Form({
443
314
  mode
444
315
  });
445
316
  const handleSubmit = methods.handleSubmit(onSubmit, onError);
446
- return /* @__PURE__ */ jsx6(FormProvider, { ...methods, children: /* @__PURE__ */ jsx6("form", { onSubmit: handleSubmit, className: cn("space-y-4", className), children: typeof children === "function" ? children(methods) : children }) });
317
+ return /* @__PURE__ */ jsx5(FormProvider, { ...methods, children: /* @__PURE__ */ jsx5("form", { onSubmit: handleSubmit, className: cn("space-y-4", className), children: typeof children === "function" ? children(methods) : children }) });
447
318
  }
448
319
 
449
320
  // src/components/LoginForm/LoginForm.tsx
450
321
  init_Button();
451
- import React6, { useState, useCallback, useMemo } from "react";
322
+ import React5, { useState, useCallback, useMemo } from "react";
452
323
  init_cn();
453
- import { jsx as jsx7, jsxs as jsxs2 } from "react/jsx-runtime";
454
- var LoginForm = React6.memo(({
324
+ import { jsx as jsx6, jsxs as jsxs2 } from "react/jsx-runtime";
325
+ var LoginForm = React5.memo(({
455
326
  onSignIn,
456
327
  onSuccess,
457
328
  onError,
@@ -492,15 +363,15 @@ var LoginForm = React6.memo(({
492
363
  }, [onSignUp]);
493
364
  const displayTitle = useMemo(() => title || (appName ? `Sign in to ${appName}` : "Sign In"), [title, appName]);
494
365
  const displaySubtitle = useMemo(() => subtitle || "Enter your credentials to continue.", [subtitle]);
495
- return /* @__PURE__ */ jsx7(Card, { className: cn("w-full max-w-md mx-auto", className), children: /* @__PURE__ */ jsxs2("form", { onSubmit: handleSubmit, "data-testid": "login-form", children: [
366
+ return /* @__PURE__ */ jsx6(Card, { className: cn("w-full max-w-md mx-auto", className), children: /* @__PURE__ */ jsxs2("form", { onSubmit: handleSubmit, "data-testid": "login-form", children: [
496
367
  /* @__PURE__ */ jsxs2(CardHeader, { className: "space-y-1", children: [
497
- /* @__PURE__ */ jsx7(CardTitle, { className: "text-2xl text-center", children: displayTitle }),
498
- /* @__PURE__ */ jsx7(CardDescription, { className: "text-center", children: displaySubtitle })
368
+ /* @__PURE__ */ jsx6(CardTitle, { className: "text-2xl text-center", children: displayTitle }),
369
+ /* @__PURE__ */ jsx6(CardDescription, { className: "text-center", children: displaySubtitle })
499
370
  ] }),
500
371
  /* @__PURE__ */ jsxs2(CardContent, { className: "space-y-4", children: [
501
- error && /* @__PURE__ */ jsx7(Alert, { variant: "destructive", children: /* @__PURE__ */ jsx7(AlertDescription, { children: error }) }),
502
- /* @__PURE__ */ jsx7(Label, { htmlFor: "email", children: "Email" }),
503
- /* @__PURE__ */ jsx7(
372
+ error && /* @__PURE__ */ jsx6(Alert, { variant: "destructive", children: /* @__PURE__ */ jsx6(AlertDescription, { children: error }) }),
373
+ /* @__PURE__ */ jsx6(Label, { htmlFor: "email", children: "Email" }),
374
+ /* @__PURE__ */ jsx6(
504
375
  Input,
505
376
  {
506
377
  id: "email",
@@ -512,8 +383,8 @@ var LoginForm = React6.memo(({
512
383
  disabled: isLoading
513
384
  }
514
385
  ),
515
- /* @__PURE__ */ jsx7(Label, { htmlFor: "password", children: "Password" }),
516
- /* @__PURE__ */ jsx7(
386
+ /* @__PURE__ */ jsx6(Label, { htmlFor: "password", children: "Password" }),
387
+ /* @__PURE__ */ jsx6(
517
388
  Input,
518
389
  {
519
390
  id: "password",
@@ -527,7 +398,7 @@ var LoginForm = React6.memo(({
527
398
  )
528
399
  ] }),
529
400
  /* @__PURE__ */ jsxs2(CardFooter, { className: "flex flex-col space-y-4", children: [
530
- /* @__PURE__ */ jsx7(
401
+ /* @__PURE__ */ jsx6(
531
402
  Button,
532
403
  {
533
404
  type: "submit",
@@ -536,7 +407,7 @@ var LoginForm = React6.memo(({
536
407
  children: isLoading ? "Signing in..." : "Sign In"
537
408
  }
538
409
  ),
539
- showSignUp && (onSignUp ? /* @__PURE__ */ jsx7("div", { className: "text-sm text-center text-muted-foreground", children: /* @__PURE__ */ jsx7(
410
+ showSignUp && (onSignUp ? /* @__PURE__ */ jsx6("div", { className: "text-sm text-center text-muted-foreground", children: /* @__PURE__ */ jsx6(
540
411
  "button",
541
412
  {
542
413
  type: "button",
@@ -547,7 +418,7 @@ var LoginForm = React6.memo(({
547
418
  ) }) : /* @__PURE__ */ jsxs2("p", { className: "text-center text-muted-foreground", children: [
548
419
  "Don't have an account?",
549
420
  " ",
550
- /* @__PURE__ */ jsx7("a", { href: "/signup", className: "text-primary hover:underline", children: "Sign up" })
421
+ /* @__PURE__ */ jsx6("a", { href: "/signup", className: "text-primary hover:underline", children: "Sign up" })
551
422
  ] }))
552
423
  ] })
553
424
  ] }) });
@@ -558,7 +429,7 @@ init_Button();
558
429
  init_EventProvider();
559
430
  import { RefreshCw, AlertCircle, Lock, Calendar, Star } from "lucide-react";
560
431
  import { useEffect, useMemo as useMemo2 } from "react";
561
- import { jsx as jsx8, jsxs as jsxs3 } from "react/jsx-runtime";
432
+ import { jsx as jsx7, jsxs as jsxs3 } from "react/jsx-runtime";
562
433
  function EventSelector({
563
434
  placeholder = "Select an event",
564
435
  className,
@@ -633,15 +504,15 @@ function EventSelector({
633
504
  }, [events, selectedEvent, setSelectedEvent, onEventChange]);
634
505
  if (isLoading) {
635
506
  return /* @__PURE__ */ jsxs3("div", { className: `flex items-center gap-2 ${className}`, children: [
636
- /* @__PURE__ */ jsx8(LoadingSpinner, { size: "sm" }),
637
- /* @__PURE__ */ jsx8("span", { className: "text-sm text-muted-foreground", children: "Loading events..." })
507
+ /* @__PURE__ */ jsx7(LoadingSpinner, { size: "sm" }),
508
+ /* @__PURE__ */ jsx7("span", { className: "text-sm text-muted-foreground", children: "Loading events..." })
638
509
  ] });
639
510
  }
640
511
  if (error) {
641
- return /* @__PURE__ */ jsx8("div", { className, children: /* @__PURE__ */ jsxs3(Alert, { variant: "destructive", children: [
642
- /* @__PURE__ */ jsx8(Lock, { className: "h-4 w-4" }),
512
+ return /* @__PURE__ */ jsx7("div", { className, children: /* @__PURE__ */ jsxs3(Alert, { variant: "destructive", children: [
513
+ /* @__PURE__ */ jsx7(Lock, { className: "h-4 w-4" }),
643
514
  /* @__PURE__ */ jsxs3(AlertDescription, { className: "flex items-center justify-between", children: [
644
- /* @__PURE__ */ jsx8("span", { children: error.message }),
515
+ /* @__PURE__ */ jsx7("span", { children: error.message }),
645
516
  showRetryButton && /* @__PURE__ */ jsxs3(
646
517
  Button,
647
518
  {
@@ -650,7 +521,7 @@ function EventSelector({
650
521
  onClick: handleRetry,
651
522
  className: "ml-2",
652
523
  children: [
653
- /* @__PURE__ */ jsx8(RefreshCw, { className: "h-3 w-3 mr-1" }),
524
+ /* @__PURE__ */ jsx7(RefreshCw, { className: "h-3 w-3 mr-1" }),
654
525
  "Retry"
655
526
  ]
656
527
  }
@@ -660,10 +531,10 @@ function EventSelector({
660
531
  }
661
532
  if (events.length === 0) {
662
533
  if (showNoEventsMessage) {
663
- return /* @__PURE__ */ jsx8("div", { className, children: /* @__PURE__ */ jsxs3(Alert, { variant: "inline", children: [
664
- /* @__PURE__ */ jsx8(AlertCircle, { className: "h-4 w-4 text-acc-700" }),
534
+ return /* @__PURE__ */ jsx7("div", { className, children: /* @__PURE__ */ jsxs3(Alert, { variant: "inline", children: [
535
+ /* @__PURE__ */ jsx7(AlertCircle, { className: "h-4 w-4 text-acc-700" }),
665
536
  /* @__PURE__ */ jsxs3(AlertDescription, { className: "flex items-center justify-between", children: [
666
- /* @__PURE__ */ jsx8("span", { children: "No events available." }),
537
+ /* @__PURE__ */ jsx7("span", { children: "No events available." }),
667
538
  showRetryButton && /* @__PURE__ */ jsxs3(
668
539
  Button,
669
540
  {
@@ -672,7 +543,7 @@ function EventSelector({
672
543
  onClick: handleRetry,
673
544
  className: "ml-2",
674
545
  children: [
675
- /* @__PURE__ */ jsx8(RefreshCw, { className: "h-3 w-3 mr-1" }),
546
+ /* @__PURE__ */ jsx7(RefreshCw, { className: "h-3 w-3 mr-1" }),
676
547
  "Refresh"
677
548
  ]
678
549
  }
@@ -689,34 +560,34 @@ function EventSelector({
689
560
  onValueChange: handleValueChange,
690
561
  className,
691
562
  children: [
692
- /* @__PURE__ */ jsx8(SelectTrigger, { className: "text-left", variant: "outline", children: /* @__PURE__ */ jsx8(SelectValue, { placeholder, children: selectedEvent && /* @__PURE__ */ jsxs3("div", { className: "flex items-center gap-2", children: [
693
- /* @__PURE__ */ jsx8(Calendar, { className: "h-4 w-4 flex-shrink-0" }),
694
- /* @__PURE__ */ jsx8("span", { className: "truncate", children: selectedEvent.event_name || selectedEvent.name }),
563
+ /* @__PURE__ */ jsx7(SelectTrigger, { className: "text-left", variant: "outline", children: /* @__PURE__ */ jsx7(SelectValue, { placeholder, children: selectedEvent && /* @__PURE__ */ jsxs3("div", { className: "flex items-center gap-2", children: [
564
+ /* @__PURE__ */ jsx7(Calendar, { className: "h-4 w-4 flex-shrink-0" }),
565
+ /* @__PURE__ */ jsx7("span", { className: "truncate", children: selectedEvent.event_name || selectedEvent.name }),
695
566
  selectedEvent.event_date && /* @__PURE__ */ jsxs3("span", { className: "text-xs text-muted-foreground flex-shrink-0", children: [
696
567
  "(",
697
568
  formatEventDate(selectedEvent.event_date),
698
569
  ")"
699
570
  ] })
700
571
  ] }) }) }),
701
- /* @__PURE__ */ jsx8(SelectContent, { children: sortedEvents.map((event) => {
572
+ /* @__PURE__ */ jsx7(SelectContent, { children: sortedEvents.map((event) => {
702
573
  const isNext = isNextEvent(event);
703
574
  const isSelected = selectedEvent && (selectedEvent.event_id === event.event_id || selectedEvent.id === event.id);
704
- return /* @__PURE__ */ jsx8(
575
+ return /* @__PURE__ */ jsx7(
705
576
  SelectItem,
706
577
  {
707
578
  value: event.event_id || event.id,
708
579
  className: "flex items-center justify-between",
709
580
  children: /* @__PURE__ */ jsxs3("div", { className: "flex items-center gap-2 w-full", children: [
710
- showNextEventIndicator && isNext && /* @__PURE__ */ jsx8(Star, { className: "h-3 w-3 text-acc-500" }),
581
+ showNextEventIndicator && isNext && /* @__PURE__ */ jsx7(Star, { className: "h-3 w-3 text-acc-500" }),
711
582
  /* @__PURE__ */ jsxs3("div", { className: "flex-1", children: [
712
583
  /* @__PURE__ */ jsxs3("div", { className: "flex items-center gap-2", children: [
713
- /* @__PURE__ */ jsx8("span", { className: isSelected ? "font-semibold" : "", children: event.event_name || event.name }),
714
- isSelected && /* @__PURE__ */ jsx8("span", { className: "text-xs bg-primary text-primary-foreground px-1 rounded", children: "Current" })
584
+ /* @__PURE__ */ jsx7("span", { className: isSelected ? "font-semibold" : "", children: event.event_name || event.name }),
585
+ isSelected && /* @__PURE__ */ jsx7("span", { className: "text-xs bg-primary text-primary-foreground px-1 rounded", children: "Current" })
715
586
  ] }),
716
587
  showEventDetails && event.event_date && /* @__PURE__ */ jsxs3("div", { className: "flex items-center gap-1 text-xs text-muted-foreground", children: [
717
- /* @__PURE__ */ jsx8(Calendar, { className: "h-3 w-3" }),
718
- /* @__PURE__ */ jsx8("span", { children: formatEventDate(event.event_date) }),
719
- showNextEventIndicator && isNext && /* @__PURE__ */ jsx8("span", { className: "text-acc-600 font-medium", children: "(Next)" })
588
+ /* @__PURE__ */ jsx7(Calendar, { className: "h-3 w-3" }),
589
+ /* @__PURE__ */ jsx7("span", { children: formatEventDate(event.event_date) }),
590
+ showNextEventIndicator && isNext && /* @__PURE__ */ jsx7("span", { className: "text-acc-600 font-medium", children: "(Next)" })
720
591
  ] }),
721
592
  showEventDetails && event.event_venue && /* @__PURE__ */ jsxs3("div", { className: "text-xs text-muted-foreground", children: [
722
593
  "\u{1F4CD} ",
@@ -737,7 +608,7 @@ function EventSelector({
737
608
  init_Button();
738
609
  import { useState as useState2 } from "react";
739
610
  init_cn();
740
- import { jsx as jsx9, jsxs as jsxs4 } from "react/jsx-runtime";
611
+ import { jsx as jsx8, jsxs as jsxs4 } from "react/jsx-runtime";
741
612
  function PasswordChangeForm({ onSubmit, className }) {
742
613
  const [newPassword, setNewPassword] = useState2("");
743
614
  const [confirmPassword, setConfirmPassword] = useState2("");
@@ -767,10 +638,10 @@ function PasswordChangeForm({ onSubmit, className }) {
767
638
  }
768
639
  };
769
640
  return /* @__PURE__ */ jsxs4("form", { onSubmit: handleSubmit, className: cn("space-y-4", className), children: [
770
- error && /* @__PURE__ */ jsx9("div", { role: "alert", children: error }),
641
+ error && /* @__PURE__ */ jsx8("div", { role: "alert", children: error }),
771
642
  /* @__PURE__ */ jsxs4("div", { className: "space-y-2", children: [
772
- /* @__PURE__ */ jsx9(Label, { htmlFor: "new-password", children: "New Password" }),
773
- /* @__PURE__ */ jsx9(
643
+ /* @__PURE__ */ jsx8(Label, { htmlFor: "new-password", children: "New Password" }),
644
+ /* @__PURE__ */ jsx8(
774
645
  Input,
775
646
  {
776
647
  id: "new-password",
@@ -783,8 +654,8 @@ function PasswordChangeForm({ onSubmit, className }) {
783
654
  )
784
655
  ] }),
785
656
  /* @__PURE__ */ jsxs4("div", { className: "space-y-2", children: [
786
- /* @__PURE__ */ jsx9(Label, { htmlFor: "confirm-password", children: "Confirm Password" }),
787
- /* @__PURE__ */ jsx9(
657
+ /* @__PURE__ */ jsx8(Label, { htmlFor: "confirm-password", children: "Confirm Password" }),
658
+ /* @__PURE__ */ jsx8(
788
659
  Input,
789
660
  {
790
661
  id: "confirm-password",
@@ -796,7 +667,7 @@ function PasswordChangeForm({ onSubmit, className }) {
796
667
  }
797
668
  )
798
669
  ] }),
799
- /* @__PURE__ */ jsx9(
670
+ /* @__PURE__ */ jsx8(
800
671
  Button,
801
672
  {
802
673
  type: "submit",
@@ -812,10 +683,10 @@ function PasswordChangeForm({ onSubmit, className }) {
812
683
  init_Button();
813
684
 
814
685
  // src/components/UserMenu/UserMenu.tsx
815
- import React8, { useCallback as useCallback2, useMemo as useMemo3, useState as useState3 } from "react";
686
+ import React7, { useCallback as useCallback2, useMemo as useMemo3, useState as useState3 } from "react";
816
687
  import { ChevronDown, LogOut, KeyRound } from "lucide-react";
817
- import { jsx as jsx10, jsxs as jsxs5 } from "react/jsx-runtime";
818
- var UserMenu = React8.memo(function UserMenu2({
688
+ import { jsx as jsx9, jsxs as jsxs5 } from "react/jsx-runtime";
689
+ var UserMenu = React7.memo(function UserMenu2({
819
690
  user,
820
691
  onSignOut,
821
692
  onChangePassword,
@@ -840,34 +711,34 @@ var UserMenu = React8.memo(function UserMenu2({
840
711
  }
841
712
  return /* @__PURE__ */ jsxs5(Dialog, { open: isPasswordDialogOpen, onOpenChange: setPasswordDialogOpen, children: [
842
713
  /* @__PURE__ */ jsxs5(Select, { className, children: [
843
- /* @__PURE__ */ jsx10(SelectTrigger, { asChild: true, children: /* @__PURE__ */ jsxs5(Button, { variant: "outline", className: "flex items-center gap-2", "aria-label": userInfo.displayName, children: [
714
+ /* @__PURE__ */ jsx9(SelectTrigger, { asChild: true, children: /* @__PURE__ */ jsxs5(Button, { variant: "outline", className: "flex items-center gap-2", "aria-label": userInfo.displayName, children: [
844
715
  showAvatar && /* @__PURE__ */ jsxs5(Avatar, { className: "h-8 w-8", children: [
845
- /* @__PURE__ */ jsx10(AvatarImage, { src: userInfo.avatarUrl, alt: userInfo.displayName }),
846
- /* @__PURE__ */ jsx10(AvatarFallback, { children: userInfo.initial })
716
+ /* @__PURE__ */ jsx9(AvatarImage, { src: userInfo.avatarUrl, alt: userInfo.displayName }),
717
+ /* @__PURE__ */ jsx9(AvatarFallback, { children: userInfo.initial })
847
718
  ] }),
848
- /* @__PURE__ */ jsx10("span", { className: "hidden sm:inline-block", children: userInfo.displayName }),
849
- /* @__PURE__ */ jsx10(ChevronDown, { className: "h-4 w-4" })
719
+ /* @__PURE__ */ jsx9("span", { className: "hidden sm:inline-block", children: userInfo.displayName }),
720
+ /* @__PURE__ */ jsx9(ChevronDown, { className: "h-4 w-4" })
850
721
  ] }) }),
851
722
  /* @__PURE__ */ jsxs5(SelectContent, { children: [
852
- /* @__PURE__ */ jsx10(SelectLabel, { className: "font-normal", children: /* @__PURE__ */ jsxs5("div", { className: "flex flex-col space-y-1", children: [
853
- /* @__PURE__ */ jsx10("p", { className: "font-medium", children: userInfo.displayName }),
854
- /* @__PURE__ */ jsx10("p", { className: "text-muted-foreground", children: userInfo.email })
723
+ /* @__PURE__ */ jsx9(SelectLabel, { className: "font-normal", children: /* @__PURE__ */ jsxs5("div", { className: "flex flex-col space-y-1", children: [
724
+ /* @__PURE__ */ jsx9("p", { className: "font-medium", children: userInfo.displayName }),
725
+ /* @__PURE__ */ jsx9("p", { className: "text-muted-foreground", children: userInfo.email })
855
726
  ] }) }),
856
- /* @__PURE__ */ jsx10(SelectSeparator, {}),
857
- /* @__PURE__ */ jsx10(DialogTrigger, { asChild: true, children: /* @__PURE__ */ jsxs5(SelectItem, { value: "change-password", children: [
858
- /* @__PURE__ */ jsx10(KeyRound, { className: "mr-2 h-4 w-4" }),
859
- /* @__PURE__ */ jsx10("span", { children: "Change Password" })
727
+ /* @__PURE__ */ jsx9(SelectSeparator, {}),
728
+ /* @__PURE__ */ jsx9(DialogTrigger, { asChild: true, children: /* @__PURE__ */ jsxs5(SelectItem, { value: "change-password", children: [
729
+ /* @__PURE__ */ jsx9(KeyRound, { className: "mr-2 h-4 w-4" }),
730
+ /* @__PURE__ */ jsx9("span", { children: "Change Password" })
860
731
  ] }) }),
861
732
  /* @__PURE__ */ jsxs5(SelectItem, { value: "sign-out", onClick: handleSignOut, children: [
862
- /* @__PURE__ */ jsx10(LogOut, { className: "mr-2 h-4 w-4" }),
863
- /* @__PURE__ */ jsx10("span", { children: "Sign out" })
733
+ /* @__PURE__ */ jsx9(LogOut, { className: "mr-2 h-4 w-4" }),
734
+ /* @__PURE__ */ jsx9("span", { children: "Sign out" })
864
735
  ] })
865
736
  ] })
866
737
  ] }),
867
- /* @__PURE__ */ jsx10(DialogOverlay, {}),
738
+ /* @__PURE__ */ jsx9(DialogOverlay, {}),
868
739
  /* @__PURE__ */ jsxs5(DialogContent, { className, children: [
869
- /* @__PURE__ */ jsx10(DialogHeader, { children: /* @__PURE__ */ jsx10(DialogTitle, { children: "Change Password" }) }),
870
- /* @__PURE__ */ jsx10(
740
+ /* @__PURE__ */ jsx9(DialogHeader, { children: /* @__PURE__ */ jsx9(DialogTitle, { children: "Change Password" }) }),
741
+ /* @__PURE__ */ jsx9(
871
742
  PasswordChangeForm,
872
743
  {
873
744
  onSubmit: async ({ newPassword, confirmPassword }) => {
@@ -885,7 +756,7 @@ var UserMenu = React8.memo(function UserMenu2({
885
756
  ] })
886
757
  ] });
887
758
  });
888
- var UserMenuLoading = React8.memo(function UserMenuLoading2() {
759
+ var UserMenuLoading = React7.memo(function UserMenuLoading2() {
889
760
  return /* @__PURE__ */ jsxs5("div", { className: "relative inline-block text-left", children: [
890
761
  /* @__PURE__ */ jsxs5(
891
762
  "button",
@@ -894,23 +765,23 @@ var UserMenuLoading = React8.memo(function UserMenuLoading2() {
894
765
  disabled: true,
895
766
  className: "flex items-center space-x-2 px-3 py-2 text-sm font-medium text-muted-foreground bg-muted border border-input rounded-md",
896
767
  children: [
897
- /* @__PURE__ */ jsx10("div", { className: "w-6 h-6 rounded-full bg-muted animate-pulse" }),
898
- /* @__PURE__ */ jsx10("span", { className: "truncate max-w-[150px]", children: "Loading..." }),
899
- /* @__PURE__ */ jsx10(ChevronDown, { className: "w-4 h-4 text-muted-foreground" })
768
+ /* @__PURE__ */ jsx9("div", { className: "w-6 h-6 rounded-full bg-muted animate-pulse" }),
769
+ /* @__PURE__ */ jsx9("span", { className: "truncate max-w-[150px]", children: "Loading..." }),
770
+ /* @__PURE__ */ jsx9(ChevronDown, { className: "w-4 h-4 text-muted-foreground" })
900
771
  ]
901
772
  }
902
773
  ),
903
- /* @__PURE__ */ jsx10("div", { role: "status", "aria-label": "Loading user menu", "aria-live": "polite", className: "w-6 h-6 rounded-full bg-muted animate-pulse" })
774
+ /* @__PURE__ */ jsx9("div", { role: "status", "aria-label": "Loading user menu", "aria-live": "polite", className: "w-6 h-6 rounded-full bg-muted animate-pulse" })
904
775
  ] });
905
776
  });
906
777
  UserMenu.Loading = UserMenuLoading;
907
778
 
908
779
  // src/components/NavigationMenu/NavigationMenu.tsx
909
- import * as React9 from "react";
780
+ import * as React8 from "react";
910
781
  import { ChevronDown as ChevronDown2 } from "lucide-react";
911
782
  init_UnifiedAuthProvider();
912
- import { jsx as jsx11, jsxs as jsxs6 } from "react/jsx-runtime";
913
- var NavigationMenu = React9.forwardRef(({
783
+ import { jsx as jsx10, jsxs as jsxs6 } from "react/jsx-runtime";
784
+ var NavigationMenu = React8.forwardRef(({
914
785
  items,
915
786
  mode = "dropdown",
916
787
  currentPath,
@@ -928,15 +799,15 @@ var NavigationMenu = React9.forwardRef(({
928
799
  filterByPermissions = true,
929
800
  ...props
930
801
  }, ref) => {
931
- const [expandedItems, setExpandedItems] = React9.useState(/* @__PURE__ */ new Set());
932
- const buttonRef = React9.useRef(null);
802
+ const [expandedItems, setExpandedItems] = React8.useState(/* @__PURE__ */ new Set());
803
+ const buttonRef = React8.useRef(null);
933
804
  let authContext = null;
934
805
  try {
935
806
  authContext = useUnifiedAuth();
936
807
  } catch (error) {
937
808
  console.warn("[NavigationMenu] useUnifiedAuth not available, running in unauthenticated mode");
938
809
  }
939
- const filteredItems = React9.useMemo(() => {
810
+ const filteredItems = React8.useMemo(() => {
940
811
  if (!filterByPermissions || !authContext) return items || [];
941
812
  return (items || []).filter((item) => {
942
813
  if (item.meta?.hidden) return false;
@@ -964,7 +835,7 @@ var NavigationMenu = React9.forwardRef(({
964
835
  return true;
965
836
  });
966
837
  }, [items, filterByPermissions, authContext]);
967
- React9.useEffect(() => {
838
+ React8.useEffect(() => {
968
839
  if (auditLog && authContext) {
969
840
  console.log("[NavigationMenu] Navigation access attempt:", {
970
841
  itemId: "navigation-menu",
@@ -1061,7 +932,7 @@ var NavigationMenu = React9.forwardRef(({
1061
932
  const hasChildren = item.children && item.children.length > 0;
1062
933
  const isExpanded = expandedItems.has(item.id);
1063
934
  const itemIsActive = isActiveItem(item);
1064
- return /* @__PURE__ */ jsx11("li", { role: "none", children: hasChildren ? /* @__PURE__ */ jsxs6("div", { children: [
935
+ return /* @__PURE__ */ jsx10("li", { role: "none", children: hasChildren ? /* @__PURE__ */ jsxs6("div", { children: [
1065
936
  /* @__PURE__ */ jsxs6(
1066
937
  "button",
1067
938
  {
@@ -1071,21 +942,21 @@ var NavigationMenu = React9.forwardRef(({
1071
942
  "aria-controls": `submenu-${item.id}`,
1072
943
  "aria-current": itemIsActive ? "page" : void 0,
1073
944
  children: [
1074
- /* @__PURE__ */ jsx11("span", { children: item.label }),
1075
- /* @__PURE__ */ jsx11(ChevronDown2, { "aria-hidden": "true" })
945
+ /* @__PURE__ */ jsx10("span", { children: item.label }),
946
+ /* @__PURE__ */ jsx10(ChevronDown2, { "aria-hidden": "true" })
1076
947
  ]
1077
948
  }
1078
949
  ),
1079
- isExpanded && item.children && /* @__PURE__ */ jsx11(
950
+ isExpanded && item.children && /* @__PURE__ */ jsx10(
1080
951
  "ul",
1081
952
  {
1082
953
  id: `submenu-${item.id}`,
1083
954
  role: "menu",
1084
955
  "aria-label": `${item.label} submenu`,
1085
- children: item.children.map((child) => /* @__PURE__ */ jsx11(React9.Fragment, { children: renderHierarchicalItem(child, level + 1) }, child.id))
956
+ children: item.children.map((child) => /* @__PURE__ */ jsx10(React8.Fragment, { children: renderHierarchicalItem(child, level + 1) }, child.id))
1086
957
  }
1087
958
  )
1088
- ] }) : /* @__PURE__ */ jsx11(
959
+ ] }) : /* @__PURE__ */ jsx10(
1089
960
  "a",
1090
961
  {
1091
962
  href: item.href || "#",
@@ -1110,19 +981,19 @@ var NavigationMenu = React9.forwardRef(({
1110
981
  className,
1111
982
  "data-testid": "navigation-menu-root",
1112
983
  children: [
1113
- /* @__PURE__ */ jsx11(
984
+ /* @__PURE__ */ jsx10(
1114
985
  SelectTrigger,
1115
986
  {
1116
987
  ref: buttonRef,
1117
988
  disabled,
1118
989
  "aria-label": buttonText,
1119
990
  "data-testid": "navigation-menu-trigger",
1120
- children: /* @__PURE__ */ jsx11(SelectValue, { placeholder: buttonText })
991
+ children: /* @__PURE__ */ jsx10(SelectValue, { placeholder: buttonText })
1121
992
  }
1122
993
  ),
1123
- /* @__PURE__ */ jsx11(SelectContent, { children: filteredItems.map((item) => {
994
+ /* @__PURE__ */ jsx10(SelectContent, { children: filteredItems.map((item) => {
1124
995
  const isActive = isActiveItem(item);
1125
- return /* @__PURE__ */ jsx11(
996
+ return /* @__PURE__ */ jsx10(
1126
997
  SelectItem,
1127
998
  {
1128
999
  value: item.id,
@@ -1137,14 +1008,14 @@ var NavigationMenu = React9.forwardRef(({
1137
1008
  }
1138
1009
  );
1139
1010
  }
1140
- return /* @__PURE__ */ jsx11(
1011
+ return /* @__PURE__ */ jsx10(
1141
1012
  "nav",
1142
1013
  {
1143
1014
  ref,
1144
1015
  className,
1145
1016
  "aria-label": navigationLabel,
1146
1017
  ...props,
1147
- children: /* @__PURE__ */ jsx11("ul", { role: "menubar", children: filteredItems.map((item) => /* @__PURE__ */ jsx11(React9.Fragment, { children: renderHierarchicalItem(item, 0) }, item.id)) })
1018
+ children: /* @__PURE__ */ jsx10("ul", { role: "menubar", children: filteredItems.map((item) => /* @__PURE__ */ jsx10(React8.Fragment, { children: renderHierarchicalItem(item, 0) }, item.id)) })
1148
1019
  }
1149
1020
  );
1150
1021
  });
@@ -1152,7 +1023,7 @@ NavigationMenu.displayName = "NavigationMenu";
1152
1023
 
1153
1024
  // src/components/Header/Header.tsx
1154
1025
  init_cn();
1155
- import { jsx as jsx12, jsxs as jsxs7 } from "react/jsx-runtime";
1026
+ import { jsx as jsx11, jsxs as jsxs7 } from "react/jsx-runtime";
1156
1027
  function Header({
1157
1028
  logoUrl,
1158
1029
  logoAlt = "Logo",
@@ -1169,18 +1040,18 @@ function Header({
1169
1040
  currentPath,
1170
1041
  onNavigate
1171
1042
  }) {
1172
- return /* @__PURE__ */ jsx12("header", { className: cn(
1043
+ return /* @__PURE__ */ jsx11("header", { className: cn(
1173
1044
  "w-full border-b border-main-200 h-16 shadow-sm bg-main-100 ",
1174
1045
  className
1175
1046
  ), role: "banner", children: /* @__PURE__ */ jsxs7("nav", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto grid grid-cols-[auto_auto_1fr_auto] gap-4 h-full items-center", children: [
1176
- logo ? logo : logoUrl ? /* @__PURE__ */ jsx12(
1047
+ logo ? logo : logoUrl ? /* @__PURE__ */ jsx11(
1177
1048
  "img",
1178
1049
  {
1179
1050
  src: logoUrl,
1180
1051
  alt: logoAlt || "Logo",
1181
1052
  className: "h-[2.15rem] w-auto max-w-[200px] object-contain rounded-md shadow-md bg-transparent"
1182
1053
  }
1183
- ) : /* @__PURE__ */ jsx12(
1054
+ ) : /* @__PURE__ */ jsx11(
1184
1055
  "img",
1185
1056
  {
1186
1057
  src: "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' fill='%23000'/%3E%3Ctext x='16' y='20' text-anchor='middle' fill='white' font-family='Arial' font-size='14' font-weight='bold'%3EL%3C/text%3E%3C/svg%3E",
@@ -1188,7 +1059,7 @@ function Header({
1188
1059
  className: "h-8 w-8 shadow-md"
1189
1060
  }
1190
1061
  ),
1191
- navItems && navItems.length > 0 && /* @__PURE__ */ jsx12(
1062
+ navItems && navItems.length > 0 && /* @__PURE__ */ jsx11(
1192
1063
  NavigationMenu,
1193
1064
  {
1194
1065
  items: navItems,
@@ -1198,7 +1069,7 @@ function Header({
1198
1069
  className: "w-48"
1199
1070
  }
1200
1071
  ),
1201
- showEventSelector && /* @__PURE__ */ jsx12(
1072
+ showEventSelector && /* @__PURE__ */ jsx11(
1202
1073
  EventSelector,
1203
1074
  {
1204
1075
  placeholder: "Select event",
@@ -1207,7 +1078,7 @@ function Header({
1207
1078
  }
1208
1079
  ),
1209
1080
  actions,
1210
- showUserMenu && (userMenu ? userMenu : /* @__PURE__ */ jsx12(
1081
+ showUserMenu && (userMenu ? userMenu : /* @__PURE__ */ jsx11(
1211
1082
  UserMenu,
1212
1083
  {
1213
1084
  user: user || null,
@@ -1221,8 +1092,8 @@ function Header({
1221
1092
 
1222
1093
  // src/components/Footer/Footer.tsx
1223
1094
  init_cn();
1224
- import React10 from "react";
1225
- import { Fragment as Fragment3, jsx as jsx13, jsxs as jsxs8 } from "react/jsx-runtime";
1095
+ import React9 from "react";
1096
+ import { Fragment as Fragment3, jsx as jsx12, jsxs as jsxs8 } from "react/jsx-runtime";
1226
1097
  var FooterComponent = ({
1227
1098
  companyName = "Solvera Solutions Pty Ltd",
1228
1099
  year = (/* @__PURE__ */ new Date()).getFullYear(),
@@ -1233,22 +1104,22 @@ var FooterComponent = ({
1233
1104
  children
1234
1105
  }) => {
1235
1106
  const copyrightText = copyright || `\xA9 Copyright 2022\u2013${year} all rights reserved, ${companyName}.`;
1236
- return /* @__PURE__ */ jsx13("footer", { className: cn("mt-8 py-6 flex justify-center border-t border-border bg-main-100", className), children: /* @__PURE__ */ jsxs8("section", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto text-center", children: [
1237
- logo && /* @__PURE__ */ jsx13("img", { src: logo, alt: "Logo", className: "h-8 w-auto" }),
1238
- children && /* @__PURE__ */ jsx13(Fragment3, { children }),
1239
- /* @__PURE__ */ jsx13("span", { className: "text-muted-foreground", children: copyrightText }),
1240
- links && links.length > 0 && /* @__PURE__ */ jsx13("ul", { className: "flex gap-4 mt-2 md:mt-0", children: links.map((link, index) => /* @__PURE__ */ jsx13("li", { children: /* @__PURE__ */ jsx13("a", { href: link.href, className: "text-muted-foreground hover:text-foreground", children: link.label }) }, index)) })
1107
+ return /* @__PURE__ */ jsx12("footer", { className: cn("mt-8 py-6 flex justify-center border-t border-border bg-main-100", className), children: /* @__PURE__ */ jsxs8("section", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto text-center", children: [
1108
+ logo && /* @__PURE__ */ jsx12("img", { src: logo, alt: "Logo", className: "h-8 w-auto" }),
1109
+ children && /* @__PURE__ */ jsx12(Fragment3, { children }),
1110
+ /* @__PURE__ */ jsx12("span", { className: "text-muted-foreground", children: copyrightText }),
1111
+ links && links.length > 0 && /* @__PURE__ */ jsx12("ul", { className: "flex gap-4 mt-2 md:mt-0", children: links.map((link, index) => /* @__PURE__ */ jsx12("li", { children: /* @__PURE__ */ jsx12("a", { href: link.href, className: "text-muted-foreground hover:text-foreground", children: link.label }) }, index)) })
1241
1112
  ] }) });
1242
1113
  };
1243
1114
  FooterComponent.displayName = "Footer";
1244
- var Footer = React10.memo(FooterComponent);
1115
+ var Footer = React9.memo(FooterComponent);
1245
1116
  Footer.displayName = "Footer";
1246
1117
 
1247
1118
  // src/components/PaceAppLayout/PaceAppLayout.tsx
1248
1119
  init_UnifiedAuthProvider();
1249
1120
  import { useState as useState5, useEffect as useEffect3, useMemo as useMemo5, useCallback as useCallback3 } from "react";
1250
1121
  import { Outlet, useNavigate, useLocation } from "react-router-dom";
1251
- import { Fragment as Fragment4, jsx as jsx14, jsxs as jsxs9 } from "react/jsx-runtime";
1122
+ import { Fragment as Fragment4, jsx as jsx13, jsxs as jsxs9 } from "react/jsx-runtime";
1252
1123
  var EMPTY_PAGE_ID_MAPPING = {};
1253
1124
  var EMPTY_ROUTE_PERMISSIONS = {};
1254
1125
  function PaceAppLayout({
@@ -1474,33 +1345,33 @@ function PaceAppLayout({
1474
1345
  return result || { error: null };
1475
1346
  };
1476
1347
  if (enforcePermissions && isCheckingPermission) {
1477
- return /* @__PURE__ */ jsx14("div", { className: "flex items-center justify-center min-h-screen", children: /* @__PURE__ */ jsxs9("div", { className: "text-center", children: [
1478
- /* @__PURE__ */ jsx14("div", { className: "animate-spin rounded-full h-8 w-8 border-b-2 border-sec-900 mx-auto mb-4" }),
1479
- /* @__PURE__ */ jsx14("p", { className: "text-sec-600", children: "Checking permissions..." })
1348
+ return /* @__PURE__ */ jsx13("div", { className: "flex items-center justify-center min-h-screen", children: /* @__PURE__ */ jsxs9("div", { className: "text-center", children: [
1349
+ /* @__PURE__ */ jsx13("div", { className: "animate-spin rounded-full h-8 w-8 border-b-2 border-sec-900 mx-auto mb-4" }),
1350
+ /* @__PURE__ */ jsx13("p", { className: "text-sec-600", children: "Checking permissions..." })
1480
1351
  ] }) });
1481
1352
  }
1482
1353
  if (enforcePermissions && permissionError) {
1483
- return /* @__PURE__ */ jsx14("div", { className: "flex items-center justify-center min-h-screen", children: /* @__PURE__ */ jsxs9("div", { className: "text-center", children: [
1484
- /* @__PURE__ */ jsx14("h2", { className: "text-xl font-semibold text-acc-600 mb-2", children: "Permission Error" }),
1485
- /* @__PURE__ */ jsx14("p", { className: "text-sec-600 mb-4", children: permissionError.message }),
1486
- /* @__PURE__ */ jsx14(Button, { onClick: () => navigate("/"), children: "Go Home" })
1354
+ return /* @__PURE__ */ jsx13("div", { className: "flex items-center justify-center min-h-screen", children: /* @__PURE__ */ jsxs9("div", { className: "text-center", children: [
1355
+ /* @__PURE__ */ jsx13("h2", { className: "text-xl font-semibold text-acc-600 mb-2", children: "Permission Error" }),
1356
+ /* @__PURE__ */ jsx13("p", { className: "text-sec-600 mb-4", children: permissionError.message }),
1357
+ /* @__PURE__ */ jsx13(Button, { onClick: () => navigate("/"), children: "Go Home" })
1487
1358
  ] }) });
1488
1359
  }
1489
1360
  if (enforcePermissions && hasPermission === false) {
1490
1361
  if (enforcePagePermissions && pagePermissionFallback) {
1491
- return /* @__PURE__ */ jsx14(Fragment4, { children: pagePermissionFallback });
1362
+ return /* @__PURE__ */ jsx13(Fragment4, { children: pagePermissionFallback });
1492
1363
  }
1493
1364
  if (permissionFallback) {
1494
- return /* @__PURE__ */ jsx14(Fragment4, { children: permissionFallback });
1365
+ return /* @__PURE__ */ jsx13(Fragment4, { children: permissionFallback });
1495
1366
  }
1496
- return /* @__PURE__ */ jsx14("div", { className: "flex items-center justify-center min-h-screen", children: /* @__PURE__ */ jsxs9("div", { className: "text-center", children: [
1497
- /* @__PURE__ */ jsx14("h2", { className: "text-xl font-semibold text-acc-600 mb-2", children: "Access Denied" }),
1498
- /* @__PURE__ */ jsx14("p", { className: "text-sec-600 mb-4", children: "You don't have permission to access this page." }),
1499
- /* @__PURE__ */ jsx14(Button, { onClick: () => navigate("/"), children: "Go Home" })
1367
+ return /* @__PURE__ */ jsx13("div", { className: "flex items-center justify-center min-h-screen", children: /* @__PURE__ */ jsxs9("div", { className: "text-center", children: [
1368
+ /* @__PURE__ */ jsx13("h2", { className: "text-xl font-semibold text-acc-600 mb-2", children: "Access Denied" }),
1369
+ /* @__PURE__ */ jsx13("p", { className: "text-sec-600 mb-4", children: "You don't have permission to access this page." }),
1370
+ /* @__PURE__ */ jsx13(Button, { onClick: () => navigate("/"), children: "Go Home" })
1500
1371
  ] }) });
1501
1372
  }
1502
1373
  return /* @__PURE__ */ jsxs9(Fragment4, { children: [
1503
- /* @__PURE__ */ jsx14(
1374
+ /* @__PURE__ */ jsx13(
1504
1375
  Header,
1505
1376
  {
1506
1377
  logo: customLogo || void 0,
@@ -1523,15 +1394,15 @@ function PaceAppLayout({
1523
1394
  className: headerClassName || "sticky top-0 z-[40] w-full"
1524
1395
  }
1525
1396
  ),
1526
- /* @__PURE__ */ jsx14("main", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto py-8", children: /* @__PURE__ */ jsx14(Outlet, {}) }),
1527
- /* @__PURE__ */ jsx14(Footer, {})
1397
+ /* @__PURE__ */ jsx13("main", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto py-8", children: /* @__PURE__ */ jsx13(Outlet, {}) }),
1398
+ /* @__PURE__ */ jsx13(Footer, {})
1528
1399
  ] });
1529
1400
  }
1530
1401
 
1531
1402
  // src/components/PaceLoginPage/PaceLoginPage.tsx
1532
1403
  import { useEffect as useEffect4, useState as useState6 } from "react";
1533
1404
  import { useNavigate as useNavigate2 } from "react-router-dom";
1534
- import { jsx as jsx15, jsxs as jsxs10 } from "react/jsx-runtime";
1405
+ import { jsx as jsx14, jsxs as jsxs10 } from "react/jsx-runtime";
1535
1406
  var PaceLoginPage = ({
1536
1407
  appName = "Pace",
1537
1408
  onSuccessRedirectPath = "/"
@@ -1564,7 +1435,7 @@ var PaceLoginPage = ({
1564
1435
  }
1565
1436
  };
1566
1437
  return /* @__PURE__ */ jsxs10("main", { className: "min-h-screen grid mx-auto w-fit content-center justify-items-center gap-y-8", "aria-label": `${appName} Login Page`, children: [
1567
- /* @__PURE__ */ jsx15(
1438
+ /* @__PURE__ */ jsx14(
1568
1439
  "img",
1569
1440
  {
1570
1441
  src: `/${appName.toLowerCase()}_logo_square.svg`,
@@ -1572,7 +1443,7 @@ var PaceLoginPage = ({
1572
1443
  className: "h-48"
1573
1444
  }
1574
1445
  ),
1575
- /* @__PURE__ */ jsx15(
1446
+ /* @__PURE__ */ jsx14(
1576
1447
  LoginForm,
1577
1448
  {
1578
1449
  className: "w-md",
@@ -1584,13 +1455,13 @@ var PaceLoginPage = ({
1584
1455
  }
1585
1456
  }
1586
1457
  ),
1587
- authError && /* @__PURE__ */ jsx15("em", { className: "mt-4 text-destructive text-center", children: authError.message })
1458
+ authError && /* @__PURE__ */ jsx14("em", { className: "mt-4 text-destructive text-center", children: authError.message })
1588
1459
  ] });
1589
1460
  };
1590
1461
 
1591
1462
  // src/components/ErrorBoundary/ErrorBoundary.tsx
1592
1463
  import { Component } from "react";
1593
- import { jsx as jsx16, jsxs as jsxs11 } from "react/jsx-runtime";
1464
+ import { jsx as jsx15, jsxs as jsxs11 } from "react/jsx-runtime";
1594
1465
  var ErrorBoundary = class extends Component {
1595
1466
  constructor(props) {
1596
1467
  super(props);
@@ -1663,20 +1534,20 @@ var ErrorBoundary = class extends Component {
1663
1534
  if (fallback) {
1664
1535
  return fallback;
1665
1536
  }
1666
- return /* @__PURE__ */ jsx16(
1537
+ return /* @__PURE__ */ jsx15(
1667
1538
  "div",
1668
1539
  {
1669
1540
  role: "alert",
1670
1541
  className: "p-6 bg-destructive/10 border border-destructive/20 rounded-lg",
1671
1542
  "data-error-boundary": errorId,
1672
1543
  children: /* @__PURE__ */ jsxs11("div", { className: "flex items-start gap-3", children: [
1673
- /* @__PURE__ */ jsx16("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsx16("svg", { className: "w-5 h-5 text-destructive", viewBox: "0 0 20 20", fill: "currentColor", children: /* @__PURE__ */ jsx16("path", { fillRule: "evenodd", d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z", clipRule: "evenodd" }) }) }),
1544
+ /* @__PURE__ */ jsx15("div", { className: "flex-shrink-0", children: /* @__PURE__ */ jsx15("svg", { className: "w-5 h-5 text-destructive", viewBox: "0 0 20 20", fill: "currentColor", children: /* @__PURE__ */ jsx15("path", { fillRule: "evenodd", d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z", clipRule: "evenodd" }) }) }),
1674
1545
  /* @__PURE__ */ jsxs11("div", { className: "flex-1 min-w-0", children: [
1675
1546
  /* @__PURE__ */ jsxs11("h3", { className: "text-destructive", children: [
1676
1547
  "Error in ",
1677
1548
  componentName
1678
1549
  ] }),
1679
- /* @__PURE__ */ jsx16("p", { className: "text-destructive/80", children: this.state.error?.message || "An unexpected error occurred." }),
1550
+ /* @__PURE__ */ jsx15("p", { className: "text-destructive/80", children: this.state.error?.message || "An unexpected error occurred." }),
1680
1551
  enableRetry && retryCount < maxRetries && /* @__PURE__ */ jsxs11("div", { className: "flex gap-3 mb-4", children: [
1681
1552
  /* @__PURE__ */ jsxs11(
1682
1553
  "button",
@@ -1692,7 +1563,7 @@ var ErrorBoundary = class extends Component {
1692
1563
  ]
1693
1564
  }
1694
1565
  ),
1695
- /* @__PURE__ */ jsx16(
1566
+ /* @__PURE__ */ jsx15(
1696
1567
  "button",
1697
1568
  {
1698
1569
  onClick: () => window.location.reload(),
@@ -1702,8 +1573,8 @@ var ErrorBoundary = class extends Component {
1702
1573
  )
1703
1574
  ] }),
1704
1575
  retryCount >= maxRetries && /* @__PURE__ */ jsxs11("div", { className: "mb-4 p-3 bg-acc-50 border border-acc-200 rounded-md", children: [
1705
- /* @__PURE__ */ jsx16("p", { className: "text-acc-800", children: "Maximum retry attempts reached. Please reload the page or contact support." }),
1706
- /* @__PURE__ */ jsx16(
1576
+ /* @__PURE__ */ jsx15("p", { className: "text-acc-800", children: "Maximum retry attempts reached. Please reload the page or contact support." }),
1577
+ /* @__PURE__ */ jsx15(
1707
1578
  "button",
1708
1579
  {
1709
1580
  onClick: () => window.location.reload(),
@@ -1727,7 +1598,7 @@ import { useState as useState7, useCallback as useCallback4 } from "react";
1727
1598
  init_Button();
1728
1599
  init_OrganisationProvider();
1729
1600
  import { RefreshCw as RefreshCw2, AlertCircle as AlertCircle2, Building2, Shield } from "lucide-react";
1730
- import { jsx as jsx17, jsxs as jsxs12 } from "react/jsx-runtime";
1601
+ import { jsx as jsx16, jsxs as jsxs12 } from "react/jsx-runtime";
1731
1602
  function OrganisationSelector({
1732
1603
  placeholder = "Select organisation",
1733
1604
  className,
@@ -1792,14 +1663,14 @@ function OrganisationSelector({
1792
1663
  }, [refreshOrganisations]);
1793
1664
  if (orgLoading) {
1794
1665
  return /* @__PURE__ */ jsxs12("div", { className: `flex items-center gap-2 ${className}`, children: [
1795
- /* @__PURE__ */ jsx17(LoadingSpinner, { size: "sm" }),
1796
- /* @__PURE__ */ jsx17("span", { className: "text-sm text-muted-foreground", children: compact ? "Loading..." : "Loading organisations..." })
1666
+ /* @__PURE__ */ jsx16(LoadingSpinner, { size: "sm" }),
1667
+ /* @__PURE__ */ jsx16("span", { className: "text-sm text-muted-foreground", children: compact ? "Loading..." : "Loading organisations..." })
1797
1668
  ] });
1798
1669
  }
1799
1670
  if (orgError) {
1800
1671
  return /* @__PURE__ */ jsxs12("div", { className: `space-y-2 ${className}`, children: [
1801
1672
  /* @__PURE__ */ jsxs12(Alert, { variant: "destructive", children: [
1802
- /* @__PURE__ */ jsx17(AlertCircle2, { className: "h-4 w-4" }),
1673
+ /* @__PURE__ */ jsx16(AlertCircle2, { className: "h-4 w-4" }),
1803
1674
  /* @__PURE__ */ jsxs12(AlertDescription, { children: [
1804
1675
  "Failed to load organisations: ",
1805
1676
  orgError.message
@@ -1814,7 +1685,7 @@ function OrganisationSelector({
1814
1685
  disabled: isLoading,
1815
1686
  className: "w-full",
1816
1687
  children: [
1817
- /* @__PURE__ */ jsx17(RefreshCw2, { className: `h-4 w-4 mr-2 ${isLoading ? "animate-spin" : ""}` }),
1688
+ /* @__PURE__ */ jsx16(RefreshCw2, { className: `h-4 w-4 mr-2 ${isLoading ? "animate-spin" : ""}` }),
1818
1689
  "Retry"
1819
1690
  ]
1820
1691
  }
@@ -1825,8 +1696,8 @@ function OrganisationSelector({
1825
1696
  if (showNoOrganisationsMessage) {
1826
1697
  return /* @__PURE__ */ jsxs12("div", { className: `space-y-2 ${className}`, children: [
1827
1698
  /* @__PURE__ */ jsxs12(Alert, { children: [
1828
- /* @__PURE__ */ jsx17(Building2, { className: "h-4 w-4" }),
1829
- /* @__PURE__ */ jsx17(AlertDescription, { children: "No organisations available. Please contact your administrator to be added to an organisation." })
1699
+ /* @__PURE__ */ jsx16(Building2, { className: "h-4 w-4" }),
1700
+ /* @__PURE__ */ jsx16(AlertDescription, { children: "No organisations available. Please contact your administrator to be added to an organisation." })
1830
1701
  ] }),
1831
1702
  showRetryButton && /* @__PURE__ */ jsxs12(
1832
1703
  Button,
@@ -1837,7 +1708,7 @@ function OrganisationSelector({
1837
1708
  disabled: isLoading,
1838
1709
  className: "w-full",
1839
1710
  children: [
1840
- /* @__PURE__ */ jsx17(RefreshCw2, { className: `h-4 w-4 mr-2 ${isLoading ? "animate-spin" : ""}` }),
1711
+ /* @__PURE__ */ jsx16(RefreshCw2, { className: `h-4 w-4 mr-2 ${isLoading ? "animate-spin" : ""}` }),
1841
1712
  "Check Again"
1842
1713
  ]
1843
1714
  }
@@ -1847,8 +1718,8 @@ function OrganisationSelector({
1847
1718
  return null;
1848
1719
  }
1849
1720
  const switchErrorDisplay = switchError && /* @__PURE__ */ jsxs12(Alert, { variant: "destructive", className: "mt-2", children: [
1850
- /* @__PURE__ */ jsx17(AlertCircle2, { className: "h-4 w-4" }),
1851
- /* @__PURE__ */ jsx17(AlertDescription, { children: switchError })
1721
+ /* @__PURE__ */ jsx16(AlertCircle2, { className: "h-4 w-4" }),
1722
+ /* @__PURE__ */ jsx16(AlertDescription, { children: switchError })
1852
1723
  ] });
1853
1724
  return /* @__PURE__ */ jsxs12("div", { className: `space-y-2 ${className}`, children: [
1854
1725
  /* @__PURE__ */ jsxs12(
@@ -1858,14 +1729,14 @@ function OrganisationSelector({
1858
1729
  onValueChange: handleOrganisationChange,
1859
1730
  disabled: disabled || isLoading,
1860
1731
  children: [
1861
- /* @__PURE__ */ jsx17(SelectTrigger, { className: `${isLoading ? "opacity-50" : ""}`, children: /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-2", children: [
1862
- isLoading ? /* @__PURE__ */ jsx17(LoadingSpinner, { size: "sm" }) : /* @__PURE__ */ jsx17(Building2, { className: "h-4 w-4 text-muted-foreground" }),
1863
- /* @__PURE__ */ jsx17(SelectValue, { placeholder })
1732
+ /* @__PURE__ */ jsx16(SelectTrigger, { className: `${isLoading ? "opacity-50" : ""}`, children: /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-2", children: [
1733
+ isLoading ? /* @__PURE__ */ jsx16(LoadingSpinner, { size: "sm" }) : /* @__PURE__ */ jsx16(Building2, { className: "h-4 w-4 text-muted-foreground" }),
1734
+ /* @__PURE__ */ jsx16(SelectValue, { placeholder })
1864
1735
  ] }) }),
1865
- /* @__PURE__ */ jsx17(SelectContent, { children: organisations.map((org) => {
1736
+ /* @__PURE__ */ jsx16(SelectContent, { children: organisations.map((org) => {
1866
1737
  const userRole = getUserRole(org.id);
1867
1738
  const hasAccess = validateOrganisationAccess(org.id);
1868
- return /* @__PURE__ */ jsx17(
1739
+ return /* @__PURE__ */ jsx16(
1869
1740
  SelectItem,
1870
1741
  {
1871
1742
  value: org.id,
@@ -1873,15 +1744,15 @@ function OrganisationSelector({
1873
1744
  className: !hasAccess ? "opacity-50" : "",
1874
1745
  children: /* @__PURE__ */ jsxs12("div", { className: "flex items-center justify-between w-full", children: [
1875
1746
  /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-2", children: [
1876
- /* @__PURE__ */ jsx17(Building2, { className: "h-4 w-4" }),
1747
+ /* @__PURE__ */ jsx16(Building2, { className: "h-4 w-4" }),
1877
1748
  /* @__PURE__ */ jsxs12("div", { className: "flex flex-col", children: [
1878
- /* @__PURE__ */ jsx17("span", { className: "font-medium", children: org.display_name }),
1879
- !compact && org.description && /* @__PURE__ */ jsx17("span", { className: "text-xs text-muted-foreground truncate max-w-40", children: org.description })
1749
+ /* @__PURE__ */ jsx16("span", { className: "font-medium", children: org.display_name }),
1750
+ !compact && org.description && /* @__PURE__ */ jsx16("span", { className: "text-xs text-muted-foreground truncate max-w-40", children: org.description })
1880
1751
  ] })
1881
1752
  ] }),
1882
1753
  showRole && /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-1 ml-4", children: [
1883
- /* @__PURE__ */ jsx17(Shield, { className: "h-3 w-3 text-muted-foreground" }),
1884
- /* @__PURE__ */ jsx17("span", { className: "text-xs text-muted-foreground capitalize", children: userRole.replace("_", " ") })
1754
+ /* @__PURE__ */ jsx16(Shield, { className: "h-3 w-3 text-muted-foreground" }),
1755
+ /* @__PURE__ */ jsx16("span", { className: "text-xs text-muted-foreground capitalize", children: userRole.replace("_", " ") })
1885
1756
  ] })
1886
1757
  ] })
1887
1758
  },
@@ -1900,7 +1771,7 @@ init_Button();
1900
1771
  import { useState as useState8 } from "react";
1901
1772
  init_cn();
1902
1773
  init_UnifiedAuthProvider();
1903
- import { jsx as jsx18, jsxs as jsxs13 } from "react/jsx-runtime";
1774
+ import { jsx as jsx17, jsxs as jsxs13 } from "react/jsx-runtime";
1904
1775
  function PasswordResetForm({
1905
1776
  onSuccess,
1906
1777
  onError,
@@ -1941,13 +1812,13 @@ function PasswordResetForm({
1941
1812
  setError(null);
1942
1813
  };
1943
1814
  if (isSuccess) {
1944
- return /* @__PURE__ */ jsx18("div", { className: cn("", className), role: "form", children: /* @__PURE__ */ jsxs13("div", { className: "space-y-4 text-center", children: [
1945
- /* @__PURE__ */ jsx18("h2", { children: "Check your email" }),
1815
+ return /* @__PURE__ */ jsx17("div", { className: cn("", className), role: "form", children: /* @__PURE__ */ jsxs13("div", { className: "space-y-4 text-center", children: [
1816
+ /* @__PURE__ */ jsx17("h2", { children: "Check your email" }),
1946
1817
  /* @__PURE__ */ jsxs13("p", { className: "text-sec-600", children: [
1947
1818
  "We have sent a password reset link to ",
1948
1819
  email
1949
1820
  ] }),
1950
- /* @__PURE__ */ jsx18(
1821
+ /* @__PURE__ */ jsx17(
1951
1822
  Button,
1952
1823
  {
1953
1824
  variant: "outline",
@@ -1958,15 +1829,15 @@ function PasswordResetForm({
1958
1829
  )
1959
1830
  ] }) });
1960
1831
  }
1961
- return /* @__PURE__ */ jsx18("div", { className: cn("", className), role: "form", children: /* @__PURE__ */ jsxs13("div", { className: "space-y-4", children: [
1832
+ return /* @__PURE__ */ jsx17("div", { className: cn("", className), role: "form", children: /* @__PURE__ */ jsxs13("div", { className: "space-y-4", children: [
1962
1833
  /* @__PURE__ */ jsxs13("div", { className: "space-y-2", children: [
1963
- /* @__PURE__ */ jsx18("h2", { children: "Reset Password" }),
1964
- /* @__PURE__ */ jsx18("p", { className: "text-sec-600", children: "Enter your email address and we'll send you a reset link." })
1834
+ /* @__PURE__ */ jsx17("h2", { children: "Reset Password" }),
1835
+ /* @__PURE__ */ jsx17("p", { className: "text-sec-600", children: "Enter your email address and we'll send you a reset link." })
1965
1836
  ] }),
1966
1837
  /* @__PURE__ */ jsxs13("form", { onSubmit: handleSubmit, className: "space-y-4", children: [
1967
1838
  /* @__PURE__ */ jsxs13("div", { className: "space-y-2", children: [
1968
- /* @__PURE__ */ jsx18(Label, { htmlFor: "email", children: "Email Address" }),
1969
- /* @__PURE__ */ jsx18(
1839
+ /* @__PURE__ */ jsx17(Label, { htmlFor: "email", children: "Email Address" }),
1840
+ /* @__PURE__ */ jsx17(
1970
1841
  Input,
1971
1842
  {
1972
1843
  id: "email",
@@ -1979,8 +1850,8 @@ function PasswordResetForm({
1979
1850
  }
1980
1851
  )
1981
1852
  ] }),
1982
- error && /* @__PURE__ */ jsx18("div", { className: "text-sm text-destructive", role: "alert", children: error }),
1983
- /* @__PURE__ */ jsx18(
1853
+ error && /* @__PURE__ */ jsx17("div", { className: "text-sm text-destructive", role: "alert", children: error }),
1854
+ /* @__PURE__ */ jsx17(
1984
1855
  Button,
1985
1856
  {
1986
1857
  type: "submit",
@@ -2465,7 +2336,7 @@ function useFileUpload({ supabase, appName, orgId }) {
2465
2336
  // src/components/FileUpload/FileUpload.tsx
2466
2337
  import { useCallback as useCallback6, useState as useState10 } from "react";
2467
2338
  init_Button();
2468
- import { jsx as jsx19, jsxs as jsxs14 } from "react/jsx-runtime";
2339
+ import { jsx as jsx18, jsxs as jsxs14 } from "react/jsx-runtime";
2469
2340
  function FileUpload({
2470
2341
  supabase,
2471
2342
  appName,
@@ -2554,7 +2425,7 @@ function FileUpload({
2554
2425
  onDragOver: handleDrag,
2555
2426
  onDrop: handleDrop,
2556
2427
  children: [
2557
- /* @__PURE__ */ jsx19(
2428
+ /* @__PURE__ */ jsx18(
2558
2429
  "input",
2559
2430
  {
2560
2431
  type: "file",
@@ -2566,8 +2437,8 @@ function FileUpload({
2566
2437
  }
2567
2438
  ),
2568
2439
  children || /* @__PURE__ */ jsxs14("div", { className: "file-upload__content", children: [
2569
- /* @__PURE__ */ jsx19("p", { className: "file-upload__text", children: dragActive ? "Drop files here" : "Drag and drop files here or click to select" }),
2570
- /* @__PURE__ */ jsx19(
2440
+ /* @__PURE__ */ jsx18("p", { className: "file-upload__text", children: dragActive ? "Drop files here" : "Drag and drop files here or click to select" }),
2441
+ /* @__PURE__ */ jsx18(
2571
2442
  Button,
2572
2443
  {
2573
2444
  type: "button",
@@ -2582,24 +2453,24 @@ function FileUpload({
2582
2453
  }
2583
2454
  ),
2584
2455
  selectedFiles.length > 0 && /* @__PURE__ */ jsxs14("div", { className: "file-upload__files", children: [
2585
- /* @__PURE__ */ jsx19("h4", { className: "file-upload__files-title", children: "Selected Files:" }),
2586
- /* @__PURE__ */ jsx19("ul", { className: "file-upload__files-list", children: selectedFiles.map((file, index) => /* @__PURE__ */ jsxs14("li", { className: "file-upload__file-item", children: [
2587
- /* @__PURE__ */ jsx19("span", { className: "file-upload__file-name", children: file.name }),
2588
- /* @__PURE__ */ jsx19("span", { className: "file-upload__file-size", children: formatFileSize(file.size) })
2456
+ /* @__PURE__ */ jsx18("h4", { className: "file-upload__files-title", children: "Selected Files:" }),
2457
+ /* @__PURE__ */ jsx18("ul", { className: "file-upload__files-list", children: selectedFiles.map((file, index) => /* @__PURE__ */ jsxs14("li", { className: "file-upload__file-item", children: [
2458
+ /* @__PURE__ */ jsx18("span", { className: "file-upload__file-name", children: file.name }),
2459
+ /* @__PURE__ */ jsx18("span", { className: "file-upload__file-size", children: formatFileSize(file.size) })
2589
2460
  ] }, index)) })
2590
2461
  ] }),
2591
- validationErrors.length > 0 && /* @__PURE__ */ jsx19(Alert, { variant: "destructive", className: "file-upload__errors", children: /* @__PURE__ */ jsx19("ul", { children: validationErrors.map((error, index) => /* @__PURE__ */ jsx19("li", { children: error }, index)) }) }),
2462
+ validationErrors.length > 0 && /* @__PURE__ */ jsx18(Alert, { variant: "destructive", className: "file-upload__errors", children: /* @__PURE__ */ jsx18("ul", { children: validationErrors.map((error, index) => /* @__PURE__ */ jsx18("li", { children: error }, index)) }) }),
2592
2463
  isUploading && /* @__PURE__ */ jsxs14("div", { className: "file-upload__progress", children: [
2593
- /* @__PURE__ */ jsx19(Progress, { value: uploadProgress, max: 100 }),
2464
+ /* @__PURE__ */ jsx18(Progress, { value: uploadProgress, max: 100 }),
2594
2465
  /* @__PURE__ */ jsxs14("p", { className: "file-upload__progress-text", children: [
2595
2466
  "Uploading... ",
2596
2467
  uploadProgress,
2597
2468
  "%"
2598
2469
  ] })
2599
2470
  ] }),
2600
- uploadError && /* @__PURE__ */ jsx19(Alert, { variant: "destructive", className: "file-upload__error", children: uploadError }),
2471
+ uploadError && /* @__PURE__ */ jsx18(Alert, { variant: "destructive", className: "file-upload__error", children: uploadError }),
2601
2472
  selectedFiles.length > 0 && /* @__PURE__ */ jsxs14("div", { className: "file-upload__actions", children: [
2602
- /* @__PURE__ */ jsx19(
2473
+ /* @__PURE__ */ jsx18(
2603
2474
  Button,
2604
2475
  {
2605
2476
  onClick: handleUpload,
@@ -2608,7 +2479,7 @@ function FileUpload({
2608
2479
  children: isUploading ? "Uploading..." : `Upload ${selectedFiles.length} file${selectedFiles.length > 1 ? "s" : ""}`
2609
2480
  }
2610
2481
  ),
2611
- /* @__PURE__ */ jsx19(
2482
+ /* @__PURE__ */ jsx18(
2612
2483
  Button,
2613
2484
  {
2614
2485
  variant: "outline",
@@ -2624,9 +2495,9 @@ function FileUpload({
2624
2495
 
2625
2496
  // src/components/Table/Table.tsx
2626
2497
  init_cn();
2627
- import * as React17 from "react";
2628
- import { jsx as jsx20 } from "react/jsx-runtime";
2629
- var Table = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
2498
+ import * as React16 from "react";
2499
+ import { jsx as jsx19 } from "react/jsx-runtime";
2500
+ var Table = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
2630
2501
  "table",
2631
2502
  {
2632
2503
  ref,
@@ -2635,9 +2506,9 @@ var Table = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */
2635
2506
  }
2636
2507
  ));
2637
2508
  Table.displayName = "Table";
2638
- var TableHeader = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
2509
+ var TableHeader = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
2639
2510
  TableHeader.displayName = "TableHeader";
2640
- var TableBody = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
2511
+ var TableBody = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
2641
2512
  "tbody",
2642
2513
  {
2643
2514
  ref,
@@ -2646,7 +2517,7 @@ var TableBody = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE_
2646
2517
  }
2647
2518
  ));
2648
2519
  TableBody.displayName = "TableBody";
2649
- var TableFooter = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
2520
+ var TableFooter = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
2650
2521
  "tfoot",
2651
2522
  {
2652
2523
  ref,
@@ -2658,7 +2529,7 @@ var TableFooter = React17.forwardRef(({ className, ...props }, ref) => /* @__PUR
2658
2529
  }
2659
2530
  ));
2660
2531
  TableFooter.displayName = "TableFooter";
2661
- var TableRow = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
2532
+ var TableRow = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
2662
2533
  "tr",
2663
2534
  {
2664
2535
  ref,
@@ -2670,7 +2541,7 @@ var TableRow = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__
2670
2541
  }
2671
2542
  ));
2672
2543
  TableRow.displayName = "TableRow";
2673
- var TableHead = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
2544
+ var TableHead = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
2674
2545
  "th",
2675
2546
  {
2676
2547
  ref,
@@ -2682,7 +2553,7 @@ var TableHead = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE_
2682
2553
  }
2683
2554
  ));
2684
2555
  TableHead.displayName = "TableHead";
2685
- var TableCell = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
2556
+ var TableCell = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
2686
2557
  "td",
2687
2558
  {
2688
2559
  ref,
@@ -2691,7 +2562,7 @@ var TableCell = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE_
2691
2562
  }
2692
2563
  ));
2693
2564
  TableCell.displayName = "TableCell";
2694
- var TableCaption = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
2565
+ var TableCaption = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
2695
2566
  "caption",
2696
2567
  {
2697
2568
  ref,
@@ -2703,7 +2574,7 @@ TableCaption.displayName = "TableCaption";
2703
2574
 
2704
2575
  // src/components/PublicLayout/EventLogo.tsx
2705
2576
  import { useMemo as useMemo6 } from "react";
2706
- import { jsx as jsx21 } from "react/jsx-runtime";
2577
+ import { jsx as jsx20 } from "react/jsx-runtime";
2707
2578
  var sizeClasses = {
2708
2579
  xs: "h-4 w-4 text-xs",
2709
2580
  sm: "h-6 w-6 text-sm",
@@ -2748,7 +2619,7 @@ function EventLogo({
2748
2619
  const hasValidOrganisationId = organisationId && uuidRegex.test(organisationId);
2749
2620
  const { supabase } = usePublicPageContext();
2750
2621
  if (!supabase) {
2751
- return /* @__PURE__ */ jsx21("div", { className: `${sizeClasses[size]} ${className}`.trim(), title: `${eventName} logo (Supabase not configured)`, children: eventName ? defaultGenerateFallbackText(eventName) : "EV" });
2622
+ return /* @__PURE__ */ jsx20("div", { className: `${sizeClasses[size]} ${className}`.trim(), title: `${eventName} logo (Supabase not configured)`, children: eventName ? defaultGenerateFallbackText(eventName) : "EV" });
2752
2623
  }
2753
2624
  const {
2754
2625
  logoUrl,
@@ -2772,30 +2643,30 @@ function EventLogo({
2772
2643
  return `${baseClasses} ${sizeClass} ${className}`.trim();
2773
2644
  }, [sizeClass, className]);
2774
2645
  if (!hasValidOrganisationId && !isLoading && !logoUrl && showFallback) {
2775
- return /* @__PURE__ */ jsx21("div", { className: combinedClasses, title: `${eventName} logo (invalid organisation ID)`, children: fallbackText });
2646
+ return /* @__PURE__ */ jsx20("div", { className: combinedClasses, title: `${eventName} logo (invalid organisation ID)`, children: fallbackText });
2776
2647
  }
2777
2648
  if (isLoading) {
2778
2649
  if (LoadingComponent) {
2779
- return /* @__PURE__ */ jsx21(LoadingComponent, {});
2650
+ return /* @__PURE__ */ jsx20(LoadingComponent, {});
2780
2651
  }
2781
- return /* @__PURE__ */ jsx21("div", { className: `${combinedClasses} animate-pulse`, children: /* @__PURE__ */ jsx21("div", { className: "w-3/4 h-3/4 bg-gray-300 rounded" }) });
2652
+ return /* @__PURE__ */ jsx20("div", { className: `${combinedClasses} animate-pulse`, children: /* @__PURE__ */ jsx20("div", { className: "w-3/4 h-3/4 bg-gray-300 rounded" }) });
2782
2653
  }
2783
2654
  if (error) {
2784
2655
  if (ErrorComponent) {
2785
- return /* @__PURE__ */ jsx21(ErrorComponent, { error });
2656
+ return /* @__PURE__ */ jsx20(ErrorComponent, { error });
2786
2657
  }
2787
2658
  if (showFallback) {
2788
- return /* @__PURE__ */ jsx21("div", { className: combinedClasses, title: `${eventName} (logo unavailable)`, children: fallbackText });
2659
+ return /* @__PURE__ */ jsx20("div", { className: combinedClasses, title: `${eventName} (logo unavailable)`, children: fallbackText });
2789
2660
  }
2790
2661
  return null;
2791
2662
  }
2792
2663
  if (!logoUrl) {
2793
2664
  if (showFallback) {
2794
- return /* @__PURE__ */ jsx21("div", { className: combinedClasses, title: `${eventName} logo`, children: fallbackText });
2665
+ return /* @__PURE__ */ jsx20("div", { className: combinedClasses, title: `${eventName} logo`, children: fallbackText });
2795
2666
  }
2796
2667
  return null;
2797
2668
  }
2798
- return /* @__PURE__ */ jsx21(
2669
+ return /* @__PURE__ */ jsx20(
2799
2670
  "img",
2800
2671
  {
2801
2672
  src: logoUrl,
@@ -2814,7 +2685,7 @@ function EventLogo({
2814
2685
  );
2815
2686
  }
2816
2687
  function EventLogoCompact(props) {
2817
- return /* @__PURE__ */ jsx21(
2688
+ return /* @__PURE__ */ jsx20(
2818
2689
  EventLogo,
2819
2690
  {
2820
2691
  ...props,
@@ -2824,7 +2695,7 @@ function EventLogoCompact(props) {
2824
2695
  );
2825
2696
  }
2826
2697
  function EventLogoLarge(props) {
2827
- return /* @__PURE__ */ jsx21(
2698
+ return /* @__PURE__ */ jsx20(
2828
2699
  EventLogo,
2829
2700
  {
2830
2701
  ...props,
@@ -2835,7 +2706,7 @@ function EventLogoLarge(props) {
2835
2706
  }
2836
2707
 
2837
2708
  // src/components/PublicLayout/PublicPageHeader.tsx
2838
- import { jsx as jsx22, jsxs as jsxs15 } from "react/jsx-runtime";
2709
+ import { jsx as jsx21, jsxs as jsxs15 } from "react/jsx-runtime";
2839
2710
  function PublicPageHeader({
2840
2711
  event,
2841
2712
  eventCode,
@@ -2850,10 +2721,10 @@ function PublicPageHeader({
2850
2721
  }) {
2851
2722
  const { appName } = useAppConfig();
2852
2723
  const headerClasses = `bg-white border-b border-gray-200 ${className}`.trim();
2853
- return /* @__PURE__ */ jsx22("header", { className: headerClasses, children: /* @__PURE__ */ jsxs15("div", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto", children: [
2724
+ return /* @__PURE__ */ jsx21("header", { className: headerClasses, children: /* @__PURE__ */ jsxs15("div", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto", children: [
2854
2725
  /* @__PURE__ */ jsxs15("div", { className: "flex items-center justify-between py-4", children: [
2855
- showAppLogo && /* @__PURE__ */ jsx22("div", { className: "flex-shrink-0", children: customAppLogo || /* @__PURE__ */ jsxs15("div", { className: "flex items-center", children: [
2856
- /* @__PURE__ */ jsx22(
2726
+ showAppLogo && /* @__PURE__ */ jsx21("div", { className: "flex-shrink-0", children: customAppLogo || /* @__PURE__ */ jsxs15("div", { className: "flex items-center", children: [
2727
+ /* @__PURE__ */ jsx21(
2857
2728
  "img",
2858
2729
  {
2859
2730
  className: "h-8 w-auto",
@@ -2861,9 +2732,9 @@ function PublicPageHeader({
2861
2732
  alt: appName
2862
2733
  }
2863
2734
  ),
2864
- /* @__PURE__ */ jsx22("span", { className: "ml-2 text-lg font-semibold text-gray-900", children: appName })
2735
+ /* @__PURE__ */ jsx21("span", { className: "ml-2 text-lg font-semibold text-gray-900", children: appName })
2865
2736
  ] }) }),
2866
- showEventLogo && /* @__PURE__ */ jsx22("div", { className: "flex-shrink-0", children: customEventLogo || /* @__PURE__ */ jsx22(
2737
+ showEventLogo && /* @__PURE__ */ jsx21("div", { className: "flex-shrink-0", children: customEventLogo || /* @__PURE__ */ jsx21(
2867
2738
  EventLogo,
2868
2739
  {
2869
2740
  eventId: event.event_id,
@@ -2874,21 +2745,21 @@ function PublicPageHeader({
2874
2745
  }
2875
2746
  ) })
2876
2747
  ] }),
2877
- /* @__PURE__ */ jsx22("div", { className: "pb-4", children: /* @__PURE__ */ jsxs15("div", { className: "text-center", children: [
2878
- /* @__PURE__ */ jsx22("h1", { className: "text-3xl font-bold text-gray-900 mb-2", children: event.event_name }),
2879
- event.event_venue && /* @__PURE__ */ jsx22("p", { className: "text-md text-gray-500 mb-4", children: event.event_venue }),
2748
+ /* @__PURE__ */ jsx21("div", { className: "pb-4", children: /* @__PURE__ */ jsxs15("div", { className: "text-center", children: [
2749
+ /* @__PURE__ */ jsx21("h1", { className: "text-3xl font-bold text-gray-900 mb-2", children: event.event_name }),
2750
+ event.event_venue && /* @__PURE__ */ jsx21("p", { className: "text-md text-gray-500 mb-4", children: event.event_venue }),
2880
2751
  title && /* @__PURE__ */ jsxs15("div", { className: "mt-6", children: [
2881
- /* @__PURE__ */ jsx22("h2", { className: "text-2xl font-semibold text-gray-800 mb-2", children: title }),
2882
- description && /* @__PURE__ */ jsx22("p", { className: "text-lg text-gray-600 max-w-3xl mx-auto", children: description })
2752
+ /* @__PURE__ */ jsx21("h2", { className: "text-2xl font-semibold text-gray-800 mb-2", children: title }),
2753
+ description && /* @__PURE__ */ jsx21("p", { className: "text-lg text-gray-600 max-w-3xl mx-auto", children: description })
2883
2754
  ] }),
2884
- children && /* @__PURE__ */ jsx22("div", { className: "mt-4", children })
2755
+ children && /* @__PURE__ */ jsx21("div", { className: "mt-4", children })
2885
2756
  ] }) })
2886
2757
  ] }) });
2887
2758
  }
2888
2759
 
2889
2760
  // src/components/PublicLayout/PublicPageFooter.tsx
2890
2761
  init_cn();
2891
- import { Fragment as Fragment5, jsx as jsx23, jsxs as jsxs16 } from "react/jsx-runtime";
2762
+ import { Fragment as Fragment5, jsx as jsx22, jsxs as jsxs16 } from "react/jsx-runtime";
2892
2763
  function PublicPageFooter({
2893
2764
  event,
2894
2765
  companyName = "Solvera Solutions Pty Ltd",
@@ -2900,16 +2771,16 @@ function PublicPageFooter({
2900
2771
  children
2901
2772
  }) {
2902
2773
  const copyrightText = copyright || `\xA9 Copyright 2022\u2013${year} all rights reserved, ${companyName}.`;
2903
- return /* @__PURE__ */ jsx23("footer", { className: cn("mt-8 py-6 flex justify-center border-t border-border bg-main-100", className), children: /* @__PURE__ */ jsxs16("section", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto text-center", children: [
2904
- logo && /* @__PURE__ */ jsx23("img", { src: logo, alt: "Logo", className: "h-8 w-auto" }),
2905
- children && /* @__PURE__ */ jsx23(Fragment5, { children }),
2906
- /* @__PURE__ */ jsx23("span", { className: "text-muted-foreground", children: copyrightText }),
2907
- links && links.length > 0 && /* @__PURE__ */ jsx23("ul", { className: "flex gap-4 mt-2 md:mt-0", children: links.map((link, index) => /* @__PURE__ */ jsx23("li", { children: /* @__PURE__ */ jsx23("a", { href: link.href, className: "text-muted-foreground hover:text-foreground", children: link.label }) }, index)) })
2774
+ return /* @__PURE__ */ jsx22("footer", { className: cn("mt-8 py-6 flex justify-center border-t border-border bg-main-100", className), children: /* @__PURE__ */ jsxs16("section", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto text-center", children: [
2775
+ logo && /* @__PURE__ */ jsx22("img", { src: logo, alt: "Logo", className: "h-8 w-auto" }),
2776
+ children && /* @__PURE__ */ jsx22(Fragment5, { children }),
2777
+ /* @__PURE__ */ jsx22("span", { className: "text-muted-foreground", children: copyrightText }),
2778
+ links && links.length > 0 && /* @__PURE__ */ jsx22("ul", { className: "flex gap-4 mt-2 md:mt-0", children: links.map((link, index) => /* @__PURE__ */ jsx22("li", { children: /* @__PURE__ */ jsx22("a", { href: link.href, className: "text-muted-foreground hover:text-foreground", children: link.label }) }, index)) })
2908
2779
  ] }) });
2909
2780
  }
2910
2781
 
2911
2782
  // src/components/PublicLayout/PublicLoadingSpinner.tsx
2912
- import { jsx as jsx24, jsxs as jsxs17 } from "react/jsx-runtime";
2783
+ import { jsx as jsx23, jsxs as jsxs17 } from "react/jsx-runtime";
2913
2784
  var sizeClasses2 = {
2914
2785
  sm: "h-4 w-4",
2915
2786
  md: "h-8 w-8",
@@ -2927,7 +2798,7 @@ function PublicLoadingSpinner({
2927
2798
  const sizeClass = sizeClasses2[size];
2928
2799
  const displayMessage = customMessage || message;
2929
2800
  const content = /* @__PURE__ */ jsxs17("div", { className: `flex flex-col items-center ${className}`, children: [
2930
- showLogo && /* @__PURE__ */ jsx24("div", { className: "mb-4", children: /* @__PURE__ */ jsx24(
2801
+ showLogo && /* @__PURE__ */ jsx23("div", { className: "mb-4", children: /* @__PURE__ */ jsx23(
2931
2802
  "img",
2932
2803
  {
2933
2804
  className: "h-8 w-auto",
@@ -2936,7 +2807,7 @@ function PublicLoadingSpinner({
2936
2807
  }
2937
2808
  ) }),
2938
2809
  /* @__PURE__ */ jsxs17("div", { className: "relative", children: [
2939
- /* @__PURE__ */ jsx24(
2810
+ /* @__PURE__ */ jsx23(
2940
2811
  "div",
2941
2812
  {
2942
2813
  className: `${sizeClass} border-2 border-gray-200 border-t-blue-600 rounded-full animate-spin`,
@@ -2944,12 +2815,12 @@ function PublicLoadingSpinner({
2944
2815
  "aria-label": "Loading"
2945
2816
  }
2946
2817
  ),
2947
- /* @__PURE__ */ jsx24("span", { className: "sr-only", children: displayMessage })
2818
+ /* @__PURE__ */ jsx23("span", { className: "sr-only", children: displayMessage })
2948
2819
  ] }),
2949
- displayMessage && /* @__PURE__ */ jsx24("p", { className: "mt-4 text-sm text-gray-600 text-center", children: displayMessage })
2820
+ displayMessage && /* @__PURE__ */ jsx23("p", { className: "mt-4 text-sm text-gray-600 text-center", children: displayMessage })
2950
2821
  ] });
2951
2822
  if (centered) {
2952
- return /* @__PURE__ */ jsx24("div", { className: "min-h-screen bg-white flex items-center justify-center", children: /* @__PURE__ */ jsx24("div", { className: "max-w-md mx-auto px-4", children: content }) });
2823
+ return /* @__PURE__ */ jsx23("div", { className: "min-h-screen bg-white flex items-center justify-center", children: /* @__PURE__ */ jsx23("div", { className: "max-w-md mx-auto px-4", children: content }) });
2953
2824
  }
2954
2825
  return content;
2955
2826
  }
@@ -2958,8 +2829,8 @@ function PublicLoadingSpinnerFullPage({
2958
2829
  eventName,
2959
2830
  className = ""
2960
2831
  }) {
2961
- return /* @__PURE__ */ jsx24("div", { className: `min-h-screen bg-white flex items-center justify-center ${className}`, children: /* @__PURE__ */ jsxs17("div", { className: "max-w-md mx-auto text-center px-4", children: [
2962
- /* @__PURE__ */ jsx24("div", { className: "mb-8", children: /* @__PURE__ */ jsx24(
2832
+ return /* @__PURE__ */ jsx23("div", { className: `min-h-screen bg-white flex items-center justify-center ${className}`, children: /* @__PURE__ */ jsxs17("div", { className: "max-w-md mx-auto text-center px-4", children: [
2833
+ /* @__PURE__ */ jsx23("div", { className: "mb-8", children: /* @__PURE__ */ jsx23(
2963
2834
  "img",
2964
2835
  {
2965
2836
  className: "h-12 w-auto mx-auto",
@@ -2967,8 +2838,8 @@ function PublicLoadingSpinnerFullPage({
2967
2838
  alt: "PACE Core"
2968
2839
  }
2969
2840
  ) }),
2970
- eventName && /* @__PURE__ */ jsx24("h1", { className: "text-2xl font-bold text-gray-900 mb-4", children: eventName }),
2971
- /* @__PURE__ */ jsx24("div", { className: "relative mb-6", children: /* @__PURE__ */ jsx24(
2841
+ eventName && /* @__PURE__ */ jsx23("h1", { className: "text-2xl font-bold text-gray-900 mb-4", children: eventName }),
2842
+ /* @__PURE__ */ jsx23("div", { className: "relative mb-6", children: /* @__PURE__ */ jsx23(
2972
2843
  "div",
2973
2844
  {
2974
2845
  className: "h-12 w-12 border-4 border-gray-200 border-t-blue-600 rounded-full animate-spin mx-auto",
@@ -2976,11 +2847,11 @@ function PublicLoadingSpinnerFullPage({
2976
2847
  "aria-label": "Loading"
2977
2848
  }
2978
2849
  ) }),
2979
- /* @__PURE__ */ jsx24("p", { className: "text-lg text-gray-600", children: message }),
2850
+ /* @__PURE__ */ jsx23("p", { className: "text-lg text-gray-600", children: message }),
2980
2851
  /* @__PURE__ */ jsxs17("div", { className: "mt-4 flex justify-center space-x-1", children: [
2981
- /* @__PURE__ */ jsx24("div", { className: "h-2 w-2 bg-blue-600 rounded-full animate-bounce", style: { animationDelay: "0ms" } }),
2982
- /* @__PURE__ */ jsx24("div", { className: "h-2 w-2 bg-blue-600 rounded-full animate-bounce", style: { animationDelay: "150ms" } }),
2983
- /* @__PURE__ */ jsx24("div", { className: "h-2 w-2 bg-blue-600 rounded-full animate-bounce", style: { animationDelay: "300ms" } })
2852
+ /* @__PURE__ */ jsx23("div", { className: "h-2 w-2 bg-blue-600 rounded-full animate-bounce", style: { animationDelay: "0ms" } }),
2853
+ /* @__PURE__ */ jsx23("div", { className: "h-2 w-2 bg-blue-600 rounded-full animate-bounce", style: { animationDelay: "150ms" } }),
2854
+ /* @__PURE__ */ jsx23("div", { className: "h-2 w-2 bg-blue-600 rounded-full animate-bounce", style: { animationDelay: "300ms" } })
2984
2855
  ] })
2985
2856
  ] }) });
2986
2857
  }
@@ -2988,7 +2859,7 @@ function PublicLoadingSkeleton({
2988
2859
  lines = 3,
2989
2860
  className = ""
2990
2861
  }) {
2991
- return /* @__PURE__ */ jsx24("div", { className: `animate-pulse ${className}`, children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ jsx24(
2862
+ return /* @__PURE__ */ jsx23("div", { className: `animate-pulse ${className}`, children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ jsx23(
2992
2863
  "div",
2993
2864
  {
2994
2865
  className: `h-4 bg-gray-200 rounded mb-2 ${index === lines - 1 ? "w-3/4" : "w-full"}`
@@ -2999,7 +2870,7 @@ function PublicLoadingSkeleton({
2999
2870
 
3000
2871
  // src/components/PublicLayout/PublicPageLayout.tsx
3001
2872
  import { useMemo as useMemo7 } from "react";
3002
- import { jsx as jsx25, jsxs as jsxs18 } from "react/jsx-runtime";
2873
+ import { jsx as jsx24, jsxs as jsxs18 } from "react/jsx-runtime";
3003
2874
  function PublicPageLayout({
3004
2875
  eventCode,
3005
2876
  children,
@@ -3021,17 +2892,17 @@ function PublicPageLayout({
3021
2892
  return `${baseClasses} ${className}`.trim();
3022
2893
  }, [className]);
3023
2894
  if (isLoading) {
3024
- return /* @__PURE__ */ jsx25("div", { className: layoutClasses, children: /* @__PURE__ */ jsx25("div", { className: "flex-1 flex items-center justify-center", children: /* @__PURE__ */ jsx25(LoadingFallback, {}) }) });
2895
+ return /* @__PURE__ */ jsx24("div", { className: layoutClasses, children: /* @__PURE__ */ jsx24("div", { className: "flex-1 flex items-center justify-center", children: /* @__PURE__ */ jsx24(LoadingFallback, {}) }) });
3025
2896
  }
3026
2897
  if (error && showValidationErrors) {
3027
- return /* @__PURE__ */ jsx25("div", { className: layoutClasses, children: /* @__PURE__ */ jsx25("div", { className: "flex-1 flex items-center justify-center", children: ErrorFallback ? /* @__PURE__ */ jsx25(ErrorFallback, { error, retry: refetch }) : /* @__PURE__ */ jsxs18("div", { className: "text-center p-8", children: [
3028
- /* @__PURE__ */ jsx25("h1", { className: "text-2xl font-bold text-gray-900 mb-4", children: "Event Not Found" }),
2898
+ return /* @__PURE__ */ jsx24("div", { className: layoutClasses, children: /* @__PURE__ */ jsx24("div", { className: "flex-1 flex items-center justify-center", children: ErrorFallback ? /* @__PURE__ */ jsx24(ErrorFallback, { error, retry: refetch }) : /* @__PURE__ */ jsxs18("div", { className: "text-center p-8", children: [
2899
+ /* @__PURE__ */ jsx24("h1", { className: "text-2xl font-bold text-gray-900 mb-4", children: "Event Not Found" }),
3029
2900
  /* @__PURE__ */ jsxs18("p", { className: "text-gray-600 mb-6", children: [
3030
2901
  'The event code "',
3031
2902
  eventCode,
3032
2903
  '" is invalid or the event is not available for public viewing.'
3033
2904
  ] }),
3034
- /* @__PURE__ */ jsx25(
2905
+ /* @__PURE__ */ jsx24(
3035
2906
  "button",
3036
2907
  {
3037
2908
  onClick: refetch,
@@ -3042,10 +2913,10 @@ function PublicPageLayout({
3042
2913
  ] }) }) });
3043
2914
  }
3044
2915
  if (!event) {
3045
- return /* @__PURE__ */ jsx25("div", { className: layoutClasses, children: /* @__PURE__ */ jsx25("div", { className: "flex-1 flex items-center justify-center", children: /* @__PURE__ */ jsxs18("div", { className: "text-center p-8", children: [
3046
- /* @__PURE__ */ jsx25("h1", { className: "text-2xl font-bold text-gray-900 mb-4", children: "Event Not Available" }),
3047
- /* @__PURE__ */ jsx25("p", { className: "text-gray-600 mb-6", children: "This event is not available for public viewing." }),
3048
- /* @__PURE__ */ jsx25(
2916
+ return /* @__PURE__ */ jsx24("div", { className: layoutClasses, children: /* @__PURE__ */ jsx24("div", { className: "flex-1 flex items-center justify-center", children: /* @__PURE__ */ jsxs18("div", { className: "text-center p-8", children: [
2917
+ /* @__PURE__ */ jsx24("h1", { className: "text-2xl font-bold text-gray-900 mb-4", children: "Event Not Available" }),
2918
+ /* @__PURE__ */ jsx24("p", { className: "text-gray-600 mb-6", children: "This event is not available for public viewing." }),
2919
+ /* @__PURE__ */ jsx24(
3049
2920
  "button",
3050
2921
  {
3051
2922
  onClick: refetch,
@@ -3055,16 +2926,16 @@ function PublicPageLayout({
3055
2926
  )
3056
2927
  ] }) }) });
3057
2928
  }
3058
- return /* @__PURE__ */ jsx25(PublicErrorBoundary, { children: /* @__PURE__ */ jsxs18("div", { className: layoutClasses, children: [
3059
- customHeader || /* @__PURE__ */ jsx25(
2929
+ return /* @__PURE__ */ jsx24(PublicErrorBoundary, { children: /* @__PURE__ */ jsxs18("div", { className: layoutClasses, children: [
2930
+ customHeader || /* @__PURE__ */ jsx24(
3060
2931
  PublicPageHeader,
3061
2932
  {
3062
2933
  event,
3063
2934
  eventCode
3064
2935
  }
3065
2936
  ),
3066
- /* @__PURE__ */ jsx25("main", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto py-8", children }),
3067
- showFooter && (customFooter || /* @__PURE__ */ jsx25(PublicPageFooter, { event }))
2937
+ /* @__PURE__ */ jsx24("main", { className: "px-4 w-[min(var(--app-width),100%)] mx-auto py-8", children }),
2938
+ showFooter && (customFooter || /* @__PURE__ */ jsx24(PublicPageFooter, { event }))
3068
2939
  ] }) });
3069
2940
  }
3070
2941
  function usePublicPageContext2() {
@@ -3082,7 +2953,7 @@ function usePublicPageContext2() {
3082
2953
 
3083
2954
  // src/components/PublicLayout/PublicPageDebugger.tsx
3084
2955
  import { useEffect as useEffect5 } from "react";
3085
- import { jsx as jsx26, jsxs as jsxs19 } from "react/jsx-runtime";
2956
+ import { jsx as jsx25, jsxs as jsxs19 } from "react/jsx-runtime";
3086
2957
  function PublicPageDebugger({ enabled = true, label = "PublicPage" }) {
3087
2958
  useEffect5(() => {
3088
2959
  if (!enabled) return;
@@ -3136,14 +3007,14 @@ function PublicPageDebugger({ enabled = true, label = "PublicPage" }) {
3136
3007
  zIndex: 9999,
3137
3008
  fontFamily: "monospace"
3138
3009
  }, children: [
3139
- /* @__PURE__ */ jsx26("div", { children: "Public Page Debugger" }),
3140
- /* @__PURE__ */ jsx26("div", { children: "Check console for context analysis" })
3010
+ /* @__PURE__ */ jsx25("div", { children: "Public Page Debugger" }),
3011
+ /* @__PURE__ */ jsx25("div", { children: "Check console for context analysis" })
3141
3012
  ] });
3142
3013
  }
3143
3014
 
3144
3015
  // src/components/PublicLayout/PublicPageDiagnostic.tsx
3145
3016
  import { useEffect as useEffect6, useState as useState11 } from "react";
3146
- import { jsx as jsx27, jsxs as jsxs20 } from "react/jsx-runtime";
3017
+ import { jsx as jsx26, jsxs as jsxs20 } from "react/jsx-runtime";
3147
3018
  function PublicPageDiagnostic({ enabled = true, label = "PublicPage" }) {
3148
3019
  const [diagnostics, setDiagnostics] = useState11({
3149
3020
  hasPublicPageContext: false,
@@ -3237,7 +3108,7 @@ function PublicPageDiagnostic({ enabled = true, label = "PublicPage" }) {
3237
3108
  maxWidth: "300px",
3238
3109
  borderRadius: "0 0 8px 0"
3239
3110
  }, children: [
3240
- /* @__PURE__ */ jsx27("div", { style: { fontWeight: "bold", marginBottom: "8px" }, children: "\u{1F50D} Public Page Diagnostics" }),
3111
+ /* @__PURE__ */ jsx26("div", { style: { fontWeight: "bold", marginBottom: "8px" }, children: "\u{1F50D} Public Page Diagnostics" }),
3241
3112
  /* @__PURE__ */ jsxs20("div", { children: [
3242
3113
  "Public Context: ",
3243
3114
  diagnostics.hasPublicPageContext ? "\u2705" : "\u274C"
@@ -3262,13 +3133,13 @@ function PublicPageDiagnostic({ enabled = true, label = "PublicPage" }) {
3262
3133
  "Route Params: ",
3263
3134
  diagnostics.routeParams ? "\u2705" : "\u274C"
3264
3135
  ] }),
3265
- /* @__PURE__ */ jsx27("div", { style: { marginTop: "8px", fontSize: "10px", opacity: 0.8 }, children: "Check console for detailed analysis" })
3136
+ /* @__PURE__ */ jsx26("div", { style: { marginTop: "8px", fontSize: "10px", opacity: 0.8 }, children: "Check console for detailed analysis" })
3266
3137
  ] });
3267
3138
  }
3268
3139
 
3269
3140
  // src/components/PublicLayout/PublicPageContextChecker.tsx
3270
3141
  import { useEffect as useEffect7 } from "react";
3271
- import { jsx as jsx28, jsxs as jsxs21 } from "react/jsx-runtime";
3142
+ import { jsx as jsx27, jsxs as jsxs21 } from "react/jsx-runtime";
3272
3143
  function PublicPageContextChecker({ enabled = true, label = "PublicPage" }) {
3273
3144
  useEffect7(() => {
3274
3145
  if (!enabled) return;
@@ -3346,20 +3217,13 @@ function PublicPageContextChecker({ enabled = true, label = "PublicPage" }) {
3346
3217
  borderRadius: "0 0 8px 0",
3347
3218
  border: "2px solid #dc2626"
3348
3219
  }, children: [
3349
- /* @__PURE__ */ jsx28("div", { style: { fontWeight: "bold", marginBottom: "8px" }, children: "\u{1F6A8} PUBLIC PAGE CONTEXT CHECK" }),
3350
- /* @__PURE__ */ jsx28("div", { children: "Check console for authentication context analysis" }),
3351
- /* @__PURE__ */ jsx28("div", { style: { marginTop: "8px", fontSize: "10px", opacity: 0.9 }, children: "If you see \u274C errors in console, your public page is inside auth context!" })
3220
+ /* @__PURE__ */ jsx27("div", { style: { fontWeight: "bold", marginBottom: "8px" }, children: "\u{1F6A8} PUBLIC PAGE CONTEXT CHECK" }),
3221
+ /* @__PURE__ */ jsx27("div", { children: "Check console for authentication context analysis" }),
3222
+ /* @__PURE__ */ jsx27("div", { style: { marginTop: "8px", fontSize: "10px", opacity: 0.9 }, children: "If you see \u274C errors in console, your public page is inside auth context!" })
3352
3223
  ] });
3353
3224
  }
3354
3225
 
3355
3226
  export {
3356
- Card,
3357
- CardHeader,
3358
- CardTitle,
3359
- CardDescription,
3360
- CardContent,
3361
- CardFooter,
3362
- CardActions,
3363
3227
  Label,
3364
3228
  Avatar,
3365
3229
  AvatarImage,
@@ -3428,4 +3292,4 @@ export {
3428
3292
  PublicPageDiagnostic,
3429
3293
  PublicPageContextChecker
3430
3294
  };
3431
- //# sourceMappingURL=chunk-RRUYHORU.js.map
3295
+ //# sourceMappingURL=chunk-T3XIA4AJ.js.map