@brightchain/brightchain-api-lib 0.15.0 → 0.16.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 (60) hide show
  1. package/package.json +4 -4
  2. package/src/browser.d.ts +13 -0
  3. package/src/browser.d.ts.map +1 -0
  4. package/src/browser.js +16 -0
  5. package/src/browser.js.map +1 -0
  6. package/src/index.d.ts +1 -1
  7. package/src/index.d.ts.map +1 -1
  8. package/src/index.js +1 -1
  9. package/src/index.js.map +1 -1
  10. package/src/lib/application-base.d.ts +8 -37
  11. package/src/lib/application-base.d.ts.map +1 -1
  12. package/src/lib/application-base.js +8 -80
  13. package/src/lib/application-base.js.map +1 -1
  14. package/src/lib/application.d.ts +36 -7
  15. package/src/lib/application.d.ts.map +1 -1
  16. package/src/lib/application.js +124 -135
  17. package/src/lib/application.js.map +1 -1
  18. package/src/lib/constants.js +2 -2
  19. package/src/lib/constants.js.map +1 -1
  20. package/src/lib/controllers/api/blocks.d.ts.map +1 -1
  21. package/src/lib/controllers/api/blocks.js +290 -290
  22. package/src/lib/controllers/api/blocks.js.map +1 -1
  23. package/src/lib/controllers/api/brightpass.d.ts.map +1 -1
  24. package/src/lib/controllers/api/brightpass.js +274 -274
  25. package/src/lib/controllers/api/brightpass.js.map +1 -1
  26. package/src/lib/controllers/api/energy.d.ts.map +1 -1
  27. package/src/lib/controllers/api/energy.js +93 -93
  28. package/src/lib/controllers/api/energy.js.map +1 -1
  29. package/src/lib/controllers/api/i18n.d.ts.map +1 -1
  30. package/src/lib/controllers/api/i18n.js +8 -8
  31. package/src/lib/controllers/api/i18n.js.map +1 -1
  32. package/src/lib/controllers/api/quorum.d.ts.map +1 -1
  33. package/src/lib/controllers/api/quorum.js +483 -483
  34. package/src/lib/controllers/api/quorum.js.map +1 -1
  35. package/src/lib/controllers/api/sessions.d.ts.map +1 -1
  36. package/src/lib/controllers/api/sessions.js +8 -8
  37. package/src/lib/controllers/api/sessions.js.map +1 -1
  38. package/src/lib/controllers/api/user.d.ts.map +1 -1
  39. package/src/lib/controllers/api/user.js +180 -180
  40. package/src/lib/controllers/api/user.js.map +1 -1
  41. package/src/lib/interfaces/application.d.ts +7 -1
  42. package/src/lib/interfaces/application.d.ts.map +1 -1
  43. package/src/lib/interfaces/brightchain-init-result.d.ts +17 -0
  44. package/src/lib/interfaces/brightchain-init-result.d.ts.map +1 -0
  45. package/src/lib/interfaces/brightchain-init-result.js +9 -0
  46. package/src/lib/interfaces/brightchain-init-result.js.map +1 -0
  47. package/src/lib/interfaces/index.d.ts +1 -0
  48. package/src/lib/interfaces/index.d.ts.map +1 -1
  49. package/src/lib/routers/app.d.ts +22 -14
  50. package/src/lib/routers/app.d.ts.map +1 -1
  51. package/src/lib/routers/app.js +28 -116
  52. package/src/lib/routers/app.js.map +1 -1
  53. package/src/lib/services/brightpass.property.helpers.d.ts +23 -0
  54. package/src/lib/services/brightpass.property.helpers.d.ts.map +1 -0
  55. package/src/lib/services/brightpass.property.helpers.js +113 -0
  56. package/src/lib/services/brightpass.property.helpers.js.map +1 -0
  57. package/src/lib/upstream-stubs.d.ts +36 -0
  58. package/src/lib/upstream-stubs.d.ts.map +1 -0
  59. package/src/lib/upstream-stubs.js +43 -0
  60. package/src/lib/upstream-stubs.js.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/application.ts"],"names":[],"mappings":"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"}
