function getDownloadStream()

in src/homedelivery/export.ts [97:128]


function getDownloadStream(
	results: Array<result>,
	stage: string,
	queryName: string,
) {
	function getFileName(queryName: string) {
		function isTargetQuery(result: { queryName: string }) {
			return result.queryName === queryName;
		}

		const filtered = results.filter(isTargetQuery);

		if (filtered.length !== 1) {
			return null; // not sure if there are options in js
		} else {
			return filtered[0]?.fileName;
		}
	}

	return new Promise((resolve, reject) => {
		console.log(`getting results file for query: ${queryName}`);
		const fileName = getFileName(queryName);
		if (!fileName) {
			reject(
				new Error(`Invalid input cannot find unique query called ${queryName}`),
			);
			return;
		}
		const path = `zuoraExport/${fileName}`;
		resolve(createReadStream(path));
	});
}