@brightchain/brightchain-api-lib 0.25.0 → 0.26.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 (116) hide show
  1. package/package.json +4 -3
  2. package/src/lib/application.d.ts +3 -14
  3. package/src/lib/application.d.ts.map +1 -1
  4. package/src/lib/application.js +89 -34
  5. package/src/lib/application.js.map +1 -1
  6. package/src/lib/databaseInit.d.ts +7 -11
  7. package/src/lib/databaseInit.d.ts.map +1 -1
  8. package/src/lib/databaseInit.js +41 -107
  9. package/src/lib/databaseInit.js.map +1 -1
  10. package/src/lib/datastore/block-document-store-factory.d.ts +3 -0
  11. package/src/lib/datastore/block-document-store-factory.d.ts.map +1 -1
  12. package/src/lib/datastore/block-document-store-factory.js +15 -18
  13. package/src/lib/datastore/block-document-store-factory.js.map +1 -1
  14. package/src/lib/datastore/block-document-store.d.ts +2 -191
  15. package/src/lib/datastore/block-document-store.d.ts.map +1 -1
  16. package/src/lib/datastore/block-document-store.js +4 -628
  17. package/src/lib/datastore/block-document-store.js.map +1 -1
  18. package/src/lib/datastore/document-store.d.ts +1 -62
  19. package/src/lib/datastore/document-store.d.ts.map +1 -1
  20. package/src/lib/datastore/memory-document-store.d.ts +1 -8
  21. package/src/lib/datastore/memory-document-store.d.ts.map +1 -1
  22. package/src/lib/datastore/memory-document-store.js +3 -214
  23. package/src/lib/datastore/memory-document-store.js.map +1 -1
  24. package/src/lib/environment.d.ts +4 -47
  25. package/src/lib/environment.d.ts.map +1 -1
  26. package/src/lib/environment.js +2 -136
  27. package/src/lib/environment.js.map +1 -1
  28. package/src/lib/interfaces/environment.d.ts +3 -25
  29. package/src/lib/interfaces/environment.d.ts.map +1 -1
  30. package/src/lib/middleware/index.d.ts +1 -1
  31. package/src/lib/middleware/index.d.ts.map +1 -1
  32. package/src/lib/middleware/index.js +3 -2
  33. package/src/lib/middleware/index.js.map +1 -1
  34. package/src/lib/middleware/validateBody.d.ts +1 -12
  35. package/src/lib/middleware/validateBody.d.ts.map +1 -1
  36. package/src/lib/middleware/validateBody.js +4 -32
  37. package/src/lib/middleware/validateBody.js.map +1 -1
  38. package/src/lib/middlewares.d.ts.map +1 -1
  39. package/src/lib/middlewares.js +7 -1
  40. package/src/lib/middlewares.js.map +1 -1
  41. package/src/lib/plugins/brightchain-database-plugin.d.ts +27 -79
  42. package/src/lib/plugins/brightchain-database-plugin.d.ts.map +1 -1
  43. package/src/lib/plugins/brightchain-database-plugin.js +27 -97
  44. package/src/lib/plugins/brightchain-database-plugin.js.map +1 -1
  45. package/src/lib/services/emailGateway/antiSpamFilter.d.ts +229 -0
  46. package/src/lib/services/emailGateway/antiSpamFilter.d.ts.map +1 -0
  47. package/src/lib/services/emailGateway/antiSpamFilter.js +325 -0
  48. package/src/lib/services/emailGateway/antiSpamFilter.js.map +1 -0
  49. package/src/lib/services/emailGateway/bounceProcessor.d.ts +171 -0
  50. package/src/lib/services/emailGateway/bounceProcessor.d.ts.map +1 -0
  51. package/src/lib/services/emailGateway/bounceProcessor.js +378 -0
  52. package/src/lib/services/emailGateway/bounceProcessor.js.map +1 -0
  53. package/src/lib/services/emailGateway/emailAuthVerifier.d.ts +99 -0
  54. package/src/lib/services/emailGateway/emailAuthVerifier.d.ts.map +1 -0
  55. package/src/lib/services/emailGateway/emailAuthVerifier.js +202 -0
  56. package/src/lib/services/emailGateway/emailAuthVerifier.js.map +1 -0
  57. package/src/lib/services/emailGateway/emailGatewayConfig.d.ts +73 -0
  58. package/src/lib/services/emailGateway/emailGatewayConfig.d.ts.map +1 -0
  59. package/src/lib/services/emailGateway/emailGatewayConfig.js +107 -0
  60. package/src/lib/services/emailGateway/emailGatewayConfig.js.map +1 -0
  61. package/src/lib/services/emailGateway/emailGatewayService.d.ts +152 -0
  62. package/src/lib/services/emailGateway/emailGatewayService.d.ts.map +1 -0
  63. package/src/lib/services/emailGateway/emailGatewayService.js +201 -0
  64. package/src/lib/services/emailGateway/emailGatewayService.js.map +1 -0
  65. package/src/lib/services/emailGateway/gatewayObservability.d.ts +123 -0
  66. package/src/lib/services/emailGateway/gatewayObservability.d.ts.map +1 -0
  67. package/src/lib/services/emailGateway/gatewayObservability.js +186 -0
  68. package/src/lib/services/emailGateway/gatewayObservability.js.map +1 -0
  69. package/src/lib/services/emailGateway/inboundProcessor.d.ts +113 -0
  70. package/src/lib/services/emailGateway/inboundProcessor.d.ts.map +1 -0
  71. package/src/lib/services/emailGateway/inboundProcessor.js +298 -0
  72. package/src/lib/services/emailGateway/inboundProcessor.js.map +1 -0
  73. package/src/lib/services/emailGateway/index.d.ts +23 -0
  74. package/src/lib/services/emailGateway/index.d.ts.map +1 -0
  75. package/src/lib/services/emailGateway/index.js +26 -0
  76. package/src/lib/services/emailGateway/index.js.map +1 -0
  77. package/src/lib/services/emailGateway/outboundDeliveryWorker.d.ts +111 -0
  78. package/src/lib/services/emailGateway/outboundDeliveryWorker.d.ts.map +1 -0
  79. package/src/lib/services/emailGateway/outboundDeliveryWorker.js +97 -0
  80. package/src/lib/services/emailGateway/outboundDeliveryWorker.js.map +1 -0
  81. package/src/lib/services/emailGateway/outboundQueue.d.ts +135 -0
  82. package/src/lib/services/emailGateway/outboundQueue.d.ts.map +1 -0
  83. package/src/lib/services/emailGateway/outboundQueue.js +227 -0
  84. package/src/lib/services/emailGateway/outboundQueue.js.map +1 -0
  85. package/src/lib/services/emailGateway/outboundQueueStore.d.ts +110 -0
  86. package/src/lib/services/emailGateway/outboundQueueStore.d.ts.map +1 -0
  87. package/src/lib/services/emailGateway/outboundQueueStore.js +131 -0
  88. package/src/lib/services/emailGateway/outboundQueueStore.js.map +1 -0
  89. package/src/lib/services/emailGateway/recipientLookupService.d.ts +135 -0
  90. package/src/lib/services/emailGateway/recipientLookupService.d.ts.map +1 -0
  91. package/src/lib/services/emailGateway/recipientLookupService.js +294 -0
  92. package/src/lib/services/emailGateway/recipientLookupService.js.map +1 -0
  93. package/src/lib/services/emailGateway/retryBackoff.d.ts +79 -0
  94. package/src/lib/services/emailGateway/retryBackoff.d.ts.map +1 -0
  95. package/src/lib/services/emailGateway/retryBackoff.js +77 -0
  96. package/src/lib/services/emailGateway/retryBackoff.js.map +1 -0
  97. package/src/lib/services/index.d.ts +1 -0
  98. package/src/lib/services/index.d.ts.map +1 -1
  99. package/src/lib/services/index.js +1 -0
  100. package/src/lib/services/index.js.map +1 -1
  101. package/src/lib/services/quorumDatabaseAdapter.d.ts +7 -1
  102. package/src/lib/services/quorumDatabaseAdapter.d.ts.map +1 -1
  103. package/src/lib/services/quorumDatabaseAdapter.js +83 -0
  104. package/src/lib/services/quorumDatabaseAdapter.js.map +1 -1
  105. package/src/lib/services/sessionAdapter.d.ts +2 -61
  106. package/src/lib/services/sessionAdapter.d.ts.map +1 -1
  107. package/src/lib/services/sessionAdapter.js +2 -102
  108. package/src/lib/services/sessionAdapter.js.map +1 -1
  109. package/src/lib/shared-types.d.ts +7 -15
  110. package/src/lib/shared-types.d.ts.map +1 -1
  111. package/src/lib/types/backend-id.d.ts +1 -2
  112. package/src/lib/types/backend-id.d.ts.map +1 -1
  113. package/src/lib/validation/userValidation.d.ts +2 -43
  114. package/src/lib/validation/userValidation.d.ts.map +1 -1
  115. package/src/lib/validation/userValidation.js +6 -144
  116. package/src/lib/validation/userValidation.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"quorumDatabaseAdapter.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/quorumDatabaseAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quorumDatabaseAdapter.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/quorumDatabaseAdapter.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ const COLLECTION_AUDIT_LOG = 'audit_log';
