jitsu-cli 0.9.0 → 0.9.1

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 (60) hide show
  1. package/bin/jiu +3 -0
  2. package/lib/cli/cli.d.ts +1 -0
  3. package/lib/cli/cli.js +308 -0
  4. package/lib/cli/cli.js.map +1 -0
  5. package/lib/cli/config/index.d.ts +12 -0
  6. package/lib/cli/config/index.js +3 -0
  7. package/lib/cli/config/index.js.map +1 -0
  8. package/lib/cli/extension/build.d.ts +2 -1
  9. package/lib/cli/extension/build.js +19 -14
  10. package/lib/cli/extension/build.js.map +1 -0
  11. package/lib/cli/extension/create.d.ts +2 -1
  12. package/lib/cli/extension/create.js +13 -16
  13. package/lib/cli/extension/create.js.map +1 -0
  14. package/lib/cli/extension/exec.d.ts +6 -2
  15. package/lib/cli/extension/exec.js +98 -44
  16. package/lib/cli/extension/exec.js.map +1 -0
  17. package/lib/cli/extension/index.d.ts +0 -3
  18. package/lib/cli/extension/index.js +2 -83
  19. package/lib/cli/extension/index.js.map +1 -0
  20. package/lib/cli/extension/template.d.ts +1 -1
  21. package/lib/cli/extension/template.js +43 -40
  22. package/lib/cli/extension/template.js.map +1 -0
  23. package/lib/cli/extension/test.d.ts +2 -1
  24. package/lib/cli/extension/test.js +2 -1
  25. package/lib/cli/extension/test.js.map +1 -0
  26. package/lib/cli/extension/validate-config.d.ts +2 -1
  27. package/lib/cli/extension/validate-config.js +12 -12
  28. package/lib/cli/extension/validate-config.js.map +1 -0
  29. package/lib/cli/router.d.ts +24 -0
  30. package/lib/cli/router.js +135 -0
  31. package/lib/cli/router.js.map +1 -0
  32. package/lib/config-store.d.ts +16 -0
  33. package/lib/config-store.js +73 -0
  34. package/lib/config-store.js.map +1 -0
  35. package/lib/index.js +3 -3
  36. package/lib/index.js.map +1 -0
  37. package/lib/lib/chalk-code-highlight.js +1 -0
  38. package/lib/lib/chalk-code-highlight.js.map +1 -0
  39. package/lib/lib/command/index.js +4 -2
  40. package/lib/lib/command/index.js.map +1 -0
  41. package/lib/lib/errors.js +1 -0
  42. package/lib/lib/errors.js.map +1 -0
  43. package/lib/lib/indent.js +1 -0
  44. package/lib/lib/indent.js.map +1 -0
  45. package/lib/lib/log.js +1 -0
  46. package/lib/lib/log.js.map +1 -0
  47. package/lib/lib/template.js +1 -0
  48. package/lib/lib/template.js.map +1 -0
  49. package/lib/lib/validation.js +1 -0
  50. package/lib/lib/validation.js.map +1 -0
  51. package/lib/lib/version.js +1 -0
  52. package/lib/lib/version.js.map +1 -0
  53. package/lib/model/destination.json +123 -0
  54. package/lib/model/stream.json +44 -0
  55. package/lib/package.json +8 -4
  56. package/lib/tests.js +1 -0
  57. package/lib/tests.js.map +1 -0
  58. package/package.json +11 -7
  59. package/lib/run.d.ts +0 -1
  60. package/lib/run.js +0 -37
