@brightchain/brightchain-api-lib 0.24.1 → 0.25.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 (146) hide show
  1. package/package.json +3 -3
  2. package/src/lib/application.d.ts.map +1 -1
  3. package/src/lib/application.js +33 -11
  4. package/src/lib/application.js.map +1 -1
  5. package/src/lib/auth/aclDocumentStore.d.ts +90 -0
  6. package/src/lib/auth/aclDocumentStore.d.ts.map +1 -0
  7. package/src/lib/auth/aclDocumentStore.js +155 -0
  8. package/src/lib/auth/aclDocumentStore.js.map +1 -0
  9. package/src/lib/auth/index.d.ts +4 -0
  10. package/src/lib/auth/index.d.ts.map +1 -1
  11. package/src/lib/auth/index.js +4 -0
  12. package/src/lib/auth/index.js.map +1 -1
  13. package/src/lib/auth/writeAclApiRouter.d.ts +32 -0
  14. package/src/lib/auth/writeAclApiRouter.d.ts.map +1 -0
  15. package/src/lib/auth/writeAclApiRouter.js +348 -0
  16. package/src/lib/auth/writeAclApiRouter.js.map +1 -0
  17. package/src/lib/auth/writeAclAuditLogger.d.ts +94 -0
  18. package/src/lib/auth/writeAclAuditLogger.d.ts.map +1 -0
  19. package/src/lib/auth/writeAclAuditLogger.js +143 -0
  20. package/src/lib/auth/writeAclAuditLogger.js.map +1 -0
  21. package/src/lib/auth/writeProofMiddleware.d.ts +39 -0
  22. package/src/lib/auth/writeProofMiddleware.d.ts.map +1 -0
  23. package/src/lib/auth/writeProofMiddleware.js +56 -0
  24. package/src/lib/auth/writeProofMiddleware.js.map +1 -0
  25. package/src/lib/availability/aclDocumentSyncHandler.d.ts +39 -0
  26. package/src/lib/availability/aclDocumentSyncHandler.d.ts.map +1 -0
  27. package/src/lib/availability/aclDocumentSyncHandler.js +81 -0
  28. package/src/lib/availability/aclDocumentSyncHandler.js.map +1 -0
  29. package/src/lib/availability/gossipService.d.ts +4 -1
  30. package/src/lib/availability/gossipService.d.ts.map +1 -1
  31. package/src/lib/availability/gossipService.js +15 -1
  32. package/src/lib/availability/gossipService.js.map +1 -1
  33. package/src/lib/availability/headUpdateSyncHandler.d.ts +32 -0
  34. package/src/lib/availability/headUpdateSyncHandler.d.ts.map +1 -0
  35. package/src/lib/availability/headUpdateSyncHandler.js +78 -0
  36. package/src/lib/availability/headUpdateSyncHandler.js.map +1 -0
  37. package/src/lib/availability/index.d.ts +2 -0
  38. package/src/lib/availability/index.d.ts.map +1 -1
  39. package/src/lib/availability/index.js +2 -0
  40. package/src/lib/availability/index.js.map +1 -1
  41. package/src/lib/constants.d.ts.map +1 -1
  42. package/src/lib/constants.js +2 -0
  43. package/src/lib/constants.js.map +1 -1
  44. package/src/lib/controllers/api/brighthub/connectionController.d.ts +6 -0
  45. package/src/lib/controllers/api/brighthub/connectionController.d.ts.map +1 -1
  46. package/src/lib/controllers/api/brighthub/connectionController.js +158 -11
  47. package/src/lib/controllers/api/brighthub/connectionController.js.map +1 -1
  48. package/src/lib/controllers/api/brighthub/messagingController.d.ts +6 -0
  49. package/src/lib/controllers/api/brighthub/messagingController.d.ts.map +1 -1
  50. package/src/lib/controllers/api/brighthub/messagingController.js +190 -58
  51. package/src/lib/controllers/api/brighthub/messagingController.js.map +1 -1
  52. package/src/lib/controllers/api/brighthub/postController.d.ts +12 -3
  53. package/src/lib/controllers/api/brighthub/postController.d.ts.map +1 -1
  54. package/src/lib/controllers/api/brighthub/postController.js +60 -0
  55. package/src/lib/controllers/api/brighthub/postController.js.map +1 -1
  56. package/src/lib/controllers/api/brighthub/timelineController.d.ts +19 -0
  57. package/src/lib/controllers/api/brighthub/timelineController.d.ts.map +1 -1
  58. package/src/lib/controllers/api/brighthub/timelineController.js +133 -0
  59. package/src/lib/controllers/api/brighthub/timelineController.js.map +1 -1
  60. package/src/lib/controllers/api/emails.d.ts +4 -1
  61. package/src/lib/controllers/api/emails.d.ts.map +1 -1
  62. package/src/lib/controllers/api/emails.js +28 -1
  63. package/src/lib/controllers/api/emails.js.map +1 -1
  64. package/src/lib/controllers/api/user.d.ts.map +1 -1
  65. package/src/lib/controllers/api/user.js +10 -0
  66. package/src/lib/controllers/api/user.js.map +1 -1
  67. package/src/lib/databaseInit.d.ts +1 -1
  68. package/src/lib/databaseInit.d.ts.map +1 -1
  69. package/src/lib/databaseInit.js +14 -4
  70. package/src/lib/databaseInit.js.map +1 -1
  71. package/src/lib/environment.d.ts +29 -3
  72. package/src/lib/environment.d.ts.map +1 -1
  73. package/src/lib/environment.js +97 -6
  74. package/src/lib/environment.js.map +1 -1
  75. package/src/lib/factories/blockStoreFactory.d.ts.map +1 -1
  76. package/src/lib/factories/blockStoreFactory.js +4 -1
  77. package/src/lib/factories/blockStoreFactory.js.map +1 -1
  78. package/src/lib/interfaces/environment.d.ts +45 -2
  79. package/src/lib/interfaces/environment.d.ts.map +1 -1
  80. package/src/lib/interfaces/responses/brighthub/api-post-response.d.ts +8 -1
  81. package/src/lib/interfaces/responses/brighthub/api-post-response.d.ts.map +1 -1
  82. package/src/lib/routers/api.d.ts +18 -1
  83. package/src/lib/routers/api.d.ts.map +1 -1
  84. package/src/lib/routers/api.js +24 -1
  85. package/src/lib/routers/api.js.map +1 -1
  86. package/src/lib/routers/app.d.ts.map +1 -1
  87. package/src/lib/routers/app.js +5 -2
  88. package/src/lib/routers/app.js.map +1 -1
  89. package/src/lib/services/auth.d.ts.map +1 -1
  90. package/src/lib/services/auth.js +37 -3
  91. package/src/lib/services/auth.js.map +1 -1
  92. package/src/lib/services/blockStore.d.ts +8 -1
  93. package/src/lib/services/blockStore.d.ts.map +1 -1
  94. package/src/lib/services/blockStore.js +19 -7
  95. package/src/lib/services/blockStore.js.map +1 -1
  96. package/src/lib/services/brightChainBackupCodeService.d.ts +42 -39
  97. package/src/lib/services/brightChainBackupCodeService.d.ts.map +1 -1
  98. package/src/lib/services/brightChainBackupCodeService.js +86 -61
  99. package/src/lib/services/brightChainBackupCodeService.js.map +1 -1
  100. package/src/lib/services/brighthub/collectionAdapter.d.ts +81 -0
  101. package/src/lib/services/brighthub/collectionAdapter.d.ts.map +1 -0
  102. package/src/lib/services/brighthub/collectionAdapter.js +127 -0
  103. package/src/lib/services/brighthub/collectionAdapter.js.map +1 -0
  104. package/src/lib/services/brighthub/connectionService.d.ts.map +1 -1
  105. package/src/lib/services/brighthub/connectionService.js +3 -0
  106. package/src/lib/services/brighthub/connectionService.js.map +1 -1
  107. package/src/lib/services/brighthub/messagingService.d.ts +4 -0
  108. package/src/lib/services/brighthub/messagingService.d.ts.map +1 -1
  109. package/src/lib/services/brighthub/messagingService.js +25 -4
  110. package/src/lib/services/brighthub/messagingService.js.map +1 -1
  111. package/src/lib/services/brighthub/notificationService.d.ts.map +1 -1
  112. package/src/lib/services/brighthub/notificationService.js +35 -20
  113. package/src/lib/services/brighthub/notificationService.js.map +1 -1
  114. package/src/lib/services/brighthub/postService.d.ts +7 -1
  115. package/src/lib/services/brighthub/postService.d.ts.map +1 -1
  116. package/src/lib/services/brighthub/postService.js +22 -1
  117. package/src/lib/services/brighthub/postService.js.map +1 -1
  118. package/src/lib/services/brighthub/userProfileService.d.ts +19 -1
  119. package/src/lib/services/brighthub/userProfileService.d.ts.map +1 -1
  120. package/src/lib/services/brighthub/userProfileService.js +74 -0
  121. package/src/lib/services/brighthub/userProfileService.js.map +1 -1
  122. package/src/lib/services/eventNotificationSystem.d.ts.map +1 -1
  123. package/src/lib/services/eventNotificationSystem.js.map +1 -1
  124. package/src/lib/services/index.d.ts +1 -1
  125. package/src/lib/services/index.d.ts.map +1 -1
  126. package/src/lib/services/index.js +1 -1
  127. package/src/lib/services/index.js.map +1 -1
  128. package/src/lib/stores/availabilityAwareBlockStore.d.ts +4 -3
  129. package/src/lib/stores/availabilityAwareBlockStore.d.ts.map +1 -1
  130. package/src/lib/stores/availabilityAwareBlockStore.js +5 -2
  131. package/src/lib/stores/availabilityAwareBlockStore.js.map +1 -1
  132. package/src/lib/stores/cloudBlockStoreBase.d.ts +2 -1
  133. package/src/lib/stores/cloudBlockStoreBase.d.ts.map +1 -1
  134. package/src/lib/stores/cloudBlockStoreBase.js +34 -13
  135. package/src/lib/stores/cloudBlockStoreBase.js.map +1 -1
  136. package/src/lib/stores/diskBlockAsyncStore.d.ts +21 -1
  137. package/src/lib/stores/diskBlockAsyncStore.d.ts.map +1 -1
  138. package/src/lib/stores/diskBlockAsyncStore.js +48 -17
  139. package/src/lib/stores/diskBlockAsyncStore.js.map +1 -1
  140. package/src/lib/stores/diskBlockStore.d.ts +10 -2
  141. package/src/lib/stores/diskBlockStore.d.ts.map +1 -1
  142. package/src/lib/stores/diskBlockStore.js +43 -19
  143. package/src/lib/stores/diskBlockStore.js.map +1 -1
  144. package/src/lib/utils/emailValidation.d.ts.map +1 -1
  145. package/src/lib/utils/emailValidation.js +2 -1
  146. package/src/lib/utils/emailValidation.js.map +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writeProofMiddleware.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/auth/writeProofMiddleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,eAAe,eAAe,CAAC;AAE5C;;GAEG;AACH,OAAO,CAAC,MAAM,CAAC;IAEb,UAAU,OAAO,CAAC;QAChB,UAAU,OAAO;YACf,UAAU,CAAC,EAAE,WAAW,CAAC;SAC1B;KACF;CACF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,GACjB,IAAI,CAiCN"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview ACL middleware for extracting Write_Proof from data route requests.
