@betty-blocks/cli 25.25.0 → 25.26.0

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.
@@ -8,6 +8,6 @@ const sayHello = async ({ name }) => {
8
8
  greet: join(['Hello', name], ', ')
9
9
  };
10
10
  }
11
- }
11
+ };
12
12
 
13
13
  export default sayHello;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ /* npm dependencies */
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 path_1 = __importDefault(require("path"));
8
+ const commander_1 = __importDefault(require("commander"));
9
+ /* internal dependencies */
10
+ const versions_1 = require("./functions/versions");
11
+ /* process arguments */
12
+ commander_1.default.name('bb functions autoversion').parse(process.argv);
13
+ /* execute command */
14
+ // eslint-disable-next-line no-void
15
+ void (() => {
16
+ const functionsPath = path_1.default.join(process.cwd(), 'functions');
17
+ versions_1.migrate(functionsPath, true);
18
+ })();
19
+ //# sourceMappingURL=bb-functions-autoversion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bb-functions-autoversion.js","sourceRoot":"","sources":["../src/bb-functions-autoversion.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;;AAEtB,gDAAwB;AACxB,0DAAgC;AAEhC,2BAA2B;AAE3B,mDAA+C;AAE/C,uBAAuB;AACvB,mBAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAE7D,qBAAqB;AAErB,mCAAmC;AACnC,KAAK,CAAC,GAAS,EAAE;IACf,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;IAC5D,kBAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC,CAAC,EAAE,CAAC"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const path_1 = __importDefault(require("path"));
16
+ const fs_extra_1 = __importDefault(require("fs-extra"));
17
+ const commander_1 = __importDefault(require("commander"));
18
+ const prompts_1 = __importDefault(require("prompts"));
19
+ const chalk_1 = __importDefault(require("chalk"));
20
+ const functionDefinitions_1 = require("./functions/functionDefinitions");
21
+ commander_1.default.name('bb functions bump');
22
+ const check = chalk_1.default.green(`✔`);
23
+ const cross = chalk_1.default.red(`✖`);
24
+ const workingDir = process.cwd();
25
+ const baseFunctionsPath = path_1.default.join(workingDir, 'functions');
26
+ const collectBumpInput = () => __awaiter(void 0, void 0, void 0, function* () {
27
+ const functionDir = (functionPath) => path_1.default.basename(path_1.default.dirname(path_1.default.dirname(functionPath)));
28
+ const versionedFunctions = functionDefinitions_1.functionDefinitions(baseFunctionsPath);
29
+ const functions = versionedFunctions.reduce((acc, { schema: { label }, path: functionPath }) => {
30
+ const name = functionDir(functionPath);
31
+ acc[name] = label;
32
+ return acc;
33
+ }, {});
34
+ const dirName = (yield prompts_1.default({
35
+ type: 'select',
36
+ name: 'functionName',
37
+ message: 'Which function do you want to bump?',
38
+ choices: Object.keys(functions).map((name) => ({
39
+ title: functions[name],
40
+ value: name,
41
+ })),
42
+ initial: 0,
43
+ })).functionName;
44
+ const [[major, minor]] = versionedFunctions
45
+ .filter(({ path: functionPath }) => functionDir(functionPath) === dirName)
46
+ .sort(({ version: a }, { version: b }) => parseFloat(a) - parseFloat(b))
47
+ .slice(-1)
48
+ .map(({ version }) => version.split('.').map(Number));
49
+ const majorVersion = `${major + 1}.0`;
50
+ const minorVersion = `${major}.${minor + 1}`;
51
+ const { bumpMajor } = (yield prompts_1.default({
52
+ type: 'toggle',
53
+ name: 'bumpMajor',
54
+ message: `To which version do you want to bump your function?`,
55
+ initial: false,
56
+ active: majorVersion,
57
+ inactive: minorVersion,
58
+ }));
59
+ return {
60
+ newVersion: bumpMajor ? majorVersion : minorVersion,
61
+ currentVersion: `${major}.${minor}`,
62
+ dirName,
63
+ };
64
+ });
65
+ // eslint-disable-next-line no-void
66
+ void (() => __awaiter(void 0, void 0, void 0, function* () {
67
+ const { dirName, newVersion, currentVersion } = yield collectBumpInput();
68
+ const sourceDir = path_1.default.join(workingDir, 'functions', dirName, currentVersion);
69
+ const targetDir = path_1.default.join(workingDir, 'functions', dirName, newVersion);
70
+ try {
71
+ fs_extra_1.default.copySync(sourceDir, targetDir);
72
+ console.log(`${check} Version bumped to ${path_1.default.join(dirName, newVersion)}`);
73
+ }
74
+ catch (_a) {
75
+ console.log(`${cross} Failed to bump version to ${path_1.default.join(dirName, newVersion)}`);
76
+ }
77
+ }))();
78
+ //# sourceMappingURL=bb-functions-bump.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bb-functions-bump.js","sourceRoot":"","sources":["../src/bb-functions-bump.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ const chalk_1 = __importDefault(require("chalk"));
19
19
  const path_1 = __importDefault(require("path"));
20
20
  const commander_1 = __importDefault(require("commander"));
21
21
  /* internal dependencies */
22
+ const functionDefinitions_1 = require("./functions/functionDefinitions");
22
23
  const publishAppFunctions_1 = __importDefault(require("./functions/publishAppFunctions"));
23
24
  const publishCustomFunctions_1 = __importDefault(require("./functions/publishCustomFunctions"));
24
25
  const validations_1 = require("./functions/validations");
