@streamr/cli-tools 5.0.0 → 6.0.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/.eslintignore +2 -0
  2. package/.eslintrc +6 -0
  3. package/CHANGELOG.md +20 -0
  4. package/README.md +42 -17
  5. package/bin/streamr-mock-data-generate.ts +38 -8
  6. package/bin/streamr-mock-data.ts +1 -1
  7. package/bin/streamr-storage-node-add-stream.ts +8 -22
  8. package/bin/streamr-storage-node-list-stream-parts.ts +18 -30
  9. package/bin/streamr-storage-node-list.ts +17 -36
  10. package/bin/streamr-storage-node-remove-stream.ts +8 -22
  11. package/bin/streamr-storage-node.ts +1 -1
  12. package/bin/streamr-stream-create.ts +17 -29
  13. package/bin/streamr-stream-grant-permission.ts +10 -0
  14. package/bin/streamr-stream-publish.ts +54 -21
  15. package/bin/streamr-stream-resend-from.ts +26 -0
  16. package/bin/streamr-stream-resend-last.ts +25 -0
  17. package/bin/streamr-stream-resend-range.ts +32 -0
  18. package/bin/streamr-stream-resend.ts +7 -102
  19. package/bin/streamr-stream-revoke-permission.ts +10 -0
  20. package/bin/streamr-stream-search.ts +17 -0
  21. package/bin/streamr-stream-show.ts +16 -16
  22. package/bin/streamr-stream-subscribe.ts +16 -16
  23. package/bin/streamr-stream.ts +3 -1
  24. package/bin/streamr.ts +1 -1
  25. package/dist/bin/streamr-mock-data-generate.d.ts +2 -0
  26. package/dist/bin/streamr-mock-data-generate.js +36 -9
  27. package/dist/bin/streamr-mock-data-generate.js.map +1 -0
  28. package/dist/bin/streamr-mock-data.d.ts +2 -0
  29. package/dist/bin/streamr-mock-data.js +2 -1
  30. package/dist/bin/streamr-mock-data.js.map +1 -0
  31. package/dist/bin/streamr-storage-node-add-stream.d.ts +2 -0
  32. package/dist/bin/streamr-storage-node-add-stream.js +9 -20
  33. package/dist/bin/streamr-storage-node-add-stream.js.map +1 -0
  34. package/dist/bin/streamr-storage-node-list-stream-parts.d.ts +2 -0
  35. package/dist/bin/streamr-storage-node-list-stream-parts.js +18 -24
  36. package/dist/bin/streamr-storage-node-list-stream-parts.js.map +1 -0
  37. package/dist/bin/streamr-storage-node-list.d.ts +2 -0
  38. package/dist/bin/streamr-storage-node-list.js +17 -30
  39. package/dist/bin/streamr-storage-node-list.js.map +1 -0
  40. package/dist/bin/streamr-storage-node-remove-stream.d.ts +2 -0
  41. package/dist/bin/streamr-storage-node-remove-stream.js +9 -20
  42. package/dist/bin/streamr-storage-node-remove-stream.js.map +1 -0
  43. package/dist/bin/streamr-storage-node.d.ts +2 -0
  44. package/dist/bin/streamr-storage-node.js +2 -1
  45. package/dist/bin/streamr-storage-node.js.map +1 -0
  46. package/dist/bin/streamr-stream-create.d.ts +2 -0
  47. package/dist/bin/streamr-stream-create.js +15 -23
  48. package/dist/bin/streamr-stream-create.js.map +1 -0
  49. package/dist/bin/streamr-stream-grant-permission.d.ts +2 -0
  50. package/dist/bin/streamr-stream-grant-permission.js +7 -0
  51. package/dist/bin/streamr-stream-grant-permission.js.map +1 -0
  52. package/dist/bin/streamr-stream-list.d.ts +2 -0
  53. package/dist/bin/streamr-stream-list.js +20 -18
  54. package/dist/bin/streamr-stream-list.js.map +1 -0
  55. package/dist/bin/streamr-stream-publish.d.ts +2 -0
  56. package/dist/bin/streamr-stream-publish.js +50 -23
  57. package/dist/bin/streamr-stream-publish.js.map +1 -0
  58. package/dist/bin/streamr-stream-resend-from.d.ts +2 -0
  59. package/dist/bin/streamr-stream-resend-from.js +27 -0
  60. package/dist/bin/streamr-stream-resend-from.js.map +1 -0
  61. package/dist/bin/streamr-stream-resend-last.d.ts +2 -0
  62. package/dist/bin/streamr-stream-resend-last.js +26 -0
  63. package/dist/bin/streamr-stream-resend-last.js.map +1 -0
  64. package/dist/bin/streamr-stream-resend-range.d.ts +2 -0
  65. package/dist/bin/streamr-stream-resend-range.js +33 -0
  66. package/dist/bin/streamr-stream-resend-range.js.map +1 -0
  67. package/dist/bin/streamr-stream-resend.d.ts +2 -0
  68. package/dist/bin/streamr-stream-resend.js +9 -97
  69. package/dist/bin/streamr-stream-resend.js.map +1 -0
  70. package/dist/bin/streamr-stream-revoke-permission.d.ts +2 -0
  71. package/dist/bin/streamr-stream-revoke-permission.js +7 -0
  72. package/dist/bin/streamr-stream-revoke-permission.js.map +1 -0
  73. package/dist/bin/streamr-stream-search.d.ts +2 -0
  74. package/dist/bin/streamr-stream-search.js +21 -0
  75. package/dist/bin/streamr-stream-search.js.map +1 -0
  76. package/dist/bin/streamr-stream-show.d.ts +2 -0
  77. package/dist/bin/streamr-stream-show.js +16 -15
  78. package/dist/bin/streamr-stream-show.js.map +1 -0
  79. package/dist/bin/streamr-stream-subscribe.d.ts +2 -0
  80. package/dist/bin/streamr-stream-subscribe.js +18 -20
  81. package/dist/bin/streamr-stream-subscribe.js.map +1 -0
  82. package/dist/bin/streamr-stream.d.ts +2 -0
  83. package/dist/bin/streamr-stream.js +4 -1
  84. package/dist/bin/streamr-stream.js.map +1 -0
  85. package/dist/bin/streamr.d.ts +2 -0
  86. package/dist/bin/streamr.js +2 -1
  87. package/dist/bin/streamr.js.map +1 -0
  88. package/dist/package.json +20 -9
  89. package/dist/src/client.d.ts +3 -0
  90. package/dist/src/client.js +33 -0
  91. package/dist/src/client.js.map +1 -0
  92. package/dist/src/command.d.ts +8 -0
  93. package/dist/src/command.js +45 -0
  94. package/dist/src/command.js.map +1 -0
  95. package/dist/src/common.d.ts +6 -0
  96. package/dist/src/common.js +15 -0
  97. package/dist/src/common.js.map +1 -0
  98. package/dist/src/config.d.ts +6 -0
  99. package/dist/src/config.js +58 -0
  100. package/dist/src/config.js.map +1 -0
  101. package/dist/src/logLevel.d.ts +0 -0
  102. package/dist/src/logLevel.js +11 -0
  103. package/dist/src/logLevel.js.map +1 -0
  104. package/dist/src/permission.d.ts +4 -0
  105. package/dist/src/permission.js +48 -0
  106. package/dist/src/permission.js.map +1 -0
  107. package/dist/src/resend.d.ts +3 -0
  108. package/dist/src/resend.js +13 -23
  109. package/dist/src/resend.js.map +1 -0
  110. package/dist/tsconfig.tsbuildinfo +1 -0
  111. package/package.json +20 -9
  112. package/src/client.ts +32 -0
  113. package/src/command.ts +45 -0
  114. package/src/common.ts +16 -0
  115. package/src/config.ts +56 -0
  116. package/src/logLevel.ts +9 -0
  117. package/src/permission.ts +49 -0
  118. package/src/resend.ts +22 -27
  119. package/tsconfig.json +13 -12
  120. package/bin/common.ts +0 -91
  121. package/bin/streamr-stream-list.ts +0 -29
  122. package/dist/bin/common.js +0 -76
  123. package/dist/src/create.js +0 -17
  124. package/dist/src/generate.js +0 -31
  125. package/dist/src/list.js +0 -27
  126. package/dist/src/publish.js +0 -35
  127. package/dist/src/show.js +0 -21
  128. package/dist/src/subscribe.js +0 -12
  129. package/src/create.ts +0 -15
  130. package/src/generate.ts +0 -30
  131. package/src/list.ts +0 -21
  132. package/src/publish.ts +0 -38
  133. package/src/show.ts +0 -18
  134. package/src/subscribe.ts +0 -9
