@bsv/sdk 1.3.28 → 1.3.30

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 (32) hide show
  1. package/dist/cjs/package.json +1 -1
  2. package/dist/cjs/src/auth/Peer.js +142 -91
  3. package/dist/cjs/src/auth/Peer.js.map +1 -1
  4. package/dist/cjs/src/auth/SessionManager.js +82 -21
  5. package/dist/cjs/src/auth/SessionManager.js.map +1 -1
  6. package/dist/cjs/src/auth/clients/AuthFetch.js +50 -41
  7. package/dist/cjs/src/auth/clients/AuthFetch.js.map +1 -1
  8. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  9. package/dist/esm/src/auth/Peer.js +138 -88
  10. package/dist/esm/src/auth/Peer.js.map +1 -1
  11. package/dist/esm/src/auth/SessionManager.js +88 -22
  12. package/dist/esm/src/auth/SessionManager.js.map +1 -1
  13. package/dist/esm/src/auth/clients/AuthFetch.js +49 -41
  14. package/dist/esm/src/auth/clients/AuthFetch.js.map +1 -1
  15. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  16. package/dist/types/src/auth/Peer.d.ts +21 -23
  17. package/dist/types/src/auth/Peer.d.ts.map +1 -1
  18. package/dist/types/src/auth/SessionManager.d.ts +25 -7
  19. package/dist/types/src/auth/SessionManager.d.ts.map +1 -1
  20. package/dist/types/src/auth/clients/AuthFetch.d.ts.map +1 -1
  21. package/dist/types/src/auth/types.d.ts +1 -0
  22. package/dist/types/src/auth/types.d.ts.map +1 -1
  23. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  24. package/dist/umd/bundle.js +1 -1
  25. package/docs/auth.md +33 -38
  26. package/package.json +1 -1
  27. package/src/auth/Peer.ts +186 -130
  28. package/src/auth/SessionManager.ts +89 -22
  29. package/src/auth/__tests/Peer.test.ts +66 -0
  30. package/src/auth/__tests/SessionManager.test.ts +3 -2
  31. package/src/auth/clients/AuthFetch.ts +53 -43
  32. package/src/auth/types.ts +1 -0
@@ -2,47 +2,96 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SessionManager = void 0;
4
4
  /**
5
- * Manages sessions for peers, allowing sessions to be added, retrieved, updated, and removed
6
- * by relevant identifiers (sessionNonce and peerIdentityKey).
5
+ * Manages sessions for peers, allowing multiple concurrent sessions
6
+ * per identity key. Primary lookup is always by `sessionNonce`.
7
7
  */
