in src/io/xpi.ts [186:204]
async getFileAsString(path: string): Promise<string> {
const fileStream = await this.getFileAsStream(path);
return new Promise((resolve, reject) => {
const chunks: Uint8Array[] = [];
fileStream.on('data', (chunk: Uint8Array) => {
chunks.push(chunk);
});
// Once the file is assembled, resolve the promise.
fileStream.on('end', () => {
const buf = Buffer.concat(chunks);
const fileString = buf.toString('utf8');
resolve(fileString);
});
fileStream.on('error', reject);
});
}