refactor: split in two packages: core and cli (#223)

This commit is contained in:
Andriy Leliv
2020-11-13 21:13:47 +02:00
committed by GitHub
parent 8f2dc079d7
commit 9ec79d21ea
180 changed files with 11778 additions and 3204 deletions

View File

@@ -0,0 +1,31 @@
import * as yaml from 'js-yaml';
import { Document, Source } from '../resolve';
import { Oas3RuleSet } from '../validate';
import { RuleConfig, LintConfig, Plugin } from '../config/config';
export function parseYamlToDocument(body: string, absoluteRef: string = ''): Document {
return {
source: new Source(absoluteRef, body),
parsed: yaml.safeLoad(body, { filename: absoluteRef }),
};
}
export function makeConfigForRuleset(rules: Oas3RuleSet, plugin?: Partial<Plugin>) {
const rulesConf: Record<string, RuleConfig> = {};
const ruleId = 'test';
Object.keys(rules).forEach((name) => {
rulesConf[`${ruleId}/${name}`] = 'error';
});
return new LintConfig({
plugins: [
{
...plugin,
id: ruleId,
rules: { oas3: rules },
},
],
extends: [],
rules: rulesConf,
});
}