@@ -45,9 +45,9 @@ const expressConsts = (0, node_express_suite_1.createExpressConstants)('brightch
45
45
  * @see {@link https://github.com/Digital-Defiance/node-express-suite} for base constants
46
46
  */
47
47
  exports.Constants = {
48
- ...expressConsts,
49
48
  ...brightchain_lib_1.CONSTANTS,
50
- ...{ PBKDF2_PROFILES: expressConsts.PBKDF2_PROFILES },
49
+ ...expressConsts,
50
+ PBKDF2_PROFILES: expressConsts.PBKDF2_PROFILES,
51
51
  WRAPPED_KEY: node_ecies_lib_1.WRAPPED_KEY,
52
52
  };
53
53
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH,kEAA0E;AAC1E,oEAA8D;AAC9D,4EAA6E;AAG7E,MAAM,aAAa,GAAG,IAAA,2CAAsB,EAC1C,iBAAiB,EACjB,iBAAiB,EACjB;IACE,IAAI,EAAE,aAAa;CACpB,CACF,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACU,QAAA,SAAS,GAAkB;IACtC,GAAG,aAAa;IAChB,GAAG,2BAAa;IAChB,GAAG,EAAE,eAAe,EAAE,aAAa,CAAC,eAAe,EAAE;IACrD,WAAW,EAAX,4BAAW;CACZ,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH,kEAA0E;AAC1E,oEAA8D;AAC9D,4EAA6E;AAG7E,MAAM,aAAa,GAAG,IAAA,2CAAsB,EAC1C,iBAAiB,EACjB,iBAAiB,EACjB;IACE,IAAI,EAAE,aAAa;CACpB,CACF,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACU,QAAA,SAAS,GAAkB;IACtC,GAAG,2BAAa;IAChB,GAAG,aAAa;IAChB,eAAe,EAAE,aAAa,CAAC,eAAe;IAC9C,WAAW,EAAX,4BAAW;CACZ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/controllers/api/blocks.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EAEjB,aAAa,EAEd,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAQvE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAQ1D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAGzC;;;GAGG;AACH,oBAAY,cAAc;IACxB,eAAe,oBAAoB;IACnC,uBAAuB,4BAA4B;IACnD,mBAAmB,wBAAwB;IAC3C,0BAA0B,+BAA+B;IACzD,oBAAoB,yBAAyB;IAC7C,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;CAClC;AAED,KAAK,gBAAgB,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,yBAAyB,GACzB,oBAAoB,GACpB,sBAAsB,GACtB,gBAAgB,CAAC;AAErB,UAAU,cAAe,SAAQ,aAAa;IAC5C,UAAU,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACtE,QAAQ,EAAE,iBAAiB,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,CAAC;IAClE,gBAAgB,EAAE,iBAAiB,CACjC,yBAAyB,GAAG,gBAAgB,CAC7C,CAAC;IACF,WAAW,EAAE,iBAAiB,CAAC,oBAAoB,GAAG,gBAAgB,CAAC,CAAC;IACxE,aAAa,EAAE,iBAAiB,CAAC,sBAAsB,GAAG,gBAAgB,CAAC,CAAC;CAC7E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,qBAAa,gBAAgB,CAC3B,GAAG,SAAS,UAAU,GAAG,oBAAoB,CAC7C,SAAQ,cAAc,CACtB,GAAG,EACH,gBAAgB,EAChB,cAAc,EACd,gBAAgB,CACjB;IACC,OAAO,CAAC,aAAa,CAAgB;gBAEzB,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC;IAOrD,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAyGtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,OAAO,CAAC,gBAAgB,CA+DtB;IAEF;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CAAC,cAAc,CA4BpB;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,OAAO,CAAC,sBAAsB,CA6B5B;IAEF;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,OAAO,CAAC,iBAAiB,CAyBvB;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,OAAO,CAAC,mBAAmB,CAoCzB;CACH"}
1
+ {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-api-lib/src/lib/controllers/api/blocks.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EAGjB,aAAa,EAEd,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAQvE,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAQ1D,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAGzC;;;GAGG;AACH,oBAAY,cAAc;IACxB,eAAe,oBAAoB;IACnC,uBAAuB,4BAA4B;IACnD,mBAAmB,wBAAwB;IAC3C,0BAA0B,+BAA+B;IACzD,oBAAoB,yBAAyB;IAC7C,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;CAClC;AAED,KAAK,gBAAgB,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,yBAAyB,GACzB,oBAAoB,GACpB,sBAAsB,GACtB,gBAAgB,CAAC;AAErB,UAAU,cAAe,SAAQ,aAAa;IAC5C,UAAU,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACtE,QAAQ,EAAE,iBAAiB,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,CAAC;IAClE,gBAAgB,EAAE,iBAAiB,CACjC,yBAAyB,GAAG,gBAAgB,CAC7C,CAAC;IACF,WAAW,EAAE,iBAAiB,CAAC,oBAAoB,GAAG,gBAAgB,CAAC,CAAC;IACxE,aAAa,EAAE,iBAAiB,CAAC,sBAAsB,GAAG,gBAAgB,CAAC,CAAC;CAC7E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,qBAAa,gBAAgB,CAC3B,GAAG,SAAS,UAAU,GAAG,oBAAoB,CAC7C,SAAQ,cAAc,CACtB,GAAG,EACH,gBAAgB,EAChB,cAAc,EACd,gBAAgB,CACjB;IACC,OAAO,CAAC,aAAa,CAAgB;gBAEzB,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC;IAOrD,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAyGtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;YACW,gBAAgB;IAiE9B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;YACW,cAAc;IA8B5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;YACW,sBAAsB;IA+BpC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;YACW,iBAAiB;IA2B/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;YACW,mBAAmB;CAqClC"}
@@ -81,296 +81,6 @@ var BlockErrorCode;
81
81
  class BlocksController extends base_1.BaseController {
82
82
  constructor(application) {
83
83
  super(application);
84
- /**
85
- * POST /api/blocks
86
- * Store a new block with optional durability settings.
87
- *
88
- * The block data is stored with the configured durability level, which determines
89
- * how many parity blocks are generated for FEC recovery:
90
- * - 'ephemeral': No parity blocks
91
- * - 'standard': 1 parity block
92
- * - 'high_durability': 2+ parity blocks
93
- *
94
- * @param req - Request containing base64-encoded block data and options
95
- * @returns Block ID and metadata on success, or error response
96
- *
97
- * @example
98
- * ```json
99
- * // Request
100
- * POST /api/blocks
101
- * {
102
- * "data": "SGVsbG8gV29ybGQ=",
103
- * "options": {
104
- * "durabilityLevel": "standard",
105
- * "expiresAt": "2025-12-31T23:59:59Z"
106
- * }
107
- * }
108
- *
109
- * // Response
110
- * {
111
- * "blockId": "abc123...",
112
- * "success": true,
113
- * "metadata": {
114
- * "blockId": "abc123...",
115
- * "durabilityLevel": "standard",
116
- * "parityBlockIds": ["abc123.p0"],
117
- * ...
118
- * }
119
- * }
120
- * ```
121
- */
122
- this.handleStoreBlock = async (req) => {
123
- try {
124
- const { data, canRead = true, canPersist = true, options, } = req.body;
125
- // Validate required fields
126
- if (!data) {
127
- return (0, errorResponse_1.validationError)('Missing required field: data');
128
- }
129
- // Get authenticated member from session
130
- const sessionsController = this.application.getController('sessions');
131
- let member;
132
- try {
133
- member = sessionsController.getMemberFromSession(req.headers.authorization);
134
- }
135
- catch {
136
- return (0, errorResponse_1.unauthorizedError)();
137
- }
138
- // Parse options if provided
139
- const blockStoreOptions = options
140
- ? {
141
- expiresAt: options.expiresAt
142
- ? new Date(options.expiresAt)
143
- : undefined,
144
- durabilityLevel: options.durabilityLevel,
145
- }
146
- : undefined;
147
- const result = await this.blocksService.storeBlock(Buffer.from(data, 'base64'), member, canRead, canPersist, blockStoreOptions);
148
- return {
149
- statusCode: 200,
150
- response: {
151
- blockId: result.blockId,
152
- success: true,
153
- metadata: result.metadata,
154
- },
155
- };
156
- }
157
- catch (_error) {
158
- if (_error instanceof brightchain_lib_1.StoreError) {
159
- return (0, errorResponse_1.mapStoreError)(_error);
160
- }
161
- return (0, errorResponse_1.handleError)(_error);
162
- }
163
- };
164
- /**
165
- * GET /api/blocks/:blockId
166
- * Retrieve a block by its ID.
167
- *
168
- * Returns the block data and metadata. The access count and last access
169
- * timestamp in the metadata are updated on each retrieval.
170
- *
171
- * @param req - Request containing the block ID parameter
172
- * @returns Block data (base64) and metadata on success, or 404 if not found
173
- *
174
- * @example
175
- * ```json
176
- * // Request
177
- * GET /api/blocks/abc123...
178
- *
179
- * // Response
180
- * {
181
- * "blockId": "abc123...",
182
- * "data": "SGVsbG8gV29ybGQ=",
183
- * "canRead": true,
184
- * "canPersist": true,
185
- * "metadata": { ... }
186
- * }
187
- * ```
188
- */
189
- this.handleGetBlock = async (req) => {
190
- try {
191
- const { blockId } = req.params;
192
- if (!blockId) {
193
- return (0, errorResponse_1.validationError)('Missing required parameter: blockId');
194
- }
195
- const block = await this.blocksService.getBlock(blockId);
196
- return {
197
- statusCode: 200,
198
- response: {
199
- blockId,
200
- data: block.data,
201
- canRead: true,
202
- canPersist: true,
203
- metadata: block.metadata,
204
- },
205
- };
206
- }
207
- catch (_error) {
208
- if (_error instanceof brightchain_lib_1.StoreError) {
209
- return (0, errorResponse_1.mapStoreError)(_error);
210
- }
211
- return (0, errorResponse_1.handleError)(_error);
212
- }
213
- };
214
- /**
215
- * GET /api/blocks/:blockId/metadata
216
- * Get metadata for a block without retrieving the data.
217
- *
218
- * Useful for checking block status, durability level, replication status,
219
- * and access patterns without the overhead of retrieving the full block data.
220
- *
221
- * @param req - Request containing the block ID parameter
222
- * @returns Block metadata on success, or 404 if not found
223
- *
224
- * @example
225
- * ```json
226
- * // Request
227
- * GET /api/blocks/abc123.../metadata
228
- *
229
- * // Response
230
- * {
231
- * "blockId": "abc123...",
232
- * "metadata": {
233
- * "blockId": "abc123...",
234
- * "createdAt": "2025-01-15T10:00:00Z",
235
- * "durabilityLevel": "standard",
236
- * "parityBlockIds": ["abc123.p0"],
237
- * "accessCount": 5,
238
- * "lastAccessedAt": "2025-01-16T14:30:00Z",
239
- * "replicationStatus": "replicated",
240
- * "size": 4096,
241
- * "checksum": "abc123..."
242
- * }
243
- * }
244
- * ```
245
- */
246
- this.handleGetBlockMetadata = async (req) => {
247
- try {
248
- const { blockId } = req.params;
249
- if (!blockId) {
250
- return (0, errorResponse_1.validationError)('Missing required parameter: blockId');
251
- }
252
- const metadata = await this.blocksService.getBlockMetadata(blockId);
253
- if (!metadata) {
254
- return (0, errorResponse_1.notFoundError)('Block', blockId);
255
- }
256
- return {
257
- statusCode: 200,
258
- response: {
259
- blockId,
260
- metadata,
261
- },
262
- };
263
- }
264
- catch (_error) {
265
- if (_error instanceof brightchain_lib_1.StoreError) {
266
- return (0, errorResponse_1.mapStoreError)(_error);
267
- }
268
- return (0, errorResponse_1.handleError)(_error);
269
- }
270
- };
271
- /**
272
- * DELETE /api/blocks/:blockId
273
- * Delete a block and its associated parity blocks.
274
- *
275
- * This operation removes:
276
- * - The block data file
277
- * - All associated parity block files
278
- * - The block metadata
279
- *
280
- * @param req - Request containing the block ID parameter
281
- * @returns Success confirmation on success, or 404 if not found
282
- *
283
- * @example
284
- * ```json
285
- * // Request
286
- * DELETE /api/blocks/abc123...
287
- *
288
- * // Response
289
- * {
290
- * "blockId": "abc123...",
291
- * "success": true
292
- * }
293
- * ```
294
- */
295
- this.handleDeleteBlock = async (req) => {
296
- try {
297
- const { blockId } = req.params;
298
- if (!blockId) {
299
- return (0, errorResponse_1.validationError)('Missing required parameter: blockId');
300
- }
301
- await this.blocksService.deleteBlock(blockId);
302
- return {
303
- statusCode: 200,
304
- response: {
305
- blockId,
306
- success: true,
307
- },
308
- };
309
- }
310
- catch (_error) {
311
- if (_error instanceof brightchain_lib_1.StoreError) {
312
- return (0, errorResponse_1.mapStoreError)(_error);
313
- }
314
- return (0, errorResponse_1.handleError)(_error);
315
- }
316
- };
317
- /**
318
- * POST /api/blocks/brighten
319
- * Brighten a block by XORing it with random blocks for Owner-Free storage.
320
- *
321
- * This operation implements the Owner-Free storage pattern where the original
322
- * data cannot be reconstructed without all the random blocks used in the
323
- * XOR operation. The brightened block is stored and its ID is returned along
324
- * with the IDs of all random blocks used.
325
- *
326
- * @param req - Request containing block ID and random block count
327
- * @returns Brightened block ID and list of random block IDs used
328
- * @throws INSUFFICIENT_RANDOM_BLOCKS if not enough random blocks are available
329
- *
330
- * @example
331
- * ```json
332
- * // Request
333
- * POST /api/blocks/brighten
334
- * {
335
- * "blockId": "abc123...",
336
- * "randomBlockCount": 3
337
- * }
338
- *
339
- * // Response
340
- * {
341
- * "brightenedBlockId": "def456...",
342
- * "randomBlockIds": ["rand1...", "rand2...", "rand3..."],
343
- * "originalBlockId": "abc123..."
344
- * }
345
- * ```
346
- */
347
- this.handleBrightenBlock = async (req) => {
348
- try {
349
- const { blockId, randomBlockCount } = req.body;
350
- // Validate required fields
351
- if (!blockId) {
352
- return (0, errorResponse_1.validationError)('Missing required field: blockId');
353
- }
354
- if (randomBlockCount === undefined || randomBlockCount < 1) {
355
- return (0, errorResponse_1.validationError)('randomBlockCount must be a positive integer');
356
- }
357
- const result = await this.blocksService.brightenBlock(blockId, randomBlockCount);
358
- return {
359
- statusCode: 200,
360
- response: {
361
- brightenedBlockId: result.brightenedBlockId,
362
- randomBlockIds: result.randomBlockIds,
363
- originalBlockId: result.originalBlockId,
364
- },
365
- };
366
- }
367
- catch (_error) {
368
- if (_error instanceof brightchain_lib_1.StoreError) {
369
- return (0, errorResponse_1.mapStoreError)(_error);
370
- }
371
- return (0, errorResponse_1.handleError)(_error);
372
- }
373
- };
374
84
  this.blocksService = blockServiceFactory_1.BlockServiceFactory.getInstance().getService(application);
375
85
  }
376
86
  initRouteDefinitions() {
@@ -471,6 +181,296 @@ class BlocksController extends base_1.BaseController {
471
181
  brightenBlock: this.handleBrightenBlock.bind(this),
472
182
  };
473
183
  }
184
+ /**
185
+ * POST /api/blocks
186
+ * Store a new block with optional durability settings.
187
+ *
188
+ * The block data is stored with the configured durability level, which determines
189
+ * how many parity blocks are generated for FEC recovery:
190
+ * - 'ephemeral': No parity blocks
191
+ * - 'standard': 1 parity block
192
+ * - 'high_durability': 2+ parity blocks
193
+ *
194
+ * @param req - Request containing base64-encoded block data and options
195
+ * @returns Block ID and metadata on success, or error response
196
+ *
197
+ * @example
198
+ * ```json
199
+ * // Request
200
+ * POST /api/blocks
201
+ * {
202
+ * "data": "SGVsbG8gV29ybGQ=",
203
+ * "options": {
204
+ * "durabilityLevel": "standard",
205
+ * "expiresAt": "2025-12-31T23:59:59Z"
206
+ * }
207
+ * }
208
+ *
209
+ * // Response
210
+ * {
211
+ * "blockId": "abc123...",
212
+ * "success": true,
213
+ * "metadata": {
214
+ * "blockId": "abc123...",
215
+ * "durabilityLevel": "standard",
216
+ * "parityBlockIds": ["abc123.p0"],
217
+ * ...
218
+ * }
219
+ * }
220
+ * ```
221
+ */
222
+ async handleStoreBlock(req) {
223
+ try {
224
+ const { data, canRead = true, canPersist = true, options, } = req.body;
225
+ // Validate required fields
226
+ if (!data) {
227
+ return (0, errorResponse_1.validationError)('Missing required field: data');
228
+ }
229
+ // Get authenticated member from session
230
+ const sessionsController = this.application.getController('sessions');
231
+ let member;
232
+ try {
233
+ member = sessionsController.getMemberFromSession(req.headers.authorization);
234
+ }
235
+ catch {
236
+ return (0, errorResponse_1.unauthorizedError)();
237
+ }
238
+ // Parse options if provided
239
+ const blockStoreOptions = options
240
+ ? {
241
+ expiresAt: options.expiresAt
242
+ ? new Date(options.expiresAt)
243
+ : undefined,
244
+ durabilityLevel: options.durabilityLevel,
245
+ }
246
+ : undefined;
247
+ const result = await this.blocksService.storeBlock(Buffer.from(data, 'base64'), member, canRead, canPersist, blockStoreOptions);
248
+ return {
249
+ statusCode: 200,
250
+ response: {
251
+ blockId: result.blockId,
252
+ success: true,
253
+ metadata: result.metadata,
254
+ },
255
+ };
256
+ }
257
+ catch (_error) {
258
+ if (_error instanceof brightchain_lib_1.StoreError) {
259
+ return (0, errorResponse_1.mapStoreError)(_error);
260
+ }
261
+ return (0, errorResponse_1.handleError)(_error);
262
+ }
263
+ }
264
+ /**
265
+ * GET /api/blocks/:blockId
266
+ * Retrieve a block by its ID.
267
+ *
268
+ * Returns the block data and metadata. The access count and last access
269
+ * timestamp in the metadata are updated on each retrieval.
270
+ *
271
+ * @param req - Request containing the block ID parameter
272
+ * @returns Block data (base64) and metadata on success, or 404 if not found
273
+ *
274
+ * @example
275
+ * ```json
276
+ * // Request
277
+ * GET /api/blocks/abc123...
278
+ *
279
+ * // Response
280
+ * {
281
+ * "blockId": "abc123...",
282
+ * "data": "SGVsbG8gV29ybGQ=",
283
+ * "canRead": true,
284
+ * "canPersist": true,
285
+ * "metadata": { ... }
286
+ * }
287
+ * ```
288
+ */
289
+ async handleGetBlock(req) {
290
+ try {
291
+ const { blockId } = req.params;
292
+ if (!blockId) {
293
+ return (0, errorResponse_1.validationError)('Missing required parameter: blockId');
294
+ }
295
+ const block = await this.blocksService.getBlock(blockId);
296
+ return {
297
+ statusCode: 200,
298
+ response: {
299
+ blockId,
300
+ data: block.data,
301
+ canRead: true,
302
+ canPersist: true,
303
+ metadata: block.metadata,
304
+ },
305
+ };
306
+ }
307
+ catch (_error) {
308
+ if (_error instanceof brightchain_lib_1.StoreError) {
309
+ return (0, errorResponse_1.mapStoreError)(_error);
310
+ }
311
+ return (0, errorResponse_1.handleError)(_error);
312
+ }
313
+ }
314
+ /**
315
+ * GET /api/blocks/:blockId/metadata
316
+ * Get metadata for a block without retrieving the data.
317
+ *
318
+ * Useful for checking block status, durability level, replication status,
319
+ * and access patterns without the overhead of retrieving the full block data.
320
+ *
321
+ * @param req - Request containing the block ID parameter
322
+ * @returns Block metadata on success, or 404 if not found
323
+ *
324
+ * @example
325
+ * ```json
326
+ * // Request
327
+ * GET /api/blocks/abc123.../metadata
328
+ *
329
+ * // Response
330
+ * {
331
+ * "blockId": "abc123...",
332
+ * "metadata": {
333
+ * "blockId": "abc123...",
334
+ * "createdAt": "2025-01-15T10:00:00Z",
335
+ * "durabilityLevel": "standard",
336
+ * "parityBlockIds": ["abc123.p0"],
337
+ * "accessCount": 5,
338
+ * "lastAccessedAt": "2025-01-16T14:30:00Z",
339
+ * "replicationStatus": "replicated",
340
+ * "size": 4096,
341
+ * "checksum": "abc123..."
342
+ * }
343
+ * }
344
+ * ```
345
+ */
346
+ async handleGetBlockMetadata(req) {
347
+ try {
348
+ const { blockId } = req.params;
349
+ if (!blockId) {
350
+ return (0, errorResponse_1.validationError)('Missing required parameter: blockId');
351
+ }
352
+ const metadata = await this.blocksService.getBlockMetadata(blockId);
353
+ if (!metadata) {
354
+ return (0, errorResponse_1.notFoundError)('Block', blockId);
355
+ }
356
+ return {
357
+ statusCode: 200,
358
+ response: {
359
+ blockId,
360
+ metadata,
361
+ },
362
+ };
363
+ }
364
+ catch (_error) {
365
+ if (_error instanceof brightchain_lib_1.StoreError) {
366
+ return (0, errorResponse_1.mapStoreError)(_error);
367
+ }
368
+ return (0, errorResponse_1.handleError)(_error);
369
+ }
370
+ }
371
+ /**
372
+ * DELETE /api/blocks/:blockId
373
+ * Delete a block and its associated parity blocks.
374
+ *
375
+ * This operation removes:
376
+ * - The block data file
377
+ * - All associated parity block files
378
+ * - The block metadata
379
+ *
380
+ * @param req - Request containing the block ID parameter
381
+ * @returns Success confirmation on success, or 404 if not found
382
+ *
383
+ * @example
384
+ * ```json
385
+ * // Request
386
+ * DELETE /api/blocks/abc123...
387
+ *
388
+ * // Response
389
+ * {
390
+ * "blockId": "abc123...",
391
+ * "success": true
392
+ * }
393
+ * ```
394
+ */
395
+ async handleDeleteBlock(req) {
396
+ try {
397
+ const { blockId } = req.params;
398
+ if (!blockId) {
399
+ return (0, errorResponse_1.validationError)('Missing required parameter: blockId');
400
+ }
401
+ await this.blocksService.deleteBlock(blockId);
402
+ return {
403
+ statusCode: 200,
404
+ response: {
405
+ blockId,
406
+ success: true,
407
+ },
408
+ };
409
+ }
410
+ catch (_error) {
411
+ if (_error instanceof brightchain_lib_1.StoreError) {
412
+ return (0, errorResponse_1.mapStoreError)(_error);
413
+ }
414
+ return (0, errorResponse_1.handleError)(_error);
415
+ }
416
+ }
417
+ /**
418
+ * POST /api/blocks/brighten
419
+ * Brighten a block by XORing it with random blocks for Owner-Free storage.
420
+ *
421
+ * This operation implements the Owner-Free storage pattern where the original
422
+ * data cannot be reconstructed without all the random blocks used in the
423
+ * XOR operation. The brightened block is stored and its ID is returned along
424
+ * with the IDs of all random blocks used.
425
+ *
426
+ * @param req - Request containing block ID and random block count
427
+ * @returns Brightened block ID and list of random block IDs used
428
+ * @throws INSUFFICIENT_RANDOM_BLOCKS if not enough random blocks are available
429
+ *
430
+ * @example
431
+ * ```json
432
+ * // Request
433
+ * POST /api/blocks/brighten
434
+ * {
435
+ * "blockId": "abc123...",
436
+ * "randomBlockCount": 3
437
+ * }
438
+ *
439
+ * // Response
440
+ * {
441
+ * "brightenedBlockId": "def456...",
442
+ * "randomBlockIds": ["rand1...", "rand2...", "rand3..."],
443
+ * "originalBlockId": "abc123..."
444
+ * }
445
+ * ```
446
+ */
447
+ async handleBrightenBlock(req) {
448
+ try {
449
+ const { blockId, randomBlockCount } = req.body;
450
+ // Validate required fields
451
+ if (!blockId) {
452
+ return (0, errorResponse_1.validationError)('Missing required field: blockId');
453
+ }
454
+ if (randomBlockCount === undefined || randomBlockCount < 1) {
455
+ return (0, errorResponse_1.validationError)('randomBlockCount must be a positive integer');
456
+ }
457
+ const result = await this.blocksService.brightenBlock(blockId, randomBlockCount);
458
+ return {
459
+ statusCode: 200,
460
+ response: {
461
+ brightenedBlockId: result.brightenedBlockId,
462
+ randomBlockIds: result.randomBlockIds,
463
+ originalBlockId: result.originalBlockId,
464
+ },
465
+ };
466
+ }
467
+ catch (_error) {
468
+ if (_error instanceof brightchain_lib_1.StoreError) {
469
+ return (0, errorResponse_1.mapStoreError)(_error);
470
+ }
471
+ return (0, errorResponse_1.handleError)(_error);
472
+ }
473
+ }
474
474
  }
475
475
  exports.BlocksController = BlocksController;
476
476
  //# sourceMappingURL=blocks.js.map