@theconcurrent/simplified-entity
Advanced tools
Comparing version 0.0.15 to 0.0.16
@@ -1,8 +0,8 @@ | ||
(function(r,n){typeof exports=="object"&&typeof module!="undefined"?n(exports,require("graphql")):typeof define=="function"&&define.amd?define(["exports","graphql"],n):(r=typeof globalThis!="undefined"?globalThis:r||self,n(r["@theconcurrent/simplified-entity"]={},r.graphql))})(this,function(r,n){"use strict";const T="Collection";function N(e,i){var s;const{config:{collection:{typeNameSuffix:t},resources:a}}=i,u=t||T,c=e.name.value;return a?(s=a.find(v=>`${v.name}${u}`===c?!0:v.schemeResourceName?`${v.schemeResourceName}${u}`===c:!1))==null?void 0:s.name:c.endsWith(u)?c.replace(u,""):void 0}const b=` | ||
(function(r,n){typeof exports=="object"&&typeof module!="undefined"?n(exports,require("graphql")):typeof define=="function"&&define.amd?define(["exports","graphql"],n):(r=typeof globalThis!="undefined"?globalThis:r||self,n(r["@theconcurrent/simplified-entity"]={},r.graphql))})(this,function(r,n){"use strict";const G="Collection";function v(e,i){var o;const{config:{collection:{typeNameSuffix:t},resources:a}}=i,u=t||G,s=e.name.value;return a?(o=a.find(N=>`${N.name}${u}`===s?!0:N.schemeResourceName?`${N.schemeResourceName}${u}`===s:!1))==null?void 0:o.name:s.endsWith(u)?s.replace(u,""):void 0}const T=` | ||
directive @collection(typeName: String!, dataPath: String!, totalPath: String!) on OBJECT | ||
`,S=n.parse(b).definitions[0];function L(e,i){const{config:{collection:{totalPath:t,dataPath:a}}}=i,u=N(e,i);if(u)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:S.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"typeName"},value:{kind:n.Kind.STRING,value:u}},{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"dataPath"},value:{kind:n.Kind.STRING,value:a}},{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"totalPath"},value:{kind:n.Kind.STRING,value:t}}]}}const A=` | ||
`,S=n.parse(T).definitions[0];function b(e,i){const{config:{collection:{totalPath:t,dataPath:a}}}=i,u=v(e,i);if(u)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:S.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"typeName"},value:{kind:n.Kind.STRING,value:u}},{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"dataPath"},value:{kind:n.Kind.STRING,value:a}},{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"totalPath"},value:{kind:n.Kind.STRING,value:t}}]}}const A=` | ||
directive @label(name: String!) on FIELD_DEFINITION | OBJECT | INPUT_FIELD_DEFINITION | ARGUMENT_DEFINITION | ||
`,E=n.parse(A).definitions[0];function f(e){var i,t;if((i=e.description)!=null&&i.value)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:E.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"name"},value:{kind:n.Kind.STRING,value:((t=e.description)==null?void 0:t.value)||""}}]}}const h=` | ||
directive @model(name: String!) on OBJECT | ||
`,p=n.parse(h).definitions[0];function K(e,i){var c;const{config:{resources:t}}=i,a=N(e,i),u=e.name.value;return t?(c=t==null?void 0:t.find(s=>s.name===u||s.schemeResourceName===u))==null?void 0:c.name:u==="Mutation"||u==="Query"||u.endsWith("Payload")||a?void 0:u}function O(e,i){const t=K(e,i);if(t)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:p.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"name"},value:{kind:n.Kind.STRING,value:t}}]}}function M(e,i){return n.visit(e,{Document:{enter(a){return{...a,definitions:[E,p,S,...a.definitions]}}},FieldDefinition(a){return{...a,directives:[...a.directives||[],f(a)].filter(u=>u)}},ObjectTypeDefinition(a){return{...a,directives:[...a.directives||[],f(a),O(a,i),L(a,i)].filter(u=>u)}},InputValueDefinition(a){return{...a,directives:[...a.directives||[],f(a)].filter(u=>u)}}})}function m(e){if(e instanceof n.GraphQLScalarType)return{typeName:e.name,nonNull:!1,list:!1,enum:!1,kind:"Scalar"};if(e instanceof n.GraphQLObjectType)return{typeName:e.name,nonNull:!1,list:!1,enum:!1,kind:"Object"};if(e instanceof n.GraphQLNonNull)return{...m(e.ofType),nonNull:!0};if(e instanceof n.GraphQLList){const i=m(e.ofType);return{...i,list:!0,nonNull:!1,listNonNull:!!i.nonNull}}if(e instanceof n.GraphQLEnumType)return{typeName:e.name,nonNull:!1,list:!1,enum:!0,kind:"Enum"};if(e instanceof n.GraphQLInputObjectType)return{typeName:e.name,nonNull:!1,list:!1,enum:!0,kind:"InputObject"};if(e instanceof n.GraphQLUnionType)return{possibleTypes:e.getTypes().map(i=>i.name),typeName:e.name,nonNull:!1,list:!1,enum:!1,kind:"Union"};if(e instanceof n.GraphQLInterfaceType)return{typeName:e.name,nonNull:!1,list:!1,enum:!1,kind:"Interface"};throw new Error(`Can't handle type: ${e.constructor.name} : toSimple`)}function R(e){return e.args!==void 0}function d(e){switch(e.kind){case"StringValue":case"BooleanValue":case"EnumValue":return e.value;case"IntValue":case"FloatValue":return Number(e.value);case"ListValue":return e.values.map(d);case"ObjectValue":const i={};return e.fields.forEach(t=>{i[t.name.value]=d(t.value)}),i;case"Variable":return e.name.value;case"NullValue":default:return null}}function I(e){const i=e.arguments?e.arguments.reduce((a,u)=>({...a,[u.name.value]:d(u.value)}),{}):{};return{name:e.name.value,args:i}}function k(e){var i,t,a;return{name:e.name,description:e.description,directives:((t=(i=e==null?void 0:e.astNode)==null?void 0:i.directives)==null?void 0:t.map(I))||void 0,...m(e.type),...R(e)?{args:(a=e.args)==null?void 0:a.map(k)}:{}}}function l(e){return Object.values(e.getFields()).map(k)}function D(e){return e.map(i=>({kind:i.constructor.name,name:i.name,typeName:i.name}))}function o(e){var i,t;return{typeName:e.name,description:e.description,directives:((t=(i=e==null?void 0:e.astNode)==null?void 0:i.directives)==null?void 0:t.map(I))||void 0}}function j(e){return e instanceof n.GraphQLScalarType?{kind:"Scalar",...o(e)}:null}function Q(e){return e instanceof n.GraphQLObjectType?{kind:"Object",...o(e),fields:l(e)}:null}function V(e){return e instanceof n.GraphQLInterfaceType?{kind:"Interface",...o(e),fields:l(e),possibleTypes:D(e.getInterfaces())}:null}function y(e){return e instanceof n.GraphQLUnionType?{kind:"Union",...o(e),possibleTypes:D(e.getTypes())}:null}function F(e){return e instanceof n.GraphQLEnumType?{kind:"Enum",...o(e),enumValues:e.getValues().map(i=>({name:i.name,description:i.description}))}:null}function U(e){return e instanceof n.GraphQLInputObjectType?{kind:"InputObject",...o(e),inputFields:l(e)}:null}function P(e){return j(e)||Q(e)||V(e)||y(e)||F(e)||U(e)||null}function C(e){return{...e,graphqlSchema:n.buildSchema(e.sdl)}}function B(e){const i=n.buildASTSchema(e);return Object.values(i.getTypeMap()).map(P).filter(t=>!!t)}function G(e){const i=M(n.parse(n.printSchema(e.graphqlSchema)),e);return{simplifiedEntities:B(i),graphqlSchema:e.graphqlSchema,injectedSchemaSDL:n.print(i)}}async function $(e){await Promise.resolve();const{graphqlSchema:i}=C(e),{simplifiedEntities:t,injectedSchemaSDL:a}=G({graphqlSchema:i,...e});return{simplifiedEntities:t,graphqlSchema:i,injectedSchemaSDL:a}}r.toSimplifiedEntities=$,r.toSimplifiedEntitiesFromGraphqlSchema=G,Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})}); | ||
`,p=n.parse(h).definitions[0];function K(e,i){var s;const{config:{resources:t}}=i,a=v(e,i),u=e.name.value;return t?(s=t==null?void 0:t.find(o=>o.name===u||o.schemeResourceName===u))==null?void 0:s.name:u==="Mutation"||u==="Query"||u.endsWith("Payload")||a?void 0:u}function O(e,i){const t=K(e,i);if(t)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:p.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"name"},value:{kind:n.Kind.STRING,value:t}}]}}function M(e,i){return n.visit(e,{Document:{enter(a){return{...a,definitions:[E,p,S,...a.definitions]}}},FieldDefinition(a){return{...a,directives:[...a.directives||[],f(a)].filter(u=>u)}},ObjectTypeDefinition(a){return{...a,directives:[...a.directives||[],f(a),O(a,i),b(a,i)].filter(u=>u)}},InputValueDefinition(a){return{...a,directives:[...a.directives||[],f(a)].filter(u=>u)}}})}function m(e){if(e instanceof n.GraphQLScalarType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!1,kind:"Scalar"};if(e instanceof n.GraphQLObjectType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!1,kind:"Object"};if(e instanceof n.GraphQLNonNull)return{...m(e.ofType),isNonNull:!0};if(e instanceof n.GraphQLList){const i=m(e.ofType);return{...i,isList:!0,isNonNull:!1,isListNonNull:!!i.isNonNull}}if(e instanceof n.GraphQLEnumType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!0,kind:"Enum"};if(e instanceof n.GraphQLInputObjectType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!0,kind:"InputObject"};if(e instanceof n.GraphQLUnionType)return{possibleTypes:e.getTypes().map(i=>i.name),typeName:e.name,isNonNull:!1,isList:!1,isEnum:!1,kind:"Union"};if(e instanceof n.GraphQLInterfaceType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!1,kind:"Interface"};throw new Error(`Can't handle type: ${e.constructor.name} : toSimple`)}function R(e){return e.args!==void 0}function d(e){switch(e.kind){case"StringValue":case"BooleanValue":case"EnumValue":return e.value;case"IntValue":case"FloatValue":return Number(e.value);case"ListValue":return e.values.map(d);case"ObjectValue":const i={};return e.fields.forEach(t=>{i[t.name.value]=d(t.value)}),i;case"Variable":return e.name.value;case"NullValue":default:return null}}function I(e){const i=e.arguments?e.arguments.reduce((a,u)=>({...a,[u.name.value]:d(u.value)}),{}):{};return{name:e.name.value,args:i}}function k(e){var i,t,a;return{name:e.name,description:e.description,directives:((t=(i=e==null?void 0:e.astNode)==null?void 0:i.directives)==null?void 0:t.map(I))||void 0,...m(e.type),...R(e)?{args:(a=e.args)==null?void 0:a.map(k)}:{}}}function l(e){return Object.values(e.getFields()).map(k)}function L(e){return e.map(i=>({kind:i.constructor.name,name:i.name,typeName:i.name}))}function c(e){var i,t;return{typeName:e.name,description:e.description,directives:((t=(i=e==null?void 0:e.astNode)==null?void 0:i.directives)==null?void 0:t.map(I))||void 0}}function j(e){return e instanceof n.GraphQLScalarType?{kind:"Scalar",...c(e)}:null}function Q(e){return e instanceof n.GraphQLObjectType?{kind:"Object",...c(e),fields:l(e)}:null}function V(e){return e instanceof n.GraphQLInterfaceType?{kind:"Interface",...c(e),fields:l(e),possibleTypes:L(e.getInterfaces())}:null}function y(e){return e instanceof n.GraphQLUnionType?{kind:"Union",...c(e),possibleTypes:L(e.getTypes())}:null}function F(e){return e instanceof n.GraphQLEnumType?{kind:"Enum",...c(e),enumValues:e.getValues().map(i=>({name:i.name,description:i.description}))}:null}function U(e){return e instanceof n.GraphQLInputObjectType?{kind:"InputObject",...c(e),inputFields:l(e)}:null}function P(e){return j(e)||Q(e)||V(e)||y(e)||F(e)||U(e)||null}function C(e){return{...e,graphqlSchema:n.buildSchema(e.sdl)}}function B(e){const i=n.buildASTSchema(e);return Object.values(i.getTypeMap()).map(P).filter(t=>!!t)}function D(e){const i=M(n.parse(n.printSchema(e.graphqlSchema)),e);return{simplifiedEntities:B(i),graphqlSchema:e.graphqlSchema,injectedSchemaSDL:n.print(i)}}async function $(e){await Promise.resolve();const{graphqlSchema:i}=C(e),{simplifiedEntities:t,injectedSchemaSDL:a}=D({graphqlSchema:i,...e});return{simplifiedEntities:t,graphqlSchema:i,injectedSchemaSDL:a}}r.toSimplifiedEntities=$,r.toSimplifiedEntitiesFromGraphqlSchema=D,Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})}); | ||
//# sourceMappingURL=index.umd.js.map |
@@ -1,20 +0,20 @@ | ||
import { parse as s, Kind as r, visit as T, GraphQLScalarType as N, GraphQLObjectType as p, GraphQLInterfaceType as S, GraphQLUnionType as h, GraphQLEnumType as E, GraphQLInputObjectType as I, GraphQLNonNull as M, GraphQLList as O, buildSchema as V, buildASTSchema as j, printSchema as F, print as Q } from "graphql"; | ||
import { parse as o, Kind as r, visit as T, GraphQLScalarType as v, GraphQLObjectType as p, GraphQLInterfaceType as S, GraphQLUnionType as h, GraphQLEnumType as E, GraphQLInputObjectType as I, GraphQLNonNull as M, GraphQLList as O, buildSchema as V, buildASTSchema as j, printSchema as F, print as Q } from "graphql"; | ||
const U = "Collection"; | ||
function k(e, n) { | ||
var o; | ||
var s; | ||
const { | ||
config: { | ||
collection: { typeNameSuffix: t }, | ||
resources: i | ||
collection: { typeNameSuffix: i }, | ||
resources: t | ||
} | ||
} = n, a = t || U, u = e.name.value; | ||
return i ? (o = i.find((l) => `${l.name}${a}` === u ? !0 : l.schemeResourceName ? `${l.schemeResourceName}${a}` === u : !1)) == null ? void 0 : o.name : u.endsWith(a) ? u.replace(a, "") : void 0; | ||
} = n, a = i || U, u = e.name.value; | ||
return t ? (s = t.find((l) => `${l.name}${a}` === u ? !0 : l.schemeResourceName ? `${l.schemeResourceName}${a}` === u : !1)) == null ? void 0 : s.name : u.endsWith(a) ? u.replace(a, "") : void 0; | ||
} | ||
const P = ` | ||
directive @collection(typeName: String!, dataPath: String!, totalPath: String!) on OBJECT | ||
`, D = s(P).definitions[0]; | ||
`, D = o(P).definitions[0]; | ||
function C(e, n) { | ||
const { | ||
config: { | ||
collection: { totalPath: t, dataPath: i } | ||
collection: { totalPath: i, dataPath: t } | ||
} | ||
@@ -35,3 +35,3 @@ } = n, a = k(e, n); | ||
name: { kind: r.NAME, value: "dataPath" }, | ||
value: { kind: r.STRING, value: i } | ||
value: { kind: r.STRING, value: t } | ||
}, | ||
@@ -41,3 +41,3 @@ { | ||
name: { kind: r.NAME, value: "totalPath" }, | ||
value: { kind: r.STRING, value: t } | ||
value: { kind: r.STRING, value: i } | ||
} | ||
@@ -49,9 +49,9 @@ ] | ||
directive @label(name: String!) on FIELD_DEFINITION | OBJECT | INPUT_FIELD_DEFINITION | ARGUMENT_DEFINITION | ||
`, b = s(y).definitions[0]; | ||
`, L = o(y).definitions[0]; | ||
function m(e) { | ||
var n, t; | ||
var n, i; | ||
if ((n = e.description) != null && n.value) | ||
return { | ||
kind: r.DIRECTIVE, | ||
name: { kind: r.NAME, value: b.name.value }, | ||
name: { kind: r.NAME, value: L.name.value }, | ||
arguments: [ | ||
@@ -61,3 +61,3 @@ { | ||
name: { kind: r.NAME, value: "name" }, | ||
value: { kind: r.STRING, value: ((t = e.description) == null ? void 0 : t.value) || "" } | ||
value: { kind: r.STRING, value: ((i = e.description) == null ? void 0 : i.value) || "" } | ||
} | ||
@@ -69,18 +69,18 @@ ] | ||
directive @model(name: String!) on OBJECT | ||
`, A = s(B).definitions[0]; | ||
`, b = o(B).definitions[0]; | ||
function $(e, n) { | ||
var u; | ||
const { | ||
config: { resources: t } | ||
} = n, i = k(e, n), a = e.name.value; | ||
return t ? (u = t == null ? void 0 : t.find( | ||
(o) => o.name === a || o.schemeResourceName === a | ||
)) == null ? void 0 : u.name : a === "Mutation" || a === "Query" || a.endsWith("Payload") || i ? void 0 : a; | ||
config: { resources: i } | ||
} = n, t = k(e, n), a = e.name.value; | ||
return i ? (u = i == null ? void 0 : i.find( | ||
(s) => s.name === a || s.schemeResourceName === a | ||
)) == null ? void 0 : u.name : a === "Mutation" || a === "Query" || a.endsWith("Payload") || t ? void 0 : a; | ||
} | ||
function w(e, n) { | ||
const t = $(e, n); | ||
if (t) | ||
const i = $(e, n); | ||
if (i) | ||
return { | ||
kind: r.DIRECTIVE, | ||
name: { kind: r.NAME, value: A.name.value }, | ||
name: { kind: r.NAME, value: b.name.value }, | ||
arguments: [ | ||
@@ -90,3 +90,3 @@ { | ||
name: { kind: r.NAME, value: "name" }, | ||
value: { kind: r.STRING, value: t } | ||
value: { kind: r.STRING, value: i } | ||
} | ||
@@ -99,10 +99,10 @@ ] | ||
Document: { | ||
enter(i) { | ||
enter(t) { | ||
return { | ||
...i, | ||
...t, | ||
definitions: [ | ||
L, | ||
b, | ||
A, | ||
D, | ||
...i.definitions | ||
...t.definitions | ||
] | ||
@@ -112,23 +112,23 @@ }; | ||
}, | ||
FieldDefinition(i) { | ||
FieldDefinition(t) { | ||
return { | ||
...i, | ||
directives: [...i.directives || [], m(i)].filter((a) => a) | ||
...t, | ||
directives: [...t.directives || [], m(t)].filter((a) => a) | ||
}; | ||
}, | ||
ObjectTypeDefinition(i) { | ||
ObjectTypeDefinition(t) { | ||
return { | ||
...i, | ||
...t, | ||
directives: [ | ||
...i.directives || [], | ||
m(i), | ||
w(i, n), | ||
C(i, n) | ||
...t.directives || [], | ||
m(t), | ||
w(t, n), | ||
C(t, n) | ||
].filter((a) => a) | ||
}; | ||
}, | ||
InputValueDefinition(i) { | ||
InputValueDefinition(t) { | ||
return { | ||
...i, | ||
directives: [...i.directives || [], m(i)].filter((a) => a) | ||
...t, | ||
directives: [...t.directives || [], m(t)].filter((a) => a) | ||
}; | ||
@@ -139,20 +139,32 @@ } | ||
function f(e) { | ||
if (e instanceof N) | ||
return { typeName: e.name, nonNull: !1, list: !1, enum: !1, kind: "Scalar" }; | ||
if (e instanceof v) | ||
return { | ||
typeName: e.name, | ||
isNonNull: !1, | ||
isList: !1, | ||
isEnum: !1, | ||
kind: "Scalar" | ||
}; | ||
if (e instanceof p) | ||
return { typeName: e.name, nonNull: !1, list: !1, enum: !1, kind: "Object" }; | ||
return { | ||
typeName: e.name, | ||
isNonNull: !1, | ||
isList: !1, | ||
isEnum: !1, | ||
kind: "Object" | ||
}; | ||
if (e instanceof M) | ||
return { ...f(e.ofType), nonNull: !0 }; | ||
return { ...f(e.ofType), isNonNull: !0 }; | ||
if (e instanceof O) { | ||
const n = f(e.ofType); | ||
return { ...n, list: !0, nonNull: !1, listNonNull: !!n.nonNull }; | ||
return { ...n, isList: !0, isNonNull: !1, isListNonNull: !!n.isNonNull }; | ||
} | ||
if (e instanceof E) | ||
return { typeName: e.name, nonNull: !1, list: !1, enum: !0, kind: "Enum" }; | ||
return { typeName: e.name, isNonNull: !1, isList: !1, isEnum: !0, kind: "Enum" }; | ||
if (e instanceof I) | ||
return { | ||
typeName: e.name, | ||
nonNull: !1, | ||
list: !1, | ||
enum: !0, | ||
isNonNull: !1, | ||
isList: !1, | ||
isEnum: !0, | ||
kind: "InputObject" | ||
@@ -164,5 +176,5 @@ }; | ||
typeName: e.name, | ||
nonNull: !1, | ||
list: !1, | ||
enum: !1, | ||
isNonNull: !1, | ||
isList: !1, | ||
isEnum: !1, | ||
kind: "Union" | ||
@@ -173,5 +185,5 @@ }; | ||
typeName: e.name, | ||
nonNull: !1, | ||
list: !1, | ||
enum: !1, | ||
isNonNull: !1, | ||
isList: !1, | ||
isEnum: !1, | ||
kind: "Interface" | ||
@@ -197,4 +209,4 @@ }; | ||
const n = {}; | ||
return e.fields.forEach((t) => { | ||
n[t.name.value] = d(t.value); | ||
return e.fields.forEach((i) => { | ||
n[i.name.value] = d(i.value); | ||
}), n; | ||
@@ -208,5 +220,5 @@ case "Variable": | ||
} | ||
function G(e) { | ||
function A(e) { | ||
const n = e.arguments ? e.arguments.reduce( | ||
(i, a) => ({ ...i, [a.name.value]: d(a.value) }), | ||
(t, a) => ({ ...t, [a.name.value]: d(a.value) }), | ||
{} | ||
@@ -219,14 +231,14 @@ ) : {}; | ||
} | ||
function L(e) { | ||
var n, t, i; | ||
function G(e) { | ||
var n, i, t; | ||
return { | ||
name: e.name, | ||
description: e.description, | ||
directives: ((t = (n = e == null ? void 0 : e.astNode) == null ? void 0 : n.directives) == null ? void 0 : t.map(G)) || void 0, | ||
directives: ((i = (n = e == null ? void 0 : e.astNode) == null ? void 0 : n.directives) == null ? void 0 : i.map(A)) || void 0, | ||
...f(e.type), | ||
..._(e) ? { args: (i = e.args) == null ? void 0 : i.map(L) } : {} | ||
..._(e) ? { args: (t = e.args) == null ? void 0 : t.map(G) } : {} | ||
}; | ||
} | ||
function v(e) { | ||
return Object.values(e.getFields()).map(L); | ||
function N(e) { | ||
return Object.values(e.getFields()).map(G); | ||
} | ||
@@ -241,11 +253,11 @@ function R(e) { | ||
function c(e) { | ||
var n, t; | ||
var n, i; | ||
return { | ||
typeName: e.name, | ||
description: e.description, | ||
directives: ((t = (n = e == null ? void 0 : e.astNode) == null ? void 0 : n.directives) == null ? void 0 : t.map(G)) || void 0 | ||
directives: ((i = (n = e == null ? void 0 : e.astNode) == null ? void 0 : n.directives) == null ? void 0 : i.map(A)) || void 0 | ||
}; | ||
} | ||
function J(e) { | ||
return e instanceof N ? { | ||
return e instanceof v ? { | ||
kind: "Scalar", | ||
@@ -259,3 +271,3 @@ ...c(e) | ||
...c(e), | ||
fields: v(e) | ||
fields: N(e) | ||
} : null; | ||
@@ -267,3 +279,3 @@ } | ||
...c(e), | ||
fields: v(e), | ||
fields: N(e), | ||
possibleTypes: R(e.getInterfaces()) | ||
@@ -290,3 +302,3 @@ } : null; | ||
...c(e), | ||
inputFields: v(e) | ||
inputFields: N(e) | ||
} : null; | ||
@@ -302,6 +314,6 @@ } | ||
const n = j(e); | ||
return Object.values(n.getTypeMap()).map(Y).filter((t) => !!t); | ||
return Object.values(n.getTypeMap()).map(Y).filter((i) => !!i); | ||
} | ||
function q(e) { | ||
const n = x(s(F(e.graphqlSchema)), e); | ||
const n = x(o(F(e.graphqlSchema)), e); | ||
return { | ||
@@ -315,3 +327,3 @@ simplifiedEntities: g(n), | ||
await Promise.resolve(); | ||
const { graphqlSchema: n } = Z(e), { simplifiedEntities: t, injectedSchemaSDL: i } = q({ | ||
const { graphqlSchema: n } = Z(e), { simplifiedEntities: i, injectedSchemaSDL: t } = q({ | ||
graphqlSchema: n, | ||
@@ -321,5 +333,5 @@ ...e | ||
return { | ||
simplifiedEntities: t, | ||
simplifiedEntities: i, | ||
graphqlSchema: n, | ||
injectedSchemaSDL: i | ||
injectedSchemaSDL: t | ||
}; | ||
@@ -326,0 +338,0 @@ } |
@@ -1,8 +0,8 @@ | ||
(function(r,n){typeof exports=="object"&&typeof module!="undefined"?n(exports,require("graphql")):typeof define=="function"&&define.amd?define(["exports","graphql"],n):(r=typeof globalThis!="undefined"?globalThis:r||self,n(r["@theconcurrent/simplified-entity"]={},r.graphql))})(this,function(r,n){"use strict";const T="Collection";function N(e,i){var s;const{config:{collection:{typeNameSuffix:t},resources:a}}=i,u=t||T,c=e.name.value;return a?(s=a.find(v=>`${v.name}${u}`===c?!0:v.schemeResourceName?`${v.schemeResourceName}${u}`===c:!1))==null?void 0:s.name:c.endsWith(u)?c.replace(u,""):void 0}const b=` | ||
(function(r,n){typeof exports=="object"&&typeof module!="undefined"?n(exports,require("graphql")):typeof define=="function"&&define.amd?define(["exports","graphql"],n):(r=typeof globalThis!="undefined"?globalThis:r||self,n(r["@theconcurrent/simplified-entity"]={},r.graphql))})(this,function(r,n){"use strict";const G="Collection";function v(e,i){var o;const{config:{collection:{typeNameSuffix:t},resources:a}}=i,u=t||G,s=e.name.value;return a?(o=a.find(N=>`${N.name}${u}`===s?!0:N.schemeResourceName?`${N.schemeResourceName}${u}`===s:!1))==null?void 0:o.name:s.endsWith(u)?s.replace(u,""):void 0}const T=` | ||
directive @collection(typeName: String!, dataPath: String!, totalPath: String!) on OBJECT | ||
`,S=n.parse(b).definitions[0];function L(e,i){const{config:{collection:{totalPath:t,dataPath:a}}}=i,u=N(e,i);if(u)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:S.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"typeName"},value:{kind:n.Kind.STRING,value:u}},{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"dataPath"},value:{kind:n.Kind.STRING,value:a}},{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"totalPath"},value:{kind:n.Kind.STRING,value:t}}]}}const A=` | ||
`,S=n.parse(T).definitions[0];function b(e,i){const{config:{collection:{totalPath:t,dataPath:a}}}=i,u=v(e,i);if(u)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:S.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"typeName"},value:{kind:n.Kind.STRING,value:u}},{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"dataPath"},value:{kind:n.Kind.STRING,value:a}},{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"totalPath"},value:{kind:n.Kind.STRING,value:t}}]}}const A=` | ||
directive @label(name: String!) on FIELD_DEFINITION | OBJECT | INPUT_FIELD_DEFINITION | ARGUMENT_DEFINITION | ||
`,E=n.parse(A).definitions[0];function f(e){var i,t;if((i=e.description)!=null&&i.value)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:E.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"name"},value:{kind:n.Kind.STRING,value:((t=e.description)==null?void 0:t.value)||""}}]}}const h=` | ||
directive @model(name: String!) on OBJECT | ||
`,p=n.parse(h).definitions[0];function K(e,i){var c;const{config:{resources:t}}=i,a=N(e,i),u=e.name.value;return t?(c=t==null?void 0:t.find(s=>s.name===u||s.schemeResourceName===u))==null?void 0:c.name:u==="Mutation"||u==="Query"||u.endsWith("Payload")||a?void 0:u}function O(e,i){const t=K(e,i);if(t)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:p.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"name"},value:{kind:n.Kind.STRING,value:t}}]}}function M(e,i){return n.visit(e,{Document:{enter(a){return{...a,definitions:[E,p,S,...a.definitions]}}},FieldDefinition(a){return{...a,directives:[...a.directives||[],f(a)].filter(u=>u)}},ObjectTypeDefinition(a){return{...a,directives:[...a.directives||[],f(a),O(a,i),L(a,i)].filter(u=>u)}},InputValueDefinition(a){return{...a,directives:[...a.directives||[],f(a)].filter(u=>u)}}})}function m(e){if(e instanceof n.GraphQLScalarType)return{typeName:e.name,nonNull:!1,list:!1,enum:!1,kind:"Scalar"};if(e instanceof n.GraphQLObjectType)return{typeName:e.name,nonNull:!1,list:!1,enum:!1,kind:"Object"};if(e instanceof n.GraphQLNonNull)return{...m(e.ofType),nonNull:!0};if(e instanceof n.GraphQLList){const i=m(e.ofType);return{...i,list:!0,nonNull:!1,listNonNull:!!i.nonNull}}if(e instanceof n.GraphQLEnumType)return{typeName:e.name,nonNull:!1,list:!1,enum:!0,kind:"Enum"};if(e instanceof n.GraphQLInputObjectType)return{typeName:e.name,nonNull:!1,list:!1,enum:!0,kind:"InputObject"};if(e instanceof n.GraphQLUnionType)return{possibleTypes:e.getTypes().map(i=>i.name),typeName:e.name,nonNull:!1,list:!1,enum:!1,kind:"Union"};if(e instanceof n.GraphQLInterfaceType)return{typeName:e.name,nonNull:!1,list:!1,enum:!1,kind:"Interface"};throw new Error(`Can't handle type: ${e.constructor.name} : toSimple`)}function R(e){return e.args!==void 0}function d(e){switch(e.kind){case"StringValue":case"BooleanValue":case"EnumValue":return e.value;case"IntValue":case"FloatValue":return Number(e.value);case"ListValue":return e.values.map(d);case"ObjectValue":const i={};return e.fields.forEach(t=>{i[t.name.value]=d(t.value)}),i;case"Variable":return e.name.value;case"NullValue":default:return null}}function I(e){const i=e.arguments?e.arguments.reduce((a,u)=>({...a,[u.name.value]:d(u.value)}),{}):{};return{name:e.name.value,args:i}}function k(e){var i,t,a;return{name:e.name,description:e.description,directives:((t=(i=e==null?void 0:e.astNode)==null?void 0:i.directives)==null?void 0:t.map(I))||void 0,...m(e.type),...R(e)?{args:(a=e.args)==null?void 0:a.map(k)}:{}}}function l(e){return Object.values(e.getFields()).map(k)}function D(e){return e.map(i=>({kind:i.constructor.name,name:i.name,typeName:i.name}))}function o(e){var i,t;return{typeName:e.name,description:e.description,directives:((t=(i=e==null?void 0:e.astNode)==null?void 0:i.directives)==null?void 0:t.map(I))||void 0}}function j(e){return e instanceof n.GraphQLScalarType?{kind:"Scalar",...o(e)}:null}function Q(e){return e instanceof n.GraphQLObjectType?{kind:"Object",...o(e),fields:l(e)}:null}function V(e){return e instanceof n.GraphQLInterfaceType?{kind:"Interface",...o(e),fields:l(e),possibleTypes:D(e.getInterfaces())}:null}function y(e){return e instanceof n.GraphQLUnionType?{kind:"Union",...o(e),possibleTypes:D(e.getTypes())}:null}function F(e){return e instanceof n.GraphQLEnumType?{kind:"Enum",...o(e),enumValues:e.getValues().map(i=>({name:i.name,description:i.description}))}:null}function U(e){return e instanceof n.GraphQLInputObjectType?{kind:"InputObject",...o(e),inputFields:l(e)}:null}function P(e){return j(e)||Q(e)||V(e)||y(e)||F(e)||U(e)||null}function C(e){return{...e,graphqlSchema:n.buildSchema(e.sdl)}}function B(e){const i=n.buildASTSchema(e);return Object.values(i.getTypeMap()).map(P).filter(t=>!!t)}function G(e){const i=M(n.parse(n.printSchema(e.graphqlSchema)),e);return{simplifiedEntities:B(i),graphqlSchema:e.graphqlSchema,injectedSchemaSDL:n.print(i)}}async function $(e){await Promise.resolve();const{graphqlSchema:i}=C(e),{simplifiedEntities:t,injectedSchemaSDL:a}=G({graphqlSchema:i,...e});return{simplifiedEntities:t,graphqlSchema:i,injectedSchemaSDL:a}}r.toSimplifiedEntities=$,r.toSimplifiedEntitiesFromGraphqlSchema=G,Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})}); | ||
`,p=n.parse(h).definitions[0];function K(e,i){var s;const{config:{resources:t}}=i,a=v(e,i),u=e.name.value;return t?(s=t==null?void 0:t.find(o=>o.name===u||o.schemeResourceName===u))==null?void 0:s.name:u==="Mutation"||u==="Query"||u.endsWith("Payload")||a?void 0:u}function O(e,i){const t=K(e,i);if(t)return{kind:n.Kind.DIRECTIVE,name:{kind:n.Kind.NAME,value:p.name.value},arguments:[{kind:n.Kind.ARGUMENT,name:{kind:n.Kind.NAME,value:"name"},value:{kind:n.Kind.STRING,value:t}}]}}function M(e,i){return n.visit(e,{Document:{enter(a){return{...a,definitions:[E,p,S,...a.definitions]}}},FieldDefinition(a){return{...a,directives:[...a.directives||[],f(a)].filter(u=>u)}},ObjectTypeDefinition(a){return{...a,directives:[...a.directives||[],f(a),O(a,i),b(a,i)].filter(u=>u)}},InputValueDefinition(a){return{...a,directives:[...a.directives||[],f(a)].filter(u=>u)}}})}function m(e){if(e instanceof n.GraphQLScalarType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!1,kind:"Scalar"};if(e instanceof n.GraphQLObjectType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!1,kind:"Object"};if(e instanceof n.GraphQLNonNull)return{...m(e.ofType),isNonNull:!0};if(e instanceof n.GraphQLList){const i=m(e.ofType);return{...i,isList:!0,isNonNull:!1,isListNonNull:!!i.isNonNull}}if(e instanceof n.GraphQLEnumType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!0,kind:"Enum"};if(e instanceof n.GraphQLInputObjectType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!0,kind:"InputObject"};if(e instanceof n.GraphQLUnionType)return{possibleTypes:e.getTypes().map(i=>i.name),typeName:e.name,isNonNull:!1,isList:!1,isEnum:!1,kind:"Union"};if(e instanceof n.GraphQLInterfaceType)return{typeName:e.name,isNonNull:!1,isList:!1,isEnum:!1,kind:"Interface"};throw new Error(`Can't handle type: ${e.constructor.name} : toSimple`)}function R(e){return e.args!==void 0}function d(e){switch(e.kind){case"StringValue":case"BooleanValue":case"EnumValue":return e.value;case"IntValue":case"FloatValue":return Number(e.value);case"ListValue":return e.values.map(d);case"ObjectValue":const i={};return e.fields.forEach(t=>{i[t.name.value]=d(t.value)}),i;case"Variable":return e.name.value;case"NullValue":default:return null}}function I(e){const i=e.arguments?e.arguments.reduce((a,u)=>({...a,[u.name.value]:d(u.value)}),{}):{};return{name:e.name.value,args:i}}function k(e){var i,t,a;return{name:e.name,description:e.description,directives:((t=(i=e==null?void 0:e.astNode)==null?void 0:i.directives)==null?void 0:t.map(I))||void 0,...m(e.type),...R(e)?{args:(a=e.args)==null?void 0:a.map(k)}:{}}}function l(e){return Object.values(e.getFields()).map(k)}function L(e){return e.map(i=>({kind:i.constructor.name,name:i.name,typeName:i.name}))}function c(e){var i,t;return{typeName:e.name,description:e.description,directives:((t=(i=e==null?void 0:e.astNode)==null?void 0:i.directives)==null?void 0:t.map(I))||void 0}}function j(e){return e instanceof n.GraphQLScalarType?{kind:"Scalar",...c(e)}:null}function Q(e){return e instanceof n.GraphQLObjectType?{kind:"Object",...c(e),fields:l(e)}:null}function V(e){return e instanceof n.GraphQLInterfaceType?{kind:"Interface",...c(e),fields:l(e),possibleTypes:L(e.getInterfaces())}:null}function y(e){return e instanceof n.GraphQLUnionType?{kind:"Union",...c(e),possibleTypes:L(e.getTypes())}:null}function F(e){return e instanceof n.GraphQLEnumType?{kind:"Enum",...c(e),enumValues:e.getValues().map(i=>({name:i.name,description:i.description}))}:null}function U(e){return e instanceof n.GraphQLInputObjectType?{kind:"InputObject",...c(e),inputFields:l(e)}:null}function P(e){return j(e)||Q(e)||V(e)||y(e)||F(e)||U(e)||null}function C(e){return{...e,graphqlSchema:n.buildSchema(e.sdl)}}function B(e){const i=n.buildASTSchema(e);return Object.values(i.getTypeMap()).map(P).filter(t=>!!t)}function D(e){const i=M(n.parse(n.printSchema(e.graphqlSchema)),e);return{simplifiedEntities:B(i),graphqlSchema:e.graphqlSchema,injectedSchemaSDL:n.print(i)}}async function $(e){await Promise.resolve();const{graphqlSchema:i}=C(e),{simplifiedEntities:t,injectedSchemaSDL:a}=D({graphqlSchema:i,...e});return{simplifiedEntities:t,graphqlSchema:i,injectedSchemaSDL:a}}r.toSimplifiedEntities=$,r.toSimplifiedEntitiesFromGraphqlSchema=D,Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})}); | ||
//# sourceMappingURL=index.umd.js.map |
@@ -49,6 +49,6 @@ /// <reference types="react" /> | ||
kind: 'Object' | 'Scalar' | 'Enum' | 'InputObject' | 'Union' | 'Interface'; | ||
nonNull: boolean; | ||
listNonNull?: boolean; | ||
list: boolean; | ||
enum: boolean; | ||
isNonNull: boolean; | ||
isListNonNull?: boolean; | ||
isList: boolean; | ||
isEnum: boolean; | ||
possibleTypes?: Array<string>; | ||
@@ -75,6 +75,2 @@ args?: Array<SimplifiedField>; | ||
}; | ||
type Directive = { | ||
name: string; | ||
args: Record<string, unknown> | undefined; | ||
}; | ||
type Field = { | ||
@@ -95,15 +91,5 @@ name: string; | ||
name: string; | ||
typeName: string; | ||
description: string; | ||
kind: string; | ||
isList: boolean; | ||
isNonNull: boolean; | ||
isScalar: boolean; | ||
enumValues: Array<{ | ||
name: string; | ||
description: string; | ||
}>; | ||
label: string | undefined; | ||
directives: Array<Directive> | undefined; | ||
inputFields: VariableDefinitionObject[]; | ||
variable: ScalarSimplifiedEntityType | InputObjectSimplifiedEntityType | EnumSimplifiedEntityType; | ||
}; | ||
@@ -114,3 +100,3 @@ export type FieldObject = { | ||
description: string | undefined; | ||
kind: 'Scalar' | 'Object' | 'Enum'; | ||
kind: 'Scalar' | 'Object' | 'Enum' | 'InputObject'; | ||
isList: boolean; | ||
@@ -117,0 +103,0 @@ isNonNull: boolean; |
{ | ||
"name": "@theconcurrent/simplified-entity", | ||
"version": "0.0.15", | ||
"version": "0.0.16", | ||
"main": "./dist/index.umd.js", | ||
@@ -32,3 +32,3 @@ "module": "./dist/index.es.js", | ||
}, | ||
"gitHead": "0be5547c52194a6f3163980362213f38446db02f" | ||
"gitHead": "65f44097b9fb1d2ec36c92b8d530db725aa71f52" | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
92597
659