INNER CODE UNIT · TypeScript
costLimitRule
Escape-Technologies/graphql-armor · packages/plugins/cost-limit/src/index.ts:199
export const costLimitRule = (options?: CostLimitOptions) => (context: ValidationContext) =>
new CostLimitVisitor(context, options);
/**
* Limit the complexity of a GraphQL document.
*
* Use with `@envelop/core` from `@the-guild-org`.
*/
export const costLimitPlugin = <PluginContext extends Record<string, any> = {}>(
options?: CostLimitOptions,
): Plugin<PluginContext> => {
return {
onValidate({ addValidationRule }: any) {
addValidationRule(costLimitRule(options));
},
};
};