4
+ *
5
+ * Extracts the `X-Write-Proof` header (JSON-serialized IWriteProof) on
6
+ * existing data routes and passes the write proof through to collection
7
+ * operations for head registry enforcement.
8
+ *
9
+ * @see BrightDB Write ACLs design, ACL Express Middleware section
10
+ * @see Requirements 5.5, 3.1
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.WRITE_PROOF_KEY = void 0;
14
+ exports.extractWriteProof = extractWriteProof;
15
+ /**
16
+ * Key used to attach the parsed write proof to the Express request object.
17
+ */
18
+ exports.WRITE_PROOF_KEY = 'writeProof';
19
+ /**
20
+ * Express middleware that extracts a Write_Proof from the `X-Write-Proof`
21
+ * request header. If the header is present, it is parsed from JSON and
22
+ * attached to `req.writeProof`. If the header is absent, the request
23
+ * proceeds without a proof (Open_Mode collections don't require one).
24
+ *
25
+ * Binary fields (`signerPublicKey`, `signature`) are expected as hex strings
26
+ * in the JSON and are converted to Uint8Array.
27
+ *
28
+ * @see Requirements 5.5, 3.1
29
+ */
30
+ function extractWriteProof(req, res, next) {
31
+ const header = req.headers['x-write-proof'];
32
+ if (!header) {
33
+ // No write proof provided — this is fine for Open_Mode
34
+ next();
35
+ return;
36
+ }
37
+ try {
38
+ const parsed = JSON.parse(header);
39
+ const proof = {
40
+ signerPublicKey: Uint8Array.from(Buffer.from(parsed['signerPublicKey'] ?? '', 'hex')),
41
+ signature: Uint8Array.from(Buffer.from(parsed['signature'] ?? '', 'hex')),
42
+ dbName: parsed['dbName'] ?? '',
43
+ collectionName: parsed['collectionName'] ?? '',
44
+ blockId: parsed['blockId'] ?? '',
45
+ };
46
+ req.writeProof = proof;
47
+ next();
48
+ }
49
+ catch {
50
+ res.status(400).json({
51
+ error: 'Invalid Write_Proof',
52
+ message: 'X-Write-Proof header must contain valid JSON-serialized IWriteProof',
53
+ });
54
+ }
55
+ }
56
+ //# sourceMappingURL=writeProofMiddleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writeProofMiddleware.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/auth/writeProofMiddleware.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAiCH,8CAqCC;AAjED;;GAEG;AACU,QAAA,eAAe,GAAG,YAAY,CAAC;AAc5C;;;;;;;;;;GAUG;AACH,SAAgB,iBAAiB,CAC/B,GAAY,EACZ,GAAa,EACb,IAAkB;IAElB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAuB,CAAC;IAElE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,uDAAuD;QACvD,IAAI,EAAE,CAAC;QACP,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAA4B,CAAC;QAE7D,MAAM,KAAK,GAAgB;YACzB,eAAe,EAAE,UAAU,CAAC,IAAI,CAC9B,MAAM,CAAC,IAAI,CAAE,MAAM,CAAC,iBAAiB,CAAY,IAAI,EAAE,EAAE,KAAK,CAAC,CAChE;YACD,SAAS,EAAE,UAAU,CAAC,IAAI,CACxB,MAAM,CAAC,IAAI,CAAE,MAAM,CAAC,WAAW,CAAY,IAAI,EAAE,EAAE,KAAK,CAAC,CAC1D;YACD,MAAM,EAAG,MAAM,CAAC,QAAQ,CAAY,IAAI,EAAE;YAC1C,cAAc,EAAG,MAAM,CAAC,gBAAgB,CAAY,IAAI,EAAE;YAC1D,OAAO,EAAG,MAAM,CAAC,SAAS,CAAY,IAAI,EAAE;SAC7C,CAAC;QAEF,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,EAAE,CAAC;IACT,CAAC;IAAC,MAAM,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,qBAAqB;YAC5B,OAAO,EACL,qEAAqE;SACxE,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @fileoverview ACL document replication handler for cross-node sync.
3
+ *
4
+ * Handles incoming `acl_update` announcements from the gossip service.
5
+ * When an ACL document block is received from a sync peer, this handler:
6
+ * 1. Loads the ACL document from the block store (via AclDocumentStore)
7
+ * 2. Verifies the signature (done by AclDocumentStore.loadAclDocument)
8
+ * 3. Validates the version is newer than the current local version
9
+ * 4. Applies the ACL to the WriteAclManager cache
10
+ *
11
+ * @see Write ACL Requirements 7.3, 7.4, 7.5
12
+ */
13
+ import type { BlockAnnouncement, IAclDocument, IWriteAclAuditLogger } from '@brightchain/brightchain-lib';
14
+ import type { AclDocumentStore } from '../auth/aclDocumentStore';
15
+ /**
16
+ * Minimal interface for the ACL manager operations needed by the sync handler.
17
+ * Avoids a direct dependency on @brightchain/db from api-lib.
18
+ */
19
+ export interface IAclDocumentSyncTarget {
20
+ getAclDocument(dbName: string, collectionName?: string): IAclDocument | undefined;
21
+ setCachedAcl(acl: IAclDocument): void;
22
+ }
23
+ /**
24
+ * Create a gossip announcement handler that replicates ACL documents
25
+ * received from sync peers.
26
+ *
27
+ * The handler processes `acl_update` type announcements by loading the
28
+ * ACL document block, verifying its signature, checking the version,
29
+ * and applying it to the local WriteAclManager.
30
+ *
31
+ * @param aclDocumentStore - Store for loading and verifying ACL document blocks
32
+ * @param writeAclManager - Manager to apply verified ACL documents to
33
+ * @param auditLogger - Optional audit logger for security events
34
+ * @returns An announcement handler function
35
+ *
36
+ * @see Write ACL Requirements 7.3, 7.4, 7.5
37
+ */
38
+ export declare function createAclDocumentSyncHandler(aclDocumentStore: AclDocumentStore, writeAclManager: IAclDocumentSyncTarget, auditLogger?: IWriteAclAuditLogger): (announcement: BlockAnnouncement) => void;
39
+ //# sourceMappingURL=aclDocumentSyncHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aclDocumentSyncHandler.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/aclDocumentSyncHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,cAAc,CACZ,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,GACtB,YAAY,GAAG,SAAS,CAAC;IAC5B,YAAY,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,CAAC;CACvC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,4BAA4B,CAC1C,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,sBAAsB,EACvC,WAAW,CAAC,EAAE,oBAAoB,GACjC,CAAC,YAAY,EAAE,iBAAiB,KAAK,IAAI,CA6D3C"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview ACL document replication handler for cross-node sync.
4
+ *
5
+ * Handles incoming `acl_update` announcements from the gossip service.
6
+ * When an ACL document block is received from a sync peer, this handler:
7
+ * 1. Loads the ACL document from the block store (via AclDocumentStore)
8
+ * 2. Verifies the signature (done by AclDocumentStore.loadAclDocument)
9
+ * 3. Validates the version is newer than the current local version
10
+ * 4. Applies the ACL to the WriteAclManager cache
11
+ *
12
+ * @see Write ACL Requirements 7.3, 7.4, 7.5
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.createAclDocumentSyncHandler = createAclDocumentSyncHandler;
16
+ /**
17
+ * Create a gossip announcement handler that replicates ACL documents
18
+ * received from sync peers.
19
+ *
20
+ * The handler processes `acl_update` type announcements by loading the
21
+ * ACL document block, verifying its signature, checking the version,
22
+ * and applying it to the local WriteAclManager.
23
+ *
24
+ * @param aclDocumentStore - Store for loading and verifying ACL document blocks
25
+ * @param writeAclManager - Manager to apply verified ACL documents to
26
+ * @param auditLogger - Optional audit logger for security events
27
+ * @returns An announcement handler function
28
+ *
29
+ * @see Write ACL Requirements 7.3, 7.4, 7.5
30
+ */
31
+ function createAclDocumentSyncHandler(aclDocumentStore, writeAclManager, auditLogger) {
32
+ return (announcement) => {
33
+ if (announcement.type !== 'acl_update')
34
+ return;
35
+ if (!announcement.aclBlockId)
36
+ return;
37
+ const aclBlockId = announcement.aclBlockId;
38
+ // Load, verify signature, and apply — async fire-and-forget
39
+ (async () => {
40
+ try {
41
+ // loadAclDocument verifies the signature before returning
42
+ // @see Requirements 7.3 (verify signature before applying)
43
+ const aclDoc = await aclDocumentStore.loadAclDocument(aclBlockId);
44
+ // Check version against current local ACL
45
+ // @see Requirements 7.4 (reject lower or equal version)
46
+ const currentAcl = writeAclManager.getAclDocument(aclDoc.scope.dbName, aclDoc.scope.collectionName);
47
+ if (currentAcl && aclDoc.version <= currentAcl.version) {
48
+ // Reject — local version is same or newer
49
+ if (auditLogger) {
50
+ auditLogger.logSecurityEvent('acl_sync_version_rejected', {
51
+ aclBlockId,
52
+ incomingVersion: aclDoc.version,
53
+ currentVersion: currentAcl.version,
54
+ dbName: aclDoc.scope.dbName,
55
+ collectionName: aclDoc.scope.collectionName,
56
+ sourceNodeId: announcement.nodeId,
57
+ });
58
+ }
59
+ return;
60
+ }
61
+ // Apply the verified ACL document to the local cache
62
+ // @see Requirements 7.5 (replicate through block store sync)
63
+ writeAclManager.setCachedAcl(aclDoc);
64
+ if (auditLogger) {
65
+ auditLogger.logAclModification(Buffer.from(aclDoc.creatorPublicKey).toString('hex'), 'sync_replication', 'acl_document', aclDoc.scope.dbName, aclDoc.scope.collectionName);
66
+ }
67
+ }
68
+ catch (error) {
69
+ // Signature verification failure or block not found — log security event
70
+ if (auditLogger) {
71
+ auditLogger.logSecurityEvent('acl_sync_verification_failed', {
72
+ aclBlockId,
73
+ sourceNodeId: announcement.nodeId,
74
+ reason: error.message,
75
+ });
76
+ }
77
+ }
78
+ })();
79
+ };
80
+ }
81
+ //# sourceMappingURL=aclDocumentSyncHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aclDocumentSyncHandler.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/aclDocumentSyncHandler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAoCH,oEAiEC;AAhFD;;;;;;;;;;;;;;GAcG;AACH,SAAgB,4BAA4B,CAC1C,gBAAkC,EAClC,eAAuC,EACvC,WAAkC;IAElC,OAAO,CAAC,YAA+B,EAAE,EAAE;QACzC,IAAI,YAAY,CAAC,IAAI,KAAK,YAAY;YAAE,OAAO;QAC/C,IAAI,CAAC,YAAY,CAAC,UAAU;YAAE,OAAO;QAErC,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;QAE3C,4DAA4D;QAC5D,CAAC,KAAK,IAAI,EAAE;YACV,IAAI,CAAC;gBACH,0DAA0D;gBAC1D,2DAA2D;gBAC3D,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;gBAElE,0CAA0C;gBAC1C,wDAAwD;gBACxD,MAAM,UAAU,GAAG,eAAe,CAAC,cAAc,CAC/C,MAAM,CAAC,KAAK,CAAC,MAAM,EACnB,MAAM,CAAC,KAAK,CAAC,cAAc,CAC5B,CAAC;gBAEF,IAAI,UAAU,IAAI,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;oBACvD,0CAA0C;oBAC1C,IAAI,WAAW,EAAE,CAAC;wBAChB,WAAW,CAAC,gBAAgB,CAAC,2BAA2B,EAAE;4BACxD,UAAU;4BACV,eAAe,EAAE,MAAM,CAAC,OAAO;4BAC/B,cAAc,EAAE,UAAU,CAAC,OAAO;4BAClC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;4BAC3B,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc;4BAC3C,YAAY,EAAE,YAAY,CAAC,MAAM;yBAClC,CAAC,CAAC;oBACL,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,qDAAqD;gBACrD,6DAA6D;gBAC7D,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBAErC,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,kBAAkB,CAC5B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EACpD,kBAAkB,EAClB,cAAc,EACd,MAAM,CAAC,KAAK,CAAC,MAAM,EACnB,MAAM,CAAC,KAAK,CAAC,cAAc,CAC5B,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,yEAAyE;gBACzE,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,gBAAgB,CAAC,8BAA8B,EAAE;wBAC3D,UAAU;wBACV,YAAY,EAAE,YAAY,CAAC,MAAM;wBACjC,MAAM,EAAG,KAAe,CAAC,OAAO;qBACjC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,CAAC;AACJ,CAAC"}
@@ -201,7 +201,10 @@ export declare class GossipService implements IGossipService {
201
201
  * @param blockId - The new head block ID
202
202
  * @see Requirements 2.1
203
203
  */
204
- announceHeadUpdate(dbName: string, collectionName: string, blockId: BlockId): Promise<void>;
204
+ announceHeadUpdate(dbName: string, collectionName: string, blockId: BlockId, writeProof?: {
205
+ signerPublicKey: string;
206
+ signature: string;
207
+ }): Promise<void>;
205
208
  announceACLUpdate(poolId: string, aclBlockId: BlockId): Promise<void>;
206
209
  /**
207
210
  * Handle an incoming block announcement from a peer.
@@ -1 +1 @@
1
- {"version":3,"file":"gossipService.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/gossipService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gossipService.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/gossipService.ts"],"names":[],"mappings":"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"}
@@ -266,7 +266,7 @@ class GossipService {
266
266
  * @param blockId - The new head block ID
267
267
  * @see Requirements 2.1
268
268
  */
269
- async announceHeadUpdate(dbName, collectionName, blockId) {
269
+ async announceHeadUpdate(dbName, collectionName, blockId, writeProof) {
270
270
  const announcement = {
271
271
  type: 'head_update',
272
272
  blockId,
@@ -277,6 +277,19 @@ class GossipService {
277
277
  dbName,
278
278
  collectionName,
279
279
  },
280
+ // Include write proof for cross-node verification in Restricted_Mode
281
+ // @see Write ACL Requirements 7.1, 7.2
282
+ ...(writeProof
283
+ ? {
284
+ writeProof: {
285
+ signerPublicKey: writeProof.signerPublicKey,
286
+ signature: writeProof.signature,
287
+ dbName,
288
+ collectionName,
289
+ blockId,
290
+ },
291
+ }
292
+ : {}),
280
293
  };
281
294
  this.queueAnnouncement(announcement);
282
295
  }
@@ -716,6 +729,7 @@ class GossipService {
716
729
  ...(a.messageDelivery ? { messageDelivery: a.messageDelivery } : {}),
717
730
  ...(a.deliveryAck ? { deliveryAck: a.deliveryAck } : {}),
718
731
  ...(a.headUpdate ? { headUpdate: a.headUpdate } : {}),
732
+ ...(a.writeProof ? { writeProof: a.writeProof } : {}),
719
733
  })));
