@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.
Files changed (2) hide show
  1. package/build/cli.js +27 -15
  2. 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%$\*\/\?]+$/), (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)));
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
- const target = (0, combi_1.altPrio)(text, normal);
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.FieldSub, expressions_1.SourceFieldSymbol, expressions_1.Dynamic);
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, _c;
26389
- const nameToken = (_a = node.findFirstExpression(expressions_1.FormParamName)) === null || _a === void 0 ? void 0 : _a.getFirstToken();
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 = (_b = node.findDirectExpression(expressions_1.SimpleFieldChain)) === null || _b === void 0 ? void 0 : _b.getFirstToken().getStr();
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 = (_c = input.scope.findType(typeName)) === null || _c === void 0 ? void 0 : _c.getType();
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: new basic_1.CharacterType(1) }, // todo
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).parseType(typeExpression);
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.228";
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.228",
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.228",
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",