@abaplint/cli 2.113.52 → 2.113.54
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 +23 -18
- package/package.json +2 -2
package/build/cli.js
CHANGED
|
@@ -6056,7 +6056,8 @@ const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src
|
|
|
6056
6056
|
class InlineLoopDefinition extends combi_1.Expression {
|
|
6057
6057
|
getRunnable() {
|
|
6058
6058
|
const index = (0, combi_1.seq)("INDEX INTO", _1.TargetField);
|
|
6059
|
-
|
|
6059
|
+
const key = (0, combi_1.seq)("USING KEY", _1.SimpleName);
|
|
6060
|
+
return (0, combi_1.seq)((0, combi_1.altPrio)(_1.TargetFieldSymbol, _1.TargetField), "IN", (0, combi_1.opt)("GROUP"), _1.Source, (0, combi_1.optPrio)(key), (0, combi_1.optPrio)(index));
|
|
6060
6061
|
}
|
|
6061
6062
|
}
|
|
6062
6063
|
exports.InlineLoopDefinition = InlineLoopDefinition;
|
|
@@ -7291,7 +7292,9 @@ const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src
|
|
|
7291
7292
|
class RaiseWith extends combi_1.Expression {
|
|
7292
7293
|
getRunnable() {
|
|
7293
7294
|
const wit = (0, combi_1.seq)("WITH", _1.SimpleSource1, (0, combi_1.opt)(_1.SimpleSource1), (0, combi_1.opt)(_1.SimpleSource1), (0, combi_1.opt)(_1.SimpleSource1));
|
|
7294
|
-
|
|
7295
|
+
// todo: I guess this is from version something?
|
|
7296
|
+
const witComplex = (0, combi_1.seq)("WITH", _1.Source, (0, combi_1.opt)(_1.Source), (0, combi_1.opt)(_1.Source), (0, combi_1.opt)(_1.Source));
|
|
7297
|
+
return (0, combi_1.alt)(wit, witComplex);
|
|
7295
7298
|
}
|
|
7296
7299
|
}
|
|
7297
7300
|
exports.RaiseWith = RaiseWith;
|
|
@@ -7458,8 +7461,6 @@ const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src
|
|
|
7458
7461
|
const version_1 = __webpack_require__(/*! ../../../version */ "./node_modules/@abaplint/core/build/src/version.js");
|
|
7459
7462
|
const sql_group_by_1 = __webpack_require__(/*! ./sql_group_by */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/sql_group_by.js");
|
|
7460
7463
|
const sql_into_structure_1 = __webpack_require__(/*! ./sql_into_structure */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/sql_into_structure.js");
|
|
7461
|
-
const tokens_1 = __webpack_require__(/*! ../../1_lexer/tokens */ "./node_modules/@abaplint/core/build/src/abap/1_lexer/tokens/index.js");
|
|
7462
|
-
const sql_field_name_1 = __webpack_require__(/*! ./sql_field_name */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/sql_field_name.js");
|
|
7463
7464
|
const sql_up_to_1 = __webpack_require__(/*! ./sql_up_to */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/sql_up_to.js");
|
|
7464
7465
|
class Select extends combi_1.Expression {
|
|
7465
7466
|
getRunnable() {
|
|
@@ -7471,8 +7472,7 @@ class Select extends combi_1.Expression {
|
|
|
7471
7472
|
// todo, HINTS cannot be anywhere, need an expression dedicated for strict sql
|
|
7472
7473
|
const perm = (0, combi_1.per)(_1.SQLFrom, into, _1.SQLForAllEntries, where, _1.SQLOrderBy, sql_up_to_1.SQLUpTo, offset, _1.SQLClient, _1.SQLHaving, bypass, sql_group_by_1.SQLGroupBy, fields, _1.DatabaseConnection, _1.SQLHints);
|
|
7473
7474
|
const permSingle = (0, combi_1.per)(_1.SQLFrom, (0, combi_1.altPrio)(sql_into_structure_1.SQLIntoStructure, _1.SQLIntoList), where, _1.SQLClient, bypass, sql_group_by_1.SQLGroupBy, fields, _1.DatabaseConnection, _1.SQLHints);
|
|
7474
|
-
const
|
|
7475
|
-
const fieldList = (0, combi_1.optPrio)((0, combi_1.altPrio)(_1.SQLFieldList, paren));
|
|
7475
|
+
const fieldList = (0, combi_1.optPrio)(_1.SQLFieldList);
|
|
7476
7476
|
const single = (0, combi_1.seq)("SINGLE", (0, combi_1.optPrio)("FOR UPDATE"), fieldList, permSingle);
|
|
7477
7477
|
const other = (0, combi_1.seq)((0, combi_1.optPrio)("DISTINCT"), fieldList, perm);
|
|
7478
7478
|
const ret = (0, combi_1.seq)("SELECT", (0, combi_1.altPrio)(single, other));
|
|
@@ -7867,7 +7867,7 @@ const dynamic_1 = __webpack_require__(/*! ./dynamic */ "./node_modules/@abaplint
|
|
|
7867
7867
|
const sql_arithmetics_1 = __webpack_require__(/*! ./sql_arithmetics */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/sql_arithmetics.js");
|
|
7868
7868
|
class SQLAggregation extends combi_1.Expression {
|
|
7869
7869
|
getRunnable() {
|
|
7870
|
-
const f = (0, combi_1.seq)((0, combi_1.optPrio)("DISTINCT"), (0, combi_1.altPrio)(sql_arithmetics_1.SQLArithmetics, dynamic_1.Dynamic, _1.SQLFunction));
|
|
7870
|
+
const f = (0, combi_1.seq)((0, combi_1.optPrio)("DISTINCT"), (0, combi_1.altPrio)(sql_arithmetics_1.SQLArithmetics, dynamic_1.Dynamic, _1.SQLFunction, _1.SQLCase));
|
|
7871
7871
|
const fparen = (0, combi_1.seq)("(", _1.Field, ")");
|
|
7872
7872
|
const count = (0, combi_1.seq)("COUNT", (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.ParenLeft), (0, combi_1.tok)(tokens_1.ParenLeftW)), (0, combi_1.optPrio)("DISTINCT"), (0, combi_1.altPrio)("*", _1.Field, fparen), ")");
|
|
7873
7873
|
const max = (0, combi_1.seq)("MAX", (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.ParenLeft), (0, combi_1.tok)(tokens_1.ParenLeftW)), f, ")");
|
|
@@ -8213,11 +8213,13 @@ exports.SQLFieldList = void 0;
|
|
|
8213
8213
|
const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
8214
8214
|
const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js");
|
|
8215
8215
|
const version_1 = __webpack_require__(/*! ../../../version */ "./node_modules/@abaplint/core/build/src/version.js");
|
|
8216
|
+
const tokens_1 = __webpack_require__(/*! ../../1_lexer/tokens */ "./node_modules/@abaplint/core/build/src/abap/1_lexer/tokens/index.js");
|
|
8216
8217
|
class SQLFieldList extends combi_1.Expression {
|
|
8217
8218
|
getRunnable() {
|
|
8219
|
+
const paren = (0, combi_1.seq)((0, combi_1.tok)(tokens_1.WParenLeftW), _1.SQLFieldName, (0, combi_1.tok)(tokens_1.WParenRightW));
|
|
8218
8220
|
const nev = (0, combi_1.ver)(version_1.Version.v740sp05, (0, combi_1.starPrio)((0, combi_1.seq)(",", _1.SQLField)));
|
|
8219
8221
|
const old = (0, combi_1.starPrio)(_1.SQLField);
|
|
8220
|
-
return (0, combi_1.altPrio)("*", _1.Dynamic, (0, combi_1.seq)(_1.SQLField, (0, combi_1.alt)(nev, old)));
|
|
8222
|
+
return (0, combi_1.altPrio)("*", _1.Dynamic, (0, combi_1.seq)(_1.SQLField, (0, combi_1.alt)(nev, old)), paren);
|
|
8221
8223
|
}
|
|
8222
8224
|
}
|
|
8223
8225
|
exports.SQLFieldList = SQLFieldList;
|
|
@@ -8901,7 +8903,7 @@ class StringTemplateFormatting extends combi_1.Expression {
|
|
|
8901
8903
|
const alignOptions = (0, combi_1.altPrio)("LEFT", "RIGHT", "CENTER", _1.Source);
|
|
8902
8904
|
const dateTimeOptions = (0, combi_1.altPrio)("RAW", "ISO", "USER", "ENVIRONMENT", _1.Source, dynamic_1.Dynamic);
|
|
8903
8905
|
const timeStampOptions = (0, combi_1.altPrio)("SPACE", "ISO", "USER", "ENVIRONMENT", _1.Source);
|
|
8904
|
-
const numberOptions = (0, combi_1.altPrio)("RAW", "USER", "ENVIRONMENT", _1.Source);
|
|
8906
|
+
const numberOptions = (0, combi_1.altPrio)("RAW", "USER", "ENVIRONMENT", _1.Source, dynamic_1.Dynamic);
|
|
8905
8907
|
const signOptions = (0, combi_1.altPrio)("LEFT", "LEFTPLUS", "LEFTSPACE", "RIGHT", "RIGHTPLUS", "RIGHTSPACE", _1.Source);
|
|
8906
8908
|
const caseOptions = (0, combi_1.altPrio)("RAW", "UPPER", "LOWER", _1.Source, dynamic_1.Dynamic);
|
|
8907
8909
|
const zeroXSDOptions = (0, combi_1.altPrio)("YES", "NO", _1.Source);
|
|
@@ -9113,7 +9115,7 @@ const combi_1 = __webpack_require__(/*! ../combi */ "./node_modules/@abaplint/co
|
|
|
9113
9115
|
const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js");
|
|
9114
9116
|
class TargetFieldSymbol extends combi_1.Expression {
|
|
9115
9117
|
getRunnable() {
|
|
9116
|
-
return
|
|
9118
|
+
return (0, combi_1.seq)(_1.FieldSymbol, (0, combi_1.optPrio)(_1.TableBody));
|
|
9117
9119
|
}
|
|
9118
9120
|
}
|
|
9119
9121
|
exports.TargetFieldSymbol = TargetFieldSymbol;
|
|
@@ -9228,8 +9230,8 @@ const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src
|
|
|
9228
9230
|
const tokens_1 = __webpack_require__(/*! ../../1_lexer/tokens */ "./node_modules/@abaplint/core/build/src/abap/1_lexer/tokens/index.js");
|
|
9229
9231
|
class Throw extends combi_1.Expression {
|
|
9230
9232
|
getRunnable() {
|
|
9231
|
-
|
|
9232
|
-
return (0, combi_1.seq)("THROW", (0, combi_1.opt)("RESUMABLE"), _1.ClassName, (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.ParenLeftW), (0, combi_1.tok)(tokens_1.ParenLeft)), (0, combi_1.opt)((0, combi_1.alt)(_1.Source, _1.ParameterListS)), (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.WParenRightW), (0, combi_1.tok)(tokens_1.ParenRightW)));
|
|
9233
|
+
const message = (0, combi_1.seq)("MESSAGE", _1.MessageSource, (0, combi_1.opt)(_1.RaiseWith));
|
|
9234
|
+
return (0, combi_1.seq)("THROW", (0, combi_1.opt)("RESUMABLE"), _1.ClassName, (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.ParenLeftW), (0, combi_1.tok)(tokens_1.ParenLeft)), (0, combi_1.opt)((0, combi_1.alt)(_1.Source, _1.ParameterListS, message)), (0, combi_1.altPrio)((0, combi_1.tok)(tokens_1.WParenRightW), (0, combi_1.tok)(tokens_1.ParenRightW)));
|
|
9233
9235
|
}
|
|
9234
9236
|
}
|
|
9235
9237
|
exports.Throw = Throw;
|
|
@@ -14695,7 +14697,7 @@ class MethodDef {
|
|
|
14695
14697
|
const behavior = (0, combi_1.altPrio)((0, combi_1.seq)("VALIDATE ON SAVE IMPORTING", expressions_1.MethodParamName, "FOR", expressions_1.TypeName), (0, combi_1.seq)("MODIFY IMPORTING", expressions_1.MethodParamName, modify), (0, combi_1.seq)("READ IMPORTING", expressions_1.MethodParamName, (0, combi_1.altPrio)(forRead, forfunction)), (0, combi_1.seq)("FEATURES IMPORTING", expressions_1.MethodParamName, "REQUEST", expressions_1.NamespaceSimpleName, "FOR", expressions_1.NamespaceSimpleName, result), (0, combi_1.seq)("BEHAVIOR IMPORTING", expressions_1.MethodParamName, "FOR CREATE", expressions_1.TypeName, expressions_1.MethodParamName, "FOR UPDATE", expressions_1.TypeName, expressions_1.MethodParamName, "FOR DELETE", expressions_1.TypeName), (0, combi_1.seq)("BEHAVIOR IMPORTING", expressions_1.MethodParamName, "FOR READ", expressions_1.TypeName, result), (0, combi_1.seq)((0, combi_1.alt)("BEHAVIOR", "LOCK"), "IMPORTING", expressions_1.MethodParamName, "FOR LOCK", expressions_1.TypeName), (0, combi_1.seq)("DETERMINE", (0, combi_1.alt)("ON MODIFY", "ON SAVE"), "IMPORTING", expressions_1.MethodParamName, "FOR", expressions_1.TypeName), (0, combi_1.seq)("GLOBAL AUTHORIZATION IMPORTING REQUEST", expressions_1.MethodParamName, "FOR", expressions_1.TypeName, result), (0, combi_1.seq)("INSTANCE AUTHORIZATION IMPORTING", expressions_1.MethodParamName, "REQUEST", expressions_1.MethodParamName, "FOR", expressions_1.TypeName, result), (0, combi_1.seq)("INSTANCE FEATURES IMPORTING", expressions_1.MethodParamName, "REQUEST", expressions_1.MethodParamName, "FOR", expressions_1.TypeName, result));
|
|
14696
14698
|
// todo, this is only from version something
|
|
14697
14699
|
const amdp = (0, combi_1.seq)("AMDP OPTIONS CDS SESSION CLIENT CURRENT", (0, combi_1.optPrio)(expressions_1.MethodDefImporting), (0, combi_1.optPrio)(expressions_1.MethodDefExporting), (0, combi_1.optPrio)(expressions_1.MethodDefRaising));
|
|
14698
|
-
const ret = (0, combi_1.seq)((0, combi_1.altPrio)("CLASS-METHODS", "METHODS"), expressions_1.MethodName, (0, combi_1.alt)((0, combi_1.seq)((0, combi_1.optPrio)(expressions_1.Abstract), expressions_1.EventHandler), parameters, testing, (0, combi_1.seq)("FOR", (0, combi_1.alt)(tableFunction, ddl, behavior)), amdp, "NOT AT END OF MODE", (0, combi_1.optPrio)(expressions_1.Redefinition)));
|
|
14700
|
+
const ret = (0, combi_1.seq)((0, combi_1.altPrio)("CLASS-METHODS", "METHODS"), expressions_1.MethodName, (0, combi_1.alt)((0, combi_1.seq)((0, combi_1.optPrio)(expressions_1.Abstract), (0, combi_1.optPrio)(def), expressions_1.EventHandler), parameters, testing, (0, combi_1.seq)("FOR", (0, combi_1.alt)(tableFunction, ddl, behavior)), amdp, "NOT AT END OF MODE", (0, combi_1.optPrio)(expressions_1.Redefinition)));
|
|
14699
14701
|
return ret;
|
|
14700
14702
|
}
|
|
14701
14703
|
}
|
|
@@ -22949,6 +22951,9 @@ class TypeUtils {
|
|
|
22949
22951
|
return this.isAssignable(source, target);
|
|
22950
22952
|
}
|
|
22951
22953
|
isAssignable(source, target) {
|
|
22954
|
+
if (source === undefined || target === undefined) {
|
|
22955
|
+
return true;
|
|
22956
|
+
}
|
|
22952
22957
|
/*
|
|
22953
22958
|
console.dir(source);
|
|
22954
22959
|
console.dir(target);
|
|
@@ -39822,7 +39827,7 @@ exports.CDSDetermineTypes = void 0;
|
|
|
39822
39827
|
const basic_1 = __webpack_require__(/*! ../abap/types/basic */ "./node_modules/@abaplint/core/build/src/abap/types/basic/index.js");
|
|
39823
39828
|
const ddic_1 = __webpack_require__(/*! ../ddic */ "./node_modules/@abaplint/core/build/src/ddic.js");
|
|
39824
39829
|
class CDSDetermineTypes {
|
|
39825
|
-
parseType(reg, parsedData) {
|
|
39830
|
+
parseType(reg, parsedData, ddlsName) {
|
|
39826
39831
|
const ddic = new ddic_1.DDIC(reg);
|
|
39827
39832
|
if ((parsedData === null || parsedData === void 0 ? void 0 : parsedData.fields.length) === 0) {
|
|
39828
39833
|
return new basic_1.VoidType("DDLS:todo");
|
|
@@ -39848,7 +39853,7 @@ class CDSDetermineTypes {
|
|
|
39848
39853
|
if ((source === null || source === void 0 ? void 0 : source.name) === undefined) {
|
|
39849
39854
|
components.push({
|
|
39850
39855
|
name: f.name,
|
|
39851
|
-
type: new basic_1.UnknownType("CDS parser error, unknown source"),
|
|
39856
|
+
type: new basic_1.UnknownType("CDS parser error, unknown source, " + ddlsName),
|
|
39852
39857
|
});
|
|
39853
39858
|
continue;
|
|
39854
39859
|
}
|
|
@@ -39893,7 +39898,7 @@ class CDSDetermineTypes {
|
|
|
39893
39898
|
else {
|
|
39894
39899
|
components.push({
|
|
39895
39900
|
name: f.name,
|
|
39896
|
-
type: new basic_1.VoidType("DDLS:fieldname"),
|
|
39901
|
+
type: new basic_1.VoidType("DDLS:fieldname:" + ddlsName),
|
|
39897
39902
|
});
|
|
39898
39903
|
}
|
|
39899
39904
|
}
|
|
@@ -46824,7 +46829,7 @@ class DataDefinition extends _abstract_object_1.AbstractObject {
|
|
|
46824
46829
|
}
|
|
46825
46830
|
parseType(reg) {
|
|
46826
46831
|
this.parse();
|
|
46827
|
-
return new cds_determine_types_1.CDSDetermineTypes().parseType(reg, this.parsedData);
|
|
46832
|
+
return new cds_determine_types_1.CDSDetermineTypes().parseType(reg, this.parsedData, this.getName());
|
|
46828
46833
|
}
|
|
46829
46834
|
getParsedData() {
|
|
46830
46835
|
return this.parsedData;
|
|
@@ -53126,7 +53131,7 @@ class Registry {
|
|
|
53126
53131
|
}
|
|
53127
53132
|
static abaplintVersion() {
|
|
53128
53133
|
// magic, see build script "version.sh"
|
|
53129
|
-
return "2.113.
|
|
53134
|
+
return "2.113.54";
|
|
53130
53135
|
}
|
|
53131
53136
|
getDDICReferences() {
|
|
53132
53137
|
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.54",
|
|
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.54",
|
|
42
42
|
"@types/chai": "^4.3.20",
|
|
43
43
|
"@types/glob": "^8.1.0",
|
|
44
44
|
"@types/minimist": "^1.2.5",
|