@brightchain/brightchain-lib 0.18.0 → 0.19.0

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.
Files changed (103) hide show
  1. package/package.json +1 -1
  2. package/src/lib/db/aggregation.d.ts +20 -0
  3. package/src/lib/db/aggregation.d.ts.map +1 -0
  4. package/src/lib/db/aggregation.js +407 -0
  5. package/src/lib/db/aggregation.js.map +1 -0
  6. package/src/lib/db/collection.d.ts +315 -0
  7. package/src/lib/db/collection.d.ts.map +1 -0
  8. package/src/lib/db/collection.js +1054 -0
  9. package/src/lib/db/collection.js.map +1 -0
  10. package/src/lib/db/cursor.d.ts +51 -0
  11. package/src/lib/db/cursor.d.ts.map +1 -0
  12. package/src/lib/db/cursor.js +100 -0
  13. package/src/lib/db/cursor.js.map +1 -0
  14. package/src/lib/db/errors.d.ts +83 -0
  15. package/src/lib/db/errors.d.ts.map +1 -0
  16. package/src/lib/db/errors.js +103 -0
  17. package/src/lib/db/errors.js.map +1 -0
  18. package/src/lib/db/inMemoryDatabase.d.ts +135 -0
  19. package/src/lib/db/inMemoryDatabase.d.ts.map +1 -0
  20. package/src/lib/db/inMemoryDatabase.js +258 -0
  21. package/src/lib/db/inMemoryDatabase.js.map +1 -0
  22. package/src/lib/db/inMemoryHeadRegistry.d.ts +33 -0
  23. package/src/lib/db/inMemoryHeadRegistry.d.ts.map +1 -0
  24. package/src/lib/db/inMemoryHeadRegistry.js +83 -0
  25. package/src/lib/db/inMemoryHeadRegistry.js.map +1 -0
  26. package/src/lib/db/index.d.ts +14 -0
  27. package/src/lib/db/index.d.ts.map +1 -0
  28. package/src/lib/db/index.js +18 -0
  29. package/src/lib/db/index.js.map +1 -0
  30. package/src/lib/db/indexing.d.ts +133 -0
  31. package/src/lib/db/indexing.d.ts.map +1 -0
  32. package/src/lib/db/indexing.js +287 -0
  33. package/src/lib/db/indexing.js.map +1 -0
  34. package/src/lib/db/queryEngine.d.ts +50 -0
  35. package/src/lib/db/queryEngine.d.ts.map +1 -0
  36. package/src/lib/db/queryEngine.js +461 -0
  37. package/src/lib/db/queryEngine.js.map +1 -0
  38. package/src/lib/db/schemaValidation.d.ts +41 -0
  39. package/src/lib/db/schemaValidation.d.ts.map +1 -0
  40. package/src/lib/db/schemaValidation.js +322 -0
  41. package/src/lib/db/schemaValidation.js.map +1 -0
  42. package/src/lib/db/transaction.d.ts +88 -0
  43. package/src/lib/db/transaction.d.ts.map +1 -0
  44. package/src/lib/db/transaction.js +112 -0
  45. package/src/lib/db/transaction.js.map +1 -0
  46. package/src/lib/db/types.d.ts +11 -0
  47. package/src/lib/db/types.d.ts.map +1 -0
  48. package/src/lib/db/types.js +11 -0
  49. package/src/lib/db/types.js.map +1 -0
  50. package/src/lib/db/updateEngine.d.ts +20 -0
  51. package/src/lib/db/updateEngine.d.ts.map +1 -0
  52. package/src/lib/db/updateEngine.js +193 -0
  53. package/src/lib/db/updateEngine.js.map +1 -0
  54. package/src/lib/db/uuidGenerator.d.ts +13 -0
  55. package/src/lib/db/uuidGenerator.d.ts.map +1 -0
  56. package/src/lib/db/uuidGenerator.js +34 -0
  57. package/src/lib/db/uuidGenerator.js.map +1 -0
  58. package/src/lib/errors/memberIndexSchemaValidationError.d.ts +6 -0
  59. package/src/lib/errors/memberIndexSchemaValidationError.d.ts.map +1 -0
  60. package/src/lib/errors/memberIndexSchemaValidationError.js +15 -0
  61. package/src/lib/errors/memberIndexSchemaValidationError.js.map +1 -0
  62. package/src/lib/index.d.ts +12 -0
  63. package/src/lib/index.d.ts.map +1 -1
  64. package/src/lib/index.js +55 -1
  65. package/src/lib/index.js.map +1 -1
  66. package/src/lib/interfaces/index.d.ts +1 -0
  67. package/src/lib/interfaces/index.d.ts.map +1 -1
  68. package/src/lib/interfaces/index.js.map +1 -1
  69. package/src/lib/interfaces/member-init-config.d.ts +20 -0
  70. package/src/lib/interfaces/member-init-config.d.ts.map +1 -0
  71. package/src/lib/interfaces/member-init-config.js +3 -0
  72. package/src/lib/interfaces/member-init-config.js.map +1 -0
  73. package/src/lib/interfaces/storage/index.d.ts +5 -0
  74. package/src/lib/interfaces/storage/index.d.ts.map +1 -1
  75. package/src/lib/interfaces/storage/index.js.map +1 -1
  76. package/src/lib/interfaces/storage/memberIndexSchema.d.ts +11 -0
  77. package/src/lib/interfaces/storage/memberIndexSchema.d.ts.map +1 -0
  78. package/src/lib/interfaces/storage/memberIndexSchema.js +26 -0
  79. package/src/lib/interfaces/storage/memberIndexSchema.js.map +1 -0
  80. package/src/lib/interfaces/storage/mnemonicSchema.d.ts +10 -0
  81. package/src/lib/interfaces/storage/mnemonicSchema.d.ts.map +1 -0
  82. package/src/lib/interfaces/storage/mnemonicSchema.js +22 -0
  83. package/src/lib/interfaces/storage/mnemonicSchema.js.map +1 -0
  84. package/src/lib/interfaces/storage/roleSchema.d.ts +10 -0
  85. package/src/lib/interfaces/storage/roleSchema.d.ts.map +1 -0
  86. package/src/lib/interfaces/storage/roleSchema.js +45 -0
  87. package/src/lib/interfaces/storage/roleSchema.js.map +1 -0
  88. package/src/lib/interfaces/storage/userRoleSchema.d.ts +10 -0
  89. package/src/lib/interfaces/storage/userRoleSchema.d.ts.map +1 -0
  90. package/src/lib/interfaces/storage/userRoleSchema.js +35 -0
  91. package/src/lib/interfaces/storage/userRoleSchema.js.map +1 -0
  92. package/src/lib/interfaces/storage/userSchema.d.ts +12 -0
  93. package/src/lib/interfaces/storage/userSchema.d.ts.map +1 -0
  94. package/src/lib/interfaces/storage/userSchema.js +62 -0
  95. package/src/lib/interfaces/storage/userSchema.js.map +1 -0
  96. /package/{BLOCK_COVERAGE_AUDIT.md → brightchain-lib/BLOCK_COVERAGE_AUDIT.md} +0 -0
  97. /package/{BROWSER_COMPAT.md → brightchain-lib/BROWSER_COMPAT.md} +0 -0
  98. /package/{DEPRECATIONS.md → brightchain-lib/DEPRECATIONS.md} +0 -0
  99. /package/{DEPRECATIONS_REMOVED.md → brightchain-lib/DEPRECATIONS_REMOVED.md} +0 -0
  100. /package/{MIGRATION.md → brightchain-lib/MIGRATION.md} +0 -0
  101. /package/{NAMING_AUDIT.md → brightchain-lib/NAMING_AUDIT.md} +0 -0
  102. /package/{NAMING_CONVENTIONS.md → brightchain-lib/NAMING_CONVENTIONS.md} +0 -0
  103. /package/{README.md → brightchain-lib/README.md} +0 -0
