UNPKG

crowdstart.js

Version:

Ecommerce SDK for JavaScript and client for Crowdstart.

68 lines (60 loc) 1.75 kB
// Generated by CoffeeScript 1.10.0 exports.isFunction = function(fn) { return typeof fn === 'function'; }; exports.isString = function(s) { return typeof s === 'string'; }; exports.statusOk = function(res) { return res.status === 200; }; exports.statusCreated = function(res) { return res.status === 201; }; exports.statusNoContent = function(res) { return res.status === 204; }; exports.newError = function(data, res) { var err, message, ref, ref1, ref2, ref3, ref4; if (res == null) { res = {}; } message = (ref = res != null ? (ref1 = res.data) != null ? (ref2 = ref1.error) != null ? ref2.message : void 0 : void 0 : void 0) != null ? ref : 'Request failed'; err = new Error(message); err.message = message; err.req = data; err.data = res.data; err.responseText = res.data; err.status = res.status; err.type = (ref3 = res.data) != null ? (ref4 = ref3.error) != null ? ref4.type : void 0 : void 0; return err; }; exports.updateQuery = function(url, key, value) { var hash, re, separator; re = new RegExp('([?&])' + key + '=.*?(&|#|$)(.*)', 'gi'); if (re.test(url)) { if (value != null) { return url.replace(re, '$1' + key + '=' + value + '$2$3'); } else { hash = url.split('#'); url = hash[0].replace(re, '$1$3').replace(/(&|\?)$/, ''); if (hash[1] != null) { url += '#' + hash[1]; } return url; } } else { if (value != null) { separator = url.indexOf('?') !== -1 ? '&' : '?'; hash = url.split('#'); url = hash[0] + separator + key + '=' + value; if (hash[1] != null) { url += '#' + hash[1]; } return url; } else { return url; } } }; //# sourceMappingURL=utils.js.map