@orangecheck/sdk 1.4.0 → 1.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/attestation.js +13 -5
- package/dist/attestation.js.map +1 -1
- package/dist/attestation.mjs +13 -5
- package/dist/attestation.mjs.map +1 -1
- package/dist/identity.js +0 -1
- package/dist/identity.js.map +1 -1
- package/dist/identity.mjs +0 -1
- package/dist/identity.mjs.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +14 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +14 -6
- package/dist/index.mjs.map +1 -1
- package/dist/nostr.d.mts +2 -1
- package/dist/nostr.d.ts +2 -1
- package/dist/nostr.js +14 -5
- package/dist/nostr.js.map +1 -1
- package/dist/nostr.mjs +14 -6
- package/dist/nostr.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -191,11 +191,15 @@ var log = createLogger("ocp/nostr");
|
|
|
191
191
|
var ATTESTATION_EVENT_KIND = 30078;
|
|
192
192
|
var DEFAULT_RELAYS = [
|
|
193
193
|
"wss://relay.damus.io",
|
|
194
|
-
"wss://relay.nostr.band",
|
|
195
194
|
"wss://nos.lol",
|
|
196
195
|
"wss://relay.snort.social",
|
|
197
196
|
"wss://relay.ochk.io"
|
|
198
197
|
];
|
|
198
|
+
var FANOUT_DEADLINE_MS = 4e3;
|
|
199
|
+
var QUERY_TIMEOUT_MS = 1e4;
|
|
200
|
+
function budgetFor(deadlineAt) {
|
|
201
|
+
return Math.max(0, Math.min(QUERY_TIMEOUT_MS, deadlineAt - Date.now()));
|
|
202
|
+
}
|
|
199
203
|
function createAttestationEvent(envelope, pubkey) {
|
|
200
204
|
const tags = [
|
|
201
205
|
["d", envelope.attestation_id],
|
|
@@ -235,6 +239,7 @@ async function publishToRelays(event, relays = DEFAULT_RELAYS) {
|
|
|
235
239
|
const success = [];
|
|
236
240
|
const failed = [];
|
|
237
241
|
log.info({ eventId: event.id, relayCount: relays.length }, "Publishing event to relays");
|
|
242
|
+
const deadlineAt = Date.now() + FANOUT_DEADLINE_MS;
|
|
238
243
|
const publishPromises = relays.map(async (relayUrl) => {
|
|
239
244
|
let ws = null;
|
|
240
245
|
let settled = false;
|
|
@@ -255,7 +260,7 @@ async function publishToRelays(event, relays = DEFAULT_RELAYS) {
|
|
|
255
260
|
const deadline = setTimeout(() => {
|
|
256
261
|
wsRef.close();
|
|
257
262
|
reject(new Error("Relay publish timeout"));
|
|
258
|
-
},
|
|
263
|
+
}, budgetFor(deadlineAt));
|
|
259
264
|
const cleanup = () => {
|
|
260
265
|
clearTimeout(deadline);
|
|
261
266
|
wsRef.close();
|
|
@@ -317,6 +322,7 @@ async function publishToRelays(event, relays = DEFAULT_RELAYS) {
|
|
|
317
322
|
async function queryByAttestationId(attestationId, relays = DEFAULT_RELAYS) {
|
|
318
323
|
const events = [];
|
|
319
324
|
log.info({ attestationId, relayCount: relays.length }, "Querying relays for attestation");
|
|
325
|
+
const deadlineAt = Date.now() + FANOUT_DEADLINE_MS;
|
|
320
326
|
const queryPromises = relays.map(async (relayUrl) => {
|
|
321
327
|
let ws = null;
|
|
322
328
|
try {
|
|
@@ -326,7 +332,7 @@ async function queryByAttestationId(attestationId, relays = DEFAULT_RELAYS) {
|
|
|
326
332
|
const timeout = setTimeout(() => {
|
|
327
333
|
wsRef.close();
|
|
328
334
|
reject(new Error("Query timeout"));
|
|
329
|
-
},
|
|
335
|
+
}, budgetFor(deadlineAt));
|
|
330
336
|
const cleanup = () => {
|
|
331
337
|
clearTimeout(timeout);
|
|
332
338
|
wsRef.close();
|
|
@@ -382,6 +388,7 @@ async function queryByAttestationId(attestationId, relays = DEFAULT_RELAYS) {
|
|
|
382
388
|
async function queryByAddress(address, relays = DEFAULT_RELAYS) {
|
|
383
389
|
const events = [];
|
|
384
390
|
log.info({ address, relayCount: relays.length }, "Querying relays for address");
|
|
391
|
+
const deadlineAt = Date.now() + FANOUT_DEADLINE_MS;
|
|
385
392
|
const queryPromises = relays.map(async (relayUrl) => {
|
|
386
393
|
try {
|
|
387
394
|
const ws = new WebSocket(relayUrl);
|
|
@@ -389,7 +396,7 @@ async function queryByAddress(address, relays = DEFAULT_RELAYS) {
|
|
|
389
396
|
const timeout = setTimeout(() => {
|
|
390
397
|
ws.close();
|
|
391
398
|
reject(new Error("Query timeout"));
|
|
392
|
-
},
|
|
399
|
+
}, budgetFor(deadlineAt));
|
|
393
400
|
ws.onopen = () => {
|
|
394
401
|
const subscriptionId = `ochk_addr_${Date.now()}`;
|
|
395
402
|
ws.send(
|
|
@@ -443,6 +450,7 @@ async function queryByIdentity(protocol, identifier, relays = DEFAULT_RELAYS) {
|
|
|
443
450
|
const events = [];
|
|
444
451
|
const identityTag = `${protocol}:${identifier}`;
|
|
445
452
|
log.info({ protocol, identifier, relayCount: relays.length }, "Querying relays for identity");
|
|
453
|
+
const deadlineAt = Date.now() + FANOUT_DEADLINE_MS;
|
|
446
454
|
const queryPromises = relays.map(async (relayUrl) => {
|
|
447
455
|
try {
|
|
448
456
|
const ws = new WebSocket(relayUrl);
|
|
@@ -450,7 +458,7 @@ async function queryByIdentity(protocol, identifier, relays = DEFAULT_RELAYS) {
|
|
|
450
458
|
const timeout = setTimeout(() => {
|
|
451
459
|
ws.close();
|
|
452
460
|
reject(new Error("Query timeout"));
|
|
453
|
-
},
|
|
461
|
+
}, budgetFor(deadlineAt));
|
|
454
462
|
ws.onopen = () => {
|
|
455
463
|
const subscriptionId = `ochk_identity_${Date.now()}`;
|
|
456
464
|
ws.send(
|
|
@@ -2111,6 +2119,6 @@ var STATUS_META = {
|
|
|
2111
2119
|
}
|
|
2112
2120
|
};
|
|
2113
2121
|
|
|
2114
|
-
export { DEFAULT_RELAYS, STATUS_META, buildCanonicalMessage, check, computeAllScores, computeScore, createAttestation, createAttestationEnvelope, createAttestationEvent, discoverAttestations, extractAttestationIdFromUrl, formatIdentities, formatIdentitiesForDisplay, generateAttestationId, generateGistTemplate, generateTweetText, generateWellKnownContent, getAttestationsForAddress, getAttestationsForIdentity, getDnsVerificationInstructions, getGistCreationUrl, getGitHubVerificationInstructions, getManualVerificationInstructions, getNip07Info, getNostrPublicKey, getNostrVerificationInstructions, getTweetUrl, getTwitterComposeUrl, getTwitterVerificationInstructions, getVerificationInstructions, getVerificationSummary, getVerificationUrl, getWellKnownUrl, isDnsIdentityVerified, isGitHubIdentityVerified, isNip07Available, isNostrIdentityVerified, isValidDomain, isValidTweetUrl, issueChallenge, parseAttestationFromEvent, parseIdentities, publishAttestation, publishToRelays, queryByAddress, queryByAttestationId, queryByIdentity, requiresManualVerification, signNostrEvent, supportsAutomaticVerification, verify2 as verify, verifyAllIdentities, verifyAttestationById, verifyChallenge, verifyDnsIdentity, verifyGitHubIdentity, verifyIdentity, verifyNostrIdentity, verifyTwitterIdentity };
|
|
2122
|
+
export { DEFAULT_RELAYS, FANOUT_DEADLINE_MS, STATUS_META, buildCanonicalMessage, check, computeAllScores, computeScore, createAttestation, createAttestationEnvelope, createAttestationEvent, discoverAttestations, extractAttestationIdFromUrl, formatIdentities, formatIdentitiesForDisplay, generateAttestationId, generateGistTemplate, generateTweetText, generateWellKnownContent, getAttestationsForAddress, getAttestationsForIdentity, getDnsVerificationInstructions, getGistCreationUrl, getGitHubVerificationInstructions, getManualVerificationInstructions, getNip07Info, getNostrPublicKey, getNostrVerificationInstructions, getTweetUrl, getTwitterComposeUrl, getTwitterVerificationInstructions, getVerificationInstructions, getVerificationSummary, getVerificationUrl, getWellKnownUrl, isDnsIdentityVerified, isGitHubIdentityVerified, isNip07Available, isNostrIdentityVerified, isValidDomain, isValidTweetUrl, issueChallenge, parseAttestationFromEvent, parseIdentities, publishAttestation, publishToRelays, queryByAddress, queryByAttestationId, queryByIdentity, requiresManualVerification, signNostrEvent, supportsAutomaticVerification, verify2 as verify, verifyAllIdentities, verifyAttestationById, verifyChallenge, verifyDnsIdentity, verifyGitHubIdentity, verifyIdentity, verifyNostrIdentity, verifyTwitterIdentity };
|
|
2115
2123
|
//# sourceMappingURL=index.mjs.map
|
|
2116
2124
|
//# sourceMappingURL=index.mjs.map
|