@prosopo/cli 0.1.18 → 0.1.19

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 (97) hide show
  1. package/dist/argv.d.ts +14 -0
  2. package/dist/argv.d.ts.map +1 -0
  3. package/dist/argv.js +26 -0
  4. package/dist/argv.js.map +1 -0
  5. package/dist/cli.d.ts +2 -0
  6. package/dist/cli.d.ts.map +1 -0
  7. package/dist/cli.js +53 -0
  8. package/dist/cli.js.map +1 -0
  9. package/dist/commands/batchCommit.d.ts +21 -0
  10. package/dist/commands/batchCommit.d.ts.map +1 -0
  11. package/dist/commands/batchCommit.js +37 -0
  12. package/dist/commands/batchCommit.js.map +1 -0
  13. package/dist/commands/calculateCaptchaSolutions.d.ts +21 -0
  14. package/dist/commands/calculateCaptchaSolutions.d.ts.map +1 -0
  15. package/dist/commands/calculateCaptchaSolutions.js +32 -0
  16. package/dist/commands/calculateCaptchaSolutions.js.map +1 -0
  17. package/dist/commands/dappAccounts.d.ts +15 -0
  18. package/dist/commands/dappAccounts.d.ts.map +1 -0
  19. package/dist/commands/dappAccounts.js +25 -0
  20. package/dist/commands/dappAccounts.js.map +1 -0
  21. package/dist/commands/dappDetails.d.ts +19 -0
  22. package/dist/commands/dappDetails.d.ts.map +1 -0
  23. package/dist/commands/dappDetails.js +32 -0
  24. package/dist/commands/dappDetails.js.map +1 -0
  25. package/dist/commands/dappRegister.d.ts +23 -0
  26. package/dist/commands/dappRegister.d.ts.map +1 -0
  27. package/dist/commands/dappRegister.js +48 -0
  28. package/dist/commands/dappRegister.js.map +1 -0
  29. package/dist/commands/dappUpdate.d.ts +23 -0
  30. package/dist/commands/dappUpdate.d.ts.map +1 -0
  31. package/dist/commands/dappUpdate.js +50 -0
  32. package/dist/commands/dappUpdate.js.map +1 -0
  33. package/dist/commands/index.d.ts +15 -0
  34. package/dist/commands/index.d.ts.map +1 -0
  35. package/dist/commands/index.js +15 -0
  36. package/dist/commands/index.js.map +1 -0
  37. package/dist/commands/providerAccounts.d.ts +9 -0
  38. package/dist/commands/providerAccounts.d.ts.map +1 -0
  39. package/dist/commands/providerAccounts.js +24 -0
  40. package/dist/commands/providerAccounts.js.map +1 -0
  41. package/dist/commands/providerDataset.d.ts +18 -0
  42. package/dist/commands/providerDataset.d.ts.map +1 -0
  43. package/dist/commands/providerDataset.js +45 -0
  44. package/dist/commands/providerDataset.js.map +1 -0
  45. package/dist/commands/providerDeregister.d.ts +19 -0
  46. package/dist/commands/providerDeregister.d.ts.map +1 -0
  47. package/dist/commands/providerDeregister.js +33 -0
  48. package/dist/commands/providerDeregister.js.map +1 -0
  49. package/dist/commands/providerDetails.d.ts +19 -0
  50. package/dist/commands/providerDetails.d.ts.map +1 -0
  51. package/dist/commands/providerDetails.js +33 -0
  52. package/dist/commands/providerDetails.js.map +1 -0
  53. package/dist/commands/providerRegister.d.ts +9 -0
  54. package/dist/commands/providerRegister.d.ts.map +1 -0
  55. package/dist/commands/providerRegister.js +60 -0
  56. package/dist/commands/providerRegister.js.map +1 -0
  57. package/dist/commands/providerSetDataset.d.ts +17 -0
  58. package/dist/commands/providerSetDataset.d.ts.map +1 -0
  59. package/dist/commands/providerSetDataset.js +34 -0
  60. package/dist/commands/providerSetDataset.js.map +1 -0
  61. package/dist/commands/providerUpdate.d.ts +27 -0
  62. package/dist/commands/providerUpdate.d.ts.map +1 -0
  63. package/dist/commands/providerUpdate.js +63 -0
  64. package/dist/commands/providerUpdate.js.map +1 -0
  65. package/dist/commands/validators.d.ts +23 -0
  66. package/dist/commands/validators.d.ts.map +1 -0
  67. package/dist/commands/validators.js +54 -0
  68. package/dist/commands/validators.js.map +1 -0
  69. package/dist/commands/version.d.ts +12 -0
  70. package/dist/commands/version.d.ts.map +1 -0
  71. package/dist/commands/version.js +13 -0
  72. package/dist/commands/version.js.map +1 -0
  73. package/dist/env.d.ts +4 -0
  74. package/dist/env.d.ts.map +1 -0
  75. package/dist/env.js +34 -0
  76. package/dist/env.js.map +1 -0
  77. package/dist/files.d.ts +5 -0
  78. package/dist/files.d.ts.map +1 -0
  79. package/dist/files.js +50 -0
  80. package/dist/files.js.map +1 -0
  81. package/dist/index.d.ts +8 -0
  82. package/dist/index.d.ts.map +1 -0
  83. package/dist/index.js +21 -0
  84. package/dist/index.js.map +1 -0
  85. package/dist/process.env.d.ts +7 -0
  86. package/dist/process.env.d.ts.map +1 -0
  87. package/dist/process.env.js +28 -0
  88. package/dist/process.env.js.map +1 -0
  89. package/dist/prosopo.config.d.ts +4 -0
  90. package/dist/prosopo.config.d.ts.map +1 -0
  91. package/dist/prosopo.config.js +83 -0
  92. package/dist/prosopo.config.js.map +1 -0
  93. package/dist/start.d.ts +6 -0
  94. package/dist/start.d.ts.map +1 -0
  95. package/dist/start.js +71 -0
  96. package/dist/start.js.map +1 -0
  97. package/package.json +9 -9