@@ -1,106 +1,11 @@
1
1
  #!/usr/bin/env node
2
- import { Command } from 'commander';
3
- import { StreamrClientOptions } from 'streamr-client';
4
- import { resend } from '../src/resend'
5
- import { envOptions, authOptions, exitWithHelpIfArgsNotBetween, formStreamrOptionsWithEnv } from './common'
6
- import pkg from '../package.json'
2
+ import '../src/logLevel'
3
+ import { createCommand } from '../src/command'
7
4
 
8
- function handlePublisherIdAndMsgChainId(commandOptions: any, resendOptions: any) {
9
- if ('publisherId' in commandOptions && !('msgChainId' in commandOptions)) {
10
- console.error('option --publisher-id must be accompanied by option --msg-chain-id')
11
- process.exit(1)
12
- }
13
- if ('msgChainId' in commandOptions && !('publisherId' in commandOptions)) {
14
- console.error('option --msg-chain-id must be accompanied by option --publisher-id')
15
- process.exit(1)
16
- }
17
- if ('publisherId' in commandOptions) {
18
- resendOptions.publisherId = commandOptions.publisherId
19
- }
20
- if ('msgChainId' in commandOptions) {
21
- resendOptions.msgChainId = commandOptions.msgChainId
22
- }
23
- }
24
-
25
- const program = new Command();
26
-
27
- program
5
+ createCommand()
28
6
  .usage('<command> [<args>]')
