57 lines
1.3 KiB
JavaScript
57 lines
1.3 KiB
JavaScript
|
module.exports = {
|
||
|
/**
|
||
|
* Helper method for making POST HTTP requests.
|
||
|
*/
|
||
|
post(uri, form) {
|
||
|
return Spark.sendForm('post', uri, form);
|
||
|
},
|
||
|
|
||
|
|
||
|
/**
|
||
|
* Helper method for making PUT HTTP requests.
|
||
|
*/
|
||
|
put(uri, form) {
|
||
|
return Spark.sendForm('put', uri, form);
|
||
|
},
|
||
|
|
||
|
|
||
|
/**
|
||
|
* Helper method for making PATCH HTTP requests.
|
||
|
*/
|
||
|
patch(uri, form) {
|
||
|
return Spark.sendForm('patch', uri, form);
|
||
|
},
|
||
|
|
||
|
|
||
|
/**
|
||
|
* Helper method for making DELETE HTTP requests.
|
||
|
*/
|
||
|
delete(uri, form) {
|
||
|
return Spark.sendForm('delete', uri, form);
|
||
|
},
|
||
|
|
||
|
|
||
|
/**
|
||
|
* Send the form to the back-end server.
|
||
|
*
|
||
|
* This function will clear old errors, update "busy" status, etc.
|
||
|
*/
|
||
|
sendForm(method, uri, form) {
|
||
|
return new Promise((resolve, reject) => {
|
||
|
form.startProcessing();
|
||
|
|
||
|
axios[method](uri, JSON.parse(JSON.stringify(form)))
|
||
|
.then(response => {
|
||
|
form.finishProcessing();
|
||
|
|
||
|
resolve(response.data);
|
||
|
})
|
||
|
.catch(errors => {
|
||
|
form.setErrors(errors.response.data.errors);
|
||
|
|
||
|
reject(errors.response.data);
|
||
|
});
|
||
|
});
|
||
|
}
|
||
|
};
|