Loading save files done.

This commit is contained in:
2025-03-11 19:03:11 -05:00
parent 85f643ef10
commit 60db15e932
19 changed files with 489 additions and 76 deletions

29
src/lib/fragment.ts Normal file
View File

@@ -0,0 +1,29 @@
import { gql } from "apollo-server-micro";
import { DocumentNode } from "graphql";
type FragmentDefinition<T> = {
query:DocumentNode;
name:string;
needsInclude:boolean;
}
export const createFragment = <T>(params:{
query:DocumentNode;
name:string;
needsInclude?:boolean;
}):FragmentDefinition<T> => {
return {
...params,
needsInclude: typeof params.needsInclude === 'undefined' ? true : params.needsInclude
}
}
export const includeFragment = <T>(fragment:FragmentDefinition<T>) => {
if(!fragment.needsInclude) return '';
return fragment.query;
}
export const extendFragment = <T>(fragment:FragmentDefinition<T>) => {
if(!fragment.needsInclude) return fragment.query;
return `...${fragment.name}`;
}