@har-sdk/core
The base package can be used to import specification files (i.e. HAR, OAS and Postman Collection) and detect their type.
Setup
npm i --save @har-sdk/core
Usage
To import a specification you just need to create an instance of SpecImporter
and call its import
method passing the data file. The importer performs syntactic analysis and parses a provided file.
import { SpecImporter } from '@har-sdk/core';
const result = await new SpecImporter().import(sourceAsString);
console.log(result);
To configure the list of importers, you can pass them as an array to the constructor.
import { SpecImporter, HarImporter } from '@har-sdk/core';
const explorer = new SpecImporter([new HarImporter()]);
To extend an explorer by adding a new custom importer, you can easily implement an Importer
interface.
import { Importer, Doc, Spec, Importer } from '@har-sdk/core';
class RamlImporter implements Importer<'raml'> {
get type(): 'raml' {
return 'raml';
}
async import(content: string): Promise<Spec<'raml'>> {
return {
type: this.type,
format: 'yaml'
};
}
}
The package also contains a set of useful utilities like normalizeUrl
:
import { normalizeUrl } from '@har-sdk/core';
normalizeUrl('HTTP://example.COM////foo////dummy/../bar/?');