async function asyncHandler()

in src/salesforce_uploader.ts [128:154]


	async function asyncHandler(
		startDate: Moment,
		amount: number,
		providedToken: string,
	) {
		const config = await fetchConfig();
		console.log('Config fetched successfully.');
		await validateToken(config.api.expectedToken, providedToken);
		console.log('token validated successfully');
		const salesforce = await authenticate(config);
		console.log('Finding fulfilment folder.');
		const folder = config.fulfilments.homedelivery.uploadFolder;
		console.log(folder);

		const filePromises = range(amount).map((offset) => {
			const date = moment(startDate, DATE_FORMAT).add(offset, 'days');
			return getFileData(config.stage, date);
		});

		const files = await Promise.all(filePromises);

		const results = files.map((fileData) => {
			return salesforceUpload(fileData, config.stage, salesforce, folder);
		});

		return Promise.all(results);
	}