cairn-p2p 0.3.1 → 0.3.2
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/browser.cjs +101 -62
- package/dist/browser.d.cts +1 -3
- package/dist/browser.d.ts +1 -3
- package/dist/browser.js +1951 -22
- package/dist/index.cjs +101 -62
- package/dist/index.d.cts +596 -2
- package/dist/index.d.ts +596 -2
- package/dist/index.js +1845 -22
- package/dist/libp2p-node-4XKNTJT4.js +88 -0
- package/package.json +2 -2
- package/src/browser.ts +23 -43
- package/src/node.ts +6 -4
- package/dist/chunk-A5RZKH7M.js +0 -1928
package/dist/browser.cjs
CHANGED
|
@@ -5,6 +5,9 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __esm = (fn, res) => function __init() {
|
|
9
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
10
|
+
};
|
|
8
11
|
var __export = (target, all) => {
|
|
9
12
|
for (var name in all)
|
|
10
13
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -27,6 +30,102 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
27
30
|
));
|
|
28
31
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
32
|
|
|
33
|
+
// src/transport/libp2p-node.ts
|
|
34
|
+
var libp2p_node_exports = {};
|
|
35
|
+
__export(libp2p_node_exports, {
|
|
36
|
+
BROWSER_TRANSPORT_CHAIN: () => BROWSER_TRANSPORT_CHAIN,
|
|
37
|
+
NODEJS_TRANSPORT_CHAIN: () => NODEJS_TRANSPORT_CHAIN,
|
|
38
|
+
createCairnNode: () => createCairnNode,
|
|
39
|
+
defaultTransportConfig: () => defaultTransportConfig,
|
|
40
|
+
isBrowserEnvironment: () => isBrowserEnvironment,
|
|
41
|
+
isNodeEnvironment: () => isNodeEnvironment
|
|
42
|
+
});
|
|
43
|
+
function defaultTransportConfig() {
|
|
44
|
+
return {
|
|
45
|
+
quicEnabled: true,
|
|
46
|
+
tcpEnabled: true,
|
|
47
|
+
websocketEnabled: true,
|
|
48
|
+
webtransportEnabled: true,
|
|
49
|
+
webrtcEnabled: true,
|
|
50
|
+
circuitRelayEnabled: true,
|
|
51
|
+
perTransportTimeoutMs: 1e4,
|
|
52
|
+
stunServers: [
|
|
53
|
+
"stun:stun.l.google.com:19302",
|
|
54
|
+
"stun:stun1.l.google.com:19302"
|
|
55
|
+
],
|
|
56
|
+
turnServers: []
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
function isNodeEnvironment() {
|
|
60
|
+
return typeof globalThis.process !== "undefined" && typeof globalThis.process.versions !== "undefined" && typeof globalThis.process.versions.node !== "undefined";
|
|
61
|
+
}
|
|
62
|
+
function isBrowserEnvironment() {
|
|
63
|
+
return typeof globalThis.window !== "undefined" && typeof globalThis.document !== "undefined";
|
|
64
|
+
}
|
|
65
|
+
async function createCairnNode(options) {
|
|
66
|
+
const config = { ...defaultTransportConfig(), ...options?.config };
|
|
67
|
+
const { createLibp2p } = await import("libp2p");
|
|
68
|
+
const { yamux } = await import("@libp2p/yamux");
|
|
69
|
+
const { noise } = await import("@chainsafe/libp2p-noise");
|
|
70
|
+
const transports = [];
|
|
71
|
+
if (isNodeEnvironment()) {
|
|
72
|
+
if (config.tcpEnabled) {
|
|
73
|
+
const { tcp } = await import("@libp2p/tcp");
|
|
74
|
+
transports.push(tcp());
|
|
75
|
+
}
|
|
76
|
+
if (config.websocketEnabled) {
|
|
77
|
+
const { webSockets } = await import("@libp2p/websockets");
|
|
78
|
+
transports.push(webSockets());
|
|
79
|
+
}
|
|
80
|
+
} else {
|
|
81
|
+
if (config.webrtcEnabled) {
|
|
82
|
+
const { webRTC } = await import("@libp2p/webrtc");
|
|
83
|
+
transports.push(webRTC());
|
|
84
|
+
}
|
|
85
|
+
if (config.websocketEnabled) {
|
|
86
|
+
const { webSockets } = await import("@libp2p/websockets");
|
|
87
|
+
transports.push(webSockets());
|
|
88
|
+
}
|
|
89
|
+
if (config.webtransportEnabled) {
|
|
90
|
+
const { webTransport } = await import("@libp2p/webtransport");
|
|
91
|
+
transports.push(webTransport());
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if (config.circuitRelayEnabled) {
|
|
95
|
+
const { circuitRelayTransport } = await import("@libp2p/circuit-relay-v2");
|
|
96
|
+
transports.push(circuitRelayTransport());
|
|
97
|
+
}
|
|
98
|
+
const node = await createLibp2p({
|
|
99
|
+
transports,
|
|
100
|
+
streamMuxers: [yamux()],
|
|
101
|
+
connectionEncrypters: [noise()]
|
|
102
|
+
});
|
|
103
|
+
return node;
|
|
104
|
+
}
|
|
105
|
+
var BROWSER_TRANSPORT_CHAIN, NODEJS_TRANSPORT_CHAIN;
|
|
106
|
+
var init_libp2p_node = __esm({
|
|
107
|
+
"src/transport/libp2p-node.ts"() {
|
|
108
|
+
"use strict";
|
|
109
|
+
BROWSER_TRANSPORT_CHAIN = [
|
|
110
|
+
"quic",
|
|
111
|
+
// WebRTC direct maps conceptually to the "best effort direct" slot
|
|
112
|
+
"websocket-tls",
|
|
113
|
+
"webtransport"
|
|
114
|
+
];
|
|
115
|
+
NODEJS_TRANSPORT_CHAIN = [
|
|
116
|
+
"quic",
|
|
117
|
+
"stun-udp",
|
|
118
|
+
"tcp",
|
|
119
|
+
"turn-udp",
|
|
120
|
+
"turn-tcp",
|
|
121
|
+
"websocket-tls",
|
|
122
|
+
"webtransport",
|
|
123
|
+
"circuit-relay-v2",
|
|
124
|
+
"https-long-polling"
|
|
125
|
+
];
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
|
|
30
129
|
// src/browser.ts
|
|
31
130
|
var browser_exports = {};
|
|
32
131
|
__export(browser_exports, {
|
|
@@ -1319,67 +1418,6 @@ var MessageQueue = class {
|
|
|
1319
1418
|
}
|
|
1320
1419
|
};
|
|
1321
1420
|
|
|
1322
|
-
// src/transport/libp2p-node.ts
|
|
1323
|
-
function defaultTransportConfig() {
|
|
1324
|
-
return {
|
|
1325
|
-
quicEnabled: true,
|
|
1326
|
-
tcpEnabled: true,
|
|
1327
|
-
websocketEnabled: true,
|
|
1328
|
-
webtransportEnabled: true,
|
|
1329
|
-
webrtcEnabled: true,
|
|
1330
|
-
circuitRelayEnabled: true,
|
|
1331
|
-
perTransportTimeoutMs: 1e4,
|
|
1332
|
-
stunServers: [
|
|
1333
|
-
"stun:stun.l.google.com:19302",
|
|
1334
|
-
"stun:stun1.l.google.com:19302"
|
|
1335
|
-
],
|
|
1336
|
-
turnServers: []
|
|
1337
|
-
};
|
|
1338
|
-
}
|
|
1339
|
-
function isNodeEnvironment() {
|
|
1340
|
-
return typeof globalThis.process !== "undefined" && typeof globalThis.process.versions !== "undefined" && typeof globalThis.process.versions.node !== "undefined";
|
|
1341
|
-
}
|
|
1342
|
-
async function createCairnNode(options) {
|
|
1343
|
-
const config = { ...defaultTransportConfig(), ...options?.config };
|
|
1344
|
-
const { createLibp2p } = await import("libp2p");
|
|
1345
|
-
const { yamux } = await import("@libp2p/yamux");
|
|
1346
|
-
const { noise } = await import("@chainsafe/libp2p-noise");
|
|
1347
|
-
const transports = [];
|
|
1348
|
-
if (isNodeEnvironment()) {
|
|
1349
|
-
if (config.tcpEnabled) {
|
|
1350
|
-
const { tcp } = await import("@libp2p/tcp");
|
|
1351
|
-
transports.push(tcp());
|
|
1352
|
-
}
|
|
1353
|
-
if (config.websocketEnabled) {
|
|
1354
|
-
const { webSockets } = await import("@libp2p/websockets");
|
|
1355
|
-
transports.push(webSockets());
|
|
1356
|
-
}
|
|
1357
|
-
} else {
|
|
1358
|
-
if (config.webrtcEnabled) {
|
|
1359
|
-
const { webRTC } = await import("@libp2p/webrtc");
|
|
1360
|
-
transports.push(webRTC());
|
|
1361
|
-
}
|
|
1362
|
-
if (config.websocketEnabled) {
|
|
1363
|
-
const { webSockets } = await import("@libp2p/websockets");
|
|
1364
|
-
transports.push(webSockets());
|
|
1365
|
-
}
|
|
1366
|
-
if (config.webtransportEnabled) {
|
|
1367
|
-
const { webTransport } = await import("@libp2p/webtransport");
|
|
1368
|
-
transports.push(webTransport());
|
|
1369
|
-
}
|
|
1370
|
-
}
|
|
1371
|
-
if (config.circuitRelayEnabled) {
|
|
1372
|
-
const { circuitRelayTransport } = await import("@libp2p/circuit-relay-v2");
|
|
1373
|
-
transports.push(circuitRelayTransport());
|
|
1374
|
-
}
|
|
1375
|
-
const node = await createLibp2p({
|
|
1376
|
-
transports,
|
|
1377
|
-
streamMuxers: [yamux()],
|
|
1378
|
-
connectionEncrypters: [noise()]
|
|
1379
|
-
});
|
|
1380
|
-
return node;
|
|
1381
|
-
}
|
|
1382
|
-
|
|
1383
1421
|
// src/node.ts
|
|
1384
1422
|
var APP_MSG_TYPE_MIN = 61440;
|
|
1385
1423
|
var APP_MSG_TYPE_MAX = 65535;
|
|
@@ -1650,7 +1688,8 @@ var Node = class _Node {
|
|
|
1650
1688
|
* Safe to skip in unit tests — the node works without transport.
|
|
1651
1689
|
*/
|
|
1652
1690
|
async startTransport() {
|
|
1653
|
-
const
|
|
1691
|
+
const { createCairnNode: createCairnNode2 } = await Promise.resolve().then(() => (init_libp2p_node(), libp2p_node_exports));
|
|
1692
|
+
const libp2pNode = await createCairnNode2();
|
|
1654
1693
|
await libp2pNode.start();
|
|
1655
1694
|
this._libp2pNode = libp2pNode;
|
|
1656
1695
|
const addrs = libp2pNode.getMultiaddrs();
|
package/dist/browser.d.cts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { Libp2p } from 'libp2p';
|
|
2
|
-
|
|
3
1
|
/**
|
|
4
2
|
* Storage adapter interface for persisting identity, per-peer state, and
|
|
5
3
|
* per-session state. All values are opaque Uint8Array blobs.
|
|
@@ -493,7 +491,7 @@ declare class Node {
|
|
|
493
491
|
*/
|
|
494
492
|
startTransport(): Promise<void>;
|
|
495
493
|
/** Get the libp2p node (null if transport not started). */
|
|
496
|
-
get libp2pNode():
|
|
494
|
+
get libp2pNode(): unknown;
|
|
497
495
|
/** Get the node's listen addresses (available after startTransport). */
|
|
498
496
|
get listenAddresses(): string[];
|
|
499
497
|
/** Get the node configuration. */
|
package/dist/browser.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { Libp2p } from 'libp2p';
|
|
2
|
-
|
|
3
1
|
/**
|
|
4
2
|
* Storage adapter interface for persisting identity, per-peer state, and
|
|
5
3
|
* per-session state. All values are opaque Uint8Array blobs.
|
|
@@ -493,7 +491,7 @@ declare class Node {
|
|
|
493
491
|
*/
|
|
494
492
|
startTransport(): Promise<void>;
|
|
495
493
|
/** Get the libp2p node (null if transport not started). */
|
|
496
|
-
get libp2pNode():
|
|
494
|
+
get libp2pNode(): unknown;
|
|
497
495
|
/** Get the node's listen addresses (available after startTransport). */
|
|
498
496
|
get listenAddresses(): string[];
|
|
499
497
|
/** Get the node configuration. */
|