@storyous/mongodb 1.0.1 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__tests__/appData.test.js +2 -5
- package/__tests__/appData.test.ts +3 -7
- package/__tests__/getMongoClient.js +2 -2
- package/__tests__/getMongoClient.ts +1 -1
- package/__tests__/runMigration.test.js +2 -3
- package/__tests__/runMigration.test.ts +2 -3
- package/__tests__/withTransaction.test.js +1 -1
- package/__tests__/withTransaction.test.ts +1 -1
- package/lib/appData/index.ts +2 -2
- package/lib/getCollection.js +3 -2
- package/lib/getCollection.ts +2 -1
- package/lib/mongoClient.js +2 -2
- package/lib/mongoClient.ts +1 -1
- package/lib/mongoLocker.js +1 -1
- package/lib/mongoLocker.ts +1 -1
- package/package.json +5 -5
|
@@ -3,15 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
require("./getMongoClient");
|
|
6
7
|
const assert_1 = __importDefault(require("assert"));
|
|
7
8
|
const mocha_1 = require("mocha");
|
|
8
9
|
const mongodb_1 = require("mongodb");
|
|
9
10
|
const lib_1 = require("../lib");
|
|
10
11
|
(0, mocha_1.describe)('packages/mongodb/appData', () => {
|
|
11
|
-
(0, mocha_1.before)(async () => {
|
|
12
|
-
lib_1.mongoClient.init('mongodb://127.0.0.1');
|
|
13
|
-
await lib_1.mongoClient.getClient().connect();
|
|
14
|
-
});
|
|
15
12
|
(0, mocha_1.it)('should ensureDocumentExists works', async () => {
|
|
16
13
|
const testDocument = { _id: new mongodb_1.ObjectId() };
|
|
17
14
|
const res = await lib_1.appData.ensureDocumentExists(testDocument);
|
|
@@ -33,4 +30,4 @@ const lib_1 = require("../lib");
|
|
|
33
30
|
assert_1.default.deepStrictEqual(res?.foo, 'bar');
|
|
34
31
|
});
|
|
35
32
|
});
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwRGF0YS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXBwRGF0YS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNEJBQTBCO0FBQzFCLG9EQUE0QjtBQUM1QixpQ0FBcUM7QUFDckMscUNBQW1DO0FBQ25DLGdDQUFpQztBQUVqQyxJQUFBLGdCQUFRLEVBQUMsMEJBQTBCLEVBQUUsR0FBRyxFQUFFO0lBRXRDLElBQUEsVUFBRSxFQUFDLG1DQUFtQyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQy9DLE1BQU0sWUFBWSxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksa0JBQVEsRUFBRSxFQUFFLENBQUM7UUFFN0MsTUFBTSxHQUFHLEdBQUcsTUFBTSxhQUFPLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUFRLENBQUM7UUFDcEUsZ0JBQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVoRCxNQUFNLFFBQVEsR0FBRyxNQUFNLGFBQU8sQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNsRSxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0MsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFBLFVBQUUsRUFBQyw2QkFBNkIsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN6QyxNQUFNLFlBQVksR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLGtCQUFRLEVBQUUsRUFBRSxDQUFDO1FBQzdDLE1BQU0sYUFBTyxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2pELE1BQU0sYUFBTyxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV6RSxNQUFNLEdBQUcsR0FBRyxNQUFNLGFBQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hELGdCQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFBLFVBQUUsRUFBQyx3Q0FBd0MsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNwRCxNQUFNLFlBQVksR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLGtCQUFRLEVBQUUsRUFBRSxDQUFDO1FBQzdDLE1BQU0sYUFBTyxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFL0UsTUFBTSxHQUFHLEdBQUcsTUFBTSxhQUFPLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4RCxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDLENBQUMifQ==
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
+
import './getMongoClient';
|
|
1
2
|
import assert from 'assert';
|
|
2
|
-
import {
|
|
3
|
+
import { describe, it } from 'mocha';
|
|
3
4
|
import { ObjectId } from 'mongodb';
|
|
4
|
-
import { appData
|
|
5
|
+
import { appData } from '../lib';
|
|
5
6
|
|
|
6
7
|
describe('packages/mongodb/appData', () => {
|
|
7
8
|
|
|
8
|
-
before(async () => {
|
|
9
|
-
mongoClient.init('mongodb://127.0.0.1');
|
|
10
|
-
await mongoClient.getClient().connect();
|
|
11
|
-
});
|
|
12
|
-
|
|
13
9
|
it('should ensureDocumentExists works', async () => {
|
|
14
10
|
const testDocument = { _id: new ObjectId() };
|
|
15
11
|
|
|
@@ -5,7 +5,7 @@ const lib_1 = require("../lib");
|
|
|
5
5
|
let connectPromise;
|
|
6
6
|
const connectAndGetMongoClient = async () => {
|
|
7
7
|
if (!connectPromise) {
|
|
8
|
-
lib_1.mongoClient.init('mongodb://127.0.0.1:27017');
|
|
8
|
+
lib_1.mongoClient.init('mongodb://127.0.0.1:27017', { directConnection: true });
|
|
9
9
|
connectPromise = lib_1.mongoClient.getClient().connect();
|
|
10
10
|
}
|
|
11
11
|
await connectPromise;
|
|
@@ -16,4 +16,4 @@ const connectAndGetMongoClient = async () => {
|
|
|
16
16
|
await lib_1.mongoClient.getClient().close();
|
|
17
17
|
});
|
|
18
18
|
exports.default = connectAndGetMongoClient;
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0TW9uZ29DbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJnZXRNb25nb0NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUFzQztBQUV0QyxnQ0FBcUM7QUFFckMsSUFBSSxjQUFvQyxDQUFDO0FBRXpDLE1BQU0sd0JBQXdCLEdBQUcsS0FBSyxJQUFJLEVBQUU7SUFDeEMsSUFBSSxDQUFDLGNBQWMsRUFBRTtRQUNqQixpQkFBVyxDQUFDLElBQUksQ0FBQywyQkFBMkIsRUFBRSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDMUUsY0FBYyxHQUFHLGlCQUFXLENBQUMsU0FBUyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7S0FDdEQ7SUFFRCxNQUFNLGNBQWMsQ0FBQztJQUVyQixPQUFPLGlCQUFXLENBQUMsU0FBUyxFQUFFLENBQUM7QUFDbkMsQ0FBQyxDQUFDO0FBRUYsSUFBQSxjQUFNLEVBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLEVBQUUsQ0FBQyxDQUFDO0FBRXpDLElBQUEsYUFBSyxFQUFDLEtBQUssSUFBSSxFQUFFO0lBQ2IsTUFBTSxpQkFBVyxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO0FBQzFDLENBQUMsQ0FBQyxDQUFDO0FBRUgsa0JBQWUsd0JBQXdCLENBQUMifQ==
|
|
@@ -6,7 +6,7 @@ let connectPromise: Promise<MongoClient>;
|
|
|
6
6
|
|
|
7
7
|
const connectAndGetMongoClient = async () => {
|
|
8
8
|
if (!connectPromise) {
|
|
9
|
-
mongoClient.init('mongodb://127.0.0.1:27017');
|
|
9
|
+
mongoClient.init('mongodb://127.0.0.1:27017', { directConnection: true });
|
|
10
10
|
connectPromise = mongoClient.getClient().connect();
|
|
11
11
|
}
|
|
12
12
|
|
|
@@ -3,14 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
require("./getMongoClient");
|
|
6
7
|
const assert_1 = __importDefault(require("assert"));
|
|
7
8
|
const mocha_1 = require("mocha");
|
|
8
9
|
const winston_1 = require("winston");
|
|
9
10
|
const lib_1 = require("../lib");
|
|
10
11
|
(0, mocha_1.describe)('packages/mongodb/migrations', () => {
|
|
11
12
|
(0, mocha_1.before)(async () => {
|
|
12
|
-
lib_1.mongoClient.init('mongodb://127.0.0.1');
|
|
13
|
-
await lib_1.mongoClient.getClient().connect();
|
|
14
13
|
await lib_1.appData._collection.deleteOne({ _id: 'migrations' });
|
|
15
14
|
});
|
|
16
15
|
(0, mocha_1.it)('should runMigrations works', async () => {
|
|
@@ -19,4 +18,4 @@ const lib_1 = require("../lib");
|
|
|
19
18
|
assert_1.default.deepStrictEqual(migration?.lastRun, '1642152064249-test.js');
|
|
20
19
|
});
|
|
21
20
|
});
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuTWlncmF0aW9uLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJydW5NaWdyYXRpb24udGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDRCQUEwQjtBQUMxQixvREFBNEI7QUFDNUIsaUNBQTZDO0FBQzdDLHFDQUF1QztBQUN2QyxnQ0FBZ0Q7QUFFaEQsSUFBQSxnQkFBUSxFQUFDLDZCQUE2QixFQUFFLEdBQUcsRUFBRTtJQUN6QyxJQUFBLGNBQU0sRUFBQyxLQUFLLElBQUksRUFBRTtRQUNkLE1BQU0sYUFBTyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUMvRCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsVUFBRSxFQUFDLDRCQUE0QixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3hDLE1BQU0sSUFBQSxtQkFBYSxFQUNmLElBQUEsc0JBQVksR0FBRSxFQUNkLEdBQUcsU0FBUyxhQUFhLEVBQ3pCLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxDQUMzQixDQUFDO1FBRUYsTUFBTSxTQUFTLEdBQUcsTUFBTSxhQUFPLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzFELGdCQUFNLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztJQUN4RSxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyxDQUFDIn0=
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
+
import './getMongoClient';
|
|
1
2
|
import assert from 'assert';
|
|
2
3
|
import { before, describe, it } from 'mocha';
|
|
3
4
|
import { createLogger } from 'winston';
|
|
4
|
-
import { appData,
|
|
5
|
+
import { appData, runMigrations } from '../lib';
|
|
5
6
|
|
|
6
7
|
describe('packages/mongodb/migrations', () => {
|
|
7
8
|
before(async () => {
|
|
8
|
-
mongoClient.init('mongodb://127.0.0.1');
|
|
9
|
-
await mongoClient.getClient().connect();
|
|
10
9
|
await appData._collection.deleteOne({ _id: 'migrations' });
|
|
11
10
|
});
|
|
12
11
|
|
|
@@ -37,4 +37,4 @@ require('./getMongoClient');
|
|
|
37
37
|
assert_1.default.equal(await testCollection.countDocuments({}), 1, 'there should be no document after a rollback');
|
|
38
38
|
});
|
|
39
39
|
});
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aFRyYW5zYWN0aW9uLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ3aXRoVHJhbnNhY3Rpb24udGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9EQUE0QjtBQUM1QixtQ0FBOEI7QUFDOUIsaUNBQWlEO0FBRWpELGdDQUF3RDtBQUV4RCxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUU1QixJQUFBLGdCQUFRLEVBQUMsa0NBQWtDLEVBQUUsR0FBRyxFQUFFO0lBRTlDLElBQUksY0FBK0IsQ0FBQztJQUNwQyxJQUFBLGtCQUFVLEVBQUMsS0FBSyxJQUFJLEVBQUU7UUFDbEIsY0FBYyxHQUFHLElBQUEsbUJBQWEsRUFBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFJLENBQUMsQ0FBQztRQUN4QyxNQUFNLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFRLENBQUMsQ0FBQyxnREFBZ0Q7SUFDL0YsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFBLFVBQUUsRUFBQywrQkFBK0IsRUFBRSxLQUFLLElBQUksRUFBRTtRQUUzQyxNQUFNLG1CQUFtQixHQUFHLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDO1FBRTlDLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBQSxxQkFBZSxFQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUV4RCxNQUFNLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUNoRCxNQUFNLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUVoRCxnQkFBTSxDQUFDLEtBQUssQ0FDUixNQUFNLGNBQWMsQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFDcEQsQ0FBQyxDQUNKLENBQUM7WUFFRixPQUFPLG1CQUFtQixDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO1FBRUgsZ0JBQU0sQ0FBQyxLQUFLLENBQ1IsTUFBTSxjQUFjLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxFQUN2QyxDQUFDLEVBQ0QsaURBQWlELENBQ3BELENBQUM7UUFFRixnQkFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztJQUNuRCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsVUFBRSxFQUFDLGlDQUFpQyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXRDLE1BQU0sZ0JBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBQSxxQkFBZSxFQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUV6RCxNQUFNLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUNoRCxNQUFNLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUVoRCxnQkFBTSxDQUFDLEtBQUssQ0FDUixNQUFNLGNBQWMsQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFDcEQsQ0FBQyxDQUNKLENBQUM7WUFFRixNQUFNLEtBQUssQ0FBQztRQUVoQixDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUVYLGdCQUFNLENBQUMsS0FBSyxDQUNSLE1BQU0sY0FBYyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsRUFDdkMsQ0FBQyxFQUNELDhDQUE4QyxDQUNqRCxDQUFDO0lBQ04sQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -8,7 +8,7 @@ require('./getMongoClient');
|
|
|
8
8
|
|
|
9
9
|
describe('packages/mongodb/withTransaction', () => {
|
|
10
10
|
|
|
11
|
-
let testCollection: Collection
|
|
11
|
+
let testCollection: Collection<any>;
|
|
12
12
|
beforeEach(async () => {
|
|
13
13
|
testCollection = getCollection('withTransactionTests');
|
|
14
14
|
await testCollection.drop().catch(noop);
|
package/lib/appData/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { InsertOneResult, WithId } from 'mongodb';
|
|
1
|
+
import { Collection, InsertOneResult, WithId } from 'mongodb';
|
|
2
2
|
import getCollection from '../getCollection';
|
|
3
3
|
import { Key } from '../mongoClient';
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@ const mongoDuplicateKeyErrorCodes = [11000, 11001];
|
|
|
6
6
|
|
|
7
7
|
const appData = {
|
|
8
8
|
|
|
9
|
-
get _collection () {
|
|
9
|
+
get _collection (): Collection<any> {
|
|
10
10
|
return getCollection('appData');
|
|
11
11
|
},
|
|
12
12
|
|
package/lib/getCollection.js
CHANGED
|
@@ -4,5 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const mongoClient_1 = __importDefault(require("./mongoClient"));
|
|
7
|
-
exports.default = (name) => mongoClient_1.default
|
|
8
|
-
|
|
7
|
+
exports.default = (name) => mongoClient_1.default
|
|
8
|
+
.getClient().db().collection(name);
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Q29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImdldENvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxnRUFBd0M7QUFFeEMsa0JBQWUsQ0FBZ0MsSUFBWSxFQUFpQixFQUFFLENBQUMscUJBQVc7S0FDckYsU0FBUyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDIn0=
|
package/lib/getCollection.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Collection } from 'mongodb';
|
|
2
2
|
import mongoClient from './mongoClient';
|
|
3
3
|
|
|
4
|
-
export default <T>(name: string): Collection<T> => mongoClient
|
|
4
|
+
export default <T extends Document = Document>(name: string): Collection<T> => mongoClient
|
|
5
|
+
.getClient().db().collection(name);
|
package/lib/mongoClient.js
CHANGED
|
@@ -5,7 +5,7 @@ const mongodb_1 = require("mongodb");
|
|
|
5
5
|
const mongoClient = {
|
|
6
6
|
_client: null,
|
|
7
7
|
init(mongodbUrl, mongoOptions) {
|
|
8
|
-
this._client = new mongodb_1.MongoClient(mongodbUrl, (0, lodash_1.defaultsDeep)(mongoOptions
|
|
8
|
+
this._client = new mongodb_1.MongoClient(mongodbUrl, (0, lodash_1.defaultsDeep)(mongoOptions));
|
|
9
9
|
},
|
|
10
10
|
getClient() {
|
|
11
11
|
if (this._client) {
|
|
@@ -15,4 +15,4 @@ const mongoClient = {
|
|
|
15
15
|
},
|
|
16
16
|
};
|
|
17
17
|
exports.default = mongoClient;
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29DbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJtb25nb0NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG1DQUFzQztBQUN0QyxxQ0FBb0U7QUFJcEUsTUFBTSxXQUFXLEdBQUc7SUFDaEIsT0FBTyxFQUFxQixJQUFJO0lBRWhDLElBQUksQ0FBRSxVQUFrQixFQUFFLFlBQWlDO1FBQ3ZELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxxQkFBVyxDQUMxQixVQUFVLEVBQ1YsSUFBQSxxQkFBWSxFQUFDLFlBQVksQ0FBQyxDQUM3QixDQUFDO0lBQ04sQ0FBQztJQUVELFNBQVM7UUFDTCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDZCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDdkI7UUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNKLENBQUM7QUFFRixrQkFBZSxXQUFXLENBQUMifQ==
|
package/lib/mongoClient.ts
CHANGED
package/lib/mongoLocker.js
CHANGED
|
@@ -14,4 +14,4 @@ async function default_1(key, callback, options = {}) {
|
|
|
14
14
|
return locker(key, callback, options);
|
|
15
15
|
}
|
|
16
16
|
exports.default = default_1;
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29Mb2NrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJtb25nb0xvY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9FQUE0QztBQUM1QyxzRUFBK0U7QUFHL0UsSUFBSSxhQUFnRCxDQUFDO0FBRXRDLEtBQUssb0JBQWUsR0FBUSxFQUFFLFFBQXlCLEVBQUUsVUFBeUIsRUFBRTtJQUMvRixJQUFJLENBQUMsYUFBYSxFQUFFO1FBQ2hCLGFBQWEsR0FBRyxJQUFBLHdCQUFjLEVBQUMsSUFBQSx1QkFBYSxFQUFNLFVBQVUsQ0FBQyxDQUFDLENBQUM7S0FDbEU7SUFFRCxNQUFNLE1BQU0sR0FBRyxNQUFNLGFBQWEsQ0FBQztJQUVuQyxPQUFPLE1BQU0sQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzFDLENBQUM7QUFSRCw0QkFRQyJ9
|
package/lib/mongoLocker.ts
CHANGED
|
@@ -6,7 +6,7 @@ let lockerPromise: ReturnType<typeof getMongoLocker>;
|
|
|
6
6
|
|
|
7
7
|
export default async function <T> (key: Key, callback: LockCallback<T>, options: LockerOptions = {}): Promise<T> {
|
|
8
8
|
if (!lockerPromise) {
|
|
9
|
-
lockerPromise = getMongoLocker(getCollection('appLocks'));
|
|
9
|
+
lockerPromise = getMongoLocker(getCollection<any>('appLocks'));
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
const locker = await lockerPromise;
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storyous/mongodb",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "",
|
|
5
5
|
"homepage": "https://github.com/Storyous/mono-utils#readme",
|
|
6
6
|
"license": "ISC",
|
|
7
|
-
"main": "lib/index
|
|
7
|
+
"main": "lib/index",
|
|
8
8
|
"scripts": {
|
|
9
9
|
"start": "tsc"
|
|
10
10
|
},
|
|
@@ -29,15 +29,15 @@
|
|
|
29
29
|
"registry": "https://registry.npmjs.org/"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@storyous/errors": "^1.0.
|
|
32
|
+
"@storyous/errors": "^1.0.2",
|
|
33
33
|
"@types/lodash": "^4.14.182",
|
|
34
34
|
"lodash": "^4.17.21",
|
|
35
35
|
"migrate": "^1.8.0",
|
|
36
|
-
"mongodb": "^4.
|
|
36
|
+
"mongodb": "^4.9.0",
|
|
37
37
|
"winston": "^3.7.2"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"@types/sinon": "^10.0.11"
|
|
41
41
|
},
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "89de1c5bdef9af23b4a636ebba3786e1466966ad"
|
|
43
43
|
}
|