@celonis/content-cli 0.4.5 → 0.4.7

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.
@@ -0,0 +1,34 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ (function (factory) {
11
+ if (typeof module === "object" && typeof module.exports === "object") {
12
+ var v = factory(require, exports);
13
+ if (v !== undefined) module.exports = v;
14
+ }
15
+ else if (typeof define === "function" && define.amd) {
16
+ define(["require", "exports", "../services/http-client-service.v2", "../util/logger"], factory);
17
+ }
18
+ })(function (require, exports) {
19
+ "use strict";
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const http_client_service_v2_1 = require("../services/http-client-service.v2");
22
+ const logger_1 = require("../util/logger");
23
+ class VariablesApi {
24
+ assignVariableValues(packageKey, variablesAssignments) {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ return http_client_service_v2_1.httpClientV2.post(`/package-manager/api/nodes/by-package-key/${packageKey}/variables/values`, variablesAssignments).catch(e => {
27
+ throw new logger_1.FatalError(`Problem updating variables of package ${packageKey}: ${e}`);
28
+ });
29
+ });
30
+ }
31
+ }
32
+ VariablesApi.INSTANCE = new VariablesApi();
33
+ exports.variablesApi = VariablesApi.INSTANCE;
34
+ });
@@ -56,9 +56,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
56
56
  yield package_service_1.packageService.batchExportPackages(packageKeys, includeDependencies);
57
57
  });
58
58
  }
59
- batchImportPackages(spaceMappings, exportedPackagesFile) {
59
+ batchImportPackages(spaceMappings, dataModelMappingsFilePath, exportedPackagesFile) {
60
60
  return __awaiter(this, void 0, void 0, function* () {
61
- yield package_service_1.packageService.batchImportPackages(spaceMappings !== null && spaceMappings !== void 0 ? spaceMappings : [], exportedPackagesFile);
61
+ yield package_service_1.packageService.batchImportPackages(spaceMappings !== null && spaceMappings !== void 0 ? spaceMappings : [], dataModelMappingsFilePath, exportedPackagesFile);
62
62
  });
63
63
  }
64
64
  }
@@ -30,9 +30,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
30
30
  .description("Command to import all given packages")
31
31
  .option("-p, --profile <profile>", "Profile which you want to use to list packages")
32
32
  .option("--spaceMappings <spaceMappings...>", "List of mappings for importing packages to different target spaces. Mappings should follow format 'packageKey:targetSpaceKey'")
33
+ .option("--dataModelMappingsFile <dataModelMappingsFile>", "DataModel variable mappings file path")
33
34
  .requiredOption("-f, --file <file>", "Exported packages file (relative path)")
34
35
  .action((cmd) => __awaiter(this, void 0, void 0, function* () {
35
- yield new package_command_1.PackageCommand().batchImportPackages(cmd.spaceMappings, cmd.file);
36
+ yield new package_command_1.PackageCommand().batchImportPackages(cmd.spaceMappings, cmd.dataModelMappingsFile, cmd.file);
36
37
  process.exit();
37
38
  }));
38
39
  return program;
@@ -13,19 +13,18 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
13
13
  if (v !== undefined) module.exports = v;
14
14
  }
15
15
  else if (typeof define === "function" && define.amd) {
16
- define(["require", "exports", "./commands/package.command", "./commands/space.command", "./commands/data-pool.command", "./commands/asset.command", "commander", "./services/context.service", "./util/logger"], factory);
16
+ define(["require", "exports", "./commands/package.command", "./commands/space.command", "./commands/data-pool.command", "./commands/asset.command", "./util/logger", "commander", "./util/context-initializer"], factory);
17
17
  }
