@graphitation/supermassive 3.15.0 → 3.15.2
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.
- package/.eslintcache +1 -1
- package/CHANGELOG.md +18 -2
- package/lib/executeWithoutSchema.d.ts.map +1 -1
- package/lib/executeWithoutSchema.js +83 -15
- package/lib/executeWithoutSchema.js.map +2 -2
- package/lib/executeWithoutSchema.mjs +83 -15
- package/lib/executeWithoutSchema.mjs.map +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
# Change Log - @graphitation/supermassive
|
|
2
2
|
|
|
3
|
-
<!-- This log was last generated on
|
|
3
|
+
<!-- This log was last generated on Tue, 17 Mar 2026 10:17:36 GMT and should not be manually modified. -->
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 3.15.2
|
|
8
|
+
|
|
9
|
+
Tue, 17 Mar 2026 10:17:36 GMT
|
|
10
|
+
|
|
11
|
+
### Patches
|
|
12
|
+
|
|
13
|
+
- [HOTFIX] schema loader added to subscriptions (77059398+vejrj@users.noreply.github.com)
|
|
14
|
+
|
|
15
|
+
## 3.15.1
|
|
16
|
+
|
|
17
|
+
Mon, 16 Mar 2026 17:10:12 GMT
|
|
18
|
+
|
|
19
|
+
### Patches
|
|
20
|
+
|
|
21
|
+
- fix: allows for partial data in case resolver or type definition is missing (dsamsonov@microsoft.com)
|
|
22
|
+
|
|
7
23
|
## 3.15.0
|
|
8
24
|
|
|
9
|
-
Mon, 09 Mar 2026 15:22:
|
|
25
|
+
Mon, 09 Mar 2026 15:22:57 GMT
|
|
10
26
|
|
|
11
27
|
### Minor changes
|
|
12
28
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/executeWithoutSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAIZ,YAAY,EACZ,sBAAsB,EACtB,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,SAAS,CAAC;AACjB,OAAO,EAGL,UAAU,EAEX,MAAM,iBAAiB,CAAC;AAOzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAG3C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,KAAK,EACV,0BAA0B,EAC1B,qBAAqB,EACrB,WAAW,EACX,YAAY,EACZ,eAAe,EACf,oBAAoB,EAKpB,0BAA0B,EAC1B,cAAc,EACd,oBAAoB,EAErB,MAAM,SAAS,CAAC;AAMjB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAgCpD;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,SAAS,EAAE,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC;IACxD,SAAS,EAAE,uBAAuB,CAAC;IACnC,cAAc,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAChD,aAAa,EAAE,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvD,YAAY,EAAE,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,sBAAsB,EAAE,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC5B,mBAAmB,CAAC,EAAE,cAAc,CAAC;IACrC,kBAAkB,EAAE,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC/C,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,0BAA0B,GAC/B,cAAc,CAAC,eAAe,CAAC,CAWjC;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,YAAY,EACtB,iBAAiB,EAAE,KAAK,CAAC;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC,GACxD,IAAI,CAQN;
|
|
1
|
+
{"version":3,"file":"executeWithoutSchema.d.ts","sourceRoot":"","sources":["../src/executeWithoutSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -378,7 +378,13 @@ function executeField(exeContext, parentTypeName, source, fieldGroup, path, incr
|
|
|
378
378
|
fieldName
|
|
379
379
|
});
|
|
380
380
|
if (!loading) {
|
|
381
|
-
|
|
381
|
+
handleMissingSchemaError(
|
|
382
|
+
exeContext,
|
|
383
|
+
void 0,
|
|
384
|
+
fieldGroup,
|
|
385
|
+
path,
|
|
386
|
+
incrementalDataRecord
|
|
387
|
+
);
|
|
382
388
|
return void 0;
|
|
383
389
|
}
|
|
384
390
|
return loading.then(() => {
|
|
@@ -398,17 +404,16 @@ function executeField(exeContext, parentTypeName, source, fieldGroup, path, incr
|
|
|
398
404
|
incrementalDataRecord
|
|
399
405
|
);
|
|
400
406
|
}
|
|
401
|
-
|
|
407
|
+
handleMissingSchemaError(
|
|
408
|
+
exeContext,
|
|
409
|
+
void 0,
|
|
410
|
+
fieldGroup,
|
|
411
|
+
path,
|
|
412
|
+
incrementalDataRecord
|
|
413
|
+
);
|
|
402
414
|
return void 0;
|
|
403
415
|
});
|
|
404
416
|
}
|
|
405
|
-
function throwIfRootField(parentTypeName, fieldName, fieldGroup, validationTarget) {
|
|
406
|
-
const isRootField = parentTypeName === "Mutation" || parentTypeName === "Query";
|
|
407
|
-
if (isRootField) {
|
|
408
|
-
const message = validationTarget === "typeDefinition" ? `Type definition for ${parentTypeName}.${fieldName} is missing` : validationTarget === "resolver" ? `Resolver for ${parentTypeName}.${fieldName} is missing` : "Unexpected validation target";
|
|
409
|
-
throw (0, import_graphql.locatedError)(new Error(message), fieldGroup);
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
417
|
function requestSchemaFragment(exeContext, request) {
|
|
413
418
|
if (!exeContext.schemaFragmentLoader) {
|
|
414
419
|
return;
|
|
@@ -451,8 +456,7 @@ function afterFieldSubscribeHandle(resolved, isDefaultResolverUsed, exeContext,
|
|
|
451
456
|
}
|
|
452
457
|
}
|
|
453
458
|
function executeSubscriptionImpl(exeContext) {
|
|
454
|
-
|
|
455
|
-
const { operation, rootValue, schemaFragment } = exeContext;
|
|
459
|
+
const { operation, schemaFragment } = exeContext;
|
|
456
460
|
const rootTypeName = getOperationRootTypeName(operation);
|
|
457
461
|
const { groupedFieldSet } = (0, import_collectFields.collectFields)(exeContext, rootTypeName);
|
|
458
462
|
const firstRootField = groupedFieldSet.entries().next().value;
|
|
@@ -466,12 +470,52 @@ function executeSubscriptionImpl(exeContext) {
|
|
|
466
470
|
rootTypeName,
|
|
467
471
|
fieldName
|
|
468
472
|
);
|
|
469
|
-
if (
|
|
473
|
+
if (fieldDef) {
|
|
474
|
+
return runSubscriptionResolver(
|
|
475
|
+
exeContext,
|
|
476
|
+
fieldDef,
|
|
477
|
+
fieldName,
|
|
478
|
+
fieldGroup,
|
|
479
|
+
responseName,
|
|
480
|
+
rootTypeName
|
|
481
|
+
);
|
|
482
|
+
}
|
|
483
|
+
const loading = requestSchemaFragment(exeContext, {
|
|
484
|
+
kind: "ReturnType",
|
|
485
|
+
parentTypeName: rootTypeName,
|
|
486
|
+
fieldName
|
|
487
|
+
});
|
|
488
|
+
if (!loading) {
|
|
470
489
|
throw (0, import_graphql.locatedError)(
|
|
471
|
-
`
|
|
490
|
+
`Type definition for ${rootTypeName}.${fieldName} is missing`,
|
|
472
491
|
fieldGroup
|
|
473
492
|
);
|
|
474
493
|
}
|
|
494
|
+
return loading.then(() => {
|
|
495
|
+
const fieldDef2 = Definitions.getField(
|
|
496
|
+
schemaFragment.definitions,
|
|
497
|
+
rootTypeName,
|
|
498
|
+
fieldName
|
|
499
|
+
);
|
|
500
|
+
if (fieldDef2 === void 0) {
|
|
501
|
+
throw (0, import_graphql.locatedError)(
|
|
502
|
+
`Type definition for ${rootTypeName}.${fieldName} is missing`,
|
|
503
|
+
fieldGroup
|
|
504
|
+
);
|
|
505
|
+
}
|
|
506
|
+
return runSubscriptionResolver(
|
|
507
|
+
exeContext,
|
|
508
|
+
fieldDef2,
|
|
509
|
+
fieldName,
|
|
510
|
+
fieldGroup,
|
|
511
|
+
responseName,
|
|
512
|
+
rootTypeName
|
|
513
|
+
);
|
|
514
|
+
});
|
|
515
|
+
}
|
|
516
|
+
function runSubscriptionResolver(exeContext, fieldDef, fieldName, fieldGroup, responseName, rootTypeName) {
|
|
517
|
+
var _a;
|
|
518
|
+
const { rootValue, schemaFragment } = exeContext;
|
|
475
519
|
const returnTypeRef = Definitions.getFieldTypeReference(fieldDef);
|
|
476
520
|
const resolveFn = (_a = Resolvers.getSubscriptionFieldResolver(
|
|
477
521
|
schemaFragment,
|
|
@@ -642,12 +686,30 @@ function buildResolveInfo(exeContext, fieldName, fieldGroup, parentTypeName, ret
|
|
|
642
686
|
function handleFieldError(rawError, exeContext, returnTypeRef, fieldGroup, path, incrementalDataRecord) {
|
|
643
687
|
var _a;
|
|
644
688
|
const error = (0, import_graphql.locatedError)(rawError, fieldGroup, (0, import_Path.pathToArray)(path));
|
|
645
|
-
if ((0, import_reference.isNonNullType)(returnTypeRef)) {
|
|
689
|
+
if (returnTypeRef && (0, import_reference.isNonNullType)(returnTypeRef)) {
|
|
646
690
|
throw error;
|
|
647
691
|
}
|
|
648
692
|
const errors = (_a = incrementalDataRecord == null ? void 0 : incrementalDataRecord.errors) != null ? _a : exeContext.errors;
|
|
649
693
|
errors.push(error);
|
|
650
694
|
}
|
|
695
|
+
function handleMissingSchemaError(exeContext, returnTypeRef, fieldGroup, path, incrementalDataRecord) {
|
|
696
|
+
const parentTypeName = path.typename;
|
|
697
|
+
const isRootField = parentTypeName === "Mutation" || parentTypeName === "Query";
|
|
698
|
+
if (!isRootField) {
|
|
699
|
+
return;
|
|
700
|
+
}
|
|
701
|
+
const fieldName = path.key;
|
|
702
|
+
const message = !returnTypeRef ? `Type definition for ${parentTypeName}.${fieldName} is missing` : `Resolver for ${parentTypeName}.${fieldName} is missing`;
|
|
703
|
+
const error = new Error(message);
|
|
704
|
+
handleFieldError(
|
|
705
|
+
error,
|
|
706
|
+
exeContext,
|
|
707
|
+
returnTypeRef,
|
|
708
|
+
fieldGroup,
|
|
709
|
+
path,
|
|
710
|
+
incrementalDataRecord
|
|
711
|
+
);
|
|
712
|
+
}
|
|
651
713
|
function resolveAndCompleteField(exeContext, parentTypeName, fieldDefinition, fieldGroup, path, source, incrementalDataRecord) {
|
|
652
714
|
var _a;
|
|
653
715
|
const fieldName = fieldGroup[0].name.value;
|
|
@@ -667,7 +729,13 @@ function resolveAndCompleteField(exeContext, parentTypeName, fieldDefinition, fi
|
|
|
667
729
|
);
|
|
668
730
|
const isDefaultResolverUsed = resolveFn === exeContext.fieldResolver || fieldName === "__typename";
|
|
669
731
|
if (resolveFn === exeContext.fieldResolver && typeof source === "undefined") {
|
|
670
|
-
|
|
732
|
+
handleMissingSchemaError(
|
|
733
|
+
exeContext,
|
|
734
|
+
returnTypeRef,
|
|
735
|
+
fieldGroup,
|
|
736
|
+
path,
|
|
737
|
+
incrementalDataRecord
|
|
738
|
+
);
|
|
671
739
|
}
|
|
672
740
|
const hooks = exeContext.fieldExecutionHooks;
|
|
673
741
|
let hookContext = void 0;
|