@@ -0,0 +1,193 @@
1
+ "use strict";
2
+ /**
3
+ * Update engine – applies MongoDB-style update operators to documents.
4
+ *
5
+ * Supports:
6
+ * $set, $unset, $inc, $push, $pull, $addToSet,
7
+ * $min, $max, $rename, $currentDate, $mul, $pop
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.isOperatorUpdate = isOperatorUpdate;
11
+ exports.applyUpdate = applyUpdate;
12
+ const queryEngine_1 = require("./queryEngine");
13
+ /**
14
+ * Check whether an update document uses operators ($set, $inc, etc.)
15
+ * vs. being a plain replacement document.
16
+ */
17
+ function isOperatorUpdate(update) {
18
+ return Object.keys(update).some((k) => k.startsWith('$'));
19
+ }
20
+ /**
21
+ * Apply update operators to a document and return the mutated copy.
22
+ * The original document is not modified.
23
+ */
24
+ function applyUpdate(doc, update) {
25
+ const result = structuredClone(doc);
26
+ if (!isOperatorUpdate(update)) {
27
+ // Replacement document – keep _id from original
28
+ const replacement = { ...update };
29
+ replacement['_id'] = doc._id;
30
+ return replacement;
31
+ }
32
+ const ops = update;
33
+ // $set
34
+ if (ops['$set']) {
35
+ for (const [key, value] of Object.entries(ops['$set'])) {
36
+ setNestedValue(result, key, value);
37
+ }
38
+ }
39
+ // $unset
40
+ if (ops['$unset']) {
41
+ for (const key of Object.keys(ops['$unset'])) {
42
+ deleteNestedValue(result, key);
43
+ }
44
+ }
45
+ // $inc
46
+ if (ops['$inc']) {
47
+ for (const [key, amount] of Object.entries(ops['$inc'])) {
48
+ const current = getNestedValue(result, key);
49
+ const currentNum = typeof current === 'number' ? current : 0;
50
+ setNestedValue(result, key, currentNum + amount);
51
+ }
52
+ }
53
+ // $mul
54
+ if (ops['$mul']) {
55
+ for (const [key, factor] of Object.entries(ops['$mul'])) {
56
+ const current = getNestedValue(result, key);
57
+ const currentNum = typeof current === 'number' ? current : 0;
58
+ setNestedValue(result, key, currentNum * factor);
59
+ }
60
+ }
61
+ // $min
62
+ if (ops['$min']) {
63
+ for (const [key, value] of Object.entries(ops['$min'])) {
64
+ const current = getNestedValue(result, key);
65
+ if (current === undefined || compareBasic(value, current) < 0) {
66
+ setNestedValue(result, key, value);
67
+ }
68
+ }
69
+ }
70
+ // $max
71
+ if (ops['$max']) {
72
+ for (const [key, value] of Object.entries(ops['$max'])) {
73
+ const current = getNestedValue(result, key);
74
+ if (current === undefined || compareBasic(value, current) > 0) {
75
+ setNestedValue(result, key, value);
76
+ }
77
+ }
78
+ }
79
+ // $push
80
+ if (ops['$push']) {
81
+ for (const [key, value] of Object.entries(ops['$push'])) {
82
+ const current = getNestedValue(result, key);
83
+ const arr = Array.isArray(current) ? [...current] : [];
84
+ arr.push(value);
85
+ setNestedValue(result, key, arr);
86
+ }
87
+ }
88
+ // $pop
89
+ if (ops['$pop']) {
90
+ for (const [key, direction] of Object.entries(ops['$pop'])) {
91
+ const current = getNestedValue(result, key);
92
+ if (Array.isArray(current)) {
93
+ const arr = [...current];
94
+ if (direction === -1) {
95
+ arr.shift();
96
+ }
97
+ else {
98
+ arr.pop();
99
+ }
100
+ setNestedValue(result, key, arr);
101
+ }
102
+ }
103
+ }
104
+ // $pull
105
+ if (ops['$pull']) {
106
+ for (const [key, condition] of Object.entries(ops['$pull'])) {
107
+ const current = getNestedValue(result, key);
108
+ if (Array.isArray(current)) {
109
+ const arr = current.filter((item) => !(0, queryEngine_1.deepEquals)(item, condition));
110
+ setNestedValue(result, key, arr);
111
+ }
112
+ }
113
+ }
114
+ // $addToSet
115
+ if (ops['$addToSet']) {
116
+ for (const [key, value] of Object.entries(ops['$addToSet'])) {
117
+ const current = getNestedValue(result, key);
118
+ const arr = Array.isArray(current) ? [...current] : [];
119
+ if (!arr.some((item) => (0, queryEngine_1.deepEquals)(item, value))) {
120
+ arr.push(value);
121
+ }
122
+ setNestedValue(result, key, arr);
123
+ }
124
+ }
125
+ // $rename
126
+ if (ops['$rename']) {
127
+ for (const [oldKey, newKey] of Object.entries(ops['$rename'])) {
128
+ const value = getNestedValue(result, oldKey);
129
+ if (value !== undefined) {
130
+ deleteNestedValue(result, oldKey);
131
+ setNestedValue(result, newKey, value);
132
+ }
133
+ }
134
+ }
135
+ // $currentDate
136
+ if (ops['$currentDate']) {
137
+ for (const key of Object.keys(ops['$currentDate'])) {
138
+ setNestedValue(result, key, new Date().toISOString());
139
+ }
140
+ }
141
+ return result;
142
+ }
143
+ // ── Helpers ──
144
+ function getNestedValue(obj, path) {
145
+ const parts = path.split('.');
146
+ let current = obj;
147
+ for (const part of parts) {
148
+ if (current === null || current === undefined)
149
+ return undefined;
150
+ if (typeof current === 'object') {
151
+ current = current[part];
152
+ }
153
+ else {
154
+ return undefined;
155
+ }
156
+ }
157
+ return current;
158
+ }
159
+ function setNestedValue(obj, path, value) {
160
+ const parts = path.split('.');
161
+ let current = obj;
162
+ for (let i = 0; i < parts.length - 1; i++) {
163
+ const part = parts[i];
164
+ if (!(part in current) ||
165
+ typeof current[part] !== 'object' ||
166
+ current[part] === null) {
167
+ current[part] = {};
168
+ }
169
+ current = current[part];
170
+ }
171
+ current[parts[parts.length - 1]] = value;
172
+ }
173
+ function deleteNestedValue(obj, path) {
174
+ const parts = path.split('.');
175
+ let current = obj;
176
+ for (let i = 0; i < parts.length - 1; i++) {
177
+ const part = parts[i];
178
+ if (typeof current[part] !== 'object' || current[part] === null)
179
+ return;
180
+ current = current[part];
181
+ }
182
+ delete current[parts[parts.length - 1]];
183
+ }
184
+ function compareBasic(a, b) {
185
+ if (a === b)
186
+ return 0;
187
+ if (typeof a === 'number' && typeof b === 'number')
188
+ return a - b;
189
+ if (typeof a === 'string' && typeof b === 'string')
190
+ return a.localeCompare(b);
191
+ return String(a).localeCompare(String(b));
192
+ }
193
+ //# sourceMappingURL=updateEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateEngine.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/db/updateEngine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Type alias for a function that produces a UUID v4 string.
3
+ */
4
+ export type UuidGenerator = () => string;
5
+ /**
6
+ * Returns a default UuidGenerator that uses globalThis.crypto.randomUUID()
7
+ * when available, falling back to a crypto.getRandomValues-based UUID v4.
8
+ *
9
+ * Throws a descriptive error if neither globalThis.crypto.randomUUID nor
10
+ * globalThis.crypto.getRandomValues is available.
11
+ */
12
+ export declare function createDefaultUuidGenerator(): UuidGenerator;
13
+ //# sourceMappingURL=uuidGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uuidGenerator.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/db/uuidGenerator.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC;AAEzC;;;;;;GAMG;AACH,wBAAgB,0BAA0B,IAAI,aAAa,CAgC1D"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createDefaultUuidGenerator = createDefaultUuidGenerator;
4
+ /**
5
+ * Returns a default UuidGenerator that uses globalThis.crypto.randomUUID()
6
+ * when available, falling back to a crypto.getRandomValues-based UUID v4.
7
+ *
8
+ * Throws a descriptive error if neither globalThis.crypto.randomUUID nor
9
+ * globalThis.crypto.getRandomValues is available.
10
+ */
11
+ function createDefaultUuidGenerator() {
12
+ if (typeof globalThis !== 'undefined' &&
13
+ globalThis.crypto &&
14
+ typeof globalThis.crypto.randomUUID === 'function') {
15
+ return () => globalThis.crypto.randomUUID();
16
+ }
17
+ // Fallback: use crypto.getRandomValues (available in all modern browsers and Node 15+)
18
+ if (typeof globalThis !== 'undefined' &&
19
+ globalThis.crypto &&
20
+ typeof globalThis.crypto.getRandomValues === 'function') {
21
+ return () => {
22
+ const bytes = new Uint8Array(16);
23
+ globalThis.crypto.getRandomValues(bytes);
24
+ bytes[6] = (bytes[6] & 0x0f) | 0x40; // version 4
25
+ bytes[8] = (bytes[8] & 0x3f) | 0x80; // variant 10
26
+ const hex = Array.from(bytes, (b) => b.toString(16).padStart(2, '0')).join('');
27
+ return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
28
+ };
29
+ }
30
+ throw new Error('Unable to create a UUID generator: neither globalThis.crypto.randomUUID ' +
31
+ 'nor globalThis.crypto.getRandomValues is available. Provide a custom ' +
32
+ 'UuidGenerator function or run in an environment that supports the Web Crypto API.');
33
+ }
34
+ //# sourceMappingURL=uuidGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uuidGenerator.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/db/uuidGenerator.ts"],"names":[],"mappings":";;AAYA,gEAgCC;AAvCD;;;;;;GAMG;AACH,SAAgB,0BAA0B;IACxC,IACE,OAAO,UAAU,KAAK,WAAW;QACjC,UAAU,CAAC,MAAM;QACjB,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,KAAK,UAAU,EAClD,CAAC;QACD,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IAC9C,CAAC;IAED,uFAAuF;IACvF,IACE,OAAO,UAAU,KAAK,WAAW;QACjC,UAAU,CAAC,MAAM;QACjB,OAAO,UAAU,CAAC,MAAM,CAAC,eAAe,KAAK,UAAU,EACvD,CAAC;QACD,OAAO,GAAG,EAAE;YACV,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;YACjC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YACzC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,YAAY;YACjD,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,aAAa;YAClD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAClC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAChC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACX,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7G,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,KAAK,CACb,0EAA0E;QACxE,uEAAuE;QACvE,mFAAmF,CACtF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ValidationFieldError } from '../interfaces';
2
+ export declare class MemberIndexSchemaValidationError extends Error {
3
+ readonly fieldErrors: ValidationFieldError[];
4
+ constructor(fieldErrors: ValidationFieldError[]);
5
+ }
6
+ //# sourceMappingURL=memberIndexSchemaValidationError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memberIndexSchemaValidationError.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/errors/memberIndexSchemaValidationError.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE1D,qBAAa,gCAAiC,SAAQ,KAAK;IACzD,SAAgB,WAAW,EAAE,oBAAoB,EAAE,CAAC;gBAExC,WAAW,EAAE,oBAAoB,EAAE;CAQhD"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemberIndexSchemaValidationError = void 0;
4
+ class MemberIndexSchemaValidationError extends Error {
5
+ constructor(fieldErrors) {
6
+ const summary = fieldErrors
7
+ .map((e) => `${e.field}: ${e.message}`)
8
+ .join('; ');
9
+ super(`Member index document failed schema validation: ${summary}`);
10
+ this.name = 'MemberIndexSchemaValidationError';
11
+ this.fieldErrors = fieldErrors;
12
+ }
13
+ }
14
+ exports.MemberIndexSchemaValidationError = MemberIndexSchemaValidationError;
15
+ //# sourceMappingURL=memberIndexSchemaValidationError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memberIndexSchemaValidationError.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/errors/memberIndexSchemaValidationError.ts"],"names":[],"mappings":";;;AAEA,MAAa,gCAAiC,SAAQ,KAAK;IAGzD,YAAY,WAAmC;QAC7C,MAAM,OAAO,GAAG,WAAW;aACxB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;aACtC,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,KAAK,CAAC,mDAAmD,OAAO,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,IAAI,GAAG,kCAAkC,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CACF;AAXD,4EAWC"}
@@ -164,4 +164,16 @@ export * from './energyAccount';
164
164
  export * from './energyConsts';
