63 lines
1.4 KiB
TypeScript
63 lines
1.4 KiB
TypeScript
import { Resolvers } from '@/modules/core/graph/generated/graphql'
|
|
|
|
import { validateScopes } from '@/modules/shared'
|
|
import {
|
|
getStreamHistory,
|
|
getCommitHistory,
|
|
getObjectHistory,
|
|
getUserHistory,
|
|
getTotalStreamCount,
|
|
getTotalCommitCount,
|
|
getTotalObjectCount,
|
|
getTotalUserCount
|
|
} from '@/modules/stats/services/index'
|
|
import { Roles, Scopes } from '@speckle/shared'
|
|
import { throwForNotHavingServerRole } from '@/modules/shared/authz'
|
|
|
|
export = {
|
|
Query: {
|
|
/**
|
|
* @deprecated('Use admin.serverStatistics')
|
|
*/
|
|
async serverStats(_parent, _args, context) {
|
|
await throwForNotHavingServerRole(context, Roles.Server.Admin)
|
|
await validateScopes(context.scopes, Scopes.Server.Stats)
|
|
return {}
|
|
}
|
|
},
|
|
|
|
ServerStats: {
|
|
async totalStreamCount() {
|
|
return await getTotalStreamCount()
|
|
},
|
|
|
|
async totalCommitCount() {
|
|
return await getTotalCommitCount()
|
|
},
|
|
|
|
async totalObjectCount() {
|
|
return await getTotalObjectCount()
|
|
},
|
|
|
|
async totalUserCount() {
|
|
return await getTotalUserCount()
|
|
},
|
|
|
|
async streamHistory() {
|
|
return await getStreamHistory()
|
|
},
|
|
|
|
async commitHistory() {
|
|
return await getCommitHistory()
|
|
},
|
|
|
|
async objectHistory() {
|
|
return await getObjectHistory()
|
|
},
|
|
|
|
async userHistory() {
|
|
return await getUserHistory()
|
|
}
|
|
}
|
|
} as Resolvers
|