@sap/artifact-management 1.17.2 → 1.18.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 (35) hide show
  1. package/README.md +2 -0
  2. package/dist/projectapi.js +3 -0
  3. package/dist/projectapi.js.LICENSE.txt +86 -0
  4. package/dist/src/cp/templates/file-templates/OverviewPage-template.html +1 -1
  5. package/dist/src/cp/templates/file-templates/launchpadPage-template.html +2 -2
  6. package/dist/src/index.js +3 -1
  7. package/dist/src/index.js.map +1 -1
  8. package/dist/src/plugins/cap/generators/CapLaunchpadGenerator.js +1 -1
  9. package/dist/src/plugins/cap/generators/CapLaunchpadGenerator.js.map +1 -1
  10. package/dist/src/plugins/ui5/generators/UI5ModuleGenerator.js +1 -1
  11. package/dist/src/plugins/ui5/generators/UI5ModuleGenerator.js.map +1 -1
  12. package/dist/src/project-api/CommandExecutor.js +232 -0
  13. package/dist/src/project-api/CommandExecutor.js.map +1 -0
  14. package/dist/src/project-api/ProjectCLI.js +125 -409
  15. package/dist/src/project-api/ProjectCLI.js.map +1 -1
  16. package/dist/templates/assets/SAP_R_grad.svg +1 -0
  17. package/dist/templates/assets/header.jpg +0 -0
  18. package/dist/templates/assets/launchpad.css +7 -0
  19. package/dist/templates/assets/preview.css +78 -0
  20. package/dist/templates/file-templates/OverviewPage-template.html +52 -0
  21. package/dist/templates/file-templates/Preview-template.xml +108 -0
  22. package/dist/templates/file-templates/launchpadPage-template.html +29 -0
  23. package/dist/templates/launchpad-ui5-app-template/package.json +18 -0
  24. package/dist/templates/launchpad-ui5-app-template/ui5.yaml +5 -0
  25. package/dist/templates/launchpad-ui5-app-template/webapp/i18n/i18n.properties +9 -0
  26. package/dist/templates/launchpad-ui5-app-template/webapp/manifest.json +84 -0
  27. package/dist/templates/launchpad-ui5-app-template/webapp/xs-app.json +31 -0
  28. package/dist/templates/mta-cap-db-template.yaml +10 -0
  29. package/dist/templates/mta-cap-srv-template.yaml +14 -0
  30. package/dist/templates/mta-cap-template.yaml +21 -0
  31. package/dist/templates/mta-ui-deployer-template.yaml +6 -0
  32. package/dist/tsconfig.tsbuildinfo +102 -65
  33. package/dist/types/src/index.d.ts +1 -0
  34. package/dist/types/src/project-api/CommandExecutor.d.ts +5 -0
  35. package/package.json +7 -17
@@ -0,0 +1,86 @@
1
+ /*!
2
+ * FileStreamRotator
3
+ * Copyright(c) 2012-2017 Holiday Extras.
4
+ * Copyright(c) 2017 Roger C.
5
+ * MIT Licensed
6
+ */
7
+
8
+ /*!
9
+ * fill-range <https://github.com/jonschlinkert/fill-range>
10
+ *
11
+ * Copyright (c) 2014-present, Jon Schlinkert.
12
+ * Licensed under the MIT License.
13
+ */
14
+
15
+ /*!
16
+ * is-extglob <https://github.com/jonschlinkert/is-extglob>
17
+ *
18
+ * Copyright (c) 2014-2016, Jon Schlinkert.
19
+ * Licensed under the MIT License.
20
+ */
21
+
22
+ /*!
23
+ * is-glob <https://github.com/jonschlinkert/is-glob>
24
+ *
25
+ * Copyright (c) 2014-2017, Jon Schlinkert.
26
+ * Released under the MIT License.
27
+ */
28
+
29
+ /*!
30
+ * is-number <https://github.com/jonschlinkert/is-number>
31
+ *
32
+ * Copyright (c) 2014-present, Jon Schlinkert.
33
+ * Released under the MIT License.
34
+ */
35
+
36
+ /*!
37
+ * normalize-path <https://github.com/jonschlinkert/normalize-path>
38
+ *
39
+ * Copyright (c) 2014-2018, Jon Schlinkert.
40
+ * Released under the MIT License.
41
+ */
42
+
43
+ /*!
44
+ * parse-gitignore <https://github.com/jonschlinkert/parse-gitignore>
45
+ *
46
+ * Copyright (c) 2015-present, Jon Schlinkert.
47
+ * Released under the MIT License.
48
+ */
49
+
50
+ /*!
51
+ * to-regex-range <https://github.com/micromatch/to-regex-range>
52
+ *
53
+ * Copyright (c) 2015-present, Jon Schlinkert.
54
+ * Released under the MIT License.
55
+ */
56
+
57
+ /*! http://mths.be/fromcodepoint v0.1.0 by @mathias */
58
+
59
+ /*! queue-microtask. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
60
+
61
+ /*! run-parallel. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
62
+
63
+ /*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
64
+
65
+ /**
66
+ * @file Embedded JavaScript templating engine. {@link http://ejs.co}
67
+ * @author Matthew Eernisse <mde@fleegix.org>
68
+ * @author Tiancheng "Timothy" Gu <timothygu99@gmail.com>
69
+ * @project EJS
70
+ * @license {@link http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0}
71
+ */
72
+
73
+ /**
74
+ * @license
75
+ * Lodash <https://lodash.com/>
76
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
77
+ * Released under MIT license <https://lodash.com/license>
78
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
79
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
80
+ */
81
+
82
+ //! moment.js
83
+
84
+ //! moment.js locale configuration
85
+
86
+ //!!FileSystemFactory.getVscode();
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <title> <%- pageTitle %> </title>
6
6
  <script src="shared-config.js"></script>