24
24
  const COLLECTION_REDISTRIBUTION_JOURNAL = 'redistribution_journal';
25
25
  const COLLECTION_STATUTE_CONFIG = 'statute_config';
26
26
  const COLLECTION_OPERATIONAL_STATE = 'operational_state';
27
+ const COLLECTION_BAN_RECORDS = 'ban_records';
27
28
  /** Dedicated pool ID for quorum data isolation */
28
29
  exports.QUORUM_SYSTEM_POOL_ID = 'quorum-system';
29
30
  // ─── Serialization Helpers ──────────────────────────────────────────────────
@@ -735,6 +736,88 @@ class QuorumDatabaseAdapter {
735
736
  return false;
736
737
  }
737
738
  }
739
+ // === Ban Records ===
740
+ async saveBanRecord(record) {
741
+ const col = this.db.collection(COLLECTION_BAN_RECORDS);
742
+ const memberId = this.idProvider.idToString(record.memberId);
743
+ const data = {
744
+ memberId: memberId,
745
+ reason: record.reason,
746
+ proposalId: this.idProvider.idToString(record.proposalId),
747
+ epoch: record.epoch,
748
+ bannedAt: record.bannedAt.toISOString(),
749
+ evidenceBlockIds: record.evidenceBlockIds,
750
+ approvalSignatures: record.approvalSignatures.map((sig) => ({
751
+ memberId: this.idProvider.idToString(sig.memberId),
752
+ signature: serializeUint8Array(sig.signature),
753
+ })),
754
+ requiredSignatures: record.requiredSignatures,
755
+ };
756
+ const existing = await col.findOne({ memberId });
757
+ if (existing) {
758
+ await col.updateOne({ memberId }, { $set: { data } });
759
+ }
760
+ else {
761
+ await col.insertOne({ memberId, data });
762
+ }
763
+ }
764
+ async deleteBanRecord(memberId) {
765
+ const col = this.db.collection(COLLECTION_BAN_RECORDS);
766
+ const id = this.idProvider.idToString(memberId);
767
+ await col.deleteOne({ memberId: id });
768
+ }
769
+ async getBanRecord(memberId) {
770
+ const col = this.db.collection(COLLECTION_BAN_RECORDS);
771
+ const id = this.idProvider.idToString(memberId);
772
+ const doc = await col.findOne({ memberId: id });
773
+ if (!doc)
774
+ return null;
775
+ return this.deserializeBanRecord(doc.data);
776
+ }
777
+ async getAllBanRecords() {
778
+ const col = this.db.collection(COLLECTION_BAN_RECORDS);
779
+ const docs = await col.find({}).toArray();
780
+ return docs.map((doc) => this.deserializeBanRecord(doc.data));
781
+ }
782
+ async getMemberAdmissionProposerId(memberId) {
783
+ // Look up the ADD_MEMBER proposal that admitted this member.
784
+ // If no such proposal exists, the member is a founder.
785
+ const col = this.db.collection(COLLECTION_PROPOSALS);
786
+ const memberIdStr = this.idProvider.idToString(memberId);
787
+ const docs = await col
788
+ .find({})
789
+ .toArray();
790
+ for (const doc of docs) {
791
+ const data = doc.data;
792
+ if (data['actionType'] === 'ADD_MEMBER' &&
793
+ data['status'] === 'APPROVED') {
794
+ const payload = data['actionPayload'];
795
+ if (payload && payload['targetMemberId'] === memberIdStr) {
796
+ const proposerId = data['proposerMemberId'];
797
+ if (proposerId) {
798
+ return this.idProvider.idFromString(proposerId);
799
+ }
800
+ }
801
+ }
802
+ }
803
+ return null;
804
+ }
805
+ deserializeBanRecord(data) {
806
+ const sigs = data['approvalSignatures'] ?? [];
807
+ return {
808
+ memberId: this.idProvider.idFromString(data['memberId']),
809
+ reason: data['reason'],
810
+ proposalId: this.idProvider.idFromString(data['proposalId']),
811
+ epoch: data['epoch'],
812
+ bannedAt: new Date(data['bannedAt']),
813
+ evidenceBlockIds: data['evidenceBlockIds'],
814
+ approvalSignatures: sigs.map((sig) => ({
815
+ memberId: this.idProvider.idFromString(sig.memberId),
816
+ signature: deserializeUint8Array(sig.signature),
817
+ })),
818
+ requiredSignatures: data['requiredSignatures'],
819
+ };
820
+ }
738
821
  }