29
7
  .description('request resend of stream and print JSON messages to stdout line-by-line')
30
-
31
- program
32
- .command('last <n> <streamId>')
33
- .description('request last N messages')
34
- .option('-d, --disable-ordering', 'disable ordering of messages by OrderingUtil', false)
35
- .option('-s, --subscribe', 'subscribe in addition to resend', false)
36
- .action((n: string, streamId: string, options: any, command: Command) => {
37
- // @ts-expect-error
38
- if (isNaN(n)) {
39
- console.error('argument n is not a number')
40
- process.exit(1)
41
- }
42
- const resendOptions = {
43
- last: parseInt(n)
44
- }
45
- const clientOptions: StreamrClientOptions & { subscribe?: boolean } = formStreamrOptionsWithEnv(command.parent!.opts())
46
- clientOptions.orderMessages = !options.disableOrdering
47
- clientOptions.subscribe = options.subscribe
48
- resend(streamId, resendOptions, clientOptions)
49
- })
50
-
51
- program
52
- .command('from <from> <streamId>')
53
- .description('request messages starting from given date-time (format: "YYYY-MM-DDTHH:mm:ss.sssZ")')
54
- .option('--publisher-id <string>', 'filter results by publisher')
55
- .option('--msg-chain-id <string>', 'filter results by message chain')
56
- .option('-d, --disable-ordering', 'disable ordering of messages by OrderingUtil', false)
57
- .option('-s, --subscribe', 'subscribe in addition to resend', false)
58
- .action((from: string, streamId: string, options: any, command: Command) => {
59
- const resendOptions = {
60
- from: {
61
- timestamp: Date.parse(from),
62
- sequenceNumber: 0
63
- }
64
- }
65
- handlePublisherIdAndMsgChainId(options, resendOptions)
66
- const clientOptions: StreamrClientOptions & { subscribe?: boolean } = formStreamrOptionsWithEnv(command.parent!.opts())
67
- clientOptions.orderMessages = !options.disableOrdering
68
- clientOptions.subscribe = options.subscribe
69
- resend(streamId, resendOptions, clientOptions)
70
- })
71
-
72
- program
73
- .command('range <from> <to> <streamId>')
74
- .description('request messages between two given date-times (format: "YYYY-MM-DDTHH:mm:ss.sssZ")')
75
- .option('--publisher-id <string>', 'filter results by publisher')
76
- .option('--msg-chain-id <string>', 'filter results by message chain')
77
- .option('-d, --disable-ordering', 'disable ordering of messages by OrderingUtil', false)
78
- .action((from: string, to: string, streamId: string, options: any, command: Command) => {
79
- const resendOptions = {
80
- from: {
81
- timestamp: Date.parse(from),
82
- sequenceNumber: 0
83
- },
84
- to: {
85
- timestamp: Date.parse(to),
86
- sequenceNumber: 0
87
- },
88
- }
89
- handlePublisherIdAndMsgChainId(options, resendOptions)
90
- const clientOptions = formStreamrOptionsWithEnv(command.parent!.opts())
91
- clientOptions.orderMessages = !options.disableOrdering
92
- resend(streamId, resendOptions, clientOptions)
93
- })
94
-
95
- program
96
- .on('command:*', (invalidCommand: any) => {
97
- console.error(`invalid command: ${invalidCommand}`)
98
- process.exit(1)
99
- })
100
-
101
- authOptions(program)
102
- envOptions(program)
103
- .version(pkg.version)
104
- .parse(process.argv)
105
-
106
- exitWithHelpIfArgsNotBetween(program, 1, Number.MAX_VALUE)
8
+ .command('from', 'request messages starting from given date-time')
9
+ .command('last', 'request last N messages')
10
+ .command('range', 'request messages between two given date-times')
11
+ .parse()
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel'
3
+ import { Stream, StreamPermission } from 'streamr-client'
4
+ import { runModifyPermissionsCommand } from '../src/permission'
5
+
6
+ runModifyPermissionsCommand(
7
+ (stream: Stream, permission: StreamPermission, target: string) => stream.revokeUserPermission(permission, target),
8
+ (stream: Stream, permission: StreamPermission) => stream.revokePublicPermission(permission),
9
+ 'revoke'
10
+ )
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel'
3
+ import EasyTable from 'easy-table'
4
+ import StreamrClient from 'streamr-client'
5
+ import { createClientCommand } from '../src/command'
6
+
7
+ createClientCommand(async (client: StreamrClient, term: string) => {
8
+ const streams = await client.searchStreams(term)
9
+ if (streams.length > 0) {
10
+ console.info(EasyTable.print(streams.map(({id}) => ({
11
+ id
12
+ }))))
13
+ }
14
+ })
15
+ .arguments('<term>')
16
+ .description('search streams')
17
+ .parseAsync()
@@ -1,20 +1,20 @@
1
1
  #!/usr/bin/env node
