@abaplint/cli 2.113.228 → 2.113.230
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/cli.js +27 -15
- package/package.json +2 -2
package/build/cli.js
CHANGED
|
@@ -5547,7 +5547,7 @@ const tokens_1 = __webpack_require__(/*! ../../1_lexer/tokens */ "./node_modules
|
|
|
5547
5547
|
class FormName extends combi_1.Expression {
|
|
5548
5548
|
getRunnable() {
|
|
5549
5549
|
// todo, does not handle namespaces properly
|
|
5550
|
-
return (0, combi_1.seq)((0, combi_1.regex)(/^!?[\w
|
|
5550
|
+
return (0, combi_1.seq)((0, combi_1.regex)(/^!?[\w%$\*\/\?<>]+$/), (0, combi_1.starPrio)((0, combi_1.seq)((0, combi_1.tok)(tokens_1.Dash), (0, combi_1.optPrio)((0, combi_1.regex)(/^\w+$/)))), (0, combi_1.optPrio)((0, combi_1.tok)(tokens_1.DashW)));
|
|
5551
5551
|
}
|
|
5552
5552
|
}
|
|
5553
5553
|
exports.FormName = FormName;
|
|
@@ -17445,8 +17445,7 @@ class Sort {
|
|
|
17445
17445
|
const fields = (0, combi_1.plus)((0, combi_1.seq)(sel, (0, combi_1.optPrio)(text), (0, combi_1.optPrio)(order), (0, combi_1.optPrio)(text)));
|
|
17446
17446
|
const by = (0, combi_1.seq)("BY", fields);
|
|
17447
17447
|
const normal = (0, combi_1.seq)(expressions_1.Target, (0, combi_1.opt)((0, combi_1.per)(order, by, "STABLE", text)));
|
|
17448
|
-
|
|
17449
|
-
return (0, combi_1.seq)("SORT", target);
|
|
17448
|
+
return (0, combi_1.seq)("SORT", normal);
|
|
17450
17449
|
}
|
|
17451
17450
|
}
|
|
17452
17451
|
exports.Sort = Sort;
|
|
@@ -17470,10 +17469,10 @@ const version_1 = __webpack_require__(/*! ../../../version */ "./node_modules/@a
|
|
|
17470
17469
|
class SortDataset {
|
|
17471
17470
|
getMatcher() {
|
|
17472
17471
|
const order = (0, combi_1.alt)("ASCENDING", "DESCENDING");
|
|
17473
|
-
const sel = (0, combi_1.alt)(expressions_1.
|
|
17472
|
+
const sel = (0, combi_1.alt)(expressions_1.ComponentChain, expressions_1.SourceFieldSymbol, expressions_1.Dynamic);
|
|
17474
17473
|
const fields = (0, combi_1.plus)((0, combi_1.seq)(sel, (0, combi_1.optPrio)(order)));
|
|
17475
17474
|
const by = (0, combi_1.seq)("BY", fields);
|
|
17476
|
-
const ret = (0, combi_1.seq)("SORT", (0, combi_1.opt)(by));
|
|
17475
|
+
const ret = (0, combi_1.seq)("SORT", (0, combi_1.opt)("AS TEXT"), (0, combi_1.opt)(by));
|
|
17477
17476
|
return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
|
|
17478
17477
|
}
|
|
17479
17478
|
}
|
|
@@ -20138,9 +20137,10 @@ const _combi_1 = __webpack_require__(/*! ./_combi */ "./node_modules/@abaplint/c
|
|
|
20138
20137
|
const chain_1 = __webpack_require__(/*! ./chain */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/chain.js");
|
|
20139
20138
|
const loop_1 = __webpack_require__(/*! ./loop */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/loop.js");
|
|
20140
20139
|
const dynpro_loop_1 = __webpack_require__(/*! ./dynpro_loop */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/dynpro_loop.js");
|
|
20140
|
+
const loop_extract_1 = __webpack_require__(/*! ./loop_extract */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/loop_extract.js");
|
|
20141
20141
|
class ProcessAfterInput {
|
|
20142
20142
|
getMatcher() {
|
|
20143
|
-
const pai = (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.Module), (0, _combi_1.sta)(Statements.Field), (0, _combi_1.sta)(Statements.CallSubscreen), (0, _combi_1.sub)(chain_1.Chain), (0, _combi_1.sub)(dynpro_loop_1.DynproLoop), (0, _combi_1.sub)(loop_1.Loop)));
|
|
20143
|
+
const pai = (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.Module), (0, _combi_1.sta)(Statements.Field), (0, _combi_1.sta)(Statements.CallSubscreen), (0, _combi_1.sub)(chain_1.Chain), (0, _combi_1.sub)(dynpro_loop_1.DynproLoop), (0, _combi_1.sub)(loop_extract_1.LoopExtract), (0, _combi_1.sub)(loop_1.Loop)));
|
|
20144
20144
|
return (0, _combi_1.seq)((0, _combi_1.sta)(Statements.ProcessAfterInput), pai);
|
|
20145
20145
|
}
|
|
20146
20146
|
}
|
|
@@ -20162,9 +20162,10 @@ exports.ProcessBeforeOutput = void 0;
|
|
|
20162
20162
|
const Statements = __webpack_require__(/*! ../../2_statements/statements */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/index.js");
|
|
20163
20163
|
const _combi_1 = __webpack_require__(/*! ./_combi */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/_combi.js");
|
|
20164
20164
|
const dynpro_loop_1 = __webpack_require__(/*! ./dynpro_loop */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/dynpro_loop.js");
|
|
20165
|
+
const loop_extract_1 = __webpack_require__(/*! ./loop_extract */ "./node_modules/@abaplint/core/build/src/abap/3_structures/structures/loop_extract.js");
|
|
20165
20166
|
class ProcessBeforeOutput {
|
|
20166
20167
|
getMatcher() {
|
|
20167
|
-
const pbo = (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.Module), (0, _combi_1.sta)(Statements.Field), (0, _combi_1.sta)(Statements.CallSubscreen), (0, _combi_1.sub)(dynpro_loop_1.DynproLoop)));
|
|
20168
|
+
const pbo = (0, _combi_1.star)((0, _combi_1.alt)((0, _combi_1.sta)(Statements.Module), (0, _combi_1.sta)(Statements.Field), (0, _combi_1.sta)(Statements.CallSubscreen), (0, _combi_1.sub)(loop_extract_1.LoopExtract), (0, _combi_1.sub)(dynpro_loop_1.DynproLoop)));
|
|
20168
20169
|
return (0, _combi_1.seq)((0, _combi_1.sta)(Statements.ProcessBeforeOutput), pbo);
|
|
20169
20170
|
}
|
|
20170
20171
|
}
|
|
@@ -24167,6 +24168,9 @@ class BasicTypes {
|
|
|
24167
24168
|
if (chain === undefined) {
|
|
24168
24169
|
chain = node.findFirstExpression(Expressions.SimpleFieldChain);
|
|
24169
24170
|
}
|
|
24171
|
+
if (chain === undefined) {
|
|
24172
|
+
chain = node.findFirstExpression(Expressions.SimpleFieldChain2);
|
|
24173
|
+
}
|
|
24170
24174
|
if (chain === undefined) {
|
|
24171
24175
|
throw new Error("resolveLikeName, chain undefined");
|
|
24172
24176
|
}
|
|
@@ -26383,16 +26387,24 @@ const basic_1 = __webpack_require__(/*! ../../types/basic */ "./node_modules/@ab
|
|
|
26383
26387
|
const expressions_1 = __webpack_require__(/*! ../../2_statements/expressions */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js");
|
|
26384
26388
|
const basic_types_1 = __webpack_require__(/*! ../basic_types */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/basic_types.js");
|
|
26385
26389
|
const assert_error_1 = __webpack_require__(/*! ../assert_error */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/assert_error.js");
|
|
26390
|
+
const tokens_1 = __webpack_require__(/*! ../../1_lexer/tokens */ "./node_modules/@abaplint/core/build/src/abap/1_lexer/tokens/index.js");
|
|
26386
26391
|
class FormParam {
|
|
26387
26392
|
static runSyntax(node, input) {
|
|
26388
|
-
var _a, _b
|
|
26389
|
-
const
|
|
26393
|
+
var _a, _b;
|
|
26394
|
+
const formParamName = node.findFirstExpression(expressions_1.FormParamName);
|
|
26395
|
+
if (formParamName === undefined) {
|
|
26396
|
+
throw new assert_error_1.AssertError("FormParam, could not find FormParamName");
|
|
26397
|
+
}
|
|
26398
|
+
let nameToken = formParamName.getFirstToken();
|
|
26399
|
+
if (formParamName.getChildren().length > 1) {
|
|
26400
|
+
nameToken = new tokens_1.Identifier(nameToken.getStart(), formParamName.concatTokens());
|
|
26401
|
+
}
|
|
26390
26402
|
if (node.findDirectTokenByText("STRUCTURE") && nameToken) {
|
|
26391
26403
|
// STRUCTURES typing
|
|
26392
|
-
const typeName = (
|
|
26404
|
+
const typeName = (_a = node.findDirectExpression(expressions_1.SimpleFieldChain)) === null || _a === void 0 ? void 0 : _a.getFirstToken().getStr();
|
|
26393
26405
|
let type = undefined;
|
|
26394
26406
|
if (typeName) {
|
|
26395
|
-
type = (
|
|
26407
|
+
type = (_b = input.scope.findType(typeName)) === null || _b === void 0 ? void 0 : _b.getType();
|
|
26396
26408
|
if (type === undefined) {
|
|
26397
26409
|
type = input.scope.getDDIC().lookupTableOrView(typeName).type;
|
|
26398
26410
|
}
|
|
@@ -31145,7 +31157,7 @@ class Controls {
|
|
|
31145
31157
|
}
|
|
31146
31158
|
if (node.findDirectTokenByText("TABLEVIEW") && token) {
|
|
31147
31159
|
const cols = new basic_1.StructureType([
|
|
31148
|
-
{ name: "SCREEN", type:
|
|
31160
|
+
{ name: "SCREEN", type: basic_1.VoidType.get("TABLEVIEW-SCREEN") }, // todo
|
|
31149
31161
|
{ name: "INDEX", type: basic_1.IntegerType.get() },
|
|
31150
31162
|
{ name: "SELECTED", type: new basic_1.CharacterType(1) },
|
|
31151
31163
|
{ name: "VISLENGTH", type: basic_1.IntegerType.get() },
|
|
@@ -33834,7 +33846,7 @@ class Ranges {
|
|
|
33834
33846
|
if (typeExpression === undefined) {
|
|
33835
33847
|
throw new assert_error_1.AssertError("Ranges, unexpected node");
|
|
33836
33848
|
}
|
|
33837
|
-
const found = new basic_types_1.BasicTypes(input).
|
|
33849
|
+
const found = new basic_types_1.BasicTypes(input).resolveLikeName(typeExpression);
|
|
33838
33850
|
if (found && nameToken) {
|
|
33839
33851
|
const structure = new basic_1.StructureType([
|
|
33840
33852
|
{ name: "sign", type: new basic_1.CharacterType(1) },
|
|
@@ -35587,7 +35599,7 @@ class Data {
|
|
|
35587
35599
|
static runSyntax(node, input) {
|
|
35588
35600
|
var _a;
|
|
35589
35601
|
const fouth = (_a = node.getFirstChild()) === null || _a === void 0 ? void 0 : _a.getChildren()[3];
|
|
35590
|
-
const isCommonPart = fouth instanceof nodes_1.TokenNode && fouth.concatTokens() === "COMMON";
|
|
35602
|
+
const isCommonPart = fouth instanceof nodes_1.TokenNode && fouth.concatTokens().toUpperCase() === "COMMON";
|
|
35591
35603
|
if (isCommonPart) {
|
|
35592
35604
|
this.runCommonPartSyntax(node, input);
|
|
35593
35605
|
return undefined;
|
|
@@ -54715,7 +54727,7 @@ class Registry {
|
|
|
54715
54727
|
}
|
|
54716
54728
|
static abaplintVersion() {
|
|
54717
54729
|
// magic, see build script "version.sh"
|
|
54718
|
-
return "2.113.
|
|
54730
|
+
return "2.113.230";
|
|
54719
54731
|
}
|
|
54720
54732
|
getDDICReferences() {
|
|
54721
54733
|
return this.ddicReferences;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/cli",
|
|
3
|
-
"version": "2.113.
|
|
3
|
+
"version": "2.113.230",
|
|
4
4
|
"description": "abaplint - Command Line Interface",
|
|
5
5
|
"funding": "https://github.com/sponsors/larshp",
|
|
6
6
|
"bin": {
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
},
|
|
39
39
|
"homepage": "https://abaplint.org",
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@abaplint/core": "^2.113.
|
|
41
|
+
"@abaplint/core": "^2.113.230",
|
|
42
42
|
"@types/chai": "^4.3.20",
|
|
43
43
|
"@types/minimist": "^1.2.5",
|
|
44
44
|
"@types/mocha": "^10.0.10",
|