@@ -0,0 +1,18 @@
1
+ import { ArgumentsCamelCase, Argv } from 'yargs';
2
+ import { KeyringPair } from '@polkadot/keyring/types';
3
+ import { Logger } from '@prosopo/common';
4
+ import { ProsopoConfig } from '@prosopo/types';
5
+ declare const _default: (pair: KeyringPair, config: ProsopoConfig, cmdArgs?: {
6
+ logger?: Logger;
7
+ }) => {
8
+ command: string;
9
+ describe: string;
10
+ builder: (yargs: Argv) => Argv<{
11
+ "dataset-id": string | undefined;
12
+ } & {
13
+ file: string;
14
+ }>;
15
+ handler: (argv: ArgumentsCamelCase) => Promise<void>;
16
+ };
17
+ export default _default;
18
+ //# sourceMappingURL=providerDataset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerDataset.d.ts","sourceRoot":"","sources":["../../src/commands/providerDataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAY,MAAM,EAAa,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;+BAMxB,WAAW,UAAU,aAAa,YAAY;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;;;qBAK9D,IAAI;;;;;oBAYC,kBAAkB;;AAjBhD,wBAsCC"}
@@ -0,0 +1,45 @@
1
+ import { LogLevel, getLogger } from '@prosopo/common';
2
+ import { ProviderEnvironment } from '@prosopo/env';
3
+ import { Tasks } from '@prosopo/provider';
4
+ import { writeJSONFile } from '../files.js';
5
+ import { z } from 'zod';
6
+ export default (pair, config, cmdArgs) => {
7
+ const logger = cmdArgs?.logger || getLogger(LogLevel.enum.info, 'cli.provider_dataset');
8
+ return {
9
+ command: 'provider_dataset',
10
+ describe: 'Exports a dataset from the provider database',
11
+ builder: (yargs) => yargs
12
+ .option('dataset-id', {
13
+ type: 'string',
14
+ demand: false,
15
+ desc: 'The dataset ID to export',
16
+ })
17
+ .option('file', {
18
+ type: 'string',
19
+ demand: true,
20
+ desc: 'The file path to export the dataset to',
21
+ }),
22
+ handler: async (argv) => {
23
+ try {
24
+ const env = new ProviderEnvironment(pair, config);
25
+ await env.isReady();
26
+ const tasks = new Tasks(env);
27
+ let datasetId = z.string().parse(argv.datasetId);
28
+ if (datasetId === undefined) {
29
+ const providerAddress = env.config.account.address;
30
+ const provider = (await tasks.contract.query.getProvider(providerAddress)).value.unwrap().unwrap();
31
+ logger.info(`Getting dataset ID from provider ${providerAddress}`);
32
+ datasetId = provider.datasetId.toString();
33
+ }
34
+ // get the dataset from the provider database
35
+ const result = await tasks.getProviderDataset(datasetId);
36
+ // export the result to file
37
+ await writeJSONFile(z.string().parse(argv.file), result);
38
+ }
39
+ catch (err) {
40
+ logger.error(err);
41
+ }
42
+ },
43
+ };
44
+ };
45
+ //# sourceMappingURL=providerDataset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerDataset.js","sourceRoot":"","sources":["../../src/commands/providerDataset.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAU,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAe,CAAC,IAAiB,EAAE,MAAqB,EAAE,OAA6B,EAAE,EAAE;IACvF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAA;IACvF,OAAO;QACH,OAAO,EAAE,kBAAkB;QAC3B,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,CAAC,KAAW,EAAE,EAAE,CACrB,KAAK;aACA,MAAM,CAAC,YAAY,EAAE;YAClB,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,0BAA0B;SAC1B,CAAC;aACV,MAAM,CAAC,MAAM,EAAE;YACZ,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,wCAAwC;SACxC,CAAC;QACnB,OAAO,EAAE,KAAK,EAAE,IAAwB,EAAE,EAAE;YACxC,IAAI;gBACA,MAAM,GAAG,GAAG,IAAI,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBACjD,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;gBACnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,IAAI,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAChD,IAAI,SAAS,KAAK,SAAS,EAAE;oBACzB,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAA;oBAClD,MAAM,QAAQ,GAAG,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAA;oBAClG,MAAM,CAAC,IAAI,CAAC,oCAAoC,eAAe,EAAE,CAAC,CAAA;oBAClE,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAA;iBAC5C;gBACD,6CAA6C;gBAC7C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;gBACxD,4BAA4B;gBAC5B,MAAM,aAAa,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;aAC3D;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;aACpB;QACL,CAAC;KACJ,CAAA;AACL,CAAC,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { ArgumentsCamelCase, Argv } from 'yargs';
2
+ import { KeyringPair } from '@polkadot/keyring/types';
3
+ import { Logger } from '@prosopo/common';
4
+ import { ProsopoConfig } from '@prosopo/types';
5
+ declare const _default: (pair: KeyringPair, config: ProsopoConfig, cmdArgs?: {
6
+ logger?: Logger;
7
+ }) => {
8
+ command: string;
9
+ describe: string;
10
+ builder: (yargs: Argv) => Argv<{
11
+ address: string;
12
+ }>;
13
+ handler: (argv: ArgumentsCamelCase) => Promise<void>;
14
+ middlewares: ((argv: ArgumentsCamelCase) => {
15
+ address: string;
16
+ })[];
17
+ };
18
+ export default _default;
19
+ //# sourceMappingURL=providerDeregister.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerDeregister.d.ts","sourceRoot":"","sources":["../../src/commands/providerDeregister.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAY,MAAM,EAAa,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;+BAMxB,WAAW,UAAU,aAAa,YAAY;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;;;qBAM9D,IAAI;;;oBAMC,kBAAkB;;;;;AAZhD,wBA8BC"}
@@ -0,0 +1,33 @@
1
+ import { LogLevel, getLogger } from '@prosopo/common';
2
+ import { ProsopoEnvError } from '@prosopo/common';
3
+ import { ProviderEnvironment } from '@prosopo/env';
4
+ import { Tasks } from '@prosopo/provider';
5
+ import { validateAddress } from './validators.js';
6
+ export default (pair, config, cmdArgs) => {
7
+ const logger = cmdArgs?.logger || getLogger(LogLevel.enum.info, 'cli.provider_deregister');
8
+ return {
9
+ command: 'provider_deregister',
10
+ describe: 'Deregister a Provider',
11
+ builder: (yargs) => yargs.option('address', {
12
+ type: 'string',
13
+ demand: true,
14
+ desc: 'The AccountId of the Provider',
15
+ }),
16
+ handler: async (argv) => {
17
+ try {
18
+ const env = new ProviderEnvironment(pair, config);
19
+ await env.isReady();
20
+ const tasks = new Tasks(env);
21
+ // TODO provider deregister does not accept params... it should?
22
+ // await tasks.contract.tx.providerDeregister(argv.address)
23
+ // logger.info('Provider registered')
24
+ throw new ProsopoEnvError('GENERAL.NOT_IMPLEMENTED');
25
+ }
26
+ catch (err) {
27
+ logger.error(err);
28
+ }
29
+ },
30
+ middlewares: [validateAddress],
31
+ };
32
+ };
33
+ //# sourceMappingURL=providerDeregister.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerDeregister.js","sourceRoot":"","sources":["../../src/commands/providerDeregister.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAU,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,eAAe,CAAC,IAAiB,EAAE,MAAqB,EAAE,OAA6B,EAAE,EAAE;IACvF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAA;IAE1F,OAAO;QACH,OAAO,EAAE,qBAAqB;QAC9B,QAAQ,EAAE,uBAAuB;QACjC,OAAO,EAAE,CAAC,KAAW,EAAE,EAAE,CACrB,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;YACpB,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,+BAA+B;SAC/B,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,IAAwB,EAAE,EAAE;YACxC,IAAI;gBACA,MAAM,GAAG,GAAG,IAAI,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBACjD,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;gBACnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAE5B,gEAAgE;gBAChE,2DAA2D;gBAE3D,qCAAqC;gBAErC,MAAM,IAAI,eAAe,CAAC,yBAAyB,CAAC,CAAA;aACvD;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;aACpB;QACL,CAAC;QACD,WAAW,EAAE,CAAC,eAAe,CAAC;KACjC,CAAA;AACL,CAAC,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { ArgumentsCamelCase, Argv } from 'yargs';
2
+ import { KeyringPair } from '@polkadot/keyring/types';
3
+ import { Logger } from '@prosopo/common';
4
+ import { ProsopoConfig } from '@prosopo/types';
5
+ declare const _default: (pair: KeyringPair, config: ProsopoConfig, cmdArgs?: {
6
+ logger?: Logger;
7
+ }) => {
8
+ command: string;
9
+ describe: string;
10
+ builder: (yargs: Argv) => Argv<{
11
+ address: string;
12
+ }>;
13
+ handler: (argv: ArgumentsCamelCase) => Promise<void>;
14
+ middlewares: ((argv: ArgumentsCamelCase) => {
15
+ address: string;
16
+ })[];
17
+ };
18
+ export default _default;
19
+ //# sourceMappingURL=providerDetails.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerDetails.d.ts","sourceRoot":"","sources":["../../src/commands/providerDetails.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAY,MAAM,EAAa,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;+BAMxB,WAAW,UAAU,aAAa,YAAY;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;;;qBAK9D,IAAI;;;oBAMC,kBAAkB;;;;;AAXhD,wBA0BC"}
@@ -0,0 +1,33 @@
1
+ import { LogLevel, getLogger } from '@prosopo/common';
2
+ import { ProviderEnvironment } from '@prosopo/env';
3
+ import { Tasks } from '@prosopo/provider';
4
+ import { validateAddress } from './validators.js';
5
+ import { z } from 'zod';
6
+ export default (pair, config, cmdArgs) => {
7
+ const logger = cmdArgs?.logger || getLogger(LogLevel.enum.info, 'cli.provider_details');
8
+ return {
9
+ command: 'provider_details',
10
+ describe: 'List details of a single Provider',
11
+ builder: (yargs) => yargs.option('address', {
12
+ type: 'string',
13
+ demand: true,
14
+ desc: 'The AccountId of the Provider',
15
+ }),
16
+ handler: async (argv) => {
17
+ try {
18
+ const env = new ProviderEnvironment(pair, config);
19
+ await env.isReady();
20
+ const tasks = new Tasks(env);
21
+ const result = (await tasks.contract.query.getProvider(z.string().parse(argv.address), {})).value
22
+ .unwrap()
23
+ .unwrap();
24
+ logger.info(JSON.stringify(result, null, 2));
25
+ }
26
+ catch (err) {
27
+ logger.error(err);
28
+ }
29
+ },
30
+ middlewares: [validateAddress],
31
+ };
32
+ };
33
+ //# sourceMappingURL=providerDetails.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerDetails.js","sourceRoot":"","sources":["../../src/commands/providerDetails.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAU,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAe,CAAC,IAAiB,EAAE,MAAqB,EAAE,OAA6B,EAAE,EAAE;IACvF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAA;IACvF,OAAO;QACH,OAAO,EAAE,kBAAkB;QAC3B,QAAQ,EAAE,mCAAmC;QAC7C,OAAO,EAAE,CAAC,KAAW,EAAE,EAAE,CACrB,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;YACpB,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,+BAA+B;SAC/B,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,IAAwB,EAAE,EAAE;YACxC,IAAI;gBACA,MAAM,GAAG,GAAG,IAAI,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBACjD,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;gBACnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,MAAM,MAAM,GAAG,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK;qBAC5F,MAAM,EAAE;qBACR,MAAM,EAAE,CAAA;gBACb,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;aAC/C;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;aACpB;QACL,CAAC;QACD,WAAW,EAAE,CAAC,eAAe,CAAC;KACjC,CAAA;AACL,CAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { CommandModule } from 'yargs';
2
+ import { KeyringPair } from '@polkadot/keyring/types';
3
+ import { Logger } from '@prosopo/common';
4
+ import { ProsopoConfig } from '@prosopo/types';
5
+ declare const _default: (pair: KeyringPair, config: ProsopoConfig, cmdArgs?: {
6
+ logger?: Logger;
7
+ }) => CommandModule<{}, {}>;
8
+ export default _default;
9
+ //# sourceMappingURL=providerRegister.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerRegister.d.ts","sourceRoot":"","sources":["../../src/commands/providerRegister.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAY,MAAM,EAAa,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAS,aAAa,EAAE,MAAM,gBAAgB,CAAA;+BAY/B,WAAW,UAAU,aAAa,YAAY;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;AAAvF,wBA8CC"}
@@ -0,0 +1,60 @@
1
+ import * as z from 'zod';
2
+ import { LogLevel, getLogger } from '@prosopo/common';
3
+ import { Payee } from '@prosopo/types';
4
+ import { ProviderEnvironment } from '@prosopo/env';
5
+ import { Tasks } from '@prosopo/provider';
6
+ import { stringToU8a } from '@polkadot/util';
7
+ import { validateFee, validatePayee } from './validators.js';
8
+ import { wrapQuery } from '@prosopo/contract';
9
+ const providerRegisterArgsParser = z.object({
10
+ url: z.string(),
11
+ fee: z.number(),
12
+ payee: z.nativeEnum(Payee),
13
+ });
14
+ export default (pair, config, cmdArgs) => {
15
+ const logger = cmdArgs?.logger || getLogger(LogLevel.enum.info, 'cli.provider_register');
16
+ return {
17
+ command: 'provider_register',
18
+ describe: 'Register a Provider',
19
+ builder: (yargs) => yargs
20
+ .option('url', {
21
+ type: 'string',
22
+ demand: true,
23
+ desc: 'The provider service origin (URI)',
24
+ })
25
+ .option('fee', {
26
+ type: 'number',
27
+ demand: true,
28
+ desc: 'The fee to pay per solved captcha',
29
+ })
30
+ .option('payee', {
31
+ type: 'string',
32
+ demand: true,
33
+ desc: 'The person who receives the fee (`Provider` or `Dapp`)',
34
+ }),
35
+ handler: async (argv) => {
36
+ try {
37
+ const parsedArgs = providerRegisterArgsParser.parse(argv);
38
+ const env = new ProviderEnvironment(pair, config);
39
+ await env.isReady();
40
+ const tasks = new Tasks(env);
41
+ const providerRegisterArgs = [
42
+ Array.from(stringToU8a(parsedArgs.url)),
43
+ parsedArgs.fee,
44
+ parsedArgs.payee,
45
+ {
46
+ value: 0,
47
+ },
48
+ ];
49
+ await wrapQuery(tasks.contract.query.providerRegister, tasks.contract.query)(...providerRegisterArgs);
50
+ const result = await tasks.contract.tx.providerRegister(...providerRegisterArgs);
51
+ logger.info(JSON.stringify(result, null, 2));
52
+ }
53
+ catch (err) {
54
+ logger.error(err);
55
+ }
56
+ },
57
+ middlewares: [validatePayee, validateFee],
58
+ };
59
+ };
60
+ //# sourceMappingURL=providerRegister.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerRegister.js","sourceRoot":"","sources":["../../src/commands/providerRegister.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAIxB,OAAO,EAAE,QAAQ,EAAU,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,KAAK,EAAiB,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE7C,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;CAC7B,CAAC,CAAA;AACF,eAAe,CAAC,IAAiB,EAAE,MAAqB,EAAE,OAA6B,EAAE,EAAE;IACvF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAA;IACxF,OAAO;QACH,OAAO,EAAE,mBAAmB;QAC5B,QAAQ,EAAE,qBAAqB;QAC/B,OAAO,EAAE,CAAC,KAAW,EAAE,EAAE,CACrB,KAAK;aACA,MAAM,CAAC,KAAK,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,mCAAmC;SACnC,CAAC;aACV,MAAM,CAAC,KAAK,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,mCAAmC;SACnC,CAAC;aACV,MAAM,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,wDAAwD;SACxD,CAAC;QACnB,OAAO,EAAE,KAAK,EAAE,IAAwB,EAAE,EAAE;YACxC,IAAI;gBACA,MAAM,UAAU,GAAG,0BAA0B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBACzD,MAAM,GAAG,GAAG,IAAI,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBACjD,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;gBACnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,MAAM,oBAAoB,GAA6D;oBACnF,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;oBACvC,UAAU,CAAC,GAAG;oBACd,UAAU,CAAC,KAAK;oBAChB;wBACI,KAAK,EAAE,CAAC;qBACX;iBACJ,CAAA;gBACD,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,oBAAoB,CAAC,CAAA;gBACrG,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,oBAAoB,CAAC,CAAA;gBAEhF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;aAC/C;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;aACpB;QACL,CAAC;QACD,WAAW,EAAE,CAAC,aAAa,EAAE,WAAW,CAAC;KAC3B,CAAA;AACtB,CAAC,CAAA"}
@@ -0,0 +1,17 @@
1
+ import { ArgumentsCamelCase, Argv } from 'yargs';
2
+ import { KeyringPair } from '@polkadot/keyring/types';
3
+ import { Logger } from '@prosopo/common';
4
+ import { ProsopoConfig } from '@prosopo/types';
5
+ declare const _default: (pair: KeyringPair, config: ProsopoConfig, cmdArgs?: {
6
+ logger?: Logger;
7
+ }) => {
8
+ command: string;
9
+ describe: string;
10
+ builder: (yargs: Argv) => Argv<{
11
+ file: string;
12
+ }>;
13
+ handler: (argv: ArgumentsCamelCase) => Promise<void>;
14
+ middlewares: never[];
15
+ };
16
+ export default _default;
17
+ //# sourceMappingURL=providerSetDataset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerSetDataset.d.ts","sourceRoot":"","sources":["../../src/commands/providerSetDataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAY,MAAM,EAAa,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;+BAMxB,WAAW,UAAU,aAAa,YAAY;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;;;qBAM9D,IAAI;;;oBAMC,kBAAkB;;;AAZhD,wBA4BC"}
@@ -0,0 +1,34 @@
1
+ import { LogLevel, getLogger } from '@prosopo/common';
2
+ import { ProviderEnvironment } from '@prosopo/env';
3
+ import { Tasks } from '@prosopo/provider';
4
+ import { loadJSONFile } from '../files.js';
5
+ import { z } from 'zod';
6
+ export default (pair, config, cmdArgs) => {
7
+ const logger = cmdArgs?.logger || getLogger(LogLevel.enum.info, 'cli.provider_set_data_set');
8
+ return {
9
+ command: 'provider_set_data_set',
10
+ describe: 'Add a dataset as a Provider',
11
+ builder: (yargs) => yargs.option('file', {
12
+ type: 'string',
13
+ demand: true,
14
+ desc: 'The file path of a JSON dataset file',
15
+ }),
16
+ handler: async (argv) => {
17
+ try {
18
+ const env = new ProviderEnvironment(pair, config);
19
+ await env.isReady();
20
+ const tasks = new Tasks(env);
21
+ const file = z.string().parse(argv.file);
22
+ const jsonFile = loadJSONFile(file, logger);
23
+ logger.info(`Loaded JSON from ${file}`);
24
+ const result = await tasks.providerSetDatasetFromFile(jsonFile);
25
+ logger.info(JSON.stringify(result, null, 2));
26
+ }
27
+ catch (err) {
28
+ logger.error(err);
29
+ }
30
+ },
31
+ middlewares: [],
32
+ };
33
+ };
34
+ //# sourceMappingURL=providerSetDataset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerSetDataset.js","sourceRoot":"","sources":["../../src/commands/providerSetDataset.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAU,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAe,CAAC,IAAiB,EAAE,MAAqB,EAAE,OAA6B,EAAE,EAAE;IACvF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAA;IAE5F,OAAO;QACH,OAAO,EAAE,uBAAuB;QAChC,QAAQ,EAAE,6BAA6B;QACvC,OAAO,EAAE,CAAC,KAAW,EAAE,EAAE,CACrB,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;YACjB,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,sCAAsC;SACtC,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,IAAwB,EAAE,EAAE;YACxC,IAAI;gBACA,MAAM,GAAG,GAAG,IAAI,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBACjD,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;gBACnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACxC,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAS,CAAA;gBACnD,MAAM,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAA;gBACvC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAA;gBAC/D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;aAC/C;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;aACpB;QACL,CAAC;QACD,WAAW,EAAE,EAAE;KAClB,CAAA;AACL,CAAC,CAAA"}
@@ -0,0 +1,27 @@
1
+ import { ArgumentsCamelCase, Argv } from 'yargs';
2
+ import { KeyringPair } from '@polkadot/keyring/types';
3
+ import { Logger } from '@prosopo/common';
4
+ import { Payee, ProsopoConfig } from '@prosopo/types';
5
+ declare const _default: (pair: KeyringPair, config: ProsopoConfig, cmdArgs?: {
6
+ logger?: Logger;
7
+ }) => {
8
+ command: string;
9
+ describe: string;
10
+ builder: (yargs: Argv) => Argv<{
11
+ url: string | undefined;
12
+ } & {
13
+ fee: number | undefined;
14
+ } & {
15
+ payee: string | undefined;
16
+ } & {
17
+ value: number | undefined;
18
+ }>;
19
+ handler: (argv: ArgumentsCamelCase) => Promise<void>;
20
+ middlewares: (((argv: ArgumentsCamelCase) => {
21
+ address: string;
22
+ }) | ((argv: ArgumentsCamelCase) => {
23
+ payee: Payee;
24
+ } | undefined))[];
25
+ };
26
+ export default _default;
27
+ //# sourceMappingURL=providerUpdate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerUpdate.d.ts","sourceRoot":"","sources":["../../src/commands/providerUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAY,MAAM,EAA2B,MAAM,iBAAiB,CAAA;AAC3E,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;+BAO/B,WAAW,UAAU,aAAa,YAAY;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;;;qBAM9D,IAAI;;;;;;;;;oBAsBC,kBAAkB;;;;;;;AA5BhD,wBAkEC"}
@@ -0,0 +1,63 @@
1
+ import { LogLevel, UrlConverter, getLogger } from '@prosopo/common';
2
+ import { Payee } from '@prosopo/types';
3
+ import { ProviderEnvironment } from '@prosopo/env';
4
+ import { Tasks } from '@prosopo/provider';
5
+ import { validateAddress, validatePayee } from './validators.js';
6
+ import { wrapQuery } from '@prosopo/contract';
7
+ import { z } from 'zod';
8
+ export default (pair, config, cmdArgs) => {
9
+ const logger = cmdArgs?.logger || getLogger(LogLevel.enum.info, 'cli.provider_update');
10
+ return {
11
+ command: 'provider_update',
12
+ describe: 'Update a Provider',
13
+ builder: (yargs) => yargs
14
+ .option('url', {
15
+ type: 'string',
16
+ demand: false,
17
+ desc: 'The provider service origin (URI)',
18
+ })
19
+ .option('fee', {
20
+ type: 'number',
21
+ demand: false,
22
+ desc: 'The fee to pay per solved captcha',
23
+ })
24
+ .option('payee', {
25
+ type: 'string',
26
+ demand: false,
27
+ desc: 'The person who receives the fee (`Provider` or `Dapp`)',
28
+ })
29
+ .option('value', {
30
+ type: 'number',
31
+ demand: false,
32
+ desc: 'The value to stake in the contract',
33
+ }),
34
+ handler: async (argv) => {
35
+ try {
36
+ const env = new ProviderEnvironment(pair, config);
37
+ await env.isReady();
38
+ const tasks = new Tasks(env);
39
+ const { url, fee, payee, value, address } = z
40
+ .object({
41
+ url: z.string().optional(),
42
+ fee: z.number().optional(),
43
+ payee: z.nativeEnum(Payee).optional(),
44
+ value: z.number().optional(),
45
+ address: z.string(),
46
+ })
47
+ .parse(argv);
48
+ const provider = (await tasks.contract.query.getProvider(address, {})).value.unwrap().unwrap();
49
+ if (provider && (url || fee || payee || value)) {
50
+ const urlConverted = url ? Array.from(new UrlConverter().encode(url.toString())) : provider.url;
51
+ await wrapQuery(tasks.contract.query.providerUpdate, tasks.contract.query)(urlConverted, fee || provider.fee, payee || provider.payee, { value: value || 0 });
52
+ const result = await tasks.contract.tx.providerUpdate(urlConverted, fee || provider.fee, payee || provider.payee, { value: value || 0 });
53
+ logger.info(JSON.stringify(result, null, 2));
54
+ }
55
+ }
56
+ catch (err) {
57
+ logger.error(err);
58
+ }
59
+ },
60
+ middlewares: [validateAddress, validatePayee],
61
+ };
62
+ };
63
+ //# sourceMappingURL=providerUpdate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerUpdate.js","sourceRoot":"","sources":["../../src/commands/providerUpdate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { ArgumentsCamelCase } from 'yargs';
2
+ import { Compact, u128 } from '@polkadot/types';
3
+ export declare const validateAddress: (argv: ArgumentsCamelCase) => {
4
+ address: string;
5
+ };
6
+ export declare const validateContract: (argv: ArgumentsCamelCase) => {
7
+ address: string;
8
+ };
9
+ export declare const validatePayee: (argv: ArgumentsCamelCase) => {
10
+ payee: import("@prosopo/types").Payee;
11
+ } | undefined;
12
+ export declare const validateValue: (argv: ArgumentsCamelCase) => {
13
+ value: Compact<u128>;
14
+ };
15
+ export declare const validateFee: (argv: ArgumentsCamelCase) => {
16
+ fee: Compact<u128>;
17
+ };
18
+ export declare const validateScheduleExpression: (argv: ArgumentsCamelCase) => {
19
+ schedule: string;
20
+ } | {
21
+ schedule: null;
22
+ };
23
+ //# sourceMappingURL=validators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/commands/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAQ/C,eAAO,MAAM,eAAe,SAAU,kBAAkB;aAAc,MAAM;CAI3E,CAAA;AAED,eAAO,MAAM,gBAAgB,SAAU,kBAAkB;;CAIxD,CAAA;AAED,eAAO,MAAM,aAAa,SAAU,kBAAkB;;aAWrD,CAAA;AAED,eAAO,MAAM,aAAa,SAAU,kBAAkB;;CAMrD,CAAA;AAED,eAAO,MAAM,WAAW,SAAU,kBAAkB;;CAMnD,CAAA;AAED,eAAO,MAAM,0BAA0B,SAAU,kBAAkB;;;;CAYlE,CAAA"}
@@ -0,0 +1,54 @@
1
+ import { PayeeSchema } from '@prosopo/types';
2
+ import { ProsopoEnvError } from '@prosopo/common';
3
+ import { encodeStringAddress } from '@prosopo/provider';
4
+ import { lodash } from '@prosopo/util';
5
+ import { z } from 'zod';
6
+ import parser from 'cron-parser';
7
+ export const validateAddress = (argv) => {
8
+ const address = encodeStringAddress(argv.address);
9
+ return { address };
10
+ };
11
+ export const validateContract = (argv) => {
12
+ const address = encodeStringAddress(argv.contract);
13
+ return { address };
14
+ };
15
+ export const validatePayee = (argv) => {
16
+ try {
17
+ if (!argv.payee)
18
+ return;
19
+ const _ = lodash();
20
+ const payeeArg = _.capitalize(z.string().parse(argv.payee));
21
+ const payee = PayeeSchema.parse(payeeArg);
22
+ return { payee };
23
+ }
24
+ catch (error) {
25
+ throw new ProsopoEnvError(error, 'CLI.PARAMETER_ERROR', {}, [argv.payee]);
26
+ }
27
+ };
28
+ export const validateValue = (argv) => {
29
+ if (typeof argv.value !== 'number') {
30
+ throw new ProsopoEnvError('CLI.PARAMETER_ERROR', validateValue.name, {}, argv.value);
31
+ }
32
+ const value = argv.value;
33
+ return { value };
34
+ };
35
+ export const validateFee = (argv) => {
36
+ if (typeof argv.fee !== 'number') {
37
+ throw new ProsopoEnvError('CLI.PARAMETER_ERROR', validateValue.name, {}, argv.fee);
38
+ }
39
+ const fee = argv.fee;
40
+ return { fee };
41
+ };
42
+ export const validateScheduleExpression = (argv) => {
43
+ if (typeof argv.schedule === 'string') {
44
+ const result = parser.parseString(argv.schedule);
45
+ if (argv.schedule in result.errors) {
46
+ throw new ProsopoEnvError('CLI.PARAMETER_ERROR', validateScheduleExpression.name, {}, [argv.schedule]);
47
+ }
48
+ return { schedule: argv.schedule };
49
+ }
50
+ else {
51
+ return { schedule: null };
52
+ }
53
+ };
54
+ //# sourceMappingURL=validators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/commands/validators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { KeyringPair } from '@polkadot/keyring/types';
2
+ import { Logger } from '@prosopo/common';
3
+ import { ProsopoConfig } from '@prosopo/types';
4
+ declare const _default: (pair: KeyringPair, config: ProsopoConfig, cmdArgs?: {
5
+ logger?: Logger;
6
+ }) => {
7
+ command: string;
8
+ describe: string;
9
+ handler: () => Promise<void>;
10
+ };
11
+ export default _default;
12
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAY,MAAM,EAAa,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;+BAExB,WAAW,UAAU,aAAa,YAAY;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;AAAvF,wBAWC"}
@@ -0,0 +1,13 @@
1
+ import { LogLevel, getLogger } from '@prosopo/common';
2
+ export default (pair, config, cmdArgs) => {
3
+ const logger = cmdArgs?.logger || getLogger(LogLevel.enum.info, 'cli.version');
4
+ return {
5
+ command: 'version',
6
+ describe: 'Return the version of the software',
7
+ handler: async () => {
8
+ const version = JSON.stringify(process.env.PROSOPO_PACKAGE_VERSION) || 'dev';
9
+ logger.info(`Version: ${version}`);
10
+ },
11
+ };
12
+ };
13
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAU,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAG7D,eAAe,CAAC,IAAiB,EAAE,MAAqB,EAAE,OAA6B,EAAE,EAAE;IACvF,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IAE9E,OAAO;QACH,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,oCAAoC;QAC9C,OAAO,EAAE,KAAK,IAAI,EAAE;YAChB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,KAAK,CAAA;YAC5E,MAAM,CAAC,IAAI,CAAC,YAAY,OAAO,EAAE,CAAC,CAAA;QACtC,CAAC;KACJ,CAAA;AACL,CAAC,CAAA"}
package/dist/env.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ export declare function getEnv(): string;
2
+ export declare function loadEnv(rootDir?: string, filename?: string, filePath?: string): void;
3
+ export declare function getEnvFile(rootDir?: string, filename?: string, filepath?: string): string;
4
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAoBA,wBAAgB,MAAM,WAKrB;AAED,wBAAgB,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,QAI7E;AAED,wBAAgB,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,SAAS,EAAE,QAAQ,SAAgC,UAGvG"}
package/dist/env.js ADDED
@@ -0,0 +1,34 @@
1
+ // Copyright 2021-2023 Prosopo (UK) Ltd.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ import { fileURLToPath } from 'url';
15
+ import dotenv from 'dotenv';
16
+ import path from 'path';
17
+ const __filename = fileURLToPath(import.meta.url);
18
+ const __dirname = path.dirname(__filename);
19
+ export function getEnv() {
20
+ if (process.env.NODE_ENV) {
21
+ return process.env.NODE_ENV.replace(/[^0-9a-z_]/gi, '');
22
+ }
23
+ return 'development';
24
+ }
25
+ export function loadEnv(rootDir, filename, filePath) {
26
+ const envPath = getEnvFile(path.resolve(rootDir || '.'), filename, filePath);
27
+ const args = { path: envPath };
28
+ dotenv.config(args);
29
+ }
30
+ export function getEnvFile(rootDir, filename = '.env', filepath = path.join(__dirname, '../..')) {
31
+ const env = getEnv();
32
+ return path.join(rootDir || filepath, `${filename}.${env}`);
33
+ }
34
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AACnC,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAE1C,MAAM,UAAU,MAAM;IAClB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE;QACtB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;KAC1D;IACD,OAAO,aAAa,CAAA;AACxB,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAgB,EAAE,QAAiB,EAAE,QAAiB;IAC1E,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC5E,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAC9B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AACvB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAgB,EAAE,QAAQ,GAAG,MAAM,EAAE,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;IACpG,MAAM,GAAG,GAAG,MAAM,EAAE,CAAA;IACpB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,QAAQ,EAAE,GAAG,QAAQ,IAAI,GAAG,EAAE,CAAC,CAAA;AAC/D,CAAC"}
@@ -0,0 +1,5 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ export declare function loadJSONFile(filePath: string, logger?: any): any;
3
+ export declare function writeJSONFile(filePath: string, jsonData: Record<string, any>): Promise<unknown>;
4
+ export declare function readFile(filePath: string): Promise<Buffer>;
5
+ //# sourceMappingURL=files.d.ts.map