@ackee/antonio-core
Version:
A HTTP client built on fetch API with axios-like API.
36 lines • 5.97 kB
JavaScript
import { createRequest } from '../request';
import { processRequest } from '../response';
export async function generatorToPromise(it) {
let result = await it.next();
while (true) {
const prevValue = await result.value;
// @ts-expect-error
result = await it.next(prevValue);
if (result.done) {
break;
}
}
return result.value;
}
export function* asyncGeneratorToGenerator(it) {
let result = yield it.next();
while (!result.done) {
const prevValue = yield result.value;
result = yield it.next(prevValue);
}
return result.value;
}
export async function* makeRequest(antonio, method, requestUrl, bodyData, requestConfig) {
const {
request,
config,
requestParams
} = yield* createRequest(antonio, method, requestUrl, bodyData, requestConfig);
const result = yield* processRequest(antonio, request, requestParams, config);
return result;
}
export default function requestTypeResolver(antonio, method, requestUrl, bodyData, requestConfig) {
const it = makeRequest(antonio, method, requestUrl, bodyData, requestConfig);
return asyncGeneratorToGenerator(it);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVSZXF1ZXN0IiwicHJvY2Vzc1JlcXVlc3QiLCJnZW5lcmF0b3JUb1Byb21pc2UiLCJpdCIsInJlc3VsdCIsIm5leHQiLCJwcmV2VmFsdWUiLCJ2YWx1ZSIsImRvbmUiLCJhc3luY0dlbmVyYXRvclRvR2VuZXJhdG9yIiwibWFrZVJlcXVlc3QiLCJhbnRvbmlvIiwibWV0aG9kIiwicmVxdWVzdFVybCIsImJvZHlEYXRhIiwicmVxdWVzdENvbmZpZyIsInJlcXVlc3QiLCJjb25maWciLCJyZXF1ZXN0UGFyYW1zIiwicmVxdWVzdFR5cGVSZXNvbHZlciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2R1bGVzL2NvcmUvbWFrZVJlcXVlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWVzdEJvZHlEYXRhLCBSZXF1ZXN0Q29uZmlnLCBSZXF1ZXN0TWV0aG9kLCBSZXF1ZXN0UmVzdWx0IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5pbXBvcnQgeyBjcmVhdGVSZXF1ZXN0IH0gZnJvbSAnLi4vcmVxdWVzdCc7XG5pbXBvcnQgeyBwcm9jZXNzUmVxdWVzdCB9IGZyb20gJy4uL3Jlc3BvbnNlJztcblxuaW1wb3J0IHR5cGUgeyBUQW50b25pbyB9IGZyb20gJy4vbW9kZWxzL0FudG9uaW8nO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2VuZXJhdG9yVG9Qcm9taXNlPFRSZXR1cm4gPSBhbnksIFQgPSB1bmtub3duLCBUTmV4dCA9IFRSZXR1cm4gfCBUPihcbiAgICBpdDogQXN5bmNHZW5lcmF0b3I8VCwgVFJldHVybiwgVE5leHQ+IHwgR2VuZXJhdG9yPFQsIFRSZXR1cm4sIFROZXh0Pixcbikge1xuICAgIGxldCByZXN1bHQ6IEl0ZXJhdG9yUmVzdWx0PFQsIFRSZXR1cm4+ID0gYXdhaXQgaXQubmV4dCgpO1xuXG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgY29uc3QgcHJldlZhbHVlID0gYXdhaXQgcmVzdWx0LnZhbHVlO1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgICAgIHJlc3VsdCA9IGF3YWl0IGl0Lm5leHQocHJldlZhbHVlKTtcblxuICAgICAgICBpZiAocmVzdWx0LmRvbmUpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdC52YWx1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uKiBhc3luY0dlbmVyYXRvclRvR2VuZXJhdG9yPFRSZXR1cm4sIFQgPSB1bmtub3duLCBUTmV4dCA9IFRSZXR1cm4gfCBUPihcbiAgICBpdDogQXN5bmNHZW5lcmF0b3I8VCwgVFJldHVybiwgVE5leHQ+LFxuKSB7XG4gICAgbGV0IHJlc3VsdDogSXRlcmF0b3JSZXN1bHQ8VCwgVFJldHVybj4gPSB5aWVsZCBpdC5uZXh0KCk7XG5cbiAgICB3aGlsZSAoIXJlc3VsdC5kb25lKSB7XG4gICAgICAgIGNvbnN0IHByZXZWYWx1ZSA9IHlpZWxkIHJlc3VsdC52YWx1ZTtcbiAgICAgICAgcmVzdWx0ID0geWllbGQgaXQubmV4dChwcmV2VmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQudmFsdWU7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogbWFrZVJlcXVlc3Q8VFN1Y2Nlc3NEYXRhLCBURXJyb3JEYXRhPihcbiAgICBhbnRvbmlvOiBUQW50b25pbyxcbiAgICBtZXRob2Q6IFJlcXVlc3RNZXRob2QsXG4gICAgcmVxdWVzdFVybDogc3RyaW5nLFxuICAgIGJvZHlEYXRhOiBSZXF1ZXN0Qm9keURhdGEsXG4gICAgcmVxdWVzdENvbmZpZz86IFJlcXVlc3RDb25maWcsXG4pIHtcbiAgICBjb25zdCB7IHJlcXVlc3QsIGNvbmZpZywgcmVxdWVzdFBhcmFtcyB9ID0geWllbGQqIGNyZWF0ZVJlcXVlc3QoXG4gICAgICAgIGFudG9uaW8sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgICAgcmVxdWVzdFVybCxcbiAgICAgICAgYm9keURhdGEsXG4gICAgICAgIHJlcXVlc3RDb25maWcsXG4gICAgKTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkKiBwcm9jZXNzUmVxdWVzdDxUU3VjY2Vzc0RhdGEsIFRFcnJvckRhdGE+KGFudG9uaW8sIHJlcXVlc3QsIHJlcXVlc3RQYXJhbXMsIGNvbmZpZyk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiByZXF1ZXN0VHlwZVJlc29sdmVyPFRTdWNjZXNzRGF0YSwgVEVycm9yRGF0YT4oXG4gICAgYW50b25pbzogVEFudG9uaW8sXG4gICAgbWV0aG9kOiBSZXF1ZXN0TWV0aG9kLFxuICAgIHJlcXVlc3RVcmw6IHN0cmluZyxcbiAgICBib2R5RGF0YTogUmVxdWVzdEJvZHlEYXRhLFxuICAgIHJlcXVlc3RDb25maWc/OiBSZXF1ZXN0Q29uZmlnLFxuKSB7XG4gICAgY29uc3QgaXQgPSBtYWtlUmVxdWVzdDxUU3VjY2Vzc0RhdGEsIFRFcnJvckRhdGE+KGFudG9uaW8sIG1ldGhvZCwgcmVxdWVzdFVybCwgYm9keURhdGEsIHJlcXVlc3RDb25maWcpO1xuXG4gICAgcmV0dXJuIGFzeW5jR2VuZXJhdG9yVG9HZW5lcmF0b3I8UmVxdWVzdFJlc3VsdDxUU3VjY2Vzc0RhdGE+PihpdCk7XG59XG4iXSwibWFwcGluZ3MiOiJBQUVBLFNBQVNBLGFBQWEsUUFBUSxZQUFZO0FBQzFDLFNBQVNDLGNBQWMsUUFBUSxhQUFhO0FBSTVDLE9BQU8sZUFBZUMsa0JBQWtCQSxDQUNwQ0MsRUFBb0UsRUFDdEU7RUFDRSxJQUFJQyxNQUFrQyxHQUFHLE1BQU1ELEVBQUUsQ0FBQ0UsSUFBSSxDQUFDLENBQUM7RUFFeEQsT0FBTyxJQUFJLEVBQUU7SUFDVCxNQUFNQyxTQUFTLEdBQUcsTUFBTUYsTUFBTSxDQUFDRyxLQUFLO0lBQ3BDO0lBQ0FILE1BQU0sR0FBRyxNQUFNRCxFQUFFLENBQUNFLElBQUksQ0FBQ0MsU0FBUyxDQUFDO0lBRWpDLElBQUlGLE1BQU0sQ0FBQ0ksSUFBSSxFQUFFO01BQ2I7SUFDSjtFQUNKO0VBRUEsT0FBT0osTUFBTSxDQUFDRyxLQUFLO0FBQ3ZCO0FBRUEsT0FBTyxVQUFVRSx5QkFBeUJBLENBQ3RDTixFQUFxQyxFQUN2QztFQUNFLElBQUlDLE1BQWtDLEdBQUcsTUFBTUQsRUFBRSxDQUFDRSxJQUFJLENBQUMsQ0FBQztFQUV4RCxPQUFPLENBQUNELE1BQU0sQ0FBQ0ksSUFBSSxFQUFFO0lBQ2pCLE1BQU1GLFNBQVMsR0FBRyxNQUFNRixNQUFNLENBQUNHLEtBQUs7SUFDcENILE1BQU0sR0FBRyxNQUFNRCxFQUFFLENBQUNFLElBQUksQ0FBQ0MsU0FBUyxDQUFDO0VBQ3JDO0VBRUEsT0FBT0YsTUFBTSxDQUFDRyxLQUFLO0FBQ3ZCO0FBRUEsT0FBTyxnQkFBZ0JHLFdBQVdBLENBQzlCQyxPQUFpQixFQUNqQkMsTUFBcUIsRUFDckJDLFVBQWtCLEVBQ2xCQyxRQUF5QixFQUN6QkMsYUFBNkIsRUFDL0I7RUFDRSxNQUFNO0lBQUVDLE9BQU87SUFBRUMsTUFBTTtJQUFFQztFQUFjLENBQUMsR0FBRyxPQUFPbEIsYUFBYSxDQUMzRFcsT0FBTyxFQUNQQyxNQUFNLEVBQ05DLFVBQVUsRUFDVkMsUUFBUSxFQUNSQyxhQUNKLENBQUM7RUFFRCxNQUFNWCxNQUFNLEdBQUcsT0FBT0gsY0FBYyxDQUEyQlUsT0FBTyxFQUFFSyxPQUFPLEVBQUVFLGFBQWEsRUFBRUQsTUFBTSxDQUFDO0VBRXZHLE9BQU9iLE1BQU07QUFDakI7QUFFQSxlQUFlLFNBQVNlLG1CQUFtQkEsQ0FDdkNSLE9BQWlCLEVBQ2pCQyxNQUFxQixFQUNyQkMsVUFBa0IsRUFDbEJDLFFBQXlCLEVBQ3pCQyxhQUE2QixFQUMvQjtFQUNFLE1BQU1aLEVBQUUsR0FBR08sV0FBVyxDQUEyQkMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLFVBQVUsRUFBRUMsUUFBUSxFQUFFQyxhQUFhLENBQUM7RUFFdEcsT0FBT04seUJBQXlCLENBQThCTixFQUFFLENBQUM7QUFDckUiLCJpZ25vcmVMaXN0IjpbXX0=