25 lines
679 B
JavaScript

import lister from './lister';
async function getListing(readers) {
let listing = [];
const r = readers.find(reader => reader.ext === 'lst');
if (r) {
const utf8Decoder = new TextDecoder('utf-8');
const list = lister();
for (let i = 0; i < 10000; i++) {
let { done, value } = await r.reader.read();
if (typeof value !== 'string') {
value = utf8Decoder.decode(value, { stream: true });
}
list.onChunk(value);
if (done) {
listing = list.getTrace();
break;
}
}
}
return listing;
}
export default getListing;