Skip to content

Commit 59cc09d

Browse files
committed
fix: restore GraphQL defaults in @pgpmjs/env for backward compatibility
Co-Authored-By: Dan Lynch <pyramation@gmail.com>
1 parent 6359f58 commit 59cc09d

1 file changed

Lines changed: 27 additions & 2 deletions

File tree

packages/env/src/merge.ts

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,37 @@ import { pgpmDefaults, PgpmOptions, PgTestConnectionOptions, DeploymentOptions }
33
import { loadConfigSync } from './config';
44
import { getEnvVars, EnvOptions } from './env';
55

6+
/**
7+
* Default values for GraphQL/Graphile-related options.
8+
* These are kept separate from pgpmDefaults to avoid coupling @pgpmjs/types to GraphQL dependencies.
9+
* Note: These are plain objects with no graphile imports - just default values.
10+
*/
11+
const envGraphqlDefaults: Partial<EnvOptions> = {
12+
graphile: {
13+
schema: [],
14+
},
15+
features: {
16+
simpleInflection: true,
17+
oppositeBaseNames: true,
18+
postgis: true
19+
},
20+
api: {
21+
enableMetaApi: true,
22+
exposedSchemas: [],
23+
anonRole: 'administrator',
24+
roleName: 'administrator',
25+
defaultDatabaseId: 'hard-coded',
26+
isPublic: true,
27+
metaSchemas: ['collections_public', 'meta_public']
28+
}
29+
};
30+
631
export const getEnvOptions = (overrides: EnvOptions = {}, cwd: string = process.cwd()): EnvOptions => {
7-
const defaults = pgpmDefaults;
832
const configOptions = loadConfigSync(cwd);
933
const envOptions = getEnvVars();
1034

11-
return deepmerge.all([defaults, configOptions, envOptions, overrides]);
35+
// Merge in order: pgpmDefaults (core) -> envGraphqlDefaults (graphql) -> config -> env -> overrides
36+
return deepmerge.all([pgpmDefaults, envGraphqlDefaults, configOptions, envOptions, overrides]);
1237
};
1338

1439
export const getConnEnvOptions = (overrides: Partial<PgTestConnectionOptions> = {}, cwd: string = process.cwd()): PgTestConnectionOptions => {

0 commit comments

Comments
 (0)