graphql-js-tree
Advanced tools
Comparing version 0.2.3 to 0.2.4
@@ -1,2 +0,2 @@ | ||
import { Directive, OperationType, FieldType } from "./Spec"; | ||
import { Directive, OperationType, FieldType, Value } from "./Spec"; | ||
import { GraphQLNodeParams } from "./Types"; | ||
@@ -17,2 +17,6 @@ export interface ParserField { | ||
fromInterface?: string[]; | ||
value?: { | ||
type: Value; | ||
value?: string; | ||
}; | ||
} | ||
@@ -19,0 +23,0 @@ export interface ParserTree { |
@@ -10,4 +10,5 @@ import { TypeDefinitionDisplayStrings, TypeSystemDefinitionDisplayStrings } from "./DisplayMap"; | ||
export declare const kindAsAllTypes: (v: string) => AllTypes; | ||
export declare const kindAsValue: (v: string) => Value; | ||
export interface GraphQLNodeParams { | ||
type: AllTypes; | ||
} |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.kindAsAllTypes = exports.BuiltInDirectives = void 0; | ||
exports.kindAsValue = exports.kindAsAllTypes = exports.BuiltInDirectives = void 0; | ||
var BuiltInDirectives; | ||
@@ -12,1 +12,3 @@ (function (BuiltInDirectives) { | ||
exports.kindAsAllTypes = kindAsAllTypes; | ||
const kindAsValue = (v) => v; | ||
exports.kindAsValue = kindAsValue; |
@@ -8,3 +8,2 @@ import { ArgumentNode, DirectiveNode, FieldDefinitionNode, InputValueDefinitionNode, ObjectFieldNode, TypeDefinitionNode, TypeNode, TypeSystemDefinitionNode, TypeSystemExtensionNode, ValueNode } from 'graphql'; | ||
static resolveObjectField(f: ObjectFieldNode): ParserField[]; | ||
static resolveValue(value: ValueNode): ParserField[]; | ||
static iterateDirectives(directives: ReadonlyArray<DirectiveNode>): ParserField[]; | ||
@@ -11,0 +10,0 @@ static iterateArgumentFields(fields: ReadonlyArray<ArgumentNode>): ParserField[]; |
@@ -7,2 +7,3 @@ "use strict"; | ||
const shared_1 = require("../shared"); | ||
const extractDefaultValueString_1 = require("./extractDefaultValueString"); | ||
class TypeResolver { | ||
@@ -36,3 +37,2 @@ static resolveSingleFieldType(n) { | ||
static resolveObjectField(f) { | ||
const args = TypeResolver.resolveValue(f.value); | ||
return [ | ||
@@ -49,93 +49,11 @@ { | ||
directives: [], | ||
args, | ||
id: (0, shared_1.generateNodeId)(f.name.value, Spec_1.Instances.Argument, args), | ||
args: [], | ||
value: { | ||
type: (0, Models_1.kindAsValue)(f.value.kind), | ||
value: (0, extractDefaultValueString_1.extractDefaultValueString)(f.value), | ||
}, | ||
id: (0, shared_1.generateNodeId)(f.name.value, Spec_1.Instances.Argument, []), | ||
}, | ||
]; | ||
} | ||
static resolveValue(value) { | ||
if (value.kind === 'ListValue') { | ||
const args = value.values.map((f) => TypeResolver.resolveValue(f)).reduce((a, b) => [...a, ...b], []); | ||
return [ | ||
{ | ||
name: value.kind, | ||
directives: [], | ||
interfaces: [], | ||
args, | ||
data: { | ||
type: (0, Models_1.kindAsAllTypes)(value.kind), | ||
}, | ||
type: { | ||
fieldType: { | ||
name: (0, Models_1.kindAsAllTypes)(value.kind), | ||
type: Models_1.Options.name, | ||
}, | ||
}, | ||
id: (0, shared_1.generateNodeId)(value.kind, (0, Models_1.kindAsAllTypes)(value.kind), args), | ||
}, | ||
]; | ||
} | ||
if (value.kind === 'ObjectValue') { | ||
const args = value.fields.map((f) => TypeResolver.resolveObjectField(f)).reduce((a, b) => [...a, ...b], []); | ||
return [ | ||
{ | ||
args, | ||
name: value.kind, | ||
directives: [], | ||
interfaces: [], | ||
data: { | ||
type: (0, Models_1.kindAsAllTypes)(value.kind), | ||
}, | ||
type: { | ||
fieldType: { | ||
name: (0, Models_1.kindAsAllTypes)(value.kind), | ||
type: Models_1.Options.name, | ||
}, | ||
}, | ||
id: (0, shared_1.generateNodeId)(value.kind, (0, Models_1.kindAsAllTypes)(value.kind), args), | ||
}, | ||
]; | ||
} | ||
if (value.kind === 'EnumValue') { | ||
return [ | ||
{ | ||
name: value.value, | ||
args: [], | ||
directives: [], | ||
interfaces: [], | ||
data: { | ||
type: (0, Models_1.kindAsAllTypes)(value.kind), | ||
}, | ||
type: { | ||
fieldType: { | ||
name: value.value, | ||
type: Models_1.Options.name, | ||
}, | ||
}, | ||
id: (0, shared_1.generateNodeId)(value.value, (0, Models_1.kindAsAllTypes)(value.kind), []), | ||
}, | ||
]; | ||
} | ||
if (value.kind in Spec_1.Value) { | ||
const name = 'value' in value ? value.value.toString() : 'name' in value ? value.name.value : ''; | ||
return [ | ||
{ | ||
name, | ||
type: { | ||
fieldType: { | ||
name: value.kind, | ||
type: Models_1.Options.name, | ||
}, | ||
}, | ||
args: [], | ||
directives: [], | ||
interfaces: [], | ||
data: { | ||
type: (0, Models_1.kindAsAllTypes)(value.kind), | ||
}, | ||
id: (0, shared_1.generateNodeId)(name, (0, Models_1.kindAsAllTypes)(value.kind), []), | ||
}, | ||
]; | ||
} | ||
return []; | ||
} | ||
static iterateDirectives(directives) { | ||
@@ -164,3 +82,2 @@ return directives.map((n) => { | ||
return fields.map((n) => { | ||
const args = TypeResolver.resolveValue(n.value); | ||
return { | ||
@@ -176,4 +93,8 @@ name: n.name.value, | ||
interfaces: [], | ||
args, | ||
id: (0, shared_1.generateNodeId)(n.name.value, Spec_1.Instances.Argument, args), | ||
value: { | ||
type: (0, Models_1.kindAsValue)(n.value.kind), | ||
value: (0, extractDefaultValueString_1.extractDefaultValueString)(n.value), | ||
}, | ||
args: [], | ||
id: (0, shared_1.generateNodeId)(n.name.value, Spec_1.Instances.Argument, []), | ||
}; | ||
@@ -184,6 +105,11 @@ }); | ||
return fields.map((n) => { | ||
const args = n.defaultValue ? TypeResolver.resolveValue(n.defaultValue) : []; | ||
return Object.assign(Object.assign({ name: n.name.value }, (n.description ? { description: n.description.value } : {})), { directives: n.directives ? TypeResolver.iterateDirectives(n.directives) : [], type: { fieldType: TypeResolver.resolveSingleFieldType(n.type) }, data: { | ||
const value = n.defaultValue | ||
? { | ||
type: (0, Models_1.kindAsValue)(n.defaultValue.kind), | ||
value: (0, extractDefaultValueString_1.extractDefaultValueString)(n.defaultValue), | ||
} | ||
: undefined; | ||
return Object.assign(Object.assign(Object.assign(Object.assign({ name: n.name.value }, (n.description ? { description: n.description.value } : {})), { directives: n.directives ? TypeResolver.iterateDirectives(n.directives) : [], type: { fieldType: TypeResolver.resolveSingleFieldType(n.type) }, data: { | ||
type: Spec_1.ValueDefinition.InputValueDefinition, | ||
}, args, interfaces: [], id: (0, shared_1.generateNodeId)(n.name.value, Spec_1.ValueDefinition.InputValueDefinition, args) }); | ||
}, args: [], interfaces: [] }), (value ? { value } : {})), { id: (0, shared_1.generateNodeId)(n.name.value, Spec_1.ValueDefinition.InputValueDefinition, []) }); | ||
}); | ||
@@ -190,0 +116,0 @@ } |
import { ParserField } from "../../Models"; | ||
export declare class ArgumentTemplate { | ||
static resolve({ args, type }: ParserField, prefix?: number): string; | ||
static resolve({ type, value }: ParserField): string; | ||
} |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.ArgumentTemplate = void 0; | ||
const Models_1 = require("../../Models"); | ||
const shared_1 = require("../../shared"); | ||
const TemplateUtils_1 = require("./TemplateUtils"); | ||
class ArgumentTemplate { | ||
static resolve({ args, type }, prefix = 0) { | ||
static resolve({ type, value }) { | ||
let argsString = ''; | ||
if (args) { | ||
if (args.length) { | ||
argsString = `${args.map((a) => TemplateUtils_1.TemplateUtils.resolverForConnection(a, prefix)).join('\n')}`; | ||
} | ||
else { | ||
argsString = '[]'; | ||
} | ||
if (value === null || value === void 0 ? void 0 : value.value) { | ||
argsString = `${value.type === Models_1.Value.StringValue ? `"${value.value}"` : value.value}`; | ||
} | ||
@@ -17,0 +12,0 @@ return `${(0, shared_1.getTypeName)(type.fieldType)}: ${argsString}`; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.InputValueTemplate = void 0; | ||
const Models_1 = require("../../Models"); | ||
const TemplateUtils_1 = require("./TemplateUtils"); | ||
class InputValueTemplate { | ||
static resolve(f, prefix = 0) { | ||
var _a; | ||
let argsString = ''; | ||
if (f.args.length > 0) { | ||
argsString = ` = ${f.args.map((a) => TemplateUtils_1.TemplateUtils.resolverForConnection(a, prefix + 1)).join('\n')}`; | ||
if ((_a = f.value) === null || _a === void 0 ? void 0 : _a.value) { | ||
argsString = ` = ${f.value.type === Models_1.Value.StringValue ? `"${f.value.value}"` : f.value.value}`; | ||
} | ||
@@ -11,0 +13,0 @@ return `${TemplateUtils_1.TemplateUtils.descriptionResolver(f.description, prefix)}${'\t'.repeat(prefix)}${f.name}: ${TemplateUtils_1.TemplateUtils.resolveType(f)}${argsString}${TemplateUtils_1.TemplateUtils.resolveDirectives(f.directives)}`; |
@@ -15,3 +15,2 @@ "use strict"; | ||
const UnionMemberTemplate_1 = require("./UnionMemberTemplate"); | ||
const ValueTemplate_1 = require("./ValueTemplate"); | ||
const dedent = new RegExp('\n([\t ]*)', 'gm'); | ||
@@ -44,5 +43,2 @@ class TemplateUtils { | ||
} | ||
if (type in Models_1.Value) { | ||
return ValueTemplate_1.ValueTemplate.resolve(f); | ||
} | ||
if (type in Models_1.TypeExtension) { | ||
@@ -49,0 +45,0 @@ if (type === Models_1.TypeExtension.UnionTypeExtension) { |
{ | ||
"name": "graphql-js-tree", | ||
"version": "0.2.3", | ||
"version": "0.2.4", | ||
"private": false, | ||
@@ -5,0 +5,0 @@ "license": "MIT", |
79789
1618