@streamr/cli-tools 5.0.1 → 6.0.0-alpha.3
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/.eslintignore +0 -1
- package/CHANGELOG.md +18 -1
- package/README.md +42 -17
- package/bin/streamr-mock-data-generate.ts +38 -8
- package/bin/streamr-mock-data.ts +1 -1
- package/bin/streamr-storage-node-add-stream.ts +8 -26
- package/bin/streamr-storage-node-list-stream-parts.ts +18 -34
- package/bin/streamr-storage-node-list.ts +14 -34
- package/bin/streamr-storage-node-remove-stream.ts +8 -26
- package/bin/streamr-storage-node.ts +1 -1
- package/bin/streamr-stream-create.ts +17 -29
- package/bin/streamr-stream-grant-permission.ts +9 -66
- package/bin/streamr-stream-publish.ts +54 -21
- package/bin/streamr-stream-resend-from.ts +26 -0
- package/bin/streamr-stream-resend-last.ts +25 -0
- package/bin/streamr-stream-resend-range.ts +32 -0
- package/bin/streamr-stream-resend.ts +7 -92
- package/bin/streamr-stream-revoke-permission.ts +8 -24
- package/bin/streamr-stream-search.ts +17 -0
- package/bin/streamr-stream-show.ts +16 -16
- package/bin/streamr-stream-subscribe.ts +16 -16
- package/bin/streamr-stream.ts +2 -2
- package/bin/streamr.ts +1 -2
- package/dist/bin/streamr-mock-data-generate.d.ts +1 -1
- package/dist/bin/streamr-mock-data-generate.js +35 -9
- package/dist/bin/streamr-mock-data-generate.js.map +1 -1
- package/dist/bin/streamr-mock-data.js +1 -1
- package/dist/bin/streamr-mock-data.js.map +1 -1
- package/dist/bin/streamr-storage-node-add-stream.d.ts +1 -1
- package/dist/bin/streamr-storage-node-add-stream.js +8 -24
- package/dist/bin/streamr-storage-node-add-stream.js.map +1 -1
- package/dist/bin/streamr-storage-node-list-stream-parts.d.ts +1 -1
- package/dist/bin/streamr-storage-node-list-stream-parts.js +17 -28
- package/dist/bin/streamr-storage-node-list-stream-parts.js.map +1 -1
- package/dist/bin/streamr-storage-node-list.d.ts +1 -1
- package/dist/bin/streamr-storage-node-list.js +15 -30
- package/dist/bin/streamr-storage-node-list.js.map +1 -1
- package/dist/bin/streamr-storage-node-remove-stream.d.ts +1 -1
- package/dist/bin/streamr-storage-node-remove-stream.js +8 -24
- package/dist/bin/streamr-storage-node-remove-stream.js.map +1 -1
- package/dist/bin/streamr-storage-node.js +1 -1
- package/dist/bin/streamr-storage-node.js.map +1 -1
- package/dist/bin/streamr-stream-create.d.ts +1 -1
- package/dist/bin/streamr-stream-create.js +14 -23
- package/dist/bin/streamr-stream-create.js.map +1 -1
- package/dist/bin/streamr-stream-grant-permission.d.ts +1 -1
- package/dist/bin/streamr-stream-grant-permission.js +3 -63
- package/dist/bin/streamr-stream-grant-permission.js.map +1 -1
- package/dist/bin/streamr-stream-publish.d.ts +1 -1
- package/dist/bin/streamr-stream-publish.js +49 -23
- package/dist/bin/streamr-stream-publish.js.map +1 -1
- package/dist/bin/streamr-stream-resend-from.d.ts +2 -0
- package/dist/bin/streamr-stream-resend-from.js +27 -0
- package/dist/bin/streamr-stream-resend-from.js.map +1 -0
- package/dist/bin/streamr-stream-resend-last.d.ts +2 -0
- package/dist/bin/streamr-stream-resend-last.js +26 -0
- package/dist/bin/streamr-stream-resend-last.js.map +1 -0
- package/dist/bin/streamr-stream-resend-range.d.ts +2 -0
- package/dist/bin/streamr-stream-resend-range.js +33 -0
- package/dist/bin/streamr-stream-resend-range.js.map +1 -0
- package/dist/bin/streamr-stream-resend.d.ts +1 -1
- package/dist/bin/streamr-stream-resend.js +8 -87
- package/dist/bin/streamr-stream-resend.js.map +1 -1
- package/dist/bin/streamr-stream-revoke-permission.d.ts +1 -1
- package/dist/bin/streamr-stream-revoke-permission.js +3 -21
- package/dist/bin/streamr-stream-revoke-permission.js.map +1 -1
- package/dist/bin/streamr-stream-search.d.ts +2 -0
- package/dist/bin/streamr-stream-search.js +21 -0
- package/dist/bin/streamr-stream-search.js.map +1 -0
- package/dist/bin/streamr-stream-show.d.ts +1 -1
- package/dist/bin/streamr-stream-show.js +15 -15
- package/dist/bin/streamr-stream-show.js.map +1 -1
- package/dist/bin/streamr-stream-subscribe.d.ts +1 -1
- package/dist/bin/streamr-stream-subscribe.js +17 -20
- package/dist/bin/streamr-stream-subscribe.js.map +1 -1
- package/dist/bin/streamr-stream.js +2 -2
- package/dist/bin/streamr-stream.js.map +1 -1
- package/dist/bin/streamr.js +1 -2
- package/dist/bin/streamr.js.map +1 -1
- package/dist/package.json +18 -13
- package/dist/src/client.d.ts +3 -0
- package/dist/src/client.js +33 -0
- package/dist/src/client.js.map +1 -0
- package/dist/src/command.d.ts +8 -0
- package/dist/src/command.js +45 -0
- package/dist/src/command.js.map +1 -0
- package/dist/src/common.d.ts +6 -0
- package/dist/src/common.js +15 -0
- package/dist/src/common.js.map +1 -0
- package/dist/src/config.d.ts +6 -0
- package/dist/src/config.js +58 -0
- package/dist/src/config.js.map +1 -0
- package/dist/src/logLevel.d.ts +0 -0
- package/dist/src/logLevel.js +11 -0
- package/dist/src/logLevel.js.map +1 -0
- package/dist/src/permission.d.ts +4 -0
- package/dist/src/permission.js +48 -0
- package/dist/src/permission.js.map +1 -0
- package/dist/src/resend.d.ts +3 -4
- package/dist/src/resend.js +12 -23
- package/dist/src/resend.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -8525
- package/package.json +18 -13
- package/src/client.ts +32 -0
- package/src/command.ts +45 -0
- package/src/common.ts +16 -0
- package/src/config.ts +56 -0
- package/src/logLevel.ts +9 -0
- package/src/permission.ts +49 -0
- package/src/resend.ts +19 -28
- package/tsconfig.json +13 -5
- package/bin/common.ts +0 -93
- package/bin/streamr-misc-get-session-token.ts +0 -33
- package/bin/streamr-misc.ts +0 -10
- package/bin/streamr-stream-list.ts +0 -33
- package/dist/bin/common.d.ts +0 -17
- package/dist/bin/common.js +0 -77
- package/dist/bin/common.js.map +0 -1
- package/dist/bin/streamr-misc-get-session-token.d.ts +0 -2
- package/dist/bin/streamr-misc-get-session-token.js +0 -33
- package/dist/bin/streamr-misc-get-session-token.js.map +0 -1
- package/dist/bin/streamr-misc.d.ts +0 -2
- package/dist/bin/streamr-misc.js +0 -15
- package/dist/bin/streamr-misc.js.map +0 -1
- package/dist/bin/streamr-stream-list.d.ts +0 -2
- package/dist/bin/streamr-stream-list.js +0 -37
- package/dist/bin/streamr-stream-list.js.map +0 -1
- package/dist/commands/common.js +0 -76
- package/dist/commands/streamor.js +0 -16
- package/dist/commands/streamr-mock-data-generate.js +0 -20
- package/dist/commands/streamr-mock-data.js +0 -14
- package/dist/commands/streamr-storage-node-add-stream.js +0 -24
- package/dist/commands/streamr-storage-node-list-stream-parts.js +0 -32
- package/dist/commands/streamr-storage-node-list.js +0 -44
- package/dist/commands/streamr-storage-node-remove-stream.js +0 -24
- package/dist/commands/streamr-storage-node.js +0 -17
- package/dist/commands/streamr-stream-create.js +0 -31
- package/dist/commands/streamr-stream-grant-permission.js +0 -62
- package/dist/commands/streamr-stream-list.js +0 -33
- package/dist/commands/streamr-stream-publish.js +0 -32
- package/dist/commands/streamr-stream-resend.js +0 -101
- package/dist/commands/streamr-stream-revoke-permission.js +0 -24
- package/dist/commands/streamr-stream-show.js +0 -23
- package/dist/commands/streamr-stream-subscribe.js +0 -25
- package/dist/commands/streamr-stream.js +0 -21
- package/dist/src/create.d.ts +0 -2
- package/dist/src/create.js +0 -19
- package/dist/src/create.js.map +0 -1
- package/dist/src/generate.d.ts +0 -1
- package/dist/src/generate.js +0 -32
- package/dist/src/generate.js.map +0 -1
- package/dist/src/list.d.ts +0 -2
- package/dist/src/list.js +0 -29
- package/dist/src/list.js.map +0 -1
- package/dist/src/publish.d.ts +0 -3
- package/dist/src/publish.js +0 -36
- package/dist/src/publish.js.map +0 -1
- package/dist/src/show.d.ts +0 -2
- package/dist/src/show.js +0 -23
- package/dist/src/show.js.map +0 -1
- package/dist/src/subscribe.d.ts +0 -2
- package/dist/src/subscribe.js +0 -13
- package/dist/src/subscribe.js.map +0 -1
- package/src/create.ts +0 -16
- package/src/generate.ts +0 -33
- package/src/list.ts +0 -22
- package/src/publish.ts +0 -42
- package/src/show.ts +0 -23
- package/src/subscribe.ts +0 -9
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
2
|
+
import '../src/logLevel';
|
|
@@ -4,21 +4,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
5
|
};
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
require("../src/logLevel");
|
|
8
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
9
|
+
const command_1 = require("../src/command");
|
|
10
|
+
const permission_1 = require("../src/permission");
|
|
11
|
+
(0, command_1.createClientCommand)(async (client, streamId, options) => {
|
|
12
|
+
const stream = await client.getStream(streamId);
|
|
13
|
+
const obj = stream.toObject();
|
|
14
|
+
if (options.includePermissions) {
|
|
15
|
+
const permissions = await stream.getPermissions();
|
|
16
|
+
obj.permissions = lodash_1.default.mapValues(permissions, (p) => p.map(permission_1.getPermissionId));
|
|
17
|
+
}
|
|
18
|
+
console.info(JSON.stringify(obj, null, 2));
|
|
19
|
+
})
|
|
13
20
|
.arguments('<streamId>')
|
|
14
21
|
.description('show detailed information about a stream')
|
|
15
|
-
.option('--include-permissions', 'include list of permissions
|
|
16
|
-
|
|
17
|
-
common_1.envOptions(program)
|
|
18
|
-
.version(package_json_1.default.version)
|
|
19
|
-
.action((streamId, options) => {
|
|
20
|
-
show_1.show(streamId, options.includePermissions, common_1.formStreamrOptionsWithEnv(options));
|
|
21
|
-
})
|
|
22
|
-
.parse(process.argv);
|
|
23
|
-
common_1.exitWithHelpIfArgsNotBetween(program, 1, 1);
|
|
22
|
+
.option('--include-permissions', 'include list of permissions')
|
|
23
|
+
.parseAsync();
|
|
24
24
|
//# sourceMappingURL=streamr-stream-show.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamr-stream-show.js","sourceRoot":"","sources":["../../bin/streamr-stream-show.ts"],"names":[],"mappings":";;;;;;AACA,
|
|
1
|
+
{"version":3,"file":"streamr-stream-show.js","sourceRoot":"","sources":["../../bin/streamr-stream-show.ts"],"names":[],"mappings":";;;;;;AACA,2BAAwB;AACxB,oDAAsB;AAEtB,4CAAoD;AACpD,kDAAmD;AAEnD,IAAA,6BAAmB,EAAC,KAAK,EAAE,MAAqB,EAAE,QAAgB,EAAE,OAAY,EAAE,EAAE;IAChF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC/C,MAAM,GAAG,GAAQ,MAAM,CAAC,QAAQ,EAAE,CAAA;IAClC,IAAI,OAAO,CAAC,kBAAkB,EAAE;QAC5B,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE,CAAA;QACjD,GAAG,CAAC,WAAW,GAAG,gBAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAqB,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,4BAAe,CAAC,CAAC,CAAA;KAChG;IACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC9C,CAAC,CAAC;KACG,SAAS,CAAC,YAAY,CAAC;KACvB,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,uBAAuB,EAAE,6BAA6B,CAAC;KAC9D,UAAU,EAAE,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
2
|
+
import '../src/logLevel';
|
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const common_1 = require("
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
4
|
+
require("../src/logLevel");
|
|
5
|
+
const command_1 = require("../src/command");
|
|
6
|
+
const common_1 = require("../src/common");
|
|
7
|
+
(0, command_1.createClientCommand)(async (client, streamId, options) => {
|
|
8
|
+
await client.subscribe({
|
|
9
|
+
streamId,
|
|
10
|
+
partition: options.partition,
|
|
11
|
+
}, (message) => console.info(JSON.stringify(message)));
|
|
12
|
+
}, {
|
|
13
|
+
autoDestroyClient: false,
|
|
14
|
+
clientOptionsFactory: (options) => ({
|
|
15
|
+
orderMessages: !options.disableOrdering
|
|
16
|
+
})
|
|
17
|
+
})
|
|
13
18
|
.arguments('<streamId>')
|
|
14
19
|
.description('subscribe to a stream, prints JSON messages to stdout line-by-line')
|
|
15
|
-
.option('-p, --partition [partition]', 'partition', common_1.createFnParseInt('--partition'), 0)
|
|
16
|
-
.option('-d, --disable-ordering', 'disable ordering of messages by OrderingUtil', false)
|
|
17
|
-
|
|
18
|
-
common_1.envOptions(program)
|
|
19
|
-
.version(package_json_1.default.version)
|
|
20
|
-
.action((streamId, options) => {
|
|
21
|
-
options.orderMessages = !options.disableOrdering;
|
|
22
|
-
subscribe_1.subscribe(streamId, options.partition, common_1.formStreamrOptionsWithEnv(options));
|
|
23
|
-
})
|
|
24
|
-
.parse(process.argv);
|
|
25
|
-
common_1.exitWithHelpIfArgsNotBetween(program, 1, 1);
|
|
20
|
+
.option('-p, --partition [partition]', 'partition', (0, common_1.createFnParseInt)('--partition'), 0)
|
|
21
|
+
.option('-d, --disable-ordering', 'disable ordering of messages by OrderingUtil', false)
|
|
22
|
+
.parseAsync();
|
|
26
23
|
//# sourceMappingURL=streamr-stream-subscribe.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamr-stream-subscribe.js","sourceRoot":"","sources":["../../bin/streamr-stream-subscribe.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"streamr-stream-subscribe.js","sourceRoot":"","sources":["../../bin/streamr-stream-subscribe.ts"],"names":[],"mappings":";;;AACA,2BAAwB;AAExB,4CAAoD;AACpD,0CAAgD;AAEhD,IAAA,6BAAmB,EAAC,KAAK,EAAE,MAAqB,EAAE,QAAgB,EAAE,OAAY,EAAE,EAAE;IAChF,MAAM,MAAM,CAAC,SAAS,CAAC;QACnB,QAAQ;QACR,SAAS,EAAE,OAAO,CAAC,SAAS;KAC/B,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAC1D,CAAC,EAAE;IACC,iBAAiB,EAAE,KAAK;IACxB,oBAAoB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAChC,aAAa,EAAE,CAAC,OAAO,CAAC,eAAe;KAC1C,CAAC;CACL,CAAC;KACG,SAAS,CAAC,YAAY,CAAC;KACvB,WAAW,CAAC,oEAAoE,CAAC;KACjF,MAAM,CAAC,6BAA6B,EAAE,WAAW,EAAE,IAAA,yBAAgB,EAAC,aAAa,CAAC,EAAE,CAAC,CAAC;KACtF,MAAM,CAAC,wBAAwB,EAAE,8CAA8C,EAAE,KAAK,CAAC;KACvF,UAAU,EAAE,CAAA"}
|
|
@@ -12,11 +12,11 @@ commander_1.program
|
|
|
12
12
|
.description('stream subcommands')
|
|
13
13
|
.command('subscribe', 'subscribe to a stream')
|
|
14
14
|
.command('publish', 'publish to a stream')
|
|
15
|
-
.command('
|
|
15
|
+
.command('search', 'search for streams')
|
|
16
16
|
.command('show', 'info about a stream')
|
|
17
17
|
.command("create", "create a new stream")
|
|
18
18
|
.command('resend', 'request resend of a stream')
|
|
19
19
|
.command('grant-permission', 'grant permission')
|
|
20
20
|
.command('revoke-permission', 'revoke permission')
|
|
21
|
-
.parse(
|
|
21
|
+
.parse();
|
|
22
22
|
//# sourceMappingURL=streamr-stream.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamr-stream.js","sourceRoot":"","sources":["../../bin/streamr-stream.ts"],"names":[],"mappings":";;;;;;AACA,yCAAmC;AACnC,mEAAiC;AAEjC,mBAAO;KACF,OAAO,CAAC,sBAAG,CAAC,OAAO,CAAC;KACpB,KAAK,CAAC,oBAAoB,CAAC;KAC3B,WAAW,CAAC,oBAAoB,CAAC;KACjC,OAAO,CAAC,WAAW,EAAE,uBAAuB,CAAC;KAC7C,OAAO,CAAC,SAAS,EAAE,qBAAqB,CAAC;KACzC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"streamr-stream.js","sourceRoot":"","sources":["../../bin/streamr-stream.ts"],"names":[],"mappings":";;;;;;AACA,yCAAmC;AACnC,mEAAiC;AAEjC,mBAAO;KACF,OAAO,CAAC,sBAAG,CAAC,OAAO,CAAC;KACpB,KAAK,CAAC,oBAAoB,CAAC;KAC3B,WAAW,CAAC,oBAAoB,CAAC;KACjC,OAAO,CAAC,WAAW,EAAE,uBAAuB,CAAC;KAC7C,OAAO,CAAC,SAAS,EAAE,qBAAqB,CAAC;KACzC,OAAO,CAAC,QAAQ,EAAE,oBAAoB,CAAC;KACvC,OAAO,CAAC,MAAM,EAAE,qBAAqB,CAAC;KACtC,OAAO,CAAC,QAAQ,EAAE,qBAAqB,CAAC;KACxC,OAAO,CAAC,QAAQ,EAAE,4BAA4B,CAAC;KAC/C,OAAO,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;KAC/C,OAAO,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;KACjD,KAAK,EAAE,CAAA"}
|
package/dist/bin/streamr.js
CHANGED
|
@@ -13,6 +13,5 @@ commander_1.program
|
|
|
13
13
|
.command('stream', 'stream subcommands')
|
|
14
14
|
.command('storage-node', 'storage node subcommands')
|
|
15
15
|
.command('mock-data', 'mock data subcommands')
|
|
16
|
-
.
|
|
17
|
-
.parse(process.argv);
|
|
16
|
+
.parse();
|
|
18
17
|
//# sourceMappingURL=streamr.js.map
|
package/dist/bin/streamr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamr.js","sourceRoot":"","sources":["../../bin/streamr.ts"],"names":[],"mappings":";;;;;;AACA,yCAAmC;AACnC,mEAAiC;AAEjC,mBAAO;KACF,OAAO,CAAC,sBAAG,CAAC,OAAO,CAAC;KACpB,KAAK,CAAC,iCAAiC,CAAC;KACxC,WAAW,CAAC,yEAAyE,CAAC;KACtF,OAAO,CAAC,QAAQ,EAAE,oBAAoB,CAAC;KACvC,OAAO,CAAC,cAAc,EAAE,0BAA0B,CAAC;KACnD,OAAO,CAAC,WAAW,EAAE,uBAAuB,CAAC;KAC7C,
|
|
1
|
+
{"version":3,"file":"streamr.js","sourceRoot":"","sources":["../../bin/streamr.ts"],"names":[],"mappings":";;;;;;AACA,yCAAmC;AACnC,mEAAiC;AAEjC,mBAAO;KACF,OAAO,CAAC,sBAAG,CAAC,OAAO,CAAC;KACpB,KAAK,CAAC,iCAAiC,CAAC;KACxC,WAAW,CAAC,yEAAyE,CAAC;KACtF,OAAO,CAAC,QAAQ,EAAE,oBAAoB,CAAC;KACvC,OAAO,CAAC,cAAc,EAAE,0BAA0B,CAAC;KACnD,OAAO,CAAC,WAAW,EAAE,uBAAuB,CAAC;KAC7C,KAAK,EAAE,CAAA"}
|
package/dist/package.json
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@streamr/cli-tools",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "6.0.0-alpha.3",
|
|
4
4
|
"description": "Command line tools for Streamr.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"streamr": "dist/bin/streamr.js"
|
|
7
7
|
},
|
|
8
8
|
"scripts": {
|
|
9
|
-
"eslint": "eslint
|
|
10
|
-
"prepare": "eslint
|
|
11
|
-
"build": "tsc",
|
|
9
|
+
"eslint": "eslint --cache --cache-location=node_modules/.cache/.eslintcache/ '*/**/*.{js,ts}'",
|
|
10
|
+
"prepare": "npm run eslint && npm run build",
|
|
11
|
+
"build": "tsc -b tsconfig.json",
|
|
12
12
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
13
13
|
},
|
|
14
14
|
"repository": {
|
|
15
15
|
"type": "git",
|
|
16
|
-
"url": "git
|
|
16
|
+
"url": "git+https://github.com/streamr-dev/network-monorepo.git",
|
|
17
|
+
"directory": "packages/cli-tools"
|
|
17
18
|
},
|
|
18
19
|
"keywords": [
|
|
19
20
|
"streamr",
|
|
@@ -28,21 +29,25 @@
|
|
|
28
29
|
},
|
|
29
30
|
"homepage": "https://github.com/streamr-dev/cli-tools#readme",
|
|
30
31
|
"dependencies": {
|
|
31
|
-
"commander": "^
|
|
32
|
+
"commander": "^8.3.0",
|
|
32
33
|
"easy-table": "^1.1.1",
|
|
33
34
|
"event-stream": "^4.0.1",
|
|
34
|
-
"
|
|
35
|
+
"lodash": "^4.17.21",
|
|
36
|
+
"streamr-client": "^6.0.0-alpha.24",
|
|
37
|
+
"streamr-client-protocol": "^11.0.0",
|
|
38
|
+
"streamr-test-utils": "^2.0.0"
|
|
35
39
|
},
|
|
36
40
|
"devDependencies": {
|
|
37
41
|
"@streamr/dev-config": "^1.0.0",
|
|
38
42
|
"@types/easy-table": "0.0.32",
|
|
39
43
|
"@types/event-stream": "^3.3.34",
|
|
40
|
-
"@types/jest": "^
|
|
41
|
-
"@
|
|
42
|
-
"@typescript-eslint/
|
|
43
|
-
"eslint": "^
|
|
44
|
-
"eslint
|
|
44
|
+
"@types/jest": "^27.0.2",
|
|
45
|
+
"@types/lodash": "^4.14.175",
|
|
46
|
+
"@typescript-eslint/eslint-plugin": "^5.0.0",
|
|
47
|
+
"@typescript-eslint/parser": "^5.0.0",
|
|
48
|
+
"eslint": "^7.32.0",
|
|
49
|
+
"eslint-config-streamr-ts": "^4.0.1",
|
|
45
50
|
"eslint-plugin-promise": "^5.1.0",
|
|
46
|
-
"typescript": "^4.2
|
|
51
|
+
"typescript": "^4.5.2"
|
|
47
52
|
}
|
|
48
53
|
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createClient = void 0;
|
|
7
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
8
|
+
const streamr_client_1 = require("streamr-client");
|
|
9
|
+
const config_1 = require("./config");
|
|
10
|
+
const getClientConfig = (commandLineArgs, overridenOptions) => {
|
|
11
|
+
var _a;
|
|
12
|
+
const environmentOptions = (commandLineArgs.dev !== undefined) ? lodash_1.default.omit(streamr_client_1.ConfigTest, 'auth') : undefined;
|
|
13
|
+
const configFileJson = (_a = (0, config_1.getConfig)(commandLineArgs.config)) === null || _a === void 0 ? void 0 : _a.client;
|
|
14
|
+
const authenticationOptions = (commandLineArgs.privateKey !== undefined) ? { auth: { privateKey: commandLineArgs.privateKey } } : undefined;
|
|
15
|
+
return lodash_1.default.merge(environmentOptions, configFileJson, authenticationOptions, overridenOptions);
|
|
16
|
+
};
|
|
17
|
+
const addInterruptHandler = (client) => {
|
|
18
|
+
process.on('SIGINT', async () => {
|
|
19
|
+
try {
|
|
20
|
+
await client.destroy();
|
|
21
|
+
}
|
|
22
|
+
catch { }
|
|
23
|
+
process.exit();
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
const createClient = (commandLineArgs, overridenOptions = {}) => {
|
|
27
|
+
const config = getClientConfig(commandLineArgs, overridenOptions);
|
|
28
|
+
const client = new streamr_client_1.StreamrClient(config);
|
|
29
|
+
addInterruptHandler(client);
|
|
30
|
+
return client;
|
|
31
|
+
};
|
|
32
|
+
exports.createClient = createClient;
|
|
33
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAsB;AACtB,mDAA+E;AAE/E,qCAAoC;AAEpC,MAAM,eAAe,GAAG,CAAC,eAAsC,EAAE,gBAAqC,EAAE,EAAE;;IACtG,MAAM,kBAAkB,GAAG,CAAC,eAAe,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,gBAAC,CAAC,IAAI,CAAC,2BAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACvG,MAAM,cAAc,GAAG,MAAA,IAAA,kBAAS,EAAC,eAAe,CAAC,MAAM,CAAC,0CAAE,MAAM,CAAA;IAChE,MAAM,qBAAqB,GAAG,CAAC,eAAe,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;IAC3I,OAAO,gBAAC,CAAC,KAAK,CACV,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,gBAAgB,CACnB,CAAA;AACL,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,CAAC,MAAqB,EAAE,EAAE;IAClD,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QAC5B,IAAI;YACA,MAAM,MAAM,CAAC,OAAO,EAAE,CAAA;SACzB;QAAC,MAAM,GAAE;QACV,OAAO,CAAC,IAAI,EAAE,CAAA;IAClB,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AAEM,MAAM,YAAY,GAAG,CAAC,eAAsC,EAAE,mBAAwC,EAAE,EAAiB,EAAE;IAC9H,MAAM,MAAM,GAAG,eAAe,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAA;IACjE,MAAM,MAAM,GAAG,IAAI,8BAAa,CAAC,MAAM,CAAC,CAAA;IACxC,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC3B,OAAO,MAAM,CAAA;AACjB,CAAC,CAAA;AALY,QAAA,YAAY,gBAKxB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import commander, { Command } from 'commander';
|
|
2
|
+
import { BrubeckClientConfig } from 'streamr-client';
|
|
3
|
+
export declare const createCommand: () => commander.Command;
|
|
4
|
+
export interface CommandOpts {
|
|
5
|
+
autoDestroyClient?: boolean;
|
|
6
|
+
clientOptionsFactory?: (options: any) => BrubeckClientConfig;
|
|
7
|
+
}
|
|
8
|
+
export declare const createClientCommand: (action: (...handleArgs: any[]) => Promise<void>, opts?: CommandOpts) => commander.Command;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createClientCommand = exports.createCommand = void 0;
|
|
7
|
+
const commander_1 = require("commander");
|
|
8
|
+
const package_json_1 = __importDefault(require("../package.json"));
|
|
9
|
+
const client_1 = require("./client");
|
|
10
|
+
const createCommand = () => {
|
|
11
|
+
return new commander_1.Command()
|
|
12
|
+
.version(package_json_1.default.version)
|
|
13
|
+
.showHelpAfterError()
|
|
14
|
+
.allowExcessArguments(false);
|
|
15
|
+
};
|
|
16
|
+
exports.createCommand = createCommand;
|
|
17
|
+
const createClientCommand = (action, opts = {
|
|
18
|
+
autoDestroyClient: true,
|
|
19
|
+
clientOptionsFactory: () => ({})
|
|
20
|
+
}) => {
|
|
21
|
+
return (0, exports.createCommand)()
|
|
22
|
+
.option('--private-key <key>', 'use an Ethereum private key to authenticate')
|
|
23
|
+
.option('--config <file>', 'read connection and authentication settings from a config file')
|
|
24
|
+
.option('--dev', 'use pre-defined development environment')
|
|
25
|
+
.action(async (...args) => {
|
|
26
|
+
const commandLineOptions = args[args.length - 1].opts();
|
|
27
|
+
try {
|
|
28
|
+
const client = (0, client_1.createClient)(commandLineOptions, opts.clientOptionsFactory(commandLineOptions));
|
|
29
|
+
try {
|
|
30
|
+
await action(...[client].concat(args));
|
|
31
|
+
}
|
|
32
|
+
finally {
|
|
33
|
+
if (opts.autoDestroyClient) {
|
|
34
|
+
await client.destroy();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
console.error(e);
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
exports.createClientCommand = createClientCommand;
|
|
45
|
+
//# sourceMappingURL=command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/command.ts"],"names":[],"mappings":";;;;;;AAAA,yCAA8C;AAE9C,mEAAiC;AACjC,qCAAuC;AAEhC,MAAM,aAAa,GAAG,GAAsB,EAAE;IACjD,OAAO,IAAI,mBAAO,EAAE;SACf,OAAO,CAAC,sBAAG,CAAC,OAAO,CAAC;SACpB,kBAAkB,EAAE;SACpB,oBAAoB,CAAC,KAAK,CAAC,CAAA;AACpC,CAAC,CAAA;AALY,QAAA,aAAa,iBAKzB;AAOM,MAAM,mBAAmB,GAAG,CAC/B,MAA+C,EAC/C,OAAoB;IAChB,iBAAiB,EAAE,IAAI;IACvB,oBAAoB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;CACnC,EACgB,EAAE;IACnB,OAAO,IAAA,qBAAa,GAAE;SACjB,MAAM,CAAC,qBAAqB,EAAE,6CAA6C,CAAC;SAC5E,MAAM,CAAC,iBAAiB,EAAE,gEAAgE,CAAC;SAC3F,MAAM,CAAC,OAAO,EAAE,yCAAyC,CAAC;SAC1D,MAAM,CAAC,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;QAC7B,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACvD,IAAI;YACA,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,kBAAkB,EAAE,IAAI,CAAC,oBAAqB,CAAC,kBAAkB,CAAC,CAAC,CAAA;YAC/F,IAAI;gBACA,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;aACzC;oBAAS;gBACN,IAAI,IAAI,CAAC,iBAAiB,EAAE;oBACxB,MAAM,MAAM,CAAC,OAAO,EAAE,CAAA;iBACzB;aACJ;SACJ;QAAC,OAAO,CAAM,EAAE;YACb,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SAClB;IACL,CAAC,CAAC,CAAA;AACV,CAAC,CAAA;AA3BY,QAAA,mBAAmB,uBA2B/B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createFnParseInt = void 0;
|
|
4
|
+
function createFnParseInt(name) {
|
|
5
|
+
return (str) => {
|
|
6
|
+
const n = parseInt(str, 10);
|
|
7
|
+
if (isNaN(n)) {
|
|
8
|
+
console.error(`${name} must be an integer (was "${str}")`);
|
|
9
|
+
process.exit(1);
|
|
10
|
+
}
|
|
11
|
+
return n;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
exports.createFnParseInt = createFnParseInt;
|
|
15
|
+
//# sourceMappingURL=common.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/common.ts"],"names":[],"mappings":";;;AAMA,SAAgB,gBAAgB,CAAC,IAAY;IACzC,OAAO,CAAC,GAAW,EAAE,EAAE;QACnB,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAC3B,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,6BAA6B,GAAG,IAAI,CAAC,CAAA;YAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SAClB;QACD,OAAO,CAAC,CAAA;IACZ,CAAC,CAAA;AACL,CAAC;AATD,4CASC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getConfig = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const os_1 = __importDefault(require("os"));
|
|
9
|
+
const fs_1 = require("fs");
|
|
10
|
+
/*
|
|
11
|
+
* Validate that the config contains at least one root level element: the "client" block.
|
|
12
|
+
* The values of the "client" blocks are validated by StreamrClient when the configuration
|
|
13
|
+
* is used.
|
|
14
|
+
*
|
|
15
|
+
* We don't check other root level elements. It is ok to use a Broker config file as
|
|
16
|
+
* a cli-tools config file. In that case the file contains e.g. "plugins" block,
|
|
17
|
+
* but cli-tools can just ignore that block.
|
|
18
|
+
*/
|
|
19
|
+
const validateConfig = (config, fileName) => {
|
|
20
|
+
const CLIENT_CONFIG_BLOCK = 'client';
|
|
21
|
+
if (config[CLIENT_CONFIG_BLOCK] === undefined) {
|
|
22
|
+
throw new Error(`Missing root element "${CLIENT_CONFIG_BLOCK}" in ${fileName}`);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
const tryReadConfigFile = (fileName) => {
|
|
26
|
+
let content;
|
|
27
|
+
try {
|
|
28
|
+
content = (0, fs_1.readFileSync)(fileName, 'utf8');
|
|
29
|
+
}
|
|
30
|
+
catch (e) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
const json = JSON.parse(content);
|
|
34
|
+
validateConfig(json, fileName);
|
|
35
|
+
return json;
|
|
36
|
+
};
|
|
37
|
+
const getConfig = (id) => {
|
|
38
|
+
const CONFIG_DIRECTORY = path_1.default.join(os_1.default.homedir(), '.streamr', 'config');
|
|
39
|
+
if (id !== undefined) {
|
|
40
|
+
const fileNames = [
|
|
41
|
+
id,
|
|
42
|
+
path_1.default.join(CONFIG_DIRECTORY, `${id}.json`),
|
|
43
|
+
];
|
|
44
|
+
for (const fileName of fileNames) {
|
|
45
|
+
const content = tryReadConfigFile(fileName);
|
|
46
|
+
if (content !== undefined) {
|
|
47
|
+
return content;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
throw new Error('Config file not found');
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
const fileName = path_1.default.join(CONFIG_DIRECTORY, `default.json`);
|
|
54
|
+
return tryReadConfigFile(fileName);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
exports.getConfig = getConfig;
|
|
58
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AACvB,4CAAmB;AACnB,2BAAiC;AAOjC;;;;;;;;GAQG;AACH,MAAM,cAAc,GAAG,CAAC,MAAW,EAAE,QAAgB,EAAgB,EAAE;IACnE,MAAM,mBAAmB,GAAG,QAAQ,CAAA;IACpC,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,SAAS,EAAE;QAC3C,MAAM,IAAI,KAAK,CAAC,yBAAyB,mBAAmB,QAAQ,QAAQ,EAAE,CAAC,CAAA;KAClF;AACL,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,QAAgB,EAA0B,EAAE;IACnE,IAAI,OAAO,CAAA;IACX,IAAI;QACA,OAAO,GAAG,IAAA,iBAAY,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;KAC3C;IAAC,OAAO,CAAM,EAAE;QACb,OAAO,SAAS,CAAA;KACnB;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAChC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC9B,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AAEM,MAAM,SAAS,GAAG,CAAC,EAAW,EAAoB,EAAE;IACvD,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAA;IACtE,IAAI,EAAE,KAAK,SAAS,EAAE;QAClB,MAAM,SAAS,GAAG;YACd,EAAE;YACF,cAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE,OAAO,CAAC;SAC5C,CAAA;QACD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAC9B,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;YAC3C,IAAI,OAAO,KAAK,SAAS,EAAE;gBACvB,OAAO,OAAO,CAAA;aACjB;SACJ;QACD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;KAC3C;SAAM;QACH,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAA;QAC5D,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAA;KACrC;AACL,CAAC,CAAA;AAlBY,QAAA,SAAS,aAkBrB"}
|
|
File without changes
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Minimal logging for NetworkNode and other users of Logger.ts in the network package.
|
|
4
|
+
* This file needs to be imported before any of the network package classes
|
|
5
|
+
* so that the environment variable is updated before any Logger instances are created.
|
|
6
|
+
* The import is needed for the files where network packages are used (typically
|
|
7
|
+
* the files which call createClientCommand()).
|
|
8
|
+
*/
|
|
9
|
+
var _a;
|
|
10
|
+
process.env.LOG_LEVEL = (_a = process.env.LOG_LEVEL) !== null && _a !== void 0 ? _a : 'error';
|
|
11
|
+
//# sourceMappingURL=logLevel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logLevel.js","sourceRoot":"","sources":["../../src/logLevel.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,MAAA,OAAO,CAAC,GAAG,CAAC,SAAS,mCAAI,OAAO,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Stream, StreamPermission } from 'streamr-client';
|
|
2
|
+
export declare const PERMISSIONS: Map<string, StreamPermission>;
|
|
3
|
+
export declare const getPermissionId: (permission: StreamPermission) => string;
|
|
4
|
+
export declare const runModifyPermissionsCommand: (modifyUserPermission: (stream: Stream, permission: StreamPermission, target: string) => Promise<void>, modifyPublicPermission: (stream: Stream, permission: StreamPermission) => Promise<void>, modification: string) => void;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runModifyPermissionsCommand = exports.getPermissionId = exports.PERMISSIONS = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const streamr_client_1 = require("streamr-client");
|
|
6
|
+
const command_1 = require("./command");
|
|
7
|
+
const PUBLIC_USER_ID = 'public';
|
|
8
|
+
const getTarget = (user) => {
|
|
9
|
+
if (user === PUBLIC_USER_ID) {
|
|
10
|
+
return undefined;
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
return user;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
exports.PERMISSIONS = new Map([
|
|
17
|
+
['subscribe', streamr_client_1.StreamPermission.SUBSCRIBE],
|
|
18
|
+
['publish', streamr_client_1.StreamPermission.PUBLISH],
|
|
19
|
+
['edit', streamr_client_1.StreamPermission.EDIT],
|
|
20
|
+
['delete', streamr_client_1.StreamPermission.DELETE],
|
|
21
|
+
['grant', streamr_client_1.StreamPermission.GRANT]
|
|
22
|
+
]);
|
|
23
|
+
const getPermissionId = (permission) => {
|
|
24
|
+
return Array.from(exports.PERMISSIONS.entries()).find(([_id, p]) => p === permission)[0];
|
|
25
|
+
};
|
|
26
|
+
exports.getPermissionId = getPermissionId;
|
|
27
|
+
const runModifyPermissionsCommand = (modifyUserPermission, modifyPublicPermission, modification) => {
|
|
28
|
+
(0, command_1.createClientCommand)(async (client, streamId, user, permissionIds) => {
|
|
29
|
+
const target = getTarget(user);
|
|
30
|
+
const stream = await client.getStream(streamId);
|
|
31
|
+
for await (const permissionId of permissionIds) {
|
|
32
|
+
const permission = exports.PERMISSIONS.get(permissionId);
|
|
33
|
+
if (target !== undefined) {
|
|
34
|
+
await modifyUserPermission(stream, permission, target);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
await modifyPublicPermission(stream, permission);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
})
|
|
41
|
+
.addArgument(new commander_1.Argument('<streamId>'))
|
|
42
|
+
.addArgument(new commander_1.Argument('<user>'))
|
|
43
|
+
.addArgument(new commander_1.Argument('<permissions...>').choices(Array.from(exports.PERMISSIONS.keys())))
|
|
44
|
+
.description(`${modification} permission: use keyword "public" as a user to ${modification} a public permission`)
|
|
45
|
+
.parseAsync(process.argv);
|
|
46
|
+
};
|
|
47
|
+
exports.runModifyPermissionsCommand = runModifyPermissionsCommand;
|
|
48
|
+
//# sourceMappingURL=permission.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permission.js","sourceRoot":"","sources":["../../src/permission.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,mDAAwE;AACxE,uCAA+C;AAE/C,MAAM,cAAc,GAAG,QAAQ,CAAA;AAE/B,MAAM,SAAS,GAAG,CAAC,IAAY,EAAoB,EAAE;IACjD,IAAI,IAAI,KAAK,cAAc,EAAE;QACzB,OAAO,SAAS,CAAA;KACnB;SAAM;QACH,OAAO,IAAI,CAAA;KACd;AACL,CAAC,CAAA;AAEY,QAAA,WAAW,GAAG,IAAI,GAAG,CAA0B;IACxD,CAAC,WAAW,EAAE,iCAAgB,CAAC,SAAS,CAAC;IACzC,CAAC,SAAS,EAAE,iCAAgB,CAAC,OAAO,CAAC;IACrC,CAAC,MAAM,EAAE,iCAAgB,CAAC,IAAI,CAAC;IAC/B,CAAC,QAAQ,EAAE,iCAAgB,CAAC,MAAM,CAAC;IACnC,CAAC,OAAO,EAAE,iCAAgB,CAAC,KAAK,CAAC;CACpC,CAAC,CAAA;AAEK,MAAM,eAAe,GAAG,CAAC,UAA4B,EAAU,EAAE;IACpE,OAAO,KAAK,CAAC,IAAI,CAAC,mBAAW,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,UAAU,CAAE,CAAC,CAAC,CAAC,CAAA;AACrF,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B;AAEM,MAAM,2BAA2B,GAAG,CACvC,oBAAqG,EACrG,sBAAuF,EACvF,YAAoB,EAChB,EAAE;IACN,IAAA,6BAAmB,EAAC,KAAK,EAAE,MAAqB,EAAE,QAAgB,EAAE,IAAY,EAAE,aAAuB,EAAE,EAAE;QACzG,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;QAC9B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAC/C,IAAI,KAAK,EAAE,MAAM,YAAY,IAAI,aAAa,EAAE;YAC5C,MAAM,UAAU,GAAG,mBAAW,CAAC,GAAG,CAAC,YAAY,CAAE,CAAA;YACjD,IAAI,MAAM,KAAK,SAAS,EAAE;gBACtB,MAAM,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;aACzD;iBAAM;gBACH,MAAM,sBAAsB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;aACnD;SACJ;IACL,CAAC,CAAC;SACG,WAAW,CAAC,IAAI,oBAAQ,CAAC,YAAY,CAAC,CAAC;SACvC,WAAW,CAAC,IAAI,oBAAQ,CAAC,QAAQ,CAAC,CAAC;SACnC,WAAW,CAAC,IAAI,oBAAQ,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;SACrF,WAAW,CAAC,GAAG,YAAY,kDAAkD,YAAY,sBAAsB,CAAC;SAChH,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AACjC,CAAC,CAAA;AAtBY,QAAA,2BAA2B,+BAsBvC"}
|
package/dist/src/resend.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const
|
|
3
|
-
|
|
4
|
-
}) => Promise<void>;
|
|
1
|
+
import { StreamrClient, ResendOptions } from 'streamr-client';
|
|
2
|
+
export declare const assertBothOrNoneDefined: (option1: string, option2: string, errorMessage: string, commandOptions: Record<string, unknown>) => void | never;
|
|
3
|
+
export declare const resend: (streamId: string, resendOpts: ResendOptions, client: StreamrClient, subscribe: boolean) => Promise<void>;
|
package/dist/src/resend.js
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.resend = void 0;
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
exports.resend = exports.assertBothOrNoneDefined = void 0;
|
|
4
|
+
const assertBothOrNoneDefined = (option1, option2, errorMessage, commandOptions) => {
|
|
5
|
+
if ((option1 in commandOptions && !(option2 in commandOptions)) || (option2 in commandOptions && !(option1 in commandOptions))) {
|
|
6
|
+
console.error(`option ${errorMessage}`);
|
|
7
|
+
process.exit(1);
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
exports.assertBothOrNoneDefined = assertBothOrNoneDefined;
|
|
11
|
+
const resend = async (streamId, resendOpts, client, subscribe) => {
|
|
9
12
|
try {
|
|
10
13
|
const subscribeOpts = {
|
|
11
14
|
stream: streamId,
|
|
@@ -14,31 +17,17 @@ const resend = async (streamId, resendOpts, streamrOptions) => {
|
|
|
14
17
|
const handler = (message) => {
|
|
15
18
|
console.info(JSON.stringify(message));
|
|
16
19
|
};
|
|
17
|
-
if (
|
|
18
|
-
|
|
20
|
+
if (subscribe) {
|
|
21
|
+
await client.subscribe(subscribeOpts, handler);
|
|
19
22
|
}
|
|
20
23
|
else {
|
|
21
|
-
|
|
24
|
+
await client.resend(subscribeOpts, handler);
|
|
22
25
|
}
|
|
23
26
|
}
|
|
24
27
|
catch (err) {
|
|
25
28
|
console.error(err.message ? err.message : err);
|
|
26
29
|
process.exit(1);
|
|
27
30
|
}
|
|
28
|
-
sub.on('error', (err) => {
|
|
29
|
-
console.error(err);
|
|
30
|
-
process.exit(1);
|
|
31
|
-
});
|
|
32
|
-
sub.on('resent', () => {
|
|
33
|
-
if (!options.subscribe) {
|
|
34
|
-
process.exit(0);
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
sub.on('no_resend', () => {
|
|
38
|
-
if (!options.subscribe) {
|
|
39
|
-
process.exit(0);
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
31
|
};
|
|
43
32
|
exports.resend = resend;
|
|
44
33
|
//# sourceMappingURL=resend.js.map
|
package/dist/src/resend.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resend.js","sourceRoot":"","sources":["../../src/resend.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"resend.js","sourceRoot":"","sources":["../../src/resend.ts"],"names":[],"mappings":";;;AAEO,MAAM,uBAAuB,GAAG,CACnC,OAAe,EACf,OAAe,EACf,YAAoB,EACpB,cAAuC,EAC3B,EAAE;IACd,IAAI,CAAC,OAAO,IAAI,cAAc,IAAI,CAAC,CAAC,OAAO,IAAI,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,cAAc,IAAI,CAAC,CAAC,OAAO,IAAI,cAAc,CAAC,CAAC,EAAE;QAC5H,OAAO,CAAC,KAAK,CAAC,UAAU,YAAY,EAAE,CAAC,CAAA;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAClB;AACL,CAAC,CAAA;AAVY,QAAA,uBAAuB,2BAUnC;AAEM,MAAM,MAAM,GAAG,KAAK,EACvB,QAAgB,EAChB,UAAyB,EACzB,MAAqB,EACrB,SAAkB,EACL,EAAE;IACf,IAAI;QACA,MAAM,aAAa,GAAG;YAClB,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,UAAU;SACrB,CAAA;QACD,MAAM,OAAO,GAAG,CAAC,OAAY,EAAE,EAAE;YAC7B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;QACzC,CAAC,CAAA;QACD,IAAI,SAAS,EAAE;YACX,MAAM,MAAM,CAAC,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;SACjD;aAAM;YACH,MAAM,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;SAC9C;KACJ;IAAC,OAAO,GAAG,EAAE;QACV,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAClB;AACL,CAAC,CAAA;AAvBY,QAAA,MAAM,UAuBlB"}
|