From e72070229439ca0acc988fa48b969cf78296ad58 Mon Sep 17 00:00:00 2001 From: Benjie Gillam Date: Thu, 26 Sep 2024 17:09:56 +0100 Subject: [PATCH] Fix preset default behavior - it should override plugins --- graphile-build/graphile-build/src/behavior.ts | 28 ++++++++++--------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/graphile-build/graphile-build/src/behavior.ts b/graphile-build/graphile-build/src/behavior.ts index f3ee8aaed..95e88ab50 100644 --- a/graphile-build/graphile-build/src/behavior.ts +++ b/graphile-build/graphile-build/src/behavior.ts @@ -194,27 +194,29 @@ export class Behavior { } } + const pluginDefaultBehavior = this.resolveBehavior( + null, + NULL_BEHAVIOR, + plugins.map((p) => [ + `${p.name}.schema.globalBehavior`, + p.schema?.globalBehavior, + ]), + build, + ); const defaultBehaviorFromPreset = this.resolvedPreset.schema?.defaultBehavior ?? ""; - const resolvedDefaultBehavior: ResolvedBehavior = { - behaviorString: defaultBehaviorFromPreset as GraphileBuild.BehaviorString, + this.globalDefaultBehavior = { + behaviorString: + `${pluginDefaultBehavior.behaviorString} ${defaultBehaviorFromPreset}` as GraphileBuild.BehaviorString, stack: [ + ...pluginDefaultBehavior.stack, { source: "preset.schema.defaultBehavior", - prefix: defaultBehaviorFromPreset, - suffix: "", + prefix: "", + suffix: defaultBehaviorFromPreset, }, ], }; - this.globalDefaultBehavior = this.resolveBehavior( - null, - resolvedDefaultBehavior, - plugins.map((p) => [ - `${p.name}.schema.globalBehavior`, - p.schema?.globalBehavior, - ]), - build, - ); orderedApply( plugins,