@micro-frame/marko
Version:
A Marko tag for building SSR friendly micro frontends.
33 lines (32 loc) • 940 B
JavaScript
var __defProp = Object.defineProperty;
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
var __export = (target, all) => {
__markAsModule(target);
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
__export(exports, {
default: () => consumeResponseBody
});
const decoder = new TextDecoder();
function consumeResponseBody(res) {
if (res.body) {
if (res.body.getReader) {
return consumeBodyReader(res.body.getReader());
}
if (res.body[Symbol.asyncIterator]) {
return res.body[Symbol.asyncIterator]();
}
}
throw new Error("Response body must be a stream.");
}
async function* consumeBodyReader(reader) {
do {
const next = await reader.read();
if (next.done)
break;
yield decoder.decode(next.value);
} while (true);
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {});