Skip to content

Commit 83a6c33

Browse files
committed
fix: add missing helper methods
1 parent 83a4056 commit 83a6c33

File tree

2 files changed

+48
-1
lines changed

2 files changed

+48
-1
lines changed

packages/app-wcp/src/hooks/useWcp.ts

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ import { WcpProject, WcpProjectPackage } from "~/types";
55
interface UseWcpHook {
66
getProject: () => WcpProject | null;
77
canUseFeature: (featureId: keyof WcpProjectPackage["features"]) => boolean;
8+
canUseAacl: () => boolean;
9+
canUseTeams: () => boolean;
10+
canUsePrivateFiles: () => boolean;
11+
canUseFolderLevelPermissions: () => boolean;
812
}
913

1014
export function useWcp(): UseWcpHook {
@@ -27,5 +31,46 @@ export function useWcp(): UseWcpHook {
2731
[context.project]
2832
);
2933

30-
return { getProject, canUseFeature };
34+
const canUseAacl = () => {
35+
return canUseFeature("advancedAccessControlLayer");
36+
};
37+
38+
const canUseTeams = () => {
39+
if (!canUseAacl()) {
40+
return false;
41+
}
42+
43+
const advancedAccessControlLayer =
44+
context.project!.package.features.advancedAccessControlLayer!;
45+
return advancedAccessControlLayer.options.teams;
46+
};
47+
48+
const canUseFolderLevelPermissions = () => {
49+
if (!canUseAacl()) {
50+
return false;
51+
}
52+
53+
const advancedAccessControlLayer =
54+
context.project!.package.features.advancedAccessControlLayer!;
55+
return advancedAccessControlLayer.options.folderLevelPermissions;
56+
};
57+
58+
const canUsePrivateFiles = () => {
59+
if (!canUseAacl()) {
60+
return false;
61+
}
62+
63+
const advancedAccessControlLayer =
64+
context.project!.package.features.advancedAccessControlLayer!;
65+
return advancedAccessControlLayer.options.privateFiles;
66+
};
67+
68+
return {
69+
getProject,
70+
canUseFeature,
71+
canUseAacl,
72+
canUseTeams,
73+
canUseFolderLevelPermissions,
74+
canUsePrivateFiles
75+
};
3176
}

packages/app-wcp/src/types.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ export type WcpProjectPackage = {
1818
enabled: boolean;
1919
options: {
2020
teams: boolean;
21+
privateFiles: boolean;
22+
folderLevelPermissions: boolean;
2123
};
2224
};
2325
auditLogs: {

0 commit comments

Comments
 (0)