@ace-fetch/uni-app
Version:
uni-app adapter for @ace-fetch/core.
112 lines (111 loc) • 4.22 kB
JavaScript
;
var __values = (this && this.__values) || function(o) {
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
if (m) return m.call(o);
if (o && typeof o.length === "number") return {
next: function () {
if (o && i >= o.length) o = void 0;
return { value: o && o[i++], done: !o };
}
};
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
var __read = (this && this.__read) || function (o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildURL = void 0;
var core_1 = require("@ace-util/core");
function buildURL(url, params, paramsSerializer) {
if (url === void 0) { url = ''; }
if (params === void 0) { params = {}; }
if (paramsSerializer === void 0) { paramsSerializer = defaultSerializer; }
var paramsStr = paramsSerializer(params);
if (paramsStr) {
url = "".concat(url).concat(url.indexOf('?') === -1 ? '?' : '&').concat(paramsStr);
}
return url;
}
exports.buildURL = buildURL;
function defaultSerializer(params) {
var e_1, _a, e_2, _b, e_3, _c;
var parts = [];
function push(key, value) {
parts.push("".concat(encode(key), "=").concat(encode(value)));
}
try {
for (var _d = __values(Object.entries(params)), _e = _d.next(); !_e.done; _e = _d.next()) {
var _f = __read(_e.value, 2), key = _f[0], val = _f[1];
if (!(0, core_1.isNull)(val) && !(0, core_1.isUndefined)(val) && val === val) {
if ((0, core_1.isPlainObject)(val)) {
try {
for (var _g = (e_2 = void 0, __values(Object.entries(val))), _h = _g.next(); !_h.done; _h = _g.next()) {
var _j = __read(_h.value, 2), k = _j[0], v = _j[1];
push("".concat(key, "[").concat(k, "]"), v);
}
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (_h && !_h.done && (_b = _g.return)) _b.call(_g);
}
finally { if (e_2) throw e_2.error; }
}
}
else if ((0, core_1.isArray)(val)) {
var k = "".concat(key, "[]");
try {
for (var val_1 = (e_3 = void 0, __values(val)), val_1_1 = val_1.next(); !val_1_1.done; val_1_1 = val_1.next()) {
var v = val_1_1.value;
push(k, v);
}
}
catch (e_3_1) { e_3 = { error: e_3_1 }; }
finally {
try {
if (val_1_1 && !val_1_1.done && (_c = val_1.return)) _c.call(val_1);
}
finally { if (e_3) throw e_3.error; }
}
}
else if ((0, core_1.isDate)(val)) {
push(key, val.toISOString());
}
else {
push(key, val);
}
}
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
}
finally { if (e_1) throw e_1.error; }
}
return parts.join('&');
}
function encode(str) {
return encodeURIComponent(str)
.replace(/%40/gi, '@')
.replace(/%3A/gi, ':')
.replace(/%24/g, '$')
.replace(/%2C/gi, ',')
.replace(/%20/g, '+')
.replace(/%5B/gi, '[')
.replace(/%5D/gi, ']');
}