@peerbit/server 1.0.20 → 1.1.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/lib/esm/cli.js +108 -37
- package/lib/esm/cli.js.map +1 -1
- package/lib/esm/client.d.ts +25 -2
- package/lib/esm/client.js +105 -16
- package/lib/esm/client.js.map +1 -1
- package/lib/esm/config.browser.d.ts +0 -0
- package/lib/esm/config.browser.js +3 -0
- package/lib/esm/config.browser.js.map +1 -0
- package/lib/esm/config.d.ts +3 -0
- package/lib/esm/config.js +71 -0
- package/lib/esm/config.js.map +1 -1
- package/lib/esm/index.d.ts +3 -1
- package/lib/esm/index.js +3 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/peerbit.d.ts +5 -0
- package/lib/esm/peerbit.js +26 -0
- package/lib/esm/peerbit.js.map +1 -0
- package/lib/esm/routes.d.ts +9 -0
- package/lib/esm/routes.js +18 -0
- package/lib/esm/routes.js.map +1 -0
- package/lib/esm/server.browser.d.ts +0 -0
- package/lib/esm/server.browser.js +3 -0
- package/lib/esm/server.browser.js.map +1 -0
- package/lib/esm/server.d.ts +15 -0
- package/lib/esm/server.js +356 -0
- package/lib/esm/server.js.map +1 -0
- package/lib/esm/types.d.ts +7 -0
- package/lib/esm/types.js +2 -0
- package/lib/esm/types.js.map +1 -0
- package/lib/ui/assets/config.browser-4ed993c7.js +1 -0
- package/lib/ui/assets/index-a8188422.js +53 -0
- package/lib/ui/index.html +1 -1
- package/package.json +16 -7
- package/src/cli.ts +119 -44
- package/src/client.ts +157 -16
- package/src/config.browser.ts +1 -0
- package/src/config.ts +80 -0
- package/src/index.ts +3 -1
- package/src/peerbit.ts +26 -0
- package/src/routes.ts +20 -0
- package/src/server.browser.ts +1 -0
- package/src/server.ts +430 -0
- package/src/types.ts +7 -0
- package/lib/esm/api.d.ts +0 -33
- package/lib/esm/api.js +0 -370
- package/lib/esm/api.js.map +0 -1
- package/lib/esm/package.json +0 -3
- package/lib/ui/assets/index-40169014.js +0 -80
- package/src/api.ts +0 -436
package/lib/esm/cli.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { createTestDomain, getDomainFromConfig, loadConfig, startCertbot, } from "./domain.js";
|
|
2
|
-
import {
|
|
3
|
-
import { client, startServerWithNode } from "./api.js";
|
|
2
|
+
import { startServerWithNode } from "./server.js";
|
|
4
3
|
import { createRecord } from "./aws.js";
|
|
5
|
-
import { toBase64 } from "@peerbit/crypto";
|
|
6
4
|
import { getConfigDir } from "./config.js";
|
|
5
|
+
import chalk from "chalk";
|
|
6
|
+
import { client } from "./client.js";
|
|
7
7
|
export const cli = async (args) => {
|
|
8
8
|
const yargs = await import("yargs");
|
|
9
9
|
if (!args) {
|
|
@@ -22,9 +22,18 @@ export const cli = async (args) => {
|
|
|
22
22
|
type: "string",
|
|
23
23
|
default: await getConfigDir(),
|
|
24
24
|
},
|
|
25
|
+
bootstrap: {
|
|
26
|
+
describe: "Whether to connect to bootstap nodes on startup",
|
|
27
|
+
type: "boolean",
|
|
28
|
+
default: false,
|
|
29
|
+
},
|
|
25
30
|
},
|
|
26
31
|
handler: async (args) => {
|
|
27
|
-
await startServerWithNode(
|
|
32
|
+
await startServerWithNode({
|
|
33
|
+
directory: args.directory,
|
|
34
|
+
domain: await loadConfig().then((config) => config ? getDomainFromConfig(config) : undefined),
|
|
35
|
+
bootstrap: args.bootstrap,
|
|
36
|
+
});
|
|
28
37
|
},
|
|
29
38
|
})
|
|
30
39
|
.command("domain", "Setup a domain and certificate", (yargs) => {
|
|
@@ -89,7 +98,7 @@ export const cli = async (args) => {
|
|
|
89
98
|
type: "string",
|
|
90
99
|
},
|
|
91
100
|
email: {
|
|
92
|
-
describe: "Email for Lets encrypt
|
|
101
|
+
describe: "Email for Lets encrypt auto-renewal messages",
|
|
93
102
|
type: "string",
|
|
94
103
|
demandOption: true,
|
|
95
104
|
},
|
|
@@ -128,6 +137,19 @@ export const cli = async (args) => {
|
|
|
128
137
|
})
|
|
129
138
|
.strict()
|
|
130
139
|
.demandCommand();
|
|
140
|
+
})
|
|
141
|
+
.command("network", "Manage network", (yargs) => {
|
|
142
|
+
yargs
|
|
143
|
+
.command({
|
|
144
|
+
command: "bootstrap",
|
|
145
|
+
describe: "Connect to bootstrap nodes",
|
|
146
|
+
handler: async () => {
|
|
147
|
+
const c = await client();
|
|
148
|
+
await c.network.bootstrap();
|
|
149
|
+
},
|
|
150
|
+
})
|
|
151
|
+
.strict()
|
|
152
|
+
.demandCommand();
|
|
131
153
|
})
|
|
132
154
|
.command("topic", "Manage topics the node is listening to", (yargs) => {
|
|
133
155
|
yargs
|
|
@@ -165,8 +187,8 @@ export const cli = async (args) => {
|
|
|
165
187
|
.command("program", "Manage programs", (yargs) => {
|
|
166
188
|
yargs
|
|
167
189
|
.command({
|
|
168
|
-
command: "
|
|
169
|
-
describe: "
|
|
190
|
+
command: "status <address>",
|
|
191
|
+
describe: "Is a program open",
|
|
170
192
|
builder: (yargs) => {
|
|
171
193
|
yargs.positional("address", {
|
|
172
194
|
type: "string",
|
|
@@ -177,76 +199,125 @@ export const cli = async (args) => {
|
|
|
177
199
|
},
|
|
178
200
|
handler: async (args) => {
|
|
179
201
|
const c = await client();
|
|
180
|
-
const program = await c.program.
|
|
202
|
+
const program = await c.program.has(args.address);
|
|
181
203
|
if (!program) {
|
|
182
|
-
console.log("
|
|
204
|
+
console.log(chalk.red("Closed"));
|
|
183
205
|
}
|
|
184
206
|
else {
|
|
185
|
-
console.log(
|
|
207
|
+
console.log(chalk.green("Open"));
|
|
186
208
|
}
|
|
187
209
|
},
|
|
188
210
|
})
|
|
189
211
|
.command({
|
|
190
|
-
command: "
|
|
191
|
-
describe: "
|
|
212
|
+
command: "drop <address>",
|
|
213
|
+
describe: "Drop a program",
|
|
192
214
|
builder: (yargs) => {
|
|
193
|
-
yargs.positional("
|
|
215
|
+
yargs.positional("address", {
|
|
194
216
|
type: "string",
|
|
195
|
-
describe: "
|
|
217
|
+
describe: "Program address",
|
|
196
218
|
demandOption: true,
|
|
197
219
|
});
|
|
198
220
|
return yargs;
|
|
199
221
|
},
|
|
200
222
|
handler: async (args) => {
|
|
201
223
|
const c = await client();
|
|
202
|
-
|
|
203
|
-
console.log(address.toString());
|
|
224
|
+
await c.program.drop(args.address);
|
|
204
225
|
},
|
|
205
226
|
})
|
|
206
227
|
.command({
|
|
207
|
-
command: "
|
|
208
|
-
describe: "
|
|
228
|
+
command: "close <address>",
|
|
229
|
+
describe: "Close a program",
|
|
209
230
|
builder: (yargs) => {
|
|
210
|
-
yargs.positional("
|
|
211
|
-
type: "
|
|
212
|
-
describe: "
|
|
231
|
+
yargs.positional("address", {
|
|
232
|
+
type: "string",
|
|
233
|
+
describe: "Program address",
|
|
213
234
|
demandOption: true,
|
|
214
235
|
});
|
|
215
236
|
return yargs;
|
|
216
237
|
},
|
|
217
238
|
handler: async (args) => {
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
/* webpackIgnore: true */ /* @vite-ignore */ lib);
|
|
221
|
-
console.log("imported lib:", importedLib);
|
|
222
|
-
}
|
|
239
|
+
const c = await client();
|
|
240
|
+
await c.program.close(args.address);
|
|
223
241
|
},
|
|
224
242
|
})
|
|
225
|
-
.strict()
|
|
226
|
-
.demandCommand();
|
|
227
|
-
return yargs;
|
|
228
|
-
})
|
|
229
|
-
.command("library", "Manage libraries", (yargs) => {
|
|
230
|
-
yargs
|
|
231
243
|
.command({
|
|
232
|
-
command: "
|
|
233
|
-
describe: "
|
|
244
|
+
command: "list",
|
|
245
|
+
describe: "List all running programs",
|
|
246
|
+
aliases: "ls",
|
|
247
|
+
handler: async (args) => {
|
|
248
|
+
const c = await client();
|
|
249
|
+
const list = await c.program.list();
|
|
250
|
+
console.log(`Running programs (${list.length}):`);
|
|
251
|
+
list.forEach((p) => {
|
|
252
|
+
console.log(chalk.green(p));
|
|
253
|
+
});
|
|
254
|
+
},
|
|
255
|
+
})
|
|
256
|
+
.command({
|
|
257
|
+
command: "open [program]",
|
|
258
|
+
describe: "Open program",
|
|
234
259
|
builder: (yargs) => {
|
|
235
|
-
yargs.positional("
|
|
260
|
+
yargs.positional("program", {
|
|
236
261
|
type: "string",
|
|
237
|
-
describe: "
|
|
262
|
+
describe: "Identifier",
|
|
238
263
|
demandOption: true,
|
|
239
264
|
});
|
|
265
|
+
yargs.option("base64", {
|
|
266
|
+
type: "string",
|
|
267
|
+
describe: "Base64 encoded serialized",
|
|
268
|
+
alias: "b",
|
|
269
|
+
});
|
|
270
|
+
yargs.option("variant", {
|
|
271
|
+
type: "string",
|
|
272
|
+
describe: "Variant name",
|
|
273
|
+
alias: "v",
|
|
274
|
+
});
|
|
240
275
|
return yargs;
|
|
241
276
|
},
|
|
242
277
|
handler: async (args) => {
|
|
243
278
|
const c = await client();
|
|
244
|
-
|
|
279
|
+
if (!args.base64 && !args.variant) {
|
|
280
|
+
throw new Error("Either base64 or variant argument needs to be provided");
|
|
281
|
+
}
|
|
282
|
+
let startArg;
|
|
283
|
+
if (args.base64) {
|
|
284
|
+
startArg = {
|
|
285
|
+
base64: args.base64,
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
startArg = {
|
|
290
|
+
variant: args.variant,
|
|
291
|
+
};
|
|
292
|
+
}
|
|
293
|
+
const address = await c.program.open(startArg);
|
|
294
|
+
console.log("Started program with address: ");
|
|
295
|
+
console.log(chalk.green(address.toString()));
|
|
245
296
|
},
|
|
246
297
|
})
|
|
247
298
|
.strict()
|
|
248
299
|
.demandCommand();
|
|
249
300
|
return yargs;
|
|
301
|
+
})
|
|
302
|
+
.command({
|
|
303
|
+
command: "install <package-spec>",
|
|
304
|
+
describe: "install and import a dependency",
|
|
305
|
+
builder: (yargs) => {
|
|
306
|
+
yargs.positional("package-spec", {
|
|
307
|
+
type: "string",
|
|
308
|
+
describe: "Installed dependency will be loaded with js import(...)",
|
|
309
|
+
demandOption: true,
|
|
310
|
+
});
|
|
311
|
+
return yargs;
|
|
312
|
+
},
|
|
313
|
+
handler: async (args) => {
|
|
314
|
+
const c = await client();
|
|
315
|
+
const newPrograms = await c.dependency.install(args["package-spec"]);
|
|
316
|
+
console.log(`New programs available (${newPrograms.length}):`);
|
|
317
|
+
newPrograms.forEach((p) => {
|
|
318
|
+
console.log(chalk.green(p));
|
|
319
|
+
});
|
|
320
|
+
},
|
|
250
321
|
})
|
|
251
322
|
.help()
|
|
252
323
|
.strict()
|
package/lib/esm/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,YAAY,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/client.d.ts
CHANGED
|
@@ -1,2 +1,25 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { StartProgram } from "./types.js";
|
|
2
|
+
import { Address } from "@peerbit/program";
|
|
3
|
+
export declare const client: (endpoint?: string) => Promise<{
|
|
4
|
+
peer: {
|
|
5
|
+
id: {
|
|
6
|
+
get: () => Promise<any>;
|
|
7
|
+
};
|
|
8
|
+
addresses: {
|
|
9
|
+
get: () => Promise<import("@multiformats/multiaddr").Multiaddr[]>;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
program: {
|
|
13
|
+
has: (address: Address | string) => Promise<boolean>;
|
|
14
|
+
open: (program: StartProgram) => Promise<Address>;
|
|
15
|
+
close: (address: string) => Promise<void>;
|
|
16
|
+
drop: (address: string) => Promise<void>;
|
|
17
|
+
list: () => Promise<string[]>;
|
|
18
|
+
};
|
|
19
|
+
dependency: {
|
|
20
|
+
install: (name: string) => Promise<string[]>;
|
|
21
|
+
};
|
|
22
|
+
network: {
|
|
23
|
+
bootstrap: () => Promise<void>;
|
|
24
|
+
};
|
|
25
|
+
}>;
|
package/lib/esm/client.js
CHANGED
|
@@ -1,23 +1,112 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export const
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { ADDRESS_PATH, BOOTSTRAP_PATH, INSTALL_PATH, LOCAL_PORT, PEER_ID_PATH, PROGRAMS_PATH, PROGRAM_PATH, } from "./routes.js";
|
|
2
|
+
import { multiaddr } from "@multiformats/multiaddr";
|
|
3
|
+
export const client = async (endpoint = "http://localhost:" + LOCAL_PORT) => {
|
|
4
|
+
const { default: axios } = await import("axios");
|
|
5
|
+
const validateStatus = (status) => {
|
|
6
|
+
return (status >= 200 && status < 300) || status == 404;
|
|
7
|
+
};
|
|
8
|
+
const throwIfNot200 = (resp) => {
|
|
9
|
+
if (resp.status !== 200) {
|
|
10
|
+
throw new Error(resp.data);
|
|
11
|
+
}
|
|
12
|
+
return resp;
|
|
13
|
+
};
|
|
14
|
+
const getBodyByStatus = (resp) => {
|
|
15
|
+
if (resp.status === 404) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
if (resp.status == 200) {
|
|
19
|
+
return resp.data;
|
|
20
|
+
}
|
|
21
|
+
throw new Error(typeof resp.data === "string" ? resp.data : resp.data.toString());
|
|
22
|
+
};
|
|
23
|
+
const getId = async () => throwIfNot200(await axios.get(endpoint + PEER_ID_PATH, { validateStatus }))
|
|
24
|
+
.data;
|
|
25
|
+
const getHeaders = async () => {
|
|
26
|
+
const config = await import("./config.js");
|
|
27
|
+
const headers = {
|
|
28
|
+
authorization: "Basic admin:" + (await config.loadPassword()),
|
|
29
|
+
};
|
|
30
|
+
return headers;
|
|
31
|
+
};
|
|
32
|
+
return {
|
|
33
|
+
peer: {
|
|
34
|
+
id: {
|
|
35
|
+
get: getId,
|
|
36
|
+
},
|
|
6
37
|
addresses: {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
38
|
+
get: async () => {
|
|
39
|
+
return throwIfNot200(await axios.get(endpoint + ADDRESS_PATH, {
|
|
40
|
+
validateStatus,
|
|
41
|
+
})).data.map((x) => multiaddr(x));
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
program: {
|
|
46
|
+
has: async (address) => {
|
|
47
|
+
const result = await axios.head(endpoint +
|
|
48
|
+
PROGRAM_PATH +
|
|
49
|
+
"/" +
|
|
50
|
+
encodeURIComponent(address.toString()), { validateStatus, headers: await getHeaders() });
|
|
51
|
+
if (result.status !== 200 && result.status !== 404) {
|
|
52
|
+
throw new Error(result.data);
|
|
53
|
+
}
|
|
54
|
+
return result.status === 200 ? true : false;
|
|
55
|
+
},
|
|
56
|
+
open: async (program) => {
|
|
57
|
+
const resp = throwIfNot200(await axios.put(endpoint + PROGRAM_PATH, JSON.stringify(program), {
|
|
58
|
+
validateStatus,
|
|
59
|
+
headers: await getHeaders(),
|
|
60
|
+
}));
|
|
61
|
+
return resp.data;
|
|
62
|
+
},
|
|
63
|
+
close: async (address) => {
|
|
64
|
+
throwIfNot200(await axios.delete(endpoint +
|
|
65
|
+
PROGRAM_PATH +
|
|
66
|
+
"/" +
|
|
67
|
+
encodeURIComponent(address.toString()), {
|
|
68
|
+
validateStatus,
|
|
69
|
+
headers: await getHeaders(),
|
|
70
|
+
}));
|
|
11
71
|
},
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
72
|
+
drop: async (address) => {
|
|
73
|
+
throwIfNot200(await axios.delete(endpoint +
|
|
74
|
+
PROGRAM_PATH +
|
|
75
|
+
"/" +
|
|
76
|
+
encodeURIComponent(address.toString()) +
|
|
77
|
+
"?delete=true", {
|
|
78
|
+
validateStatus,
|
|
79
|
+
headers: await getHeaders(),
|
|
80
|
+
}));
|
|
15
81
|
},
|
|
16
|
-
|
|
17
|
-
|
|
82
|
+
list: async () => {
|
|
83
|
+
const resp = throwIfNot200(await axios.get(endpoint + PROGRAMS_PATH, {
|
|
84
|
+
validateStatus,
|
|
85
|
+
headers: await getHeaders(),
|
|
86
|
+
}));
|
|
87
|
+
return resp.data;
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
dependency: {
|
|
91
|
+
install: async (name) => {
|
|
92
|
+
const resp = await axios.put(endpoint + INSTALL_PATH, name, {
|
|
93
|
+
validateStatus,
|
|
94
|
+
headers: await getHeaders(),
|
|
95
|
+
});
|
|
96
|
+
if (resp.status !== 200) {
|
|
97
|
+
throw new Error(typeof resp.data === "string" ? resp.data : resp.data.toString());
|
|
98
|
+
}
|
|
99
|
+
return resp.data;
|
|
100
|
+
},
|
|
101
|
+
},
|
|
102
|
+
network: {
|
|
103
|
+
bootstrap: async () => {
|
|
104
|
+
throwIfNot200(await axios.post(endpoint + BOOTSTRAP_PATH, undefined, {
|
|
105
|
+
validateStatus,
|
|
106
|
+
headers: await getHeaders(),
|
|
107
|
+
}));
|
|
18
108
|
},
|
|
19
109
|
},
|
|
20
|
-
|
|
21
|
-
});
|
|
110
|
+
};
|
|
22
111
|
};
|
|
23
112
|
//# sourceMappingURL=client.js.map
|
package/lib/esm/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.browser.js","sourceRoot":"","sources":["../../src/config.browser.ts"],"names":[],"mappings":";AAAA,iBAAiB"}
|
package/lib/esm/config.d.ts
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
export declare const getConfigDir: () => Promise<string>;
|
|
2
2
|
export declare const getCredentialsPath: (configDir: string) => Promise<string>;
|
|
3
3
|
export declare const getKeysPath: (configDir: string) => Promise<string>;
|
|
4
|
+
export declare const checkExistPath: (path: string) => Promise<boolean>;
|
|
5
|
+
export declare const loadPassword: () => Promise<string>;
|
|
6
|
+
export declare const getPackageName: (path: string) => Promise<string>;
|
|
4
7
|
export declare class NotFoundError extends Error {
|
|
5
8
|
}
|
package/lib/esm/config.js
CHANGED
|
@@ -12,6 +12,77 @@ export const getKeysPath = async (configDir) => {
|
|
|
12
12
|
const path = await import("path");
|
|
13
13
|
return path.join(configDir, "keys");
|
|
14
14
|
};
|
|
15
|
+
export const checkExistPath = async (path) => {
|
|
16
|
+
const fs = await import("fs");
|
|
17
|
+
try {
|
|
18
|
+
if (!fs.existsSync(path)) {
|
|
19
|
+
fs.accessSync(path, fs.constants.W_OK); // will throw if fails
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
catch (err) {
|
|
25
|
+
if (err.message.indexOf("no such file")) {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
throw new Error("Can not access path");
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
export const loadPassword = async () => {
|
|
32
|
+
const fs = await import("fs");
|
|
33
|
+
const configDir = await getConfigDir();
|
|
34
|
+
const credentialsPath = await getCredentialsPath(configDir);
|
|
35
|
+
if (!(await checkExistPath(credentialsPath))) {
|
|
36
|
+
throw new NotFoundError("Credentials file does not exist");
|
|
37
|
+
}
|
|
38
|
+
const password = JSON.parse(fs.readFileSync(credentialsPath, "utf-8")).password;
|
|
39
|
+
if (!password || password.length === 0) {
|
|
40
|
+
throw new NotFoundError("Password not found");
|
|
41
|
+
}
|
|
42
|
+
return password;
|
|
43
|
+
};
|
|
44
|
+
export const getPackageName = async (path) => {
|
|
45
|
+
const pathLib = await import("path");
|
|
46
|
+
const tar = await import("tar-stream");
|
|
47
|
+
const zlib = await import("zlib");
|
|
48
|
+
const urlLib = await import("url");
|
|
49
|
+
const fs = await import("fs");
|
|
50
|
+
if (!fs.existsSync(path)) {
|
|
51
|
+
throw new Error("File does not exist");
|
|
52
|
+
}
|
|
53
|
+
return new Promise((resolve, reject) => {
|
|
54
|
+
try {
|
|
55
|
+
const extract = tar.extract();
|
|
56
|
+
let data = "";
|
|
57
|
+
extract.on("entry", function (header, stream, cb) {
|
|
58
|
+
stream.on("data", function (chunk) {
|
|
59
|
+
if (header.name == "package/package.json")
|
|
60
|
+
data += chunk;
|
|
61
|
+
});
|
|
62
|
+
stream.on("end", function () {
|
|
63
|
+
cb();
|
|
64
|
+
});
|
|
65
|
+
stream.resume();
|
|
66
|
+
});
|
|
67
|
+
extract.on("finish", function () {
|
|
68
|
+
const name = JSON.parse(data)?.name;
|
|
69
|
+
if (!name) {
|
|
70
|
+
reject(new Error("Could not find name from package.json file"));
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
resolve(name);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
extract.on("error", (e) => {
|
|
77
|
+
reject(e);
|
|
78
|
+
});
|
|
79
|
+
fs.createReadStream(path).pipe(zlib.createGunzip()).pipe(extract);
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
reject(error);
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
};
|
|
15
86
|
export class NotFoundError extends Error {
|
|
16
87
|
}
|
|
17
88
|
//# sourceMappingURL=config.js.map
|
package/lib/esm/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAAqB,EAAE;IACvD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;IACtD,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EACtC,SAAiB,EACC,EAAE;IACpB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,SAAiB,EAAmB,EAAE;IACvE,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,OAAO,aAAc,SAAQ,KAAK;CAAG"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/index.d.ts
CHANGED
package/lib/esm/index.js
CHANGED
package/lib/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { DirectSub } from "@peerbit/pubsub";
|
|
2
|
+
import { Peerbit } from "peerbit";
|
|
3
|
+
export const create = (properties) => {
|
|
4
|
+
return Peerbit.create({
|
|
5
|
+
libp2p: {
|
|
6
|
+
addresses: {
|
|
7
|
+
announce: properties.domain
|
|
8
|
+
? [
|
|
9
|
+
`/dns4/${properties.domain}/tcp/8001`,
|
|
10
|
+
`/dns4/${properties.domain}/tcp/8002/ws`,
|
|
11
|
+
]
|
|
12
|
+
: undefined,
|
|
13
|
+
listen: ["/ip4/127.0.0.1/tcp/8001", "/ip4/127.0.0.1/tcp/8002/ws"],
|
|
14
|
+
},
|
|
15
|
+
connectionManager: {
|
|
16
|
+
maxConnections: Infinity,
|
|
17
|
+
minConnections: 0,
|
|
18
|
+
},
|
|
19
|
+
services: {
|
|
20
|
+
pubsub: (c) => new DirectSub(c, { canRelayMessage: true }),
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
directory: properties.directory,
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=peerbit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"peerbit.js","sourceRoot":"","sources":["../../src/peerbit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,UAAmD,EAAE,EAAE;IAC7E,OAAO,OAAO,CAAC,MAAM,CAAC;QACrB,MAAM,EAAE;YACP,SAAS,EAAE;gBACV,QAAQ,EAAE,UAAU,CAAC,MAAM;oBAC1B,CAAC,CAAC;wBACA,SAAS,UAAU,CAAC,MAAM,WAAW;wBACrC,SAAS,UAAU,CAAC,MAAM,cAAc;qBACvC;oBACH,CAAC,CAAC,SAAS;gBACZ,MAAM,EAAE,CAAC,yBAAyB,EAAE,4BAA4B,CAAC;aACjE;YACD,iBAAiB,EAAE;gBAClB,cAAc,EAAE,QAAQ;gBACxB,cAAc,EAAE,CAAC;aACjB;YACD,QAAQ,EAAE;gBACT,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;aAC1D;SACD;QACD,SAAS,EAAE,UAAU,CAAC,SAAS;KAC/B,CAAC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const getPort: (protocol: string) => 9002 | 8082;
|
|
2
|
+
export declare const SSL_PORT = 9002;
|
|
3
|
+
export declare const LOCAL_PORT = 8082;
|
|
4
|
+
export declare const PEER_ID_PATH = "/peer/id";
|
|
5
|
+
export declare const ADDRESS_PATH = "/peer/address";
|
|
6
|
+
export declare const PROGRAM_PATH = "/program";
|
|
7
|
+
export declare const PROGRAMS_PATH = "/programs";
|
|
8
|
+
export declare const INSTALL_PATH = "/install";
|
|
9
|
+
export declare const BOOTSTRAP_PATH = "/network/bootstrap";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const getPort = (protocol) => {
|
|
2
|
+
if (protocol === "https:") {
|
|
3
|
+
return SSL_PORT;
|
|
4
|
+
}
|
|
5
|
+
if (protocol === "http:") {
|
|
6
|
+
return LOCAL_PORT;
|
|
7
|
+
}
|
|
8
|
+
throw new Error("Unsupported protocol: " + protocol);
|
|
9
|
+
};
|
|
10
|
+
export const SSL_PORT = 9002;
|
|
11
|
+
export const LOCAL_PORT = 8082;
|
|
12
|
+
export const PEER_ID_PATH = "/peer/id";
|
|
13
|
+
export const ADDRESS_PATH = "/peer/address";
|
|
14
|
+
export const PROGRAM_PATH = "/program";
|
|
15
|
+
export const PROGRAMS_PATH = "/programs";
|
|
16
|
+
export const INSTALL_PATH = "/install";
|
|
17
|
+
export const BOOTSTRAP_PATH = "/network/bootstrap";
|
|
18
|
+
//# sourceMappingURL=routes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/routes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,QAAgB,EAAE,EAAE;IAC3C,IAAI,QAAQ,KAAK,QAAQ,EAAE;QAC1B,OAAO,QAAQ,CAAC;KAChB;IAED,IAAI,QAAQ,KAAK,OAAO,EAAE;QACzB,OAAO,UAAU,CAAC;KAClB;IAED,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,QAAQ,CAAC,CAAC;AACtD,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC;AAC7B,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC;AAE/B,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;AAC5C,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,CAAC;AACzC,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC"}
|
|
File without changes
|