165
165
  export * from './stores/energyAccountStore';
166
166
  export * from './stores/energyLedger';
167
+ /**
168
+ * Core database engine modules: query engine, update engine, cursor, indexing,
169
+ * aggregation, schema validation, transactions, Collection, and InMemoryDatabase.
170
+ *
171
+ * Uses named re-exports to avoid collisions with existing top-level exports:
172
+ * - ValidationError (./errors) vs db ValidationError → re-exported as DbValidationError
173
+ * - SchemaType (./types) vs db SchemaType → re-exported as DbSchemaType
174
+ * - ValidationFieldError, FieldSchema, BsonDocument, DocumentId already exported
175
+ * via ./interfaces — skipped here to avoid ambiguous re-export errors
176
+ */
177
+ export { BrightChainDbError, BulkWriteError, Collection, CollectionIndex, Cursor, DbSession, ValidationError as DbValidationError, DocumentNotFoundError, DuplicateKeyError, InMemoryDatabase, InMemoryHeadRegistry, IndexError, IndexManager, TransactionError, WriteConcernError, applyDefaults, applyProjection, applyUpdate, calculateBlockId, compareValues, createDefaultUuidGenerator, deepEquals, getTextSearchFields, isOperatorUpdate, matchesFilter, runAggregation, setTextSearchFields, sortDocuments, tokenize, validateDocument, type BulkWriteOperationError, type CollectionResolver, type CollectionSchema, type CommitCallback, type SchemaType as DbSchemaType, type InMemoryDatabaseOptions, type JournalOp, type RollbackCallback, type UuidGenerator, type WriteConcernSpec, } from './db';
178
+ export type { AggregationStage, BulkWriteOperation, BulkWriteOptions, BulkWriteResult, ChangeEvent, ChangeEventType, ChangeListener, ClientSession, CollectionOptions, CollectionSchemaFieldType, CursorSession, DeleteResult, FilterOperator, FilterQuery, FindOptions, IClientSession, IndexOptions, IndexSpec, InsertManyResult, InsertOneResult, LogicalOperators, ProjectionSpec, ReadPreference, ReplaceResult, SortSpec, TextIndexOptions, UpdateOperators, UpdateOptions, UpdateQuery, UpdateResult, WriteConcern, WriteOptions, } from '@digitaldefiance/suite-core-lib';
167
179
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,QAAQ,CAAC;AAKhB;;;;;;;;;;;GAWG;AACH,cAAc,SAAS,CAAC;AAKxB;;;;;;;;;;;;GAYG;AACH,cAAc,UAAU,CAAC;AAKzB;;;;;;;;GAQG;AACH,cAAc,SAAS,CAAC;AAKxB;;GAEG;AACH,cAAc,gBAAgB,CAAC;AAE/B;;GAEG;AACH,cAAc,4BAA4B,CAAC;AAK3C;;GAEG;AACH,cAAc,cAAc,CAAC;AAK7B;;GAEG;AACH,cAAc,UAAU,CAAC;AACzB,cAAc,0BAA0B,CAAC;AAEzC;;GAEG;AACH,cAAc,YAAY,CAAC;AAC3B,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,kCAAkC,CAAC;AAE1C;;GAEG;AACH,cAAc,aAAa,CAAC;AAE5B;;GAEG;AACH,cAAc,aAAa,CAAC;AAK5B;;GAEG;AACH,cAAc,UAAU,CAAC;AAEzB;;GAEG;AACH,cAAc,UAAU,CAAC;AAKzB;;GAEG;AACH,cAAc,QAAQ,CAAC;AAEvB;;GAEG;AACH,cAAc,UAAU,CAAC;AAKzB;;GAEG;AACH,cAAc,WAAW,CAAC;AAK1B;;GAEG;AACH,cAAc,QAAQ,CAAC;AAEvB;;GAEG;AACH,cAAc,SAAS,CAAC;AAExB;;GAEG;AACH,cAAc,WAAW,CAAC;AAE1B;;GAEG;AACH,cAAc,YAAY,CAAC;AAE3B;;GAEG;AACH,cAAc,QAAQ,CAAC;AAKvB;;GAEG;AACH,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AAEvB;;GAEG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAE9B;;GAEG;AACH,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AAExC;;GAEG;AACH,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AAEtC;;GAEG;AACH,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAEhC;;GAEG;AACH,cAAc,eAAe,CAAC;AAE9B;;GAEG;AACH,cAAc,6BAA6B,CAAC;AAE5C;;GAEG;AACH,cAAc,iBAAiB,CAAC;AAEhC;;GAEG;AACH,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/index.ts"],"names":[],"mappings":"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"}
package/src/lib/index.js CHANGED
@@ -9,7 +9,7 @@
9
9
  * @module brightchain-lib