2
- import { Command } from 'commander';
3
- import { show } from '../src/show'
4
- import { envOptions, authOptions, exitWithHelpIfArgsNotBetween, formStreamrOptionsWithEnv } from './common'
5
- import pkg from '../package.json'
2
+ import '../src/logLevel'
3
+ import _ from 'lodash'
4
+ import StreamrClient, { StreamPermission } from 'streamr-client'
5
+ import { createClientCommand } from '../src/command'
6
+ import { getPermissionId } from '../src/permission'
6
7
 
7
- const program = new Command();
8
- program
8
+ createClientCommand(async (client: StreamrClient, streamId: string, options: any) => {
9
+ const stream = await client.getStream(streamId)
10
+ const obj: any = stream.toObject()
11
+ if (options.includePermissions) {
12
+ const permissions = await stream.getPermissions()
13
+ obj.permissions = _.mapValues(permissions, (p: StreamPermission[]) => p.map(getPermissionId))
14
+ }
15
+ console.info(JSON.stringify(obj, null, 2))
16
+ })
9
17
  .arguments('<streamId>')
10
18
  .description('show detailed information about a stream')
11
- .option('--include-permissions', 'include list of permissions (requires SHARE permission)')
12
- authOptions(program)
13
- envOptions(program)
14
- .version(pkg.version)
15
- .action((streamId: string, options: any) => {
16
- show(streamId, options.includePermissions, formStreamrOptionsWithEnv(options))
17
- })
18
- .parse(process.argv)
19
-
20
- exitWithHelpIfArgsNotBetween(program, 1, 1)
19
+ .option('--include-permissions', 'include list of permissions')
20
+ .parseAsync()
@@ -1,22 +1,22 @@
1
1
  #!/usr/bin/env node
2
- import { Command } from 'commander';
3
- import { subscribe } from '../src/subscribe'
4
- import { envOptions, authOptions, exitWithHelpIfArgsNotBetween, formStreamrOptionsWithEnv, createFnParseInt } from './common'
5
- import pkg from '../package.json'
2
+ import '../src/logLevel'
3
+ import StreamrClient from 'streamr-client'
4
+ import { createClientCommand } from '../src/command'
5
+ import { createFnParseInt } from '../src/common'
6
6
 
7
- const program = new Command();
8
- program
7
+ createClientCommand(async (client: StreamrClient, streamId: string, options: any) => {
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
+ })
9
18
  .arguments('<streamId>')
10
19
  .description('subscribe to a stream, prints JSON messages to stdout line-by-line')
11
20
  .option('-p, --partition [partition]', 'partition', createFnParseInt('--partition'), 0)
12
21
  .option('-d, --disable-ordering', 'disable ordering of messages by OrderingUtil', false)
13
- authOptions(program)
14
- envOptions(program)
15
- .version(pkg.version)
16
- .action((streamId: string, options: any) => {
17
- options.orderMessages = !options.disableOrdering
18
- subscribe(streamId, options.partition, formStreamrOptionsWithEnv(options))
19
- })
20
- .parse(process.argv)
21
-
22
- exitWithHelpIfArgsNotBetween(program, 1, 1)
22
+ .parseAsync()
@@ -12,4 +12,6 @@ program
12
12
  .command('show', 'info about a stream')
13
13
  .command("create", "create a new stream")
14
14
  .command('resend', 'request resend of a stream')
15
- .parse(process.argv)
15
+ .command('grant-permission', 'grant permission')
16
+ .command('revoke-permission', 'revoke permission')
17
+ .parse()
package/bin/streamr.ts CHANGED
@@ -9,4 +9,4 @@ program
9
9
  .command('stream', 'stream subcommands')
10
10
  .command('storage-node', 'storage node subcommands')
11
11
  .command('mock-data', 'mock data subcommands')
12
- .parse(process.argv)
12
+ .parse()
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export declare const generate: (rate: number) => void;
@@ -4,17 +4,44 @@ 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
- const commander_1 = require("commander");
8
- const generate_1 = require("../src/generate");
9
- const common_1 = require("./common");
7
+ exports.generate = void 0;
10
8
  const package_json_1 = __importDefault(require("../package.json"));
11
- const program = new commander_1.Command();
12
- program
9
+ const common_1 = require("../src/common");
10
+ const command_1 = require("../src/command");
11
+ // From: https://stackoverflow.com/questions/10726909/random-alpha-numeric-string-in-javascript
12
+ function randomString(length, chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ') {
13
+ let result = '';
14
+ for (let i = length; i > 0; --i) {
15
+ result += chars[Math.floor(Math.random() * chars.length)];
16
+ }
17
+ return result;
18
+ }
19
+ function genArray(size, elementFn) {
20
+ const arr = [];
21
+ for (let i = 0; i < size; ++i) {
22
+ arr.push(elementFn());
23
+ }
24
+ return arr;
25
+ }
26
+ const generate = (rate) => {
27
+ setInterval(() => {
28
+ console.info(JSON.stringify({
29
+ someText: randomString(64),
30
+ aNumber: Math.random() * 10000,
31
+ bNumber: Math.random(),
32
+ yesOrNo: Math.random() > 0.5,
33
+ arrayOfStrings: genArray(Math.floor(Math.random() * 20), () => randomString(8)),
34
+ arrayOfIntegers: genArray(Math.floor(Math.random() * 10), () => Math.floor(Math.random() * 100))
35
+ }));
36
+ }, rate);
37
+ };
38
+ exports.generate = generate;
39
+ (0, command_1.createCommand)()
13
40
  .description('generate and print semi-random JSON data to stdout')
