INNER CODE UNIT · TypeScript
maxAliasesRule
Escape-Technologies/graphql-armor · packages/plugins/max-aliases/src/index.ts:134
const maxAliasesRule = (options?: MaxAliasesOptions) => (context: ValidationContext) =>
new MaxAliasesVisitor(context, options);
/**
* Limit the number of aliases in a GraphQL document.
*
* It is used to prevent DOS attack or heap overflow.
*
* Use with `@envelop/core` from `@the-guild-org`.
*/
const maxAliasesPlugin = <PluginContext extends Record<string, any> = {}>(
options?: MaxAliasesOptions,
): Plugin<PluginContext> => {
return {
onValidate({ addValidationRule }: any) {
addValidationRule(maxAliasesRule(options));
},
};