@jmruthers/pace-core 0.5.181 → 0.5.183

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 (756) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/README.md +16 -2
  3. package/dist/{AuthService-DYuQPJj6.d.ts → AuthService-B-cd2MA4.d.ts} +9 -11
  4. package/dist/{DataTable-CWAZZcXC.d.ts → DataTable-Bz8ffqyA.d.ts} +1 -1
  5. package/dist/{DataTable-UA6CL4JI.js → DataTable-QAB34V6K.js} +14 -15
  6. package/dist/UnifiedAuthProvider-7F6T4B6K.js +13 -0
  7. package/dist/{UnifiedAuthProvider-DJxGTftH.d.ts → UnifiedAuthProvider-F86d7dSi.d.ts} +5 -6
  8. package/dist/{api-45XYYO2A.js → api-ROMBCNKU.js} +5 -5
  9. package/dist/{audit-64X3VJXB.js → audit-WRS3KJKI.js} +4 -4
  10. package/dist/auth-BZOJqrdd.d.ts +49 -0
  11. package/dist/{chunk-CX5M4ZAG.js → chunk-5DRSZLL2.js} +1 -1
  12. package/dist/chunk-5DRSZLL2.js.map +1 -0
  13. package/dist/{chunk-BESYRHQM.js → chunk-6C4YBBJM.js} +10 -7
  14. package/dist/chunk-6C4YBBJM.js.map +1 -0
  15. package/dist/{chunk-PLDDJCW6.js → chunk-7D4SUZUM.js} +2 -13
  16. package/dist/{chunk-HRO5HWN2.js → chunk-CSOFYHAG.js} +55 -162
  17. package/dist/chunk-CSOFYHAG.js.map +1 -0
  18. package/dist/{chunk-ANBQRTPX.js → chunk-E66EQZE6.js} +3 -5
  19. package/dist/{chunk-ANBQRTPX.js.map → chunk-E66EQZE6.js.map} +1 -1
  20. package/dist/{chunk-Q5QRDWKI.js → chunk-F2IMUDXZ.js} +4 -6
  21. package/dist/chunk-F2IMUDXZ.js.map +1 -0
  22. package/dist/{chunk-SBVILCCA.js → chunk-FSFQFJCU.js} +28 -6
  23. package/dist/chunk-FSFQFJCU.js.map +1 -0
  24. package/dist/chunk-FUEYYMX5.js +2296 -0
  25. package/dist/chunk-FUEYYMX5.js.map +1 -0
  26. package/dist/{chunk-FFKNH6U5.js → chunk-HKIT6O7W.js} +3 -5
  27. package/dist/{chunk-FFKNH6U5.js.map → chunk-HKIT6O7W.js.map} +1 -1
  28. package/dist/chunk-KQCRWDSA.js +1 -0
  29. package/dist/{chunk-S5OFRT4M.js → chunk-KUEN3HFB.js} +6 -6
  30. package/dist/chunk-KUEN3HFB.js.map +1 -0
  31. package/dist/chunk-LMC26NLJ.js +84 -0
  32. package/dist/chunk-LMC26NLJ.js.map +1 -0
  33. package/dist/{chunk-BVYWGZVV.js → chunk-M7W4CP3M.js} +52 -19
  34. package/dist/chunk-M7W4CP3M.js.map +1 -0
  35. package/dist/{chunk-HZLDFOE4.js → chunk-MI7HBHN3.js} +164 -243
  36. package/dist/chunk-MI7HBHN3.js.map +1 -0
  37. package/dist/{chunk-PPMP5J6T.js → chunk-PWAHJW4G.js} +180 -29
  38. package/dist/chunk-PWAHJW4G.js.map +1 -0
  39. package/dist/chunk-PWLANIRT.js +127 -0
  40. package/dist/{chunk-XDNLUEXI.js.map → chunk-PWLANIRT.js.map} +1 -1
  41. package/dist/chunk-QCDXODCA.js +75 -0
  42. package/dist/chunk-QCDXODCA.js.map +1 -0
  43. package/dist/{chunk-D7LCGMVS.js → chunk-QETLRQI6.js} +526 -887
  44. package/dist/chunk-QETLRQI6.js.map +1 -0
  45. package/dist/{chunk-5MT24GKJ.js → chunk-QUVSNGIP.js} +264 -262
  46. package/dist/chunk-QUVSNGIP.js.map +1 -0
  47. package/dist/chunk-QXHPKYJV.js +113 -0
  48. package/dist/chunk-QXHPKYJV.js.map +1 -0
  49. package/dist/{chunk-OWAG3GSU.js → chunk-R77UEZ4E.js} +11 -1
  50. package/dist/chunk-R77UEZ4E.js.map +1 -0
  51. package/dist/{chunk-ZYTYSTO5.js → chunk-RA3JUFMW.js} +314 -161
  52. package/dist/chunk-RA3JUFMW.js.map +1 -0
  53. package/dist/{chunk-ERISIBYU.js → chunk-SQGMNID3.js} +3 -8
  54. package/dist/chunk-SQGMNID3.js.map +1 -0
  55. package/dist/{chunk-XJ2HZOBU.js → chunk-UHNYIBXL.js} +1 -1
  56. package/dist/chunk-UHNYIBXL.js.map +1 -0
  57. package/{src/utils/secureStorage.ts → dist/chunk-VBXEHIUJ.js} +113 -88
  58. package/dist/{chunk-7QCC6MCP.js.map → chunk-VBXEHIUJ.js.map} +1 -1
  59. package/dist/{chunk-VZ4VDGTB.js → chunk-W22JP75J.js} +5 -13
  60. package/dist/{chunk-VZ4VDGTB.js.map → chunk-W22JP75J.js.map} +1 -1
  61. package/dist/components.d.ts +12 -93
  62. package/dist/components.js +23 -106
  63. package/dist/components.js.map +1 -1
  64. package/dist/core-CUElvH_C.d.ts +164 -0
  65. package/dist/database.generated-CBmg2950.d.ts +8284 -0
  66. package/dist/event-CW5YB_2p.d.ts +239 -0
  67. package/dist/{file-reference-C6Gkn77H.d.ts → file-reference-D06mEEWW.d.ts} +7 -5
  68. package/dist/functions-D_kgHktt.d.ts +208 -0
  69. package/dist/hooks.d.ts +54 -7
  70. package/dist/hooks.js +204 -17
  71. package/dist/hooks.js.map +1 -1
  72. package/dist/{EventLogo-B3V3otev.d.ts → index-Bl--n7-T.d.ts} +387 -397
  73. package/dist/index.d.ts +94 -261
  74. package/dist/index.js +314 -126
  75. package/dist/index.js.map +1 -1
  76. package/dist/providers.d.ts +7 -8
  77. package/dist/providers.js +6 -13
  78. package/dist/rbac/index.d.ts +171 -101
  79. package/dist/rbac/index.js +23 -17
  80. package/dist/styles/index.d.ts +1 -3
  81. package/dist/styles/index.js +2 -17
  82. package/dist/theming/runtime.js +3 -3
  83. package/dist/types-UU913iLA.d.ts +102 -0
  84. package/dist/{types-Dfz9dmVH.d.ts → types-_x1f4QBF.d.ts} +6 -6
  85. package/dist/types.d.ts +88 -227
  86. package/dist/types.js +64 -112
  87. package/dist/types.js.map +1 -1
  88. package/dist/{usePublicRouteParams-B7PabvuH.d.ts → usePublicRouteParams-JJczomYq.d.ts} +203 -6
  89. package/dist/utils.d.ts +299 -13
  90. package/dist/utils.js +481 -55
  91. package/dist/utils.js.map +1 -1
  92. package/dist/validation-643vUDZW.d.ts +177 -0
  93. package/docs/DOCUMENTATION_REVIEW_TRACKER.md +511 -0
  94. package/docs/README.md +9 -8
  95. package/docs/api/README.md +16 -2
  96. package/docs/api/classes/ColumnFactory.md +1 -1
  97. package/docs/api/classes/ErrorBoundary.md +1 -1
  98. package/docs/api/classes/InvalidScopeError.md +4 -4
  99. package/docs/api/classes/MissingUserContextError.md +4 -4
  100. package/docs/api/classes/OrganisationContextRequiredError.md +4 -4
  101. package/docs/api/classes/PermissionDeniedError.md +4 -4
  102. package/docs/api/classes/RBACAuditManager.md +14 -14
  103. package/docs/api/classes/RBACCache.md +1 -1
  104. package/docs/api/classes/RBACEngine.md +2 -2
  105. package/docs/api/classes/RBACError.md +4 -4
  106. package/docs/api/classes/RBACNotInitializedError.md +4 -4
  107. package/docs/api/classes/SecureSupabaseClient.md +29 -9
  108. package/docs/api/classes/StorageUtils.md +1 -1
  109. package/docs/api/enums/FileCategory.md +17 -17
  110. package/docs/api/enums/RBACErrorCode.md +228 -0
  111. package/docs/api/enums/RPCFunction.md +118 -0
  112. package/docs/api/interfaces/AggregateConfig.md +1 -1
  113. package/docs/api/interfaces/BadgeProps.md +1 -1
  114. package/docs/api/interfaces/ButtonProps.md +2 -2
  115. package/docs/api/interfaces/CalendarProps.md +1 -1
  116. package/docs/api/interfaces/CardProps.md +29 -3
  117. package/docs/api/interfaces/ColorPalette.md +1 -1
  118. package/docs/api/interfaces/ColorShade.md +1 -1
  119. package/docs/api/interfaces/DataAccessRecord.md +1 -1
  120. package/docs/api/interfaces/DataRecord.md +1 -1
  121. package/docs/api/interfaces/DataTableAction.md +2 -2
  122. package/docs/api/interfaces/DataTableColumn.md +6 -6
  123. package/docs/api/interfaces/DataTableProps.md +1 -1
  124. package/docs/api/interfaces/DataTableToolbarButton.md +2 -2
  125. package/docs/api/interfaces/EmptyStateConfig.md +1 -1
  126. package/docs/api/interfaces/EnhancedNavigationMenuProps.md +1 -1
  127. package/docs/api/interfaces/EventAppRoleData.md +1 -1
  128. package/docs/api/interfaces/ExportColumn.md +5 -5
  129. package/docs/api/interfaces/ExportOptions.md +4 -4
  130. package/docs/api/interfaces/FileDisplayProps.md +1 -1
  131. package/docs/api/interfaces/FileMetadata.md +13 -13
  132. package/docs/api/interfaces/FileReference.md +12 -12
  133. package/docs/api/interfaces/FileSizeLimits.md +1 -1
  134. package/docs/api/interfaces/FileUploadOptions.md +10 -10
  135. package/docs/api/interfaces/FileUploadProps.md +19 -19
  136. package/docs/api/interfaces/FooterProps.md +1 -1
  137. package/docs/api/interfaces/FormFieldProps.md +166 -0
  138. package/docs/api/interfaces/FormProps.md +113 -0
  139. package/docs/api/interfaces/GrantEventAppRoleParams.md +1 -1
  140. package/docs/api/interfaces/InactivityWarningModalProps.md +8 -8
  141. package/docs/api/interfaces/InputProps.md +2 -2
  142. package/docs/api/interfaces/LabelProps.md +8 -8
  143. package/docs/api/interfaces/LoginFormProps.md +1 -1
  144. package/docs/api/interfaces/NavigationAccessRecord.md +1 -1
  145. package/docs/api/interfaces/NavigationContextType.md +1 -1
  146. package/docs/api/interfaces/NavigationGuardProps.md +1 -1
  147. package/docs/api/interfaces/NavigationItem.md +17 -73
  148. package/docs/api/interfaces/NavigationMenuProps.md +38 -53
  149. package/docs/api/interfaces/NavigationProviderProps.md +1 -1
  150. package/docs/api/interfaces/Organisation.md +13 -13
  151. package/docs/api/interfaces/OrganisationContextType.md +21 -21
  152. package/docs/api/interfaces/OrganisationMembership.md +15 -15
  153. package/docs/api/interfaces/OrganisationProviderProps.md +59 -2
  154. package/docs/api/interfaces/OrganisationSecurityError.md +5 -5
  155. package/docs/api/interfaces/PaceAppLayoutProps.md +26 -39
  156. package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
  157. package/docs/api/interfaces/PageAccessRecord.md +1 -1
  158. package/docs/api/interfaces/PagePermissionContextType.md +1 -1
  159. package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
  160. package/docs/api/interfaces/PagePermissionProviderProps.md +1 -1
  161. package/docs/api/interfaces/PaletteData.md +1 -1
  162. package/docs/api/interfaces/PermissionEnforcerProps.md +1 -1
  163. package/docs/api/interfaces/ProgressProps.md +50 -0
  164. package/docs/api/interfaces/ProtectedRouteProps.md +1 -1
  165. package/docs/api/interfaces/PublicPageFooterProps.md +9 -9
  166. package/docs/api/interfaces/PublicPageHeaderProps.md +10 -10
  167. package/docs/api/interfaces/PublicPageLayoutProps.md +15 -15
  168. package/docs/api/interfaces/RBACAccessValidateParams.md +52 -0
  169. package/docs/api/interfaces/RBACAccessValidateResult.md +41 -0
  170. package/docs/api/interfaces/RBACAuditLogParams.md +85 -0
  171. package/docs/api/interfaces/RBACAuditLogResult.md +52 -0
  172. package/docs/api/interfaces/RBACConfig.md +2 -2
  173. package/docs/api/interfaces/RBACContext.md +52 -0
  174. package/docs/api/interfaces/RBACLogger.md +1 -1
  175. package/docs/api/interfaces/RBACPageAccessCheckParams.md +74 -0
  176. package/docs/api/interfaces/RBACPermissionCheckParams.md +74 -0
  177. package/docs/api/interfaces/RBACPermissionCheckResult.md +52 -0
  178. package/docs/api/interfaces/RBACPermissionsGetParams.md +63 -0
  179. package/docs/api/interfaces/RBACPermissionsGetResult.md +63 -0
  180. package/docs/api/interfaces/RBACResult.md +58 -0
  181. package/docs/api/interfaces/RBACRoleGrantParams.md +63 -0
  182. package/docs/api/interfaces/RBACRoleGrantResult.md +52 -0
  183. package/docs/api/interfaces/RBACRoleRevokeParams.md +63 -0
  184. package/docs/api/interfaces/RBACRoleRevokeResult.md +52 -0
  185. package/docs/api/interfaces/RBACRoleValidateParams.md +52 -0
  186. package/docs/api/interfaces/RBACRoleValidateResult.md +63 -0
  187. package/docs/api/interfaces/RBACRolesListParams.md +52 -0
  188. package/docs/api/interfaces/RBACRolesListResult.md +74 -0
  189. package/docs/api/interfaces/RBACSessionTrackParams.md +74 -0
  190. package/docs/api/interfaces/RBACSessionTrackResult.md +52 -0
  191. package/docs/api/interfaces/ResourcePermissions.md +1 -1
  192. package/docs/api/interfaces/RevokeEventAppRoleParams.md +1 -1
  193. package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
  194. package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
  195. package/docs/api/interfaces/RoleManagementResult.md +1 -1
  196. package/docs/api/interfaces/RouteAccessRecord.md +1 -1
  197. package/docs/api/interfaces/RouteConfig.md +1 -1
  198. package/docs/api/interfaces/SecureDataContextType.md +1 -1
  199. package/docs/api/interfaces/SecureDataProviderProps.md +1 -1
  200. package/docs/api/interfaces/SessionRestorationLoaderProps.md +15 -2
  201. package/docs/api/interfaces/StorageConfig.md +1 -1
  202. package/docs/api/interfaces/StorageFileInfo.md +1 -1
  203. package/docs/api/interfaces/StorageFileMetadata.md +1 -1
  204. package/docs/api/interfaces/StorageListOptions.md +1 -1
  205. package/docs/api/interfaces/StorageListResult.md +1 -1
  206. package/docs/api/interfaces/StorageUploadOptions.md +1 -1
  207. package/docs/api/interfaces/StorageUploadResult.md +1 -1
  208. package/docs/api/interfaces/StorageUrlOptions.md +1 -1
  209. package/docs/api/interfaces/StyleImport.md +1 -1
  210. package/docs/api/interfaces/SwitchProps.md +1 -1
  211. package/docs/api/interfaces/TabsContentProps.md +1 -1
  212. package/docs/api/interfaces/TabsListProps.md +1 -1
  213. package/docs/api/interfaces/TabsProps.md +1 -1
  214. package/docs/api/interfaces/TabsTriggerProps.md +43 -2
  215. package/docs/api/interfaces/TextareaProps.md +2 -2
  216. package/docs/api/interfaces/ToastActionElement.md +1 -1
  217. package/docs/api/interfaces/ToastProps.md +1 -1
  218. package/docs/api/interfaces/UnifiedAuthContextType.md +61 -61
  219. package/docs/api/interfaces/UnifiedAuthProviderProps.md +13 -13
  220. package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
  221. package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
  222. package/docs/api/interfaces/UsePublicEventLogoOptions.md +87 -0
  223. package/docs/api/interfaces/UsePublicEventLogoReturn.md +81 -0
  224. package/docs/api/interfaces/UsePublicEventOptions.md +3 -3
  225. package/docs/api/interfaces/UsePublicEventReturn.md +5 -5
  226. package/docs/api/interfaces/UsePublicFileDisplayOptions.md +2 -2
  227. package/docs/api/interfaces/UsePublicFileDisplayReturn.md +1 -1
  228. package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
  229. package/docs/api/interfaces/UseResolvedScopeOptions.md +2 -2
  230. package/docs/api/interfaces/UseResolvedScopeReturn.md +1 -1
  231. package/docs/api/interfaces/UseResourcePermissionsOptions.md +1 -1
  232. package/docs/api/interfaces/UserEventAccess.md +1 -1
  233. package/docs/api/interfaces/UserMenuProps.md +4 -4
  234. package/docs/api/interfaces/UserProfile.md +7 -7
  235. package/docs/api/modules.md +484 -462
  236. package/docs/api-reference/components.md +186 -15
  237. package/docs/api-reference/deprecated.md +376 -0
  238. package/docs/api-reference/hooks.md +149 -19
  239. package/docs/api-reference/providers.md +61 -6
  240. package/docs/api-reference/rpc-functions.md +397 -0
  241. package/docs/api-reference/types.md +135 -78
  242. package/docs/api-reference/utilities.md +51 -380
  243. package/docs/architecture/README.md +49 -3
  244. package/docs/architecture/database-schema-requirements.md +40 -3
  245. package/docs/architecture/rbac-security-architecture.md +41 -4
  246. package/docs/architecture/services.md +127 -42
  247. package/docs/best-practices/README.md +51 -5
  248. package/docs/best-practices/accessibility.md +32 -3
  249. package/docs/best-practices/common-patterns.md +50 -3
  250. package/docs/best-practices/deployment.md +50 -4
  251. package/docs/best-practices/performance.md +50 -3
  252. package/docs/best-practices/security.md +94 -41
  253. package/docs/best-practices/testing.md +33 -4
  254. package/docs/core-concepts/authentication.md +5 -5
  255. package/docs/core-concepts/events.md +3 -3
  256. package/docs/core-concepts/organisations.md +3 -3
  257. package/docs/core-concepts/permissions.md +3 -3
  258. package/docs/core-concepts/rbac-system.md +5 -5
  259. package/docs/documentation-index.md +30 -8
  260. package/docs/getting-started/documentation-index.md +1 -1
  261. package/docs/getting-started/examples/README.md +7 -5
  262. package/docs/getting-started/examples/basic-auth-app.md +3 -0
  263. package/docs/getting-started/examples/full-featured-app.md +5 -3
  264. package/docs/getting-started/faq.md +6 -6
  265. package/docs/getting-started/installation-guide.md +192 -13
  266. package/docs/getting-started/local-development.md +303 -0
  267. package/docs/getting-started/quick-reference.md +3 -3
  268. package/docs/getting-started/quick-start.md +517 -0
  269. package/docs/implementation-guides/app-layout.md +45 -3
  270. package/docs/implementation-guides/authentication.md +66 -7
  271. package/docs/implementation-guides/component-styling.md +53 -3
  272. package/docs/implementation-guides/data-tables.md +76 -7
  273. package/docs/implementation-guides/datatable-filtering.md +1 -2
  274. package/docs/implementation-guides/datatable-rbac-usage.md +0 -1
  275. package/docs/implementation-guides/dynamic-colors.md +155 -4
  276. package/docs/implementation-guides/file-reference-system.md +72 -3
  277. package/docs/implementation-guides/file-upload-storage.md +72 -3
  278. package/docs/implementation-guides/forms.md +53 -3
  279. package/docs/implementation-guides/inactivity-tracking.md +53 -3
  280. package/docs/implementation-guides/large-datasets.md +1 -1
  281. package/docs/implementation-guides/navigation.md +55 -5
  282. package/docs/implementation-guides/organisation-security.md +72 -3
  283. package/docs/implementation-guides/performance.md +57 -1
  284. package/docs/implementation-guides/permission-enforcement.md +81 -8
  285. package/docs/implementation-guides/public-pages.md +560 -14
  286. package/docs/migration/MIGRATION_GUIDE.md +409 -50
  287. package/docs/migration/README.md +37 -3
  288. package/docs/migration/organisation-context-timing-fix.md +39 -4
  289. package/docs/migration/quick-migration-guide.md +41 -5
  290. package/docs/migration/rbac-migration.md +59 -3
  291. package/docs/migration/service-architecture.md +77 -14
  292. package/docs/rbac/README.md +79 -3
  293. package/docs/rbac/advanced-patterns.md +47 -3
  294. package/docs/rbac/api-reference.md +77 -8
  295. package/docs/rbac/event-based-apps.md +50 -5
  296. package/docs/rbac/examples/rbac-rls-integration-example.md +3 -3
  297. package/docs/rbac/examples.md +39 -3
  298. package/docs/rbac/getting-started.md +63 -4
  299. package/docs/rbac/quick-start.md +57 -5
  300. package/docs/rbac/rbac-rls-integration.md +68 -6
  301. package/docs/rbac/super-admin-guide.md +47 -3
  302. package/docs/rbac/troubleshooting.md +3 -3
  303. package/docs/security/README.md +68 -3
  304. package/docs/security/checklist.md +50 -3
  305. package/docs/standards/01-architecture-standard.md +39 -0
  306. package/docs/standards/02-api-and-rpc-standard.md +39 -0
  307. package/docs/standards/03-component-standard.md +32 -0
  308. package/docs/standards/04-code-style-standard.md +32 -0
  309. package/docs/standards/05-security-standard.md +30 -0
  310. package/docs/standards/06-testing-and-docs-standard.md +29 -0
  311. package/docs/standards/README.md +35 -0
  312. package/docs/styles/README.md +89 -8
  313. package/docs/testing/README.md +175 -24
  314. package/docs/troubleshooting/README.md +50 -3
  315. package/docs/troubleshooting/common-issues.md +271 -5
  316. package/docs/troubleshooting/debugging.md +54 -1
  317. package/docs/troubleshooting/migration.md +54 -1
  318. package/docs/troubleshooting/organisation-context-setup.md +29 -3
  319. package/docs/troubleshooting/styling-issues.md +246 -4
  320. package/{src/components/DataTable/examples → examples/DataTable}/GroupingAggregationExample.tsx +1 -1
  321. package/examples/{components 2/DataTable/HierarchicalActionsExample.tsx → DataTable/HierarchicalActionsExample.tsx} +7 -6
  322. package/{src/components/DataTable/examples → examples/DataTable}/HierarchicalExample.tsx +8 -6
  323. package/examples/{components 2/DataTable/PerformanceExample.tsx → DataTable/PerformanceExample.tsx} +2 -2
  324. package/examples/{components 2/DataTable/index.ts → DataTable/index.ts} +1 -0
  325. package/{src/components/Dialog/examples → examples/Dialog}/HtmlDialogExample.tsx +3 -3
  326. package/examples/{components 2/Dialog/ScrollableDialogExample.tsx → Dialog/ScrollableDialogExample.tsx} +1 -1
  327. package/{src/components/Dialog/examples → examples/Dialog}/SmartDialogExample.tsx +1 -1
  328. package/examples/{components 2/Dialog/index.ts → Dialog/index.ts} +0 -3
  329. package/examples/{features/public-pages → PublicPages}/CorrectPublicPageImplementation.tsx +52 -17
  330. package/examples/{features/public-pages → PublicPages}/PublicEventPage.tsx +65 -35
  331. package/examples/{features/public-pages → PublicPages}/PublicPageApp.tsx +52 -18
  332. package/examples/{features/public-pages → PublicPages}/PublicPageUsageExample.tsx +28 -15
  333. package/examples/README.md +81 -33
  334. package/examples/index.ts +14 -12
  335. package/examples/{RBAC → rbac}/CompleteRBACExample.tsx +1 -1
  336. package/examples/{features/rbac → rbac}/EventBasedApp.tsx +4 -4
  337. package/examples/{features/rbac → rbac}/PermissionExample.tsx +5 -3
  338. package/package.json +21 -27
  339. package/src/__tests__/helpers/test-utils.tsx +29 -3
  340. package/src/__tests__/rbac/PagePermissionGuard.test.tsx +7 -5
  341. package/src/components/Alert/Alert.test.tsx +2 -2
  342. package/src/components/Alert/Alert.tsx +4 -4
  343. package/src/components/Avatar/Avatar.test.tsx +17 -6
  344. package/src/components/Badge/Badge.test.tsx +1 -1
  345. package/src/components/Badge/Badge.tsx +2 -2
  346. package/src/components/Button/Button.test.tsx +2 -2
  347. package/src/components/Button/Button.tsx +11 -7
  348. package/src/components/Calendar/Calendar.test.tsx +41 -8
  349. package/src/components/Calendar/Calendar.tsx +39 -36
  350. package/src/components/Card/Card.tsx +51 -13
  351. package/src/components/Checkbox/Checkbox.test.tsx +36 -12
  352. package/src/components/DataTable/DataTable.test.tsx +1 -1
  353. package/src/components/DataTable/__tests__/DataTable.comprehensive.test.tsx +13 -7
  354. package/src/components/DataTable/__tests__/DataTable.default-state.test.tsx +14 -42
  355. package/src/components/DataTable/__tests__/DataTable.export.test.tsx +13 -10
  356. package/src/components/DataTable/__tests__/DataTable.grouping-aggregation.test.tsx +14 -11
  357. package/src/components/DataTable/__tests__/DataTable.hooks.test.tsx +4 -2
  358. package/src/components/DataTable/__tests__/DataTable.test.tsx +13 -7
  359. package/src/components/DataTable/__tests__/DataTableCore.test-setup.ts +13 -10
  360. package/src/components/DataTable/__tests__/DataTableCore.test.tsx +15 -11
  361. package/src/components/DataTable/__tests__/a11y.basic.test.tsx +12 -6
  362. package/src/components/DataTable/__tests__/keyboard.test.tsx +12 -6
  363. package/src/components/DataTable/__tests__/pagination.modes.test.tsx +10 -6
  364. package/src/components/DataTable/__tests__/test-utils/sharedTestUtils.tsx +1 -1
  365. package/src/components/DataTable/components/DataTableBody.tsx +10 -25
  366. package/src/components/DataTable/components/DataTableCore.tsx +1 -1
  367. package/src/components/DataTable/components/FilterRow.tsx +3 -1
  368. package/src/components/DataTable/components/ImportModal.tsx +1 -1
  369. package/src/components/DataTable/components/VirtualizedDataTable.tsx +9 -9
  370. package/src/components/DataTable/core/ColumnFactory.ts +6 -6
  371. package/src/components/DataTable/core/DataTableContext.tsx +14 -10
  372. package/src/components/DataTable/core/LocalDataAdapter.ts +2 -1
  373. package/src/components/DataTable/core/PluginRegistry.ts +3 -3
  374. package/src/components/DataTable/core/StateManager.ts +12 -11
  375. package/src/components/DataTable/core/__tests__/ActionManager.test.ts +104 -0
  376. package/src/components/DataTable/core/__tests__/DataManager.test.ts +101 -0
  377. package/src/components/DataTable/core/__tests__/LocalDataAdapter.test.ts +84 -0
  378. package/src/components/DataTable/core/__tests__/PluginRegistry.test.ts +102 -0
  379. package/src/components/DataTable/core/__tests__/StateManager.test.ts +104 -0
  380. package/src/components/DataTable/core/interfaces.ts +17 -17
  381. package/src/components/DataTable/hooks/__tests__/useDataTableConfiguration.test.ts +124 -0
  382. package/src/components/DataTable/hooks/__tests__/useDataTableDataPipeline.test.ts +117 -0
  383. package/src/components/DataTable/hooks/__tests__/useDataTablePermissions.test.ts +102 -0
  384. package/src/components/DataTable/hooks/__tests__/useEffectiveColumnOrder.test.ts +53 -0
  385. package/src/components/DataTable/hooks/useColumnOrderPersistence.ts +0 -2
  386. package/src/components/DataTable/hooks/useDataTablePermissions.ts +9 -8
  387. package/src/components/DataTable/types.ts +5 -5
  388. package/src/components/DataTable/utils/aggregationUtils.ts +4 -4
  389. package/src/components/DataTable/utils/columnUtils.ts +3 -2
  390. package/src/components/DataTable/utils/debugTools.ts +1 -1
  391. package/src/components/DataTable/utils/exportUtils.ts +6 -6
  392. package/src/components/DataTable/utils/hierarchicalSorting.ts +6 -6
  393. package/src/components/DataTable/utils/hierarchicalUtils.ts +0 -8
  394. package/src/components/DataTable/utils/index.ts +0 -1
  395. package/src/components/DataTable/utils/performanceUtils.ts +9 -4
  396. package/src/components/Dialog/Dialog.test.tsx +49 -27
  397. package/src/components/ErrorBoundary/ErrorBoundary.test.tsx +13 -8
  398. package/src/components/EventSelector/EventSelector.test.tsx +60 -12
  399. package/src/components/EventSelector/EventSelector.tsx +38 -15
  400. package/src/components/EventSelector/index.ts +2 -2
  401. package/src/components/FileDisplay/FileDisplay.test.tsx +143 -85
  402. package/src/components/FileDisplay/FileDisplay.tsx +1 -0
  403. package/src/components/FileUpload/FileUpload.test.tsx +532 -152
  404. package/src/components/FileUpload/FileUpload.tsx +43 -8
  405. package/src/components/Footer/Footer.test.tsx +19 -14
  406. package/src/components/Form/Form.test.tsx +96 -14
  407. package/src/components/Form/Form.tsx +210 -1
  408. package/src/components/Form/index.ts +3 -7
  409. package/src/components/Header/Header.test.tsx +24 -17
  410. package/src/components/Header/Header.tsx +3 -1
  411. package/src/components/InactivityWarningModal/InactivityWarningModal.tsx +2 -4
  412. package/src/components/Input/Input.test.tsx +61 -36
  413. package/src/components/Label/{__tests__/Label.test.tsx → Label.test.tsx} +2 -2
  414. package/src/components/Label/Label.tsx +2 -3
  415. package/src/components/LoadingSpinner/LoadingSpinner.test.tsx +6 -5
  416. package/src/components/LoadingSpinner/LoadingSpinner.tsx +6 -2
  417. package/src/components/LoginForm/LoginForm.test.tsx +14 -13
  418. package/src/components/LoginForm/LoginForm.tsx +1 -1
  419. package/src/components/LoginForm/index.ts +7 -0
  420. package/src/components/NavigationMenu/NavigationMenu.test.tsx +233 -20
  421. package/src/components/NavigationMenu/NavigationMenu.tsx +191 -55
  422. package/src/components/NavigationMenu/index.ts +1 -1
  423. package/src/components/OrganisationSelector/OrganisationSelector.test.tsx +20 -11
  424. package/src/components/OrganisationSelector/OrganisationSelector.tsx +1 -1
  425. package/src/components/PaceAppLayout/{__tests__/PaceAppLayout.integration.test.tsx → PaceAppLayout.integration.test.tsx} +272 -79
  426. package/src/components/PaceAppLayout/{__tests__/PaceAppLayout.performance.test.tsx → PaceAppLayout.performance.test.tsx} +155 -32
  427. package/src/components/PaceAppLayout/{__tests__/PaceAppLayout.security.test.tsx → PaceAppLayout.security.test.tsx} +211 -65
  428. package/src/components/PaceAppLayout/PaceAppLayout.test.tsx +498 -210
  429. package/src/components/PaceAppLayout/PaceAppLayout.tsx +63 -64
  430. package/src/components/PaceAppLayout/test-setup.tsx +192 -0
  431. package/src/components/PaceLoginPage/PaceLoginPage.test.tsx +193 -39
  432. package/src/components/{PasswordReset → PasswordChange}/PasswordChangeForm.test.tsx +2 -2
  433. package/src/components/{PasswordReset → PasswordChange}/PasswordChangeForm.tsx +10 -4
  434. package/src/components/PasswordChange/index.ts +2 -0
  435. package/src/components/Progress/Progress.test.tsx +11 -0
  436. package/src/components/Progress/Progress.tsx +1 -1
  437. package/src/components/Progress/index.ts +10 -0
  438. package/src/components/ProtectedRoute/ProtectedRoute.test.tsx +2 -1
  439. package/src/components/PublicLayout/PublicLayout.test.tsx +1210 -0
  440. package/src/components/PublicLayout/PublicPageLayout.tsx +190 -36
  441. package/src/components/PublicLayout/PublicPageProvider.tsx +8 -7
  442. package/src/components/PublicLayout/index.ts +10 -28
  443. package/src/components/Select/Select.test.tsx +7 -7
  444. package/src/components/Select/Select.tsx +277 -11
  445. package/src/components/Select/index.ts +1 -2
  446. package/src/components/SessionRestorationLoader/SessionRestorationLoader.test.tsx +232 -0
  447. package/src/components/SessionRestorationLoader/SessionRestorationLoader.tsx +40 -19
  448. package/src/components/Table/{__tests__/Table.test.tsx → Table.test.tsx} +94 -41
  449. package/src/components/Tabs/Tabs.test.tsx +10 -9
  450. package/src/components/Tabs/Tabs.tsx +61 -33
  451. package/src/components/Textarea/Textarea.test.tsx +31 -18
  452. package/src/components/Toast/Toast.tsx +2 -2
  453. package/src/components/Tooltip/Tooltip.test.tsx +1 -1
  454. package/src/components/UserMenu/UserMenu.test.tsx +7 -6
  455. package/src/components/UserMenu/UserMenu.tsx +2 -2
  456. package/src/components/index.ts +5 -4
  457. package/src/constants/performance.ts +19 -8
  458. package/src/hooks/__tests__/useAppConfig.unit.test.ts +21 -22
  459. package/src/hooks/__tests__/useEvents.unit.test.ts +5 -4
  460. package/src/hooks/__tests__/useOrganisationPermissions.unit.test.tsx +2 -2
  461. package/src/hooks/__tests__/usePermissionCache.simple.test.ts +17 -0
  462. package/src/hooks/__tests__/usePermissionCache.unit.test.ts +16 -11
  463. package/src/hooks/__tests__/usePublicEvent.simple.test.ts +1 -3
  464. package/src/hooks/__tests__/usePublicEvent.unit.test.ts +1 -3
  465. package/src/hooks/__tests__/useRBAC.unit.test.ts +24 -2
  466. package/src/hooks/index.ts +4 -0
  467. package/src/hooks/public/index.ts +2 -0
  468. package/src/hooks/public/usePublicEvent.ts +4 -6
  469. package/src/hooks/public/usePublicEventLogo.test.ts +147 -0
  470. package/src/hooks/public/usePublicRouteParams.ts +1 -1
  471. package/src/hooks/services/useAuth.ts +2 -4
  472. package/src/hooks/services/useCurrentEvent.ts +1 -1
  473. package/src/hooks/useAppConfig.ts +1 -1
  474. package/src/hooks/useDataTablePerformance.ts +2 -2
  475. package/src/hooks/useEventTheme.ts +1 -1
  476. package/src/hooks/useEvents.ts +51 -10
  477. package/src/hooks/useOrganisationPermissions.test.ts +3 -3
  478. package/src/hooks/useOrganisationPermissions.ts +1 -1
  479. package/src/hooks/useOrganisationSecurity.ts +2 -2
  480. package/src/hooks/usePermissionCache.test.ts +9 -9
  481. package/src/hooks/usePermissionCache.ts +2 -2
  482. package/src/index.ts +19 -12
  483. package/src/providers/OrganisationProvider.tsx +73 -9
  484. package/src/providers/UnifiedAuthProvider.smoke.test.tsx +113 -13
  485. package/src/providers/__tests__/AuthProvider.test.tsx +2 -1
  486. package/src/providers/__tests__/EventProvider.test.tsx +24 -15
  487. package/src/providers/__tests__/OrganisationProvider.test.tsx +87 -36
  488. package/src/providers/__tests__/UnifiedAuthProvider.test.tsx +80 -24
  489. package/src/providers/index.ts +0 -3
  490. package/src/providers/services/AuthServiceProvider.tsx +2 -17
  491. package/src/providers/services/EventServiceProvider.tsx +11 -16
  492. package/src/providers/services/InactivityServiceProvider.tsx +9 -12
  493. package/src/providers/services/OrganisationServiceProvider.tsx +9 -12
  494. package/src/providers/services/UnifiedAuthProvider.tsx +85 -18
  495. package/src/providers/services/__tests__/AuthServiceProvider.integration.test.tsx +11 -4
  496. package/src/rbac/__tests__/scenarios.user-role.test.tsx +105 -21
  497. package/src/rbac/adapters.tsx +1 -1
  498. package/src/rbac/api.ts +20 -4
  499. package/src/rbac/audit-enhanced.ts +47 -2
  500. package/src/rbac/audit.ts +47 -2
  501. package/src/rbac/components/NavigationGuard.tsx +1 -1
  502. package/src/rbac/components/NavigationProvider.test.tsx +7 -6
  503. package/src/rbac/components/NavigationProvider.tsx +1 -1
  504. package/src/rbac/components/PagePermissionGuard.tsx +1 -1
  505. package/src/rbac/components/PagePermissionProvider.test.tsx +7 -6
  506. package/src/rbac/components/PagePermissionProvider.tsx +1 -1
  507. package/src/rbac/components/PermissionEnforcer.tsx +1 -1
  508. package/src/rbac/components/RoleBasedRouter.tsx +1 -1
  509. package/src/rbac/components/SecureDataProvider.test.tsx +7 -6
  510. package/src/rbac/components/SecureDataProvider.tsx +1 -1
  511. package/src/rbac/components/__tests__/EnhancedNavigationMenu.test.tsx +6 -6
  512. package/src/rbac/components/__tests__/NavigationGuard.test.tsx +11 -10
  513. package/src/rbac/components/__tests__/NavigationProvider.test.tsx +10 -11
  514. package/src/rbac/components/__tests__/PagePermissionGuard.race-condition.test.tsx +19 -15
  515. package/src/rbac/components/__tests__/PagePermissionGuard.test.tsx +13 -12
  516. package/src/rbac/components/__tests__/PagePermissionGuard.verification.test.tsx +19 -15
  517. package/src/rbac/components/__tests__/PagePermissionProvider.test.tsx +18 -18
  518. package/src/rbac/components/__tests__/PermissionEnforcer.test.tsx +11 -10
  519. package/src/rbac/components/__tests__/RoleBasedRouter.test.tsx +8 -7
  520. package/src/rbac/components/__tests__/SecureDataProvider.fixed.test.tsx +10 -11
  521. package/src/rbac/components/__tests__/SecureDataProvider.test.tsx +48 -19
  522. package/src/rbac/hooks/__tests__/useSecureSupabase.test.ts +476 -0
  523. package/src/rbac/hooks/index.ts +3 -0
  524. package/src/rbac/hooks/usePermissions.ts +31 -85
  525. package/src/rbac/hooks/useRBAC.test.ts +13 -1
  526. package/src/rbac/hooks/useRBAC.ts +13 -67
  527. package/src/rbac/hooks/useResolvedScope.ts +11 -0
  528. package/src/rbac/hooks/useSecureSupabase.ts +308 -0
  529. package/src/rbac/index.ts +3 -0
  530. package/src/rbac/secureClient.ts +53 -6
  531. package/src/rbac/security.ts +37 -1
  532. package/src/{types/rbac-functions.ts → rbac/types/functions.ts} +30 -30
  533. package/src/rbac/types.ts +3 -2
  534. package/src/services/AuthService.ts +33 -25
  535. package/src/services/EventService.ts +56 -44
  536. package/src/services/InactivityService.ts +33 -53
  537. package/src/services/OrganisationService.ts +36 -40
  538. package/src/services/__tests__/AuthService.restoreSession.test.ts +6 -2
  539. package/src/services/__tests__/EventService.test.ts +67 -33
  540. package/src/services/interfaces/IEventService.ts +1 -1
  541. package/src/styles/core.css +2 -2
  542. package/src/styles/index.test.ts +21 -0
  543. package/src/styles/index.ts +1 -5
  544. package/src/types/__tests__/guards.test.ts +1 -1
  545. package/src/types/__tests__/organisation.roles.test.ts +55 -0
  546. package/src/types/__tests__/type-validation.test.ts +0 -1
  547. package/src/types/auth.ts +42 -2
  548. package/src/types/core.ts +251 -0
  549. package/src/types/database.ts +11 -496
  550. package/src/types/event.ts +102 -0
  551. package/src/types/file-reference.ts +6 -4
  552. package/src/types/guards.ts +2 -1
  553. package/src/types/index.ts +48 -14
  554. package/src/types/lodash.debounce.d.ts +15 -0
  555. package/src/types/organisation.ts +14 -10
  556. package/src/types/supabase.ts +15 -17
  557. package/src/utils/__tests__/secureErrors.unit.test.ts +1 -1
  558. package/src/utils/__tests__/validationUtils.unit.test.ts +0 -29
  559. package/src/utils/app/appNameResolver.ts +1 -1
  560. package/src/utils/audit/audit.test.ts +65 -0
  561. package/src/utils/device/deviceFingerprint.test.ts +171 -0
  562. package/src/utils/dynamic/dynamicUtils.ts +3 -2
  563. package/src/utils/file-reference/index.ts +25 -6
  564. package/src/utils/security/secureErrors.ts +1 -1
  565. package/src/utils/validation/__tests__/validationUtils.test.ts +72 -0
  566. package/src/utils/validation/index.ts +6 -12
  567. package/src/utils/validation/validationUtils.ts +0 -13
  568. package/dist/UnifiedAuthProvider-B37ATQHE.js +0 -16
  569. package/dist/auth-DReDSLq9.d.ts +0 -16
  570. package/dist/chunk-3JI76CYK.js +0 -2444
  571. package/dist/chunk-3JI76CYK.js.map +0 -1
  572. package/dist/chunk-56XJ3TU6.js +0 -11
  573. package/dist/chunk-56XJ3TU6.js.map +0 -1
  574. package/dist/chunk-5MT24GKJ.js.map +0 -1
  575. package/dist/chunk-7QCC6MCP.js +0 -288
  576. package/dist/chunk-BESYRHQM.js.map +0 -1
  577. package/dist/chunk-BJPBT3CU.js +0 -21
  578. package/dist/chunk-BJPBT3CU.js.map +0 -1
  579. package/dist/chunk-BVYWGZVV.js.map +0 -1
  580. package/dist/chunk-CX5M4ZAG.js.map +0 -1
  581. package/dist/chunk-D7LCGMVS.js.map +0 -1
  582. package/dist/chunk-EGI6MUL6.js +0 -27
  583. package/dist/chunk-EGI6MUL6.js.map +0 -1
  584. package/dist/chunk-ERISIBYU.js.map +0 -1
  585. package/dist/chunk-HRO5HWN2.js.map +0 -1
  586. package/dist/chunk-HZLDFOE4.js.map +0 -1
  587. package/dist/chunk-JISYG63F.js +0 -70
  588. package/dist/chunk-JISYG63F.js.map +0 -1
  589. package/dist/chunk-LIMSTKYD.js +0 -61
  590. package/dist/chunk-LIMSTKYD.js.map +0 -1
  591. package/dist/chunk-OWAG3GSU.js.map +0 -1
  592. package/dist/chunk-PPMP5J6T.js.map +0 -1
  593. package/dist/chunk-Q5QRDWKI.js.map +0 -1
  594. package/dist/chunk-S5OFRT4M.js.map +0 -1
  595. package/dist/chunk-SBVILCCA.js.map +0 -1
  596. package/dist/chunk-TUMEWN34.js +0 -15
  597. package/dist/chunk-TUMEWN34.js.map +0 -1
  598. package/dist/chunk-XDNLUEXI.js +0 -138
  599. package/dist/chunk-XJ2HZOBU.js.map +0 -1
  600. package/dist/chunk-ZYTYSTO5.js.map +0 -1
  601. package/dist/chunk-ZZ2SS7NI.js +0 -237
  602. package/dist/chunk-ZZ2SS7NI.js.map +0 -1
  603. package/dist/database-C6jy7EOu.d.ts +0 -500
  604. package/dist/organisation-D6qRDtbF.d.ts +0 -93
  605. package/dist/schema-DTDZQe2u.d.ts +0 -28
  606. package/dist/unified-DQ4VcT7H.d.ts +0 -198
  607. package/dist/useInactivityTracker-TO6ZOF35.js +0 -11
  608. package/dist/validation.d.ts +0 -47
  609. package/dist/validation.js +0 -24
  610. package/dist/validation.js.map +0 -1
  611. package/docs/DOCUMENTATION_AUDIT.md +0 -172
  612. package/docs/DOCUMENTATION_STANDARD.md +0 -137
  613. package/docs/api/classes/PublicErrorBoundary.md +0 -132
  614. package/docs/api/interfaces/EventLogoProps.md +0 -152
  615. package/docs/api/interfaces/PublicErrorBoundaryProps.md +0 -94
  616. package/docs/api/interfaces/PublicErrorBoundaryState.md +0 -68
  617. package/docs/api/interfaces/PublicLoadingSpinnerProps.md +0 -86
  618. package/docs/architecture/rpc-function-standards.md +0 -1106
  619. package/docs/getting-started/consuming-app-vite-config.md +0 -239
  620. package/docs/implementation-guides/event-theming-summary.md +0 -226
  621. package/docs/implementation-guides/public-pages-advanced.md +0 -1038
  622. package/docs/migration/v0.4.15-tailwind-scanning.md +0 -278
  623. package/docs/migration/v0.4.16-css-first-approach.md +0 -312
  624. package/docs/migration/v0.4.17-source-path-fix.md +0 -235
  625. package/docs/rbac/RBAC_EVENT_CONTEXT_LOADING.md +0 -222
  626. package/docs/rbac/RBAC_LOGIN_SAFETY_FIX.md +0 -95
  627. package/docs/rbac/RBAC_V0.5.147_FIX.md +0 -117
  628. package/docs/rbac/README-rbac-rls-integration.md +0 -374
  629. package/docs/styles/usage.md +0 -227
  630. package/docs/testing/visual-testing.md +0 -120
  631. package/docs/troubleshooting/DEBUG_NETWORK_ERROR.md +0 -152
  632. package/docs/troubleshooting/FIX_SUPABASE_CORS.md +0 -184
  633. package/docs/troubleshooting/cake-page-permission-guard-issue-summary.md +0 -193
  634. package/docs/troubleshooting/database-view-compatibility.md +0 -125
  635. package/docs/troubleshooting/react-hooks-issue-analysis.md +0 -172
  636. package/docs/troubleshooting/tailwind-content-scanning.md +0 -219
  637. package/examples/RBAC/EventBasedApp.tsx +0 -239
  638. package/examples/RBAC/PermissionExample.tsx +0 -151
  639. package/examples/STRUCTURE.md +0 -125
  640. package/examples/components 2/DataTable/HierarchicalExample.tsx +0 -475
  641. package/examples/components 2/Dialog/BasicHtmlTest.tsx +0 -55
  642. package/examples/components 2/Dialog/DebugHtmlExample.tsx +0 -68
  643. package/examples/components 2/Dialog/HtmlDialogExample.tsx +0 -202
  644. package/examples/components 2/Dialog/SimpleHtmlTest.tsx +0 -61
  645. package/examples/components 2/Dialog/SmartDialogExample.tsx +0 -322
  646. package/examples/components 2/index.ts +0 -11
  647. package/examples/features/index.ts +0 -12
  648. package/examples/features/rbac/CompleteRBACExample.tsx +0 -324
  649. package/examples/features/rbac/index.ts +0 -13
  650. package/examples/public-pages/CorrectPublicPageImplementation.tsx +0 -301
  651. package/examples/public-pages/PublicEventPage.tsx +0 -274
  652. package/examples/public-pages/PublicPageApp.tsx +0 -308
  653. package/examples/public-pages/PublicPageUsageExample.tsx +0 -216
  654. package/examples/public-pages/index.ts +0 -14
  655. package/src/__tests__/TEST_STANDARD.md +0 -1008
  656. package/src/components/Checkbox/__mocks__/Checkbox.tsx +0 -2
  657. package/src/components/DataTable/examples/HierarchicalActionsExample.tsx +0 -421
  658. package/src/components/DataTable/examples/InitialPageSizeExample.tsx +0 -177
  659. package/src/components/DataTable/examples/PerformanceExample.tsx +0 -506
  660. package/src/components/DataTable/examples/__tests__/HierarchicalActionsExample.test.tsx +0 -316
  661. package/src/components/DataTable/examples/__tests__/HierarchicalExample.test.tsx +0 -45
  662. package/src/components/DataTable/examples/__tests__/InitialPageSizeExample.test.tsx +0 -211
  663. package/src/components/DataTable/examples/__tests__/PerformanceExample.test.tsx +0 -126
  664. package/src/components/Dialog/README.md +0 -804
  665. package/src/components/Dialog/examples/BasicHtmlTest.tsx +0 -55
  666. package/src/components/Dialog/examples/DebugHtmlExample.tsx +0 -68
  667. package/src/components/Dialog/examples/ScrollableDialogExample.tsx +0 -290
  668. package/src/components/Dialog/examples/SimpleHtmlTest.tsx +0 -61
  669. package/src/components/Dialog/examples/__tests__/HtmlDialogExample.test.tsx +0 -71
  670. package/src/components/Dialog/examples/__tests__/SimpleHtmlTest.test.tsx +0 -122
  671. package/src/components/Dialog/examples/__tests__/SmartDialogExample.unit.test.tsx +0 -147
  672. package/src/components/Dialog/utils/__tests__/safeHtml.unit.test.ts +0 -611
  673. package/src/components/Dialog/utils/safeHtml.ts +0 -185
  674. package/src/components/EventSelector/types.ts +0 -79
  675. package/src/components/Form/FormErrorSummary.tsx +0 -113
  676. package/src/components/Form/FormField.tsx +0 -249
  677. package/src/components/Form/FormFieldset.tsx +0 -127
  678. package/src/components/Form/FormLiveRegion.tsx +0 -198
  679. package/src/components/Input/__mocks__/Input.tsx +0 -2
  680. package/src/components/NavigationMenu/types.ts +0 -85
  681. package/src/components/PaceAppLayout/__tests__/PaceAppLayout.accessibility.test.tsx +0 -326
  682. package/src/components/PaceAppLayout/__tests__/PaceAppLayout.unit.test.tsx +0 -1078
  683. package/src/components/PasswordReset/PasswordResetForm.test.tsx +0 -597
  684. package/src/components/PasswordReset/PasswordResetForm.tsx +0 -201
  685. package/src/components/PasswordReset/index.ts +0 -2
  686. package/src/components/ProtectedRoute/README.md +0 -164
  687. package/src/components/PublicLayout/EventLogo.tsx +0 -175
  688. package/src/components/PublicLayout/PublicErrorBoundary.tsx +0 -282
  689. package/src/components/PublicLayout/PublicLoadingSpinner.tsx +0 -216
  690. package/src/components/PublicLayout/PublicPageContextChecker.tsx +0 -131
  691. package/src/components/PublicLayout/PublicPageDebugger.tsx +0 -104
  692. package/src/components/PublicLayout/PublicPageDiagnostic.tsx +0 -162
  693. package/src/components/PublicLayout/PublicPageFooter.tsx +0 -124
  694. package/src/components/PublicLayout/PublicPageHeader.tsx +0 -209
  695. package/src/components/PublicLayout/__tests__/PublicErrorBoundary.test.tsx +0 -449
  696. package/src/components/PublicLayout/__tests__/PublicLoadingSpinner.test.tsx +0 -393
  697. package/src/components/PublicLayout/__tests__/PublicPageContextChecker.test.tsx +0 -192
  698. package/src/components/PublicLayout/__tests__/PublicPageFooter.test.tsx +0 -351
  699. package/src/components/PublicLayout/__tests__/PublicPageHeader.test.tsx +0 -402
  700. package/src/components/PublicLayout/__tests__/PublicPageLayout.test.tsx +0 -460
  701. package/src/components/PublicLayout/__tests__/PublicPageProvider.test.tsx +0 -313
  702. package/src/components/Select/hooks.ts +0 -289
  703. package/src/hooks/useCounter.test.ts +0 -131
  704. package/src/hooks/useDebounce.test.ts +0 -375
  705. package/src/providers/AuthProvider.tsx +0 -15
  706. package/src/providers/EventProvider.tsx +0 -16
  707. package/src/providers/InactivityProvider.tsx +0 -15
  708. package/src/providers/OrganisationProvider.context.test.tsx +0 -169
  709. package/src/providers/UnifiedAuthProvider.tsx +0 -15
  710. package/src/types/theme.ts +0 -6
  711. package/src/types/unified.ts +0 -265
  712. package/src/utils/appConfig.ts +0 -47
  713. package/src/utils/appIdResolver.test.ts +0 -499
  714. package/src/utils/appIdResolver.ts +0 -130
  715. package/src/utils/appNameResolver.simple.test.ts +0 -212
  716. package/src/utils/appNameResolver.test.ts +0 -121
  717. package/src/utils/appNameResolver.ts +0 -191
  718. package/src/utils/audit.ts +0 -127
  719. package/src/utils/auth-utils.ts +0 -96
  720. package/src/utils/bundleAnalysis.ts +0 -129
  721. package/src/utils/debugLogger.ts +0 -67
  722. package/src/utils/deviceFingerprint.ts +0 -215
  723. package/src/utils/dynamicUtils.ts +0 -105
  724. package/src/utils/file-reference.test.ts +0 -788
  725. package/src/utils/file-reference.ts +0 -519
  726. package/src/utils/formatDate.test.ts +0 -237
  727. package/src/utils/formatting.ts +0 -170
  728. package/src/utils/lazyLoad.tsx +0 -44
  729. package/src/utils/logger.ts +0 -179
  730. package/src/utils/organisationContext.test.ts +0 -322
  731. package/src/utils/organisationContext.ts +0 -153
  732. package/src/utils/performanceBenchmark.ts +0 -64
  733. package/src/utils/performanceBudgets.ts +0 -110
  734. package/src/utils/permissionTypes.ts +0 -37
  735. package/src/utils/permissionUtils.test.ts +0 -393
  736. package/src/utils/permissionUtils.ts +0 -34
  737. package/src/utils/sanitization.ts +0 -264
  738. package/src/utils/schemaUtils.ts +0 -37
  739. package/src/utils/secureDataAccess.test.ts +0 -711
  740. package/src/utils/secureDataAccess.ts +0 -377
  741. package/src/utils/secureErrors.ts +0 -79
  742. package/src/utils/security.ts +0 -156
  743. package/src/utils/securityMonitor.ts +0 -45
  744. package/src/utils/sessionTracking.ts +0 -126
  745. package/src/utils/validation.ts +0 -111
  746. package/src/utils/validationUtils.ts +0 -120
  747. package/src/validation/index.ts +0 -12
  748. /package/dist/{DataTable-UA6CL4JI.js.map → DataTable-QAB34V6K.js.map} +0 -0
  749. /package/dist/{UnifiedAuthProvider-B37ATQHE.js.map → UnifiedAuthProvider-7F6T4B6K.js.map} +0 -0
  750. /package/dist/{api-45XYYO2A.js.map → api-ROMBCNKU.js.map} +0 -0
  751. /package/dist/{audit-64X3VJXB.js.map → audit-WRS3KJKI.js.map} +0 -0
  752. /package/dist/{chunk-PLDDJCW6.js.map → chunk-7D4SUZUM.js.map} +0 -0
  753. /package/dist/{useInactivityTracker-TO6ZOF35.js.map → chunk-KQCRWDSA.js.map} +0 -0
  754. /package/examples/{components 2/DataTable → DataTable}/InitialPageSizeExample.tsx +0 -0
  755. /package/examples/{features/public-pages → PublicPages}/index.ts +0 -0
  756. /package/examples/{RBAC → rbac}/index.ts +0 -0