14
- .option('-r, --rate <n>', 'rate in milliseconds', common_1.createFnParseInt('--rate'), 500)
41
+ .option('-r, --rate <n>', 'rate in milliseconds', (0, common_1.createFnParseInt)('--rate'), 500)
15
42
  .version(package_json_1.default.version)
16
43
  .action((options) => {
17
- generate_1.generate(options.rate);
44
+ (0, exports.generate)(options.rate);
18
45
  })
19
- .parse(process.argv);
20
- common_1.exitWithHelpIfArgsNotBetween(program, 0, 0);
46
+ .parse();
47
+ //# sourceMappingURL=streamr-mock-data-generate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-mock-data-generate.js","sourceRoot":"","sources":["../../bin/streamr-mock-data-generate.ts"],"names":[],"mappings":";;;;;;;AACA,mEAAiC;AACjC,0CAAgD;AAChD,4CAA8C;AAE9C,+FAA+F;AAC/F,SAAS,YAAY,CACjB,MAAc,EACd,KAAK,GAAG,gEAAgE;IAExE,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;KAC5D;IACD,OAAO,MAAM,CAAA;AACjB,CAAC;AAED,SAAS,QAAQ,CAAI,IAAY,EAAE,SAAkB;IACjD,MAAM,GAAG,GAAG,EAAE,CAAA;IACd,KAAK,IAAI,CAAC,GAAC,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;QACzB,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;KACxB;IACD,OAAO,GAAG,CAAA;AACd,CAAC;AAEM,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAQ,EAAE;IAC3C,WAAW,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YACxB,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK;YAC9B,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE;YACtB,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG;YAC5B,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/E,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;SAEnG,CAAC,CAAC,CAAA;IACP,CAAC,EAAE,IAAI,CAAC,CAAA;AACZ,CAAC,CAAA;AAZY,QAAA,QAAQ,YAYpB;AAED,IAAA,uBAAa,GAAE;KACV,WAAW,CAAC,oDAAoD,CAAC;KACjE,MAAM,CAAC,gBAAgB,EAAE,sBAAsB,EAAE,IAAA,yBAAgB,EAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;KACjF,OAAO,CAAC,sBAAG,CAAC,OAAO,CAAC;KACpB,MAAM,CAAC,CAAC,OAAY,EAAE,EAAE;IACrB,IAAA,gBAAQ,EAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC,CAAC;KACD,KAAK,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -11,4 +11,5 @@ commander_1.program
11
11
  .usage('<command> [<args>]')
12
12
  .description('mock-data subcommands')
13
13
  .command('generate', 'generate JSON data')
