@warp-works/warpjs-utils
Version:
Utility functions for WarpJS and plugins
30 lines (24 loc) • 715 B
JavaScript
const Promise = require('bluebird');
const ensureHalHeader = require('./ensure-hal-header');
module.exports = ($, url) => new Promise((resolve, reject) => {
const defaultSettings = {
method: 'GET',
success(data, textStatus, jqXHR) {
resolve({ data, textStatus, jqXHR });
},
error(jqXHR, textStatus, errorThrown) {
resolve({
error: {
textStatus,
errorThrown
},
data: jqXHR.responseJSON
});
}
};
if (url) {
defaultSettings.url = url;
}
const settings = ensureHalHeader(defaultSettings);
return $.ajax(settings);
});