7
- <script src="https://ui5.sap.com/1.104.2/resources/sap-ui-core.js"
7
+ <script src="https://ui5.sap.com/1.108.3/resources/sap-ui-core.js"
8
8
  id="sap-ui-bootstrap"
9
9
  data-sap-ui-theme='sap_horizon'
10
10
  data-sap-ui-bindingSyntax="complex"
@@ -10,9 +10,9 @@
10
10
  window["sap-ushell-config"] = <%- applications %>;
11
11
  </script>
12
12
  <link rel="stylesheet" href="assets/launchpad.css">
13
- <script src="https://ui5.sap.com/1.104.2/test-resources/sap/ushell/bootstrap/sandbox.js"></script>
13
+ <script src="https://ui5.sap.com/1.108.3/test-resources/sap/ushell/bootstrap/sandbox.js"></script>
14
14
  <script
15
- src="https://ui5.sap.com/1.104.2/resources/sap-ui-core.js"
15
+ src="https://ui5.sap.com/1.108.3/resources/sap-ui-core.js"
16
16
  data-sap-ui-libs="sap.m, sap.ushell, sap.fe.templates"
17
17
  data-sap-ui-compatVersion="edge"
18
18
  data-sap-ui-theme="sap_horizon"
package/dist/src/index.js CHANGED
@@ -13,7 +13,7 @@ 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
- exports.AutoBuilder = exports.ItemWatcherType = exports.WorkspaceImpl = exports.ProjectImpl = void 0;
16
+ exports.CommandExecutor = exports.AutoBuilder = exports.ItemWatcherType = exports.WorkspaceImpl = exports.ProjectImpl = void 0;
17
17
  var ProjectImpl_1 = require("./project-api/ProjectImpl");
18
18
  Object.defineProperty(exports, "ProjectImpl", { enumerable: true, get: function () { return __importDefault(ProjectImpl_1).default; } });
19
19
  var WorkspaceImpl_1 = require("./project-api/WorkspaceImpl");
@@ -22,6 +22,8 @@ var ItemWatcherApi_1 = require("./project-api/ItemWatcherApi");
22
22
  Object.defineProperty(exports, "ItemWatcherType", { enumerable: true, get: function () { return ItemWatcherApi_1.ItemWatcherType; } });
23
23
  var AutoBuilder_1 = require("./project-api/AutoBuilder");
24
24
  Object.defineProperty(exports, "AutoBuilder", { enumerable: true, get: function () { return __importDefault(AutoBuilder_1).default; } });
25
+ var CommandExecutor_1 = require("./project-api/CommandExecutor");
26
+ Object.defineProperty(exports, "CommandExecutor", { enumerable: true, get: function () { return __importDefault(CommandExecutor_1).default; } });
25
27
  __exportStar(require("./project-api/buildServiceInfo"), exports);
