UNPKG

wreckage

Version:

A convenient, modern request library built around Wreck. A fork of Wrecked.

71 lines (52 loc) 2.17 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _assign = require('babel-runtime/core-js/object/assign'); var _assign2 = _interopRequireDefault(_assign); var _wreck = require('wreck'); var _wreck2 = _interopRequireDefault(_wreck); var _lodash = require('lodash.defaultsdeep'); var _lodash2 = _interopRequireDefault(_lodash); var _defaults = require('./defaults'); var _defaults2 = _interopRequireDefault(_defaults); var _request = require('./request'); var _request2 = _interopRequireDefault(_request); var _read = require('./read'); var _read2 = _interopRequireDefault(_read); var _requestWithPayload = require('./request-with-payload'); var _requestWithPayload2 = _interopRequireDefault(_requestWithPayload); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const combine = (options, defaults) => { return (0, _lodash2.default)({}, options, defaults); }; const wreckage = { get(uri, options = {}) { return (0, _request2.default)('GET', uri, combine(options, this.defaults)); }, post(uri, payload, options = {}) { return (0, _requestWithPayload2.default)('POST', uri, payload, combine(options, this.defaults)); }, put(uri, payload, options = {}) { return (0, _requestWithPayload2.default)('PUT', uri, payload, combine(options, this.defaults)); }, patch(uri, payload, options = {}) { return (0, _requestWithPayload2.default)('PATCH', uri, payload, combine(options, this.defaults)); }, delete(uri, payload, options = {}) { return (0, _requestWithPayload2.default)('DELETE', uri, payload, combine(options, this.defaults)); }, request(method, uri, options = {}) { const combined = combine(options, this.defaults); return _wreck2.default.request(method, uri, combined.request || {}); }, read(response, options = {}) { const combined = combine(options, this.defaults); return (0, _read2.default)(response, combined.read || {}); }, create(options = {}) { return (0, _assign2.default)({}, this, { defaults: combine(options, this.defaults) }); }, defaults: _defaults2.default }; exports.default = wreckage;