@jmruthers/pace-core 0.6.2 → 0.6.4

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 (299) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/cursor-rules/00-pace-core-compliance.mdc +34 -2
  3. package/dist/{AuthService-BPvc3Ka0.d.ts → AuthService-Cb34EQs3.d.ts} +9 -1
  4. package/dist/{DataTable-TPTKCX4D.js → DataTable-E7YQZD7D.js} +9 -8
  5. package/dist/{PublicPageProvider-DC6kCaqf.d.ts → PublicPageProvider-DEMpysFR.d.ts} +45 -67
  6. package/dist/{UnifiedAuthProvider-CVcTjx-d.d.ts → UnifiedAuthProvider-CKvHP1MK.d.ts} +1 -8
  7. package/dist/{UnifiedAuthProvider-CH6Z342H.js → UnifiedAuthProvider-QPXO24B4.js} +5 -4
  8. package/dist/{api-MVVQZLJI.js → api-6LVZTHDS.js} +10 -10
  9. package/dist/{audit-B5P6FFIR.js → audit-V53FV5AG.js} +2 -2
  10. package/dist/chunk-36LVWXB2.js +227 -0
  11. package/dist/chunk-36LVWXB2.js.map +1 -0
  12. package/dist/{chunk-24UVZUZG.js → chunk-3LPHPB62.js} +129 -387
  13. package/dist/chunk-3LPHPB62.js.map +1 -0
  14. package/dist/{chunk-2UOI2FG5.js → chunk-5EC5MEWX.js} +4 -4
  15. package/dist/{chunk-3XC4CPTD.js → chunk-7JPAB3T5.js} +244 -5727
  16. package/dist/chunk-7JPAB3T5.js.map +1 -0
  17. package/dist/{chunk-6J4GEEJR.js → chunk-ATKZM7RX.js} +53 -27
  18. package/dist/chunk-ATKZM7RX.js.map +1 -0
  19. package/dist/{chunk-EHMR7VYL.js → chunk-AVMLPIM7.js} +443 -189
  20. package/dist/chunk-AVMLPIM7.js.map +1 -0
  21. package/dist/chunk-DGUM43GV.js +11 -0
  22. package/dist/{chunk-NECFR5MM.js → chunk-I6DAQMWX.js} +575 -647
  23. package/dist/chunk-I6DAQMWX.js.map +1 -0
  24. package/dist/{chunk-F2IMUDXZ.js → chunk-M7MPQISP.js} +2 -2
  25. package/dist/{chunk-XWQCNGTQ.js → chunk-NN6WWZ5U.js} +173 -79
  26. package/dist/chunk-NN6WWZ5U.js.map +1 -0
  27. package/dist/{chunk-MMZ7JXPU.js → chunk-OEWDTMG7.js} +13 -21
  28. package/dist/{chunk-MMZ7JXPU.js.map → chunk-OEWDTMG7.js.map} +1 -1
  29. package/dist/{chunk-SFZUDBL5.js → chunk-YKRAFF5K.js} +70 -56
  30. package/dist/chunk-YKRAFF5K.js.map +1 -0
  31. package/dist/components.d.ts +2 -2
  32. package/dist/components.js +12 -13
  33. package/dist/contextValidator-OOPCLPZW.js +9 -0
  34. package/dist/contextValidator-OOPCLPZW.js.map +1 -0
  35. package/dist/eslint-rules/pace-core-compliance.cjs +106 -0
  36. package/dist/hooks.d.ts +2 -2
  37. package/dist/hooks.js +7 -6
  38. package/dist/hooks.js.map +1 -1
  39. package/dist/index.d.ts +7 -7
  40. package/dist/index.js +21 -16
  41. package/dist/index.js.map +1 -1
  42. package/dist/providers.d.ts +3 -3
  43. package/dist/providers.js +4 -3
  44. package/dist/rbac/index.d.ts +67 -27
  45. package/dist/rbac/index.js +15 -8
  46. package/dist/styles/index.js +1 -1
  47. package/dist/theming/runtime.js +1 -1
  48. package/dist/types.js +1 -1
  49. package/dist/{usePublicRouteParams-1oMokgLF.d.ts → usePublicRouteParams-i3qtoBgg.d.ts} +7 -16
  50. package/dist/utils.js +5 -7
  51. package/dist/utils.js.map +1 -1
  52. package/docs/api/README.md +14 -16
  53. package/docs/api/modules.md +3796 -2513
  54. package/docs/components/context-selector.md +126 -0
  55. package/docs/migration/RBAC_SCOPE_MIGRATION.md +385 -0
  56. package/docs/pace-mint-fix-auto-selection.md +218 -0
  57. package/docs/pace-mint-rbac-setup.md +391 -0
  58. package/docs/rbac/secure-client-protection.md +330 -0
  59. package/package.json +10 -5
  60. package/scripts/audit/core/checks/compliance.cjs +72 -0
  61. package/scripts/audit/core/checks/dependencies.cjs +568 -28
  62. package/scripts/audit/core/checks/documentation.cjs +68 -3
  63. package/scripts/audit/core/checks/environment.cjs +2 -14
  64. package/scripts/audit/core/checks/error-handling.cjs +47 -6
  65. package/src/components/ContextSelector/ContextSelector.tsx +384 -0
  66. package/src/components/ContextSelector/index.ts +3 -0
  67. package/src/components/DataTable/components/RowComponent.tsx +19 -19
  68. package/src/components/DataTable/components/UnifiedTableBody.tsx +2 -2
  69. package/src/components/DataTable/hooks/useDataTablePermissions.ts +8 -6
  70. package/src/components/Dialog/Dialog.tsx +29 -1
  71. package/src/components/FileDisplay/FileDisplay.tsx +42 -10
  72. package/src/components/Header/Header.test.tsx +43 -73
  73. package/src/components/Header/Header.tsx +44 -45
  74. package/src/components/PaceAppLayout/PaceAppLayout.integration.test.tsx +10 -19
  75. package/src/components/PaceAppLayout/PaceAppLayout.performance.test.tsx +2 -2
  76. package/src/components/PaceAppLayout/PaceAppLayout.security.test.tsx +5 -5
  77. package/src/components/PaceAppLayout/PaceAppLayout.test.tsx +9 -9
  78. package/src/components/PaceAppLayout/PaceAppLayout.tsx +157 -36
  79. package/src/components/PaceAppLayout/README.md +14 -17
  80. package/src/components/PaceAppLayout/test-setup.tsx +2 -2
  81. package/src/components/index.ts +5 -5
  82. package/src/eslint-rules/pace-core-compliance.cjs +106 -0
  83. package/src/hooks/__tests__/useAppConfig.unit.test.ts +4 -98
  84. package/src/hooks/useAppConfig.ts +15 -30
  85. package/src/hooks/useFileDisplay.ts +77 -50
  86. package/src/index.ts +4 -5
  87. package/src/providers/services/AuthServiceProvider.tsx +17 -7
  88. package/src/providers/services/EventServiceProvider.tsx +33 -5
  89. package/src/providers/services/UnifiedAuthProvider.tsx +90 -134
  90. package/src/rbac/__tests__/adapters.comprehensive.test.tsx +1 -1
  91. package/src/rbac/adapters.tsx +2 -2
  92. package/src/rbac/api.test.ts +59 -51
  93. package/src/rbac/api.ts +178 -132
  94. package/src/rbac/components/PagePermissionGuard.tsx +38 -10
  95. package/src/rbac/hooks/__tests__/useSecureSupabase.test.ts +32 -21
  96. package/src/rbac/hooks/permissions/useAccessLevel.ts +1 -1
  97. package/src/rbac/hooks/permissions/useCan.ts +41 -11
  98. package/src/rbac/hooks/permissions/useHasAllPermissions.ts +1 -1
  99. package/src/rbac/hooks/permissions/useHasAnyPermission.ts +1 -1
  100. package/src/rbac/hooks/permissions/useMultiplePermissions.ts +1 -1
  101. package/src/rbac/hooks/useCan.test.ts +0 -9
  102. package/src/rbac/hooks/useRBAC.test.ts +1 -5
  103. package/src/rbac/hooks/useRBAC.ts +36 -37
  104. package/src/rbac/hooks/useResolvedScope.test.ts +120 -35
  105. package/src/rbac/hooks/useResolvedScope.ts +35 -40
  106. package/src/rbac/hooks/useSecureSupabase.ts +7 -7
  107. package/src/rbac/index.ts +7 -0
  108. package/src/rbac/secureClient.test.ts +22 -18
  109. package/src/rbac/secureClient.ts +103 -16
  110. package/src/rbac/security.ts +0 -17
  111. package/src/rbac/types.ts +1 -0
  112. package/src/rbac/utils/__tests__/contextValidator.test.ts +64 -86
  113. package/src/rbac/utils/clientSecurity.ts +93 -0
  114. package/src/rbac/utils/contextValidator.ts +77 -168
  115. package/src/services/AuthService.ts +39 -7
  116. package/src/services/EventService.ts +285 -56
  117. package/src/services/OrganisationService.ts +81 -14
  118. package/src/services/__tests__/EventService.test.ts +1 -2
  119. package/src/services/base/BaseService.ts +3 -0
  120. package/src/utils/dynamic/dynamicUtils.ts +7 -4
  121. package/dist/chunk-24UVZUZG.js.map +0 -1
  122. package/dist/chunk-3XC4CPTD.js.map +0 -1
  123. package/dist/chunk-6J4GEEJR.js.map +0 -1
  124. package/dist/chunk-7D4SUZUM.js +0 -38
  125. package/dist/chunk-EHMR7VYL.js.map +0 -1
  126. package/dist/chunk-NECFR5MM.js.map +0 -1
  127. package/dist/chunk-SFZUDBL5.js.map +0 -1
  128. package/dist/chunk-XWQCNGTQ.js.map +0 -1
  129. package/docs/api/classes/ColumnFactory.md +0 -243
  130. package/docs/api/classes/InvalidScopeError.md +0 -73
  131. package/docs/api/classes/Logger.md +0 -178
  132. package/docs/api/classes/MissingUserContextError.md +0 -66
  133. package/docs/api/classes/OrganisationContextRequiredError.md +0 -66
  134. package/docs/api/classes/PermissionDeniedError.md +0 -73
  135. package/docs/api/classes/RBACAuditManager.md +0 -297
  136. package/docs/api/classes/RBACCache.md +0 -322
  137. package/docs/api/classes/RBACEngine.md +0 -171
  138. package/docs/api/classes/RBACError.md +0 -76
  139. package/docs/api/classes/RBACNotInitializedError.md +0 -66
  140. package/docs/api/classes/SecureSupabaseClient.md +0 -163
  141. package/docs/api/classes/StorageUtils.md +0 -328
  142. package/docs/api/enums/FileCategory.md +0 -184
  143. package/docs/api/enums/LogLevel.md +0 -54
  144. package/docs/api/enums/RBACErrorCode.md +0 -228
  145. package/docs/api/enums/RPCFunction.md +0 -118
  146. package/docs/api/interfaces/AddressFieldProps.md +0 -241
  147. package/docs/api/interfaces/AddressFieldRef.md +0 -94
  148. package/docs/api/interfaces/AggregateConfig.md +0 -43
  149. package/docs/api/interfaces/AutocompleteOptions.md +0 -75
  150. package/docs/api/interfaces/AvatarProps.md +0 -128
  151. package/docs/api/interfaces/BadgeProps.md +0 -34
  152. package/docs/api/interfaces/ButtonProps.md +0 -56
  153. package/docs/api/interfaces/CalendarProps.md +0 -73
  154. package/docs/api/interfaces/CardProps.md +0 -69
  155. package/docs/api/interfaces/ColorPalette.md +0 -7
  156. package/docs/api/interfaces/ColorShade.md +0 -66
  157. package/docs/api/interfaces/ComplianceResult.md +0 -30
  158. package/docs/api/interfaces/DataAccessRecord.md +0 -96
  159. package/docs/api/interfaces/DataRecord.md +0 -11
  160. package/docs/api/interfaces/DataTableAction.md +0 -252
  161. package/docs/api/interfaces/DataTableColumn.md +0 -504
  162. package/docs/api/interfaces/DataTableProps.md +0 -625
  163. package/docs/api/interfaces/DataTableToolbarButton.md +0 -96
  164. package/docs/api/interfaces/DatabaseComplianceResult.md +0 -85
  165. package/docs/api/interfaces/DatabaseIssue.md +0 -41
  166. package/docs/api/interfaces/EmptyStateConfig.md +0 -61
  167. package/docs/api/interfaces/EnhancedNavigationMenuProps.md +0 -235
  168. package/docs/api/interfaces/ErrorBoundaryProps.md +0 -147
  169. package/docs/api/interfaces/ErrorBoundaryProviderProps.md +0 -36
  170. package/docs/api/interfaces/ErrorBoundaryState.md +0 -75
  171. package/docs/api/interfaces/EventAppRoleData.md +0 -71
  172. package/docs/api/interfaces/ExportColumn.md +0 -90
  173. package/docs/api/interfaces/ExportOptions.md +0 -126
  174. package/docs/api/interfaces/FileDisplayProps.md +0 -249
  175. package/docs/api/interfaces/FileMetadata.md +0 -129
  176. package/docs/api/interfaces/FileReference.md +0 -118
  177. package/docs/api/interfaces/FileSizeLimits.md +0 -7
  178. package/docs/api/interfaces/FileUploadOptions.md +0 -139
  179. package/docs/api/interfaces/FileUploadProps.md +0 -296
  180. package/docs/api/interfaces/FooterProps.md +0 -107
  181. package/docs/api/interfaces/FormFieldProps.md +0 -166
  182. package/docs/api/interfaces/FormProps.md +0 -113
  183. package/docs/api/interfaces/GrantEventAppRoleParams.md +0 -122
  184. package/docs/api/interfaces/InactivityWarningModalProps.md +0 -115
  185. package/docs/api/interfaces/InputProps.md +0 -56
  186. package/docs/api/interfaces/LabelProps.md +0 -107
  187. package/docs/api/interfaces/LoggerConfig.md +0 -62
  188. package/docs/api/interfaces/LoginFormProps.md +0 -187
  189. package/docs/api/interfaces/NavigationAccessRecord.md +0 -107
  190. package/docs/api/interfaces/NavigationContextType.md +0 -164
  191. package/docs/api/interfaces/NavigationGuardProps.md +0 -139
  192. package/docs/api/interfaces/NavigationItem.md +0 -120
  193. package/docs/api/interfaces/NavigationMenuProps.md +0 -221
  194. package/docs/api/interfaces/NavigationProviderProps.md +0 -117
  195. package/docs/api/interfaces/Organisation.md +0 -140
  196. package/docs/api/interfaces/OrganisationContextType.md +0 -388
  197. package/docs/api/interfaces/OrganisationMembership.md +0 -140
  198. package/docs/api/interfaces/OrganisationProviderProps.md +0 -76
  199. package/docs/api/interfaces/OrganisationSecurityError.md +0 -62
  200. package/docs/api/interfaces/PaceAppLayoutProps.md +0 -409
  201. package/docs/api/interfaces/PaceLoginPageProps.md +0 -49
  202. package/docs/api/interfaces/PageAccessRecord.md +0 -85
  203. package/docs/api/interfaces/PagePermissionContextType.md +0 -140
  204. package/docs/api/interfaces/PagePermissionGuardProps.md +0 -153
  205. package/docs/api/interfaces/PagePermissionProviderProps.md +0 -119
  206. package/docs/api/interfaces/PaletteData.md +0 -41
  207. package/docs/api/interfaces/ParsedAddress.md +0 -120
  208. package/docs/api/interfaces/PermissionEnforcerProps.md +0 -153
  209. package/docs/api/interfaces/ProgressProps.md +0 -42
  210. package/docs/api/interfaces/ProtectedRouteProps.md +0 -78
  211. package/docs/api/interfaces/PublicPageFooterProps.md +0 -112
  212. package/docs/api/interfaces/PublicPageHeaderProps.md +0 -125
  213. package/docs/api/interfaces/PublicPageLayoutProps.md +0 -185
  214. package/docs/api/interfaces/QuickFix.md +0 -52
  215. package/docs/api/interfaces/RBACAccessValidateParams.md +0 -52
  216. package/docs/api/interfaces/RBACAccessValidateResult.md +0 -41
  217. package/docs/api/interfaces/RBACAuditLogParams.md +0 -85
  218. package/docs/api/interfaces/RBACAuditLogResult.md +0 -52
  219. package/docs/api/interfaces/RBACConfig.md +0 -133
  220. package/docs/api/interfaces/RBACContext.md +0 -52
  221. package/docs/api/interfaces/RBACLogger.md +0 -112
  222. package/docs/api/interfaces/RBACPageAccessCheckParams.md +0 -74
  223. package/docs/api/interfaces/RBACPerformanceMetrics.md +0 -138
  224. package/docs/api/interfaces/RBACPermissionCheckParams.md +0 -74
  225. package/docs/api/interfaces/RBACPermissionCheckResult.md +0 -52
  226. package/docs/api/interfaces/RBACPermissionsGetParams.md +0 -63
  227. package/docs/api/interfaces/RBACPermissionsGetResult.md +0 -63
  228. package/docs/api/interfaces/RBACResult.md +0 -58
  229. package/docs/api/interfaces/RBACRoleGrantParams.md +0 -63
  230. package/docs/api/interfaces/RBACRoleGrantResult.md +0 -52
  231. package/docs/api/interfaces/RBACRoleRevokeParams.md +0 -63
  232. package/docs/api/interfaces/RBACRoleRevokeResult.md +0 -52
  233. package/docs/api/interfaces/RBACRoleValidateParams.md +0 -52
  234. package/docs/api/interfaces/RBACRoleValidateResult.md +0 -63
  235. package/docs/api/interfaces/RBACRolesListParams.md +0 -52
  236. package/docs/api/interfaces/RBACRolesListResult.md +0 -74
  237. package/docs/api/interfaces/RBACSessionTrackParams.md +0 -74
  238. package/docs/api/interfaces/RBACSessionTrackResult.md +0 -52
  239. package/docs/api/interfaces/ResourcePermissions.md +0 -155
  240. package/docs/api/interfaces/RevokeEventAppRoleParams.md +0 -100
  241. package/docs/api/interfaces/RoleBasedRouterContextType.md +0 -151
  242. package/docs/api/interfaces/RoleBasedRouterProps.md +0 -156
  243. package/docs/api/interfaces/RoleManagementResult.md +0 -52
  244. package/docs/api/interfaces/RouteAccessRecord.md +0 -107
  245. package/docs/api/interfaces/RouteConfig.md +0 -134
  246. package/docs/api/interfaces/RuntimeComplianceResult.md +0 -55
  247. package/docs/api/interfaces/SecureDataContextType.md +0 -168
  248. package/docs/api/interfaces/SecureDataProviderProps.md +0 -132
  249. package/docs/api/interfaces/SessionRestorationLoaderProps.md +0 -34
  250. package/docs/api/interfaces/SetupIssue.md +0 -41
  251. package/docs/api/interfaces/StorageConfig.md +0 -41
  252. package/docs/api/interfaces/StorageFileInfo.md +0 -74
  253. package/docs/api/interfaces/StorageFileMetadata.md +0 -151
  254. package/docs/api/interfaces/StorageListOptions.md +0 -99
  255. package/docs/api/interfaces/StorageListResult.md +0 -41
  256. package/docs/api/interfaces/StorageUploadOptions.md +0 -101
  257. package/docs/api/interfaces/StorageUploadResult.md +0 -63
  258. package/docs/api/interfaces/StorageUrlOptions.md +0 -60
  259. package/docs/api/interfaces/StyleImport.md +0 -19
  260. package/docs/api/interfaces/SwitchProps.md +0 -34
  261. package/docs/api/interfaces/TabsContentProps.md +0 -9
  262. package/docs/api/interfaces/TabsListProps.md +0 -9
  263. package/docs/api/interfaces/TabsProps.md +0 -9
  264. package/docs/api/interfaces/TabsTriggerProps.md +0 -50
  265. package/docs/api/interfaces/TextareaProps.md +0 -53
  266. package/docs/api/interfaces/ToastActionElement.md +0 -12
  267. package/docs/api/interfaces/ToastProps.md +0 -9
  268. package/docs/api/interfaces/UnifiedAuthContextType.md +0 -823
  269. package/docs/api/interfaces/UnifiedAuthProviderProps.md +0 -173
  270. package/docs/api/interfaces/UseFormDialogOptions.md +0 -62
  271. package/docs/api/interfaces/UseFormDialogReturn.md +0 -117
  272. package/docs/api/interfaces/UseInactivityTrackerOptions.md +0 -138
  273. package/docs/api/interfaces/UseInactivityTrackerReturn.md +0 -123
  274. package/docs/api/interfaces/UsePublicEventLogoOptions.md +0 -87
  275. package/docs/api/interfaces/UsePublicEventLogoReturn.md +0 -84
  276. package/docs/api/interfaces/UsePublicEventOptions.md +0 -34
  277. package/docs/api/interfaces/UsePublicEventReturn.md +0 -71
  278. package/docs/api/interfaces/UsePublicFileDisplayOptions.md +0 -47
  279. package/docs/api/interfaces/UsePublicFileDisplayReturn.md +0 -123
  280. package/docs/api/interfaces/UsePublicRouteParamsReturn.md +0 -97
  281. package/docs/api/interfaces/UseResolvedScopeOptions.md +0 -47
  282. package/docs/api/interfaces/UseResolvedScopeReturn.md +0 -47
  283. package/docs/api/interfaces/UseResourcePermissionsOptions.md +0 -34
  284. package/docs/api/interfaces/UserEventAccess.md +0 -121
  285. package/docs/api/interfaces/UserMenuProps.md +0 -88
  286. package/docs/api/interfaces/UserProfile.md +0 -63
  287. package/src/components/EventSelector/EventSelector.test.tsx +0 -720
  288. package/src/components/EventSelector/EventSelector.tsx +0 -423
  289. package/src/components/EventSelector/index.ts +0 -3
  290. package/src/components/OrganisationSelector/OrganisationSelector.test.tsx +0 -784
  291. package/src/components/OrganisationSelector/OrganisationSelector.tsx +0 -327
  292. package/src/components/OrganisationSelector/index.ts +0 -9
  293. /package/dist/{DataTable-TPTKCX4D.js.map → DataTable-E7YQZD7D.js.map} +0 -0
  294. /package/dist/{UnifiedAuthProvider-CH6Z342H.js.map → UnifiedAuthProvider-QPXO24B4.js.map} +0 -0
  295. /package/dist/{api-MVVQZLJI.js.map → api-6LVZTHDS.js.map} +0 -0
  296. /package/dist/{audit-B5P6FFIR.js.map → audit-V53FV5AG.js.map} +0 -0
  297. /package/dist/{chunk-2UOI2FG5.js.map → chunk-5EC5MEWX.js.map} +0 -0
  298. /package/dist/{chunk-7D4SUZUM.js.map → chunk-DGUM43GV.js.map} +0 -0
  299. /package/dist/{chunk-F2IMUDXZ.js.map → chunk-M7MPQISP.js.map} +0 -0
