mirror of
https://github.com/Kong/insomnia
synced 2024-11-08 06:39:48 +00:00
e987931805
* Added support for async importers * Swagger importer v0.1 - supports import of workspace, environment and endpoints from swagger 2.0 specifications. Supports query params, headers and body. Mocks body of application/json endpoitns * Refactor: added comments, removed function-in-function declarations * Fixed import of yaml files. Added tests for both .json and .yaml
38 lines
1000 B
JavaScript
Executable File
38 lines
1000 B
JavaScript
Executable File
const utils = require('./src/utils');
|
|
|
|
const importers = [
|
|
require('./src/importers/insomnia-1'),
|
|
require('./src/importers/insomnia-2'),
|
|
require('./src/importers/insomnia-3'),
|
|
require('./src/importers/postman'),
|
|
require('./src/importers/postman-env'),
|
|
require('./src/importers/har'),
|
|
require('./src/importers/curl'),
|
|
require('./src/importers/swagger2')
|
|
];
|
|
|
|
module.exports.convert = async function (contents) {
|
|
for (const importer of importers) {
|
|
const resources = await importer.convert(contents);
|
|
|
|
if (resources) {
|
|
return {
|
|
type: {
|
|
id: importer.id,
|
|
name: importer.name,
|
|
description: importer.description
|
|
},
|
|
data: {
|
|
_type: 'export',
|
|
__export_format: 3,
|
|
__export_date: utils.getDateString(),
|
|
__export_source: 'insomnia.importers:v0.1.0',
|
|
resources: resources.map(utils.setDefaults),
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
throw new Error('No importers found for file');
|
|
};
|