diff --git a/package.json b/package.json index 027f7b7..899b8c2 100644 --- a/package.json +++ b/package.json @@ -24,22 +24,22 @@ "mongo", "async" ], - "version": "4.3.0", + "version": "4.4.0", "devDependencies": { - "@types/chai": "^4.1.5", + "@types/chai": "^4.1.7", "@types/mocha": "^5.2.5", - "@types/mongodb": "^3.1.7", - "@types/node": "^10.10.1", - "chai": "^4.1.2", + "@types/mongodb": "^3.1.18", + "@types/node": "^10.12.18", + "chai": "^4.2.0", "jsdoc": "^3.5.5", "mocha": "^5.2.0", "ts-node": "^7.0.1", - "tsd-jsdoc": "^2.0.0-beta.6", - "tslint": "^5.11.0", - "typescript": "^3.0.3" + "tsd-jsdoc": "^2.1.1", + "tslint": "^5.12.0", + "typescript": "^3.2.2" }, "dependencies": { "es6-promise": "^4.2.5", - "mongodb": "^3.1.6" + "mongodb": "^3.1.10" } } diff --git a/src/GridFSPromise.js b/src/GridFSPromise.js index ac550ab..ee84282 100644 --- a/src/GridFSPromise.js +++ b/src/GridFSPromise.js @@ -38,6 +38,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); var bson_1 = require("bson"); var fs = require("fs"); var mongodb_1 = require("mongodb"); +var path = require("path"); var GridFSPromise = /** @class */ (function () { /** * Constructor @@ -136,6 +137,11 @@ var GridFSPromise = /** @class */ (function () { if (!fileName) { fileName = result[0].filename; } + else { + if (path.extname(fileName) === "") { + fileName = fileName.concat(path.extname(result[0].filename)); + } + } if (!filePath) { filePath = ""; } diff --git a/src/GridFSPromise.js.map b/src/GridFSPromise.js.map index c865f39..f7816fa 100644 --- a/src/GridFSPromise.js.map +++ b/src/GridFSPromise.js.map @@ -1 +1 @@ -{"version":3,"file":"GridFSPromise.js","sourceRoot":"","sources":["GridFSPromise.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"GridFSPromise.js","sourceRoot":"","sources":["GridFSPromise.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/GridFSPromise.ts b/src/GridFSPromise.ts index 73990bb..13925c9 100644 --- a/src/GridFSPromise.ts +++ b/src/GridFSPromise.ts @@ -1,6 +1,7 @@ import {ObjectID} from "bson"; import * as fs from "fs"; import {GridFSBucket, GridFSBucketReadStream, MongoClient, MongoClientOptions} from "mongodb"; +import * as path from "path"; export interface IGridFSObject { _id: ObjectID; @@ -124,6 +125,10 @@ export class GridFSPromise { if (!fileName) { fileName = result[0].filename; + } else { + if (path.extname(fileName) === "") { + fileName = fileName.concat(path.extname(result[0].filename)); + } } if (!filePath) {