khoir
Version:
Sederhana dan fleksibel untuk melakukan permintaan HTTP
1 lines • 1.99 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.Khoir=void 0;class Khoir{constructor(e){this.baseURL=e}_request(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const o=`${this.baseURL}${e}`,l={method:t,headers:{"Content-Type":"application/json",...r}};return n&&(l.body=JSON.stringify(n)),new Promise(((e,t)=>{fetch(o,l).then((e=>{if(!e.ok)throw new Error(`Network response was not ok: ${e.statusText}`);return e.json()})).then((t=>e(t))).catch((e=>{console.error(`Fetch error: ${e.message}`),t(e)}))}))}request(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},o=arguments.length>4?arguments[4]:void 0;const l=this._request(e,t,n,r);if("function"!=typeof o)return l;l.then((e=>o(null,e))).catch((e=>o(e,null)))}get(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return this.request(e,"GET",null,t,n)}post(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;return this.request(e,"POST",t,n,r)}put(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;return this.request(e,"PUT",t,n,r)}delete(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return this.request(e,"DELETE",null,t,n)}patch(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;return this.request(e,"PATCH",t,n,r)}head(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return this.request(e,"HEAD",null,t,n)}options(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return this.request(e,"OPTIONS",null,t,n)}}exports.Khoir=Khoir;