8
8
  class SessionManager {
9
9
  constructor() {
10
- this.identifierToSession = new Map();
10
+ this.sessionNonceToSession = new Map();
11
+ this.identityKeyToNonces = new Map();
11
12
  }
12
13
  /**
13
- * Adds a session to the manager, associating it with relevant identifiers for retrieval.
14
+ * Adds a session to the manager, associating it with its sessionNonce,
15
+ * and also with its peerIdentityKey (if any).
16
+ *
17
+ * This does NOT overwrite existing sessions for the same peerIdentityKey,
18
+ * allowing multiple concurrent sessions for the same peer.
14
19
  *
15
20
  * @param {PeerSession} session - The peer session to add.
16
21
  */
17
22
  addSession(session) {
18
- if ((session.sessionNonce === null || session.sessionNonce === undefined || session.sessionNonce === '') &&
19
- (session.peerIdentityKey === null || session.peerIdentityKey === undefined || session.peerIdentityKey === '')) {
20
- throw new Error('Invalid session: at least one of sessionNonce or peerIdentityKey is required.');
21
- }
22
- if (session.sessionNonce !== null && session.sessionNonce !== undefined && session.sessionNonce !== '') {
23
- this.identifierToSession.set(session.sessionNonce, session);
23
+ if (typeof session.sessionNonce !== 'string') {
24
+ throw new Error('Invalid session: sessionNonce is required to add a session.');
24
25
  }
25
- if (session.peerIdentityKey !== null && session.peerIdentityKey !== undefined && session.peerIdentityKey !== '') {
26
- this.identifierToSession.set(session.peerIdentityKey, session);
26
+ // Use the sessionNonce as the primary key
27
+ this.sessionNonceToSession.set(session.sessionNonce, session);
28
+ // Also track it by identity key if present
29
+ if (typeof session.peerIdentityKey === 'string') {
30
+ let nonces = this.identityKeyToNonces.get(session.peerIdentityKey);
31
+ if (nonces == null) {
32
+ nonces = new Set();
33
+ this.identityKeyToNonces.set(session.peerIdentityKey, nonces);
34
+ }
35
+ nonces.add(session.sessionNonce);
27
36
  }
28
37
  }
29
38
  /**
30
- * Updates a session in the manager, ensuring that all identifiers are correctly associated.
39
+ * Updates a session in the manager (primarily by re-adding it),
40
+ * ensuring we record the latest data (e.g., isAuthenticated, lastUpdate, etc.).
31
41
  *
32
42
  * @param {PeerSession} session - The peer session to update.
33
43
  */
34
44
  updateSession(session) {
45
+ // Remove the old references (if any) and re-add
35
46
  this.removeSession(session);
36
47
  this.addSession(session);
37
48
  }
38
49
  /**
39
- * Retrieves a session based on a given identifier.
50
+ * Retrieves a session based on a given identifier, which can be:
51
+ * - A sessionNonce, or
52
+ * - A peerIdentityKey.
53
+ *
54
+ * If it is a `sessionNonce`, returns that exact session.
55
+ * If it is a `peerIdentityKey`, returns the "best" (e.g. most recently updated,
56
+ * authenticated) session associated with that peer, if any.
40
57
  *
41
58
  * @param {string} identifier - The identifier for the session (sessionNonce or peerIdentityKey).
42
59
  * @returns {PeerSession | undefined} - The matching peer session, or undefined if not found.
43
60
  */
44
61
  getSession(identifier) {
45
- return this.identifierToSession.get(identifier);
62
+ var _a, _b;
63
+ // Check if this identifier is directly a sessionNonce
64
+ const direct = this.sessionNonceToSession.get(identifier);
65
+ if (direct != null) {
66
+ return direct;
67
+ }
68
+ // Otherwise, interpret the identifier as an identity key
69
+ const nonces = this.identityKeyToNonces.get(identifier);
70
+ if ((nonces == null) || nonces.size === 0) {
71
+ return undefined;
72
+ }
73
+ // Pick the "best" session. One sensible approach:
74
+ // - Choose an authenticated session if available
75
+ // - Among them, pick the most recently updated
76
+ let best;
77
+ for (const nonce of nonces) {
78
+ const s = this.sessionNonceToSession.get(nonce);
79
+ if (s == null)
80
+ continue;
81
+ // We can prefer authenticated sessions
82
+ if (best == null) {
83
+ best = s;
84
+ }
85
+ else {
86
+ // If we want the "most recently updated" AND isAuthenticated
87
+ if (((_a = s.lastUpdate) !== null && _a !== void 0 ? _a : 0) > ((_b = best.lastUpdate) !== null && _b !== void 0 ? _b : 0)) {
88
+ best = s;
89
+ }
90
+ }
91
+ }
92
+ // Optionally, you could also filter out isAuthenticated===false if you only want
93
+ // an authenticated session. But for our usage, let's return the latest any session.
94
+ return best;
46
95
  }
47
96
  /**
48
97
  * Removes a session from the manager by clearing all associated identifiers.
@@ -50,21 +99,33 @@ class SessionManager {
50
99
  * @param {PeerSession} session - The peer session to remove.
51
100
  */
52
101
  removeSession(session) {
53
- if (session.sessionNonce !== null && session.sessionNonce !== undefined && session.sessionNonce !== '') {
54
- this.identifierToSession.delete(session.sessionNonce);
102
+ var _a;
103
+ if (typeof session.sessionNonce === 'string') {
104
+ this.sessionNonceToSession.delete(session.sessionNonce);
55
105
  }
56
- if (session.peerIdentityKey !== null && session.peerIdentityKey !== undefined && session.peerIdentityKey !== '') {
57
- this.identifierToSession.delete(session.peerIdentityKey);
106
+ if (typeof session.peerIdentityKey === 'string') {
107
+ const nonces = this.identityKeyToNonces.get(session.peerIdentityKey);
108
+ if (nonces != null) {
109
+ nonces.delete((_a = session.sessionNonce) !== null && _a !== void 0 ? _a : '');
110
+ if (nonces.size === 0) {
111
+ this.identityKeyToNonces.delete(session.peerIdentityKey);
112
+ }
113
+ }
58
114
  }
59
115
  }
60
116
  /**
61
- * Checks if a session exists based on a given identifier.
117
+ * Checks if a session exists for a given identifier (either sessionNonce or identityKey).
62
118
  *
63
119
  * @param {string} identifier - The identifier to check.
64
120
  * @returns {boolean} - True if the session exists, false otherwise.
65
121
  */
66
122
  hasSession(identifier) {
67
- return this.identifierToSession.has(identifier);
123
+ const direct = this.sessionNonceToSession.has(identifier);
124
+ if (direct)
125
+ return true;
126
+ // if not directly a nonce, interpret as identityKey
127
+ const nonces = this.identityKeyToNonces.get(identifier);
128
+ return !(nonces == null) && nonces.size > 0;
68
129
  }
69
130
  }
70
131
  exports.SessionManager = SessionManager;
@@ -1 +1 @@
1
- {"version":3,"file":"SessionManager.js","sourceRoot":"","sources":["../../../../src/auth/SessionManager.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,MAAa,cAAc;IAGzB;QACE,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC3D,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAE,OAAoB;QAC9B,IAAI,CAAC,OAAO,CAAC,YAAY,KAAK,IAAI,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,CAAC;YACtG,CAAC,OAAO,CAAC,eAAe,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,IAAI,OAAO,CAAC,eAAe,KAAK,EAAE,CAAC,EAAE;YAC/G,MAAM,IAAI,KAAK,CACb,+EAA+E,CAChF,CAAA;SACF;QAED,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YACtG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;SAC5D;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,IAAI,OAAO,CAAC,eAAe,KAAK,EAAE,EAAE;YAC/G,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;SAC/D;IACH,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAE,OAAoB;QACjC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC3B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IAC1B,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAE,UAAkB;QAC5B,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACjD,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAE,OAAoB;QACjC,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,CAAC,YAAY,KAAK,EAAE,EAAE;YACtG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;SACtD;QACD,IAAI,OAAO,CAAC,eAAe,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,IAAI,OAAO,CAAC,eAAe,KAAK,EAAE,EAAE;YAC/G,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;SACzD;IACH,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAE,UAAkB;QAC5B,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACjD,CAAC;CACF;AAvED,wCAuEC"}
1
+ {"version":3,"file":"SessionManager.js","sourceRoot":"","sources":["../../../../src/auth/SessionManager.ts"],"names":[],"mappings":"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"}
@@ -49,7 +49,7 @@ class AuthFetch {
49
49
  }
50
50
  config.retryCounter--;
51
51
  }
52
- const response = await new Promise(async (resolve, reject) => {
52
+ const response = await new Promise((async (resolve, reject) => {
53
53
  try {
54
54
  // Apply defaults
55
55
  const { method = 'GET', headers = {}, body } = config;
@@ -58,7 +58,7 @@ class AuthFetch {
58
58
  const baseURL = parsedUrl.origin;
59
59
  // Create a new transport for this base url if needed
60
60
  let peerToUse;
61
- if (!this.peers[baseURL]) {
61
+ if (typeof this.peers[baseURL] === 'undefined') {
62
62
  // Create a peer for the request
63
63
  const newTransport = new SimplifiedFetchTransport_js_1.SimplifiedFetchTransport(baseURL);
64
64
  peerToUse = {
@@ -81,6 +81,7 @@ class AuthFetch {
81
81
  catch (error) {
82
82
  reject(error);
83
83
  }
84
+ return;
84
85
  }
85
86
  peerToUse = this.peers[baseURL];
86
87
  }
@@ -95,49 +96,57 @@ class AuthFetch {
95
96
  const responseReader = new mod_js_1.Utils.Reader(payload);
96
97
  // Deserialize first 32 bytes of payload
97
98
  const responseNonceAsBase64 = mod_js_1.Utils.toBase64(responseReader.read(32));
98
- if (responseNonceAsBase64 === requestNonceAsBase64) {
99
- peerToUse.peer.stopListeningForGeneralMessages(listenerId);
100
- // Save the identity key for the peer for future requests, since we have it here.
101
- this.peers[baseURL].identityKey = senderPublicKey;
102
- this.peers[baseURL].supportsMutualAuth = true;
103
- // Status code
104
- const statusCode = responseReader.readVarIntNum();
105
- // Headers
106
- const responseHeaders = {};
107
- const nHeaders = responseReader.readVarIntNum();
108
- if (nHeaders > 0) {
109
- for (let i = 0; i < nHeaders; i++) {
110
- const nHeaderKeyBytes = responseReader.readVarIntNum();
111
- const headerKeyBytes = responseReader.read(nHeaderKeyBytes);
112
- const headerKey = mod_js_1.Utils.toUTF8(headerKeyBytes);
113
- const nHeaderValueBytes = responseReader.readVarIntNum();
114
- const headerValueBytes = responseReader.read(nHeaderValueBytes);
115
- const headerValue = mod_js_1.Utils.toUTF8(headerValueBytes);
116
- responseHeaders[headerKey] = headerValue;
117
- }
118
- }
119
- // Add back the server identity key header
120
- responseHeaders['x-bsv-auth-identity-key'] = senderPublicKey;
121
- // Body
122
- let responseBody;
123
- const responseBodyBytes = responseReader.readVarIntNum();
124
- if (responseBodyBytes > 0) {
125
- responseBody = responseReader.read(responseBodyBytes);
99
+ if (responseNonceAsBase64 !== requestNonceAsBase64) {
100
+ return;
101
+ }
102
+ peerToUse.peer.stopListeningForGeneralMessages(listenerId);
103
+ // Save the identity key for the peer for future requests, since we have it here.
104
+ this.peers[baseURL].identityKey = senderPublicKey;
105
+ this.peers[baseURL].supportsMutualAuth = true;
106
+ // Status code
107
+ const statusCode = responseReader.readVarIntNum();
108
+ // Headers
109
+ const responseHeaders = {};
110
+ const nHeaders = responseReader.readVarIntNum();
111
+ if (nHeaders > 0) {
112
+ for (let i = 0; i < nHeaders; i++) {
113
+ const nHeaderKeyBytes = responseReader.readVarIntNum();
114
+ const headerKeyBytes = responseReader.read(nHeaderKeyBytes);
115
+ const headerKey = mod_js_1.Utils.toUTF8(headerKeyBytes);
116
+ const nHeaderValueBytes = responseReader.readVarIntNum();
117
+ const headerValueBytes = responseReader.read(nHeaderValueBytes);
118
+ const headerValue = mod_js_1.Utils.toUTF8(headerValueBytes);
119
+ responseHeaders[headerKey] = headerValue;
126
120
  }
127
- // Create the Response object
128
- const responseValue = new Response(responseBody ? new Uint8Array(responseBody) : null, {
129
- status: statusCode,
130
- statusText: `${statusCode}`,
131
- headers: new Headers(responseHeaders)
132
- });
133
- // Resolve or reject the correct request with the response data
134
- this.callbacks[requestNonceAsBase64].resolve(responseValue);
135
- // Clean up
136
- delete this.callbacks[requestNonceAsBase64];
137
121
  }
122
+ // Add back the server identity key header
123
+ responseHeaders['x-bsv-auth-identity-key'] = senderPublicKey;
124
+ // Body
125
+ let responseBody;
126
+ const responseBodyBytes = responseReader.readVarIntNum();
127
+ if (responseBodyBytes > 0) {
128
+ responseBody = responseReader.read(responseBodyBytes);
129
+ }
130
+ // Create the Response object
131
+ const responseValue = new Response(responseBody ? new Uint8Array(responseBody) : null, {
132
+ status: statusCode,
133
+ statusText: `${statusCode}`,
134
+ headers: new Headers(responseHeaders)
135
+ });
136
+ // Resolve or reject the correct request with the response data
137
+ this.callbacks[requestNonceAsBase64].resolve(responseValue);
138
+ // Clean up
139
+ delete this.callbacks[requestNonceAsBase64];
138
140
  });
139
141
  // Send the request, now that all listeners are set up
140
142
  await peerToUse.peer.toPeer(writer.toArray(), peerToUse.identityKey).catch(async (error) => {
143
+ var _a;
144
+ if (error.message.includes('Session not found for nonce')) {
145
+ delete this.peers[baseURL];
146
+ (_a = config.retryCounter) !== null && _a !== void 0 ? _a : (config.retryCounter = 3);
147
+ const response = await this.fetch(url, config);
148
+ resolve(response);
149
+ }
141
150
  if (error.message.includes('HTTP server failed to authenticate')) {
142
151
  try {
143
152
  const response = await this.handleFetchAndValidate(url, config, peerToUse);
@@ -155,7 +164,7 @@ class AuthFetch {
155
164
  catch (e) {
156
165
  reject(e);
157
166
  }
158
- });
167
+ }));
159
168
  // Check if server requires payment to access the requested route
160
169
  if (response.status === 402) {
161
170
  // Create and attach a payment, then retry
@@ -1 +1 @@
1
- {"version":3,"file":"AuthFetch.js","sourceRoot":"","sources":["../../../../../src/auth/clients/AuthFetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthFetch.js","sourceRoot":"","sources":["../../../../../src/auth/clients/AuthFetch.ts"],"names":[],"mappings":"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"}