@djforth/ajax-es6-fp
Version:
Promised Based Ajax Helper - With RoR in mind
1 lines • 1.75 kB
JavaScript
(function(global,factory){if('function'==typeof define&&define.amd)define(['module','exports','./add_id','./add_method','./manage_headers','./get_CSRF','./create_promise','./set_request'],factory);else if('undefined'!=typeof exports)factory(module,exports,require('./add_id'),require('./add_method'),require('./manage_headers'),require('./get_CSRF'),require('./create_promise'),require('./set_request'));else{var mod={exports:{}};factory(mod,mod.exports,global.add_id,global.add_method,global.manage_headers,global.get_CSRF,global.create_promise,global.set_request),global.destroy=mod.exports}})(this,function(module,exports,_add_id,_add_method,_manage_headers,_get_CSRF,_create_promise,_set_request){'use strict';function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}Object.defineProperty(exports,'__esModule',{value:!0}),exports.default=function(url){var rails=1<arguments.length&&arguments[1]!==void 0?arguments[1]:!0,csrf=(0,_get_CSRF2.default)(),headers=(0,_manage_headers2.default)();headers.addCSRF(csrf.token);var url_id=(0,_add_id2.default)(url),data_set=(0,_add_method2.default)(csrf,'delete');rails&&headers.addRails();var promise=(0,_create_promise2.default)(),xhr=(0,_set_request2.default)(promise.resolve,promise.reject);return function(id,data){var api=id?url_id(id):url;return xhr.open('DELETE',api),headers.set(xhr.get()),xhr.send(data_set(data)),promise.promise}};var _add_id2=_interopRequireDefault(_add_id),_add_method2=_interopRequireDefault(_add_method),_manage_headers2=_interopRequireDefault(_manage_headers),_get_CSRF2=_interopRequireDefault(_get_CSRF),_create_promise2=_interopRequireDefault(_create_promise),_set_request2=_interopRequireDefault(_set_request);module.exports=exports['default']});