Skip to content

Commit

Permalink
fix: add missing helper methods
Browse files Browse the repository at this point in the history
  • Loading branch information
adrians5j committed Nov 8, 2023
1 parent 2fb2164 commit 029d175
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 1 deletion.
47 changes: 46 additions & 1 deletion packages/app-wcp/src/hooks/useWcp.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ import { WcpProject, WcpProjectPackage } from "~/types";
interface UseWcpHook {
getProject: () => WcpProject | null;
canUseFeature: (featureId: keyof WcpProjectPackage["features"]) => boolean;
canUseAacl: () => boolean;
canUseTeams: () => boolean;
canUsePrivateFiles: () => boolean;
canUseFolderLevelPermissions: () => boolean;
}

export function useWcp(): UseWcpHook {
Expand All @@ -27,5 +31,46 @@ export function useWcp(): UseWcpHook {
[context.project]
);

return { getProject, canUseFeature };
const canUseAacl = () => {
return canUseFeature("advancedAccessControlLayer");
};

const canUseTeams = () => {
if (!canUseAacl()) {
return false;
}

const advancedAccessControlLayer =
context.project!.package.features.advancedAccessControlLayer!;
return advancedAccessControlLayer.options.teams;
};

const canUseFolderLevelPermissions = () => {
if (!canUseAacl()) {
return false;
}

const advancedAccessControlLayer =
context.project!.package.features.advancedAccessControlLayer!;
return advancedAccessControlLayer.options.folderLevelPermissions;
};

const canUsePrivateFiles = () => {
if (!canUseAacl()) {
return false;
}

const advancedAccessControlLayer =
context.project!.package.features.advancedAccessControlLayer!;
return advancedAccessControlLayer.options.privateFiles;
};

return {
getProject,
canUseFeature,
canUseAacl,
canUseTeams,
canUseFolderLevelPermissions,
canUsePrivateFiles
};
}
2 changes: 2 additions & 0 deletions packages/app-wcp/src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ export type WcpProjectPackage = {
enabled: boolean;
options: {
teams: boolean;
privateFiles: boolean;
folderLevelPermissions: boolean;
};
};
auditLogs: {
Expand Down

0 comments on commit 029d175

Please sign in to comment.