INNER CODE UNIT · TypeScript

getTypeFields

OS-Guild/graphql-to-mongodb · src/common.ts:63

export function getTypeFields<T extends GraphQLType>(
    graphQLType: GraphQLFieldsType,
    filter: FieldFilter = null,
    typeResolver: TypeResolver<T> = (type: T) => type,
    ...excludedFields: string[])
    : () => FieldMap<T> {
    return () => {
        const typeFields = graphQLType.getFields();

        const generatedFields: FieldMap<T> = {};

        Object.keys(typeFields)
            .filter(key => !excludedFields.includes(key))
            .filter(key => !filter || filter(key, typeFields[key]))
            .forEach(key => {
                const field = typeFields[key];
                const type = typeResolver(field.type);
                if (type) generatedFields[key] = { ...field, type: type }

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…