@sap/ux-ui5-tooling 1.20.3 → 1.20.4

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/cli/index.js CHANGED
@@ -58563,6 +58563,18 @@ var require_ui5config = __commonJS({
58563
58563
  }
58564
58564
  return this;
58565
58565
  }
58566
+ /**
58567
+ * Determines whether the UI5 configuration document contains the builder key.
58568
+ *
58569
+ * @returns True if the configuration contains builder key at root level otherwise false.
58570
+ */
58571
+ hasBuilderKey() {
58572
+ try {
58573
+ return !!this.document.getNode({ path: "builder" });
58574
+ } catch {
58575
+ return false;
58576
+ }
58577
+ }
58566
58578
  /**
58567
58579
  * Remove a middleware form the UI5 config.
58568
58580
  *
@@ -59027,7 +59039,7 @@ var require_search = __commonJS({
59027
59039
  extensions: [constants_1.FileName.ExtConfigJson],
59028
59040
  libraries: [constants_1.FileName.Library, constants_1.FileName.Manifest]
59029
59041
  };
59030
- var excludeFolders = [".git", "node_modules", "dist"];
59042
+ var excludeFolders = [".git", "node_modules", "dist", ".adp"];
59031
59043
  function isWorkspaceFolder(value) {
59032
59044
  return value && value.length > 0 && value[0].uri !== void 0;
59033
59045
  }
@@ -71779,9 +71791,10 @@ var require_cap = __commonJS({
71779
71791
  var globalCdsModulePromise;
71780
71792
  async function loadGlobalCdsModule() {
71781
71793
  globalCdsModulePromise = globalCdsModulePromise ?? new Promise((resolve2, reject2) => {
71782
- return getCdsVersionInfo().then((versions) => {
71783
- if (versions.home) {
71784
- resolve2((0, module_loader_1.loadModuleFromProject)(versions.home, "@sap/cds"));
71794
+ return getCdsEnvData().then((data) => {
71795
+ const home = data["_home_cds-dk"];
71796
+ if (home) {
71797
+ resolve2((0, module_loader_1.loadModuleFromProject)((0, node_path_1.join)(home, "node_modules", "@sap", "cds"), "@sap/cds"));
71785
71798
  } else {
71786
71799
  reject2(new Error("Can not find global installation of module @sap/cds, which should be part of @sap/cds-dk"));
71787
71800
  }
@@ -71792,21 +71805,20 @@ var require_cap = __commonJS({
71792
71805
  function clearGlobalCdsModulePromiseCache() {
71793
71806
  globalCdsModulePromise = void 0;
71794
71807
  }
71795
- async function getCdsVersionInfo(cwd) {
71808
+ async function getCdsEnvData(cwd) {
71796
71809
  return new Promise((resolve2, reject2) => {
71797
71810
  let out = "";
71798
- const cdsVersionInfo = (0, node_child_process_1.spawn)("cds", ["--version"], { cwd, shell: true });
71811
+ const cdsVersionInfo = (0, node_child_process_1.spawn)("cds", ["env", "--json"], { cwd, shell: true });
71799
71812
  cdsVersionInfo.stdout.on("data", (data) => {
71800
71813
  out += data.toString();
71801
71814
  });
71802
71815
  cdsVersionInfo.on("close", () => {
71803
71816
  if (out) {
71804
- const versions = {};
71805
- for (const line of out.split("\n").filter((v) => v)) {
71806
- const [key, value] = line.split(": ");
71807
- versions[key] = value;
71817
+ try {
71818
+ resolve2(JSON.parse(out));
71819
+ } catch (e) {
71820
+ reject2(new Error(`Unexpected output of "cds env --json": ${e.message}`));
71808
71821
  }
71809
- resolve2(versions);
71810
71822
  } else {
71811
71823
  reject2(new Error("Module path not found"));
71812
71824
  }
@@ -84924,16 +84936,16 @@ var require_types6 = __commonJS({
84924
84936
  }
84925
84937
  });
84926
84938
 
84927
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/stream.js
84939
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/stream.js
84928
84940
  var require_stream6 = __commonJS({
84929
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) {
84941
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/stream.js"(exports2, module2) {
84930
84942
  module2.exports = require("stream");
84931
84943
  }
84932
84944
  });
84933
84945
 
84934
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/destroy.js
84946
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/destroy.js
84935
84947
  var require_destroy2 = __commonJS({
84936
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) {
84948
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/destroy.js"(exports2, module2) {
84937
84949
  "use strict";
84938
84950
  function destroy2(err, cb) {
84939
84951
  var _this = this;
@@ -85020,9 +85032,9 @@ var require_destroy2 = __commonJS({
85020
85032
  }
85021
85033
  });
85022
85034
 
85023
- // ../../node_modules/winston-transport/node_modules/readable-stream/errors.js
85035
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/errors.js
85024
85036
  var require_errors5 = __commonJS({
85025
- "../../node_modules/winston-transport/node_modules/readable-stream/errors.js"(exports2, module2) {
85037
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/errors.js"(exports2, module2) {
85026
85038
  "use strict";
85027
85039
  var codes = {};
85028
85040
  function createErrorType(code, message, Base) {
@@ -85120,9 +85132,9 @@ var require_errors5 = __commonJS({
85120
85132
  }
85121
85133
  });
85122
85134
 
85123
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/state.js
85135
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/state.js
85124
85136
  var require_state3 = __commonJS({
85125
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/state.js"(exports2, module2) {
85137
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/state.js"(exports2, module2) {
85126
85138
  "use strict";
85127
85139
  var ERR_INVALID_OPT_VALUE = require_errors5().codes.ERR_INVALID_OPT_VALUE;
85128
85140
  function highWaterMarkFrom(options2, isDuplex, duplexKey) {
@@ -85145,9 +85157,9 @@ var require_state3 = __commonJS({
85145
85157
  }
85146
85158
  });
85147
85159
 
85148
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/buffer_list.js
85160
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/buffer_list.js
85149
85161
  var require_buffer_list = __commonJS({
85150
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(exports2, module2) {
85162
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(exports2, module2) {
85151
85163
  "use strict";
85152
85164
  function ownKeys2(object, enumerableOnly) {
85153
85165
  var keys = Object.keys(object);
@@ -85676,9 +85688,9 @@ var require_string_decoder2 = __commonJS({
85676
85688
  }
85677
85689
  });
85678
85690
 
85679
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/end-of-stream.js
85691
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/end-of-stream.js
85680
85692
  var require_end_of_stream = __commonJS({
85681
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(exports2, module2) {
85693
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(exports2, module2) {
85682
85694
  "use strict";
85683
85695
  var ERR_STREAM_PREMATURE_CLOSE = require_errors5().codes.ERR_STREAM_PREMATURE_CLOSE;
85684
85696
  function once2(callback) {
@@ -85765,9 +85777,9 @@ var require_end_of_stream = __commonJS({
85765
85777
  }
85766
85778
  });
85767
85779
 
85768
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/async_iterator.js
85780
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/async_iterator.js
85769
85781
  var require_async_iterator = __commonJS({
85770
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(exports2, module2) {
85782
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(exports2, module2) {
85771
85783
  "use strict";
85772
85784
  var _Object$setPrototypeO;
85773
85785
  function _defineProperty(obj, key, value) {
@@ -85933,9 +85945,9 @@ var require_async_iterator = __commonJS({
85933
85945
  }
85934
85946
  });
85935
85947
 
85936
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/from.js
85948
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/from.js
85937
85949
  var require_from = __commonJS({
85938
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/internal/streams/from.js"(exports2, module2) {
85950
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/internal/streams/from.js"(exports2, module2) {
85939
85951
  "use strict";
85940
85952
  function asyncGeneratorStep(gen, resolve2, reject2, _next, _throw, key, arg) {
85941
85953
  try {
@@ -86046,9 +86058,9 @@ var require_from = __commonJS({
86046
86058
  }
86047
86059
  });
86048
86060
 
86049
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/_stream_readable.js
86061
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/_stream_readable.js
86050
86062
  var require_stream_readable2 = __commonJS({
86051
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) {
86063
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/_stream_readable.js"(exports2, module2) {
86052
86064
  "use strict";
86053
86065
  module2.exports = Readable3;
86054
86066
  var Duplex;
@@ -86783,9 +86795,9 @@ var require_stream_readable2 = __commonJS({
86783
86795
  }
86784
86796
  });
86785
86797
 
86786
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/_stream_duplex.js
86798
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/_stream_duplex.js
86787
86799
  var require_stream_duplex2 = __commonJS({
86788
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) {
86800
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/_stream_duplex.js"(exports2, module2) {
86789
86801
  "use strict";
86790
86802
  var objectKeys = Object.keys || function(obj) {
86791
86803
  var keys2 = [];
@@ -86878,9 +86890,9 @@ var require_stream_duplex2 = __commonJS({
86878
86890
  }
86879
86891
  });
86880
86892
 
86881
- // ../../node_modules/winston-transport/node_modules/readable-stream/lib/_stream_writable.js
86893
+ // ../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/_stream_writable.js
86882
86894
  var require_stream_writable2 = __commonJS({
86883
- "../../node_modules/winston-transport/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) {
86895
+ "../../node_modules/@sap-ux/logger/node_modules/readable-stream/lib/_stream_writable.js"(exports2, module2) {
86884
86896
  "use strict";
86885
86897
  module2.exports = Writable;
86886
86898
  function CorkedRequest(state) {
@@ -87467,9 +87479,9 @@ var require_triple_beam = __commonJS({
87467
87479
  }
87468
87480
  });
87469
87481
 
87470
- // ../../node_modules/winston-transport/modern.js
87482
+ // ../../node_modules/@sap-ux/logger/node_modules/winston-transport/modern.js
87471
87483
  var require_modern = __commonJS({
87472
- "../../node_modules/winston-transport/modern.js"(exports2, module2) {
87484
+ "../../node_modules/@sap-ux/logger/node_modules/winston-transport/modern.js"(exports2, module2) {
87473
87485
  "use strict";
87474
87486
  var util5 = require("util");
87475
87487
  var Writable = require_stream_writable2();
@@ -87579,9 +87591,9 @@ var require_modern = __commonJS({
87579
87591
  }
87580
87592
  });
87581
87593
 
87582
- // ../../node_modules/winston-transport/legacy.js
87594
+ // ../../node_modules/@sap-ux/logger/node_modules/winston-transport/legacy.js
87583
87595
  var require_legacy = __commonJS({
87584
- "../../node_modules/winston-transport/legacy.js"(exports2, module2) {
87596
+ "../../node_modules/@sap-ux/logger/node_modules/winston-transport/legacy.js"(exports2, module2) {
87585
87597
  "use strict";
87586
87598
  var util5 = require("util");
87587
87599
  var { LEVEL } = require_triple_beam();
@@ -87645,9 +87657,9 @@ var require_legacy = __commonJS({
87645
87657
  }
87646
87658
  });
87647
87659
 
87648
- // ../../node_modules/winston-transport/index.js
87660
+ // ../../node_modules/@sap-ux/logger/node_modules/winston-transport/index.js
87649
87661
  var require_winston_transport = __commonJS({
87650
- "../../node_modules/winston-transport/index.js"(exports2, module2) {
87662
+ "../../node_modules/@sap-ux/logger/node_modules/winston-transport/index.js"(exports2, module2) {
87651
87663
  "use strict";
87652
87664
  module2.exports = require_modern();
87653
87665
  module2.exports.LegacyTransportStream = require_legacy();
@@ -184931,8 +184943,11 @@ var require_utils18 = __commonJS({
184931
184943
  function getEntityFileName(entityName) {
184932
184944
  return toPersistenceName(entityName) + ".json";
184933
184945
  }
184934
- function isMatch(obj, attrs) {
184935
- return Object.entries(attrs).every(([key, val]) => {
184946
+ function isMatch(obj, filter3) {
184947
+ return Object.entries(filter3).every(([key, val]) => {
184948
+ if (Array.isArray(val)) {
184949
+ return val.includes(obj[key]);
184950
+ }
184936
184951
  if (val && typeof val === "object") {
184937
184952
  return isMatch(obj[key], val);
184938
184953
  }
@@ -186580,11 +186595,7 @@ var require_backend_system2 = __commonJS({
186580
186595
  includeSensitiveData
186581
186596
  });
186582
186597
  }
186583
- const systemList = Object.values(systems);
186584
- if (!backendSystemFilter) {
186585
- return systemList;
186586
- }
186587
- return this.applyFilters(systemList, backendSystemFilter);
186598
+ return this.applyFilters(Object.values(systems), backendSystemFilter);
186588
186599
  }
186589
186600
  /**
186590
186601
  * Determines whether a migration is required based on a local marker file.
@@ -186603,6 +186614,9 @@ var require_backend_system2 = __commonJS({
186603
186614
  * Applies filter objects to a list of backend systems.
186604
186615
  */
