@sentio/cli 1.37.5-rc.7 → 2.0.0-rc.10

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 (67) hide show
  1. package/lib/build.d.ts +0 -1
  2. package/lib/build.js +66 -49
  3. package/lib/build.js.map +1 -1
  4. package/lib/cli.js +30 -96
  5. package/lib/cli.js.map +1 -1
  6. package/lib/commands/login-server.js +41 -65
  7. package/lib/commands/login-server.js.map +1 -1
  8. package/lib/commands/run-create.js +33 -39
  9. package/lib/commands/run-create.js.map +1 -1
  10. package/lib/commands/run-login.js +28 -58
  11. package/lib/commands/run-login.js.map +1 -1
  12. package/lib/commands/run-test.d.ts +1 -0
  13. package/lib/commands/run-test.js +10 -0
  14. package/lib/commands/run-test.js.map +1 -0
  15. package/lib/commands/run-upload.d.ts +3 -0
  16. package/lib/commands/run-upload.js +254 -0
  17. package/lib/commands/run-upload.js.map +1 -0
  18. package/lib/commands/run-version.js +9 -39
  19. package/lib/commands/run-version.js.map +1 -1
  20. package/lib/config.js +4 -11
  21. package/lib/config.js.map +1 -1
  22. package/lib/index.d.ts +1 -0
  23. package/lib/index.js +2 -0
  24. package/lib/index.js.map +1 -0
  25. package/lib/key.js +18 -26
  26. package/lib/key.js.map +1 -1
  27. package/lib/utils.d.ts +1 -0
  28. package/lib/utils.js +20 -16
  29. package/lib/utils.js.map +1 -1
  30. package/package.json +20 -21
  31. package/src/build.ts +59 -42
  32. package/src/cli.ts +14 -75
  33. package/src/commands/login-server.ts +25 -17
  34. package/src/commands/run-create.ts +12 -10
  35. package/src/commands/run-login.ts +4 -4
  36. package/src/commands/run-test.ts +10 -0
  37. package/src/{upload.ts → commands/run-upload.ts} +94 -19
  38. package/src/commands/run-version.ts +1 -1
  39. package/src/index.ts +1 -0
  40. package/src/utils.ts +18 -3
  41. package/templates/aptos/jest.config.ts +8 -0
  42. package/templates/aptos/package.json +3 -6
  43. package/templates/aptos/src/processor.ts +3 -3
  44. package/templates/aptos/tsconfig.json +5 -4
  45. package/templates/evm/jest.config.ts +8 -0
  46. package/templates/evm/package.json +3 -5
  47. package/templates/evm/src/processor.ts +4 -5
  48. package/templates/evm/tsconfig.json +5 -4
  49. package/templates/raw/jest.config.ts +8 -0
  50. package/templates/raw/package.json +3 -5
  51. package/templates/raw/tsconfig.json +5 -4
  52. package/templates/solana/jest.config.ts +8 -0
  53. package/templates/solana/package.json +3 -6
  54. package/templates/solana/src/processor.ts +3 -3
  55. package/templates/solana/tsconfig.json +5 -4
  56. package/LICENSE +0 -55
  57. package/lib/upload.d.ts +0 -2
  58. package/lib/upload.js +0 -189
  59. package/lib/upload.js.map +0 -1
  60. package/lib/webpack.config.js +0 -50
  61. package/src/webpack.config.js +0 -50
  62. package/templates/aptos/jest.config.js +0 -7
  63. package/templates/evm/jest.config.js +0 -7
  64. package/templates/raw/jest.config.js +0 -7
  65. package/templates/raw/yarn.lock +0 -4095
  66. package/templates/solana/jest.config.js +0 -7
  67. package/templates/solana/yarn.lock +0 -4918
package/lib/build.d.ts CHANGED
@@ -1,2 +1 @@
1
1
  export declare function buildProcessor(onlyGen: boolean): Promise<void>;
