@brightchain/node-express-suite 0.29.12 → 0.29.13
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/package.json +1 -1
- package/src/index.d.ts +1 -0
- package/src/index.d.ts.map +1 -1
- package/src/index.js +3 -1
- package/src/index.js.map +1 -1
- package/src/lib/datastore/bright-db-document-store-adapter.d.ts +25 -0
- package/src/lib/datastore/bright-db-document-store-adapter.d.ts.map +1 -0
- package/src/lib/datastore/bright-db-document-store-adapter.js +159 -0
- package/src/lib/datastore/bright-db-document-store-adapter.js.map +1 -0
- package/src/lib/plugins/bright-db-database-plugin.d.ts +5 -2
- package/src/lib/plugins/bright-db-database-plugin.d.ts.map +1 -1
- package/src/lib/plugins/bright-db-database-plugin.js +10 -2
- package/src/lib/plugins/bright-db-database-plugin.js.map +1 -1
package/package.json
CHANGED
package/src/index.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export { BlockDocumentStore, CollectionHeadRegistry } from './lib/datastore/bloc
|
|
|
12
12
|
export * from './lib/datastore/block-document-store-factory';
|
|
13
13
|
export * from './lib/datastore/document-store';
|
|
14
14
|
export { MemoryDocumentStore } from './lib/datastore/memory-document-store';
|
|
15
|
+
export { BrightDbDocumentStoreAdapter } from './lib/datastore/bright-db-document-store-adapter';
|
|
15
16
|
export type { IValidationError, IValidationResult } from './lib/validation/userValidation';
|
|
16
17
|
export { validateRegistration, validateLogin, validatePasswordChange, validateRecovery, } from './lib/validation/userValidation';
|
|
17
18
|
export { validateBody } from './lib/middleware/validateBody';
|
package/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../brightchain-node-express-suite/src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,YAAY,EACV,YAAY,EACZ,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,SAAS,GACV,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,oBAAoB,IAAI,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAG5F,YAAY,EACV,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAClG,cAAc,8CAA8C,CAAC;AAC7D,cAAc,gCAAgC,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../brightchain-node-express-suite/src/index.ts"],"names":[],"mappings":"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"}
|
package/src/index.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @brightchain/brightchain-api-lib (domain-specific).
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.BrightDbApiRouter = exports.BrightDbUserController = exports.BrightDbAuthService = exports.SchemaCollection = exports.BrightDbTransactionManager = exports.BrightDbModelRegistry = exports.BrightDbBaseService = exports.BrightDbCollection = exports.createTestApp = exports.BrightDbMiddlewares = exports.BrightDbConstants = exports.BrightDbAuthenticationProvider = exports.configureBrightDbApp = exports.BrightDbApplication = exports.printDevStoreResults = exports.seedDevStore = exports.BrightDbDatabasePlugin = exports.BrightDbEnvironment = exports.BlockStoreFactory = exports.brightchainDatabaseInit = exports.BrightChainSessionAdapter = exports.validateBody = exports.validateRecovery = exports.validatePasswordChange = exports.validateLogin = exports.validateRegistration = exports.MemoryDocumentStore = exports.CollectionHeadRegistry = exports.BlockDocumentStore = void 0;
|
|
10
|
+
exports.BrightDbApiRouter = exports.BrightDbUserController = exports.BrightDbAuthService = exports.SchemaCollection = exports.BrightDbTransactionManager = exports.BrightDbModelRegistry = exports.BrightDbBaseService = exports.BrightDbCollection = exports.createTestApp = exports.BrightDbMiddlewares = exports.BrightDbConstants = exports.BrightDbAuthenticationProvider = exports.configureBrightDbApp = exports.BrightDbApplication = exports.printDevStoreResults = exports.seedDevStore = exports.BrightDbDatabasePlugin = exports.BrightDbEnvironment = exports.BlockStoreFactory = exports.brightchainDatabaseInit = exports.BrightChainSessionAdapter = exports.validateBody = exports.validateRecovery = exports.validatePasswordChange = exports.validateLogin = exports.validateRegistration = exports.BrightDbDocumentStoreAdapter = exports.MemoryDocumentStore = exports.CollectionHeadRegistry = exports.BlockDocumentStore = void 0;
|
|
11
11
|
const tslib_1 = require("tslib");
|
|
12
12
|
var block_document_store_1 = require("./lib/datastore/block-document-store");
|
|
13
13
|
Object.defineProperty(exports, "BlockDocumentStore", { enumerable: true, get: function () { return block_document_store_1.BlockDocumentStore; } });
|
|
@@ -16,6 +16,8 @@ tslib_1.__exportStar(require("./lib/datastore/block-document-store-factory"), ex
|
|
|
16
16
|
tslib_1.__exportStar(require("./lib/datastore/document-store"), exports);
|
|
17
17
|
var memory_document_store_1 = require("./lib/datastore/memory-document-store");
|
|
18
18
|
Object.defineProperty(exports, "MemoryDocumentStore", { enumerable: true, get: function () { return memory_document_store_1.MemoryDocumentStore; } });
|
|
19
|
+
var bright_db_document_store_adapter_1 = require("./lib/datastore/bright-db-document-store-adapter");
|
|
20
|
+
Object.defineProperty(exports, "BrightDbDocumentStoreAdapter", { enumerable: true, get: function () { return bright_db_document_store_adapter_1.BrightDbDocumentStoreAdapter; } });
|
|
19
21
|
var userValidation_1 = require("./lib/validation/userValidation");
|
|
20
22
|
Object.defineProperty(exports, "validateRegistration", { enumerable: true, get: function () { return userValidation_1.validateRegistration; } });
|
|
21
23
|
Object.defineProperty(exports, "validateLogin", { enumerable: true, get: function () { return userValidation_1.validateLogin; } });
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../brightchain-node-express-suite/src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;AAsBH,6EAAkG;AAAzF,0HAAA,kBAAkB,OAAA;AAAE,8HAAA,sBAAsB,OAAA;AACnD,uFAA6D;AAC7D,yEAA+C;AAC/C,+EAA4E;AAAnE,4HAAA,mBAAmB,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../brightchain-node-express-suite/src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;AAsBH,6EAAkG;AAAzF,0HAAA,kBAAkB,OAAA;AAAE,8HAAA,sBAAsB,OAAA;AACnD,uFAA6D;AAC7D,yEAA+C;AAC/C,+EAA4E;AAAnE,4HAAA,mBAAmB,OAAA;AAC5B,qGAAgG;AAAvF,gJAAA,4BAA4B,OAAA;AAIrC,kEAKyC;AAJvC,sHAAA,oBAAoB,OAAA;AACpB,+GAAA,aAAa,OAAA;AACb,wHAAA,sBAAsB,OAAA;AACtB,kHAAA,gBAAgB,OAAA;AAGlB,aAAa;AACb,8DAA6D;AAApD,4GAAA,YAAY,OAAA;AAIrB,gEAA0E;AAAjE,2HAAA,yBAAyB,OAAA;AAIlC,mDAA6D;AAApD,uHAAA,uBAAuB,OAAA;AAEhC,YAAY;AACZ,uEAAsE;AAA7D,sHAAA,iBAAiB,OAAA;AAE1B,cAAc;AACd,iDAAwD;AAA/C,kHAAA,mBAAmB,OAAA;AAG5B,UAAU;AACV,qFAAiF;AAAxE,mIAAA,sBAAsB,OAAA;AAG/B,mBAAmB;AACnB,oEAGyC;AAFvC,gHAAA,YAAY,OAAA;AACZ,wHAAA,oBAAoB,OAAA;AAOtB,cAAc;AACd,iDAAwD;AAA/C,kHAAA,mBAAmB,OAAA;AAG5B,uBAAuB;AACvB,iFAA6E;AAApE,+HAAA,oBAAoB,OAAA;AAG7B,0BAA0B;AAC1B,sGAAkG;AAAzF,mJAAA,8BAA8B,OAAA;AAEvC,YAAY;AACZ,6CAAoD;AAA3C,8GAAA,iBAAiB,OAAA;AAE1B,cAAc;AACd,iDAAwD;AAA/C,kHAAA,mBAAmB,OAAA;AAE5B,sBAAsB;AACtB,yDAA+B;AAE/B,sBAAsB;AACtB,yDAA+B;AAE/B,6BAA6B;AAC7B,gEAAsC;AAEtC,iBAAiB;AACjB,yDAAsD;AAA7C,gHAAA,aAAa,OAAA;AAGtB,2BAA2B;AAC3B,4EAAyE;AAAhE,0HAAA,kBAAkB,OAAA;AAC3B,gFAA4E;AAAnE,6HAAA,mBAAmB,OAAA;AAC5B,2EAAuE;AAA9D,iIAAA,qBAAqB,OAAA;AAE9B,kGAA8F;AAArF,2IAAA,0BAA0B,OAAA;AAqBnC,eAAe;AACf,0EAAwE;AAA/D,qHAAA,gBAAgB,OAAA;AAEzB,eAAe;AACf,4CAA0D;AAAjD,2GAAA,mBAAmB,OAAA;AAE5B,kBAAkB;AAClB,+CAAgE;AAAvD,8GAAA,sBAAsB,OAAA;AAE/B,aAAa;AACb,yCAAsD;AAA7C,wGAAA,iBAAiB,OAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Adapter that wraps a BrightDb instance to conform to the
|
|
3
|
+
* Mongoose-style DocumentStore / DocumentCollection interfaces.
|
|
4
|
+
*
|
|
5
|
+
* BrightDb.Collection has a direct async API (async findOne → Promise,
|
|
6
|
+
* insertOne, Cursor-based find). DocumentCollection uses QueryBuilder
|
|
7
|
+
* (with .exec(), .select(), .lean(), etc.) and .create(). This adapter
|
|
8
|
+
* bridges the gap so `application.db` returns a proper DocumentStore.
|
|
9
|
+
*
|
|
10
|
+
* @module datastore/bright-db-document-store-adapter
|
|
11
|
+
*/
|
|
12
|
+
import type { BrightDb } from '@brightchain/db';
|
|
13
|
+
import type { DocumentCollection, DocumentRecord, DocumentStore } from './document-store';
|
|
14
|
+
/**
|
|
15
|
+
* Wraps a BrightDb instance to implement the Mongoose-style DocumentStore
|
|
16
|
+
* interface. Each collection() call returns a BrightDbCollectionAdapter
|
|
17
|
+
* that bridges BrightDb's Collection API to DocumentCollection.
|
|
18
|
+
*/
|
|
19
|
+
export declare class BrightDbDocumentStoreAdapter implements DocumentStore {
|
|
20
|
+
readonly brightDb: BrightDb;
|
|
21
|
+
private readonly _adapters;
|
|
22
|
+
constructor(brightDb: BrightDb);
|
|
23
|
+
collection<T extends DocumentRecord>(name: string): DocumentCollection<T>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=bright-db-document-store-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bright-db-document-store-adapter.d.ts","sourceRoot":"","sources":["../../../../../brightchain-node-express-suite/src/lib/datastore/bright-db-document-store-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EACV,kBAAkB,EAElB,cAAc,EACd,aAAa,EAGd,MAAM,kBAAkB,CAAC;AA8J1B;;;;GAIG;AACH,qBAAa,4BAA6B,YAAW,aAAa;aAMpC,QAAQ,EAAE,QAAQ;IAL9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAGtB;gBAEwB,QAAQ,EAAE,QAAQ;IAE9C,UAAU,CAAC,CAAC,SAAS,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC;CAU1E"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview Adapter that wraps a BrightDb instance to conform to the
|
|
4
|
+
* Mongoose-style DocumentStore / DocumentCollection interfaces.
|
|
5
|
+
*
|
|
6
|
+
* BrightDb.Collection has a direct async API (async findOne → Promise,
|
|
7
|
+
* insertOne, Cursor-based find). DocumentCollection uses QueryBuilder
|
|
8
|
+
* (with .exec(), .select(), .lean(), etc.) and .create(). This adapter
|
|
9
|
+
* bridges the gap so `application.db` returns a proper DocumentStore.
|
|
10
|
+
*
|
|
11
|
+
* @module datastore/bright-db-document-store-adapter
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.BrightDbDocumentStoreAdapter = void 0;
|
|
15
|
+
/**
|
|
16
|
+
* Wrap an async function in a QueryBuilder-compatible object that supports
|
|
17
|
+
* .exec(), .select(), .limit(), .sort(), .skip(), .lean(), .populate(),
|
|
18
|
+
* and thenable (.then()).
|
|
19
|
+
*/
|
|
20
|
+
function toQueryBuilder(fn) {
|
|
21
|
+
const qb = {
|
|
22
|
+
exec: () => fn(),
|
|
23
|
+
select: () => qb,
|
|
24
|
+
limit: () => qb,
|
|
25
|
+
sort: () => qb,
|
|
26
|
+
skip: () => qb,
|
|
27
|
+
lean: () => qb,
|
|
28
|
+
populate: () => qb,
|
|
29
|
+
collation: () => qb,
|
|
30
|
+
session: () => qb,
|
|
31
|
+
where: () => qb,
|
|
32
|
+
distinct: () => qb,
|
|
33
|
+
then: (onfulfilled, onrejected) => fn().then(onfulfilled, onrejected),
|
|
34
|
+
};
|
|
35
|
+
return qb;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Adapts a single BrightDb Collection to the Mongoose-style
|
|
39
|
+
* DocumentCollection interface.
|
|
40
|
+
*/
|
|
41
|
+
class BrightDbCollectionAdapter {
|
|
42
|
+
_col;
|
|
43
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
44
|
+
constructor(_col) {
|
|
45
|
+
this._col = _col;
|
|
46
|
+
}
|
|
47
|
+
find(filter) {
|
|
48
|
+
return toQueryBuilder(async () => {
|
|
49
|
+
return (await this._col.find(filter ?? {}).toArray());
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
findOne(filter) {
|
|
53
|
+
return toQueryBuilder(async () => {
|
|
54
|
+
return (await this._col.findOne(filter ?? {}));
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
findById(id) {
|
|
58
|
+
return toQueryBuilder(async () => {
|
|
59
|
+
return (await this._col.findById(id));
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
findOneAndUpdate(filter, update) {
|
|
63
|
+
return toQueryBuilder(async () => {
|
|
64
|
+
const doc = await this._col.findOne(filter);
|
|
65
|
+
if (!doc)
|
|
66
|
+
return null;
|
|
67
|
+
await this._col.updateOne(filter, { $set: update });
|
|
68
|
+
return (await this._col.findOne({ _id: doc._id }));
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
findOneAndDelete(filter) {
|
|
72
|
+
return toQueryBuilder(async () => {
|
|
73
|
+
const doc = await this._col.findOne(filter);
|
|
74
|
+
if (!doc)
|
|
75
|
+
return null;
|
|
76
|
+
await this._col.deleteOne({ _id: doc._id });
|
|
77
|
+
return doc;
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
findByIdAndUpdate(id, update) {
|
|
81
|
+
return this.findOneAndUpdate({ _id: id }, update);
|
|
82
|
+
}
|
|
83
|
+
findByIdAndDelete(id) {
|
|
84
|
+
return this.findOneAndDelete({ _id: id });
|
|
85
|
+
}
|
|
86
|
+
async create(doc) {
|
|
87
|
+
const result = await this._col.insertOne(doc);
|
|
88
|
+
return { ...doc, _id: result.insertedId };
|
|
89
|
+
}
|
|
90
|
+
async insertMany(docs) {
|
|
91
|
+
const result = await this._col.insertMany(docs);
|
|
92
|
+
return docs.map((d, i) => ({
|
|
93
|
+
...d,
|
|
94
|
+
_id: result.insertedIds[i] ?? d._id,
|
|
95
|
+
}));
|
|
96
|
+
}
|
|
97
|
+
async updateOne(filter, update) {
|
|
98
|
+
const r = await this._col.updateOne(filter, { $set: update });
|
|
99
|
+
return { modifiedCount: r.modifiedCount, matchedCount: r.matchedCount };
|
|
100
|
+
}
|
|
101
|
+
async updateMany(filter, update) {
|
|
102
|
+
const r = await this._col.updateMany(filter, { $set: update });
|
|
103
|
+
return { modifiedCount: r.modifiedCount, matchedCount: r.matchedCount };
|
|
104
|
+
}
|
|
105
|
+
async replaceOne(filter, doc) {
|
|
106
|
+
const r = await this._col.replaceOne(filter, doc);
|
|
107
|
+
return { modifiedCount: r.modifiedCount, matchedCount: r.matchedCount };
|
|
108
|
+
}
|
|
109
|
+
async deleteOne(filter) {
|
|
110
|
+
const r = await this._col.deleteOne(filter);
|
|
111
|
+
return { deletedCount: r.deletedCount };
|
|
112
|
+
}
|
|
113
|
+
async deleteMany(filter) {
|
|
114
|
+
const r = await this._col.deleteMany(filter);
|
|
115
|
+
return { deletedCount: r.deletedCount };
|
|
116
|
+
}
|
|
117
|
+
async countDocuments(filter) {
|
|
118
|
+
return this._col.countDocuments(filter ?? {});
|
|
119
|
+
}
|
|
120
|
+
async estimatedDocumentCount() {
|
|
121
|
+
return this._col.estimatedDocumentCount();
|
|
122
|
+
}
|
|
123
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
124
|
+
aggregate(pipeline) {
|
|
125
|
+
return toQueryBuilder(async () => {
|
|
126
|
+
return (await this._col.aggregate(pipeline));
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
distinct(field) {
|
|
130
|
+
return toQueryBuilder(async () => {
|
|
131
|
+
return (await this._col.distinct(field, {}));
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
async exists(filter) {
|
|
135
|
+
const doc = await this._col.findOne(filter);
|
|
136
|
+
return doc ? { _id: doc._id } : null;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Wraps a BrightDb instance to implement the Mongoose-style DocumentStore
|
|
141
|
+
* interface. Each collection() call returns a BrightDbCollectionAdapter
|
|
142
|
+
* that bridges BrightDb's Collection API to DocumentCollection.
|
|
143
|
+
*/
|
|
144
|
+
class BrightDbDocumentStoreAdapter {
|
|
145
|
+
brightDb;
|
|
146
|
+
_adapters = new Map();
|
|
147
|
+
constructor(brightDb) {
|
|
148
|
+
this.brightDb = brightDb;
|
|
149
|
+
}
|
|
150
|
+
collection(name) {
|
|
151
|
+
if (!this._adapters.has(name)) {
|
|
152
|
+
const rawCol = this.brightDb.collection(name);
|
|
153
|
+
this._adapters.set(name, new BrightDbCollectionAdapter(rawCol));
|
|
154
|
+
}
|
|
155
|
+
return this._adapters.get(name);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
exports.BrightDbDocumentStoreAdapter = BrightDbDocumentStoreAdapter;
|
|
159
|
+
//# sourceMappingURL=bright-db-document-store-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bright-db-document-store-adapter.js","sourceRoot":"","sources":["../../../../../brightchain-node-express-suite/src/lib/datastore/bright-db-document-store-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,8 @@ import type { BrightDb } from '@brightchain/db';
|
|
|
14
14
|
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
15
15
|
import type { IApplication, IAuthenticationProvider, IDatabasePlugin } from '@digitaldefiance/node-express-suite';
|
|
16
16
|
import type { IDatabase } from '@digitaldefiance/suite-core-lib';
|
|
17
|
+
import type { DocumentStore } from '../datastore/document-store';
|
|
18
|
+
import { BrightDbDocumentStoreAdapter } from '../datastore/bright-db-document-store-adapter';
|
|
17
19
|
import type { BrightDbEnvironment } from '../environment';
|
|
18
20
|
export interface IBrightDbDatabasePluginOptions {
|
|
19
21
|
skipAutoSeed?: boolean;
|
|
@@ -100,12 +102,13 @@ export declare class BrightDbDatabasePlugin<TID extends PlatformID> implements I
|
|
|
100
102
|
* Subclasses override with domain-specific seeding (e.g. full RBAC).
|
|
101
103
|
*/
|
|
102
104
|
initializeDevStore(): Promise<unknown>;
|
|
105
|
+
protected _documentStoreAdapter: BrightDbDocumentStoreAdapter | null;
|
|
103
106
|
/**
|
|
104
107
|
* Raw database connection object (IDatabasePlugin.db).
|
|
105
108
|
* The upstream Application.get db() delegates to this property so that
|
|
106
|
-
* `application.db` returns
|
|
109
|
+
* `application.db` returns a DocumentStore-compatible wrapper around BrightDb.
|
|
107
110
|
*/
|
|
108
|
-
get db():
|
|
111
|
+
get db(): DocumentStore | undefined;
|
|
109
112
|
/**
|
|
110
113
|
* The block store backing the BrightDB database.
|
|
111
114
|
* @throws Error if the plugin is not connected.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bright-db-database-plugin.d.ts","sourceRoot":"","sources":["../../../../../brightchain-node-express-suite/src/lib/plugins/bright-db-database-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAsB,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACvB,eAAe,EAChB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAS1D,MAAM,WAAW,8BAA8B;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,qBAAa,sBAAsB,CAAC,GAAG,SAAS,UAAU,CACxD,YAAW,eAAe,CAAC,GAAG,CAAC;IAE/B,SAAgB,IAAI,EAAE,MAAM,CAAc;IAC1C,SAAgB,OAAO,EAAE,MAAM,CAAW;IAE1C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC1D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAC1C,SAAS,CAAC,UAAU,UAAS;IAC7B,SAAS,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAQ;IACjD,SAAS,CAAC,SAAS,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAC5C,SAAS,CAAC,aAAa,EAAE,uBAAuB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IACpE,wEAAwE;IACxE,SAAS,CAAC,gBAAgB,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;gBAGzD,WAAW,EAAE,mBAAmB,CAAC,GAAG,CAAC,EACrC,OAAO,GAAE,8BAAmC;IAQ9C;;;;OAIG;IACH,IAAI,QAAQ,IAAI,SAAS,CAOxB;IAED;;;OAGG;IACH,IAAI,sBAAsB,IAAI,uBAAuB,CAAC,GAAG,CAAC,GAAG,SAAS,CAErE;IAED;;;;;;;;OAQG;IACG,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY3C;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"bright-db-database-plugin.d.ts","sourceRoot":"","sources":["../../../../../brightchain-node-express-suite/src/lib/plugins/bright-db-database-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAsB,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACvB,eAAe,EAChB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAS1D,MAAM,WAAW,8BAA8B;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,qBAAa,sBAAsB,CAAC,GAAG,SAAS,UAAU,CACxD,YAAW,eAAe,CAAC,GAAG,CAAC;IAE/B,SAAgB,IAAI,EAAE,MAAM,CAAc;IAC1C,SAAgB,OAAO,EAAE,MAAM,CAAW;IAE1C,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC1D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAC1C,SAAS,CAAC,UAAU,UAAS;IAC7B,SAAS,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAQ;IACjD,SAAS,CAAC,SAAS,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAC5C,SAAS,CAAC,aAAa,EAAE,uBAAuB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IACpE,wEAAwE;IACxE,SAAS,CAAC,gBAAgB,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;gBAGzD,WAAW,EAAE,mBAAmB,CAAC,GAAG,CAAC,EACrC,OAAO,GAAE,8BAAmC;IAQ9C;;;;OAIG;IACH,IAAI,QAAQ,IAAI,SAAS,CAOxB;IAED;;;OAGG;IACH,IAAI,sBAAsB,IAAI,uBAAuB,CAAC,GAAG,CAAC,GAAG,SAAS,CAErE;IAED;;;;;;;;OAQG;IACG,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY3C;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAUjC;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BjD;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3B;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAKtC;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;;;;;;;;OAWG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IA4C5C,SAAS,CAAC,qBAAqB,EAAE,4BAA4B,GAAG,IAAI,CAAQ;IAI5E;;;;OAIG;IACH,IAAI,EAAE,IAAI,aAAa,GAAG,SAAS,CAMlC;IAID;;;OAGG;IACH,IAAI,UAAU,IAAI,WAAW,CAO5B;IAED;;;OAGG;IACH,IAAI,QAAQ,IAAI,QAAQ,CAOvB;CACF"}
|
|
@@ -14,6 +14,7 @@ exports.BrightDbDatabasePlugin = void 0;
|
|
|
14
14
|
const brightchain_lib_1 = require("@brightchain/brightchain-lib");
|
|
15
15
|
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
16
16
|
const databaseInit_1 = require("../databaseInit");
|
|
17
|
+
const bright_db_document_store_adapter_1 = require("../datastore/bright-db-document-store-adapter");
|
|
17
18
|
const auth_1 = require("../services/auth");
|
|
18
19
|
const dev_store_seeder_1 = require("../services/dev-store-seeder");
|
|
19
20
|
class BrightDbDatabasePlugin {
|
|
@@ -79,6 +80,7 @@ class BrightDbDatabasePlugin {
|
|
|
79
80
|
this._brightDb = null;
|
|
80
81
|
this._authProvider = null;
|
|
81
82
|
this._initMemberStore = null;
|
|
83
|
+
this._documentStoreAdapter = null;
|
|
82
84
|
this._connected = false;
|
|
83
85
|
}
|
|
84
86
|
/**
|
|
@@ -175,14 +177,20 @@ class BrightDbDatabasePlugin {
|
|
|
175
177
|
}
|
|
176
178
|
return result;
|
|
177
179
|
}
|
|
180
|
+
_documentStoreAdapter = null;
|
|
178
181
|
// ── IDatabasePlugin.db ─────────────────────────────────────────────
|
|
179
182
|
/**
|
|
180
183
|
* Raw database connection object (IDatabasePlugin.db).
|
|
181
184
|
* The upstream Application.get db() delegates to this property so that
|
|
182
|
-
* `application.db` returns
|
|
185
|
+
* `application.db` returns a DocumentStore-compatible wrapper around BrightDb.
|
|
183
186
|
*/
|
|
184
187
|
get db() {
|
|
185
|
-
|
|
188
|
+
if (!this._brightDb)
|
|
189
|
+
return undefined;
|
|
190
|
+
if (!this._documentStoreAdapter || this._documentStoreAdapter.brightDb !== this._brightDb) {
|
|
191
|
+
this._documentStoreAdapter = new bright_db_document_store_adapter_1.BrightDbDocumentStoreAdapter(this._brightDb);
|
|
192
|
+
}
|
|
193
|
+
return this._documentStoreAdapter;
|
|
186
194
|
}
|
|
187
195
|
// ── Typed accessors ───────────────────────────────────────────────
|
|
188
196
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bright-db-database-plugin.js","sourceRoot":"","sources":["../../../../../brightchain-node-express-suite/src/lib/plugins/bright-db-database-plugin.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAGH,kEAA+E;AAE/E,0DAA0D;AAQ1D,kDAA0D;
|
|
1
|
+
{"version":3,"file":"bright-db-database-plugin.js","sourceRoot":"","sources":["../../../../../brightchain-node-express-suite/src/lib/plugins/bright-db-database-plugin.ts"],"names":[],"mappings":"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"}
|