@warlock.js/cascade 1.0.5 → 1.0.7
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/cjs/aggregate/DeselectPipeline.d.ts +10 -0
- package/cjs/aggregate/DeselectPipeline.d.ts.map +1 -0
- package/cjs/aggregate/DeselectPipeline.js +17 -0
- package/cjs/aggregate/DeselectPipeline.js.map +1 -0
- package/cjs/aggregate/GeoNearPipeline.d.ts +34 -0
- package/cjs/aggregate/GeoNearPipeline.d.ts.map +1 -0
- package/cjs/aggregate/GeoNearPipeline.js +44 -0
- package/cjs/aggregate/GeoNearPipeline.js.map +1 -0
- package/cjs/aggregate/GroupByPipeline.d.ts +12 -0
- package/cjs/aggregate/GroupByPipeline.d.ts.map +1 -0
- package/cjs/aggregate/GroupByPipeline.js +28 -0
- package/cjs/aggregate/GroupByPipeline.js.map +1 -0
- package/cjs/aggregate/LimitPipeline.d.ts +10 -0
- package/cjs/aggregate/LimitPipeline.d.ts.map +1 -0
- package/cjs/aggregate/LimitPipeline.js +14 -0
- package/cjs/aggregate/LimitPipeline.js.map +1 -0
- package/cjs/aggregate/LookupPipeline.d.ts +19 -0
- package/cjs/aggregate/LookupPipeline.d.ts.map +1 -0
- package/cjs/aggregate/LookupPipeline.js +19 -0
- package/cjs/aggregate/LookupPipeline.js.map +1 -0
- package/cjs/aggregate/OrWherePipeline.d.ts +23 -0
- package/cjs/aggregate/OrWherePipeline.d.ts.map +1 -0
- package/cjs/aggregate/OrWherePipeline.js +42 -0
- package/cjs/aggregate/OrWherePipeline.js.map +1 -0
- package/cjs/aggregate/SelectPipeline.d.ts +10 -0
- package/cjs/aggregate/SelectPipeline.d.ts.map +1 -0
- package/cjs/aggregate/SelectPipeline.js +26 -0
- package/cjs/aggregate/SelectPipeline.js.map +1 -0
- package/cjs/aggregate/SkipPipeline.d.ts +10 -0
- package/cjs/aggregate/SkipPipeline.d.ts.map +1 -0
- package/cjs/aggregate/SkipPipeline.js +14 -0
- package/cjs/aggregate/SkipPipeline.js.map +1 -0
- package/cjs/aggregate/SortByPipeline.d.ts +10 -0
- package/cjs/aggregate/SortByPipeline.d.ts.map +1 -0
- package/cjs/aggregate/SortByPipeline.js +18 -0
- package/cjs/aggregate/SortByPipeline.js.map +1 -0
- package/cjs/aggregate/SortPipeline.d.ts +11 -0
- package/cjs/aggregate/SortPipeline.d.ts.map +1 -0
- package/cjs/aggregate/SortPipeline.js +18 -0
- package/cjs/aggregate/SortPipeline.js.map +1 -0
- package/cjs/aggregate/SortRandomPipeline.d.ts +10 -0
- package/cjs/aggregate/SortRandomPipeline.d.ts.map +1 -0
- package/cjs/aggregate/SortRandomPipeline.js +16 -0
- package/cjs/aggregate/SortRandomPipeline.js.map +1 -0
- package/cjs/aggregate/UnwindPipeline.d.ts +14 -0
- package/cjs/aggregate/UnwindPipeline.d.ts.map +1 -0
- package/cjs/aggregate/UnwindPipeline.js +19 -0
- package/cjs/aggregate/UnwindPipeline.js.map +1 -0
- package/cjs/aggregate/WhereExpression.d.ts +17 -0
- package/cjs/aggregate/WhereExpression.d.ts.map +1 -0
- package/cjs/aggregate/WhereExpression.js +149 -0
- package/cjs/aggregate/WhereExpression.js.map +1 -0
- package/cjs/aggregate/WhereExpressionPipeline.d.ts +10 -0
- package/cjs/aggregate/WhereExpressionPipeline.d.ts.map +1 -0
- package/cjs/aggregate/WhereExpressionPipeline.js +15 -0
- package/cjs/aggregate/WhereExpressionPipeline.js.map +1 -0
- package/cjs/aggregate/WherePipeline.d.ts +13 -0
- package/cjs/aggregate/WherePipeline.d.ts.map +1 -0
- package/cjs/aggregate/WherePipeline.js +12 -0
- package/cjs/aggregate/WherePipeline.js.map +1 -0
- package/cjs/aggregate/aggregate.d.ts +358 -0
- package/cjs/aggregate/aggregate.d.ts.map +1 -0
- package/cjs/aggregate/aggregate.js +680 -0
- package/cjs/aggregate/aggregate.js.map +1 -0
- package/cjs/aggregate/expressions.d.ts +361 -0
- package/cjs/aggregate/expressions.d.ts.map +1 -0
- package/cjs/aggregate/expressions.js +536 -0
- package/cjs/aggregate/expressions.js.map +1 -0
- package/cjs/aggregate/index.d.ts +21 -0
- package/cjs/aggregate/index.d.ts.map +1 -0
- package/cjs/aggregate/parsePipelines.d.ts +5 -0
- package/cjs/aggregate/parsePipelines.d.ts.map +1 -0
- package/cjs/aggregate/parsePipelines.js +6 -0
- package/cjs/aggregate/parsePipelines.js.map +1 -0
- package/cjs/aggregate/pipeline.d.ts +31 -0
- package/cjs/aggregate/pipeline.d.ts.map +1 -0
- package/cjs/aggregate/pipeline.js +42 -0
- package/cjs/aggregate/pipeline.js.map +1 -0
- package/cjs/aggregate/types.d.ts +8 -0
- package/cjs/aggregate/types.d.ts.map +1 -0
- package/cjs/aggregate/types.js +31 -0
- package/cjs/aggregate/types.js.map +1 -0
- package/cjs/blueprint/blueprint-column.d.ts +82 -0
- package/cjs/blueprint/blueprint-column.d.ts.map +1 -0
- package/cjs/blueprint/blueprint.d.ts +162 -0
- package/cjs/blueprint/blueprint.d.ts.map +1 -0
- package/cjs/blueprint/blueprint.js +340 -0
- package/cjs/blueprint/blueprint.js.map +1 -0
- package/cjs/blueprint/index.d.ts +3 -0
- package/cjs/blueprint/index.d.ts.map +1 -0
- package/cjs/blueprint/model-blueprint.d.ts +15 -0
- package/cjs/blueprint/model-blueprint.d.ts.map +1 -0
- package/cjs/blueprint/model-blueprint.js +16 -0
- package/cjs/blueprint/model-blueprint.js.map +1 -0
- package/cjs/casts/arrayOf.d.ts +5 -0
- package/cjs/casts/arrayOf.d.ts.map +1 -0
- package/cjs/casts/arrayOf.js +18 -0
- package/cjs/casts/arrayOf.js.map +1 -0
- package/cjs/casts/cast-email.d.ts +2 -0
- package/cjs/casts/cast-email.d.ts.map +1 -0
- package/cjs/casts/cast-email.js +5 -0
- package/cjs/casts/cast-email.js.map +1 -0
- package/cjs/casts/castModel.d.ts +3 -0
- package/cjs/casts/castModel.d.ts.map +1 -0
- package/cjs/casts/castModel.js +49 -0
- package/cjs/casts/castModel.js.map +1 -0
- package/cjs/casts/expiresAfter.d.ts +3 -0
- package/cjs/casts/expiresAfter.d.ts.map +1 -0
- package/cjs/casts/expiresAfter.js +5 -0
- package/cjs/casts/expiresAfter.js.map +1 -0
- package/cjs/casts/index.d.ts +9 -0
- package/cjs/casts/index.d.ts.map +1 -0
- package/cjs/casts/oneOf.d.ts +3 -0
- package/cjs/casts/oneOf.d.ts.map +1 -0
- package/cjs/casts/oneOf.js +22 -0
- package/cjs/casts/oneOf.js.map +1 -0
- package/cjs/casts/random-string.d.ts +2 -0
- package/cjs/casts/random-string.d.ts.map +1 -0
- package/cjs/casts/random-string.js +5 -0
- package/cjs/casts/random-string.js.map +1 -0
- package/cjs/casts/randomInteger.d.ts +2 -0
- package/cjs/casts/randomInteger.d.ts.map +1 -0
- package/cjs/casts/randomInteger.js +7 -0
- package/cjs/casts/randomInteger.js.map +1 -0
- package/cjs/casts/shapedArray.d.ts +26 -0
- package/cjs/casts/shapedArray.d.ts.map +1 -0
- package/cjs/casts/shapedArray.js +100 -0
- package/cjs/casts/shapedArray.js.map +1 -0
- package/cjs/config.d.ts +4 -0
- package/cjs/config.d.ts.map +1 -0
- package/cjs/config.js +10 -0
- package/cjs/config.js.map +1 -0
- package/cjs/connection.d.ts +45 -0
- package/cjs/connection.d.ts.map +1 -0
- package/cjs/connection.js +98 -0
- package/cjs/connection.js.map +1 -0
- package/cjs/database.d.ts +49 -0
- package/cjs/database.d.ts.map +1 -0
- package/cjs/database.js +85 -0
- package/cjs/database.js.map +1 -0
- package/cjs/index.d.ts +11 -1
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +1 -5
- package/cjs/index.js.map +1 -1
- package/cjs/migration/index.d.ts +4 -0
- package/cjs/migration/index.d.ts.map +1 -0
- package/cjs/migration/migrate.d.ts +13 -0
- package/cjs/migration/migrate.d.ts.map +1 -0
- package/cjs/migration/migrate.js +72 -0
- package/cjs/migration/migrate.js.map +1 -0
- package/cjs/migration/migration-office.d.ts +21 -0
- package/cjs/migration/migration-office.d.ts.map +1 -0
- package/cjs/migration/migration-office.js +40 -0
- package/cjs/migration/migration-office.js.map +1 -0
- package/cjs/migration/migration-officer.d.ts +33 -0
- package/cjs/migration/migration-officer.d.ts.map +1 -0
- package/cjs/migration/migration-officer.js +55 -0
- package/cjs/migration/migration-officer.js.map +1 -0
- package/cjs/migration/types.d.ts +34 -0
- package/cjs/migration/types.d.ts.map +1 -0
- package/cjs/model/ModelAggregate.d.ts +84 -0
- package/cjs/model/ModelAggregate.d.ts.map +1 -0
- package/cjs/model/ModelAggregate.js +164 -0
- package/cjs/model/ModelAggregate.js.map +1 -0
- package/cjs/model/ModelSync.d.ts +74 -0
- package/cjs/model/ModelSync.d.ts.map +1 -0
- package/cjs/model/ModelSync.js +215 -0
- package/cjs/model/ModelSync.js.map +1 -0
- package/cjs/model/RelationshipWithMany.d.ts +24 -0
- package/cjs/model/RelationshipWithMany.d.ts.map +1 -0
- package/cjs/model/RelationshipWithMany.js +42 -0
- package/cjs/model/RelationshipWithMany.js.map +1 -0
- package/cjs/model/base-model.d.ts +155 -0
- package/cjs/model/base-model.d.ts.map +1 -0
- package/cjs/model/base-model.js +230 -0
- package/cjs/model/base-model.js.map +1 -0
- package/cjs/model/crud-model.d.ts +117 -0
- package/cjs/model/crud-model.d.ts.map +1 -0
- package/cjs/model/crud-model.js +352 -0
- package/cjs/model/crud-model.js.map +1 -0
- package/cjs/model/index.d.ts +10 -0
- package/cjs/model/index.d.ts.map +1 -0
- package/cjs/model/joinable.d.ts +87 -0
- package/cjs/model/joinable.d.ts.map +1 -0
- package/cjs/model/joinable.js +155 -0
- package/cjs/model/joinable.js.map +1 -0
- package/cjs/model/master-mind.d.ts +44 -0
- package/cjs/model/master-mind.d.ts.map +1 -0
- package/cjs/model/master-mind.js +129 -0
- package/cjs/model/master-mind.js.map +1 -0
- package/cjs/model/model-events.d.ts +57 -0
- package/cjs/model/model-events.d.ts.map +1 -0
- package/cjs/model/model-events.js +102 -0
- package/cjs/model/model-events.js.map +1 -0
- package/cjs/model/model.d.ts +401 -0
- package/cjs/model/model.d.ts.map +1 -0
- package/cjs/model/model.js +1028 -0
- package/cjs/model/model.js.map +1 -0
- package/cjs/model/types.d.ts +113 -0
- package/cjs/model/types.d.ts.map +1 -0
- package/cjs/model/types.js +11 -0
- package/cjs/model/types.js.map +1 -0
- package/cjs/query/index.d.ts +2 -0
- package/cjs/query/index.d.ts.map +1 -0
- package/cjs/query/query.d.ts +228 -0
- package/cjs/query/query.d.ts.map +1 -0
- package/cjs/query/query.js +675 -0
- package/cjs/query/query.js.map +1 -0
- package/cjs/query/types.d.ts +56 -0
- package/cjs/query/types.d.ts.map +1 -0
- package/cjs/types.d.ts +62 -0
- package/cjs/types.d.ts.map +1 -0
- package/cjs/utils/connectToDatabase.d.ts +3 -0
- package/cjs/utils/connectToDatabase.d.ts.map +1 -0
- package/cjs/utils/connectToDatabase.js +3 -0
- package/cjs/utils/connectToDatabase.js.map +1 -0
- package/cjs/utils/deep-diff.d.ts +9 -0
- package/cjs/utils/deep-diff.d.ts.map +1 -0
- package/cjs/utils/deep-diff.js +44 -0
- package/cjs/utils/deep-diff.js.map +1 -0
- package/cjs/utils/dropAllDatabaseIndexes.d.ts +2 -0
- package/cjs/utils/dropAllDatabaseIndexes.d.ts.map +1 -0
- package/cjs/utils/dropAllDatabaseIndexes.js +10 -0
- package/cjs/utils/dropAllDatabaseIndexes.js.map +1 -0
- package/cjs/utils/index.d.ts +5 -0
- package/cjs/utils/index.d.ts.map +1 -0
- package/cjs/utils/joinable-proxy.d.ts +3 -0
- package/cjs/utils/joinable-proxy.d.ts.map +1 -0
- package/cjs/utils/joinable-proxy.js +14 -0
- package/cjs/utils/joinable-proxy.js.map +1 -0
- package/cjs/utils/listDatabaseIndexes.d.ts +4 -0
- package/cjs/utils/listDatabaseIndexes.d.ts.map +1 -0
- package/cjs/utils/listDatabaseIndexes.js +101 -0
- package/cjs/utils/listDatabaseIndexes.js.map +1 -0
- package/cjs/utils/onceConnected.d.ts +2 -0
- package/cjs/utils/onceConnected.d.ts.map +1 -0
- package/cjs/utils/onceConnected.js +8 -0
- package/cjs/utils/onceConnected.js.map +1 -0
- package/esm/connection.js +1 -1
- package/esm/connection.js.map +1 -1
- package/esm/utils/deep-diff.d.ts.map +1 -1
- package/esm/utils/deep-diff.js +5 -3
- package/esm/utils/deep-diff.js.map +1 -1
- package/package.json +1 -1
- package/cjs/commands/create-new-app/get-app-path.d.ts +0 -2
- package/cjs/commands/create-new-app/get-app-path.d.ts.map +0 -1
- package/cjs/commands/create-new-app/get-app-path.js +0 -8
- package/cjs/commands/create-new-app/get-app-path.js.map +0 -1
- package/cjs/commands/create-new-app/index.d.ts +0 -2
- package/cjs/commands/create-new-app/index.d.ts.map +0 -1
- package/cjs/commands/create-new-app/index.js +0 -44
- package/cjs/commands/create-new-app/index.js.map +0 -1
- package/cjs/commands/create-new-app/select-app-type.d.ts +0 -2
- package/cjs/commands/create-new-app/select-app-type.d.ts.map +0 -1
- package/cjs/commands/create-new-app/types.d.ts +0 -9
- package/cjs/commands/create-new-app/types.d.ts.map +0 -1
- package/cjs/commands/create-warlock-app/index.d.ts +0 -3
- package/cjs/commands/create-warlock-app/index.d.ts.map +0 -1
- package/cjs/commands/create-warlock-app/index.js +0 -18
- package/cjs/commands/create-warlock-app/index.js.map +0 -1
- package/cjs/helpers/app.d.ts +0 -51
- package/cjs/helpers/app.d.ts.map +0 -1
- package/cjs/helpers/app.js +0 -127
- package/cjs/helpers/app.js.map +0 -1
- package/cjs/helpers/exec.d.ts +0 -10
- package/cjs/helpers/exec.d.ts.map +0 -1
- package/cjs/helpers/exec.js +0 -69
- package/cjs/helpers/exec.js.map +0 -1
- package/cjs/helpers/package-manager.d.ts +0 -6
- package/cjs/helpers/package-manager.d.ts.map +0 -1
- package/cjs/helpers/package-manager.js +0 -22
- package/cjs/helpers/package-manager.js.map +0 -1
- package/cjs/helpers/paths.d.ts +0 -4
- package/cjs/helpers/paths.d.ts.map +0 -1
- package/cjs/helpers/paths.js +0 -8
- package/cjs/helpers/paths.js.map +0 -1
- package/cjs/helpers/project-builder-helpers.d.ts +0 -7
- package/cjs/helpers/project-builder-helpers.d.ts.map +0 -1
- package/cjs/helpers/project-builder-helpers.js +0 -44
- package/cjs/helpers/project-builder-helpers.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"master-mind.d.ts","sourceRoot":"","sources":["../../src/model/master-mind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGtD,qBAAa,UAAU;IACrB;;OAEG;IACI,UAAU,SAAgB;IAEjC;;OAEG;IACI,QAAQ,EAAE,QAAQ,CAAY;IAErC;;OAEG;IACU,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAU3D;;OAEG;IACU,SAAS,CACpB,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,MAAM,EACV,EAAE,OAAkC,EAAE,GAAE;QAAE,OAAO,CAAC,EAAE,aAAa,CAAA;KAAO;IAsC1E;;OAEG;IACU,gBAAgB,CAC3B,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,MAAM,EACrB,EAAE,OAAkC,EAAE,GAAE;QAAE,OAAO,CAAC,EAAE,aAAa,CAAA;KAAO;IA0B1E;;OAEG;IACI,iBAAiB;IAIxB;;OAEG;IACU,eAAe;IAa5B;;OAEG;IACU,cAAc,CACzB,UAAU,EAAE,MAAM,EAClB,aAAa,SAAI,EACjB,SAAS,SAAI,EACb,EAAE,OAAkC,EAAE,GAAE;QAAE,OAAO,CAAC,EAAE,aAAa,CAAA;KAAO,GACvE,OAAO,CAAC,MAAM,CAAC;CA+CnB;AAED,eAAO,MAAM,UAAU,YAAmB,CAAC"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
'use strict';var aggregate=require('../aggregate/aggregate.js'),database=require('../database.js'),query=require('../query/query.js');class MasterMind {
|
|
2
|
+
/**
|
|
3
|
+
* Master Mind Collection name
|
|
4
|
+
*/
|
|
5
|
+
collection = "MasterMind";
|
|
6
|
+
/**
|
|
7
|
+
* Connection instance
|
|
8
|
+
*/
|
|
9
|
+
database = database.database;
|
|
10
|
+
/**
|
|
11
|
+
* Get last id of the given collection
|
|
12
|
+
*/
|
|
13
|
+
async getLastId(collection) {
|
|
14
|
+
const query = this.database.collection(this.collection);
|
|
15
|
+
const collectionDocument = await query.findOne({
|
|
16
|
+
collection: collection,
|
|
17
|
+
});
|
|
18
|
+
return collectionDocument ? collectionDocument.id : 0;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Set last id for the given collection
|
|
22
|
+
*/
|
|
23
|
+
async setLastId(collection, id, { session = this.getCurrentSession() } = {}) {
|
|
24
|
+
const query = this.database.collection(this.collection);
|
|
25
|
+
const collectionDocument = await query.findOne({
|
|
26
|
+
collection: collection,
|
|
27
|
+
});
|
|
28
|
+
if (collectionDocument) {
|
|
29
|
+
// update the collection with the latest id
|
|
30
|
+
await query.updateOne({
|
|
31
|
+
collection: collection,
|
|
32
|
+
}, {
|
|
33
|
+
$set: {
|
|
34
|
+
id: id,
|
|
35
|
+
},
|
|
36
|
+
}, {
|
|
37
|
+
session,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// if the collection is not found in the master mind table
|
|
42
|
+
// create a new record for it
|
|
43
|
+
await query.insertOne({
|
|
44
|
+
collection: collection,
|
|
45
|
+
id: id,
|
|
46
|
+
}, {
|
|
47
|
+
session,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Rename the given collection to the new one to keep the last id updated and not to be reset
|
|
53
|
+
*/
|
|
54
|
+
async renameCollection(oldCollection, newCollection, { session = this.getCurrentSession() } = {}) {
|
|
55
|
+
const query = this.database.collection(this.collection);
|
|
56
|
+
const collectionDocument = await query.findOne({
|
|
57
|
+
collection: oldCollection,
|
|
58
|
+
});
|
|
59
|
+
if (collectionDocument) {
|
|
60
|
+
// update the collection with the latest id
|
|
61
|
+
await query.updateOne({
|
|
62
|
+
collection: oldCollection,
|
|
63
|
+
}, {
|
|
64
|
+
$set: {
|
|
65
|
+
collection: newCollection,
|
|
66
|
+
},
|
|
67
|
+
}, {
|
|
68
|
+
session,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Get current active session from database object
|
|
74
|
+
*/
|
|
75
|
+
getCurrentSession() {
|
|
76
|
+
return this.database.getActiveSession()?.session;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Update all collections by the last id of each collection in current database
|
|
80
|
+
*/
|
|
81
|
+
async updateAllLastId() {
|
|
82
|
+
for (const document of await query.query.list("MasterMind")) {
|
|
83
|
+
const { collection, id } = document;
|
|
84
|
+
if (!collection)
|
|
85
|
+
continue;
|
|
86
|
+
const biggestId = (await new aggregate.Aggregate(collection).orderByDesc("id").first())?.id;
|
|
87
|
+
if (biggestId && biggestId > id) {
|
|
88
|
+
await masterMind.setLastId(collection, biggestId + 1);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Generate next id for the given collection name
|
|
94
|
+
*/
|
|
95
|
+
async generateNextId(collection, incrementIdBy = 1, initialId = 1, { session = this.getCurrentSession() } = {}) {
|
|
96
|
+
const query = this.database.collection(this.collection);
|
|
97
|
+
const collectionDocument = await query.findOne({
|
|
98
|
+
collection: collection,
|
|
99
|
+
}, {
|
|
100
|
+
session,
|
|
101
|
+
});
|
|
102
|
+
if (collectionDocument) {
|
|
103
|
+
const nextId = collectionDocument.id + incrementIdBy;
|
|
104
|
+
// update the collection with the latest id
|
|
105
|
+
await query.updateOne({
|
|
106
|
+
collection: collection,
|
|
107
|
+
}, {
|
|
108
|
+
$set: {
|
|
109
|
+
id: nextId,
|
|
110
|
+
},
|
|
111
|
+
}, {
|
|
112
|
+
// session,
|
|
113
|
+
});
|
|
114
|
+
return nextId;
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
// if the collection is not found in the master mind table
|
|
118
|
+
// create a new record for it
|
|
119
|
+
await query.insertOne({
|
|
120
|
+
collection: collection,
|
|
121
|
+
id: initialId,
|
|
122
|
+
}, {
|
|
123
|
+
session,
|
|
124
|
+
});
|
|
125
|
+
return initialId;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
const masterMind = new MasterMind();exports.MasterMind=MasterMind;exports.masterMind=masterMind;//# sourceMappingURL=master-mind.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"master-mind.js","sources":["../../src/model/master-mind.ts"],"sourcesContent":[null],"names":["database","query","Aggregate"],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { Filter } from "./types";
|
|
2
|
+
export declare class ModelEvents {
|
|
3
|
+
collection?: string;
|
|
4
|
+
/**
|
|
5
|
+
* Event callbacks
|
|
6
|
+
*/
|
|
7
|
+
callbacks: Record<string, any[]>;
|
|
8
|
+
/**
|
|
9
|
+
* {@inheritdoc}
|
|
10
|
+
*/
|
|
11
|
+
constructor(collection?: string);
|
|
12
|
+
/**
|
|
13
|
+
* Add callback when model is about to be created or updated
|
|
14
|
+
*
|
|
15
|
+
* Triggered before saving the model
|
|
16
|
+
*/
|
|
17
|
+
onSaving(callback: (model: any, oldModel?: any) => void): this;
|
|
18
|
+
/**
|
|
19
|
+
* Add callback when model is created or updated
|
|
20
|
+
*
|
|
21
|
+
* Triggered after saving the model
|
|
22
|
+
*/
|
|
23
|
+
onSaved(callback: (model: any, oldModel?: any) => void): this;
|
|
24
|
+
/**
|
|
25
|
+
* Add callback when model is about to be created
|
|
26
|
+
*/
|
|
27
|
+
onCreating(callback: (model: any) => void): this;
|
|
28
|
+
/**
|
|
29
|
+
* Add callback when model is created
|
|
30
|
+
*/
|
|
31
|
+
onCreated(callback: (model: any) => void): this;
|
|
32
|
+
/**
|
|
33
|
+
* Add callback when model is about to be updated
|
|
34
|
+
*/
|
|
35
|
+
onUpdating(callback: (model: any, oldModel: any) => void): this;
|
|
36
|
+
/**
|
|
37
|
+
* Add callback when model is updated
|
|
38
|
+
*/
|
|
39
|
+
onUpdated(callback: (model: any, oldModel: any) => void): this;
|
|
40
|
+
/**
|
|
41
|
+
* Add callback when model is about to be deleted
|
|
42
|
+
*/
|
|
43
|
+
onDeleting(callback: (model: any) => void): this;
|
|
44
|
+
/**
|
|
45
|
+
* Add callback when model is deleted
|
|
46
|
+
*/
|
|
47
|
+
onDeleted(callback: (model: any) => void): this;
|
|
48
|
+
/**
|
|
49
|
+
* Add callback when model is about to be fetched
|
|
50
|
+
*/
|
|
51
|
+
onFetching(callback: (model: any, filterOptions: Filter) => void): this;
|
|
52
|
+
/**
|
|
53
|
+
* Trigger the given event
|
|
54
|
+
*/
|
|
55
|
+
trigger(event: string, ...args: any[]): Promise<void>;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=model-events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-events.d.ts","sourceRoot":"","sources":["../../src/model/model-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,qBAAa,WAAW;IAmBI,UAAU,CAAC,EAAE,MAAM;IAlB7C;;OAEG;IACI,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAUrC;IAEF;;OAEG;gBACuB,UAAU,CAAC,EAAE,MAAM;IAI7C;;;;OAIG;IACI,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,GAAG,KAAK,IAAI;IAK9D;;;;OAIG;IACI,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,GAAG,KAAK,IAAI;IAM7D;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI;IAMhD;;OAEG;IACI,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI;IAM/C;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI;IAM/D;;OAEG;IACI,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI;IAM9D;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI;IAMhD;;OAEG;IACI,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI;IAM/C;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,KAAK,IAAI;IAMvE;;OAEG;IACU,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CASnD"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
'use strict';class ModelEvents {
|
|
2
|
+
collection;
|
|
3
|
+
/**
|
|
4
|
+
* Event callbacks
|
|
5
|
+
*/
|
|
6
|
+
callbacks = {
|
|
7
|
+
saving: [],
|
|
8
|
+
saved: [],
|
|
9
|
+
creating: [],
|
|
10
|
+
created: [],
|
|
11
|
+
updating: [],
|
|
12
|
+
updated: [],
|
|
13
|
+
deleting: [],
|
|
14
|
+
deleted: [],
|
|
15
|
+
fetching: [],
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* {@inheritdoc}
|
|
19
|
+
*/
|
|
20
|
+
constructor(collection) {
|
|
21
|
+
this.collection = collection;
|
|
22
|
+
//
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Add callback when model is about to be created or updated
|
|
26
|
+
*
|
|
27
|
+
* Triggered before saving the model
|
|
28
|
+
*/
|
|
29
|
+
onSaving(callback) {
|
|
30
|
+
this.callbacks.saving.push(callback);
|
|
31
|
+
return this;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Add callback when model is created or updated
|
|
35
|
+
*
|
|
36
|
+
* Triggered after saving the model
|
|
37
|
+
*/
|
|
38
|
+
onSaved(callback) {
|
|
39
|
+
this.callbacks.saved.push(callback);
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Add callback when model is about to be created
|
|
44
|
+
*/
|
|
45
|
+
onCreating(callback) {
|
|
46
|
+
this.callbacks.creating.push(callback);
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Add callback when model is created
|
|
51
|
+
*/
|
|
52
|
+
onCreated(callback) {
|
|
53
|
+
this.callbacks.created.push(callback);
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Add callback when model is about to be updated
|
|
58
|
+
*/
|
|
59
|
+
onUpdating(callback) {
|
|
60
|
+
this.callbacks.updating.push(callback);
|
|
61
|
+
return this;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Add callback when model is updated
|
|
65
|
+
*/
|
|
66
|
+
onUpdated(callback) {
|
|
67
|
+
this.callbacks.updated.push(callback);
|
|
68
|
+
return this;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Add callback when model is about to be deleted
|
|
72
|
+
*/
|
|
73
|
+
onDeleting(callback) {
|
|
74
|
+
this.callbacks.deleting.push(callback);
|
|
75
|
+
return this;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Add callback when model is deleted
|
|
79
|
+
*/
|
|
80
|
+
onDeleted(callback) {
|
|
81
|
+
this.callbacks.deleted.push(callback);
|
|
82
|
+
return this;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Add callback when model is about to be fetched
|
|
86
|
+
*/
|
|
87
|
+
onFetching(callback) {
|
|
88
|
+
this.callbacks.fetching.push(callback);
|
|
89
|
+
return this;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Trigger the given event
|
|
93
|
+
*/
|
|
94
|
+
async trigger(event, ...args) {
|
|
95
|
+
const callbacks = this.callbacks[event];
|
|
96
|
+
if (!callbacks)
|
|
97
|
+
return;
|
|
98
|
+
for (const callback of callbacks) {
|
|
99
|
+
await callback(...args);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}exports.ModelEvents=ModelEvents;//# sourceMappingURL=model-events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-events.js","sources":["../../src/model/model-events.ts"],"sourcesContent":[null],"names":[],"mappings":"mBAEa,WAAW,CAAA;AAmBI,IAAA,UAAA,CAAA;AAlB1B;;AAEG;AACI,IAAA,SAAS,GAA0B;AACxC,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,KAAK,EAAE,EAAE;AACT,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,OAAO,EAAE,EAAE;AACX,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,OAAO,EAAE,EAAE;AACX,QAAA,QAAQ,EAAE,EAAE;AACZ,QAAA,OAAO,EAAE,EAAE;AACX,QAAA,QAAQ,EAAE,EAAE;KACb,CAAC;AAEF;;AAEG;AACH,IAAA,WAAA,CAA0B,UAAmB,EAAA;QAAnB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAS;;KAE5C;AAED;;;;AAIG;AACI,IAAA,QAAQ,CAAC,QAA8C,EAAA;QAC5D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACrC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;;;AAIG;AACI,IAAA,OAAO,CAAC,QAA8C,EAAA;QAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEpC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,UAAU,CAAC,QAA8B,EAAA;QAC9C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEvC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,SAAS,CAAC,QAA8B,EAAA;QAC7C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEtC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,UAAU,CAAC,QAA6C,EAAA;QAC7D,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEvC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,SAAS,CAAC,QAA6C,EAAA;QAC5D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEtC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,UAAU,CAAC,QAA8B,EAAA;QAC9C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEvC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,SAAS,CAAC,QAA8B,EAAA;QAC7C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEtC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,UAAU,CAAC,QAAqD,EAAA;QACrE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEvC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,MAAM,OAAO,CAAC,KAAa,EAAE,GAAG,IAAW,EAAA;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAExC,QAAA,IAAI,CAAC,SAAS;YAAE,OAAO;AAEvB,QAAA,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;AAChC,YAAA,MAAM,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;AACzB,SAAA;KACF;AACF"}
|