| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | 
							- import { Meteor } from 'meteor/meteor';
 
- import fs from 'fs';
 
- export const createOnAfterUpload = bucket =>
 
-   function onAfterUpload(file) {
 
-     const self = this;
 
-     // here you could manipulate your file
 
-     // and create a new version, for example a scaled 'thumbnail'
 
-     // ...
 
-     // then we read all versions we have got so far
 
-     Object.keys(file.versions).forEach(versionName => {
 
-       const metadata = { ...file.meta, versionName, fileId: file._id };
 
-       fs.createReadStream(file.versions[versionName].path)
 
-         // this is where we upload the binary to the bucket using bucket.openUploadStream
 
-         // see http://mongodb.github.io/node-mongodb-native/3.2/api/GridFSBucket.html#openUploadStream
 
-         .pipe(
 
-           bucket.openUploadStream(file.name, {
 
-             contentType: file.type || 'binary/octet-stream',
 
-             metadata,
 
-           }),
 
-         )
 
-         // and we unlink the file from the fs on any error
 
-         // that occurred during the upload to prevent zombie files
 
-         .on('error', err => {
 
-           console.error("[createOnAfterUpload error]", err);
 
-           self.unlink(this.collection.findOne(file._id), versionName); // Unlink files from FS
 
-         })
 
-         // once we are finished, we attach the gridFS Object id on the
 
-         // FilesCollection document's meta section and finally unlink the
 
-         // upload file from the filesystem
 
-         .on(
 
-           'finish',
 
-           Meteor.bindEnvironment(ver => {
 
-             const property = `versions.${versionName}.meta.gridFsFileId`;
 
-             self.collection.update(file._id, {
 
-               $set: {
 
-                 [property]: ver._id.toHexString(),
 
-               },
 
-             });
 
-             self.unlink(this.collection.findOne(file._id), versionName); // Unlink files from FS
 
-           }),
 
-         );
 
-     });
 
-   };
 
 
  |