Files
speckle-server/packages/server/modules/shared/index.ts
T
Kristaps Fabians Geikins 5f88f562d3 feat: updated various "read/update" settings related permission checks (#4356)
* a bunch more tests

* updated GQL resolvers

* project create checks implemented

* project update/settings related checks in FE

* a bunch of tests

* tests fix

* disable app schema check
2025-04-09 16:13:09 +03:00

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 { getCachedRolesFactory } 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: getCachedRolesFactory({ db }),
adminOverrideEnabled,
getUserServerRole: getUserServerRoleFactory({ db }),
getStream: getStreamFactory({ db }),
getUserAclRole: getUserAclRoleFactory({ db }),
emitWorkspaceEvent: getEventBus().emit,
getWorkspaceRoleAndSeat: getWorkspaceRoleAndSeatFactory({ db })
})