@@ -1,328 +0,0 @@
1
- [@jmruthers/pace-core - v0.6.2](../README.md) / [Exports](../modules.md) / StorageUtils
2
-
3
- # Class: StorageUtils
4
-
5
- StorageUtils class for convenient access to storage functions
6
-
7
- ## Table of contents
8
-
9
- ### Constructors
10
-
11
- - [constructor](StorageUtils.md#constructor)
12
-
13
- ### Properties
14
-
15
- - [generateFilePath](StorageUtils.md#generatefilepath)
16
- - [generateUniqueFileName](StorageUtils.md#generateuniquefilename)
17
- - [extractFileMetadata](StorageUtils.md#extractfilemetadata)
18
- - [uploadFile](StorageUtils.md#uploadfile)
19
- - [getPublicUrl](StorageUtils.md#getpublicurl)
20
- - [getSignedUrl](StorageUtils.md#getsignedurl)
21
- - [deleteFile](StorageUtils.md#deletefile)
22
- - [downloadFile](StorageUtils.md#downloadfile)
23
- - [listFiles](StorageUtils.md#listfiles)
24
- - [archiveFile](StorageUtils.md#archivefile)
25
-
26
- ## Constructors
27
-
28
- ### constructor
29
-
30
- • **new StorageUtils**(): [`StorageUtils`](StorageUtils.md)
31
-
32
- #### Returns
33
-
34
- [`StorageUtils`](StorageUtils.md)
35
-
36
- ## Properties
37
-
38
- ### generateFilePath
39
-
40
- ▪ `Static` **generateFilePath**: (`options`: [`StorageUploadOptions`](../interfaces/StorageUploadOptions.md), `fileName`: `string`) => `string` = `generateFilePath`
41
-
42
- #### Type declaration
43
-
44
- ▸ (`options`, `fileName`): `string`
45
-
46
- Generate a file path based on organization-first or user-first structure
47
- - If orgId is provided: {orgId}/{folder}/filename
48
- - If userId is provided (and orgId is not): users/{userId}/{folder}/filename
49
-
50
- ##### Parameters
51
-
52
- | Name | Type |
53
- | :------ | :------ |
54
- | `options` | [`StorageUploadOptions`](../interfaces/StorageUploadOptions.md) |
55
- | `fileName` | `string` |
56
-
57
- ##### Returns
58
-
59
- `string`
60
-
61
- #### Defined in
62
-
63
- [packages/core/src/utils/storage/index.ts:57](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L57)
64
-
65
- ___
66
-
67
- ### generateUniqueFileName
68
-
69
- ▪ `Static` **generateUniqueFileName**: (`originalName`: `string`) => `string` = `generateUniqueFileName`
70
-
71
- #### Type declaration
72
-
73
- ▸ (`originalName`): `string`
74
-
75
- Generate a unique filename with timestamp and UUID
76
- Sanitizes the original filename to remove spaces and invalid characters for storage compatibility
77
-
78
- ##### Parameters
79
-
80
- | Name | Type |
81
- | :------ | :------ |
82
- | `originalName` | `string` |
83
-
84
- ##### Returns
85
-
86
- `string`
87
-
88
- #### Defined in
89
-
90
- [packages/core/src/utils/storage/index.ts:58](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L58)
91
-
92
- ___
93
-
94
- ### extractFileMetadata
95
-
96
- ▪ `Static` **extractFileMetadata**: (`file`: `File`, `options`: [`StorageUploadOptions`](../interfaces/StorageUploadOptions.md), `uploadedBy`: `string`) => `Promise`\<[`StorageFileMetadata`](../interfaces/StorageFileMetadata.md)\> = `extractFileMetadata`
97
-
98
- #### Type declaration
99
-
100
- ▸ (`file`, `options`, `uploadedBy`): `Promise`\<[`StorageFileMetadata`](../interfaces/StorageFileMetadata.md)\>
101
-
102
- Extract file metadata from a File object
103
-
104
- ##### Parameters
105
-
106
- | Name | Type |
107
- | :------ | :------ |
108
- | `file` | `File` |
109
- | `options` | [`StorageUploadOptions`](../interfaces/StorageUploadOptions.md) |
110
- | `uploadedBy` | `string` |
111
-
112
- ##### Returns
113
-
114
- `Promise`\<[`StorageFileMetadata`](../interfaces/StorageFileMetadata.md)\>
115
-
116
- #### Defined in
117
-
118
- [packages/core/src/utils/storage/index.ts:59](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L59)
119
-
120
- ___
121
-
122
- ### uploadFile
123
-
124
- ▪ `Static` **uploadFile**: (`supabase`: `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\>, `file`: `File`, `options`: [`StorageUploadOptions`](../interfaces/StorageUploadOptions.md)) => `Promise`\<[`StorageUploadResult`](../interfaces/StorageUploadResult.md)\> = `uploadFile`
125
-
126
- #### Type declaration
127
-
128
- ▸ (`supabase`, `file`, `options`): `Promise`\<[`StorageUploadResult`](../interfaces/StorageUploadResult.md)\>
129
-
130
- Upload a file to Supabase storage with app segregation
131
-
132
- ##### Parameters
133
-
134
- | Name | Type |
135
- | :------ | :------ |
136
- | `supabase` | `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\> |
137
- | `file` | `File` |
138
- | `options` | [`StorageUploadOptions`](../interfaces/StorageUploadOptions.md) |
139
-
140
- ##### Returns
141
-
142
- `Promise`\<[`StorageUploadResult`](../interfaces/StorageUploadResult.md)\>
143
-
144
- #### Defined in
145
-
146
- [packages/core/src/utils/storage/index.ts:60](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L60)
147
-
148
- ___
149
-
150
- ### getPublicUrl
151
-
152
- ▪ `Static` **getPublicUrl**: (`supabase`: `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\>, `path`: `string`, `isPublic`: `boolean`) => `string` = `getPublicUrl`
153
-
154
- #### Type declaration
155
-
156
- ▸ (`supabase`, `path`, `isPublic?`): `string`
157
-
158
- Get a public URL for a file
159
-
160
- ##### Parameters
161
-
162
- | Name | Type | Default value | Description |
163
- | :------ | :------ | :------ | :------ |
164
- | `supabase` | `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\> | `undefined` | Supabase client instance |
165
- | `path` | `string` | `undefined` | File path within the bucket |
166
- | `isPublic` | `boolean` | `true` | Whether the file is in the public-files bucket (default: true) |
167
-
168
- ##### Returns
169
-
170
- `string`
171
-
172
- Public URL for the file
173
-
174
- #### Defined in
175
-
176
- [packages/core/src/utils/storage/index.ts:61](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L61)
177
-
178
- ___
179
-
180
- ### getSignedUrl
181
-
182
- ▪ `Static` **getSignedUrl**: (`supabase`: `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\>, `path`: `string`, `options`: [`StorageUrlOptions`](../interfaces/StorageUrlOptions.md)) => `Promise`\<\{ `url`: `string` ; `expiresAt`: `string` } \| ``null``\> = `getSignedUrl`
183
-
184
- #### Type declaration
185
-
186
- ▸ (`supabase`, `path`, `options`): `Promise`\<\{ `url`: `string` ; `expiresAt`: `string` } \| ``null``\>
187
-
188
- Get a signed URL for a protected file
189
- Private files are always in the 'files' bucket, so this always uses 'files' bucket
190
-
191
- ##### Parameters
192
-
193
- | Name | Type | Description |
194
- | :------ | :------ | :------ |
195
- | `supabase` | `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\> | Supabase client instance |
196
- | `path` | `string` | File path within the bucket |
197
- | `options` | [`StorageUrlOptions`](../interfaces/StorageUrlOptions.md) | URL options including expiry time |
198
-
199
- ##### Returns
200
-
201
- `Promise`\<\{ `url`: `string` ; `expiresAt`: `string` } \| ``null``\>
202
-
203
- Signed URL with expiration timestamp, or null if failed
204
-
205
- #### Defined in
206
-
207
- [packages/core/src/utils/storage/index.ts:62](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L62)
208
-
209
- ___
210
-
211
- ### deleteFile
212
-
213
- ▪ `Static` **deleteFile**: (`supabase`: `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\>, `path`: `string`, `isPublic`: `boolean`) => `Promise`\<\{ `success`: `boolean` ; `error?`: `string` }\> = `deleteFile`
214
-
215
- #### Type declaration
216
-
217
- ▸ (`supabase`, `path`, `isPublic?`): `Promise`\<\{ `success`: `boolean` ; `error?`: `string` }\>
218
-
219
- Delete a file from storage
220
-
221
- ##### Parameters
222
-
223
- | Name | Type | Default value | Description |
224
- | :------ | :------ | :------ | :------ |
225
- | `supabase` | `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\> | `undefined` | Supabase client instance |
226
- | `path` | `string` | `undefined` | File path within the bucket |
227
- | `isPublic` | `boolean` | `false` | Whether the file is in the public-files bucket (default: false) |
228
-
229
- ##### Returns
230
-
231
- `Promise`\<\{ `success`: `boolean` ; `error?`: `string` }\>
232
-
233
- Success status and optional error message
234
-
235
- #### Defined in
236
-
237
- [packages/core/src/utils/storage/index.ts:63](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L63)
238
-
239
- ___
240
-
241
- ### downloadFile
242
-
243
- ▪ `Static` **downloadFile**: (`supabase`: `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\>, `path`: `string`, `isPublic`: `boolean`) => `Promise`\<\{ `blob`: `Blob` ; `metadata`: \{ `name`: `string` ; `size`: `number` ; `type`: `string` } } \| ``null``\> = `downloadFile`
244
-
245
- #### Type declaration
246
-
247
- ▸ (`supabase`, `path`, `isPublic?`): `Promise`\<\{ `blob`: `Blob` ; `metadata`: \{ `name`: `string` ; `size`: `number` ; `type`: `string` } } \| ``null``\>
248
-
249
- Download a file from storage
250
-
251
- ##### Parameters
252
-
253
- | Name | Type | Default value | Description |
254
- | :------ | :------ | :------ | :------ |
255
- | `supabase` | `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\> | `undefined` | Supabase client instance |
256
- | `path` | `string` | `undefined` | File path within the bucket |
257
- | `isPublic` | `boolean` | `false` | Whether the file is in the public-files bucket (default: false) |
258
-
259
- ##### Returns
260
-
261
- `Promise`\<\{ `blob`: `Blob` ; `metadata`: \{ `name`: `string` ; `size`: `number` ; `type`: `string` } } \| ``null``\>
262
-
263
- File blob with metadata, or null if failed
264
-
265
- #### Defined in
266
-
267
- [packages/core/src/utils/storage/index.ts:64](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L64)
268
-
269
- ___
270
-
271
- ### listFiles
272
-
273
- ▪ `Static` **listFiles**: (`supabase`: `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\>, `options`: [`StorageListOptions`](../interfaces/StorageListOptions.md) & \{ `isPublic?`: `boolean` }) => `Promise`\<[`StorageListResult`](../interfaces/StorageListResult.md)\> = `listFiles`
274
-
275
- #### Type declaration
276
-
277
- ▸ (`supabase`, `options`): `Promise`\<[`StorageListResult`](../interfaces/StorageListResult.md)\>
278
-
279
- List files in an organization scope
280
-
281
- ##### Parameters
282
-
283
- | Name | Type | Description |
284
- | :------ | :------ | :------ |
285
- | `supabase` | `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\> | Supabase client instance |
286
- | `options` | [`StorageListOptions`](../interfaces/StorageListOptions.md) & \{ `isPublic?`: `boolean` } | List options including bucket selection via isPublic |
287
-
288
- ##### Returns
289
-
290
- `Promise`\<[`StorageListResult`](../interfaces/StorageListResult.md)\>
291
-
292
- List of files with metadata
293
-
294
- #### Defined in
295
-
296
- [packages/core/src/utils/storage/index.ts:65](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L65)
297
-
298
- ___
299
-
300
- ### archiveFile
301
-
302
- ▪ `Static` **archiveFile**: (`supabase`: `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\>, `path`: `string`, `options`: \{ `appName`: `string` ; `orgId?`: `string` ; `userId?`: `string` ; `isPublic?`: `boolean` }) => `Promise`\<\{ `success`: `boolean` ; `error?`: `string` }\> = `archiveFile`
303
-
304
- #### Type declaration
305
-
306
- ▸ (`supabase`, `path`, `options`): `Promise`\<\{ `success`: `boolean` ; `error?`: `string` }\>
307
-
308
- Move a file to archived location (soft delete)
309
-
310
- ##### Parameters
311
-
312
- | Name | Type | Description |
313
- | :------ | :------ | :------ |
314
- | `supabase` | `default`\<`any`, ``"public"``, ``"public"``, `any`, `any`\> | Supabase client instance |
315
- | `path` | `string` | File path within the bucket |
316
- | `options` | `Object` | Archive options including bucket selection via isPublic |
317
- | `options.appName` | `string` | - |
318
- | `options.orgId?` | `string` | - |
319
- | `options.userId?` | `string` | - |
320
- | `options.isPublic?` | `boolean` | - |
321
-
322
- ##### Returns
323
-
324
- `Promise`\<\{ `success`: `boolean` ; `error?`: `string` }\>
325
-
326
- #### Defined in
327
-
328
- [packages/core/src/utils/storage/index.ts:66](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/storage/index.ts#L66)
@@ -1,184 +0,0 @@
1
- [@jmruthers/pace-core - v0.6.2](../README.md) / [Exports](../modules.md) / FileCategory
2
-
3
- # Enumeration: FileCategory
4
-
5
- ## Table of contents
6
-
7
- ### Enumeration Members
8
-
9
- - [PROFILE\_PHOTOS](FileCategory.md#profile_photos)
10
- - [ID\_DOCUMENTS](FileCategory.md#id_documents)
11
- - [QUALIFICATIONS](FileCategory.md#qualifications)
12
- - [MEDICAL\_DOCUMENTS](FileCategory.md#medical_documents)
13
- - [DISH\_IMAGES](FileCategory.md#dish_images)
14
- - [EVENT\_LOGOS](FileCategory.md#event_logos)
15
- - [GENERAL\_DOCUMENTS](FileCategory.md#general_documents)
16
- - [IMAGES](FileCategory.md#images)
17
- - [AUDIO](FileCategory.md#audio)
18
- - [VIDEO](FileCategory.md#video)
19
- - [ARCHIVES](FileCategory.md#archives)
20
- - [CAKE\_DISH](FileCategory.md#cake_dish)
21
- - [TRAC\_ACCOMMODATION](FileCategory.md#trac_accommodation)
22
- - [TRAC\_ACTIVITY](FileCategory.md#trac_activity)
23
- - [TRAC\_JOURNAL](FileCategory.md#trac_journal)
24
- - [TRAC\_TRANSPORT](FileCategory.md#trac_transport)
25
-
26
- ## Enumeration Members
27
-
28
- ### PROFILE\_PHOTOS
29
-
30
- • **PROFILE\_PHOTOS** = ``"profile_photos"``
31
-
32
- #### Defined in
33
-
34
- [packages/core/src/types/file-reference.ts:34](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L34)
35
-
36
- ___
37
-
38
- ### ID\_DOCUMENTS
39
-
40
- • **ID\_DOCUMENTS** = ``"id_documents"``
41
-
42
- #### Defined in
43
-
44
- [packages/core/src/types/file-reference.ts:35](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L35)
45
-
46
- ___
47
-
48
- ### QUALIFICATIONS
49
-
50
- • **QUALIFICATIONS** = ``"qualifications"``
51
-
52
- #### Defined in
53
-
54
- [packages/core/src/types/file-reference.ts:36](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L36)
55
-
56
- ___
57
-
58
- ### MEDICAL\_DOCUMENTS
59
-
60
- • **MEDICAL\_DOCUMENTS** = ``"medical_documents"``
61
-
62
- #### Defined in
63
-
64
- [packages/core/src/types/file-reference.ts:37](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L37)
65
-
66
- ___
67
-
68
- ### DISH\_IMAGES
69
-
70
- • **DISH\_IMAGES** = ``"dish_images"``
71
-
72
- #### Defined in
73
-
74
- [packages/core/src/types/file-reference.ts:38](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L38)
75
-
76
- ___
77
-
78
- ### EVENT\_LOGOS
79
-
80
- • **EVENT\_LOGOS** = ``"event_logos"``
81
-
82
- #### Defined in
83
-
84
- [packages/core/src/types/file-reference.ts:39](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L39)
85
-
86
- ___
87
-
88
- ### GENERAL\_DOCUMENTS
89
-
90
- • **GENERAL\_DOCUMENTS** = ``"general_documents"``
91
-
92
- #### Defined in
93
-
94
- [packages/core/src/types/file-reference.ts:40](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L40)
95
-
96
- ___
97
-
98
- ### IMAGES
99
-
100
- • **IMAGES** = ``"images"``
101
-
102
- #### Defined in
103
-
104
- [packages/core/src/types/file-reference.ts:41](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L41)
105
-
106
- ___
107
-
108
- ### AUDIO
109
-
110
- • **AUDIO** = ``"audio"``
111
-
112
- #### Defined in
113
-
114
- [packages/core/src/types/file-reference.ts:42](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L42)
115
-
116
- ___
117
-
118
- ### VIDEO
119
-
120
- • **VIDEO** = ``"video"``
121
-
122
- #### Defined in
123
-
124
- [packages/core/src/types/file-reference.ts:43](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L43)
125
-
126
- ___
127
-
128
- ### ARCHIVES
129
-
130
- • **ARCHIVES** = ``"archives"``
131
-
132
- #### Defined in
133
-
134
- [packages/core/src/types/file-reference.ts:44](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L44)
135
-
136
- ___
137
-
138
- ### CAKE\_DISH
139
-
140
- • **CAKE\_DISH** = ``"cake_dish"``
141
-
142
- #### Defined in
143
-
144
- [packages/core/src/types/file-reference.ts:46](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L46)
145
-
146
- ___
147
-
148
- ### TRAC\_ACCOMMODATION
149
-
150
- • **TRAC\_ACCOMMODATION** = ``"trac_accommodation"``
151
-
152
- #### Defined in
153
-
154
- [packages/core/src/types/file-reference.ts:48](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L48)
155
-
156
- ___
157
-
158
- ### TRAC\_ACTIVITY
159
-
160
- • **TRAC\_ACTIVITY** = ``"trac_activity"``
161
-
162
- #### Defined in
163
-
164
- [packages/core/src/types/file-reference.ts:49](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L49)
165
-
166
- ___
167
-
168
- ### TRAC\_JOURNAL
169
-
170
- • **TRAC\_JOURNAL** = ``"trac_journal"``
171
-
172
- #### Defined in
173
-
174
- [packages/core/src/types/file-reference.ts:50](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L50)
175
-
176
- ___
177
-
178
- ### TRAC\_TRANSPORT
179
-
180
- • **TRAC\_TRANSPORT** = ``"trac_transport"``
181
-
182
- #### Defined in
183
-
184
- [packages/core/src/types/file-reference.ts:51](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/types/file-reference.ts#L51)
@@ -1,54 +0,0 @@
1
- [@jmruthers/pace-core - v0.6.2](../README.md) / [Exports](../modules.md) / LogLevel
2
-
3
- # Enumeration: LogLevel
4
-
5
- Logger levels for different types of messages
6
-
7
- ## Table of contents
8
-
9
- ### Enumeration Members
10
-
11
- - [DEBUG](LogLevel.md#debug)
12
- - [INFO](LogLevel.md#info)
13
- - [WARN](LogLevel.md#warn)
14
- - [ERROR](LogLevel.md#error)
15
-
16
- ## Enumeration Members
17
-
18
- ### DEBUG
19
-
20
- • **DEBUG** = ``0``
21
-
22
- #### Defined in
23
-
24
- [packages/core/src/utils/core/logger.ts:12](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/core/logger.ts#L12)
25
-
26
- ___
27
-
28
- ### INFO
29
-
30
- • **INFO** = ``1``
31
-
32
- #### Defined in
33
-
34
- [packages/core/src/utils/core/logger.ts:13](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/core/logger.ts#L13)
35
-
36
- ___
37
-
38
- ### WARN
39
-
40
- • **WARN** = ``2``
41
-
42
- #### Defined in
43
-
44
- [packages/core/src/utils/core/logger.ts:14](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/core/logger.ts#L14)
45
-
46
- ___
47
-
48
- ### ERROR
49
-
50
- • **ERROR** = ``3``
51
-
52
- #### Defined in
53
-
54
- [packages/core/src/utils/core/logger.ts:15](https://github.com/jmruthers/pace-core/blob/main/packages/core/src/utils/core/logger.ts#L15)