10
10
  */
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.setGlobalServiceProvider = exports.getGlobalServiceProvider = void 0;
12
+ exports.validateDocument = exports.tokenize = exports.sortDocuments = exports.setTextSearchFields = exports.runAggregation = exports.matchesFilter = exports.isOperatorUpdate = exports.getTextSearchFields = exports.deepEquals = exports.createDefaultUuidGenerator = exports.compareValues = exports.calculateBlockId = exports.applyUpdate = exports.applyProjection = exports.applyDefaults = exports.WriteConcernError = exports.TransactionError = exports.IndexManager = exports.IndexError = exports.InMemoryHeadRegistry = exports.InMemoryDatabase = exports.DuplicateKeyError = exports.DocumentNotFoundError = exports.DbValidationError = exports.DbSession = exports.Cursor = exports.CollectionIndex = exports.Collection = exports.BulkWriteError = exports.BrightChainDbError = exports.setGlobalServiceProvider = exports.getGlobalServiceProvider = void 0;
13
13
  const tslib_1 = require("tslib");
14
14
  // Initialize BrightChain configuration first
15
15
  require("./init");
@@ -204,4 +204,58 @@ tslib_1.__exportStar(require("./energyAccount"), exports);
204
204
  tslib_1.__exportStar(require("./energyConsts"), exports);