739
822
  exports.QuorumDatabaseAdapter = QuorumDatabaseAdapter;
740
823
  //# sourceMappingURL=quorumDatabaseAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"quorumDatabaseAdapter.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/quorumDatabaseAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quorumDatabaseAdapter.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/quorumDatabaseAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,62 +1,3 @@
1
- import type { BrightDb } from '@brightchain/db';
2
- /**
3
- * Shape of a session document stored in BrightDB.
4
- * Exported so consumers (tests, controllers) can reference the type.
5
- */
6
- export interface ISessionDocument {
7
- /** UUID v4 identifying this session. */
8
- sessionId: string;
9
- /** Hex-encoded member ID. */
10
- memberId: string;
11
- /** SHA-256 hex digest of the JWT token. */
12
- tokenHash: string;
13
- /** Epoch-ms when the session was created. */
14
- createdAt: number;
15
- /** Epoch-ms when the session expires. */
16
- expiresAt: number;
17
- }
18
- /**
19
- * Manages user sessions backed by a BrightDB `sessions` collection.
20
- *
21
- * Token hashes use SHA-256 (not bcrypt) so that `validateToken` can
22
- * query by hash without a per-row compare.
23
- */
24
- export declare class BrightChainSessionAdapter {
25
- private readonly db;
26
- constructor(db: BrightDb);
27
- /**
28
- * Create a new session for the given member.
29
- *
30
- * @param memberId Hex string of the member's ID.
31
- * @param token The raw JWT token (will be SHA-256 hashed for storage).
32
- * @param ttlMs Time-to-live in milliseconds.
33
- * @returns The generated UUID session ID.
34
- */
35
- createSession(memberId: string, token: string, ttlMs: number): Promise<string>;
36
- /**
37
- * Retrieve a session by its ID.
38
- *
39
- * @returns The session document, or `null` if not found or expired.
40
- */
41
- getSession(sessionId: string): Promise<ISessionDocument | null>;
42
- /**
43
- * Validate a raw JWT token against stored sessions.
44
- *
45
- * Hashes the token with SHA-256, looks up the matching session,
46
- * and checks expiration.
47
- *
48
- * @returns The session document, or `null` if invalid / expired / missing.
49
- */
50
- validateToken(token: string): Promise<ISessionDocument | null>;
51
- /**
52
- * Delete a session by its ID.
53
- */
54
- deleteSession(sessionId: string): Promise<void>;
55
- /**
56
- * Remove all expired sessions.
57
- *
58
- * @returns The number of sessions removed.
59
- */
60
- cleanExpired(): Promise<number>;
61
- }
1
+ export type { ISessionDocument } from '@brightchain/node-express-suite';
2
+ export { BrightChainSessionAdapter } from '@brightchain/node-express-suite';
62
3
  //# sourceMappingURL=sessionAdapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sessionAdapter.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/sessionAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,iBAAiB,CAAC;AAI9D;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;CACnB;AAmBD;;;;;GAKG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAW;gBAElB,EAAE,EAAE,QAAQ;IAIxB;;;;;;;OAOG;IACG,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC;IAkBlB;;;;OAIG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAQrE;;;;;;;OAOG;IACG,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IASpE;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrD;;;;OAIG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;CAQtC"}
