Skip to content

Commit

Permalink
x
Browse files Browse the repository at this point in the history
  • Loading branch information
0-don committed Feb 18, 2024
1 parent ff199d9 commit 34972b9
Show file tree
Hide file tree
Showing 18 changed files with 7,953 additions and 2,659 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { Allergens } from "@/app_modules/@generated/allergens/allergens.model";
import { FindManyAllergensArgs } from "@/app_modules/@generated/allergens/find-many-allergens.args";
import { Meal } from "@/app_modules/@generated/meal/meal.model";
import { Roles } from "@/app_modules/decorators/roles.decorator";
import { PrismaService } from "@/app_modules/prisma/prisma.service";
import { Logger } from "@nestjs/common";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,20 +1,6 @@
import { CreateManyUserMealLocationArgs } from "@/app_modules/@generated/user-meal-location/create-many-user-meal-location.args";
import { DeleteManyUserMealLocationArgs } from "@/app_modules/@generated/user-meal-location/delete-many-user-meal-location.args";
import { DeleteOneUserMealLocationArgs } from "@/app_modules/@generated/user-meal-location/delete-one-user-meal-location.args";
import { FindFirstUserMealLocationArgs } from "@/app_modules/@generated/user-meal-location/find-first-user-meal-location.args";
import { FindManyUserMealLocationArgs } from "@/app_modules/@generated/user-meal-location/find-many-user-meal-location.args";
import { UpdateManyUserMealLocationArgs } from "@/app_modules/@generated/user-meal-location/update-many-user-meal-location.args";
import { UpdateOneUserMealLocationArgs } from "@/app_modules/@generated/user-meal-location/update-one-user-meal-location.args";
import { UpsertOneUserMealLocationArgs } from "@/app_modules/@generated/user-meal-location/upsert-one-user-meal-location.args";
import { UserMealLocationUncheckedCreateInput } from "@/app_modules/@generated/user-meal-location/user-meal-location-unchecked-create.input";
import { UserMealLocation } from "@/app_modules/@generated/user-meal-location/user-meal-location.model";
import { Roles } from "@/app_modules/decorators/roles.decorator";
import { PrismaService } from "@/app_modules/prisma/prisma.service";
import { Logger } from "@nestjs/common";
import { Args, Info, Int, Mutation, Query, Resolver } from "@nestjs/graphql";
import { PrismaSelect } from "@paljs/plugins";
import { Prisma } from "@prisma/client";
import { GraphQLResolveInfo } from "graphql";
import { Resolver } from "@nestjs/graphql";
import { UserMeaLocationService } from "../user-meal-location.service";

@Resolver(() => UserMealLocation)
Expand Down
18 changes: 0 additions & 18 deletions server/src/users/user-meal/resolver/user-meal-admin.resolver.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
import { FindManyUserMealArgs } from "@/app_modules/@generated/user-meal/find-many-user-meal.args";
import { UserMealGroupByArgs } from "@/app_modules/@generated/user-meal/user-meal-group-by.args";
import { UserMealGroupBy } from "@/app_modules/@generated/user-meal/user-meal-group-by.output";
import { UserMeal } from "@/app_modules/@generated/user-meal/user-meal.model";
import { Roles } from "@/app_modules/decorators/roles.decorator";
import { PrismaService } from "@/app_modules/prisma/prisma.service";
Expand Down Expand Up @@ -105,22 +103,6 @@ export class UserMealAdminResolver {
}
}

@Query(() => [UserMealGroupBy], { nullable: true })
@Roles("ADMIN")
async getUserMealsGroupedAdmin(@Args() args: UserMealGroupByArgs) {
try {
// @ts-ignore
const result = await this.prisma.userMeal.groupBy({
...args,
});

return result;
} catch (e) {
Logger.error(e);
return null;
}
}

