UNPKG

@speckle/shared

Version:

Shared code between various Speckle JS packages

21 lines 785 B
import { ok } from 'true-myth/result'; import { Roles } from '../../../core/constants.js'; import { ensureMinimumServerRoleFragment } from '../../fragments/server.js'; import { canUpdateProjectPolicy } from './canUpdate.js'; export const canDeleteProjectPolicy = (loaders) => async ({ userId, projectId }) => { // Server admins can also delete projects const ensuredAdminAccess = await ensureMinimumServerRoleFragment(loaders)({ userId, role: Roles.Server.Admin }); if (ensuredAdminAccess.isOk) { return ok(); } // Otherwise follow standard canUpdate check const ensuredCanUpdate = await canUpdateProjectPolicy(loaders)({ userId, projectId }); return ensuredCanUpdate; }; //# sourceMappingURL=canDelete.js.map