@peerbit/server 1.0.19 → 1.1.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/lib/esm/cli.js +107 -42
- 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/domain.d.ts +3 -1
- package/lib/esm/domain.js +46 -30
- package/lib/esm/domain.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/nginx-template.conf +0 -10
- 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 -8
- package/src/cli.ts +124 -48
- package/src/client.ts +157 -16
- package/src/config.browser.ts +1 -0
- package/src/config.ts +80 -0
- package/src/domain.ts +55 -35
- package/src/index.ts +3 -1
- package/src/nginx-template.conf +0 -10
- 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 -437
package/lib/esm/cli.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { createTestDomain, startCertbot } from "./domain.js";
|
|
2
|
-
import {
|
|
3
|
-
import { client, startServerWithNode } from "./api.js";
|
|
1
|
+
import { createTestDomain, getDomainFromConfig, loadConfig, startCertbot, } from "./domain.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,15 +22,18 @@ export const cli = async (args) => {
|
|
|
22
22
|
type: "string",
|
|
23
23
|
default: await getConfigDir(),
|
|
24
24
|
},
|
|
25
|
-
|
|
26
|
-
describe: "
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
default: undefined,
|
|
25
|
+
bootstrap: {
|
|
26
|
+
describe: "Whether to connect to bootstap nodes on startup",
|
|
27
|
+
type: "boolean",
|
|
28
|
+
default: false,
|
|
30
29
|
},
|
|
31
30
|
},
|
|
32
31
|
handler: async (args) => {
|
|
33
|
-
await startServerWithNode(
|
|
32
|
+
await startServerWithNode({
|
|
33
|
+
directory: args.directory,
|
|
34
|
+
domain: await loadConfig().then((config) => config ? getDomainFromConfig(config) : undefined),
|
|
35
|
+
bootstrap: args.bootstrap,
|
|
36
|
+
});
|
|
34
37
|
},
|
|
35
38
|
})
|
|
36
39
|
.command("domain", "Setup a domain and certificate", (yargs) => {
|
|
@@ -134,6 +137,19 @@ export const cli = async (args) => {
|
|
|
134
137
|
})
|
|
135
138
|
.strict()
|
|
136
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();
|
|
137
153
|
})
|
|
138
154
|
.command("topic", "Manage topics the node is listening to", (yargs) => {
|
|
139
155
|
yargs
|
|
@@ -171,8 +187,8 @@ export const cli = async (args) => {
|
|
|
171
187
|
.command("program", "Manage programs", (yargs) => {
|
|
172
188
|
yargs
|
|
173
189
|
.command({
|
|
174
|
-
command: "
|
|
175
|
-
describe: "
|
|
190
|
+
command: "status <address>",
|
|
191
|
+
describe: "Is a program open",
|
|
176
192
|
builder: (yargs) => {
|
|
177
193
|
yargs.positional("address", {
|
|
178
194
|
type: "string",
|
|
@@ -183,76 +199,125 @@ export const cli = async (args) => {
|
|
|
183
199
|
},
|
|
184
200
|
handler: async (args) => {
|
|
185
201
|
const c = await client();
|
|
186
|
-
const program = await c.program.
|
|
202
|
+
const program = await c.program.has(args.address);
|
|
187
203
|
if (!program) {
|
|
188
|
-
console.log("
|
|
204
|
+
console.log(chalk.red("Closed"));
|
|
189
205
|
}
|
|
190
206
|
else {
|
|
191
|
-
console.log(
|
|
207
|
+
console.log(chalk.green("Open"));
|
|
192
208
|
}
|
|
193
209
|
},
|
|
194
210
|
})
|
|
195
211
|
.command({
|
|
196
|
-
command: "
|
|
197
|
-
describe: "
|
|
212
|
+
command: "drop <address>",
|
|
213
|
+
describe: "Drop a program",
|
|
198
214
|
builder: (yargs) => {
|
|
199
|
-
yargs.positional("
|
|
215
|
+
yargs.positional("address", {
|
|
200
216
|
type: "string",
|
|
201
|
-
describe: "
|
|
217
|
+
describe: "Program address",
|
|
202
218
|
demandOption: true,
|
|
203
219
|
});
|
|
204
220
|
return yargs;
|
|
205
221
|
},
|
|
206
222
|
handler: async (args) => {
|
|
207
223
|
const c = await client();
|
|
208
|
-
|
|
209
|
-
console.log(address.toString());
|
|
224
|
+
await c.program.drop(args.address);
|
|
210
225
|
},
|
|
211
226
|
})
|
|
212
227
|
.command({
|
|
213
|
-
command: "
|
|
214
|
-
describe: "
|
|
228
|
+
command: "close <address>",
|
|
229
|
+
describe: "Close a program",
|
|
215
230
|
builder: (yargs) => {
|
|
216
|
-
yargs.positional("
|
|
217
|
-
type: "
|
|
218
|
-
describe: "
|
|
231
|
+
yargs.positional("address", {
|
|
232
|
+
type: "string",
|
|
233
|
+
describe: "Program address",
|
|
219
234
|
demandOption: true,
|
|
220
235
|
});
|
|
221
236
|
return yargs;
|
|
222
237
|
},
|
|
223
238
|
handler: async (args) => {
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
/* webpackIgnore: true */ /* @vite-ignore */ lib);
|
|
227
|
-
console.log("imported lib:", importedLib);
|
|
228
|
-
}
|
|
239
|
+
const c = await client();
|
|
240
|
+
await c.program.close(args.address);
|
|
229
241
|
},
|
|
230
242
|
})
|
|
231
|
-
.strict()
|
|
232
|
-
.demandCommand();
|
|
233
|
-
return yargs;
|
|
234
|
-
})
|
|
235
|
-
.command("library", "Manage libraries", (yargs) => {
|
|
236
|
-
yargs
|
|
237
243
|
.command({
|
|
238
|
-
command: "
|
|
239
|
-
describe: "
|
|
244
|
+
command: "list",
|
|
245
|
+
describe: "List all runniing 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",
|
|
240
259
|
builder: (yargs) => {
|
|
241
|
-
yargs.positional("
|
|
260
|
+
yargs.positional("program", {
|
|
242
261
|
type: "string",
|
|
243
|
-
describe: "
|
|
262
|
+
describe: "Identifier",
|
|
244
263
|
demandOption: true,
|
|
245
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
|
+
});
|
|
246
275
|
return yargs;
|
|
247
276
|
},
|
|
248
277
|
handler: async (args) => {
|
|
249
278
|
const c = await client();
|
|
250
|
-
|
|
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()));
|
|
251
296
|
},
|
|
252
297
|
})
|
|
253
298
|
.strict()
|
|
254
299
|
.demandCommand();
|
|
255
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
|
+
},
|
|
256
321
|
})
|
|
257
322
|
.help()
|
|
258
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,
|
|
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,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,MAAM,CAAC,MAAM,GAAG,GAAG,KAAK,EAAE,IAAe,EAAE,EAAE;IAC5C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;IAEpC,IAAI,CAAC,IAAI,EAAE;QACV,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAClD,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC7B;IAED,OAAO,KAAK;SACV,OAAO,CAAC,IAAI,CAAC;SACb,OAAO,CAAC;QACR,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE;YACR,SAAS,EAAE;gBACV,QAAQ,EAAE,4CAA4C;gBACtD,kBAAkB,EAAE,WAAW;gBAC/B,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,MAAM,YAAY,EAAE;aAC7B;YAED,SAAS,EAAE;gBACV,QAAQ,EAAE,iDAAiD;gBAC3D,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;aACd;SACD;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACvB,MAAM,mBAAmB,CAAC;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,MAAM,EAAE,MAAM,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAC1C,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAChD;gBACD,SAAS,EAAE,IAAI,CAAC,SAAS;aACzB,CAAC,CAAC;QACJ,CAAC;KACD,CAAC;SACD,OAAO,CAAC,QAAQ,EAAE,gCAAgC,EAAE,CAAC,KAAK,EAAE,EAAE;QAC9D,KAAK;aACH,OAAO,CAAC;YACR,OAAO,EAAE,MAAM;YACf,QAAQ,EACP,0FAA0F;YAC3F,OAAO,EAAE;gBACR,KAAK,EAAE;oBACN,QAAQ,EAAE,6CAA6C;oBACvD,IAAI,EAAE,QAAQ;oBACd,YAAY,EAAE,IAAI;iBAClB;gBACD,MAAM,EAAE;oBACP,QAAQ,EAAE,8BAA8B;oBACxC,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,GAAG;iBACV;gBACD,IAAI,EAAE;oBACL,KAAK,EAAE,GAAG;oBACV,QAAQ,EAAE,qCAAqC;oBAC/C,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,KAAK;iBACd;aACD;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;gBACxC,MAAM,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;gBACzC,IAAI,EAAE,CAAC;YACR,CAAC;SACD,CAAC;aACD,OAAO,CAAC;YACR,OAAO,EAAE,KAAK;YACd,QAAQ,EACP,yIAAyI;YAC1I,OAAO,EAAE;gBACR,MAAM,EAAE;oBACP,QAAQ,EAAE,2CAA2C;oBACrD,KAAK,EAAE,GAAG;oBACV,IAAI,EAAE,QAAQ;oBACd,YAAY,EAAE,IAAI;iBAClB;gBACD,YAAY,EAAE;oBACb,QAAQ,EAAE,0CAA0C;oBACpD,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,IAAI;iBACb;gBACD,WAAW,EAAE;oBACZ,QAAQ,EAAE,+BAA+B;oBACzC,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,QAAQ;iBACd;gBACD,MAAM,EAAE;oBACP,QAAQ,EAAE,YAAY;oBACtB,KAAK,EAAE,GAAG;oBACV,IAAI,EAAE,QAAQ;iBACd;gBACD,eAAe,EAAE;oBAChB,QAAQ,EAAE,+BAA+B;oBACzC,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,QAAQ;iBACd;gBACD,KAAK,EAAE;oBACN,QAAQ,EAAE,6CAA6C;oBACvD,IAAI,EAAE,QAAQ;oBACd,YAAY,EAAE,IAAI;iBAClB;gBACD,MAAM,EAAE;oBACP,QAAQ,EAAE,8BAA8B;oBACxC,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,GAAG;iBACV;gBACD,IAAI,EAAE;oBACL,KAAK,EAAE,GAAG;oBACV,QAAQ,EAAE,qCAAqC;oBAC/C,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,KAAK;iBACd;aACD;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,IACC,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe;oBAC7C,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,eAAe,EACvC;oBACD,MAAM,IAAI,KAAK,CACd,2FAA2F,CAC3F,CAAC;iBACF;gBACD,MAAM,YAAY,CAAC;oBAClB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC5B,CAAC,CAAC;4BACA,WAAW,EAAE,IAAI,CAAC,WAAW;4BAC7B,eAAe,EAAE,IAAI,CAAC,eAAe;yBACpC;wBACH,CAAC,CAAC,SAAS;iBACZ,CAAC,CAAC;gBACH,MAAM,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;gBACzC,IAAI,EAAE,CAAC;YACR,CAAC;SACD,CAAC;aACD,MAAM,EAAE;aACR,aAAa,EAAE,CAAC;IACnB,CAAC,CAAC;SACD,OAAO,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/C,KAAK;aACH,OAAO,CAAC;YACR,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,4BAA4B;YACtC,OAAO,EAAE,KAAK,IAAI,EAAE;gBACnB,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC;gBACzB,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAC7B,CAAC;SACD,CAAC;aACD,MAAM,EAAE;aACR,aAAa,EAAE,CAAC;IACnB,CAAC,CAAC;SAED,OAAO,CAAC,OAAO,EAAE,wCAAwC,EAAE,CAAC,KAAK,EAAE,EAAE;QACrE,KAAK;aACH,OAAO,CAAC;YACR,OAAO,EAAE,MAAM;YACf,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,iBAAiB;YAC3B,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;gBACvB,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE;oBACzB,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,8BAA8B;oBACxC,KAAK,EAAE,GAAG;oBACV,OAAO,EAAE,KAAK;iBACd,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACd,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB;;;;;;;;;oBASI;gBACJ,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAClC,CAAC;SACD,CAAC;aACD,MAAM,EAAE;aACR,aAAa,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACd,CAAC,CAAC;SACD,OAAO,CAAC,SAAS,EAAE,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE;QAChD,KAAK;aACH,OAAO,CAAC;YACR,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,mBAAmB;YAC7B,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;gBACvB,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE;oBAC3B,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,iBAAiB;oBAC3B,YAAY,EAAE,IAAI;iBAClB,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACd,CAAC;YAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC;gBACzB,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClD,IAAI,CAAC,OAAO,EAAE;oBACb,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;iBACjC;qBAAM;oBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;iBACjC;YACF,CAAC;SACD,CAAC;aACD,OAAO,CAAC;YACR,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,gBAAgB;YAC1B,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;gBACvB,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE;oBAC3B,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,iBAAiB;oBAC3B,YAAY,EAAE,IAAI;iBAClB,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACd,CAAC;YAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC;gBACzB,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;SACD,CAAC;aACD,OAAO,CAAC;YACR,OAAO,EAAE,iBAAiB;YAC1B,QAAQ,EAAE,iBAAiB;YAC3B,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;gBACvB,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE;oBAC3B,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,iBAAiB;oBAC3B,YAAY,EAAE,IAAI;iBAClB,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACd,CAAC;YAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC;gBACzB,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrC,CAAC;SACD,CAAC;aACD,OAAO,CAAC;YACR,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,4BAA4B;YACtC,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC;gBACzB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAEpC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;gBAClD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;YACJ,CAAC;SACD,CAAC;aAED,OAAO,CAAC;YACR,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,cAAc;YACxB,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;gBACvB,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE;oBAC3B,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,YAAY;oBACtB,YAAY,EAAE,IAAI;iBAClB,CAAC,CAAC;gBACH,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;oBACtB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,2BAA2B;oBACrC,KAAK,EAAE,GAAG;iBACV,CAAC,CAAC;gBACH,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;oBACvB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,cAAc;oBACxB,KAAK,EAAE,GAAG;iBACV,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACd,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;oBAClC,MAAM,IAAI,KAAK,CACd,wDAAwD,CACxD,CAAC;iBACF;gBACD,IAAI,QAAsB,CAAC;gBAC3B,IAAI,IAAI,CAAC,MAAM,EAAE;oBAChB,QAAQ,GAAG;wBACV,MAAM,EAAE,IAAI,CAAC,MAAM;qBACnB,CAAC;iBACF;qBAAM;oBACN,QAAQ,GAAG;wBACV,OAAO,EAAE,IAAI,CAAC,OAAO;qBACrB,CAAC;iBACF;gBACD,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;gBAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAC9C,CAAC;SACD,CAAC;aACD,MAAM,EAAE;aACR,aAAa,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACd,CAAC,CAAC;SACD,OAAO,CAAC;QACR,OAAO,EAAE,wBAAwB;QACjC,QAAQ,EAAE,iCAAiC;QAC3C,OAAO,EAAE,CAAC,KAAU,EAAE,EAAE;YACvB,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE;gBAChC,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,yDAAyD;gBACnE,YAAY,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACvB,MAAM,CAAC,GAAG,MAAM,MAAM,EAAE,CAAC;YACzB,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;YAErE,OAAO,CAAC,GAAG,CAAC,2BAA2B,WAAW,CAAC,MAAM,IAAI,CAAC,CAAC;YAC/D,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC,CAAC,CAAC;QACJ,CAAC;KACD,CAAC;SACD,IAAI,EAAE;SACN,MAAM,EAAE;SACR,aAAa,EAAE,CAAC,IAAI,CAAC;AACxB,CAAC,CAAC"}
|
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/domain.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export declare const loadConfig: () => Promise<string | undefined>;
|
|
2
|
+
export declare const getDomainFromConfig: (config: string) => Promise<string | undefined>;
|
|
1
3
|
export declare const getMyIp: () => Promise<string>;
|
|
2
4
|
export declare const createTestDomain: () => Promise<string>;
|
|
3
5
|
/**
|
|
@@ -7,4 +9,4 @@ export declare const createTestDomain: () => Promise<string>;
|
|
|
7
9
|
* @param dockerProcessName
|
|
8
10
|
* @returns domain
|
|
9
11
|
*/
|
|
10
|
-
export declare const startCertbot: (domain: string, email: string,
|
|
12
|
+
export declare const startCertbot: (domain: string, email: string, waitForUp?: boolean, dockerProcessName?: string) => Promise<void>;
|