@@ -58,7 +59,12 @@ void (() => __awaiter(void 0, void 0, void 0, function* () {
58
59
  yield publishAppFunctions_1.default({ skipCompile });
59
60
  }
60
61
  else {
61
- console.log(`${chalk_1.default.red(`✖`)} Could not publish. Please make sure all functions are valid.`);
62
+ const baseFunctionsPath = path_1.default.join(workingDir, 'functions');
63
+ const allFunctions = functionDefinitions_1.functionDefinitions(baseFunctionsPath, true);
64
+ const versionedFunctions = functionDefinitions_1.functionDefinitions(baseFunctionsPath);
65
+ if (allFunctions.length !== versionedFunctions.length) {
66
+ console.log(`Maybe auto-version your functions without a version number using ${chalk_1.default.cyan('bb functions autoversion')}?`);
67
+ }
62
68
  }
63
69
  }
64
70
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"bb-functions-publish.js","sourceRoot":"","sources":["../src/bb-functions-publish.ts"],"names":[],"mappings":";AAAA,4GAA4G;AAC5G,sBAAsB;;;;;;;;;;;;;;AAEtB,wDAA0B;AAC1B,kDAA0B;AAC1B,gDAAwB;AACxB,0DAAgC;AAEhC,2BAA2B;AAE3B,0FAAkE;AAClE,gGAAwE;AACxE,yDAGiC;AACjC,gEAAwC;AAExC,uBAAuB;AAEvB,mBAAO;KACJ,IAAI,CAAC,sBAAsB,CAAC;KAC5B,MAAM,CAAC,YAAY,EAAE,2BAA2B,CAAC;KACjD,MAAM,CAAC,YAAY,EAAE,4CAA4C,CAAC;KAClE,MAAM,CAAC,gBAAgB,EAAE,0CAA0C,CAAC;KACpE,MAAM,CACL,mBAAmB,EACnB,sEAAsE,CACvE;KACA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAEvB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,mBAAO,CAAC;AAElD,qBAAqB;AAErB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAEjC,MAAM,iBAAiB,GAAG,GAA2B,EAAE;IACrD,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,2BAA2B,iBAAiB,EAAE,CAAC,CAAC;IAE5D,MAAM,MAAM,GAAG,IAAI,gBAAM,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,IAAI,+BAAiB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACnE,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAEpD,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACzB,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE;YAC7B,KAAK,GAAG,KAAK,CAAC;SACf;QACD,iCAAmB,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC,CAAA,CAAC;AAEF,mCAAmC;AACnC,KAAK,CAAC,GAAwB,EAAE;IAC9B,IAAI,kBAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,EAAE;QAC1D,MAAM,KAAK,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAExC,IAAI,KAAK,EAAE;YACT,MAAM,6BAAmB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;SAC5C;aAAM;YACL,OAAO,CAAC,GAAG,CACT,GAAG,eAAK,CAAC,GAAG,CACV,GAAG,CACJ,+DAA+D,CACjE,CAAC;SACH;KACF;SAAM;QACL,gCAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;KAC1C;AACH,CAAC,CAAA,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"bb-functions-publish.js","sourceRoot":"","sources":["../src/bb-functions-publish.ts"],"names":[],"mappings":";AAAA,4GAA4G;AAC5G,sBAAsB;;;;;;;;;;;;;;AAEtB,wDAA0B;AAC1B,kDAA0B;AAC1B,gDAAwB;AACxB,0DAAgC;AAEhC,2BAA2B;AAE3B,yEAAsE;AACtE,0FAAkE;AAClE,gGAAwE;AACxE,yDAGiC;AACjC,gEAAwC;AAExC,uBAAuB;AAEvB,mBAAO;KACJ,IAAI,CAAC,sBAAsB,CAAC;KAC5B,MAAM,CAAC,YAAY,EAAE,2BAA2B,CAAC;KACjD,MAAM,CAAC,YAAY,EAAE,4CAA4C,CAAC;KAClE,MAAM,CAAC,gBAAgB,EAAE,0CAA0C,CAAC;KACpE,MAAM,CACL,mBAAmB,EACnB,sEAAsE,CACvE;KACA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAEvB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,mBAAO,CAAC;AAElD,qBAAqB;AAErB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAEjC,MAAM,iBAAiB,GAAG,GAA2B,EAAE;IACrD,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,2BAA2B,iBAAiB,EAAE,CAAC,CAAC;IAE5D,MAAM,MAAM,GAAG,IAAI,gBAAM,EAAE,CAAC;IAC5B,MAAM,SAAS,GAAG,IAAI,+BAAiB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACnE,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAEpD,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACzB,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE;YAC7B,KAAK,GAAG,KAAK,CAAC;SACf;QACD,iCAAmB,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC,CAAA,CAAC;AAEF,mCAAmC;AACnC,KAAK,CAAC,GAAwB,EAAE;IAC9B,IAAI,kBAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,EAAE;QAC1D,MAAM,KAAK,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAExC,IAAI,KAAK,EAAE;YACT,MAAM,6BAAmB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;SAC5C;aAAM;YACL,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,yCAAmB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YAClE,MAAM,kBAAkB,GAAG,yCAAmB,CAAC,iBAAiB,CAAC,CAAC;YAElE,IAAI,YAAY,CAAC,MAAM,KAAK,kBAAkB,CAAC,MAAM,EAAE;gBACrD,OAAO,CAAC,GAAG,CACT,oEAAoE,eAAK,CAAC,IAAI,CAC5E,0BAA0B,CAC3B,GAAG,CACL,CAAC;aACH;SACF;KACF;SAAM;QACL,gCAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;KAC1C;AACH,CAAC,CAAA,CAAC,EAAE,CAAC"}
@@ -13,10 +13,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  return (mod && mod.__esModule) ? mod : { "default": mod };
14
14
  };
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
+ const chalk_1 = __importDefault(require("chalk"));
16
17
  const path_1 = __importDefault(require("path"));
17
18
  const commander_1 = __importDefault(require("commander"));
18
19
  /* internal dependencies */
19
20
  const validations_1 = require("./functions/validations");
21
+ const functionDefinitions_1 = require("./functions/functionDefinitions");
20
22
  const config_1 = __importDefault(require("./functions/config"));
21
23
  /* process arguments */
22
24
  commander_1.default
