@abaplint/core 2.93.34 → 2.93.36

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.
@@ -5698,7 +5698,7 @@ declare class Table extends AbstractObject {
5698
5698
  allowNamespace: boolean;
5699
5699
  };
5700
5700
  setDirty(): void;
5701
- listKeys(): string[];
5701
+ listKeys(reg: IRegistry): string[];
5702
5702
  parseType(reg: IRegistry): AbstractType;
5703
5703
  getTableCategory(): TableCategory | undefined;
5704
5704
  getEnhancementCategory(): EnhancementCategory;
@@ -6176,6 +6176,11 @@ 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;
6179
6184
  getJoin(): {
6180
6185
  LTAB: string;
6181
6186
  LFIELD: string;
@@ -42,7 +42,7 @@ class Table extends _abstract_object_1.AbstractObject {
42
42
  this.parsedData = undefined;
43
43
  super.setDirty();
44
44
  }
45
- listKeys() {
45
+ listKeys(reg) {
46
46
  if (this.parsedData === undefined) {
47
47
  this.parseXML();
48
48
  }
@@ -51,7 +51,15 @@ class Table extends _abstract_object_1.AbstractObject {
51
51
  }
52
52
  const ret = [];
53
53
  for (const p of this.parsedData.fields) {
54
- if (p.KEYFLAG === "X") {
54
+ if (p.KEYFLAG === "X" && p.FIELDNAME === ".INCLUDE") {
55
+ const lookup = new ddic_1.DDIC(reg).lookupTableOrView(p.PRECFIELD).type;
56
+ if (lookup instanceof Types.StructureType) {
57
+ for (const c of lookup.getComponents()) {
58
+ ret.push(c.name);
59
+ }
60
+ }
61
+ }
62
+ else if (p.KEYFLAG === "X") {
55
63
  ret.push(p.FIELDNAME);
56
64
  }
57
65
  }
@@ -15,6 +15,13 @@ 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
+ }
18
25
  getJoin() {
19
26
  var _a;
20
27
  if (this.parsedData === undefined) {
@@ -152,6 +152,7 @@ class Indent {
152
152
  || (this.options.selectionScreenBlockIndentation === true
153
153
  && type instanceof Statements.SelectionScreen
154
154
  && (statement.concatTokens().toUpperCase().includes("BEGIN OF SCREEN") ||
155
+ statement.concatTokens().toUpperCase().includes("BEGIN OF TABBED BLOCK") ||
155
156
  statement.concatTokens().toUpperCase().includes("BEGIN OF BLOCK") ||
156
157
  statement.concatTokens().toUpperCase().includes("BEGIN OF LINE")))
157
158
  || type instanceof Statements.StartOfSelection
@@ -63,7 +63,7 @@ class Registry {
63
63
  }
64
64
  static abaplintVersion() {
65
65
  // magic, see build script "version.sh"
66
- return "2.93.34";
66
+ return "2.93.36";
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.34",
3
+ "version": "2.93.36",
4
4
  "description": "abaplint - Core API",
5
5
  "main": "build/src/index.js",
6
6
  "typings": "build/abaplint.d.ts",
@@ -49,7 +49,7 @@
49
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.8.1",
52
+ "@types/node": "^18.8.2",
53
53
  "chai": "^4.3.6",
54
54
  "eslint": "^8.24.0",
55
55
  "mocha": "^10.0.0",
@@ -59,7 +59,7 @@
59
59
  "typescript": "^4.8.4"
60
60
  },
61
61
  "dependencies": {
62
- "fast-xml-parser": "^4.0.10",
62
+ "fast-xml-parser": "^4.0.11",
63
63
  "json5": "^2.2.1",
64
64
  "vscode-languageserver-types": "^3.17.2"
65
65
  }