diff --git a/packages/core/src/lib/createSystem.ts b/packages/core/src/lib/createSystem.ts index 615fac636d2..2121bb9a088 100644 --- a/packages/core/src/lib/createSystem.ts +++ b/packages/core/src/lib/createSystem.ts @@ -201,7 +201,7 @@ function formatUrl (provider: ResolvedKeystoneConfig['db']['provider'], url: str } export function createSystem (config_: KeystoneConfig | ResolvedKeystoneConfig) { - const config = resolveDefaults(config_ as KeystoneConfig) + const config = resolveDefaults(config_ as KeystoneConfig, true) const lists = initialiseLists(config) const adminMeta = createAdminMeta(config, lists) const graphQLSchema = createGraphQLSchema(config, lists, adminMeta, false) diff --git a/packages/core/src/lib/defaults.ts b/packages/core/src/lib/defaults.ts index 2772e902c00..d3caa91db4c 100644 --- a/packages/core/src/lib/defaults.ts +++ b/packages/core/src/lib/defaults.ts @@ -76,7 +76,7 @@ function defaultIsAccessAllowed ({ session, sessionStrategy }: KeystoneContext) export async function noop () {} function identity (x: T) { return x } -export function resolveDefaults (config: KeystoneConfig): ResolvedKeystoneConfig { +export function resolveDefaults (config: KeystoneConfig, injectIdField = false): ResolvedKeystoneConfig { if (!['postgresql', 'sqlite', 'mysql'].includes(config.db.provider)) { throw new TypeError(`"db.provider" only supports "sqlite", "postgresql" or "mysql"`) } @@ -126,7 +126,7 @@ export function resolveDefaults (config: schemaPath: config.graphql?.schemaPath ?? 'schema.graphql', extendGraphqlSchema: config.graphql?.extendGraphqlSchema ?? ((s) => s), }, - lists: injectDefaults(config, defaultIdField), + lists: injectIdField ? injectDefaults(config, defaultIdField) : config.lists, server: { maxFileSize: 200 * 1024 * 1024, // 200 MiB extendExpressApp: config.server?.extendExpressApp ?? noop,