@@ -32,13 +34,12 @@ const config = new config_1.default();
32
34
  void (() => __awaiter(void 0, void 0, void 0, function* () {
33
35
  const validator = new validations_1.FunctionValidator(config, baseFunctionsPath);
34
36
  yield validator.initSchema();
35
- if (inputFunctionName) {
36
- const result = validator.validateFunction(inputFunctionName);
37
- validations_1.logValidationResult(result);
38
- }
39
- else {
40
- const results = yield validator.validateFunctions();
41
- results.forEach((result) => validations_1.logValidationResult(result));
37
+ const results = yield validator.validateFunctions(inputFunctionName);
38
+ results.forEach(validations_1.logValidationResult);
39
+ const allFunctions = functionDefinitions_1.functionDefinitions(baseFunctionsPath, true);
40
+ const versionedFunctions = functionDefinitions_1.functionDefinitions(baseFunctionsPath);
41
+ if (allFunctions.length !== versionedFunctions.length) {
42
+ console.log(`Maybe auto-version your functions without a version number using ${chalk_1.default.cyan('bb functions autoversion')}?`);
42
43
  }
43
44
  }))();
44
45
  //# sourceMappingURL=bb-functions-validate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bb-functions-validate.js","sourceRoot":"","sources":["../src/bb-functions-validate.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;;;;;;;;;;;AAEtB,gDAAwB;AACxB,0DAAgC;AAEhC,2BAA2B;AAE3B,yDAGiC;AACjC,gEAAwC;AAExC,uBAAuB;AACvB,mBAAO;KACJ,KAAK,CAAC,iBAAiB,CAAC;KACxB,IAAI,CAAC,uBAAuB,CAAC;KAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAEvB,MAAM,EACJ,IAAI,EAAE,CAAC,iBAAiB,CAAC,GAC1B,GAAG,mBAAO,CAAC;AACZ,qBAAqB;AAErB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AACjC,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AAE7D,MAAM,MAAM,GAAG,IAAI,gBAAM,EAAE,CAAC;AAE5B,mCAAmC;AACnC,KAAK,CAAC,GAAwB,EAAE;IAC9B,MAAM,SAAS,GAAG,IAAI,+BAAiB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACnE,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;IAE7B,IAAI,iBAAiB,EAAE;QACrB,MAAM,MAAM,GAAG,SAAS,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAC7D,iCAAmB,CAAC,MAAM,CAAC,CAAC;KAC7B;SAAM;QACL,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,iBAAiB,EAAE,CAAC;QACpD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,iCAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;KAC1D;AACH,CAAC,CAAA,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"bb-functions-validate.js","sourceRoot":"","sources":["../src/bb-functions-validate.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;;;;;;;;;;;AAEtB,kDAA0B;AAC1B,gDAAwB;AACxB,0DAAgC;AAEhC,2BAA2B;AAE3B,yDAGiC;AAEjC,yEAAsE;AAEtE,gEAAwC;AAExC,uBAAuB;AACvB,mBAAO;KACJ,KAAK,CAAC,iBAAiB,CAAC;KACxB,IAAI,CAAC,uBAAuB,CAAC;KAC7B,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAEvB,MAAM,EACJ,IAAI,EAAE,CAAC,iBAAiB,CAAC,GAC1B,GAAG,mBAAO,CAAC;AACZ,qBAAqB;AAErB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AACjC,MAAM,iBAAiB,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AAE7D,MAAM,MAAM,GAAG,IAAI,gBAAM,EAAE,CAAC;AAE5B,mCAAmC;AACnC,KAAK,CAAC,GAAwB,EAAE;IAC9B,MAAM,SAAS,GAAG,IAAI,+BAAiB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACnE,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;IAE7B,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACrE,OAAO,CAAC,OAAO,CAAC,iCAAmB,CAAC,CAAC;IAErC,MAAM,YAAY,GAAG,yCAAmB,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAClE,MAAM,kBAAkB,GAAG,yCAAmB,CAAC,iBAAiB,CAAC,CAAC;IAElE,IAAI,YAAY,CAAC,MAAM,KAAK,kBAAkB,CAAC,MAAM,EAAE;QACrD,OAAO,CAAC,GAAG,CACT,oEAAoE,eAAK,CAAC,IAAI,CAC5E,0BAA0B,CAC3B,GAAG,CACL,CAAC;KACH;AACH,CAAC,CAAA,CAAC,EAAE,CAAC"}
@@ -14,16 +14,20 @@ const availableCommands = [
14
14
  'build',
15
15
  'publish',
16
16
  'validate',
17
+ 'autoversion',
18
+ 'bump',
17
19
  ];
18
20
  /* process arguments */
19
21
  commander_1.default
20
22
  .usage(`<${availableCommands.join('|')}>`)
21
23
  .name('bb functions')
24
+ .command('autoversion', 'auto-version functions within current working directory')
25
+ .command('build', 'build functions bundle file of current working directory')
26
+ .command('bump', 'increase the major/minor version of a specific function')
22
27
  .command('init [identifier]', 'initialize functions project')
23
28
  .command('login', 'login using the same credentials as the IDE')
24
29
  .command('logout', 'remove all tokens used to authenticate with the APIs')
25
30
  .command('new [function-name]', 'Initialize a new function')
26
- .command('build', 'build functions bundle file of current working directory')
27
31
  .command('publish', 'publish functions of current working directory')
28
32
  .command('validate', 'validate functions of current working directory')
29
33
  .on('command:*', ([command]) => {
@@ -1 +1 @@
1
- {"version":3,"file":"bb-functions.js","sourceRoot":"","sources":["../src/bb-functions.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;;AAEtB,0DAAgC;AAMhC,WAAW;AAEX,MAAM,iBAAiB,GAAuB;IAC5C,MAAM;IACN,OAAO;IACP,QAAQ;IACR,KAAK;IACL,OAAO;IACP,SAAS;IACT,UAAU;CACX,CAAC;AAEF,uBAAuB;AAEvB,mBAAO;KACJ,KAAK,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;KACzC,IAAI,CAAC,cAAc,CAAC;KACpB,OAAO,CAAC,mBAAmB,EAAE,8BAA8B,CAAC;KAC5D,OAAO,CAAC,OAAO,EAAE,6CAA6C,CAAC;KAC/D,OAAO,CAAC,QAAQ,EAAE,sDAAsD,CAAC;KACzE,OAAO,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;KAC3D,OAAO,CAAC,OAAO,EAAE,0DAA0D,CAAC;KAC5E,OAAO,CAAC,SAAS,EAAE,gDAAgD,CAAC;KACpE,OAAO,CAAC,UAAU,EAAE,iDAAiD,CAAC;KACtE,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAW,EAAQ,EAAE;IAC7C,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAA2B,CAAC,EAAE;QAC5D,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QAChD,mBAAO,CAAC,UAAU,EAAE,CAAC;KACtB;AACH,CAAC,CAAC;KACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"bb-functions.js","sourceRoot":"","sources":["../src/bb-functions.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;;AAEtB,0DAAgC;AAMhC,WAAW;AAEX,MAAM,iBAAiB,GAAuB;IAC5C,MAAM;IACN,OAAO;IACP,QAAQ;IACR,KAAK;IACL,OAAO;IACP,SAAS;IACT,UAAU;IACV,aAAa;IACb,MAAM;CACP,CAAC;AAEF,uBAAuB;AAEvB,mBAAO;KACJ,KAAK,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;KACzC,IAAI,CAAC,cAAc,CAAC;KACpB,OAAO,CACN,aAAa,EACb,yDAAyD,CAC1D;KACA,OAAO,CAAC,OAAO,EAAE,0DAA0D,CAAC;KAC5E,OAAO,CAAC,MAAM,EAAE,yDAAyD,CAAC;KAC1E,OAAO,CAAC,mBAAmB,EAAE,8BAA8B,CAAC;KAC5D,OAAO,CAAC,OAAO,EAAE,6CAA6C,CAAC;KAC/D,OAAO,CAAC,QAAQ,EAAE,sDAAsD,CAAC;KACzE,OAAO,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;KAC3D,OAAO,CAAC,SAAS,EAAE,gDAAgD,CAAC;KACpE,OAAO,CAAC,UAAU,EAAE,iDAAiD,CAAC;KAEtE,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAW,EAAQ,EAAE;IAC7C,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAA2B,CAAC,EAAE;QAC5D,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QAChD,mBAAO,CAAC,UAAU,EAAE,CAAC;KACtB;AACH,CAAC,CAAC;KACD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -5,35 +5,48 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const adm_zip_1 = __importDefault(require("adm-zip"));
7
7
  const camelCase_1 = __importDefault(require("lodash/camelCase"));
8
+ const startCase_1 = __importDefault(require("lodash/startCase"));
8
9
  const fs_extra_1 = __importDefault(require("fs-extra"));
10
+ const glob_1 = __importDefault(require("glob"));
9
11
  const path_1 = __importDefault(require("path"));
10
12
  /* @doc functionDefinitionPath
11
13
  Expands the function dir with `function.json`.
12
14
  */
13
15
  const functionDefinitionPath = (functionPath) => path_1.default.join(functionPath, 'function.json');
14
16
  exports.functionDefinitionPath = functionDefinitionPath;
15
- /* @doc pathToFunction
17
+ /* @doc functionImplementationPath
16
18
  Expands the function dir with `index.js`.
17
19
  */
18
- const pathToFunction = (functionDir) => path_1.default.join(functionDir, 'index.js');
20
+ const functionImplementationPath = (functionPath) => path_1.default.join(functionPath, 'index.js');
19
21
  /* @doc isFunctionDefinition
20
22
  Checks the given functions dir for a file named function.json.
21
23
  Returns true if the file exists.
22
24
  */
23
25
  const isFunctionDefinition = (functionPath) => fs_extra_1.default.pathExistsSync(functionDefinitionPath(functionPath));
24
26
  exports.isFunctionDefinition = isFunctionDefinition;
27
+ /* @doc isFunctionVersion
28
+ Checks the given functions dir to be a function version.
29
+ Returns true if applies to versioning conventions.
30
+ */
31
+ const isFunctionVersion = (functionPath, functionsDir) => !!path_1.default.basename(functionPath).match(/^\d+\.\d+$/) &&
32
+ parseFloat(path_1.default.basename(functionPath)) >= 1.0 &&
33
+ path_1.default.dirname(path_1.default.dirname(functionPath)) === functionsDir;
34
+ exports.isFunctionVersion = isFunctionVersion;
25
35
  /* @doc isFunction
26
36
  Checks the given functions dir for a file named index.js.
27
37
  Returns true if the file exists.
28
38
  */
29
- const isFunction = (functionDir) => fs_extra_1.default.pathExistsSync(pathToFunction(functionDir));
39
+ const isFunction = (functionPath) => fs_extra_1.default.pathExistsSync(functionImplementationPath(functionPath));
30
40
  /* @doc functionDirs
31
- Returns a list of directories inside the given functionsDir that have a function.json.
41
+ Returns a list of directories inside the given functionsDir that have a function.json and index.js.
32
42
  */
33
- const functionDirs = (functionsDir) => fs_extra_1.default.readdirSync(functionsDir).reduce((dirs, functionDir) => {
34
- const functionPath = path_1.default.join(functionsDir, functionDir);
35
- if (isFunctionDefinition(functionPath)) {
36
- dirs.push(functionPath);
43
+ const functionDirs = (functionsDir, includeNonversioned = false) => glob_1.default
44
+ .sync(path_1.default.join(functionsDir, '**', 'function.json'))
45
+ .reduce((dirs, functionDefinition) => {
46
+ const dir = path_1.default.dirname(functionDefinition);
47
+ if (isFunction(dir) &&
48
+ (includeNonversioned || isFunctionVersion(dir, functionsDir))) {
49
+ dirs.push(dir);
37
50
  }
38
51
  return dirs;
39
52
  }, []);
@@ -42,12 +55,24 @@ exports.functionDirs = functionDirs;
42
55
  Reads the function.json from the given directory.
43
56
  Returns the parsed function.json as object.
44
57
  */
45
- const functionDefinition = (functionPath) => {
58
+ const functionDefinition = (functionPath, functionsDir) => {
59
+ let name = '';
60
+ let version = '';
61
+ if (isFunctionVersion(functionPath, functionsDir)) {
62
+ name = camelCase_1.default(path_1.default.basename(path_1.default.dirname(functionPath)));
63
+ version = path_1.default.basename(functionPath);
64
+ }
65
+ else {
66
+ name = camelCase_1.default(path_1.default.basename(functionPath));
67
+ }
46
68
  const filePath = functionDefinitionPath(functionPath);
69
+ const schema = fs_extra_1.default.readJSONSync(filePath);
47
70
  try {
48
71
  return {
72
+ name,
73
+ version,
49
74
  path: filePath,
50
- schema: fs_extra_1.default.readJSONSync(filePath),
75
+ schema,
51
76
  };
52
77
  }
53
78
  catch (err) {
@@ -60,14 +85,13 @@ exports.functionDefinition = functionDefinition;
60
85
  Returns an object containing all function.json definitions
61
86
  inside the given functionsDir, indexed by function name.
62
87
  */
63
- const functionDefinitions = (functionsDir) => {
64
- return functionDirs(functionsDir).map((functionDir) => functionDefinition(functionDir));
88
+ const functionDefinitions = (functionsDir, includeNonversioned = false) => {
89
+ return functionDirs(functionsDir, includeNonversioned).map((functionDir) => functionDefinition(functionDir, functionsDir));
65
90
  };
66
91
  exports.functionDefinitions = functionDefinitions;
67
92
  const stringifyDefinitions = (definitions) => {
68
- const updatedDefinitions = definitions.reduce((acc, { schema }) => {
69
- return Object.assign(Object.assign({}, acc), { [schema.name]: Object.assign(Object.assign({}, schema), { options: JSON.stringify(schema.options) }) });
70
- }, {});
93
+ const updatedDefinitions = definitions.map(({ name, version, schema }) => (Object.assign(Object.assign({ name,
94
+ version }, schema), { options: JSON.stringify(schema.options) })));
71
95
  return JSON.stringify(updatedDefinitions);
72
96
  };
73
97
  exports.stringifyDefinitions = stringifyDefinitions;
@@ -77,13 +101,12 @@ exports.stringifyDefinitions = stringifyDefinitions;
77
101
  */
78
102
  const newFunctionDefinition = (functionsDir, functionName) => {
79
103
  const functionDefName = functionName.replace(/-./g, (x) => x.toUpperCase()[1]);
80
- const functionDir = path_1.default.join(functionsDir, functionName);
104
+ const functionDir = path_1.default.join(functionsDir, functionName, '1.0');
81
105
  try {
82
106
  fs_extra_1.default.mkdirpSync(functionDir);
83
107
  fs_extra_1.default.writeJSONSync(functionDefinitionPath(functionDir), {
84
- name: functionDefName,
85
108
  description: 'Description',
86
- label: functionName,
109
+ label: startCase_1.default(functionName),
87
110
  category: 'Misc',
88
111
  icon: 'CreateIcon',
89
112
  options: [],
@@ -97,49 +120,50 @@ const newFunctionDefinition = (functionsDir, functionName) => {
97
120
  }
98
121
  };
99
122
  exports.newFunctionDefinition = newFunctionDefinition;
100
- /* @doc fetchFunctions
101
- Fetches all functions in the `/functions` folder, only includes function that
102
- have both an `index.js` and `functions.json` file.
103
- Returns an array of function names.
123
+ const toVariableName = ({ name, version }) => `${camelCase_1.default(name)}_${version.replace('.', '_')}`;
124
+ /* @doc importFunctions
125
+ Returns an array of strings, each item being an imported function:
126
+ `import { default as functionName_1_0 } from './function-name/1.0';`;
104
127
  */
105
- const fetchFunctions = (functionsDir) => fs_extra_1.default.readdirSync(functionsDir).reduce((names, name) => {
106
- const functionPath = path_1.default.join(functionsDir, name);
107
- if (isFunction(functionPath) && isFunctionDefinition(functionPath)) {
108
- names.push(name);
109
- }
110
- return names;
111
- }, []);
112
- /* @doc reExportFunctions
113
- Returns an array of strings, each item being a re-exported function:
114
- `export { default as functionName } from './function-name';
115
- */
116
- const reExportFunctions = (functions) => functions.reduce((exportedFunctions, file) => {
117
- exportedFunctions.push(`export { default as ${camelCase_1.default(file)} } from './${file}';`);
118
- return exportedFunctions;
119
- }, []);
128
+ const importFunctions = (definitions, functionsPath) => definitions.map((definition) => `import { default as ${toVariableName(definition)} } from '${path_1.default.dirname(definition.path.replace(functionsPath, '.'))}';`);
129
+ /* @doc exportFunctions
130
+ Returns a string in which functions will be exported in an object;
131
+ */
132
+ const exportFunctions = (definitions) => {
133
+ const exports = definitions.map((definition) => {
134
+ const { name, version } = definition;
135
+ return ` "${name} ${version}": ${toVariableName(definition)},`;
136
+ });
137
+ return ['const fn = {', ...exports, '};', '', 'export default fn;'];
138
+ };
120
139
  /* @doc generateIndex
121
140
  Fetches all functions and re-exports them.
122
141
  Returns the result as a Buffer.
123
142
  */
124
- const generateIndex = () => {
125
- const functions = fetchFunctions(path_1.default.join(process.cwd(), 'functions'));
126
- const code = reExportFunctions(functions).join('\n');
127
- return Buffer.from(code);
143
+ const generateIndex = (functionsPath) => {
144
+ const definitions = functionDefinitions(functionsPath);
145
+ const code = [];
146
+ code.push(...importFunctions(definitions, functionsPath));
147
+ code.push('');
148
+ code.push(...exportFunctions(definitions));
149
+ code.push('');
150
+ return code.join('\n');
128
151
  };
152
+ exports.generateIndex = generateIndex;
129
153
  /* @doc zipFunctionDefinitions
130
- Takes functionsDir as path to a directory with function definitions.
154
+ Takes functionsPath as path to a directory with function definitions.
131
155
  Scans each directory for a function.json file, and if present adds it
132
156
  to the zip file. Generates an index.js and adds it to the zip file.
133
157
  Returns path to the zip file.
134
- */
135
- const zipFunctionDefinitions = (functionsDir) => {
158
+ */
159
+ const zipFunctionDefinitions = (functionsPath) => {
136
160
  const zip = new adm_zip_1.default();
137
161
  const tmpDir = '.tmp';
138
162
  const zipFilePath = `${tmpDir}/app.zip`;
139
163
  fs_extra_1.default.ensureDirSync(tmpDir);
140
- zip.addLocalFile(path_1.default.join(process.cwd(), 'package.json'));
141
- zip.addFile('index.js', generateIndex());
142
- zip.addLocalFolder(functionsDir);
164
+ zip.addLocalFile(path_1.default.join(path_1.default.dirname(functionsPath), 'package.json'));
165
+ zip.addFile('index.js', Buffer.from(generateIndex(functionsPath)));
166
+ zip.addLocalFolder(functionsPath);
143
167
  zip.writeZip(zipFilePath);
144
168
  return zipFilePath;
145
169
  };
@@ -1 +1 @@
1
- {"version":3,"file":"functionDefinitions.js","sourceRoot":"","sources":["../../src/functions/functionDefinitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functionDefinitions.js","sourceRoot":"","sources":["../../src/functions/functionDefinitions.ts"],"names":[],"mappings":"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"}
@@ -25,12 +25,13 @@ const functionDefinitions_1 = require("./functionDefinitions");
25
25
  const config_1 = __importDefault(require("./config"));
26
26
  /* execute command */
27
27
  const workingDir = process.cwd();
28
- const logResult = ({ status, name, error }, operation) => {
28
+ const logResult = ({ status, name, version, error }, operation) => {
29
+ const delimiter = version ? '-' : '';
29
30
  if (status === 'ok') {
30
- console.log(`${chalk_1.default.green(`✔`)} ${operation} ${name}.`);
31
+ console.log(`${chalk_1.default.green(`✔`)} ${operation} ${name}${delimiter}${version || ''}.`);
31
32
  }
32
33
  else {
33
- console.log(`${chalk_1.default.red(`✖`)} ${operation} ${name} failed. Errors: ${JSON.stringify(error)}.`);
34
+ console.log(`${chalk_1.default.red(`✖`)} ${operation} ${name}${delimiter}${version || ''} failed. Errors: ${JSON.stringify(error)}.`);
34
35
  }
35
36
  };
36
37
  const uploadAppFunctions = (functionDefinitionsFile, functionsJson, config) => __awaiter(void 0, void 0, void 0, function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"publishAppFunctions.js","sourceRoot":"","sources":["../../src/functions/publishAppFunctions.ts"],"names":[],"mappings":";AAAA,8BAA8B;AAC9B,sBAAsB;;;;;;;;;;;;;;AAEtB,gDAAwB;AACxB,wDAA0B;AAC1B,kDAA0B;AAC1B,4DAA+B;AAC/B,0DAAiC;AAEjC,2BAA2B;AAE3B,2DAAwC;AACxC,+DAI+B;AAE/B,sDAA8B;AAE9B,qBAAqB;AAErB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAoBjC,MAAM,SAAS,GAAG,CAChB,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAkB,EACvC,SAAiB,EACX,EAAE;IACR,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,CAAC,GAAG,CAAC,GAAG,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,SAAS,IAAI,IAAI,GAAG,CAAC,CAAC;KAC1D;SAAM;QACL,OAAO,CAAC,GAAG,CACT,GAAG,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,IAAI,IAAI,oBAAoB,IAAI,CAAC,SAAS,CACtE,KAAK,CACN,GAAG,CACL,CAAC;KACH;AACH,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CACzB,uBAA+B,EAC/B,aAAqB,EACrB,MAAc,EACI,EAAE;IACpB,MAAM,UAAU,GAAG,IAAI,eAAU,CAAC,MAAM,CAAC,CAAC;IAE1C,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACzE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAE,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAElE,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;IACnD,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;KACH;IACD,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,aAAa,sBAAsB,aAAa,YAAY,CAAC;IACnF,OAAO,oBAAK,CAAC,GAAG,EAAE;QAChB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP,4EAA4E;YAC5E,aAAa,EAAE,UAAU,UAAU,CAAC,GAAG,EAAE,EAAE;SAC5C;KACF,CAAC,CAAC,IAAI,CAAC,CAAO,GAAG,EAAE,EAAE;QACpB,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;YAC5C,MAAM,UAAU,CAAC,WAAW,EAAE,CAAC;YAC/B,OAAO,kBAAkB,CAAC,uBAAuB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;SAC3E;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;YACtB,MAAM,IAAI,KAAK,CACb,sCAAsC,GAAG,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CACvE,CAAC;SACH;QAED,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAC3C,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAoB,CAAC;QAExC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YACvB,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YACjD,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,aAAa,CAAC,CAAC;SACzE;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAO,MAAc,EAAiB,EAAE;IAC/D,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,4CAAsB,CAAC,YAAY,CAAC,CAAC;IAErD,MAAM,SAAS,GAAG,yCAAmB,CAAC,YAAY,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,0CAAoB,CAAC,SAAS,CAAC,CAAC;IAEtD,MAAM,kBAAkB,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAO,EACjC,WAAW,GACI,EAAiB,EAAE;IAClC,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAE3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;IAC7D,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC,CAAA,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"publishAppFunctions.js","sourceRoot":"","sources":["../../src/functions/publishAppFunctions.ts"],"names":[],"mappings":";AAAA,8BAA8B;AAC9B,sBAAsB;;;;;;;;;;;;;;AAEtB,gDAAwB;AACxB,wDAA0B;AAC1B,kDAA0B;AAC1B,4DAA+B;AAC/B,0DAAiC;AAEjC,2BAA2B;AAE3B,2DAAwC;AACxC,+DAI+B;AAE/B,sDAA8B;AAE9B,qBAAqB;AAErB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAqBjC,MAAM,SAAS,GAAG,CAChB,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAkB,EAChD,SAAiB,EACX,EAAE;IACR,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,CAAC,GAAG,CACT,GAAG,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,SAAS,IAAI,IAAI,GAAG,SAAS,GAAG,OAAO,IAAI,EAAE,GAAG,CACxE,CAAC;KACH;SAAM;QACL,OAAO,CAAC,GAAG,CACT,GAAG,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,IAAI,IAAI,GAAG,SAAS,GAChD,OAAO,IAAI,EACb,oBAAoB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAC7C,CAAC;KACH;AACH,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CACzB,uBAA+B,EAC/B,aAAqB,EACrB,MAAc,EACI,EAAE;IACpB,MAAM,UAAU,GAAG,IAAI,eAAU,CAAC,MAAM,CAAC,CAAC;IAE1C,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACzE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAE,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAElE,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;IACnD,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;KACH;IACD,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,aAAa,sBAAsB,aAAa,YAAY,CAAC;IACnF,OAAO,oBAAK,CAAC,GAAG,EAAE;QAChB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP,4EAA4E;YAC5E,aAAa,EAAE,UAAU,UAAU,CAAC,GAAG,EAAE,EAAE;SAC5C;KACF,CAAC,CAAC,IAAI,CAAC,CAAO,GAAG,EAAE,EAAE;QACpB,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;YAC5C,MAAM,UAAU,CAAC,WAAW,EAAE,CAAC;YAC/B,OAAO,kBAAkB,CAAC,uBAAuB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;SAC3E;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;YACtB,MAAM,IAAI,KAAK,CACb,sCAAsC,GAAG,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CACvE,CAAC;SACH;QAED,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAC3C,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAoB,CAAC;QAExC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YACvB,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YACjD,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,aAAa,CAAC,CAAC;SACzE;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAO,MAAc,EAAiB,EAAE;IAC/D,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,4CAAsB,CAAC,YAAY,CAAC,CAAC;IAErD,MAAM,SAAS,GAAG,yCAAmB,CAAC,YAAY,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,0CAAoB,CAAC,SAAS,CAAC,CAAC;IAEtD,MAAM,kBAAkB,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAO,EACjC,WAAW,GACI,EAAiB,EAAE;IAClC,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IAE3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;IAC7D,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC,CAAA,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
@@ -51,18 +51,23 @@ const validateFunctionDefinition = (validator, definition) => {
51
51
  const functionSchema = validator.schemas[functionSchemaId];
52
52
  return validator.validate(definition, functionSchema);
53
53
  };
54
- const validateFunction = (functionJson, validator) => {
55
- const { path: definitionPath, schema } = functionJson;
54
+ const forceVersion = ({ path: functionPath }, functionsDir) => {
55
+ if (!functionDefinitions_1.isFunctionVersion(path_1.default.dirname(functionPath), functionsDir)) {
56
+ throw new Error(`${functionPath.replace('/function.json', '')} does not apply as a valid version directory`);
57
+ }
58
+ };
59
+ const validateSchema = (functionJson, validator) => {
60
+ const { name, version, path: definitionPath, schema, } = functionJson;
56
61
  const { errors } = validateFunctionDefinition(validator, schema);
57
62
  const status = errors.length ? 'error' : 'ok';
58
63
  return {
59
64
  status,
60
65
  path: definitionPath,
61
- functionName: schema.name,
66
+ functionName: `${name}-${version}`,
62
67
  errors,
63
68
  };
64
69
  };
65
- exports.validateFunction = validateFunction;
70
+ exports.validateSchema = validateSchema;
66
71
  class FunctionValidator {
67
72
  constructor(config, functionsDir) {
68
73
  this.config = config;
@@ -74,26 +79,32 @@ class FunctionValidator {
74
79
  yield importSchema(this.schemaValidator, this.config);
75
80
  });
76
81
  }
77
- validateFunction(functionName) {
78
- const functionPath = path_1.default.join(this.functionsDir, functionName);
82
+ validateFunction(definition) {
83
+ const functionPath = definition.path;
84
+ const functionName = functionPath;
79
85
  try {
80
- const definition = functionDefinitions_1.functionDefinition(functionPath);
81
- return validateFunction(definition, this.schemaValidator);
86
+ forceVersion(definition, this.functionsDir);
87
+ return validateSchema(definition, this.schemaValidator);
82
88
  }
83
- catch (err) {
89
+ catch (error) {
90
+ const message = error instanceof Error ? error.message : String(error);
84
91
  return {
85
92
  status: 'error',
86
93
  path: functionPath,
87
94
  functionName,
88
- errors: [{ message: `${err}` }],
95
+ errors: [new Error(message)],
89
96
  };
90
97
  }
91
98
  }
92
- validateFunctions() {
99
+ validateFunctions(functionName) {
93
100
  return __awaiter(this, void 0, void 0, function* () {
94
- const definitions = functionDefinitions_1.functionDefinitions(this.functionsDir);
95
- const validations = definitions.map((definition) => {
96
- return validateFunction(definition, this.schemaValidator);
101
+ const definitions = functionDefinitions_1.functionDefinitions(this.functionsDir, true);
102
+ const validations = [];
103
+ definitions.forEach((definition) => {
104
+ const preleadingPath = path_1.default.join(this.functionsDir, functionName || '', '/');
105
+ if (definition.path.match(preleadingPath)) {
106
+ validations.push(this.validateFunction(definition));
107
+ }
97
108
  });
98
109
  return Promise.all(validations);
99
110
  });
@@ -1 +1 @@
1
- {"version":3,"file":"validations.js","sourceRoot":"","sources":["../../src/functions/validations.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,6GAA6G;AAC7G,4DAA+B;AAC/B,gDAAwB;AACxB,kDAA0B;AAC1B,2CAAyE;AAEzE,+DAI+B;AAc/B,MAAM,iBAAiB,GAAG,CAAO,SAAiB,EAAmB,EAAE;IACrE,MAAM,GAAG,GAAG,MAAM,oBAAK,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,OAAO,IAAc,CAAC;AACxB,CAAC,CAAA,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,SAAoB,EACpB,QAAgB,EACI,EAAE;IACtB,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACrD,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE1C,MAAM,YAAY,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;IACtD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAC;KAClB;IACD,OAAO,gBAAgB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AACnD,CAAC,CAAA,CAAC;AAEF,MAAM,YAAY,GAAG,CACnB,SAAoB,EACpB,MAAc,EACM,EAAE;IACtB,MAAM,iBAAiB,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC;IACvE,OAAO,gBAAgB,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;AACxD,CAAC,CAAA,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAO,MAAc,EAAsB,EAAE;IACrE,MAAM,SAAS,GAAG,IAAI,sBAAS,EAAE,CAAC;IAElC,OAAO,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC,CAAA,CAAC;AAgGA,8CAAiB;AA9FnB,MAAM,0BAA0B,GAAG,CACjC,SAAoB,EACpB,UAAkB,EACD,EAAE;IACnB,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACjE,OAAO,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,gBAAgB,EAAE,CAAC,CAAC;KACxE;IAED,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAW,CAAC;IACrE,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,YAAoB,EACpB,SAAoB,EACF,EAAE;IACpB,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,YAAkC,CAAC;IAC5E,MAAM,EAAE,MAAM,EAAE,GAAG,0BAA0B,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAE9C,OAAO;QACL,MAAM;QACN,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,MAAM,CAAC,IAAI;QACzB,MAAM;KACP,CAAC;AACJ,CAAC,CAAC;AAgEA,4CAAgB;AA9DlB,MAAM,iBAAiB;IAOrB,YAAY,MAAc,EAAE,YAAoB;QAC9C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAS,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAEK,UAAU;;YACd,MAAM,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;KAAA;IAED,gBAAgB,CAAC,YAAoB;QACnC,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAChE,IAAI;YACF,MAAM,UAAU,GAAG,wCAAkB,CAAC,YAAY,CAAC,CAAC;YACpD,OAAO,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;SAC3D;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO;gBACL,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,YAAY;gBAClB,YAAY;gBACZ,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,GAAG,EAAE,EAAE,CAAC;aAChC,CAAC;SACH;IACH,CAAC;IAEK,iBAAiB;;YACrB,MAAM,WAAW,GAAG,yCAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE3D,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;gBACjD,OAAO,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC;KAAA;CACF;AAmBC,8CAAiB;AAjBnB,MAAM,mBAAmB,GAAG,CAAC,EAC3B,IAAI,EAAE,YAAY,EAClB,MAAM,EACN,YAAY,EACZ,MAAM,GACW,EAAQ,EAAE;IAC3B,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,MAAM,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,cAAc,YAAY,EAAE,CAAC,CAAC;KAClD;SAAM;QACL,MAAM,GAAG,GAAG,eAAK,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,cAAc,YAAY,IAAI,YAAY,OAAO,GAAG,EAAE,CAAC,CAAC;KAC5E;AACH,CAAC,CAAC;AAMA,kDAAmB"}
1
+ {"version":3,"file":"validations.js","sourceRoot":"","sources":["../../src/functions/validations.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,6GAA6G;AAC7G,4DAA+B;AAC/B,gDAAwB;AACxB,kDAA0B;AAC1B,2CAAyE;AAEzE,+DAI+B;AAc/B,MAAM,iBAAiB,GAAG,CAAO,SAAiB,EAAmB,EAAE;IACrE,MAAM,GAAG,GAAG,MAAM,oBAAK,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAC9B,OAAO,IAAc,CAAC;AACxB,CAAC,CAAA,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,SAAoB,EACpB,QAAgB,EACI,EAAE;IACtB,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACrD,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE1C,MAAM,YAAY,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;IACtD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAC;KAClB;IACD,OAAO,gBAAgB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AACnD,CAAC,CAAA,CAAC;AAEF,MAAM,YAAY,GAAG,CACnB,SAAoB,EACpB,MAAc,EACM,EAAE;IACtB,MAAM,iBAAiB,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC;IACvE,OAAO,gBAAgB,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;AACxD,CAAC,CAAA,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAO,MAAc,EAAsB,EAAE;IACrE,MAAM,SAAS,GAAG,IAAI,sBAAS,EAAE,CAAC;IAElC,OAAO,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC,CAAA,CAAC;AA8HA,8CAAiB;AA5HnB,MAAM,0BAA0B,GAAG,CACjC,SAAoB,EACpB,UAAkB,EACD,EAAE;IACnB,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACjE,OAAO,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,gBAAgB,EAAE,CAAC,CAAC;KACxE;IAED,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAW,CAAC;IACrE,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AACxD,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CACnB,EAAE,IAAI,EAAE,YAAY,EAAsB,EAC1C,YAAoB,EACd,EAAE;IACR,IAAI,CAAC,uCAAiB,CAAC,cAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC,EAAE;QAChE,MAAM,IAAI,KAAK,CACb,GAAG,YAAY,CAAC,OAAO,CACrB,gBAAgB,EAChB,EAAE,CACH,8CAA8C,CAChD,CAAC;KACH;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,YAAoB,EACpB,SAAoB,EACF,EAAE;IACpB,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,IAAI,EAAE,cAAc,EACpB,MAAM,GACP,GAAG,YAAkC,CAAC;IAEvC,MAAM,EAAE,MAAM,EAAE,GAAG,0BAA0B,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAE9C,OAAO;QACL,MAAM;QACN,IAAI,EAAE,cAAc;QACpB,YAAY,EAAE,GAAG,IAAI,IAAI,OAAO,EAAE;QAClC,MAAM;KACP,CAAC;AACJ,CAAC,CAAC;AA2EA,wCAAc;AAzEhB,MAAM,iBAAiB;IAOrB,YAAY,MAAc,EAAE,YAAoB;QAC9C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAS,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAEK,UAAU;;YACd,MAAM,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;KAAA;IAED,gBAAgB,CAAC,UAA8B;QAC7C,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC;QACrC,MAAM,YAAY,GAAG,YAAY,CAAC;QAElC,IAAI;YACF,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5C,OAAO,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;SACzD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,OAAO;gBACL,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,YAAY;gBAClB,YAAY;gBACZ,MAAM,EAAE,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;aAC7B,CAAC;SACH;IACH,CAAC;IAEK,iBAAiB,CAAC,YAAqB;;YAC3C,MAAM,WAAW,GAAG,yCAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YACjE,MAAM,WAAW,GAAuB,EAAE,CAAC;YAE3C,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBACjC,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAC9B,IAAI,CAAC,YAAY,EACjB,YAAY,IAAI,EAAE,EAClB,GAAG,CACJ,CAAC;gBACF,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;oBACzC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;iBACrD;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC;KAAA;CACF;AAmBC,8CAAiB;AAjBnB,MAAM,mBAAmB,GAAG,CAAC,EAC3B,IAAI,EAAE,YAAY,EAClB,MAAM,EACN,YAAY,EACZ,MAAM,GACW,EAAQ,EAAE;IAC3B,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,MAAM,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,cAAc,YAAY,EAAE,CAAC,CAAC;KAClD;SAAM;QACL,MAAM,GAAG,GAAG,eAAK,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,cAAc,YAAY,IAAI,YAAY,OAAO,GAAG,EAAE,CAAC,CAAC;KAC5E;AACH,CAAC,CAAC;AAMA,kDAAmB"}
@@ -0,0 +1,49 @@
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
+ const chalk_1 = __importDefault(require("chalk"));
7
+ const fs_extra_1 = __importDefault(require("fs-extra"));
8
+ const kebabCase_1 = __importDefault(require("lodash/kebabCase"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const functionDefinitions_1 = require("./functionDefinitions");
11
+ const check = chalk_1.default.green(`✔`);
12
+ const cross = chalk_1.default.red(`✖`);
13
+ const migrate = (functionsPath, verbose = false) => {
14
+ const log = (msg) => verbose && console.log(msg);
15
+ log('Checking for unversioned functions ...');
16
+ functionDefinitions_1.functionDirs(functionsPath, true).forEach((functionPath) => {
17
+ const definition = functionDefinitions_1.functionDefinition(functionPath, functionsPath);
18
+ const { name } = definition;
19
+ let { version } = definition;
20
+ let postfix = kebabCase_1.default(name);
21
+ if (functionDefinitions_1.isFunctionVersion(functionPath, functionsPath)) {
22
+ postfix = `-${version}`;
23
+ }
24
+ else {
25
+ version = '1.0';
26
+ postfix = ` => ${name}/${version}`;
27
+ try {
28
+ delete definition.schema.name;
29
+ fs_extra_1.default.writeJSONSync(functionDefinitions_1.functionDefinitionPath(functionPath), definition.schema, {
30
+ spaces: 2,
31
+ });
32
+ const tmpDir = '.tmp';
33
+ const tempDir = path_1.default.join(tmpDir, `${kebabCase_1.default(name)}-${version}`);
34
+ const targetDir = path_1.default.join(functionsPath, kebabCase_1.default(name));
35
+ fs_extra_1.default.ensureDirSync(tmpDir);
36
+ fs_extra_1.default.renameSync(functionPath, tempDir);
37
+ fs_extra_1.default.mkdirSync(targetDir);
38
+ fs_extra_1.default.moveSync(tempDir, path_1.default.join(targetDir, version));
39
+ }
40
+ catch (err) {
41
+ log(`${cross} Failed to version: ${name}`);
42
+ return;
43
+ }
44
+ }
45
+ log(`${check} Version: ${name}${postfix}`);
46
+ });
47
+ };
48
+ exports.migrate = migrate;
49
+ //# sourceMappingURL=versions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/functions/versions.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAC1B,wDAA0B;AAC1B,iEAAyC;AACzC,gDAAwB;AAExB,+DAK+B;AAE/B,MAAM,KAAK,GAAG,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC/B,MAAM,KAAK,GAAG,eAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE7B,MAAM,OAAO,GAAG,CAAC,aAAqB,EAAE,OAAO,GAAG,KAAK,EAAQ,EAAE;IAC/D,MAAM,GAAG,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAEzD,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAE9C,kCAAY,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;QACzD,MAAM,UAAU,GAAG,wCAAkB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QACnE,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QAE5B,IAAI,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;QAC7B,IAAI,OAAO,GAAG,mBAAS,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI,uCAAiB,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE;YAClD,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;SACzB;aAAM;YACL,OAAO,GAAG,KAAK,CAAC;YAChB,OAAO,GAAG,OAAO,IAAI,IAAI,OAAO,EAAE,CAAC;YAEnC,IAAI;gBACF,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;gBAE9B,kBAAE,CAAC,aAAa,CACd,4CAAsB,CAAC,YAAY,CAAC,EACpC,UAAU,CAAC,MAAM,EACjB;oBACE,MAAM,EAAE,CAAC;iBACV,CACF,CAAC;gBAEF,MAAM,MAAM,GAAG,MAAM,CAAC;gBACtB,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,mBAAS,CAAC,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;gBACnE,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,mBAAS,CAAC,IAAI,CAAC,CAAC,CAAC;gBAE5D,kBAAE,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBACzB,kBAAE,CAAC,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBACrC,kBAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBACxB,kBAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;aACrD;YAAC,OAAO,GAAG,EAAE;gBACZ,GAAG,CAAC,GAAG,KAAK,uBAAuB,IAAI,EAAE,CAAC,CAAC;gBAC3C,OAAO;aACR;SACF;QAED,GAAG,CAAC,GAAG,KAAK,aAAa,IAAI,GAAG,OAAO,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEO,0BAAO"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;AAgIA,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,0CAAiB,CAAA;IACjB,0CAAiB,CAAA;IACjB,wCAAe,CAAA;IACf,sCAAa,CAAA;IACb,sCAAa,CAAA;IACb,0CAAiB,CAAA;AACnB,CAAC,EARW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAQhC;AAED,oBAAoB;AACpB,IAAY,yBASX;AATD,WAAY,yBAAyB;IACnC,4CAAe,CAAA;IACf,kDAAqB,CAAA;IACrB,8CAAiB,CAAA;IACjB,0CAAa,CAAA;IACb,sDAAyB,CAAA;IACzB,kDAAqB,CAAA;IACrB,0CAAa,CAAA;IACb,0CAAa,CAAA;AACf,CAAC,EATW,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QASpC;AA0BD,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;AACnB,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;AAkIA,IAAY,qBAQX;AARD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,0CAAiB,CAAA;IACjB,0CAAiB,CAAA;IACjB,wCAAe,CAAA;IACf,sCAAa,CAAA;IACb,sCAAa,CAAA;IACb,0CAAiB,CAAA;AACnB,CAAC,EARW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAQhC;AAED,oBAAoB;AACpB,IAAY,yBASX;AATD,WAAY,yBAAyB;IACnC,4CAAe,CAAA;IACf,kDAAqB,CAAA;IACrB,8CAAiB,CAAA;IACjB,0CAAa,CAAA;IACb,sDAAyB,CAAA;IACzB,kDAAqB,CAAA;IACrB,0CAAa,CAAA;IACb,0CAAa,CAAA;AACf,CAAC,EATW,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QASpC;AA0BD,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;AACnB,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@betty-blocks/cli",
3
- "version": "25.25.0",
3
+ "version": "25.26.0",
4
4
  "description": "A Betty Blocks CLI",
5
5
  "main": "build/index.js",
6
6
  "author": "Niek Nijland <niek.nijland@bettyblocks.com>",
@@ -35,6 +35,7 @@
35
35
  "@types/app-root-path": "^1.2.4",
36
36
  "@types/babel__generator": "^7.6.3",
37
37
  "@types/babel__traverse": "^7.0.7",
38
+ "@types/glob": "^7.2.0",
38
39
  "@types/fs-extra": "^8.0.0",
39
40
  "@types/lodash": "^4.14.176",
40
41
  "@types/node": "^12.6.8",
@@ -74,6 +75,7 @@
74
75
  "commander": "^2.20.0",
75
76
  "form-data": "^4.0.0",
76
77
  "fs-extra": "^8.1.0",
78
+ "glob": "^7.2.0",
77
79
  "joi": "^17.2.1",
78
80
  "jsdoc-api": "^7.1.0",
79
81
  "jsonschema": "^1.4.0",