@botpress/cli 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/build.ts +12 -0
  2. package/dist/app/api-utils.js +105 -0
  3. package/dist/app/base.js +35 -0
  4. package/dist/app/cache.js +95 -0
  5. package/dist/app/errors.js +145 -0
  6. package/dist/app/esbuild.js +89 -0
  7. package/dist/app/generator/action.js +76 -0
  8. package/dist/app/generator/channel.js +51 -0
  9. package/dist/app/generator/configuration.js +40 -0
  10. package/dist/app/generator/const.js +31 -0
  11. package/dist/app/generator/event.js +47 -0
  12. package/dist/app/generator/index.js +83 -0
  13. package/dist/app/generator/integration-impl.js +147 -0
  14. package/dist/app/generator/integration-instance.js +85 -0
  15. package/dist/app/generator/message.js +47 -0
  16. package/dist/app/generator/module.js +115 -0
  17. package/dist/app/generator/strings.js +38 -0
  18. package/dist/app/generator/typings.js +16 -0
  19. package/dist/app/index.js +68 -0
  20. package/dist/app/integration-ref.js +61 -0
  21. package/dist/app/project.js +502 -0
  22. package/dist/app/typings.js +16 -0
  23. package/dist/app/user.js +198 -0
  24. package/dist/config.js +245 -0
  25. package/dist/const.js +87 -0
  26. package/dist/index.js +276 -0
  27. package/dist/index.js.map +7 -0
  28. package/dist/init.js +45 -0
  29. package/dist/init.js.map +7 -0
  30. package/dist/logger/base-logger.js +159 -0
  31. package/dist/logger/index.js +79 -0
  32. package/dist/paths.js +69 -0
  33. package/dist/requires.js +49 -0
  34. package/dist/type-utils.js +16 -0
  35. package/dist/worker/child-entrypoint.js +61 -0
  36. package/dist/worker/config.js +58 -0
  37. package/dist/worker/index.js +55 -0
  38. package/dist/worker/is-child.js +52 -0
  39. package/dist/worker/listen-child.js +89 -0
  40. package/init.js +1 -0
  41. package/package.json +54 -0
  42. package/readme.md +24 -0
