43 lines
2.8 KiB
TypeScript
43 lines
2.8 KiB
TypeScript
import { Resolver, Ctx, Mutation, Arg, Authorized } from 'type-graphql';
|
|
|
|
import BookingModel from '../bookings.engine.model';
|
|
import { createEngineQueryResolver } from '@seed/engine/genericResolvers/BaseEngineResolver';
|
|
import { AccountTypeEnum } from '@src/accounts/account.components';
|
|
import { BookingEngineArgsSchema, BookingEngineNewInputSchema } from '../schemas/bookings.engine.input';
|
|
import { BookingEngineSchema } from '../schemas/bookings.engine.schema';
|
|
|
|
const BookingGenericQueryResolver = createEngineQueryResolver({
|
|
domain: 'bookings',
|
|
schemaName: BookingEngineSchema,
|
|
modelName: BookingModel,
|
|
argsType: BookingEngineArgsSchema,
|
|
engineMiddleware: {
|
|
authorization: [AccountTypeEnum.user],
|
|
},
|
|
});
|
|
|
|
@Resolver(BookingEngineSchema)
|
|
export class BookingEngineQueryResolver extends BookingGenericQueryResolver {
|
|
/*
|
|
██████╗ ██╗ ██╗███████╗██████╗ ██╗ ██╗
|
|
██╔═══██╗██║ ██║██╔════╝██╔══██╗╚██╗ ██╔╝
|
|
██║ ██║██║ ██║█████╗ ██████╔╝ ╚████╔╝
|
|
██║▄▄ ██║██║ ██║██╔══╝ ██╔══██╗ ╚██╔╝
|
|
╚██████╔╝╚██████╔╝███████╗██║ ██║ ██║
|
|
╚══▀▀═╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝ ╚═╝
|
|
*/
|
|
}
|
|
|
|
export class BookingEngineMutationResolver {
|
|
/*
|
|
███╗ ███╗██╗ ██╗████████╗ █████╗ ████████╗ ██████╗ ██████╗ ███████╗
|
|
████╗ ████║██║ ██║╚══██╔══╝██╔══██╗╚══██╔══╝██╔═══██╗██╔══██╗██╔════╝
|
|
██╔████╔██║██║ ██║ ██║ ███████║ ██║ ██║ ██║██████╔╝███████╗
|
|
██║╚██╔╝██║██║ ██║ ██║ ██╔══██║ ██║ ██║ ██║██╔══██╗╚════██║
|
|
██║ ╚═╝ ██║╚██████╔╝ ██║ ██║ ██║ ██║ ╚██████╔╝██║ ██║███████║
|
|
╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝
|
|
*/
|
|
}
|
|
|
|
export const BookingEngineResolvers = [BookingEngineQueryResolver, BookingEngineMutationResolver];
|