package/bin/jiu ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+
3
+ require("../lib/index.js");
@@ -0,0 +1 @@
1
+ export declare function cliEntryPoint(args: string[]): Promise<number>;
package/lib/cli/cli.js ADDED
@@ -0,0 +1,308 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cliEntryPoint = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const build_1 = require("./extension/build");
6
+ const router_1 = require("./router");
7
+ const create_1 = require("./extension/create");
8
+ const exec_1 = require("./extension/exec");
9
+ const test_1 = require("./extension/test");
10
+ const validate_config_1 = require("./extension/validate-config");
11
+ const chalk_1 = tslib_1.__importDefault(require("chalk"));
12
+ const log_1 = tslib_1.__importDefault(require("../lib/log"));
13
+ const destination_json_1 = tslib_1.__importDefault(require("../model/destination.json"));
14
+ const config_store_1 = require("../config-store");
15
+ const path_1 = tslib_1.__importDefault(require("path"));
16
+ const coreDestinations = {
17
+ postgres: "PostgresDestinationProperties",
18
+ bigquery: "BigQueryDestinationProperties",
19
+ };
20
+ const dirArg = {
21
+ name: ["dir", "d"],
22
+ value: "dir",
23
+ description: "Project root directory",
24
+ };
25
+ const fileOrObjectValue = "File or JSON object";
26
+ const configArg = {
27
+ name: ["config", "c"],
28
+ value: fileOrObjectValue,
29
+ description: "Extension configuration - either path to a file with config object, or inlined JSON.",
30
+ };
31
+ const serverArg = ({ required }) => ({
32
+ name: ["server", "s"],
33
+ description: [
34
+ "Comma-separated List of Jitsu servers as server1:8000,server2:8000. It's not necessary",
35
+ "to list all servers in the cluster. The client will connect to a random server from the list",
36
+ ].join("\n"),
37
+ required,
38
+ value: "list of jitsu servers",
39
+ });
40
+ const authArg = ({ required }) => ({
41
+ name: ["auth", "t"],
42
+ description: [`Jitsu cluster auth token. The token should be obtained with ${router_1.binName} cluster setup`].join("\n"),
43
+ required,
44
+ value: "auth token",
45
+ });
46
+ const projectId = {
47
+ name: ["project", "p"],
48
+ value: "Project ID",
49
+ description: "If you have access to multiple projects, you must specify project id",
50
+ };
51
+ const idArg = ({ subject }) => ({
52
+ name: ["id", "d"],
53
+ required: true,
54
+ description: `${subject} id`,
55
+ });
56
+ const notImplemented = (args) => {
57
+ console.log(`The command ${args._.join(" ")} is not implemented yet`);
58
+ return Promise.resolve({ success: true });
59
+ };
60
+ function argsFromSchema(schema, baseType, types) {
61
+ const baseProperties = schema.$defs[baseType].properties;
62
+ const options = {};
63
+ Object.entries(baseProperties).forEach(([name, schema]) => {
64
+ options[name] = {
65
+ schema,
66
+ appliedTo: [],
67
+ };
68
+ });
69
+ for (const [variantName, variantRef] of Object.entries(types)) {
70
+ const variantSchema = schema.$defs[variantRef].allOf[1].properties;
71
+ Object.entries(variantSchema).forEach(([name, schema]) => {
72
+ options[name] = {
73
+ schema,
74
+ appliedTo: [variantName, ...(options[name]?.appliedTo || [])],
75
+ };
76
+ });
77
+ }
78
+ return Object.entries(options).map(([name, opt]) => ({
79
+ name: [name],
80
+ value: "value",
81
+ description: (opt.appliedTo.length > 0 ? `(applies to ${opt.appliedTo.join(", ")} destinations) ` : "") +
82
+ (opt.schema.documentation || ""),
83
+ required: false,
84
+ }));
85
+ }
86
+ function requireArg(args, arg) {
87
+ if (!args[arg]) {
88
+ throw new Error(`Argument --${arg} is required`);
89
+ }
90
+ else {
91
+ return args[arg];
92
+ }
93
+ }
94
+ function without(obj, ...keys) {
95
+ const result = { ...obj };
96
+ for (const key of keys) {
97
+ delete result[key];
98
+ }
99
+ return result;
100
+ }
101
+ function entityManagementCommandSet(props) {
102
+ const { name, noun = name, schema, baseType, types } = props;
103
+ const dataPath = path_1.default.resolve("./.jitsu/configs/");
104
+ const storeFactory = (0, config_store_1.directoryBackedFactory)(dataPath);
105
+ return {
106
+ list: {
107
+ run: async (args) => {
108
+ const list = await storeFactory(requireArg(args, "project"), name).list();
109
+ if (list.length === 0) {
110
+ console.log(`${noun}s list is empty for this project`);
111
+ }
112
+ else {
113
+ console.table(list.map(item => ({ id: item.id, name: item?.name || "-" })));
114
+ }
115
+ return { success: true };
116
+ },
117
+ aliases: ["ls"],
118
+ description: `List all ${noun}s`,
119
+ args: [projectId, serverArg({ required: false }), authArg({ required: false })],
120
+ },
121
+ create: {
122
+ aliases: ["add"],
123
+ run: async (args) => {
124
+ const store = await storeFactory(requireArg(args, "project"), name);
125
+ const obj = without(args, "_", "project", "id", "format");
126
+ const created = await store.create(obj);
127
+ console.log(args.format === "short" ? created.id : `${noun} ${created.id} created: ${JSON.stringify(created)}`);
128
+ return { success: true };
129
+ },
130
+ showHelpOnNoArgs: true,
131
+ description: `Add ${noun} to jitsu config`,
132
+ args: [
133
+ projectId,
134
+ serverArg({ required: false }),
135
+ authArg({ required: false }),
136
+ ...argsFromSchema(schema, baseType, types),
137
+ ],
138
+ },
139
+ update: {
140
+ run: async (args) => {
141
+ const store = await storeFactory(requireArg(args, "project"), name);
142
+ const obj = without(args, "_", "project", "id", "format");
143
+ const id = requireArg(args, "id");
144
+ const updated = await store.patch(id, obj);
145
+ if (args.format !== "short") {
146
+ console.log(`${noun} ${id} updated: ${JSON.stringify(updated)}`);
147
+ }
148
+ return { success: true };
149
+ },
150
+ showHelpOnNoArgs: true,
151
+ description: `Update ${noun}`,
152
+ args: [projectId, idArg({ subject: name }), serverArg({ required: false }), authArg({ required: false })],
153
+ },
154
+ describe: {
155
+ run: async (args) => {
156
+ const store = await storeFactory(requireArg(args, "project"), name);
157
+ const id = requireArg(args, "id");
158
+ const obj = await store.get(id);
159
+ if (!obj) {
160
+ return { success: false, message: `${noun} ${id} not found` };
161
+ }
162
+ else {
163
+ console.log(JSON.stringify(obj, null, 2));
164
+ return { success: true };
165
+ }
166
+ },
167
+ showHelpOnNoArgs: true,
168
+ description: `Describe ${noun} objec`,
169
+ args: [projectId, idArg({ subject: name }), serverArg({ required: false }), authArg({ required: false })],
170
+ },
171
+ delete: {
172
+ run: async (args) => {
173
+ const store = await storeFactory(requireArg(args, "project"), name);
174
+ const id = requireArg(args, "id");
175
+ const updated = await store.remove(id);
176
+ if (args.format !== "short") {
177
+ console.log(`${noun} ${id} removed: ${JSON.stringify(updated)}`);
178
+ }
179
+ return { success: true };
180
+ },
181
+ showHelpOnNoArgs: true,
182
+ description: `Delete ${noun}`,
183
+ args: [projectId, idArg({ subject: name }), serverArg({ required: false }), authArg({ required: false })],
184
+ },
185
+ };
186
+ }
187
+ const commands = {
188
+ cluster: {
189
+ setup: {
190
+ run: notImplemented,
191
+ showHelpOnNoArgs: true,
192
+ description: "Setup jitsu cluster",
193
+ args: [serverArg({ required: true }), authArg({ required: true })],
194
+ },
195
+ login: {
196
+ run: notImplemented,
197
+ showHelpOnNoArgs: true,
198
+ description: "Login to local jitsu cluster",
199
+ args: [serverArg({ required: true }), authArg({ required: true })],
200
+ },
201
+ logout: {
202
+ run: notImplemented,
203
+ description: "Logout from Jitsu cluster",
204
+ },
205
+ },
206
+ config: {
207
+ projects: {
208
+ list: {
209
+ run: notImplemented,
210
+ description: "Login to local jitsu cluster",
211
+ args: [serverArg({ required: false }), authArg({ required: false })],
212
+ },
213
+ },
214
+ destination: entityManagementCommandSet({
215
+ name: "destination",
216
+ schema: destination_json_1.default,
217
+ baseType: "BaseDestinationProperties",
218
+ types: coreDestinations,
219
+ }),
220
+ },
221
+ extension: {
222
+ $commandGroupDescription: "commands for creating, building and testing Jitsu extensions",
223
+ build: {
224
+ run: build_1.build,
225
+ description: "Build the jitsu extension project",
226
+ args: [dirArg],
227
+ },
228
+ create: {
229
+ run: create_1.create,
230
+ description: "Create new extension",
231
+ args: [
232
+ dirArg,
233
+ { name: ["name", "n"], description: "Name of a project", value: "name" },
234
+ { name: ["type", "t"], description: "Type of the project", value: "destination or source", required: false },
235
+ {
236
+ name: ["jitsu-version", "j"],
237
+ description: "Version of a Jitsu SDK. The latest version by default. Use with caution!",
238
+ value: "version",
239
+ required: false,
240
+ },
241
+ ],
242
+ },
243
+ exec: {
244
+ run: exec_1.exec,
245
+ description: "Execute jitsu extension",
246
+ showHelpOnNoArgs: true,
247
+ args: [
248
+ dirArg,
249
+ configArg,
250
+ {
251
+ name: ["stream", "s"],
252
+ value: fileOrObjectValue,
253
+ description: "Only for sources: Stream configuration as an object",
254
+ required: false,
255
+ },
256
+ {
257
+ name: ["state", "t"],
258
+ value: fileOrObjectValue,
259
+ description: "Only for sources: Saved state object to file",
260
+ required: false,
261
+ },
262
+ {
263
+ name: ["file", "f"],
264
+ value: "file",
265
+ description: "Only for destinations: path to file with jitsu events. File can contain either array of objects, or just one object",
266
+ required: false,
267
+ },
268
+ {
269
+ name: ["json", "j"],
270
+ value: "JSON object",
271
+ description: "Only for destinations: events JSON for processing (alternative to -f). Could be one object, or array of objects",
272
+ required: false,
273
+ },
274
+ { name: ["skip-validation", "v"], description: "Only for destinations: skip validation", required: false },
275
+ ],
276
+ aliases: "exec-src",
277
+ },
278
+ test: {
279
+ run: test_1.test,
280
+ description: "Execute tests on jitsu extension",
281
+ args: [dirArg],
282
+ },
283
+ validate: {
284
+ run: validate_config_1.validateConfig,
285
+ showHelpOnNoArgs: true,
286
+ description: "Validates the configuration of the extension",
287
+ args: [dirArg, configArg],
288
+ aliases: "validate-config",
289
+ },
290
+ },
291
+ };
292
+ async function cliEntryPoint(args) {
293
+ const result = await (0, router_1.route)(commands, args);
294
+ if (result.success) {
295
+ (0, log_1.default)().info("✨ Done");
296
+ return 0;
297
+ }
298
+ else {
299
+ process.stderr.write(chalk_1.default.red("Error!") + " - " + result.message + "\n");
300
+ process.stderr.write(`Run ${chalk_1.default.bold(router_1.binName + " help")} for more info.\n`);
301
+ if (result.details) {
302
+ process.stderr.write(`\n${result.details}\n`);
303
+ }
304
+ return 1;
305
+ }
306
+ }
307
+ exports.cliEntryPoint = cliEntryPoint;
308
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/cli/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export declare type ConfigStore = {
2
+ create: <T>(storeName: string, projectId: string, obj: T) => Promise<T & {
3
+ id: string;
4
+ }>;
5
+ update: <T>(storeName: string, projectId: string, id: string, obj: Partial<T>) => Promise<T & {
6
+ id: string;
7
+ }>;
8
+ delete: (storeName: string, projectId: string, id: string) => Promise<any>;
9
+ get: (storeName: string, projectId: string) => Promise<(any & {
10
+ id: string;
11
+ })[]>;
12
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/config/index.ts"],"names":[],"mappings":""}
@@ -1,2 +1,3 @@
1
1
  import { CommandResult } from "../../lib/command/types";
2
- export declare function build(args: string[]): Promise<CommandResult>;
2
+ import minimist from "minimist";
3
+ export declare function build(args: minimist.ParsedArgs): Promise<CommandResult>;
@@ -38,8 +38,8 @@ function insertStreamReaderFacade(targetFile) {
38
38
  };
39
39
  }
