@useparagon/cli 0.0.1-canary.39 → 0.0.1-canary.4

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 (180) hide show
  1. package/dist/apis/api.types.d.ts +8 -71
  2. package/dist/apis/auth.api.js +7 -5
  3. package/dist/apis/auth.api.js.map +1 -1
  4. package/dist/apis/base.api.d.ts +0 -3
  5. package/dist/apis/base.api.js +52 -51
  6. package/dist/apis/base.api.js.map +1 -1
  7. package/dist/apis/event.api.d.ts +2 -0
  8. package/dist/apis/event.api.js +10 -0
  9. package/dist/apis/event.api.js.map +1 -0
  10. package/dist/apis/index.d.ts +2 -0
  11. package/dist/apis/index.js +2 -0
  12. package/dist/apis/index.js.map +1 -1
  13. package/dist/apis/integration.api.d.ts +3 -3
  14. package/dist/apis/integration.api.js +10 -18
  15. package/dist/apis/integration.api.js.map +1 -1
  16. package/dist/apis/project.api.d.ts +1 -1
  17. package/dist/apis/project.api.js +17 -40
  18. package/dist/apis/project.api.js.map +1 -1
  19. package/dist/apis/workflow.api.d.ts +2 -0
  20. package/dist/apis/workflow.api.js +10 -0
  21. package/dist/apis/workflow.api.js.map +1 -0
  22. package/dist/codegen/codegen.types.d.ts +4 -12
  23. package/dist/codegen/codegen.utils.d.ts +1 -2
  24. package/dist/codegen/codegen.utils.js +28 -63
  25. package/dist/codegen/codegen.utils.js.map +1 -1
  26. package/dist/codegen/codegens/condition.codegen.js +35 -38
  27. package/dist/codegen/codegens/condition.codegen.js.map +1 -1
  28. package/dist/codegen/codegens/event.codegen.js +3 -4
  29. package/dist/codegen/codegens/event.codegen.js.map +1 -1
  30. package/dist/codegen/codegens/integration.codegen.d.ts +3 -3
  31. package/dist/codegen/codegens/integration.codegen.js +32 -138
  32. package/dist/codegen/codegens/integration.codegen.js.map +1 -1
  33. package/dist/codegen/codegens/source.codegen.d.ts +1 -3
  34. package/dist/codegen/codegens/source.codegen.js +31 -120
  35. package/dist/codegen/codegens/source.codegen.js.map +1 -1
  36. package/dist/codegen/codegens/workflow.codegen.js +111 -253
  37. package/dist/codegen/codegens/workflow.codegen.js.map +1 -1
  38. package/dist/commands/auth/login/login.action.js +31 -28
  39. package/dist/commands/auth/login/login.action.js.map +1 -1
  40. package/dist/commands/auth/login/login.command.js +4 -5
  41. package/dist/commands/auth/login/login.command.js.map +1 -1
  42. package/dist/commands/auth/login/login.utils.js +19 -26
  43. package/dist/commands/auth/login/login.utils.js.map +1 -1
  44. package/dist/commands/auth/logout/logout.action.js +5 -3
  45. package/dist/commands/auth/logout/logout.action.js.map +1 -1
  46. package/dist/commands/auth/logout/logout.command.js +3 -3
  47. package/dist/commands/auth/logout/logout.command.js.map +1 -1
  48. package/dist/commands/auth/me/me.action.js +6 -10
  49. package/dist/commands/auth/me/me.action.js.map +1 -1
  50. package/dist/commands/auth/me/me.command.js +3 -3
  51. package/dist/commands/auth/me/me.command.js.map +1 -1
  52. package/dist/commands/build/build.action.js +27 -27
  53. package/dist/commands/build/build.action.js.map +1 -1
  54. package/dist/commands/build/build.command.js +5 -9
  55. package/dist/commands/build/build.command.js.map +1 -1
  56. package/dist/commands/build/build.types.d.ts +0 -1
  57. package/dist/commands/build/build.utils.d.ts +1 -1
  58. package/dist/commands/build/build.utils.js +9 -11
  59. package/dist/commands/build/build.utils.js.map +1 -1
  60. package/dist/commands/command.loader.js +8 -10
  61. package/dist/commands/command.loader.js.map +1 -1
  62. package/dist/commands/init/init.action.d.ts +1 -1
  63. package/dist/commands/init/init.action.js +68 -93
  64. package/dist/commands/init/init.action.js.map +1 -1
  65. package/dist/commands/init/init.command.js +8 -14
  66. package/dist/commands/init/init.command.js.map +1 -1
  67. package/dist/commands/init/init.constants.js +23 -0
  68. package/dist/commands/init/init.constants.js.map +1 -0
  69. package/dist/commands/init/init.types.d.ts +0 -1
  70. package/dist/commands/init/init.utils.d.ts +11 -0
  71. package/dist/commands/init/init.utils.js +50 -0
  72. package/dist/commands/init/init.utils.js.map +1 -0
  73. package/dist/commands/push/push.action.js +11 -9
  74. package/dist/commands/push/push.action.js.map +1 -1
  75. package/dist/commands/push/push.command.js +4 -4
  76. package/dist/commands/push/push.command.js.map +1 -1
  77. package/dist/compiler/compiler.types.d.ts +2 -3
  78. package/dist/compiler/compiler.utils.d.ts +1 -1
  79. package/dist/compiler/compiler.utils.js +4 -8
  80. package/dist/compiler/compiler.utils.js.map +1 -1
  81. package/dist/compiler/compilers/events.compiler.js +28 -24
  82. package/dist/compiler/compilers/events.compiler.js.map +1 -1
  83. package/dist/compiler/compilers/integrations.compiler.js +52 -148
  84. package/dist/compiler/compilers/integrations.compiler.js.map +1 -1
  85. package/dist/compiler/compilers/persona.compiler.js +11 -4
  86. package/dist/compiler/compilers/persona.compiler.js.map +1 -1
  87. package/dist/compiler/compilers/project.compiler.d.ts +0 -1
  88. package/dist/compiler/compilers/project.compiler.js +23 -49
  89. package/dist/compiler/compilers/project.compiler.js.map +1 -1
  90. package/dist/compiler/compilers/workflows.compiler.js +33 -46
  91. package/dist/compiler/compilers/workflows.compiler.js.map +1 -1
  92. package/dist/compiler/ts.compiler.d.ts +3 -1
  93. package/dist/compiler/ts.compiler.js +18 -18
  94. package/dist/compiler/ts.compiler.js.map +1 -1
  95. package/dist/config/config.constants.d.ts +0 -1
  96. package/dist/config/config.constants.js +1 -2
  97. package/dist/config/config.constants.js.map +1 -1
  98. package/dist/config/config.types.d.ts +0 -4
  99. package/dist/config/config.utils.d.ts +3 -4
  100. package/dist/config/config.utils.js +37 -65
  101. package/dist/config/config.utils.js.map +1 -1
  102. package/dist/helpers/constants.d.ts +0 -1
  103. package/dist/helpers/constants.js +1 -2
  104. package/dist/helpers/constants.js.map +1 -1
  105. package/dist/helpers/file.d.ts +1 -3
  106. package/dist/helpers/file.js +15 -44
  107. package/dist/helpers/file.js.map +1 -1
  108. package/dist/helpers/strings.d.ts +0 -1
  109. package/dist/helpers/strings.js +1 -34
  110. package/dist/helpers/strings.js.map +1 -1
  111. package/dist/index.js +0 -10
  112. package/dist/index.js.map +1 -1
  113. package/dist/logger/logger.js +1 -5
  114. package/dist/logger/logger.js.map +1 -1
  115. package/dist/templates/configurations/typescript/tsconfig.json +2 -3
  116. package/dist/templates/javascript/src/events/hello-world.js +13 -0
  117. package/dist/templates/javascript/src/integrations/slack/config.js +11 -0
  118. package/dist/templates/javascript/src/integrations/slack/workflows/example-workflow.js +30 -0
  119. package/dist/templates/typescript/src/events/hello-world.ts +21 -0
  120. package/dist/templates/typescript/src/integrations/slack/config.ts +18 -0
  121. package/dist/templates/typescript/src/integrations/slack/workflows/example-workflow.ts +30 -0
  122. package/dist/templates/typescript/tsconfig.json +31 -0
  123. package/package.json +16 -20
  124. package/dist/codegen/codegens/intent.codegen.d.ts +0 -5
  125. package/dist/codegen/codegens/intent.codegen.js +0 -179
  126. package/dist/codegen/codegens/intent.codegen.js.map +0 -1
  127. package/dist/commands/install/index.d.ts +0 -1
  128. package/dist/commands/install/index.js +0 -5
  129. package/dist/commands/install/index.js.map +0 -1
  130. package/dist/commands/install/install.action.d.ts +0 -5
  131. package/dist/commands/install/install.action.js +0 -15
  132. package/dist/commands/install/install.action.js.map +0 -1
  133. package/dist/commands/install/install.command.d.ts +0 -8
  134. package/dist/commands/install/install.command.js +0 -24
  135. package/dist/commands/install/install.command.js.map +0 -1
  136. package/dist/commands/install/install.constants.js +0 -68
  137. package/dist/commands/install/install.constants.js.map +0 -1
  138. package/dist/commands/install/install.types.d.ts +0 -7
  139. package/dist/commands/install/install.types.js +0 -3
  140. package/dist/commands/install/install.types.js.map +0 -1
  141. package/dist/commands/install/install.utils.d.ts +0 -8
  142. package/dist/commands/install/install.utils.js +0 -130
  143. package/dist/commands/install/install.utils.js.map +0 -1
  144. package/dist/commands/new/index.d.ts +0 -1
  145. package/dist/commands/new/index.js +0 -5
  146. package/dist/commands/new/index.js.map +0 -1
  147. package/dist/commands/new/integration/index.d.ts +0 -1
  148. package/dist/commands/new/integration/index.js +0 -5
  149. package/dist/commands/new/integration/index.js.map +0 -1
  150. package/dist/commands/new/integration/integration.action.d.ts +0 -5
  151. package/dist/commands/new/integration/integration.action.js +0 -52
  152. package/dist/commands/new/integration/integration.action.js.map +0 -1
  153. package/dist/commands/new/integration/integration.command.d.ts +0 -8
  154. package/dist/commands/new/integration/integration.command.js +0 -26
  155. package/dist/commands/new/integration/integration.command.js.map +0 -1
  156. package/dist/commands/new/integration/integration.types.d.ts +0 -1
  157. package/dist/commands/new/integration/integration.types.js +0 -3
  158. package/dist/commands/new/integration/integration.types.js.map +0 -1
  159. package/dist/commands/new/new.command.d.ts +0 -5
  160. package/dist/commands/new/new.command.js +0 -16
  161. package/dist/commands/new/new.command.js.map +0 -1
  162. package/dist/commands/new/new.utils.d.ts +0 -1
  163. package/dist/commands/new/new.utils.js +0 -18
  164. package/dist/commands/new/new.utils.js.map +0 -1
  165. package/dist/commands/new/workflow/index.d.ts +0 -1
  166. package/dist/commands/new/workflow/index.js +0 -5
  167. package/dist/commands/new/workflow/index.js.map +0 -1
  168. package/dist/commands/new/workflow/workflow.action.d.ts +0 -5
  169. package/dist/commands/new/workflow/workflow.action.js +0 -94
  170. package/dist/commands/new/workflow/workflow.action.js.map +0 -1
  171. package/dist/commands/new/workflow/workflow.command.d.ts +0 -8
  172. package/dist/commands/new/workflow/workflow.command.js +0 -25
  173. package/dist/commands/new/workflow/workflow.command.js.map +0 -1
  174. package/dist/commands/new/workflow/workflow.types.d.ts +0 -3
  175. package/dist/commands/new/workflow/workflow.types.js +0 -3
  176. package/dist/commands/new/workflow/workflow.types.js.map +0 -1
  177. package/dist/helpers/sets.d.ts +0 -1
  178. package/dist/helpers/sets.js +0 -10
  179. package/dist/helpers/sets.js.map +0 -1
  180. /package/dist/commands/{install/install.constants.d.ts → init/init.constants.d.ts} +0 -0
