@bsv/sdk 1.3.32 → 1.3.34

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 (45) hide show
  1. package/dist/cjs/package.json +1 -1
  2. package/dist/cjs/src/auth/certificates/MasterCertificate.js +25 -15
  3. package/dist/cjs/src/auth/certificates/MasterCertificate.js.map +1 -1
  4. package/dist/cjs/src/auth/certificates/VerifiableCertificate.js +6 -2
  5. package/dist/cjs/src/auth/certificates/VerifiableCertificate.js.map +1 -1
  6. package/dist/cjs/src/overlay-tools/LookupResolver.js +22 -23
  7. package/dist/cjs/src/overlay-tools/LookupResolver.js.map +1 -1
  8. package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js +17 -15
  9. package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
  10. package/dist/cjs/src/overlay-tools/index.js +8 -2
  11. package/dist/cjs/src/overlay-tools/index.js.map +1 -1
  12. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  13. package/dist/esm/src/auth/certificates/MasterCertificate.js +25 -15
  14. package/dist/esm/src/auth/certificates/MasterCertificate.js.map +1 -1
  15. package/dist/esm/src/auth/certificates/VerifiableCertificate.js +6 -2
  16. package/dist/esm/src/auth/certificates/VerifiableCertificate.js.map +1 -1
  17. package/dist/esm/src/overlay-tools/LookupResolver.js +22 -22
  18. package/dist/esm/src/overlay-tools/LookupResolver.js.map +1 -1
  19. package/dist/esm/src/overlay-tools/SHIPBroadcaster.js +17 -14
  20. package/dist/esm/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
  21. package/dist/esm/src/overlay-tools/index.js +4 -0
  22. package/dist/esm/src/overlay-tools/index.js.map +1 -1
  23. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  24. package/dist/types/src/auth/certificates/MasterCertificate.d.ts +10 -4
  25. package/dist/types/src/auth/certificates/MasterCertificate.d.ts.map +1 -1
  26. package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts +3 -1
  27. package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts.map +1 -1
  28. package/dist/types/src/overlay-tools/LookupResolver.d.ts +12 -1
  29. package/dist/types/src/overlay-tools/LookupResolver.d.ts.map +1 -1
  30. package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts +13 -4
  31. package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts.map +1 -1
  32. package/dist/types/src/overlay-tools/index.d.ts +2 -0
  33. package/dist/types/src/overlay-tools/index.d.ts.map +1 -1
  34. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  35. package/dist/umd/bundle.js +1 -1
  36. package/docs/auth.md +25 -9
  37. package/docs/overlay-tools.md +58 -14
  38. package/package.json +1 -1
  39. package/src/auth/certificates/MasterCertificate.ts +37 -13
  40. package/src/auth/certificates/VerifiableCertificate.ts +8 -2
  41. package/src/overlay-tools/LookupResolver.ts +30 -30
  42. package/src/overlay-tools/SHIPBroadcaster.ts +25 -21
  43. package/src/overlay-tools/__tests/LookupResolver.test.ts +3 -3
  44. package/src/overlay-tools/__tests/SHIPBroadcaster.test.ts +3 -3
  45. package/src/overlay-tools/index.ts +5 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsv/sdk",
3
- "version": "1.3.32",
3
+ "version": "1.3.34",
4
4
  "type": "commonjs",
5
5
  "description": "BSV Blockchain Software Development Kit",