@@ -1,198 +0,0 @@
1
- /**
2
- * @file Unified types for PACE Core
3
- * @package @jmruthers/pace-core
4
- * @module unified
5
- * @since 0.1.0
6
- */
7
- /**
8
- * @file Unified Types for DataTable
9
- * @package @jmruthers/pace-core
10
- * @module Types
11
- * @since 0.3.0
12
- */
13
- declare enum AuthErrorCode {
14
- UNKNOWN_ERROR = "UNKNOWN_ERROR",
15
- INVALID_CREDENTIALS = "INVALID_CREDENTIALS",
16
- USER_NOT_FOUND = "USER_NOT_FOUND",
17
- EMAIL_NOT_CONFIRMED = "EMAIL_NOT_CONFIRMED",
18
- PASSWORD_TOO_WEAK = "PASSWORD_TOO_WEAK",
19
- WEAK_PASSWORD = "WEAK_PASSWORD",
20
- RATE_LIMITED = "RATE_LIMITED",
21
- RATE_LIMIT_EXCEEDED = "RATE_LIMIT_EXCEEDED",
22
- SESSION_EXPIRED = "SESSION_EXPIRED",
23
- PERMISSION_DENIED = "PERMISSION_DENIED",
24
- NETWORK_ERROR = "NETWORK_ERROR"
25
- }
26
- declare enum PermissionErrorCode {
27
- INSUFFICIENT_PERMISSIONS = "INSUFFICIENT_PERMISSIONS",
28
- INVALID_PERMISSION = "INVALID_PERMISSION",
29
- PERMISSION_CHECK_FAILED = "PERMISSION_CHECK_FAILED",
30
- ACCESS_DENIED = "ACCESS_DENIED"
31
- }
32
- declare enum AccessLevel {
33
- NONE = "none",
34
- VIEWER = "viewer",
35
- PARTICIPANT = "participant",
36
- EDITOR = "editor",
37
- PLANNER = "planner",
38
- ADMIN = "admin",
39
- SUPER_ADMIN = "super_admin",
40
- SUPER = "super"
41
- }
42
- type UserId = string & {
43
- __brand: 'UserId';
44
- };
45
- type SessionToken = string & {
46
- __brand: 'SessionToken';
47
- };
48
- type PermissionString = string & {
49
- __brand: 'PermissionString';
50
- };
51
- type RequestId = string & {
52
- __brand: 'RequestId';
53
- };
54
- declare function createUserId(id: string): UserId;
55
- declare function createSessionToken(token: string): SessionToken;
56
- declare function createPermissionString(permission: string): PermissionString;
57
- declare function createRequestId(id: string): RequestId;
58
- declare function isUserId(value: unknown): value is UserId;
59
- declare function isSessionToken(value: unknown): value is SessionToken;
60
- declare function isPermissionString(value: unknown): value is PermissionString;
61
- declare function isRequestId(value: unknown): value is RequestId;
62
- type PermissionMap = Record<string, boolean>;
63
- interface PermissionContext {
64
- eventId?: string;
65
- appName?: string;
66
- userId?: string;
67
- }
68
- interface AuthError extends Error {
69
- __isAuthError: true;
70
- name: 'AuthError';
71
- message: string;
72
- code: AuthErrorCode;
73
- user_message: string;
74
- timestamp: number;
75
- }
76
- interface PermissionError extends Error {
77
- __isPermissionError: true;
78
- name: 'PermissionError';
79
- message: string;
80
- code: PermissionErrorCode;
81
- timestamp: number;
82
- }
83
- interface ThemeColors {
84
- primary: string;
85
- secondary: string;
86
- hover?: string;
87
- active?: string;
88
- bgSoft?: string;
89
- }
90
- interface EventTheme {
91
- mid: ThemeColors;
92
- light: ThemeColors;
93
- }
94
- interface Event {
95
- id: string;
96
- event_id: string;
97
- event_name: string;
98
- event_code?: string;
99
- organisation_id: string;
100
- event_date?: string;
101
- event_days?: number;
102
- event_venue?: string;
103
- event_participants?: number;
104
- is_visible?: boolean;
105
- event_logo?: string;
106
- event_colours?: Record<string, unknown> | null;
107
- event_col_d1?: string;
108
- event_col_d2?: string;
109
- event_col_m1?: string;
110
- event_col_m2?: string;
111
- event_col_l1?: string;
112
- event_col_l2?: string;
113
- event_news?: string;
114
- event_billing?: string;
115
- event_catering_email?: string;
116
- event_email?: string;
117
- event_footer?: string;
118
- event_rounddown?: number;
119
- event_youthmultiplier?: number;
120
- event_typicalunit?: number;
121
- created_at: string;
122
- updated_at: string;
123
- created_by?: string;
124
- updated_by?: string;
125
- name?: string;
126
- description?: string;
127
- start_date?: string;
128
- end_date?: string;
129
- theme_colors?: EventTheme;
130
- }
131
- interface EventContextType {
132
- selectedEvent: Event | null;
133
- currentEvent: Event | null;
134
- events: Event[];
135
- isLoading: boolean;
136
- error: string | null;
137
- selectEvent: (event: Event) => void;
138
- setCurrentEvent: (event: Event | null) => void;
139
- clearSelection: () => void;
140
- refreshEvents: () => Promise<void>;
141
- createEvent: (event: Partial<Event>) => Promise<Event>;
142
- updateEvent: (id: string, updates: Partial<Event>) => Promise<Event>;
143
- deleteEvent: (id: string) => Promise<void>;
144
- }
145
- interface UserPermissions {
146
- user_id: UserId;
147
- accessLevel: AccessLevel;
148
- permissions: PermissionMap;
149
- roles: string[];
150
- }
151
- interface User {
152
- id: string;
153
- email?: string;
154
- created_at: string;
155
- updated_at: string;
156
- email_confirmed_at?: string;
157
- last_sign_in_at?: string;
158
- user_metadata?: Record<string, unknown>;
159
- app_metadata?: Record<string, unknown>;
160
- }
161
- interface Session {
162
- access_token: string;
163
- refresh_token?: string;
164
- expires_in: number;
165
- expires_at: number;
166
- token_type: string;
167
- user: User;
168
- provider_token?: string;
169
- provider_refresh_token?: string;
170
- }
171
- interface DataRecord {
172
- id: string | number;
173
- [key: string]: unknown;
174
- }
175
- interface DataTableAction<T = unknown> {
176
- label: string;
177
- onClick: (row: T) => void;
178
- testId?: string;
179
- disabled?: boolean | ((row: T) => boolean);
180
- variant?: 'primary' | 'secondary' | 'destructive';
181
- }
182
- interface DataTableColumn<T = unknown> {
183
- id?: string;
184
- key: string;
185
- label: string;
186
- sortable?: boolean;
187
- filterable?: boolean;
188
- accessorKey?: keyof T;
189
- accessorFn?: (row: T) => unknown;
190
- cell?: (value: unknown, row: T) => React.ReactNode;
191
- header?: React.ReactNode;
192
- enableSorting?: boolean;
193
- enableColumnFilter?: boolean;
194
- enableGrouping?: boolean;
195
- enableHiding?: boolean;
196
- }
197
-
198
- export { type AuthError as A, type DataRecord as D, type Event as E, type PermissionError as P, type RequestId as R, type Session as S, type ThemeColors as T, type User as U, type UserPermissions as a, type PermissionString as b, AccessLevel as c, AuthErrorCode as d, PermissionErrorCode as e, type UserId as f, type SessionToken as g, createUserId as h, createSessionToken as i, createPermissionString as j, createRequestId as k, isUserId as l, isSessionToken as m, isPermissionString as n, isRequestId as o, type PermissionMap as p, type PermissionContext as q, type EventTheme as r, type EventContextType as s, type DataTableAction as t, type DataTableColumn as u };
@@ -1,11 +0,0 @@
1
- import {
2
- init_useInactivityTracker,
3
- useInactivityTracker
4
- } from "./chunk-ZZ2SS7NI.js";
5
- import "./chunk-XDNLUEXI.js";
6
- import "./chunk-PLDDJCW6.js";
7
- init_useInactivityTracker();
8
- export {
9
- useInactivityTracker
10
- };
11
- //# sourceMappingURL=useInactivityTracker-TO6ZOF35.js.map
@@ -1,47 +0,0 @@
1
- /**
2
- * @file Internal utilities for validation module
3
- * @internal This file contains implementation details that should not be used directly
4
- */
5
- /**
6
- * Utility functions for validating data in the application
7
- */
8
- /**
9
- * Check if a string is a valid email
10
- */
11
- declare function isValidEmail(email: string): boolean;
12
- /**
13
- * Check if a string is empty (either null, undefined, or just whitespace)
14
- */
15
- declare function isEmpty(value: string | null | undefined): boolean;
16
- /**
17
- * Check if a password meets minimum requirements
18
- */
19
- declare function isStrongPassword(password: string): boolean;
20
- /**
21
- * Check if a URL is valid
22
- */
23
- declare function isValidUrl(url: string): boolean;
24
- /**
25
- * Check if a date string is valid
26
- */
27
- declare function isValidDate(dateStr: string): boolean;
28
- /**
29
- * Check if a value is within a range
30
- */
31
- declare function isWithinRange(value: number, min: number, max: number): boolean;
32
- /**
33
- * Check if a value matches a specific pattern
34
- */
35
- declare function matchesPattern(value: string, pattern: RegExp): boolean;
36
- /**
37
- * Utility function to deep merge objects for schema combination
38
- * @internal
39
- */
40
- declare function deepMerge<T extends Record<string, unknown>>(target: T, source: Record<string, unknown>): T;
41
- /**
42
- * Type guard to check if a value is a plain object
43
- * @internal
44
- */
45
- declare function isObject(item: unknown): item is Record<string, unknown>;
46
-
47
- export { deepMerge, isEmpty, isObject, isStrongPassword, isValidDate, isValidEmail, isValidUrl, isWithinRange, matchesPattern };
@@ -1,24 +0,0 @@
1
- import {
2
- deepMerge,
3
- isEmpty,
4
- isObject,
5
- isStrongPassword,
6
- isValidDate,
7
- isValidEmail,
8
- isValidUrl,
9
- isWithinRange,
10
- matchesPattern
11
- } from "./chunk-JISYG63F.js";
12
- import "./chunk-PLDDJCW6.js";
13
- export {
14
- deepMerge,
15
- isEmpty,
16
- isObject,
17
- isStrongPassword,
18
- isValidDate,
19
- isValidEmail,
20
- isValidUrl,
21
- isWithinRange,
22
- matchesPattern
23
- };
24
- //# sourceMappingURL=validation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,172 +0,0 @@
1
- ---
2
- lastUpdated: 2025-10-29T22:43:00+11:00
3
- version: 0.5.76
4
- reviewedBy: content-audit
5
- ---
6
-
7
- # 📘 PACE Core Documentation Audit Tracker
8
-
9
- > Progressively aligning all docs with the [PACE Core Documentation Standard](./DOCUMENTATION_STANDARD.md)
10
-
11
- This file tracks compliance with the PACE Core Documentation Standard across all documentation files.
12
-
13
- ---
14
-
15
- ## 🧭 Scope
16
- All Markdown (`.md`) files within:
17
- - `/packages/core/docs/` (95 files total)
18
- - Core documentation files
19
- - Implementation guides, API references, and troubleshooting docs
20
-
21
- ---
22
-
23
- ## ✅ Progress Tracker
24
-
25
- ### Core Documentation Files
26
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
27
- |------|---------|-------------------|-----------|------------|---------------|--------|
28
- | README.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper H2/H3 hierarchy | ✅ Good formatting | ✅ Descriptive links | Main entry point |
29
- | DOCUMENTATION_STANDARD.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Consistent formatting | ✅ Good accessibility | Official standard |
30
- | DOCUMENTATION_AUDIT.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Good formatting | ✅ Descriptive links | This file |
31
-
32
- ### Getting Started Guides
33
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
34
- |------|---------|-------------------|-----------|------------|---------------|--------|
35
- | getting-started/quick-start.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper H2/H3 hierarchy | ✅ Complete examples | ✅ Descriptive links | Excellent structure |
36
- | getting-started/installation-guide.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Runnable examples | ✅ Good accessibility | Well organized |
37
- | getting-started/faq.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Good formatting | ✅ Descriptive links | Comprehensive FAQ |
38
- | getting-started/quick-reference.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Good formatting | ✅ Good accessibility | Quick reference |
39
-
40
- ### API Reference
41
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
42
- |------|---------|-------------------|-----------|------------|---------------|--------|
43
- | api-reference/components.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Complete examples | ✅ Descriptive links | Comprehensive API docs |
44
- | api-reference/hooks.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Runnable examples | ✅ Good accessibility | Well documented |
45
- | api-reference/providers.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Good formatting | ✅ Descriptive links | Clear provider docs |
46
-
47
- ### Implementation Guides
48
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
49
- |------|---------|-------------------|-----------|------------|---------------|--------|
50
- | implementation-guides/data-tables.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Complete examples | ✅ Descriptive links | Excellent guide |
51
- | implementation-guides/app-layout.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Runnable examples | ✅ Good accessibility | Well structured |
52
- | implementation-guides/forms.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Good formatting | ✅ Descriptive links | Comprehensive forms guide |
53
-
54
- ### Troubleshooting
55
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
56
- |------|---------|-------------------|-----------|------------|---------------|--------|
57
- | troubleshooting/common-issues.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Complete examples | ✅ Descriptive links | Excellent troubleshooting |
58
- | troubleshooting/README.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Good formatting | ✅ Good accessibility | Good overview |
59
-
60
- ### Migration Guides
61
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
62
- |------|---------|-------------------|-----------|------------|---------------|--------|
63
- | migration/breaking-changes.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Complete examples | ✅ Descriptive links | Clear breaking changes |
64
- | migration/MIGRATION_GUIDE.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Runnable examples | ✅ Good accessibility | Comprehensive migration |
65
-
66
- ### RBAC Documentation
67
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
68
- |------|---------|-------------------|-----------|------------|---------------|--------|
69
- | rbac/README.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Complete examples | ✅ Descriptive links | Excellent RBAC docs |
70
- | rbac/quick-start.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Runnable examples | ✅ Good accessibility | Good quick start |
71
-
72
- ### Best Practices
73
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
74
- |------|---------|-------------------|-----------|------------|---------------|--------|
75
- | best-practices/common-patterns.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Complete examples | ✅ Descriptive links | Excellent patterns |
76
- | best-practices/README.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Good formatting | ✅ Good accessibility | Good overview |
77
-
78
- ### Core Concepts
79
- | File | Status | Writing Principles | Structure | Formatting | Accessibility | Notes |
80
- |------|---------|-------------------|-----------|------------|---------------|--------|
81
- | core-concepts/authentication.md | ✅ Compliant | ✅ Clear, active voice | ✅ Proper hierarchy | ✅ Complete examples | ✅ Descriptive links | Clear auth concepts |
82
-
83
- ---
84
-
85
- ## 📊 Overall Compliance Summary
86
-
87
- | Category | Total Files | Compliant | Non-Compliant | Compliance Rate |
88
- |----------|-------------|-----------|---------------|-----------------|
89
- | **Core Files** | 3 | 3 | 0 | 100% |
90
- | **Getting Started** | 4 | 4 | 0 | 100% |
91
- | **API Reference** | 3 | 3 | 0 | 100% |
92
- | **Implementation** | 3 | 3 | 0 | 100% |
93
- | **Troubleshooting** | 2 | 2 | 0 | 100% |
94
- | **Migration** | 2 | 2 | 0 | 100% |
95
- | **RBAC** | 2 | 2 | 0 | 100% |
96
- | **Best Practices** | 2 | 2 | 0 | 100% |
97
- | **Core Concepts** | 1 | 1 | 0 | 100% |
98
- | **TOTAL** | **22** | **22** | **0** | **100%** |
99
-
100
- ---
101
-
102
- ## 🧩 Audit Checklist Results
103
-
104
- ### ✅ Writing Principles Compliance
105
- - ✅ **Clarity first**: All files use plain English, avoid jargon
106
- - ✅ **Explain "why"**: Files explain reasoning behind decisions
107
- - ✅ **Active voice**: Consistent use of active voice throughout
108
- - ✅ **Context-aware**: Written for developers integrating PACE Core
109
-
110
- ### ✅ Structure & File Organization Compliance
111
- - ✅ **Proper naming**: Core files use UPPER_CASE.md, guides use kebab-case.md
112
- - ✅ **Logical organization**: Files organized in appropriate directories
113
- - ✅ **Consistent structure**: All files follow standard documentation sections
114
-
115
- ### ✅ Formatting Standards Compliance
116
- - ✅ **Heading hierarchy**: Proper H2 for sections, H3 for subsections
117
- - ✅ **Code blocks**: Use `tsx` for React examples, include imports
118
- - ✅ **Lists**: Use `-` for unordered lists, keep grammar parallel
119
- - ✅ **Complete examples**: All code examples are runnable and complete
120
-
121
- ### ✅ Accessibility Compliance
122
- - ✅ **Semantic headings**: No skipped heading levels
123
- - ✅ **Descriptive links**: All links use descriptive text
124
- - ✅ **Screen reader friendly**: Proper heading and list structure
125
-
126
- ### ✅ Maintenance & QA Compliance
127
- - ✅ **Code examples compile**: All examples are syntactically correct
128
- - ✅ **Links verified**: All internal links work correctly
129
- - ✅ **Consistent formatting**: Uniform formatting across all files
130
- - ✅ **Accessibility checked**: All files meet accessibility standards
131
-
132
- ---
133
-
134
- ## 🎯 Key Findings
135
-
136
- ### ✅ **Strengths**
137
- 1. **Excellent Structure**: All files follow the documentation standard structure perfectly
138
- 2. **Complete Examples**: All code examples are runnable and include proper imports
139
- 3. **Clear Navigation**: Consistent breadcrumb navigation across all files
140
- 4. **Active Voice**: Consistent use of active voice throughout
141
- 5. **Proper Hierarchy**: Correct heading hierarchy in all files
142
- 6. **Descriptive Links**: All links use descriptive text, not generic "this guide"
143
-
144
- ### ✅ **Compliance Highlights**
145
- - **100% compliance** with writing principles
146
- - **100% compliance** with structure and file organization
147
- - **100% compliance** with formatting standards
148
- - **100% compliance** with accessibility requirements
149
- - **100% compliance** with maintenance and QA standards
150
-
151
- ---
152
-
153
- ## 🚀 Recommendations
154
-
155
- ### ✅ **Maintain Current Standards**
156
- 1. **Continue quarterly reviews** as specified in documentation standard
157
- 2. **Verify links monthly** to prevent broken references
158
- 3. **Update examples** when new features are released
159
- 4. **Peer review** all new documentation before publishing
160
-
161
- ### ✅ **Quality Metrics Achieved**
162
- - ✅ **Exported features documented**: 100%
163
- - ✅ **Runnable examples**: 100%
164
- - ✅ **Broken links**: 0
165
- - ✅ **Terminology consistency**: 100%
166
- - ✅ **Documentation standard compliance**: 100%
167
-
168
- ---
169
-
170
- **Last Updated**: January 2025
171
- **Audit Status**: ✅ **COMPLETE - 100% COMPLIANT**
172
- **Next Review**: April 2025
@@ -1,137 +0,0 @@
1
- # Documentation Standard
2
-
3
- Use this guide to ensure consistent, high-quality documentation across the pace-core project. Every documentation contribution should follow these standards.
4
-
5
- ## Voice & Tone
6
-
7
- - [ ] **Write clearly and directly**: Use active voice and present tense where possible
8
- - [ ] **Know your audience**: Assume readers are React developers comfortable with TypeScript
9
- - [ ] **Lead with purpose**: Explain *why* a step matters before diving into *how* to do it
10
- - [ ] **Be inclusive**: Use "you" instead of "we" when addressing the reader
11
- - [ ] **Stay professional but approachable**: Avoid jargon without explanation, but don't oversimplify
12
-
13
- ## Content Structure
14
-
15
- ### Page Organization
16
- - [ ] **Single H1**: Use `#` for the page title once per file, then start sections at `##`
17
- - [ ] **Logical hierarchy**: Don't skip heading levels (no jumping from `##` to `####`)
18
- - [ ] **Consistent sections**: Include these sections where relevant:
19
- - Overview/Introduction
20
- - Prerequisites
21
- - Quick Start/Getting Started
22
- - Detailed Usage
23
- - Examples
24
- - API Reference
25
- - Troubleshooting
26
- - Next Steps/Related Links
27
-
28
- ### Content Flow
29
- - [ ] **Context first**: Open with goal, prerequisites, or summary before diving into implementation
30
- - [ ] **Progressive disclosure**: Start simple, then add complexity
31
- - [ ] **Clear endings**: End with next steps, validation checks, or related links
32
- - [ ] **Logical grouping**: Place new pages in directories that match their topic (e.g., RBAC docs in `docs/rbac/`)
33
-
34
- ## Code & Examples
35
-
36
- ### Code Blocks
37
- - [ ] **Use fenced code blocks** with appropriate language tags (`ts`, `tsx`, `bash`, `json`, `sql`)
38
- - [ ] **Include complete examples**: Add all necessary imports so code can be copied directly
39
- - [ ] **Show realistic usage**: Use meaningful variable names and realistic data
40
- - [ ] **Highlight key parts**: Use comments to explain important sections
41
-
42
- ### Code Quality
43
- - [ ] **Follow project conventions**: Match the codebase's TypeScript and React patterns
44
- - [ ] **Test your examples**: Ensure all code samples actually work
45
- - [ ] **Keep examples focused**: Show one concept at a time unless demonstrating integration
46
-
47
- ## Formatting Standards
48
-
49
- ### Lists & Tables
50
- - [ ] **Parallel structure**: Keep bullet points grammatically consistent
51
- - [ ] **Reasonable length**: Limit lists to 7 items; use tables for structured data
52
- - [ ] **Proper nesting**: Use consistent indentation for nested lists
53
- - [ ] **Table headers**: Always include headers for tables with meaningful column names
54
-
55
- ### Links & References
56
- - [ ] **Relative paths**: Link to other docs using relative paths (e.g., `../rbac/quick-start.md`)
57
- - [ ] **Descriptive text**: Use meaningful link text, not "click here" or raw URLs
58
- - [ ] **External links**: Open external links in new tabs when appropriate
59
- - [ ] **API references**: Link to relevant API documentation and source code
60
-
61
- ### Visual Elements
62
- - [ ] **Screenshots**: Include when they add value, especially for UI components
63
- - [ ] **Alt text**: Provide descriptive alt text for all images
64
- - [ ] **Consistent styling**: Use the same formatting for similar elements across docs
65
-
66
- ## Terminology & Language
67
-
68
- ### Project-Specific Terms
69
- - [ ] **Use "organisation"** (Australian spelling) consistently throughout
70
- - [ ] **Capitalize properly**: "pace-core" (lowercase), "Supabase" (proper case)
71
- - [ ] **Define acronyms**: Spell out abbreviations on first use (e.g., "Role-Based Access Control (RBAC)")
72
-
73
- ### Technical Writing
74
- - [ ] **Be specific**: Use precise technical terms rather than vague language
75
- - [ ] **Explain assumptions**: Don't assume knowledge of internal implementation details
76
- - [ ] **Use consistent naming**: Stick to the same terms for the same concepts throughout
77
-
78
- ## Quality Assurance
79
-
80
- ### Pre-Publication Checks
81
- - [ ] **Spell check**: Run automated spell check and manual review
82
- - [ ] **Grammar check**: Read aloud or use grammar tools to catch awkward phrasing
83
- - [ ] **Link validation**: Verify all internal and external links work
84
- - [ ] **Code testing**: Run and test all code examples
85
-
86
- ### Technical Accuracy
87
- - [ ] **API alignment**: Check referenced APIs against current implementation in `packages/core/src/`
88
- - [ ] **Command verification**: Test all CLI commands and scripts in a clean environment
89
- - [ ] **Version compatibility**: Ensure examples work with current dependency versions
90
-
91
- ### Maintenance
92
- - [ ] **Index updates**: Update [documentation-index.md](./documentation-index.md) for new, moved, or removed pages
93
- - [ ] **Gap tracking**: Note follow-up work in the "Known gaps" section of [README.md](./README.md)
94
- - [ ] **Regular review**: Schedule periodic reviews to keep content current
95
-
96
- ## Accessibility & Inclusion
97
-
98
- - [ ] **Screen reader friendly**: Use proper heading hierarchy and alt text
99
- - [ ] **Color independence**: Don't rely solely on color to convey information
100
- - [ ] **Clear language**: Write for non-native English speakers when possible
101
- - [ ] **Multiple learning styles**: Include both conceptual explanations and practical examples
102
-
103
- ## Review Process
104
-
105
- ### Self-Review Checklist
106
- - [ ] **Content accuracy**: Verify all technical details are correct
107
- - [ ] **Completeness**: Ensure the document achieves its stated purpose
108
- - [ ] **Clarity**: Check that a new team member could follow the instructions
109
- - [ ] **Consistency**: Confirm formatting and terminology align with other docs
110
-
111
- ### Peer Review
112
- - [ ] **Fresh eyes**: Have someone unfamiliar with the topic review for clarity
113
- - [ ] **Technical review**: Get approval from subject matter experts
114
- - [ ] **Editorial review**: Check for grammar, style, and formatting consistency
115
-
116
- ## Documentation Types
117
-
118
- ### Quick Reference
119
- For API docs, component props, and CLI commands:
120
- - [ ] **Tabular format**: Use tables for parameter lists and return values
121
- - [ ] **Required vs optional**: Clearly mark required parameters
122
- - [ ] **Default values**: Include default values where applicable
123
- - [ ] **Type information**: Show TypeScript types for all parameters
124
-
125
- ### Tutorials
126
- For step-by-step guides:
127
- - [ ] **Clear objectives**: State what the reader will accomplish
128
- - [ ] **Prerequisites**: List required knowledge and setup
129
- - [ ] **Numbered steps**: Use ordered lists for sequential processes
130
- - [ ] **Validation points**: Include checkpoints to verify progress
131
-
132
- ### Conceptual Guides
133
- For explaining how things work:
134
- - [ ] **Big picture first**: Start with high-level concepts
135
- - [ ] **Visual aids**: Use diagrams or flowcharts where helpful
136
- - [ ] **Real-world context**: Explain when and why to use features
137
- - [ ] **Common patterns**: Show typical usage scenarios