feat: Implement getUsageData graphQL query
This commit is contained in:
29
packages/backend/src/graphql/queries/get-usage-data.ee.ts
Normal file
29
packages/backend/src/graphql/queries/get-usage-data.ee.ts
Normal file
@@ -0,0 +1,29 @@
|
||||
import appConfig from '../../config/app';
|
||||
import Context from '../../types/express/context';
|
||||
|
||||
const getUsageData = async (
|
||||
_parent: unknown,
|
||||
_params: unknown,
|
||||
context: Context
|
||||
) => {
|
||||
if (!appConfig.isCloud) return;
|
||||
|
||||
const usageData = await context.currentUser
|
||||
.$relatedQuery('usageData')
|
||||
.throwIfNotFound();
|
||||
|
||||
const paymentPlan = await context.currentUser
|
||||
.$relatedQuery('paymentPlan')
|
||||
.throwIfNotFound();
|
||||
|
||||
const computedUsageData = {
|
||||
allowedTaskCount: paymentPlan.taskCount,
|
||||
consumedTaskCount: usageData.consumedTaskCount,
|
||||
remainingTaskCount: paymentPlan.taskCount - usageData.consumedTaskCount,
|
||||
nextResetAt: usageData.nextResetAt,
|
||||
};
|
||||
|
||||
return computedUsageData;
|
||||
};
|
||||
|
||||
export default getUsageData;
|
Reference in New Issue
Block a user