820a1e2ebf
* Workspace.projects fixed * Query.project tested & fixed * personalOnly flag added * withProjectRoleOnly flag * authorizeResolver implicit workspace roles * minor cleanup * reorg + support for throwing auth errors * global error mapping * undo special borkage * CR fixes * more CR fixes * shared tests fix * minor adjustment * tests fix * see if removing cached roles fixes it? * more fixes * clean up debugging garbage
39 lines
1.3 KiB
TypeScript
39 lines
1.3 KiB
TypeScript
import { db } from '@/db/knex'
|
|
import { getStreamFactory } from '@/modules/core/repositories/streams'
|
|
import { adminOverrideEnabled } from '@/modules/shared/helpers/envHelper'
|
|
import {
|
|
getUserAclRoleFactory,
|
|
getUserServerRoleFactory
|
|
} from '@/modules/shared/repositories/acl'
|
|
import { getRolesFactory } from '@/modules/shared/repositories/roles'
|
|
import {
|
|
authorizeResolverFactory,
|
|
validateScopesFactory
|
|
} from '@/modules/shared/services/auth'
|
|
import { getEventBus } from '@/modules/shared/services/eventBus'
|
|
import {
|
|
pubsub,
|
|
StreamSubscriptions,
|
|
CommitSubscriptions,
|
|
BranchSubscriptions
|
|
} from '@/modules/shared/utils/subscriptions'
|
|
import { getWorkspaceRoleAndSeatFactory } from '@/modules/workspacesCore/repositories/rolesSeats'
|
|
|
|
export {
|
|
pubsub,
|
|
StreamSubscriptions as StreamPubsubEvents,
|
|
CommitSubscriptions as CommitPubsubEvents,
|
|
BranchSubscriptions as BranchPubsubEvents
|
|
}
|
|
|
|
export const validateScopes = validateScopesFactory()
|
|
export const authorizeResolver = authorizeResolverFactory({
|
|
getRoles: getRolesFactory({ db }),
|
|
adminOverrideEnabled,
|
|
getUserServerRole: getUserServerRoleFactory({ db }),
|
|
getStream: getStreamFactory({ db }),
|
|
getUserAclRole: getUserAclRoleFactory({ db }),
|
|
emitWorkspaceEvent: getEventBus().emit,
|
|
getWorkspaceRoleAndSeat: getWorkspaceRoleAndSeatFactory({ db })
|
|
})
|