2
- export declare function codeGenEthersProcessor(abisDir: string, ETHERS_TARGET?: string, outDir?: string): Promise<void>;
package/lib/build.js CHANGED
@@ -1,14 +1,10 @@
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.codeGenEthersProcessor = exports.buildProcessor = void 0;
7
- const chalk_1 = __importDefault(require("chalk"));
8
- const path_1 = __importDefault(require("path"));
9
- const fs_1 = __importDefault(require("fs"));
10
- const child_process_1 = require("child_process");
11
- async function buildProcessor(onlyGen) {
1
+ import chalk from 'chalk';
2
+ import path from 'path';
3
+ import fs from 'fs';
4
+ import { exec } from 'child_process';
5
+ import * as process from 'process';
6
+ import { getPackageRoot } from './utils.js';
7
+ export async function buildProcessor(onlyGen) {
12
8
  if (!onlyGen) {
13
9
  await installDeps();
14
10
  }
@@ -17,26 +13,67 @@ async function buildProcessor(onlyGen) {
17
13
  await buildProcessorForTarget(onlyGen);
18
14
  // }
19
15
  if (!onlyGen) {
20
- const WEBPACK_CONFIG = path_1.default.join(__dirname, 'webpack.config.js');
21
- await execStep('yarn tsc -p .', 'Compile');
22
- await execStep('yarn webpack --config=' + WEBPACK_CONFIG, 'Packaging');
16
+ let tsupConfig;
17
+ try {
18
+ tsupConfig = path.resolve(getPackageRoot('@sentio/sdk'), 'lib/tsup.config.ts');
19
+ }
20
+ catch (e) {
21
+ console.error(chalk.red("Wrong CLI version for sdk, can't find tsup.config.ts"));
22
+ process.exit(1);
23
+ }
24
+ const tsup = path.resolve(getPackageRoot('tsup'), 'dist', 'cli-default.js');
25
+ // await execStep('yarn tsc -p .', 'Compile')
26
+ await execStep(`node ${tsup} --config=${tsupConfig}`, 'Packaging');
27
+ const dir = fs.readdirSync(path.join(process.cwd(), 'dist'));
28
+ const generated = dir.filter((d) => d.endsWith('.js')).length;
29
+ if (generated < 0) {
30
+ console.error(chalk.red('No filed generated, please check if your processor.ts file'));
31
+ process.exit(1);
32
+ }
33
+ if (generated > 1) {
34
+ console.error(chalk.red('Packing failed: '), `Multiple entry point is not allowed. If your processor.ts have multiple file imported, please change:
35
+ import('mine.js')
36
+ to
37
+ import 'mine.js'
38
+ `);
39
+ }
23
40
  }
24
41
  }
25
- exports.buildProcessor = buildProcessor;
26
42
  async function buildProcessorForTarget(onlyGen) {
27
- await codeGenEthersProcessor(path_1.default.join('abis', 'evm'));
43
+ const outputBase = path.resolve('src', 'types');
28
44
  try {
29
- // eslint-disable-next-line @typescript-eslint/no-var-requires
30
- const solanaModule = require('@sentio/sdk-solana/lib/codegen/codegen');
31
- solanaModule.codeGenSolanaProcessor(path_1.default.join('abis', 'solana'));
45
+ // @ts-ignore dynamic import
46
+ const codegen = await import('@sentio/sdk/eth/codegen');
47
+ let input = path.resolve('abis', 'eth');
48
+ let output = path.resolve(outputBase);
49
+ if (!fs.existsSync(input)) {
50
+ input = path.resolve('abis', 'evm');
51
+ output = path.resolve(outputBase);
52
+ }
53
+ // @ts-ignore dynamic import
54
+ await codegen.codegen(input, output);
55
+ }
56
+ catch (e) {
57
+ console.error('code gen error', e);
58
+ }
59
+ try {
60
+ // @ts-ignore dynamic import
61
+ const codegen = await import('@sentio/sdk/solana/codegen');
62
+ // @ts-ignore dynamic import
63
+ await codegen.codegen(path.resolve('abis', 'solana'), path.resolve(outputBase, 'solana'));
64
+ }
65
+ catch (e) {
66
+ console.error('code gen error', e);
32
67
  }
33
- catch (e) { }
34
68
  try {
35
- // eslint-disable-next-line @typescript-eslint/no-var-requires
36
- const aptosModuole = require('@sentio/sdk-aptos/lib/codegen/codegen');
37
- aptosModuole.codeGenAptosProcessor(path_1.default.join('abis', 'aptos'));
69
+ // @ts-ignore dynamic import
70
+ const codegen = await import('@sentio/sdk/aptos/codegen');
71
+ // @ts-ignore dynamic import
72
+ await codegen.codegen(path.resolve('abis', 'aptos'), path.resolve(outputBase, 'aptos'));
73
+ }
74
+ catch (e) {
75
+ console.error('code gen error', e);
38
76
  }
39
- catch (e) { }
40
77
  if (onlyGen) {
41
78
  return;
42
79
  }
@@ -44,31 +81,11 @@ async function buildProcessorForTarget(onlyGen) {
44
81
  async function installDeps() {
45
82
  await execStep('yarn install --ignore-scripts', 'Yarn Install');
46
83
  }
47
- async function codeGenEthersProcessor(abisDir, ETHERS_TARGET = path_1.default.dirname(require.resolve('@sentio/sdk/lib/target-ethers-sentio')), outDir = 'src/types/internal') {
48
- if (!fs_1.default.existsSync(abisDir)) {
49
- return;
50
- }
51
- let haveJson = false;
52
- const files = fs_1.default.readdirSync(abisDir);
53
- for (const file of files) {
54
- if (file.toLowerCase().endsWith('.json')) {
55
- haveJson = true;
56
- break;
57
- }
58
- }
59
- if (!haveJson) {
60
- return;
61
- }
62
- console.log(chalk_1.default.green('Generated Types for EVM'));
63
- // TODO this will fail during postinstall, need to locate real typechain path
64
- await execStep('yarn typechain --target ' + ETHERS_TARGET + ` --out-dir ${outDir} ${path_1.default.join(abisDir, '*.json')}`, 'Type definitions gen');
65
- }
66
- exports.codeGenEthersProcessor = codeGenEthersProcessor;
67
84
  async function execStep(cmd, stepName) {
68
- const child = (0, child_process_1.exec)(cmd);
69
- console.log(chalk_1.default.blue(stepName + ' begin'));
85
+ const child = exec(cmd);
86
+ console.log(chalk.blue(stepName + ' begin'));
70
87
  if (!child.stdout || !child.stderr) {
71
- console.error(chalk_1.default.red(stepName + ' failed'));
88
+ console.error(chalk.red(stepName + ' failed'));
72
89
  process.exit(1);
73
90
  }
74
91
  child.stdout.pipe(process.stdout);
@@ -77,10 +94,10 @@ async function execStep(cmd, stepName) {
77
94
  child.on('close', resolve);
78
95
  });
79
96
  if (child.exitCode) {
80
- console.error(chalk_1.default.red(stepName + ' failed'));
97
+ console.error(chalk.red(stepName + ' failed'));
81
98
  process.exit(child.exitCode);
82
99
  }
83
- console.log(chalk_1.default.blue(stepName + ' success'));
100
+ console.log(chalk.blue(stepName + ' success'));
84
101
  console.log();
85
102
  }
86
103
  //# sourceMappingURL=build.js.map
package/lib/build.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"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","sourcesContent":["import chalk from 'chalk'\nimport path from 'path'\nimport fs from 'fs'\nimport { exec } from 'child_process'\n\nexport async function buildProcessor(onlyGen: boolean) {\n if (!onlyGen) {\n await installDeps()\n }\n\n // targets.forEach(async (target) => await buildProcessorForTarget(onlyGen, target))\n // for (const target) {\n await buildProcessorForTarget(onlyGen)\n // }\n\n if (!onlyGen) {\n const WEBPACK_CONFIG = path.join(__dirname, 'webpack.config.js')\n await execStep('yarn tsc -p .', 'Compile')\n await execStep('yarn webpack --config=' + WEBPACK_CONFIG, 'Packaging')\n }\n}\n\nasync function buildProcessorForTarget(onlyGen: boolean) {\n await codeGenEthersProcessor(path.join('abis', 'evm'))\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const solanaModule = require('@sentio/sdk-solana/lib/codegen/codegen')\n solanaModule.codeGenSolanaProcessor(path.join('abis', 'solana'))\n } catch (e) {}\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const aptosModuole = require('@sentio/sdk-aptos/lib/codegen/codegen')\n aptosModuole.codeGenAptosProcessor(path.join('abis', 'aptos'))\n } catch (e) {}\n\n if (onlyGen) {\n return\n }\n}\n\nasync function installDeps() {\n await execStep('yarn install --ignore-scripts', 'Yarn Install')\n}\n\nexport async function codeGenEthersProcessor(\n abisDir: string,\n ETHERS_TARGET = path.dirname(require.resolve('@sentio/sdk/lib/target-ethers-sentio')),\n outDir = 'src/types/internal'\n) {\n if (!fs.existsSync(abisDir)) {\n return\n }\n\n let haveJson = false\n const files = fs.readdirSync(abisDir)\n for (const file of files) {\n if (file.toLowerCase().endsWith('.json')) {\n haveJson = true\n break\n }\n }\n if (!haveJson) {\n return\n }\n\n console.log(chalk.green('Generated Types for EVM'))\n\n // TODO this will fail during postinstall, need to locate real typechain path\n await execStep(\n 'yarn typechain --target ' + ETHERS_TARGET + ` --out-dir ${outDir} ${path.join(abisDir, '*.json')}`,\n 'Type definitions gen'\n )\n}\n\nasync function execStep(cmd: string, stepName: string) {\n const child = exec(cmd)\n console.log(chalk.blue(stepName + ' begin'))\n\n if (!child.stdout || !child.stderr) {\n console.error(chalk.red(stepName + ' failed'))\n process.exit(1)\n }\n\n child.stdout.pipe(process.stdout)\n child.stderr.pipe(process.stderr)\n\n await new Promise((resolve) => {\n child.on('close', resolve)\n })\n\n if (child.exitCode) {\n console.error(chalk.red(stepName + ' failed'))\n process.exit(child.exitCode)\n }\n console.log(chalk.blue(stepName + ' success'))\n console.log()\n}\n"]}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../src/build.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAgB;IACnD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,WAAW,EAAE,CAAA;KACpB;IAED,oFAAoF;IACpF,uBAAuB;IACvB,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAA;IACtC,IAAI;IAEJ,IAAI,CAAC,OAAO,EAAE;QACZ,IAAI,UAAkB,CAAA;QACtB,IAAI;YACF,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,oBAAoB,CAAC,CAAA;SAC/E;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC,CAAA;YAChF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SAChB;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAA;QAC3E,6CAA6C;QAC7C,MAAM,QAAQ,CAAC,QAAQ,IAAI,aAAa,UAAU,EAAE,EAAE,WAAW,CAAC,CAAA;QAElE,MAAM,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,CAAA;QAC5D,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAA;QAC7D,IAAI,SAAS,GAAG,CAAC,EAAE;YACjB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC,CAAA;YACtF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SAChB;QACD,IAAI,SAAS,GAAG,CAAC,EAAE;YACjB,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAC7B;;;;CAIP,CACM,CAAA;SACF;KACF;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,OAAgB;IACrD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC/C,IAAI;QACF,4BAA4B;QAC5B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAA;QACvD,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACvC,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QACrC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YACzB,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YACnC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;SAClC;QACD,4BAA4B;QAC5B,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;KACrC;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAA;KACnC;IAED,IAAI;QACF,4BAA4B;QAC5B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAA;QAC1D,4BAA4B;QAC5B,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAA;KAC1F;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAA;KACnC;IAED,IAAI;QACF,4BAA4B;QAC5B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAA;QACzD,4BAA4B;QAC5B,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;KACxF;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAA;KACnC;IAED,IAAI,OAAO,EAAE;QACX,OAAM;KACP;AACH,CAAC;AAED,KAAK,UAAU,WAAW;IACxB,MAAM,QAAQ,CAAC,+BAA+B,EAAE,cAAc,CAAC,CAAA;AACjE,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,GAAW,EAAE,QAAgB;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;IACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAA;IAE5C,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;QAClC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAA;QAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAChB;IAED,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACjC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IAEjC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC5B,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC5B,CAAC,CAAC,CAAA;IAEF,IAAI,KAAK,CAAC,QAAQ,EAAE;QAClB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAA;QAC9C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;KAC7B;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAA;IAC9C,OAAO,CAAC,GAAG,EAAE,CAAA;AACf,CAAC","sourcesContent":["import chalk from 'chalk'\nimport path from 'path'\nimport fs from 'fs'\nimport { exec } from 'child_process'\nimport * as process from 'process'\nimport { getPackageRoot } from './utils.js'\n\nexport async function buildProcessor(onlyGen: boolean) {\n if (!onlyGen) {\n await installDeps()\n }\n\n // targets.forEach(async (target) => await buildProcessorForTarget(onlyGen, target))\n // for (const target) {\n await buildProcessorForTarget(onlyGen)\n // }\n\n if (!onlyGen) {\n let tsupConfig: string\n try {\n tsupConfig = path.resolve(getPackageRoot('@sentio/sdk'), 'lib/tsup.config.ts')\n } catch (e) {\n console.error(chalk.red(\"Wrong CLI version for sdk, can't find tsup.config.ts\"))\n process.exit(1)\n }\n\n const tsup = path.resolve(getPackageRoot('tsup'), 'dist', 'cli-default.js')\n // await execStep('yarn tsc -p .', 'Compile')\n await execStep(`node ${tsup} --config=${tsupConfig}`, 'Packaging')\n\n const dir = fs.readdirSync(path.join(process.cwd(), 'dist'))\n const generated = dir.filter((d) => d.endsWith('.js')).length\n if (generated < 0) {\n console.error(chalk.red('No filed generated, please check if your processor.ts file'))\n process.exit(1)\n }\n if (generated > 1) {\n console.error(\n chalk.red('Packing failed: '),\n `Multiple entry point is not allowed. If your processor.ts have multiple file imported, please change:\nimport('mine.js')\nto\nimport 'mine.js'\n`\n )\n }\n }\n}\n\nasync function buildProcessorForTarget(onlyGen: boolean) {\n const outputBase = path.resolve('src', 'types')\n try {\n // @ts-ignore dynamic import\n const codegen = await import('@sentio/sdk/eth/codegen')\n let input = path.resolve('abis', 'eth')\n let output = path.resolve(outputBase)\n if (!fs.existsSync(input)) {\n input = path.resolve('abis', 'evm')\n output = path.resolve(outputBase)\n }\n // @ts-ignore dynamic import\n await codegen.codegen(input, output)\n } catch (e) {\n console.error('code gen error', e)\n }\n\n try {\n // @ts-ignore dynamic import\n const codegen = await import('@sentio/sdk/solana/codegen')\n // @ts-ignore dynamic import\n await codegen.codegen(path.resolve('abis', 'solana'), path.resolve(outputBase, 'solana'))\n } catch (e) {\n console.error('code gen error', e)\n }\n\n try {\n // @ts-ignore dynamic import\n const codegen = await import('@sentio/sdk/aptos/codegen')\n // @ts-ignore dynamic import\n await codegen.codegen(path.resolve('abis', 'aptos'), path.resolve(outputBase, 'aptos'))\n } catch (e) {\n console.error('code gen error', e)\n }\n\n if (onlyGen) {\n return\n }\n}\n\nasync function installDeps() {\n await execStep('yarn install --ignore-scripts', 'Yarn Install')\n}\n\nasync function execStep(cmd: string, stepName: string) {\n const child = exec(cmd)\n console.log(chalk.blue(stepName + ' begin'))\n\n if (!child.stdout || !child.stderr) {\n console.error(chalk.red(stepName + ' failed'))\n process.exit(1)\n }\n\n child.stdout.pipe(process.stdout)\n child.stderr.pipe(process.stderr)\n\n await new Promise((resolve) => {\n child.on('close', resolve)\n })\n\n if (child.exitCode) {\n console.error(chalk.red(stepName + ' failed'))\n process.exit(child.exitCode)\n }\n console.log(chalk.blue(stepName + ' success'))\n console.log()\n}\n"]}
package/lib/cli.js CHANGED
@@ -1,23 +1,18 @@
1
1
  #!/usr/bin/env node
2
- "use strict";
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- const command_line_args_1 = __importDefault(require("command-line-args"));
8
- const command_line_usage_1 = __importDefault(require("command-line-usage"));
9
- const fs_1 = __importDefault(require("fs"));
10
- const path_1 = __importDefault(require("path"));
11
- const js_yaml_1 = __importDefault(require("js-yaml"));
12
- const config_1 = require("./config");
13
- const upload_1 = require("./upload");
14
- const chalk_1 = __importDefault(require("chalk"));
15
- const build_1 = require("./build");
16
- const run_create_1 = require("./commands/run-create");
17
- const run_version_1 = require("./commands/run-version");
18
- const run_login_1 = require("./commands/run-login");
2
+ import commandLineArgs from 'command-line-args';
3
+ import commandLineUsage from 'command-line-usage';
4
+ import fs from 'fs';
5
+ import path from 'path';
6
+ import yaml from 'js-yaml';
7
+ import chalk from 'chalk';
8
+ import { buildProcessor } from './build.js';
9
+ import { runCreate } from './commands/run-create.js';
10
+ import { runVersion } from './commands/run-version.js';
11
+ import { runLogin } from './commands/run-login.js';
12
+ import { runUpload } from './commands/run-upload.js';
13
+ import { runTest } from './commands/run-test.js';
19
14
  const mainDefinitions = [{ name: 'command', defaultOption: true }];
20
- const mainOptions = (0, command_line_args_1.default)(mainDefinitions, {
15
+ const mainOptions = commandLineArgs(mainDefinitions, {
21
16
  stopAtFirstUnknown: true,
22
17
  });
23
18
  const argv = mainOptions._unknown || [];
@@ -25,13 +20,16 @@ if (!mainOptions.command) {
25
20
  usage();
26
21
  }
27
22
  if (mainOptions.command === 'login') {
28
- (0, run_login_1.runLogin)(argv);
23
+ runLogin(argv);
29
24
  }
30
25
  else if (mainOptions.command === 'create') {
31
- (0, run_create_1.runCreate)(argv);
26
+ await runCreate(argv);
32
27
  }
33
28
  else if (mainOptions.command === 'version') {
34
- (0, run_version_1.runVersion)(argv);
29
+ runVersion(argv);
30
+ }
31
+ else if (mainOptions.command === 'test') {
32
+ runTest(argv);
35
33
  }
36
34
  else {
37
35
  // For all the commands that need read project configs
@@ -40,20 +38,20 @@ else {
40
38
  let processorConfig = { host: '', project: '', build: true, debug: false };
41
39
  // Fist step, read from project yaml file
42
40
  try {
43
- console.log(chalk_1.default.blue('Loading Process config'));
41
+ console.log(chalk.blue('Loading Process config'));
44
42
  // TODO correctly located sentio.yaml
45
43
  const pwd = process.cwd();
46
- const packageJson = path_1.default.join(pwd, 'package.json');
47
- if (!fs_1.default.existsSync(packageJson)) {
44
+ const packageJson = path.join(pwd, 'package.json');
45
+ if (!fs.existsSync(packageJson)) {
48
46
  console.error('package.json not found, please run this command in the root of your project');
49
47
  process.exit(1);
50
48
  }
51
- const yamlPath = path_1.default.join(pwd, 'sentio.yaml');
52
- if (!fs_1.default.existsSync(yamlPath)) {
49
+ const yamlPath = path.join(pwd, 'sentio.yaml');
50
+ if (!fs.existsSync(yamlPath)) {
53
51
  console.error('sentio.yaml not found, please create one according to: TODO docs');
54
52
  process.exit(1);
55
53
  }
56
- processorConfig = js_yaml_1.default.load(fs_1.default.readFileSync('sentio.yaml', 'utf8'));
54
+ processorConfig = yaml.load(fs.readFileSync('sentio.yaml', 'utf8'));
57
55
  if (!processorConfig.project === undefined) {
58
56
  console.error('Config yaml must have contain a valid project identifier');
59
57
  process.exit(1);
@@ -84,85 +82,20 @@ else {
84
82
  process.exit(1);
85
83
  }
86
84
  if (mainOptions.command === 'upload') {
87
- const optionDefinitions = [
88
- {
89
- name: 'help',
90
- alias: 'h',
91
- type: Boolean,
92
- description: 'Display this usage guide.',
93
- },
94
- {
95
- name: 'api-key',
96
- type: String,
97
- description: '(Optional) Manually provide API key rather than use saved credential',
98
- },
99
- {
100
- name: 'host',
101
- description: '(Optional) Override Sentio Host name',
102
- type: String,
103
- },
104
- {
105
- name: 'owner',
106
- description: '(Optional) Override Project owner',
107
- type: String,
108
- },
109
- {
110
- name: 'nobuild',
111
- description: '(Optional) Skip build & pack file before uploading, default false',
112
- type: Boolean,
113
- },
114
- {
115
- name: 'debug',
116
- description: '(Optional) Set driver logging level to debug',
117
- type: Boolean,
118
- },
119
- ];
120
- const options = (0, command_line_args_1.default)(optionDefinitions, { argv });
121
- if (options.help) {
122
- const usage = (0, command_line_usage_1.default)([
123
- {
124
- header: 'Sentio upload',
125
- content: 'sentio upload',
126
- },
127
- {
128
- header: 'Options',
129
- optionList: optionDefinitions,
130
- },
131
- ]);
132
- console.log(usage);
133
- }
134
- else {
135
- if (options.host) {
136
- processorConfig.host = options.host;
137
- }
138
- if (options.nobuild) {
139
- processorConfig.build = false;
140
- }
141
- if (options.debug) {
142
- processorConfig.debug = true;
143
- }
144
- (0, config_1.finalizeHost)(processorConfig);
145
- (0, config_1.FinalizeProjectName)(processorConfig, options.owner);
146
- console.log(processorConfig);
147
- let apiOverride = undefined;
148
- if (options['api-key']) {
149
- apiOverride = options['api-key'];
150
- }
151
- (0, upload_1.uploadFile)(processorConfig, apiOverride);
152
- }
85
+ await runUpload(processorConfig, argv);
153
86
  }
154
87
  else if (mainOptions.command === 'build') {
155
- (0, build_1.buildProcessor)(false);
88
+ await buildProcessor(false);
156
89
  }
157
90
  else if (mainOptions.command === 'gen') {
158
- (0, build_1.buildProcessor)(true);
91
+ await buildProcessor(true);
159
92
  }
160
93
  else {
161
94
  usage();
162
95
  }
163
96
  }
164
97
  function usage() {
165
- const usage = (0, command_line_usage_1.default)([
98
+ const usage = commandLineUsage([
166
99
  {
167
100
  header: 'Sentio',
168
101
  content: 'Login & Manage your project files to Sentio.',
@@ -176,6 +109,7 @@ function usage() {
176
109
  'sentio upload\t\t\t\tbuild and upload processor to sentio',
177
110
  'sentio gen\t\t\t\tgenerate abi',
178
111
  'sentio build\t\t\t\tgenerate abi and build',
112
+ 'sentio test\t\t\t\trun tests',
179
113
  'sentio version\t\t\tcurrent cli version',
180
114
  ],
181
115
  },
package/lib/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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","sourcesContent":["#!/usr/bin/env node\n\nimport commandLineArgs from 'command-line-args'\nimport commandLineUsage from 'command-line-usage'\nimport fs from 'fs'\nimport path from 'path'\n\nimport yaml from 'js-yaml'\nimport { finalizeHost, FinalizeProjectName, SentioProjectConfig } from './config'\nimport { uploadFile } from './upload'\nimport chalk from 'chalk'\nimport { buildProcessor } from './build'\nimport { runCreate } from './commands/run-create'\nimport { runVersion } from './commands/run-version'\nimport { runLogin } from './commands/run-login'\n\nconst mainDefinitions = [{ name: 'command', defaultOption: true }]\nconst mainOptions = commandLineArgs(mainDefinitions, {\n stopAtFirstUnknown: true,\n})\nconst argv = mainOptions._unknown || []\n\nif (!mainOptions.command) {\n usage()\n}\n\nif (mainOptions.command === 'login') {\n runLogin(argv)\n} else if (mainOptions.command === 'create') {\n runCreate(argv)\n} else if (mainOptions.command === 'version') {\n runVersion(argv)\n} else {\n // For all the commands that need read project configs\n // TODO move them to their own modules\n\n // Process configs\n let processorConfig: SentioProjectConfig = { host: '', project: '', build: true, debug: false }\n // Fist step, read from project yaml file\n try {\n console.log(chalk.blue('Loading Process config'))\n // TODO correctly located sentio.yaml\n const pwd = process.cwd()\n const packageJson = path.join(pwd, 'package.json')\n if (!fs.existsSync(packageJson)) {\n console.error('package.json not found, please run this command in the root of your project')\n process.exit(1)\n }\n\n const yamlPath = path.join(pwd, 'sentio.yaml')\n if (!fs.existsSync(yamlPath)) {\n console.error('sentio.yaml not found, please create one according to: TODO docs')\n process.exit(1)\n }\n\n processorConfig = yaml.load(fs.readFileSync('sentio.yaml', 'utf8')) as SentioProjectConfig\n if (!processorConfig.project === undefined) {\n console.error('Config yaml must have contain a valid project identifier')\n process.exit(1)\n }\n if (processorConfig.build === undefined) {\n processorConfig.build = true\n }\n if (!processorConfig.host) {\n processorConfig.host = 'prod'\n }\n if (processorConfig.debug === undefined) {\n processorConfig.debug = false\n }\n\n // if (!processorConfig.source) {\n // processorConfig.source = 'src/processor.ts'\n // }\n // if (!processorConfig.targets) {\n // console.warn('targets is not defined, use EVM as the default target')\n // processorConfig.targets = []\n // }\n // if (processorConfig.targets.length === 0) {\n // // By default evm\n // processorConfig.targets.push({ chain: EVM })\n // }\n } catch (e) {\n console.error(e)\n process.exit(1)\n }\n\n if (mainOptions.command === 'upload') {\n const optionDefinitions = [\n {\n name: 'help',\n alias: 'h',\n type: Boolean,\n description: 'Display this usage guide.',\n },\n {\n name: 'api-key',\n type: String,\n description: '(Optional) Manually provide API key rather than use saved credential',\n },\n {\n name: 'host',\n description: '(Optional) Override Sentio Host name',\n type: String,\n },\n {\n name: 'owner',\n description: '(Optional) Override Project owner',\n type: String,\n },\n {\n name: 'nobuild',\n description: '(Optional) Skip build & pack file before uploading, default false',\n type: Boolean,\n },\n {\n name: 'debug',\n description: '(Optional) Set driver logging level to debug',\n type: Boolean,\n },\n ]\n const options = commandLineArgs(optionDefinitions, { argv })\n if (options.help) {\n const usage = commandLineUsage([\n {\n header: 'Sentio upload',\n content: 'sentio upload',\n },\n {\n header: 'Options',\n optionList: optionDefinitions,\n },\n ])\n console.log(usage)\n } else {\n if (options.host) {\n processorConfig.host = options.host\n }\n if (options.nobuild) {\n processorConfig.build = false\n }\n if (options.debug) {\n processorConfig.debug = true\n }\n finalizeHost(processorConfig)\n FinalizeProjectName(processorConfig, options.owner)\n console.log(processorConfig)\n\n let apiOverride = undefined\n if (options['api-key']) {\n apiOverride = options['api-key']\n }\n uploadFile(processorConfig, apiOverride)\n }\n } else if (mainOptions.command === 'build') {\n buildProcessor(false)\n } else if (mainOptions.command === 'gen') {\n buildProcessor(true)\n } else {\n usage()\n }\n}\n\nfunction usage() {\n const usage = commandLineUsage([\n {\n header: 'Sentio',\n content: 'Login & Manage your project files to Sentio.',\n },\n {\n header: 'Usage',\n content: [\n 'sentio <command> --help\\t\\tshow detail usage of specific command',\n 'sentio login\\t\\t\\t\\tlogin to sentio',\n 'sentio create\\t\\t\\t\\tcreate a template project',\n 'sentio upload\\t\\t\\t\\tbuild and upload processor to sentio',\n 'sentio gen\\t\\t\\t\\tgenerate abi',\n 'sentio build\\t\\t\\t\\tgenerate abi and build',\n 'sentio version\\t\\t\\tcurrent cli version',\n ],\n },\n ])\n console.log(usage)\n process.exit(1)\n}\n"]}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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","sourcesContent":["#!/usr/bin/env node\n\nimport commandLineArgs from 'command-line-args'\nimport commandLineUsage from 'command-line-usage'\nimport fs from 'fs'\nimport path from 'path'\n\nimport yaml from 'js-yaml'\nimport { SentioProjectConfig } from './config.js'\nimport chalk from 'chalk'\nimport { buildProcessor } from './build.js'\nimport { runCreate } from './commands/run-create.js'\nimport { runVersion } from './commands/run-version.js'\nimport { runLogin } from './commands/run-login.js'\nimport { runUpload } from './commands/run-upload.js'\nimport { runTest } from './commands/run-test.js'\n\nconst mainDefinitions = [{ name: 'command', defaultOption: true }]\nconst mainOptions = commandLineArgs(mainDefinitions, {\n stopAtFirstUnknown: true,\n})\nconst argv = mainOptions._unknown || []\n\nif (!mainOptions.command) {\n usage()\n}\n\nif (mainOptions.command === 'login') {\n runLogin(argv)\n} else if (mainOptions.command === 'create') {\n await runCreate(argv)\n} else if (mainOptions.command === 'version') {\n runVersion(argv)\n} else if (mainOptions.command === 'test') {\n runTest(argv)\n} else {\n // For all the commands that need read project configs\n // TODO move them to their own modules\n\n // Process configs\n let processorConfig: SentioProjectConfig = { host: '', project: '', build: true, debug: false }\n // Fist step, read from project yaml file\n try {\n console.log(chalk.blue('Loading Process config'))\n // TODO correctly located sentio.yaml\n const pwd = process.cwd()\n const packageJson = path.join(pwd, 'package.json')\n if (!fs.existsSync(packageJson)) {\n console.error('package.json not found, please run this command in the root of your project')\n process.exit(1)\n }\n\n const yamlPath = path.join(pwd, 'sentio.yaml')\n if (!fs.existsSync(yamlPath)) {\n console.error('sentio.yaml not found, please create one according to: TODO docs')\n process.exit(1)\n }\n\n processorConfig = yaml.load(fs.readFileSync('sentio.yaml', 'utf8')) as SentioProjectConfig\n if (!processorConfig.project === undefined) {\n console.error('Config yaml must have contain a valid project identifier')\n process.exit(1)\n }\n if (processorConfig.build === undefined) {\n processorConfig.build = true\n }\n if (!processorConfig.host) {\n processorConfig.host = 'prod'\n }\n if (processorConfig.debug === undefined) {\n processorConfig.debug = false\n }\n\n // if (!processorConfig.source) {\n // processorConfig.source = 'src/processor.ts'\n // }\n // if (!processorConfig.targets) {\n // console.warn('targets is not defined, use EVM as the default target')\n // processorConfig.targets = []\n // }\n // if (processorConfig.targets.length === 0) {\n // // By default evm\n // processorConfig.targets.push({ chain: EVM })\n // }\n } catch (e) {\n console.error(e)\n process.exit(1)\n }\n\n if (mainOptions.command === 'upload') {\n await runUpload(processorConfig, argv)\n } else if (mainOptions.command === 'build') {\n await buildProcessor(false)\n } else if (mainOptions.command === 'gen') {\n await buildProcessor(true)\n } else {\n usage()\n }\n}\n\nfunction usage() {\n const usage = commandLineUsage([\n {\n header: 'Sentio',\n content: 'Login & Manage your project files to Sentio.',\n },\n {\n header: 'Usage',\n content: [\n 'sentio <command> --help\\t\\tshow detail usage of specific command',\n 'sentio login\\t\\t\\t\\tlogin to sentio',\n 'sentio create\\t\\t\\t\\tcreate a template project',\n 'sentio upload\\t\\t\\t\\tbuild and upload processor to sentio',\n 'sentio gen\\t\\t\\t\\tgenerate abi',\n 'sentio build\\t\\t\\t\\tgenerate abi and build',\n 'sentio test\\t\\t\\t\\trun tests',\n 'sentio version\\t\\t\\tcurrent cli version',\n ],\n },\n ])\n console.log(usage)\n process.exit(1)\n}\n"]}
@@ -1,103 +1,79 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.startServer = void 0;
30
- const express_1 = __importDefault(require("express"));
31
- const config_1 = require("../config");
32
- const url_1 = __importStar(require("url"));
33
- const node_fetch_1 = __importDefault(require("node-fetch"));
34
- const utils_1 = require("../utils");
35
- const key_1 = require("../key");
36
- const chalk_1 = __importDefault(require("chalk"));
37
- const os_1 = __importDefault(require("os"));
38
- const crypto = __importStar(require("crypto"));
39
- const app = (0, express_1.default)();
1
+ import express from 'express';
2
+ import { getAuthConfig, getFinalizedHost } from '../config.js';
3
+ import url, { URL } from 'url';
4
+ import fetch from 'node-fetch';
5
+ import { getCliVersion } from '../utils.js';
6
+ import { WriteKey } from '../key.js';
7
+ import chalk from 'chalk';
8
+ import os from 'os';
9
+ import * as crypto from 'crypto';
10
+ const app = express();
40
11
  let server;
41
12
  let authParams;
42
- function startServer(params) {
13
+ export function startServer(params) {
43
14
  authParams = params;
44
15
  server = app.listen(params.serverPort);
45
16
  }
46
- exports.startServer = startServer;
47
17
  app.get('/callback', async (req, res) => {
48
- res.end('login success, please go back to CLI to continue');
49
- const host = (0, config_1.getFinalizedHost)(authParams.sentioHost);
18
+ const fail = function (...args) {
19
+ console.error(chalk.red(args));
20
+ res.end(args.toString());
21
+ server.close();
22
+ };
23
+ const host = getFinalizedHost(authParams.sentioHost);
50
24
  const code = req.query.code;
51
25
  if (!code || code.length == 0) {
26
+ fail('Failed to get authorization code');
52
27
  return;
53
28
  }
54
29
  // exchange token
55
30
  const tokenResRaw = await getToken(host, code);
56
31
  if (!tokenResRaw.ok) {
57
- console.error(chalk_1.default.red('request token error, code:', tokenResRaw.status, tokenResRaw.statusText));
32
+ fail(`Failed to get access token: ${tokenResRaw.status} ${tokenResRaw.statusText}`);
58
33
  return;
59
34
  }
60
- const tokenRes = await tokenResRaw.json();
61
- const accessToken = tokenRes['access_token'];
35
+ const tokenRes = (await tokenResRaw.json());
36
+ const accessToken = tokenRes.access_token;
62
37
  // check if the account is ready
63
38
  const userResRaw = await getUser(host, accessToken);
64
39
  if (!userResRaw.ok) {
65
40
  if (userResRaw.status == 401) {
66
- console.error(chalk_1.default.red('please sign up on sentio first'));
41
+ fail('The account does not exist, please sign up on sentio first');
67
42
  }
68
43
  else {
69
- console.error(chalk_1.default.red('get user error, code:', userResRaw.status, userResRaw.statusText));
44
+ fail(`Failed to get user info: ${userResRaw.status} ${userResRaw.statusText}`);
70
45
  }
71
46
  return;
72
47
  }
73
- const userRes = await userResRaw.json();
48
+ const userRes = (await userResRaw.json());
74
49
  if (!userRes.emailVerified) {
75
- console.error(chalk_1.default.red('please verify your email first'));
50
+ fail('Your account is not verified, please verify your email first');
76
51
  return;
77
52
  }
78
53
  // create API key
79
- const apiKeyName = `${os_1.default.hostname()}-${crypto.randomBytes(4).toString('hex')}`;
54
+ const apiKeyName = `${os.hostname()}-${crypto.randomBytes(4).toString('hex')}`;
80
55
  const createApiKeyResRaw = await createApiKey(host, apiKeyName, 'sdk_generated', accessToken);
81
56
  if (!createApiKeyResRaw.ok) {
82
- console.error(chalk_1.default.red('create api key error, code:', createApiKeyResRaw.status, createApiKeyResRaw.statusText));
57
+ fail(`Failed to create API key: ${createApiKeyResRaw.status} ${createApiKeyResRaw.statusText}`);
83
58
  return;
84
59
  }
85
- const createApiKeyRes = await createApiKeyResRaw.json();
86
- const apiKey = createApiKeyRes['key'];
87
- (0, key_1.WriteKey)(host, apiKey);
88
- console.log(chalk_1.default.green('login success, new API key: ' + apiKey));
60
+ const createApiKeyRes = (await createApiKeyResRaw.json());
61
+ const apiKey = createApiKeyRes.key;
62
+ WriteKey(host, apiKey);
63
+ res.end('Login success, please go back to CLI to continue');
64
+ console.log(chalk.green('Login success, new API key: ' + apiKey));
89
65
  server.close();
90
66
  });
91
67
  async function getToken(host, code) {
92
- const authConf = (0, config_1.getAuthConfig)(host);
93
- const params = new url_1.default.URLSearchParams({
68
+ const authConf = getAuthConfig(host);
69
+ const params = new url.URLSearchParams({
94
70
  grant_type: 'authorization_code',
95
71
  client_id: authConf.clientId,
96
72
  code_verifier: authParams.codeVerifier,
97
73
  code: code,
98
74
  redirect_uri: `http://localhost:${authParams.serverPort}/callback`,
99
75
  });
100
- return (0, node_fetch_1.default)(`${authConf.domain}/oauth/token`, {
76
+ return fetch(`${authConf.domain}/oauth/token`, {
101
77
  method: 'POST',
102
78
  headers: {
103
79
  'Content-Type': 'application/x-www-form-urlencoded',
@@ -106,12 +82,12 @@ async function getToken(host, code) {
106
82
  });
107
83
  }
108
84
  async function createApiKey(host, name, source, accessToken) {
109
- const createApiKeyUrl = new url_1.URL('/api/v1/keys', host);
110
- return (0, node_fetch_1.default)(createApiKeyUrl, {
85
+ const createApiKeyUrl = new URL('/api/v1/keys', host);
86
+ return fetch(createApiKeyUrl.href, {
111
87
  method: 'POST',
112
88
  headers: {
113
89
  Authorization: 'Bearer ' + accessToken,
114
- version: (0, utils_1.getCliVersion)(),
90
+ version: getCliVersion(),
115
91
  },
116
92
  body: JSON.stringify({
117
93
  name: name,
@@ -121,12 +97,12 @@ async function createApiKey(host, name, source, accessToken) {
121
97
  });
122
98
  }
123
99
  async function getUser(host, accessToken) {
124
- const getUserUrl = new url_1.URL('/api/v1/users', host);
125
- return (0, node_fetch_1.default)(getUserUrl, {
100
+ const getUserUrl = new URL('/api/v1/users', host);
101
+ return fetch(getUserUrl.href, {
126
102
  method: 'GET',
127
103
  headers: {
128
104
  Authorization: 'Bearer ' + accessToken,
129
- version: (0, utils_1.getCliVersion)(),
105
+ version: getCliVersion(),
130
106
  },
131
107
  });
132
108
  }