vue-auth3
Version:
<p align="center"> <img src="./docs/public/icon.svg" width="180px"> </p>
57 lines (49 loc) • 1.6 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true});
var _chunkFDIGM2OGjs = require('../../chunk-FDIGM2OG.js');
var _chunk6L3WGN24js = require('../../chunk-6L3WGN24.js');
// src/drivers/http/fetch.ts
var toString = Object.prototype.toString;
function type(obj) {
return toString.call(obj).slice(8, -1);
}
var parseJSON = (str) => {
try {
return JSON.parse(str);
} catch (e) {
return str;
}
};
var fetch_default = _chunkFDIGM2OGjs.defineHttpDriver.call(void 0, {
request(config) {
var _a;
return fetch((_a = config.url) != null ? _a : "/", _chunk6L3WGN24js.__spreadProps.call(void 0, _chunk6L3WGN24js.__spreadValues.call(void 0, {}, config), {
body: typeof config.data === "object" && type(config.data) !== "FormData" ? new URLSearchParams(config.data) : config.data
})).then((res) => _chunk6L3WGN24js.__async.call(void 0, this, null, function* () {
let data;
switch (config.responseType) {
case "arraybuffer":
data = yield res.arrayBuffer();
break;
case "blob":
data = yield res.blob();
break;
case "json":
data = yield res.json();
break;
case "text":
data = yield res.text();
break;
default:
data = parseJSON(yield res.text());
}
return {
data,
headers: Object.fromEntries(Array.from(res.headers.entries())),
status: res.status,
statusText: res.statusText
};
}));
}
});
exports.default = fetch_default;
//# sourceMappingURL=fetch.js.map