@abaplint/core 2.93.33 → 2.93.35

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.
@@ -6176,6 +6176,18 @@ declare class View extends AbstractObject {
6176
6176
  maxLength: number;
6177
6177
  allowNamespace: boolean;
6178
6178
  };
6179
+ getFields(): {
6180
+ VIEWFIELD: string;
6181
+ TABNAME: string;
6182
+ FIELDNAME: string;
6183
+ }[] | undefined;
6184
+ getJoin(): {
6185
+ LTAB: string;
6186
+ LFIELD: string;
6187
+ OPERATOR: string;
6188
+ RTAB: string;
6189
+ RFIELD: string;
6190
+ }[] | undefined;
6179
6191
  setDirty(): void;
6180
6192
  parseType(reg: IRegistry): AbstractType;
6181
6193
  getDescription(): string | undefined;
@@ -15,6 +15,20 @@ class View extends _abstract_object_1.AbstractObject {
15
15
  allowNamespace: true,
16
16
  };
17
17
  }
18
+ getFields() {
19
+ var _a;
20
+ if (this.parsedData === undefined) {
21
+ this.parseXML();
22
+ }
23
+ return (_a = this.parsedData) === null || _a === void 0 ? void 0 : _a.fields;
24
+ }
25
+ getJoin() {
26
+ var _a;
27
+ if (this.parsedData === undefined) {
28
+ this.parseXML();
29
+ }
30
+ return (_a = this.parsedData) === null || _a === void 0 ? void 0 : _a.join;
31
+ }
18
32
  setDirty() {
19
33
  this.parsedData = undefined;
20
34
  super.setDirty();
@@ -69,8 +83,8 @@ class View extends _abstract_object_1.AbstractObject {
69
83
  }
70
84
  ///////////////
71
85
  parseXML() {
72
- var _a;
73
- this.parsedData = { fields: [] };
86
+ var _a, _b;
87
+ this.parsedData = { fields: [], join: [] };
74
88
  const parsed = super.parseRaw2();
75
89
  if (parsed === undefined || parsed.abapGit === undefined) {
76
90
  return;
@@ -83,6 +97,16 @@ class View extends _abstract_object_1.AbstractObject {
83
97
  FIELDNAME: field.FIELDNAME,
84
98
  });
85
99
  }
100
+ const join = (_b = parsed.abapGit["asx:abap"]["asx:values"]) === null || _b === void 0 ? void 0 : _b.DD28J_TABLE;
101
+ for (const j of (0, xml_utils_1.xmlToArray)(join === null || join === void 0 ? void 0 : join.DD28J)) {
102
+ this.parsedData.join.push({
103
+ LTAB: j.LTAB,
104
+ LFIELD: j.LFIELD,
105
+ OPERATOR: j.OPERATOR,
106
+ RTAB: j.RTAB,
107
+ RFIELD: j.RFIELD,
108
+ });
109
+ }
86
110
  }
87
111
  }
88
112
  exports.View = View;
@@ -60,7 +60,8 @@ class Indent {
60
60
  || type instanceof Statements.EndCatch
61
61
  || (this.options.selectionScreenBlockIndentation === true
62
62
  && type instanceof Statements.SelectionScreen
63
- && (statement.concatTokens().toUpperCase().includes("END OF BLOCK") ||
63
+ && (statement.concatTokens().toUpperCase().includes("END OF SCREEN") ||
64
+ statement.concatTokens().toUpperCase().includes("END OF BLOCK") ||
64
65
  statement.concatTokens().toUpperCase().includes("END OF LINE")))
65
66
  || type instanceof Statements.ElseIf
66
67
  || type instanceof Statements.EndFunction
@@ -150,7 +151,9 @@ class Indent {
150
151
  || type instanceof Statements.TestSeam
151
152
  || (this.options.selectionScreenBlockIndentation === true
152
153
  && type instanceof Statements.SelectionScreen
153
- && (statement.concatTokens().toUpperCase().includes("BEGIN OF BLOCK") ||
154
+ && (statement.concatTokens().toUpperCase().includes("BEGIN OF SCREEN") ||
155
+ statement.concatTokens().toUpperCase().includes("BEGIN OF TABBED BLOCK") ||
156
+ statement.concatTokens().toUpperCase().includes("BEGIN OF BLOCK") ||
154
157
  statement.concatTokens().toUpperCase().includes("BEGIN OF LINE")))
155
158
  || type instanceof Statements.StartOfSelection
156
159
  || type instanceof Statements.AtSelectionScreen
@@ -63,7 +63,7 @@ class Registry {
63
63
  }
64
64
  static abaplintVersion() {
65
65
  // magic, see build script "version.sh"
66
- return "2.93.33";
66
+ return "2.93.35";
67
67
  }
68
68
  getDDICReferences() {
69
69
  return this.references;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abaplint/core",
3
- "version": "2.93.33",
3
+ "version": "2.93.35",
4
4
  "description": "abaplint - Core API",
5
5
  "main": "build/src/index.js",
6
6
  "typings": "build/abaplint.d.ts",
@@ -46,16 +46,16 @@
46
46
  },
47
47
  "homepage": "https://abaplint.org",
48
48
  "devDependencies": {
49
- "@microsoft/api-extractor": "^7.31.2",
49
+ "@microsoft/api-extractor": "^7.32.0",
50
50
  "@types/chai": "^4.3.3",
51
51
  "@types/mocha": "^10.0.0",
52
- "@types/node": "^18.7.23",
52
+ "@types/node": "^18.8.1",
53
53
  "chai": "^4.3.6",
54
54
  "eslint": "^8.24.0",
55
55
  "mocha": "^10.0.0",
56
56
  "c8": "^7.12.0",
57
57
  "source-map-support": "^0.5.21",
58
- "ts-json-schema-generator": "^1.1.1",
58
+ "ts-json-schema-generator": "^1.1.2",
59
59
  "typescript": "^4.8.4"
60
60
  },
61
61
  "dependencies": {