UNPKG

dobo-restproxy

Version:
45 lines (39 loc) 938 B
/** * Plugin factory * * @param {string} pkgName - NPM package name * @returns {class} */ async function factory (pkgName) { const me = this /** * DoboRestproxy class * * @class */ class DoboRestproxy extends this.app.pluginClass.base { static dependencies = ['dobo', 'bajo-extra'] static alias = 'dbrpx' constructor () { super(pkgName, me.app) this.config = { } } fetch = async (url, opts = {}, extra = {}) => { const { fetchUrl } = this.app.bajoExtra extra.rawResponse = true const resp = await fetchUrl(url, opts, extra) const result = await resp.json() if (!resp.ok) { throw this.error(result.message, { noTrans: true, statusCode: resp.status, success: false }) } return result } } return DoboRestproxy } export default factory