26
28
  __exportStar(require("@sap/artifact-management-base"), exports);
27
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,yDAAmE;AAA1D,2HAAA,OAAO,OAAe;AAC/B,6DAAuE;AAA9D,+HAAA,OAAO,OAAiB;AACjC,+DAA0F;AAAtD,iHAAA,eAAe,OAAA;AACnD,yDAAmE;AAA1D,2HAAA,OAAO,OAAe;AAC/B,iEAA+C;AAC/C,gEAA8C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,yDAAmE;AAA1D,2HAAA,OAAO,OAAe;AAC/B,6DAAuE;AAA9D,+HAAA,OAAO,OAAiB;AACjC,+DAA0F;AAAtD,iHAAA,eAAe,OAAA;AACnD,yDAAmE;AAA1D,2HAAA,OAAO,OAAe;AAC/B,iEAA2E;AAAlE,mIAAA,OAAO,OAAmB;AACnC,iEAA+C;AAC/C,gEAA8C"}
@@ -21,7 +21,7 @@ class CapLaunchpadGenerator {
21
21
  builder: 'custom',
22
22
  commands: [
23
23
  'npm install',
24
- 'npx -p @ui5/cli ui5 build --dest dist --include-task=generateManifestBundle --include-task=generateCachebusterInfo',
24
+ 'npx -p @ui5/cli@2.14.17 ui5 build --dest dist --include-task=generateManifestBundle --include-task=generateCachebusterInfo',
25
25
  `bash -c "cd dist && npx bestzip ../../../build/dist/${zipName} *"`,
26
26
  'rm -rf dist',
27
27
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"CapLaunchpadGenerator.js","sourceRoot":"","sources":["../../../../../src/plugins/cap/generators/CapLaunchpadGenerator.ts"],"names":[],"mappings":";;AAAA,4EAAgK;AAEhK,MAAqB,qBAAqB;IAEtC,OAAO;QACH,OAAO,qCAAU,CAAC,GAAG,CAAC;IAC1B,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,OAA+B;QACzD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,mBAAmB;QACrB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAA+B;QACnD,MAAM,OAAO,GAAG,eAAe,CAAC;QAChC,OAAO;YACH,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC;YACjD,IAAI,EAAE,wCAAa,CAAC,KAAK;YACzB,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,iBAAiB,CAAC;YACpD,kBAAkB,EAAE;gBAChB,OAAO,EAAE,QAAQ;gBACjB,QAAQ,EAAY;oBAChB,aAAa;oBACb,oHAAoH;oBACpH,uDAAuD,OAAO,KAAK;oBACnE,aAAa;iBAChB;gBACD,aAAa,EAAE,OAAO;gBACtB,qBAAqB,EAAE,EAAE;gBACzB,cAAc,EAAE,kBAAkB;aACrC;SACJ,CAAC;IACN,CAAC;IAED,QAAQ;QACJ,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AAtCD,wCAsCC"}
1
+ {"version":3,"file":"CapLaunchpadGenerator.js","sourceRoot":"","sources":["../../../../../src/plugins/cap/generators/CapLaunchpadGenerator.ts"],"names":[],"mappings":";;AAAA,4EAAgK;AAEhK,MAAqB,qBAAqB;IAEtC,OAAO;QACH,OAAO,qCAAU,CAAC,GAAG,CAAC;IAC1B,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,OAA+B;QACzD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,mBAAmB;QACrB,OAAO,EAAE,CAAC;IACd,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAA+B;QACnD,MAAM,OAAO,GAAG,eAAe,CAAC;QAChC,OAAO;YACH,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC;YACjD,IAAI,EAAE,wCAAa,CAAC,KAAK;YACzB,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,iBAAiB,CAAC;YACpD,kBAAkB,EAAE;gBAChB,OAAO,EAAE,QAAQ;gBACjB,QAAQ,EAAY;oBAChB,aAAa;oBACb,4HAA4H;oBAC5H,uDAAuD,OAAO,KAAK;oBACnE,aAAa;iBAChB;gBACD,aAAa,EAAE,OAAO;gBACtB,qBAAqB,EAAE,EAAE;gBACzB,cAAc,EAAE,kBAAkB;aACrC;SACJ,CAAC;IACN,CAAC;IAED,QAAQ;QACJ,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AAtCD,wCAsCC"}
@@ -127,7 +127,7 @@ class UI5ModuleGenerator {
127
127
  }
128
128
  else {
129
129
  this.modifyManifestJson(context);
130
- retObj['build-parameters'].commands.push('rm -rf dist-zip dist', 'npx -p @ui5/cli ui5 build --dest dist --include-task=generateManifestBundle --include-task=generateCachebusterInfo', 'mkdir dist-zip', `bash -c "cd dist && npx bestzip ../dist-zip/${zipName} *"`);
130
+ retObj['build-parameters'].commands.push('rm -rf dist-zip dist', 'npx -p @ui5/cli@2.14.17 ui5 build --dest dist --include-task=generateManifestBundle --include-task=generateCachebusterInfo', 'mkdir dist-zip', `bash -c "cd dist && npx bestzip ../dist-zip/${zipName} *"`);
131
131
  }
132
132
  return retObj;
133
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UI5ModuleGenerator.js","sourceRoot":"","sources":["../../../../../src/plugins/ui5/generators/UI5ModuleGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UI5ModuleGenerator.js","sourceRoot":"","sources":["../../../../../src/plugins/ui5/generators/UI5ModuleGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,232 @@
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 artifact_management_base_1 = require("@sap/artifact-management-base");
7
+ const ProjectImpl_1 = __importDefault(require("./ProjectImpl"));
8
+ const js_yaml_1 = __importDefault(require("js-yaml"));
9
+ const CallDeferred_1 = __importDefault(require("../commons/CallDeferred"));
10
+ const WorkspaceImpl_1 = __importDefault(require("./WorkspaceImpl"));
11
+ const commands = [];
12
+ class CommandExecutorClass {
13
+ async execute(command, ...params) {
14
+ if (!!command) {
15
+ const commandObject = commands.find(c => c.name === command);
16
+ if (commandObject) {
17
+ const projectPath = (params && params[0]) || '.';
18
+ return await commandObject.run(projectPath, ...params.slice(1));
19
+ }
20
+ throw new Error(`Unsupported command ${command}`);
21
+ }
22
+ throw new Error('No command');
23
+ }
24
+ }
25
+ const CommandExecutor = new CommandExecutorClass();
26
+ exports.default = CommandExecutor;
27
+ commands.push({
28
+ name: 'list-items',
29
+ run: async (path, ...params) => {
30
+ if (typeof params[0] === 'string') {
31
+ // params from vscode command, all params are string
32
+ const newParams = [];
33
+ newParams[0] = params;
34
+ params = newParams;
35
+ }
36
+ const types = params[0];
37
+ const filter = (types === null || types === void 0 ? void 0 : types.length) ? { types } : undefined;
38
+ const api = new ProjectImpl_1.default(path);
39
+ const entities = await api.readItems(filter);
40
+ return JSON.stringify(entities, null, 2);
41
+ },
42
+ }, {
43
+ name: 'get-detail-info',
44
+ run: async (path, ...params) => {
45
+ const type = params[0];
46
+ const ref = params[1];
47
+ const entityPath = params[2];
48
+ let options = undefined;
49
+ if (params[3] !== undefined) {
50
+ options = {
51
+ inherited: params[3],
52
+ };
53
+ }
54
+ if (type && ref) {
55
+ const api = new ProjectImpl_1.default(path);
56
+ const entities = await api.getDetailInfo(type, ref, entityPath, options);
57
+ return JSON.stringify(entities, null, 2);
58
+ }
59
+ else {
60
+ return 'Invalid arguments length. Valid format is "dev-project get-detail-info [path] [type] [ref] [entitypath]"';
61
+ }
62
+ },
63
+ }, {
64
+ name: 'show',
65
+ run: async (path, ...params) => {
66
+ const api = new ProjectImpl_1.default(path);
67
+ const project = await api.read();
68
+ return JSON.stringify(project, undefined, 2);
69
+ },
70
+ }, {
71
+ name: 'show-manifest',
72
+ run: async (path, ...params) => {
73
+ const api = new ProjectImpl_1.default(path);
74
+ const mtaObject = await api.getManifest();
75
+ return js_yaml_1.default.dump(mtaObject);
76
+ },
77
+ }, {
78
+ name: 'build',
79
+ run: async (path, ...params) => {
80
+ const useHeadlessGenerator = params[0];
81
+ if (useHeadlessGenerator && useHeadlessGenerator === 'true') {
82
+ const api = new ProjectImpl_1.default(path, false, !!useHeadlessGenerator);
83
+ await api.build();
84
+ }
85
+ else {
86
+ const api = new ProjectImpl_1.default(path);
87
+ await api.build();
88
+ }
89
+ },
90
+ }, {
91
+ name: 'buildV2',
92
+ run: async (path, ...params) => {
93
+ const api = new ProjectImpl_1.default(path);
94
+ await api.buildV2();
95
+ },
96
+ }, {
97
+ name: 'deploy',
98
+ run: async (path, ...params) => {
99
+ let api = new ProjectImpl_1.default(path);
100
+ const useHeadlessGenerator = params[0];
101
+ if (useHeadlessGenerator === 'true') {
102
+ api = new ProjectImpl_1.default(path, false, !!useHeadlessGenerator);
103
+ }
104
+ await api.build();
105
+ await api.deploy();
106
+ const projectOverviewURL = await api.getProjectOverviewURL();
107
+ return { 'applicationOverviewURL': projectOverviewURL };
108
+ },
109
+ }, {
110
+ name: 'deployV2',
111
+ run: async (path, ...params) => {
112
+ const api = new ProjectImpl_1.default(path);
113
+ await api.buildV2();
114
+ await api.deployV2();
115
+ const projectOverviewURL = await api.getProjectOverviewURL();
116
+ return { 'applicationOverviewURL': projectOverviewURL };
117
+ },
118
+ }, {
119
+ name: 'get-projectoverview-url',
120
+ run: async (path, ...params) => {
121
+ const api = new ProjectImpl_1.default(path);
122
+ try {
123
+ const projectOverviewURL = await api.getProjectOverviewURL();
124
+ return { 'applicationOverviewURL': projectOverviewURL };
125
+ }
126
+ catch (error) {
127
+ return { 'errorCode': 1, 'errorMessage': error.message };
128
+ }
129
+ },
130
+ }, {
131
+ name: 'get-application-deployment-summary',
132
+ run: async (path, ...params) => {
133
+ const api = new ProjectImpl_1.default(path);
134
+ try {
135
+ const application_summary = await api.getApplicationDeploymentSummary();
136
+ return { 'applicationSummary': application_summary };
137
+ }
138
+ catch (error) {
139
+ return { 'errorCode': 1, 'errorMessage': error.message };
140
+ }
141
+ },
142
+ }, {
143
+ name: 'run',
144
+ run: async (path, ...params) => {
145
+ if (typeof params[0] === 'string') {
146
+ // params from vscode command, all params are string
147
+ const newParams = [];
148
+ const lastParam = params[params.length - 1].toLowerCase();
149
+ if (lastParam === 'true' || lastParam === 'false') {
150
+ params.splice(params.length - 1, 1);
151
+ newParams[0] = params;
152
+ lastParam ? newParams[1] = true : newParams[1] = false;
153
+ }
154
+ else {
155
+ newParams[0] = params;
156
+ newParams[1] = false;
157
+ }
158
+ params = newParams;
159
+ }
160
+ let option = params[0] || undefined;
161
+ if (params[1]) {
162
+ option = (option || []).concat('launchpad');
163
+ }
164
+ const api = new ProjectImpl_1.default(path);
165
+ await api.run(option);
166
+ },
167
+ }, {
168
+ name: 'watch',
169
+ run: async (path, ...params) => {
170
+ const api = new ProjectImpl_1.default(path);
171
+ const autoBuilder = await api.autoBuild();
172
+ await autoBuilder.start();
173
+ },
174
+ }, {
175
+ name: 'watch-items',
176
+ run: async (path, ...params) => {
177
+ const api = new ProjectImpl_1.default(path);
178
+ const itemWatcher = await api.watchItems();
179
+ const printItems = async (event, file) => {
180
+ let i = 0;
181
+ for (; event && i < event.length; i++) {
182
+ artifact_management_base_1.getLogger().info(`Recieved Event -> ${event[i]} : File - ${file[i]}`);
183
+ }
184
+ artifact_management_base_1.getLogger().info(`One Read Items being fired for ${i} :events`);
185
+ const items = await itemWatcher.readItems();
186
+ artifact_management_base_1.getLogger().info(`Event Type -> ${event} : File - ${file}`);
187
+ artifact_management_base_1.getLogger().debug(JSON.stringify(items, null, 2));
188
+ };
189
+ const deferredCall = new CallDeferred_1.default({
190
+ func: printItems,
191
+ triggerDelay: 20,
192
+ maxTriggerDelay: 1000,
193
+ recallDelay: 2000,
194
+ });
195
+ itemWatcher.on('updated', (event, file) => printItems(event, file));
196
+ deferredCall.call();
197
+ },
198
+ }, {
199
+ name: 'get-project-info',
200
+ run: async (path, ...params) => {
201
+ const api = new ProjectImpl_1.default(path);
202
+ const projectInfo = await api.getProjectInfo();
203
+ return JSON.stringify(projectInfo, undefined, 2);
204
+ },
205
+ }, {
206
+ name: 'get-workspace-info',
207
+ run: async (path, ...params) => {
208
+ const workspaceApi = new WorkspaceImpl_1.default(path);
209
+ const workspaceInfo = [];
210
+ const projectApis = await workspaceApi.getProjects();
211
+ for (const api of projectApis) {
212
+ const projectInfo = await api.getProjectInfo();
213
+ workspaceInfo.push(projectInfo);
214
+ }
215
+ return JSON.stringify(workspaceInfo, undefined, 2);
216
+ },
217
+ }, {
218
+ name: 'get-modules-info',
219
+ run: async (path, ...params) => {
220
+ const api = new ProjectImpl_1.default(path);
221
+ const modulesInfo = await api.getModulesInfo();
222
+ return JSON.stringify(modulesInfo, undefined, 2);
223
+ },
224
+ }, {
225
+ name: 'get-data-info',
226
+ run: async (filePath, ...params) => {
227
+ const api = new ProjectImpl_1.default('.');
228
+ const data = await api.getDataInfo(filePath);
229
+ return JSON.stringify(data, undefined, 2);
230
+ },
231
+ });
232
+ //# sourceMappingURL=CommandExecutor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandExecutor.js","sourceRoot":"","sources":["../../../src/project-api/CommandExecutor.ts"],"names":[],"mappings":";;;;;AAAA,4EAAiF;AACjF,gEAAwC;AACxC,sDAA2B;AAC3B,2EAAmD;AACnD,oEAA4C;AAO5C,MAAM,QAAQ,GAAe,EAAE,CAAC;AAEhC,MAAM,oBAAoB;IACf,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,GAAG,MAAa;QAClD,IAAI,CAAC,CAAC,OAAO,EAAE;YACX,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAC7D,IAAI,aAAa,EAAE;gBACf,MAAM,WAAW,GAAW,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;gBACzD,OAAO,MAAM,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACnE;YAED,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;SACrD;QAED,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;CACJ;AAED,MAAM,eAAe,GAAG,IAAI,oBAAoB,EAAE,CAAC;AACnD,kBAAe,eAAe,CAAC;AAE/B,QAAQ,CAAC,IAAI,CAAC;IACV,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAA6B,EAAE,EAAE;QACzD,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YAC/B,oDAAoD;YACpD,MAAM,SAAS,GAAe,EAAE,CAAC;YACjC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAkB,CAAC;YAClC,MAAM,GAAG,SAAS,CAAC;SACtB;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAa,CAAC;QACpC,MAAM,MAAM,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,EAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACrD,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,iBAAiB;IACvB,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAQ,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAQ,CAAC;QAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAQ,CAAC;QACpC,IAAI,OAAO,GAAsC,SAAS,CAAC;QAC3D,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE;YACzB,OAAO,GAAG;gBACN,SAAS,EAAE,MAAM,CAAC,CAAC,CAAQ;aAC9B,CAAC;SACL;QACD,IAAI,IAAI,IAAI,GAAG,EAAG;YACd,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;SAC5C;aAAM;YACH,OAAO,0GAA0G,CAAC;SACrH;IACL,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,eAAe;IACrB,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,iBAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,OAAO;IACb,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,oBAAoB,IAAI,oBAAoB,KAAK,MAAM,EAAE;YACzD,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,oBAAoB,CAAC,CAAC;YACjE,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;SACrB;aAAM;YACH,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;SACrB;IACL,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,SAAS;IACf,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,IAAI,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,oBAAoB,KAAK,MAAM,EAAE;YACjC,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,oBAAoB,CAAC,CAAC;SAC9D;QACD,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,kBAAkB,GAAG,MAAM,GAAG,CAAC,qBAAqB,EAAE,CAAC;QAC7D,OAAO,EAAC,wBAAwB,EAAE,kBAAkB,EAAC,CAAC;IAC1D,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,UAAU;IAChB,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,kBAAkB,GAAG,MAAM,GAAG,CAAC,qBAAqB,EAAE,CAAC;QAC7D,OAAO,EAAC,wBAAwB,EAAE,kBAAkB,EAAC,CAAC;IAC1D,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,yBAAyB;IAC/B,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI;YACA,MAAM,kBAAkB,GAAG,MAAM,GAAG,CAAC,qBAAqB,EAAE,CAAC;YAC7D,OAAO,EAAC,wBAAwB,EAAE,kBAAkB,EAAC,CAAC;SACzD;QAAC,OAAO,KAAU,EAAE;YACjB,OAAO,EAAC,WAAW,EAAE,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,OAAO,EAAC,CAAC;SAC1D;IACL,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,oCAAoC;IAC1C,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI;YACA,MAAM,mBAAmB,GAAG,MAAM,GAAG,CAAC,+BAA+B,EAAE,CAAC;YACxE,OAAO,EAAC,oBAAoB,EAAG,mBAAmB,EAAC,CAAC;SACvD;QAAC,OAAO,KAAU,EAAE;YACjB,OAAO,EAAC,WAAW,EAAE,CAAC,EAAC,cAAc,EAAE,KAAK,CAAC,OAAO,EAAC,CAAC;SACzD;IACL,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,KAAK;IACX,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAa,EAAE,EAAE;QACzC,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YAC/B,oDAAoD;YACpD,MAAM,SAAS,GAAG,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAC1D,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,OAAO,EAAE;gBAC/C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;gBACtB,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;aAC1D;iBAAM;gBACH,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;gBACtB,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;aACxB;YACD,MAAM,GAAG,SAAS,CAAC;SACtB;QAED,IAAI,MAAM,GAAyB,MAAM,CAAC,CAAC,CAAa,IAAI,SAAS,CAAC;QACtE,IAAI,MAAM,CAAC,CAAC,CAAY,EAAE;YACtB,MAAM,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SAC/C;QACD,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,OAAO;IACb,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,SAAS,EAAE,CAAC;QAC1C,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,aAAa;IACnB,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;QAE3C,MAAM,UAAU,GAAG,KAAK,EAAC,KAAe,EAAE,IAAc,EAAE,EAAE;YACxD,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,OAAO,KAAK,IAAI,CAAC,GAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAClC,oCAAS,EAAE,CAAC,IAAI,CAAC,qBAAqB,KAAK,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aACzE;YACD,oCAAS,EAAE,CAAC,IAAI,CAAC,mCAAmC,CAAC,UAAU,CAAC,CAAC;YACjE,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,CAAC;YAC5C,oCAAS,EAAE,CAAC,IAAI,CAAC,iBAAiB,KAAK,aAAa,IAAI,EAAE,CAAC,CAAC;YAC5D,oCAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,IAAI,sBAAY,CAAC;YAClC,IAAI,EAAE,UAAU;YAChB,YAAY,EAAE,EAAE;YAChB,eAAe,EAAE,IAAI;YACrB,WAAW,EAAE,IAAI;SACpB,CAAC,CAAC;QAEH,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,KAAc,EAAE,IAAa,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACtF,YAAY,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,cAAc,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,oBAAoB;IAC1B,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,YAAY,GAAG,IAAI,uBAAa,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,aAAa,GAAG,EAAE,CAAC;QACzB,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,WAAW,EAAE,CAAC;QACrD,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE;YAC3B,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,cAAc,EAAE,CAAC;YAC/C,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SACnC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,KAAK,EAAC,IAAY,EAAE,GAAG,MAAgB,EAAE,EAAE;QAC5C,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,cAAc,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;CACJ,EAAC;IACE,IAAI,EAAE,eAAe;IACrB,GAAG,EAAE,KAAK,EAAC,QAAgB,EAAE,GAAG,MAAgB,EAAE,EAAE;QAChD,MAAM,GAAG,GAAG,IAAI,qBAAW,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;CACJ,CAAC,CAAC"}