@abaplint/core 2.113.72 → 2.113.74
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/build/src/abap/2_statements/expressions/color.js +1 -1
- package/build/src/abap/2_statements/expressions/field_symbol.js +1 -1
- package/build/src/abap/2_statements/expressions/sql_hints.js +1 -1
- package/build/src/abap/2_statements/statements/leave.js +1 -1
- package/build/src/abap/2_statements/statements/scroll_list.js +1 -1
- package/build/src/abap/2_statements/statements/while.js +1 -1
- package/build/src/objects/program.js +13 -2
- package/build/src/registry.js +1 -1
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@ class Color extends combi_1.Expression {
|
|
|
10
10
|
const texts = (0, combi_1.altPrio)("COL_BACKGROUND", "COL_HEADING", "COL_NORMAL", "COL_TOTAL", "COL_KEY", "COL_POSITIVE", "COL_NEGATIVE", "COL_GROUP");
|
|
11
11
|
const value = (0, combi_1.alt)(eq, (0, combi_1.altPrio)("ON", "OFF", (0, combi_1.altPrio)(integers, texts)));
|
|
12
12
|
const toggle = (0, combi_1.altPrio)("ON", "OFF");
|
|
13
|
-
return (0, combi_1.seq)("COLOR", value, (0, combi_1.opt)(toggle));
|
|
13
|
+
return (0, combi_1.seq)("COLOR", (0, combi_1.opt)((0, combi_1.seq)(value, (0, combi_1.opt)(toggle))));
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
exports.Color = Color;
|
|
@@ -7,7 +7,7 @@ class FieldSymbol extends combi_1.Expression {
|
|
|
7
7
|
getRunnable() {
|
|
8
8
|
// todo, this only allows one dash in the name
|
|
9
9
|
const dashes = (0, combi_1.seq)((0, combi_1.regex)(/^<[\w\/%$\*]+$/), (0, combi_1.tok)(tokens_1.Dash), (0, combi_1.regex)(/^[\w\/%$\*]+>$/));
|
|
10
|
-
return (0, combi_1.altPrio)((0, combi_1.regex)(/^<[\w
|
|
10
|
+
return (0, combi_1.altPrio)((0, combi_1.regex)(/^<[\w\/%$\*\?]+>$/), dashes);
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
exports.FieldSymbol = FieldSymbol;
|
|
@@ -6,7 +6,7 @@ const _1 = require(".");
|
|
|
6
6
|
class SQLHints extends combi_1.Expression {
|
|
7
7
|
getRunnable() {
|
|
8
8
|
const type = (0, combi_1.altPrio)("ORACLE", "ADABAS", "AS400", "DB2", "HDB", "MSSQLNT", "SYBASE", "DB6");
|
|
9
|
-
const ret = (0, combi_1.seq)("%_HINTS", (0, combi_1.plus)((0, combi_1.seq)(type, _1.Constant)));
|
|
9
|
+
const ret = (0, combi_1.seq)("%_HINTS", (0, combi_1.plus)((0, combi_1.seq)(type, (0, combi_1.alt)(_1.Constant, _1.FieldSub))));
|
|
10
10
|
return ret;
|
|
11
11
|
}
|
|
12
12
|
}
|
|
@@ -8,7 +8,7 @@ class Leave {
|
|
|
8
8
|
getMatcher() {
|
|
9
9
|
const retu = (0, combi_1.seq)(expressions_1.AndReturn, "TO SCREEN", expressions_1.Source);
|
|
10
10
|
const transaction = (0, combi_1.seq)("TO TRANSACTION", expressions_1.Source, (0, combi_1.opt)("AND SKIP FIRST SCREEN"));
|
|
11
|
-
const ret = (0, combi_1.seq)("LEAVE", (0, combi_1.opt)((0, combi_1.alt)("TO CURRENT TRANSACTION", (0, combi_1.seq)((0, combi_1.opt)("TO"), "LIST-PROCESSING", (0, combi_1.opt)(retu)), "LIST-PROCESSING", "SCREEN", transaction, "PROGRAM", (0, combi_1.seq)("TO SCREEN", expressions_1.Source))));
|
|
11
|
+
const ret = (0, combi_1.seq)("LEAVE", (0, combi_1.opt)((0, combi_1.alt)((0, combi_1.seq)("TO CURRENT TRANSACTION", (0, combi_1.opt)("AND SKIP FIRST SCREEN")), (0, combi_1.seq)((0, combi_1.opt)("TO"), "LIST-PROCESSING", (0, combi_1.opt)(retu)), "LIST-PROCESSING", "SCREEN", transaction, "PROGRAM", (0, combi_1.seq)("TO SCREEN", expressions_1.Source))));
|
|
12
12
|
return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
|
|
13
13
|
}
|
|
14
14
|
}
|
|
@@ -10,7 +10,7 @@ class ScrollList {
|
|
|
10
10
|
const line = (0, combi_1.seq)("LINE", expressions_1.Source);
|
|
11
11
|
const column = (0, combi_1.seq)("TO COLUMN", expressions_1.Source);
|
|
12
12
|
const to = (0, combi_1.seq)("TO", (0, combi_1.alt)("FIRST PAGE", "LAST PAGE", (0, combi_1.seq)("PAGE", expressions_1.Source)));
|
|
13
|
-
const ret = (0, combi_1.seq)("SCROLL LIST", (0, combi_1.per)(index, (0, combi_1.alt)(to, "BACKWARD", "FORWARD"), (0, combi_1.alt)("LEFT", "RIGHT"), column, line));
|
|
13
|
+
const ret = (0, combi_1.seq)("SCROLL LIST", (0, combi_1.per)(index, (0, combi_1.alt)(to, "BACKWARD", "FORWARD"), (0, combi_1.seq)((0, combi_1.alt)("LEFT", "RIGHT"), (0, combi_1.opt)((0, combi_1.seq)("BY", expressions_1.Source, "PLACES"))), column, line));
|
|
14
14
|
return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
|
|
15
15
|
}
|
|
16
16
|
}
|
|
@@ -6,7 +6,7 @@ const expressions_1 = require("../expressions");
|
|
|
6
6
|
class While {
|
|
7
7
|
getMatcher() {
|
|
8
8
|
const vary = (0, combi_1.seq)("VARY", expressions_1.Target, "FROM", expressions_1.Source, "NEXT", expressions_1.Source);
|
|
9
|
-
return (0, combi_1.seq)("WHILE", expressions_1.Cond, (0, combi_1.
|
|
9
|
+
return (0, combi_1.seq)("WHILE", expressions_1.Cond, (0, combi_1.star)(vary));
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
exports.While = While;
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Program = void 0;
|
|
4
4
|
const _abap_object_1 = require("./_abap_object");
|
|
5
5
|
const _dynpros_1 = require("./_dynpros");
|
|
6
|
+
const xml_utils_1 = require("../xml_utils");
|
|
6
7
|
class Program extends _abap_object_1.ABAPObject {
|
|
7
8
|
getType() {
|
|
8
9
|
return "PROG";
|
|
@@ -15,8 +16,9 @@ class Program extends _abap_object_1.ABAPObject {
|
|
|
15
16
|
return [main];
|
|
16
17
|
}
|
|
17
18
|
getDescription() {
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
var _a;
|
|
20
|
+
this.parseXML();
|
|
21
|
+
return (_a = this.parsedXML) === null || _a === void 0 ? void 0 : _a.description;
|
|
20
22
|
}
|
|
21
23
|
getAllowedNaming() {
|
|
22
24
|
return {
|
|
@@ -42,6 +44,7 @@ class Program extends _abap_object_1.ABAPObject {
|
|
|
42
44
|
}
|
|
43
45
|
////////////////////////////
|
|
44
46
|
parseXML() {
|
|
47
|
+
var _a, _b, _c;
|
|
45
48
|
if (this.parsedXML !== undefined) {
|
|
46
49
|
return;
|
|
47
50
|
}
|
|
@@ -51,15 +54,23 @@ class Program extends _abap_object_1.ABAPObject {
|
|
|
51
54
|
this.parsedXML = {
|
|
52
55
|
isInclude: false,
|
|
53
56
|
isModulePool: false,
|
|
57
|
+
description: undefined,
|
|
54
58
|
dynpros: [],
|
|
55
59
|
};
|
|
56
60
|
return;
|
|
57
61
|
}
|
|
62
|
+
let description = "";
|
|
63
|
+
for (const t of (0, xml_utils_1.xmlToArray)((_c = (_b = (_a = parsed.abapGit) === null || _a === void 0 ? void 0 : _a["asx:abap"]["asx:values"]) === null || _b === void 0 ? void 0 : _b.TPOOL) === null || _c === void 0 ? void 0 : _c.item)) {
|
|
64
|
+
if ((t === null || t === void 0 ? void 0 : t.ID) === "R") {
|
|
65
|
+
description = t.ENTRY ? (0, xml_utils_1.unescape)(t.ENTRY) : "";
|
|
66
|
+
}
|
|
67
|
+
}
|
|
58
68
|
const dynpros = (0, _dynpros_1.parseDynpros)(parsed);
|
|
59
69
|
this.parsedXML = {
|
|
60
70
|
isInclude: file ? file.getRaw().includes("<SUBC>I</SUBC>") : false,
|
|
61
71
|
isModulePool: file ? file.getRaw().includes("<SUBC>M</SUBC>") : false,
|
|
62
72
|
dynpros: dynpros,
|
|
73
|
+
description: description,
|
|
63
74
|
};
|
|
64
75
|
}
|
|
65
76
|
}
|
package/build/src/registry.js
CHANGED