trifid/tfweb/src/lib/netcreate.js

33 lines
1.3 KiB
JavaScript

import { APIResult } from "$lib/auth";
import { Logger, logSetup } from "$lib/logger";
import { PUBLIC_BASE_URL } from "$env/static/public";
logSetup();
const logger = new Logger("netcreate.ts");
export async function createNetwork(token, cidr) {
logger.info('creating network');
try {
logger.debug(`api call: baseurl ${PUBLIC_BASE_URL}`);
const resp = await fetch(`${PUBLIC_BASE_URL}/v1/organization`, {
'method': 'POST',
'body': JSON.stringify({
cidr: `${cidr}`
}),
'headers': {
'Content-Type': 'application/json',
'Authorization': `Bearer ${token}`
}
});
if (!resp.ok) {
logger.error('call returned error code');
const rawerror = JSON.parse(await resp.text()).errors[0];
logger.error(`error sending org create: ${rawerror.message}`);
return [APIResult.Failed, { code: rawerror.code, message: rawerror.message }];
}
return [APIResult.Successful, await resp.json()];
}
catch (e) {
logger.error(`error making API request: ${e}`);
return [APIResult.Failed, { code: "api_call_failed", message: `${e}` }];
}
}
//# sourceMappingURL=netcreate.js.map