205
205
  tslib_1.__exportStar(require("./stores/energyAccountStore"), exports);
206
206
  tslib_1.__exportStar(require("./stores/energyLedger"), exports);
207
+ // ============================================================================
208
+ // Database Engine (platform-agnostic core)
209
+ // ============================================================================
210
+ /**
211
+ * Core database engine modules: query engine, update engine, cursor, indexing,
212
+ * aggregation, schema validation, transactions, Collection, and InMemoryDatabase.
213
+ *
214
+ * Uses named re-exports to avoid collisions with existing top-level exports:
215
+ * - ValidationError (./errors) vs db ValidationError → re-exported as DbValidationError
216
+ * - SchemaType (./types) vs db SchemaType → re-exported as DbSchemaType
217
+ * - ValidationFieldError, FieldSchema, BsonDocument, DocumentId already exported
218
+ * via ./interfaces — skipped here to avoid ambiguous re-export errors
219
+ */
220
+ var db_1 = require("./db");
221
+ // db errors (ValidationError renamed to avoid collision with top-level ValidationError)
222
+ Object.defineProperty(exports, "BrightChainDbError", { enumerable: true, get: function () { return db_1.BrightChainDbError; } });
223
+ Object.defineProperty(exports, "BulkWriteError", { enumerable: true, get: function () { return db_1.BulkWriteError; } });
224
+ // collection
225
+ Object.defineProperty(exports, "Collection", { enumerable: true, get: function () { return db_1.Collection; } });
226
+ // indexing
227
+ Object.defineProperty(exports, "CollectionIndex", { enumerable: true, get: function () { return db_1.CollectionIndex; } });
228
+ // cursor
229
+ Object.defineProperty(exports, "Cursor", { enumerable: true, get: function () { return db_1.Cursor; } });
230
+ // transaction
231
+ Object.defineProperty(exports, "DbSession", { enumerable: true, get: function () { return db_1.DbSession; } });
232
+ Object.defineProperty(exports, "DbValidationError", { enumerable: true, get: function () { return db_1.ValidationError; } });
233
+ Object.defineProperty(exports, "DocumentNotFoundError", { enumerable: true, get: function () { return db_1.DocumentNotFoundError; } });
234
+ Object.defineProperty(exports, "DuplicateKeyError", { enumerable: true, get: function () { return db_1.DuplicateKeyError; } });
235
+ // inMemoryDatabase
236
+ Object.defineProperty(exports, "InMemoryDatabase", { enumerable: true, get: function () { return db_1.InMemoryDatabase; } });
237
+ // inMemoryHeadRegistry
238
+ Object.defineProperty(exports, "InMemoryHeadRegistry", { enumerable: true, get: function () { return db_1.InMemoryHeadRegistry; } });
239
+ Object.defineProperty(exports, "IndexError", { enumerable: true, get: function () { return db_1.IndexError; } });
240
+ Object.defineProperty(exports, "IndexManager", { enumerable: true, get: function () { return db_1.IndexManager; } });
241
+ Object.defineProperty(exports, "TransactionError", { enumerable: true, get: function () { return db_1.TransactionError; } });
242
+ Object.defineProperty(exports, "WriteConcernError", { enumerable: true, get: function () { return db_1.WriteConcernError; } });
243
+ Object.defineProperty(exports, "applyDefaults", { enumerable: true, get: function () { return db_1.applyDefaults; } });
244
+ Object.defineProperty(exports, "applyProjection", { enumerable: true, get: function () { return db_1.applyProjection; } });
245
+ // updateEngine
246
+ Object.defineProperty(exports, "applyUpdate", { enumerable: true, get: function () { return db_1.applyUpdate; } });
247
+ Object.defineProperty(exports, "calculateBlockId", { enumerable: true, get: function () { return db_1.calculateBlockId; } });
248
+ Object.defineProperty(exports, "compareValues", { enumerable: true, get: function () { return db_1.compareValues; } });
249
+ Object.defineProperty(exports, "createDefaultUuidGenerator", { enumerable: true, get: function () { return db_1.createDefaultUuidGenerator; } });
250
+ Object.defineProperty(exports, "deepEquals", { enumerable: true, get: function () { return db_1.deepEquals; } });
251
+ Object.defineProperty(exports, "getTextSearchFields", { enumerable: true, get: function () { return db_1.getTextSearchFields; } });
252
+ Object.defineProperty(exports, "isOperatorUpdate", { enumerable: true, get: function () { return db_1.isOperatorUpdate; } });
253
+ Object.defineProperty(exports, "matchesFilter", { enumerable: true, get: function () { return db_1.matchesFilter; } });
254
+ // aggregation
255
+ Object.defineProperty(exports, "runAggregation", { enumerable: true, get: function () { return db_1.runAggregation; } });
256
+ // queryEngine
257
+ Object.defineProperty(exports, "setTextSearchFields", { enumerable: true, get: function () { return db_1.setTextSearchFields; } });
258
+ Object.defineProperty(exports, "sortDocuments", { enumerable: true, get: function () { return db_1.sortDocuments; } });
259
+ Object.defineProperty(exports, "tokenize", { enumerable: true, get: function () { return db_1.tokenize; } });
260
+ Object.defineProperty(exports, "validateDocument", { enumerable: true, get: function () { return db_1.validateDocument; } });
207
261
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;AAEH,6CAA6C;AAC7C,kBAAgB;AAEhB,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAC/E;;;;;;;;;;;GAWG;AACH,kDAAwB;AAExB,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAC/E;;;;;;;;;;;;GAYG;AACH,mDAAyB;AAEzB,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAC/E;;;;;;;;GAQG;AACH,kDAAwB;AAExB,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAC/E;;GAEG;AACH,yDAA+B;AAE/B;;GAEG;AACH,qEAA2C;AAE3C,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAC/E;;GAEG;AACH,uDAA6B;AAE7B,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAC/E;;GAEG;AACH,mDAAyB;AACzB,mEAAyC;AAEzC;;GAEG;AACH,qDAA2B;AAC3B,0EAG0C;AAFxC,iIAAA,wBAAwB,OAAA;AACxB,iIAAA,wBAAwB,OAAA;AAG1B;;GAEG;AACH,sDAA4B;AAE5B;;GAEG;AACH,sDAA4B;AAE5B,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAC/E;;GAEG;AACH,mDAAyB;AAEzB;;GAEG;AACH,mDAAyB;AAEzB,+EAA+E;AAC/E,eAAe;AACf,+EAA+E;AAC/E;;GAEG;AACH,iDAAuB;AAEvB;;GAEG;AACH,mDAAyB;AAEzB,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAC/E;;GAEG;AACH,oDAA0B;AAE1B,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAC/E;;GAEG;AACH,iDAAuB;AAEvB;;GAEG;AACH,kDAAwB;AAExB;;GAEG;AACH,oDAA0B;AAE1B;;GAEG;AACH,qDAA2B;AAE3B;;GAEG;AACH,iDAAuB;AAEvB,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAC/E;;GAEG;AACH,wDAA8B;AAC9B,0DAAgC;AAChC,sDAA4B;AAC5B,iDAAuB;AAEvB;;GAEG;AACH,yDAA+B;AAC/B,wDAA8B;AAE9B;;GAEG;AACH,iDAAuB;AACvB,yDAA+B;AAC/B,kEAAwC;AAExC;;GAEG;AACH,mDAAyB;AACzB,6DAAmC;AACnC,gEAAsC;AAEtC;;GAEG;AACH,8DAAoC;AACpC,6DAAmC;AACnC,0DAAgC;AAEhC;;GAEG;AACH,wDAA8B;AAE9B;;GAEG;AACH,sEAA4C;AAE5C;;GAEG;AACH,0DAAgC;AAEhC;;GAEG;AACH,0DAAgC;AAChC,yDAA+B;AAC/B,sEAA4C;AAC5C,gEAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/index.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ export type * from './keyringConsts';
27
27
  export type * from './keyringEntry';
