@libp2p/kad-dht 9.1.4 → 9.2.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.
- package/dist/index.min.js +20 -20
- package/dist/src/content-fetching/index.d.ts +0 -3
- package/dist/src/content-fetching/index.d.ts.map +1 -1
- package/dist/src/content-fetching/index.js +7 -12
- package/dist/src/content-fetching/index.js.map +1 -1
- package/dist/src/content-routing/index.d.ts +1 -2
- package/dist/src/content-routing/index.d.ts.map +1 -1
- package/dist/src/content-routing/index.js +9 -8
- package/dist/src/content-routing/index.js.map +1 -1
- package/dist/src/dual-kad-dht.d.ts +1 -2
- package/dist/src/dual-kad-dht.d.ts.map +1 -1
- package/dist/src/dual-kad-dht.js +7 -7
- package/dist/src/dual-kad-dht.js.map +1 -1
- package/dist/src/index.d.ts +16 -14
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -3
- package/dist/src/index.js.map +1 -1
- package/dist/src/kad-dht.js +2 -2
- package/dist/src/kad-dht.js.map +1 -1
- package/dist/src/network.d.ts +3 -3
- package/dist/src/network.d.ts.map +1 -1
- package/dist/src/network.js +9 -9
- package/dist/src/network.js.map +1 -1
- package/dist/src/peer-routing/index.d.ts +3 -3
- package/dist/src/peer-routing/index.d.ts.map +1 -1
- package/dist/src/peer-routing/index.js +16 -34
- package/dist/src/peer-routing/index.js.map +1 -1
- package/dist/src/query/events.d.ts +10 -10
- package/dist/src/query/events.d.ts.map +1 -1
- package/dist/src/query/events.js +36 -19
- package/dist/src/query/events.js.map +1 -1
- package/dist/src/query/manager.d.ts +6 -4
- package/dist/src/query/manager.d.ts.map +1 -1
- package/dist/src/query/manager.js +9 -3
- package/dist/src/query/manager.js.map +1 -1
- package/dist/src/query/query-path.d.ts +2 -2
- package/dist/src/query/query-path.d.ts.map +1 -1
- package/dist/src/query/query-path.js +1 -1
- package/dist/src/query/query-path.js.map +1 -1
- package/dist/src/routing-table/index.js +1 -1
- package/dist/src/routing-table/index.js.map +1 -1
- package/dist/typedoc-urls.json +4 -3
- package/package.json +2 -1
- package/src/content-fetching/index.ts +7 -16
- package/src/content-routing/index.ts +10 -10
- package/src/dual-kad-dht.ts +13 -14
- package/src/index.ts +25 -14
- package/src/kad-dht.ts +2 -2
- package/src/network.ts +13 -13
- package/src/peer-routing/index.ts +19 -41
- package/src/query/events.ts +54 -21
- package/src/query/manager.ts +14 -6
- package/src/query/query-path.ts +3 -3
- package/src/routing-table/index.ts +1 -1
package/dist/src/network.js
CHANGED
|
@@ -7,7 +7,7 @@ import first from 'it-first';
|
|
|
7
7
|
import * as lp from 'it-length-prefixed';
|
|
8
8
|
import { pipe } from 'it-pipe';
|
|
9
9
|
import { Message } from './message/index.js';
|
|
10
|
-
import {
|
|
10
|
+
import { dialPeerEvent, sendQueryEvent, peerResponseEvent, queryErrorEvent } from './query/events.js';
|
|
11
11
|
/**
|
|
12
12
|
* Handle network operations for the dht
|
|
13
13
|
*/
|
|
@@ -56,8 +56,8 @@ export class Network extends EventEmitter {
|
|
|
56
56
|
return;
|
|
57
57
|
}
|
|
58
58
|
this.log('sending %s to %p', msg.type, to);
|
|
59
|
-
yield
|
|
60
|
-
yield
|
|
59
|
+
yield dialPeerEvent({ peer: to }, options);
|
|
60
|
+
yield sendQueryEvent({ to, type: msg.type }, options);
|
|
61
61
|
let stream;
|
|
62
62
|
try {
|
|
63
63
|
const connection = await this.components.connectionManager.openConnection(to, options);
|
|
@@ -69,10 +69,10 @@ export class Network extends EventEmitter {
|
|
|
69
69
|
closer: response.closerPeers,
|
|
70
70
|
providers: response.providerPeers,
|
|
71
71
|
record: response.record
|
|
72
|
-
});
|
|
72
|
+
}, options);
|
|
73
73
|
}
|
|
74
74
|
catch (err) {
|
|
75
|
-
yield queryErrorEvent({ from: to, error: err });
|
|
75
|
+
yield queryErrorEvent({ from: to, error: err }, options);
|
|
76
76
|
}
|
|
77
77
|
finally {
|
|
78
78
|
if (stream != null) {
|
|
@@ -88,17 +88,17 @@ export class Network extends EventEmitter {
|
|
|
88
88
|
return;
|
|
89
89
|
}
|
|
90
90
|
this.log('sending %s to %p', msg.type, to);
|
|
91
|
-
yield
|
|
92
|
-
yield
|
|
91
|
+
yield dialPeerEvent({ peer: to }, options);
|
|
92
|
+
yield sendQueryEvent({ to, type: msg.type }, options);
|
|
93
93
|
let stream;
|
|
94
94
|
try {
|
|
95
95
|
const connection = await this.components.connectionManager.openConnection(to, options);
|
|
96
96
|
const stream = await connection.newStream(this.protocol, options);
|
|
97
97
|
await this._writeMessage(stream, msg.serialize(), options);
|
|
98
|
-
yield peerResponseEvent({ from: to, messageType: msg.type });
|
|
98
|
+
yield peerResponseEvent({ from: to, messageType: msg.type }, options);
|
|
99
99
|
}
|
|
100
100
|
catch (err) {
|
|
101
|
-
yield queryErrorEvent({ from: to, error: err });
|
|
101
|
+
yield queryErrorEvent({ from: to, error: err }, options);
|
|
102
102
|
}
|
|
103
103
|
finally {
|
|
104
104
|
if (stream != null) {
|
package/dist/src/network.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { KadDHTComponents, DHTRecord,
|
|
1
|
+
import type { KadDHTComponents, DHTRecord, DialPeerEvent, FinalPeerEvent, QueryEvent, Validators } from '../index.js';
|
|
2
2
|
import type { Network } from '../network.js';
|
|
3
3
|
import type { QueryManager, QueryOptions } from '../query/manager.js';
|
|
4
4
|
import type { RoutingTable } from '../routing-table/index.js';
|
|
@@ -41,14 +41,14 @@ export declare class PeerRouting {
|
|
|
41
41
|
* Kademlia 'node lookup' operation on a key, which could be a the
|
|
42
42
|
* bytes from a multihash or a peer ID
|
|
43
43
|
*/
|
|
44
|
-
getClosestPeers(key: Uint8Array, options?: QueryOptions): AsyncGenerator<
|
|
44
|
+
getClosestPeers(key: Uint8Array, options?: QueryOptions): AsyncGenerator<DialPeerEvent | QueryEvent>;
|
|
45
45
|
/**
|
|
46
46
|
* Query a particular peer for the value for the given key.
|
|
47
47
|
* It will either return the value or a list of closer peers.
|
|
48
48
|
*
|
|
49
49
|
* Note: The peerStore is updated with new addresses found for the given peer.
|
|
50
50
|
*/
|
|
51
|
-
getValueOrPeers(peer: PeerId, key: Uint8Array, options?: AbortOptions): AsyncGenerator<
|
|
51
|
+
getValueOrPeers(peer: PeerId, key: Uint8Array, options?: AbortOptions): AsyncGenerator<DialPeerEvent | QueryEvent>;
|
|
52
52
|
/**
|
|
53
53
|
* Verify a record, fetching missing public keys from the network.
|
|
54
54
|
* Throws an error if the record is invalid.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/peer-routing/index.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/peer-routing/index.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACrH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAErE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGtD,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,YAAY,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,EAAE,YAAY,CAAA;IAC1B,GAAG,EAAE,OAAO,CAAA;CACb;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;gBAE9B,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe;IAWhE;;;OAGG;IACG,aAAa,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAuCjE;;OAEG;IACK,eAAe,CAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAAC,UAAU,CAAC;IAK/G;;OAEG;IACK,oBAAoB,CAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAAC,UAAU,CAAC;IAyBnG;;OAEG;IACK,QAAQ,CAAE,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAAC,cAAc,GAAG,UAAU,CAAC;IAqDtG;;;OAGG;IACK,eAAe,CAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAAC,aAAa,GAAG,UAAU,CAAC;IAiDjH;;;;;OAKG;IACK,eAAe,CAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAAC,aAAa,GAAG,UAAU,CAAC;IAqB/H;;;OAGG;IACG,mBAAmB,CAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D;;;OAGG;IACG,qBAAqB,CAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;CAiCvF"}
|
|
@@ -86,7 +86,7 @@ export class PeerRouting {
|
|
|
86
86
|
if (recPeer.publicKey == null) {
|
|
87
87
|
throw new CodeError('public key missing', 'ERR_PUBLIC_KEY_MISSING');
|
|
88
88
|
}
|
|
89
|
-
yield valueEvent({ from: peer, value: recPeer.publicKey });
|
|
89
|
+
yield valueEvent({ from: peer, value: recPeer.publicKey }, options);
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
92
|
throw new CodeError(`Node not responding with its public key: ${peer.toString()}`, 'ERR_INVALID_RECORD');
|
|
@@ -104,56 +104,35 @@ export class PeerRouting {
|
|
|
104
104
|
yield finalPeerEvent({
|
|
105
105
|
from: this.components.peerId,
|
|
106
106
|
peer: pi
|
|
107
|
-
});
|
|
107
|
+
}, options);
|
|
108
108
|
return;
|
|
109
109
|
}
|
|
110
|
-
const key = await utils.convertPeerId(id);
|
|
111
|
-
const peers = this.routingTable.closestPeers(key);
|
|
112
|
-
// sanity check
|
|
113
|
-
const match = peers.find((p) => p.equals(id));
|
|
114
|
-
if (match != null) {
|
|
115
|
-
try {
|
|
116
|
-
const peer = await this.components.peerStore.get(id);
|
|
117
|
-
this.log('found in peerStore');
|
|
118
|
-
yield finalPeerEvent({
|
|
119
|
-
from: this.components.peerId,
|
|
120
|
-
peer: {
|
|
121
|
-
id: peer.id,
|
|
122
|
-
multiaddrs: peer.addresses.map((address) => address.multiaddr),
|
|
123
|
-
protocols: []
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
catch (err) {
|
|
129
|
-
if (err.code !== 'ERR_NOT_FOUND') {
|
|
130
|
-
throw err;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
110
|
const self = this; // eslint-disable-line @typescript-eslint/no-this-alias
|
|
135
111
|
const findPeerQuery = async function* ({ peer, signal }) {
|
|
136
112
|
const request = new Message(MESSAGE_TYPE.FIND_NODE, id.toBytes(), 0);
|
|
137
|
-
for await (const event of self.network.sendRequest(peer, request, {
|
|
113
|
+
for await (const event of self.network.sendRequest(peer, request, {
|
|
114
|
+
...options,
|
|
115
|
+
signal
|
|
116
|
+
})) {
|
|
138
117
|
yield event;
|
|
139
118
|
if (event.name === 'PEER_RESPONSE') {
|
|
140
119
|
const match = event.closer.find((p) => p.id.equals(id));
|
|
141
120
|
// found the peer
|
|
142
121
|
if (match != null) {
|
|
143
|
-
yield finalPeerEvent({ from: event.from, peer: match });
|
|
122
|
+
yield finalPeerEvent({ from: event.from, peer: match }, options);
|
|
144
123
|
}
|
|
145
124
|
}
|
|
146
125
|
}
|
|
147
126
|
};
|
|
148
127
|
let foundPeer = false;
|
|
149
|
-
for await (const event of this.queryManager.run(id.toBytes(),
|
|
128
|
+
for await (const event of this.queryManager.run(id.toBytes(), findPeerQuery, options)) {
|
|
150
129
|
if (event.name === 'FINAL_PEER') {
|
|
151
130
|
foundPeer = true;
|
|
152
131
|
}
|
|
153
132
|
yield event;
|
|
154
133
|
}
|
|
155
134
|
if (!foundPeer) {
|
|
156
|
-
yield queryErrorEvent({ from: this.components.peerId, error: new CodeError('Not found', 'ERR_NOT_FOUND') });
|
|
135
|
+
yield queryErrorEvent({ from: this.components.peerId, error: new CodeError('Not found', 'ERR_NOT_FOUND') }, options);
|
|
157
136
|
}
|
|
158
137
|
}
|
|
159
138
|
/**
|
|
@@ -170,9 +149,12 @@ export class PeerRouting {
|
|
|
170
149
|
const getCloserPeersQuery = async function* ({ peer, signal }) {
|
|
171
150
|
self.log('closerPeersSingle %s from %p', uint8ArrayToString(key, 'base32'), peer);
|
|
172
151
|
const request = new Message(MESSAGE_TYPE.FIND_NODE, key, 0);
|
|
173
|
-
yield* self.network.sendRequest(peer, request, {
|
|
152
|
+
yield* self.network.sendRequest(peer, request, {
|
|
153
|
+
...options,
|
|
154
|
+
signal
|
|
155
|
+
});
|
|
174
156
|
};
|
|
175
|
-
for await (const event of this.queryManager.run(key,
|
|
157
|
+
for await (const event of this.queryManager.run(key, getCloserPeersQuery, options)) {
|
|
176
158
|
yield event;
|
|
177
159
|
if (event.name === 'PEER_RESPONSE') {
|
|
178
160
|
await Promise.all(event.closer.map(async (peerData) => { await peers.add(peerData.id); }));
|
|
@@ -189,7 +171,7 @@ export class PeerRouting {
|
|
|
189
171
|
multiaddrs: peer.addresses.map(({ multiaddr }) => multiaddr),
|
|
190
172
|
protocols: peer.protocols
|
|
191
173
|
}
|
|
192
|
-
});
|
|
174
|
+
}, options);
|
|
193
175
|
}
|
|
194
176
|
catch (err) {
|
|
195
177
|
if (err.code !== 'ERR_NOT_FOUND') {
|
|
@@ -215,7 +197,7 @@ export class PeerRouting {
|
|
|
215
197
|
catch (err) {
|
|
216
198
|
const errMsg = 'invalid record received, discarded';
|
|
217
199
|
this.log(errMsg);
|
|
218
|
-
yield queryErrorEvent({ from: event.from, error: new CodeError(errMsg, 'ERR_INVALID_RECORD') });
|
|
200
|
+
yield queryErrorEvent({ from: event.from, error: new CodeError(errMsg, 'ERR_INVALID_RECORD') }, options);
|
|
219
201
|
continue;
|
|
220
202
|
}
|
|
221
203
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/peer-routing/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/peer-routing/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SendQueryEvent, PeerResponseEvent, DialPeerEvent, AddPeerEvent, ValueEvent, ProviderEvent, QueryErrorEvent, FinalPeerEvent, QueryOptions } from '../index.js';
|
|
2
2
|
import type { Message } from '../message/dht.js';
|
|
3
3
|
import type { PeerId } from '@libp2p/interface-peer-id';
|
|
4
4
|
import type { PeerInfo } from '@libp2p/interface-peer-info';
|
|
@@ -7,7 +7,7 @@ export interface QueryEventFields {
|
|
|
7
7
|
to: PeerId;
|
|
8
8
|
type: Message.MessageType;
|
|
9
9
|
}
|
|
10
|
-
export declare function
|
|
10
|
+
export declare function sendQueryEvent(fields: QueryEventFields, options?: QueryOptions): SendQueryEvent;
|
|
11
11
|
export interface PeerResponseEventField {
|
|
12
12
|
from: PeerId;
|
|
13
13
|
messageType: Message.MessageType;
|
|
@@ -15,33 +15,33 @@ export interface PeerResponseEventField {
|
|
|
15
15
|
providers?: PeerInfo[];
|
|
16
16
|
record?: Libp2pRecord;
|
|
17
17
|
}
|
|
18
|
-
export declare function peerResponseEvent(fields: PeerResponseEventField): PeerResponseEvent;
|
|
18
|
+
export declare function peerResponseEvent(fields: PeerResponseEventField, options?: QueryOptions): PeerResponseEvent;
|
|
19
19
|
export interface FinalPeerEventFields {
|
|
20
20
|
from: PeerId;
|
|
21
21
|
peer: PeerInfo;
|
|
22
22
|
}
|
|
23
|
-
export declare function finalPeerEvent(fields: FinalPeerEventFields): FinalPeerEvent;
|
|
23
|
+
export declare function finalPeerEvent(fields: FinalPeerEventFields, options?: QueryOptions): FinalPeerEvent;
|
|
24
24
|
export interface ErrorEventFields {
|
|
25
25
|
from: PeerId;
|
|
26
26
|
error: Error;
|
|
27
27
|
}
|
|
28
|
-
export declare function queryErrorEvent(fields: ErrorEventFields): QueryErrorEvent;
|
|
28
|
+
export declare function queryErrorEvent(fields: ErrorEventFields, options?: QueryOptions): QueryErrorEvent;
|
|
29
29
|
export interface ProviderEventFields {
|
|
30
30
|
from: PeerId;
|
|
31
31
|
providers: PeerInfo[];
|
|
32
32
|
}
|
|
33
|
-
export declare function providerEvent(fields: ProviderEventFields): ProviderEvent;
|
|
33
|
+
export declare function providerEvent(fields: ProviderEventFields, options?: QueryOptions): ProviderEvent;
|
|
34
34
|
export interface ValueEventFields {
|
|
35
35
|
from: PeerId;
|
|
36
36
|
value: Uint8Array;
|
|
37
37
|
}
|
|
38
|
-
export declare function valueEvent(fields: ValueEventFields): ValueEvent;
|
|
38
|
+
export declare function valueEvent(fields: ValueEventFields, options?: QueryOptions): ValueEvent;
|
|
39
39
|
export interface PeerEventFields {
|
|
40
40
|
peer: PeerId;
|
|
41
41
|
}
|
|
42
|
-
export declare function
|
|
43
|
-
export interface
|
|
42
|
+
export declare function addPeerEvent(fields: PeerEventFields, options?: QueryOptions): AddPeerEvent;
|
|
43
|
+
export interface DialPeerEventFields {
|
|
44
44
|
peer: PeerId;
|
|
45
45
|
}
|
|
46
|
-
export declare function
|
|
46
|
+
export declare function dialPeerEvent(fields: DialPeerEventFields, options?: QueryOptions): DialPeerEvent;
|
|
47
47
|
//# sourceMappingURL=events.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/query/events.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/query/events.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC3K,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,OAAO,CAAC,WAAW,CAAA;CAC1B;AAED,wBAAgB,cAAc,CAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAYpG;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,OAAO,CAAC,WAAW,CAAA;IAChC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAA;IACnB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,YAAY,CAAA;CACtB;AAED,wBAAgB,iBAAiB,CAAE,MAAM,EAAE,sBAAsB,EAAE,OAAO,GAAE,YAAiB,GAAG,iBAAiB,CAahH;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,QAAQ,CAAA;CACf;AAED,wBAAgB,cAAc,CAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAUxG;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,KAAK,CAAA;CACb;AAED,wBAAgB,eAAe,CAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,GAAE,YAAiB,GAAG,eAAe,CAUtG;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,QAAQ,EAAE,CAAA;CACtB;AAED,wBAAgB,aAAa,CAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAE,YAAiB,GAAG,aAAa,CAUrG;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,UAAU,CAAA;CAClB;AAED,wBAAgB,UAAU,CAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,GAAE,YAAiB,GAAG,UAAU,CAU5F;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;CACb;AAED,wBAAgB,YAAY,CAAE,MAAM,EAAE,eAAe,EAAE,OAAO,GAAE,YAAiB,GAAG,YAAY,CAU/F;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;CACb;AAED,wBAAgB,aAAa,CAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAE,YAAiB,GAAG,aAAa,CAUrG"}
|
package/dist/src/query/events.js
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
|
+
import { CustomEvent } from '@libp2p/interfaces/events';
|
|
1
2
|
import { MESSAGE_TYPE_LOOKUP } from '../message/index.js';
|
|
2
|
-
export function
|
|
3
|
-
|
|
3
|
+
export function sendQueryEvent(fields, options = {}) {
|
|
4
|
+
const event = {
|
|
4
5
|
...fields,
|
|
5
|
-
name: '
|
|
6
|
+
name: 'SEND_QUERY',
|
|
6
7
|
type: 0,
|
|
7
8
|
messageName: fields.type,
|
|
8
9
|
messageType: MESSAGE_TYPE_LOOKUP.indexOf(fields.type.toString())
|
|
9
10
|
};
|
|
11
|
+
options.onProgress?.(new CustomEvent('kad-dht:query:send-query', { detail: event }));
|
|
12
|
+
return event;
|
|
10
13
|
}
|
|
11
|
-
export function peerResponseEvent(fields) {
|
|
12
|
-
|
|
14
|
+
export function peerResponseEvent(fields, options = {}) {
|
|
15
|
+
const event = {
|
|
13
16
|
...fields,
|
|
14
17
|
name: 'PEER_RESPONSE',
|
|
15
18
|
type: 1,
|
|
@@ -17,47 +20,61 @@ export function peerResponseEvent(fields) {
|
|
|
17
20
|
closer: (fields.closer != null) ? fields.closer : [],
|
|
18
21
|
providers: (fields.providers != null) ? fields.providers : []
|
|
19
22
|
};
|
|
23
|
+
options.onProgress?.(new CustomEvent('kad-dht:query:peer-response', { detail: event }));
|
|
24
|
+
return event;
|
|
20
25
|
}
|
|
21
|
-
export function finalPeerEvent(fields) {
|
|
22
|
-
|
|
26
|
+
export function finalPeerEvent(fields, options = {}) {
|
|
27
|
+
const event = {
|
|
23
28
|
...fields,
|
|
24
29
|
name: 'FINAL_PEER',
|
|
25
30
|
type: 2
|
|
26
31
|
};
|
|
32
|
+
options.onProgress?.(new CustomEvent('kad-dht:query:final-peer', { detail: event }));
|
|
33
|
+
return event;
|
|
27
34
|
}
|
|
28
|
-
export function queryErrorEvent(fields) {
|
|
29
|
-
|
|
35
|
+
export function queryErrorEvent(fields, options = {}) {
|
|
36
|
+
const event = {
|
|
30
37
|
...fields,
|
|
31
38
|
name: 'QUERY_ERROR',
|
|
32
39
|
type: 3
|
|
33
40
|
};
|
|
41
|
+
options.onProgress?.(new CustomEvent('kad-dht:query:query-error', { detail: event }));
|
|
42
|
+
return event;
|
|
34
43
|
}
|
|
35
|
-
export function providerEvent(fields) {
|
|
36
|
-
|
|
44
|
+
export function providerEvent(fields, options = {}) {
|
|
45
|
+
const event = {
|
|
37
46
|
...fields,
|
|
38
47
|
name: 'PROVIDER',
|
|
39
48
|
type: 4
|
|
40
49
|
};
|
|
50
|
+
options.onProgress?.(new CustomEvent('kad-dht:query:provider', { detail: event }));
|
|
51
|
+
return event;
|
|
41
52
|
}
|
|
42
|
-
export function valueEvent(fields) {
|
|
43
|
-
|
|
53
|
+
export function valueEvent(fields, options = {}) {
|
|
54
|
+
const event = {
|
|
44
55
|
...fields,
|
|
45
56
|
name: 'VALUE',
|
|
46
57
|
type: 5
|
|
47
58
|
};
|
|
59
|
+
options.onProgress?.(new CustomEvent('kad-dht:query:value', { detail: event }));
|
|
60
|
+
return event;
|
|
48
61
|
}
|
|
49
|
-
export function
|
|
50
|
-
|
|
62
|
+
export function addPeerEvent(fields, options = {}) {
|
|
63
|
+
const event = {
|
|
51
64
|
...fields,
|
|
52
|
-
name: '
|
|
65
|
+
name: 'ADD_PEER',
|
|
53
66
|
type: 6
|
|
54
67
|
};
|
|
68
|
+
options.onProgress?.(new CustomEvent('kad-dht:query:add-peer', { detail: event }));
|
|
69
|
+
return event;
|
|
55
70
|
}
|
|
56
|
-
export function
|
|
57
|
-
|
|
71
|
+
export function dialPeerEvent(fields, options = {}) {
|
|
72
|
+
const event = {
|
|
58
73
|
...fields,
|
|
59
|
-
name: '
|
|
74
|
+
name: 'DIAL_PEER',
|
|
60
75
|
type: 7
|
|
61
76
|
};
|
|
77
|
+
options.onProgress?.(new CustomEvent('kad-dht:query:dial-peer', { detail: event }));
|
|
78
|
+
return event;
|
|
62
79
|
}
|
|
63
80
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/query/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAYzD,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/query/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { QueryFunc } from './types.js';
|
|
2
|
-
import type { QueryEvent } from '../index.js';
|
|
2
|
+
import type { QueryEvent, QueryOptions as RootQueryOptions } from '../index.js';
|
|
3
|
+
import type { RoutingTable } from '../routing-table/index.js';
|
|
3
4
|
import type { Metrics } from '@libp2p/interface-metrics';
|
|
4
5
|
import type { PeerId } from '@libp2p/interface-peer-id';
|
|
5
|
-
import type { AbortOptions } from '@libp2p/interfaces';
|
|
6
6
|
import type { Startable } from '@libp2p/interfaces/startable';
|
|
7
7
|
import type { DeferredPromise } from 'p-defer';
|
|
8
8
|
export interface CleanUpEvents {
|
|
@@ -13,12 +13,13 @@ export interface QueryManagerInit {
|
|
|
13
13
|
disjointPaths?: number;
|
|
14
14
|
alpha?: number;
|
|
15
15
|
initialQuerySelfHasRun: DeferredPromise<void>;
|
|
16
|
+
routingTable: RoutingTable;
|
|
16
17
|
}
|
|
17
18
|
export interface QueryManagerComponents {
|
|
18
19
|
peerId: PeerId;
|
|
19
20
|
metrics?: Metrics;
|
|
20
21
|
}
|
|
21
|
-
export interface QueryOptions extends
|
|
22
|
+
export interface QueryOptions extends RootQueryOptions {
|
|
22
23
|
queryFuncTimeout?: number;
|
|
23
24
|
isSelfQuery?: boolean;
|
|
24
25
|
}
|
|
@@ -34,6 +35,7 @@ export declare class QueryManager implements Startable {
|
|
|
34
35
|
private running;
|
|
35
36
|
private queries;
|
|
36
37
|
private metrics?;
|
|
38
|
+
private readonly routingTable;
|
|
37
39
|
private initialQuerySelfHasRun?;
|
|
38
40
|
constructor(components: QueryManagerComponents, init: QueryManagerInit);
|
|
39
41
|
isStarted(): boolean;
|
|
@@ -45,6 +47,6 @@ export declare class QueryManager implements Startable {
|
|
|
45
47
|
* Stops all queries
|
|
46
48
|
*/
|
|
47
49
|
stop(): Promise<void>;
|
|
48
|
-
run(key: Uint8Array,
|
|
50
|
+
run(key: Uint8Array, queryFunc: QueryFunc, options?: QueryOptions): AsyncGenerator<QueryEvent>;
|
|
49
51
|
}
|
|
50
52
|
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/query/manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/query/manager.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAU,OAAO,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,WAAW,CAAA;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,sBAAsB,EAAE,eAAe,CAAC,IAAI,CAAC,CAAA;IAC7C,YAAY,EAAE,YAAY,CAAA;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;GAEG;AACH,qBAAa,YAAa,YAAW,SAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwB;IACnD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IACtB,aAAa,EAAE,MAAM,CAAA;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAiB;IACpD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAC,CAGf;IAED,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAc;IAC3C,OAAO,CAAC,sBAAsB,CAAC,CAAuB;gBAEzC,UAAU,EAAE,sBAAsB,EAAE,IAAI,EAAE,gBAAgB;IAsBvE,SAAS,IAAK,OAAO;IAIrB;;OAEG;IACG,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IAW7B;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;IAMpB,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAAC,UAAU,CAAC;CAmH5G"}
|
|
@@ -7,6 +7,7 @@ import { anySignal } from 'any-signal';
|
|
|
7
7
|
import merge from 'it-merge';
|
|
8
8
|
import { toString as uint8ArrayToString } from 'uint8arrays/to-string';
|
|
9
9
|
import { ALPHA, K, DEFAULT_QUERY_TIMEOUT } from '../constants.js';
|
|
10
|
+
import { convertBuffer } from '../utils.js';
|
|
10
11
|
import { queryPath } from './query-path.js';
|
|
11
12
|
/**
|
|
12
13
|
* Keeps track of all running queries
|
|
@@ -20,6 +21,7 @@ export class QueryManager {
|
|
|
20
21
|
running;
|
|
21
22
|
queries;
|
|
22
23
|
metrics;
|
|
24
|
+
routingTable;
|
|
23
25
|
initialQuerySelfHasRun;
|
|
24
26
|
constructor(components, init) {
|
|
25
27
|
const { lan = false, disjointPaths = K, alpha = ALPHA } = init;
|
|
@@ -30,6 +32,7 @@ export class QueryManager {
|
|
|
30
32
|
this.lan = lan;
|
|
31
33
|
this.queries = 0;
|
|
32
34
|
this.initialQuerySelfHasRun = init.initialQuerySelfHasRun;
|
|
35
|
+
this.routingTable = init.routingTable;
|
|
33
36
|
// allow us to stop queries on shut down
|
|
34
37
|
this.shutDownController = new AbortController();
|
|
35
38
|
// make sure we don't make a lot of noise in the logs
|
|
@@ -62,7 +65,7 @@ export class QueryManager {
|
|
|
62
65
|
this.running = false;
|
|
63
66
|
this.shutDownController.abort();
|
|
64
67
|
}
|
|
65
|
-
async *run(key,
|
|
68
|
+
async *run(key, queryFunc, options = {}) {
|
|
66
69
|
if (!this.running) {
|
|
67
70
|
throw new Error('QueryManager not started');
|
|
68
71
|
}
|
|
@@ -90,7 +93,6 @@ export class QueryManager {
|
|
|
90
93
|
catch { } // fails on node < 15.4
|
|
91
94
|
const log = logger(`libp2p:kad-dht:${this.lan ? 'lan' : 'wan'}:query:` + uint8ArrayToString(key, 'base58btc'));
|
|
92
95
|
// query a subset of peers up to `kBucketSize / 2` in length
|
|
93
|
-
const peersToQuery = peers.slice(0, Math.min(this.disjointPaths, peers.length));
|
|
94
96
|
const startTime = Date.now();
|
|
95
97
|
const cleanUp = new EventEmitter();
|
|
96
98
|
try {
|
|
@@ -109,6 +111,9 @@ export class QueryManager {
|
|
|
109
111
|
log('query:start');
|
|
110
112
|
this.queries++;
|
|
111
113
|
this.metrics?.runningQueries.update(this.queries);
|
|
114
|
+
const id = await convertBuffer(key);
|
|
115
|
+
const peers = this.routingTable.closestPeers(id);
|
|
116
|
+
const peersToQuery = peers.slice(0, Math.min(this.disjointPaths, peers.length));
|
|
112
117
|
if (peers.length === 0) {
|
|
113
118
|
log.error('Running query with no peers');
|
|
114
119
|
return;
|
|
@@ -129,7 +134,8 @@ export class QueryManager {
|
|
|
129
134
|
cleanUp,
|
|
130
135
|
queryFuncTimeout: options.queryFuncTimeout,
|
|
131
136
|
log,
|
|
132
|
-
peersSeen
|
|
137
|
+
peersSeen,
|
|
138
|
+
onProgress: options.onProgress
|
|
133
139
|
});
|
|
134
140
|
});
|
|
135
141
|
// Execute the query along each disjoint path and yield their results as they become available
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/query/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EACL,KAAK,EAAE,CAAC,EAAE,qBAAqB,EAChC,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/query/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { CleanUpEvents } from './manager.js';
|
|
2
|
-
import type { QueryEvent } from '../index.js';
|
|
2
|
+
import type { QueryEvent, QueryOptions } from '../index.js';
|
|
3
3
|
import type { QueryFunc } from '../query/types.js';
|
|
4
4
|
import type { PeerId } from '@libp2p/interface-peer-id';
|
|
5
5
|
import type { EventEmitter } from '@libp2p/interfaces/events';
|
|
6
6
|
import type { Logger } from '@libp2p/logger';
|
|
7
7
|
import type { PeerSet } from '@libp2p/peer-collections';
|
|
8
|
-
export interface QueryPathOptions {
|
|
8
|
+
export interface QueryPathOptions extends QueryOptions {
|
|
9
9
|
/**
|
|
10
10
|
* What are we trying to find
|
|
11
11
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-path.d.ts","sourceRoot":"","sources":["../../../src/query/query-path.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"query-path.d.ts","sourceRoot":"","sources":["../../../src/query/query-path.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAIvD,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD;;OAEG;IACH,GAAG,EAAE,UAAU,CAAA;IAEf;;OAEG;IACH,YAAY,EAAE,MAAM,CAAA;IAEpB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,MAAM,EAAE,WAAW,CAAA;IAEnB;;OAEG;IACH,KAAK,EAAE,SAAS,CAAA;IAEhB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC,aAAa,CAAC,CAAA;IAEpC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IAEX;;OAEG;IACH,SAAS,EAAE,OAAO,CAAA;CACnB;AAED;;;GAGG;AACH,wBAAwB,SAAS,CAAE,OAAO,EAAE,gBAAgB,GAAG,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAqGzG"}
|