Insomnia YAML and loading state on import

This commit is contained in:
Gregory Schier
2024-05-10 09:46:20 -07:00
parent acc07780a7
commit b533a01677
7 changed files with 4583 additions and 163 deletions

View File

@@ -6,7 +6,21 @@
"packages": {
"": {
"name": "importer-insomnia",
"version": "0.0.1"
"version": "0.0.1",
"dependencies": {
"yaml": "^2.4.2"
}
},
"node_modules/yaml": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.2.tgz",
"integrity": "sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
"node": ">= 14"
}
}
}
}

View File

@@ -1,4 +1,7 @@
{
"name": "importer-insomnia",
"version": "0.0.1"
"version": "0.0.1",
"dependencies": {
"yaml": "^2.4.2"
}
}

View File

@@ -5,6 +5,7 @@ import {
HttpRequest,
Workspace,
} from '../../../src-web/lib/models';
import { parse as parseYaml } from 'yaml';
type AtLeast<T, K extends keyof T> = Partial<T> & Pick<T, K>;
@@ -17,12 +18,15 @@ export interface ExportResources {
}
export function pluginHookImport(contents: string) {
let parsed;
let parsed: any;
try {
parsed = JSON.parse(contents);
} catch (e) {
return;
}
} catch (e) {}
try {
parsed = parseYaml(contents);
} catch (e) {}
if (!isJSObject(parsed)) return;
if (!Array.isArray(parsed.resources)) return;