1
+ {"version":3,"file":"sessionAdapter.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/sessionAdapter.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC"}
@@ -1,106 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BrightChainSessionAdapter = void 0;
4
- const crypto_1 = require("crypto");
5
- const COLLECTION_SESSIONS = 'sessions';
6
- /** Compute the SHA-256 hex digest of a string. */
7
- function sha256Hex(value) {
8
- return (0, crypto_1.createHash)('sha256').update(value).digest('hex');
9
- }
10
- /**
11
- * Manages user sessions backed by a BrightDB `sessions` collection.
12
- *
13
- * Token hashes use SHA-256 (not bcrypt) so that `validateToken` can
14
- * query by hash without a per-row compare.
15
- */
16
- class BrightChainSessionAdapter {
17
- db;
18
- constructor(db) {
19
- this.db = db;
20
- }
21
- /**
22
- * Create a new session for the given member.
23
- *
24
- * @param memberId Hex string of the member's ID.
25
- * @param token The raw JWT token (will be SHA-256 hashed for storage).
26
- * @param ttlMs Time-to-live in milliseconds.
27
- * @returns The generated UUID session ID.
28
- */
29
- async createSession(memberId, token, ttlMs) {
30
- const sessionId = (0, crypto_1.randomUUID)();
31
- const now = Date.now();
32
- const doc = {
33
- sessionId,
34
- memberId,
35
- tokenHash: sha256Hex(token),
36
- createdAt: now,
37
- expiresAt: now + ttlMs,
38
- };
39
- const col = this.db.collection(COLLECTION_SESSIONS);
40
- await col.insertOne(doc);
41
- return sessionId;
42
- }
43
- /**
44
- * Retrieve a session by its ID.
45
- *
46
- * @returns The session document, or `null` if not found or expired.
47
- */
48
- async getSession(sessionId) {
49
- const col = this.db.collection(COLLECTION_SESSIONS);
50
- const doc = await col.findOne({ sessionId });
51
- if (!doc)
52
- return null;
53
- if (doc.expiresAt < Date.now())
54
- return null;
55
- return toSessionDocument(doc);
56
- }
57
- /**
58
- * Validate a raw JWT token against stored sessions.
59
- *
60
- * Hashes the token with SHA-256, looks up the matching session,
61
- * and checks expiration.
62
- *
63
- * @returns The session document, or `null` if invalid / expired / missing.
64
- */
65
- async validateToken(token) {
66
- const tokenHash = sha256Hex(token);
67
- const col = this.db.collection(COLLECTION_SESSIONS);
68
- const doc = await col.findOne({ tokenHash });
69
- if (!doc)
70
- return null;
71
- if (doc.expiresAt < Date.now())
72
- return null;
73
- return toSessionDocument(doc);
74
- }
75
- /**
76
- * Delete a session by its ID.
77
- */
78
- async deleteSession(sessionId) {
79
- const col = this.db.collection(COLLECTION_SESSIONS);
80
- await col.deleteOne({ sessionId });
81
- }
82
- /**
83
- * Remove all expired sessions.
84
- *
85
- * @returns The number of sessions removed.
86
- */
87
- async cleanExpired() {
88
- const col = this.db.collection(COLLECTION_SESSIONS);
89
- const now = Date.now();
90
- // BrightDB's filter engine supports $lt on numeric fields.
91
- const result = await col.deleteMany({ expiresAt: { $lt: now } });
92
- return result.deletedCount;
93
- }
94
- }
95
- exports.BrightChainSessionAdapter = BrightChainSessionAdapter;
96
- /** Map a stored SessionDoc to the public ISessionDocument shape. */
97
- function toSessionDocument(doc) {
98
- return {
99
- sessionId: doc.sessionId,
100
- memberId: doc.memberId,
101
- tokenHash: doc.tokenHash,
102
- createdAt: doc.createdAt,
103
- expiresAt: doc.expiresAt,
104
- };
105
- }
4
+ var node_express_suite_1 = require("@brightchain/node-express-suite");
5
+ Object.defineProperty(exports, "BrightChainSessionAdapter", { enumerable: true, get: function () { return node_express_suite_1.BrightChainSessionAdapter; } });
106
6
  //# sourceMappingURL=sessionAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sessionAdapter.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/sessionAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessionAdapter.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/services/sessionAdapter.ts"],"names":[],"mappings":";;;AAEA,sEAA4E;AAAnE,+HAAA,yBAAyB,OAAA"}
