INNER CODE UNIT · TypeScript
MaxAliasesVisitor
Escape-Technologies/graphql-armor · packages/plugins/max-aliases/src/index.ts:49
class MaxAliasesVisitor {
public readonly OperationDefinition: Record<string, any>;
private readonly context: ValidationContext;
private readonly config: Required<MaxAliasesOptions>;
private readonly visitedFragments: Map<string, number>;
constructor(context: ValidationContext, options?: MaxAliasesOptions) {
this.context = context;
this.config = Object.assign(
{},
maxAliasesDefaultOptions,
...Object.entries(options ?? {}).map(([k, v]) => (v === undefined ? {} : { [k]: v })),
);
this.visitedFragments = new Map();
this.OperationDefinition = {
enter: this.onOperationDefinitionEnter.bind(this),