package/dist/index.js ADDED
@@ -0,0 +1,276 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") {
10
+ for (let key of __getOwnPropNames(from))
11
+ if (!__hasOwnProp.call(to, key) && key !== except)
12
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ }
14
+ return to;
15
+ };
16
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
17
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
18
+ mod
19
+ ));
20
+ var import_yargs_extra = __toESM(require("@bpinternal/yargs-extra"));
21
+ var import_process = require("process");
22
+ var app = __toESM(require("./app"));
23
+ var config = __toESM(require("./config"));
24
+ var import_logger = require("./logger");
25
+ const { version } = require("../package.json");
26
+ const errorLogger = new import_logger.Logger();
27
+ const logError = (thrown) => {
28
+ const error = app.errors.mapThrown(thrown);
29
+ errorLogger.error(error.message);
30
+ };
31
+ const onError = (thrown) => {
32
+ logError(thrown);
33
+ (0, import_process.exit)(1);
34
+ };
35
+ const yargsFail = (msg) => {
36
+ logError(`${msg}
37
+ `);
38
+ import_yargs_extra.default.showHelp();
39
+ (0, import_process.exit)(1);
40
+ };
41
+ process.on("uncaughtException", (thrown) => onError(thrown));
42
+ process.on("unhandledRejection", (thrown) => onError(thrown));
43
+ const parseArguments = (schema, argv) => {
44
+ const yargsEnv = (0, import_yargs_extra.parseEnv)(schema, "BP");
45
+ return (0, import_yargs_extra.cleanupConfig)(schema, { ...argv, ...yargsEnv });
46
+ };
47
+ import_yargs_extra.default.command(
48
+ "login",
49
+ "Login to Botpress Cloud",
50
+ () => import_yargs_extra.default.options(config.loginSchema),
51
+ async (argv) => {
52
+ try {
53
+ const parsed = parseArguments(config.loginSchema, argv);
54
+ const commands = await app.forUser({ ...parsed, version });
55
+ await commands.login(parsed);
56
+ commands.teardown();
57
+ } catch (e) {
58
+ onError(e);
59
+ }
60
+ }
61
+ ).command(
62
+ "logout",
63
+ "Logout of Botpress Cloud",
64
+ () => import_yargs_extra.default.options(config.logoutSchema),
65
+ async (argv) => {
66
+ try {
67
+ const parsed = parseArguments(config.logoutSchema, argv);
68
+ const commands = await app.forUser({ ...parsed, version });
69
+ await commands.logout();
70
+ commands.teardown();
71
+ } catch (e) {
72
+ onError(e);
73
+ }
74
+ }
75
+ ).command("bots", "bots related commands", (yargz) => {
76
+ yargz.command(
77
+ ["create", "new"],
78
+ "Create new bot",
79
+ () => yargz.options({ ...config.createBotSchema }),
80
+ async (argv) => {
81
+ try {
82
+ const parsed = parseArguments(config.createBotSchema, argv);
83
+ const commands = await app.forUser({ ...parsed, version });
84
+ await commands.createBot(parsed);
85
+ commands.teardown();
86
+ } catch (e) {
87
+ onError(e);
88
+ }
89
+ }
90
+ ).command(
91
+ ["list", "ls"],
92
+ "List bots",
93
+ () => yargz.options({ ...config.listBotsSchema }),
94
+ async (argv) => {
95
+ try {
96
+ const parsed = parseArguments(config.listBotsSchema, argv);
97
+ const commands = await app.forUser({ ...parsed, version });
98
+ await commands.listBots(parsed);
99
+ commands.teardown();
100
+ } catch (e) {
101
+ onError(e);
102
+ }
103
+ }
104
+ ).command(
105
+ "get <botRef>",
106
+ "Get bot",
107
+ () => yargz.positional("botRef", config.botRef).options({ ...config.readBotSchema }),
108
+ async (argv) => {
109
+ try {
110
+ const parsed = parseArguments(config.readBotSchema, argv);
111
+ const commands = await app.forUser({ ...parsed, version });
112
+ await commands.getBot(argv.botRef, parsed);
113
+ commands.teardown();
114
+ } catch (e) {
115
+ onError(e);
116
+ }
117
+ }
118
+ ).command(
119
+ ["delete <botRef>", "rm <botRef>"],
120
+ "Delete bot",
121
+ () => yargz.positional("botRef", config.botRef).options({ ...config.deleteBotSchema }),
122
+ async (argv) => {
123
+ try {
124
+ const parsed = parseArguments(config.deleteBotSchema, argv);
125
+ const commands = await app.forUser({ ...parsed, version });
126
+ await commands.deleteBot(argv.botRef, parsed);
127
+ commands.teardown();
128
+ } catch (e) {
129
+ onError(e);
130
+ }
131
+ }
132
+ );
133
+ }).command("integrations", "integrations related commands", (yargz) => {
134
+ yargz.command(
135
+ ["list", "ls"],
136
+ "List integrations",
137
+ () => yargz.options({ ...config.listIntegrationsSchema }),
138
+ async (argv) => {
139
+ try {
140
+ const parsed = parseArguments(config.listIntegrationsSchema, argv);
141
+ const commands = await app.forUser({ ...parsed, version });
142
+ await commands.listIntegrations(parsed);
143
+ commands.teardown();
144
+ } catch (e) {
145
+ onError(e);
146
+ }
147
+ }
148
+ ).command(
149
+ "get <integrationRef>",
150
+ "Get integration",
151
+ () => yargz.positional("integrationRef", config.integrationRef).options({ ...config.readIntegrationSchema }),
152
+ async (argv) => {
153
+ try {
154
+ const parsed = parseArguments(config.readIntegrationSchema, argv);
155
+ const commands = await app.forUser({ ...parsed, version });
156
+ await commands.getIntegration(argv.integrationRef, parsed);
157
+ commands.teardown();
158
+ } catch (e) {
159
+ onError(e);
160
+ }
161
+ }
162
+ ).command(
163
+ ["delete <integrationRef>", "rm <integrationRef>"],
164
+ "Delete integration",
165
+ () => yargz.positional("integrationRef", config.integrationRef).options({ ...config.deleteIntegrationSchema }),
166
+ async (argv) => {
167
+ try {
168
+ const parsed = parseArguments(config.readIntegrationSchema, argv);
169
+ const commands = await app.forUser({ ...parsed, version });
170
+ await commands.deleteIntegration(argv.integrationRef, parsed);
171
+ commands.teardown();
172
+ } catch (e) {
173
+ onError(e);
174
+ }
175
+ }
176
+ );
177
+ }).command(
178
+ "bundle",
179
+ "Bundle a botpress project",
180
+ () => import_yargs_extra.default.options(config.bundleSchema),
181
+ async (argv) => {
182
+ try {
183
+ const parsed = parseArguments(config.bundleSchema, argv);
184
+ const commands = await app.forProject({ ...parsed, version });
185
+ await commands.bundleProject(parsed);
186
+ commands.teardown();
187
+ } catch (e) {
188
+ onError(e);
189
+ }
190
+ }
191
+ ).command(
192
+ "gen",
193
+ "Generate typings for intellisense during development",
194
+ () => import_yargs_extra.default.options(config.generateSchema),
195
+ async (argv) => {
196
+ try {
197
+ const parsed = parseArguments(config.generateSchema, argv);
198
+ const commands = await app.forProject({ ...parsed, version });
199
+ await commands.generateTypings(parsed);
200
+ commands.teardown();
201
+ } catch (e) {
202
+ onError(e);
203
+ }
204
+ }
205
+ ).command(
206
+ "build",
207
+ "Generate typings and bundle a botpress project",
208
+ () => import_yargs_extra.default.options(config.buildSchema),
209
+ async (argv) => {
210
+ try {
211
+ const parsed = parseArguments(config.buildSchema, argv);
212
+ const commands = await app.forProject({ ...parsed, version });
213
+ await commands.buildProject(parsed);
214
+ commands.teardown();
215
+ } catch (e) {
216
+ onError(e);
217
+ }
218
+ }
219
+ ).command(
220
+ "serve",
221
+ "Serve your project locally",
222
+ () => import_yargs_extra.default.options(config.serveSchema),
223
+ async (argv) => {
224
+ try {
225
+ const parsed = parseArguments(config.serveSchema, argv);
226
+ const commands = await app.forProject({ ...parsed, version });
227
+ await commands.serveProject(parsed);
228
+ commands.teardown();
229
+ } catch (e) {
230
+ onError(e);
231
+ }
232
+ }
233
+ ).command(
234
+ "deploy",
235
+ "Deploy your project",
236
+ () => import_yargs_extra.default.options(config.deploySchema),
237
+ async (argv) => {
238
+ try {
239
+ const parsed = parseArguments(config.deploySchema, argv);
240
+ const commands = await app.forProject({ ...parsed, version });
241
+ await commands.deployProject(parsed);
242
+ commands.teardown();
243
+ } catch (e) {
244
+ onError(e);
245
+ }
246
+ }
247
+ ).command(
248
+ "dev",
249
+ "Run your project in dev mode",
250
+ () => import_yargs_extra.default.options(config.devSchema),
251
+ async (argv) => {
252
+ try {
253
+ const parsed = parseArguments(config.devSchema, argv);
254
+ const commands = await app.forProject({ ...parsed, version });
255
+ await commands.devProject(parsed);
256
+ commands.teardown();
257
+ } catch (e) {
258
+ onError(e);
259
+ }
260
+ }
261
+ ).command(
262
+ "add <integrationRef>",
263
+ "Install an integration in your bot",
264
+ (yargz) => yargz.positional("integrationRef", config.integrationRef).options(config.addSchema),
265
+ async (argv) => {
266
+ try {
267
+ const parsed = parseArguments(config.addSchema, argv);
268
+ const commands = await app.forProject({ ...parsed, version });
269
+ await commands.installIntegration(argv.integrationRef, parsed);
270
+ commands.teardown();
271
+ } catch (e) {
272
+ onError(e);
273
+ }
274
+ }
275
+ );
276
+ void import_yargs_extra.default.version(false).scriptName("bp").demandCommand(1, "You didn't provide any command. Use the --help flag to see the list of available commands.").recommendCommands().strict().help().fail(yargsFail).parse();