@@ -5,41 +5,35 @@ const tslib_1 = require("tslib");
5
5
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
6
6
  const path_1 = tslib_1.__importDefault(require("path"));
7
7
  const prompts_1 = tslib_1.__importDefault(require("prompts"));
8
- const uuid_1 = require("uuid");
9
- const core_1 = require("@useparagon/core");
10
8
  const project_api_1 = require("../../apis/project.api");
11
9
  const codegen_utils_1 = require("../../codegen/codegen.utils");
12
10
  const project_compiler_1 = require("../../compiler/compilers/project.compiler");
13
- const config_1 = require("../../config");
14
11
  const spinners_1 = tslib_1.__importDefault(require("../../helpers/spinners"));
15
12
  const logger_1 = tslib_1.__importDefault(require("../../logger"));
16
- const install_constants_1 = require("../install/install.constants");
17
- const install_utils_1 = require("../install/install.utils");
13
+ const init_constants_1 = require("./init.constants");
14
+ const init_utils_1 = require("./init.utils");
18
15
  class InitAction {
19
- projectCompiler;
20
16
  constructor() {
21
17
  this.projectCompiler = new project_compiler_1.ProjectCompiler();
22
18
  }
23
- async handle(options) {
24
- if (options.createFromExisting) {
25
- await this.initExistingProject(options);
26
- }
27
- else {
28
- await this.initNewProject(options);
29
- }
19
+ handle(options) {
20
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
21
+ if (options.createFromExisting) {
22
+ yield this.initExistingProject(options);
23
+ }
24
+ else {
25
+ yield this.initTemplate(options);
26
+ }
27
+ logger_1.default.success('Created new project.');
28
+ });
30
29
  }
