@graphitation/supermassive 3.15.2 → 3.16.1-canary.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/.eslintcache +1 -1
  2. package/CHANGELOG.md +2 -2
  3. package/lib/schema/definition.d.ts +54 -19
  4. package/lib/schema/definition.d.ts.map +1 -1
  5. package/lib/schema/definition.js +127 -18
  6. package/lib/schema/definition.js.map +3 -3
  7. package/lib/schema/definition.mjs +109 -16
  8. package/lib/schema/definition.mjs.map +2 -2
  9. package/lib/schema/directives.d.ts.map +1 -1
  10. package/lib/schema/directives.js +3 -3
  11. package/lib/schema/directives.js.map +2 -2
  12. package/lib/schema/directives.mjs +4 -4
  13. package/lib/schema/directives.mjs.map +2 -2
  14. package/lib/utilities/decodeASTSchema.d.ts.map +1 -1
  15. package/lib/utilities/decodeASTSchema.js +185 -33
  16. package/lib/utilities/decodeASTSchema.js.map +2 -2
  17. package/lib/utilities/decodeASTSchema.mjs +196 -36
  18. package/lib/utilities/decodeASTSchema.mjs.map +2 -2
  19. package/lib/utilities/encodeASTSchema.d.ts +5 -1
  20. package/lib/utilities/encodeASTSchema.d.ts.map +1 -1
  21. package/lib/utilities/encodeASTSchema.js +171 -38
  22. package/lib/utilities/encodeASTSchema.js.map +2 -2
  23. package/lib/utilities/encodeASTSchema.mjs +171 -38
  24. package/lib/utilities/encodeASTSchema.mjs.map +2 -2
  25. package/lib/utilities/extractMinimalViableSchemaForRequestDocument.js +1 -1
  26. package/lib/utilities/extractMinimalViableSchemaForRequestDocument.js.map +2 -2
  27. package/lib/utilities/extractMinimalViableSchemaForRequestDocument.mjs +2 -2
  28. package/lib/utilities/extractMinimalViableSchemaForRequestDocument.mjs.map +2 -2
  29. package/lib/utilities/mergeSchemaDefinitions.d.ts.map +1 -1
  30. package/lib/utilities/mergeSchemaDefinitions.js +52 -2
  31. package/lib/utilities/mergeSchemaDefinitions.js.map +3 -3
  32. package/lib/utilities/mergeSchemaDefinitions.mjs +59 -4
  33. package/lib/utilities/mergeSchemaDefinitions.mjs.map +3 -3
  34. package/lib/utilities/subtractSchemaDefinitions.js +4 -4
  35. package/lib/utilities/subtractSchemaDefinitions.js.map +2 -2
  36. package/lib/utilities/subtractSchemaDefinitions.mjs +5 -5
  37. package/lib/utilities/subtractSchemaDefinitions.mjs.map +2 -2
  38. package/lib/values.js +2 -2
  39. package/lib/values.js.map +2 -2
  40. package/lib/values.mjs +4 -4
  41. package/lib/values.mjs.map +2 -2
  42. package/package.json +1 -1
@@ -50,6 +50,36 @@ var DirectiveLocationToGraphQL = {
50
50
  };
51
51
  var typeNameMetaFieldDef = "String";
52
52
  var specifiedScalarDefinition = [1 /* SCALAR */];
53
+ function getTypeDefinitionMetadataIndex(typeDefinition) {
54
+ if (isObjectTypeDefinition(typeDefinition)) {
55
+ return 3 /* metadata */;
56
+ } else if (isScalarTypeDefinition(typeDefinition)) {
57
+ return 1 /* metadata */;
58
+ } else if (isEnumTypeDefinition(typeDefinition)) {
59
+ return 2 /* metadata */;
60
+ } else if (isInterfaceTypeDefinition(typeDefinition)) {
61
+ return 3 /* metadata */;
62
+ } else if (isInputObjectTypeDefinition(typeDefinition)) {
63
+ return 2 /* metadata */;
64
+ } else if (isUnionTypeDefinition(typeDefinition)) {
65
+ return 2 /* metadata */;
66
+ }
67
+ }
68
+ function getTypeDefinitionMetadata(typeDefinition) {
69
+ if (isObjectTypeDefinition(typeDefinition)) {
70
+ return getObjectTypeMetadata(typeDefinition);
71
+ } else if (isScalarTypeDefinition(typeDefinition)) {
72
+ return getScalarTypeMetadata(typeDefinition);
73
+ } else if (isEnumTypeDefinition(typeDefinition)) {
74
+ return getEnumMetadata(typeDefinition);
75
+ } else if (isInterfaceTypeDefinition(typeDefinition)) {
76
+ return getInterfaceTypeMetadata(typeDefinition);
77
+ } else if (isInputObjectTypeDefinition(typeDefinition)) {
78
+ return getInputTypeMetadata(typeDefinition);
79
+ } else if (isUnionTypeDefinition(typeDefinition)) {
80
+ return getUnionTypeMetadata(typeDefinition);
81
+ }
82
+ }
53
83
  function findObjectType(defs, typeName) {
54
84
  const type = defs.types[typeName];
55
85
  return (type == null ? void 0 : type[0]) === 2 /* OBJECT */ ? type : void 0;
@@ -205,10 +235,10 @@ function isSubType(defs, abstractTypeName, maybeSubTypeName) {
205
235
  }
206
236
  return false;
207
237
  }
