sap-ux-sap-systems-ext 0.1.4 → 0.2.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.
package/dist/extension.js CHANGED
@@ -4290,11 +4290,12 @@ var require_backend_system = __commonJS({
4290
4290
  connectionType;
4291
4291
  authenticationType;
4292
4292
  hasSensitiveData;
4293
+ systemInfo;
4293
4294
  serviceKeys;
4294
4295
  refreshToken;
4295
4296
  username;
4296
4297
  password;
4297
- constructor({ name: name2, url, client, systemType, serviceKeys, refreshToken, username, password, userDisplayName, authenticationType, connectionType }) {
4298
+ constructor({ name: name2, url, client, systemType, serviceKeys, refreshToken, username, password, userDisplayName, authenticationType, connectionType, systemInfo }) {
4298
4299
  this.name = name2;
4299
4300
  this.url = url;
4300
4301
  this.client = client;
@@ -4308,6 +4309,7 @@ var require_backend_system = __commonJS({
4308
4309
  this.connectionType = connectionType;
4309
4310
  const sensitiveProps = (0, decorators_1.getSensitiveDataProperties)(this);
4310
4311
  this.hasSensitiveData = (0, utils_1.hasAnyValue)(this, sensitiveProps);
4312
+ this.systemInfo = systemInfo;
4311
4313
  }
4312
4314
  };
4313
4315
  exports2.BackendSystem = BackendSystem2;
@@ -4343,6 +4345,10 @@ var require_backend_system = __commonJS({
4343
4345
  decorators_1.serializable,
4344
4346
  __metadata2("design:type", Boolean)
4345
4347
  ], BackendSystem2.prototype, "hasSensitiveData", void 0);
4348
+ __decorate2([
4349
+ decorators_1.serializable,
4350
+ __metadata2("design:type", Object)
4351
+ ], BackendSystem2.prototype, "systemInfo", void 0);
4346
4352
  __decorate2([
4347
4353
  decorators_1.sensitiveData,
4348
4354
  __metadata2("design:type", Object)
@@ -4359,7 +4365,7 @@ var require_backend_system = __commonJS({
4359
4365
  decorators_1.sensitiveData,
4360
4366
  __metadata2("design:type", String)
4361
4367
  ], BackendSystem2.prototype, "password", void 0);
4362
- var BackendSystemKey6 = class _BackendSystemKey {
4368
+ var BackendSystemKey7 = class _BackendSystemKey {
4363
4369
  url;
4364
4370
  client;
4365
4371
  static from(system) {
@@ -4373,7 +4379,7 @@ var require_backend_system = __commonJS({
4373
4379
  return this.url + `${this.client ? "/" + this.client : ""}`;
4374
4380
  }
4375
4381
  };
4376
- exports2.BackendSystemKey = BackendSystemKey6;
4382
+ exports2.BackendSystemKey = BackendSystemKey7;
4377
4383
  }
4378
4384
  });
4379
4385
 
@@ -9647,8 +9653,9 @@ var require_transport = __commonJS({
9647
9653
  var FileTransport = class extends types_1.Transport {
9648
9654
  options;
9649
9655
  /**
9656
+ * Constructor for FileTransport, expects the options for the transport, file name is mandatory.
9650
9657
  *
9651
- * @param opts
9658
+ * @param opts - options for the transport
9652
9659
  */
9653
9660
  constructor(opts) {
9654
9661
  super();
@@ -54154,7 +54161,7 @@ var require_package6 = __commonJS({
54154
54161
  "../telemetry/package.json"(exports2, module2) {
54155
54162
  module2.exports = {
54156
54163
  name: "@sap-ux/telemetry",
54157
- version: "0.6.49",
54164
+ version: "0.6.56",
54158
54165
  description: "Library for sending usage telemetry data",
54159
54166
  repository: {
54160
54167
  type: "git",
@@ -131730,6 +131737,41 @@ var require_file4 = __commonJS({
131730
131737
  }
131731
131738
  });
131732
131739
 
131740
+ // ../project-access/dist/path/normalize.js
131741
+ var require_normalize2 = __commonJS({
131742
+ "../project-access/dist/path/normalize.js"(exports2) {
131743
+ "use strict";
131744
+ Object.defineProperty(exports2, "__esModule", { value: true });
131745
+ exports2.normalizePath = normalizePath2;
131746
+ var node_fs_1 = require("node:fs");
131747
+ var toUpperCase;
131748
+ function normalizePath2(path3) {
131749
+ if (process.platform === "win32") {
131750
+ if (toUpperCase === void 0) {
131751
+ const driveLetter = node_fs_1.realpathSync.native("\\")[0];
131752
+ toUpperCase = driveLetter === driveLetter.toUpperCase();
131753
+ }
131754
+ const correctedDriveLetter = toUpperCase ? path3.charAt(0).toUpperCase() : path3.charAt(0).toLowerCase();
131755
+ return correctedDriveLetter + path3.slice(1);
131756
+ }
131757
+ return path3;
131758
+ }
131759
+ }
131760
+ });
131761
+
131762
+ // ../project-access/dist/path/index.js
131763
+ var require_path2 = __commonJS({
131764
+ "../project-access/dist/path/index.js"(exports2) {
131765
+ "use strict";
131766
+ Object.defineProperty(exports2, "__esModule", { value: true });
131767
+ exports2.normalizePath = void 0;
131768
+ var normalize_1 = require_normalize2();
131769
+ Object.defineProperty(exports2, "normalizePath", { enumerable: true, get: function() {
131770
+ return normalize_1.normalizePath;
131771
+ } });
131772
+ }
131773
+ });
131774
+
131733
131775
  // ../project-access/dist/project/dependencies.js
131734
131776
  var require_dependencies2 = __commonJS({
131735
131777
  "../project-access/dist/project/dependencies.js"(exports2) {
@@ -131968,12 +132010,13 @@ var require_ui5_config = __commonJS({
131968
132010
  return packageJsonPath ? (0, node_path_1.dirname)(packageJsonPath) : appRoot;
131969
132011
  }
131970
132012
  async function getWebappPath(appRoot, memFs) {
131971
- let pathMappings = {};
132013
+ let pathMappings;
131972
132014
  try {
131973
132015
  pathMappings = await getPathMappings(appRoot, memFs);
131974
132016
  } catch {
132017
+ pathMappings = {};
131975
132018
  }
131976
- return pathMappings?.webapp ?? (0, node_path_1.join)(appRoot, constants_1.DirName.Webapp);
132019
+ return "webapp" in pathMappings ? pathMappings.webapp : (0, node_path_1.join)(appRoot, constants_1.DirName.Webapp);
131977
132020
  }
131978
132021
  async function getPathMappings(appRoot, memFs, fileName = constants_1.FileName.Ui5Yaml) {
131979
132022
  let ui5Config;
@@ -131990,16 +132033,14 @@ var require_ui5_config = __commonJS({
131990
132033
  throw new Error(`Unsupported project type for path mappings: ${type}`);
131991
132034
  }
131992
132035
  const baseDir = await getBaseDir(appRoot, memFs);
131993
- const pathMappings = {};
131994
- for (const [key, value] of Object.entries(configuration?.paths || {})) {
131995
- pathMappings[key] = (0, node_path_1.join)(baseDir, value ?? PATH_MAPPING_DEFAULTS[type][key]);
131996
- }
131997
- for (const [key, defaultValue] of Object.entries(PATH_MAPPING_DEFAULTS[type] ?? {})) {
131998
- if (!pathMappings[key]) {
131999
- pathMappings[key] = (0, node_path_1.join)(baseDir, defaultValue);
132000
- }
132036
+ const result = {};
132037
+ const configPaths = configuration?.paths || {};
132038
+ const defaults = PATH_MAPPING_DEFAULTS[type];
132039
+ for (const key in defaults) {
132040
+ const value = configPaths[key] ?? defaults[key];
132041
+ result[key] = (0, node_path_1.join)(baseDir, value);
132001
132042
  }
132002
- return pathMappings;
132043
+ return result;
132003
132044
  }
132004
132045
  async function readUi5Yaml(projectRoot, fileName, memFs, options2) {
132005
132046
  const ui5YamlPath = (0, node_path_1.join)(projectRoot, fileName);
@@ -132370,11 +132411,13 @@ var require_search = __commonJS({
132370
132411
  const excludeFolders2 = ["node_modules", "dist", "webapp", "MDKModule", "gen"];
132371
132412
  const fileNames = [constants_1.FileName.Pom, constants_1.FileName.Package, constants_1.FileName.CapJavaApplicationYaml];
132372
132413
  const wsRoots = wsFoldersToRootPaths(options2.wsFolders);
132414
+ const noTraversal = options2.noTraversal ?? false;
132373
132415
  for (const root of wsRoots) {
132374
132416
  const filesToCheck = await (0, file_1.findBy)({
132375
132417
  fileNames,
132376
132418
  root,
132377
- excludeFolders: excludeFolders2
132419
+ excludeFolders: excludeFolders2,
132420
+ noTraversal
132378
132421
  });
132379
132422
  const appYamlsToCheck = Array.from(new Set(filesToCheck.filter((file) => (0, node_path_1.basename)(file) === constants_1.FileName.CapJavaApplicationYaml).map((file) => (0, node_path_1.dirname)(file))));
132380
132423
  const foldersToCheck = Array.from(new Set(filesToCheck.filter((file) => (0, node_path_1.basename)(file) !== constants_1.FileName.CapJavaApplicationYaml).map((file) => (0, node_path_1.dirname)(file))));
@@ -134880,7 +134923,7 @@ var require_is_stream2 = __commonJS({
134880
134923
  });
134881
134924
 
134882
134925
  // ../../node_modules/.pnpm/vinyl@2.2.1/node_modules/vinyl/lib/normalize.js
134883
- var require_normalize2 = __commonJS({
134926
+ var require_normalize3 = __commonJS({
134884
134927
  "../../node_modules/.pnpm/vinyl@2.2.1/node_modules/vinyl/lib/normalize.js"(exports2, module2) {
134885
134928
  "use strict";
134886
134929
  var path3 = require("path");
@@ -134920,7 +134963,7 @@ var require_vinyl = __commonJS({
134920
134963
  var cloneBuffer = require_clone_buffer();
134921
134964
  var removeTrailingSep = require_remove_trailing_separator();
134922
134965
  var isStream = require_is_stream2();
134923
- var normalize2 = require_normalize2();
134966
+ var normalize2 = require_normalize3();
134924
134967
  var inspectStream = require_inspect_stream();
134925
134968
  var builtInFields = [
134926
134969
  "_contents",
@@ -139162,6 +139205,7 @@ var require_cap = __commonJS({
139162
139205
  exports2.isCapProject = isCapProject;
139163
139206
  exports2.getCapCustomPaths = getCapCustomPaths;
139164
139207
  exports2.getCapModelAndServices = getCapModelAndServices;
139208
+ exports2.processServices = processServices;
139165
139209
  exports2.getCdsFiles = getCdsFiles;
139166
139210
  exports2.getCdsRoots = getCdsRoots;
139167
139211
  exports2.getCdsServices = getCdsServices;
@@ -139265,11 +139309,20 @@ var require_cap = __commonJS({
139265
139309
  _logger?.info(`@sap-ux/project-access:getCapModelAndServices - Using 'cds.root': ${cds.root}`);
139266
139310
  _logger?.info(`@sap-ux/project-access:getCapModelAndServices - Using 'projectRoot': ${_projectRoot}`);
139267
139311
  let services = cds.compile.to.serviceinfo(model, { root: _projectRoot }) ?? [];
139268
- if (services.filter) {
139269
- services = services.filter((service) => service.urlPath && service.endpoints === void 0 || service.endpoints?.find(filterCapServiceEndpoints));
139270
- }
139271
- if (services.map) {
139272
- services = services.map((value) => {
139312
+ services = processServices(services);
139313
+ return {
139314
+ model,
139315
+ services,
139316
+ cdsVersionInfo: {
139317
+ home: cds.home,
139318
+ version: cds.version,
139319
+ root: cds.root
139320
+ }
139321
+ };
139322
+ }
139323
+ function processServices(services) {
139324
+ if (services && Array.isArray(services)) {
139325
+ return services.filter((service) => service.urlPath && service.endpoints === void 0 || service.endpoints?.find(filterCapServiceEndpoints)).map((value) => {
139273
139326
  const { endpoints, urlPath } = value;
139274
139327
  const odataEndpoint = endpoints?.find(filterCapServiceEndpoints);
139275
139328
  const endpointPath = odataEndpoint?.path ?? urlPath;
@@ -139280,15 +139333,7 @@ var require_cap = __commonJS({
139280
139333
  };
139281
139334
  });
139282
139335
  }
139283
- return {
139284
- model,
139285
- services,
139286
- cdsVersionInfo: {
139287
- home: cds.home,
139288
- version: cds.version,
139289
- root: cds.root
139290
- }
139291
- };
139336
+ return [];
139292
139337
  }
139293
139338
  async function getCdsFiles(projectRoot, ignoreErrors = false, envRoot) {
139294
139339
  let cdsFiles = [];
@@ -139896,7 +139941,7 @@ var require_resolve3 = __commonJS({
139896
139941
  });
139897
139942
 
139898
139943
  // ../i18n/dist/utils/path.js
139899
- var require_path2 = __commonJS({
139944
+ var require_path3 = __commonJS({
139900
139945
  "../i18n/dist/utils/path.js"(exports2) {
139901
139946
  "use strict";
139902
139947
  Object.defineProperty(exports2, "__esModule", { value: true });
@@ -140252,7 +140297,7 @@ var require_utils13 = __commonJS({
140252
140297
  Object.defineProperty(exports2, "getCapI18nFolder", { enumerable: true, get: function() {
140253
140298
  return resolve_1.getCapI18nFolder;
140254
140299
  } });
140255
- var path_1 = require_path2();
140300
+ var path_1 = require_path3();
140256
140301
  Object.defineProperty(exports2, "csvPath", { enumerable: true, get: function() {
140257
140302
  return path_1.csvPath;
140258
140303
  } });
@@ -145720,41 +145765,6 @@ var require_i18n3 = __commonJS({
145720
145765
  }
145721
145766
  });
145722
145767
 
145723
- // ../project-access/dist/path/normalize.js
145724
- var require_normalize3 = __commonJS({
145725
- "../project-access/dist/path/normalize.js"(exports2) {
145726
- "use strict";
145727
- Object.defineProperty(exports2, "__esModule", { value: true });
145728
- exports2.normalizePath = normalizePath2;
145729
- var node_fs_1 = require("node:fs");
145730
- var toUpperCase;
145731
- function normalizePath2(path3) {
145732
- if (process.platform === "win32") {
145733
- if (toUpperCase === void 0) {
145734
- const driveLetter = node_fs_1.realpathSync.native("\\")[0];
145735
- toUpperCase = driveLetter === driveLetter.toUpperCase();
145736
- }
145737
- const correctedDriveLetter = toUpperCase ? path3.charAt(0).toUpperCase() : path3.charAt(0).toLowerCase();
145738
- return correctedDriveLetter + path3.slice(1);
145739
- }
145740
- return path3;
145741
- }
145742
- }
145743
- });
145744
-
145745
- // ../project-access/dist/path/index.js
145746
- var require_path3 = __commonJS({
145747
- "../project-access/dist/path/index.js"(exports2) {
145748
- "use strict";
145749
- Object.defineProperty(exports2, "__esModule", { value: true });
145750
- exports2.normalizePath = void 0;
145751
- var normalize_1 = require_normalize3();
145752
- Object.defineProperty(exports2, "normalizePath", { enumerable: true, get: function() {
145753
- return normalize_1.normalizePath;
145754
- } });
145755
- }
145756
- });
145757
-
145758
145768
  // ../project-access/dist/project/info.js
145759
145769
  var require_info = __commonJS({
145760
145770
  "../project-access/dist/project/info.js"(exports2) {
@@ -145776,7 +145786,7 @@ var require_info = __commonJS({
145776
145786
  var service_1 = require_service2();
145777
145787
  var ui5_config_1 = require_ui5_config();
145778
145788
  var semver_1 = require_semver5();
145779
- var path_1 = require_path3();
145789
+ var path_1 = require_path2();
145780
145790
  async function getProject(root, memFs) {
145781
145791
  if (!await (0, file_1.fileExists)((0, node_path_1.join)(root, constants_1.FileName.Package), memFs)) {
145782
145792
  throw new Error(`The project root folder '${root}' is not a Fiori project. No 'package.json' found.`);
@@ -146498,8 +146508,8 @@ var require_project = __commonJS({
146498
146508
  "../project-access/dist/project/index.js"(exports2) {
146499
146509
  "use strict";
146500
146510
  Object.defineProperty(exports2, "__esModule", { value: true });
146501
- exports2.updatePackageScript = exports2.createProjectAccess = exports2.createApplicationAccess = exports2.getMtaPath = exports2.getPathMappings = exports2.getMockDataPath = exports2.getMockServerConfig = exports2.getAllUi5YamlFileNames = exports2.readUi5Yaml = exports2.getWebappPath = exports2.findRootsForPath = exports2.findCapProjectRoot = exports2.getAppRootFromWebappPath = exports2.findProjectRoot = exports2.findFioriArtifacts = exports2.findCapProjects = exports2.findAllApps = exports2.loadModuleFromProject = exports2.getProjectType = exports2.getProject = exports2.getMinimumUI5Version = exports2.getMinUI5VersionAsArray = exports2.getMinUI5VersionFromManifest = exports2.getAppType = exports2.getAppProgrammingLanguage = exports2.getI18nBundles = exports2.getI18nPropertiesPaths = exports2.getCapI18nFolderNames = exports2.hasDependency = exports2.getNodeModulesPath = exports2.addPackageDevDependency = exports2.filterDataSourcesByType = exports2.checkCdsUi5PluginEnabled = exports2.hasMinCdsVersion = exports2.getWorkspaceInfo = exports2.toReferenceUri = exports2.readCapServiceMetadataEdmx = exports2.isCapNodeJsProject = exports2.isCapJavaProject = exports2.isCapProject = exports2.getCdsServices = exports2.getCdsRoots = exports2.getCdsFiles = exports2.getCapServiceName = exports2.getCapProjectType = exports2.getCapModelAndServices = exports2.getCapEnvironment = exports2.getCapCustomPaths = exports2.deleteCapApp = exports2.clearCdsModuleCache = void 0;
146502
- exports2.readFlexChanges = exports2.refreshSpecificationDistTags = exports2.getSpecificationPath = exports2.getSpecificationModuleFromCache = exports2.getSpecification = exports2.hasUI5CliV3 = void 0;
146511
+ exports2.createApplicationAccess = exports2.getMtaPath = exports2.getPathMappings = exports2.getMockDataPath = exports2.getMockServerConfig = exports2.getAllUi5YamlFileNames = exports2.readUi5Yaml = exports2.getWebappPath = exports2.findRootsForPath = exports2.findCapProjectRoot = exports2.getAppRootFromWebappPath = exports2.findProjectRoot = exports2.findFioriArtifacts = exports2.findCapProjects = exports2.findAllApps = exports2.loadModuleFromProject = exports2.getProjectType = exports2.getProject = exports2.getMinimumUI5Version = exports2.getMinUI5VersionAsArray = exports2.getMinUI5VersionFromManifest = exports2.getAppType = exports2.getAppProgrammingLanguage = exports2.getI18nBundles = exports2.getI18nPropertiesPaths = exports2.getCapI18nFolderNames = exports2.hasDependency = exports2.getNodeModulesPath = exports2.addPackageDevDependency = exports2.getMainService = exports2.filterDataSourcesByType = exports2.processServices = exports2.checkCdsUi5PluginEnabled = exports2.hasMinCdsVersion = exports2.getWorkspaceInfo = exports2.toReferenceUri = exports2.readCapServiceMetadataEdmx = exports2.isCapNodeJsProject = exports2.isCapJavaProject = exports2.isCapProject = exports2.getCdsServices = exports2.getCdsRoots = exports2.getCdsFiles = exports2.getCapServiceName = exports2.getCapProjectType = exports2.getCapModelAndServices = exports2.getCapEnvironment = exports2.getCapCustomPaths = exports2.deleteCapApp = exports2.clearCdsModuleCache = void 0;
146512
+ exports2.readFlexChanges = exports2.refreshSpecificationDistTags = exports2.getSpecificationPath = exports2.getSpecificationModuleFromCache = exports2.getSpecification = exports2.hasUI5CliV3 = exports2.updatePackageScript = exports2.createProjectAccess = void 0;
146503
146513
  var cap_1 = require_cap();
146504
146514
  Object.defineProperty(exports2, "clearCdsModuleCache", { enumerable: true, get: function() {
146505
146515
  return cap_1.clearCdsModuleCache;
@@ -146555,10 +146565,16 @@ var require_project = __commonJS({
146555
146565
  Object.defineProperty(exports2, "checkCdsUi5PluginEnabled", { enumerable: true, get: function() {
146556
146566
  return cap_1.checkCdsUi5PluginEnabled;
146557
146567
  } });
146568
+ Object.defineProperty(exports2, "processServices", { enumerable: true, get: function() {
146569
+ return cap_1.processServices;
146570
+ } });
146558
146571
  var service_1 = require_service2();
146559
146572
  Object.defineProperty(exports2, "filterDataSourcesByType", { enumerable: true, get: function() {
146560
146573
  return service_1.filterDataSourcesByType;
146561
146574
  } });
146575
+ Object.defineProperty(exports2, "getMainService", { enumerable: true, get: function() {
146576
+ return service_1.getMainService;
146577
+ } });
146562
146578
  var dependencies_1 = require_dependencies2();
146563
146579
  Object.defineProperty(exports2, "addPackageDevDependency", { enumerable: true, get: function() {
146564
146580
  return dependencies_1.addPackageDevDependency;
@@ -148696,8 +148712,8 @@ var require_dist14 = __commonJS({
148696
148712
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
148697
148713
  };
148698
148714
  Object.defineProperty(exports2, "__esModule", { value: true });
148699
- exports2.isCapJavaProject = exports2.isCapProject = exports2.hasUI5CliV3 = exports2.getWebappPath = exports2.getProjectType = exports2.getProject = exports2.getPathMappings = exports2.getNodeModulesPath = exports2.getMockDataPath = exports2.getMockServerConfig = exports2.getMtaPath = exports2.getMinimumUI5Version = exports2.getMinUI5VersionAsArray = exports2.getMinUI5VersionFromManifest = exports2.getI18nBundles = exports2.getI18nPropertiesPaths = exports2.getSpecificationPath = exports2.getSpecificationModuleFromCache = exports2.getSpecification = exports2.getCapI18nFolderNames = exports2.getCdsServices = exports2.getCdsRoots = exports2.getCdsFiles = exports2.getCapProjectType = exports2.getCapServiceName = exports2.getCapModelAndServices = exports2.getCapEnvironment = exports2.getCapCustomPaths = exports2.getAppType = exports2.getAppProgrammingLanguage = exports2.getAppRootFromWebappPath = exports2.getAllUi5YamlFileNames = exports2.findRootsForPath = exports2.findProjectRoot = exports2.findFioriArtifacts = exports2.findCapProjects = exports2.findCapProjectRoot = exports2.findAllApps = exports2.filterDataSourcesByType = exports2.deleteCapApp = exports2.createProjectAccess = exports2.createApplicationAccess = exports2.clearCdsModuleCache = exports2.addPackageDevDependency = exports2.getFilePaths = exports2.MinCdsVersion = exports2.MinCdsPluginUi5Version = exports2.FioriToolsSettings = exports2.DirName = exports2.FileName = void 0;
148700
- exports2.hasDependency = exports2.execNpmCommand = exports2.readFlexChanges = exports2.checkCdsUi5PluginEnabled = exports2.hasMinCdsVersion = exports2.getWorkspaceInfo = exports2.updatePackageScript = exports2.toReferenceUri = exports2.refreshSpecificationDistTags = exports2.readUi5Yaml = exports2.readCapServiceMetadataEdmx = exports2.loadModuleFromProject = exports2.isCapNodeJsProject = void 0;
148715
+ exports2.hasUI5CliV3 = exports2.getWebappPath = exports2.getProjectType = exports2.getProject = exports2.getPathMappings = exports2.getNodeModulesPath = exports2.getMockDataPath = exports2.getMockServerConfig = exports2.getMtaPath = exports2.getMinimumUI5Version = exports2.getMinUI5VersionAsArray = exports2.getMinUI5VersionFromManifest = exports2.getI18nBundles = exports2.getI18nPropertiesPaths = exports2.getSpecificationPath = exports2.getSpecificationModuleFromCache = exports2.getSpecification = exports2.getCapI18nFolderNames = exports2.getCdsServices = exports2.getCdsRoots = exports2.getCdsFiles = exports2.getCapProjectType = exports2.getCapServiceName = exports2.getCapModelAndServices = exports2.getCapEnvironment = exports2.getCapCustomPaths = exports2.getAppType = exports2.getAppProgrammingLanguage = exports2.getAppRootFromWebappPath = exports2.getAllUi5YamlFileNames = exports2.findRootsForPath = exports2.findProjectRoot = exports2.findFioriArtifacts = exports2.findCapProjects = exports2.findCapProjectRoot = exports2.findAllApps = exports2.filterDataSourcesByType = exports2.deleteCapApp = exports2.createProjectAccess = exports2.createApplicationAccess = exports2.clearCdsModuleCache = exports2.addPackageDevDependency = exports2.normalizePath = exports2.getFilePaths = exports2.fioriToolsDirectory = exports2.MinCdsVersion = exports2.MinCdsPluginUi5Version = exports2.FioriToolsSettings = exports2.DirName = exports2.FileName = void 0;
148716
+ exports2.hasDependency = exports2.execNpmCommand = exports2.getMainService = exports2.processServices = exports2.readFlexChanges = exports2.checkCdsUi5PluginEnabled = exports2.hasMinCdsVersion = exports2.getWorkspaceInfo = exports2.updatePackageScript = exports2.toReferenceUri = exports2.refreshSpecificationDistTags = exports2.readUi5Yaml = exports2.readCapServiceMetadataEdmx = exports2.loadModuleFromProject = exports2.isCapNodeJsProject = exports2.isCapJavaProject = exports2.isCapProject = void 0;
148701
148717
  var constants_1 = require_constants11();
148702
148718
  Object.defineProperty(exports2, "FileName", { enumerable: true, get: function() {
148703
148719
  return constants_1.FileName;
@@ -148714,10 +148730,17 @@ var require_dist14 = __commonJS({
148714
148730
  Object.defineProperty(exports2, "MinCdsVersion", { enumerable: true, get: function() {
148715
148731
  return constants_1.MinCdsVersion;
148716
148732
  } });
148733
+ Object.defineProperty(exports2, "fioriToolsDirectory", { enumerable: true, get: function() {
148734
+ return constants_1.fioriToolsDirectory;
148735
+ } });
148717
148736
  var file_1 = require_file4();
148718
148737
  Object.defineProperty(exports2, "getFilePaths", { enumerable: true, get: function() {
148719
148738
  return file_1.getFilePaths;
148720
148739
  } });
148740
+ var path_1 = require_path2();
148741
+ Object.defineProperty(exports2, "normalizePath", { enumerable: true, get: function() {
148742
+ return path_1.normalizePath;
148743
+ } });
148721
148744
  var project_1 = require_project();
148722
148745
  Object.defineProperty(exports2, "addPackageDevDependency", { enumerable: true, get: function() {
148723
148746
  return project_1.addPackageDevDependency;
@@ -148884,6 +148907,12 @@ var require_dist14 = __commonJS({
148884
148907
  Object.defineProperty(exports2, "readFlexChanges", { enumerable: true, get: function() {
148885
148908
  return project_1.readFlexChanges;
148886
148909
  } });
148910
+ Object.defineProperty(exports2, "processServices", { enumerable: true, get: function() {
148911
+ return project_1.processServices;
148912
+ } });
148913
+ Object.defineProperty(exports2, "getMainService", { enumerable: true, get: function() {
148914
+ return project_1.getMainService;
148915
+ } });
148887
148916
  var npm_command_1 = require_npm_command();
148888
148917
  Object.defineProperty(exports2, "execNpmCommand", { enumerable: true, get: function() {
148889
148918
  return npm_command_1.execNpmCommand;
@@ -153397,181 +153426,6 @@ var require_reentrance_ticket = __commonJS({
153397
153426
  }
153398
153427
  });
153399
153428
 
153400
- // ../../node_modules/.pnpm/define-data-property@1.1.4/node_modules/define-data-property/index.js
153401
- var require_define_data_property = __commonJS({
153402
- "../../node_modules/.pnpm/define-data-property@1.1.4/node_modules/define-data-property/index.js"(exports2, module2) {
153403
- "use strict";
153404
- var $defineProperty = require_es_define_property();
153405
- var $SyntaxError = require_syntax();
153406
- var $TypeError = require_type();
153407
- var gopd = require_gopd();
153408
- module2.exports = function defineDataProperty(obj, property, value) {
153409
- if (!obj || typeof obj !== "object" && typeof obj !== "function") {
153410
- throw new $TypeError("`obj` must be an object or a function`");
153411
- }
153412
- if (typeof property !== "string" && typeof property !== "symbol") {
153413
- throw new $TypeError("`property` must be a string or a symbol`");
153414
- }
153415
- if (arguments.length > 3 && typeof arguments[3] !== "boolean" && arguments[3] !== null) {
153416
- throw new $TypeError("`nonEnumerable`, if provided, must be a boolean or null");
153417
- }
153418
- if (arguments.length > 4 && typeof arguments[4] !== "boolean" && arguments[4] !== null) {
153419
- throw new $TypeError("`nonWritable`, if provided, must be a boolean or null");
153420
- }
153421
- if (arguments.length > 5 && typeof arguments[5] !== "boolean" && arguments[5] !== null) {
153422
- throw new $TypeError("`nonConfigurable`, if provided, must be a boolean or null");
153423
- }
153424
- if (arguments.length > 6 && typeof arguments[6] !== "boolean") {
153425
- throw new $TypeError("`loose`, if provided, must be a boolean");
153426
- }
153427
- var nonEnumerable = arguments.length > 3 ? arguments[3] : null;
153428
- var nonWritable = arguments.length > 4 ? arguments[4] : null;
153429
- var nonConfigurable = arguments.length > 5 ? arguments[5] : null;
153430
- var loose = arguments.length > 6 ? arguments[6] : false;
153431
- var desc = !!gopd && gopd(obj, property);
153432
- if ($defineProperty) {
153433
- $defineProperty(obj, property, {
153434
- configurable: nonConfigurable === null && desc ? desc.configurable : !nonConfigurable,
153435
- enumerable: nonEnumerable === null && desc ? desc.enumerable : !nonEnumerable,
153436
- value,
153437
- writable: nonWritable === null && desc ? desc.writable : !nonWritable
153438
- });
153439
- } else if (loose || !nonEnumerable && !nonWritable && !nonConfigurable) {
153440
- obj[property] = value;
153441
- } else {
153442
- throw new $SyntaxError("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");
153443
- }
153444
- };
153445
- }
153446
- });
153447
-
153448
- // ../../node_modules/.pnpm/has-property-descriptors@1.0.2/node_modules/has-property-descriptors/index.js
153449
- var require_has_property_descriptors = __commonJS({
153450
- "../../node_modules/.pnpm/has-property-descriptors@1.0.2/node_modules/has-property-descriptors/index.js"(exports2, module2) {
153451
- "use strict";
153452
- var $defineProperty = require_es_define_property();
153453
- var hasPropertyDescriptors = function hasPropertyDescriptors2() {
153454
- return !!$defineProperty;
153455
- };
153456
- hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {
153457
- if (!$defineProperty) {
153458
- return null;
153459
- }
153460
- try {
153461
- return $defineProperty([], "length", { value: 1 }).length !== 1;
153462
- } catch (e) {
153463
- return true;
153464
- }
153465
- };
153466
- module2.exports = hasPropertyDescriptors;
153467
- }
153468
- });
153469
-
153470
- // ../../node_modules/.pnpm/set-function-length@1.2.2/node_modules/set-function-length/index.js
153471
- var require_set_function_length = __commonJS({
153472
- "../../node_modules/.pnpm/set-function-length@1.2.2/node_modules/set-function-length/index.js"(exports2, module2) {
153473
- "use strict";
153474
- var GetIntrinsic = require_get_intrinsic();
153475
- var define2 = require_define_data_property();
153476
- var hasDescriptors = require_has_property_descriptors()();
153477
- var gOPD = require_gopd();
153478
- var $TypeError = require_type();
153479
- var $floor = GetIntrinsic("%Math.floor%");
153480
- module2.exports = function setFunctionLength(fn2, length) {
153481
- if (typeof fn2 !== "function") {
153482
- throw new $TypeError("`fn` is not a function");
153483
- }
153484
- if (typeof length !== "number" || length < 0 || length > 4294967295 || $floor(length) !== length) {
153485
- throw new $TypeError("`length` must be a positive 32-bit integer");
153486
- }
153487
- var loose = arguments.length > 2 && !!arguments[2];
153488
- var functionLengthIsConfigurable = true;
153489
- var functionLengthIsWritable = true;
153490
- if ("length" in fn2 && gOPD) {
153491
- var desc = gOPD(fn2, "length");
153492
- if (desc && !desc.configurable) {
153493
- functionLengthIsConfigurable = false;
153494
- }
153495
- if (desc && !desc.writable) {
153496
- functionLengthIsWritable = false;
153497
- }
153498
- }
153499
- if (functionLengthIsConfigurable || functionLengthIsWritable || !loose) {
153500
- if (hasDescriptors) {
153501
- define2(
153502
- /** @type {Parameters<define>[0]} */
153503
- fn2,
153504
- "length",
153505
- length,
153506
- true,
153507
- true
153508
- );
153509
- } else {
153510
- define2(
153511
- /** @type {Parameters<define>[0]} */
153512
- fn2,
153513
- "length",
153514
- length
153515
- );
153516
- }
153517
- }
153518
- return fn2;
153519
- };
153520
- }
153521
- });
153522
-
153523
- // ../../node_modules/.pnpm/call-bind@1.0.7/node_modules/call-bind/index.js
153524
- var require_call_bind = __commonJS({
153525
- "../../node_modules/.pnpm/call-bind@1.0.7/node_modules/call-bind/index.js"(exports2, module2) {
153526
- "use strict";
153527
- var bind = require_function_bind();
153528
- var GetIntrinsic = require_get_intrinsic();
153529
- var setFunctionLength = require_set_function_length();
153530
- var $TypeError = require_type();
153531
- var $apply = GetIntrinsic("%Function.prototype.apply%");
153532
- var $call = GetIntrinsic("%Function.prototype.call%");
153533
- var $reflectApply = GetIntrinsic("%Reflect.apply%", true) || bind.call($call, $apply);
153534
- var $defineProperty = require_es_define_property();
153535
- var $max = GetIntrinsic("%Math.max%");
153536
- module2.exports = function callBind(originalFunction) {
153537
- if (typeof originalFunction !== "function") {
153538
- throw new $TypeError("a function is required");
153539
- }
153540
- var func = $reflectApply(bind, $call, arguments);
153541
- return setFunctionLength(
153542
- func,
153543
- 1 + $max(0, originalFunction.length - (arguments.length - 1)),
153544
- true
153545
- );
153546
- };
153547
- var applyBind = function applyBind2() {
153548
- return $reflectApply(bind, $apply, arguments);
153549
- };
153550
- if ($defineProperty) {
153551
- $defineProperty(module2.exports, "apply", { value: applyBind });
153552
- } else {
153553
- module2.exports.apply = applyBind;
153554
- }
153555
- }
153556
- });
153557
-
153558
- // ../../node_modules/.pnpm/call-bind@1.0.7/node_modules/call-bind/callBound.js
153559
- var require_callBound = __commonJS({
153560
- "../../node_modules/.pnpm/call-bind@1.0.7/node_modules/call-bind/callBound.js"(exports2, module2) {
153561
- "use strict";
153562
- var GetIntrinsic = require_get_intrinsic();
153563
- var callBind = require_call_bind();
153564
- var $indexOf = callBind(GetIntrinsic("String.prototype.indexOf"));
153565
- module2.exports = function callBoundIntrinsic(name2, allowMissing) {
153566
- var intrinsic = GetIntrinsic(name2, !!allowMissing);
153567
- if (typeof intrinsic === "function" && $indexOf(name2, ".prototype.") > -1) {
153568
- return callBind(intrinsic);
153569
- }
153570
- return intrinsic;
153571
- };
153572
- }
153573
- });
153574
-
153575
153429
  // ../../node_modules/.pnpm/object-inspect@1.13.4/node_modules/object-inspect/util.inspect.js
153576
153430
  var require_util_inspect = __commonJS({
153577
153431
  "../../node_modules/.pnpm/object-inspect@1.13.4/node_modules/object-inspect/util.inspect.js"(exports2, module2) {
@@ -154110,33 +153964,31 @@ var require_object_inspect = __commonJS({
154110
153964
  }
154111
153965
  });
154112
153966
 
154113
- // ../../node_modules/.pnpm/side-channel@1.0.4/node_modules/side-channel/index.js
154114
- var require_side_channel = __commonJS({
154115
- "../../node_modules/.pnpm/side-channel@1.0.4/node_modules/side-channel/index.js"(exports2, module2) {
153967
+ // ../../node_modules/.pnpm/side-channel-list@1.0.0/node_modules/side-channel-list/index.js
153968
+ var require_side_channel_list = __commonJS({
153969
+ "../../node_modules/.pnpm/side-channel-list@1.0.0/node_modules/side-channel-list/index.js"(exports2, module2) {
154116
153970
  "use strict";
154117
- var GetIntrinsic = require_get_intrinsic();
154118
- var callBound = require_callBound();
154119
153971
  var inspect = require_object_inspect();
154120
- var $TypeError = GetIntrinsic("%TypeError%");
154121
- var $WeakMap = GetIntrinsic("%WeakMap%", true);
154122
- var $Map = GetIntrinsic("%Map%", true);
154123
- var $weakMapGet = callBound("WeakMap.prototype.get", true);
154124
- var $weakMapSet = callBound("WeakMap.prototype.set", true);
154125
- var $weakMapHas = callBound("WeakMap.prototype.has", true);
154126
- var $mapGet = callBound("Map.prototype.get", true);
154127
- var $mapSet = callBound("Map.prototype.set", true);
154128
- var $mapHas = callBound("Map.prototype.has", true);
154129
- var listGetNode = function(list, key) {
154130
- for (var prev = list, curr; (curr = prev.next) !== null; prev = curr) {
153972
+ var $TypeError = require_type();
153973
+ var listGetNode = function(list, key, isDelete) {
153974
+ var prev = list;
153975
+ var curr;
153976
+ for (; (curr = prev.next) != null; prev = curr) {
154131
153977
  if (curr.key === key) {
154132
153978
  prev.next = curr.next;
154133
- curr.next = list.next;
154134
- list.next = curr;
153979
+ if (!isDelete) {
153980
+ curr.next = /** @type {NonNullable<typeof list.next>} */
153981
+ list.next;
153982
+ list.next = curr;
153983
+ }
154135
153984
  return curr;
154136
153985
  }
154137
153986
  }
154138
153987
  };
154139
153988
  var listGet = function(objects, key) {
153989
+ if (!objects) {
153990
+ return void 0;
153991
+ }
154140
153992
  var node = listGetNode(objects, key);
154141
153993
  return node && node.value;
154142
153994
  };
@@ -154145,8 +153997,9 @@ var require_side_channel = __commonJS({
154145
153997
  if (node) {
154146
153998
  node.value = value;
154147
153999
  } else {
154148
- objects.next = {
154149
- // eslint-disable-line no-param-reassign
154000
+ objects.next = /** @type {import('./list.d.ts').ListNode<typeof value, typeof key>} */
154001
+ {
154002
+ // eslint-disable-line no-param-reassign, no-extra-parens
154150
154003
  key,
154151
154004
  next: objects.next,
154152
154005
  value
@@ -154154,11 +154007,17 @@ var require_side_channel = __commonJS({
154154
154007
  }
154155
154008
  };
154156
154009
  var listHas = function(objects, key) {
154010
+ if (!objects) {
154011
+ return false;
154012
+ }
154157
154013
  return !!listGetNode(objects, key);
154158
154014
  };
154159
- module2.exports = function getSideChannel() {
154160
- var $wm;
154161
- var $m;
154015
+ var listDelete = function(objects, key) {
154016
+ if (objects) {
154017
+ return listGetNode(objects, key, true);
154018
+ }
154019
+ };
154020
+ module2.exports = function getSideChannelList() {
154162
154021
  var $o;
154163
154022
  var channel = {
154164
154023
  assert: function(key) {
@@ -154166,54 +154025,223 @@ var require_side_channel = __commonJS({
154166
154025
  throw new $TypeError("Side channel does not contain " + inspect(key));
154167
154026
  }
154168
154027
  },
154028
+ "delete": function(key) {
154029
+ var root = $o && $o.next;
154030
+ var deletedNode = listDelete($o, key);
154031
+ if (deletedNode && root && root === deletedNode) {
154032
+ $o = void 0;
154033
+ }
154034
+ return !!deletedNode;
154035
+ },
154169
154036
  get: function(key) {
154170
- if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
154171
- if ($wm) {
154172
- return $weakMapGet($wm, key);
154173
- }
154174
- } else if ($Map) {
154175
- if ($m) {
154176
- return $mapGet($m, key);
154177
- }
154178
- } else {
154179
- if ($o) {
154180
- return listGet($o, key);
154037
+ return listGet($o, key);
154038
+ },
154039
+ has: function(key) {
154040
+ return listHas($o, key);
154041
+ },
154042
+ set: function(key, value) {
154043
+ if (!$o) {
154044
+ $o = {
154045
+ next: void 0
154046
+ };
154047
+ }
154048
+ listSet(
154049
+ /** @type {NonNullable<typeof $o>} */
154050
+ $o,
154051
+ key,
154052
+ value
154053
+ );
154054
+ }
154055
+ };
154056
+ return channel;
154057
+ };
154058
+ }
154059
+ });
154060
+
154061
+ // ../../node_modules/.pnpm/call-bound@1.0.4/node_modules/call-bound/index.js
154062
+ var require_call_bound = __commonJS({
154063
+ "../../node_modules/.pnpm/call-bound@1.0.4/node_modules/call-bound/index.js"(exports2, module2) {
154064
+ "use strict";
154065
+ var GetIntrinsic = require_get_intrinsic();
154066
+ var callBindBasic = require_call_bind_apply_helpers();
154067
+ var $indexOf = callBindBasic([GetIntrinsic("%String.prototype.indexOf%")]);
154068
+ module2.exports = function callBoundIntrinsic(name2, allowMissing) {
154069
+ var intrinsic = (
154070
+ /** @type {(this: unknown, ...args: unknown[]) => unknown} */
154071
+ GetIntrinsic(name2, !!allowMissing)
154072
+ );
154073
+ if (typeof intrinsic === "function" && $indexOf(name2, ".prototype.") > -1) {
154074
+ return callBindBasic(
154075
+ /** @type {const} */
154076
+ [intrinsic]
154077
+ );
154078
+ }
154079
+ return intrinsic;
154080
+ };
154081
+ }
154082
+ });
154083
+
154084
+ // ../../node_modules/.pnpm/side-channel-map@1.0.1/node_modules/side-channel-map/index.js
154085
+ var require_side_channel_map = __commonJS({
154086
+ "../../node_modules/.pnpm/side-channel-map@1.0.1/node_modules/side-channel-map/index.js"(exports2, module2) {
154087
+ "use strict";
154088
+ var GetIntrinsic = require_get_intrinsic();
154089
+ var callBound = require_call_bound();
154090
+ var inspect = require_object_inspect();
154091
+ var $TypeError = require_type();
154092
+ var $Map = GetIntrinsic("%Map%", true);
154093
+ var $mapGet = callBound("Map.prototype.get", true);
154094
+ var $mapSet = callBound("Map.prototype.set", true);
154095
+ var $mapHas = callBound("Map.prototype.has", true);
154096
+ var $mapDelete = callBound("Map.prototype.delete", true);
154097
+ var $mapSize = callBound("Map.prototype.size", true);
154098
+ module2.exports = !!$Map && /** @type {Exclude<import('.'), false>} */
154099
+ function getSideChannelMap() {
154100
+ var $m;
154101
+ var channel = {
154102
+ assert: function(key) {
154103
+ if (!channel.has(key)) {
154104
+ throw new $TypeError("Side channel does not contain " + inspect(key));
154105
+ }
154106
+ },
154107
+ "delete": function(key) {
154108
+ if ($m) {
154109
+ var result = $mapDelete($m, key);
154110
+ if ($mapSize($m) === 0) {
154111
+ $m = void 0;
154181
154112
  }
154113
+ return result;
154114
+ }
154115
+ return false;
154116
+ },
154117
+ get: function(key) {
154118
+ if ($m) {
154119
+ return $mapGet($m, key);
154182
154120
  }
154183
154121
  },
154184
154122
  has: function(key) {
154185
- if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
154186
- if ($wm) {
154187
- return $weakMapHas($wm, key);
154188
- }
154189
- } else if ($Map) {
154190
- if ($m) {
154191
- return $mapHas($m, key);
154192
- }
154193
- } else {
154194
- if ($o) {
154195
- return listHas($o, key);
154196
- }
154123
+ if ($m) {
154124
+ return $mapHas($m, key);
154197
154125
  }
154198
154126
  return false;
154199
154127
  },
154200
154128
  set: function(key, value) {
154201
- if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
154202
- if (!$wm) {
154203
- $wm = new $WeakMap();
154129
+ if (!$m) {
154130
+ $m = new $Map();
154131
+ }
154132
+ $mapSet($m, key, value);
154133
+ }
154134
+ };
154135
+ return channel;
154136
+ };
154137
+ }
154138
+ });
154139
+
154140
+ // ../../node_modules/.pnpm/side-channel-weakmap@1.0.2/node_modules/side-channel-weakmap/index.js
154141
+ var require_side_channel_weakmap = __commonJS({
154142
+ "../../node_modules/.pnpm/side-channel-weakmap@1.0.2/node_modules/side-channel-weakmap/index.js"(exports2, module2) {
154143
+ "use strict";
154144
+ var GetIntrinsic = require_get_intrinsic();
154145
+ var callBound = require_call_bound();
154146
+ var inspect = require_object_inspect();
154147
+ var getSideChannelMap = require_side_channel_map();
154148
+ var $TypeError = require_type();
154149
+ var $WeakMap = GetIntrinsic("%WeakMap%", true);
154150
+ var $weakMapGet = callBound("WeakMap.prototype.get", true);
154151
+ var $weakMapSet = callBound("WeakMap.prototype.set", true);
154152
+ var $weakMapHas = callBound("WeakMap.prototype.has", true);
154153
+ var $weakMapDelete = callBound("WeakMap.prototype.delete", true);
154154
+ module2.exports = $WeakMap ? (
154155
+ /** @type {Exclude<import('.'), false>} */
154156
+ function getSideChannelWeakMap() {
154157
+ var $wm;
154158
+ var $m;
154159
+ var channel = {
154160
+ assert: function(key) {
154161
+ if (!channel.has(key)) {
154162
+ throw new $TypeError("Side channel does not contain " + inspect(key));
154163
+ }
154164
+ },
154165
+ "delete": function(key) {
154166
+ if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
154167
+ if ($wm) {
154168
+ return $weakMapDelete($wm, key);
154169
+ }
154170
+ } else if (getSideChannelMap) {
154171
+ if ($m) {
154172
+ return $m["delete"](key);
154173
+ }
154204
154174
  }
154205
- $weakMapSet($wm, key, value);
154206
- } else if ($Map) {
154207
- if (!$m) {
154208
- $m = new $Map();
154175
+ return false;
154176
+ },
154177
+ get: function(key) {
154178
+ if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
154179
+ if ($wm) {
154180
+ return $weakMapGet($wm, key);
154181
+ }
154209
154182
  }
154210
- $mapSet($m, key, value);
154211
- } else {
154212
- if (!$o) {
154213
- $o = { key: {}, next: null };
154183
+ return $m && $m.get(key);
154184
+ },
154185
+ has: function(key) {
154186
+ if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
154187
+ if ($wm) {
154188
+ return $weakMapHas($wm, key);
154189
+ }
154190
+ }
154191
+ return !!$m && $m.has(key);
154192
+ },
154193
+ set: function(key, value) {
154194
+ if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
154195
+ if (!$wm) {
154196
+ $wm = new $WeakMap();
154197
+ }
154198
+ $weakMapSet($wm, key, value);
154199
+ } else if (getSideChannelMap) {
154200
+ if (!$m) {
154201
+ $m = getSideChannelMap();
154202
+ }
154203
+ $m.set(key, value);
154214
154204
  }
154215
- listSet($o, key, value);
154216
154205
  }
154206
+ };
154207
+ return channel;
154208
+ }
154209
+ ) : getSideChannelMap;
154210
+ }
154211
+ });
154212
+
154213
+ // ../../node_modules/.pnpm/side-channel@1.1.0/node_modules/side-channel/index.js
154214
+ var require_side_channel = __commonJS({
154215
+ "../../node_modules/.pnpm/side-channel@1.1.0/node_modules/side-channel/index.js"(exports2, module2) {
154216
+ "use strict";
154217
+ var $TypeError = require_type();
154218
+ var inspect = require_object_inspect();
154219
+ var getSideChannelList = require_side_channel_list();
154220
+ var getSideChannelMap = require_side_channel_map();
154221
+ var getSideChannelWeakMap = require_side_channel_weakmap();
154222
+ var makeChannel = getSideChannelWeakMap || getSideChannelMap || getSideChannelList;
154223
+ module2.exports = function getSideChannel() {
154224
+ var $channelData;
154225
+ var channel = {
154226
+ assert: function(key) {
154227
+ if (!channel.has(key)) {
154228
+ throw new $TypeError("Side channel does not contain " + inspect(key));
154229
+ }
154230
+ },
154231
+ "delete": function(key) {
154232
+ return !!$channelData && $channelData["delete"](key);
154233
+ },
154234
+ get: function(key) {
154235
+ return $channelData && $channelData.get(key);
154236
+ },
154237
+ has: function(key) {
154238
+ return !!$channelData && $channelData.has(key);
154239
+ },
154240
+ set: function(key, value) {
154241
+ if (!$channelData) {
154242
+ $channelData = makeChannel();
154243
+ }
154244
+ $channelData.set(key, value);
154217
154245
  }
154218
154246
  };
154219
154247
  return channel;
@@ -154221,9 +154249,9 @@ var require_side_channel = __commonJS({
154221
154249
  }
154222
154250
  });
154223
154251
 
154224
- // ../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/formats.js
154252
+ // ../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/formats.js
154225
154253
  var require_formats = __commonJS({
154226
- "../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/formats.js"(exports2, module2) {
154254
+ "../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/formats.js"(exports2, module2) {
154227
154255
  "use strict";
154228
154256
  var replace = String.prototype.replace;
154229
154257
  var percentTwenties = /%20/g;
@@ -154247,13 +154275,28 @@ var require_formats = __commonJS({
154247
154275
  }
154248
154276
  });
154249
154277
 
154250
- // ../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/utils.js
154278
+ // ../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/utils.js
154251
154279
  var require_utils15 = __commonJS({
154252
- "../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/utils.js"(exports2, module2) {
154280
+ "../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/utils.js"(exports2, module2) {
154253
154281
  "use strict";
154254
154282
  var formats = require_formats();
154283
+ var getSideChannel = require_side_channel();
154255
154284
  var has = Object.prototype.hasOwnProperty;
154256
154285
  var isArray2 = Array.isArray;
154286
+ var overflowChannel = getSideChannel();
154287
+ var markOverflow = function markOverflow2(obj, maxIndex) {
154288
+ overflowChannel.set(obj, maxIndex);
154289
+ return obj;
154290
+ };
154291
+ var isOverflow = function isOverflow2(obj) {
154292
+ return overflowChannel.has(obj);
154293
+ };
154294
+ var getMaxIndex = function getMaxIndex2(obj) {
154295
+ return overflowChannel.get(obj);
154296
+ };
154297
+ var setMaxIndex = function setMaxIndex2(obj, maxIndex) {
154298
+ overflowChannel.set(obj, maxIndex);
154299
+ };
154257
154300
  var hexTable = (function() {
154258
154301
  var array = [];
154259
154302
  for (var i = 0; i < 256; ++i) {
@@ -154277,7 +154320,7 @@ var require_utils15 = __commonJS({
154277
154320
  }
154278
154321
  };
154279
154322
  var arrayToObject = function arrayToObject2(source, options2) {
154280
- var obj = options2 && options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {};
154323
+ var obj = options2 && options2.plainObjects ? { __proto__: null } : {};
154281
154324
  for (var i = 0; i < source.length; ++i) {
154282
154325
  if (typeof source[i] !== "undefined") {
154283
154326
  obj[i] = source[i];
@@ -154289,11 +154332,15 @@ var require_utils15 = __commonJS({
154289
154332
  if (!source) {
154290
154333
  return target;
154291
154334
  }
154292
- if (typeof source !== "object") {
154335
+ if (typeof source !== "object" && typeof source !== "function") {
154293
154336
  if (isArray2(target)) {
154294
154337
  target.push(source);
154295
154338
  } else if (target && typeof target === "object") {
154296
- if (options2 && (options2.plainObjects || options2.allowPrototypes) || !has.call(Object.prototype, source)) {
154339
+ if (isOverflow(target)) {
154340
+ var newIndex = getMaxIndex(target) + 1;
154341
+ target[newIndex] = source;
154342
+ setMaxIndex(target, newIndex);
154343
+ } else if (options2 && (options2.plainObjects || options2.allowPrototypes) || !has.call(Object.prototype, source)) {
154297
154344
  target[source] = true;
154298
154345
  }
154299
154346
  } else {
@@ -154302,6 +154349,15 @@ var require_utils15 = __commonJS({
154302
154349
  return target;
154303
154350
  }
154304
154351
  if (!target || typeof target !== "object") {
154352
+ if (isOverflow(source)) {
154353
+ var sourceKeys = Object.keys(source);
154354
+ var result = options2 && options2.plainObjects ? { __proto__: null, 0: target } : { 0: target };
154355
+ for (var m = 0; m < sourceKeys.length; m++) {
154356
+ var oldKey = parseInt(sourceKeys[m], 10);
154357
+ result[oldKey + 1] = source[sourceKeys[m]];
154358
+ }
154359
+ return markOverflow(result, getMaxIndex(source) + 1);
154360
+ }
154305
154361
  return [target].concat(source);
154306
154362
  }
154307
154363
  var mergeTarget = target;
@@ -154339,7 +154395,7 @@ var require_utils15 = __commonJS({
154339
154395
  return acc;
154340
154396
  }, target);
154341
154397
  };
154342
- var decode = function(str, decoder, charset) {
154398
+ var decode = function(str, defaultDecoder, charset) {
154343
154399
  var strWithoutPlus = str.replace(/\+/g, " ");
154344
154400
  if (charset === "iso-8859-1") {
154345
154401
  return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);
@@ -154350,6 +154406,7 @@ var require_utils15 = __commonJS({
154350
154406
  return strWithoutPlus;
154351
154407
  }
154352
154408
  };
154409
+ var limit = 1024;
154353
154410
  var encode = function encode2(str, defaultEncoder, charset, kind, format4) {
154354
154411
  if (str.length === 0) {
154355
154412
  return str;
@@ -154366,27 +154423,32 @@ var require_utils15 = __commonJS({
154366
154423
  });
154367
154424
  }
154368
154425
  var out = "";
154369
- for (var i = 0; i < string.length; ++i) {
154370
- var c = string.charCodeAt(i);
154371
- if (c === 45 || c === 46 || c === 95 || c === 126 || c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122 || format4 === formats.RFC1738 && (c === 40 || c === 41)) {
154372
- out += string.charAt(i);
154373
- continue;
154374
- }
154375
- if (c < 128) {
154376
- out = out + hexTable[c];
154377
- continue;
154378
- }
154379
- if (c < 2048) {
154380
- out = out + (hexTable[192 | c >> 6] + hexTable[128 | c & 63]);
154381
- continue;
154382
- }
154383
- if (c < 55296 || c >= 57344) {
154384
- out = out + (hexTable[224 | c >> 12] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63]);
154385
- continue;
154426
+ for (var j = 0; j < string.length; j += limit) {
154427
+ var segment = string.length >= limit ? string.slice(j, j + limit) : string;
154428
+ var arr = [];
154429
+ for (var i = 0; i < segment.length; ++i) {
154430
+ var c = segment.charCodeAt(i);
154431
+ if (c === 45 || c === 46 || c === 95 || c === 126 || c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122 || format4 === formats.RFC1738 && (c === 40 || c === 41)) {
154432
+ arr[arr.length] = segment.charAt(i);
154433
+ continue;
154434
+ }
154435
+ if (c < 128) {
154436
+ arr[arr.length] = hexTable[c];
154437
+ continue;
154438
+ }
154439
+ if (c < 2048) {
154440
+ arr[arr.length] = hexTable[192 | c >> 6] + hexTable[128 | c & 63];
154441
+ continue;
154442
+ }
154443
+ if (c < 55296 || c >= 57344) {
154444
+ arr[arr.length] = hexTable[224 | c >> 12] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63];
154445
+ continue;
154446
+ }
154447
+ i += 1;
154448
+ c = 65536 + ((c & 1023) << 10 | segment.charCodeAt(i) & 1023);
154449
+ arr[arr.length] = hexTable[240 | c >> 18] + hexTable[128 | c >> 12 & 63] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63];
154386
154450
  }
154387
- i += 1;
154388
- c = 65536 + ((c & 1023) << 10 | string.charCodeAt(i) & 1023);
154389
- out += hexTable[240 | c >> 18] + hexTable[128 | c >> 12 & 63] + hexTable[128 | c >> 6 & 63] + hexTable[128 | c & 63];
154451
+ out += arr.join("");
154390
154452
  }
154391
154453
  return out;
154392
154454
  };
@@ -154418,8 +154480,18 @@ var require_utils15 = __commonJS({
154418
154480
  }
154419
154481
  return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
154420
154482
  };
154421
- var combine = function combine2(a, b) {
154422
- return [].concat(a, b);
154483
+ var combine = function combine2(a, b, arrayLimit, plainObjects) {
154484
+ if (isOverflow(a)) {
154485
+ var newIndex = getMaxIndex(a) + 1;
154486
+ a[newIndex] = b;
154487
+ setMaxIndex(a, newIndex);
154488
+ return a;
154489
+ }
154490
+ var result = [].concat(a, b);
154491
+ if (result.length > arrayLimit) {
154492
+ return markOverflow(arrayToObject(result, { plainObjects }), result.length - 1);
154493
+ }
154494
+ return result;
154423
154495
  };
154424
154496
  var maybeMap = function maybeMap2(val2, fn2) {
154425
154497
  if (isArray2(val2)) {
@@ -154439,6 +154511,7 @@ var require_utils15 = __commonJS({
154439
154511
  decode,
154440
154512
  encode,
154441
154513
  isBuffer,
154514
+ isOverflow,
154442
154515
  isRegExp,
154443
154516
  maybeMap,
154444
154517
  merge: merge2
@@ -154446,9 +154519,9 @@ var require_utils15 = __commonJS({
154446
154519
  }
154447
154520
  });
154448
154521
 
154449
- // ../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/stringify.js
154522
+ // ../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/stringify.js
154450
154523
  var require_stringify5 = __commonJS({
154451
- "../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/stringify.js"(exports2, module2) {
154524
+ "../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/stringify.js"(exports2, module2) {
154452
154525
  "use strict";
154453
154526
  var getSideChannel = require_side_channel();
154454
154527
  var utils = require_utils15();
@@ -154467,7 +154540,6 @@ var require_stringify5 = __commonJS({
154467
154540
  }
154468
154541
  };
154469
154542
  var isArray2 = Array.isArray;
154470
- var split = String.prototype.split;
154471
154543
  var push = Array.prototype.push;
154472
154544
  var pushToArray = function(arr, valueOrArray) {
154473
154545
  push.apply(arr, isArray2(valueOrArray) ? valueOrArray : [valueOrArray]);
@@ -154477,12 +154549,17 @@ var require_stringify5 = __commonJS({
154477
154549
  var defaults = {
154478
154550
  addQueryPrefix: false,
154479
154551
  allowDots: false,
154552
+ allowEmptyArrays: false,
154553
+ arrayFormat: "indices",
154480
154554
  charset: "utf-8",
154481
154555
  charsetSentinel: false,
154556
+ commaRoundTrip: false,
154482
154557
  delimiter: "&",
154483
154558
  encode: true,
154559
+ encodeDotInKeys: false,
154484
154560
  encoder: utils.encode,
154485
154561
  encodeValuesOnly: false,
154562
+ filter: void 0,
154486
154563
  format: defaultFormat,
154487
154564
  formatter: formats.formatters[defaultFormat],
154488
154565
  // deprecated
@@ -154497,7 +154574,7 @@ var require_stringify5 = __commonJS({
154497
154574
  return typeof v === "string" || typeof v === "number" || typeof v === "boolean" || typeof v === "symbol" || typeof v === "bigint";
154498
154575
  };
154499
154576
  var sentinel = {};
154500
- var stringify = function stringify2(object, prefix, generateArrayPrefix, commaRoundTrip, strictNullHandling, skipNulls, encoder, filter, sort, allowDots, serializeDate, format4, formatter, encodeValuesOnly, charset, sideChannel) {
154577
+ var stringify = function stringify2(object, prefix, generateArrayPrefix, commaRoundTrip, allowEmptyArrays, strictNullHandling, skipNulls, encodeDotInKeys, encoder, filter, sort, allowDots, serializeDate, format4, formatter, encodeValuesOnly, charset, sideChannel) {
154501
154578
  var obj = object;
154502
154579
  var tmpSc = sideChannel;
154503
154580
  var step = 0;
@@ -154537,14 +154614,6 @@ var require_stringify5 = __commonJS({
154537
154614
  if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {
154538
154615
  if (encoder) {
154539
154616
  var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, "key", format4);
154540
- if (generateArrayPrefix === "comma" && encodeValuesOnly) {
154541
- var valuesArray = split.call(String(obj), ",");
154542
- var valuesJoined = "";
154543
- for (var i = 0; i < valuesArray.length; ++i) {
154544
- valuesJoined += (i === 0 ? "" : ",") + formatter(encoder(valuesArray[i], defaults.encoder, charset, "value", format4));
154545
- }
154546
- return [formatter(keyValue) + (commaRoundTrip && isArray2(obj) && valuesArray.length === 1 ? "[]" : "") + "=" + valuesJoined];
154547
- }
154548
154617
  return [formatter(keyValue) + "=" + formatter(encoder(obj, defaults.encoder, charset, "value", format4))];
154549
154618
  }
154550
154619
  return [formatter(prefix) + "=" + formatter(String(obj))];
@@ -154555,6 +154624,9 @@ var require_stringify5 = __commonJS({
154555
154624
  }
154556
154625
  var objKeys;
154557
154626
  if (generateArrayPrefix === "comma" && isArray2(obj)) {
154627
+ if (encodeValuesOnly && encoder) {
154628
+ obj = utils.maybeMap(obj, encoder);
154629
+ }
154558
154630
  objKeys = [{ value: obj.length > 0 ? obj.join(",") || null : void 0 }];
154559
154631
  } else if (isArray2(filter)) {
154560
154632
  objKeys = filter;
@@ -154562,14 +154634,19 @@ var require_stringify5 = __commonJS({
154562
154634
  var keys = Object.keys(obj);
154563
154635
  objKeys = sort ? keys.sort(sort) : keys;
154564
154636
  }
154565
- var adjustedPrefix = commaRoundTrip && isArray2(obj) && obj.length === 1 ? prefix + "[]" : prefix;
154637
+ var encodedPrefix = encodeDotInKeys ? String(prefix).replace(/\./g, "%2E") : String(prefix);
154638
+ var adjustedPrefix = commaRoundTrip && isArray2(obj) && obj.length === 1 ? encodedPrefix + "[]" : encodedPrefix;
154639
+ if (allowEmptyArrays && isArray2(obj) && obj.length === 0) {
154640
+ return adjustedPrefix + "[]";
154641
+ }
154566
154642
  for (var j = 0; j < objKeys.length; ++j) {
154567
154643
  var key = objKeys[j];
154568
- var value = typeof key === "object" && typeof key.value !== "undefined" ? key.value : obj[key];
154644
+ var value = typeof key === "object" && key && typeof key.value !== "undefined" ? key.value : obj[key];
154569
154645
  if (skipNulls && value === null) {
154570
154646
  continue;
154571
154647
  }
154572
- var keyPrefix = isArray2(obj) ? typeof generateArrayPrefix === "function" ? generateArrayPrefix(adjustedPrefix, key) : adjustedPrefix : adjustedPrefix + (allowDots ? "." + key : "[" + key + "]");
154648
+ var encodedKey = allowDots && encodeDotInKeys ? String(key).replace(/\./g, "%2E") : String(key);
154649
+ var keyPrefix = isArray2(obj) ? typeof generateArrayPrefix === "function" ? generateArrayPrefix(adjustedPrefix, encodedKey) : adjustedPrefix : adjustedPrefix + (allowDots ? "." + encodedKey : "[" + encodedKey + "]");
154573
154650
  sideChannel.set(object, step);
154574
154651
  var valueSideChannel = getSideChannel();
154575
154652
  valueSideChannel.set(sentinel, sideChannel);
@@ -154578,9 +154655,11 @@ var require_stringify5 = __commonJS({
154578
154655
  keyPrefix,
154579
154656
  generateArrayPrefix,
154580
154657
  commaRoundTrip,
154658
+ allowEmptyArrays,
154581
154659
  strictNullHandling,
154582
154660
  skipNulls,
154583
- encoder,
154661
+ encodeDotInKeys,
154662
+ generateArrayPrefix === "comma" && encodeValuesOnly && isArray2(obj) ? null : encoder,
154584
154663
  filter,
154585
154664
  sort,
154586
154665
  allowDots,
@@ -154598,6 +154677,12 @@ var require_stringify5 = __commonJS({
154598
154677
  if (!opts) {
154599
154678
  return defaults;
154600
154679
  }
154680
+ if (typeof opts.allowEmptyArrays !== "undefined" && typeof opts.allowEmptyArrays !== "boolean") {
154681
+ throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");
154682
+ }
154683
+ if (typeof opts.encodeDotInKeys !== "undefined" && typeof opts.encodeDotInKeys !== "boolean") {
154684
+ throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");
154685
+ }
154601
154686
  if (opts.encoder !== null && typeof opts.encoder !== "undefined" && typeof opts.encoder !== "function") {
154602
154687
  throw new TypeError("Encoder has to be a function.");
154603
154688
  }
@@ -154617,13 +154702,29 @@ var require_stringify5 = __commonJS({
154617
154702
  if (typeof opts.filter === "function" || isArray2(opts.filter)) {
154618
154703
  filter = opts.filter;
154619
154704
  }
154705
+ var arrayFormat;
154706
+ if (opts.arrayFormat in arrayPrefixGenerators) {
154707
+ arrayFormat = opts.arrayFormat;
154708
+ } else if ("indices" in opts) {
154709
+ arrayFormat = opts.indices ? "indices" : "repeat";
154710
+ } else {
154711
+ arrayFormat = defaults.arrayFormat;
154712
+ }
154713
+ if ("commaRoundTrip" in opts && typeof opts.commaRoundTrip !== "boolean") {
154714
+ throw new TypeError("`commaRoundTrip` must be a boolean, or absent");
154715
+ }
154716
+ var allowDots = typeof opts.allowDots === "undefined" ? opts.encodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
154620
154717
  return {
154621
154718
  addQueryPrefix: typeof opts.addQueryPrefix === "boolean" ? opts.addQueryPrefix : defaults.addQueryPrefix,
154622
- allowDots: typeof opts.allowDots === "undefined" ? defaults.allowDots : !!opts.allowDots,
154719
+ allowDots,
154720
+ allowEmptyArrays: typeof opts.allowEmptyArrays === "boolean" ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
154721
+ arrayFormat,
154623
154722
  charset,
154624
154723
  charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults.charsetSentinel,
154724
+ commaRoundTrip: !!opts.commaRoundTrip,
154625
154725
  delimiter: typeof opts.delimiter === "undefined" ? defaults.delimiter : opts.delimiter,
154626
154726
  encode: typeof opts.encode === "boolean" ? opts.encode : defaults.encode,
154727
+ encodeDotInKeys: typeof opts.encodeDotInKeys === "boolean" ? opts.encodeDotInKeys : defaults.encodeDotInKeys,
154627
154728
  encoder: typeof opts.encoder === "function" ? opts.encoder : defaults.encoder,
154628
154729
  encodeValuesOnly: typeof opts.encodeValuesOnly === "boolean" ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
154629
154730
  filter,
@@ -154651,19 +154752,8 @@ var require_stringify5 = __commonJS({
154651
154752
  if (typeof obj !== "object" || obj === null) {
154652
154753
  return "";
154653
154754
  }
154654
- var arrayFormat;
154655
- if (opts && opts.arrayFormat in arrayPrefixGenerators) {
154656
- arrayFormat = opts.arrayFormat;
154657
- } else if (opts && "indices" in opts) {
154658
- arrayFormat = opts.indices ? "indices" : "repeat";
154659
- } else {
154660
- arrayFormat = "indices";
154661
- }
154662
- var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];
154663
- if (opts && "commaRoundTrip" in opts && typeof opts.commaRoundTrip !== "boolean") {
154664
- throw new TypeError("`commaRoundTrip` must be a boolean, or absent");
154665
- }
154666
- var commaRoundTrip = generateArrayPrefix === "comma" && opts && opts.commaRoundTrip;
154755
+ var generateArrayPrefix = arrayPrefixGenerators[options2.arrayFormat];
154756
+ var commaRoundTrip = generateArrayPrefix === "comma" && options2.commaRoundTrip;
154667
154757
  if (!objKeys) {
154668
154758
  objKeys = Object.keys(obj);
154669
154759
  }
@@ -154673,16 +154763,19 @@ var require_stringify5 = __commonJS({
154673
154763
  var sideChannel = getSideChannel();
154674
154764
  for (var i = 0; i < objKeys.length; ++i) {
154675
154765
  var key = objKeys[i];
154676
- if (options2.skipNulls && obj[key] === null) {
154766
+ var value = obj[key];
154767
+ if (options2.skipNulls && value === null) {
154677
154768
  continue;
154678
154769
  }
154679
154770
  pushToArray(keys, stringify(
154680
- obj[key],
154771
+ value,
154681
154772
  key,
154682
154773
  generateArrayPrefix,
154683
154774
  commaRoundTrip,
154775
+ options2.allowEmptyArrays,
154684
154776
  options2.strictNullHandling,
154685
154777
  options2.skipNulls,
154778
+ options2.encodeDotInKeys,
154686
154779
  options2.encode ? options2.encoder : null,
154687
154780
  options2.filter,
154688
154781
  options2.sort,
@@ -154709,49 +154802,64 @@ var require_stringify5 = __commonJS({
154709
154802
  }
154710
154803
  });
154711
154804
 
154712
- // ../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/parse.js
154805
+ // ../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/parse.js
154713
154806
  var require_parse9 = __commonJS({
154714
- "../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/parse.js"(exports2, module2) {
154807
+ "../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/parse.js"(exports2, module2) {
154715
154808
  "use strict";
154716
154809
  var utils = require_utils15();
154717
154810
  var has = Object.prototype.hasOwnProperty;
154718
154811
  var isArray2 = Array.isArray;
154719
154812
  var defaults = {
154720
154813
  allowDots: false,
154814
+ allowEmptyArrays: false,
154721
154815
  allowPrototypes: false,
154722
154816
  allowSparse: false,
154723
154817
  arrayLimit: 20,
154724
154818
  charset: "utf-8",
154725
154819
  charsetSentinel: false,
154726
154820
  comma: false,
154821
+ decodeDotInKeys: false,
154727
154822
  decoder: utils.decode,
154728
154823
  delimiter: "&",
154729
154824
  depth: 5,
154825
+ duplicates: "combine",
154730
154826
  ignoreQueryPrefix: false,
154731
154827
  interpretNumericEntities: false,
154732
154828
  parameterLimit: 1e3,
154733
154829
  parseArrays: true,
154734
154830
  plainObjects: false,
154735
- strictNullHandling: false
154831
+ strictDepth: false,
154832
+ strictNullHandling: false,
154833
+ throwOnLimitExceeded: false
154736
154834
  };
154737
154835
  var interpretNumericEntities = function(str) {
154738
154836
  return str.replace(/&#(\d+);/g, function($0, numberStr) {
154739
154837
  return String.fromCharCode(parseInt(numberStr, 10));
154740
154838
  });
154741
154839
  };
154742
- var parseArrayValue = function(val2, options2) {
154840
+ var parseArrayValue = function(val2, options2, currentArrayLength) {
154743
154841
  if (val2 && typeof val2 === "string" && options2.comma && val2.indexOf(",") > -1) {
154744
154842
  return val2.split(",");
154745
154843
  }
154844
+ if (options2.throwOnLimitExceeded && currentArrayLength >= options2.arrayLimit) {
154845
+ throw new RangeError("Array limit exceeded. Only " + options2.arrayLimit + " element" + (options2.arrayLimit === 1 ? "" : "s") + " allowed in an array.");
154846
+ }
154746
154847
  return val2;
154747
154848
  };
154748
154849
  var isoSentinel = "utf8=%26%2310003%3B";
154749
154850
  var charsetSentinel = "utf8=%E2%9C%93";
154750
154851
  var parseValues = function parseQueryStringValues(str, options2) {
154751
- var obj = {};
154852
+ var obj = { __proto__: null };
154752
154853
  var cleanStr = options2.ignoreQueryPrefix ? str.replace(/^\?/, "") : str;
154854
+ cleanStr = cleanStr.replace(/%5B/gi, "[").replace(/%5D/gi, "]");
154753
154855
  var limit = options2.parameterLimit === Infinity ? void 0 : options2.parameterLimit;
154754
- var parts = cleanStr.split(options2.delimiter, limit);
154856
+ var parts = cleanStr.split(
154857
+ options2.delimiter,
154858
+ options2.throwOnLimitExceeded ? limit + 1 : limit
154859
+ );
154860
+ if (options2.throwOnLimitExceeded && parts.length > limit) {
154861
+ throw new RangeError("Parameter limit exceeded. Only " + limit + " parameter" + (limit === 1 ? "" : "s") + " allowed.");
154862
+ }
154755
154863
  var skipIndex = -1;
154756
154864
  var i;
154757
154865
  var charset = options2.charset;
@@ -154775,65 +154883,100 @@ var require_parse9 = __commonJS({
154775
154883
  var part = parts[i];
154776
154884
  var bracketEqualsPos = part.indexOf("]=");
154777
154885
  var pos = bracketEqualsPos === -1 ? part.indexOf("=") : bracketEqualsPos + 1;
154778
- var key, val2;
154886
+ var key;
154887
+ var val2;
154779
154888
  if (pos === -1) {
154780
154889
  key = options2.decoder(part, defaults.decoder, charset, "key");
154781
154890
  val2 = options2.strictNullHandling ? null : "";
154782
154891
  } else {
154783
154892
  key = options2.decoder(part.slice(0, pos), defaults.decoder, charset, "key");
154784
- val2 = utils.maybeMap(
154785
- parseArrayValue(part.slice(pos + 1), options2),
154786
- function(encodedVal) {
154787
- return options2.decoder(encodedVal, defaults.decoder, charset, "value");
154788
- }
154789
- );
154893
+ if (key !== null) {
154894
+ val2 = utils.maybeMap(
154895
+ parseArrayValue(
154896
+ part.slice(pos + 1),
154897
+ options2,
154898
+ isArray2(obj[key]) ? obj[key].length : 0
154899
+ ),
154900
+ function(encodedVal) {
154901
+ return options2.decoder(encodedVal, defaults.decoder, charset, "value");
154902
+ }
154903
+ );
154904
+ }
154790
154905
  }
154791
154906
  if (val2 && options2.interpretNumericEntities && charset === "iso-8859-1") {
154792
- val2 = interpretNumericEntities(val2);
154907
+ val2 = interpretNumericEntities(String(val2));
154793
154908
  }
154794
154909
  if (part.indexOf("[]=") > -1) {
154795
154910
  val2 = isArray2(val2) ? [val2] : val2;
154796
154911
  }
154797
- if (has.call(obj, key)) {
154798
- obj[key] = utils.combine(obj[key], val2);
154799
- } else {
154800
- obj[key] = val2;
154912
+ if (key !== null) {
154913
+ var existing = has.call(obj, key);
154914
+ if (existing && options2.duplicates === "combine") {
154915
+ obj[key] = utils.combine(
154916
+ obj[key],
154917
+ val2,
154918
+ options2.arrayLimit,
154919
+ options2.plainObjects
154920
+ );
154921
+ } else if (!existing || options2.duplicates === "last") {
154922
+ obj[key] = val2;
154923
+ }
154801
154924
  }
154802
154925
  }
154803
154926
  return obj;
154804
154927
  };
154805
154928
  var parseObject = function(chain, val2, options2, valuesParsed) {
154806
- var leaf = valuesParsed ? val2 : parseArrayValue(val2, options2);
154929
+ var currentArrayLength = 0;
154930
+ if (chain.length > 0 && chain[chain.length - 1] === "[]") {
154931
+ var parentKey = chain.slice(0, -1).join("");
154932
+ currentArrayLength = Array.isArray(val2) && val2[parentKey] ? val2[parentKey].length : 0;
154933
+ }
154934
+ var leaf = valuesParsed ? val2 : parseArrayValue(val2, options2, currentArrayLength);
154807
154935
  for (var i = chain.length - 1; i >= 0; --i) {
154808
154936
  var obj;
154809
154937
  var root = chain[i];
154810
154938
  if (root === "[]" && options2.parseArrays) {
154811
- obj = [].concat(leaf);
154939
+ if (utils.isOverflow(leaf)) {
154940
+ obj = leaf;
154941
+ } else {
154942
+ obj = options2.allowEmptyArrays && (leaf === "" || options2.strictNullHandling && leaf === null) ? [] : utils.combine(
154943
+ [],
154944
+ leaf,
154945
+ options2.arrayLimit,
154946
+ options2.plainObjects
154947
+ );
154948
+ }
154812
154949
  } else {
154813
- obj = options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {};
154950
+ obj = options2.plainObjects ? { __proto__: null } : {};
154814
154951
  var cleanRoot = root.charAt(0) === "[" && root.charAt(root.length - 1) === "]" ? root.slice(1, -1) : root;
154815
- var index = parseInt(cleanRoot, 10);
154816
- if (!options2.parseArrays && cleanRoot === "") {
154952
+ var decodedRoot = options2.decodeDotInKeys ? cleanRoot.replace(/%2E/g, ".") : cleanRoot;
154953
+ var index = parseInt(decodedRoot, 10);
154954
+ if (!options2.parseArrays && decodedRoot === "") {
154817
154955
  obj = { 0: leaf };
154818
- } else if (!isNaN(index) && root !== cleanRoot && String(index) === cleanRoot && index >= 0 && (options2.parseArrays && index <= options2.arrayLimit)) {
154956
+ } else if (!isNaN(index) && root !== decodedRoot && String(index) === decodedRoot && index >= 0 && (options2.parseArrays && index <= options2.arrayLimit)) {
154819
154957
  obj = [];
154820
154958
  obj[index] = leaf;
154821
- } else if (cleanRoot !== "__proto__") {
154822
- obj[cleanRoot] = leaf;
154959
+ } else if (decodedRoot !== "__proto__") {
154960
+ obj[decodedRoot] = leaf;
154823
154961
  }
154824
154962
  }
154825
154963
  leaf = obj;
154826
154964
  }
154827
154965
  return leaf;
154828
154966
  };
154829
- var parseKeys = function parseQueryStringKeys(givenKey, val2, options2, valuesParsed) {
154830
- if (!givenKey) {
154831
- return;
154832
- }
154967
+ var splitKeyIntoSegments = function splitKeyIntoSegments2(givenKey, options2) {
154833
154968
  var key = options2.allowDots ? givenKey.replace(/\.([^.[]+)/g, "[$1]") : givenKey;
154969
+ if (options2.depth <= 0) {
154970
+ if (!options2.plainObjects && has.call(Object.prototype, key)) {
154971
+ if (!options2.allowPrototypes) {
154972
+ return;
154973
+ }
154974
+ }
154975
+ return [key];
154976
+ }
154834
154977
  var brackets = /(\[[^[\]]*])/;
154835
154978
  var child = /(\[[^[\]]*])/g;
154836
- var segment = options2.depth > 0 && brackets.exec(key);
154979
+ var segment = brackets.exec(key);
154837
154980
  var parent = segment ? key.slice(0, segment.index) : key;
154838
154981
  var keys = [];
154839
154982
  if (parent) {
@@ -154845,9 +154988,10 @@ var require_parse9 = __commonJS({
154845
154988
  keys.push(parent);
154846
154989
  }
154847
154990
  var i = 0;
154848
- while (options2.depth > 0 && (segment = child.exec(key)) !== null && i < options2.depth) {
154991
+ while ((segment = child.exec(key)) !== null && i < options2.depth) {
154849
154992
  i += 1;
154850
- if (!options2.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {
154993
+ var segmentContent = segment[1].slice(1, -1);
154994
+ if (!options2.plainObjects && has.call(Object.prototype, segmentContent)) {
154851
154995
  if (!options2.allowPrototypes) {
154852
154996
  return;
154853
154997
  }
@@ -154855,48 +154999,80 @@ var require_parse9 = __commonJS({
154855
154999
  keys.push(segment[1]);
154856
155000
  }
154857
155001
  if (segment) {
155002
+ if (options2.strictDepth === true) {
155003
+ throw new RangeError("Input depth exceeded depth option of " + options2.depth + " and strictDepth is true");
155004
+ }
154858
155005
  keys.push("[" + key.slice(segment.index) + "]");
154859
155006
  }
155007
+ return keys;
155008
+ };
155009
+ var parseKeys = function parseQueryStringKeys(givenKey, val2, options2, valuesParsed) {
155010
+ if (!givenKey) {
155011
+ return;
155012
+ }
155013
+ var keys = splitKeyIntoSegments(givenKey, options2);
155014
+ if (!keys) {
155015
+ return;
155016
+ }
154860
155017
  return parseObject(keys, val2, options2, valuesParsed);
154861
155018
  };
154862
155019
  var normalizeParseOptions = function normalizeParseOptions2(opts) {
154863
155020
  if (!opts) {
154864
155021
  return defaults;
154865
155022
  }
154866
- if (opts.decoder !== null && opts.decoder !== void 0 && typeof opts.decoder !== "function") {
155023
+ if (typeof opts.allowEmptyArrays !== "undefined" && typeof opts.allowEmptyArrays !== "boolean") {
155024
+ throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");
155025
+ }
155026
+ if (typeof opts.decodeDotInKeys !== "undefined" && typeof opts.decodeDotInKeys !== "boolean") {
155027
+ throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");
155028
+ }
155029
+ if (opts.decoder !== null && typeof opts.decoder !== "undefined" && typeof opts.decoder !== "function") {
154867
155030
  throw new TypeError("Decoder has to be a function.");
154868
155031
  }
154869
155032
  if (typeof opts.charset !== "undefined" && opts.charset !== "utf-8" && opts.charset !== "iso-8859-1") {
154870
155033
  throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");
154871
155034
  }
155035
+ if (typeof opts.throwOnLimitExceeded !== "undefined" && typeof opts.throwOnLimitExceeded !== "boolean") {
155036
+ throw new TypeError("`throwOnLimitExceeded` option must be a boolean");
155037
+ }
154872
155038
  var charset = typeof opts.charset === "undefined" ? defaults.charset : opts.charset;
155039
+ var duplicates = typeof opts.duplicates === "undefined" ? defaults.duplicates : opts.duplicates;
155040
+ if (duplicates !== "combine" && duplicates !== "first" && duplicates !== "last") {
155041
+ throw new TypeError("The duplicates option must be either combine, first, or last");
155042
+ }
155043
+ var allowDots = typeof opts.allowDots === "undefined" ? opts.decodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
154873
155044
  return {
154874
- allowDots: typeof opts.allowDots === "undefined" ? defaults.allowDots : !!opts.allowDots,
155045
+ allowDots,
155046
+ allowEmptyArrays: typeof opts.allowEmptyArrays === "boolean" ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
154875
155047
  allowPrototypes: typeof opts.allowPrototypes === "boolean" ? opts.allowPrototypes : defaults.allowPrototypes,
154876
155048
  allowSparse: typeof opts.allowSparse === "boolean" ? opts.allowSparse : defaults.allowSparse,
154877
155049
  arrayLimit: typeof opts.arrayLimit === "number" ? opts.arrayLimit : defaults.arrayLimit,
154878
155050
  charset,
154879
155051
  charsetSentinel: typeof opts.charsetSentinel === "boolean" ? opts.charsetSentinel : defaults.charsetSentinel,
154880
155052
  comma: typeof opts.comma === "boolean" ? opts.comma : defaults.comma,
155053
+ decodeDotInKeys: typeof opts.decodeDotInKeys === "boolean" ? opts.decodeDotInKeys : defaults.decodeDotInKeys,
154881
155054
  decoder: typeof opts.decoder === "function" ? opts.decoder : defaults.decoder,
154882
155055
  delimiter: typeof opts.delimiter === "string" || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,
154883
155056
  // eslint-disable-next-line no-implicit-coercion, no-extra-parens
154884
155057
  depth: typeof opts.depth === "number" || opts.depth === false ? +opts.depth : defaults.depth,
155058
+ duplicates,
154885
155059
  ignoreQueryPrefix: opts.ignoreQueryPrefix === true,
154886
155060
  interpretNumericEntities: typeof opts.interpretNumericEntities === "boolean" ? opts.interpretNumericEntities : defaults.interpretNumericEntities,
154887
155061
  parameterLimit: typeof opts.parameterLimit === "number" ? opts.parameterLimit : defaults.parameterLimit,
154888
155062
  parseArrays: opts.parseArrays !== false,
154889
155063
  plainObjects: typeof opts.plainObjects === "boolean" ? opts.plainObjects : defaults.plainObjects,
154890
- strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults.strictNullHandling
155064
+ strictDepth: typeof opts.strictDepth === "boolean" ? !!opts.strictDepth : defaults.strictDepth,
155065
+ strictNullHandling: typeof opts.strictNullHandling === "boolean" ? opts.strictNullHandling : defaults.strictNullHandling,
155066
+ throwOnLimitExceeded: typeof opts.throwOnLimitExceeded === "boolean" ? opts.throwOnLimitExceeded : false
154891
155067
  };
154892
155068
  };
154893
155069
  module2.exports = function(str, opts) {
154894
155070
  var options2 = normalizeParseOptions(opts);
154895
155071
  if (str === "" || str === null || typeof str === "undefined") {
154896
- return options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {};
155072
+ return options2.plainObjects ? { __proto__: null } : {};
154897
155073
  }
154898
155074
  var tempObj = typeof str === "string" ? parseValues(str, options2) : str;
154899
- var obj = options2.plainObjects ? /* @__PURE__ */ Object.create(null) : {};
155075
+ var obj = options2.plainObjects ? { __proto__: null } : {};
154900
155076
  var keys = Object.keys(tempObj);
154901
155077
  for (var i = 0; i < keys.length; ++i) {
154902
155078
  var key = keys[i];
@@ -154911,9 +155087,9 @@ var require_parse9 = __commonJS({
154911
155087
  }
154912
155088
  });
154913
155089
 
154914
- // ../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/index.js
155090
+ // ../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/index.js
154915
155091
  var require_lib9 = __commonJS({
154916
- "../../node_modules/.pnpm/qs@6.11.0/node_modules/qs/lib/index.js"(exports2, module2) {
155092
+ "../../node_modules/.pnpm/qs@6.14.1/node_modules/qs/lib/index.js"(exports2, module2) {
154917
155093
  "use strict";
154918
155094
  var stringify = require_stringify5();
154919
155095
  var parse4 = require_parse9();
@@ -155380,13 +155556,19 @@ var require_service_provider = __commonJS({
155380
155556
  /**
155381
155557
  * Create an axios configuration for a new service instance.
155382
155558
  *
155559
+ * **IMPORTANT:**
155560
+ * This method intentionally mutates Axios instance defaults.
155561
+ * Changing this behaviour (e.g. making defaults immutable) will break
155562
+ * Axios header merging and interceptor resolution.
155563
+ *
155383
155564
  * @param path path of the service relative to the service provider
155384
155565
  * @returns axios config
155385
155566
  */
155386
155567
  generateServiceConfig(path3) {
155387
- const headers = { ...this.defaults.headers?.common, Cookie: this.cookies.toString() };
155568
+ const config = Object.assign({}, this.defaults);
155569
+ const headers = Object.assign(this.defaults.headers?.common ?? {}, { Cookie: this.cookies.toString() });
155388
155570
  return {
155389
- ...this.defaults,
155571
+ ...config,
155390
155572
  baseURL: this.defaults.baseURL + path3,
155391
155573
  headers
155392
155574
  };
@@ -165685,7 +165867,6 @@ var require_generator_service = __commonJS({
165685
165867
  static getAdtCatagory() {
165686
165868
  return _GeneratorService.adtCategory;
165687
165869
  }
165688
- id;
165689
165870
  /**
165690
165871
  * Get the UI service generator for the given referenced object.
165691
165872
  *
@@ -169383,7 +169564,12 @@ var i18n_en_default = {
169383
169564
  noFileSelected: "No file selected for import.",
169384
169565
  panelActionDispatch: "Error dispatching panel action: {{- error}}",
169385
169566
  noneSelected: "No SAP system selected.",
169386
- testConnection: "An error occurred when testing the connection: {{- error}}"
169567
+ testConnection: "An error occurred when testing the connection: {{- error}}",
169568
+ systemInfoUpdate: "Failed to add the system information to the backend system: {{- error}}"
169569
+ },
169570
+ debug: {
169571
+ systemInfoRetrieved: "Successfully retrieved the system ID '{{- systemId}}' and client '{{client}}' from '/sap/bc/adt/core/http/systeminformation'.",
169572
+ systemInfoRetrievalFailure: "Failed to retrieve system information from '/sap/bc/adt/core/http/systeminformation': {{- error}}"
169387
169573
  },
169388
169574
  validation: {
169389
169575
  provideUrl: "Please provide a valid URL to test the connection.",
@@ -169461,12 +169647,18 @@ function getSystemTypeLabel(systemType) {
169461
169647
  }
169462
169648
  return systemTypeName;
169463
169649
  }
169650
+ function compareSystems(currentSystem, newSystem) {
169651
+ return currentSystem.url.replace(/\/$/, "") === newSystem?.url.replace(/\/$/, "") && currentSystem.client === newSystem?.client;
169652
+ }
169653
+ function shouldStoreSystemInfo(system) {
169654
+ return system.systemType === "OnPrem" && !!system.username && !!system.password;
169655
+ }
169464
169656
 
169465
169657
  // src/utils/telemetryHelper.ts
169466
169658
  var import_telemetry = __toESM(require_dist15());
169467
169659
 
169468
169660
  // package.json
169469
- var version = "0.1.4";
169661
+ var version = "0.2.1";
169470
169662
 
169471
169663
  // src/utils/telemetryHelper.ts
169472
169664
  var import_feature_toggle = __toESM(require_dist16());
@@ -169696,7 +169888,7 @@ var import_vscode14 = require("vscode");
169696
169888
  var import_vscode9 = require("vscode");
169697
169889
  var import_node_path3 = require("node:path");
169698
169890
 
169699
- // src/panel/system/utils/catalog.ts
169891
+ // src/panel/system/utils/connectionInfo.ts
169700
169892
  var import_axios_extension = __toESM(require_dist17());
169701
169893
  function getAbapOnPremServiceProvider({
169702
169894
  url,
@@ -169742,6 +169934,24 @@ async function getCatalogServiceCount(system) {
169742
169934
  const v4Request = await fetchCount(import_axios_extension.ODataVersion.v4);
169743
169935
  return { v2Request, v4Request };
169744
169936
  }
169937
+ async function getSystemInfo(system) {
169938
+ let systemInfo;
169939
+ try {
169940
+ const abapServiceProvider = getAbapServiceProvider(system);
169941
+ const info = await abapServiceProvider.getSystemInfo();
169942
+ if (info) {
169943
+ systemInfo = {
169944
+ systemId: info.systemID,
169945
+ client: info.client
169946
+ };
169947
+ }
169948
+ } catch (e) {
169949
+ SystemsLogger.logger.debug(
169950
+ t2("debug.systemInfoRetrievalFailure", { error: e instanceof Error ? e.message : String(e) })
169951
+ );
169952
+ }
169953
+ return systemInfo;
169954
+ }
169745
169955
 
169746
169956
  // src/panel/system/utils/validate.ts
169747
169957
  function validateSystemInfo(input) {
@@ -169989,7 +170199,7 @@ function logTelemetry(status) {
169989
170199
  var import_store3 = __toESM(require_dist2());
169990
170200
  async function renderWebApp(context4) {
169991
170201
  const { backendSystem, panelViewType, systemStatusMessage, postMessage } = context4;
169992
- const systemInfo = getSystemInfo(backendSystem);
170202
+ const systemInfo = getSystemInfo2(backendSystem);
169993
170203
  await postMessage(systemInfoLoading());
169994
170204
  if (panelViewType === 0 /* Create */) {
169995
170205
  await postMessage(createNewSystem());
@@ -170002,11 +170212,11 @@ async function renderWebApp(context4) {
170002
170212
  }
170003
170213
  return;
170004
170214
  }
170005
- if (systemInfo && panelViewType === 3 /* Import */) {
170215
+ if (systemInfo && panelViewType === 2 /* Import */) {
170006
170216
  await postMessage(updateSystemInfo({ systemInfo, unSaved: true }));
170007
170217
  }
170008
170218
  }
170009
- function getSystemInfo(backendSystem) {
170219
+ function getSystemInfo2(backendSystem) {
170010
170220
  let systemInfo;
170011
170221
  if (backendSystem) {
170012
170222
  systemInfo = {
@@ -170020,27 +170230,50 @@ function getSystemInfo(backendSystem) {
170020
170230
  // src/panel/system/actions/updateSystem.ts
170021
170231
  var import_vscode7 = require("vscode");
170022
170232
  async function updateSystem(context4, action) {
170023
- const { system: newBackendSystem } = action.payload;
170233
+ const { system: backendSystemPayload } = action.payload;
170024
170234
  const systemExistsInStore = !!await getBackendSystem({
170025
- url: newBackendSystem.url,
170026
- client: newBackendSystem.client
170235
+ url: backendSystemPayload.url,
170236
+ client: backendSystemPayload.client
170027
170237
  });
170238
+ let systemInfo;
170239
+ if (shouldStoreSystemInfo(backendSystemPayload)) {
170240
+ systemInfo = await fetchSystemInfo(context4, backendSystemPayload);
170241
+ }
170242
+ const backendSystem = {
170243
+ ...backendSystemPayload,
170244
+ ...systemInfo && { systemInfo }
170245
+ };
170028
170246
  try {
170029
- await validateSystemName(newBackendSystem.name, context4.backendSystem?.name);
170030
- const newPanelMsg = await updateHandler(context4, newBackendSystem, systemExistsInStore);
170031
- await saveSystem(newBackendSystem, systemExistsInStore, context4.panelViewType);
170247
+ await validateSystemName(backendSystem.name, context4.backendSystem?.name);
170248
+ const newPanelMsg = await updateHandler(context4, backendSystem, systemExistsInStore);
170249
+ await saveSystem(backendSystem, systemExistsInStore, context4.panelViewType);
170032
170250
  if (newPanelMsg) {
170033
- await import_vscode7.commands.executeCommand("sap.ux.tools.sapSystems.show" /* Show */, newBackendSystem, newPanelMsg);
170251
+ await import_vscode7.commands.executeCommand("sap.ux.tools.sapSystems.show" /* Show */, backendSystem, newPanelMsg);
170034
170252
  }
170035
170253
  } catch (error) {
170036
170254
  const message = error instanceof Error ? error.message : String(error);
170037
- await postSavingError(message, context4.postMessage, systemExistsInStore, newBackendSystem.systemType);
170255
+ await postSavingError(message, context4.postMessage, systemExistsInStore, backendSystem.systemType);
170038
170256
  }
170039
170257
  }
170258
+ async function fetchSystemInfo(context4, backendSystemPayload) {
170259
+ if (context4.backendSystem?.systemInfo?.systemId && compareSystems(context4.backendSystem, backendSystemPayload)) {
170260
+ return context4.backendSystem.systemInfo;
170261
+ }
170262
+ const systemInfo = await getSystemInfo(backendSystemPayload);
170263
+ if (systemInfo) {
170264
+ SystemsLogger.logger.debug(
170265
+ t2("debug.systemInfoRetrieved", {
170266
+ systemId: systemInfo.systemId,
170267
+ client: systemInfo.client
170268
+ })
170269
+ );
170270
+ }
170271
+ return systemInfo;
170272
+ }
170040
170273
  async function updateHandler(context4, newSystem, systemExistsInStore) {
170041
170274
  const panelViewType = context4.panelViewType;
170042
170275
  let newPanelMsg;
170043
- if (panelViewType === 0 /* Create */ || panelViewType === 3 /* Import */) {
170276
+ if (panelViewType === 0 /* Create */ || panelViewType === 2 /* Import */) {
170044
170277
  if (systemExistsInStore) {
170045
170278
  throw t2("error.systemKeyExists");
170046
170279
  }
@@ -170081,9 +170314,6 @@ async function postSavingError(errorMsg, postMessage, systemExistsInStore, syste
170081
170314
  systemType
170082
170315
  });
170083
170316
  }
170084
- function compareSystems(currentSystem, newSystem) {
170085
- return currentSystem.url.replace(/\/$/, "") === newSystem?.url.replace(/\/$/, "") && currentSystem.client === newSystem?.client;
170086
- }
170087
170317
  async function saveSystem(backendSystem, systemExistsInStore, systemPanelViewType) {
170088
170318
  const newBackendSystem = {
170089
170319
  ...backendSystem,
@@ -170105,6 +170335,7 @@ async function saveSystem(backendSystem, systemExistsInStore, systemPanelViewTyp
170105
170335
  }
170106
170336
 
170107
170337
  // src/panel/system/actions/testConnection.ts
170338
+ var import_store4 = __toESM(require_dist2());
170108
170339
  var import_axios_extension2 = __toESM(require_dist17());
170109
170340
  async function testSystemConnection(context4, action) {
170110
170341
  const { postMessage, isGuidedAnswersEnabled } = context4;
@@ -170131,6 +170362,13 @@ async function testSystemConnection(context4, action) {
170131
170362
  handleCatalogError(postMessage, serviceCount, isGuidedAnswersEnabled, e);
170132
170363
  logTestTelemetry("FAILED" /* FAILED */, system.systemType);
170133
170364
  }
170365
+ try {
170366
+ if (shouldStoreSystemInfo(system)) {
170367
+ await storeSystemInfo(context4, system);
170368
+ }
170369
+ } catch (e) {
170370
+ SystemsLogger.logger.error(t2("error.systemInfoUpdate", { error: e.message }));
170371
+ }
170134
170372
  }
170135
170373
  function postConnectionStatus(postMessage, connected, catalogResults, message, guidedAnswerLink) {
170136
170374
  postMessage(connectionStatusMsg({ connectionStatus: { connected, catalogResults, message }, guidedAnswerLink }));
@@ -170196,6 +170434,34 @@ function logGATelemetry(status, errorType = "", isGuidedAnswersEnabled) {
170196
170434
  isGuidedAnswersEnabled: isGuidedAnswersEnabled ? "true" : "false"
170197
170435
  });
170198
170436
  }
170437
+ async function storeSystemInfo(context4, backendSystemPayload) {
170438
+ const isSimpleView = context4.panelViewType === 1 /* View */ && context4.backendSystem && compareSystems(context4.backendSystem, backendSystemPayload);
170439
+ if (!isSimpleView) {
170440
+ return;
170441
+ }
170442
+ if (isSimpleView && context4.backendSystem?.systemInfo?.systemId) {
170443
+ return;
170444
+ }
170445
+ const systemInfo = await getSystemInfo(backendSystemPayload);
170446
+ if (systemInfo) {
170447
+ SystemsLogger.logger.debug(
170448
+ t2("debug.systemInfoRetrieved", {
170449
+ systemId: systemInfo.systemId,
170450
+ client: systemInfo.client
170451
+ })
170452
+ );
170453
+ const systemService = await getBackendSystemService();
170454
+ await systemService.partialUpdate(
170455
+ new import_store4.BackendSystemKey({
170456
+ url: backendSystemPayload.url,
170457
+ client: backendSystemPayload.client
170458
+ }),
170459
+ {
170460
+ systemInfo: { systemId: systemInfo.systemId, client: systemInfo.client }
170461
+ }
170462
+ );
170463
+ }
170464
+ }
170199
170465
 
170200
170466
  // src/panel/system/actions/sendTelemetry.ts
170201
170467
  function fireGALinkClickedTelemetry(context4) {
@@ -170407,7 +170673,7 @@ function createNewPanel(context4) {
170407
170673
  }
170408
170674
 
170409
170675
  // src/commands/system/show.ts
170410
- var import_store4 = __toESM(require_dist2());
170676
+ var import_store5 = __toESM(require_dist2());
170411
170677
  var import_vscode10 = require("vscode");
170412
170678
  var showSystemsCommandHandler = (context4) => async (system, statusMsg) => {
170413
170679
  try {
@@ -170427,7 +170693,7 @@ var showSystemsCommandHandler = (context4) => async (system, statusMsg) => {
170427
170693
  };
170428
170694
  async function getBackendSystemKey(systemService, system) {
170429
170695
  if (system) {
170430
- return new import_store4.BackendSystemKey({ url: system.url, client: system.client });
170696
+ return new import_store5.BackendSystemKey({ url: system.url, client: system.client });
170431
170697
  } else {
170432
170698
  return sapSystemDropdownPicker(systemService);
170433
170699
  }
@@ -170436,7 +170702,7 @@ async function sapSystemDropdownPicker(systemService) {
170436
170702
  const allBackendSystems = await systemService.getAll({ includeSensitiveData: false });
170437
170703
  const quickPickItems = allBackendSystems.map((system) => ({
170438
170704
  label: system.name,
170439
- systemKey: new import_store4.BackendSystemKey({ url: system.url, client: system.client })
170705
+ systemKey: new import_store5.BackendSystemKey({ url: system.url, client: system.client })
170440
170706
  }));
170441
170707
  const selectedItem = await import_vscode10.window.showQuickPick(quickPickItems, {
170442
170708
  placeHolder: t2("commands.quickpickPlaceholder")
@@ -170473,10 +170739,10 @@ function logTelemetryFailure() {
170473
170739
  }
170474
170740
 
170475
170741
  // src/commands/system/delete.ts
170476
- var import_store5 = __toESM(require_dist2());
170742
+ var import_store6 = __toESM(require_dist2());
170477
170743
  var import_vscode11 = require("vscode");
170478
170744
  var deleteSystemCommandHandler = (context4) => async (system) => {
170479
- const backendSystemKey = new import_store5.BackendSystemKey({ url: system.url, client: system.client });
170745
+ const backendSystemKey = new import_store6.BackendSystemKey({ url: system.url, client: system.client });
170480
170746
  const systemService = await getBackendSystemService();
170481
170747
  const backendSystem = await systemService.read(backendSystemKey);
170482
170748
  if (!backendSystem) {
@@ -170518,14 +170784,14 @@ var refreshSystemsCommandHandler = (commandContext) => async () => {
170518
170784
  };
170519
170785
 
170520
170786
  // src/commands/system/import.ts
170521
- var import_store6 = __toESM(require_dist2());
170787
+ var import_store7 = __toESM(require_dist2());
170522
170788
  var import_vscode12 = require("vscode");
170523
170789
  var import_node_os2 = require("node:os");
170524
170790
  var import_node_fs2 = require("node:fs");
170525
170791
  var importSystemCommandHandler = (commandContext) => async () => {
170526
170792
  try {
170527
170793
  const importSystemConfig = await getImportSystemConfig();
170528
- const backendSystemKey = new import_store6.BackendSystemKey({
170794
+ const backendSystemKey = new import_store7.BackendSystemKey({
170529
170795
  url: importSystemConfig.url,
170530
170796
  client: importSystemConfig.client
170531
170797
  });
@@ -170555,7 +170821,7 @@ var importSystemCommandHandler = (commandContext) => async () => {
170555
170821
  };
170556
170822
  function createNewPanel2(context4, panelKey, systemConfig, existingSystem) {
170557
170823
  const name2 = systemConfig?.name ?? existingSystem?.name ?? "New System";
170558
- const backendSystem = new import_store6.BackendSystem({
170824
+ const backendSystem = new import_store7.BackendSystem({
170559
170825
  name: name2,
170560
170826
  url: systemConfig.url,
170561
170827
  client: systemConfig.client,
@@ -170566,7 +170832,7 @@ function createNewPanel2(context4, panelKey, systemConfig, existingSystem) {
170566
170832
  });
170567
170833
  return new SystemPanel({
170568
170834
  extensionPath: context4.extContext.vscodeExtContext.extensionPath,
170569
- systemPanelViewType: existingSystem ? 1 /* View */ : 3 /* Import */,
170835
+ systemPanelViewType: existingSystem ? 1 /* View */ : 2 /* Import */,
170570
170836
  disposeCallback: () => {
170571
170837
  context4.panelManager.deleteAndDispose(panelKey);
170572
170838
  },
@@ -170610,12 +170876,12 @@ function logImportTelemetry(status) {
170610
170876
 
170611
170877
  // src/commands/system/launchAppGen.ts
170612
170878
  var import_vscode13 = require("vscode");
170613
- var import_store7 = __toESM(require_dist2());
170879
+ var import_store8 = __toESM(require_dist2());
170614
170880
  var launchAppGenCommandHandler = (_context) => async (system) => {
170615
170881
  if (system.url) {
170616
170882
  const systemService = await getBackendSystemService();
170617
170883
  const backendSystem = await systemService.read(
170618
- new import_store7.BackendSystemKey({ url: system.url, client: system.client })
170884
+ new import_store8.BackendSystemKey({ url: system.url, client: system.client })
170619
170885
  );
170620
170886
  try {
170621
170887
  await import_vscode13.commands.executeCommand(fioriToolsAppModAppGenLaunchCmd, {