31
- async initExistingProject(options) {
32
- spinners_1.default.add('get-projects', { text: 'Retrieving list of projects...' });
33
- const projects = await (0, project_api_1.getProjectList)();
34
- spinners_1.default.succeed('get-projects', { text: 'Retrieved list of projects' });
35
- let projectId;
36
- if (options.autoDetectProject) {
37
- const config = await (0, config_1.getParagraphProjectDetails)();
38
- projectId = config.projectId;
39
- }
40
- if (!projectId) {
41
- const { projectId: projectIdFromPrompt } = await (0, prompts_1.default)({
42
- type: 'autocomplete',
30
+ initExistingProject(options) {
31
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
32
+ spinners_1.default.add('get-projects', { text: 'Fetching project lists...' });
33
+ const projects = yield (0, project_api_1.getProjectList)();
34
+ spinners_1.default.succeed('get-projects', { text: 'Fetched project lists' });
35
+ const { projectId } = yield (0, prompts_1.default)({
36
+ type: 'select',
43
37
  name: 'projectId',
44
38
  message: 'Select project',
45
39
  choices: projects.map((project) => ({
@@ -47,78 +41,59 @@ class InitAction {
47
41
  value: project.id,
48
42
  })),
49
43
  });
50
- projectId = projectIdFromPrompt;
51
- }
52
- if (!projectId) {
53
- logger_1.default.fatal('No project selected.');
54
- }
55
- const projectName = (0, install_utils_1.sanitizeAppName)(projects.find(({ id }) => id === projectId).title);
56
- const directoryOverride = options.extraArgs
57
- .filter((arg) => !arg.startsWith('-') && arg !== 'init')
58
- .pop()
59
- ?.trim();
60
- const projectRoot = path_1.default.join(process.cwd(), directoryOverride ? directoryOverride : projectName);
61
- const projectSrcPath = path_1.default.join(projectRoot, 'src');
62
- await fs_extra_1.default.promises.mkdir(projectSrcPath, { recursive: true });
63
- await (0, config_1.createParagrahpProjectConfig)(projectRoot, {
64
- projectId,
65
- projectName,
66
- profile: config_1.DEFAULT_PROFILE,
67
- });
68
- spinners_1.default.add('import-project', {
69
- text: 'Importing project contents...',
70
- });
71
- const project = await (0, project_api_1.getProjectBuild)(projectId);
72
- spinners_1.default.succeed('import-project', {
73
- text: 'Imported project contents',
74
- });
75
- spinners_1.default.add('build-project', { text: 'Building Project...' });
76
- await (0, codegen_utils_1.generateProjectFiles)(project, projectSrcPath);
77
- spinners_1.default.succeed('build-project', {
78
- text: `Built project in ${projectName}/`,
44
+ if (!projectId) {
45
+ logger_1.default.fatal('No project selected.');
46
+ }
47
+ const projectName = (0, init_utils_1.sanitizeAppName)(projects.find(({ id }) => id === projectId).title);
48
+ const projectRoot = path_1.default.join(process.cwd(), projectName);
49
+ const projectSrcPath = path_1.default.join(projectRoot, 'src');
50
+ yield fs_extra_1.default.promises.mkdir(projectSrcPath, { recursive: true });
51
+ yield fs_extra_1.default.writeFile(path_1.default.join(projectRoot, 'paragon.json'), JSON.stringify({
52
+ projectId,
53
+ }));
54
+ spinners_1.default.add('fetch-project-data', {
55
+ text: 'Fetching project...',
56
+ });
57
+ const project = yield (0, project_api_1.getProjectBuild)(projectId);
58
+ spinners_1.default.succeed('fetch-project-data', {
59
+ text: 'Fetched project',
60
+ });
61
+ spinners_1.default.add('build-project', { text: 'Building Project...' });
62
+ yield (0, codegen_utils_1.generateProjectFiles)(project, projectSrcPath);
63
+ spinners_1.default.succeed('build-project', { text: 'Built Project' });
64
+ yield this.installDependencies(projectRoot, options);
79
65
  });
80
- const integrationToDependencies = Object.fromEntries(Object.entries(project.integrations)
81
- .filter(([integration, _]) => !(0, core_1.isCustomIntegration)(integration))
82
- .map(([integration, build]) => [integration, build?.dependencies]));
83
- await this.installDependencies(projectRoot, options, integrationToDependencies);
84
66
  }
85
- async initNewProject(options) {
86
- const projectRoot = path_1.default
87
- .resolve(options.extraArgs.slice(1).join(''))
88
- .trim();
89
- const projectName = path_1.default.basename(projectRoot);
90
- if (process.cwd() === projectRoot || !projectName) {
91
- logger_1.default.fatal('Provide project name in init command - para init projectname');
92
- }
93
- const projectSrcPath = path_1.default.join(projectRoot, 'src');
94
- await fs_extra_1.default.promises.mkdir(projectSrcPath, { recursive: true });
95
- const projectBuild = {
96
- projectId: (0, uuid_1.v4)(),
97
- projectName,
98
- events: {},
99
- persona: {
100
- meta: {},
101
- },
102
- integrations: {},
103
- secrets: [],
104
- };
105
- await (0, config_1.createParagrahpProjectConfig)(projectRoot, {
106
- projectId: projectBuild.projectId,
107
- projectName,
108
- profile: config_1.DEFAULT_PROFILE,
67
+ initTemplate(options) {
68
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
69
+ const projectRoot = path_1.default
70
+ .resolve(options.extraArgs.slice(1).join(''))
71
+ .trim();
72
+ if (process.cwd() === projectRoot) {
73
+ logger_1.default.fatal('Provide project name in init command - para init projectname');
74
+ }
75
+ yield fs_extra_1.default.promises.mkdir(projectRoot, { recursive: true });
76
+ const templatePath = path_1.default.resolve(__dirname, `../../templates/${options.language}`);
77
+ yield fs_extra_1.default.copy(templatePath, projectRoot);
78
+ yield this.installDependencies(projectRoot, options);
109
79
  });
110
- await (0, codegen_utils_1.generateProjectFiles)(projectBuild, projectSrcPath);
111
- await this.installDependencies(projectRoot, options);
112
- logger_1.default.success(`Created new project in ${projectName}/`);
113
80
  }
114
- async installDependencies(projectRoot, options, integrationToDependencies) {
115
- const projectName = (0, install_utils_1.sanitizeAppName)(path_1.default.basename(projectRoot));
116
- const defaultConfigPath = path_1.default.resolve(__dirname, `../../templates/configurations/${options.language}`);
117
- await fs_extra_1.default.copy(defaultConfigPath, projectRoot);
118
- const packageJson = { ...install_constants_1.defaultPackageJson };
119
- packageJson.name = projectName;
120
- await fs_extra_1.default.promises.writeFile(path_1.default.join(projectRoot, 'package.json'), JSON.stringify(packageJson, null, 2));
121
- await (0, install_utils_1.installDependencies)(projectRoot, integrationToDependencies);
81
+ installDependencies(projectRoot, options) {
82
+ var _a;
83
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
84
+ const projectName = (0, init_utils_1.sanitizeAppName)(path_1.default.basename(projectRoot));
85
+ const packageManager = (_a = options.packageManager) !== null && _a !== void 0 ? _a : (0, init_utils_1.getPkgManager)();
86
+ const defaultConfigPath = path_1.default.resolve(__dirname, `../../templates/configurations/${options.language}`);
87
+ yield fs_extra_1.default.copy(defaultConfigPath, projectRoot);
88
+ const packageJson = Object.assign({}, init_constants_1.defaultPackageJson);
89
+ packageJson.name = projectName;
90
+ if (options.language === 'typescript') {
91
+ packageJson.dependencies = Object.assign(Object.assign({}, packageJson.dependencies), { tslib: '2.3.1' });
92
+ packageJson.devDependencies = Object.assign(Object.assign({}, packageJson.devDependencies), { typescript: '^4.4.4', '@types/node': '^18.13.0' });
93
+ }
94
+ yield fs_extra_1.default.promises.writeFile(path_1.default.join(projectRoot, 'package.json'), JSON.stringify(packageJson, null, 2));
95
+ yield (0, init_utils_1.spawnAsync)(packageManager, ['install'], projectRoot);
96
+ });
122
97
  }
123
98
  }
124
99
  exports.InitAction = InitAction;
@@ -1 +1 @@
1
- {"version":3,"file":"init.action.js","sourceRoot":"","sources":["../../../src/commands/init/init.action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.action.js","sourceRoot":"","sources":["../../../src/commands/init/init.action.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InitCommand = void 0;
4
- const commander_1 = require("commander");
4
+ const tslib_1 = require("tslib");
5
5
  const base_api_1 = require("../../apis/base.api");
6
6
  const init_action_1 = require("./init.action");
7
7
  class InitCommand {
8
- actionHandler;
9
8
  constructor() {
10
9
  this.actionHandler = new init_action_1.InitAction();
11
10
  }
@@ -14,21 +13,16 @@ class InitCommand {
14
13
  .command('init')
15
14
  .description('Initialize paragon project')
16
15
  .option('--create-from-existing', 'Create from existing project.', false)
17
- .addOption(new commander_1.Option('-a, --auto-detect-project [autoDetectProject]', 'Attempt to determine the project based on local configuration.').default(false))
18
- .action(async (rawOptions) => {
16
+ .option('-l,--language [language]', 'Programming language to be used (TypeScript or JavaScript).', 'typescript')
17
+ .option('-p, --package-manager [packageManager]', 'Specify package manager.')
18
+ .action((rawOptions) => tslib_1.__awaiter(this, void 0, void 0, function* () {
19
19
  const options = this.sanitizeOptions(rawOptions);
20
- await (0, base_api_1.getToken)();
21
- return this.actionHandler.handle({
22
- ...options,
23
- extraArgs: program.args,
24
- });
25
- });
20
+ yield (0, base_api_1.getToken)();
21
+ return this.actionHandler.handle(Object.assign(Object.assign({}, options), { extraArgs: program.args }));
22
+ }));
26
23
  }
27
24
  sanitizeOptions(rawOptions) {
28
- return {
29
- ...rawOptions,
30
- language: 'typescript',
31
- };
25
+ return rawOptions;
32
26
  }
33
27
  }
34
28
  exports.InitCommand = InitCommand;
@@ -1 +1 @@
1
- {"version":3,"file":"init.command.js","sourceRoot":"","sources":["../../../src/commands/init/init.command.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAE5C,kDAA+C;AAO/C,+CAA2C;AAM3C,MAAa,WAAW;IACd,aAAa,CAAa;IAElC;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,wBAAU,EAAE,CAAC;IACxC,CAAC;IAKD,IAAI,CAAC,OAAgB;QACnB,OAAO;aACJ,OAAO,CAAC,MAAM,CAAC;aACf,WAAW,CAAC,4BAA4B,CAAC;aACzC,MAAM,CAAC,wBAAwB,EAAE,+BAA+B,EAAE,KAAK,CAAC;aACxE,SAAS,CACR,IAAI,kBAAM,CACR,+CAA+C,EAC/C,gEAAgE,CACjE,CAAC,OAAO,CAAC,KAAK,CAAC,CACjB;aAwBA,MAAM,CAAC,KAAK,EAAE,UAA8B,EAAE,EAAE;YAC/C,MAAM,OAAO,GAAuB,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAGrE,MAAM,IAAA,mBAAQ,GAAE,CAAC;YAEjB,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;gBAC/B,GAAG,OAAO;gBACV,SAAS,EAAE,OAAO,CAAC,IAAI;aACxB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAOO,eAAe,CAAC,UAA8B;QACpD,OAAO;YACL,GAAG,UAAU;YACb,QAAQ,EAAE,YAAY;SACvB,CAAC;IACJ,CAAC;CACF;AApED,kCAoEC"}
1
+ {"version":3,"file":"init.command.js","sourceRoot":"","sources":["../../../src/commands/init/init.command.ts"],"names":[],"mappings":";;;;AAEA,kDAA+C;AAO/C,+CAA2C;AAM3C,MAAa,WAAW;IAGtB;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,wBAAU,EAAE,CAAC;IACxC,CAAC;IAKD,IAAI,CAAC,OAAgB;QACnB,OAAO;aACJ,OAAO,CAAC,MAAM,CAAC;aACf,WAAW,CAAC,4BAA4B,CAAC;aACzC,MAAM,CAAC,wBAAwB,EAAE,+BAA+B,EAAE,KAAK,CAAC;aASxE,MAAM,CACL,0BAA0B,EAC1B,6DAA6D,EAC7D,YAAY,CACb;aAOA,MAAM,CACL,wCAAwC,EACxC,0BAA0B,CAC3B;aACA,MAAM,CAAC,CAAO,UAA8B,EAAE,EAAE;YAC/C,MAAM,OAAO,GAAuB,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAGrE,MAAM,IAAA,mBAAQ,GAAE,CAAC;YAEjB,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,iCAC3B,OAAO,KACV,SAAS,EAAE,OAAO,CAAC,IAAI,IACvB,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAOO,eAAe,CAAC,UAA8B;QACpD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AA3DD,kCA2DC"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defaultPackageJson = void 0;
4
+ exports.defaultPackageJson = {
5
+ name: 'default-package.json',
6
+ version: '1.0.0',
7
+ private: true,
8
+ engines: {
9
+ node: '>=14.17',
10
+ },
11
+ scripts: {
12
+ build: 'para build',
13
+ },
14
+ dependencies: {},
15
+ devDependencies: {
16
+ '@trivago/prettier-plugin-sort-imports': '^4.2.0',
17
+ prettier: '^3.1.0',
18
+ 'prettier-plugin-organize-imports': '^3.2.3',
19
+ '@types/node': '^18.13.0',
20
+ typescript: '^5.3.2',
21
+ },
22
+ };
23
+ //# sourceMappingURL=init.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.constants.js","sourceRoot":"","sources":["../../../src/commands/init/init.constants.ts"],"names":[],"mappings":";;;AAGa,QAAA,kBAAkB,GAAwB;IACrD,IAAI,EAAE,sBAAsB;IAC5B,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,IAAI;IACb,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;KAChB;IACD,OAAO,EAAE;QACP,KAAK,EAAE,YAAY;KACpB;IAID,YAAY,EAAE,EAGb;IAID,eAAe,EAAE;QACf,uCAAuC,EAAE,QAAQ;QACjD,QAAQ,EAAE,QAAQ;QAClB,kCAAkC,EAAE,QAAQ;QAC5C,aAAa,EAAE,UAAU;QACzB,UAAU,EAAE,QAAQ;KACrB;CACF,CAAC"}
@@ -2,7 +2,6 @@ import { KNOWN_PACKAGE_MANAGERS } from '../../helpers/constants';
2
2
  export type InitCommandOptions = {
3
3
  language: 'javascript' | 'typescript';
4
4
  createFromExisting: boolean;
5
- autoDetectProject: boolean;
6
5
  packageManager: (typeof KNOWN_PACKAGE_MANAGERS)[number];
7
6
  extraArgs: any[];
8
7
  };
@@ -0,0 +1,11 @@
1
+ import { KNOWN_PACKAGE_MANAGERS } from './../../helpers/constants';
2
+ export declare function getPkgManager(): (typeof KNOWN_PACKAGE_MANAGERS)[number];
3
+ export type GenericResolve<T = any> = {
4
+ (value?: T): void;
5
+ };
6
+ export type GenericReject<T = Error> = {
7
+ (error: T): void;
8
+ };
9
+ export declare function spawnAsync(command: string, args: string[], path: string): Promise<number>;
10
+ export declare const sanitizeAppName: (appName: string) => string;
11
+ export declare const sleep: (seconds: number) => Promise<void>;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sleep = exports.sanitizeAppName = exports.spawnAsync = exports.getPkgManager = void 0;
4
+ const child_process_1 = require("child_process");
5
+ function getPkgManager() {
6
+ const userAgent = process.env.npm_config_user_agent || '';
7
+ if (userAgent.startsWith('yarn')) {
8
+ return 'yarn';
9
+ }
10
+ if (userAgent.startsWith('pnpm')) {
11
+ return 'pnpm';
12
+ }
13
+ if (userAgent.startsWith('bun')) {
14
+ return 'bun';
15
+ }
16
+ return 'npm';
17
+ }
18
+ exports.getPkgManager = getPkgManager;
19
+ function spawnAsync(command, args, path) {
20
+ return new Promise((resolve, reject) => {
21
+ const childProcess = (0, child_process_1.spawn)(command, args, {
22
+ stdio: 'inherit',
23
+ env: {},
24
+ cwd: path,
25
+ });
26
+ childProcess.on('exit', (code) => {
27
+ if (code !== 0) {
28
+ return reject(new Error(`Failed command '${command} ${args.join(' ')}' with exit code ${code}`));
29
+ }
30
+ return resolve(code);
31
+ });
32
+ });
33
+ }
34
+ exports.spawnAsync = spawnAsync;
35
+ const sanitizeAppName = (appName) => {
36
+ return appName
37
+ .replace(/([a-z\d])([A-Z])/g, '$1-$2')
38
+ .toLowerCase()
39
+ .replace(/\s/g, '-');
40
+ };
41
+ exports.sanitizeAppName = sanitizeAppName;
42
+ const sleep = (seconds) => {
43
+ return new Promise((res, _rej) => {
44
+ setTimeout(() => {
45
+ res();
46
+ }, seconds * 1000);
47
+ });
48
+ };
49
+ exports.sleep = sleep;
50
+ //# sourceMappingURL=init.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.utils.js","sourceRoot":"","sources":["../../../src/commands/init/init.utils.ts"],"names":[],"mappings":";;;AAAA,iDAAoD;AAOpD,SAAgB,aAAa;IAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE,CAAC;IAE1D,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAhBD,sCAgBC;AAiBD,SAAgB,UAAU,CACxB,OAAe,EACf,IAAc,EACd,IAAY;IAEZ,OAAO,IAAI,OAAO,CAAC,CAAC,OAAuB,EAAE,MAAsB,EAAE,EAAE;QACrE,MAAM,YAAY,GAAiB,IAAA,qBAAK,EAAC,OAAO,EAAE,IAAI,EAAE;YACtD,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,EAAE;YACP,GAAG,EAAE,IAAI;SACV,CAAC,CAAC;QAEH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YACvC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,MAAM,CACX,IAAI,KAAK,CACP,mBAAmB,OAAO,IAAI,IAAI,CAAC,IAAI,CACrC,GAAG,CACJ,oBAAoB,IAAI,EAAE,CAC5B,CACF,CAAC;YACJ,CAAC;YAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AA1BD,gCA0BC;AAOM,MAAM,eAAe,GAAG,CAAC,OAAe,EAAU,EAAE;IACzD,OAAO,OAAO;SACX,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAAC;SACrC,WAAW,EAAE;SACb,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACzB,CAAC,CAAC;AALW,QAAA,eAAe,mBAK1B;AAMK,MAAM,KAAK,GAAG,CAAC,OAAe,EAAiB,EAAE;IACtD,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC/B,UAAU,CAAC,GAAG,EAAE;YACd,GAAG,EAAE,CAAC;QACR,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AANW,QAAA,KAAK,SAMhB"}
@@ -6,15 +6,17 @@ const apis_1 = require("../../apis");
6
6
  const config_1 = require("../../config");
7
7
  const spinners_1 = tslib_1.__importDefault(require("../../helpers/spinners"));
8
8
  class PushAction {
9
- async handle(_options) {
10
- const { projectId, projectName, rootPath } = await (0, config_1.getParagraphProjectDetails)();
11
- const projectBuild = await (0, config_1.getLocalProjectBuild)(rootPath);
12
- spinners_1.default.add('writing-output', {
13
- text: `Pushing changes to paragon cloud`,
14
- });
15
- await (0, apis_1.syncProject)({ ...projectBuild, projectId, projectName });
16
- spinners_1.default.succeed('writing-output', {
17
- text: `Pushed changes to paragon cloud`,
9
+ handle(_options) {
10
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
11
+ const { projectId } = yield (0, config_1.getParagraphProjectDetails)();
12
+ const projectBuild = yield (0, config_1.getLocalProjectBuild)();
13
+ spinners_1.default.add('writing-output', {
14
+ text: `Pushing changes to paragon cloud`,
15
+ });
16
+ yield (0, apis_1.syncProject)(projectId, projectBuild);
17
+ spinners_1.default.succeed('writing-output', {
18
+ text: `Pushed changes to paragon cloud`,
19
+ });
18
20
  });
19
21
  }
20
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"push.action.js","sourceRoot":"","sources":["../../../src/commands/push/push.action.ts"],"names":[],"mappings":";;;;AAAA,qCAAuD;AACvD,yCAAgF;AAChF,8EAA8C;AAO9C,MAAa,UAAU;IAIrB,KAAK,CAAC,MAAM,CAAC,QAA4B;QACvC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,GACxC,MAAM,IAAA,mCAA0B,GAAE,CAAC;QACrC,MAAM,YAAY,GAAiB,MAAM,IAAA,6BAAoB,EAAC,QAAQ,CAAC,CAAC;QAExE,kBAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE;YAC7B,IAAI,EAAE,kCAAkC;SACzC,CAAC,CAAC;QAEH,MAAM,IAAA,kBAAW,EAAC,EAAE,GAAG,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;QAE/D,kBAAQ,CAAC,OAAO,CAAC,gBAAgB,EAAE;YACjC,IAAI,EAAE,iCAAiC;SACxC,CAAC,CAAC;IACL,CAAC;CACF;AAnBD,gCAmBC"}
1
+ {"version":3,"file":"push.action.js","sourceRoot":"","sources":["../../../src/commands/push/push.action.ts"],"names":[],"mappings":";;;;AAAA,qCAAuD;AACvD,yCAAgF;AAChF,8EAA8C;AAO9C,MAAa,UAAU;IAIf,MAAM,CAAC,QAA4B;;YACvC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,mCAA0B,GAAE,CAAC;YACzD,MAAM,YAAY,GAAiB,MAAM,IAAA,6BAAoB,GAAE,CAAC;YAEhE,kBAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE;gBAC7B,IAAI,EAAE,kCAAkC;aACzC,CAAC,CAAC;YAEH,MAAM,IAAA,kBAAW,EAAC,SAAS,EAAE,YAAY,CAAC,CAAC;YAE3C,kBAAQ,CAAC,OAAO,CAAC,gBAAgB,EAAE;gBACjC,IAAI,EAAE,iCAAiC;aACxC,CAAC,CAAC;QACL,CAAC;KAAA;CACF;AAlBD,gCAkBC"}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PushCommand = void 0;
4
+ const tslib_1 = require("tslib");
4
5
  const base_api_1 = require("../../apis/base.api");
5
6
  const push_action_1 = require("./push.action");
6
7
  class PushCommand {
7
- actionHandler;
8
8
  constructor() {
9
9
  this.actionHandler = new push_action_1.PushAction();
10
10
  }
@@ -12,11 +12,11 @@ class PushCommand {
12
12
  program
13
13
  .command('push')
14
14
  .description('Push changes to cloud')
15
- .action(async (rawOptions) => {
15
+ .action((rawOptions) => tslib_1.__awaiter(this, void 0, void 0, function* () {
16
16
  const options = this.sanitizeOptions(rawOptions);
17
- await (0, base_api_1.getToken)();
17
+ yield (0, base_api_1.getToken)();
18
18
  return this.actionHandler.handle(options);
19
- });
19
+ }));
20
20
  }
21
21
  sanitizeOptions(rawOptions) {
22
22
  return rawOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"push.command.js","sourceRoot":"","sources":["../../../src/commands/push/push.command.ts"],"names":[],"mappings":";;;AAEA,kDAA+C;AAG/C,+CAA2C;AAM3C,MAAa,WAAW;IACd,aAAa,CAAa;IAElC;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,wBAAU,EAAE,CAAC;IACxC,CAAC;IAKD,IAAI,CAAC,OAAgB;QACnB,OAAO;aACJ,OAAO,CAAC,MAAM,CAAC;aACf,WAAW,CAAC,uBAAuB,CAAC;aACpC,MAAM,CAAC,KAAK,EAAE,UAA8B,EAAE,EAAE;YAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAGjD,MAAM,IAAA,mBAAQ,GAAE,CAAC;YAEjB,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACP,CAAC;IAOO,eAAe,CAAC,UAA8B;QACpD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAhCD,kCAgCC"}
1
+ {"version":3,"file":"push.command.js","sourceRoot":"","sources":["../../../src/commands/push/push.command.ts"],"names":[],"mappings":";;;;AAEA,kDAA+C;AAG/C,+CAA2C;AAM3C,MAAa,WAAW;IAGtB;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,wBAAU,EAAE,CAAC;IACxC,CAAC;IAKD,IAAI,CAAC,OAAgB;QACnB,OAAO;aACJ,OAAO,CAAC,MAAM,CAAC;aACf,WAAW,CAAC,uBAAuB,CAAC;aACpC,MAAM,CAAC,CAAO,UAA8B,EAAE,EAAE;YAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAGjD,MAAM,IAAA,mBAAQ,GAAE,CAAC;YAEjB,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAOO,eAAe,CAAC,UAA8B;QACpD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAhCD,kCAgCC"}
@@ -1,8 +1,7 @@
1
- import { ISecret } from '@useparagon/core/secret';
1
+ import { IEvent } from '@useparagon/core/event';
2
2
  export type ProjectDependencies = {
3
3
  projectId: string;
4
- eventIdToNameMap: Record<string, string>;
5
- secrets: ISecret[];
4
+ events: Record<string, IEvent>;
6
5
  };
7
6
  export type WorkflowDependencies = ProjectDependencies & {
8
7
  integration: {
@@ -1,2 +1,2 @@
1
1
  export declare const extractKeyFromPath: (filePath: string) => string;
2
- export declare const requireSafe: <T>(filePath: string, onlyUseDefault?: boolean) => T;
2
+ export declare const requireSafe: <T>(filePath: string) => T;
@@ -6,21 +6,17 @@ const logger_1 = tslib_1.__importDefault(require("../logger"));
6
6
  const extractKeyFromPath = (filePath) => {
7
7
  const names = filePath.split('/');
8
8
  const fileName = names[names.length - 1];
9
- if (fileName.endsWith('.js') || fileName.endsWith('.ts')) {
9
+ if (fileName.endsWith('.js')) {
10
10
  return fileName.slice(0, -3);
11
11
  }
12
12
  return fileName;
13
13
  };
14
14
  exports.extractKeyFromPath = extractKeyFromPath;
15
- const requireSafe = (filePath, onlyUseDefault = true) => {
15
+ const requireSafe = (filePath) => {
16
16
  try {
17
- const output = require(filePath);
18
- if (onlyUseDefault) {
19
- return output.default;
20
- }
21
- return output;
17
+ return require(filePath).default;
22
18
  }
23
- catch {
19
+ catch (_a) {
24
20
  logger_1.default.fatal(`Could not found ${filePath}.`);
25
21
  }
26
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.utils.js","sourceRoot":"","sources":["../../src/compiler/compiler.utils.ts"],"names":[],"mappings":";;;;AAAA,+DAA+B;AAOxB,MAAM,kBAAkB,GAAG,CAAC,QAAgB,EAAU,EAAE;IAC7D,MAAM,KAAK,GAAa,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAW,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAGjD,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAVW,QAAA,kBAAkB,sBAU7B;AAOK,MAAM,WAAW,GAAG,CAAI,QAAgB,EAAE,iBAA0B,IAAI,EAAK,EAAE;IACpF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,MAAM,CAAC,OAAY,CAAC;QAC7B,CAAC;QACD,OAAO,MAAW,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,gBAAM,CAAC,KAAK,CAAC,mBAAmB,QAAQ,GAAG,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC,CAAC;AAVW,QAAA,WAAW,eAUtB"}
1
+ {"version":3,"file":"compiler.utils.js","sourceRoot":"","sources":["../../src/compiler/compiler.utils.ts"],"names":[],"mappings":";;;;AAAA,+DAA+B;AAOxB,MAAM,kBAAkB,GAAG,CAAC,QAAgB,EAAU,EAAE;IAC7D,MAAM,KAAK,GAAa,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAW,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAGjD,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAVW,QAAA,kBAAkB,sBAU7B;AAOK,MAAM,WAAW,GAAG,CAAI,QAAgB,EAAK,EAAE;IACpD,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAY,CAAC;IACxC,CAAC;IAAC,WAAM,CAAC;QACP,gBAAM,CAAC,KAAK,CAAC,mBAAmB,QAAQ,GAAG,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC,CAAC;AANW,QAAA,WAAW,eAMtB"}
@@ -5,34 +5,38 @@ const tslib_1 = require("tslib");
5
5
  const glob_1 = require("glob");
6
6
  const path_1 = tslib_1.__importDefault(require("path"));
7
7
  const uuid_1 = require("uuid");
8
+ const spinners_1 = tslib_1.__importDefault(require("../../helpers/spinners"));
8
9
  const compiler_utils_1 = require("../compiler.utils");
9
10
  class EventsCompiler {
10
- async compile(options) {
11
- const { projectRoot, previousEvents } = options;
12
- const userEventPaths = await (0, glob_1.glob)('events/*.js', {
13
- cwd: projectRoot,
14
- });
15
- if (!userEventPaths.length) {
16
- return [];
17
- }
18
- const eventsMap = {};
19
- for (const eventPath of userEventPaths) {
20
- const userDefinedEvent = (0, compiler_utils_1.requireSafe)(path_1.default.join(projectRoot, eventPath));
21
- if (eventsMap[userDefinedEvent.name]) {
22
- throw new Error(`Event with name "${userDefinedEvent.name}" is already defined.`);
11
+ compile(options) {
12
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
13
+ const { projectRoot, previousEvents } = options;
14
+ const userEventPaths = (yield (0, glob_1.glob)(path_1.default.join(projectRoot, 'events/*.js'))).map(compiler_utils_1.extractKeyFromPath);
15
+ if (!userEventPaths.length) {
16
+ return [];
23
17
  }
24
- const previousEvent = previousEvents.find((previousEvent) => previousEvent.name === userDefinedEvent.name);
25
- const userEvent = {
26
- id: (0, uuid_1.v4)(),
27
- sampleData: userDefinedEvent.schema,
28
- name: userDefinedEvent.name,
29
- };
30
- if (previousEvent) {
31
- userEvent.id = previousEvent.id;
18
+ spinners_1.default.add(`compile-event`, {
19
+ text: `building event`,
20
+ indent: 2,
21
+ });
22
+ const eventsMap = {};
23
+ for (const eventPath of userEventPaths) {
24
+ const userEvent = Object.assign(Object.assign({}, (0, compiler_utils_1.requireSafe)(eventPath)), { id: (0, uuid_1.v4)() });
25
+ if (eventsMap[userEvent.name]) {
26
+ throw new Error(`Event with name "${userEvent.name}" is already defined.`);
27
+ }
28
+ const previousEvent = previousEvents.find((previousEvent) => previousEvent.name === userEvent.name);
29
+ if (previousEvent) {
30
+ userEvent.id = previousEvent.id;
31
+ }
32
+ eventsMap[userEvent.name] = userEvent;
32
33
  }
33
- eventsMap[userEvent.name] = userEvent;
34
- }
35
- return Object.values(eventsMap);
34
+ spinners_1.default.succeed(`compile-event`, {
35
+ text: `built events`,
36
+ indent: 2,
37
+ });
38
+ return Object.values(eventsMap);
39
+ });
36
40
  }
37
41
  }
38
42
  exports.EventsCompiler = EventsCompiler;
@@ -1 +1 @@
1
- {"version":3,"file":"events.compiler.js","sourceRoot":"","sources":["../../../src/compiler/compilers/events.compiler.ts"],"names":[],"mappings":";;;;AAAA,+BAA4B;AAC5B,wDAAwB;AACxB,+BAA0B;AAK1B,sDAAgD;AAUhD,MAAa,cAAc;IAQzB,KAAK,CAAC,OAAO,CAAC,OAA4B;QACxC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;QAEhD,MAAM,cAAc,GAAa,MAAM,IAAA,WAAI,EAAC,aAAa,EAAE;YACzD,GAAG,EAAE,WAAW;SACjB,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;YAC3B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,SAAS,GAA2B,EAAE,CAAC;QAE7C,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;YACvC,MAAM,gBAAgB,GAAe,IAAA,4BAAW,EAC9C,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAClC,CAAC;YAEF,IAAI,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CACb,oBAAoB,gBAAgB,CAAC,IAAI,uBAAuB,CACjE,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAuB,cAAc,CAAC,IAAI,CAC3D,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI,CAChE,CAAC;YAEF,MAAM,SAAS,GAAW;gBACxB,EAAE,EAAE,IAAA,SAAE,GAAE;gBACR,UAAU,EAAE,gBAAgB,CAAC,MAAM;gBACnC,IAAI,EAAE,gBAAgB,CAAC,IAAI;aAC5B,CAAC;YAEF,IAAI,aAAa,EAAE,CAAC;gBAClB,SAAS,CAAC,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;YAClC,CAAC;YACD,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;QACxC,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;CACF;AAjDD,wCAiDC"}
1
+ {"version":3,"file":"events.compiler.js","sourceRoot":"","sources":["../../../src/compiler/compilers/events.compiler.ts"],"names":[],"mappings":";;;;AAAA,+BAA4B;AAC5B,wDAAwB;AACxB,+BAA0B;AAI1B,8EAA8C;AAE9C,sDAAoE;AAUpE,MAAa,cAAc;IAQnB,OAAO,CAAC,OAA4B;;YACxC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;YAEhD,MAAM,cAAc,GAAa,CAC/B,MAAM,IAAA,WAAI,EAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAClD,CAAC,GAAG,CAAC,mCAAkB,CAAC,CAAC;YAE1B,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;gBAC3B,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,kBAAQ,CAAC,GAAG,CAAC,eAAe,EAAE;gBAC5B,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE,CAAC;aACV,CAAC,CAAC;YAEH,MAAM,SAAS,GAA2B,EAAE,CAAC;YAE7C,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;gBACvC,MAAM,SAAS,mCAAgB,IAAA,4BAAW,EAAC,SAAS,CAAC,KAAE,EAAE,EAAE,IAAA,SAAE,GAAE,GAAE,CAAC;gBAElE,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CACb,oBAAoB,SAAS,CAAC,IAAI,uBAAuB,CAC1D,CAAC;gBACJ,CAAC;gBAED,MAAM,aAAa,GAAuB,cAAc,CAAC,IAAI,CAC3D,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CACzD,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBAClB,SAAS,CAAC,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBAClC,CAAC;gBACD,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;YACxC,CAAC;YAED,kBAAQ,CAAC,OAAO,CAAC,eAAe,EAAE;gBAChC,IAAI,EAAE,cAAc;gBACpB,MAAM,EAAE,CAAC;aACV,CAAC,CAAC;YACH,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;KAAA;CACF;AAnDD,wCAmDC"}