@jmruthers/pace-core 0.5.56 → 0.5.58
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.
- package/dist/{DataTable-DJQTKX33.js → DataTable-PEAEZ7DL.js} +5 -5
- package/dist/{chunk-QB4GXDUM.js → chunk-73T26Z27.js} +3 -3
- package/dist/{chunk-ASXSJGPW.js → chunk-E4FPK232.js} +56 -3
- package/dist/{chunk-ASXSJGPW.js.map → chunk-E4FPK232.js.map} +1 -1
- package/dist/{chunk-I5GID3EX.js → chunk-HLMLK5RD.js} +5 -5
- package/dist/{chunk-GIDCWCHF.js → chunk-HSK6AJKC.js} +3 -3
- package/dist/{chunk-UETTVYKU.js → chunk-ITPVFKDH.js} +2 -2
- package/dist/{chunk-3JKVVLD3.js → chunk-N53OLPMT.js} +4 -4
- package/dist/{chunk-N6XMGSGD.js → chunk-NT3NC4Y4.js} +5 -5
- package/dist/{chunk-N6XMGSGD.js.map → chunk-NT3NC4Y4.js.map} +1 -1
- package/dist/{chunk-HYNGIE5T.js → chunk-RYRGIDBD.js} +3 -3
- package/dist/{chunk-YEHO6FDW.js → chunk-W7PPXKTZ.js} +2 -2
- package/dist/{chunk-2DFCT6D3.js → chunk-ZIC232OO.js} +28 -13
- package/dist/chunk-ZIC232OO.js.map +1 -0
- package/dist/components.js +7 -7
- package/dist/hooks.js +4 -4
- package/dist/index.js +10 -10
- package/dist/providers.js +3 -3
- package/dist/rbac/index.js +5 -5
- package/dist/types.d.ts +7 -1
- package/dist/utils.js +1 -1
- package/docs/api/classes/ErrorBoundary.md +1 -1
- package/docs/api/classes/InvalidScopeError.md +1 -1
- package/docs/api/classes/MissingUserContextError.md +1 -1
- package/docs/api/classes/OrganisationContextRequiredError.md +1 -1
- package/docs/api/classes/PermissionDeniedError.md +1 -1
- package/docs/api/classes/PublicErrorBoundary.md +1 -1
- package/docs/api/classes/RBACAuditManager.md +1 -1
- package/docs/api/classes/RBACCache.md +1 -1
- package/docs/api/classes/RBACEngine.md +1 -1
- package/docs/api/classes/RBACError.md +1 -1
- package/docs/api/classes/RBACNotInitializedError.md +1 -1
- package/docs/api/classes/SecureSupabaseClient.md +1 -1
- package/docs/api/classes/StorageUtils.md +1 -1
- package/docs/api/interfaces/AggregateConfig.md +1 -1
- package/docs/api/interfaces/ButtonProps.md +1 -1
- package/docs/api/interfaces/CardProps.md +1 -1
- package/docs/api/interfaces/ColorPalette.md +1 -1
- package/docs/api/interfaces/ColorShade.md +1 -1
- package/docs/api/interfaces/DataAccessRecord.md +1 -1
- package/docs/api/interfaces/DataTableAction.md +1 -1
- package/docs/api/interfaces/DataTableColumn.md +1 -1
- package/docs/api/interfaces/DataTableProps.md +1 -1
- package/docs/api/interfaces/DataTableToolbarButton.md +1 -1
- package/docs/api/interfaces/EmptyStateConfig.md +1 -1
- package/docs/api/interfaces/EnhancedNavigationMenuProps.md +1 -1
- package/docs/api/interfaces/EventContextType.md +1 -1
- package/docs/api/interfaces/EventLogoProps.md +1 -1
- package/docs/api/interfaces/EventProviderProps.md +1 -1
- package/docs/api/interfaces/FileSizeLimits.md +1 -1
- package/docs/api/interfaces/FileUploadProps.md +1 -1
- package/docs/api/interfaces/FooterProps.md +1 -1
- package/docs/api/interfaces/InactivityWarningModalProps.md +1 -1
- package/docs/api/interfaces/InputProps.md +1 -1
- package/docs/api/interfaces/LabelProps.md +1 -1
- package/docs/api/interfaces/LoginFormProps.md +1 -1
- package/docs/api/interfaces/NavigationAccessRecord.md +1 -1
- package/docs/api/interfaces/NavigationContextType.md +1 -1
- package/docs/api/interfaces/NavigationGuardProps.md +1 -1
- package/docs/api/interfaces/NavigationItem.md +1 -1
- package/docs/api/interfaces/NavigationMenuProps.md +1 -1
- package/docs/api/interfaces/NavigationProviderProps.md +1 -1
- package/docs/api/interfaces/Organisation.md +1 -1
- package/docs/api/interfaces/OrganisationContextType.md +1 -1
- package/docs/api/interfaces/OrganisationMembership.md +1 -1
- package/docs/api/interfaces/OrganisationProviderProps.md +1 -1
- package/docs/api/interfaces/OrganisationSecurityError.md +1 -1
- package/docs/api/interfaces/PaceAppLayoutProps.md +1 -1
- package/docs/api/interfaces/PaceLoginPageProps.md +1 -1
- package/docs/api/interfaces/PageAccessRecord.md +1 -1
- package/docs/api/interfaces/PagePermissionContextType.md +1 -1
- package/docs/api/interfaces/PagePermissionGuardProps.md +1 -1
- package/docs/api/interfaces/PagePermissionProviderProps.md +1 -1
- package/docs/api/interfaces/PaletteData.md +1 -1
- package/docs/api/interfaces/PermissionEnforcerProps.md +1 -1
- package/docs/api/interfaces/PublicErrorBoundaryProps.md +1 -1
- package/docs/api/interfaces/PublicErrorBoundaryState.md +1 -1
- package/docs/api/interfaces/PublicLoadingSpinnerProps.md +1 -1
- package/docs/api/interfaces/PublicPageFooterProps.md +1 -1
- package/docs/api/interfaces/PublicPageHeaderProps.md +1 -1
- package/docs/api/interfaces/PublicPageLayoutProps.md +1 -1
- package/docs/api/interfaces/RBACConfig.md +1 -1
- package/docs/api/interfaces/RBACContextType.md +1 -1
- package/docs/api/interfaces/RBACLogger.md +1 -1
- package/docs/api/interfaces/RBACProviderProps.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterContextType.md +1 -1
- package/docs/api/interfaces/RoleBasedRouterProps.md +1 -1
- package/docs/api/interfaces/RouteAccessRecord.md +1 -1
- package/docs/api/interfaces/RouteConfig.md +1 -1
- package/docs/api/interfaces/SecureDataContextType.md +1 -1
- package/docs/api/interfaces/SecureDataProviderProps.md +1 -1
- package/docs/api/interfaces/StorageConfig.md +1 -1
- package/docs/api/interfaces/StorageFileInfo.md +1 -1
- package/docs/api/interfaces/StorageFileMetadata.md +1 -1
- package/docs/api/interfaces/StorageListOptions.md +1 -1
- package/docs/api/interfaces/StorageListResult.md +1 -1
- package/docs/api/interfaces/StorageUploadOptions.md +1 -1
- package/docs/api/interfaces/StorageUploadResult.md +1 -1
- package/docs/api/interfaces/StorageUrlOptions.md +1 -1
- package/docs/api/interfaces/StyleImport.md +1 -1
- package/docs/api/interfaces/ToastActionElement.md +1 -1
- package/docs/api/interfaces/ToastProps.md +1 -1
- package/docs/api/interfaces/UnifiedAuthContextType.md +1 -1
- package/docs/api/interfaces/UnifiedAuthProviderProps.md +1 -1
- package/docs/api/interfaces/UseInactivityTrackerOptions.md +1 -1
- package/docs/api/interfaces/UseInactivityTrackerReturn.md +1 -1
- package/docs/api/interfaces/UsePublicEventLogoOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventLogoReturn.md +1 -1
- package/docs/api/interfaces/UsePublicEventOptions.md +1 -1
- package/docs/api/interfaces/UsePublicEventReturn.md +1 -1
- package/docs/api/interfaces/UsePublicRouteParamsReturn.md +1 -1
- package/docs/api/interfaces/UserEventAccess.md +1 -1
- package/docs/api/interfaces/UserMenuProps.md +1 -1
- package/docs/api/interfaces/UserProfile.md +1 -1
- package/docs/api/modules.md +3 -3
- package/docs/getting-started/quick-start.md +21 -3
- package/docs/rbac/getting-started.md +43 -0
- package/docs/troubleshooting/common-issues.md +116 -1516
- package/package.json +1 -1
- package/src/__tests__/TESTING_GUIDELINES.md +1 -1
- package/src/hooks/__tests__/useRBAC.unit.test.ts +8 -8
- package/src/providers/EventProvider.tsx +31 -17
- package/src/providers/OrganisationProvider.tsx +69 -2
- package/src/rbac/hooks/useRBAC.ts +2 -2
- package/src/types/supabase.ts +17 -0
- package/dist/chunk-2DFCT6D3.js.map +0 -1
- /package/dist/{DataTable-DJQTKX33.js.map → DataTable-PEAEZ7DL.js.map} +0 -0
- /package/dist/{chunk-QB4GXDUM.js.map → chunk-73T26Z27.js.map} +0 -0
- /package/dist/{chunk-I5GID3EX.js.map → chunk-HLMLK5RD.js.map} +0 -0
- /package/dist/{chunk-GIDCWCHF.js.map → chunk-HSK6AJKC.js.map} +0 -0
- /package/dist/{chunk-UETTVYKU.js.map → chunk-ITPVFKDH.js.map} +0 -0
- /package/dist/{chunk-3JKVVLD3.js.map → chunk-N53OLPMT.js.map} +0 -0
- /package/dist/{chunk-HYNGIE5T.js.map → chunk-RYRGIDBD.js.map} +0 -0
- /package/dist/{chunk-YEHO6FDW.js.map → chunk-W7PPXKTZ.js.map} +0 -0
|
@@ -32,11 +32,11 @@ import {
|
|
|
32
32
|
useDataTableContext,
|
|
33
33
|
usePluginRegistry,
|
|
34
34
|
useStateManager
|
|
35
|
-
} from "./chunk-
|
|
36
|
-
import "./chunk-
|
|
35
|
+
} from "./chunk-RYRGIDBD.js";
|
|
36
|
+
import "./chunk-NT3NC4Y4.js";
|
|
37
37
|
import "./chunk-KLPVOPRI.js";
|
|
38
38
|
import "./chunk-B2WTCLCV.js";
|
|
39
|
-
import "./chunk-
|
|
39
|
+
import "./chunk-ZIC232OO.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-
|
|
51
|
+
import "./chunk-E4FPK232.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-
|
|
100
|
+
//# sourceMappingURL=DataTable-PEAEZ7DL.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
init_EventProvider
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ZIC232OO.js";
|
|
4
4
|
import {
|
|
5
5
|
init_AuthProvider,
|
|
6
6
|
init_InactivityProvider,
|
|
7
7
|
init_OrganisationProvider,
|
|
8
8
|
init_UnifiedAuthProvider
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-E4FPK232.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-
|
|
17
|
+
//# sourceMappingURL=chunk-73T26Z27.js.map
|
|
@@ -7374,16 +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 {
|
|
7384
|
+
console.log("[OrganisationProvider] Making RPC call to data_user_organisation_roles_get...");
|
|
7379
7385
|
const timeoutPromise = new Promise((_, reject) => {
|
|
7380
7386
|
setTimeout(() => reject(new Error("RPC call timeout after 10 seconds")), 1e4);
|
|
7381
7387
|
});
|
|
7382
|
-
const rpcPromise = supabase.rpc("
|
|
7388
|
+
const rpcPromise = supabase.rpc("data_user_organisation_roles_get", {
|
|
7383
7389
|
p_user_id: user.id,
|
|
7384
7390
|
p_organisation_id: null
|
|
7385
7391
|
});
|
|
7386
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
|
+
});
|
|
7387
7399
|
memberships = result.data?.filter(
|
|
7388
7400
|
(role) => ["org_admin", "leader", "member"].includes(role.role)
|
|
7389
7401
|
) || [];
|
|
@@ -7393,7 +7405,48 @@ function OrganisationProvider({ children }) {
|
|
|
7393
7405
|
}
|
|
7394
7406
|
if (membershipError) {
|
|
7395
7407
|
console.error("[OrganisationProvider] Error loading memberships:", membershipError);
|
|
7396
|
-
|
|
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
|
+
}
|
|
7397
7450
|
}
|
|
7398
7451
|
DebugLogger.log("OrganisationProvider", "Raw memberships data:", memberships);
|
|
7399
7452
|
if (!memberships || memberships.length === 0) {
|
|
@@ -7838,4 +7891,4 @@ lodash/lodash.js:
|
|
|
7838
7891
|
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
|
7839
7892
|
*)
|
|
7840
7893
|
*/
|
|
7841
|
-
//# sourceMappingURL=chunk-
|
|
7894
|
+
//# sourceMappingURL=chunk-E4FPK232.js.map
|