function getTransferableFiles()

in email-mvt-archive/src/email-mvt-pixel-log-archiver-lambda.ts [23:40]


function getTransferableFiles(allS3Objects: ObjectList) {
  const [dateToday] = new Date().toISOString().split('T');
  return allS3Objects
    .filter(s3object => s3object.Key && filenameDateRegex.test(s3object.Key))
    .map(s3object => {
      if (s3object.Key) {
        const s3objectValue = `${s3object.Key}`;
        const matches = s3objectValue.match(filenameDateRegex);
        if (matches && matches.length > 0 && matches[1]) {
          const dateFromFilename = matches[1];
          if (dateFromFilename < dateToday) { // Only copy over data before today
            const tuple: TransferableFile = {sourceFileName: s3objectValue, destinationFolder: dateFromFilename};
            return tuple;
          }
        }
      }
    }).filter((item): item is TransferableFile => !!item);
}