async function generateSchemaConfigs()

in generator/generate.ts [221:243]


async function generateSchemaConfigs(schemaFilePath: string, namespace: string, apiVersion: string, autoGenConfig?: AutoGenConfig): Promise<SchemaConfiguration[]> {
    namespace = autoGenConfig?.namespace ?? namespace;
    const suffix = autoGenConfig?.suffix;
    const relativePath = `${apiVersion}/${getSchemaFileName(namespace, suffix)}`;

    const configs = [];
    const mainSchema = await readJsonFile(schemaFilePath);

    if (autoGenConfig?.postProcessor) {
        await autoGenConfig.postProcessor(namespace, apiVersion, mainSchema, async (additionalFileName, additionalSchema) => {
            const additionalFilePath = path.resolve(schemaFilePath, '..', additionalFileName);
            await writeJsonFile(additionalFilePath, additionalSchema);

            configs.push(getSchemaConfig(additionalFilePath, additionalSchema, namespace, apiVersion, `${apiVersion}/${additionalFileName}`, autoGenConfig));
        });

        await writeJsonFile(schemaFilePath, mainSchema);
    }

    configs.push(getSchemaConfig(schemaFilePath, mainSchema, namespace, apiVersion, relativePath, autoGenConfig));

    return configs;
}