let uploadFile = function()

in source/custom-resource/lib/website-helper.js [138:189]


    let uploadFile = function(filelist, index, websiteBucket, sourceS3prefix, cb) { 
        if (filelist.length > index) { 
            let params = { 
                Bucket: websiteBucket, 
                Key: filelist[index], 
                CopySource: [sourceS3prefix, filelist[index]].join('/'), 
            }; 
            if (filelist[index].endsWith('.htm') || filelist[index].endsWith('.html')) { 
                params.ContentType = "text/html"; 
                params.MetadataDirective = "REPLACE"; 
            } else if (filelist[index].endsWith('.css')) { 
                params.ContentType = "text/css"; 
                params.MetadataDirective = "REPLACE"; 
            } else if (filelist[index].endsWith('.js')) { 
                params.ContentType = "application/javascript"; 
                params.MetadataDirective = "REPLACE"; 
            } else if (filelist[index].endsWith('.png')) { 
                params.ContentType = "image/png"; 
                params.MetadataDirective = "REPLACE"; 
            } else if (filelist[index].endsWith('.jpg') || filelist[index].endsWith('.jpeg')) { 
                params.ContentType = "image/jpeg"; 
                params.MetadataDirective = "REPLACE"; 
            } else if (filelist[index].endsWith('.gif')) { 
                params.ContentType = "image/gif"; 
                params.MetadataDirective = "REPLACE"; 
            }; 
 
            s3.copyObject(params, function(err, data) { 
                if (err) { 
                    return cb(['error copying ', [sourceS3prefix, filelist[index]].join('/'), '\n', err] 
                        .join( 
                            ''), 
                        null); 
                } 
 
                console.log([ 
                    [sourceS3prefix, filelist[index]].join('/'), 'uploaded successfully' 
                ].join(' ')); 
                let _next = index + 1; 
                uploadFile(filelist, _next, websiteBucket, sourceS3prefix, function(err, resp) { 
                    if (err) { 
                        return cb(err, null); 
                    } 
 
                    cb(null, resp); 
                }); 
            }); 
        } else { 
            cb(null, [index, 'files copied'].join(' ')); 
        } 
 
    };