208
- function getDirectiveName(tuple) {
238
+ function getDirectiveDefinitionName(tuple) {
209
239
  return tuple[0 /* name */];
210
240
  }
211
- function getDirectiveLocations(tuple) {
241
+ function getDirectiveDefinitionLocations(tuple) {
212
242
  return tuple[1 /* locations */];
213
243
  }
214
244
  function encodeDirectiveLocation(location) {
@@ -253,38 +283,78 @@ function getFieldTypeReference(field) {
253
283
  function getFieldArgs(field) {
254
284
  return Array.isArray(field) ? field[1 /* arguments */] : void 0;
255
285
  }
286
+ function getFieldMetadata(field) {
287
+ return Array.isArray(field) ? field[2 /* metadata */] : void 0;
288
+ }
256
289
  function setFieldArgs(field, args) {
257
290
  field[1 /* arguments */] = args;
258
291
  return args;
259
292
  }
293
+ function setFieldDirectives(field, args) {
294
+ field[2 /* metadata */] = args;
295
+ return args;
296
+ }
260
297
  function getEnumValues(tuple) {
261
298
  return tuple[1 /* values */];
262
299
  }
300
+ function getEnumMetadata(tuple) {
301
+ return tuple[2 /* metadata */];
302
+ }
263
303
  function getDirectiveDefinitionArgs(directive) {
264
- return directive[2 /* arguments */];
304
+ return Array.isArray(directive) ? directive[2 /* arguments */] : void 0;
265
305
  }
266
306
  function setDirectiveDefinitionArgs(directive, args) {
267
307
  directive[2 /* arguments */] = args;
268
308
  return args;
269
309
  }
270
- function createUnionTypeDefinition(types) {
310
+ function createUnionTypeDefinition(types, metadata) {
311
+ if (metadata) {
312
+ return [4 /* UNION */, types, metadata];
313
+ }
271
314
  return [4 /* UNION */, types];
272
315
  }
273
- function createInterfaceTypeDefinition(fields, interfaces) {
274
- return (interfaces == null ? void 0 : interfaces.length) ? [3 /* INTERFACE */, fields, interfaces] : [3 /* INTERFACE */, fields];
316
+ function createInterfaceTypeDefinition(fields, interfaces, metadata) {
317
+ if (!(interfaces == null ? void 0 : interfaces.length) && !metadata) {
318
+ return [3 /* INTERFACE */, fields];
319
+ }
320
+ if ((interfaces == null ? void 0 : interfaces.length) && !metadata) {
321
+ return [3 /* INTERFACE */, fields, interfaces];
322
+ }
323
+ return [3 /* INTERFACE */, fields, interfaces, metadata];
275
324
  }
276
- function createObjectTypeDefinition(fields, interfaces) {
277
- return (interfaces == null ? void 0 : interfaces.length) ? [2 /* OBJECT */, fields, interfaces] : [2 /* OBJECT */, fields];
325
+ function createObjectTypeDefinition(fields, interfaces, metadata) {
326
+ if (!(interfaces == null ? void 0 : interfaces.length) && !metadata) {
327
+ return [2 /* OBJECT */, fields];
328
+ }
329
+ if ((interfaces == null ? void 0 : interfaces.length) && !metadata) {
330
+ return [2 /* OBJECT */, fields, interfaces];
331
+ }
332
+ return [2 /* OBJECT */, fields, interfaces, metadata];
278
333
  }
279
- function createInputObjectTypeDefinition(fields) {
334
+ function createInputObjectTypeDefinition(fields, metadata) {
335
+ if (metadata) {
336
+ return [6 /* INPUT */, fields, metadata];
337
+ }
280
338
  return [6 /* INPUT */, fields];
281
339
  }
282
- function createEnumTypeDefinition(values) {
340
+ function createEnumTypeDefinition(values, metadata) {
341
+ if (metadata) {
342
+ return [5 /* ENUM */, values, metadata];
343
+ }
283
344
  return [5 /* ENUM */, values];
284
345
  }
285
- function createScalarTypeDefinition() {
346
+ function createScalarTypeDefinition(metadata) {
347
+ if (metadata) {
348
+ return [1 /* SCALAR */, metadata];
349
+ }
286
350
  return [1 /* SCALAR */];
287
351
  }
352
+ function getScalarTypeMetadata(def) {
353
+ return def[1 /* metadata */];
354
+ }
355
+ function getObjectTypeMetadata(def) {
356
+ return def[3 /* metadata */];
357
+ }
288
358
  function getObjectTypeInterfaces(def) {
289
359
  var _a;
290
360
  return (_a = def[2 /* interfaces */]) != null ? _a : [];
@@ -293,14 +363,26 @@ function getInterfaceTypeInterfaces(def) {
293
363
  var _a;
294
364
  return (_a = def[2 /* interfaces */]) != null ? _a : [];
295
365
  }
366
+ function getInterfaceTypeMetadata(def) {
367
+ return def[3 /* metadata */];
368
+ }
369
+ function getInputTypeMetadata(def) {
370
+ return def[2 /* metadata */];
371
+ }
296
372
  function getUnionTypeMembers(tuple) {
297
373
  return tuple[1 /* types */];
298
374
  }
375
+ function getUnionTypeMetadata(def) {
376
+ return def[2 /* metadata */];
377
+ }
299
378
  function getFieldArguments(def) {
300
379
  return Array.isArray(def) ? def[1 /* arguments */] : void 0;
301
380
  }
302
- function getDirectiveArguments(def) {
303
- return Array.isArray(def) ? def[2 /* arguments */] : void 0;
381
+ function getDirectiveDefinitionMetadata(def) {
382
+ return Array.isArray(def) ? def[3 /* metadata */] : void 0;
383
+ }
384
+ function getDirectiveName(tuple) {
385
+ return tuple[0 /* name */];
304
386
  }
305
387
  export {
306
388
  addInterfaceImplementation,
@@ -313,27 +395,37 @@ export {
313
395
  decodeDirectiveLocation,
314
396
  encodeDirectiveLocation,
315
397
  findObjectType,
316
- getDirectiveArguments,
317
398
  getDirectiveDefinitionArgs,
318
- getDirectiveLocations,
399
+ getDirectiveDefinitionLocations,
400
+ getDirectiveDefinitionMetadata,
401
+ getDirectiveDefinitionName,
319
402
  getDirectiveName,
403
+ getEnumMetadata,
320
404
  getEnumValues,
321
405
  getField,
322
406
  getFieldArgs,
323
407
  getFieldArguments,
408
+ getFieldMetadata,
324
409
  getFieldTypeReference,
325
410
  getFields,
326
411
  getInputDefaultValue,
327
412
  getInputObjectFields,
328
413
  getInputObjectType,
414
+ getInputTypeMetadata,
329
415
  getInputValueTypeReference,
330
416
  getInterfaceType,
331
417
  getInterfaceTypeInterfaces,
418
+ getInterfaceTypeMetadata,
332
419
  getLeafType,
333
420
  getObjectFields,
334
421
  getObjectTypeInterfaces,
422
+ getObjectTypeMetadata,
423
+ getScalarTypeMetadata,
424
+ getTypeDefinitionMetadata,
425
+ getTypeDefinitionMetadataIndex,
335
426
  getUnionType,
336
427
  getUnionTypeMembers,
428
+ getUnionTypeMetadata,
337
429
  isAbstractType,
338
430
  isDefined,
339
431
  isEnumTypeDefinition,
@@ -346,5 +438,6 @@ export {
346
438
  isSubType,
347
439
  isUnionTypeDefinition,
348
440
  setDirectiveDefinitionArgs,
349
- setFieldArgs
441
+ setFieldArgs,
442
+ setFieldDirectives
350
443
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/schema/definition.ts"],
4
- "sourcesContent": ["import {\n DirectiveLocation as GraphQLDirectiveLocation,\n DirectiveLocationEnum,\n} from \"graphql\";\nimport { isSpecifiedScalarType } from \"./resolvers\";\nimport { TypeName, TypeReference, typeNameFromReference } from \"./reference\";\n\n// Perf: const enums are inlined in the build (+small integers are stored on the stack in v8)\n// IMPORTANT: const enums MUST NOT be exported, otherwise esbuild struggles to inline them: use exported functions\nconst enum TypeKind {\n SCALAR = 1,\n OBJECT = 2,\n INTERFACE = 3,\n UNION = 4,\n ENUM = 5,\n INPUT = 6,\n}\n\nexport type ScalarTypeDefinitionTuple = [\n kind: TypeKind.SCALAR,\n // directives?: DirectiveTuple[], // TODO ?\n];\n\nexport type ObjectTypeDefinitionTuple = [\n kind: TypeKind.OBJECT,\n fields: FieldDefinitionRecord,\n interfaces?: TypeName[],\n // directives?: DirectiveTuple[],\n];\nconst enum ObjectKeys {\n fields = 1,\n interfaces = 2,\n}\n\nexport type InterfaceTypeDefinitionTuple = [\n kind: TypeKind.INTERFACE,\n fields: FieldDefinitionRecord,\n interfaces?: TypeName[],\n // directives?: DirectiveTuple[],\n];\nconst enum InterfaceKeys {\n fields = 1,\n interfaces = 2,\n}\n\nexport type UnionTypeDefinitionTuple = [\n kind: TypeKind.UNION,\n types: TypeName[],\n // directives?: DirectiveTuple[],\n];\nconst enum UnionKeys {\n types = 1,\n}\n\nexport type EnumTypeDefinitionTuple = [\n kind: TypeKind.ENUM,\n values: string[],\n // directives?: DirectiveTuple[],\n];\nconst enum EnumKeys {\n values = 1,\n}\n\nexport type InputObjectTypeDefinitionTuple = [\n kind: TypeKind.INPUT,\n fields: InputValueDefinitionRecord,\n // directives?: DirectiveTuple[],\n];\nconst enum InputObjectKeys {\n fields = 1,\n}\n\nexport type TypeDefinitionTuple =\n | ScalarTypeDefinitionTuple\n | ObjectTypeDefinitionTuple\n | InterfaceTypeDefinitionTuple\n | UnionTypeDefinitionTuple\n | EnumTypeDefinitionTuple\n | InputObjectTypeDefinitionTuple;\n\nexport type CompositeTypeTuple =\n | ObjectTypeDefinitionTuple\n | InterfaceTypeDefinitionTuple\n | UnionTypeDefinitionTuple;\n\nexport type FieldDefinitionTuple = [\n type: TypeReference,\n arguments: InputValueDefinitionRecord,\n // directives?: DirectiveTuple[],\n];\nconst enum FieldKeys {\n type = 0,\n arguments = 1,\n}\nexport type FieldDefinition = TypeReference | FieldDefinitionTuple;\nexport type FieldDefinitionRecord = Record<string, FieldDefinition>;\n\nexport type InputValueDefinitionTuple = [\n type: TypeReference,\n defaultValue: unknown,\n // directives?: DirectiveTuple[],\n];\nconst enum InputValueKeys {\n type = 0,\n defaultValue = 1,\n}\nexport type InputValueDefinition = TypeReference | InputValueDefinitionTuple;\nexport type InputValueDefinitionRecord = Record<string, InputValueDefinition>;\n\nconst DirectiveLocation = {\n QUERY: 1,\n MUTATION: 2,\n SUBSCRIPTION: 3,\n FIELD: 4,\n FRAGMENT_DEFINITION: 5,\n FRAGMENT_SPREAD: 6,\n INLINE_FRAGMENT: 7,\n VARIABLE_DEFINITION: 8,\n /** Type System Definitions */\n SCHEMA: 9,\n SCALAR: 10,\n OBJECT: 11,\n FIELD_DEFINITION: 12,\n ARGUMENT_DEFINITION: 13,\n INTERFACE: 14,\n UNION: 15,\n ENUM: 16,\n ENUM_VALUE: 17,\n INPUT_OBJECT: 18,\n INPUT_FIELD_DEFINITION: 19,\n} as const;\ntype DirectiveLocation =\n (typeof DirectiveLocation)[keyof typeof DirectiveLocation];\nconst DirectiveLocationToGraphQL = {\n 1: GraphQLDirectiveLocation.QUERY,\n 2: GraphQLDirectiveLocation.MUTATION,\n 3: GraphQLDirectiveLocation.SUBSCRIPTION,\n 4: GraphQLDirectiveLocation.FIELD,\n 5: GraphQLDirectiveLocation.FRAGMENT_DEFINITION,\n 6: GraphQLDirectiveLocation.FRAGMENT_SPREAD,\n 7: GraphQLDirectiveLocation.INLINE_FRAGMENT,\n 8: GraphQLDirectiveLocation.VARIABLE_DEFINITION,\n /** Type System Definitions */\n 9: GraphQLDirectiveLocation.SCHEMA,\n 10: GraphQLDirectiveLocation.SCALAR,\n 11: GraphQLDirectiveLocation.OBJECT,\n 12: GraphQLDirectiveLocation.FIELD_DEFINITION,\n 13: GraphQLDirectiveLocation.ARGUMENT_DEFINITION,\n 14: GraphQLDirectiveLocation.INTERFACE,\n 15: GraphQLDirectiveLocation.UNION,\n 16: GraphQLDirectiveLocation.ENUM,\n 17: GraphQLDirectiveLocation.ENUM_VALUE,\n 18: GraphQLDirectiveLocation.INPUT_OBJECT,\n 19: GraphQLDirectiveLocation.INPUT_FIELD_DEFINITION,\n} as const;\n\nexport type DirectiveName = string;\nexport type DirectiveTuple = [\n name: DirectiveName,\n arguments: Record<string, unknown>, // JS values (cannot be a variable inside schema definition, so it is fine)\n];\nexport type DirectiveDefinitionTuple = [\n name: DirectiveName,\n locations: DirectiveLocation[],\n arguments?: InputValueDefinitionRecord,\n];\nconst enum DirectiveKeys {\n name = 0,\n locations = 1,\n arguments = 2,\n}\n\nexport type TypeDefinitionsRecord = Record<TypeName, TypeDefinitionTuple>;\nexport type InterfaceImplementationsRecord = Record<TypeName, TypeName[]>;\n\nexport type OperationTypes = {\n query?: TypeName;\n mutation?: TypeName;\n subscription?: TypeName;\n};\n\nexport type SchemaDefinitions = {\n types: TypeDefinitionsRecord;\n directives?: DirectiveDefinitionTuple[];\n // implementations?: InterfaceImplementationsRecord; // TODO?\n};\n\nconst typeNameMetaFieldDef: FieldDefinition = \"String\";\nconst specifiedScalarDefinition: ScalarTypeDefinitionTuple = [TypeKind.SCALAR];\n\nexport function findObjectType(\n defs: SchemaDefinitions,\n typeName: TypeName,\n): ObjectTypeDefinitionTuple | undefined {\n const type = defs.types[typeName];\n return type?.[0] === TypeKind.OBJECT ? type : undefined;\n}\n\nexport function getObjectFields(\n def: ObjectTypeDefinitionTuple,\n): FieldDefinitionRecord {\n return def[ObjectKeys.fields];\n}\n\nexport function addInterfaceImplementation(\n defs: SchemaDefinitions,\n interfaceType: TypeName,\n objectType: TypeName,\n) {\n const iface = getInterfaceType(defs, interfaceType);\n const type = defs.types[objectType];\n\n if (!iface) {\n throw new Error(\n `Type ${interfaceType} either doesn't exist or is not an interface`,\n );\n }\n if (type && !isObjectTypeDefinition(type)) {\n throw new Error(`Type ${objectType} is not an object type`);\n }\n if (!type) {\n defs.types[objectType] = [\n TypeKind.OBJECT,\n Object.create(null),\n [interfaceType],\n ];\n return;\n }\n let knownInterfaces = type[ObjectKeys.interfaces];\n if (!knownInterfaces) {\n knownInterfaces = [];\n type[ObjectKeys.interfaces] = knownInterfaces;\n }\n if (!knownInterfaces.includes(interfaceType)) {\n knownInterfaces.push(interfaceType);\n }\n}\n\nexport function getField(\n defs: SchemaDefinitions,\n typeName: TypeName,\n fieldName: string,\n) {\n if (fieldName === \"__typename\") {\n return typeNameMetaFieldDef;\n }\n return (\n getOwnField(defs, typeName, fieldName) ??\n findInterfaceField(defs, typeName, fieldName)\n );\n}\n\nfunction getOwnField(\n defs: SchemaDefinitions,\n typeName: TypeName,\n fieldName: string,\n): FieldDefinition | undefined {\n const type = defs.types[typeName];\n if (!type) {\n return undefined;\n }\n if (type[0] === TypeKind.OBJECT) {\n return type[ObjectKeys.fields]?.[fieldName];\n }\n if (type[0] === TypeKind.INTERFACE) {\n return type[InterfaceKeys.fields]?.[fieldName];\n }\n return undefined;\n}\n\nfunction findInterfaceField(\n defs: SchemaDefinitions,\n typeName: TypeName,\n fieldName: string,\n) {\n const type = defs.types[typeName];\n if (!type) {\n return undefined;\n }\n if (type[0] === TypeKind.OBJECT && type[ObjectKeys.interfaces]) {\n return findField(defs, type[ObjectKeys.interfaces], fieldName);\n }\n if (type[0] === TypeKind.INTERFACE && type[InterfaceKeys.interfaces]) {\n return findField(defs, type[InterfaceKeys.interfaces], fieldName);\n }\n return undefined;\n}\n\nfunction findField(\n defs: SchemaDefinitions,\n interfaceTypes: TypeName[],\n fieldName: string,\n) {\n // TODO: merge field definition from all interface types to ensure all necessary arguments are present\n // (or maybe instead always encode all arguments in the schema fragment for simplicity?)\n for (const interfaceName of interfaceTypes) {\n const ownField = getOwnField(defs, interfaceName, fieldName);\n if (ownField !== undefined) {\n return ownField;\n }\n }\n return undefined;\n}\n\nexport function getInputObjectType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): InputObjectTypeDefinitionTuple | undefined {\n const type = defs.types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.INPUT ? type : undefined;\n}\n\nexport function getLeafType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): EnumTypeDefinitionTuple | ScalarTypeDefinitionTuple | undefined {\n const typeName = typeNameFromReference(typeRef);\n\n if (isSpecifiedScalarType(typeName)) {\n return specifiedScalarDefinition;\n }\n const type = defs.types[typeName];\n if (type?.[0] !== TypeKind.ENUM && type?.[0] !== TypeKind.SCALAR) {\n return undefined;\n }\n return type;\n}\n\nexport function isDefined(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): boolean {\n if (typeof typeRef === \"number\") {\n // Fast-path: spec type\n return true;\n }\n const types = defs.types;\n const typeName = typeNameFromReference(typeRef);\n return !!types[typeName] || isSpecifiedScalarType(typeName);\n}\n\nexport function isInputType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): boolean {\n if (typeof typeRef === \"number\") {\n // Fast-path: all spec types are input types\n return true;\n }\n const typeName = typeNameFromReference(typeRef);\n const kind = defs.types[typeName]?.[0];\n return (\n isSpecifiedScalarType(typeName) ||\n kind === TypeKind.ENUM ||\n kind === TypeKind.INPUT ||\n kind === TypeKind.SCALAR\n );\n}\n\nexport function isObjectType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): boolean {\n if (typeof typeRef === \"number\") {\n // Fast-path: all spec types are scalars\n return false;\n }\n const types = defs.types;\n const type = types[typeRef] ?? types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.OBJECT;\n}\n\nexport function isAbstractType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): boolean {\n if (typeof typeRef === \"number\") {\n // Fast-path: all spec types are scalars\n return false;\n }\n const type =\n defs.types[typeRef] ?? defs.types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.UNION || type?.[0] === TypeKind.INTERFACE;\n}\n\nexport function getUnionType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): UnionTypeDefinitionTuple | undefined {\n const types = defs.types;\n const type = types[typeRef] ?? types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.UNION ? type : undefined;\n}\n\nexport function getInterfaceType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): InterfaceTypeDefinitionTuple | undefined {\n const types = defs.types;\n const type = types[typeRef] ?? types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.INTERFACE ? type : undefined;\n}\n\nexport function isSubType(\n defs: SchemaDefinitions,\n abstractTypeName: TypeName,\n maybeSubTypeName: TypeName,\n): boolean {\n const union = getUnionType(defs, abstractTypeName);\n if (union) {\n return union[UnionKeys.types].includes(maybeSubTypeName);\n }\n const object = findObjectType(defs, maybeSubTypeName);\n if (object) {\n return !!object[ObjectKeys.interfaces]?.includes(abstractTypeName);\n }\n const iface = getInterfaceType(defs, maybeSubTypeName);\n if (iface) {\n return !!iface[InterfaceKeys.interfaces]?.includes(abstractTypeName);\n }\n return false;\n}\n\nexport function getDirectiveName(tuple: DirectiveDefinitionTuple): string {\n return tuple[DirectiveKeys.name];\n}\n\nexport function getDirectiveLocations(\n tuple: DirectiveDefinitionTuple,\n): DirectiveLocation[] {\n return tuple[DirectiveKeys.locations];\n}\n\nexport function encodeDirectiveLocation(\n location: DirectiveLocationEnum,\n): DirectiveLocation {\n return DirectiveLocation[location];\n}\nexport function decodeDirectiveLocation(\n location: DirectiveLocation,\n): DirectiveLocationEnum {\n return DirectiveLocationToGraphQL[location];\n}\n\nexport function isObjectTypeDefinition(\n type: TypeDefinitionTuple,\n): type is ObjectTypeDefinitionTuple {\n return type[0] === TypeKind.OBJECT;\n}\n\nexport function isUnionTypeDefinition(\n type: TypeDefinitionTuple,\n): type is UnionTypeDefinitionTuple {\n return type[0] === TypeKind.UNION;\n}\n\nexport function isInterfaceTypeDefinition(\n type: TypeDefinitionTuple,\n): type is InterfaceTypeDefinitionTuple {\n return type[0] === TypeKind.INTERFACE;\n}\n\nexport function isEnumTypeDefinition(\n type: TypeDefinitionTuple,\n): type is EnumTypeDefinitionTuple {\n return type[0] === TypeKind.ENUM;\n}\n\nexport function isScalarTypeDefinition(\n type: TypeDefinitionTuple,\n): type is ScalarTypeDefinitionTuple {\n return type[0] === TypeKind.SCALAR;\n}\n\nexport function isInputObjectTypeDefinition(\n type: TypeDefinitionTuple,\n): type is InputObjectTypeDefinitionTuple {\n return type[0] === TypeKind.INPUT;\n}\n\nexport function getInputValueTypeReference(\n inputValue: InputValueDefinition,\n): TypeReference {\n return Array.isArray(inputValue)\n ? inputValue[InputValueKeys.type]\n : inputValue;\n}\n\nexport function getInputObjectFields(\n obj: InputObjectTypeDefinitionTuple,\n): InputValueDefinitionRecord {\n return obj[InputObjectKeys.fields];\n}\n\nexport function getInputDefaultValue(\n inputValue: InputValueDefinition,\n): unknown | undefined {\n return Array.isArray(inputValue)\n ? inputValue[InputValueKeys.defaultValue]\n : undefined;\n}\n\nexport function getFields(\n def: ObjectTypeDefinitionTuple | InterfaceTypeDefinitionTuple,\n): FieldDefinitionRecord {\n return def[0] === TypeKind.OBJECT\n ? def[ObjectKeys.fields]\n : def[InterfaceKeys.fields];\n}\n\nexport function getFieldTypeReference(field: FieldDefinition): TypeReference {\n return Array.isArray(field) ? field[FieldKeys.type] : field;\n}\n\nexport function getFieldArgs(\n field: FieldDefinition,\n): InputValueDefinitionRecord | undefined {\n return Array.isArray(field) ? field[FieldKeys.arguments] : undefined;\n}\n\nexport function setFieldArgs(\n field: FieldDefinitionTuple,\n args: InputValueDefinitionRecord,\n): InputValueDefinitionRecord {\n field[FieldKeys.arguments] = args;\n return args;\n}\n\nexport function getEnumValues(tuple: EnumTypeDefinitionTuple): string[] {\n return tuple[EnumKeys.values];\n}\n\nexport function getDirectiveDefinitionArgs(\n directive: DirectiveDefinitionTuple,\n): InputValueDefinitionRecord | undefined {\n return directive[DirectiveKeys.arguments];\n}\n\nexport function setDirectiveDefinitionArgs(\n directive: DirectiveDefinitionTuple,\n args: InputValueDefinitionRecord,\n): InputValueDefinitionRecord {\n directive[DirectiveKeys.arguments] = args;\n return args;\n}\n\nexport function createUnionTypeDefinition(\n types: TypeName[],\n): UnionTypeDefinitionTuple {\n return [TypeKind.UNION, types];\n}\n\nexport function createInterfaceTypeDefinition(\n fields: FieldDefinitionRecord,\n interfaces?: TypeName[],\n): InterfaceTypeDefinitionTuple {\n return interfaces?.length\n ? [TypeKind.INTERFACE, fields, interfaces]\n : [TypeKind.INTERFACE, fields];\n}\n\nexport function createObjectTypeDefinition(\n fields: FieldDefinitionRecord,\n interfaces?: TypeName[],\n): ObjectTypeDefinitionTuple {\n return interfaces?.length\n ? [TypeKind.OBJECT, fields, interfaces]\n : [TypeKind.OBJECT, fields];\n}\n\nexport function createInputObjectTypeDefinition(\n fields: InputValueDefinitionRecord,\n): InputObjectTypeDefinitionTuple {\n return [TypeKind.INPUT, fields];\n}\n\nexport function createEnumTypeDefinition(\n values: string[],\n): EnumTypeDefinitionTuple {\n return [TypeKind.ENUM, values];\n}\n\nexport function createScalarTypeDefinition(): ScalarTypeDefinitionTuple {\n return [TypeKind.SCALAR];\n}\n\nexport function getObjectTypeInterfaces(\n def: ObjectTypeDefinitionTuple,\n): TypeName[] {\n return def[ObjectKeys.interfaces] ?? [];\n}\n\nexport function getInterfaceTypeInterfaces(\n def: InterfaceTypeDefinitionTuple,\n): TypeName[] {\n return def[InterfaceKeys.interfaces] ?? [];\n}\n\nexport function getUnionTypeMembers(\n tuple: UnionTypeDefinitionTuple,\n): TypeName[] {\n return tuple[UnionKeys.types];\n}\n\nexport function getFieldArguments(\n def: FieldDefinition,\n): InputValueDefinitionRecord | undefined {\n return Array.isArray(def) ? def[FieldKeys.arguments] : undefined;\n}\n\nexport function getDirectiveArguments(\n def: DirectiveDefinitionTuple,\n): InputValueDefinitionRecord | undefined {\n return Array.isArray(def) ? def[DirectiveKeys.arguments] : undefined;\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n DirectiveLocation as GraphQLDirectiveLocation,\n DirectiveLocationEnum,\n} from \"graphql\";\nimport { isSpecifiedScalarType } from \"./resolvers\";\nimport { TypeName, TypeReference, typeNameFromReference } from \"./reference\";\n\n// Perf: const enums are inlined in the build (+small integers are stored on the stack in v8)\n// IMPORTANT: const enums MUST NOT be exported, otherwise esbuild struggles to inline them: use exported functions\nconst enum TypeKind {\n SCALAR = 1,\n OBJECT = 2,\n INTERFACE = 3,\n UNION = 4,\n ENUM = 5,\n INPUT = 6,\n}\n\nexport type ScalarTypeDefinitionTuple = [\n kind: TypeKind.SCALAR,\n metadata?: TypeDefinitionMetadata,\n];\n\nconst enum ScalarKeys {\n metadata = 1,\n}\n\nexport type Description = {\n value: string;\n block?: boolean;\n};\nexport interface TypeDefinitionMetadata {\n directives?: DirectiveTuple[];\n description?: Description;\n}\n\nexport type EnumTypeDefinitionMetadata = TypeDefinitionMetadata & {\n values?: Record<string, TypeDefinitionMetadata>;\n};\n\nexport type DirectiveDefinitionMetadata = {\n repeatable?: boolean;\n description?: Description;\n};\n\nexport type ObjectTypeDefinitionTuple = [\n kind: TypeKind.OBJECT,\n fields: FieldDefinitionRecord,\n interfaces?: TypeName[],\n metadata?: TypeDefinitionMetadata,\n];\nconst enum ObjectKeys {\n fields = 1,\n interfaces = 2,\n metadata = 3,\n}\n\nexport type InterfaceTypeDefinitionTuple = [\n kind: TypeKind.INTERFACE,\n fields: FieldDefinitionRecord,\n interfaces?: TypeName[],\n metadata?: TypeDefinitionMetadata,\n];\nconst enum InterfaceKeys {\n fields = 1,\n interfaces = 2,\n metadata = 3,\n}\n\nexport type UnionTypeDefinitionTuple = [\n kind: TypeKind.UNION,\n types: TypeName[],\n metadata?: TypeDefinitionMetadata,\n];\nconst enum UnionKeys {\n types = 1,\n metadata = 2,\n}\n\nexport type EnumTypeDefinitionTuple = [\n kind: TypeKind.ENUM,\n values: string[],\n metadata?: EnumTypeDefinitionMetadata,\n];\nconst enum EnumKeys {\n values = 1,\n metadata = 2,\n}\n\nexport type InputObjectTypeDefinitionTuple = [\n kind: TypeKind.INPUT,\n fields: InputValueDefinitionRecord,\n metadata?: TypeDefinitionMetadata,\n];\nconst enum InputObjectKeys {\n fields = 1,\n metadata = 2,\n}\n\nexport type TypeDefinitionTuple =\n | ScalarTypeDefinitionTuple\n | ObjectTypeDefinitionTuple\n | InterfaceTypeDefinitionTuple\n | UnionTypeDefinitionTuple\n | EnumTypeDefinitionTuple\n | InputObjectTypeDefinitionTuple;\n\nexport type CompositeTypeTuple =\n | ObjectTypeDefinitionTuple\n | InterfaceTypeDefinitionTuple\n | UnionTypeDefinitionTuple;\n\nexport type FieldDefinitionTuple = [\n type: TypeReference,\n // TODO should I really do it ?\n arguments?: InputValueDefinitionRecord,\n metadata?: TypeDefinitionMetadata,\n];\nconst enum FieldKeys {\n type = 0,\n arguments = 1,\n metadata = 2,\n}\nexport type FieldDefinition = TypeReference | FieldDefinitionTuple;\nexport type FieldDefinitionRecord = Record<string, FieldDefinition>;\n\nexport type InputValueDefinitionTuple = [\n type: TypeReference,\n defaultValue: unknown,\n metadata?: DirectiveDefinitionMetadata,\n];\nconst enum InputValueKeys {\n type = 0,\n defaultValue = 1,\n}\nexport type InputValueDefinition = TypeReference | InputValueDefinitionTuple;\nexport type InputValueDefinitionRecord = Record<string, InputValueDefinition>;\n\nconst DirectiveLocation = {\n QUERY: 1,\n MUTATION: 2,\n SUBSCRIPTION: 3,\n FIELD: 4,\n FRAGMENT_DEFINITION: 5,\n FRAGMENT_SPREAD: 6,\n INLINE_FRAGMENT: 7,\n VARIABLE_DEFINITION: 8,\n /** Type System Definitions */\n SCHEMA: 9,\n SCALAR: 10,\n OBJECT: 11,\n FIELD_DEFINITION: 12,\n ARGUMENT_DEFINITION: 13,\n INTERFACE: 14,\n UNION: 15,\n ENUM: 16,\n ENUM_VALUE: 17,\n INPUT_OBJECT: 18,\n INPUT_FIELD_DEFINITION: 19,\n} as const;\ntype DirectiveLocation =\n (typeof DirectiveLocation)[keyof typeof DirectiveLocation];\nconst DirectiveLocationToGraphQL = {\n 1: GraphQLDirectiveLocation.QUERY,\n 2: GraphQLDirectiveLocation.MUTATION,\n 3: GraphQLDirectiveLocation.SUBSCRIPTION,\n 4: GraphQLDirectiveLocation.FIELD,\n 5: GraphQLDirectiveLocation.FRAGMENT_DEFINITION,\n 6: GraphQLDirectiveLocation.FRAGMENT_SPREAD,\n 7: GraphQLDirectiveLocation.INLINE_FRAGMENT,\n 8: GraphQLDirectiveLocation.VARIABLE_DEFINITION,\n /** Type System Definitions */\n 9: GraphQLDirectiveLocation.SCHEMA,\n 10: GraphQLDirectiveLocation.SCALAR,\n 11: GraphQLDirectiveLocation.OBJECT,\n 12: GraphQLDirectiveLocation.FIELD_DEFINITION,\n 13: GraphQLDirectiveLocation.ARGUMENT_DEFINITION,\n 14: GraphQLDirectiveLocation.INTERFACE,\n 15: GraphQLDirectiveLocation.UNION,\n 16: GraphQLDirectiveLocation.ENUM,\n 17: GraphQLDirectiveLocation.ENUM_VALUE,\n 18: GraphQLDirectiveLocation.INPUT_OBJECT,\n 19: GraphQLDirectiveLocation.INPUT_FIELD_DEFINITION,\n} as const;\n\nexport type DirectiveName = string;\n\nexport type DirectiveTuple = [\n name: DirectiveName,\n arguments?: Record<string, unknown>, // JS values (cannot be a variable inside schema definition, so it is fine)\n];\nexport type DirectiveDefinitionTuple = [\n name: DirectiveName,\n locations: DirectiveLocation[],\n arguments?: InputValueDefinitionRecord,\n metadata?: DirectiveDefinitionMetadata,\n];\n\nconst enum DirectiveKeys {\n name = 0,\n arguments = 1,\n}\n\nconst enum DirectiveDefinitionKeys {\n name = 0,\n locations = 1,\n arguments = 2,\n metadata = 3,\n}\n\nexport type TypeDefinitionsRecord = Record<TypeName, TypeDefinitionTuple>;\nexport type InterfaceImplementationsRecord = Record<TypeName, TypeName[]>;\n\nexport type OperationTypes = {\n query?: TypeName;\n mutation?: TypeName;\n subscription?: TypeName;\n};\n\nexport type SchemaDefinitions = {\n types: TypeDefinitionsRecord;\n directives?: DirectiveDefinitionTuple[];\n // implementations?: InterfaceImplementationsRecord; // TODO?\n};\n\nconst typeNameMetaFieldDef: FieldDefinition = \"String\";\nconst specifiedScalarDefinition: ScalarTypeDefinitionTuple = [TypeKind.SCALAR];\n\nexport function getTypeDefinitionMetadataIndex(\n typeDefinition: TypeDefinitionTuple,\n): number | undefined {\n if (isObjectTypeDefinition(typeDefinition)) {\n return ObjectKeys.metadata;\n } else if (isScalarTypeDefinition(typeDefinition)) {\n return ScalarKeys.metadata;\n } else if (isEnumTypeDefinition(typeDefinition)) {\n return EnumKeys.metadata;\n } else if (isInterfaceTypeDefinition(typeDefinition)) {\n return InterfaceKeys.metadata;\n } else if (isInputObjectTypeDefinition(typeDefinition)) {\n return InputObjectKeys.metadata;\n } else if (isUnionTypeDefinition(typeDefinition)) {\n return UnionKeys.metadata;\n }\n}\n\nexport function getTypeDefinitionMetadata(typeDefinition: TypeDefinitionTuple) {\n if (isObjectTypeDefinition(typeDefinition)) {\n return getObjectTypeMetadata(typeDefinition);\n } else if (isScalarTypeDefinition(typeDefinition)) {\n return getScalarTypeMetadata(typeDefinition);\n } else if (isEnumTypeDefinition(typeDefinition)) {\n return getEnumMetadata(typeDefinition);\n } else if (isInterfaceTypeDefinition(typeDefinition)) {\n return getInterfaceTypeMetadata(typeDefinition);\n } else if (isInputObjectTypeDefinition(typeDefinition)) {\n return getInputTypeMetadata(typeDefinition);\n } else if (isUnionTypeDefinition(typeDefinition)) {\n return getUnionTypeMetadata(typeDefinition);\n }\n}\n\nexport function findObjectType(\n defs: SchemaDefinitions,\n typeName: TypeName,\n): ObjectTypeDefinitionTuple | undefined {\n const type = defs.types[typeName];\n return type?.[0] === TypeKind.OBJECT ? type : undefined;\n}\n\nexport function getObjectFields(\n def: ObjectTypeDefinitionTuple,\n): FieldDefinitionRecord {\n return def[ObjectKeys.fields];\n}\n\nexport function addInterfaceImplementation(\n defs: SchemaDefinitions,\n interfaceType: TypeName,\n objectType: TypeName,\n) {\n const iface = getInterfaceType(defs, interfaceType);\n const type = defs.types[objectType];\n\n if (!iface) {\n throw new Error(\n `Type ${interfaceType} either doesn't exist or is not an interface`,\n );\n }\n if (type && !isObjectTypeDefinition(type)) {\n throw new Error(`Type ${objectType} is not an object type`);\n }\n if (!type) {\n defs.types[objectType] = [\n TypeKind.OBJECT,\n Object.create(null),\n [interfaceType],\n ];\n return;\n }\n let knownInterfaces = type[ObjectKeys.interfaces];\n if (!knownInterfaces) {\n knownInterfaces = [];\n type[ObjectKeys.interfaces] = knownInterfaces;\n }\n if (!knownInterfaces.includes(interfaceType)) {\n knownInterfaces.push(interfaceType);\n }\n}\n\nexport function getField(\n defs: SchemaDefinitions,\n typeName: TypeName,\n fieldName: string,\n) {\n if (fieldName === \"__typename\") {\n return typeNameMetaFieldDef;\n }\n return (\n getOwnField(defs, typeName, fieldName) ??\n findInterfaceField(defs, typeName, fieldName)\n );\n}\n\nfunction getOwnField(\n defs: SchemaDefinitions,\n typeName: TypeName,\n fieldName: string,\n): FieldDefinition | undefined {\n const type = defs.types[typeName];\n if (!type) {\n return undefined;\n }\n if (type[0] === TypeKind.OBJECT) {\n return type[ObjectKeys.fields]?.[fieldName];\n }\n if (type[0] === TypeKind.INTERFACE) {\n return type[InterfaceKeys.fields]?.[fieldName];\n }\n return undefined;\n}\n\nfunction findInterfaceField(\n defs: SchemaDefinitions,\n typeName: TypeName,\n fieldName: string,\n) {\n const type = defs.types[typeName];\n if (!type) {\n return undefined;\n }\n if (type[0] === TypeKind.OBJECT && type[ObjectKeys.interfaces]) {\n return findField(defs, type[ObjectKeys.interfaces], fieldName);\n }\n if (type[0] === TypeKind.INTERFACE && type[InterfaceKeys.interfaces]) {\n return findField(defs, type[InterfaceKeys.interfaces], fieldName);\n }\n return undefined;\n}\n\nfunction findField(\n defs: SchemaDefinitions,\n interfaceTypes: TypeName[],\n fieldName: string,\n) {\n // TODO: merge field definition from all interface types to ensure all necessary arguments are present\n // (or maybe instead always encode all arguments in the schema fragment for simplicity?)\n for (const interfaceName of interfaceTypes) {\n const ownField = getOwnField(defs, interfaceName, fieldName);\n if (ownField !== undefined) {\n return ownField;\n }\n }\n return undefined;\n}\n\nexport function getInputObjectType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): InputObjectTypeDefinitionTuple | undefined {\n const type = defs.types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.INPUT ? type : undefined;\n}\n\nexport function getLeafType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): EnumTypeDefinitionTuple | ScalarTypeDefinitionTuple | undefined {\n const typeName = typeNameFromReference(typeRef);\n\n if (isSpecifiedScalarType(typeName)) {\n return specifiedScalarDefinition;\n }\n const type = defs.types[typeName];\n if (type?.[0] !== TypeKind.ENUM && type?.[0] !== TypeKind.SCALAR) {\n return undefined;\n }\n return type;\n}\n\nexport function isDefined(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): boolean {\n if (typeof typeRef === \"number\") {\n // Fast-path: spec type\n return true;\n }\n const types = defs.types;\n const typeName = typeNameFromReference(typeRef);\n return !!types[typeName] || isSpecifiedScalarType(typeName);\n}\n\nexport function isInputType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): boolean {\n if (typeof typeRef === \"number\") {\n // Fast-path: all spec types are input types\n return true;\n }\n const typeName = typeNameFromReference(typeRef);\n const kind = defs.types[typeName]?.[0];\n return (\n isSpecifiedScalarType(typeName) ||\n kind === TypeKind.ENUM ||\n kind === TypeKind.INPUT ||\n kind === TypeKind.SCALAR\n );\n}\n\nexport function isObjectType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): boolean {\n if (typeof typeRef === \"number\") {\n // Fast-path: all spec types are scalars\n return false;\n }\n const types = defs.types;\n const type = types[typeRef] ?? types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.OBJECT;\n}\n\nexport function isAbstractType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): boolean {\n if (typeof typeRef === \"number\") {\n // Fast-path: all spec types are scalars\n return false;\n }\n const type =\n defs.types[typeRef] ?? defs.types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.UNION || type?.[0] === TypeKind.INTERFACE;\n}\n\nexport function getUnionType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): UnionTypeDefinitionTuple | undefined {\n const types = defs.types;\n const type = types[typeRef] ?? types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.UNION ? type : undefined;\n}\n\nexport function getInterfaceType(\n defs: SchemaDefinitions,\n typeRef: TypeReference,\n): InterfaceTypeDefinitionTuple | undefined {\n const types = defs.types;\n const type = types[typeRef] ?? types[typeNameFromReference(typeRef)];\n return type?.[0] === TypeKind.INTERFACE ? type : undefined;\n}\n\nexport function isSubType(\n defs: SchemaDefinitions,\n abstractTypeName: TypeName,\n maybeSubTypeName: TypeName,\n): boolean {\n const union = getUnionType(defs, abstractTypeName);\n if (union) {\n return union[UnionKeys.types].includes(maybeSubTypeName);\n }\n const object = findObjectType(defs, maybeSubTypeName);\n if (object) {\n return !!object[ObjectKeys.interfaces]?.includes(abstractTypeName);\n }\n const iface = getInterfaceType(defs, maybeSubTypeName);\n if (iface) {\n return !!iface[InterfaceKeys.interfaces]?.includes(abstractTypeName);\n }\n return false;\n}\n\nexport function getDirectiveDefinitionName(\n tuple: DirectiveDefinitionTuple,\n): string {\n return tuple[DirectiveDefinitionKeys.name];\n}\n\nexport function getDirectiveDefinitionLocations(\n tuple: DirectiveDefinitionTuple,\n): DirectiveLocation[] {\n return tuple[DirectiveDefinitionKeys.locations];\n}\n\nexport function encodeDirectiveLocation(\n location: DirectiveLocationEnum,\n): DirectiveLocation {\n return DirectiveLocation[location];\n}\nexport function decodeDirectiveLocation(\n location: DirectiveLocation,\n): DirectiveLocationEnum {\n return DirectiveLocationToGraphQL[location];\n}\n\nexport function isObjectTypeDefinition(\n type: TypeDefinitionTuple,\n): type is ObjectTypeDefinitionTuple {\n return type[0] === TypeKind.OBJECT;\n}\n\nexport function isUnionTypeDefinition(\n type: TypeDefinitionTuple,\n): type is UnionTypeDefinitionTuple {\n return type[0] === TypeKind.UNION;\n}\n\nexport function isInterfaceTypeDefinition(\n type: TypeDefinitionTuple,\n): type is InterfaceTypeDefinitionTuple {\n return type[0] === TypeKind.INTERFACE;\n}\n\nexport function isEnumTypeDefinition(\n type: TypeDefinitionTuple,\n): type is EnumTypeDefinitionTuple {\n return type[0] === TypeKind.ENUM;\n}\n\nexport function isScalarTypeDefinition(\n type: TypeDefinitionTuple,\n): type is ScalarTypeDefinitionTuple {\n return type[0] === TypeKind.SCALAR;\n}\n\nexport function isInputObjectTypeDefinition(\n type: TypeDefinitionTuple,\n): type is InputObjectTypeDefinitionTuple {\n return type[0] === TypeKind.INPUT;\n}\n\nexport function getInputValueTypeReference(\n inputValue: InputValueDefinition,\n): TypeReference {\n return Array.isArray(inputValue)\n ? inputValue[InputValueKeys.type]\n : inputValue;\n}\n\nexport function getInputObjectFields(\n obj: InputObjectTypeDefinitionTuple,\n): InputValueDefinitionRecord {\n return obj[InputObjectKeys.fields];\n}\n\nexport function getInputDefaultValue(\n inputValue: InputValueDefinition,\n): unknown | undefined {\n return Array.isArray(inputValue)\n ? inputValue[InputValueKeys.defaultValue]\n : undefined;\n}\n\nexport function getFields(\n def: ObjectTypeDefinitionTuple | InterfaceTypeDefinitionTuple,\n): FieldDefinitionRecord {\n return def[0] === TypeKind.OBJECT\n ? def[ObjectKeys.fields]\n : def[InterfaceKeys.fields];\n}\n\nexport function getFieldTypeReference(field: FieldDefinition): TypeReference {\n return Array.isArray(field) ? field[FieldKeys.type] : field;\n}\n\nexport function getFieldArgs(\n field: FieldDefinition,\n): InputValueDefinitionRecord | undefined {\n return Array.isArray(field) ? field[FieldKeys.arguments] : undefined;\n}\n\nexport function getFieldMetadata(\n field: FieldDefinition,\n): TypeDefinitionMetadata | undefined {\n return Array.isArray(field) ? field[FieldKeys.metadata] : undefined;\n}\n\nexport function setFieldArgs(\n field: FieldDefinitionTuple,\n args: InputValueDefinitionRecord,\n): InputValueDefinitionRecord {\n field[FieldKeys.arguments] = args;\n return args;\n}\n\nexport function setFieldDirectives(\n field: FieldDefinitionTuple,\n args: TypeDefinitionMetadata,\n): TypeDefinitionMetadata {\n field[FieldKeys.metadata] = args;\n return args;\n}\n\nexport function getEnumValues(tuple: EnumTypeDefinitionTuple): string[] {\n return tuple[EnumKeys.values];\n}\n\nexport function getEnumMetadata(\n tuple: EnumTypeDefinitionTuple,\n): EnumTypeDefinitionMetadata | undefined {\n return tuple[EnumKeys.metadata];\n}\n\nexport function getDirectiveDefinitionArgs(\n directive: DirectiveDefinitionTuple,\n): InputValueDefinitionRecord | undefined {\n return Array.isArray(directive)\n ? directive[DirectiveDefinitionKeys.arguments]\n : undefined;\n}\n\nexport function setDirectiveDefinitionArgs(\n directive: DirectiveDefinitionTuple,\n args: InputValueDefinitionRecord,\n): InputValueDefinitionRecord {\n directive[DirectiveDefinitionKeys.arguments] = args;\n return args;\n}\n\nexport function createUnionTypeDefinition(\n types: TypeName[],\n metadata?: TypeDefinitionMetadata,\n): UnionTypeDefinitionTuple {\n if (metadata) {\n return [TypeKind.UNION, types, metadata];\n }\n\n return [TypeKind.UNION, types];\n}\n\nexport function createInterfaceTypeDefinition(\n fields: FieldDefinitionRecord,\n interfaces?: TypeName[],\n metadata?: TypeDefinitionMetadata,\n): InterfaceTypeDefinitionTuple {\n if (!interfaces?.length && !metadata) {\n return [TypeKind.INTERFACE, fields];\n }\n\n if (interfaces?.length && !metadata) {\n return [TypeKind.INTERFACE, fields, interfaces];\n }\n\n return [TypeKind.INTERFACE, fields, interfaces, metadata];\n}\n\nexport function createObjectTypeDefinition(\n fields: FieldDefinitionRecord,\n interfaces?: TypeName[],\n metadata?: TypeDefinitionMetadata,\n): ObjectTypeDefinitionTuple {\n if (!interfaces?.length && !metadata) {\n return [TypeKind.OBJECT, fields];\n }\n\n if (interfaces?.length && !metadata) {\n return [TypeKind.OBJECT, fields, interfaces];\n }\n\n return [TypeKind.OBJECT, fields, interfaces, metadata];\n}\n\nexport function createInputObjectTypeDefinition(\n fields: InputValueDefinitionRecord,\n metadata?: TypeDefinitionMetadata,\n): InputObjectTypeDefinitionTuple {\n if (metadata) {\n return [TypeKind.INPUT, fields, metadata];\n }\n\n return [TypeKind.INPUT, fields];\n}\n\nexport function createEnumTypeDefinition(\n values: string[],\n metadata?: EnumTypeDefinitionMetadata,\n): EnumTypeDefinitionTuple {\n if (metadata) {\n return [TypeKind.ENUM, values, metadata];\n }\n\n return [TypeKind.ENUM, values];\n}\n\nexport function createScalarTypeDefinition(\n metadata?: TypeDefinitionMetadata,\n): ScalarTypeDefinitionTuple {\n if (metadata) {\n return [TypeKind.SCALAR, metadata];\n }\n\n return [TypeKind.SCALAR];\n}\n\nexport function getScalarTypeMetadata(\n def: ScalarTypeDefinitionTuple,\n): TypeDefinitionMetadata | undefined {\n return def[ScalarKeys.metadata];\n}\n\nexport function getObjectTypeMetadata(\n def: ObjectTypeDefinitionTuple,\n): TypeDefinitionMetadata | undefined {\n return def[ObjectKeys.metadata];\n}\n\nexport function getObjectTypeInterfaces(\n def: ObjectTypeDefinitionTuple,\n): TypeName[] {\n return def[ObjectKeys.interfaces] ?? [];\n}\n\nexport function getInterfaceTypeInterfaces(\n def: InterfaceTypeDefinitionTuple,\n): TypeName[] {\n return def[InterfaceKeys.interfaces] ?? [];\n}\n\nexport function getInterfaceTypeMetadata(\n def: InterfaceTypeDefinitionTuple,\n): TypeDefinitionMetadata | undefined {\n return def[InterfaceKeys.metadata];\n}\n\nexport function getInputTypeMetadata(\n def: InputObjectTypeDefinitionTuple,\n): TypeDefinitionMetadata | undefined {\n return def[InputObjectKeys.metadata];\n}\n\nexport function getUnionTypeMembers(\n tuple: UnionTypeDefinitionTuple,\n): TypeName[] {\n return tuple[UnionKeys.types];\n}\n\nexport function getUnionTypeMetadata(\n def: UnionTypeDefinitionTuple,\n): TypeDefinitionMetadata | undefined {\n return def[UnionKeys.metadata];\n}\n\nexport function getFieldArguments(\n def: FieldDefinition,\n): InputValueDefinitionRecord | undefined {\n return Array.isArray(def) ? def[FieldKeys.arguments] : undefined;\n}\n\nexport function getDirectiveDefinitionMetadata(\n def: DirectiveDefinitionTuple,\n): DirectiveDefinitionMetadata | undefined {\n return Array.isArray(def) ? def[DirectiveDefinitionKeys.metadata] : undefined;\n}\n\nexport function getDirectiveName(tuple: DirectiveTuple): string {\n return tuple[DirectiveKeys.name];\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../src/schema/directives.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EACxB,aAAa,EAGd,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,wBAQrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,wBAQlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAChE;;GAEG;AACH,eAAO,MAAM,0BAA0B,EAAE,wBAIxC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,wBAIzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,wBAMnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,wBAIpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,wBAAwB,CAQpE,CAAC;AACL,eAAO,MAAM,kCAAkC,WAAW,CAAC;AAC3D,eAAO,MAAM,uDAAuD,gBACrD,CAAC;AAChB;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,wBAQzC,CAAC;AAEF,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,aAAa,GAAG,wBAAwB,GAClD,OAAO,CAOT;AACD,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,aAAa,GAAG,wBAAwB,GAClD,OAAO,CAMT"}
1
+ {"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../src/schema/directives.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EACxB,aAAa,EAGd,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,wBAQrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,wBAQlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAChE;;GAEG;AACH,eAAO,MAAM,0BAA0B,EAAE,wBAIxC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,wBAIzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,wBAMnC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,wBAIpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAAC,wBAAwB,CAQpE,CAAC;AACL,eAAO,MAAM,kCAAkC,WAAW,CAAC;AAC3D,eAAO,MAAM,uDAAuD,gBACrD,CAAC;AAChB;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,wBAQzC,CAAC;AAEF,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,aAAa,GAAG,wBAAwB,GAClD,OAAO,CAST;AACD,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,aAAa,GAAG,wBAAwB,GAClD,OAAO,CAQT"}
@@ -97,12 +97,12 @@ const SupermassiveSchemaDirective = [
97
97
  // Essentially JSON
98
98
  ];
99
99
  function isKnownDirective(directive) {
100
- const name = typeof directive === "string" ? directive : (0, import_definition.getDirectiveName)(directive);
100
+ const name = typeof directive === "string" ? directive : (0, import_definition.getDirectiveDefinitionName)(directive);
101
101
  return isSpecifiedDirective(directive) || name === SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME;
102
102
  }
103
103
  function isSpecifiedDirective(directive) {
104
- const name = typeof directive === "string" ? directive : (0, import_definition.getDirectiveName)(directive);
104
+ const name = typeof directive === "string" ? directive : (0, import_definition.getDirectiveDefinitionName)(directive);
105
105
  return specifiedDirectives.some(
106
- (specDirective) => (0, import_definition.getDirectiveName)(specDirective) === name
106
+ (specDirective) => (0, import_definition.getDirectiveDefinitionName)(specDirective) === name
107
107
  );
108
108
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/schema/directives.ts"],
4
- "sourcesContent": ["import { DirectiveLocation } from \"graphql\";\nimport {\n DirectiveDefinitionTuple,\n DirectiveName,\n encodeDirectiveLocation,\n getDirectiveName,\n} from \"./definition\";\n\n/**\n * Used to conditionally include fields or fragments.\n */\nexport const GraphQLIncludeDirective: DirectiveDefinitionTuple = [\n \"include\",\n [\n DirectiveLocation.FIELD,\n DirectiveLocation.FRAGMENT_SPREAD,\n DirectiveLocation.INLINE_FRAGMENT,\n ].map(encodeDirectiveLocation),\n { if: \"Boolean!\" },\n];\n\n/**\n * Used to conditionally skip (exclude) fields or fragments.\n */\nexport const GraphQLSkipDirective: DirectiveDefinitionTuple = [\n \"skip\",\n [\n DirectiveLocation.FIELD,\n DirectiveLocation.FRAGMENT_SPREAD,\n DirectiveLocation.INLINE_FRAGMENT,\n ].map(encodeDirectiveLocation),\n { if: \"Boolean!\" },\n];\n\n/**\n * Constant string used for default reason for a deprecation.\n */\nexport const DEFAULT_DEPRECATION_REASON = \"No longer supported\";\n/**\n * Used to declare element of a GraphQL schema as deprecated.\n */\nexport const GraphQLDeprecatedDirective: DirectiveDefinitionTuple = [\n \"deprecated\",\n [DirectiveLocation.FIELD_DEFINITION].map(encodeDirectiveLocation),\n { reason: [\"String\", DEFAULT_DEPRECATION_REASON] },\n];\n\n/**\n * Used to provide a URL for specifying the behaviour of custom scalar definitions.\n */\nexport const GraphQLSpecifiedByDirective: DirectiveDefinitionTuple = [\n \"specifiedBy\",\n [DirectiveLocation.INPUT_OBJECT].map(encodeDirectiveLocation),\n { url: \"String!\" },\n];\n\n/**\n * Used to conditionally defer fragments.\n */\nexport const GraphQLDeferDirective: DirectiveDefinitionTuple = [\n \"defer\",\n [DirectiveLocation.FRAGMENT_SPREAD, DirectiveLocation.INLINE_FRAGMENT].map(\n encodeDirectiveLocation,\n ),\n { if: [\"Boolean!\", true], label: \"String\" },\n];\n\n/**\n * Used to conditionally stream list fields.\n */\nexport const GraphQLStreamDirective: DirectiveDefinitionTuple = [\n \"stream\",\n [DirectiveLocation.FIELD].map(encodeDirectiveLocation),\n { if: [\"Boolean!\", true], label: \"String\", initialCount: [\"Int\", 0] },\n];\n\n/**\n * The full list of specified directives.\n */\nexport const specifiedDirectives: ReadonlyArray<DirectiveDefinitionTuple> =\n Object.freeze([\n GraphQLIncludeDirective,\n GraphQLSkipDirective,\n GraphQLDeprecatedDirective,\n GraphQLSpecifiedByDirective,\n GraphQLDeferDirective,\n GraphQLStreamDirective,\n ]);\nexport const SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME = \"schema\";\nexport const SUPERMASSIVE_SCHEMA_DIRECTIVE_DEFINITIONS_ARGUMENT_NAME =\n \"definitions\";\n/**\n * Used to conditionally stream list fields.\n */\nexport const SupermassiveSchemaDirective: DirectiveDefinitionTuple = [\n SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME,\n [\n DirectiveLocation.QUERY,\n DirectiveLocation.MUTATION,\n DirectiveLocation.SUBSCRIPTION,\n ].map(encodeDirectiveLocation),\n { [SUPERMASSIVE_SCHEMA_DIRECTIVE_DEFINITIONS_ARGUMENT_NAME]: \"String!\" }, // Essentially JSON\n];\n\nexport function isKnownDirective(\n directive: DirectiveName | DirectiveDefinitionTuple,\n): boolean {\n const name =\n typeof directive === \"string\" ? directive : getDirectiveName(directive);\n return (\n isSpecifiedDirective(directive) ||\n name === SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME\n );\n}\nexport function isSpecifiedDirective(\n directive: DirectiveName | DirectiveDefinitionTuple,\n): boolean {\n const name =\n typeof directive === \"string\" ? directive : getDirectiveName(directive);\n return specifiedDirectives.some(\n (specDirective) => getDirectiveName(specDirective) === name,\n );\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAkC;AAClC,wBAKO;AAKA,MAAM,0BAAoD;AAAA,EAC/D;AAAA,EACA;AAAA,IACE,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,EACpB,EAAE,IAAI,yCAAuB;AAAA,EAC7B,EAAE,IAAI,WAAW;AACnB;AAKO,MAAM,uBAAiD;AAAA,EAC5D;AAAA,EACA;AAAA,IACE,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,EACpB,EAAE,IAAI,yCAAuB;AAAA,EAC7B,EAAE,IAAI,WAAW;AACnB;AAKO,MAAM,6BAA6B;AAInC,MAAM,6BAAuD;AAAA,EAClE;AAAA,EACA,CAAC,iCAAkB,gBAAgB,EAAE,IAAI,yCAAuB;AAAA,EAChE,EAAE,QAAQ,CAAC,UAAU,0BAA0B,EAAE;AACnD;AAKO,MAAM,8BAAwD;AAAA,EACnE;AAAA,EACA,CAAC,iCAAkB,YAAY,EAAE,IAAI,yCAAuB;AAAA,EAC5D,EAAE,KAAK,UAAU;AACnB;AAKO,MAAM,wBAAkD;AAAA,EAC7D;AAAA,EACA,CAAC,iCAAkB,iBAAiB,iCAAkB,eAAe,EAAE;AAAA,IACrE;AAAA,EACF;AAAA,EACA,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,OAAO,SAAS;AAC5C;AAKO,MAAM,yBAAmD;AAAA,EAC9D;AAAA,EACA,CAAC,iCAAkB,KAAK,EAAE,IAAI,yCAAuB;AAAA,EACrD,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,OAAO,UAAU,cAAc,CAAC,OAAO,CAAC,EAAE;AACtE;AAKO,MAAM,sBACX,OAAO,OAAO;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACI,MAAM,qCAAqC;AAC3C,MAAM,0DACX;AAIK,MAAM,8BAAwD;AAAA,EACnE;AAAA,EACA;AAAA,IACE,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,EACpB,EAAE,IAAI,yCAAuB;AAAA,EAC7B,EAAE,CAAC,uDAAuD,GAAG,UAAU;AAAA;AACzE;AAEO,SAAS,iBACd,WACS;AACT,QAAM,OACJ,OAAO,cAAc,WAAW,gBAAY,oCAAiB,SAAS;AACxE,SACE,qBAAqB,SAAS,KAC9B,SAAS;AAEb;AACO,SAAS,qBACd,WACS;AACT,QAAM,OACJ,OAAO,cAAc,WAAW,gBAAY,oCAAiB,SAAS;AACxE,SAAO,oBAAoB;AAAA,IACzB,CAAC,sBAAkB,oCAAiB,aAAa,MAAM;AAAA,EACzD;AACF;",
4
+ "sourcesContent": ["import { DirectiveLocation } from \"graphql\";\nimport {\n DirectiveDefinitionTuple,\n DirectiveName,\n encodeDirectiveLocation,\n getDirectiveDefinitionName,\n} from \"./definition\";\n\n/**\n * Used to conditionally include fields or fragments.\n */\nexport const GraphQLIncludeDirective: DirectiveDefinitionTuple = [\n \"include\",\n [\n DirectiveLocation.FIELD,\n DirectiveLocation.FRAGMENT_SPREAD,\n DirectiveLocation.INLINE_FRAGMENT,\n ].map(encodeDirectiveLocation),\n { if: \"Boolean!\" },\n];\n\n/**\n * Used to conditionally skip (exclude) fields or fragments.\n */\nexport const GraphQLSkipDirective: DirectiveDefinitionTuple = [\n \"skip\",\n [\n DirectiveLocation.FIELD,\n DirectiveLocation.FRAGMENT_SPREAD,\n DirectiveLocation.INLINE_FRAGMENT,\n ].map(encodeDirectiveLocation),\n { if: \"Boolean!\" },\n];\n\n/**\n * Constant string used for default reason for a deprecation.\n */\nexport const DEFAULT_DEPRECATION_REASON = \"No longer supported\";\n/**\n * Used to declare element of a GraphQL schema as deprecated.\n */\nexport const GraphQLDeprecatedDirective: DirectiveDefinitionTuple = [\n \"deprecated\",\n [DirectiveLocation.FIELD_DEFINITION].map(encodeDirectiveLocation),\n { reason: [\"String\", DEFAULT_DEPRECATION_REASON] },\n];\n\n/**\n * Used to provide a URL for specifying the behaviour of custom scalar definitions.\n */\nexport const GraphQLSpecifiedByDirective: DirectiveDefinitionTuple = [\n \"specifiedBy\",\n [DirectiveLocation.INPUT_OBJECT].map(encodeDirectiveLocation),\n { url: \"String!\" },\n];\n\n/**\n * Used to conditionally defer fragments.\n */\nexport const GraphQLDeferDirective: DirectiveDefinitionTuple = [\n \"defer\",\n [DirectiveLocation.FRAGMENT_SPREAD, DirectiveLocation.INLINE_FRAGMENT].map(\n encodeDirectiveLocation,\n ),\n { if: [\"Boolean!\", true], label: \"String\" },\n];\n\n/**\n * Used to conditionally stream list fields.\n */\nexport const GraphQLStreamDirective: DirectiveDefinitionTuple = [\n \"stream\",\n [DirectiveLocation.FIELD].map(encodeDirectiveLocation),\n { if: [\"Boolean!\", true], label: \"String\", initialCount: [\"Int\", 0] },\n];\n\n/**\n * The full list of specified directives.\n */\nexport const specifiedDirectives: ReadonlyArray<DirectiveDefinitionTuple> =\n Object.freeze([\n GraphQLIncludeDirective,\n GraphQLSkipDirective,\n GraphQLDeprecatedDirective,\n GraphQLSpecifiedByDirective,\n GraphQLDeferDirective,\n GraphQLStreamDirective,\n ]);\nexport const SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME = \"schema\";\nexport const SUPERMASSIVE_SCHEMA_DIRECTIVE_DEFINITIONS_ARGUMENT_NAME =\n \"definitions\";\n/**\n * Used to conditionally stream list fields.\n */\nexport const SupermassiveSchemaDirective: DirectiveDefinitionTuple = [\n SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME,\n [\n DirectiveLocation.QUERY,\n DirectiveLocation.MUTATION,\n DirectiveLocation.SUBSCRIPTION,\n ].map(encodeDirectiveLocation),\n { [SUPERMASSIVE_SCHEMA_DIRECTIVE_DEFINITIONS_ARGUMENT_NAME]: \"String!\" }, // Essentially JSON\n];\n\nexport function isKnownDirective(\n directive: DirectiveName | DirectiveDefinitionTuple,\n): boolean {\n const name =\n typeof directive === \"string\"\n ? directive\n : getDirectiveDefinitionName(directive);\n return (\n isSpecifiedDirective(directive) ||\n name === SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME\n );\n}\nexport function isSpecifiedDirective(\n directive: DirectiveName | DirectiveDefinitionTuple,\n): boolean {\n const name =\n typeof directive === \"string\"\n ? directive\n : getDirectiveDefinitionName(directive);\n return specifiedDirectives.some(\n (specDirective) => getDirectiveDefinitionName(specDirective) === name,\n );\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAkC;AAClC,wBAKO;AAKA,MAAM,0BAAoD;AAAA,EAC/D;AAAA,EACA;AAAA,IACE,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,EACpB,EAAE,IAAI,yCAAuB;AAAA,EAC7B,EAAE,IAAI,WAAW;AACnB;AAKO,MAAM,uBAAiD;AAAA,EAC5D;AAAA,EACA;AAAA,IACE,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,EACpB,EAAE,IAAI,yCAAuB;AAAA,EAC7B,EAAE,IAAI,WAAW;AACnB;AAKO,MAAM,6BAA6B;AAInC,MAAM,6BAAuD;AAAA,EAClE;AAAA,EACA,CAAC,iCAAkB,gBAAgB,EAAE,IAAI,yCAAuB;AAAA,EAChE,EAAE,QAAQ,CAAC,UAAU,0BAA0B,EAAE;AACnD;AAKO,MAAM,8BAAwD;AAAA,EACnE;AAAA,EACA,CAAC,iCAAkB,YAAY,EAAE,IAAI,yCAAuB;AAAA,EAC5D,EAAE,KAAK,UAAU;AACnB;AAKO,MAAM,wBAAkD;AAAA,EAC7D;AAAA,EACA,CAAC,iCAAkB,iBAAiB,iCAAkB,eAAe,EAAE;AAAA,IACrE;AAAA,EACF;AAAA,EACA,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,OAAO,SAAS;AAC5C;AAKO,MAAM,yBAAmD;AAAA,EAC9D;AAAA,EACA,CAAC,iCAAkB,KAAK,EAAE,IAAI,yCAAuB;AAAA,EACrD,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,OAAO,UAAU,cAAc,CAAC,OAAO,CAAC,EAAE;AACtE;AAKO,MAAM,sBACX,OAAO,OAAO;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACI,MAAM,qCAAqC;AAC3C,MAAM,0DACX;AAIK,MAAM,8BAAwD;AAAA,EACnE;AAAA,EACA;AAAA,IACE,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,IAClB,iCAAkB;AAAA,EACpB,EAAE,IAAI,yCAAuB;AAAA,EAC7B,EAAE,CAAC,uDAAuD,GAAG,UAAU;AAAA;AACzE;AAEO,SAAS,iBACd,WACS;AACT,QAAM,OACJ,OAAO,cAAc,WACjB,gBACA,8CAA2B,SAAS;AAC1C,SACE,qBAAqB,SAAS,KAC9B,SAAS;AAEb;AACO,SAAS,qBACd,WACS;AACT,QAAM,OACJ,OAAO,cAAc,WACjB,gBACA,8CAA2B,SAAS;AAC1C,SAAO,oBAAoB;AAAA,IACzB,CAAC,sBAAkB,8CAA2B,aAAa,MAAM;AAAA,EACnE;AACF;",
6
6
  "names": []
7
7
  }
@@ -2,7 +2,7 @@
2
2
  import { DirectiveLocation } from "graphql";
3
3
  import {
4
4
  encodeDirectiveLocation,
5
- getDirectiveName
5
+ getDirectiveDefinitionName
6
6
  } from "./definition.mjs";
7
7
  var GraphQLIncludeDirective = [
8
8
  "include",
@@ -66,13 +66,13 @@ var SupermassiveSchemaDirective = [
66
66
  // Essentially JSON
67
67
  ];
68
68
  function isKnownDirective(directive) {
69
- const name = typeof directive === "string" ? directive : getDirectiveName(directive);
69
+ const name = typeof directive === "string" ? directive : getDirectiveDefinitionName(directive);
70
70
  return isSpecifiedDirective(directive) || name === SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME;
71
71
  }
72
72
  function isSpecifiedDirective(directive) {
73
- const name = typeof directive === "string" ? directive : getDirectiveName(directive);
73
+ const name = typeof directive === "string" ? directive : getDirectiveDefinitionName(directive);
74
74
  return specifiedDirectives.some(
75
- (specDirective) => getDirectiveName(specDirective) === name
75
+ (specDirective) => getDirectiveDefinitionName(specDirective) === name
76
76
  );
77
77
  }
78
78
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/schema/directives.ts"],
4
- "sourcesContent": ["import { DirectiveLocation } from \"graphql\";\nimport {\n DirectiveDefinitionTuple,\n DirectiveName,\n encodeDirectiveLocation,\n getDirectiveName,\n} from \"./definition\";\n\n/**\n * Used to conditionally include fields or fragments.\n */\nexport const GraphQLIncludeDirective: DirectiveDefinitionTuple = [\n \"include\",\n [\n DirectiveLocation.FIELD,\n DirectiveLocation.FRAGMENT_SPREAD,\n DirectiveLocation.INLINE_FRAGMENT,\n ].map(encodeDirectiveLocation),\n { if: \"Boolean!\" },\n];\n\n/**\n * Used to conditionally skip (exclude) fields or fragments.\n */\nexport const GraphQLSkipDirective: DirectiveDefinitionTuple = [\n \"skip\",\n [\n DirectiveLocation.FIELD,\n DirectiveLocation.FRAGMENT_SPREAD,\n DirectiveLocation.INLINE_FRAGMENT,\n ].map(encodeDirectiveLocation),\n { if: \"Boolean!\" },\n];\n\n/**\n * Constant string used for default reason for a deprecation.\n */\nexport const DEFAULT_DEPRECATION_REASON = \"No longer supported\";\n/**\n * Used to declare element of a GraphQL schema as deprecated.\n */\nexport const GraphQLDeprecatedDirective: DirectiveDefinitionTuple = [\n \"deprecated\",\n [DirectiveLocation.FIELD_DEFINITION].map(encodeDirectiveLocation),\n { reason: [\"String\", DEFAULT_DEPRECATION_REASON] },\n];\n\n/**\n * Used to provide a URL for specifying the behaviour of custom scalar definitions.\n */\nexport const GraphQLSpecifiedByDirective: DirectiveDefinitionTuple = [\n \"specifiedBy\",\n [DirectiveLocation.INPUT_OBJECT].map(encodeDirectiveLocation),\n { url: \"String!\" },\n];\n\n/**\n * Used to conditionally defer fragments.\n */\nexport const GraphQLDeferDirective: DirectiveDefinitionTuple = [\n \"defer\",\n [DirectiveLocation.FRAGMENT_SPREAD, DirectiveLocation.INLINE_FRAGMENT].map(\n encodeDirectiveLocation,\n ),\n { if: [\"Boolean!\", true], label: \"String\" },\n];\n\n/**\n * Used to conditionally stream list fields.\n */\nexport const GraphQLStreamDirective: DirectiveDefinitionTuple = [\n \"stream\",\n [DirectiveLocation.FIELD].map(encodeDirectiveLocation),\n { if: [\"Boolean!\", true], label: \"String\", initialCount: [\"Int\", 0] },\n];\n\n/**\n * The full list of specified directives.\n */\nexport const specifiedDirectives: ReadonlyArray<DirectiveDefinitionTuple> =\n Object.freeze([\n GraphQLIncludeDirective,\n GraphQLSkipDirective,\n GraphQLDeprecatedDirective,\n GraphQLSpecifiedByDirective,\n GraphQLDeferDirective,\n GraphQLStreamDirective,\n ]);\nexport const SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME = \"schema\";\nexport const SUPERMASSIVE_SCHEMA_DIRECTIVE_DEFINITIONS_ARGUMENT_NAME =\n \"definitions\";\n/**\n * Used to conditionally stream list fields.\n */\nexport const SupermassiveSchemaDirective: DirectiveDefinitionTuple = [\n SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME,\n [\n DirectiveLocation.QUERY,\n DirectiveLocation.MUTATION,\n DirectiveLocation.SUBSCRIPTION,\n ].map(encodeDirectiveLocation),\n { [SUPERMASSIVE_SCHEMA_DIRECTIVE_DEFINITIONS_ARGUMENT_NAME]: \"String!\" }, // Essentially JSON\n];\n\nexport function isKnownDirective(\n directive: DirectiveName | DirectiveDefinitionTuple,\n): boolean {\n const name =\n typeof directive === \"string\" ? directive : getDirectiveName(directive);\n return (\n isSpecifiedDirective(directive) ||\n name === SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME\n );\n}\nexport function isSpecifiedDirective(\n directive: DirectiveName | DirectiveDefinitionTuple,\n): boolean {\n const name =\n typeof directive === \"string\" ? directive : getDirectiveName(directive);\n return specifiedDirectives.some(\n (specDirective) => getDirectiveName(specDirective) === name,\n );\n}\n"],
5
- "mappings": ";AAAA,SAAS,yBAAyB;AAClC;AAAA,EAGE;AAAA,EACA;AAAA,OACK;AAKA,IAAM,0BAAoD;AAAA,EAC/D;AAAA,EACA;AAAA,IACE,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,EACpB,EAAE,IAAI,uBAAuB;AAAA,EAC7B,EAAE,IAAI,WAAW;AACnB;AAKO,IAAM,uBAAiD;AAAA,EAC5D;AAAA,EACA;AAAA,IACE,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,EACpB,EAAE,IAAI,uBAAuB;AAAA,EAC7B,EAAE,IAAI,WAAW;AACnB;AAKO,IAAM,6BAA6B;AAInC,IAAM,6BAAuD;AAAA,EAClE;AAAA,EACA,CAAC,kBAAkB,gBAAgB,EAAE,IAAI,uBAAuB;AAAA,EAChE,EAAE,QAAQ,CAAC,UAAU,0BAA0B,EAAE;AACnD;AAKO,IAAM,8BAAwD;AAAA,EACnE;AAAA,EACA,CAAC,kBAAkB,YAAY,EAAE,IAAI,uBAAuB;AAAA,EAC5D,EAAE,KAAK,UAAU;AACnB;AAKO,IAAM,wBAAkD;AAAA,EAC7D;AAAA,EACA,CAAC,kBAAkB,iBAAiB,kBAAkB,eAAe,EAAE;AAAA,IACrE;AAAA,EACF;AAAA,EACA,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,OAAO,SAAS;AAC5C;AAKO,IAAM,yBAAmD;AAAA,EAC9D;AAAA,EACA,CAAC,kBAAkB,KAAK,EAAE,IAAI,uBAAuB;AAAA,EACrD,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,OAAO,UAAU,cAAc,CAAC,OAAO,CAAC,EAAE;AACtE;AAKO,IAAM,sBACX,OAAO,OAAO;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACI,IAAM,qCAAqC;AAC3C,IAAM,0DACX;AAIK,IAAM,8BAAwD;AAAA,EACnE;AAAA,EACA;AAAA,IACE,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,EACpB,EAAE,IAAI,uBAAuB;AAAA,EAC7B,EAAE,CAAC,uDAAuD,GAAG,UAAU;AAAA;AACzE;AAEO,SAAS,iBACd,WACS;AACT,QAAM,OACJ,OAAO,cAAc,WAAW,YAAY,iBAAiB,SAAS;AACxE,SACE,qBAAqB,SAAS,KAC9B,SAAS;AAEb;AACO,SAAS,qBACd,WACS;AACT,QAAM,OACJ,OAAO,cAAc,WAAW,YAAY,iBAAiB,SAAS;AACxE,SAAO,oBAAoB;AAAA,IACzB,CAAC,kBAAkB,iBAAiB,aAAa,MAAM;AAAA,EACzD;AACF;",
4
+ "sourcesContent": ["import { DirectiveLocation } from \"graphql\";\nimport {\n DirectiveDefinitionTuple,\n DirectiveName,\n encodeDirectiveLocation,\n getDirectiveDefinitionName,\n} from \"./definition\";\n\n/**\n * Used to conditionally include fields or fragments.\n */\nexport const GraphQLIncludeDirective: DirectiveDefinitionTuple = [\n \"include\",\n [\n DirectiveLocation.FIELD,\n DirectiveLocation.FRAGMENT_SPREAD,\n DirectiveLocation.INLINE_FRAGMENT,\n ].map(encodeDirectiveLocation),\n { if: \"Boolean!\" },\n];\n\n/**\n * Used to conditionally skip (exclude) fields or fragments.\n */\nexport const GraphQLSkipDirective: DirectiveDefinitionTuple = [\n \"skip\",\n [\n DirectiveLocation.FIELD,\n DirectiveLocation.FRAGMENT_SPREAD,\n DirectiveLocation.INLINE_FRAGMENT,\n ].map(encodeDirectiveLocation),\n { if: \"Boolean!\" },\n];\n\n/**\n * Constant string used for default reason for a deprecation.\n */\nexport const DEFAULT_DEPRECATION_REASON = \"No longer supported\";\n/**\n * Used to declare element of a GraphQL schema as deprecated.\n */\nexport const GraphQLDeprecatedDirective: DirectiveDefinitionTuple = [\n \"deprecated\",\n [DirectiveLocation.FIELD_DEFINITION].map(encodeDirectiveLocation),\n { reason: [\"String\", DEFAULT_DEPRECATION_REASON] },\n];\n\n/**\n * Used to provide a URL for specifying the behaviour of custom scalar definitions.\n */\nexport const GraphQLSpecifiedByDirective: DirectiveDefinitionTuple = [\n \"specifiedBy\",\n [DirectiveLocation.INPUT_OBJECT].map(encodeDirectiveLocation),\n { url: \"String!\" },\n];\n\n/**\n * Used to conditionally defer fragments.\n */\nexport const GraphQLDeferDirective: DirectiveDefinitionTuple = [\n \"defer\",\n [DirectiveLocation.FRAGMENT_SPREAD, DirectiveLocation.INLINE_FRAGMENT].map(\n encodeDirectiveLocation,\n ),\n { if: [\"Boolean!\", true], label: \"String\" },\n];\n\n/**\n * Used to conditionally stream list fields.\n */\nexport const GraphQLStreamDirective: DirectiveDefinitionTuple = [\n \"stream\",\n [DirectiveLocation.FIELD].map(encodeDirectiveLocation),\n { if: [\"Boolean!\", true], label: \"String\", initialCount: [\"Int\", 0] },\n];\n\n/**\n * The full list of specified directives.\n */\nexport const specifiedDirectives: ReadonlyArray<DirectiveDefinitionTuple> =\n Object.freeze([\n GraphQLIncludeDirective,\n GraphQLSkipDirective,\n GraphQLDeprecatedDirective,\n GraphQLSpecifiedByDirective,\n GraphQLDeferDirective,\n GraphQLStreamDirective,\n ]);\nexport const SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME = \"schema\";\nexport const SUPERMASSIVE_SCHEMA_DIRECTIVE_DEFINITIONS_ARGUMENT_NAME =\n \"definitions\";\n/**\n * Used to conditionally stream list fields.\n */\nexport const SupermassiveSchemaDirective: DirectiveDefinitionTuple = [\n SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME,\n [\n DirectiveLocation.QUERY,\n DirectiveLocation.MUTATION,\n DirectiveLocation.SUBSCRIPTION,\n ].map(encodeDirectiveLocation),\n { [SUPERMASSIVE_SCHEMA_DIRECTIVE_DEFINITIONS_ARGUMENT_NAME]: \"String!\" }, // Essentially JSON\n];\n\nexport function isKnownDirective(\n directive: DirectiveName | DirectiveDefinitionTuple,\n): boolean {\n const name =\n typeof directive === \"string\"\n ? directive\n : getDirectiveDefinitionName(directive);\n return (\n isSpecifiedDirective(directive) ||\n name === SUPERMASSIVE_SCHEMA_DIRECTIVE_NAME\n );\n}\nexport function isSpecifiedDirective(\n directive: DirectiveName | DirectiveDefinitionTuple,\n): boolean {\n const name =\n typeof directive === \"string\"\n ? directive\n : getDirectiveDefinitionName(directive);\n return specifiedDirectives.some(\n (specDirective) => getDirectiveDefinitionName(specDirective) === name,\n );\n}\n"],
5
+ "mappings": ";AAAA,SAAS,yBAAyB;AAClC;AAAA,EAGE;AAAA,EACA;AAAA,OACK;AAKA,IAAM,0BAAoD;AAAA,EAC/D;AAAA,EACA;AAAA,IACE,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,EACpB,EAAE,IAAI,uBAAuB;AAAA,EAC7B,EAAE,IAAI,WAAW;AACnB;AAKO,IAAM,uBAAiD;AAAA,EAC5D;AAAA,EACA;AAAA,IACE,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,EACpB,EAAE,IAAI,uBAAuB;AAAA,EAC7B,EAAE,IAAI,WAAW;AACnB;AAKO,IAAM,6BAA6B;AAInC,IAAM,6BAAuD;AAAA,EAClE;AAAA,EACA,CAAC,kBAAkB,gBAAgB,EAAE,IAAI,uBAAuB;AAAA,EAChE,EAAE,QAAQ,CAAC,UAAU,0BAA0B,EAAE;AACnD;AAKO,IAAM,8BAAwD;AAAA,EACnE;AAAA,EACA,CAAC,kBAAkB,YAAY,EAAE,IAAI,uBAAuB;AAAA,EAC5D,EAAE,KAAK,UAAU;AACnB;AAKO,IAAM,wBAAkD;AAAA,EAC7D;AAAA,EACA,CAAC,kBAAkB,iBAAiB,kBAAkB,eAAe,EAAE;AAAA,IACrE;AAAA,EACF;AAAA,EACA,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,OAAO,SAAS;AAC5C;AAKO,IAAM,yBAAmD;AAAA,EAC9D;AAAA,EACA,CAAC,kBAAkB,KAAK,EAAE,IAAI,uBAAuB;AAAA,EACrD,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,OAAO,UAAU,cAAc,CAAC,OAAO,CAAC,EAAE;AACtE;AAKO,IAAM,sBACX,OAAO,OAAO;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AACI,IAAM,qCAAqC;AAC3C,IAAM,0DACX;AAIK,IAAM,8BAAwD;AAAA,EACnE;AAAA,EACA;AAAA,IACE,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,IAClB,kBAAkB;AAAA,EACpB,EAAE,IAAI,uBAAuB;AAAA,EAC7B,EAAE,CAAC,uDAAuD,GAAG,UAAU;AAAA;AACzE;AAEO,SAAS,iBACd,WACS;AACT,QAAM,OACJ,OAAO,cAAc,WACjB,YACA,2BAA2B,SAAS;AAC1C,SACE,qBAAqB,SAAS,KAC9B,SAAS;AAEb;AACO,SAAS,qBACd,WACS;AACT,QAAM,OACJ,OAAO,cAAc,WACjB,YACA,2BAA2B,SAAS;AAC1C,SAAO,oBAAoB;AAAA,IACzB,CAAC,kBAAkB,2BAA2B,aAAa,MAAM;AAAA,EACnE;AACF;",
6
6
  "names": []
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"decodeASTSchema.d.ts","sourceRoot":"","sources":["../../src/utilities/decodeASTSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EAcb,MAAM,SAAS,CAAC;AACjB,OAAO,EAEL,iBAAiB,EA8BlB,MAAM,sBAAsB,CAAC;AAa9B;;GAEG;AACH,wBAAgB,eAAe,CAC7B,sBAAsB,EAAE,iBAAiB,EAAE,GAC1C,YAAY,CA+Bd"}
1
+ {"version":3,"file":"decodeASTSchema.d.ts","sourceRoot":"","sources":["../../src/utilities/decodeASTSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EAcb,MAAM,SAAS,CAAC;AACjB,OAAO,EAEL,iBAAiB,EAyClB,MAAM,sBAAsB,CAAC;AAiB9B;;GAEG;AACH,wBAAgB,eAAe,CAC7B,sBAAsB,EAAE,iBAAiB,EAAE,GAC1C,YAAY,CA2Cd"}