14
- .parse(process.argv);
14
+ .parse();
15
+ //# sourceMappingURL=streamr-mock-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-mock-data.js","sourceRoot":"","sources":["../../bin/streamr-mock-data.ts"],"names":[],"mappings":";;;;;;AACA,yCAAmC;AACnC,mEAAiC;AAEjC,mBAAO;KACF,OAAO,CAAC,sBAAG,CAAC,OAAO,CAAC;KACpB,KAAK,CAAC,oBAAoB,CAAC;KAC3B,WAAW,CAAC,uBAAuB,CAAC;KACpC,OAAO,CAAC,UAAU,EAAE,oBAAoB,CAAC;KACzC,KAAK,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel';
@@ -1,24 +1,13 @@
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
- const commander_1 = require("commander");
8
- const streamr_client_1 = require("streamr-client");
9
- const common_1 = require("./common");
10
- const package_json_1 = __importDefault(require("../package.json"));
11
- const program = new commander_1.Command();
12
- program
13
- .arguments('<storageNodeAddress> <streamId>')
14
- .description('add stream to a storage node');
15
- common_1.authOptions(program);
16
- common_1.envOptions(program)
17
- .version(package_json_1.default.version)
18
- .action((storageNodeAddress, streamId, options) => {
19
- const client = new streamr_client_1.StreamrClient(common_1.formStreamrOptionsWithEnv(options));
20
- client.getStream(streamId)
21
- .then((stream) => stream.addToStorageNode(storageNodeAddress));
4
+ require("../src/logLevel");
5
+ const command_1 = require("../src/command");
6
+ (0, command_1.createClientCommand)(async (client, storageNodeAddress, streamId) => {
7
+ const stream = await client.getStream(streamId);
8
+ await stream.addToStorageNode(storageNodeAddress);
22
9
  })
23
- .parse(process.argv);
24
- common_1.exitWithHelpIfArgsNotBetween(program, 2, 2);
10
+ .arguments('<storageNodeAddress> <streamId>')
11
+ .description('add stream to a storage node')
12
+ .parseAsync();
13
+ //# sourceMappingURL=streamr-storage-node-add-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-storage-node-add-stream.js","sourceRoot":"","sources":["../../bin/streamr-storage-node-add-stream.ts"],"names":[],"mappings":";;;AACA,2BAAwB;AAExB,4CAAoD;AAEpD,IAAA,6BAAmB,EAAC,KAAK,EAAE,MAAqB,EAAE,kBAA0B,EAAE,QAAgB,EAAE,EAAE;IAC9F,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC/C,MAAM,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;AACrD,CAAC,CAAC;KACG,SAAS,CAAC,iCAAiC,CAAC;KAC5C,WAAW,CAAC,8BAA8B,CAAC;KAC3C,UAAU,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel';
@@ -4,29 +4,23 @@ 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
- const commander_1 = require("commander");
8
- const streamr_client_1 = require("streamr-client");
9
- const common_1 = require("./common");
10
- const package_json_1 = __importDefault(require("../package.json"));
7
+ require("../src/logLevel");
11
8
  const easy_table_1 = __importDefault(require("easy-table"));
12
- const program = new commander_1.Command();
13
- program
9
+ const command_1 = require("../src/command");
10
+ const streamr_client_protocol_1 = require("streamr-client-protocol");
11
+ (0, command_1.createClientCommand)((async (client, storageNodeAddress) => {
12
+ const streamParts = await client.getStreamPartsByStorageNode(storageNodeAddress);
13
+ if (streamParts.length > 0) {
14
+ console.info(easy_table_1.default.print(streamParts.map((streamPartId) => {
15
+ const [streamId, streamPartition] = streamr_client_protocol_1.StreamPartIDUtils.getStreamIDAndPartition(streamPartId);
16
+ return {
17
+ streamId,
18
+ streamPartition
19
+ };
20
+ })));
21
+ }
22
+ }))
14
23
  .arguments('<storageNodeAddress>')
15
- .description('list streams parts in a storage node');
16
- common_1.authOptions(program);
17
- common_1.envOptions(program)
18
- .version(package_json_1.default.version)
19
- .action((storageNodeAddress, options) => {
20
- const client = new streamr_client_1.StreamrClient(common_1.formStreamrOptionsWithEnv(options));
21
- client.getStreamPartsByStorageNode(storageNodeAddress)
22
- .then((streamParts) => {
23
- if (streamParts.length > 0) {
24
- console.info(easy_table_1.default.print(streamParts.map((streamPart) => ({
25
- streamId: streamPart.getStreamId(),
26
- streamPartition: streamPart.getStreamPartition()
27
- }))));
28
- }
29
- });
30
- })
31
- .parse(process.argv);
32
- common_1.exitWithHelpIfArgsNotBetween(program, 1, 1);
24
+ .description('list stream parts in a storage node')
25
+ .parseAsync();
26
+ //# sourceMappingURL=streamr-storage-node-list-stream-parts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-storage-node-list-stream-parts.js","sourceRoot":"","sources":["../../bin/streamr-storage-node-list-stream-parts.ts"],"names":[],"mappings":";;;;;;AACA,2BAAwB;AACxB,4DAAkC;AAElC,4CAAoD;AACpD,qEAA2D;AAE3D,IAAA,6BAAmB,EAAC,CAAC,KAAK,EAAE,MAAqB,EAAE,kBAA0B,EAAE,EAAE;IAC7E,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,kBAAkB,CAAC,CAAA;IAChF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QACxB,OAAO,CAAC,IAAI,CAAC,oBAAS,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;YAC1D,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,GAAG,2CAAiB,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAA;YAC3F,OAAO;gBACH,QAAQ;gBACR,eAAe;aAClB,CAAA;QACL,CAAC,CAAC,CAAC,CAAC,CAAA;KACP;AACL,CAAC,CAAC,CAAC;KACE,SAAS,CAAC,sBAAsB,CAAC;KACjC,WAAW,CAAC,qCAAqC,CAAC;KAClD,UAAU,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel';
@@ -4,41 +4,28 @@ 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
- const commander_1 = require("commander");
8
- const streamr_client_1 = require("streamr-client");
9
- const common_1 = require("./common");
10
- const package_json_1 = __importDefault(require("../package.json"));
7
+ require("../src/logLevel");
11
8
  const easy_table_1 = __importDefault(require("easy-table"));
9
+ const command_1 = require("../src/command");
12
10
  const getStorageNodes = async (streamId, client) => {
13
11
  if (streamId !== undefined) {
14
- return client.getStream(streamId)
15
- .then(stream => stream.getStorageNodes())
16
- .then(storegeNodes => {
17
- return storegeNodes.map(storageNode => storageNode.getAddress());
18
- });
12
+ const stream = await client.getStream(streamId);
13
+ return stream.getStorageNodes();
19
14
  }
20
15
  else {
21
- // all storage nodes (currently there is only one)
22
- // @ts-expect-error
23
- return [client.options.storageNode.address];
16
+ return client.getAllStorageNodes();
24
17
  }
25
18
  };
26
- const program = new commander_1.Command();
27
- program
28
- .description('fetch a list of storage nodes')
29
- .option('-s, --stream <streamId>', 'only storage nodes which store the given stream (needs authentication)');
30
- common_1.authOptions(program);
31
- common_1.envOptions(program)
32
- .version(package_json_1.default.version)
33
- .action((options) => {
34
- const client = new streamr_client_1.StreamrClient(common_1.formStreamrOptionsWithEnv(options));
35
- getStorageNodes(options.stream, client).then((addresses) => {
36
- if (addresses.length > 0) {
37
- console.info(easy_table_1.default.print(addresses.map((address) => ({
38
- address
39
- }))));
40
- }
41
- });
19
+ (0, command_1.createClientCommand)(async (client, options) => {
20
+ const streamId = options.stream;
21
+ const addresses = await getStorageNodes(streamId, client);
22
+ if (addresses.length > 0) {
23
+ console.info(easy_table_1.default.print(addresses.map((address) => ({
24
+ address
25
+ }))));
26
+ }
42
27
  })
43
- .parse(process.argv);
44
- common_1.exitWithHelpIfArgsNotBetween(program, 0, 0);
28
+ .description('fetch a list of storage nodes')
29
+ .option('-s, --stream <streamId>', 'only storage nodes which store the given stream (needs authentication)')
30
+ .parseAsync();
31
+ //# sourceMappingURL=streamr-storage-node-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-storage-node-list.js","sourceRoot":"","sources":["../../bin/streamr-storage-node-list.ts"],"names":[],"mappings":";;;;;;AACA,2BAAwB;AAExB,4DAAkC;AAClC,4CAAoD;AAEpD,MAAM,eAAe,GAAG,KAAK,EAAE,QAA4B,EAAE,MAAqB,EAAqB,EAAE;IACrG,IAAI,QAAQ,KAAK,SAAS,EAAE;QACxB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAC/C,OAAO,MAAM,CAAC,eAAe,EAAE,CAAA;KAClC;SAAM;QACH,OAAO,MAAM,CAAC,kBAAkB,EAAE,CAAA;KACrC;AACL,CAAC,CAAA;AAED,IAAA,6BAAmB,EAAC,KAAK,EAAE,MAAqB,EAAE,OAAY,EAAE,EAAE;IAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAA;IAC/B,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IACzD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,OAAO,CAAC,IAAI,CAAC,oBAAS,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,CAAC;YAC7D,OAAO;SACV,CAAC,CAAC,CAAC,CAAC,CAAA;KACR;AACL,CAAC,CAAC;KACG,WAAW,CAAC,+BAA+B,CAAC;KAC5C,MAAM,CAAC,yBAAyB,EAAE,wEAAwE,CAAC;KAC3G,UAAU,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel';
@@ -1,24 +1,13 @@
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
- const commander_1 = require("commander");
8
- const streamr_client_1 = require("streamr-client");
9
- const common_1 = require("./common");
10
- const package_json_1 = __importDefault(require("../package.json"));
11
- const program = new commander_1.Command();
12
- program
13
- .arguments('<storageNodeAddress> <streamId>')
14
- .description('remove stream from a storage node');
15
- common_1.authOptions(program);
16
- common_1.envOptions(program)
17
- .version(package_json_1.default.version)
18
- .action((storageNodeAddress, streamId, options) => {
19
- const client = new streamr_client_1.StreamrClient(common_1.formStreamrOptionsWithEnv(options));
20
- client.getStream(streamId)
21
- .then((stream) => stream.removeFromStorageNode(storageNodeAddress));
4
+ require("../src/logLevel");
5
+ const command_1 = require("../src/command");
6
+ (0, command_1.createClientCommand)(async (client, storageNodeAddress, streamId) => {
7
+ const stream = await client.getStream(streamId);
8
+ await stream.removeFromStorageNode(storageNodeAddress);
22
9
  })
23
- .parse(process.argv);
24
- common_1.exitWithHelpIfArgsNotBetween(program, 2, 2);
10
+ .arguments('<storageNodeAddress> <streamId>')
11
+ .description('remove stream from a storage node')
12
+ .parseAsync();
13
+ //# sourceMappingURL=streamr-storage-node-remove-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-storage-node-remove-stream.js","sourceRoot":"","sources":["../../bin/streamr-storage-node-remove-stream.ts"],"names":[],"mappings":";;;AACA,2BAAwB;AAExB,4CAAoD;AAEpD,IAAA,6BAAmB,EAAC,KAAK,EAAE,MAAqB,EAAE,kBAA0B,EAAE,QAAgB,EAAE,EAAE;IAC9F,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC/C,MAAM,MAAM,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAA;AAC1D,CAAC,CAAC;KACG,SAAS,CAAC,iCAAiC,CAAC;KAC5C,WAAW,CAAC,mCAAmC,CAAC;KAChD,UAAU,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -14,4 +14,5 @@ commander_1.program
14
14
  .command('add-stream', 'add stream')
15
15
  .command('remove-stream', 'remove stream')
16
16
  .command('list-stream-parts', 'list stream parts in a storage node')
17
- .parse(process.argv);
17
+ .parse();
18
+ //# sourceMappingURL=streamr-storage-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-storage-node.js","sourceRoot":"","sources":["../../bin/streamr-storage-node.ts"],"names":[],"mappings":";;;;;;AACA,yCAAmC;AACnC,mEAAiC;AAEjC,mBAAO;KACF,OAAO,CAAC,sBAAG,CAAC,OAAO,CAAC;KACpB,KAAK,CAAC,oBAAoB,CAAC;KAC3B,WAAW,CAAC,0BAA0B,CAAC;KACvC,OAAO,CAAC,MAAM,EAAE,oBAAoB,CAAC;KACrC,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC;KACnC,OAAO,CAAC,eAAe,EAAE,eAAe,CAAC;KACzC,OAAO,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;KACnE,KAAK,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel';
@@ -1,31 +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
- const commander_1 = require("commander");
8
- const create_1 = require("../src/create");
9
- const common_1 = require("./common");
10
- const package_json_1 = __importDefault(require("../package.json"));
11
- const program = new commander_1.Command();
12
- program
13
- .arguments('<name>')
14
- .description('create a new stream')
15
- .option('-d, --description <description>', 'define a description')
16
- .option('-c, --config <config>', 'define a configuration as JSON', (s) => JSON.parse(s))
17
- .option('-p, --partitions <count>', 'define a partition count', common_1.createFnParseInt('--partitions'));
18
- common_1.authOptions(program);
19
- common_1.envOptions(program)
20
- .version(package_json_1.default.version)
21
- .action((name, options) => {
4
+ require("../src/logLevel");
5
+ const common_1 = require("../src/common");
6
+ const command_1 = require("../src/command");
7
+ (0, command_1.createClientCommand)(async (client, streamIdOrPath, options) => {
22
8
  const body = {
23
- name,
9
+ id: streamIdOrPath,
24
10
  description: options.description,
25
- config: options.config,
11
+ config: options.streamConfig,
26
12
  partitions: options.partitions
27
13
  };
28
- create_1.create(body, common_1.formStreamrOptionsWithEnv(options));
14
+ const stream = await client.createStream(body);
15
+ console.info(JSON.stringify(stream.toObject(), null, 2));
29
16
  })
30
- .parse(process.argv);
31
- common_1.exitWithHelpIfArgsNotBetween(program, 1, 1);
17
+ .arguments('<streamId>')
18
+ .description('create a new stream')
19
+ .option('-d, --description <description>', 'define a description')
20
+ .option('-c, --stream-config <config>', 'define a configuration as JSON', (s) => JSON.parse(s))
21
+ .option('-p, --partitions <count>', 'define a partition count', (0, common_1.createFnParseInt)('--partitions'))
22
+ .parseAsync();
23
+ //# sourceMappingURL=streamr-stream-create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-stream-create.js","sourceRoot":"","sources":["../../bin/streamr-stream-create.ts"],"names":[],"mappings":";;;AACA,2BAAwB;AAExB,0CAAgD;AAChD,4CAAoD;AAEpD,IAAA,6BAAmB,EAAC,KAAK,EAAE,MAAqB,EAAE,cAAsB,EAAE,OAAY,EAAE,EAAE;IACtF,MAAM,IAAI,GAAQ;QACd,EAAE,EAAE,cAAc;QAClB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,MAAM,EAAE,OAAO,CAAC,YAAY;QAC5B,UAAU,EAAE,OAAO,CAAC,UAAU;KACjC,CAAA;IACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IAC9C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC5D,CAAC,CAAC;KACG,SAAS,CAAC,YAAY,CAAC;KACvB,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,iCAAiC,EAAE,sBAAsB,CAAC;KACjE,MAAM,CAAC,8BAA8B,EAAE,gCAAgC,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACtG,MAAM,CAAC,0BAA0B,EAAE,0BAA0B,EAC1D,IAAA,yBAAgB,EAAC,cAAc,CAAC,CAAC;KACpC,UAAU,EAAE,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel';
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ require("../src/logLevel");
5
+ const permission_1 = require("../src/permission");
6
+ (0, permission_1.runModifyPermissionsCommand)((stream, permission, target) => stream.grantUserPermission(permission, target), (stream, permission) => stream.grantPublicPermission(permission), 'grant');
7
+ //# sourceMappingURL=streamr-stream-grant-permission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamr-stream-grant-permission.js","sourceRoot":"","sources":["../../bin/streamr-stream-grant-permission.ts"],"names":[],"mappings":";;;AACA,2BAAwB;AAExB,kDAA+D;AAE/D,IAAA,wCAA2B,EACvB,CAAC,MAAc,EAAE,UAA4B,EAAE,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,EAChH,CAAC,MAAc,EAAE,UAA4B,EAAE,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,UAAU,CAAC,EAC1F,OAAO,CACV,CAAA"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import '../src/logLevel';