@Query(() => [UserMeal], { nullable: true })
@Roles("ADMIN")
async getAllUserMealsAdmin(
Expand Down
2 changes: 1 addition & 1 deletion web/src/app/[locale]/(main)/(meals)/dashboard/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ interface DashboardLayoutProps {
export default async function DashboardLayout({
children,
}: DashboardLayoutProps) {
const { queryClient } = await prefetchQuery([{ document: ME, }]);
const { queryClient } = await prefetchQuery([{ document: ME }]);
const data = queryClient.getQueryData<MeQuery>(getKey(ME));

if (
Expand Down
1 change: 0 additions & 1 deletion web/src/app/[locale]/(main)/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ export default async function MainLayout({ children }: MainLayoutProps) {
<div className="relative flex min-h-[calc(100svh-4rem)] flex-col items-center px-6">
{children}
</div>

</HydrationBoundary>
);
}
4 changes: 3 additions & 1 deletion web/src/app/[locale]/(main)/orders/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,7 @@ interface OrdersLayoutProps {
}

export default function OrdersLayout({ children }: OrdersLayoutProps) {
return <NextIntlProvider tree={["Orders", "Enums"]}>{children}</NextIntlProvider>;
return (
<NextIntlProvider tree={["Orders", "Enums"]}>{children}</NextIntlProvider>
);
}
1 change: 0 additions & 1 deletion web/src/app/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,5 @@ type Props = {
};

export default function RootLayout({ children }: Props) {

return children;
}
7 changes: 6 additions & 1 deletion web/src/components/elements/MyLink.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,12 @@ type MyLinkProps = {
children?: React.ReactNode;
} & LinkProps;

export const MyLink: React.FC<MyLinkProps> = ({ href, children, className, ...rest }) => {
export const MyLink: React.FC<MyLinkProps> = ({
href,
children,
className,
...rest
}) => {
const currentPath = usePathname();
const isActive = href === currentPath;

Expand Down
6 changes: 5 additions & 1 deletion web/src/components/elements/MyModal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@ export const MyModal: React.FC<MyModalProps> = ({ children, className }) => {

return (
<Transition.Root show={true} as={Fragment}>
<Dialog as="div" className="relative z-[99]" onClose={() => router.back()}>
<Dialog
as="div"
className="relative z-[99]"
onClose={() => router.back()}
>
<Transition.Child
as={Fragment}
enter="ease-out duration-300"
Expand Down
2 changes: 1 addition & 1 deletion web/src/components/hooks/useMealBoardPlanHook.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"use client"
"use client";
import { GET_ALL_MEAL_BOARD_PLANS_USER } from "@/documents/query/dashboard";
import { customFetcher } from "@/fetcher";
import { GetAllMealBoardPlansUserQuery } from "@/gql/graphql";
Expand Down
2 changes: 1 addition & 1 deletion web/src/components/hooks/useMealHook.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ export const useMealHook = () => {
queryFn: customFetcher(GET_ALL_MEALS_USER),
});

return { meals: getAllMealsUser, };
return { meals: getAllMealsUser };
};
2 changes: 1 addition & 1 deletion web/src/components/pages/dashboard/table/TableGroupRow.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export const TableGroupRow: React.FC<TableGroupRowProps> = ({ id }) => {
m.weeklyMealGroupId === group?.id &&
m.mealBoardPlanId === activeMealBoardPlan?.id,
);

const disabled =
!isHighRank ||
isOrderMenu ||
Expand Down
70 changes: 45 additions & 25 deletions web/src/gql/fragment-masking.ts
Original file line number Diff line number Diff line change
@@ -1,67 +1,87 @@
/* eslint-disable */
import { ResultOf, DocumentTypeDecoration, TypedDocumentNode } from '@graphql-typed-document-node/core';
import { FragmentDefinitionNode } from 'graphql';
import { Incremental } from './graphql';
import {
DocumentTypeDecoration,
ResultOf,
TypedDocumentNode,
} from "@graphql-typed-document-node/core";
import { FragmentDefinitionNode } from "graphql";
import { Incremental } from "./graphql";


export type FragmentType<TDocumentType extends DocumentTypeDecoration<any, any>> = TDocumentType extends DocumentTypeDecoration<
infer TType,
any
>
? [TType] extends [{ ' $fragmentName'?: infer TKey }]
? TKey extends string
? { ' $fragmentRefs'?: { [key in TKey]: TType } }
export type FragmentType<
TDocumentType extends DocumentTypeDecoration<any, any>,
> =
TDocumentType extends DocumentTypeDecoration<infer TType, any>
? [TType] extends [{ " $fragmentName"?: infer TKey }]
? TKey extends string
? { " $fragmentRefs"?: { [key in TKey]: TType } }
: never
: never
: never
: never;
: never;

// return non-nullable if `fragmentType` is non-nullable
export function useFragment<TType>(
_documentNode: DocumentTypeDecoration<TType, any>,
fragmentType: FragmentType<DocumentTypeDecoration<TType, any>>
fragmentType: FragmentType<DocumentTypeDecoration<TType, any>>,
): TType;
// return nullable if `fragmentType` is nullable
export function useFragment<TType>(
_documentNode: DocumentTypeDecoration<TType, any>,
fragmentType: FragmentType<DocumentTypeDecoration<TType, any>> | null | undefined
fragmentType:
| FragmentType<DocumentTypeDecoration<TType, any>>
| null
| undefined,
): TType | null | undefined;
// return array of non-nullable if `fragmentType` is array of non-nullable
export function useFragment<TType>(
_documentNode: DocumentTypeDecoration<TType, any>,
fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>
fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>,
): ReadonlyArray<TType>;
// return array of nullable if `fragmentType` is array of nullable
export function useFragment<TType>(
_documentNode: DocumentTypeDecoration<TType, any>,
fragmentType: ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>> | null | undefined
fragmentType:
| ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>
| null
| undefined,
): ReadonlyArray<TType> | null | undefined;
export function useFragment<TType>(
_documentNode: DocumentTypeDecoration<TType, any>,
fragmentType: FragmentType<DocumentTypeDecoration<TType, any>> | ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>> | null | undefined
fragmentType:
| FragmentType<DocumentTypeDecoration<TType, any>>
| ReadonlyArray<FragmentType<DocumentTypeDecoration<TType, any>>>
| null
| undefined,
): TType | ReadonlyArray<TType> | null | undefined {
return fragmentType as any;
}


export function makeFragmentData<
F extends DocumentTypeDecoration<any, any>,
FT extends ResultOf<F>
FT extends ResultOf<F>,
>(data: FT, _fragment: F): FragmentType<F> {
return data as FragmentType<F>;
}
export function isFragmentReady<TQuery, TFrag>(
queryNode: DocumentTypeDecoration<TQuery, any>,
fragmentNode: TypedDocumentNode<TFrag>,
data: FragmentType<TypedDocumentNode<Incremental<TFrag>, any>> | null | undefined
data:
| FragmentType<TypedDocumentNode<Incremental<TFrag>, any>>
| null
| undefined,
): data is FragmentType<typeof fragmentNode> {
const deferredFields = (queryNode as { __meta__?: { deferredFields: Record<string, (keyof TFrag)[]> } }).__meta__
?.deferredFields;
const deferredFields = (
queryNode as {
__meta__?: { deferredFields: Record<string, (keyof TFrag)[]> };
}
).__meta__?.deferredFields;

if (!deferredFields) return true;

const fragDef = fragmentNode.definitions[0] as FragmentDefinitionNode | undefined;
const fragDef = fragmentNode.definitions[0] as
| FragmentDefinitionNode
| undefined;
const fragName = fragDef?.name?.value;

const fields = (fragName && deferredFields[fragName]) || [];
return fields.length > 0 && fields.every(field => data && field in data);
return fields.length > 0 && fields.every((field) => data && field in data);
}
Loading

0 comments on commit 34972b9

Please sign in to comment.