@abaplint/cli 2.108.10 → 2.108.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/build/cli.js +29 -5
  2. package/package.json +3 -3
package/build/cli.js CHANGED
@@ -50780,6 +50780,10 @@ const Types = __webpack_require__(/*! ../abap/types/basic */ "./node_modules/@ab
50780
50780
  const _abstract_object_1 = __webpack_require__(/*! ./_abstract_object */ "./node_modules/@abaplint/core/build/src/objects/_abstract_object.js");
50781
50781
  const xml_utils_1 = __webpack_require__(/*! ../xml_utils */ "./node_modules/@abaplint/core/build/src/xml_utils.js");
50782
50782
  const ddic_1 = __webpack_require__(/*! ../ddic */ "./node_modules/@abaplint/core/build/src/ddic.js");
50783
+ var ViewClass;
50784
+ (function (ViewClass) {
50785
+ ViewClass["ExternalView"] = "X";
50786
+ })(ViewClass || (ViewClass = {}));
50783
50787
  class View extends _abstract_object_1.AbstractObject {
50784
50788
  getType() {
50785
50789
  return "VIEW";
@@ -50823,6 +50827,16 @@ class View extends _abstract_object_1.AbstractObject {
50823
50827
  // ignore, this is a special case of old style .INCLUDE
50824
50828
  continue;
50825
50829
  }
50830
+ else if (this.parsedData.header.VIEWCLASS === ViewClass.ExternalView) {
50831
+ components.push({
50832
+ name: field.VIEWFIELD,
50833
+ type: new Types.VoidType("ExternalView")
50834
+ });
50835
+ continue;
50836
+ }
50837
+ else if (field.TABNAME === this.getName()) {
50838
+ throw new Error("Unexpected self reference in view " + this.getName() + ", " + field.FIELDNAME + " " + field.FIELDNAME);
50839
+ }
50826
50840
  const lookup = ddic.lookupTableOrView(field.TABNAME);
50827
50841
  let found = lookup.type;
50828
50842
  if (lookup.object) {
@@ -50858,13 +50872,23 @@ class View extends _abstract_object_1.AbstractObject {
50858
50872
  }
50859
50873
  ///////////////
50860
50874
  parseXML() {
50861
- var _a, _b;
50862
- this.parsedData = { fields: [], join: [] };
50875
+ var _a, _b, _c;
50876
+ this.parsedData = {
50877
+ header: {
50878
+ VIEWCLASS: "",
50879
+ },
50880
+ fields: [],
50881
+ join: [],
50882
+ };
50863
50883
  const parsed = super.parseRaw2();
50864
50884
  if (parsed === undefined || parsed.abapGit === undefined) {
50865
50885
  return;
50866
50886
  }
50867
- const fields = (_a = parsed.abapGit["asx:abap"]["asx:values"]) === null || _a === void 0 ? void 0 : _a.DD27P_TABLE;
50887
+ const header = (_a = parsed.abapGit["asx:abap"]["asx:values"]) === null || _a === void 0 ? void 0 : _a.DD25V;
50888
+ this.parsedData.header = {
50889
+ VIEWCLASS: (header === null || header === void 0 ? void 0 : header.VIEWCLASS) || "",
50890
+ };
50891
+ const fields = (_b = parsed.abapGit["asx:abap"]["asx:values"]) === null || _b === void 0 ? void 0 : _b.DD27P_TABLE;
50868
50892
  for (const field of (0, xml_utils_1.xmlToArray)(fields === null || fields === void 0 ? void 0 : fields.DD27P)) {
50869
50893
  this.parsedData.fields.push({
50870
50894
  VIEWFIELD: field.VIEWFIELD,
@@ -50872,7 +50896,7 @@ class View extends _abstract_object_1.AbstractObject {
50872
50896
  FIELDNAME: field.FIELDNAME,
50873
50897
  });
50874
50898
  }
50875
- const join = (_b = parsed.abapGit["asx:abap"]["asx:values"]) === null || _b === void 0 ? void 0 : _b.DD28J_TABLE;
50899
+ const join = (_c = parsed.abapGit["asx:abap"]["asx:values"]) === null || _c === void 0 ? void 0 : _c.DD28J_TABLE;
50876
50900
  for (const j of (0, xml_utils_1.xmlToArray)(join === null || join === void 0 ? void 0 : join.DD28J)) {
50877
50901
  this.parsedData.join.push({
50878
50902
  LTAB: j.LTAB,
@@ -51606,7 +51630,7 @@ class Registry {
51606
51630
  }
51607
51631
  static abaplintVersion() {
51608
51632
  // magic, see build script "version.sh"
51609
- return "2.108.10";
51633
+ return "2.108.11";
51610
51634
  }
51611
51635
  getDDICReferences() {
51612
51636
  return this.ddicReferences;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/cli",
3
- "version": "2.108.10",
3
+ "version": "2.108.11",
4
4
  "description": "abaplint - Command Line Interface",
5
5
  "funding": "https://github.com/sponsors/larshp",
6
6
  "bin": {
@@ -38,12 +38,12 @@
38
38
  },
39
39
  "homepage": "https://abaplint.org",
40
40
  "devDependencies": {
41
- "@abaplint/core": "^2.108.10",
41
+ "@abaplint/core": "^2.108.11",
42
42
  "@types/chai": "^4.3.16",
43
43
  "@types/glob": "^8.1.0",
44
44
  "@types/minimist": "^1.2.5",
45
45
  "@types/mocha": "^10.0.6",
46
- "@types/node": "^20.12.12",
46
+ "@types/node": "^20.12.13",
47
47
  "@types/progress": "^2.0.7",
48
48
  "chai": "^4.4.1",
49
49
  "chalk": "^5.3.0",