28
28
  export type * from './languageContext';
29
29
  export type * from './member';
30
+ export type * from './member-init-config';
30
31
  export * from './network';
31
32
  export type * from './nodeInfo';
32
33
  export type * from './position';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,kBAAkB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,OAAO,CAAC;AAC3B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,UAAU,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,QAAQ,CAAC;AAC5B,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,+BAA+B,CAAC;AACnD,cAAc,WAAW,CAAC;AAC1B,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,SAAS,CAAC;AAC7B,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,WAAW,CAAC;AAC/B,mBAAmB,cAAc,CAAC;AAGlC,cAAc,aAAa,CAAC;AAG5B,mBAAmB,YAAY,CAAC;AAGhC,mBAAmB,iBAAiB,CAAC;AAGrC,mBAAmB,uBAAuB,CAAC;AAG3C,cAAc,cAAc,CAAC;AAG7B,cAAc,UAAU,CAAC;AAGzB,cAAc,cAAc,CAAC;AAI7B,cAAc,QAAQ,CAAC;AAIvB,cAAc,kBAAkB,CAAC;AAIjC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,kBAAkB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,OAAO,CAAC;AAC3B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,sBAAsB,CAAC;AAC1C,cAAc,WAAW,CAAC;AAC1B,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,QAAQ,CAAC;AAC5B,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,+BAA+B,CAAC;AACnD,cAAc,WAAW,CAAC;AAC1B,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,SAAS,CAAC;AAC7B,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,WAAW,CAAC;AAC/B,mBAAmB,cAAc,CAAC;AAGlC,cAAc,aAAa,CAAC;AAG5B,mBAAmB,YAAY,CAAC;AAGhC,mBAAmB,iBAAiB,CAAC;AAGrC,mBAAmB,uBAAuB,CAAC;AAG3C,cAAc,cAAc,CAAC;AAG7B,cAAc,UAAU,CAAC;AAGzB,cAAc,cAAc,CAAC;AAI7B,cAAc,QAAQ,CAAC;AAIvB,cAAc,kBAAkB,CAAC;AAIjC,cAAc,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":";;;AACA,yDAA+B;AA4B/B,oDAA0B;AAmB1B,oDAA0B;AAS1B,+GAA+G;AAC/G,sDAA4B;AAW5B,yCAAyC;AACzC,uDAA6B;AAE7B,mEAAmE;AACnE,mDAAyB;AAEzB,kDAAkD;AAClD,uDAA6B;AAE7B,kDAAkD;AAClD,uGAAuG;AACvG,iDAAuB;AAEvB,oEAAoE;AACpE,yGAAyG;AACzG,2DAAiC;AAEjC,oFAAoF;AACpF,yGAAyG;AACzG,oDAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":";;;AACA,yDAA+B;AA6B/B,oDAA0B;AAmB1B,oDAA0B;AAS1B,+GAA+G;AAC/G,sDAA4B;AAW5B,yCAAyC;AACzC,uDAA6B;AAE7B,mEAAmE;AACnE,mDAAyB;AAEzB,kDAAkD;AAClD,uDAA6B;AAE7B,kDAAkD;AAClD,uGAAuG;AACvG,iDAAuB;AAEvB,oEAAoE;AACpE,yGAAyG;AACzG,2DAAiC;AAEjC,oFAAoF;AACpF,yGAAyG;AACzG,oDAA0B"}
