@knocklabs/cli 0.1.21 → 0.1.23

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 (57) hide show
  1. package/README.md +141 -41
  2. package/dist/commands/commit/list.js +21 -1
  3. package/dist/commands/guide/activate.js +121 -0
  4. package/dist/commands/guide/generate-types.js +148 -0
  5. package/dist/commands/guide/get.js +139 -0
  6. package/dist/commands/guide/list.js +112 -0
  7. package/dist/commands/guide/pull.js +209 -0
  8. package/dist/commands/guide/push.js +171 -0
  9. package/dist/commands/guide/validate.js +148 -0
  10. package/dist/commands/pull.js +157 -0
  11. package/dist/commands/push.js +175 -0
  12. package/dist/commands/workflow/generate-types.js +6 -5
  13. package/dist/lib/api-v1.js +61 -0
  14. package/dist/lib/helpers/const.js +4 -4
  15. package/dist/lib/helpers/date.js +3 -3
  16. package/dist/lib/helpers/error.js +8 -8
  17. package/dist/lib/helpers/flag.js +7 -7
  18. package/dist/lib/helpers/json.js +5 -5
  19. package/dist/lib/helpers/object.isomorphic.js +8 -8
  20. package/dist/lib/helpers/page.js +9 -9
  21. package/dist/lib/helpers/request.js +4 -4
  22. package/dist/lib/helpers/string.js +3 -3
  23. package/dist/lib/helpers/typegen.js +59 -0
  24. package/dist/lib/helpers/ux.js +3 -3
  25. package/dist/lib/marshal/email-layout/helpers.js +5 -5
  26. package/dist/lib/marshal/email-layout/processor.isomorphic.js +3 -3
  27. package/dist/lib/marshal/email-layout/reader.js +5 -5
  28. package/dist/lib/marshal/email-layout/writer.js +4 -4
  29. package/dist/lib/marshal/guide/helpers.js +283 -0
  30. package/dist/lib/marshal/guide/index.js +3 -0
  31. package/dist/lib/marshal/guide/processor.isomorphic.js +3 -3
  32. package/dist/lib/marshal/guide/reader.js +193 -0
  33. package/dist/lib/marshal/guide/writer.js +175 -0
  34. package/dist/lib/marshal/index.isomorphic.js +7 -7
  35. package/dist/lib/marshal/message-type/helpers.js +5 -5
  36. package/dist/lib/marshal/message-type/processor.isomorphic.js +3 -3
  37. package/dist/lib/marshal/message-type/reader.js +5 -5
  38. package/dist/lib/marshal/message-type/writer.js +4 -4
  39. package/dist/lib/marshal/partial/helpers.js +5 -5
  40. package/dist/lib/marshal/partial/processor.isomorphic.js +3 -3
  41. package/dist/lib/marshal/partial/reader.js +5 -5
  42. package/dist/lib/marshal/partial/writer.js +4 -4
  43. package/dist/lib/marshal/shared/const.isomorphic.js +3 -3
  44. package/dist/lib/marshal/shared/helpers.isomorphic.js +9 -2
  45. package/dist/lib/marshal/shared/helpers.js +4 -4
  46. package/dist/lib/marshal/translation/helpers.js +10 -10
  47. package/dist/lib/marshal/translation/processor.isomorphic.js +6 -6
  48. package/dist/lib/marshal/translation/writer.js +3 -3
  49. package/dist/lib/marshal/workflow/generator.js +4 -4
  50. package/dist/lib/marshal/workflow/helpers.js +53 -10
  51. package/dist/lib/marshal/workflow/processor.isomorphic.js +5 -5
  52. package/dist/lib/marshal/workflow/reader.js +5 -5
  53. package/dist/lib/marshal/workflow/writer.js +5 -5
  54. package/dist/lib/resources.js +32 -0
  55. package/oclif.manifest.json +961 -260
  56. package/package.json +8 -8
  57. package/dist/lib/type-generator.js +0 -100
