UNPKG

@djforth/ajax-es6-fp

Version:

Promised Based Ajax Helper - With RoR in mind

1 lines 1.44 kB
(function(global,factory){if('function'==typeof define&&define.amd)define(['module','exports','./set_request','./manage_headers','./get_CSRF','./create_promise'],factory);else if('undefined'!=typeof exports)factory(module,exports,require('./set_request'),require('./manage_headers'),require('./get_CSRF'),require('./create_promise'));else{var mod={exports:{}};factory(mod,mod.exports,global.set_request,global.manage_headers,global.get_CSRF,global.create_promise),global.create=mod.exports}})(this,function(module,exports,_set_request,_manage_headers,_get_CSRF,_create_promise){'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&&void 0!==arguments[1]?arguments[1]:!0,csrf=(0,_get_CSRF2.default)(),headers=(0,_manage_headers2.default)();headers.addCSRF(csrf.token),rails&&headers.addRails();var promise=(0,_create_promise2.default)(),xhr=(0,_set_request2.default)(promise.resolve,promise.reject);return xhr.open('POST',url),headers.set(xhr.get()),function(data){return data[csrf.param]=csrf.token,xhr.send(data),promise.promise}};var _set_request2=_interopRequireDefault(_set_request),_manage_headers2=_interopRequireDefault(_manage_headers),_get_CSRF2=_interopRequireDefault(_get_CSRF),_create_promise2=_interopRequireDefault(_create_promise);module.exports=exports['default']});