@@ -0,0 +1,20 @@
1
+ import { BlockSize } from '../enumerations';
2
+ /**
3
+ * BrightChain-native configuration for BrightChainMemberInitService.
4
+ * Contains only what the service needs — no Mongoose, no Express.
5
+ */
6
+ export interface IBrightChainMemberInitConfig {
7
+ /** Pool name used as the BrightChainDb name and poolId */
8
+ memberPoolName: string;
9
+ /**
10
+ * Filesystem path for the disk block store.
11
+ * When set (and useMemoryStore is false), a DiskBlockStore and
12
+ * PersistentHeadRegistry are used so data survives process restarts.
13
+ */
14
+ blockStorePath?: string;
15
+ /** Force in-memory store even when blockStorePath is set */
16
+ useMemoryStore?: boolean;
17
+ /** Block size for the store (defaults to BlockSize.Medium) */
18
+ blockSize?: BlockSize;
19
+ }
20
+ //# sourceMappingURL=member-init-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member-init-config.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/member-init-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,0DAA0D;IAC1D,cAAc,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4DAA4D;IAC5D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=member-init-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"member-init-config.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/member-init-config.ts"],"names":[],"mappings":""}
@@ -10,10 +10,15 @@ export type * from './documentStore';
10
10
  export type * from './encryptedPool';
11
11
  export { EncryptionMode } from './encryptedPool';
12
12
  export type * from './headRegistry';
13
+ export type * from './memberIndexSchema';
14
+ export type * from './mnemonicSchema';
13
15
  export type * from './pooledBlockStore';
14
16
  export { DEFAULT_POOL, isPooledBlockStore, isValidPoolId, makeStorageKey, parseStorageKey, validatePoolId, } from './pooledBlockStore';
15
17
  export type * from './readConcernBlockStore';
16
18
  export { isReadConcernBlockStore } from './readConcernBlockStore';
19
+ export type * from './roleSchema';
17
20
  export type * from './universalBlockStore';
21
+ export type * from './userRoleSchema';
22
+ export type * from './userSchema';
18
23
  export type * from './documentTypes';
