UNPKG

@speckle/shared

Version:

Shared code between various Speckle JS packages

15 lines (13 loc) 524 B
import { DashboardContext, UserContext } from '../domain/context.js' import { AuthCheckContextLoaderKeys } from '../domain/loaders.js' import { AuthPolicyCheck } from '../domain/policies.js' export const isDashboardOwner: AuthPolicyCheck< typeof AuthCheckContextLoaderKeys.getDashboard, UserContext & DashboardContext > = (loaders) => async ({ userId, dashboardId }) => { const dashboard = await loaders.getDashboard({ dashboardId }) if (!dashboard) return false return dashboard.ownerId === userId }