720
734
  const plaintext = Buffer.from(json, 'utf-8');
721
735
  const ciphertext = await this.eciesService.encryptWithLength(peerPublicKey, plaintext);
@@ -1 +1 @@
1
- {"version":3,"file":"gossipService.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/gossipService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gossipService.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/gossipService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @fileoverview Head update sync handler with write proof verification.
3
+ *
4
+ * Bridges the gossip service's head_update announcements to the head registry,
5
+ * converting hex-encoded write proofs from BlockAnnouncements into IWriteProof
6
+ * objects and passing them through to the AuthorizedHeadRegistry for verification.
7
+ *
8
+ * In Restricted_Mode, the AuthorizedHeadRegistry will verify the write proof
9
+ * before applying the head update. In Open_Mode, the proof is ignored.
10
+ *
11
+ * @see Write ACL Requirements 7.1, 7.2, 7.3, 5.3, 5.4
12
+ */
13
+ import type { BlockAnnouncement, IHeadRegistry, IWriteAclAuditLogger, IWriteProof } from '@brightchain/brightchain-lib';
14
+ /**
15
+ * Convert a BlockAnnouncement's hex-encoded writeProof to an IWriteProof<Uint8Array>.
16
+ * Returns undefined if the announcement has no writeProof.
17
+ */
18
+ export declare function extractWriteProofFromAnnouncement(announcement: BlockAnnouncement): IWriteProof | undefined;
19
+ /**
20
+ * Create a gossip announcement handler that applies head_update announcements
21
+ * to the given head registry, passing through write proofs for verification.
22
+ *
23
+ * The returned handler can be registered with `gossipService.onAnnouncement(handler)`.
24
+ *
25
+ * @param headRegistry - The head registry to apply updates to (typically an AuthorizedHeadRegistry)
26
+ * @param auditLogger - Optional audit logger for security events
27
+ * @returns An announcement handler function
28
+ *
29
+ * @see Write ACL Requirements 7.3, 5.3, 5.4
30
+ */
31
+ export declare function createHeadUpdateSyncHandler(headRegistry: IHeadRegistry, auditLogger?: IWriteAclAuditLogger): (announcement: BlockAnnouncement) => void;
32
+ //# sourceMappingURL=headUpdateSyncHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headUpdateSyncHandler.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/headUpdateSyncHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,WAAW,EACZ,MAAM,8BAA8B,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,YAAY,EAAE,iBAAiB,GAC9B,WAAW,GAAG,SAAS,CAezB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CACzC,YAAY,EAAE,aAAa,EAC3B,WAAW,CAAC,EAAE,oBAAoB,GACjC,CAAC,YAAY,EAAE,iBAAiB,KAAK,IAAI,CAqC3C"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Head update sync handler with write proof verification.
4
+ *
5
+ * Bridges the gossip service's head_update announcements to the head registry,
6
+ * converting hex-encoded write proofs from BlockAnnouncements into IWriteProof
7
+ * objects and passing them through to the AuthorizedHeadRegistry for verification.
8
+ *
9
+ * In Restricted_Mode, the AuthorizedHeadRegistry will verify the write proof
10
+ * before applying the head update. In Open_Mode, the proof is ignored.
11
+ *
12
+ * @see Write ACL Requirements 7.1, 7.2, 7.3, 5.3, 5.4
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.extractWriteProofFromAnnouncement = extractWriteProofFromAnnouncement;
16
+ exports.createHeadUpdateSyncHandler = createHeadUpdateSyncHandler;
17
+ /**
18
+ * Convert a BlockAnnouncement's hex-encoded writeProof to an IWriteProof<Uint8Array>.
19
+ * Returns undefined if the announcement has no writeProof.
20
+ */
21
+ function extractWriteProofFromAnnouncement(announcement) {
22
+ if (!announcement.writeProof) {
23
+ return undefined;
24
+ }
25
+ const { signerPublicKey, signature, dbName, collectionName, blockId } = announcement.writeProof;
26
+ return {
27
+ signerPublicKey: Uint8Array.from(Buffer.from(signerPublicKey, 'hex')),
28
+ signature: Uint8Array.from(Buffer.from(signature, 'hex')),
29
+ dbName,
30
+ collectionName,
31
+ blockId,
32
+ };
33
+ }
34
+ /**
35
+ * Create a gossip announcement handler that applies head_update announcements
36
+ * to the given head registry, passing through write proofs for verification.
37
+ *
38
+ * The returned handler can be registered with `gossipService.onAnnouncement(handler)`.
39
+ *
40
+ * @param headRegistry - The head registry to apply updates to (typically an AuthorizedHeadRegistry)
41
+ * @param auditLogger - Optional audit logger for security events
42
+ * @returns An announcement handler function
43
+ *
44
+ * @see Write ACL Requirements 7.3, 5.3, 5.4
45
+ */
46
+ function createHeadUpdateSyncHandler(headRegistry, auditLogger) {
47
+ return (announcement) => {
48
+ if (announcement.type !== 'head_update')
49
+ return;
50
+ if (!announcement.headUpdate || !announcement.blockId)
51
+ return;
52
+ const { dbName, collectionName } = announcement.headUpdate;
53
+ const writeProof = extractWriteProofFromAnnouncement(announcement);
54
+ // mergeHeadUpdate is async — fire and handle errors
55
+ headRegistry
56
+ .mergeHeadUpdate(dbName, collectionName, announcement.blockId, announcement.timestamp, writeProof)
57
+ .then((applied) => {
58
+ if (!applied) {
59
+ // Update rejected by last-writer-wins — not a security event
60
+ return;
61
+ }
62
+ })
63
+ .catch((error) => {
64
+ // Write authorization failure — log security event
65
+ if (auditLogger) {
66
+ auditLogger.logSecurityEvent('sync_head_update_rejected', {
67
+ dbName,
68
+ collectionName,
69
+ blockId: announcement.blockId,
70
+ sourceNodeId: announcement.nodeId,
71
+ reason: error.message,
72
+ writeProofPresent: !!writeProof,
73
+ });
74
+ }
75
+ });
76
+ };
77
+ }
78
+ //# sourceMappingURL=headUpdateSyncHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headUpdateSyncHandler.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/headUpdateSyncHandler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;AAaH,8EAiBC;AAcD,kEAwCC;AA3ED;;;GAGG;AACH,SAAgB,iCAAiC,CAC/C,YAA+B;IAE/B,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,GACnE,YAAY,CAAC,UAAU,CAAC;IAE1B,OAAO;QACL,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QACrE,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACzD,MAAM;QACN,cAAc;QACd,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,2BAA2B,CACzC,YAA2B,EAC3B,WAAkC;IAElC,OAAO,CAAC,YAA+B,EAAE,EAAE;QACzC,IAAI,YAAY,CAAC,IAAI,KAAK,aAAa;YAAE,OAAO;QAChD,IAAI,CAAC,YAAY,CAAC,UAAU,IAAI,CAAC,YAAY,CAAC,OAAO;YAAE,OAAO;QAE9D,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,YAAY,CAAC,UAAU,CAAC;QAC3D,MAAM,UAAU,GAAG,iCAAiC,CAAC,YAAY,CAAC,CAAC;QAEnE,oDAAoD;QACpD,YAAY;aACT,eAAe,CACd,MAAM,EACN,cAAc,EACd,YAAY,CAAC,OAAO,EACpB,YAAY,CAAC,SAAS,EACtB,UAAU,CACX;aACA,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YAChB,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,6DAA6D;gBAC7D,OAAO;YACT,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;YACtB,mDAAmD;YACnD,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,CAAC,gBAAgB,CAAC,2BAA2B,EAAE;oBACxD,MAAM;oBACN,cAAc;oBACd,OAAO,EAAE,YAAY,CAAC,OAAO;oBAC7B,YAAY,EAAE,YAAY,CAAC,MAAM;oBACjC,MAAM,EAAE,KAAK,CAAC,OAAO;oBACrB,iBAAiB,EAAE,CAAC,CAAC,UAAU;iBAChC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;AACJ,CAAC"}
@@ -4,12 +4,14 @@
4
4
  * This module provides implementations for block availability tracking,
5
5
  * discovery, and network partition handling.
6
6
  */
7
+ export * from './aclDocumentSyncHandler';
7
8
  export * from './availabilityMetrics';
8
9
  export * from './availabilityService';
9
10
  export * from './blockRegistry';
10
11
  export * from './configValidation';
11
12
  export * from './discoveryProtocol';
12
13
  export * from './gossipService';
14
+ export * from './headUpdateSyncHandler';
13
15
  export * from './heartbeatMonitor';
14
16
  export * from './poolDiscoveryService';
15
17
  export * from './quorumGossipHandler';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC"}
@@ -7,12 +7,14 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  const tslib_1 = require("tslib");
10
+ tslib_1.__exportStar(require("./aclDocumentSyncHandler"), exports);
10
11
  tslib_1.__exportStar(require("./availabilityMetrics"), exports);
11
12
  tslib_1.__exportStar(require("./availabilityService"), exports);
12
13
  tslib_1.__exportStar(require("./blockRegistry"), exports);
13
14
  tslib_1.__exportStar(require("./configValidation"), exports);
14
15
  tslib_1.__exportStar(require("./discoveryProtocol"), exports);
15
16
  tslib_1.__exportStar(require("./gossipService"), exports);
17
+ tslib_1.__exportStar(require("./headUpdateSyncHandler"), exports);
16
18
  tslib_1.__exportStar(require("./heartbeatMonitor"), exports);
17
19
  tslib_1.__exportStar(require("./poolDiscoveryService"), exports);
18
20
  tslib_1.__exportStar(require("./quorumGossipHandler"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,gEAAsC;AACtC,gEAAsC;AACtC,0DAAgC;AAChC,6DAAmC;AACnC,8DAAoC;AACpC,0DAAgC;AAChC,6DAAmC;AACnC,iEAAuC;AACvC,gEAAsC;AACtC,kEAAwC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/availability/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,mEAAyC;AACzC,gEAAsC;AACtC,gEAAsC;AACtC,0DAAgC;AAChC,6DAAmC;AACnC,8DAAoC;AACpC,0DAAgC;AAChC,kEAAwC;AACxC,6DAAmC;AACnC,iEAAuC;AACvC,gEAAsC;AACtC,kEAAwC"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAU3D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,SAAS,EAAE,aAQvB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAa3D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,SAAS,EAAE,aAQvB,CAAC"}
@@ -29,6 +29,8 @@ const node_ecies_lib_1 = require("@digitaldefiance/node-ecies-lib");
29
29
  const node_express_suite_1 = require("@digitaldefiance/node-express-suite");
30
30
  const expressConsts = (0, node_express_suite_1.createExpressConstants)('brightchain.org', 'brightchain.org', {
31
31
  Site: 'BrightChain',
32
+ SiteTagline: 'Privacy. Participation. Power.',
33
+ SiteDescription: 'Your files are broken into blocks and mixed with random data using XOR operations, making them appear completely random while maintaining perfect security. From homomorphic voting to brokered anonymity, from distributed file storage to quorum-based governance, BrightChain offers everything needed for the next generation of decentralized applications.',
32
34
  });
33
35
  /**
34
36
  * API Constants extending from @digitaldefiance/node-express-suite
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH,kEAA0E;AAC1E,0DAA4D;AAC5D,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;IACX,wEAAwE;IACxE,0EAA0E;IAC1E,UAAU,EAAE,IAAI,0BAAc,EAAE;CACjC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH,kEAA0E;AAC1E,0DAA4D;AAC5D,oEAA8D;AAC9D,4EAA6E;AAG7E,MAAM,aAAa,GAAG,IAAA,2CAAsB,EAC1C,iBAAiB,EACjB,iBAAiB,EACjB;IACE,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,gCAAgC;IAC7C,eAAe,EACb,kWAAkW;CACrW,CACF,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACU,QAAA,SAAS,GAAkB;IACtC,GAAG,2BAAa;IAChB,GAAG,aAAa;IAChB,eAAe,EAAE,aAAa,CAAC,eAAe;IAC9C,WAAW,EAAX,4BAAW;IACX,wEAAwE;IACxE,0EAA0E;IAC1E,UAAU,EAAE,IAAI,0BAAc,EAAE;CACjC,CAAC"}
@@ -26,6 +26,9 @@ interface IConnectionHandlers extends TypedHandlers {
26
26
  importConnections: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
27
27
  createHub: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
28
28
  getHubs: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
29
+ addHubMembers: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
30
+ removeHubMembers: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
31
+ bulkMembers: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
29
32
  getConnectionInsights: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
30
33
  getFollowRequests: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
31
34
  approveFollowRequest: ApiRequestHandler<IApiMessageResponse | ApiErrorResponse>;
@@ -71,6 +74,9 @@ export declare class BrightHubConnectionController<TID extends PlatformID = Defa
71
74
  private handleImportConnections;
72
75
  private handleCreateHub;
73
76
  private handleGetHubs;
77
+ private handleAddHubMembers;
78
+ private handleRemoveHubMembers;
79
+ private handleBulkMembers;
74
80
  private handleGetConnectionInsights;
75
81
  private handleGetFollowRequests;
76
82
  private handleApproveFollowRequest;
@@ -1 +1 @@
1
- {"version":3,"file":"connectionController.d.ts","sourceRoot":"","sources":["../../../../../../../brightchain-api-lib/src/lib/controllers/api/brighthub/connectionController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connectionController.d.ts","sourceRoot":"","sources":["../../../../../../../brightchain-api-lib/src/lib/controllers/api/brighthub/connectionController.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,kBAAkB,EAClB,iBAAiB,EAGjB,mBAAmB,EAIpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EAEjB,mBAAmB,EAEnB,aAAa,EACd,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAO7D,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,KAAK,yBAAyB,GAC1B,0BAA0B,GAC1B,2BAA2B,GAC3B,mBAAmB,GACnB,gBAAgB,CAAC;AAErB,UAAU,mBAAoB,SAAQ,aAAa;IAEjD,UAAU,EAAE,iBAAiB,CAAC,0BAA0B,GAAG,gBAAgB,CAAC,CAAC;IAC7E,YAAY,EAAE,iBAAiB,CAC7B,2BAA2B,GAAG,gBAAgB,CAC/C,CAAC;IACF,UAAU,EAAE,iBAAiB,CAAC,0BAA0B,GAAG,gBAAgB,CAAC,CAAC;IAC7E,UAAU,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACtE,UAAU,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACtE,aAAa,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACzE,cAAc,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IAE1E,aAAa,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACzE,OAAO,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACnE,cAAc,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IAC1E,oBAAoB,EAAE,iBAAiB,CACrC,mBAAmB,GAAG,gBAAgB,CACvC,CAAC;IACF,WAAW,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACvE,YAAY,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACxE,gBAAgB,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IAC5E,iBAAiB,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IAC7E,iBAAiB,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IAC7E,SAAS,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACrE,OAAO,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACnE,aAAa,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACzE,gBAAgB,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IAC5E,WAAW,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IACvE,qBAAqB,EAAE,iBAAiB,CACtC,mBAAmB,GAAG,gBAAgB,CACvC,CAAC;IACF,iBAAiB,EAAE,iBAAiB,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,CAAC;IAC7E,oBAAoB,EAAE,iBAAiB,CACrC,mBAAmB,GAAG,gBAAgB,CACvC,CAAC;IACF,mBAAmB,EAAE,iBAAiB,CACpC,mBAAmB,GAAG,gBAAgB,CACvC,CAAC;CACH;AAED;;;;;;;GAOG;AACH,qBAAa,6BAA6B,CACxC,GAAG,SAAS,UAAU,GAAG,oBAAoB,CAC7C,SAAQ,cAAc,CACtB,GAAG,EACH,yBAAyB,EACzB,mBAAmB,EACnB,gBAAgB,CACjB;IACC,OAAO,CAAC,iBAAiB,CAAmC;IAC5D,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,kBAAkB,CAAoC;gBAElD,WAAW,EAAE,uBAAuB,CAAC,GAAG,CAAC;IAI9C,oBAAoB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAIvD,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAIrD,qBAAqB,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAIhE,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,kBAAkB;IA4B1B,OAAO,CAAC,sBAAsB;IAS9B,SAAS,CAAC,oBAAoB,IAAI,IAAI;YA4YxB,gBAAgB;YAkChB,kBAAkB;YAoClB,gBAAgB;YA0ChB,gBAAgB;YAoBhB,gBAAgB;YAyBhB,mBAAmB;YA6BnB,oBAAoB;YA+BpB,mBAAmB;YAwBnB,aAAa;YAwBb,oBAAoB;YAiCpB,0BAA0B;YAwC1B,iBAAiB;YA4BjB,kBAAkB;YA8BlB,sBAAsB;YAwBtB,uBAAuB;YAsBvB,uBAAuB;YAwCvB,eAAe;YAyBf,aAAa;YAuBb,mBAAmB;YAyBnB,sBAAsB;YA4BtB,iBAAiB;YA8CjB,2BAA2B;YA6B3B,uBAAuB;YAmCvB,0BAA0B;YA0B1B,yBAAyB;CAyBxC"}