@@ -7,26 +7,26 @@ Object.defineProperty(exports, "__esModule", {
7
7
  function _export(target, all) {
8
8
  for(var name in all)Object.defineProperty(target, name, {
9
9
  enumerable: true,
10
- get: all[name]
10
+ get: Object.getOwnPropertyDescriptor(all, name).get
11
11
  });
12
12
  }
13
13
  _export(exports, {
14
- buildEmailLayoutDirBundle: function() {
14
+ get buildEmailLayoutDirBundle () {
15
15
  return _processorisomorphic.buildEmailLayoutDirBundle;
16
16
  },
17
- buildGuideDirBundle: function() {
17
+ get buildGuideDirBundle () {
18
18
  return _processorisomorphic1.buildGuideDirBundle;
19
19
  },
20
- buildMessageTypeDirBundle: function() {
20
+ get buildMessageTypeDirBundle () {
21
21
  return _processorisomorphic2.buildMessageTypeDirBundle;
22
22
  },
23
- buildPartialDirBundle: function() {
23
+ get buildPartialDirBundle () {
24
24
  return _processorisomorphic3.buildPartialDirBundle;
25
25
  },
26
- buildTranslationDirBundle: function() {
26
+ get buildTranslationDirBundle () {
27
27
  return _processorisomorphic4.buildTranslationDirBundle;
28
28
  },
29
- buildWorkflowDirBundle: function() {
29
+ get buildWorkflowDirBundle () {
30
30
  return _processorisomorphic5.buildWorkflowDirBundle;
31
31
  }
32
32
  });
@@ -5,20 +5,20 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- ensureValidCommandTarget: function() {
12
+ get ensureValidCommandTarget () {
13
13
  return ensureValidCommandTarget;
14
14
  },
15
- isMessageTypeDir: function() {
15
+ get isMessageTypeDir () {
16
16
  return isMessageTypeDir;
17
17
  },
18
- lsMessageTypeJson: function() {
18
+ get lsMessageTypeJson () {
19
19
  return lsMessageTypeJson;
20
20
  },
21
- messageTypeJsonPath: function() {
21
+ get messageTypeJsonPath () {
22
22
  return messageTypeJsonPath;
23
23
  }
24
24
  });
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- MESSAGE_TYPE_JSON: function() {
12
+ get MESSAGE_TYPE_JSON () {
13
13
  return MESSAGE_TYPE_JSON;
14
14
  },
15
- buildMessageTypeDirBundle: function() {
15
+ get buildMessageTypeDirBundle () {
16
16
  return buildMessageTypeDirBundle;
17
17
  }
18
18
  });
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- readAllForCommandTarget: function() {
12
+ get readAllForCommandTarget () {
13
13
  return readAllForCommandTarget;
14
14
  },
15
- readMessageTypeDir: function() {
15
+ get readMessageTypeDir () {
16
16
  return readMessageTypeDir;
17
17
  }
18
18
  });
@@ -100,7 +100,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
100
100
  };
101
101
  const readMessageTypeDir = async (messageTypeDirCtx, opts = {})=>{
102
102
  const { abspath } = messageTypeDirCtx;
103
- const { withExtractedFiles = false, withReadonlyField = false } = opts;
103
+ const { withExtractedFiles = false } = opts;
104
104
  const dirExists = await _fsextra.pathExists(abspath);
105
105
  if (!dirExists) throw new Error(`${abspath} does not exist`);
106
106
  const messageTypeJsonPath = await (0, _helpers1.lsMessageTypeJson)(abspath);
@@ -108,7 +108,7 @@ const readMessageTypeDir = async (messageTypeDirCtx, opts = {})=>{
108
108
  const result = await (0, _json.readJson)(messageTypeJsonPath);
109
109
  if (!result[0]) return result;
110
110
  let [messageTypeJson] = result;
111
- messageTypeJson = withReadonlyField ? messageTypeJson : (0, _objectisomorphic.omitDeep)(messageTypeJson, [
111
+ messageTypeJson = (0, _objectisomorphic.omitDeep)(messageTypeJson, [
112
112
  "__readonly"
113
113
  ]);
114
114
  return withExtractedFiles ? joinExtractedFiles(messageTypeDirCtx, messageTypeJson) : [
@@ -5,17 +5,17 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- pruneMessageTypesIndexDir: function() {
12
+ get pruneMessageTypesIndexDir () {
13
13
  return pruneMessageTypesIndexDir;
14
14
  },
15
- writeMessageTypeDirFromData: function() {
15
+ get writeMessageTypeDirFromData () {
16
16
  return writeMessageTypeDirFromData;
17
17
  },
18
- writeMessageTypesIndexDir: function() {
18
+ get writeMessageTypesIndexDir () {
19
19
  return writeMessageTypesIndexDir;
20
20
  }
21
21
  });
@@ -5,20 +5,20 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- ensureValidCommandTarget: function() {
12
+ get ensureValidCommandTarget () {
13
13
  return ensureValidCommandTarget;
14
14
  },
15
- isPartialDir: function() {
15
+ get isPartialDir () {
16
16
  return isPartialDir;
17
17
  },
18
- lsPartialJson: function() {
18
+ get lsPartialJson () {
19
19
  return lsPartialJson;
20
20
  },
21
- partialJsonPath: function() {
21
+ get partialJsonPath () {
22
22
  return partialJsonPath;
23
23
  }
24
24
  });
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- PARTIAL_JSON: function() {
12
+ get PARTIAL_JSON () {
13
13
  return PARTIAL_JSON;
14
14
  },
15
- buildPartialDirBundle: function() {
15
+ get buildPartialDirBundle () {
16
16
  return buildPartialDirBundle;
17
17
  }
18
18
  });
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- readAllForCommandTarget: function() {
12
+ get readAllForCommandTarget () {
13
13
  return readAllForCommandTarget;
14
14
  },
15
- readPartialDir: function() {
15
+ get readPartialDir () {
16
16
  return readPartialDir;
17
17
  }
18
18
  });
@@ -100,7 +100,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
100
100
  };
101
101
  const readPartialDir = async (partialDirCtx, opts = {})=>{
102
102
  const { abspath } = partialDirCtx;
103
- const { withExtractedFiles = false, withReadonlyField = false } = opts;
103
+ const { withExtractedFiles = false } = opts;
104
104
  const dirExists = await _fsextra.pathExists(abspath);
105
105
  if (!dirExists) throw new Error(`${abspath} does not exist`);
106
106
  const partialJsonPath = await (0, _helpers1.lsPartialJson)(abspath);
@@ -108,7 +108,7 @@ const readPartialDir = async (partialDirCtx, opts = {})=>{
108
108
  const result = await (0, _json.readJson)(partialJsonPath);
109
109
  if (!result[0]) return result;
110
110
  let [partialJson] = result;
111
- partialJson = withReadonlyField ? partialJson : (0, _objectisomorphic.omitDeep)(partialJson, [
111
+ partialJson = (0, _objectisomorphic.omitDeep)(partialJson, [
112
112
  "__readonly"
113
113
  ]);
114
114
  return withExtractedFiles ? joinExtractedFiles(partialDirCtx, partialJson) : [
@@ -5,17 +5,17 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- prunePartialsIndexDir: function() {
12
+ get prunePartialsIndexDir () {
13
13
  return prunePartialsIndexDir;
14
14
  },
15
- writePartialDirFromData: function() {
15
+ get writePartialDirFromData () {
16
16
  return writePartialDirFromData;
17
17
  },
18
- writePartialsIndexDir: function() {
18
+ get writePartialsIndexDir () {
19
19
  return writePartialsIndexDir;
20
20
  }
21
21
  });
@@ -14,14 +14,14 @@ Object.defineProperty(exports, "__esModule", {
14
14
  function _export(target, all) {
15
15
  for(var name in all)Object.defineProperty(target, name, {
16
16
  enumerable: true,
17
- get: all[name]
17
+ get: Object.getOwnPropertyDescriptor(all, name).get
18
18
  });
19
19
  }
20
20
  _export(exports, {
21
- FILEPATH_MARKED_RE: function() {
21
+ get FILEPATH_MARKED_RE () {
22
22
  return FILEPATH_MARKED_RE;
23
23
  },
24
- FILEPATH_MARKER: function() {
24
+ get FILEPATH_MARKER () {
25
25
  return FILEPATH_MARKER;
26
26
  }
27
27
  });
@@ -8,15 +8,22 @@ Object.defineProperty(exports, "prepareResourceJson", {
8
8
  return prepareResourceJson;
9
9
  }
10
10
  });
11
+ const _lodash = require("lodash");
11
12
  const _objectisomorphic = require("../../helpers/object.isomorphic");
13
+ // sha and updated_at fields change too frequently, so we exclude them from resource JSON files
14
+ const REMOVED_READONLY_FIELDS = [
15
+ "sha",
16
+ "updated_at"
17
+ ];
12
18
  const prepareResourceJson = (resource)=>{
13
19
  var _resource___annotation;
14
- // Move read only field under the dedicated field "__readonly".
15
20
  const readonlyFields = ((_resource___annotation = resource.__annotation) === null || _resource___annotation === void 0 ? void 0 : _resource___annotation.readonly_fields) || [];
16
21
  const [readonly, remainder] = (0, _objectisomorphic.split)(resource, readonlyFields);
22
+ const filteredReadonlyFields = (0, _lodash.omit)(readonly, REMOVED_READONLY_FIELDS);
23
+ // Move remaining read only fields under the dedicated field "__readonly".
17
24
  const resourceJson = {
18
25
  ...remainder,
19
- __readonly: readonly
26
+ __readonly: filteredReadonlyFields
20
27
  };
21
28
  // Strip out all schema annotations, so not to expose them to end users.
22
29
  return (0, _objectisomorphic.omitDeep)(resourceJson, [
@@ -5,17 +5,17 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- checkIfValidExtractedFilePathFormat: function() {
12
+ get checkIfValidExtractedFilePathFormat () {
13
13
  return checkIfValidExtractedFilePathFormat;
14
14
  },
15
- readExtractedFileSync: function() {
15
+ get readExtractedFileSync () {
16
16
  return readExtractedFileSync;
17
17
  },
18
- validateExtractedFilePath: function() {
18
+ get validateExtractedFilePath () {
19
19
  return validateExtractedFilePath;
20
20
  }
21
21
  });
@@ -5,35 +5,35 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- SYSTEM_NAMESPACE: function() {
12
+ get SYSTEM_NAMESPACE () {
13
13
  return SYSTEM_NAMESPACE;
14
14
  },
15
- buildTranslationFileCtx: function() {
15
+ get buildTranslationFileCtx () {
16
16
  return buildTranslationFileCtx;
17
17
  },
18
- ensureValidCommandTarget: function() {
18
+ get ensureValidCommandTarget () {
19
19
  return ensureValidCommandTarget;
20
20
  },
21
- formatLanguage: function() {
21
+ get formatLanguage () {
22
22
  return formatLanguage;
23
23
  },
24
- isTranslationDir: function() {
24
+ get isTranslationDir () {
25
25
  return isTranslationDir;
26
26
  },
27
- isValidLocale: function() {
27
+ get isValidLocale () {
28
28
  return isValidLocale;
29
29
  },
30
- lsTranslationDir: function() {
30
+ get lsTranslationDir () {
31
31
  return lsTranslationDir;
32
32
  },
33
- parseTranslationRef: function() {
33
+ get parseTranslationRef () {
34
34
  return parseTranslationRef;
35
35
  },
36
- translationRefDescription: function() {
36
+ get translationRefDescription () {
37
37
  return translationRefDescription;
38
38
  }
39
39
  });
@@ -5,23 +5,23 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- DEFAULT_TRANSLATION_FORMAT: function() {
12
+ get DEFAULT_TRANSLATION_FORMAT () {
13
13
  return DEFAULT_TRANSLATION_FORMAT;
14
14
  },
15
- SUPPORTED_TRANSLATION_FORMATS: function() {
15
+ get SUPPORTED_TRANSLATION_FORMATS () {
16
16
  return SUPPORTED_TRANSLATION_FORMATS;
17
17
  },
18
- buildTranslationDirBundle: function() {
18
+ get buildTranslationDirBundle () {
19
19
  return buildTranslationDirBundle;
20
20
  },
21
- formatFileName: function() {
21
+ get formatFileName () {
22
22
  return formatFileName;
23
23
  },
24
- formatRef: function() {
24
+ get formatRef () {
25
25
  return formatRef;
26
26
  }
27
27
  });
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- writeTranslationFile: function() {
12
+ get writeTranslationFile () {
13
13
  return writeTranslationFile;
14
14
  },
15
- writeTranslationFiles: function() {
15
+ get writeTranslationFiles () {
16
16
  return writeTranslationFiles;
17
17
  }
18
18
  });
@@ -5,17 +5,17 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- generateWorkflowDir: function() {
12
+ get generateWorkflowDir () {
13
13
  return generateWorkflowDir;
14
14
  },
15
- parseStepsInput: function() {
15
+ get parseStepsInput () {
16
16
  return parseStepsInput;
17
17
  },
18
- scaffoldWorkflowDirBundle: function() {
18
+ get scaffoldWorkflowDirBundle () {
19
19
  return scaffoldWorkflowDirBundle;
20
20
  }
21
21
  });
@@ -5,35 +5,38 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- countSteps: function() {
12
+ get countSteps () {
13
13
  return countSteps;
14
14
  },
15
- ensureValidCommandTarget: function() {
15
+ get ensureValidCommandTarget () {
16
16
  return ensureValidCommandTarget;
17
17
  },
18
- formatCategories: function() {
18
+ get formatCategories () {
19
19
  return formatCategories;
20
20
  },
21
- formatStatus: function() {
21
+ get formatStatus () {
22
22
  return formatStatus;
23
23
  },
24
- formatStepSummary: function() {
24
+ get formatStepSummary () {
25
25
  return formatStepSummary;
26
26
  },
27
- isWorkflowDir: function() {
27
+ get generateWorkflowTypes () {
28
+ return generateWorkflowTypes;
29
+ },
30
+ get isWorkflowDir () {
28
31
  return isWorkflowDir;
29
32
  },
30
- lsWorkflowJson: function() {
33
+ get lsWorkflowJson () {
31
34
  return lsWorkflowJson;
32
35
  },
33
- validateWorkflowKey: function() {
36
+ get validateWorkflowKey () {
34
37
  return validateWorkflowKey;
35
38
  },
36
- workflowJsonPath: function() {
39
+ get workflowJsonPath () {
37
40
  return workflowJsonPath;
38
41
  }
39
42
  });
@@ -41,7 +44,9 @@ const _nodepath = /*#__PURE__*/ _interop_require_wildcard(require("node:path"));
41
44
  const _core = require("@oclif/core");
42
45
  const _fsextra = /*#__PURE__*/ _interop_require_wildcard(require("fs-extra"));
43
46
  const _lodash = require("lodash");
47
+ const _quicktypecore = require("quicktype-core");
44
48
  const _string = require("../../helpers/string");
49
+ const _typegen = require("../../helpers/typegen");
45
50
  const _processorisomorphic = require("./processor.isomorphic");
46
51
  const _types = require("./types");
47
52
  function _getRequireWildcardCache(nodeInterop) {
@@ -263,3 +268,41 @@ const doCountSteps = (steps)=>{
263
268
  return count;
264
269
  };
265
270
  const countSteps = (workflow)=>doCountSteps(workflow.steps);
271
+ async function generateWorkflowTypes(workflows, targetLanguage) {
272
+ const validWorkflows = workflows.filter((workflow)=>workflow.trigger_data_json_schema);
273
+ if (validWorkflows.length === 0) {
274
+ return {
275
+ result: undefined,
276
+ workflows: []
277
+ };
278
+ }
279
+ const schemaInput = new _quicktypecore.JSONSchemaInput(new _quicktypecore.FetchingJSONSchemaStore());
280
+ for (const workflow of validWorkflows){
281
+ const pascalCaseWorkflowKey = workflow.key.split(/[_-]/).map((part)=>part.charAt(0).toUpperCase() + part.slice(1)).join("");
282
+ const schema = (0, _typegen.transformSchema)({
283
+ ...workflow.trigger_data_json_schema,
284
+ title: `${pascalCaseWorkflowKey}Data`
285
+ });
286
+ schemaInput.addSource({
287
+ name: `${pascalCaseWorkflowKey}Data`,
288
+ schema: JSON.stringify(schema)
289
+ });
290
+ }
291
+ const inputData = new _quicktypecore.InputData();
292
+ inputData.addInput(schemaInput);
293
+ const result = await (0, _quicktypecore.quicktype)({
294
+ inputData,
295
+ lang: targetLanguage,
296
+ allPropertiesOptional: false,
297
+ alphabetizeProperties: true,
298
+ rendererOptions: {
299
+ "just-types": true,
300
+ "no-extra-properties": true,
301
+ "no-optional-null": true
302
+ }
303
+ });
304
+ return {
305
+ result,
306
+ workflows: validWorkflows
307
+ };
308
+ }
@@ -12,20 +12,20 @@ Object.defineProperty(exports, "__esModule", {
12
12
  function _export(target, all) {
13
13
  for(var name in all)Object.defineProperty(target, name, {
14
14
  enumerable: true,
15
- get: all[name]
15
+ get: Object.getOwnPropertyDescriptor(all, name).get
16
16
  });
17
17
  }
18
18
  _export(exports, {
19
- VISUAL_BLOCKS_JSON: function() {
19
+ get VISUAL_BLOCKS_JSON () {
20
20
  return VISUAL_BLOCKS_JSON;
21
21
  },
22
- WORKFLOW_JSON: function() {
22
+ get WORKFLOW_JSON () {
23
23
  return WORKFLOW_JSON;
24
24
  },
25
- buildWorkflowDirBundle: function() {
25
+ get buildWorkflowDirBundle () {
26
26
  return buildWorkflowDirBundle;
27
27
  },
28
- formatExtractedFilePath: function() {
28
+ get formatExtractedFilePath () {
29
29
  return formatExtractedFilePath;
30
30
  }
31
31
  });
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- readAllForCommandTarget: function() {
12
+ get readAllForCommandTarget () {
13
13
  return readAllForCommandTarget;
14
14
  },
15
- readWorkflowDir: function() {
15
+ get readWorkflowDir () {
16
16
  return readWorkflowDir;
17
17
  }
18
18
  });
@@ -143,7 +143,7 @@ const joinExtractedFiles = async (workflowDirCtx, workflowJson)=>{
143
143
  };
144
144
  const readWorkflowDir = async (workflowDirCtx, opts = {})=>{
145
145
  const { abspath } = workflowDirCtx;
146
- const { withExtractedFiles = false, withReadonlyField = false } = opts;
146
+ const { withExtractedFiles = false } = opts;
147
147
  const dirExists = await _fsextra.pathExists(abspath);
148
148
  if (!dirExists) throw new Error(`${abspath} does not exist`);
149
149
  const workflowJsonPath = await (0, _helpers1.lsWorkflowJson)(abspath);
@@ -151,7 +151,7 @@ const readWorkflowDir = async (workflowDirCtx, opts = {})=>{
151
151
  const result = await (0, _json.readJson)(workflowJsonPath);
152
152
  if (!result[0]) return result;
153
153
  let [workflowJson] = result;
154
- workflowJson = withReadonlyField ? workflowJson : (0, _objectisomorphic.omitDeep)(workflowJson, [
154
+ workflowJson = (0, _objectisomorphic.omitDeep)(workflowJson, [
155
155
  "__readonly"
156
156
  ]);
157
157
  return withExtractedFiles ? joinExtractedFiles(workflowDirCtx, workflowJson) : [
@@ -5,20 +5,20 @@ Object.defineProperty(exports, "__esModule", {
5
5
  function _export(target, all) {
6
6
  for(var name in all)Object.defineProperty(target, name, {
7
7
  enumerable: true,
8
- get: all[name]
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- pruneWorkflowsIndexDir: function() {
12
+ get pruneWorkflowsIndexDir () {
13
13
  return pruneWorkflowsIndexDir;
14
14
  },
15
- writeWorkflowDirFromBundle: function() {
15
+ get writeWorkflowDirFromBundle () {
16
16
  return writeWorkflowDirFromBundle;
17
17
  },
18
- writeWorkflowDirFromData: function() {
18
+ get writeWorkflowDirFromData () {
19
19
  return writeWorkflowDirFromData;
20
20
  },
21
- writeWorkflowsIndexDir: function() {
21
+ get writeWorkflowsIndexDir () {
22
22
  return writeWorkflowsIndexDir;
23
23
  }
24
24
  });
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get ALL_RESOURCE_TYPES () {
13
+ return ALL_RESOURCE_TYPES;
14
+ },
15
+ get RESOURCE_SUBDIRS () {
16
+ return RESOURCE_SUBDIRS;
17
+ }
18
+ });
19
+ const ALL_RESOURCE_TYPES = [
20
+ // Partials first, as email layouts and workflows may reference them
21
+ "partial",
22
+ // Email layouts next, as workflows with email channel steps may reference them
23
+ "email_layout",
24
+ "workflow",
25
+ "translation"
26
+ ];
27
+ const RESOURCE_SUBDIRS = {
28
+ email_layout: "layouts",
29
+ partial: "partials",
30
+ translation: "translations",
31
+ workflow: "workflows"
32
+ };