grafast 1.0.0-rc.7 → 1.0.0-rc.8

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.
@@ -1950,7 +1950,7 @@ class OperationPlan {
1950
1950
  (0, withGlobalLayerPlan_ts_1.withGlobalLayerPlan)(layerPlan, polymorphicPaths, planningPath, null, constant_ts_1.constant, null, null);
1951
1951
  haltTree = true;
1952
1952
  }
1953
- (0, step_ts_1.assertExecutableStep)(step);
1953
+ (0, step_ts_1.assertStep)(step);
1954
1954
  // `undefined` for non-lists (?)
1955
1955
  if (stepStreamOptions !== undefined) {
1956
1956
  // `null` is fine! `undefined` is not.
package/dist/index.d.ts CHANGED
@@ -34,11 +34,11 @@ import { stringifyPayload } from "./stringifyPayload.ts";
34
34
  import { stripAnsi } from "./stripAnsi.ts";
35
35
  import { subscribe } from "./subscribe.ts";
36
36
  import type { GrafastInputFieldConfigMap, GrafastInputObjectType, GrafastObjectType, InputObjectTypeSpec, ObjectTypeFields, ObjectTypeSpec } from "./utils.ts";
37
- import { arrayOfLength, arraysMatch, asyncIteratorWithCleanup, getEnumValueConfig, getEnumValueConfigs, GraphQLSpecifiedErrorBehaviors, inputObjectFieldSpec, isPromiseLike, mapsMatch, maybeArraysMatch, newGrafastFieldConfigBuilder, newInputObjectTypeBuilder, newObjectTypeBuilder, objectFieldSpec, objectSpec, recordsMatch, setsMatch, stepADependsOnStepB, stepAMayDependOnStepB, stepAShouldTryAndInlineIntoStepB, stepsAreInSamePhase } from "./utils.ts";
37
+ import { arrayOfLength, arraysMatch, asyncIteratorWithCleanup, getEnumValueConfig, getEnumValueConfigs, GraphQLSpecifiedErrorBehaviors, inputObjectFieldSpec, isPromiseLike, mapsMatch, markSyncAndSafe, maybeArraysMatch, newGrafastFieldConfigBuilder, newInputObjectTypeBuilder, newObjectTypeBuilder, objectFieldSpec, objectSpec, recordsMatch, setsMatch, stepADependsOnStepB, stepAMayDependOnStepB, stepAShouldTryAndInlineIntoStepB, stepsAreInSamePhase } from "./utils.ts";
38
38
  export { GraphQLDeferDirective, graphqlHasStreamDefer, GraphQLStreamDirective, } from "./incremental.ts";
39
39
  export { isAsyncIterable } from "iterall";
40
40
  export type { __InputObjectStepWithDollars, __TrackedValueStepWithDollars, AbstractTypePlan, AbstractTypePlanner, ActualKeyByDesiredKey, BaseEventMap, BaseGraphQLArguments, BaseGraphQLRootValue, BaseGraphQLVariables, BatchExecutionValue, ConnectionHandlingResult, ConnectionHandlingStep, ConnectionOptimizedStep, DataFromObjectSteps, DataFromStep, DeprecatedInputObjectPlan, DeprecatedObjectPlan, EnumPlan, EnumValueConfig, EnumValueInput, ErrorBehavior, EventCallback, EventMapKey, ExecutionDetails, ExecutionDetailsStream, ExecutionEventEmitter, ExecutionEventMap, ExecutionExtra, ExecutionResults, ExecutionResultValue, ExecutionValue, FieldArg, FieldArgs, FieldInfo, FieldPlan, FieldPlanResolver, FilterPlanMemo, GrafastArgumentConfig, GrafastExecutionArgs, GrafastFieldConfig, GrafastFieldConfigArgumentMap, GrafastInputFieldConfig, GrafastInputFieldConfigMap, GrafastInputObjectType, GrafastObjectType, GrafastPlanJSON, GrafastResultsList, GrafastResultStreamList, GrafastSchemaConfig, GrafastSubscriber, GrafastValuesList, GroupByPlanMemo, InputFieldPlan, InputObjectFieldApplyResolver, InputObjectFieldConfig, InputObjectPlan, InputObjectTypeBakedInfo, InputObjectTypeBakedResolver, InputObjectTypeSpec, InterfacePlan, JSONArray, JSONObject, JSONValue, ListCapableStep, ListLikeStep, ListTransformItemPlanCallback, ListTransformOptions, ListTransformReduce, LoadManyCallback, LoadManyInfo, LoadManyLoader, LoadOneCallback, LoadOneInfo, LoadOneLoader, Maybe, Multistep, NodeIdCodec, NodeIdHandler, ObjectFieldConfig, ObjectLikeStep, ObjectPlan, ObjectPlanMeta, ObjectTypeFields, ObjectTypeSpec, PaginationFeatures, PaginationParams, PlanTypeInfo, PromiseOrDirect, ScalarPlan, ScalarPlanResolver, SetterCapable, StepOptimizeOptions, StepRepresentingList, StepStreamOptions, Thunk, TypedEventEmitter, UnaryExecutionValue, UnbatchedExecutionExtra, UnionPlan, UnwrapMultistep, };
41
- export { __FlagStep, __InputListStep, __InputObjectStep, __InputStaticLeafStep, __ItemStep, __ListTransformStep, __TrackedValueStep, __ValueStep, $$bypassGraphQL, $$eventEmitter, $$extensions, $$idempotent, $$inhibit, $$verbatim, access, AccessStep, applyInput, ApplyInputStep, applyTransforms, ApplyTransformsStep, arrayOfLength, arraysMatch, assertExecutableStep, assertListCapableStep, assertModifier, assertNotNull, assertStep, asyncIteratorWithCleanup, bakedInput, bakedInputRuntime, BakedInputStep, coalesce, CoalesceStep, condition, ConditionStep, connection, ConnectionStep, constant, ConstantStep, context, createObjectAndApplyChildren, currentFieldStreamDetails, debugPlans, DEFAULT_ACCEPT_FLAGS, defaultPlanResolver, each, EdgeStep, error, ErrorStep, Step as ExecutableStep, execute, exportAs, exportAsMany, filter, first, FirstStep, flagError, get, getEnumValueConfig, getEnumValueConfigs, getGrafastMiddleware, getNullableInputTypeAtPath, grafast, grafast as grafastGraphql, grafastSync as grafastGraphqlSync, grafastPrint, grafastSync, graphqlResolver, GraphQLResolverStep, GraphQLSpecifiedErrorBehaviors, groupBy, inhibitOnNull, inputObjectFieldSpec, inspect, isDev, isExecutableStep, isListCapableStep, isListLikeStep, isModifier, isObjectLikeStep, isPromiseLike, isSafeError, isStep, isUnaryStep, lambda, LambdaStep, last, LastStep, list, listen, ListenStep, ListStep, listTransform, LoadedRecordStep, loadMany, loadManyCallback, loadManyLoader, LoadManyStep, loadOne, loadOneCallback, loadOneLoader, LoadOneStep, makeDecodeNodeId, makeDecodeNodeIdRuntime, makeGrafastSchema, mapsMatch, maybeArraysMatch, Modifier, multistep, newGrafastFieldConfigBuilder, newInputObjectTypeBuilder, newObjectTypeBuilder, nodeIdFromNode, noop, object, objectFieldSpec, objectSpec, ObjectStep, OperationPlan, operationPlan, partitionByIndex, promiseWithResolve, proxy, ProxyStep, recordsMatch, remapKeys, RemapKeysStep, reverse, reverseArray, ReverseStep, rootValue, SafeError, setsMatch, Setter, setter, sideEffect, SideEffectStep, specFromNodeId, Step, stepADependsOnStepB, stepAMayDependOnStepB, stepAShouldTryAndInlineIntoStepB, stepsAreInSamePhase, stringifyPayload, stripAnsi, subscribe, trap, TRAP_ERROR, TRAP_ERROR_OR_INHIBITED, TRAP_INHIBITED, UnbatchedStep as UnbatchedExecutableStep, UnbatchedStep, };
41
+ export { __FlagStep, __InputListStep, __InputObjectStep, __InputStaticLeafStep, __ItemStep, __ListTransformStep, __TrackedValueStep, __ValueStep, $$bypassGraphQL, $$eventEmitter, $$extensions, $$idempotent, $$inhibit, $$verbatim, access, AccessStep, applyInput, ApplyInputStep, applyTransforms, ApplyTransformsStep, arrayOfLength, arraysMatch, assertExecutableStep, assertListCapableStep, assertModifier, assertNotNull, assertStep, asyncIteratorWithCleanup, bakedInput, bakedInputRuntime, BakedInputStep, coalesce, CoalesceStep, condition, ConditionStep, connection, ConnectionStep, constant, ConstantStep, context, createObjectAndApplyChildren, currentFieldStreamDetails, debugPlans, DEFAULT_ACCEPT_FLAGS, defaultPlanResolver, each, EdgeStep, error, ErrorStep, Step as ExecutableStep, execute, exportAs, exportAsMany, filter, first, FirstStep, flagError, get, getEnumValueConfig, getEnumValueConfigs, getGrafastMiddleware, getNullableInputTypeAtPath, grafast, grafast as grafastGraphql, grafastSync as grafastGraphqlSync, grafastPrint, grafastSync, graphqlResolver, GraphQLResolverStep, GraphQLSpecifiedErrorBehaviors, groupBy, inhibitOnNull, inputObjectFieldSpec, inspect, isDev, isExecutableStep, isListCapableStep, isListLikeStep, isModifier, isObjectLikeStep, isPromiseLike, isSafeError, isStep, isUnaryStep, lambda, LambdaStep, last, LastStep, list, listen, ListenStep, ListStep, listTransform, LoadedRecordStep, loadMany, loadManyCallback, loadManyLoader, LoadManyStep, loadOne, loadOneCallback, loadOneLoader, LoadOneStep, makeDecodeNodeId, makeDecodeNodeIdRuntime, makeGrafastSchema, mapsMatch, markSyncAndSafe, maybeArraysMatch, Modifier, multistep, newGrafastFieldConfigBuilder, newInputObjectTypeBuilder, newObjectTypeBuilder, nodeIdFromNode, noop, object, objectFieldSpec, objectSpec, ObjectStep, OperationPlan, operationPlan, partitionByIndex, promiseWithResolve, proxy, ProxyStep, recordsMatch, remapKeys, RemapKeysStep, reverse, reverseArray, ReverseStep, rootValue, SafeError, setsMatch, Setter, setter, sideEffect, SideEffectStep, specFromNodeId, Step, stepADependsOnStepB, stepAMayDependOnStepB, stepAShouldTryAndInlineIntoStepB, stepsAreInSamePhase, stringifyPayload, stripAnsi, subscribe, trap, TRAP_ERROR, TRAP_ERROR_OR_INHIBITED, TRAP_INHIBITED, UnbatchedStep as UnbatchedExecutableStep, UnbatchedStep, };
42
42
  export type { PromiseWithResolve } from "./promiseWithResolve.ts";
43
43
  export { hookArgs } from "./args.ts";
44
44
  export { version } from "./version.ts";
package/dist/index.js CHANGED
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.each = exports.defaultPlanResolver = exports.DEFAULT_ACCEPT_FLAGS = exports.debugPlans = exports.currentFieldStreamDetails = exports.createObjectAndApplyChildren = exports.context = exports.ConstantStep = exports.constant = exports.ConnectionStep = exports.connection = exports.ConditionStep = exports.condition = exports.CoalesceStep = exports.coalesce = exports.BakedInputStep = exports.bakedInputRuntime = exports.bakedInput = exports.asyncIteratorWithCleanup = exports.assertStep = exports.assertNotNull = exports.assertModifier = exports.assertListCapableStep = exports.assertExecutableStep = exports.arraysMatch = exports.arrayOfLength = exports.ApplyTransformsStep = exports.applyTransforms = exports.ApplyInputStep = exports.applyInput = exports.AccessStep = exports.access = exports.$$verbatim = exports.$$inhibit = exports.$$idempotent = exports.$$extensions = exports.$$eventEmitter = exports.$$bypassGraphQL = exports.__ValueStep = exports.__TrackedValueStep = exports.__ListTransformStep = exports.__ItemStep = exports.__InputStaticLeafStep = exports.__InputObjectStep = exports.__InputListStep = exports.__FlagStep = exports.isAsyncIterable = exports.GraphQLStreamDirective = exports.graphqlHasStreamDefer = exports.GraphQLDeferDirective = void 0;
4
4
  exports.loadManyCallback = exports.loadMany = exports.LoadedRecordStep = exports.listTransform = exports.ListStep = exports.ListenStep = exports.listen = exports.list = exports.LastStep = exports.last = exports.LambdaStep = exports.lambda = exports.isUnaryStep = exports.isStep = exports.isSafeError = exports.isPromiseLike = exports.isObjectLikeStep = exports.isModifier = exports.isListLikeStep = exports.isListCapableStep = exports.isExecutableStep = exports.isDev = exports.inspect = exports.inputObjectFieldSpec = exports.inhibitOnNull = exports.groupBy = exports.GraphQLSpecifiedErrorBehaviors = exports.GraphQLResolverStep = exports.graphqlResolver = exports.grafastSync = exports.grafastPrint = exports.grafastGraphqlSync = exports.grafastGraphql = exports.grafast = exports.getNullableInputTypeAtPath = exports.getGrafastMiddleware = exports.getEnumValueConfigs = exports.getEnumValueConfig = exports.get = exports.flagError = exports.FirstStep = exports.first = exports.filter = exports.exportAsMany = exports.exportAs = exports.execute = exports.ExecutableStep = exports.ErrorStep = exports.error = exports.EdgeStep = void 0;
5
- exports.subscribe = exports.stripAnsi = exports.stringifyPayload = exports.stepsAreInSamePhase = exports.stepAShouldTryAndInlineIntoStepB = exports.stepAMayDependOnStepB = exports.stepADependsOnStepB = exports.Step = exports.specFromNodeId = exports.SideEffectStep = exports.sideEffect = exports.setter = exports.Setter = exports.setsMatch = exports.SafeError = exports.rootValue = exports.ReverseStep = exports.reverseArray = exports.reverse = exports.RemapKeysStep = exports.remapKeys = exports.recordsMatch = exports.ProxyStep = exports.proxy = exports.promiseWithResolve = exports.partitionByIndex = exports.operationPlan = exports.OperationPlan = exports.ObjectStep = exports.objectSpec = exports.objectFieldSpec = exports.object = exports.noop = exports.nodeIdFromNode = exports.newObjectTypeBuilder = exports.newInputObjectTypeBuilder = exports.newGrafastFieldConfigBuilder = exports.multistep = exports.Modifier = exports.maybeArraysMatch = exports.mapsMatch = exports.makeGrafastSchema = exports.makeDecodeNodeIdRuntime = exports.makeDecodeNodeId = exports.LoadOneStep = exports.loadOneLoader = exports.loadOneCallback = exports.loadOne = exports.LoadManyStep = exports.loadManyLoader = void 0;
6
- exports.version = exports.hookArgs = exports.UnbatchedStep = exports.UnbatchedExecutableStep = exports.TRAP_INHIBITED = exports.TRAP_ERROR_OR_INHIBITED = exports.TRAP_ERROR = exports.trap = void 0;
5
+ exports.stripAnsi = exports.stringifyPayload = exports.stepsAreInSamePhase = exports.stepAShouldTryAndInlineIntoStepB = exports.stepAMayDependOnStepB = exports.stepADependsOnStepB = exports.Step = exports.specFromNodeId = exports.SideEffectStep = exports.sideEffect = exports.setter = exports.Setter = exports.setsMatch = exports.SafeError = exports.rootValue = exports.ReverseStep = exports.reverseArray = exports.reverse = exports.RemapKeysStep = exports.remapKeys = exports.recordsMatch = exports.ProxyStep = exports.proxy = exports.promiseWithResolve = exports.partitionByIndex = exports.operationPlan = exports.OperationPlan = exports.ObjectStep = exports.objectSpec = exports.objectFieldSpec = exports.object = exports.noop = exports.nodeIdFromNode = exports.newObjectTypeBuilder = exports.newInputObjectTypeBuilder = exports.newGrafastFieldConfigBuilder = exports.multistep = exports.Modifier = exports.maybeArraysMatch = exports.markSyncAndSafe = exports.mapsMatch = exports.makeGrafastSchema = exports.makeDecodeNodeIdRuntime = exports.makeDecodeNodeId = exports.LoadOneStep = exports.loadOneLoader = exports.loadOneCallback = exports.loadOne = exports.LoadManyStep = exports.loadManyLoader = void 0;
6
+ exports.version = exports.hookArgs = exports.UnbatchedStep = exports.UnbatchedExecutableStep = exports.TRAP_INHIBITED = exports.TRAP_ERROR_OR_INHIBITED = exports.TRAP_ERROR = exports.trap = exports.subscribe = void 0;
7
7
  const tslib_1 = require("tslib");
8
8
  require("./thereCanBeOnlyOne.js");
9
9
  const debug_1 = tslib_1.__importDefault(require("debug"));
@@ -173,6 +173,7 @@ Object.defineProperty(exports, "GraphQLSpecifiedErrorBehaviors", { enumerable: t
173
173
  Object.defineProperty(exports, "inputObjectFieldSpec", { enumerable: true, get: function () { return utils_ts_1.inputObjectFieldSpec; } });
174
174
  Object.defineProperty(exports, "isPromiseLike", { enumerable: true, get: function () { return utils_ts_1.isPromiseLike; } });
175
175
  Object.defineProperty(exports, "mapsMatch", { enumerable: true, get: function () { return utils_ts_1.mapsMatch; } });
176
+ Object.defineProperty(exports, "markSyncAndSafe", { enumerable: true, get: function () { return utils_ts_1.markSyncAndSafe; } });
176
177
  Object.defineProperty(exports, "maybeArraysMatch", { enumerable: true, get: function () { return utils_ts_1.maybeArraysMatch; } });
177
178
  Object.defineProperty(exports, "newGrafastFieldConfigBuilder", { enumerable: true, get: function () { return utils_ts_1.newGrafastFieldConfigBuilder; } });
178
179
  Object.defineProperty(exports, "newInputObjectTypeBuilder", { enumerable: true, get: function () { return utils_ts_1.newInputObjectTypeBuilder; } });
@@ -208,7 +209,6 @@ Object.defineProperty(exports, "isAsyncIterable", { enumerable: true, get: funct
208
209
  stringifyPayload: stringifyPayload_ts_1.stringifyPayload,
209
210
  __InputObjectStep: index_ts_1.__InputObjectStep,
210
211
  __InputStaticLeafStep: index_ts_1.__InputStaticLeafStep,
211
- assertExecutableStep: step_ts_1.assertExecutableStep,
212
212
  assertStep: step_ts_1.assertStep,
213
213
  assertListCapableStep: step_ts_1.assertListCapableStep,
214
214
  assertModifier: index_ts_1.assertModifier,
@@ -305,6 +305,7 @@ Object.defineProperty(exports, "isAsyncIterable", { enumerable: true, get: funct
305
305
  stepADependsOnStepB: utils_ts_1.stepADependsOnStepB,
306
306
  stepAMayDependOnStepB: utils_ts_1.stepAMayDependOnStepB,
307
307
  stepsAreInSamePhase: utils_ts_1.stepsAreInSamePhase,
308
+ markSyncAndSafe: utils_ts_1.markSyncAndSafe,
308
309
  asyncIteratorWithCleanup: utils_ts_1.asyncIteratorWithCleanup,
309
310
  stepAShouldTryAndInlineIntoStepB: utils_ts_1.stepAShouldTryAndInlineIntoStepB,
310
311
  isPromiseLike: utils_ts_1.isPromiseLike,
package/dist/step.d.ts CHANGED
@@ -293,7 +293,7 @@ Step as ExecutableStep,
293
293
  /** @deprecated Use UnbatchedStep instead */
294
294
  UnbatchedStep as UnbatchedExecutableStep, };
295
295
  /** @deprecated Use isStep instead */
296
- export declare const isExecutableStep: typeof isStep;
297
- /** @deprecated Use isStep instead */
296
+ export declare function isExecutableStep<TData = any>(step: unknown): step is Step<TData>;
297
+ /** @deprecated Use assertStep instead */
298
298
  export declare function assertExecutableStep<TData>(step: unknown): asserts step is Step<TData>;
299
299
  //# sourceMappingURL=step.d.ts.map
package/dist/step.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var _a, _b;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.isExecutableStep = exports.UnbatchedExecutableStep = exports.ExecutableStep = exports.UnbatchedStep = exports.Step = exports.assertFinalized = exports.$$noExec = void 0;
4
+ exports.UnbatchedExecutableStep = exports.ExecutableStep = exports.UnbatchedStep = exports.Step = exports.assertFinalized = exports.$$noExec = void 0;
5
5
  exports.isStep = isStep;
6
6
  exports.assertStep = assertStep;
7
7
  exports.isUnbatchedStep = isUnbatchedStep;
@@ -11,6 +11,7 @@ exports.isListCapableStep = isListCapableStep;
11
11
  exports.assertListCapableStep = assertListCapableStep;
12
12
  exports.stepHasToSpecifier = stepHasToSpecifier;
13
13
  exports.stepHasToRecord = stepHasToRecord;
14
+ exports.isExecutableStep = isExecutableStep;
14
15
  exports.assertExecutableStep = assertExecutableStep;
15
16
  const tslib_1 = require("tslib");
16
17
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
@@ -547,9 +548,11 @@ function stepHasToRecord($step) {
547
548
  return typeof $step.toRecord === "function";
548
549
  }
549
550
  /** @deprecated Use isStep instead */
550
- exports.isExecutableStep = isStep;
551
- /** @deprecated Use isStep instead */
551
+ function isExecutableStep(step) {
552
+ return isStep(step);
553
+ }
554
+ /** @deprecated Use assertStep instead */
552
555
  function assertExecutableStep(step) {
553
- return assertStep(step);
556
+ assertStep(step);
554
557
  }
555
558
  //# sourceMappingURL=step.js.map
@@ -22,7 +22,7 @@ class ListenStep extends step_ts_1.Step {
22
22
  this.initialEventDep = null;
23
23
  this.itemPlan = itemPlan;
24
24
  const $topic = typeof topicOrPlan === "string" ? (0, constant_ts_1.constant)(topicOrPlan) : topicOrPlan;
25
- const $pubsub = (0, step_ts_1.isExecutableStep)(pubsubOrPlan)
25
+ const $pubsub = (0, step_ts_1.isStep)(pubsubOrPlan)
26
26
  ? pubsubOrPlan
27
27
  : (0, constant_ts_1.constant)(pubsubOrPlan, false);
28
28
  this.pubsubDep = this.addDependency($pubsub);
@@ -14,12 +14,9 @@ import type { Step } from "../step.ts";
14
14
  */
15
15
  export declare function specFromNodeId<THandler extends NodeIdHandler<any> = NodeIdHandler<any>>(handler: THandler, $id: Step<Maybe<string>>): ReturnType<THandler["getSpec"]>;
16
16
  export declare function nodeIdFromNode(handler: NodeIdHandler<any>, $node: Step): import("./lambda.ts").LambdaStep<any, string | null>;
17
- export declare function makeDecodeNodeIdRuntime(handlers: readonly NodeIdHandler[]): {
18
- (raw: string | null | undefined): {
19
- [codecName: string]: any;
20
- } | null;
21
- isSyncAndSafe: boolean;
22
- };
17
+ export declare function makeDecodeNodeIdRuntime(handlers: readonly NodeIdHandler[]): (raw: string | null | undefined) => {
18
+ [codecName: string]: any;
19
+ } | null;
23
20
  export declare function makeDecodeNodeId(handlers: readonly NodeIdHandler[]): ($id: Step<string | null | undefined>) => import("./lambda.ts").LambdaStep<string | null | undefined, {
24
21
  [codecName: string]: any;
25
22
  } | null>;
@@ -4,6 +4,7 @@ exports.specFromNodeId = specFromNodeId;
4
4
  exports.nodeIdFromNode = nodeIdFromNode;
5
5
  exports.makeDecodeNodeIdRuntime = makeDecodeNodeIdRuntime;
6
6
  exports.makeDecodeNodeId = makeDecodeNodeId;
7
+ const utils_ts_1 = require("../utils.js");
7
8
  const constant_ts_1 = require("./constant.js");
8
9
  const lambda_ts_1 = require("./lambda.js");
9
10
  /**
@@ -37,14 +38,14 @@ function decodeNodeIdWithHandler(details) {
37
38
  return null;
38
39
  }
39
40
  }
40
- decodeNodeIdWithHandler.isSyncAndSafe = true; // Optimization
41
+ (0, utils_ts_1.markSyncAndSafe)(decodeNodeIdWithHandler);
41
42
  function nodeIdFromNode(handler, $node) {
42
43
  const specifier = handler.plan($node);
43
44
  return (0, lambda_ts_1.lambda)(specifier, handler.codec.encode);
44
45
  }
45
46
  function makeDecodeNodeIdRuntime(handlers) {
46
47
  const codecs = [...new Set(handlers.map((h) => h.codec))];
47
- function decodeNodeIdWithCodecs(raw) {
48
+ return (0, utils_ts_1.markSyncAndSafe)(function decodeNodeIdWithCodecs(raw) {
48
49
  if (raw == null)
49
50
  return null;
50
51
  return codecs.reduce((memo, codec) => {
@@ -56,9 +57,7 @@ function makeDecodeNodeIdRuntime(handlers) {
56
57
  }
57
58
  return memo;
58
59
  }, { raw });
59
- }
60
- decodeNodeIdWithCodecs.isSyncAndSafe = true; // Optimization
61
- return decodeNodeIdWithCodecs;
60
+ });
62
61
  }
63
62
  function makeDecodeNodeId(handlers) {
64
63
  const decodeNodeIdWithCodecs = makeDecodeNodeIdRuntime(handlers);
package/dist/utils.d.ts CHANGED
@@ -203,5 +203,8 @@ export declare const sleep: (ms: number) => Promise<unknown>;
203
203
  export declare function asyncIteratorWithCleanup<T>(iterable: AsyncIterable<T, void, never>, callback: (error?: unknown) => void): AsyncGenerator<T, void, never> & AsyncIteratorObject<T, void, never>;
204
204
  export declare function terminateIterable(iterable: readonly any[] | Iterable<any> | AsyncIterable<any>): void;
205
205
  export declare const GraphQLSpecifiedErrorBehaviors: readonly ["PROPAGATE", "NULL", "HALT"];
206
+ export declare function markSyncAndSafe<T extends ((...args: any) => any) & {
207
+ displayName?: string;
208
+ }>(fn: T, displayName?: string): T;
206
209
  export {};
207
210
  //# sourceMappingURL=utils.d.ts.map
package/dist/utils.js CHANGED
@@ -44,6 +44,7 @@ exports.stableStringSort = stableStringSort;
44
44
  exports.stableStringSortFirstTupleEntry = stableStringSortFirstTupleEntry;
45
45
  exports.asyncIteratorWithCleanup = asyncIteratorWithCleanup;
46
46
  exports.terminateIterable = terminateIterable;
47
+ exports.markSyncAndSafe = markSyncAndSafe;
47
48
  const tslib_1 = require("tslib");
48
49
  const graphql = tslib_1.__importStar(require("graphql"));
49
50
  const assert = tslib_1.__importStar(require("./assert.js"));
@@ -1147,4 +1148,14 @@ exports.GraphQLSpecifiedErrorBehaviors = Object.freeze([
1147
1148
  "NULL",
1148
1149
  "HALT",
1149
1150
  ]);
1151
+ const IS_SYNC_AND_SAFE = Object.freeze({
1152
+ isSyncAndSafe: true,
1153
+ });
1154
+ function markSyncAndSafe(fn, displayName) {
1155
+ Object.assign(fn, IS_SYNC_AND_SAFE);
1156
+ if (displayName) {
1157
+ fn.displayName = displayName;
1158
+ }
1159
+ return fn;
1160
+ }
1150
1161
  //# sourceMappingURL=utils.js.map
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "1.0.0-rc.7";
1
+ export declare const version = "1.0.0-rc.8";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
4
  // This file is autogenerated by /scripts/postversion.mjs
5
- exports.version = "1.0.0-rc.7";
5
+ exports.version = "1.0.0-rc.8";
6
6
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "grafast",
3
- "version": "1.0.0-rc.7",
3
+ "version": "1.0.0-rc.8",
4
4
  "description": "Cutting edge GraphQL planning and execution engine",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",