From 64a98b5fe6016477ac3b4b379799495b9e449432 Mon Sep 17 00:00:00 2001 From: Andreas Stenius Date: Mon, 22 Feb 2021 10:40:51 +0100 Subject: [PATCH] cli: fix types. Signed-off-by: Andreas Stenius --- packages/cli/src/commands/config/schema.ts | 9 +++++++-- packages/config-loader/src/index.ts | 6 +++++- packages/config-loader/src/lib/schema/compile.ts | 6 +++++- packages/config-loader/src/lib/schema/index.ts | 6 +++++- 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/packages/cli/src/commands/config/schema.ts b/packages/cli/src/commands/config/schema.ts index 6badec6b6d..17525ec48b 100644 --- a/packages/cli/src/commands/config/schema.ts +++ b/packages/cli/src/commands/config/schema.ts @@ -17,7 +17,10 @@ import { Command } from 'commander'; import { stringify as stringifyYaml } from 'yaml'; import { loadCliConfig } from '../../lib/config'; -import { mergeConfigSchemas } from '@backstage/config-loader'; +import { + mergeConfigSchemas, + ConfigSchemaPackageEntry, +} from '@backstage/config-loader'; export default async (cmd: Command) => { const { schema } = await loadCliConfig({ @@ -26,7 +29,9 @@ export default async (cmd: Command) => { mockEnv: true, }); - const { schema: data } = mergeConfigSchemas(schema.serialize().schemas); + const { schema: data } = mergeConfigSchemas( + schema.serialize().schemas as ConfigSchemaPackageEntry[], + ); if (cmd.format === 'json') { process.stdout.write(`${JSON.stringify(data, null, 2)}\n`); diff --git a/packages/config-loader/src/index.ts b/packages/config-loader/src/index.ts index d9e5ae1350..4878e9d098 100644 --- a/packages/config-loader/src/index.ts +++ b/packages/config-loader/src/index.ts @@ -15,6 +15,10 @@ */ export { readEnvConfig, loadConfigSchema, mergeConfigSchemas } from './lib'; -export type { ConfigSchema, ConfigVisibility } from './lib'; +export type { + ConfigSchema, + ConfigSchemaPackageEntry, + ConfigVisibility, +} from './lib'; export { loadConfig } from './loader'; export type { LoadConfigOptions } from './loader'; diff --git a/packages/config-loader/src/lib/schema/compile.ts b/packages/config-loader/src/lib/schema/compile.ts index 0cbd075893..0ac1ea8045 100644 --- a/packages/config-loader/src/lib/schema/compile.ts +++ b/packages/config-loader/src/lib/schema/compile.ts @@ -72,7 +72,11 @@ export function compileConfigSchemas( */ export function mergeConfigSchemas( schemas: ConfigSchemaPackageEntry[], -): { schema: JSONSchema; parser: Ajv } { +): { + schema: JSONSchema; + parser: Ajv; + visibilityByPath: Map; +} { // The ajv instance below is stateful and doesn't really allow for additional // output during validation. We work around this by having this extra piece // of state that we reset before each validation. diff --git a/packages/config-loader/src/lib/schema/index.ts b/packages/config-loader/src/lib/schema/index.ts index 00bb5c7d10..dc2e471a28 100644 --- a/packages/config-loader/src/lib/schema/index.ts +++ b/packages/config-loader/src/lib/schema/index.ts @@ -16,4 +16,8 @@ export { mergeConfigSchemas } from './compile'; export { loadConfigSchema } from './load'; -export type { ConfigSchema, ConfigVisibility } from './types'; +export type { + ConfigSchema, + ConfigSchemaPackageEntry, + ConfigVisibility, +} from './types';