UNPKG

@baqhub/sdk

Version:

The official JavaScript SDK for the BAQ federated app platform.

50 lines (49 loc) 2.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Api = void 0; const tslib_1 = require("tslib"); const IO = tslib_1.__importStar(require("../helpers/io.js")); const http_js_1 = require("./http.js"); async function getApi(model, url, options) { const [headers, response] = await http_js_1.Http.get(url, options); return [headers, IO.decode(model, response)]; } async function postApi(responseModel, bodyModel, body, url, options) { const [headers, response] = await http_js_1.Http.post(bodyModel.encode(body), url, options); return [headers, IO.decode(responseModel, response)]; } async function putApi(responseModel, bodyModel, body, url, options) { const [headers, response] = await http_js_1.Http.put(bodyModel.encode(body), url, options); return [headers, IO.decode(responseModel, response)]; } async function patchApi(responseModel, bodyModel, body, url, options) { const [headers, response] = await http_js_1.Http.patch(bodyModel.encode(body), url, options); return [headers, IO.decode(responseModel, response)]; } async function deleteApi(responseModel, bodyModel, body, url, options) { const [headers, response] = await http_js_1.Http.deleteBody(bodyModel.encode(body), url, options); return [headers, IO.decode(responseModel, response)]; } async function postBlobApi(responseModel, body, url, options) { const [headers, response] = await http_js_1.Http.post(body, url, options); return [headers, IO.decode(responseModel, response)]; } function eventSourceApi(messageModel, onMessage, eventName, url, options) { const onRawMessage = (event) => { if (event.event !== eventName) { return; } const message = IO.decode(messageModel, JSON.parse(event.data)); onMessage(message); }; http_js_1.Http.eventSource(onRawMessage, url, options); } exports.Api = { get: getApi, post: postApi, put: putApi, patch: patchApi, delete: deleteApi, postBlob: postBlobApi, eventSource: eventSourceApi, };