19
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,iBAAiB,CAAC;AACrC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,YAAY,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,iBAAiB,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,oBAAoB,CAAC;AACxC,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,mBAAmB,yBAAyB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,mBAAmB,uBAAuB,CAAC;AAG3C,mBAAmB,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,iBAAiB,CAAC;AACrC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,YAAY,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,iBAAiB,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,oBAAoB,CAAC;AACxC,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,mBAAmB,yBAAyB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,cAAc,CAAC;AAGlC,mBAAmB,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/index.ts"],"names":[],"mappings":";;;AACA,iDAA6D;AAApD,2HAAA,0BAA0B,OAAA;AAInC,uCAA2C;AAAlC,yGAAA,aAAa,OAAA;AAKtB,iDAAiD;AAAxC,+GAAA,cAAc,OAAA;AAGvB,uDAO4B;AAN1B,gHAAA,YAAY,OAAA;AACZ,sHAAA,kBAAkB,OAAA;AAClB,iHAAA,aAAa,OAAA;AACb,kHAAA,cAAc,OAAA;AACd,mHAAA,eAAe,OAAA;AACf,kHAAA,cAAc,OAAA;AAGhB,iEAAkE;AAAzD,gIAAA,uBAAuB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/index.ts"],"names":[],"mappings":";;;AACA,iDAA6D;AAApD,2HAAA,0BAA0B,OAAA;AAInC,uCAA2C;AAAlC,yGAAA,aAAa,OAAA;AAKtB,iDAAiD;AAAxC,+GAAA,cAAc,OAAA;AAKvB,uDAO4B;AAN1B,gHAAA,YAAY,OAAA;AACZ,sHAAA,kBAAkB,OAAA;AAClB,iHAAA,aAAa,OAAA;AACb,kHAAA,cAAc,OAAA;AACd,mHAAA,eAAe,OAAA;AACf,kHAAA,cAAc,OAAA;AAGhB,iEAAkE;AAAzD,gIAAA,uBAAuB,OAAA"}
@@ -0,0 +1,11 @@
1
+ import type { CollectionSchema } from '@digitaldefiance/suite-core-lib';
2
+ /**
3
+ * Schema for the member index collection.
4
+ *
5
+ * Uses brandedField() so each field is validated against the registered
6
+ * BrandedPrimitiveDefinition rather than a duplicated regex.
7
+ *
8
+ * _Requirements: 5.1–5.6_
9
+ */
10
+ export declare const MEMBER_INDEX_SCHEMA: CollectionSchema;
11
+ //# sourceMappingURL=memberIndexSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memberIndexSchema.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/memberIndexSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAQxE;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,gBAYjC,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MEMBER_INDEX_SCHEMA = void 0;
4
+ const primitives_1 = require("../branded/primitives");
5
+ /**
6
+ * Schema for the member index collection.
7
+ *
8
+ * Uses brandedField() so each field is validated against the registered
9
+ * BrandedPrimitiveDefinition rather than a duplicated regex.
10
+ *
11
+ * _Requirements: 5.1–5.6_
12
+ */
13
+ exports.MEMBER_INDEX_SCHEMA = {
14
+ name: 'memberIndex',
15
+ properties: {
16
+ id: (0, primitives_1.brandedField)(primitives_1.ShortHexGuidPrimitive, { required: true }),
17
+ publicCBL: (0, primitives_1.brandedField)(primitives_1.BlockIdPrimitive, { required: true }),
18
+ privateCBL: (0, primitives_1.brandedField)(primitives_1.BlockIdPrimitive, { required: true }),
19
+ poolId: (0, primitives_1.brandedField)(primitives_1.PoolIdPrimitive, { required: true }),
20
+ },
21
+ required: ['id', 'publicCBL', 'privateCBL', 'poolId'],
22
+ additionalProperties: true,
23
+ validationLevel: 'strict',
24
+ validationAction: 'error',
25
+ };
26
+ //# sourceMappingURL=memberIndexSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memberIndexSchema.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/memberIndexSchema.ts"],"names":[],"mappings":";;;AACA,sDAK+B;AAE/B;;;;;;;GAOG;AACU,QAAA,mBAAmB,GAAqB;IACnD,IAAI,EAAE,aAAa;IACnB,UAAU,EAAE;QACV,EAAE,EAAE,IAAA,yBAAY,EAAC,kCAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC3D,SAAS,EAAE,IAAA,yBAAY,EAAC,6BAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC7D,UAAU,EAAE,IAAA,yBAAY,EAAC,6BAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC9D,MAAM,EAAE,IAAA,yBAAY,EAAC,4BAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KAC1D;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,CAAC;IACrD,oBAAoB,EAAE,IAAI;IAC1B,eAAe,EAAE,QAAQ;IACzB,gBAAgB,EAAE,OAAO;CAC1B,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { CollectionSchema } from '@digitaldefiance/suite-core-lib';
2
+ /** Well-known collection name for mnemonic hash documents. */
3
+ export declare const MNEMONICS_COLLECTION = "mnemonics";
4
+ /**
5
+ * Schema for the mnemonics collection.
6
+ * Mirrors the Mongoose mnemonic document structure:
7
+ * hmac (non-reversible HMAC of the mnemonic for uniqueness checks)
8
+ */
9
+ export declare const MNEMONIC_SCHEMA: CollectionSchema;
10
+ //# sourceMappingURL=mnemonicSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mnemonicSchema.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/mnemonicSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,8DAA8D;AAC9D,eAAO,MAAM,oBAAoB,cAAc,CAAC;AAEhD;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,gBAU7B,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MNEMONIC_SCHEMA = exports.MNEMONICS_COLLECTION = void 0;
4
+ /** Well-known collection name for mnemonic hash documents. */
5
+ exports.MNEMONICS_COLLECTION = 'mnemonics';
6
+ /**
7
+ * Schema for the mnemonics collection.
8
+ * Mirrors the Mongoose mnemonic document structure:
9
+ * hmac (non-reversible HMAC of the mnemonic for uniqueness checks)
10
+ */
11
+ exports.MNEMONIC_SCHEMA = {
12
+ name: 'mnemonic',
13
+ properties: {
14
+ _id: { type: 'string', required: true },
15
+ hmac: { type: 'string', required: true },
16
+ },
17
+ required: ['_id', 'hmac'],
18
+ additionalProperties: true,
19
+ validationLevel: 'strict',
20
+ validationAction: 'error',
21
+ };
22
+ //# sourceMappingURL=mnemonicSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mnemonicSchema.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/mnemonicSchema.ts"],"names":[],"mappings":";;;AAEA,8DAA8D;AACjD,QAAA,oBAAoB,GAAG,WAAW,CAAC;AAEhD;;;;GAIG;AACU,QAAA,eAAe,GAAqB;IAC/C,IAAI,EAAE,UAAU;IAChB,UAAU,EAAE;QACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QACvC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;KACzC;IACD,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,IAAI;IAC1B,eAAe,EAAE,QAAQ;IACzB,gBAAgB,EAAE,OAAO;CAC1B,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { CollectionSchema } from '@digitaldefiance/suite-core-lib';
2
+ /** Well-known collection name for roles. */
3
+ export declare const ROLES_COLLECTION = "roles";
4
+ /**
5
+ * Schema for the roles collection.
6
+ * Mirrors the Mongoose role document structure:
7
+ * name, admin, member, child, system, createdBy, updatedBy, timestamps
8
+ */
9
+ export declare const ROLE_SCHEMA: CollectionSchema;
10
+ //# sourceMappingURL=roleSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roleSchema.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/storage/roleSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,4CAA4C;AAC5C,eAAO,MAAM,gBAAgB,UAAU,CAAC;AAExC;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,gBAiCzB,CAAC"}