@jmruthers/pace-core 0.5.55 → 0.5.57

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 (124) hide show
  1. package/dist/{DataTable-4T627QFJ.js → DataTable-GABLO6H5.js} +5 -5
  2. package/dist/{chunk-TNMXZLDR.js → chunk-77TYN5B4.js} +3 -3
  3. package/dist/{chunk-AQFRLC7K.js → chunk-CACNKQ3B.js} +60 -3
  4. package/dist/{chunk-AQFRLC7K.js.map → chunk-CACNKQ3B.js.map} +1 -1
  5. package/dist/{chunk-KJDPSM64.js → chunk-D3X2CGAG.js} +2 -2
  6. package/dist/{chunk-AJ2KMES7.js → chunk-DH7VDOQQ.js} +3 -3
  7. package/dist/{chunk-PAEM3OWN.js → chunk-E3ITLZBM.js} +3 -3
  8. package/dist/{chunk-MPQDF75X.js → chunk-JO3Y2BOW.js} +5 -5
  9. package/dist/{chunk-UQE2Y64H.js → chunk-S3MPG3BA.js} +3 -3
  10. package/dist/{chunk-ZOD2ZY6X.js → chunk-TCX7STCC.js} +2 -2
  11. package/dist/{chunk-RQD3D2CO.js → chunk-VY3DOGPU.js} +4 -4
  12. package/dist/{chunk-KBRACSJI.js → chunk-YI25YXER.js} +2 -2
  13. package/dist/components.js +7 -7
  14. package/dist/hooks.js +4 -4
  15. package/dist/index.js +10 -10
  16. package/dist/providers.js +3 -3
  17. package/dist/rbac/index.js +5 -5
  18. package/dist/utils.js +1 -1
  19. package/docs/api/classes/ErrorBoundary.md +1 -1
  20. package/docs/api/classes/InvalidScopeError.md +1 -1
  21. package/docs/api/classes/MissingUserContextError.md +1 -1
  22. package/docs/api/classes/OrganisationContextRequiredError.md +1 -1
  23. package/docs/api/classes/PermissionDeniedError.md +1 -1
  24. package/docs/api/classes/PublicErrorBoundary.md +1 -1
  25. package/docs/api/classes/RBACAuditManager.md +1 -1
  26. package/docs/api/classes/RBACCache.md +1 -1
  27. package/docs/api/classes/RBACEngine.md +1 -1
  28. package/docs/api/classes/RBACError.md +1 -1
  29. package/docs/api/classes/RBACNotInitializedError.md +1 -1
  30. package/docs/api/classes/SecureSupabaseClient.md +1 -1
  31. package/docs/api/classes/StorageUtils.md +1 -1
  32. package/docs/api/interfaces/AggregateConfig.md +1 -1
  33. package/docs/api/interfaces/ButtonProps.md +1 -1
  34. package/docs/api/interfaces/CardProps.md +1 -1
  35. package/docs/api/interfaces/ColorPalette.md +1 -1
  36. package/docs/api/interfaces/ColorShade.md +1 -1
  37. package/docs/api/interfaces/DataAccessRecord.md +1 -1
  38. package/docs/api/interfaces/DataTableAction.md +1 -1
  39. package/docs/api/interfaces/DataTableColumn.md +1 -1
  40. package/docs/api/interfaces/DataTableProps.md +1 -1
  41. package/docs/api/interfaces/DataTableToolbarButton.md +1 -1
  42. package/docs/api/interfaces/EmptyStateConfig.md +1 -1
  43. package/docs/api/interfaces/EnhancedNavigationMenuProps.md +1 -1
  44. package/docs/api/interfaces/EventContextType.md +1 -1
  45. package/docs/api/interfaces/EventLogoProps.md +1 -1
  46. package/docs/api/interfaces/EventProviderProps.md +1 -1
  47. package/docs/api/interfaces/FileSizeLimits.md +1 -1
  48. package/docs/api/interfaces/FileUploadProps.md +1 -1
  49. package/docs/api/interfaces/FooterProps.md +1 -1
  50. package/docs/api/interfaces/InactivityWarningModalProps.md +1 -1
  51. package/docs/api/interfaces/InputProps.md +1 -1
  52. package/docs/api/interfaces/LabelProps.md +1 -1
  53. package/docs/api/interfaces/LoginFormProps.md +1 -1
  54. package/docs/api/interfaces/NavigationAccessRecord.md +1 -1
  55. package/docs/api/interfaces/NavigationContextType.md +1 -1
  56. package/docs/api/interfaces/NavigationGuardProps.md +1 -1
  57. package/docs/api/interfaces/NavigationItem.md +1 -1
  58. package/docs/api/interfaces/NavigationMenuProps.md +1 -1
  59. package/docs/api/interfaces/NavigationProviderProps.md +1 -1
  60. package/docs/api/interfaces/Organisation.md +1 -1
  61. package/docs/api/interfaces/OrganisationContextType.md +1 -1
  62. package/docs/api/interfaces/OrganisationMembership.md +1 -1
  63. package/docs/api/interfaces/OrganisationProviderProps.md +1 -1
  64. package/docs/api/interfaces/OrganisationSecurityError.md +1 -1
  65. package/docs/api/interfaces/PaceAppLayoutProps.md +1 -1
  66. package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
  67. package/docs/api/interfaces/PageAccessRecord.md +1 -1
  68. package/docs/api/interfaces/PagePermissionContextType.md +1 -1
  69. package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
  70. package/docs/api/interfaces/PagePermissionProviderProps.md +1 -1
  71. package/docs/api/interfaces/PaletteData.md +1 -1
  72. package/docs/api/interfaces/PermissionEnforcerProps.md +1 -1
  73. package/docs/api/interfaces/PublicErrorBoundaryProps.md +1 -1
  74. package/docs/api/interfaces/PublicErrorBoundaryState.md +1 -1
  75. package/docs/api/interfaces/PublicLoadingSpinnerProps.md +1 -1
  76. package/docs/api/interfaces/PublicPageFooterProps.md +1 -1
  77. package/docs/api/interfaces/PublicPageHeaderProps.md +1 -1
  78. package/docs/api/interfaces/PublicPageLayoutProps.md +1 -1
  79. package/docs/api/interfaces/RBACConfig.md +1 -1
  80. package/docs/api/interfaces/RBACContextType.md +1 -1
  81. package/docs/api/interfaces/RBACLogger.md +1 -1
  82. package/docs/api/interfaces/RBACProviderProps.md +1 -1
  83. package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
  84. package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
  85. package/docs/api/interfaces/RouteAccessRecord.md +1 -1
  86. package/docs/api/interfaces/RouteConfig.md +1 -1
  87. package/docs/api/interfaces/SecureDataContextType.md +1 -1
  88. package/docs/api/interfaces/SecureDataProviderProps.md +1 -1
  89. package/docs/api/interfaces/StorageConfig.md +1 -1
  90. package/docs/api/interfaces/StorageFileInfo.md +1 -1
  91. package/docs/api/interfaces/StorageFileMetadata.md +1 -1
  92. package/docs/api/interfaces/StorageListOptions.md +1 -1
  93. package/docs/api/interfaces/StorageListResult.md +1 -1
  94. package/docs/api/interfaces/StorageUploadOptions.md +1 -1
  95. package/docs/api/interfaces/StorageUploadResult.md +1 -1
  96. package/docs/api/interfaces/StorageUrlOptions.md +1 -1
  97. package/docs/api/interfaces/StyleImport.md +1 -1
  98. package/docs/api/interfaces/ToastActionElement.md +1 -1
  99. package/docs/api/interfaces/ToastProps.md +1 -1
  100. package/docs/api/interfaces/UnifiedAuthContextType.md +1 -1
  101. package/docs/api/interfaces/UnifiedAuthProviderProps.md +1 -1
  102. package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
  103. package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
  104. package/docs/api/interfaces/UsePublicEventLogoOptions.md +1 -1
  105. package/docs/api/interfaces/UsePublicEventLogoReturn.md +1 -1
  106. package/docs/api/interfaces/UsePublicEventOptions.md +1 -1
  107. package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
  108. package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
  109. package/docs/api/interfaces/UserEventAccess.md +1 -1
  110. package/docs/api/interfaces/UserMenuProps.md +1 -1
  111. package/docs/api/interfaces/UserProfile.md +1 -1
  112. package/docs/api/modules.md +3 -3
  113. package/package.json +1 -1
  114. package/src/providers/OrganisationProvider.tsx +76 -2
  115. /package/dist/{DataTable-4T627QFJ.js.map → DataTable-GABLO6H5.js.map} +0 -0
  116. /package/dist/{chunk-TNMXZLDR.js.map → chunk-77TYN5B4.js.map} +0 -0
  117. /package/dist/{chunk-KJDPSM64.js.map → chunk-D3X2CGAG.js.map} +0 -0
  118. /package/dist/{chunk-AJ2KMES7.js.map → chunk-DH7VDOQQ.js.map} +0 -0
  119. /package/dist/{chunk-PAEM3OWN.js.map → chunk-E3ITLZBM.js.map} +0 -0
  120. /package/dist/{chunk-MPQDF75X.js.map → chunk-JO3Y2BOW.js.map} +0 -0
  121. /package/dist/{chunk-UQE2Y64H.js.map → chunk-S3MPG3BA.js.map} +0 -0
  122. /package/dist/{chunk-ZOD2ZY6X.js.map → chunk-TCX7STCC.js.map} +0 -0
  123. /package/dist/{chunk-RQD3D2CO.js.map → chunk-VY3DOGPU.js.map} +0 -0
  124. /package/dist/{chunk-KBRACSJI.js.map → chunk-YI25YXER.js.map} +0 -0
