@helia/bitswap 3.0.15-2d8295c2 → 3.0.15-33e46813
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 +1 -1
- package/dist/index.min.js.map +3 -3
- package/dist/src/bitswap.d.ts +2 -2
- package/dist/src/bitswap.d.ts.map +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/session.d.ts.map +1 -1
- package/dist/src/session.js +8 -2
- package/dist/src/session.js.map +1 -1
- package/package.json +3 -3
- package/src/bitswap.ts +2 -2
- package/src/index.ts +2 -2
- package/src/session.ts +8 -2
package/dist/src/bitswap.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { PeerWantLists } from './peer-want-lists/index.js';
|
|
|
3
3
|
import { Stats } from './stats.js';
|
|
4
4
|
import { WantList } from './want-list.js';
|
|
5
5
|
import type { BitswapOptions, Bitswap as BitswapInterface, BitswapWantProgressEvents, BitswapNotifyProgressEvents, WantListEntry, BitswapComponents } from './index.js';
|
|
6
|
-
import type {
|
|
6
|
+
import type { CreateSessionOptions, ProviderOptions, SessionBlockBroker } from '@helia/interface';
|
|
7
7
|
import type { Libp2p, PeerId, AbortOptions } from '@libp2p/interface';
|
|
8
8
|
import type { Blockstore } from 'interface-blockstore';
|
|
9
9
|
import type { CID } from 'multiformats/cid';
|
|
@@ -31,7 +31,7 @@ export declare class Bitswap implements BitswapInterface {
|
|
|
31
31
|
wantList: WantList;
|
|
32
32
|
libp2p: Libp2p;
|
|
33
33
|
constructor(components: BitswapComponents, init?: BitswapOptions);
|
|
34
|
-
createSession(options?: CreateSessionOptions): Required<Pick<
|
|
34
|
+
createSession(options?: CreateSessionOptions): Required<Pick<SessionBlockBroker<BitswapWantProgressEvents>, 'retrieve' | 'addPeer'>>;
|
|
35
35
|
want(cid: CID, options?: WantOptions): Promise<Uint8Array>;
|
|
36
36
|
/**
|
|
37
37
|
* Sends notifications about the arrival of a block
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bitswap.d.ts","sourceRoot":"","sources":["../../src/bitswap.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,IAAI,gBAAgB,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACvK,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"bitswap.d.ts","sourceRoot":"","sources":["../../src/bitswap.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,IAAI,gBAAgB,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACvK,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACjG,OAAO,KAAK,EAAmB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEtF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEtD,MAAM,WAAW,WAAY,SAAQ,YAAY,EAAE,eAAe,CAAC,yBAAyB,CAAC,EAAE,eAAe;IAC5G;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;GAGG;AACH,qBAAa,OAAQ,YAAW,gBAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,SAAgB,KAAK,EAAE,KAAK,CAAA;IACrB,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,EAAE,aAAa,CAAA;IAC5B,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;gBAER,UAAU,EAAE,iBAAiB,EAAE,IAAI,GAAE,cAAmB;IAyBrE,aAAa,CAAE,OAAO,GAAE,oBAAyB,GAAG,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC;IASnI,IAAI,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAmCrE;;OAEG;IACG,MAAM,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,eAAe,CAAC,2BAA2B,CAAC,GAAG,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjH,WAAW,IAAK,aAAa,EAAE;IAU/B,eAAe,CAAE,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,SAAS;IAI3D;;OAEG;IACG,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC;IAK7B;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,IAAI,CAAC;CAI7B"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import type { BitswapNetworkNotifyProgressEvents, BitswapNetworkWantProgressEvents, BitswapNetworkProgressEvents } from './network.js';
|
|
9
9
|
import type { WantType } from './pb/message.js';
|
|
10
|
-
import type {
|
|
10
|
+
import type { CreateSessionOptions, ProviderOptions, SessionBlockBroker } from '@helia/interface';
|
|
11
11
|
import type { Routing } from '@helia/interface/routing';
|
|
12
12
|
import type { Libp2p, AbortOptions, Startable, ComponentLogger, Metrics, PeerId } from '@libp2p/interface';
|
|
13
13
|
import type { Blockstore } from 'interface-blockstore';
|
|
@@ -51,7 +51,7 @@ export interface Bitswap extends Startable {
|
|
|
51
51
|
/**
|
|
52
52
|
* Start a session to retrieve a file from the network
|
|
53
53
|
*/
|
|
54
|
-
createSession(options?: CreateSessionOptions<BitswapWantProgressEvents>): Required<Pick<
|
|
54
|
+
createSession(options?: CreateSessionOptions<BitswapWantProgressEvents>): Required<Pick<SessionBlockBroker<BitswapWantProgressEvents>, 'retrieve' | 'addPeer'>>;
|
|
55
55
|
}
|
|
56
56
|
export interface MultihashHasherLoader {
|
|
57
57
|
getHasher(codeOrName: number | string): Promise<MultihashHasher>;
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,kCAAkC,EAAE,gCAAgC,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAA;AACtI,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,kCAAkC,EAAE,gCAAgC,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAA;AACtI,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACjG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAErE,MAAM,MAAM,yBAAyB,GACnC,8BAA8B,CAAA;AAEhC,MAAM,MAAM,2BAA2B,GACrC,kCAAkC,CAAA;AAEpC,MAAM,MAAM,8BAA8B,GACxC,aAAa,CAAC,gBAAgB,EAAE,GAAG,CAAC,GACpC,aAAa,CAAC,cAAc,EAAE,GAAG,CAAC,GAClC,aAAa,CAAC,eAAe,EAAE;IAAE,GAAG,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAC5D,gCAAgC,CAAA;AAElC,YAAY,EAAE,kCAAkC,EAAE,CAAA;AAClD,YAAY,EAAE,gCAAgC,EAAE,CAAA;AAChD,YAAY,EAAE,4BAA4B,EAAE,CAAA;AAC5C,YAAY,EAAE,QAAQ,EAAE,CAAA;AACxB,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAEnD,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,GAAG,CAAA;IACR,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,QAAQ,CAAA;CACnB;AAED,MAAM,WAAW,OAAQ,SAAQ,SAAS;IACxC;;OAEG;IACH,WAAW,IAAI,aAAa,EAAE,CAAA;IAE9B;;;OAGG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,SAAS,CAAA;IAE5D;;OAEG;IACH,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,2BAA2B,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEvF;;OAEG;IACH,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,eAAe,CAAC,yBAAyB,CAAC,GAAG,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAE1H;;OAEG;IACH,aAAa,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAC,yBAAyB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC,CAAA;CAChK;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;CACjE;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,UAAU,CAAA;IACtB,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IAEjC;;OAEG;IACH,UAAU,CAAC,EAAE,qBAAqB,CAAA;IAElC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAE/B;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B;;;;;;;;OAQG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAA;IAEnC;;;;;;;;OAQG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAE/B;;;;;;;;OAQG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,eAAO,MAAM,aAAa,GAAI,YAAY,iBAAiB,EAAE,UAAS,cAAmB,KAAG,OAE3F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAE3C,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,cAAM,cAAe,SAAQ,eAAe,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC7E,SAAgB,IAAI,qBAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;gBAElB,UAAU,EAAE,wBAAwB,EAAE,IAAI,EAAE,oBAAoB;IAWvE,aAAa,CAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAcpF,gBAAgB,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAAC,MAAM,CAAC;IAMvF,aAAa,CAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM;IAIrD,MAAM,CAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAIhD,iBAAiB,CAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAE3C,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,cAAM,cAAe,SAAQ,eAAe,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC7E,SAAgB,IAAI,qBAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;gBAElB,UAAU,EAAE,wBAAwB,EAAE,IAAI,EAAE,oBAAoB;IAWvE,aAAa,CAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAcpF,gBAAgB,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB,GAAG,cAAc,CAAC,MAAM,CAAC;IAMvF,aAAa,CAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM;IAIrD,MAAM,CAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAIhD,iBAAiB,CAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CAe1H;AAED,wBAAgB,oBAAoB,CAAE,UAAU,EAAE,wBAAwB,EAAE,IAAI,EAAE,oBAAoB,GAAG,cAAc,CAEtH"}
|
package/dist/src/session.js
CHANGED
|
@@ -38,8 +38,14 @@ class BitswapSession extends AbstractSession {
|
|
|
38
38
|
if (isPeerId(provider)) {
|
|
39
39
|
return provider;
|
|
40
40
|
}
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
if (await this.libp2p.isDialable(provider) === false) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
try {
|
|
45
|
+
const connection = await this.libp2p.dial(provider, options);
|
|
46
|
+
return connection.remotePeer;
|
|
47
|
+
}
|
|
48
|
+
catch { }
|
|
43
49
|
}
|
|
44
50
|
}
|
|
45
51
|
export function createBitswapSession(components, init) {
|
package/dist/src/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAiB5C,MAAM,cAAe,SAAQ,eAAkD;IAC7D,IAAI,GAAG,iBAAiB,CAAA;IACvB,QAAQ,CAAU;IAClB,OAAO,CAAS;IAChB,MAAM,CAAQ;IAE/B,YAAa,UAAoC,EAAE,IAA0B;QAC3E,KAAK,CAAC,UAAU,EAAE;YAChB,GAAG,IAAI;YACP,IAAI,EAAE,uBAAuB;SAC9B,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAA;QACnC,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;QACjC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,aAAa,CAAE,GAAQ,EAAE,QAAgB,EAAE,OAAqB;QACpE,IAAI,CAAC,GAAG,CAAC,iCAAiC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;QAE1D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QAE3E,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;QAEzE,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACvC,OAAO,MAAM,CAAC,KAAK,CAAA;QACrB,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;IAChD,CAAC;IAED,KAAK,CAAC,CAAE,gBAAgB,CAAE,GAAQ,EAAE,UAAwB,EAAE;QAC5D,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;YACtE,MAAM,QAAQ,CAAC,EAAE,CAAA;QACnB,CAAC;IACH,CAAC;IAED,aAAa,CAAE,QAAgB;QAC7B,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,CAAA;IACrC,CAAC;IAED,MAAM,CAAE,SAAiB,EAAE,SAAiB;QAC1C,OAAO,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAE,QAA0C,EAAE,OAAsB;QACzF,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAiB5C,MAAM,cAAe,SAAQ,eAAkD;IAC7D,IAAI,GAAG,iBAAiB,CAAA;IACvB,QAAQ,CAAU;IAClB,OAAO,CAAS;IAChB,MAAM,CAAQ;IAE/B,YAAa,UAAoC,EAAE,IAA0B;QAC3E,KAAK,CAAC,UAAU,EAAE;YAChB,GAAG,IAAI;YACP,IAAI,EAAE,uBAAuB;SAC9B,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAA;QACnC,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;QACjC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,aAAa,CAAE,GAAQ,EAAE,QAAgB,EAAE,OAAqB;QACpE,IAAI,CAAC,GAAG,CAAC,iCAAiC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;QAE1D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QAE3E,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;QAEzE,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACvC,OAAO,MAAM,CAAC,KAAK,CAAA;QACrB,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;IAChD,CAAC;IAED,KAAK,CAAC,CAAE,gBAAgB,CAAE,GAAQ,EAAE,UAAwB,EAAE;QAC5D,IAAI,KAAK,EAAE,MAAM,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;YACtE,MAAM,QAAQ,CAAC,EAAE,CAAA;QACnB,CAAC;IACH,CAAC;IAED,aAAa,CAAE,QAAgB;QAC7B,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,CAAA;IACrC,CAAC;IAED,MAAM,CAAE,SAAiB,EAAE,SAAiB;QAC1C,OAAO,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAE,QAA0C,EAAE,OAAsB;QACzF,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC;YACrD,OAAM;QACR,CAAC;QAED,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YAE5D,OAAO,UAAU,CAAC,UAAU,CAAA;QAC9B,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;CACF;AAED,MAAM,UAAU,oBAAoB,CAAE,UAAoC,EAAE,IAA0B;IACpG,OAAO,IAAI,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;AAC7C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@helia/bitswap",
|
|
3
|
-
"version": "3.0.15-
|
|
3
|
+
"version": "3.0.15-33e46813",
|
|
4
4
|
"description": "JavaScript implementation of the Bitswap data exchange protocol used by Helia",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/ipfs/helia/tree/main/packages/bitswap#readme",
|
|
@@ -51,8 +51,8 @@
|
|
|
51
51
|
"docs": "aegir docs"
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@helia/interface": "6.0.3-
|
|
55
|
-
"@helia/utils": "2.3.5-
|
|
54
|
+
"@helia/interface": "6.0.3-33e46813",
|
|
55
|
+
"@helia/utils": "2.3.5-33e46813",
|
|
56
56
|
"@libp2p/interface": "^3.1.0",
|
|
57
57
|
"@libp2p/logger": "^6.0.5",
|
|
58
58
|
"@libp2p/peer-collections": "^7.0.5",
|
package/src/bitswap.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { createBitswapSession } from './session.js'
|
|
|
7
7
|
import { Stats } from './stats.js'
|
|
8
8
|
import { WantList } from './want-list.js'
|
|
9
9
|
import type { BitswapOptions, Bitswap as BitswapInterface, BitswapWantProgressEvents, BitswapNotifyProgressEvents, WantListEntry, BitswapComponents } from './index.js'
|
|
10
|
-
import type {
|
|
10
|
+
import type { CreateSessionOptions, ProviderOptions, SessionBlockBroker } from '@helia/interface'
|
|
11
11
|
import type { ComponentLogger, Libp2p, PeerId, AbortOptions } from '@libp2p/interface'
|
|
12
12
|
import type { Logger } from '@libp2p/logger'
|
|
13
13
|
import type { Blockstore } from 'interface-blockstore'
|
|
@@ -63,7 +63,7 @@ export class Bitswap implements BitswapInterface {
|
|
|
63
63
|
}, init)
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
createSession (options: CreateSessionOptions = {}): Required<Pick<
|
|
66
|
+
createSession (options: CreateSessionOptions = {}): Required<Pick<SessionBlockBroker<BitswapWantProgressEvents>, 'retrieve' | 'addPeer'>> {
|
|
67
67
|
return createBitswapSession({
|
|
68
68
|
wantList: this.wantList,
|
|
69
69
|
network: this.network,
|
package/src/index.ts
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { Bitswap as BitswapClass } from './bitswap.js'
|
|
10
10
|
import type { BitswapNetworkNotifyProgressEvents, BitswapNetworkWantProgressEvents, BitswapNetworkProgressEvents } from './network.js'
|
|
11
11
|
import type { WantType } from './pb/message.js'
|
|
12
|
-
import type {
|
|
12
|
+
import type { CreateSessionOptions, ProviderOptions, SessionBlockBroker } from '@helia/interface'
|
|
13
13
|
import type { Routing } from '@helia/interface/routing'
|
|
14
14
|
import type { Libp2p, AbortOptions, Startable, ComponentLogger, Metrics, PeerId } from '@libp2p/interface'
|
|
15
15
|
import type { Blockstore } from 'interface-blockstore'
|
|
@@ -66,7 +66,7 @@ export interface Bitswap extends Startable {
|
|
|
66
66
|
/**
|
|
67
67
|
* Start a session to retrieve a file from the network
|
|
68
68
|
*/
|
|
69
|
-
createSession(options?: CreateSessionOptions<BitswapWantProgressEvents>): Required<Pick<
|
|
69
|
+
createSession(options?: CreateSessionOptions<BitswapWantProgressEvents>): Required<Pick<SessionBlockBroker<BitswapWantProgressEvents>, 'retrieve' | 'addPeer'>>
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
export interface MultihashHasherLoader {
|
package/src/session.ts
CHANGED
|
@@ -66,9 +66,15 @@ class BitswapSession extends AbstractSession<PeerId, BitswapWantProgressEvents>
|
|
|
66
66
|
return provider
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
|
|
69
|
+
if (await this.libp2p.isDialable(provider) === false) {
|
|
70
|
+
return
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
try {
|
|
74
|
+
const connection = await this.libp2p.dial(provider, options)
|
|
70
75
|
|
|
71
|
-
|
|
76
|
+
return connection.remotePeer
|
|
77
|
+
} catch {}
|
|
72
78
|
}
|
|
73
79
|
}
|
|
74
80
|
|