6
6
  "files": [
@@ -33,13 +33,15 @@ class MasterCertificate extends Certificate_js_1.default {
33
33
  * @param {ProtoWallet} creatorWallet - The wallet of the creator responsible for encrypting the fields.
34
34
  * @param {WalletCounterparty} certifierOrSubject - The certifier or subject who will validate the certificate fields.
35
35
  * @param {Record<CertificateFieldNameUnder50Bytes, string>} fields - A record of certificate field names (under 50 bytes) mapped to their values.
36
+ * @param {BooleanDefaultFalse} [privileged] - Whether this is a privileged request.
37
+ * @param {DescriptionString5to50Bytes} [privilegedReason] - Reason provided for privileged access, required if this is a privileged operation. *
36
38
  * @returns {Promise<CreateCertificateFieldsResult>} A promise resolving to an object containing:
37
39
  * - `certificateFields` {Record<CertificateFieldNameUnder50Bytes, Base64String>}:
38
40
  * The encrypted certificate fields.
39
41
  * - `masterKeyring` {Record<CertificateFieldNameUnder50Bytes, Base64String>}:
40
42
  * The master keyring containing encrypted revelation keys for each field.
41
43
  */
42
- static async createCertificateFields(creatorWallet, certifierOrSubject, fields) {
44
+ static async createCertificateFields(creatorWallet, certifierOrSubject, fields, privileged, privilegedReason) {
43
45
  const certificateFields = {};
44
46
  const masterKeyring = {};
45
47
  for (const [fieldName, fieldValue] of Object.entries(fields)) {
@@ -49,7 +51,9 @@ class MasterCertificate extends Certificate_js_1.default {
49
51
  const { ciphertext: encryptedFieldRevelationKey } = await creatorWallet.encrypt({
50
52
  plaintext: fieldSymmetricKey.toArray(),
51
53
  ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(fieldName),
52
- counterparty: certifierOrSubject
54
+ counterparty: certifierOrSubject,
55
+ privileged,
56
+ privilegedReason
53
57
  });
54
58
  masterKeyring[fieldName] = mod_js_1.Utils.toBase64(encryptedFieldRevelationKey);
55
59
  }
@@ -69,12 +73,14 @@ class MasterCertificate extends Certificate_js_1.default {
69
73
  * @param {string[]} fieldsToReveal - An array of field names to be revealed to the verifier. Must be a subset of the certificate's fields.
70
74
  * @param {string} [originator] - Optional originator identifier, used if additional context is needed for decryption and encryption operations.
71
75
  * @returns {Promise<Record<CertificateFieldNameUnder50Bytes, string>>} - A keyring mapping field names to encrypted field revelation keys, allowing the verifier to decrypt specified fields.
76
+ * @param {BooleanDefaultFalse} [privileged] - Whether this is a privileged request.
77
+ * @param {DescriptionString5to50Bytes} [privilegedReason] - Reason provided for privileged access, required if this is a privileged operation. *
72
78
  * @throws {Error} Throws an error if:
73
79
  * - fieldsToReveal is not an array of strings.
74
80
  * - A field in `fieldsToReveal` does not exist in the certificate.
75
81
  * - The decrypted master field key fails to decrypt the corresponding field (indicating an invalid key).
76
82
  */
77
- static async createKeyringForVerifier(subjectWallet, certifier, verifier, fields, fieldsToReveal, masterKeyring, serialNumber) {
83
+ static async createKeyringForVerifier(subjectWallet, certifier, verifier, fields, fieldsToReveal, masterKeyring, serialNumber, privileged, privilegedReason) {
78
84
  if (!Array.isArray(fieldsToReveal)) {
79
85
  throw new Error('fieldsToReveal must be an array of strings');
80
86
  }
@@ -85,12 +91,14 @@ class MasterCertificate extends Certificate_js_1.default {
85
91
  throw new Error(`Fields to reveal must be a subset of the certificate fields. Missing the "${fieldName}" field.`);
86
92
  }
87
93
  // Decrypt the master field key and verify that derived key actually decrypts requested field
88
- const masterFieldKey = (await this.decryptField(subjectWallet, masterKeyring, fieldName, fields[fieldName], certifier)).fieldRevelationKey;
94
+ const masterFieldKey = (await this.decryptField(subjectWallet, masterKeyring, fieldName, fields[fieldName], certifier, privileged, privilegedReason)).fieldRevelationKey;
89
95
  // Encrypt derived fieldRevelationKey for verifier
90
96
  const { ciphertext: encryptedFieldRevelationKey } = await subjectWallet.encrypt({
91
97
  plaintext: masterFieldKey,
92
98
  ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(fieldName, serialNumber),
93
- counterparty: verifier
99
+ counterparty: verifier,
100
+ privileged,
101
+ privilegedReason
94
102
  });
95
103
  // Add encryptedFieldRevelationKey to fieldRevelationKeyring
96
104
  fieldRevelationKeyring[fieldName] = mod_js_1.Utils.toBase64(encryptedFieldRevelationKey);
@@ -120,17 +128,15 @@ class MasterCertificate extends Certificate_js_1.default {
120
128
  static async issueCertificateForSubject(certifierWallet, subject, fields, certificateType, getRevocationOutpoint = async (_serial) => {
121
129
  void _serial; // Explicitly acknowledge unused parameter
122
130
  return 'Certificate revocation not tracked.';
123
- }, serialNumber // ✅ Optional parameter
124
- ) {
131
+ }, serialNumber) {
125
132
  // 1. Generate a random serialNumber if not provided
126
- const finalSerialNumber = serialNumber !== null && serialNumber !== void 0 ? serialNumber : mod_js_1.Utils.toBase64((0, mod_js_1.Random)(32)); // ✅ Explicit nullish check
133
+ const finalSerialNumber = serialNumber !== null && serialNumber !== void 0 ? serialNumber : mod_js_1.Utils.toBase64((0, mod_js_1.Random)(32));
127
134
  // 2. Create encrypted certificate fields and associated master keyring
128
135
  const { certificateFields, masterKeyring } = await this.createCertificateFields(certifierWallet, subject, fields);
129
136
  // 3. Obtain a revocation outpoint
130
- const revocationOutpoint = await getRevocationOutpoint(finalSerialNumber); // ✅ Use `finalSerialNumber`
137
+ const revocationOutpoint = await getRevocationOutpoint(finalSerialNumber);
131
138
  // 4. Create new MasterCertificate instance
132
- const certificate = new MasterCertificate(certificateType, finalSerialNumber, // Use `finalSerialNumber`
133
- subject, (await certifierWallet.getPublicKey({ identityKey: true })).publicKey, revocationOutpoint, certificateFields, masterKeyring);
139
+ const certificate = new MasterCertificate(certificateType, finalSerialNumber, subject, (await certifierWallet.getPublicKey({ identityKey: true })).publicKey, revocationOutpoint, certificateFields, masterKeyring);
134
140
  // 5. Sign and return the new MasterCertificate certifying the subject.
135
141
  await certificate.sign(certifierWallet);
136
142
  return certificate;
@@ -148,11 +154,13 @@ class MasterCertificate extends Certificate_js_1.default {
148
154
  * @param {Record<CertificateFieldNameUnder50Bytes, Base64String>} masterKeyring - A record containing encrypted keys for each field.
149
155
  * @param {Record<CertificateFieldNameUnder50Bytes, Base64String>} fields - A record of encrypted field names and their values.
150
156
  * @param {WalletCounterparty} counterparty - The counterparty responsible for creating or signing the certificate. For self-signed certificates, use 'self'.
157
+ * @param {BooleanDefaultFalse} [privileged] - Whether this is a privileged request.
158
+ * @param {DescriptionString5to50Bytes} [privilegedReason] - Reason provided for privileged access, required if this is a privileged operation.
151
159
  * @returns {Promise<Record<CertificateFieldNameUnder50Bytes, string>>} A promise resolving to a record of field names and their decrypted values in plaintext.
152
160
  *
153
161
  * @throws {Error} Throws an error if the `masterKeyring` is invalid or if decryption fails for any field.
154
162
  */
155
- static async decryptFields(subjectOrCertifierWallet, masterKeyring, fields, counterparty) {
163
+ static async decryptFields(subjectOrCertifierWallet, masterKeyring, fields, counterparty, privileged, privilegedReason) {
156
164
  if (masterKeyring == null || Object.keys(masterKeyring).length === 0) {
157
165
  throw new Error('A MasterCertificate must have a valid masterKeyring!');
158
166
  }
@@ -160,7 +168,7 @@ class MasterCertificate extends Certificate_js_1.default {
160
168
  const decryptedFields = {};
161
169
  // Note: we want to iterate through all fields, not just masterKeyring keys/value pairs.
162
170
  for (const fieldName of Object.keys(fields)) {
163
- decryptedFields[fieldName] = (await this.decryptField(subjectOrCertifierWallet, masterKeyring, fieldName, fields[fieldName], counterparty)).decryptedFieldValue;
171
+ decryptedFields[fieldName] = (await this.decryptField(subjectOrCertifierWallet, masterKeyring, fieldName, fields[fieldName], counterparty, privileged, privilegedReason)).decryptedFieldValue;
164
172
  }
165
173
  return decryptedFields;
166
174
  }
@@ -168,7 +176,7 @@ class MasterCertificate extends Certificate_js_1.default {
168
176
  throw new Error('Failed to decrypt all master certificate fields.');
169
177
  }
170
178
  }
171
- static async decryptField(subjectOrCertifierWallet, masterKeyring, fieldName, fieldValue, counterparty) {
179
+ static async decryptField(subjectOrCertifierWallet, masterKeyring, fieldName, fieldValue, counterparty, privileged, privilegedReason) {
172
180
  if (masterKeyring == null || Object.keys(masterKeyring).length === 0) {
173
181
  throw new Error('A MasterCertificate must have a valid masterKeyring!');
174
182
  }
@@ -176,7 +184,9 @@ class MasterCertificate extends Certificate_js_1.default {
176
184
  const { plaintext: fieldRevelationKey } = await subjectOrCertifierWallet.decrypt({
177
185
  ciphertext: mod_js_1.Utils.toArray(masterKeyring[fieldName], 'base64'),
178
186
  ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(fieldName),
179
- counterparty
187
+ counterparty,
188
+ privileged,
189
+ privilegedReason
180
190
  });
181
191
  const decryptedFieldValue = new mod_js_1.SymmetricKey(fieldRevelationKey).decrypt(mod_js_1.Utils.toArray(fieldValue, 'base64'));
182
192
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"MasterCertificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/MasterCertificate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MasterCertificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/MasterCertificate.ts"],"names":[],"mappings":"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"}
@@ -20,9 +20,11 @@ class VerifiableCertificate extends Certificate_js_1.default {
20
20
  * Decrypts selectively revealed certificate fields using the provided keyring and verifier wallet
21
21
  * @param {ProtoWallet} verifierWallet - The wallet instance of the certificate's verifier, used to decrypt field keys.
22
22
  * @returns {Promise<Record<CertificateFieldNameUnder50Bytes, string>>} - A promise that resolves to an object where each key is a field name and each value is the decrypted field value as a string.
23
+ * @param {BooleanDefaultFalse} [privileged] - Whether this is a privileged request.
24
+ * @param {DescriptionString5to50Bytes} [privilegedReason] - Reason provided for privileged access, required if this is a privileged operation.
23
25
  * @throws {Error} Throws an error if any of the decryption operations fail, with a message indicating the failure context.
24
26
  */
25
- async decryptFields(verifierWallet) {
27
+ async decryptFields(verifierWallet, privileged, privilegedReason) {
26
28
  if (this.keyring == null || Object.keys(this.keyring).length === 0) { // ✅ Explicitly check null and empty object
27
29
  throw new Error('A keyring is required to decrypt certificate fields for the verifier.');
28
30
  }
@@ -32,7 +34,9 @@ class VerifiableCertificate extends Certificate_js_1.default {
32
34
  const { plaintext: fieldRevelationKey } = await verifierWallet.decrypt({
33
35
  ciphertext: mod_js_1.Utils.toArray(this.keyring[fieldName], 'base64'),
34
36
  ...Certificate_js_1.default.getCertificateFieldEncryptionDetails(fieldName, this.serialNumber),
35
- counterparty: this.subject
37
+ counterparty: this.subject,
38
+ privileged,
39
+ privilegedReason
36
40
  });
37
41
  const fieldValue = new mod_js_1.SymmetricKey(fieldRevelationKey).decrypt(mod_js_1.Utils.toArray(this.fields[fieldName], 'base64'));
38
42
  decryptedFields[fieldName] = mod_js_1.Utils.toUTF8(fieldValue);
@@ -1 +1 @@
1
- {"version":3,"file":"VerifiableCertificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/VerifiableCertificate.ts"],"names":[],"mappings":";;;;;;AAAA,4CASwB;AACxB,sEAA0C;AAE1C;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,wBAAW;IAYpD,YACE,IAAkB,EAClB,YAA0B,EAC1B,OAAkB,EAClB,SAAoB,EACpB,kBAAkC,EAClC,MAAwD,EACxD,OAAyD,EACzD,SAAqB,EACrB,eAAwE;QAExE,KAAK,CACH,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,SAAS,EACT,kBAAkB,EAClB,MAAM,EACN,SAAS,CACV,CAAA;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;IACxC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CACjB,cAA2B;QAE3B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,EAAE,2CAA2C;YAC/G,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAA;SACF;QAED,IAAI;YACF,MAAM,eAAe,GACnB,EAAE,CAAA;YACJ,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE;gBACpC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;oBACrE,UAAU,EAAE,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC;oBAC5D,GAAG,wBAAW,CAAC,oCAAoC,CACjD,SAAS,EACT,IAAI,CAAC,YAAY,CAClB;oBACD,YAAY,EAAE,IAAI,CAAC,OAAO;iBAC3B,CAAC,CAAA;gBAEF,MAAM,UAAU,GAAG,IAAI,qBAAY,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAC7D,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAChD,CAAA;gBACD,eAAe,CAAC,SAAS,CAAC,GAAG,cAAK,CAAC,MAAM,CAAC,UAAsB,CAAC,CAAA;aAClE;YACD,OAAO,eAAe,CAAA;SACvB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CACb,4EAA4E,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAErI,CAAA;SACF;IACH,CAAC;CACF;AA7ED,sDA6EC"}
1
+ {"version":3,"file":"VerifiableCertificate.js","sourceRoot":"","sources":["../../../../../src/auth/certificates/VerifiableCertificate.ts"],"names":[],"mappings":";;;;;;AAAA,4CASwB;AACxB,sEAA0C;AAE1C;;;GAGG;AACH,MAAa,qBAAsB,SAAQ,wBAAW;IAYpD,YACE,IAAkB,EAClB,YAA0B,EAC1B,OAAkB,EAClB,SAAoB,EACpB,kBAAkC,EAClC,MAAwD,EACxD,OAAyD,EACzD,SAAqB,EACrB,eAAwE;QAExE,KAAK,CACH,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,SAAS,EACT,kBAAkB,EAClB,MAAM,EACN,SAAS,CACV,CAAA;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CACjB,cAA2B,EAC3B,UAAoB,EACpB,gBAAyB;QAEzB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,EAAE,2CAA2C;YAC/G,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAA;SACF;QAED,IAAI;YACF,MAAM,eAAe,GACnB,EAAE,CAAA;YACJ,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE;gBACpC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC;oBACrE,UAAU,EAAE,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC;oBAC5D,GAAG,wBAAW,CAAC,oCAAoC,CACjD,SAAS,EACT,IAAI,CAAC,YAAY,CAClB;oBACD,YAAY,EAAE,IAAI,CAAC,OAAO;oBAC1B,UAAU;oBACV,gBAAgB;iBACjB,CAAC,CAAA;gBAEF,MAAM,UAAU,GAAG,IAAI,qBAAY,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAC7D,cAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAChD,CAAA;gBACD,eAAe,CAAC,SAAS,CAAC,GAAG,cAAK,CAAC,MAAM,CAAC,UAAsB,CAAC,CAAA;aAClE;YACD,OAAO,eAAe,CAAA;SACvB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CACb,4EAA4E,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAErI,CAAA;SACF;IACH,CAAC;CACF;AAnFD,sDAmFC"}
@@ -3,30 +3,32 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.HTTPSOverlayLookupFacilitator = exports.DEFAULT_SLAP_TRACKERS = void 0;
6
+ exports.HTTPSOverlayLookupFacilitator = exports.DEFAULT_TESTNET_SLAP_TRACKERS = exports.DEFAULT_SLAP_TRACKERS = void 0;
7
7
  const index_js_1 = require("../transaction/index.js");
8
8
  const OverlayAdminTokenTemplate_js_1 = __importDefault(require("./OverlayAdminTokenTemplate.js"));
9
9
  /** Default SLAP trackers */
10
10
  exports.DEFAULT_SLAP_TRACKERS = [
11
11
  // Babbage primary overlay service
12
- 'https://overlay.babbage.systems',
13
- // Babbage example overlay
14
- 'https://overlay-example.babbage.systems',
15
- // The Babbage office building
16
- 'https://office.babbage.systems'
12
+ 'https://users.bapp.dev'
17
13
  // NOTE: Other entities may submit pull requests to the library if they maintain SLAP overlay services.
18
14
  // Additional trackers run by different entities contribute to greater network resiliency.
19
15
  // It also generally doesn't hurt to have more trackers in this list.
20
16
  // DISCLAIMER:
21
17
  // Trackers known to host invalid or illegal records will be removed at the discretion of the BSV Association.
22
18
  ];
19
+ /** Default testnet SLAP trackers */
20
+ exports.DEFAULT_TESTNET_SLAP_TRACKERS = [
21
+ // Babbage primary testnet overlay service
22
+ 'https://testnet-users.bapp.dev'
23
+ ];
23
24
  const MAX_TRACKER_WAIT_TIME = 1000;
24
25
  class HTTPSOverlayLookupFacilitator {
25
- constructor(httpClient = fetch) {
26
+ constructor(httpClient = fetch, allowHTTP = false) {
26
27
  this.fetchClient = httpClient;
28
+ this.allowHTTP = allowHTTP;
27
29
  }
28
30
  async lookup(url, question, timeout = 5000) {
29
- if (!url.startsWith('https:')) {
31
+ if (!url.startsWith('https:') && !this.allowHTTP) {
30
32
  throw new Error('HTTPS facilitator can only use URLs that start with "https:"');
31
33
  }
32
34
  const timeoutPromise = new Promise((resolve, reject) => setTimeout(() => reject(new Error('Request timed out')), timeout));
@@ -57,18 +59,13 @@ exports.HTTPSOverlayLookupFacilitator = HTTPSOverlayLookupFacilitator;
57
59
  * Represents an SHIP transaction broadcaster.
58
60
  */
59
61
  class LookupResolver {
60
- constructor(config) {
61
- const defaultConfig = {
62
- facilitator: new HTTPSOverlayLookupFacilitator(),
63
- slapTrackers: exports.DEFAULT_SLAP_TRACKERS,
64
- hostOverrides: {},
65
- additionalHosts: {}
66
- };
67
- const { facilitator = defaultConfig.facilitator, slapTrackers = defaultConfig.slapTrackers, hostOverrides = defaultConfig.hostOverrides, additionalHosts = defaultConfig.additionalHosts } = config !== null && config !== void 0 ? config : defaultConfig; // ✅ Use a default object directly
68
- this.facilitator = facilitator !== null && facilitator !== void 0 ? facilitator : new HTTPSOverlayLookupFacilitator();
69
- this.slapTrackers = slapTrackers !== null && slapTrackers !== void 0 ? slapTrackers : [];
70
- this.hostOverrides = hostOverrides !== null && hostOverrides !== void 0 ? hostOverrides : {};
71
- this.additionalHosts = additionalHosts !== null && additionalHosts !== void 0 ? additionalHosts : {};
62
+ constructor(config = {}) {
63
+ var _a, _b, _c, _d, _e;
64
+ this.networkPreset = (_a = config.networkPreset) !== null && _a !== void 0 ? _a : 'mainnet';
65
+ this.facilitator = (_b = config.facilitator) !== null && _b !== void 0 ? _b : new HTTPSOverlayLookupFacilitator(undefined, this.networkPreset === 'local');
66
+ this.slapTrackers = (_c = config.slapTrackers) !== null && _c !== void 0 ? _c : (this.networkPreset === 'mainnet' ? exports.DEFAULT_SLAP_TRACKERS : exports.DEFAULT_TESTNET_SLAP_TRACKERS);
67
+ this.hostOverrides = (_d = config.hostOverrides) !== null && _d !== void 0 ? _d : {};
68
+ this.additionalHosts = (_e = config.additionalHosts) !== null && _e !== void 0 ? _e : {};
72
69
  }
73
70
  /**
74
71
  * Given a LookupQuestion, returns a LookupAnswer. Aggregates across multiple services and supports resiliency.
@@ -77,11 +74,14 @@ class LookupResolver {
77
74
  var _a;
78
75
  let competentHosts = [];
79
76
  if (question.service === 'ls_slap') {
80
- competentHosts = this.slapTrackers;
77
+ competentHosts = this.networkPreset === 'local' ? ['http://localhost:8080'] : this.slapTrackers;
81
78
  }
82
79
  else if (this.hostOverrides[question.service] != null) {
83
80
  competentHosts = this.hostOverrides[question.service];
84
81
  }
82
+ else if (this.networkPreset === 'local') {
83
+ competentHosts = ['http://localhost:8080'];
84
+ }
85
85
  else {
86
86
  competentHosts = await this.findCompetentHosts(question.service);
87
87
  }
@@ -92,7 +92,7 @@ class LookupResolver {
92
92
  ];
93
93
  }
94
94
  if (competentHosts.length < 1) {
95
- throw new Error(`No competent hosts found by the SLAP trackers for lookup service: ${question.service}`);
95
+ throw new Error(`No competent ${this.networkPreset} hosts found by the SLAP trackers for lookup service: ${question.service}`);
96
96
  }
97
97
  // Use Promise.allSettled to handle individual host failures
98
98
  const hostResponses = await Promise.allSettled(competentHosts.map(async (host) => await this.facilitator.lookup(host, question, timeout)));
@@ -134,7 +134,6 @@ class LookupResolver {
134
134
  console.error('Error processing response outputs:', error);
135
135
  }
136
136
  }
137
- // ✅ Ensure function always returns a value
138
137
  return {
139
138
  type: 'output-list',
140
139
  outputs: Array.from(outputs.values())
@@ -1 +1 @@
1
- {"version":3,"file":"LookupResolver.js","sourceRoot":"","sources":["../../../../src/overlay-tools/LookupResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LookupResolver.js","sourceRoot":"","sources":["../../../../src/overlay-tools/LookupResolver.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,12 @@ const LookupResolver_js_1 = __importDefault(require("./LookupResolver.js"));
9
9
  const OverlayAdminTokenTemplate_js_1 = __importDefault(require("./OverlayAdminTokenTemplate.js"));
10
10
  const MAX_SHIP_QUERY_TIMEOUT = 1000;
11
11
  class HTTPSOverlayBroadcastFacilitator {
12
- constructor(httpClient = fetch) {
12
+ constructor(httpClient = fetch, allowHTTP = false) {
13
13
  this.httpClient = httpClient;
14
+ this.allowHTTP = false;
14
15
  }
15
16
  async send(url, taggedBEEF) {
16
- if (!url.startsWith('https:')) {
17
+ if (!url.startsWith('https:') && !this.allowHTTP) {
17
18
  throw new Error('HTTPS facilitator can only use URLs that start with "https:"');
18
19
  }
19
20
  const response = await fetch(`${url}/submit`, {
@@ -34,16 +35,17 @@ class HTTPSOverlayBroadcastFacilitator {
34
35
  }
35
36
  exports.HTTPSOverlayBroadcastFacilitator = HTTPSOverlayBroadcastFacilitator;
36
37
  /**
37
- * Represents a SHIP transaction broadcaster.
38
+ * Broadcasts transactions to one or more overlay topics.
38
39
  */
39
- class SHIPBroadcaster {
40
+ class TopicBroadcaster {
40
41
  /**
41
42
  * Constructs an instance of the SHIP broadcaster.
42
43
  *
43
44
  * @param {string[]} topics - The list of SHIP topic names where transactions are to be sent.
44
45
  * @param {SHIPBroadcasterConfig} config - Configuration options for the SHIP broadcaster.
45
46
  */
46
- constructor(topics, config) {
47
+ constructor(topics, config = {}) {
48
+ var _a, _b, _c, _d, _e, _f;
47
49
  if (topics.length === 0) {
48
50
  throw new Error('At least one topic is required for broadcast.');
49
51
  }
@@ -51,15 +53,15 @@ class SHIPBroadcaster {
51
53
  throw new Error('Every topic must start with "tm_".');
52
54
  }
53
55
  this.topics = topics;
54
- const { facilitator, resolver, requireAcknowledgmentFromAllHostsForTopics, requireAcknowledgmentFromAnyHostForTopics, requireAcknowledgmentFromSpecificHostsForTopics } = config !== null && config !== void 0 ? config : {};
55
- this.facilitator = facilitator !== null && facilitator !== void 0 ? facilitator : new HTTPSOverlayBroadcastFacilitator();
56
- this.resolver = resolver !== null && resolver !== void 0 ? resolver : new LookupResolver_js_1.default();
56
+ this.networkPreset = (_a = config.networkPreset) !== null && _a !== void 0 ? _a : 'mainnet';
57
+ this.facilitator = (_b = config.facilitator) !== null && _b !== void 0 ? _b : new HTTPSOverlayBroadcastFacilitator(undefined, this.networkPreset === 'local');
58
+ this.resolver = (_c = config.resolver) !== null && _c !== void 0 ? _c : new LookupResolver_js_1.default({ networkPreset: this.networkPreset });
57
59
  this.requireAcknowledgmentFromAllHostsForTopics =
58
- requireAcknowledgmentFromAllHostsForTopics !== null && requireAcknowledgmentFromAllHostsForTopics !== void 0 ? requireAcknowledgmentFromAllHostsForTopics : [];
60
+ (_d = config.requireAcknowledgmentFromAllHostsForTopics) !== null && _d !== void 0 ? _d : [];
59
61
  this.requireAcknowledgmentFromAnyHostForTopics =
60
- requireAcknowledgmentFromAnyHostForTopics !== null && requireAcknowledgmentFromAnyHostForTopics !== void 0 ? requireAcknowledgmentFromAnyHostForTopics : 'all';
62
+ (_e = config.requireAcknowledgmentFromAnyHostForTopics) !== null && _e !== void 0 ? _e : 'all';
61
63
  this.requireAcknowledgmentFromSpecificHostsForTopics =
62
- requireAcknowledgmentFromSpecificHostsForTopics !== null && requireAcknowledgmentFromSpecificHostsForTopics !== void 0 ? requireAcknowledgmentFromSpecificHostsForTopics : {};
64
+ (_f = config.requireAcknowledgmentFromSpecificHostsForTopics) !== null && _f !== void 0 ? _f : {};
63
65
  }
64
66
  /**
65
67
  * Broadcasts a transaction to Overlay Services via SHIP.
@@ -75,12 +77,12 @@ class SHIPBroadcaster {
75
77
  catch (error) {
76
78
  throw new Error('Transactions sent via SHIP to Overlay Services must be serializable to BEEF format.');
77
79
  }
78
- const interestedHosts = await this.findInterestedHosts();
80
+ const interestedHosts = this.networkPreset === 'local' ? ['http://localhost:8080'] : await this.findInterestedHosts();
79
81
  if (Object.keys(interestedHosts).length === 0) {
80
82
  return {
81
83
  status: 'error',
82
84
  code: 'ERR_NO_HOSTS_INTERESTED',
83
- description: 'No hosts are interested in receiving this transaction.'
85
+ description: `No ${this.networkPreset} hosts are interested in receiving this transaction.`
84
86
  };
85
87
  }
86
88
  const hostPromises = Object.entries(interestedHosts).map(async ([host, topics]) => {
@@ -105,7 +107,7 @@ class SHIPBroadcaster {
105
107
  return {
106
108
  status: 'error',
107
109
  code: 'ERR_ALL_HOSTS_REJECTED',
108
- description: 'All SHIP hosts have rejected the transaction.'
110
+ description: `All ${this.networkPreset} topical hosts have rejected the transaction.`
109
111
  };
110
112
  }
111
113
  // Collect host acknowledgments
@@ -345,5 +347,5 @@ class SHIPBroadcaster {
345
347
  return results;
346
348
  }
347
349
  }
348
- exports.default = SHIPBroadcaster;
350
+ exports.default = TopicBroadcaster;
349
351
  //# sourceMappingURL=SHIPBroadcaster.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SHIPBroadcaster.js","sourceRoot":"","sources":["../../../../src/overlay-tools/SHIPBroadcaster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SHIPBroadcaster.js","sourceRoot":"","sources":["../../../../src/overlay-tools/SHIPBroadcaster.ts"],"names":[],"mappings":"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"}
@@ -17,13 +17,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.SHIPBroadcaster = exports.LookupResolver = exports.OverlayAdminTokenTemplate = void 0;
20
+ exports.SHIPCast = exports.SHIPBroadcaster = exports.TopicBroadcaster = exports.LookupResolver = exports.OverlayAdminTokenTemplate = void 0;
21
21
  __exportStar(require("./LookupResolver.js"), exports);
22
22
  __exportStar(require("./SHIPBroadcaster.js"), exports);
23
23
  var OverlayAdminTokenTemplate_js_1 = require("./OverlayAdminTokenTemplate.js");
24
24
  Object.defineProperty(exports, "OverlayAdminTokenTemplate", { enumerable: true, get: function () { return __importDefault(OverlayAdminTokenTemplate_js_1).default; } });
25
25
  var LookupResolver_js_1 = require("./LookupResolver.js");
26
26
  Object.defineProperty(exports, "LookupResolver", { enumerable: true, get: function () { return __importDefault(LookupResolver_js_1).default; } });
27
+ // For intuitive clarity, we name this the Topic Broadcaster.
27
28
  var SHIPBroadcaster_js_1 = require("./SHIPBroadcaster.js");
28
- Object.defineProperty(exports, "SHIPBroadcaster", { enumerable: true, get: function () { return __importDefault(SHIPBroadcaster_js_1).default; } });
29
+ Object.defineProperty(exports, "TopicBroadcaster", { enumerable: true, get: function () { return __importDefault(SHIPBroadcaster_js_1).default; } });
30
+ // Historically, it was also known by two other names:
31
+ var SHIPBroadcaster_js_2 = require("./SHIPBroadcaster.js");
32
+ Object.defineProperty(exports, "SHIPBroadcaster", { enumerable: true, get: function () { return __importDefault(SHIPBroadcaster_js_2).default; } });
33
+ var SHIPBroadcaster_js_3 = require("./SHIPBroadcaster.js");
34
+ Object.defineProperty(exports, "SHIPCast", { enumerable: true, get: function () { return __importDefault(SHIPBroadcaster_js_3).default; } });
29
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/overlay-tools/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,sDAAmC;AACnC,uDAAoC;AACpC,+EAAqF;AAA5E,0JAAA,OAAO,OAA6B;AAC7C,yDAA+D;AAAtD,oIAAA,OAAO,OAAkB;AAClC,2DAAiE;AAAxD,sIAAA,OAAO,OAAmB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/overlay-tools/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,sDAAmC;AACnC,uDAAoC;AACpC,+EAAqF;AAA5E,0JAAA,OAAO,OAA6B;AAC7C,yDAA+D;AAAtD,oIAAA,OAAO,OAAkB;AAElC,6DAA6D;AAC7D,2DAAkE;AAAzD,uIAAA,OAAO,OAAoB;AACpC,sDAAsD;AACtD,2DAAiE;AAAxD,sIAAA,OAAO,OAAmB;AACnC,2DAA0D;AAAjD,+HAAA,OAAO,OAAY"}