@@ -32,11 +32,11 @@ import {
32
32
  useDataTableContext,
33
33
  usePluginRegistry,
34
34
  useStateManager
35
- } from "./chunk-PAEM3OWN.js";
36
- import "./chunk-UQE2Y64H.js";
35
+ } from "./chunk-E3ITLZBM.js";
36
+ import "./chunk-S3MPG3BA.js";
37
37
  import "./chunk-KLPVOPRI.js";
38
38
  import "./chunk-B2WTCLCV.js";
39
- import "./chunk-KBRACSJI.js";
39
+ import "./chunk-YI25YXER.js";
40
40
  import {
41
41
  DataChunkManager,
42
42
  SearchIndex,
@@ -48,7 +48,7 @@ import {
48
48
  throttle,
49
49
  useDataTablePerformance
50
50
  } from "./chunk-YNUBMSMV.js";
51
- import "./chunk-AQFRLC7K.js";
51
+ import "./chunk-CACNKQ3B.js";
52
52
  import "./chunk-STT7INZR.js";
53
53
  import "./chunk-5BSLGBYI.js";
54
54
  import "./chunk-D7ARGIA3.js";
@@ -97,4 +97,4 @@ export {
97
97
  usePluginRegistry,
98
98
  useStateManager
99
99
  };
100
- //# sourceMappingURL=DataTable-4T627QFJ.js.map
100
+ //# sourceMappingURL=DataTable-GABLO6H5.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  init_EventProvider
3
- } from "./chunk-KBRACSJI.js";
3
+ } from "./chunk-YI25YXER.js";
4
4
  import {
5
5
  init_AuthProvider,
6
6
  init_InactivityProvider,
7
7
  init_OrganisationProvider,
8
8
  init_UnifiedAuthProvider
9
- } from "./chunk-AQFRLC7K.js";
9
+ } from "./chunk-CACNKQ3B.js";
10
10
 