18
18
  })(function (require, exports) {
19
19
  "use strict";
20
- var _a;
21
20
  Object.defineProperty(exports, "__esModule", { value: true });
22
21
  const package_command_1 = require("./commands/package.command");
23
22
  const space_command_1 = require("./commands/space.command");
24
23
  const data_pool_command_1 = require("./commands/data-pool.command");
25
24
  const asset_command_1 = require("./commands/asset.command");
26
- const commander = require("commander");
27
- const context_service_1 = require("./services/context.service");
28
25
  const logger_1 = require("./util/logger");
26
+ const commander = require("commander");
27
+ const context_initializer_1 = require("./util/context-initializer");
29
28
  class List {
30
29
  static packages(program) {
31
30
  program
@@ -80,19 +79,20 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
80
79
  }
81
80
  }
82
81
  exports.List = List;
83
- const options = commander.parseOptions(process.argv);
84
- const indexOfProfileOption = (_a = options.unknown.indexOf('-p')) !== null && _a !== void 0 ? _a : options.unknown.indexOf('--profile');
85
82
  process.on("unhandledRejection", (e, promise) => {
86
83
  logger_1.logger.error(e.toString());
87
84
  });
88
- context_service_1.contextService.resolveProfile(options.unknown[indexOfProfileOption + 1]).then(() => {
85
+ const loadAllCommands = () => {
89
86
  List.packages(commander);
90
87
  List.spaces(commander);
91
88
  List.dataPools(commander);
92
89
  List.assets(commander);
93
90
  commander.parse(process.argv);
94
- }).catch(e => {
95
- console.log(e);
91
+ };
92
+ context_initializer_1.ContextInitializer.initContext()
93
+ .then(loadAllCommands)
94
+ .catch(e => {
95
+ logger_1.logger.error(e);
96
96
  });
97
97
  if (!process.argv.slice(2).length) {
98
98
  commander.outputHelp();
@@ -0,0 +1,7 @@
1
+ import { ContentNodeTransport, VariablesAssignments } from "../interfaces/package-manager.interfaces";
2
+ declare class VariablesApi {
3
+ static readonly INSTANCE: VariablesApi;
4
+ assignVariableValues(packageKey: string, variablesAssignments: VariablesAssignments[]): Promise<ContentNodeTransport[]>;
5
+ }
6
+ export declare const variablesApi: VariablesApi;
7
+ export {};
@@ -6,5 +6,5 @@ export declare class PackageCommand {
6
6
  pushPackages(profile: string, spaceKey: string): Promise<void>;
7
7
  listPackages(jsonResponse: boolean, includeDependencies: boolean, packageKeys: string[]): Promise<void>;
8
8
  batchExportPackages(packageKeys: string[], includeDependencies: boolean): Promise<void>;
9
- batchImportPackages(spaceMappings: string[], exportedPackagesFile: string): Promise<void>;
9
+ batchImportPackages(spaceMappings: string[], dataModelMappingsFilePath: string, exportedPackagesFile: string): Promise<void>;
10
10
  }
@@ -23,5 +23,5 @@ export declare class DataPoolPageTransport {
23
23
  totalCount: number;
24
24
  }
25
25
  export declare class DataPoolInstallVersionReport {
26
- dataModelIdMappings: Map<String, String>;
26
+ dataModelIdMappings: Map<string, string>;
27
27
  }
@@ -49,6 +49,14 @@ export interface VariablesAssignments {
49
49
  value: object;
50
50
  type: string;
51
51
  }
52
+ export interface VariableDefinitionWithValue {
53
+ key: string;
54
+ type: string;
55
+ description?: string;
56
+ source?: string;
57
+ runtime?: boolean;
58
+ metadata?: object;
59
+ }
52
60
  export interface PackageHistoryTransport {
53
61
  id: string;
54
62
  key: string;
@@ -4,6 +4,7 @@ export declare class FileService {
4
4
  writeToFileWithGivenName(data: any, filename: string): void;
5
5
  createDirectoryWithGivenName(dirName: string): void;
6
6
  readManifestFile(importedFileName: string): Promise<ManifestNodeTransport[]>;
7
+ readFileToJson<T>(fileName: string): Promise<T>;
7
8
  readFile(filename: string): string;
8
9
  private getSerializedFileContent;
9
10
  }
@@ -5,11 +5,11 @@ declare class PackageService {
5
5
  protected readonly fileDownloadedMessage = "File downloaded successfully. New filename: ";
6
6
  listPackages(): Promise<void>;
7
7
  findAndExportListOfAllPackages(includeDependencies: boolean, packageKeys: string[]): Promise<void>;
8
- batchImportPackages(spaceMappings: string[], exportedPackagesFile: string): Promise<void>;
8
+ batchImportPackages(spaceMappings: string[], dataModelMappingsFilePath: string, exportedPackagesFile: string): Promise<void>;
9
9
  private checkNodeForCircularDependency;
10
10
  private importPackage;
11
- private compareVersions;
12
11
  private importPackageVersion;
12
+ private isLatestVersion;
13
13
  private importDependencyPackages;
14
14
  private checkIfPackageVersionHasBeenImported;
15
15
  private createBodyForImport;
@@ -1,7 +1,8 @@
1
- import { PackageWithVariableAssignments } from "../../interfaces/package-manager.interfaces";
1
+ import { PackageWithVariableAssignments, VariablesAssignments } from "../../interfaces/package-manager.interfaces";
2
2
  import { BatchExportNodeTransport } from "../../interfaces/batch-export-node-transport";
3
3
  declare class VariableService {
4
4
  getVariableAssignmentsForNodes(nodes: BatchExportNodeTransport[]): Promise<PackageWithVariableAssignments[]>;
5
+ assignVariableValues(packageKey: string, variablesAssignments: VariablesAssignments[]): Promise<void>;
5
6
  }
6
7
  export declare const variableService: VariableService;
7
8
  export {};
@@ -0,0 +1,5 @@
1
+ export declare class SemanticVersioning {
2
+ private version;
3
+ constructor(version: string);
4
+ isGreaterThan(versionToCompare: SemanticVersioning): boolean;
5
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celonis/content-cli",
3
- "version": "0.4.5",
3
+ "version": "0.4.7",
4
4
  "description": "CLI Tool to help manage content in Celonis EMS",
5
5
  "main": "content-cli.js",
6
6
  "bin": {
@@ -43,7 +43,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
43
43
  const exportedDataPool = yield data_pool_api_1.dataPoolApi.exportDataPool(poolId);
44
44
  const exportedDataPoolString = JSON.stringify(exportedDataPool, null, 4);
45
45
  if (outputToJsonFile) {
46
- const reportFileName = uuid_1.v4() + "data_pool_" + poolId + ".json";
46
+ const reportFileName = uuid_1.v4() + "_data_pool_" + poolId + ".json";
47
47
  file_service_1.fileService.writeToFileWithGivenName(exportedDataPoolString, reportFileName);
48
48
  logger_1.logger.info(file_service_1.FileService.fileDownloadedMessage + reportFileName);
49
49
  }
@@ -1,3 +1,12 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
1
10
  (function (factory) {
2
11
  if (typeof module === "object" && typeof module.exports === "object") {
3
12
  var v = factory(require, exports);
@@ -26,6 +35,12 @@
26
35
  const manifest = yaml_1.parse(fs.readFileSync(path.resolve(importedFileName + "/manifest.yml"), { encoding: "utf-8" }));
27
36
  return Promise.all(manifest);
28
37
  }
38
+ readFileToJson(fileName) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ const fileContent = this.readFile(fileName);
41
+ return JSON.parse(fileContent);
42
+ });
43
+ }
29
44
  readFile(filename) {
30
45
  if (!fs.existsSync(path.resolve(process.cwd(), filename))) {
31
46
  logger_1.logger.error(new logger_1.FatalError(`The provided file '${filename}' does not exit`));
@@ -13,7 +13,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
13
13
  if (v !== undefined) module.exports = v;
14
14
  }
15
15
  else if (typeof define === "function" && define.amd) {
16
- define(["require", "exports", "../../util/logger", "../../api/package-api", "uuid", "../file-service", "./datamodel-service", "../../api/node-api", "../../api/package-dependencies-api", "./variable-service", "./space-service", "fs", "adm-zip", "path", "os", "../../util/yaml"], factory);
16
+ define(["require", "exports", "../../util/logger", "../../api/package-api", "uuid", "../file-service", "./datamodel-service", "../../api/node-api", "../../api/package-dependencies-api", "./variable-service", "./space-service", "fs", "adm-zip", "path", "os", "../../util/semantic-versioning", "../../util/yaml"], factory);
17
17
  }
18
18
  })(function (require, exports) {
19
19
  "use strict";
@@ -31,6 +31,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
31
31
  const AdmZip = require("adm-zip");
32
32
  const path = require("path");
33
33
  const os_1 = require("os");
34
+ const semantic_versioning_1 = require("../../util/semantic-versioning");
34
35
  const yaml_1 = require("../../util/yaml");
35
36
  class PackageService {
36
37
  constructor() {
@@ -79,7 +80,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
79
80
  this.exportListOfPackages(nodesListToExport, fieldsToInclude);
80
81
  });
81
82
  }
82
- batchImportPackages(spaceMappings, exportedPackagesFile) {
83
+ batchImportPackages(spaceMappings, dataModelMappingsFilePath, exportedPackagesFile) {
83
84
  return __awaiter(this, void 0, void 0, function* () {
84
85
  exportedPackagesFile = exportedPackagesFile + (exportedPackagesFile.includes(".zip") ? "" : ".zip");
85
86
  const zip = new AdmZip(exportedPackagesFile);
@@ -87,6 +88,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
87
88
  yield fs.mkdirSync(importedFilePath);
88
89
  yield zip.extractAllTo(importedFilePath);
89
90
  const manifestNodes = yield file_service_1.fileService.readManifestFile(importedFilePath);
91
+ let dmTargetIdsBySourceIds;
92
+ if (dataModelMappingsFilePath) {
93
+ const dataModelMappings = yield file_service_1.fileService.readFileToJson(dataModelMappingsFilePath);
94
+ dmTargetIdsBySourceIds = new Map(Object.entries(dataModelMappings.dataModelIdMappings));
95
+ }
90
96
  manifestNodes.map(node => node.dependenciesByVersion = new Map(Object.entries(node.dependenciesByVersion)));
91
97
  const importedVersionsByNodeKey = new Map();
92
98
  const sourceToTargetVersionsByNodeKey = new Map();
@@ -102,7 +108,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
102
108
  });
103
109
  const draftIdsByPackageKeyAndVersion = new Map();
104
110
  for (const node of manifestNodes) {
105
- yield this.importPackage(node, manifestNodes, sourceToTargetVersionsByNodeKey, customSpacesMap, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath);
111
+ yield this.importPackage(node, manifestNodes, sourceToTargetVersionsByNodeKey, customSpacesMap, dmTargetIdsBySourceIds, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath);
106
112
  }
107
113
  });
108
114
  }
@@ -119,14 +125,18 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
119
125
  }
120
126
  });
121
127
  }
122
- importPackage(packageToImport, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath) {
128
+ importPackage(packageToImport, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, dmTargetIdsBySourceIds, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath) {
123
129
  var _a;
124
130
  return __awaiter(this, void 0, void 0, function* () {
125
131
  const importedPackageVersion = (_a = importedVersionsByNodeKey.get(packageToImport.packageKey)) !== null && _a !== void 0 ? _a : [];
126
- const versionsOfPackage = [...packageToImport.dependenciesByVersion.keys()].sort((k1, k2) => this.compareVersions(k1, k2)).filter(version => !importedPackageVersion.includes(version));
132
+ const versionsOfPackage = [...packageToImport.dependenciesByVersion.keys()].sort((k1, k2) => {
133
+ const version1 = new semantic_versioning_1.SemanticVersioning(k1);
134
+ const version2 = new semantic_versioning_1.SemanticVersioning(k1);
135
+ return version1.isGreaterThan(version2) ? 1 : -1;
136
+ }).filter(version => !importedPackageVersion.includes(version));
127
137
  for (const version of versionsOfPackage) {
128
138
  try {
129
- yield this.importPackageVersion(packageToImport, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath, version);
139
+ yield this.importPackageVersion(packageToImport, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, dmTargetIdsBySourceIds, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath, version);
130
140
  }
131
141
  catch (e) {
132
142
  logger_1.logger.error(`Problem import package with key: ${packageToImport.packageKey} ${version} ${e}`);
@@ -134,24 +144,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
134
144
  }
135
145
  });
136
146
  }
137
- compareVersions(version1, version2) {
138
- const splitVersion1 = version1.split(".");
139
- const splitVersion2 = version2.split(".");
140
- const majorVersion1 = splitVersion1[0];
141
- const majorVersion2 = splitVersion2[0];
142
- const minorVersion1 = splitVersion1[1];
143
- const minorVersion2 = splitVersion2[1];
144
- const patchVersion1 = splitVersion1[2];
145
- const patchVersion2 = splitVersion2[2];
146
- const firstVersionIsGreaterThanFirst = (majorVersion1 > majorVersion2) || (minorVersion1 > minorVersion2) || (patchVersion1 > patchVersion2);
147
- return firstVersionIsGreaterThanFirst ? 1 : -1;
148
- }
149
- importPackageVersion(packageToImport, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath, versionOfPackageBeingImported) {
147
+ importPackageVersion(packageToImport, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, dmTargetIdsBySourceIds, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath, versionOfPackageBeingImported) {
150
148
  var _a, _b;
151
149
  return __awaiter(this, void 0, void 0, function* () {
152
150
  if (packageToImport.dependenciesByVersion.get(versionOfPackageBeingImported).length) {
153
151
  const dependenciesOfPackageVersion = packageToImport.dependenciesByVersion.get(versionOfPackageBeingImported);
154
- yield this.importDependencyPackages(dependenciesOfPackageVersion, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath);
152
+ yield this.importDependencyPackages(dependenciesOfPackageVersion, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, dmTargetIdsBySourceIds, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath);
155
153
  }
156
154
  if (this.checkIfPackageVersionHasBeenImported(packageToImport.packageKey, versionOfPackageBeingImported, importedVersionsByNodeKey)) {
157
155
  return;
@@ -165,6 +163,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
165
163
  yield package_api_1.packageApi.movePackageToSpace(nodeInTargetTeam.id, targetSpace.id);
166
164
  }
167
165
  nodeInTargetTeam = yield node_api_1.nodeApi.findOneByKeyAndRootNodeKey(packageToImport.packageKey, packageToImport.packageKey);
166
+ if (this.isLatestVersion(versionOfPackageBeingImported, [...packageToImport.dependenciesByVersion.keys()])) {
167
+ const variableAssignments = packageToImport.variables
168
+ .filter(variable => variable.type === "DATA_MODEL").map(variable => {
169
+ variable.value = dmTargetIdsBySourceIds.get(variable.value.toString());
170
+ return variable;
171
+ });
172
+ yield variable_service_1.variableService.assignVariableValues(nodeInTargetTeam.key, variableAssignments);
173
+ }
168
174
  draftIdsByPackageKeyAndVersion.set(`${nodeInTargetTeam.key}_${versionOfPackageBeingImported}`, nodeInTargetTeam.workingDraftId);
169
175
  yield this.updateDependencyVersions(packageToImport, versionOfPackageBeingImported, sourceToTargetVersionsByNodeKey, draftIdsByPackageKeyAndVersion);
170
176
  yield this.publishPackage(packageToImport);
@@ -179,14 +185,26 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
179
185
  logger_1.logger.info(`Imported package with key: ${packageToImport.packageKey} ${versionOfPackageBeingImported} successfully. New version: ${mappedVersion}`);
180
186
  });
181
187
  }
182
- importDependencyPackages(dependenciesToImport, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath) {
188
+ isLatestVersion(packageVersion, allPackageVersions) {
189
+ let isLatestVersion = true;
190
+ for (const version of allPackageVersions) {
191
+ const version1 = new semantic_versioning_1.SemanticVersioning(packageVersion);
192
+ const version2 = new semantic_versioning_1.SemanticVersioning(version);
193
+ if (version2.isGreaterThan(version1)) {
194
+ isLatestVersion = false;
195
+ break;
196
+ }
197
+ }
198
+ return isLatestVersion;
199
+ }
200
+ importDependencyPackages(dependenciesToImport, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, dmTargetIdsBySourceIds, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath) {
183
201
  return __awaiter(this, void 0, void 0, function* () {
184
202
  for (const dependency of dependenciesToImport) {
185
203
  if (this.checkIfPackageVersionHasBeenImported(dependency.key, dependency.version, importedVersionsByNodeKey)) {
186
204
  continue;
187
205
  }
188
206
  const dependentPackage = manifestNodes.find((node) => node.packageKey === dependency.key);
189
- yield this.importPackage(dependentPackage, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath);
207
+ yield this.importPackage(dependentPackage, manifestNodes, sourceToTargetVersionsByNodeKey, spaceMappings, dmTargetIdsBySourceIds, importedVersionsByNodeKey, draftIdsByPackageKeyAndVersion, importedFilePath);
190
208
  }
191
209
  });
192
210
  }
@@ -13,18 +13,24 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
13
13
  if (v !== undefined) module.exports = v;
14
14
  }
15
15
  else if (typeof define === "function" && define.amd) {
16
- define(["require", "exports", "../../api/package-api"], factory);
16
+ define(["require", "exports", "../../api/package-api", "../../api/variables-api"], factory);
17
17
  }
18
18
  })(function (require, exports) {
19
19
  "use strict";
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
21
  const package_api_1 = require("../../api/package-api");
22
+ const variables_api_1 = require("../../api/variables-api");
22
23
  class VariableService {
23
24
  getVariableAssignmentsForNodes(nodes) {
24
25
  return __awaiter(this, void 0, void 0, function* () {
25
26
  return yield package_api_1.packageApi.findAllPackagesWithVariableAssignments();
26
27
  });
27
28
  }
29
+ assignVariableValues(packageKey, variablesAssignments) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ yield variables_api_1.variablesApi.assignVariableValues(packageKey, variablesAssignments);
32
+ });
33
+ }
28
34
  }
29
35
  exports.variableService = new VariableService();
30
36
  });
@@ -0,0 +1,29 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ class SemanticVersioning {
13
+ constructor(version) {
14
+ this.version = version;
15
+ }
16
+ isGreaterThan(versionToCompare) {
17
+ const splitVersion1 = this.version.split(".");
18
+ const splitVersion2 = versionToCompare.version.split(".");
19
+ const majorVersion1 = splitVersion1[0];
20
+ const majorVersion2 = splitVersion2[0];
21
+ const minorVersion1 = splitVersion1[1];
22
+ const minorVersion2 = splitVersion2[1];
23
+ const patchVersion1 = splitVersion1[2];
24
+ const patchVersion2 = splitVersion2[2];
25
+ return (majorVersion1 > majorVersion2) || (minorVersion1 > minorVersion2) || (patchVersion1 > patchVersion2);
26
+ }
27
+ }
28
+ exports.SemanticVersioning = SemanticVersioning;
29
+ });