UNPKG

fitch

Version:

A lightweight Promise based HTTP client, using Fetch API.

86 lines (68 loc) 1.99 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.put = exports.post = exports.patch = exports.init = exports.get = exports.del = exports.all = undefined; var _lodash = require('lodash.merge'); var _lodash2 = _interopRequireDefault(_lodash); var _request = require('./utils/request'); var _request2 = _interopRequireDefault(_request); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function intializer(rqst) { function get(url, req) { return rqst('GET', url, req); } function post(url, req) { return rqst('POST', url, req); } function put(url, req) { return rqst('PUT', url, req); } function patch(url, req) { return rqst('PATCH', url, req); } function del(url, req) { return rqst('DELETE', url, req); } function all(promises) { return Promise.all(promises); } function init() { var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, _ref$config = _ref.config, config = _ref$config === undefined ? {} : _ref$config, _ref$interceptor = _ref.interceptor, interceptor = _ref$interceptor === undefined ? function (promise) { return promise; } : _ref$interceptor; var customRqst = function customRqst(method, url, req) { return (0, _request2.default)(method, url, (0, _lodash2.default)({}, config, req)).then(interceptor); }; return intializer(customRqst); } return { all: all, del: del, get: get, init: init, patch: patch, post: post, put: put }; } var fitch = intializer(_request2.default); exports.default = fitch; var all = fitch.all, del = fitch.del, get = fitch.get, init = fitch.init, patch = fitch.patch, post = fitch.post, put = fitch.put; exports.all = all; exports.del = del; exports.get = get; exports.init = init; exports.patch = patch; exports.post = post; exports.put = put;