11
11
  // src/providers/index.ts
12
12
  init_EventProvider();
@@ -14,4 +14,4 @@ init_OrganisationProvider();
14
14
  init_UnifiedAuthProvider();
15
15
  init_AuthProvider();
16
16
  init_InactivityProvider();
17
- //# sourceMappingURL=chunk-TNMXZLDR.js.map
17
+ //# sourceMappingURL=chunk-77TYN5B4.js.map
@@ -7374,12 +7374,28 @@ function OrganisationProvider({ children }) {
7374
7374
  setError(null);
7375
7375
  try {
7376
7376
  DebugLogger.log("OrganisationProvider", "Loading organisations for user:", user.id);
7377
+ console.log("[OrganisationProvider] Supabase client ready:", {
7378
+ isConnected: !!supabase,
7379
+ hasAuth: !!supabase.auth,
7380
+ hasRpc: !!supabase.rpc
7381
+ });
7377
7382
  let memberships, membershipError;
7378
7383
  try {
7379
- const result = await supabase.rpc("rbac_user_organisation_roles_get", {
7384
+ console.log("[OrganisationProvider] Making RPC call to rbac_user_organisation_roles_get...");
7385
+ const timeoutPromise = new Promise((_, reject) => {
7386
+ setTimeout(() => reject(new Error("RPC call timeout after 10 seconds")), 1e4);
7387
+ });
7388
+ const rpcPromise = supabase.rpc("rbac_user_organisation_roles_get", {
7380
7389
  p_user_id: user.id,
7381
7390
  p_organisation_id: null
7382
7391
  });
7392
+ const result = await Promise.race([rpcPromise, timeoutPromise]);
7393
+ console.log("[OrganisationProvider] RPC call completed:", {
7394
+ hasData: !!result.data,
7395
+ hasError: !!result.error,
7396
+ dataLength: result.data?.length || 0,
7397
+ errorMessage: result.error?.message || "No error"
7398
+ });
7383
7399
  memberships = result.data?.filter(
7384
7400
  (role) => ["org_admin", "leader", "member"].includes(role.role)
7385
7401
  ) || [];
@@ -7389,7 +7405,48 @@ function OrganisationProvider({ children }) {
7389
7405
  }
7390
7406
  if (membershipError) {
7391
7407
  console.error("[OrganisationProvider] Error loading memberships:", membershipError);
7392
- throw membershipError;
7408
+ if (membershipError.message?.includes("timeout")) {
7409
+ console.log("[OrganisationProvider] RPC timed out, trying direct database query as fallback...");
7410
+ try {
7411
+ const { data: fallbackData, error: fallbackError } = await supabase.from("rbac_organisation_roles").select(`
7412
+ id,
7413
+ user_id,
7414
+ organisation_id,
7415
+ role,
7416
+ status,
7417
+ granted_at,
7418
+ granted_by,
7419
+ revoked_at,
7420
+ revoked_by,
7421
+ notes,
7422
+ created_at,
7423
+ updated_at,
7424
+ organisations!inner(
7425
+ id,
7426
+ name,
7427
+ display_name,
7428
+ subscription_tier,
7429
+ settings,
7430
+ is_active,
7431
+ parent_id,
7432
+ created_at,
7433
+ updated_at
7434
+ )
7435
+ `).eq("user_id", user.id).eq("status", "active").is("revoked_at", null).in("role", ["org_admin", "leader", "member"]);
7436
+ if (fallbackError) {
7437
+ console.error("[OrganisationProvider] Fallback query also failed:", fallbackError);
7438
+ throw membershipError;
7439
+ }
7440
+ console.log("[OrganisationProvider] Fallback query successful, got", fallbackData?.length || 0, "memberships");
7441
+ memberships = fallbackData || [];
7442
+ membershipError = null;
7443
+ } catch (fallbackErr) {
7444
+ console.error("[OrganisationProvider] Fallback query failed:", fallbackErr);
7445
+ throw membershipError;
7446
+ }
7447
+ } else {
7448
+ throw membershipError;
7449
+ }
7393
7450
  }
7394
7451
  DebugLogger.log("OrganisationProvider", "Raw memberships data:", memberships);
7395
7452
  if (!memberships || memberships.length === 0) {
@@ -7834,4 +7891,4 @@ lodash/lodash.js:
7834
7891
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
7835
7892
  *)
7836
7893
  */
7837
- //# sourceMappingURL=chunk-AQFRLC7K.js.map
7894
+ //# sourceMappingURL=chunk-CACNKQ3B.js.map