@@ -1,32 +1,24 @@
1
1
  import { ModelName } from './enumerations/model-name';
2
2
  import { SchemaCollection } from './enumerations/schema-collection';
3
- export type { GuidV4Buffer, SignatureBuffer, } from '@digitaldefiance/node-ecies-lib';
4
- export type ClientSession = any;
5
- import type { DefaultBackendIdType as DefaultBackendIdType_ } from './types/backend-id';
6
- export type DefaultBackendIdType = DefaultBackendIdType_;
3
+ export type { GuidV4Buffer, SignatureBuffer, ClientSession, DefaultBackendIdType, } from '@brightchain/node-express-suite';
4
+ import type { IBlockStorageSchema as IBlockStorageSchemaBase, IBlockStorageSchemaEntry as IBlockStorageSchemaEntryBase } from '@brightchain/node-express-suite';
7
5
  /**
8
- * Block storage schema definition (replaces Mongoose Schema)
6
+ * Block storage schema definition narrowed with domain-specific ModelName enum.
9
7
  */
10
- export interface IBlockStorageSchema<T> {
8
+ export interface IBlockStorageSchema<T> extends Omit<IBlockStorageSchemaBase<T>, 'name'> {
11
9
  name: ModelName;
12
- fields: Record<string, unknown>;
13
- indexes?: Array<{
14
- fields: Record<string, number | undefined>;
15
- options?: Record<string, unknown>;
16
- }>;
17
- validate?: (doc: Partial<T>) => void;
18
10
  }
19
11
  /**
20
- * Block storage model definition (replaces Mongoose Model)
12
+ * Block storage model definition narrowed with domain-specific ModelName enum.
21
13
  */
22
14
  export interface IBlockStorageModel<T> {
23
15
  readonly modelName: ModelName;
24
16
  readonly schema: IBlockStorageSchema<T>;
25
17
  }
26
18
  /**
27
- * Block storage schema entry (replaces ISchema from node-express-suite)
19
+ * Block storage schema entry narrowed with domain-specific enums.
28
20
  */
29
- export interface IBlockStorageSchemaEntry<T> {
21
+ export interface IBlockStorageSchemaEntry<T> extends Omit<IBlockStorageSchemaEntryBase<T>, 'collection' | 'model' | 'modelName' | 'schema'> {
30
22
  collection: SchemaCollection;
31
23
  model: IBlockStorageModel<T>;
32
24
  modelName: ModelName;
@@ -1 +1 @@
1
- {"version":3,"file":"shared-types.d.ts","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/shared-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAGpE,YAAY,EACV,YAAY,EACZ,eAAe,GAChB,MAAM,iCAAiC,CAAC;AAIzC,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC;AAKhC,OAAO,KAAK,EAAE,oBAAoB,IAAI,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACxF,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;QAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC,UAAU,EAAE,gBAAgB,CAAC;IAC7B,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAChC;AAED;;GAEG;AAEH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"shared-types.d.ts","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/shared-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAGpE,YAAY,EACV,YAAY,EACZ,eAAe,EACf,aAAa,EACb,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EACV,mBAAmB,IAAI,uBAAuB,EAE9C,wBAAwB,IAAI,4BAA4B,EACzD,MAAM,iCAAiC,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC,CAAE,SAAQ,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IACtF,IAAI,EAAE,SAAS,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB,CAAC,CAAC,CACzC,SAAQ,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC9F,UAAU,EAAE,gBAAgB,CAAC;IAC7B,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAChC;AAED;;GAEG;AAEH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC"}
@@ -1,3 +1,2 @@
1
- import { GuidV4Buffer } from '@digitaldefiance/node-ecies-lib';
2
- export type DefaultBackendIdType = GuidV4Buffer;
1
+ export type { DefaultBackendIdType } from '@brightchain/node-express-suite';
3
2
  //# sourceMappingURL=backend-id.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"backend-id.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/types/backend-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC"}
1
+ {"version":3,"file":"backend-id.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/types/backend-id.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC"}
@@ -1,44 +1,3 @@
1
- /**
2
- * Validation utilities for user endpoint request bodies.
3
- *
4
- * Requirements: 9.1, 9.2, 9.3, 9.4
5
- */
6
- export interface IValidationError {
7
- field: string;
8
- message: string;
9
- }
10
- export interface IValidationResult {
11
- valid: boolean;
12
- errors: IValidationError[];
13
- }
14
- /**
15
- * Validates a registration request body.
16
- * - username: non-empty, alphanumeric/hyphens/underscores only
17
- * - email: valid email format
18
- * - password: minimum 8 characters
19
- */
20
- export declare function validateRegistration(body: unknown): IValidationResult;
21
- /**
22
- * Validates a login request body.
23
- * - username: non-empty
24
- * - password: non-empty
25
- */
26
- export declare function validateLogin(body: unknown): IValidationResult;
27
- /**
28
- * Validates a password change request body.
29
- * - currentPassword: non-empty string
30
- * - newPassword: minimum 8 characters
31
- *
32
- * Requirements: 1.3, 5.7
33
- */
34
- export declare function validatePasswordChange(body: unknown): IValidationResult;
35
- /**
36
- * Validates a mnemonic recovery request body.
37
- * - email: valid email format
38
- * - mnemonic: non-empty string
39
- * - newPassword (optional): if present, minimum 8 characters
40
- *
41
- * Requirements: 5.7
42
- */
43
- export declare function validateRecovery(body: unknown): IValidationResult;
1
+ export type { IValidationError, IValidationResult } from '@brightchain/node-express-suite';
2
+ export { validateRegistration, validateLogin, validatePasswordChange, validateRecovery, } from '@brightchain/node-express-suite';
44
3
  //# sourceMappingURL=userValidation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"userValidation.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/validation/userValidation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,CAsCrE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,CAoB9D;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,CA+BvE;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,CAqCjE"}
1
+ {"version":3,"file":"userValidation.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/validation/userValidation.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,iCAAiC,CAAC"}