186605
186616
  applyFilters(systems, filters = {}) {
186617
+ if (!filters.connectionType) {
186618
+ filters.connectionType = "abap_catalog";
186619
+ }
186606
186620
  return systems.filter((system) => (0, utils_1.isMatch)(system, filters));
186607
186621
  }
186608
186622
  /**
@@ -186729,6 +186743,13 @@ var require_backend_system3 = __commonJS({
186729
186743
  async delete(entity) {
186730
186744
  return this.dataProvider.delete(entity);
186731
186745
  }
186746
+ /**
186747
+ * Retrieves all backend systems from the store. Can be filtered by providing retrieval options.
186748
+ * N.B. if no `connectionType` is provided in the options, only systems with `abap_catalog` connection type will be returned.
186749
+ *
186750
+ * @param options - backend service retrieval options
186751
+ * @returns - list of backend systems
186752
+ */
186732
186753
  async getAll(options2) {
186733
186754
  return this.dataProvider.getAll(options2);
186734
186755
  }
@@ -186750,6 +186771,9 @@ var require_backend_system3 = __commonJS({
186750
186771
  const legacySystemsPath = (0, node_path_1.join)((0, utils_1.getFioriToolsDirectory)(), systemFileName);
186751
186772
  const newSystemsPath = (0, node_path_1.join)((0, utils_1.getSapToolsDirectory)(), systemFileName);
186752
186773
  const migrationFlag = (0, node_path_1.join)((0, utils_1.getSapToolsDirectory)(), ".systemsMigrated");
186774
+ if (!(0, node_fs_1.existsSync)(legacySystemsPath)) {
186775
+ return;
186776
+ }
186753
186777
  const legacyData = JSON.parse((0, node_fs_1.readFileSync)(legacySystemsPath, "utf-8")).systems;
186754
186778
  if ((0, node_fs_1.existsSync)(migrationFlag)) {
186755
186779
  migrateNewLegacyPathEntries(newSystemsPath, legacyData);
@@ -264478,10 +264502,12 @@ var require_utils24 = __commonJS({
264478
264502
  entitySets: this._entitySets,
264479
264503
  singletons: this._singletons,
264480
264504
  complexTypes: this._complexTypes,
264505
+ enumTypes: this._enumTypes,
264481
264506
  typeDefinitions: this._typeDefinitions,
264482
264507
  actions: this._actions,
264483
264508
  actionImports: this._actionImports,
264484
- entityTypes: this._entityTypes
264509
+ entityTypes: this._entityTypes,
264510
+ entityContainers: this._entityContainers
264485
264511
  };
264486
264512
  }
264487
264513
  /**
@@ -264503,7 +264529,9 @@ var require_utils24 = __commonJS({
264503
264529
  };
264504
264530
  this._entityTypes = [];
264505
264531
  this._complexTypes = [];
264532
+ this._enumTypes = [];
264506
264533
  this._typeDefinitions = [];
264534
+ this._entityContainers = {};
264507
264535
  this.identification = "mergedParserInstance";
264508
264536
  this.version = initialParserOutput.version;
264509
264537
  this._namespace = initialParserOutput.schema.namespace;
@@ -264523,6 +264551,7 @@ var require_utils24 = __commonJS({
264523
264551
  this._actionImports = this._actionImports.concat(parserOutput.schema.actionImports);
264524
264552
  this._entityTypes = this._entityTypes.concat(parserOutput.schema.entityTypes);
264525
264553
  this._complexTypes = this._complexTypes.concat(parserOutput.schema.complexTypes);
264554
+ this._enumTypes = this._enumTypes.concat(parserOutput.schema.enumTypes);
264526
264555
  this._typeDefinitions = this._typeDefinitions.concat(parserOutput.schema.typeDefinitions);
264527
264556
  if (parserOutput.schema.entityContainer.fullyQualifiedName.length > 0) {
264528
264557
  this._entityContainer = Object.assign(this._entityContainer, parserOutput.schema.entityContainer);
@@ -267421,6 +267450,7 @@ var require_parser7 = __commonJS({
267421
267450
  }
267422
267451
  function parseProperties(entityProperties, entityKeys, entityTypeFQN, annotationLists) {
267423
267452
  return entityProperties.reduce((outObject, entityProperty) => {
267453
+ var _a15, _b13, _c6, _d4;
267424
267454
  const edmProperty = {
267425
267455
  _type: "Property",
267426
267456
  name: entityProperty._attributes.Name,
@@ -267428,13 +267458,17 @@ var require_parser7 = __commonJS({
267428
267458
  type: unaliasType(entityProperty._attributes.Type).type
267429
267459
  };
267430
267460
  if (entityProperty._attributes.MaxLength) {
267431
- edmProperty.maxLength = parseInt(entityProperty._attributes.MaxLength, 10);
267461
+ edmProperty.maxLength = ((_b13 = (_a15 = entityProperty._attributes.MaxLength) === null || _a15 === void 0 ? void 0 : _a15.toLowerCase) === null || _b13 === void 0 ? void 0 : _b13.call(_a15)) === "max" ? 5e3 : parseInt(entityProperty._attributes.MaxLength, 10);
267432
267462
  }
267433
267463
  if (entityProperty._attributes.Precision) {
267434
267464
  edmProperty.precision = parseInt(entityProperty._attributes.Precision, 10);
267435
267465
  }
267436
267466
  if (entityProperty._attributes.Scale) {
267437
- edmProperty.scale = parseInt(entityProperty._attributes.Scale, 10);
267467
+ if (((_d4 = (_c6 = entityProperty._attributes.Scale) === null || _c6 === void 0 ? void 0 : _c6.toLowerCase) === null || _d4 === void 0 ? void 0 : _d4.call(_c6)) === "variable") {
267468
+ edmProperty.scale = "variable";
267469
+ } else {
267470
+ edmProperty.scale = parseInt(entityProperty._attributes.Scale, 10);
267471
+ }
267438
267472
  }
267439
267473
  edmProperty.nullable = entityProperty._attributes.Nullable !== "false";
267440
267474
  if (entityProperty._attributes.DefaultValue) {
@@ -267613,6 +267647,47 @@ var require_parser7 = __commonJS({
267613
267647
  return outArray;
267614
267648
  }, []);
267615
267649
  }
267650
+ function parseEnumMembers(enumMembers, annotationLists, namespace, isFlags) {
267651
+ const allHaveValue = enumMembers.every((enumMember) => enumMember._attributes.Value !== void 0);
267652
+ return enumMembers.reduce((outObject, enumMember) => {
267653
+ const enumMemberFQN = `${namespace}/${enumMember._attributes.Name}`;
267654
+ const enumMemberAnnotations = parseAnnotations((0, utils_1.ensureArray)(enumMember.Annotation), enumMemberFQN, annotationLists);
267655
+ if (enumMemberAnnotations && enumMemberAnnotations.length > 0) {
267656
+ annotationLists.push(createAnnotationList(enumMemberFQN, enumMemberAnnotations));
267657
+ }
267658
+ let value;
267659
+ if (allHaveValue) {
267660
+ value = Number.parseInt(enumMember._attributes.Value.toString(), 10);
267661
+ } else if (isFlags) {
267662
+ value = 1 << outObject.length;
267663
+ } else {
267664
+ value = outObject.length;
267665
+ }
267666
+ outObject.push({
267667
+ _type: "EnumMember",
267668
+ fullyQualifiedName: enumMemberFQN,
267669
+ name: enumMember._attributes.Name,
267670
+ value
267671
+ });
267672
+ return outObject;
267673
+ }, []);
267674
+ }
267675
+ function parseEnumTypes(enumTypes, annotationLists, namespace) {
267676
+ return enumTypes.reduce((outArray, enumType) => {
267677
+ var _a15;
267678
+ const enumTypeFQN = `${namespace}.${enumType._attributes.Name}`;
267679
+ const members = parseEnumMembers((0, utils_1.ensureArray)(enumType.Member), annotationLists, enumTypeFQN, enumType._attributes.IsFlags === true);
267680
+ outArray.push({
267681
+ _type: "EnumType",
267682
+ name: enumType._attributes.Name,
267683
+ underlyingType: (_a15 = enumType._attributes.UnderlyingType) !== null && _a15 !== void 0 ? _a15 : "Edm.Int32",
267684
+ isFlags: enumType._attributes.IsFlags === true,
267685
+ fullyQualifiedName: enumTypeFQN,
267686
+ members
267687
+ });
267688
+ return outArray;
267689
+ }, []);
267690
+ }
267616
267691
  function parseTypeDefinitions(typeDefinitions, namespace) {
267617
267692
  return typeDefinitions.reduce((outArray, typeDefinition) => {
267618
267693
  const typeDefinitionFQN = `${namespace}.${typeDefinition._attributes.Name}`;
@@ -267691,6 +267766,7 @@ var require_parser7 = __commonJS({
267691
267766
  fullyQualifiedName,
267692
267767
  isFunction: isFunction4,
267693
267768
  parameters: parameters.map((param) => {
267769
+ var _a15, _b13, _c6, _d4;
267694
267770
  const { isCollection, type } = unaliasType(param._attributes.Type);
267695
267771
  const edmActionParameter = {
267696
267772
  _type: "ActionParameter",
@@ -267700,13 +267776,17 @@ var require_parser7 = __commonJS({
267700
267776
  isCollection
267701
267777
  };
267702
267778
  if (param._attributes.MaxLength) {
267703
- edmActionParameter.maxLength = parseInt(param._attributes.MaxLength, 10);
267779
+ edmActionParameter.maxLength = ((_b13 = (_a15 = param._attributes.MaxLength) === null || _a15 === void 0 ? void 0 : _a15.toLowerCase) === null || _b13 === void 0 ? void 0 : _b13.call(_a15)) === "max" ? 5e3 : parseInt(param._attributes.MaxLength, 10);
267704
267780
  }
267705
267781
  if (param._attributes.Precision) {
267706
267782
  edmActionParameter.precision = parseInt(param._attributes.Precision, 10);
267707
267783
  }
267708
267784
  if (param._attributes.Scale) {
267709
- edmActionParameter.scale = parseInt(param._attributes.Scale, 10);
267785
+ if (((_d4 = (_c6 = param._attributes.Scale) === null || _c6 === void 0 ? void 0 : _c6.toLowerCase) === null || _d4 === void 0 ? void 0 : _d4.call(_c6)) === "variable") {
267786
+ edmActionParameter.scale = "variable";
267787
+ } else {
267788
+ edmActionParameter.scale = parseInt(param._attributes.Scale, 10);
267789
+ }
267710
267790
  }
267711
267791
  edmActionParameter.nullable = param._attributes.Nullable !== "false";
267712
267792
  return edmActionParameter;
@@ -267716,26 +267796,39 @@ var require_parser7 = __commonJS({
267716
267796
  };
267717
267797
  });
267718
267798
  }
267719
- function parseV2FunctionImport(actions, entitySets, namespace) {
267799
+ function parseV2FunctionImport(actions, entitySets, entityTypes, namespace, outAnnotationLists) {
267720
267800
  return actions.map((action) => {
267721
267801
  const targetEntitySet = entitySets.find((et) => et.name === action._attributes.EntitySet);
267722
267802
  const actionFQN = `${namespace}/${action._attributes.Name}`;
267803
+ let sourceEntityType = targetEntitySet === null || targetEntitySet === void 0 ? void 0 : targetEntitySet.entityTypeName;
267804
+ if (action._attributes["sap:action-for"]) {
267805
+ const foundEntityType = entityTypes.find((et) => et.fullyQualifiedName === action._attributes["sap:action-for"]);
267806
+ if (foundEntityType) {
267807
+ sourceEntityType = foundEntityType.fullyQualifiedName;
267808
+ }
267809
+ }
267810
+ const parameters = (0, utils_1.ensureArray)(action.Parameter).map((param) => {
267811
+ const v2Annotations = (0, v2annotationsSupport_1.convertV2Annotations)(param._attributes, "ActionParameter", param._attributes.Name);
267812
+ const actionParamFQN = `${actionFQN}/${param._attributes.Name}`;
267813
+ if (v2Annotations.length > 0) {
267814
+ outAnnotationLists.push(createAnnotationList(actionParamFQN, v2Annotations));
267815
+ }
267816
+ return {
267817
+ _type: "ActionParameter",
267818
+ name: param._attributes.Name,
267819
+ fullyQualifiedName: actionParamFQN,
267820
+ type: param._attributes.Type,
267821
+ isCollection: param._attributes.Type.match(/^Collection\(.+\)$/) !== null
267822
+ };
267823
+ });
267723
267824
  return {
267724
267825
  _type: "Action",
267725
267826
  name: action._attributes.Name,
267726
267827
  isBound: false,
267727
- sourceType: targetEntitySet ? targetEntitySet.entityTypeName : "",
267828
+ sourceType: sourceEntityType !== null && sourceEntityType !== void 0 ? sourceEntityType : "",
267728
267829
  fullyQualifiedName: actionFQN,
267729
267830
  isFunction: false,
267730
- parameters: (0, utils_1.ensureArray)(action.Parameter).map((param) => {
267731
- return {
267732
- _type: "ActionParameter",
267733
- name: param._attributes.Name,
267734
- fullyQualifiedName: `${actionFQN}/${param._attributes.Name}`,
267735
- type: param._attributes.Type,
267736
- isCollection: param._attributes.Type.match(/^Collection\(.+\)$/) !== null
267737
- };
267738
- }),
267831
+ parameters,
267739
267832
  returnType: action._attributes.ReturnType ? action._attributes.ReturnType : "",
267740
267833
  returnCollection: action._attributes.ReturnType ? action._attributes.ReturnType.match(collectionRegexp) !== null : false
267741
267834
  };
@@ -267978,6 +268071,51 @@ var require_parser7 = __commonJS({
267978
268071
  type: "If",
267979
268072
  $If: parseChildren(expression.If)
267980
268073
  };
268074
+ case "Has":
268075
+ return {
268076
+ type: "Has",
268077
+ $Has: parseChildren(expression.Has)
268078
+ };
268079
+ case "In":
268080
+ return {
268081
+ type: "In",
268082
+ $In: parseChildren(expression.In)
268083
+ };
268084
+ case "Add":
268085
+ return {
268086
+ type: "Add",
268087
+ $Add: parseChildren(expression.Add)
268088
+ };
268089
+ case "Sub":
268090
+ return {
268091
+ type: "Sub",
268092
+ $Sub: parseChildren(expression.Sub)
268093
+ };
268094
+ case "Div":
268095
+ return {
268096
+ type: "Div",
268097
+ $Div: parseChildren(expression.Div)
268098
+ };
268099
+ case "DivBy":
268100
+ return {
268101
+ type: "DivBy",
268102
+ $DivBy: parseChildren(expression.DivBy)
268103
+ };
268104
+ case "Mul":
268105
+ return {
268106
+ type: "Mul",
268107
+ $Mul: parseChildren(expression.Mul)
268108
+ };
268109
+ case "Mod":
268110
+ return {
268111
+ type: "Mod",
268112
+ $Mod: parseChildren(expression.Mod)
268113
+ };
268114
+ case "Neg":
268115
+ return {
268116
+ type: "Neg",
268117
+ $Neg: parseChildren(expression.Neg)
268118
+ };
267981
268119
  case "Null":
267982
268120
  return {
267983
268121
  type: "Null"
@@ -267990,7 +268128,7 @@ var require_parser7 = __commonJS({
267990
268128
  }
267991
268129
  }
267992
268130
  function parseExpression(expression, currentTarget, annotationsLists, simplifyPrimitive) {
267993
- const expressionKeys = Object.keys(expression);
268131
+ const expressionKeys = Object.keys(expression).filter((value) => value !== "_text");
267994
268132
  if (expressionKeys.length > 1) {
267995
268133
  throw new Error(`Too many expressions defined on a single object ${JSON.stringify(expression)}`);
267996
268134
  }
@@ -268140,6 +268278,51 @@ var require_parser7 = __commonJS({
268140
268278
  type: "Le",
268141
268279
  $Le: parseChildren(expression.Le)
268142
268280
  };
268281
+ case "Has":
268282
+ return {
268283
+ type: "Has",
268284
+ $Has: parseChildren(expression.Has)
268285
+ };
268286
+ case "In":
268287
+ return {
268288
+ type: "In",
268289
+ $In: parseChildren(expression.In)
268290
+ };
268291
+ case "Add":
268292
+ return {
268293
+ type: "Add",
268294
+ $Add: parseChildren(expression.Add)
268295
+ };
268296
+ case "Sub":
268297
+ return {
268298
+ type: "Sub",
268299
+ $Sub: parseChildren(expression.Sub)
268300
+ };
268301
+ case "Div":
268302
+ return {
268303
+ type: "Div",
268304
+ $Div: parseChildren(expression.Div)
268305
+ };
268306
+ case "DivBy":
268307
+ return {
268308
+ type: "DivBy",
268309
+ $DivBy: parseChildren(expression.DivBy)
268310
+ };
268311
+ case "Mul":
268312
+ return {
268313
+ type: "Mul",
268314
+ $Mul: parseChildren(expression.Mul)
268315
+ };
268316
+ case "Mod":
268317
+ return {
268318
+ type: "Mod",
268319
+ $Mod: parseChildren(expression.Mod)
268320
+ };
268321
+ case "Neg":
268322
+ return {
268323
+ type: "Neg",
268324
+ $Neg: parseChildren(expression.Neg)
268325
+ };
268143
268326
  default:
268144
268327
  console.error("Unsupported expression type " + expressionKey);
268145
268328
  return {
@@ -268197,6 +268380,7 @@ var require_parser7 = __commonJS({
268197
268380
  const annotations = [];
268198
268381
  const entityTypes = parseEntityTypes((0, utils_1.ensureArray)(edmSchema.EntityType), annotations, namespace);
268199
268382
  const complexTypes = parseComplexTypes((0, utils_1.ensureArray)(edmSchema.ComplexType), annotations, namespace);
268383
+ const enumTypes = parseEnumTypes((0, utils_1.ensureArray)(edmSchema.EnumType), annotations, namespace);
268200
268384
  const typeDefinitions = parseTypeDefinitions((0, utils_1.ensureArray)(edmSchema.TypeDefinition), namespace);
268201
268385
  let entitySets = [];
268202
268386
  let singletons = [];
@@ -268217,7 +268401,7 @@ var require_parser7 = __commonJS({
268217
268401
  fullyQualifiedName: `${namespace}.${edmSchema.EntityContainer._attributes.Name}`
268218
268402
  };
268219
268403
  if (edmVersion === "1.0") {
268220
- actions = actions.concat(parseV2FunctionImport((0, utils_1.ensureArray)(edmSchema.EntityContainer.FunctionImport), entitySets, entityContainer.fullyQualifiedName));
268404
+ actions = actions.concat(parseV2FunctionImport((0, utils_1.ensureArray)(edmSchema.EntityContainer.FunctionImport), entitySets, entityTypes, entityContainer.fullyQualifiedName, annotations));
268221
268405
  } else if (edmVersion.startsWith("4.")) {
268222
268406
  actionImports = actionImports.concat(parseActionImports((0, utils_1.ensureArray)(edmSchema.EntityContainer.FunctionImport), entityContainer.fullyQualifiedName));
268223
268407
  actionImports = actionImports.concat(parseActionImports((0, utils_1.ensureArray)(edmSchema.EntityContainer.ActionImport), entityContainer.fullyQualifiedName));
@@ -268242,6 +268426,7 @@ var require_parser7 = __commonJS({
268242
268426
  entitySets,
268243
268427
  singletons,
268244
268428
  complexTypes,
268429
+ enumTypes,
268245
268430
  typeDefinitions,
268246
268431
  actions,
268247
268432
  actionImports,
@@ -268321,6 +268506,9 @@ var require_parser7 = __commonJS({
268321
268506
  const complexTypes = schemas.reduce((complexTypesToReduces, schema) => {
268322
268507
  return complexTypesToReduces.concat(schema.complexTypes);
268323
268508
  }, []);
268509
+ const enumTypes = schemas.reduce((enumTypeToReduces, schema) => {
268510
+ return enumTypeToReduces.concat(schema.enumTypes);
268511
+ }, []);
268324
268512
  const typeDefinitions = schemas.reduce((typeDefinitionsToReduce, schema) => {
268325
268513
  return typeDefinitionsToReduce.concat(schema.typeDefinitions);
268326
268514
  }, []);
@@ -268378,6 +268566,7 @@ var require_parser7 = __commonJS({
268378
268566
  entitySets,
268379
268567
  singletons,
268380
268568
  complexTypes,
268569
+ enumTypes,
268381
268570
  typeDefinitions,
268382
268571
  actions,
268383
268572
  actionImports,
@@ -272697,7 +272886,7 @@ var init_package = __esm({
272697
272886
  package_default = {
272698
272887
  name: "@sap/ux-ui5-tooling",
272699
272888
  displayName: "SAP Fiori Tools \u2013 UI5 Tooling",
272700
- version: "1.20.3",
272889
+ version: "1.20.4",
272701
272890
  description: "SAP Fiori Tools \u2013 UI5 Tooling",
272702
272891
  publisher: "SAPSE",
272703
272892
  license: "SEE LICENSE IN LICENSE",
@@ -272760,10 +272949,10 @@ var init_package = __esm({
272760
272949
  "@sap-ux/store": "1.5.5",
272761
272950
  "@sap-ux/system-access": "0.6.54",
272762
272951
  "@sap-ux/telemetry": "0.6.74",
272763
- "@sap-ux/ui5-config": "0.29.16",
272952
+ "@sap-ux/ui5-config": "0.29.17",
272764
272953
  "@sap-ux/ui5-info": "0.13.12",
272765
272954
  "@sap-ux/ui5-proxy-middleware": "1.6.16",
272766
- "@sap/ux-app-templates": "1.20.3",
272955
+ "@sap/ux-app-templates": "1.20.4",
272767
272956
  "@sap/ux-specification": "1.142.1",
272768
272957
  "@types/fs-extra": "11.0.4",
272769
272958
  "@types/marked": "4.0.1",