import { schema } from 'nexus' import { TaskActivityWhereInput, TaskActivityOrderByInput } from 'nexus-plugin-prisma/client' export const TaskActivity = schema.objectType({ name: 'TaskActivity', definition(t) { t.model.id() t.model.createdAt() t.model.updatedAt() t.model.text() t.model.taskId() t.model.createdBy() t.model.task() }, }) export const TaskActivityQueries = schema.extendType({ type: 'Query', definition(t) { t.crud.taskActivity() t.crud.taskActivities({ filtering: true, ordering: true }) t.field('taskActivities', { type: 'TaskActivity', list: true, args: { where: schema.arg({ type: 'TaskActivityWhereInput' }), orderBy: schema.arg({ type: 'TaskActivityOrderByInput', list: true }), first: schema.arg({ type: 'Int' }), skip: schema.arg({ type: 'Int' }), }, resolve: ( parent, { where, orderBy, first, skip, }: { where?: TaskActivityWhereInput orderBy?: TaskActivityOrderByInput[] first?: number skip?: number }, ctx: NexusContext ) => { return ctx.prisma.taskActivity.findMany({ where, skip, take: first, ...(orderBy?.length > 0 && { orderBy: orderBy[0] }), }) }, }) }, }) export const TaskActivityMutation = schema.extendType({ type: 'Mutation', definition: (t) => { t.crud.deleteOneTaskActivity({ alias: 'deleteTaskActivity' }) t.crud.updateOneTaskActivity({ alias: 'updateTaskActivity' }) t.crud.createOneTaskActivity({ alias: 'createTaskActivity' }) }, })