@brightchain/brightchain-lib 0.3.0 → 0.6.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.
- package/package.json +5 -5
- package/src/browser.d.ts +13 -0
- package/src/browser.d.ts.map +1 -1
- package/src/browser.js +23 -1
- package/src/browser.js.map +1 -1
- package/src/lib/brightChain.d.ts +7 -0
- package/src/lib/brightChain.d.ts.map +1 -1
- package/src/lib/brightChain.js.map +1 -1
- package/src/lib/browserBrightChain.d.ts +7 -0
- package/src/lib/browserBrightChain.d.ts.map +1 -1
- package/src/lib/browserBrightChain.js.map +1 -1
- package/src/lib/documents/member/baseMemberDocument.d.ts +1 -1
- package/src/lib/documents/member/baseMemberDocument.d.ts.map +1 -1
- package/src/lib/energyAccount.d.ts +71 -0
- package/src/lib/energyAccount.d.ts.map +1 -0
- package/src/lib/energyAccount.js +124 -0
- package/src/lib/energyAccount.js.map +1 -0
- package/src/lib/energyConsts.d.ts +23 -0
- package/src/lib/energyConsts.d.ts.map +1 -0
- package/src/lib/energyConsts.js +31 -0
- package/src/lib/energyConsts.js.map +1 -0
- package/src/lib/enumeration-translations/memberType.d.ts +1 -1
- package/src/lib/enumeration-translations/memberType.d.ts.map +1 -1
- package/src/lib/enumeration-translations/memberType.js +6 -6
- package/src/lib/enumeration-translations/memberType.js.map +1 -1
- package/src/lib/enumerations/index.d.ts +0 -1
- package/src/lib/enumerations/index.d.ts.map +1 -1
- package/src/lib/enumerations/index.js +0 -1
- package/src/lib/enumerations/index.js.map +1 -1
- package/src/lib/enumerations/operationType.d.ts +25 -1
- package/src/lib/enumerations/operationType.d.ts.map +1 -1
- package/src/lib/enumerations/operationType.js +34 -1
- package/src/lib/enumerations/operationType.js.map +1 -1
- package/src/lib/errors/index.d.ts +6 -0
- package/src/lib/errors/index.d.ts.map +1 -1
- package/src/lib/errors/index.js +9 -0
- package/src/lib/errors/index.js.map +1 -1
- package/src/lib/errors/superCbl.d.ts +24 -0
- package/src/lib/errors/superCbl.d.ts.map +1 -0
- package/src/lib/errors/superCbl.js +43 -0
- package/src/lib/errors/superCbl.js.map +1 -0
- package/src/lib/index.d.ts +7 -0
- package/src/lib/index.d.ts.map +1 -1
- package/src/lib/index.js +7 -0
- package/src/lib/index.js.map +1 -1
- package/src/lib/interfaces/energyAccount.d.ts +37 -0
- package/src/lib/interfaces/energyAccount.d.ts.map +1 -0
- package/src/lib/interfaces/energyAccount.js +3 -0
- package/src/lib/interfaces/energyAccount.js.map +1 -0
- package/src/lib/interfaces/energyTransaction.d.ts +18 -2
- package/src/lib/interfaces/energyTransaction.d.ts.map +1 -1
- package/src/lib/interfaces/member/hydrated.d.ts +1 -2
- package/src/lib/interfaces/member/hydrated.d.ts.map +1 -1
- package/src/lib/interfaces/member/memberData.d.ts +1 -2
- package/src/lib/interfaces/member/memberData.d.ts.map +1 -1
- package/src/lib/interfaces/member/memberDto.d.ts +1 -2
- package/src/lib/interfaces/member/memberDto.d.ts.map +1 -1
- package/src/lib/interfaces/member/operational.d.ts +1 -2
- package/src/lib/interfaces/member/operational.d.ts.map +1 -1
- package/src/lib/interfaces/member/storage.d.ts +1 -1
- package/src/lib/interfaces/member/storage.d.ts.map +1 -1
- package/src/lib/interfaces/storage/blockStore.d.ts +1 -1
- package/src/lib/interfaces/storage/blockStore.d.ts.map +1 -1
- package/src/lib/interfaces/storage/index.d.ts +1 -0
- package/src/lib/interfaces/storage/index.d.ts.map +1 -1
- package/src/lib/interfaces/storage/superCbl.d.ts +102 -0
- package/src/lib/interfaces/storage/superCbl.d.ts.map +1 -0
- package/src/lib/interfaces/storage/superCbl.js +3 -0
- package/src/lib/interfaces/storage/superCbl.js.map +1 -0
- package/src/lib/operationCost.d.ts +13 -1
- package/src/lib/operationCost.d.ts.map +1 -1
- package/src/lib/operationCost.js +18 -2
- package/src/lib/operationCost.js.map +1 -1
- package/src/lib/schemas/quorumDocument.d.ts.map +1 -1
- package/src/lib/schemas/quorumDocument.js +1 -2
- package/src/lib/schemas/quorumDocument.js.map +1 -1
- package/src/lib/services/index.d.ts +2 -0
- package/src/lib/services/index.d.ts.map +1 -1
- package/src/lib/services/index.js +2 -0
- package/src/lib/services/index.js.map +1 -1
- package/src/lib/services/jsonCblCapacity.service.d.ts +80 -0
- package/src/lib/services/jsonCblCapacity.service.d.ts.map +1 -0
- package/src/lib/services/jsonCblCapacity.service.js +147 -0
- package/src/lib/services/jsonCblCapacity.service.js.map +1 -0
- package/src/lib/services/memberStore.d.ts.map +1 -1
- package/src/lib/services/memberStore.js +1 -2
- package/src/lib/services/memberStore.js.map +1 -1
- package/src/lib/services/messaging/messageCBLService.d.ts.map +1 -1
- package/src/lib/services/messaging/messageCBLService.js +9 -0
- package/src/lib/services/messaging/messageCBLService.js.map +1 -1
- package/src/lib/services/superCbl.service.d.ts +68 -0
- package/src/lib/services/superCbl.service.d.ts.map +1 -0
- package/src/lib/services/superCbl.service.js +213 -0
- package/src/lib/services/superCbl.service.js.map +1 -0
- package/src/lib/sharedTypes.d.ts +1 -2
- package/src/lib/sharedTypes.d.ts.map +1 -1
- package/src/lib/sharedTypes.js.map +1 -1
- package/src/lib/simpleBrightChain.d.ts +7 -0
- package/src/lib/simpleBrightChain.d.ts.map +1 -1
- package/src/lib/simpleBrightChain.js.map +1 -1
- package/src/lib/stores/energyAccountStore.d.ts +43 -0
- package/src/lib/stores/energyAccountStore.d.ts.map +1 -0
- package/src/lib/stores/energyAccountStore.js +73 -0
- package/src/lib/stores/energyAccountStore.js.map +1 -0
- package/src/lib/stores/energyLedger.d.ts +40 -0
- package/src/lib/stores/energyLedger.d.ts.map +1 -0
- package/src/lib/stores/energyLedger.js +77 -0
- package/src/lib/stores/energyLedger.js.map +1 -0
- package/src/lib/stores/memoryBlockStore.d.ts.map +1 -1
- package/src/lib/stores/memoryBlockStore.js +1 -4
- package/src/lib/stores/memoryBlockStore.js.map +1 -1
- package/src/lib/test/testMembers.d.ts +1 -2
- package/src/lib/test/testMembers.d.ts.map +1 -1
- package/src/lib/test/testMembers.js +6 -7
- package/src/lib/test/testMembers.js.map +1 -1
- package/src/lib/types/checksum.d.ts.map +1 -1
- package/src/lib/types/checksum.js +8 -3
- package/src/lib/types/checksum.js.map +1 -1
- package/src/lib/enumerations/memberType.d.ts +0 -16
- package/src/lib/enumerations/memberType.d.ts.map +0 -1
- package/src/lib/enumerations/memberType.js +0 -20
- package/src/lib/enumerations/memberType.js.map +0 -1
- /package/{DEPRECATIONS.md → brightchain-lib/DEPRECATIONS.md} +0 -0
- /package/{DEPRECATIONS_REMOVED.md → brightchain-lib/DEPRECATIONS_REMOVED.md} +0 -0
- /package/{MIGRATION.md → brightchain-lib/MIGRATION.md} +0 -0
- /package/{NAMING_AUDIT.md → brightchain-lib/NAMING_AUDIT.md} +0 -0
- /package/{NAMING_CONVENTIONS.md → brightchain-lib/NAMING_CONVENTIONS.md} +0 -0
- /package/{README.md → brightchain-lib/README.md} +0 -0
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SuperCBLService = void 0;
|
|
4
|
+
exports.parseCBLData = parseCBLData;
|
|
5
|
+
const superCbl_1 = require("../errors/superCbl");
|
|
6
|
+
const jsonCblCapacity_service_1 = require("./jsonCblCapacity.service");
|
|
7
|
+
/**
|
|
8
|
+
* Parse CBL data from JSON and detect its type.
|
|
9
|
+
*
|
|
10
|
+
* @param json - JSON string or object containing CBL data
|
|
11
|
+
* @returns Parsed CBL data with type information
|
|
12
|
+
*
|
|
13
|
+
* @see Requirements 5.1, 6.5, 6.6
|
|
14
|
+
*/
|
|
15
|
+
function parseCBLData(json) {
|
|
16
|
+
const data = typeof json === 'string' ? JSON.parse(json) : json;
|
|
17
|
+
// Check version
|
|
18
|
+
if (data.version === 1) {
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
21
|
+
if (data.version === 2) {
|
|
22
|
+
if (data.type === 'regular') {
|
|
23
|
+
return data;
|
|
24
|
+
}
|
|
25
|
+
else if (data.type === 'sub-cbl') {
|
|
26
|
+
return data;
|
|
27
|
+
}
|
|
28
|
+
else if (data.type === 'super-cbl') {
|
|
29
|
+
return data;
|
|
30
|
+
}
|
|
31
|
+
throw superCbl_1.SuperCBLError.invalidCBLType(data.type);
|
|
32
|
+
}
|
|
33
|
+
throw superCbl_1.SuperCBLError.invalidFormat(`Unsupported CBL version: ${data.version}`, { version: data.version });
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Service for creating and managing hierarchical Super CBL structures.
|
|
37
|
+
*
|
|
38
|
+
* @see Requirements 2.1, 2.2, 2.3, 2.4, 3.1, 3.2, 3.3, 3.4, 4.1, 4.2
|
|
39
|
+
*/
|
|
40
|
+
class SuperCBLService {
|
|
41
|
+
constructor() {
|
|
42
|
+
this.capacityCalculator = new jsonCblCapacity_service_1.JsonCBLCapacityCalculator();
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Create a sub-CBL from a partition of block references.
|
|
46
|
+
*
|
|
47
|
+
* @param blocks - Block references for this sub-CBL
|
|
48
|
+
* @param config - Configuration for the CBL
|
|
49
|
+
* @param subCblIndex - Index of this sub-CBL
|
|
50
|
+
* @param totalSubCbls - Total number of sub-CBLs
|
|
51
|
+
* @returns The created sub-CBL
|
|
52
|
+
*
|
|
53
|
+
* @see Requirements 2.1, 2.2, 2.3
|
|
54
|
+
*/
|
|
55
|
+
createSubCBL(blocks, config, subCblIndex, totalSubCbls) {
|
|
56
|
+
return {
|
|
57
|
+
version: 2,
|
|
58
|
+
type: 'sub-cbl',
|
|
59
|
+
fileName: config.fileName,
|
|
60
|
+
originalSize: config.originalSize,
|
|
61
|
+
blockSize: config.blockSize,
|
|
62
|
+
blockCount: blocks.length,
|
|
63
|
+
blocks,
|
|
64
|
+
subCblIndex,
|
|
65
|
+
totalSubCbls,
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Create a Super CBL that references sub-CBLs via magnet URLs.
|
|
70
|
+
*
|
|
71
|
+
* @param subCblMagnetUrls - Magnet URLs for all sub-CBLs
|
|
72
|
+
* @param config - Configuration for the CBL
|
|
73
|
+
* @param totalBlockCount - Total blocks across all sub-CBLs
|
|
74
|
+
* @param depth - Hierarchy depth
|
|
75
|
+
* @returns The created Super CBL
|
|
76
|
+
*
|
|
77
|
+
* @see Requirements 3.1, 3.2, 3.3
|
|
78
|
+
*/
|
|
79
|
+
createSuperCBL(subCblMagnetUrls, config, totalBlockCount, depth) {
|
|
80
|
+
return {
|
|
81
|
+
version: 2,
|
|
82
|
+
type: 'super-cbl',
|
|
83
|
+
fileName: config.fileName,
|
|
84
|
+
originalSize: config.originalSize,
|
|
85
|
+
blockSize: config.blockSize,
|
|
86
|
+
totalBlockCount,
|
|
87
|
+
depth,
|
|
88
|
+
subCblCount: subCblMagnetUrls.length,
|
|
89
|
+
subCblMagnetUrls,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Create a hierarchical CBL structure for the given block references.
|
|
94
|
+
* Automatically determines whether to use regular CBL or Super CBL.
|
|
95
|
+
*
|
|
96
|
+
* @param blocks - All block references for the file
|
|
97
|
+
* @param config - Configuration for the CBL
|
|
98
|
+
* @param storeSubCBL - Callback to store a sub-CBL and get its magnet URL
|
|
99
|
+
* @param currentDepth - Current recursion depth (internal use)
|
|
100
|
+
* @returns Result containing the root CBL and all sub-CBLs
|
|
101
|
+
*
|
|
102
|
+
* @see Requirements 2.4, 3.4, 4.1, 4.2
|
|
103
|
+
*/
|
|
104
|
+
async createHierarchicalCBL(blocks, config, storeSubCBL, currentDepth = 1) {
|
|
105
|
+
const maxDepth = config.maxDepth ?? 10;
|
|
106
|
+
// Check depth limit
|
|
107
|
+
if (currentDepth > maxDepth) {
|
|
108
|
+
throw superCbl_1.SuperCBLError.maxDepthExceeded(currentDepth, maxDepth);
|
|
109
|
+
}
|
|
110
|
+
// Check if Super CBL is needed
|
|
111
|
+
const requiresSuperCBL = this.capacityCalculator.requiresSuperCBL(blocks.length, config.blockSize, config.fileName, config.originalSize);
|
|
112
|
+
// If regular CBL fits, return it
|
|
113
|
+
if (!requiresSuperCBL) {
|
|
114
|
+
const regularCbl = {
|
|
115
|
+
version: 2,
|
|
116
|
+
type: 'regular',
|
|
117
|
+
fileName: config.fileName,
|
|
118
|
+
originalSize: config.originalSize,
|
|
119
|
+
blockSize: config.blockSize,
|
|
120
|
+
blockCount: blocks.length,
|
|
121
|
+
blocks,
|
|
122
|
+
};
|
|
123
|
+
return {
|
|
124
|
+
rootCbl: regularCbl,
|
|
125
|
+
subCbls: [],
|
|
126
|
+
depth: 1,
|
|
127
|
+
isSuperCbl: false,
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
// Calculate max blocks per sub-CBL
|
|
131
|
+
const maxBlocksPerSubCbl = this.capacityCalculator.calculateMaxBlockReferences(config.blockSize, config.fileName, config.originalSize, 'sub-cbl', { subCblIndex: 0, totalSubCbls: 1 });
|
|
132
|
+
// Partition blocks into sub-CBLs
|
|
133
|
+
const subCblCount = Math.ceil(blocks.length / maxBlocksPerSubCbl);
|
|
134
|
+
const subCbls = [];
|
|
135
|
+
const subCblMagnetUrls = [];
|
|
136
|
+
for (let i = 0; i < subCblCount; i++) {
|
|
137
|
+
const start = i * maxBlocksPerSubCbl;
|
|
138
|
+
const end = Math.min(start + maxBlocksPerSubCbl, blocks.length);
|
|
139
|
+
const subCblBlocks = blocks.slice(start, end);
|
|
140
|
+
const subCbl = this.createSubCBL(subCblBlocks, config, i, subCblCount);
|
|
141
|
+
subCbls.push(subCbl);
|
|
142
|
+
const magnetUrl = await storeSubCBL(subCbl);
|
|
143
|
+
subCblMagnetUrls.push(magnetUrl);
|
|
144
|
+
}
|
|
145
|
+
// Check if Super CBL itself fits
|
|
146
|
+
const superCbl = this.createSuperCBL(subCblMagnetUrls, config, blocks.length, currentDepth + 1);
|
|
147
|
+
const superCblSize = this.capacityCalculator.calculateCBLSize(superCbl);
|
|
148
|
+
// If Super CBL fits, return it
|
|
149
|
+
if (superCblSize <= config.blockSize) {
|
|
150
|
+
return {
|
|
151
|
+
rootCbl: superCbl,
|
|
152
|
+
subCbls,
|
|
153
|
+
depth: currentDepth + 1,
|
|
154
|
+
isSuperCbl: true,
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
// Super CBL doesn't fit - need recursive hierarchy
|
|
158
|
+
// Treat magnet URLs as "blocks" and create another level
|
|
159
|
+
const recursiveResult = await this.createHierarchicalCBL(subCblMagnetUrls, config, storeSubCBL, currentDepth + 1);
|
|
160
|
+
return {
|
|
161
|
+
rootCbl: recursiveResult.rootCbl,
|
|
162
|
+
subCbls: [...subCbls, ...recursiveResult.subCbls],
|
|
163
|
+
depth: recursiveResult.depth,
|
|
164
|
+
isSuperCbl: true,
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Reconstruct block references from a hierarchical CBL structure.
|
|
169
|
+
* Recursively retrieves sub-CBLs and reassembles block references.
|
|
170
|
+
*
|
|
171
|
+
* @param cblData - The root CBL data
|
|
172
|
+
* @param retrieveSubCBL - Callback to retrieve a sub-CBL by magnet URL
|
|
173
|
+
* @returns Array of all block references in correct order
|
|
174
|
+
*
|
|
175
|
+
* @see Requirements 5.2, 5.3, 5.4, 5.5
|
|
176
|
+
*/
|
|
177
|
+
async reconstructBlockReferences(cblData, retrieveSubCBL) {
|
|
178
|
+
// Handle v1 CBL (backward compatibility)
|
|
179
|
+
if (cblData.version === 1) {
|
|
180
|
+
return cblData.blocks;
|
|
181
|
+
}
|
|
182
|
+
// Handle regular v2 CBL
|
|
183
|
+
if (cblData.type === 'regular') {
|
|
184
|
+
return cblData.blocks;
|
|
185
|
+
}
|
|
186
|
+
// Handle sub-CBL (shouldn't be root, but handle it)
|
|
187
|
+
if (cblData.type === 'sub-cbl') {
|
|
188
|
+
return cblData.blocks;
|
|
189
|
+
}
|
|
190
|
+
// Handle Super CBL - recursively retrieve sub-CBLs
|
|
191
|
+
if (cblData.type === 'super-cbl') {
|
|
192
|
+
const allBlocks = [];
|
|
193
|
+
for (const magnetUrl of cblData.subCblMagnetUrls) {
|
|
194
|
+
try {
|
|
195
|
+
const subCblData = await retrieveSubCBL(magnetUrl);
|
|
196
|
+
const subBlocks = await this.reconstructBlockReferences(subCblData, retrieveSubCBL);
|
|
197
|
+
allBlocks.push(...subBlocks);
|
|
198
|
+
}
|
|
199
|
+
catch (error) {
|
|
200
|
+
throw superCbl_1.SuperCBLError.missingSubCBL(magnetUrl, error instanceof Error ? error : undefined);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
// Validate block count
|
|
204
|
+
if (allBlocks.length !== cblData.totalBlockCount) {
|
|
205
|
+
throw superCbl_1.SuperCBLError.blockCountMismatch(cblData.totalBlockCount, allBlocks.length);
|
|
206
|
+
}
|
|
207
|
+
return allBlocks;
|
|
208
|
+
}
|
|
209
|
+
throw superCbl_1.SuperCBLError.invalidCBLType(cblData.type || 'unknown');
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
exports.SuperCBLService = SuperCBLService;
|
|
213
|
+
//# sourceMappingURL=superCbl.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"superCbl.service.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/superCbl.service.ts"],"names":[],"mappings":"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"}
|
package/src/lib/sharedTypes.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { ChecksumString } from '@digitaldefiance/ecies-lib';
|
|
1
|
+
import { ChecksumString, MemberType } from '@digitaldefiance/ecies-lib';
|
|
2
2
|
import { Request } from 'express';
|
|
3
3
|
import { Document } from './documents/base/document';
|
|
4
|
-
import MemberType from './enumerations/memberType';
|
|
5
4
|
export type DefaultIdType = ChecksumString;
|
|
6
5
|
export type BlocksApiRequest = Request<{
|
|
7
6
|
blockId?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedTypes.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/sharedTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"sharedTypes.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/sharedTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC;AAE3C,MAAM,MAAM,gBAAgB,GAAG,OAAO,CACpC;IACE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EACD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvB;IACE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,EACD;IACE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CACF,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,OAAO,CACpC;IACE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,EACD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,EACD;IACE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CACF,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;AAE5D,MAAM,MAAM,UAAU,GAClB,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,iBAAiB,CAAC;AAEtB,MAAM,MAAM,eAAe,GACvB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,eAAe,EAAE,GACjB;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;CAAE,CAAC;AAEvC,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI;IACjC,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,eAAe,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;KAC/B,CAAC,IAAI,MAAM,CAAC,GACT,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACvB,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GACzB,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;CACnE,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,CACb,IAAI,EAAE,OAAO,QAAQ,EACrB,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;CACnD,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedTypes.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/sharedTypes.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"sharedTypes.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/sharedTypes.ts"],"names":[],"mappings":";;;AAmFa,QAAA,mBAAmB,GAAG,KAAK,CAAC"}
|
|
@@ -14,6 +14,13 @@ export interface FileReceipt {
|
|
|
14
14
|
blocks: BlockInfo[];
|
|
15
15
|
cblData: number[];
|
|
16
16
|
magnetUrl: string;
|
|
17
|
+
type?: 'file' | 'message';
|
|
18
|
+
messageMetadata?: {
|
|
19
|
+
senderId: string;
|
|
20
|
+
recipients: string[];
|
|
21
|
+
timestamp: Date;
|
|
22
|
+
content?: string;
|
|
23
|
+
};
|
|
17
24
|
}
|
|
18
25
|
export declare class BrightChain {
|
|
19
26
|
private store;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simpleBrightChain.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/simpleBrightChain.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAEnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAkDrD,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"simpleBrightChain.d.ts","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/simpleBrightChain.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAEnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAkDrD,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,eAAe,CAAC,EAAE;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,EAAE,CAAC;QACrB,SAAS,EAAE,IAAI,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,SAAS,CAAY;gBAEjB,SAAS,GAAE,SAA2B;IAK5C,SAAS,CACb,QAAQ,EAAE,UAAU,EACpB,QAAQ,SAAa,GACpB,OAAO,CAAC,WAAW,CAAC;IA0CjB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAmB7D,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,eAAe;CAQxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simpleBrightChain.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/simpleBrightChain.ts"],"names":[],"mappings":";;;AAAA,0DAGoC;AACpC,2CAAuC;AACvC,wDAAqD;AAErD,mDAAmD;AACnD,KAAK,UAAU,iBAAiB,CAC9B,IAAgB;IAEhB,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAC3C,SAAS,EACT,IAAI,CAAC,MAAM,YAAY,WAAW;QAChC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACvE,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CACvB,CAAC;IACF,OAAO,IAAI,UAAU,CAAC,UAAU,CAAuB,CAAC;AAC1D,CAAC;AAUD,qCAAqC;AACrC,MAAM,kBAAkB;IAAxB;QACU,WAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IAuBlD,CAAC;IArBC,KAAK,CAAC,KAAK,CAAC,IAAgB;QAC1B,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,EAAE,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,KAAK,GAAgB;YACzB,EAAE;YACF,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,gBAAgB;YACpC,QAAQ;YACR,IAAI,EAAE,IAAI,CAAC,MAAM;SAClB,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAA4B;QACzC,MAAM,EAAE,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"simpleBrightChain.js","sourceRoot":"","sources":["../../../../brightchain-lib/src/lib/simpleBrightChain.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { EnergyAccount } from '../energyAccount';
|
|
2
|
+
import { Checksum } from '../types/checksum';
|
|
3
|
+
/**
|
|
4
|
+
* In-memory store for energy accounts
|
|
5
|
+
* Follows existing SimpleStore/ArrayStore patterns
|
|
6
|
+
*/
|
|
7
|
+
export declare class EnergyAccountStore {
|
|
8
|
+
private accounts;
|
|
9
|
+
constructor();
|
|
10
|
+
/**
|
|
11
|
+
* Get account by member ID
|
|
12
|
+
*/
|
|
13
|
+
get(memberId: Checksum): EnergyAccount | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* Get or create account with trial credits
|
|
16
|
+
*/
|
|
17
|
+
getOrCreate(memberId: Checksum): Promise<EnergyAccount>;
|
|
18
|
+
/**
|
|
19
|
+
* Set account
|
|
20
|
+
*/
|
|
21
|
+
set(memberId: Checksum, account: EnergyAccount): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* Check if account exists
|
|
24
|
+
*/
|
|
25
|
+
has(memberId: Checksum): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Delete account
|
|
28
|
+
*/
|
|
29
|
+
delete(memberId: Checksum): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Get all accounts
|
|
32
|
+
*/
|
|
33
|
+
getAll(): EnergyAccount[];
|
|
34
|
+
/**
|
|
35
|
+
* Get account count
|
|
36
|
+
*/
|
|
37
|
+
get size(): number;
|
|
38
|
+
/**
|
|
39
|
+
* Clear all accounts
|
|
40
|
+
*/
|
|
41
|
+
clear(): void;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=energyAccountStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energyAccountStore.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/stores/energyAccountStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAmC;;IAMnD;;OAEG;IACH,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,aAAa,GAAG,SAAS;IAKlD;;OAEG;IACG,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC;IAS7D;;OAEG;IACG,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpE;;OAEG;IACH,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAKhC;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAKnC;;OAEG;IACH,MAAM,IAAI,aAAa,EAAE;IAIzB;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EnergyAccountStore = void 0;
|
|
4
|
+
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
5
|
+
const energyAccount_1 = require("../energyAccount");
|
|
6
|
+
/**
|
|
7
|
+
* In-memory store for energy accounts
|
|
8
|
+
* Follows existing SimpleStore/ArrayStore patterns
|
|
9
|
+
*/
|
|
10
|
+
class EnergyAccountStore {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.accounts = new Map();
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get account by member ID
|
|
16
|
+
*/
|
|
17
|
+
get(memberId) {
|
|
18
|
+
const key = (0, ecies_lib_1.uint8ArrayToHex)(memberId.toUint8Array());
|
|
19
|
+
return this.accounts.get(key);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get or create account with trial credits
|
|
23
|
+
*/
|
|
24
|
+
async getOrCreate(memberId) {
|
|
25
|
+
let account = this.get(memberId);
|
|
26
|
+
if (!account) {
|
|
27
|
+
account = energyAccount_1.EnergyAccount.createWithTrialCredits(memberId);
|
|
28
|
+
await this.set(memberId, account);
|
|
29
|
+
}
|
|
30
|
+
return account;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Set account
|
|
34
|
+
*/
|
|
35
|
+
async set(memberId, account) {
|
|
36
|
+
const key = (0, ecies_lib_1.uint8ArrayToHex)(memberId.toUint8Array());
|
|
37
|
+
this.accounts.set(key, account);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Check if account exists
|
|
41
|
+
*/
|
|
42
|
+
has(memberId) {
|
|
43
|
+
const key = (0, ecies_lib_1.uint8ArrayToHex)(memberId.toUint8Array());
|
|
44
|
+
return this.accounts.has(key);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Delete account
|
|
48
|
+
*/
|
|
49
|
+
delete(memberId) {
|
|
50
|
+
const key = (0, ecies_lib_1.uint8ArrayToHex)(memberId.toUint8Array());
|
|
51
|
+
return this.accounts.delete(key);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Get all accounts
|
|
55
|
+
*/
|
|
56
|
+
getAll() {
|
|
57
|
+
return Array.from(this.accounts.values());
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Get account count
|
|
61
|
+
*/
|
|
62
|
+
get size() {
|
|
63
|
+
return this.accounts.size;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Clear all accounts
|
|
67
|
+
*/
|
|
68
|
+
clear() {
|
|
69
|
+
this.accounts.clear();
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.EnergyAccountStore = EnergyAccountStore;
|
|
73
|
+
//# sourceMappingURL=energyAccountStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energyAccountStore.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/stores/energyAccountStore.ts"],"names":[],"mappings":";;;AAAA,0DAA2E;AAC3E,oDAAiD;AAGjD;;;GAGG;AACH,MAAa,kBAAkB;IAG7B;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,QAAkB;QACpB,MAAM,GAAG,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,YAAY,EAAE,CAAiB,CAAC;QACrE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,QAAkB;QAClC,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,6BAAa,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YACzD,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,QAAkB,EAAE,OAAsB;QAClD,MAAM,GAAG,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,YAAY,EAAE,CAAiB,CAAC;QACrE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,QAAkB;QACpB,MAAM,GAAG,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,YAAY,EAAE,CAAiB,CAAC;QACrE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAkB;QACvB,MAAM,GAAG,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,YAAY,EAAE,CAAiB,CAAC;QACrE,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;CACF;AAvED,gDAuEC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { EnergyTransaction } from '../interfaces/energyTransaction';
|
|
2
|
+
import { Checksum } from '../types/checksum';
|
|
3
|
+
/**
|
|
4
|
+
* In-memory ledger for energy transactions
|
|
5
|
+
* Provides audit trail of all energy flows
|
|
6
|
+
*/
|
|
7
|
+
export declare class EnergyLedger {
|
|
8
|
+
private transactions;
|
|
9
|
+
private byMember;
|
|
10
|
+
constructor();
|
|
11
|
+
/**
|
|
12
|
+
* Add transaction to ledger
|
|
13
|
+
*/
|
|
14
|
+
add(transaction: EnergyTransaction): void;
|
|
15
|
+
/**
|
|
16
|
+
* Get transaction by ID
|
|
17
|
+
*/
|
|
18
|
+
get(txId: Checksum): EnergyTransaction | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* Get all transactions for a member
|
|
21
|
+
*/
|
|
22
|
+
getByMember(memberId: Checksum): EnergyTransaction[];
|
|
23
|
+
/**
|
|
24
|
+
* Get transactions in time range
|
|
25
|
+
*/
|
|
26
|
+
getByTimeRange(start: Date, end: Date): EnergyTransaction[];
|
|
27
|
+
/**
|
|
28
|
+
* Get all transactions
|
|
29
|
+
*/
|
|
30
|
+
getAll(): EnergyTransaction[];
|
|
31
|
+
/**
|
|
32
|
+
* Get transaction count
|
|
33
|
+
*/
|
|
34
|
+
get size(): number;
|
|
35
|
+
/**
|
|
36
|
+
* Clear all transactions
|
|
37
|
+
*/
|
|
38
|
+
clear(): void;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=energyLedger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energyLedger.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/stores/energyLedger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,QAAQ,CAAoC;;IAOpD;;OAEG;IACH,GAAG,CAAC,WAAW,EAAE,iBAAiB,GAAG,IAAI;IAuBzC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,QAAQ,GAAG,iBAAiB,GAAG,SAAS;IAKlD;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,iBAAiB,EAAE;IAQpD;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,iBAAiB,EAAE;IAM3D;;OAEG;IACH,MAAM,IAAI,iBAAiB,EAAE;IAI7B;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,KAAK,IAAI,IAAI;CAId"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EnergyLedger = void 0;
|
|
4
|
+
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
5
|
+
/**
|
|
6
|
+
* In-memory ledger for energy transactions
|
|
7
|
+
* Provides audit trail of all energy flows
|
|
8
|
+
*/
|
|
9
|
+
class EnergyLedger {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.transactions = new Map();
|
|
12
|
+
this.byMember = new Map();
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Add transaction to ledger
|
|
16
|
+
*/
|
|
17
|
+
add(transaction) {
|
|
18
|
+
const txId = (0, ecies_lib_1.uint8ArrayToHex)(transaction.id.toUint8Array());
|
|
19
|
+
this.transactions.set(txId, transaction);
|
|
20
|
+
// Index by source
|
|
21
|
+
const sourceId = (0, ecies_lib_1.uint8ArrayToHex)(transaction.source.toUint8Array());
|
|
22
|
+
if (!this.byMember.has(sourceId)) {
|
|
23
|
+
this.byMember.set(sourceId, []);
|
|
24
|
+
}
|
|
25
|
+
this.byMember.get(sourceId).push(txId);
|
|
26
|
+
// Index by destination
|
|
27
|
+
const destId = (0, ecies_lib_1.uint8ArrayToHex)(transaction.destination.toUint8Array());
|
|
28
|
+
if (!this.byMember.has(destId)) {
|
|
29
|
+
this.byMember.set(destId, []);
|
|
30
|
+
}
|
|
31
|
+
this.byMember.get(destId).push(txId);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Get transaction by ID
|
|
35
|
+
*/
|
|
36
|
+
get(txId) {
|
|
37
|
+
const key = (0, ecies_lib_1.uint8ArrayToHex)(txId.toUint8Array());
|
|
38
|
+
return this.transactions.get(key);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Get all transactions for a member
|
|
42
|
+
*/
|
|
43
|
+
getByMember(memberId) {
|
|
44
|
+
const key = (0, ecies_lib_1.uint8ArrayToHex)(memberId.toUint8Array());
|
|
45
|
+
const txIds = this.byMember.get(key) || [];
|
|
46
|
+
return txIds
|
|
47
|
+
.map((id) => this.transactions.get(id))
|
|
48
|
+
.filter((tx) => tx !== undefined);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get transactions in time range
|
|
52
|
+
*/
|
|
53
|
+
getByTimeRange(start, end) {
|
|
54
|
+
return Array.from(this.transactions.values()).filter((tx) => tx.timestamp >= start && tx.timestamp <= end);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get all transactions
|
|
58
|
+
*/
|
|
59
|
+
getAll() {
|
|
60
|
+
return Array.from(this.transactions.values());
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Get transaction count
|
|
64
|
+
*/
|
|
65
|
+
get size() {
|
|
66
|
+
return this.transactions.size;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Clear all transactions
|
|
70
|
+
*/
|
|
71
|
+
clear() {
|
|
72
|
+
this.transactions.clear();
|
|
73
|
+
this.byMember.clear();
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.EnergyLedger = EnergyLedger;
|
|
77
|
+
//# sourceMappingURL=energyLedger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"energyLedger.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/stores/energyLedger.ts"],"names":[],"mappings":";;;AAAA,0DAA2E;AAI3E;;;GAGG;AACH,MAAa,YAAY;IAIvB;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,WAA8B;QAChC,MAAM,IAAI,GAAG,IAAA,2BAAe,EAAC,WAAW,CAAC,EAAE,CAAC,YAAY,EAAE,CAAiB,CAAC;QAC5E,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAEzC,kBAAkB;QAClB,MAAM,QAAQ,GAAG,IAAA,2BAAe,EAC9B,WAAW,CAAC,MAAM,CAAC,YAAY,EAAE,CAClB,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAExC,uBAAuB;QACvB,MAAM,MAAM,GAAG,IAAA,2BAAe,EAC5B,WAAW,CAAC,WAAW,CAAC,YAAY,EAAE,CACvB,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAc;QAChB,MAAM,GAAG,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,YAAY,EAAE,CAAiB,CAAC;QACjE,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,QAAkB;QAC5B,MAAM,GAAG,GAAG,IAAA,2BAAe,EAAC,QAAQ,CAAC,YAAY,EAAE,CAAiB,CAAC;QACrE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3C,OAAO,KAAK;aACT,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aACtC,MAAM,CAAC,CAAC,EAAE,EAA2B,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,KAAW,EAAE,GAAS;QACnC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAClD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,IAAI,KAAK,IAAI,EAAE,CAAC,SAAS,IAAI,GAAG,CACrD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;CACF;AApFD,oCAoFC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoryBlockStore.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/stores/memoryBlockStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAqB,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAUtD,OAAO,EAAE,WAAW,EAAc,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EACL,iBAAiB,EACjB,cAAc,EAEd,cAAc,EACd,cAAc,EACf,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,oCAAoC,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAC1D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IAEvC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAEhD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2B;IAEzD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmC;IAEhE;;;;;OAKG;gBAED,SAAS,EAAE,SAAS,EACpB,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,EAC/B,aAAa,CAAC,EAAE,wBAAwB;IAO1C,IAAW,SAAS,IAAI,SAAS,CAEhC;IAED;;;OAGG;IACI,aAAa,IAAI,WAAW,GAAG,IAAI;IAI1C;;;OAGG;IACI,gBAAgB,IAAI,wBAAwB;IAInD;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAIhB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACU,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK1D;;OAEG;IACU,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC;IAiB1D;;;;OAIG;IACU,OAAO,CAClB,KAAK,EAAE,YAAY,EACnB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"memoryBlockStore.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/stores/memoryBlockStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAqB,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAUtD,OAAO,EAAE,WAAW,EAAc,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EACL,iBAAiB,EACjB,cAAc,EAEd,cAAc,EACd,cAAc,EACf,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,oCAAoC,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmC;IAC1D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IAEvC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAEhD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2B;IAEzD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAmC;IAEhE;;;;;OAKG;gBAED,SAAS,EAAE,SAAS,EACpB,UAAU,CAAC,EAAE,WAAW,GAAG,IAAI,EAC/B,aAAa,CAAC,EAAE,wBAAwB;IAO1C,IAAW,SAAS,IAAI,SAAS,CAEhC;IAED;;;OAGG;IACI,aAAa,IAAI,WAAW,GAAG,IAAI;IAI1C;;;OAGG;IACI,gBAAgB,IAAI,wBAAwB;IAInD;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAIhB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACU,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK1D;;OAEG;IACU,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC;IAiB1D;;;;OAIG;IACU,OAAO,CAClB,KAAK,EAAE,YAAY,EACnB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,IAAI,CAAC;IAuChB;;OAEG;IACU,UAAU,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBrD;;OAEG;IACU,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAehE;;OAEG;IACU,GAAG,CACd,GAAG,EAAE,QAAQ,GAAG,MAAM,EACtB,IAAI,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,IAAI,CAAC;IAKhB;;OAEG;IACU,MAAM,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1D;;OAEG;WACW,QAAQ,IAAI,MAAM;IAQhC;;OAEG;IACI,KAAK,IAAI,IAAI;IAMpB;;OAEG;IACI,IAAI,IAAI,MAAM;IAIrB;;OAEG;IACI,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IAqBvE;;;;OAIG;IACU,WAAW,CACtB,GAAG,EAAE,QAAQ,GAAG,MAAM,GACrB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAKjC;;;;OAIG;IACU,cAAc,CACzB,GAAG,EAAE,QAAQ,GAAG,MAAM,EACtB,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC;IAYhB;;;;;;OAMG;IACU,oBAAoB,CAC/B,GAAG,EAAE,QAAQ,GAAG,MAAM,EACtB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,QAAQ,EAAE,CAAC;IAgDtB;;;;OAIG;IACU,eAAe,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAazE;;;;OAIG;IACU,YAAY,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA+E1E;;;;OAIG;IACU,oBAAoB,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAsC3E;;;OAGG;IACU,2BAA2B,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAU/D;;;OAGG;IACU,wBAAwB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAW5D;;;;OAIG;IACU,iBAAiB,CAC5B,GAAG,EAAE,QAAQ,GAAG,MAAM,EACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IA8BhB;;;;OAIG;IACU,iBAAiB,CAC5B,GAAG,EAAE,QAAQ,GAAG,MAAM,EACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAmChB;;;;;;;;;OASG;IACU,aAAa,CACxB,GAAG,EAAE,QAAQ,GAAG,MAAM,EACtB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,cAAc,CAAC;IA6D1B;;;;;;;;;;;;;;;OAeG;IACU,qBAAqB,CAChC,OAAO,EAAE,UAAU,EACnB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IA+F5B;;;;;;;;;;OAUG;YACW,0BAA0B;IA4BxC;;;;;;;;;;;;;;OAcG;IACU,WAAW,CACtB,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAC3B,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,EAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,GACzB,OAAO,CAAC,UAAU,CAAC;IAsDtB;;;;;;;;OAQG;IACI,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,mBAAmB;IA+DhE;;;;;;;;;;OAUG;IACI,oBAAoB,CACzB,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAC3B,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAC3B,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,EAAE,EAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,EAC1B,WAAW,CAAC,EAAE,OAAO,GACpB,MAAM;CAyBV"}
|
|
@@ -107,12 +107,9 @@ class MemoryBlockStore {
|
|
|
107
107
|
* @param options - Optional storage options including durability level and expiration
|
|
108
108
|
*/
|
|
109
109
|
async setData(block, options) {
|
|
110
|
-
if (block.blockSize !== this._blockSize) {
|
|
111
|
-
throw new storeError_1.StoreError(storeErrorType_1.StoreErrorType.BlockSizeMismatch);
|
|
112
|
-
}
|
|
113
110
|
const keyHex = block.idChecksum.toHex();
|
|
114
111
|
if (this.blocks.has(keyHex)) {
|
|
115
|
-
|
|
112
|
+
return; // Idempotent - block already exists
|
|
116
113
|
}
|
|
117
114
|
try {
|
|
118
115
|
block.validate();
|