40
40
  async function build(args) {
41
- const directory = args?.[0] || "";
42
- let projectBase = path_1.default.isAbsolute(directory) ? directory : path_1.default.resolve(process.cwd() + "/" + directory);
41
+ const directory = args.dir || args.d || "";
42
+ const projectBase = path_1.default.isAbsolute(directory) ? directory : path_1.default.resolve(process.cwd() + "/" + directory);
43
43
  (0, log_1.default)().info("🔨 Building project in " + chalk_1.default.bold(projectBase) + ` with ${version_1.jitsuPackageName}@${version_1.jitsuCliVersion} `);
44
44
  if (!fs_1.default.existsSync(projectBase)) {
45
45
  throw new Error(`Path ${projectBase} does not exist`);
@@ -76,16 +76,23 @@ async function build(args) {
76
76
  if (!fs_1.default.existsSync(indexFile)) {
77
77
  return { success: false, message: `Project should have src/index.ts file. Can't find it at ${indexFile}` };
78
78
  }
79
+ const rollupPlugins = [
80
+ typescriptEnabled && (0, rollup_plugin_typescript2_1.default)({ cwd: projectBase }),
81
+ (0, plugin_multi_entry_1.default)(),
82
+ (0, plugin_node_resolve_1.default)({ preferBuiltins: false }),
83
+ (0, plugin_commonjs_1.default)(),
84
+ (0, plugin_json_1.default)(),
85
+ ];
86
+ const outro = [
87
+ `exports.buildInfo = {sdkVersion: "${version_1.jitsuCliVersion}", sdkPackage: "${version_1.jitsuPackageName}", buildTimestamp: "${new Date().toISOString()}"};`,
88
+ ];
89
+ if (packageJson.keywords?.includes("jitsu-source-extension")) {
90
+ rollupPlugins.push(insertStreamReaderFacade(indexFile));
91
+ outro.push(`exports.streamReader$StdoutFacade = exports.streamReader && __$srcLib.stdoutStreamReader(exports.streamReader);`);
92
+ }
79
93
  const bundle = await (0, rollup_1.rollup)({
80
94
  input: [indexFile],
81
- plugins: [
82
- typescriptEnabled && (0, rollup_plugin_typescript2_1.default)({ cwd: projectBase }),
83
- insertStreamReaderFacade(indexFile),
84
- (0, plugin_multi_entry_1.default)(),
85
- (0, plugin_node_resolve_1.default)({ preferBuiltins: false }),
86
- (0, plugin_commonjs_1.default)(),
87
- (0, plugin_json_1.default)(),
88
- ],
95
+ plugins: rollupPlugins,
89
96
  });
90
97
  let format = "cjs";
91
98
  let output = await bundle.generate({
@@ -93,10 +100,7 @@ async function build(args) {
93
100
  format: format,
94
101
  exports: "named",
95
102
  banner: `//format=${format}`,
96
- outro: [
97
- `exports.buildInfo = {sdkVersion: "${version_1.jitsuCliVersion}", sdkPackage: "${version_1.jitsuPackageName}", buildTimestamp: "${new Date().toISOString()}"};`,
98
- `exports.streamReader$StdoutFacade = exports.streamReader && __$srcLib.stdoutStreamReader(exports.streamReader);`,
99
- ].join("\n"),
103
+ outro: outro.join("\n"),
100
104
  });
101
105
  let code = fixNodeFetch(output.output[0].code);
102
106
  fs_1.default.mkdirSync(path_1.default.dirname(fullOutputPath), { recursive: true });
@@ -135,3 +139,4 @@ async function build(args) {
135
139
  return { success: true };
136
140
  }
137
141
  exports.build = build;
142
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../src/cli/extension/build.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  import { CommandResult } from "../../lib/command/types";
2
- export declare function create(args: string[]): Promise<CommandResult>;
2
+ import type minimist from "minimist";
3
+ export declare function create(args: minimist.ParsedArgs): Promise<CommandResult>;
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.create = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const commander_1 = tslib_1.__importDefault(require("commander"));
6
5
  const validate_npm_package_name_1 = tslib_1.__importDefault(require("validate-npm-package-name"));
7
6
  const inquirer_1 = tslib_1.__importDefault(require("inquirer"));
8
7
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
@@ -12,20 +11,17 @@ const log_1 = tslib_1.__importDefault(require("../../lib/log"));
12
11
  const template_1 = require("../../lib/template");
13
12
  const template_2 = require("./template");
14
13
  async function create(args) {
15
- const program = new commander_1.default.Command();
16
- program.option("-t, --type <project type>", "project type (destination or source)");
17
- program.option("-d, --dir <project_dir>", "project dir");
18
- program.option("-n, --name <project_name>", "project name");
19
- program.option("-j, --jitsu-version <jitsu_version>", "Jitsu version");
20
- program.parse(["dummy", "dummy", ...args]);
21
- let cliOpts = program.opts();
22
- if (cliOpts.name) {
23
- let isValid = (0, validate_npm_package_name_1.default)(cliOpts.name);
14
+ const dir = args.dir || args.d;
15
+ const jitsuVersion = args["jitsu-version"] || args.j;
16
+ const name = args.name || args.n;
17
+ const type = args.type || args.t;
18
+ if (name) {
19
+ let isValid = (0, validate_npm_package_name_1.default)(name);
24
20
  if (!isValid.validForNewPackages) {
25
- return { success: false, message: `Can't use ${cliOpts.name} as package name: ${isValid.errors}` };
21
+ return { success: false, message: `Can't use ${name} as package name: ${isValid.errors}` };
26
22
  }
27
23
  }
28
- let packageType = cliOpts.type ||
24
+ let packageType = type ||
29
25
  (await inquirer_1.default.prompt([
30
26
  {
31
27
  type: "list",
@@ -35,10 +31,10 @@ async function create(args) {
35
31
  ` ${chalk_1.default.bold("destination")} adds a new type of HTTP-based destination to Jitsu`,
36
32
  ` ${chalk_1.default.bold("source")} adds a new source extension to Jitsu`,
37
33
  ].join("\n"),
38
- choices: ["destination", "source"],
34
+ choices: ["destination", "source", "transform"],
39
35
  },
40
36
  ])).package;
41
- let packageName = cliOpts.name ||
37
+ let packageName = name ||
42
38
  (await inquirer_1.default.prompt([
43
39
  {
44
40
  type: "input",
@@ -53,7 +49,7 @@ async function create(args) {
53
49
  },
54
50
  },
55
51
  ])).package;
56
- let projectDir = cliOpts.dir ||
52
+ let projectDir = dir ||
57
53
  (await inquirer_1.default.prompt([
58
54
  {
59
55
  type: "input",
@@ -84,9 +80,10 @@ async function create(args) {
84
80
  }
85
81
  (0, template_1.write)(projectDir, template_2.extensionProjectTemplate, {
86
82
  packageName: packageName,
87
- jitsuVersion: cliOpts.jitsuVersion,
83
+ jitsuVersion: jitsuVersion,
88
84
  type: packageType,
89
85
  });
90
86
  return { success: true };
91
87
  }
92
88
  exports.create = create;
89
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/cli/extension/create.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,7 @@
1
1
  import { CommandResult } from "../../lib/command/types";
2
- export declare function execSourceExtension(args: string[]): Promise<CommandResult>;
3
- export declare function execDestinationExtension(args: string[]): Promise<CommandResult>;
2
+ import { JitsuExtensionExport } from "@jitsu/types/extension";
3
+ import minimist from "minimist";
4
+ export declare function execSourceExtension(args: minimist.ParsedArgs, extension: Partial<JitsuExtensionExport>): Promise<CommandResult>;
5
+ export declare function exec(args: minimist.ParsedArgs): Promise<CommandResult>;
6
+ export declare function execDestinationExtension(args: minimist.ParsedArgs, extension: Partial<JitsuExtensionExport>, projectBase: string): Promise<CommandResult>;
7
+ export declare function execTransformExtension(args: minimist.ParsedArgs, extension: Partial<JitsuExtensionExport>, projectBase: string): Promise<CommandResult>;