UNPKG

@speckle/shared

Version:

Shared code between various Speckle JS packages

23 lines 892 B
import { err, ok } from 'true-myth/result'; import { ensureImplicitProjectMemberWithWriteAccessFragment } from '../../../fragments/projects.js'; import { ensureModelCanBeCreatedFragment } from '../../../fragments/workspaces.js'; export const canCreateModelPolicy = (loaders) => async ({ userId, projectId }) => { // Ensure general write access const ensureWriteAccess = await ensureImplicitProjectMemberWithWriteAccessFragment(loaders)({ userId, projectId }); if (ensureWriteAccess.isErr) { return err(ensureWriteAccess.error); } // Ensure (workspace?) accepts models const ensuredModelsAccepted = await ensureModelCanBeCreatedFragment(loaders)({ projectId, userId }); if (ensuredModelsAccepted.isErr) { return err(ensuredModelsAccepted.error); } return ok(); }; //# sourceMappingURL=canCreate.js.map