@abaplint/transpiler-cli 2.13.41 → 2.13.42
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/bundle.js +207 -149
- package/package.json +3 -3
- package/schema.json +0 -8
- package/tsconfig.tsbuildinfo +1 -0
package/build/bundle.js
CHANGED
|
@@ -27379,6 +27379,7 @@ const basic_1 = __webpack_require__(/*! ../types/basic */ "./node_modules/@abapl
|
|
|
27379
27379
|
const ddic_1 = __webpack_require__(/*! ../../ddic */ "./node_modules/@abaplint/core/build/src/ddic.js");
|
|
27380
27380
|
const _object_oriented_1 = __webpack_require__(/*! ./_object_oriented */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_object_oriented.js");
|
|
27381
27381
|
const _reference_1 = __webpack_require__(/*! ./_reference */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_reference.js");
|
|
27382
|
+
const tokens_1 = __webpack_require__(/*! ../1_lexer/tokens */ "./node_modules/@abaplint/core/build/src/abap/1_lexer/tokens/index.js");
|
|
27382
27383
|
class Procedural {
|
|
27383
27384
|
constructor(reg, scope) {
|
|
27384
27385
|
this.scope = scope;
|
|
@@ -27558,7 +27559,8 @@ class Procedural {
|
|
|
27558
27559
|
continue;
|
|
27559
27560
|
}
|
|
27560
27561
|
else {
|
|
27561
|
-
const
|
|
27562
|
+
const token = new tokens_1.Identifier(nameToken.getStart(), param.name);
|
|
27563
|
+
const type = new _typed_identifier_1.TypedIdentifier(token, filename, found, this.functionModuleParameterMeta(param));
|
|
27562
27564
|
if (ignoreIfAlreadyExists === true) {
|
|
27563
27565
|
const exists = this.scope.findVariable(param.name);
|
|
27564
27566
|
if (exists === undefined) {
|
|
@@ -27572,6 +27574,25 @@ class Procedural {
|
|
|
27572
27574
|
}
|
|
27573
27575
|
}
|
|
27574
27576
|
}
|
|
27577
|
+
functionModuleParameterMeta(param) {
|
|
27578
|
+
const ret = [];
|
|
27579
|
+
if (param.direction === types_1.FunctionModuleParameterDirection.importing) {
|
|
27580
|
+
ret.push("function_module_importing" /* IdentifierMeta.FunctionModuleImporting */);
|
|
27581
|
+
}
|
|
27582
|
+
else if (param.direction === types_1.FunctionModuleParameterDirection.exporting) {
|
|
27583
|
+
ret.push("function_module_exporting" /* IdentifierMeta.FunctionModuleExporting */);
|
|
27584
|
+
}
|
|
27585
|
+
else if (param.direction === types_1.FunctionModuleParameterDirection.changing) {
|
|
27586
|
+
ret.push("function_module_changing" /* IdentifierMeta.FunctionModuleChanging */);
|
|
27587
|
+
}
|
|
27588
|
+
else if (param.direction === types_1.FunctionModuleParameterDirection.tables) {
|
|
27589
|
+
ret.push("function_module_tables" /* IdentifierMeta.FunctionModuleTables */);
|
|
27590
|
+
}
|
|
27591
|
+
if (param.passByValue) {
|
|
27592
|
+
ret.push("pass_by_value" /* IdentifierMeta.PassByValue */);
|
|
27593
|
+
}
|
|
27594
|
+
return ret;
|
|
27595
|
+
}
|
|
27575
27596
|
}
|
|
27576
27597
|
exports.Procedural = Procedural;
|
|
27577
27598
|
//# sourceMappingURL=_procedural.js.map
|
|
@@ -34443,7 +34464,7 @@ const assert_error_1 = __webpack_require__(/*! ../assert_error */ "./node_module
|
|
|
34443
34464
|
*/
|
|
34444
34465
|
// TODO: refactor all these method parameters to objects, this is getting messy
|
|
34445
34466
|
class Source {
|
|
34446
|
-
static runSyntax(node, input, targetType, writeReference = false, allowGenericDeference = false) {
|
|
34467
|
+
static runSyntax(node, input, targetType, writeReference = false, allowGenericDeference = false, readReference = true) {
|
|
34447
34468
|
var _a;
|
|
34448
34469
|
if (node === undefined) {
|
|
34449
34470
|
return undefined;
|
|
@@ -34621,7 +34642,10 @@ class Source {
|
|
|
34621
34642
|
return undefined;
|
|
34622
34643
|
}
|
|
34623
34644
|
let context = new unknown_type_1.UnknownType("todo, Source type");
|
|
34624
|
-
const type = [
|
|
34645
|
+
const type = [];
|
|
34646
|
+
if (readReference) {
|
|
34647
|
+
type.push(_reference_1.ReferenceType.DataReadReference);
|
|
34648
|
+
}
|
|
34625
34649
|
if (writeReference) {
|
|
34626
34650
|
type.push(_reference_1.ReferenceType.DataWriteReference);
|
|
34627
34651
|
}
|
|
@@ -37557,7 +37581,8 @@ class CallTransformation {
|
|
|
37557
37581
|
const resultParameters = node.findExpressionAfterToken("RESULT");
|
|
37558
37582
|
const resultSources = new Set((resultParameters === null || resultParameters === void 0 ? void 0 : resultParameters.findAllExpressions(Expressions.SimpleSource3)) || []);
|
|
37559
37583
|
for (const s of node.findAllExpressions(Expressions.SimpleSource3)) {
|
|
37560
|
-
|
|
37584
|
+
const isResult = resultSources.has(s);
|
|
37585
|
+
source_1.Source.runSyntax(s, input, undefined, isResult, false, isResult === false);
|
|
37561
37586
|
}
|
|
37562
37587
|
for (const d of node.findAllExpressions(Expressions.Dynamic)) {
|
|
37563
37588
|
dynamic_1.Dynamic.runSyntax(d, input);
|
|
@@ -37739,7 +37764,6 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
37739
37764
|
exports.Catch = void 0;
|
|
37740
37765
|
const Expressions = __importStar(__webpack_require__(/*! ../../2_statements/expressions */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js"));
|
|
37741
37766
|
const _typed_identifier_1 = __webpack_require__(/*! ../../types/_typed_identifier */ "./node_modules/@abaplint/core/build/src/abap/types/_typed_identifier.js");
|
|
37742
|
-
const unknown_type_1 = __webpack_require__(/*! ../../types/basic/unknown_type */ "./node_modules/@abaplint/core/build/src/abap/types/basic/unknown_type.js");
|
|
37743
37767
|
const basic_1 = __webpack_require__(/*! ../../types/basic */ "./node_modules/@abaplint/core/build/src/abap/types/basic/index.js");
|
|
37744
37768
|
const target_1 = __webpack_require__(/*! ../expressions/target */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/expressions/target.js");
|
|
37745
37769
|
const _reference_1 = __webpack_require__(/*! ../_reference */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_reference.js");
|
|
@@ -37747,7 +37771,7 @@ const _syntax_input_1 = __webpack_require__(/*! ../_syntax_input */ "./node_modu
|
|
|
37747
37771
|
const _type_utils_1 = __webpack_require__(/*! ../_type_utils */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_type_utils.js");
|
|
37748
37772
|
class Catch {
|
|
37749
37773
|
runSyntax(node, input) {
|
|
37750
|
-
var _a
|
|
37774
|
+
var _a;
|
|
37751
37775
|
const names = new Set();
|
|
37752
37776
|
for (const c of node.findDirectExpressions(Expressions.ClassName)) {
|
|
37753
37777
|
const token = c.getFirstToken();
|
|
@@ -37763,7 +37787,6 @@ class Catch {
|
|
|
37763
37787
|
else {
|
|
37764
37788
|
const message = "CATCH, unknown class " + className;
|
|
37765
37789
|
input.issues.push((0, _syntax_input_1.syntaxIssue)(input, token, message));
|
|
37766
|
-
return;
|
|
37767
37790
|
}
|
|
37768
37791
|
if (names.has(className)) {
|
|
37769
37792
|
const message = "Duplicate class name in CATCH: " + className;
|
|
@@ -37773,23 +37796,18 @@ class Catch {
|
|
|
37773
37796
|
names.add(className);
|
|
37774
37797
|
}
|
|
37775
37798
|
const target = node.findDirectExpression(Expressions.Target);
|
|
37776
|
-
const firstClassName = (_a = node.findDirectExpression(Expressions.ClassName)) === null || _a === void 0 ? void 0 : _a.getFirstToken().getStr();
|
|
37777
37799
|
if (target === null || target === void 0 ? void 0 : target.findDirectExpression(Expressions.InlineData)) {
|
|
37778
|
-
const token = (
|
|
37779
|
-
|
|
37780
|
-
|
|
37781
|
-
const
|
|
37782
|
-
|
|
37783
|
-
|
|
37784
|
-
|
|
37785
|
-
|
|
37786
|
-
|
|
37787
|
-
|
|
37788
|
-
|
|
37789
|
-
}
|
|
37790
|
-
else if (token) {
|
|
37791
|
-
const message = "Catch, could not determine type for \"" + token.getStr() + "\"";
|
|
37792
|
-
const identifier = new _typed_identifier_1.TypedIdentifier(token, input.filename, new unknown_type_1.UnknownType(message), ["inline" /* IdentifierMeta.InlineDefinition */]);
|
|
37800
|
+
const token = (_a = target.findFirstExpression(Expressions.TargetField)) === null || _a === void 0 ? void 0 : _a.getFirstToken();
|
|
37801
|
+
if (token) {
|
|
37802
|
+
const classNames = Array.from(names);
|
|
37803
|
+
const unknownClass = classNames.find(name => input.scope.findClassDefinition(name) === undefined);
|
|
37804
|
+
const commonSuperclass = unknownClass === undefined
|
|
37805
|
+
? this.findCommonSuperclass(classNames, input)
|
|
37806
|
+
: undefined;
|
|
37807
|
+
const type = commonSuperclass
|
|
37808
|
+
? new basic_1.ObjectReferenceType(commonSuperclass)
|
|
37809
|
+
: basic_1.VoidType.get(unknownClass || classNames.join(" "));
|
|
37810
|
+
const identifier = new _typed_identifier_1.TypedIdentifier(token, input.filename, type, ["inline" /* IdentifierMeta.InlineDefinition */]);
|
|
37793
37811
|
input.scope.addIdentifier(identifier);
|
|
37794
37812
|
input.scope.addReference(token, identifier, _reference_1.ReferenceType.DataWriteReference, input.filename);
|
|
37795
37813
|
}
|
|
@@ -37813,6 +37831,22 @@ class Catch {
|
|
|
37813
37831
|
}
|
|
37814
37832
|
}
|
|
37815
37833
|
}
|
|
37834
|
+
findCommonSuperclass(classNames, input) {
|
|
37835
|
+
var _a;
|
|
37836
|
+
const lineages = [];
|
|
37837
|
+
for (const className of classNames) {
|
|
37838
|
+
const lineage = [];
|
|
37839
|
+
let current = input.scope.findClassDefinition(className);
|
|
37840
|
+
const visited = new Set();
|
|
37841
|
+
while (current && visited.has(current.getName().toUpperCase()) === false) {
|
|
37842
|
+
lineage.push(current);
|
|
37843
|
+
visited.add(current.getName().toUpperCase());
|
|
37844
|
+
current = input.scope.findClassDefinition(current.getSuperClass());
|
|
37845
|
+
}
|
|
37846
|
+
lineages.push(lineage);
|
|
37847
|
+
}
|
|
37848
|
+
return (_a = lineages[0]) === null || _a === void 0 ? void 0 : _a.find(candidate => lineages.every(lineage => lineage.some(item => item.getName().toUpperCase() === candidate.getName().toUpperCase())));
|
|
37849
|
+
}
|
|
37816
37850
|
}
|
|
37817
37851
|
exports.Catch = Catch;
|
|
37818
37852
|
//# sourceMappingURL=catch.js.map
|
|
@@ -52130,6 +52164,7 @@ class FunctionModuleDefinition {
|
|
|
52130
52164
|
type: param.TYP || param.DBFIELD,
|
|
52131
52165
|
optional: param.OPTIONAL === "X",
|
|
52132
52166
|
defaultValue: param.DEFAULT,
|
|
52167
|
+
passByValue: param.REFERENCE !== "X",
|
|
52133
52168
|
});
|
|
52134
52169
|
}
|
|
52135
52170
|
}
|
|
@@ -52144,6 +52179,7 @@ class FunctionModuleDefinition {
|
|
|
52144
52179
|
type: param.TYP || param.DBFIELD,
|
|
52145
52180
|
optional: param.OPTIONAL === "X",
|
|
52146
52181
|
defaultValue: param.DEFAULT,
|
|
52182
|
+
passByValue: param.REFERENCE !== "X",
|
|
52147
52183
|
});
|
|
52148
52184
|
}
|
|
52149
52185
|
}
|
|
@@ -52158,6 +52194,7 @@ class FunctionModuleDefinition {
|
|
|
52158
52194
|
type: param.TYP || param.DBFIELD,
|
|
52159
52195
|
optional: true,
|
|
52160
52196
|
defaultValue: undefined,
|
|
52197
|
+
passByValue: param.REFERENCE !== "X",
|
|
52161
52198
|
});
|
|
52162
52199
|
}
|
|
52163
52200
|
}
|
|
@@ -52173,6 +52210,7 @@ class FunctionModuleDefinition {
|
|
|
52173
52210
|
type: param.DBSTRUCT || param.TYP,
|
|
52174
52211
|
optional: param.OPTIONAL === "X",
|
|
52175
52212
|
defaultValue: undefined,
|
|
52213
|
+
passByValue: false,
|
|
52176
52214
|
});
|
|
52177
52215
|
}
|
|
52178
52216
|
}
|
|
@@ -53025,14 +53063,14 @@ class MethodParameters {
|
|
|
53025
53063
|
}
|
|
53026
53064
|
}
|
|
53027
53065
|
add(target, source, input, meta, abstractMethod) {
|
|
53028
|
-
var _a
|
|
53066
|
+
var _a;
|
|
53029
53067
|
for (const opt of source.findAllExpressions(Expressions.MethodParamOptional)) {
|
|
53030
53068
|
const p = opt.findDirectExpression(Expressions.MethodParam);
|
|
53031
53069
|
if (p === undefined) {
|
|
53032
53070
|
continue;
|
|
53033
53071
|
}
|
|
53034
53072
|
const extraMeta = [];
|
|
53035
|
-
if (
|
|
53073
|
+
if (this.isPassByValue(p)) {
|
|
53036
53074
|
extraMeta.push("pass_by_value" /* IdentifierMeta.PassByValue */);
|
|
53037
53075
|
}
|
|
53038
53076
|
else if (meta.includes("importing" /* IdentifierMeta.MethodImporting */)) {
|
|
@@ -53051,7 +53089,7 @@ class MethodParameters {
|
|
|
53051
53089
|
else if (opt.findFirstExpression(Expressions.Default)) {
|
|
53052
53090
|
const name = target[target.length - 1].getName().toUpperCase();
|
|
53053
53091
|
this.optional.push(name);
|
|
53054
|
-
const val = (
|
|
53092
|
+
const val = (_a = opt.findFirstExpression(Expressions.Default)) === null || _a === void 0 ? void 0 : _a.getLastChild();
|
|
53055
53093
|
if (val && val instanceof nodes_1.ExpressionNode) {
|
|
53056
53094
|
this.defaults[name] = val;
|
|
53057
53095
|
}
|
|
@@ -53062,9 +53100,15 @@ class MethodParameters {
|
|
|
53062
53100
|
}
|
|
53063
53101
|
const params = source.findAllExpressions(Expressions.MethodParam);
|
|
53064
53102
|
for (const param of params) {
|
|
53065
|
-
|
|
53103
|
+
const extraMeta = this.isPassByValue(param) ? ["pass_by_value" /* IdentifierMeta.PassByValue */] : [];
|
|
53104
|
+
target.push(method_param_1.MethodParam.runSyntax(param, input, [...meta, ...extraMeta]));
|
|
53066
53105
|
}
|
|
53067
53106
|
}
|
|
53107
|
+
isPassByValue(param) {
|
|
53108
|
+
var _a;
|
|
53109
|
+
return param.getFirstToken().getStr().toUpperCase() === "VALUE"
|
|
53110
|
+
&& ((_a = param.getChildren()[1]) === null || _a === void 0 ? void 0 : _a.getFirstToken().getStr()) === "(";
|
|
53111
|
+
}
|
|
53068
53112
|
}
|
|
53069
53113
|
exports.MethodParameters = MethodParameters;
|
|
53070
53114
|
//# sourceMappingURL=method_parameters.js.map
|
|
@@ -53671,7 +53715,7 @@ class CDSAggregate extends combi_1.Expression {
|
|
|
53671
53715
|
getRunnable() {
|
|
53672
53716
|
const fieldAsType = (0, combi_1.seq)(_1.CDSPrefixedName, "AS", _1.CDSType);
|
|
53673
53717
|
const funcAsType = (0, combi_1.seq)(_1.CDSFunction, "AS", _1.CDSType);
|
|
53674
|
-
const value = (0, combi_1.altPrio)(_1.CDSArithmetics, _1.CDSCast, _1.CDSCase, funcAsType, _1.CDSFunction, fieldAsType, _1.CDSPrefixedName, _1.CDSString, "*");
|
|
53718
|
+
const value = (0, combi_1.altPrio)(_1.CDSArithmetics, _1.CDSArithParen, _1.CDSCast, _1.CDSCase, funcAsType, _1.CDSFunction, fieldAsType, _1.CDSPrefixedName, _1.CDSString, "*");
|
|
53675
53719
|
return (0, combi_1.seq)((0, combi_1.altPrio)("MAX", "MIN", "SUM", "AVG", "COUNT"), "(", (0, combi_1.optPrio)((0, combi_1.altPrio)("DISTINCT", "ALL")), value, (0, combi_1.opt)((0, combi_1.seq)("AS", _1.CDSType)), ")");
|
|
53676
53720
|
}
|
|
53677
53721
|
}
|
|
@@ -53796,9 +53840,10 @@ class CDSAnnotationSimple extends combi_1.Expression {
|
|
|
53796
53840
|
getRunnable() {
|
|
53797
53841
|
const ident = (0, combi_1.regex)(/^[\w_]+$/);
|
|
53798
53842
|
// #(expr) where expr can be: identifier, dotted path, string, or concatenation with +
|
|
53799
|
-
const
|
|
53843
|
+
const funcCall = (0, combi_1.seq)(ident, "(", (0, combi_1.altPrio)(_1.CDSString, cds_prefixed_name_1.CDSPrefixedName, ident), ")");
|
|
53844
|
+
const hashArg = (0, combi_1.altPrio)(_1.CDSString, funcCall, cds_prefixed_name_1.CDSPrefixedName, ident);
|
|
53800
53845
|
const hashExpr = (0, combi_1.seq)(hashArg, (0, combi_1.starPrio)((0, combi_1.seq)("+", hashArg)));
|
|
53801
|
-
const value = (0, combi_1.altPrio)(_1.CDSString, "true", "false", "null", (0, combi_1.seq)("-", (0, combi_1.regex)(/^\d+$/), ".", (0, combi_1.regex)(/^\d+$/)), (0, combi_1.seq)("-", (0, combi_1.regex)(/^\d+$/)), (0, combi_1.seq)((0, combi_1.regex)(/^\d+$/), ".", (0, combi_1.regex)(/^\d+$/)), (0, combi_1.regex)(/^\d+$/), (0, combi_1.seq)("#", "(", hashExpr, ")"), (0, combi_1.regex)(/^#[\w_]+$/));
|
|
53846
|
+
const value = (0, combi_1.altPrio)(_1.CDSString, "true", "false", "null", (0, combi_1.seq)("-", (0, combi_1.regex)(/^\d+$/), ".", (0, combi_1.regex)(/^\d+[eE]$/), (0, combi_1.altPrio)("+", "-"), (0, combi_1.regex)(/^\d+$/)), (0, combi_1.seq)((0, combi_1.regex)(/^\d+$/), ".", (0, combi_1.regex)(/^\d+[eE]$/), (0, combi_1.altPrio)("+", "-"), (0, combi_1.regex)(/^\d+$/)), (0, combi_1.seq)("-", (0, combi_1.regex)(/^\d+$/), ".", (0, combi_1.regex)(/^\d+$/)), (0, combi_1.seq)("-", (0, combi_1.regex)(/^\d+$/)), (0, combi_1.seq)((0, combi_1.regex)(/^\d+$/), ".", (0, combi_1.regex)(/^\d+$/)), (0, combi_1.regex)(/^\d+$/), (0, combi_1.seq)("#", "(", hashExpr, ")"), (0, combi_1.regex)(/^#[\w_]+$/));
|
|
53802
53847
|
return value;
|
|
53803
53848
|
}
|
|
53804
53849
|
}
|
|
@@ -53956,9 +54001,9 @@ class CDSAssociation extends combi_1.Expression {
|
|
|
53956
54001
|
const numericCardinality = (0, combi_1.seq)("[", cardNum, (0, combi_1.optPrio)((0, combi_1.seq)(".", ".", cardNum)), "]");
|
|
53957
54002
|
// Text-based OF form: "association of one to many Target on ..." — text cardinality includes "TO"
|
|
53958
54003
|
const ofTextSide = (0, combi_1.altPrio)((0, combi_1.seq)("EXACT", "ONE"), "ONE", "MANY");
|
|
53959
|
-
const ofTextForm = (0, combi_1.seq)("ASSOCIATION", "OF", ofTextSide, "TO", ofTextSide, _1.CDSRelation, "ON", _1.CDSCondition);
|
|
54004
|
+
const ofTextForm = (0, combi_1.seq)("ASSOCIATION", "OF", ofTextSide, "TO", ofTextSide, _1.CDSRelation, "ON", _1.CDSCondition, (0, combi_1.opt)((0, combi_1.seq)("WITH", "DEFAULT", "FILTER", _1.CDSCondition)));
|
|
53960
54005
|
// Numeric OF form: "association of [0..1] to Target on ..."
|
|
53961
|
-
const ofNumericForm = (0, combi_1.seq)("ASSOCIATION", "OF", numericCardinality, "TO", _1.CDSRelation, "ON", _1.CDSCondition);
|
|
54006
|
+
const ofNumericForm = (0, combi_1.seq)("ASSOCIATION", "OF", numericCardinality, "TO", _1.CDSRelation, "ON", _1.CDSCondition, (0, combi_1.opt)((0, combi_1.seq)("WITH", "DEFAULT", "FILTER", _1.CDSCondition)));
|
|
53962
54007
|
// "association [0..1] to Target as _Alias on condition" — standard form
|
|
53963
54008
|
const parentForm = (0, combi_1.seq)("ASSOCIATION", "TO", "PARENT", _1.CDSRelation);
|
|
53964
54009
|
const standardForm = (0, combi_1.seq)("ASSOCIATION", (0, combi_1.optPrio)(cds_cardinality_1.CDSCardinality), "TO", (0, combi_1.opt)((0, combi_1.altPrio)(textCardinality, "PARENT")), _1.CDSRelation, "ON", _1.CDSCondition, (0, combi_1.opt)((0, combi_1.seq)("WITH", "DEFAULT", "FILTER", _1.CDSCondition)));
|
|
@@ -54016,7 +54061,7 @@ class CDSCase extends combi_1.Expression {
|
|
|
54016
54061
|
// CDSArithmetics is still tried after for arithmetic like (-1)*Amount or (2*A)-B.
|
|
54017
54062
|
const caseParen = (0, combi_1.seq)("(", CDSCase, ")");
|
|
54018
54063
|
const value = (0, combi_1.altPrio)(_1.CDSString, CDSCase, caseParen, _1.CDSArithmetics, _1.CDSCast, _1.CDSAggregate, _1.CDSArithParen, _1.CDSFunction, _1.CDSInteger, _1.CDSPrefixedName);
|
|
54019
|
-
const simple = (0, combi_1.seq)((0, combi_1.altPrio)(_1.CDSArithmetics, _1.CDSArithParen, _1.CDSAggregate, _1.CDSFunction, _1.CDSPrefixedName), (0, combi_1.plusPrio)((0, combi_1.seq)("WHEN", value, "THEN", value)));
|
|
54064
|
+
const simple = (0, combi_1.seq)((0, combi_1.altPrio)(_1.CDSString, _1.CDSCast, _1.CDSArithmetics, _1.CDSArithParen, _1.CDSAggregate, _1.CDSFunction, _1.CDSPrefixedName), (0, combi_1.plusPrio)((0, combi_1.seq)("WHEN", value, "THEN", value)));
|
|
54020
54065
|
const complex = (0, combi_1.plusPrio)((0, combi_1.seq)("WHEN", _1.CDSCondition, "THEN", value));
|
|
54021
54066
|
return (0, combi_1.seq)("CASE", (0, combi_1.altPrio)(complex, simple), (0, combi_1.optPrio)((0, combi_1.seq)("ELSE", value)), "END");
|
|
54022
54067
|
}
|
|
@@ -54041,7 +54086,7 @@ const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node
|
|
|
54041
54086
|
class CDSCast extends combi_1.Expression {
|
|
54042
54087
|
getRunnable() {
|
|
54043
54088
|
// CDSArithmetics before CDSFunction/CDSAggregate: handles function()*n, cast()*n, sum()*n patterns
|
|
54044
|
-
const first = (0, combi_1.altPrio)(_1.CDSArithmetics, _1.CDSFunction, _1.CDSArithParen, _1.CDSCase, _1.CDSAggregate, CDSCast, _1.
|
|
54089
|
+
const first = (0, combi_1.altPrio)(_1.CDSArithmetics, _1.CDSFunction, _1.CDSArithParen, _1.CDSCase, _1.CDSAggregate, CDSCast, _1.CDSInteger, _1.CDSString, _1.CDSPrefixedName);
|
|
54045
54090
|
return (0, combi_1.seq)("CAST", "(", first, "AS", _1.CDSType, (0, combi_1.optPrio)((0, combi_1.seq)("PRESERVING", "TYPE")), ")");
|
|
54046
54091
|
}
|
|
54047
54092
|
}
|
|
@@ -54066,8 +54111,9 @@ const cds_cardinality_1 = __webpack_require__(/*! ./cds_cardinality */ "./node_m
|
|
|
54066
54111
|
class CDSComposition extends combi_1.Expression {
|
|
54067
54112
|
getRunnable() {
|
|
54068
54113
|
const num = (0, combi_1.altPrio)("ONE", "MANY");
|
|
54069
|
-
|
|
54070
|
-
|
|
54114
|
+
const exactNum = (0, combi_1.seq)((0, combi_1.opt)("EXACT"), num);
|
|
54115
|
+
// Text cardinality after OF: "of exact one to exact one", "of exact one to many", "of one to many", or bare "of many" / "of one"
|
|
54116
|
+
const textCardinality = (0, combi_1.altPrio)((0, combi_1.seq)(exactNum, "TO", exactNum), (0, combi_1.seq)((0, combi_1.opt)("EXACT"), num));
|
|
54071
54117
|
// Numeric cardinality [n..m] before OF: any non-negative integer or *
|
|
54072
54118
|
const cardNum = (0, combi_1.altPrio)((0, combi_1.regex)(/^\d+$/), "*");
|
|
54073
54119
|
const numericCardinality = (0, combi_1.seq)("[", cardNum, (0, combi_1.optPrio)((0, combi_1.seq)(".", ".", cardNum)), "]");
|
|
@@ -54096,7 +54142,7 @@ class CDSCondition extends combi_1.Expression {
|
|
|
54096
54142
|
getRunnable() {
|
|
54097
54143
|
// CDSArithmetics before CDSCast/CDSFunction so cast(A)-cast(B) is handled as arithmetic, not two separate casts
|
|
54098
54144
|
// CDSCase allows nested case expressions on either side of a comparison
|
|
54099
|
-
const left = (0, combi_1.altPrio)(_1.CDSString, _1.CDSArithmetics, _1.CDSCast, _1.CDSFunction, _1.CDSAggregate, _1.CDSCase, _1.CDSArithParen, _1.CDSPrefixedName);
|
|
54145
|
+
const left = (0, combi_1.altPrio)(_1.CDSString, _1.CDSArithmetics, _1.CDSCast, _1.CDSFunction, _1.CDSAggregate, _1.CDSCase, _1.CDSArithParen, cds_integer_1.CDSInteger, _1.CDSPrefixedName);
|
|
54100
54146
|
const nonLikeOperators = (0, combi_1.altPrio)("=", (0, combi_1.seq)("!", "="), (0, combi_1.seq)("<", ">"), (0, combi_1.seq)(">", "="), (0, combi_1.seq)("<", "="), "<", ">");
|
|
54101
54147
|
const likeOperators = (0, combi_1.altPrio)("LIKE", "NOT LIKE");
|
|
54102
54148
|
// Right side of comparison: simple values first, then parenthesized, then full arithmetic last.
|
|
@@ -54160,7 +54206,7 @@ class CDSDefineCustom extends combi_1.Expression {
|
|
|
54160
54206
|
getRunnable() {
|
|
54161
54207
|
const field = (0, combi_1.seq)((0, combi_1.optPrio)((0, combi_1.str)("KEY")), cds_name_1.CDSName, ":", cds_type_1.CDSType, ";");
|
|
54162
54208
|
const compsiOrAssoci = (0, combi_1.seq)(cds_name_1.CDSName, ":", (0, combi_1.alt)(_1.CDSComposition, _1.CDSAssociation), ";");
|
|
54163
|
-
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.opt)("DEFINE"), (0, combi_1.opt)("ROOT"), (0, combi_1.str)("CUSTOM ENTITY"), cds_name_1.CDSName, (0, combi_1.opt)(_1.CDSWithParameters), (0, combi_1.str)("{"), (0, combi_1.plus)((0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.alt)(field, compsiOrAssoci))), (0, combi_1.str)("}"), (0, combi_1.opt)(";"));
|
|
54209
|
+
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.opt)((0, combi_1.str)("DEFINE")), (0, combi_1.opt)((0, combi_1.str)("ROOT")), (0, combi_1.str)("CUSTOM ENTITY"), cds_name_1.CDSName, (0, combi_1.opt)(_1.CDSWithParameters), (0, combi_1.str)("{"), (0, combi_1.plus)((0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.alt)(field, compsiOrAssoci))), (0, combi_1.str)("}"), (0, combi_1.opt)(";"));
|
|
54164
54210
|
}
|
|
54165
54211
|
}
|
|
54166
54212
|
exports.CDSDefineCustom = CDSDefineCustom;
|
|
@@ -54182,7 +54228,7 @@ const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src
|
|
|
54182
54228
|
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54183
54229
|
class CDSDefineExternalEntity extends combi_1.Expression {
|
|
54184
54230
|
getRunnable() {
|
|
54185
|
-
const extNameValue = (0, combi_1.alt)(_1.CDSName, (0, combi_1.regex)(/^"[^"]*"$/));
|
|
54231
|
+
const extNameValue = (0, combi_1.alt)(_1.CDSName, (0, combi_1.regex)(/^"(?:[^"]|"")*"$/));
|
|
54186
54232
|
const externalName = (0, combi_1.seq)("EXTERNAL", "NAME", extNameValue);
|
|
54187
54233
|
const nullability = (0, combi_1.optPrio)((0, combi_1.alt)("NOT NULL", "NULL"));
|
|
54188
54234
|
const field = (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.optPrio)((0, combi_1.str)("KEY")), _1.CDSName, ":", _1.CDSType, nullability, (0, combi_1.optPrio)(externalName), ";");
|
|
@@ -54190,7 +54236,7 @@ class CDSDefineExternalEntity extends combi_1.Expression {
|
|
|
54190
54236
|
const body = (0, combi_1.plus)((0, combi_1.alt)(field, assocOrComp));
|
|
54191
54237
|
const externalEntity = (0, combi_1.seq)((0, combi_1.opt)("WRITABLE"), "EXTERNAL", "ENTITY", _1.CDSName, (0, combi_1.opt)(externalName), (0, combi_1.opt)(_1.CDSWithParameters));
|
|
54192
54238
|
const staticEntity = (0, combi_1.seq)("STATIC", "ENTITY", _1.CDSName, (0, combi_1.opt)(externalName));
|
|
54193
|
-
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.opt)("DEFINE"), (0, combi_1.alt)(externalEntity, staticEntity), (0, combi_1.str)("{"), body, (0, combi_1.str)("}"), (0, combi_1.opt)((0, combi_1.seq)("WITH", "FEDERATED", "DATA", (0, combi_1.optPrio)((0, combi_1.alt)((0, combi_1.seq)("PROVIDED", "AT", "RUNTIME"), (0, combi_1.seq)("PROVIDED", "BY", _1.CDSName))))), (0, combi_1.opt)(";"));
|
|
54239
|
+
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.opt)("DEFINE"), (0, combi_1.opt)("ROOT"), (0, combi_1.alt)(externalEntity, staticEntity), (0, combi_1.str)("{"), body, (0, combi_1.str)("}"), (0, combi_1.opt)((0, combi_1.seq)("WITH", "FEDERATED", "DATA", (0, combi_1.optPrio)((0, combi_1.alt)((0, combi_1.seq)("PROVIDED", "AT", "RUNTIME"), (0, combi_1.seq)("PROVIDED", "BY", _1.CDSName))), (0, combi_1.optPrio)((0, combi_1.seq)("ON", "UNLINKED", (0, combi_1.altPrio)("FAIL", "IGNORE"))))), (0, combi_1.opt)(";"));
|
|
54194
54240
|
}
|
|
54195
54241
|
}
|
|
54196
54242
|
exports.CDSDefineExternalEntity = CDSDefineExternalEntity;
|
|
@@ -54218,10 +54264,10 @@ class CDSDefineHierarchy extends combi_1.Expression {
|
|
|
54218
54264
|
const siblingsOrder = (0, combi_1.seq)("SIBLINGS", "ORDER", "BY", siblingsOrderField, (0, combi_1.star)((0, combi_1.seq)(",", siblingsOrderField)));
|
|
54219
54265
|
const directory = (0, combi_1.seq)("DIRECTORY", _1.CDSName, "FILTER", "BY", _1.CDSCondition);
|
|
54220
54266
|
// DATE PERIOD: period from <field> to <field> [valid from :p to :p]
|
|
54221
|
-
const datePeriod = (0, combi_1.seq)("PERIOD", "FROM", _1.CDSName, "TO", _1.CDSName, (0, combi_1.opt)((0, combi_1.seq)("VALID", "FROM", _1.CDSPrefixedName, "TO", _1.CDSPrefixedName)));
|
|
54267
|
+
const datePeriod = (0, combi_1.seq)("PERIOD", "FROM", _1.CDSName, "TO", _1.CDSName, (0, combi_1.opt)((0, combi_1.seq)("VALID", "FROM", (0, combi_1.altPrio)(_1.CDSString, _1.CDSPrefixedName), "TO", (0, combi_1.altPrio)(_1.CDSString, _1.CDSPrefixedName))));
|
|
54222
54268
|
const depthValue = (0, combi_1.altPrio)(_1.CDSString, _1.CDSInteger, _1.CDSPrefixedName);
|
|
54223
54269
|
const loadMode = (0, combi_1.altPrio)("BULK", "INCREMENTAL", _1.CDSPrefixedName);
|
|
54224
|
-
const hierarchyBody = (0, combi_1.seq)("SOURCE", _1.CDSName, (0, combi_1.opt)(_1.CDSParametersSelect), "CHILD", "TO", "PARENT", "ASSOCIATION", _1.CDSName, (0, combi_1.opt)(directory), (0, combi_1.opt)(datePeriod), (0, combi_1.opt)((0, combi_1.seq)("START", "WHERE", _1.CDSCondition)), (0, combi_1.opt)(siblingsOrder), (0, combi_1.opt)((0, combi_1.seq)("
|
|
54270
|
+
const hierarchyBody = (0, combi_1.seq)("SOURCE", _1.CDSName, (0, combi_1.opt)(_1.CDSParametersSelect), "CHILD", "TO", "PARENT", "ASSOCIATION", _1.CDSName, (0, combi_1.opt)((0, combi_1.altPrio)((0, combi_1.seq)((0, combi_1.opt)(directory), datePeriod, (0, combi_1.opt)(directory)), (0, combi_1.seq)(datePeriod, (0, combi_1.opt)(directory)), directory)), (0, combi_1.opt)((0, combi_1.seq)("START", "WHERE", _1.CDSCondition)), (0, combi_1.opt)(siblingsOrder), (0, combi_1.opt)((0, combi_1.seq)("DEPTH", depthValue)), (0, combi_1.opt)((0, combi_1.seq)("NODETYPE", _1.CDSName)), (0, combi_1.opt)((0, combi_1.seq)("LOAD", loadMode)), (0, combi_1.opt)((0, combi_1.seq)("MULTIPLE", "PARENTS", (0, combi_1.altPrio)("NOT ALLOWED", "ALLOWED", (0, combi_1.seq)("LEAVES", (0, combi_1.optPrio)("ONLY"))))), (0, combi_1.opt)((0, combi_1.seq)("ORPHANS", (0, combi_1.altPrio)("IGNORE", "ROOT", "ERROR"))), (0, combi_1.opt)((0, combi_1.seq)("CYCLES", (0, combi_1.altPrio)("BREAKUP", "ERROR"))), (0, combi_1.opt)((0, combi_1.seq)("GENERATE", "SPANTREE")), (0, combi_1.opt)((0, combi_1.seq)("CACHE", (0, combi_1.altPrio)("ON", "OFF", "FORCE"))));
|
|
54225
54271
|
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.opt)("DEFINE"), "HIERARCHY", _1.CDSName, (0, combi_1.opt)(_1.CDSWithParameters), "AS", "PARENT", "CHILD", "HIERARCHY", "(", hierarchyBody, ")", "{", (0, combi_1.seq)(field, (0, combi_1.star)((0, combi_1.seq)(",", field))), "}", (0, combi_1.opt)(";"));
|
|
54226
54272
|
}
|
|
54227
54273
|
}
|
|
@@ -54245,9 +54291,14 @@ const __1 = __webpack_require__(/*! ../.. */ "./node_modules/@abaplint/core/buil
|
|
|
54245
54291
|
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54246
54292
|
class CDSDefineProjection extends combi_1.Expression {
|
|
54247
54293
|
getRunnable() {
|
|
54248
|
-
|
|
54249
|
-
const
|
|
54250
|
-
|
|
54294
|
+
const redefineCard = (0, combi_1.altPrio)("EXACT ONE TO EXACT ONE", "EXACT ONE TO MANY", "EXACT ONE TO ONE", "MANY TO EXACT ONE", "MANY TO MANY", "MANY TO ONE", "ONE TO EXACT ONE", "ONE TO MANY", "ONE TO ONE", "TO EXACT ONE", "TO ONE", "TO MANY", _1.CDSInteger, "*");
|
|
54295
|
+
const redefineAssocFilter = (0, combi_1.seq)("[", (0, combi_1.optPrio)((0, combi_1.seq)(redefineCard, ":")), _1.CDSCondition, "]");
|
|
54296
|
+
const redefineAssoc = (0, combi_1.seq)("REDEFINE", "ASSOCIATION", _1.CDSPrefixedName, (0, combi_1.optPrio)(redefineAssocFilter), (0, combi_1.opt)(_1.CDSAs), "REDIRECTED", "TO", (0, combi_1.optPrio)((0, combi_1.altPrio)((0, combi_1.seq)("COMPOSITION", "CHILD"), "PARENT")), _1.CDSName);
|
|
54297
|
+
const typedLiteralVal = (0, combi_1.seq)(_1.CDSType, _1.CDSString);
|
|
54298
|
+
const aspectValue = (0, combi_1.altPrio)(typedLiteralVal, _1.CDSString, _1.CDSPrefixedName);
|
|
54299
|
+
const aspectBinding = (0, combi_1.seq)(_1.CDSPrefixedName, "=", ">", aspectValue);
|
|
54300
|
+
const bindAspect = (0, combi_1.seq)("BIND", "ASPECT", _1.CDSName, "(", aspectBinding, (0, combi_1.starPrio)((0, combi_1.seq)(",", aspectBinding)), ")", (0, combi_1.optPrio)((0, combi_1.seq)("AS", _1.CDSName)));
|
|
54301
|
+
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.opt)("DEFINE"), (0, combi_1.opt)("TRANSIENT"), (0, combi_1.opt)("ROOT"), "VIEW", (0, combi_1.ver)(__1.Release.v755, (0, combi_1.opt)("ENTITY")), _1.CDSName, (0, combi_1.opt)(_1.CDSProviderContract), (0, combi_1.opt)(_1.CDSWithParameters), "AS PROJECTION ON", _1.CDSName, (0, combi_1.opt)(_1.CDSParametersSelect), (0, combi_1.opt)(_1.CDSAs), (0, combi_1.star)((0, combi_1.altPrio)(_1.CDSAssociation, redefineAssoc)), (0, combi_1.starPrio)(bindAspect), (0, combi_1.str)("{"), (0, combi_1.seq)(_1.CDSElement, (0, combi_1.star)((0, combi_1.seq)(",", _1.CDSElement)), (0, combi_1.opt)(",")), (0, combi_1.str)("}"), (0, combi_1.opt)(_1.CDSWhere), (0, combi_1.opt)(";"));
|
|
54251
54302
|
}
|
|
54252
54303
|
}
|
|
54253
54304
|
exports.CDSDefineProjection = CDSDefineProjection;
|
|
@@ -54327,9 +54378,9 @@ const cds_with_parameters_1 = __webpack_require__(/*! ./cds_with_parameters */ "
|
|
|
54327
54378
|
class CDSDefineView extends combi_1.Expression {
|
|
54328
54379
|
getRunnable() {
|
|
54329
54380
|
const columnAlias = (0, combi_1.seq)("(", cds_name_1.CDSName, (0, combi_1.star)((0, combi_1.seq)(",", cds_name_1.CDSName)), ")");
|
|
54330
|
-
const
|
|
54331
|
-
const
|
|
54332
|
-
const topLevelSelect = (0, combi_1.altPrio)((0, combi_1.seq)(
|
|
54381
|
+
const unionBranch = (0, combi_1.altPrio)(_1.CDSParenSelect, cds_select_1.CDSSelect);
|
|
54382
|
+
const unionOps = (0, combi_1.star)((0, combi_1.altPrio)((0, combi_1.seq)("UNION", (0, combi_1.opt)("ALL"), unionBranch), (0, combi_1.seq)("EXCEPT", unionBranch), (0, combi_1.seq)("INTERSECT", unionBranch)));
|
|
54383
|
+
const topLevelSelect = (0, combi_1.altPrio)((0, combi_1.seq)(_1.CDSParenSelect, unionOps), (0, combi_1.seq)(cds_select_1.CDSSelect, unionOps));
|
|
54333
54384
|
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.opt)("DEFINE"), (0, combi_1.opt)("ROOT"), (0, combi_1.opt)("WRITABLE"), "VIEW", (0, combi_1.ver)(__1.Release.v755, (0, combi_1.opt)("ENTITY")), cds_name_1.CDSName, (0, combi_1.opt)(columnAlias), (0, combi_1.opt)(cds_with_parameters_1.CDSWithParameters), "AS", topLevelSelect, (0, combi_1.opt)((0, combi_1.seq)("WITH", "HIERARCHY", cds_name_1.CDSName)), (0, combi_1.opt)(";"));
|
|
54334
54385
|
}
|
|
54335
54386
|
}
|
|
@@ -54354,16 +54405,16 @@ const cds_as_1 = __webpack_require__(/*! ./cds_as */ "./node_modules/@abaplint/c
|
|
|
54354
54405
|
const cds_cast_1 = __webpack_require__(/*! ./cds_cast */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_cast.js");
|
|
54355
54406
|
class CDSElement extends combi_1.Expression {
|
|
54356
54407
|
getRunnable() {
|
|
54357
|
-
const redirected = (0, combi_1.seq)(": REDIRECTED TO", (0, combi_1.optPrio)((0, combi_1.altPrio)("PARENT", "COMPOSITION CHILD")), _1.CDSName);
|
|
54408
|
+
const redirected = (0, combi_1.seq)(": REDIRECTED TO", (0, combi_1.optPrio)((0, combi_1.altPrio)("PARENT", "COMPOSITION CHILD")), _1.CDSName, (0, combi_1.optPrio)(_1.CDSParametersSelect));
|
|
54358
54409
|
const colonThing = (0, combi_1.seq)(":", (0, combi_1.altPrio)(_1.CDSType, _1.CDSName, "LOCALIZED"));
|
|
54359
54410
|
const extensionWildcard = (0, combi_1.seq)("$extension", ".", "*");
|
|
54360
54411
|
const excludingNames = (0, combi_1.seq)(_1.CDSName, (0, combi_1.starPrio)((0, combi_1.seq)(",", _1.CDSName)));
|
|
54361
54412
|
const excluding = (0, combi_1.seq)("EXCLUDING", "{", excludingNames, "}");
|
|
54362
|
-
const includeElement = (0, combi_1.seq)("INCLUDE", _1.CDSPrefixedName, (0, combi_1.optPrio)(excluding), (0, combi_1.optPrio)("SIGNATURE ONLY"));
|
|
54413
|
+
const includeElement = (0, combi_1.seq)("INCLUDE", (0, combi_1.stopBefore1)("AS", "KEY", "VIRTUAL", "}"), _1.CDSPrefixedName, (0, combi_1.optPrio)((0, combi_1.altPrio)((0, combi_1.seq)("SIGNATURE ONLY", (0, combi_1.optPrio)(excluding)), (0, combi_1.seq)(excluding, (0, combi_1.optPrio)("SIGNATURE ONLY")))));
|
|
54363
54414
|
const typedVirtual = (0, combi_1.seq)("VIRTUAL", _1.CDSName, ":", _1.CDSType);
|
|
54364
54415
|
const pathSegment = (0, combi_1.seq)(".", (0, combi_1.altPrio)(_1.CDSString, _1.CDSName, "*"), (0, combi_1.optPrio)((0, combi_1.altPrio)(_1.CDSParametersSelect, _1.CDSParameters)));
|
|
54365
54416
|
const funcWithPath = (0, combi_1.seq)(_1.CDSFunction, (0, combi_1.plusPrio)(pathSegment));
|
|
54366
|
-
const body = (0, combi_1.altPrio)(extensionWildcard, includeElement, _1.CDSArithmetics, _1.CDSAggregate, _1.CDSString, _1.CDSArithParen, funcWithPath, _1.CDSFunction, cds_cast_1.CDSCast, _1.CDSCase, (0, combi_1.seq)("(", _1.CDSCase, ")"), (0, combi_1.seq)(_1.CDSPrefixedName, (0, combi_1.optPrio)(cds_as_1.CDSAs), (0, combi_1.optPrio)((0, combi_1.altPrio)(redirected, colonThing)))
|
|
54417
|
+
const body = (0, combi_1.altPrio)(extensionWildcard, includeElement, _1.CDSArithmetics, _1.CDSAggregate, _1.CDSString, _1.CDSArithParen, funcWithPath, _1.CDSFunction, cds_cast_1.CDSCast, _1.CDSCase, (0, combi_1.seq)("(", _1.CDSCase, ")"), _1.CDSInteger, (0, combi_1.seq)(_1.CDSPrefixedName, (0, combi_1.optPrio)(cds_as_1.CDSAs), (0, combi_1.optPrio)((0, combi_1.altPrio)(redirected, colonThing))));
|
|
54367
54418
|
const elementBody = (0, combi_1.altPrio)(typedVirtual, (0, combi_1.seq)((0, combi_1.altPrio)("KEY", "VIRTUAL"), body), body);
|
|
54368
54419
|
return (0, combi_1.seq)((0, combi_1.starPrio)(_1.CDSAnnotation), elementBody, (0, combi_1.optPrio)(cds_as_1.CDSAs), (0, combi_1.starPrio)(_1.CDSAnnotation));
|
|
54369
54420
|
}
|
|
@@ -54389,10 +54440,20 @@ class CDSExtendView extends combi_1.Expression {
|
|
|
54389
54440
|
getRunnable() {
|
|
54390
54441
|
const namedot = (0, combi_1.seq)(_1.CDSName, (0, combi_1.optPrio)((0, combi_1.seq)(".", _1.CDSName)), (0, combi_1.optPrio)(_1.CDSAs));
|
|
54391
54442
|
const valueNested = (0, combi_1.seq)("{", namedot, (0, combi_1.star)((0, combi_1.seq)(",", namedot)), "}");
|
|
54392
|
-
const
|
|
54443
|
+
const redefineCard = (0, combi_1.altPrio)("EXACT ONE TO EXACT ONE", "EXACT ONE TO MANY", "EXACT ONE TO ONE", "MANY TO EXACT ONE", "MANY TO MANY", "MANY TO ONE", "ONE TO EXACT ONE", "ONE TO MANY", "ONE TO ONE", "TO EXACT ONE", "TO ONE", "TO MANY", _1.CDSInteger, "*");
|
|
54444
|
+
const redefineAssocFilter = (0, combi_1.seq)("[", (0, combi_1.optPrio)((0, combi_1.seq)(redefineCard, ":")), _1.CDSCondition, "]");
|
|
54445
|
+
const redefineAssoc = (0, combi_1.seq)("REDEFINE", "ASSOCIATION", _1.CDSPrefixedName, (0, combi_1.optPrio)(redefineAssocFilter), (0, combi_1.opt)(_1.CDSAs), "REDIRECTED", "TO", (0, combi_1.optPrio)((0, combi_1.altPrio)((0, combi_1.seq)("COMPOSITION", "CHILD"), "PARENT")), _1.CDSName);
|
|
54393
54446
|
const elementList = (0, combi_1.seq)(_1.CDSElement, (0, combi_1.star)((0, combi_1.seq)(",", _1.CDSElement)), (0, combi_1.opt)(","));
|
|
54394
54447
|
const elementNested = (0, combi_1.seq)("{", (0, combi_1.altPrio)("*", elementList), "}");
|
|
54395
|
-
const
|
|
54448
|
+
const unionElemList = (0, combi_1.seq)(_1.CDSElement, (0, combi_1.star)((0, combi_1.seq)(",", _1.CDSElement)), (0, combi_1.opt)(","));
|
|
54449
|
+
const unionBranchBody = (0, combi_1.seq)((0, combi_1.star)((0, combi_1.altPrio)(_1.CDSAssociation, _1.CDSComposition)), "{", (0, combi_1.altPrio)("*", unionElemList), "}", (0, combi_1.optPrio)(_1.CDSGroupBy));
|
|
54450
|
+
const parenUnionBody = (0, combi_1.seq)("(", (0, combi_1.star)((0, combi_1.altPrio)(_1.CDSAssociation, _1.CDSComposition)), "{", (0, combi_1.seq)(_1.CDSElement, (0, combi_1.star)((0, combi_1.seq)(",", _1.CDSElement)), (0, combi_1.opt)(",")), "}", (0, combi_1.star)((0, combi_1.seq)("UNION", (0, combi_1.opt)("ALL"), (0, combi_1.star)((0, combi_1.altPrio)(_1.CDSAssociation, _1.CDSComposition)), "{", (0, combi_1.seq)(_1.CDSElement, (0, combi_1.star)((0, combi_1.seq)(",", _1.CDSElement)), (0, combi_1.opt)(",")), "}")), ")");
|
|
54451
|
+
const unionSuffix = (0, combi_1.seq)((0, combi_1.optPrio)(_1.CDSGroupBy), (0, combi_1.star)((0, combi_1.seq)("UNION", (0, combi_1.opt)("ALL"), (0, combi_1.altPrio)(parenUnionBody, unionBranchBody))));
|
|
54452
|
+
const typedLiteralVal = (0, combi_1.seq)(_1.CDSType, _1.CDSString);
|
|
54453
|
+
const aspectValue = (0, combi_1.altPrio)(typedLiteralVal, _1.CDSString, _1.CDSPrefixedName);
|
|
54454
|
+
const aspectBinding = (0, combi_1.seq)(_1.CDSPrefixedName, "=", ">", aspectValue);
|
|
54455
|
+
const bindAspect = (0, combi_1.seq)("BIND", "ASPECT", _1.CDSName, "(", aspectBinding, (0, combi_1.starPrio)((0, combi_1.seq)(",", aspectBinding)), ")", (0, combi_1.optPrio)((0, combi_1.seq)("AS", _1.CDSName)));
|
|
54456
|
+
const extendView = (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.str)("EXTEND VIEW"), (0, combi_1.opt)((0, combi_1.str)("ENTITY")), _1.CDSName, (0, combi_1.str)("WITH"), (0, combi_1.opt)(_1.CDSName), (0, combi_1.star)(redefineAssoc), (0, combi_1.star)((0, combi_1.altPrio)(_1.CDSAssociation, _1.CDSComposition)), (0, combi_1.starPrio)(bindAspect), (0, combi_1.altPrio)(parenUnionBody, elementNested, valueNested), unionSuffix, (0, combi_1.opt)(";"));
|
|
54396
54457
|
const field = (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.optPrio)((0, combi_1.str)("KEY")), _1.CDSName, ":", _1.CDSType, ";");
|
|
54397
54458
|
const assocOrComp = (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), _1.CDSName, ":", (0, combi_1.alt)(_1.CDSComposition, _1.CDSAssociation), ";");
|
|
54398
54459
|
const entityBody = (0, combi_1.seq)("{", (0, combi_1.plus)((0, combi_1.alt)(field, assocOrComp)), "}");
|
|
@@ -54472,6 +54533,7 @@ class CDSFunction extends combi_1.Expression {
|
|
|
54472
54533
|
const occurrencesRegexpr = (0, combi_1.seq)("OCCURRENCES_REGEXPR", "(", conversionInputs, ")");
|
|
54473
54534
|
const substrRegexpr = (0, combi_1.seq)("SUBSTR_REGEXPR", "(", conversionInputs, ")");
|
|
54474
54535
|
const locateRegexpr = (0, combi_1.seq)("LOCATE_REGEXPR", "(", conversionInputs, ")");
|
|
54536
|
+
const sqrt = (0, combi_1.seq)("SQRT", "(", _1.CDSFunctionInput, ")");
|
|
54475
54537
|
const extFuncName = (0, combi_1.regex)(/^[A-Z][A-Z0-9]*(?:_[A-Z0-9]+)+$/i);
|
|
54476
54538
|
const genericArgs = (0, combi_1.seq)(_1.CDSFunctionInput, (0, combi_1.starPrio)((0, combi_1.seq)(",", _1.CDSFunctionInput)));
|
|
54477
54539
|
const namedArgValue = (0, combi_1.altPrio)((0, combi_1.seq)("INTERVAL", _1.CDSFunctionInput, _1.CDSName), _1.CDSFunctionInput, _1.CDSName);
|
|
@@ -54479,7 +54541,7 @@ class CDSFunction extends combi_1.Expression {
|
|
|
54479
54541
|
const namedArgColon = (0, combi_1.seq)(_1.CDSName, ":", namedArgValue);
|
|
54480
54542
|
const namedArgs = (0, combi_1.seq)((0, combi_1.altPrio)(namedArgArrow, namedArgColon), (0, combi_1.starPrio)((0, combi_1.seq)(",", (0, combi_1.altPrio)(namedArgArrow, namedArgColon))));
|
|
54481
54543
|
const genericFunc = (0, combi_1.seq)(extFuncName, "(", (0, combi_1.optPrio)((0, combi_1.altPrio)(namedArgs, genericArgs)), ")");
|
|
54482
|
-
return (0, combi_1.altPrio)(substring, coalesce, tstmp_to_dats, concat, tstmp_to_tims, upper, lower, abs, ceil, floor, round, div, division, concat_with_space, dats_is_valid, tims_is_valid, dats_days_between, tstmp_add_seconds, tstmp_seconds_between, tstmp_current_utctimestamp, tstmp_is_valid, utcl_current, abap_system_timezone, abap_user_timezone, bintohex, hextobin, dats_add_days, dats_add_months, tstmp_to_dst, dats_tims_to_tstmp, mod, left, right, lpad, rpad, instr, length, ltrim, rtrim, replace, unitConversion, currencyConversion, decimalShift, fltp_to_dec, ratioOf, replaceRegexpr, matchesRegexpr, occurrencesRegexpr, substrRegexpr, locateRegexpr, curr_to_decfloat_amount, genericFunc);
|
|
54544
|
+
return (0, combi_1.altPrio)(substring, coalesce, tstmp_to_dats, concat, tstmp_to_tims, upper, lower, abs, ceil, floor, round, div, division, concat_with_space, dats_is_valid, tims_is_valid, dats_days_between, tstmp_add_seconds, tstmp_seconds_between, tstmp_current_utctimestamp, tstmp_is_valid, utcl_current, abap_system_timezone, abap_user_timezone, bintohex, hextobin, dats_add_days, dats_add_months, tstmp_to_dst, dats_tims_to_tstmp, mod, left, right, lpad, rpad, instr, length, ltrim, rtrim, replace, unitConversion, currencyConversion, decimalShift, fltp_to_dec, ratioOf, replaceRegexpr, matchesRegexpr, occurrencesRegexpr, substrRegexpr, locateRegexpr, curr_to_decfloat_amount, sqrt, genericFunc);
|
|
54483
54545
|
}
|
|
54484
54546
|
}
|
|
54485
54547
|
exports.CDSFunction = CDSFunction;
|
|
@@ -54501,8 +54563,9 @@ const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src
|
|
|
54501
54563
|
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54502
54564
|
class CDSFunctionInput extends combi_1.Expression {
|
|
54503
54565
|
getRunnable() {
|
|
54504
|
-
const
|
|
54505
|
-
|
|
54566
|
+
const positional = (0, combi_1.altPrio)(_1.CDSArithmetics, _1.CDSArithParen, _1.CDSAggregate, _1.CDSCast, _1.CDSFunction, _1.CDSCase, _1.CDSString, _1.CDSPrefixedName, _1.CDSInteger);
|
|
54567
|
+
const named = (0, combi_1.seq)(_1.CDSName, "=", ">", positional);
|
|
54568
|
+
return (0, combi_1.altPrio)(named, positional);
|
|
54506
54569
|
}
|
|
54507
54570
|
}
|
|
54508
54571
|
exports.CDSFunctionInput = CDSFunctionInput;
|
|
@@ -54631,10 +54694,14 @@ exports.CDSJoin = CDSJoin;
|
|
|
54631
54694
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
54632
54695
|
exports.CDSName = void 0;
|
|
54633
54696
|
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54697
|
+
const KEYWORDS = ["AS", "ON", "WHERE", "WITH", "UNION", "GROUP", "HAVING",
|
|
54698
|
+
"AND", "OR", "BETWEEN", "LIKE", "IN", "EXISTS",
|
|
54699
|
+
"WHEN", "THEN", "ELSE", "END", "CASE", "CAST"];
|
|
54634
54700
|
class CDSName extends combi_1.Expression {
|
|
54635
54701
|
getRunnable() {
|
|
54636
|
-
const
|
|
54637
|
-
|
|
54702
|
+
const word = (0, combi_1.regex)(/^\$?#?[\w_]+$/);
|
|
54703
|
+
const slashName = (0, combi_1.seq)("/", (0, combi_1.regex)(/^[\w]+$/), "/", (0, combi_1.stopBefore1)(...KEYWORDS), (0, combi_1.regex)(/^[\w_]+$/));
|
|
54704
|
+
return (0, combi_1.altPrio)((0, combi_1.regex)(/^"(?:[^"]|"")*"$/), (0, combi_1.seq)((0, combi_1.optPrio)(":"), slashName), (0, combi_1.seq)((0, combi_1.optPrio)(":"), word));
|
|
54638
54705
|
}
|
|
54639
54706
|
}
|
|
54640
54707
|
exports.CDSName = CDSName;
|
|
@@ -54681,7 +54748,8 @@ const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node
|
|
|
54681
54748
|
class CDSParametersSelect extends combi_1.Expression {
|
|
54682
54749
|
getRunnable() {
|
|
54683
54750
|
const name = (0, combi_1.seq)(_1.CDSName, (0, combi_1.opt)((0, combi_1.seq)(".", _1.CDSName)));
|
|
54684
|
-
const
|
|
54751
|
+
const typedLiteral = (0, combi_1.seq)(_1.CDSType, _1.CDSString);
|
|
54752
|
+
const value = (0, combi_1.altPrio)(typedLiteral, _1.CDSInteger, name, _1.CDSString);
|
|
54685
54753
|
const colonPair = (0, combi_1.seq)(name, ":", value, (0, combi_1.optPrio)("DEFAULT"));
|
|
54686
54754
|
const arrowPair = (0, combi_1.seq)(name, "=", ">", value);
|
|
54687
54755
|
const nameValue = (0, combi_1.altPrio)(colonPair, arrowPair);
|
|
@@ -54693,6 +54761,30 @@ exports.CDSParametersSelect = CDSParametersSelect;
|
|
|
54693
54761
|
|
|
54694
54762
|
/***/ },
|
|
54695
54763
|
|
|
54764
|
+
/***/ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_paren_select.js"
|
|
54765
|
+
/*!***********************************************************************************!*\
|
|
54766
|
+
!*** ./node_modules/@abaplint/core/build/src/cds/expressions/cds_paren_select.js ***!
|
|
54767
|
+
\***********************************************************************************/
|
|
54768
|
+
(__unused_webpack_module, exports, __webpack_require__) {
|
|
54769
|
+
|
|
54770
|
+
"use strict";
|
|
54771
|
+
|
|
54772
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
54773
|
+
exports.CDSParenSelect = void 0;
|
|
54774
|
+
const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src/cds/expressions/index.js");
|
|
54775
|
+
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54776
|
+
class CDSParenSelect extends combi_1.Expression {
|
|
54777
|
+
getRunnable() {
|
|
54778
|
+
const unionBranch = (0, combi_1.altPrio)(CDSParenSelect, _1.CDSSelect);
|
|
54779
|
+
const unionOps = (0, combi_1.star)((0, combi_1.altPrio)((0, combi_1.seq)("UNION", (0, combi_1.opt)("ALL"), unionBranch), (0, combi_1.seq)("EXCEPT", unionBranch), (0, combi_1.seq)("INTERSECT", unionBranch)));
|
|
54780
|
+
return (0, combi_1.seq)("(", (0, combi_1.altPrio)((0, combi_1.seq)(CDSParenSelect, unionOps), (0, combi_1.seq)(_1.CDSSelect, unionOps)), ")");
|
|
54781
|
+
}
|
|
54782
|
+
}
|
|
54783
|
+
exports.CDSParenSelect = CDSParenSelect;
|
|
54784
|
+
//# sourceMappingURL=cds_paren_select.js.map
|
|
54785
|
+
|
|
54786
|
+
/***/ },
|
|
54787
|
+
|
|
54696
54788
|
/***/ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_prefixed_name.js"
|
|
54697
54789
|
/*!************************************************************************************!*\
|
|
54698
54790
|
!*** ./node_modules/@abaplint/core/build/src/cds/expressions/cds_prefixed_name.js ***!
|
|
@@ -54705,10 +54797,10 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
54705
54797
|
exports.CDSPrefixedName = void 0;
|
|
54706
54798
|
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54707
54799
|
const cds_name_1 = __webpack_require__(/*! ./cds_name */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_name.js");
|
|
54800
|
+
const cds_integer_1 = __webpack_require__(/*! ./cds_integer */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_integer.js");
|
|
54708
54801
|
const cds_parameters_1 = __webpack_require__(/*! ./cds_parameters */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_parameters.js");
|
|
54709
54802
|
const cds_parameters_select_1 = __webpack_require__(/*! ./cds_parameters_select */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_parameters_select.js");
|
|
54710
54803
|
const cds_condition_1 = __webpack_require__(/*! ./cds_condition */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_condition.js");
|
|
54711
|
-
const cds_integer_1 = __webpack_require__(/*! ./cds_integer */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_integer.js");
|
|
54712
54804
|
const cds_string_1 = __webpack_require__(/*! ./cds_string */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_string.js");
|
|
54713
54805
|
class CDSPrefixedName extends combi_1.Expression {
|
|
54714
54806
|
getRunnable() {
|
|
@@ -54718,13 +54810,17 @@ class CDSPrefixedName extends combi_1.Expression {
|
|
|
54718
54810
|
const cardinalityJoin = (0, combi_1.seq)("[", cardSpec, ":", joinType, "]");
|
|
54719
54811
|
const cardinalityJoinWhere = (0, combi_1.seq)("[", cardSpec, ":", joinType, "WHERE", cds_condition_1.CDSCondition, "]");
|
|
54720
54812
|
const joinWhere = (0, combi_1.seq)("[", joinType, "WHERE", cds_condition_1.CDSCondition, "]");
|
|
54721
|
-
const textCard = (0, combi_1.altPrio)("MANY TO EXACT ONE", "MANY TO ONE", "ONE TO MANY", "ONE TO ONE", "TO EXACT ONE", "TO ONE", "TO MANY");
|
|
54813
|
+
const textCard = (0, combi_1.altPrio)("EXACT ONE TO EXACT ONE", "EXACT ONE TO MANY", "EXACT ONE TO ONE", "MANY TO EXACT ONE", "MANY TO MANY", "MANY TO ONE", "ONE TO EXACT ONE", "ONE TO MANY", "ONE TO ONE", "TO EXACT ONE", "TO ONE", "TO MANY");
|
|
54722
54814
|
const textCardFilter = (0, combi_1.seq)("[", textCard, (0, combi_1.optPrio)((0, combi_1.seq)(":", (0, combi_1.altPrio)((0, combi_1.seq)(joinType, "WHERE", cds_condition_1.CDSCondition), joinType, cds_condition_1.CDSCondition))), "]");
|
|
54723
54815
|
const cardNum = (0, combi_1.altPrio)(cds_integer_1.CDSInteger, "*");
|
|
54724
54816
|
const rangeCard = (0, combi_1.seq)(cds_integer_1.CDSInteger, ".", ".", cardNum);
|
|
54725
54817
|
const rangeCardFilter = (0, combi_1.seq)("[", rangeCard, ":", cds_condition_1.CDSCondition, "]");
|
|
54726
|
-
const
|
|
54727
|
-
const
|
|
54818
|
+
const rangeOnly = (0, combi_1.seq)("[", rangeCard, "]");
|
|
54819
|
+
const numToText = (0, combi_1.seq)(cds_integer_1.CDSInteger, (0, combi_1.altPrio)("TO EXACT ONE", "TO ONE", "TO MANY"));
|
|
54820
|
+
const numTextCardFilter = (0, combi_1.seq)("[", numToText, (0, combi_1.optPrio)((0, combi_1.seq)(":", cds_condition_1.CDSCondition)), "]");
|
|
54821
|
+
const numToNum = (0, combi_1.seq)("[", cds_integer_1.CDSInteger, "TO", cds_integer_1.CDSInteger, (0, combi_1.optPrio)((0, combi_1.seq)(":", cds_condition_1.CDSCondition)), "]");
|
|
54822
|
+
const pathFilter = (0, combi_1.altPrio)(cardinalityJoinWhere, joinWhere, cardinalityJoin, joinRedirect, numToNum, numTextCardFilter, textCardFilter, rangeCardFilter, rangeOnly, (0, combi_1.seq)("[", cardSpec, ":", cds_condition_1.CDSCondition, "]"), (0, combi_1.seq)("[", cardSpec, "]"), (0, combi_1.seq)("[", cds_condition_1.CDSCondition, "]"));
|
|
54823
|
+
const segment = (0, combi_1.seq)(".", (0, combi_1.altPrio)(cds_string_1.CDSString, cds_integer_1.CDSInteger, cds_name_1.CDSName, "*"), (0, combi_1.optPrio)((0, combi_1.altPrio)(cds_parameters_select_1.CDSParametersSelect, cds_parameters_1.CDSParameters)), (0, combi_1.optPrio)(pathFilter));
|
|
54728
54824
|
return (0, combi_1.seq)(cds_name_1.CDSName, (0, combi_1.optPrio)((0, combi_1.altPrio)(cds_parameters_1.CDSParameters, cds_parameters_select_1.CDSParametersSelect)), (0, combi_1.optPrio)(pathFilter), (0, combi_1.star)(segment));
|
|
54729
54825
|
}
|
|
54730
54826
|
}
|
|
@@ -54766,10 +54862,15 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
54766
54862
|
exports.CDSRelation = void 0;
|
|
54767
54863
|
const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src/cds/expressions/index.js");
|
|
54768
54864
|
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54865
|
+
const KEYWORDS = ["AS", "ON", "WHERE", "WITH", "UNION", "GROUP", "HAVING",
|
|
54866
|
+
"AND", "OR", "BETWEEN", "LIKE", "IN", "EXISTS",
|
|
54867
|
+
"WHEN", "THEN", "ELSE", "END", "CASE", "CAST"];
|
|
54769
54868
|
class CDSRelation extends combi_1.Expression {
|
|
54770
54869
|
getRunnable() {
|
|
54771
|
-
const
|
|
54772
|
-
|
|
54870
|
+
const word = (0, combi_1.regex)(/^[\w_]+$/);
|
|
54871
|
+
const slashName = (0, combi_1.seq)("/", (0, combi_1.regex)(/^[\w]+$/), "/", (0, combi_1.stopBefore1)(...KEYWORDS), (0, combi_1.regex)(/^[\w_]+$/));
|
|
54872
|
+
const name = (0, combi_1.altPrio)(slashName, word);
|
|
54873
|
+
return (0, combi_1.seq)(name, (0, combi_1.opt)(_1.CDSParametersSelect), (0, combi_1.opt)(_1.CDSAs));
|
|
54773
54874
|
}
|
|
54774
54875
|
}
|
|
54775
54876
|
exports.CDSRelation = CDSRelation;
|
|
@@ -54793,11 +54894,12 @@ const cds_association_1 = __webpack_require__(/*! ./cds_association */ "./node_m
|
|
|
54793
54894
|
const cds_join_1 = __webpack_require__(/*! ./cds_join */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_join.js");
|
|
54794
54895
|
class CDSSelect extends combi_1.Expression {
|
|
54795
54896
|
getRunnable() {
|
|
54796
|
-
const fields = (0, combi_1.seq)((0, combi_1.star)((0, combi_1.seq)(_1.CDSElement, ",")), _1.CDSElement);
|
|
54897
|
+
const fields = (0, combi_1.seq)((0, combi_1.stopBefore1)("FROM"), (0, combi_1.star)((0, combi_1.seq)(_1.CDSElement, ",")), _1.CDSElement);
|
|
54797
54898
|
const distinct = (0, combi_1.str)("DISTINCT");
|
|
54798
54899
|
const elementList = (0, combi_1.seq)(_1.CDSElement, (0, combi_1.star)((0, combi_1.seq)(",", _1.CDSElement)), (0, combi_1.opt)(","));
|
|
54799
54900
|
const elements = (0, combi_1.seq)((0, combi_1.str)("{"), (0, combi_1.altPrio)("*", elementList), (0, combi_1.str)("}"));
|
|
54800
|
-
const
|
|
54901
|
+
const typedLiteralVal = (0, combi_1.seq)(_1.CDSType, _1.CDSString);
|
|
54902
|
+
const aspectValue = (0, combi_1.altPrio)(typedLiteralVal, _1.CDSString, _1.CDSPrefixedName);
|
|
54801
54903
|
const aspectBinding = (0, combi_1.seq)(_1.CDSPrefixedName, "=", ">", aspectValue);
|
|
54802
54904
|
const bindAspect = (0, combi_1.seq)("BIND", "ASPECT", _1.CDSName, "(", aspectBinding, (0, combi_1.starPrio)((0, combi_1.seq)(",", aspectBinding)), ")", (0, combi_1.optPrio)((0, combi_1.seq)("AS", _1.CDSName)));
|
|
54803
54905
|
const parenSelect = (0, combi_1.seq)("(", CDSSelect, ")");
|
|
@@ -54872,16 +54974,15 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
54872
54974
|
exports.CDSTableField = void 0;
|
|
54873
54975
|
const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src/cds/expressions/index.js");
|
|
54874
54976
|
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54875
|
-
// A single field or association/composition inside a `define table entity { ... }`
|
|
54876
|
-
// inline body. Wraps annotations + name + type together so tooling can iterate
|
|
54877
|
-
// per-field with associated field-level annotations (matches the CDSElement
|
|
54878
|
-
// shape used for select-list elements).
|
|
54879
54977
|
class CDSTableField extends combi_1.Expression {
|
|
54880
54978
|
getRunnable() {
|
|
54881
54979
|
const nullability = (0, combi_1.optPrio)((0, combi_1.alt)("NOT NULL", "NULL"));
|
|
54980
|
+
const excludingNames = (0, combi_1.seq)(_1.CDSName, (0, combi_1.star)((0, combi_1.seq)(",", _1.CDSName)));
|
|
54981
|
+
const excluding = (0, combi_1.seq)("EXCLUDING", "{", excludingNames, "}");
|
|
54982
|
+
const includeField = (0, combi_1.seq)("INCLUDE", _1.CDSPrefixedName, (0, combi_1.optPrio)((0, combi_1.altPrio)((0, combi_1.seq)((0, combi_1.str)("SIGNATURE ONLY"), (0, combi_1.optPrio)(excluding)), (0, combi_1.seq)(excluding, (0, combi_1.optPrio)((0, combi_1.str)("SIGNATURE ONLY"))))));
|
|
54882
54983
|
const field = (0, combi_1.seq)((0, combi_1.optPrio)((0, combi_1.str)("KEY")), _1.CDSName, ":", _1.CDSType, nullability);
|
|
54883
54984
|
const assocOrComp = (0, combi_1.seq)(_1.CDSName, ":", (0, combi_1.alt)(_1.CDSComposition, _1.CDSAssociation));
|
|
54884
|
-
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.
|
|
54985
|
+
return (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), (0, combi_1.altPrio)(includeField, assocOrComp, field), ";");
|
|
54885
54986
|
}
|
|
54886
54987
|
}
|
|
54887
54988
|
exports.CDSTableField = CDSTableField;
|
|
@@ -54948,7 +55049,9 @@ const _1 = __webpack_require__(/*! . */ "./node_modules/@abaplint/core/build/src
|
|
|
54948
55049
|
const combi_1 = __webpack_require__(/*! ../../abap/2_statements/combi */ "./node_modules/@abaplint/core/build/src/abap/2_statements/combi.js");
|
|
54949
55050
|
class CDSWithParameters extends combi_1.Expression {
|
|
54950
55051
|
getRunnable() {
|
|
54951
|
-
const
|
|
55052
|
+
const extNameValue = (0, combi_1.altPrio)(_1.CDSName, (0, combi_1.regex)(/^"(?:[^"]|"")*"$/));
|
|
55053
|
+
const externalName = (0, combi_1.seq)("EXTERNAL", "NAME", extNameValue);
|
|
55054
|
+
const param = (0, combi_1.seq)((0, combi_1.star)(_1.CDSAnnotation), _1.CDSName, ":", _1.CDSType, (0, combi_1.opt)(externalName), (0, combi_1.star)(_1.CDSAnnotation));
|
|
54952
55055
|
return (0, combi_1.seq)("WITH PARAMETERS", param, (0, combi_1.star)((0, combi_1.seq)(",", param)));
|
|
54953
55056
|
}
|
|
54954
55057
|
}
|
|
@@ -55002,6 +55105,7 @@ __exportStar(__webpack_require__(/*! ./cds_define_hierarchy */ "./node_modules/@
|
|
|
55002
55105
|
__exportStar(__webpack_require__(/*! ./cds_define_projection */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_define_projection.js"), exports);
|
|
55003
55106
|
__exportStar(__webpack_require__(/*! ./cds_define_table_entity */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_define_table_entity.js"), exports);
|
|
55004
55107
|
__exportStar(__webpack_require__(/*! ./cds_define_table_function */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_define_table_function.js"), exports);
|
|
55108
|
+
__exportStar(__webpack_require__(/*! ./cds_paren_select */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_paren_select.js"), exports);
|
|
55005
55109
|
__exportStar(__webpack_require__(/*! ./cds_define_view */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_define_view.js"), exports);
|
|
55006
55110
|
__exportStar(__webpack_require__(/*! ./cds_element */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_element.js"), exports);
|
|
55007
55111
|
__exportStar(__webpack_require__(/*! ./cds_extend_view */ "./node_modules/@abaplint/core/build/src/cds/expressions/cds_extend_view.js"), exports);
|
|
@@ -59938,10 +60042,10 @@ class ABAPObject extends _abstract_object_1.AbstractObject {
|
|
|
59938
60042
|
return undefined;
|
|
59939
60043
|
}
|
|
59940
60044
|
getMainABAPFile() {
|
|
59941
|
-
// todo, uris, https://github.com/abaplint/abaplint/issues/673
|
|
59942
60045
|
const search = this.getName().replace(/\//g, "#").toLowerCase() + "." + this.getType().toLowerCase() + ".abap";
|
|
60046
|
+
const encodedSearch = search.replace(/#/g, "%23");
|
|
59943
60047
|
for (const file of this.getABAPFiles()) {
|
|
59944
|
-
if (file.getFilename().endsWith(search)) {
|
|
60048
|
+
if (file.getFilename().endsWith(search) || file.getFilename().endsWith(encodedSearch)) {
|
|
59945
60049
|
return file;
|
|
59946
60050
|
}
|
|
59947
60051
|
}
|
|
@@ -69365,7 +69469,7 @@ class Registry {
|
|
|
69365
69469
|
}
|
|
69366
69470
|
static abaplintVersion() {
|
|
69367
69471
|
// magic, see build script "version.js"
|
|
69368
|
-
return "2.120.
|
|
69472
|
+
return "2.120.4";
|
|
69369
69473
|
}
|
|
69370
69474
|
getDDICReferences() {
|
|
69371
69475
|
return this.ddicReferences;
|
|
@@ -74076,39 +74180,6 @@ exports.ClassicExceptionsOverlap = ClassicExceptionsOverlap;
|
|
|
74076
74180
|
|
|
74077
74181
|
"use strict";
|
|
74078
74182
|
|
|
74079
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
74080
|
-
if (k2 === undefined) k2 = k;
|
|
74081
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
74082
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
74083
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
74084
|
-
}
|
|
74085
|
-
Object.defineProperty(o, k2, desc);
|
|
74086
|
-
}) : (function(o, m, k, k2) {
|
|
74087
|
-
if (k2 === undefined) k2 = k;
|
|
74088
|
-
o[k2] = m[k];
|
|
74089
|
-
}));
|
|
74090
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
74091
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
74092
|
-
}) : function(o, v) {
|
|
74093
|
-
o["default"] = v;
|
|
74094
|
-
});
|
|
74095
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
74096
|
-
var ownKeys = function(o) {
|
|
74097
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
74098
|
-
var ar = [];
|
|
74099
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
74100
|
-
return ar;
|
|
74101
|
-
};
|
|
74102
|
-
return ownKeys(o);
|
|
74103
|
-
};
|
|
74104
|
-
return function (mod) {
|
|
74105
|
-
if (mod && mod.__esModule) return mod;
|
|
74106
|
-
var result = {};
|
|
74107
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
74108
|
-
__setModuleDefault(result, mod);
|
|
74109
|
-
return result;
|
|
74110
|
-
};
|
|
74111
|
-
})();
|
|
74112
74183
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
74113
74184
|
exports.ClearExportingParameters = exports.ClearExportingParametersConf = void 0;
|
|
74114
74185
|
const issue_1 = __webpack_require__(/*! ../issue */ "./node_modules/@abaplint/core/build/src/issue.js");
|
|
@@ -74117,12 +74188,11 @@ const _irule_1 = __webpack_require__(/*! ./_irule */ "./node_modules/@abaplint/c
|
|
|
74117
74188
|
const syntax_1 = __webpack_require__(/*! ../abap/5_syntax/syntax */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/syntax.js");
|
|
74118
74189
|
const _abap_object_1 = __webpack_require__(/*! ../objects/_abap_object */ "./node_modules/@abaplint/core/build/src/objects/_abap_object.js");
|
|
74119
74190
|
const _scope_type_1 = __webpack_require__(/*! ../abap/5_syntax/_scope_type */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_scope_type.js");
|
|
74191
|
+
const _typed_identifier_1 = __webpack_require__(/*! ../abap/types/_typed_identifier */ "./node_modules/@abaplint/core/build/src/abap/types/_typed_identifier.js");
|
|
74120
74192
|
const objects_1 = __webpack_require__(/*! ../objects */ "./node_modules/@abaplint/core/build/src/objects/index.js");
|
|
74121
74193
|
const _reference_1 = __webpack_require__(/*! ../abap/5_syntax/_reference */ "./node_modules/@abaplint/core/build/src/abap/5_syntax/_reference.js");
|
|
74122
74194
|
const basic_1 = __webpack_require__(/*! ../abap/types/basic */ "./node_modules/@abaplint/core/build/src/abap/types/basic/index.js");
|
|
74123
74195
|
const _statement_1 = __webpack_require__(/*! ../abap/2_statements/statements/_statement */ "./node_modules/@abaplint/core/build/src/abap/2_statements/statements/_statement.js");
|
|
74124
|
-
const edit_helper_1 = __webpack_require__(/*! ../edit_helper */ "./node_modules/@abaplint/core/build/src/edit_helper.js");
|
|
74125
|
-
const Expressions = __importStar(__webpack_require__(/*! ../abap/2_statements/expressions */ "./node_modules/@abaplint/core/build/src/abap/2_statements/expressions/index.js"));
|
|
74126
74196
|
class ClearExportingParametersConf extends _basic_rule_config_1.BasicRuleConfig {
|
|
74127
74197
|
constructor() {
|
|
74128
74198
|
super(...arguments);
|
|
@@ -74155,7 +74225,7 @@ Reading and writing the parameter in the same statement (e.g. "ev_result = ev_re
|
|
|
74155
74225
|
as the source is evaluated before the parameter is assigned.
|
|
74156
74226
|
Objects containing parser or syntax errors are not reported.
|
|
74157
74227
|
|
|
74158
|
-
|
|
74228
|
+
Class and interface method implementations and function modules are checked.`,
|
|
74159
74229
|
tags: [_irule_1.RuleTag.Styleguide],
|
|
74160
74230
|
badExample: `CLASS lcl DEFINITION.
|
|
74161
74231
|
PUBLIC SECTION.
|
|
@@ -74211,19 +74281,20 @@ ENDCLASS.`,
|
|
|
74211
74281
|
return issues;
|
|
74212
74282
|
}
|
|
74213
74283
|
traverse(node, obj, issues) {
|
|
74214
|
-
if (node.getIdentifier().stype === _scope_type_1.ScopeType.Method
|
|
74215
|
-
|
|
74284
|
+
if (node.getIdentifier().stype === _scope_type_1.ScopeType.Method
|
|
74285
|
+
|| node.getIdentifier().stype === _scope_type_1.ScopeType.FunctionModule) {
|
|
74286
|
+
this.checkProcedure(node, obj, issues);
|
|
74216
74287
|
}
|
|
74217
74288
|
for (const child of node.getChildren()) {
|
|
74218
74289
|
this.traverse(child, obj, issues);
|
|
74219
74290
|
}
|
|
74220
74291
|
}
|
|
74221
|
-
|
|
74222
|
-
const
|
|
74292
|
+
checkProcedure(node, obj, issues) {
|
|
74293
|
+
const references = this.collectReferences(node);
|
|
74294
|
+
const parameters = this.findExportingByReference(node, references);
|
|
74223
74295
|
if (parameters.length === 0) {
|
|
74224
74296
|
return;
|
|
74225
74297
|
}
|
|
74226
|
-
const references = this.collectReferences(node);
|
|
74227
74298
|
for (const parameter of parameters) {
|
|
74228
74299
|
const issue = this.checkParameter(parameter, references, obj);
|
|
74229
74300
|
if (issue !== undefined) {
|
|
@@ -74231,52 +74302,36 @@ ENDCLASS.`,
|
|
|
74231
74302
|
}
|
|
74232
74303
|
}
|
|
74233
74304
|
}
|
|
74234
|
-
findExportingByReference(node,
|
|
74305
|
+
findExportingByReference(node, references) {
|
|
74235
74306
|
var _a;
|
|
74236
74307
|
const ret = [];
|
|
74237
|
-
const
|
|
74238
|
-
for (const
|
|
74239
|
-
|
|
74308
|
+
const candidates = new Set(Object.values(node.getData().vars));
|
|
74309
|
+
for (const reference of references) {
|
|
74310
|
+
if (reference.resolved instanceof _typed_identifier_1.TypedIdentifier) {
|
|
74311
|
+
candidates.add(reference.resolved);
|
|
74312
|
+
}
|
|
74313
|
+
}
|
|
74314
|
+
for (const parameter of candidates) {
|
|
74240
74315
|
const meta = parameter.getMeta();
|
|
74241
|
-
|
|
74316
|
+
const exporting = meta.includes("exporting" /* IdentifierMeta.MethodExporting */)
|
|
74317
|
+
|| meta.includes("function_module_exporting" /* IdentifierMeta.FunctionModuleExporting */);
|
|
74318
|
+
if (exporting === false
|
|
74242
74319
|
|| meta.includes("pass_by_value" /* IdentifierMeta.PassByValue */) === true) {
|
|
74243
74320
|
continue;
|
|
74244
74321
|
}
|
|
74245
|
-
else if ((_a = this.conf.skipNames) === null || _a === void 0 ? void 0 : _a.some(s => s.toUpperCase() ===
|
|
74322
|
+
else if ((_a = this.conf.skipNames) === null || _a === void 0 ? void 0 : _a.some(s => s.toUpperCase() === parameter.getName().toUpperCase())) {
|
|
74246
74323
|
continue;
|
|
74247
74324
|
}
|
|
74248
74325
|
const type = parameter.getType();
|
|
74249
74326
|
if (type instanceof basic_1.VoidType || type instanceof basic_1.UnknownType) {
|
|
74250
74327
|
continue; // e.g. RAP magic parameters, or unresolved types
|
|
74251
74328
|
}
|
|
74252
|
-
else if (this.isPassByValue(parameter, obj) === true) {
|
|
74253
|
-
continue; // VALUE(..) parameters are always initialized
|
|
74254
|
-
}
|
|
74255
74329
|
ret.push(parameter);
|
|
74256
74330
|
}
|
|
74257
74331
|
return ret;
|
|
74258
74332
|
}
|
|
74259
|
-
isPassByValue(parameter, obj) {
|
|
74260
|
-
var _a;
|
|
74261
|
-
// the PassByValue meta is not set for EXPORTING parameters, so determine it from the definition
|
|
74262
|
-
const file = obj.getABAPFileByName(parameter.getFilename());
|
|
74263
|
-
if (file === undefined) {
|
|
74264
|
-
return false;
|
|
74265
|
-
}
|
|
74266
|
-
const statement = edit_helper_1.EditHelper.findStatement(parameter.getToken(), file);
|
|
74267
|
-
if (statement === undefined) {
|
|
74268
|
-
return false;
|
|
74269
|
-
}
|
|
74270
|
-
for (const param of statement.findAllExpressions(Expressions.MethodParam)) {
|
|
74271
|
-
const nameToken = (_a = param.findFirstExpression(Expressions.MethodParamName)) === null || _a === void 0 ? void 0 : _a.getFirstToken();
|
|
74272
|
-
if (nameToken !== undefined && nameToken.getStart().equals(parameter.getStart())) {
|
|
74273
|
-
return param.getFirstToken().getStr().toUpperCase() === "VALUE";
|
|
74274
|
-
}
|
|
74275
|
-
}
|
|
74276
|
-
return false;
|
|
74277
|
-
}
|
|
74278
74333
|
collectReferences(node) {
|
|
74279
|
-
//
|
|
74334
|
+
// procedures do not nest, so all descendant scopes (FOR, LET, ...) belong to this procedure
|
|
74280
74335
|
const ret = [...node.getData().references];
|
|
74281
74336
|
for (const child of node.getChildren()) {
|
|
74282
74337
|
ret.push(...this.collectReferences(child));
|
|
@@ -74287,7 +74342,9 @@ ENDCLASS.`,
|
|
|
74287
74342
|
let firstRead = undefined;
|
|
74288
74343
|
let earliestWrite = undefined;
|
|
74289
74344
|
for (const reference of references) {
|
|
74290
|
-
if (reference.resolved === undefined
|
|
74345
|
+
if (reference.resolved === undefined
|
|
74346
|
+
|| parameter.equals(reference.resolved) === false
|
|
74347
|
+
|| parameter.getName().toUpperCase() !== reference.resolved.getName().toUpperCase()) {
|
|
74291
74348
|
continue;
|
|
74292
74349
|
}
|
|
74293
74350
|
const pos = reference.position.getStart();
|
|
@@ -93489,7 +93546,8 @@ ENDCLASS.`,
|
|
|
93489
93546
|
}
|
|
93490
93547
|
for (const v in vars) {
|
|
93491
93548
|
const id = vars[v];
|
|
93492
|
-
if (id.getMeta().includes("
|
|
93549
|
+
if (id.getMeta().includes("importing" /* IdentifierMeta.MethodImporting */) === false
|
|
93550
|
+
|| id.getMeta().includes("pass_by_value" /* IdentifierMeta.PassByValue */) === false) {
|
|
93493
93551
|
continue;
|
|
93494
93552
|
}
|
|
93495
93553
|
else if (this.reg.isFileDependency(id.getFilename()) === true) {
|
|
@@ -114042,7 +114100,7 @@ class PerformTranspiler {
|
|
|
114042
114100
|
index++;
|
|
114043
114101
|
}
|
|
114044
114102
|
index = 0;
|
|
114045
|
-
for (const c of node.findDirectExpression(abaplint.Expressions.PerformChanging)?.findDirectExpressions(abaplint.Expressions.
|
|
114103
|
+
for (const c of node.findDirectExpression(abaplint.Expressions.PerformChanging)?.findDirectExpressions(abaplint.Expressions.Target) || []) {
|
|
114046
114104
|
const name = def?.getChangingParameters()[index].getName().toLowerCase();
|
|
114047
114105
|
if (name === undefined) {
|
|
114048
114106
|
continue;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/transpiler-cli",
|
|
3
|
-
"version": "2.13.
|
|
3
|
+
"version": "2.13.42",
|
|
4
4
|
"description": "Transpiler - Command Line Interface",
|
|
5
5
|
"funding": "https://github.com/sponsors/larshp",
|
|
6
6
|
"bin": {
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"author": "abaplint",
|
|
28
28
|
"license": "MIT",
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@abaplint/core": "^2.120.
|
|
31
|
-
"@abaplint/transpiler": "^2.13.
|
|
30
|
+
"@abaplint/core": "^2.120.4",
|
|
31
|
+
"@abaplint/transpiler": "^2.13.42",
|
|
32
32
|
"@types/glob": "^8.1.0",
|
|
33
33
|
"@types/node": "^24.12.2",
|
|
34
34
|
"@types/progress": "^2.0.7",
|
package/schema.json
CHANGED
|
@@ -76,14 +76,6 @@
|
|
|
76
76
|
"output_folder": {
|
|
77
77
|
"type": "string"
|
|
78
78
|
},
|
|
79
|
-
"plugins": {
|
|
80
|
-
"description": "list of npm module names or paths, resolved from the current working directory, each module exports \"plugins\", an array of ITranspilerPlugin instances",
|
|
81
|
-
"items": {
|
|
82
|
-
"type": "string"
|
|
83
|
-
},
|
|
84
|
-
"type": "array",
|
|
85
|
-
"uniqueItems": true
|
|
86
|
-
},
|
|
87
79
|
"write_source_map": {
|
|
88
80
|
"type": "boolean"
|
|
89
81
|
},
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["./node_modules/typescript/lib/lib.es5.d.ts","./node_modules/typescript/lib/lib.es2015.d.ts","./node_modules/typescript/lib/lib.es2016.d.ts","./node_modules/typescript/lib/lib.es2017.d.ts","./node_modules/typescript/lib/lib.es2018.d.ts","./node_modules/typescript/lib/lib.es2019.d.ts","./node_modules/typescript/lib/lib.es2020.d.ts","./node_modules/typescript/lib/lib.es2021.d.ts","./node_modules/typescript/lib/lib.es2022.d.ts","./node_modules/typescript/lib/lib.dom.d.ts","./node_modules/typescript/lib/lib.dom.iterable.d.ts","./node_modules/typescript/lib/lib.dom.asynciterable.d.ts","./node_modules/typescript/lib/lib.webworker.importscripts.d.ts","./node_modules/typescript/lib/lib.scripthost.d.ts","./node_modules/typescript/lib/lib.es2015.core.d.ts","./node_modules/typescript/lib/lib.es2015.collection.d.ts","./node_modules/typescript/lib/lib.es2015.generator.d.ts","./node_modules/typescript/lib/lib.es2015.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.promise.d.ts","./node_modules/typescript/lib/lib.es2015.proxy.d.ts","./node_modules/typescript/lib/lib.es2015.reflect.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2016.array.include.d.ts","./node_modules/typescript/lib/lib.es2016.intl.d.ts","./node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","./node_modules/typescript/lib/lib.es2017.date.d.ts","./node_modules/typescript/lib/lib.es2017.object.d.ts","./node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2017.string.d.ts","./node_modules/typescript/lib/lib.es2017.intl.d.ts","./node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","./node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","./node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","./node_modules/typescript/lib/lib.es2018.intl.d.ts","./node_modules/typescript/lib/lib.es2018.promise.d.ts","./node_modules/typescript/lib/lib.es2018.regexp.d.ts","./node_modules/typescript/lib/lib.es2019.array.d.ts","./node_modules/typescript/lib/lib.es2019.object.d.ts","./node_modules/typescript/lib/lib.es2019.string.d.ts","./node_modules/typescript/lib/lib.es2019.symbol.d.ts","./node_modules/typescript/lib/lib.es2019.intl.d.ts","./node_modules/typescript/lib/lib.es2020.bigint.d.ts","./node_modules/typescript/lib/lib.es2020.date.d.ts","./node_modules/typescript/lib/lib.es2020.promise.d.ts","./node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2020.string.d.ts","./node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2020.intl.d.ts","./node_modules/typescript/lib/lib.es2020.number.d.ts","./node_modules/typescript/lib/lib.es2021.promise.d.ts","./node_modules/typescript/lib/lib.es2021.string.d.ts","./node_modules/typescript/lib/lib.es2021.weakref.d.ts","./node_modules/typescript/lib/lib.es2021.intl.d.ts","./node_modules/typescript/lib/lib.es2022.array.d.ts","./node_modules/typescript/lib/lib.es2022.error.d.ts","./node_modules/typescript/lib/lib.es2022.intl.d.ts","./node_modules/typescript/lib/lib.es2022.object.d.ts","./node_modules/typescript/lib/lib.es2022.string.d.ts","./node_modules/typescript/lib/lib.es2022.regexp.d.ts","./node_modules/typescript/lib/lib.es2025.float16.d.ts","./node_modules/typescript/lib/lib.esnext.disposable.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./node_modules/typescript/lib/lib.es2022.full.d.ts","./node_modules/vscode-languageserver-types/lib/umd/main.d.ts","./node_modules/@abaplint/core/build/abaplint.d.ts","./node_modules/source-map/source-map.d.ts","./node_modules/@abaplint/transpiler/build/src/chunk.d.ts","./node_modules/@abaplint/transpiler/build/src/unit_test.d.ts","./node_modules/@abaplint/transpiler/build/src/db/database_setup_result.d.ts","./node_modules/@abaplint/transpiler/build/src/types.d.ts","./node_modules/@abaplint/transpiler/build/src/validation.d.ts","./node_modules/@abaplint/transpiler/build/src/index.d.ts","./src/types.ts","./src/config.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/globals.typedarray.d.ts","./node_modules/@types/node/buffer.buffer.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/web-globals/abortcontroller.d.ts","./node_modules/@types/node/web-globals/crypto.d.ts","./node_modules/@types/node/web-globals/domexception.d.ts","./node_modules/@types/node/web-globals/events.d.ts","./node_modules/undici-types/utility.d.ts","./node_modules/undici-types/header.d.ts","./node_modules/undici-types/readable.d.ts","./node_modules/undici-types/fetch.d.ts","./node_modules/undici-types/formdata.d.ts","./node_modules/undici-types/connector.d.ts","./node_modules/undici-types/client-stats.d.ts","./node_modules/undici-types/client.d.ts","./node_modules/undici-types/errors.d.ts","./node_modules/undici-types/dispatcher.d.ts","./node_modules/undici-types/global-dispatcher.d.ts","./node_modules/undici-types/global-origin.d.ts","./node_modules/undici-types/pool-stats.d.ts","./node_modules/undici-types/pool.d.ts","./node_modules/undici-types/handlers.d.ts","./node_modules/undici-types/balanced-pool.d.ts","./node_modules/undici-types/h2c-client.d.ts","./node_modules/undici-types/agent.d.ts","./node_modules/undici-types/mock-interceptor.d.ts","./node_modules/undici-types/mock-call-history.d.ts","./node_modules/undici-types/mock-agent.d.ts","./node_modules/undici-types/mock-client.d.ts","./node_modules/undici-types/mock-pool.d.ts","./node_modules/undici-types/snapshot-agent.d.ts","./node_modules/undici-types/mock-errors.d.ts","./node_modules/undici-types/proxy-agent.d.ts","./node_modules/undici-types/env-http-proxy-agent.d.ts","./node_modules/undici-types/retry-handler.d.ts","./node_modules/undici-types/retry-agent.d.ts","./node_modules/undici-types/api.d.ts","./node_modules/undici-types/cache-interceptor.d.ts","./node_modules/undici-types/interceptors.d.ts","./node_modules/undici-types/util.d.ts","./node_modules/undici-types/cookies.d.ts","./node_modules/undici-types/patch.d.ts","./node_modules/undici-types/websocket.d.ts","./node_modules/undici-types/eventsource.d.ts","./node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/undici-types/content-type.d.ts","./node_modules/undici-types/cache.d.ts","./node_modules/undici-types/index.d.ts","./node_modules/@types/node/web-globals/fetch.d.ts","./node_modules/@types/node/web-globals/navigator.d.ts","./node_modules/@types/node/web-globals/storage.d.ts","./node_modules/@types/node/web-globals/streams.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.d.ts","./node_modules/@types/node/inspector.generated.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/sea.d.ts","./node_modules/@types/node/sqlite.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/index.d.ts","./node_modules/@types/minimatch/index.d.ts","./node_modules/@types/glob/index.d.ts","./node_modules/p-limit/index.d.ts","./src/file_operations.ts","./node_modules/@types/progress/index.d.ts","./src/index.ts","../../node_modules/@types/mocha/index.d.ts"],"fileIdsList":[[79,133,150,151],[66,79,133,150,151],[67,68,79,133,150,151],[67,72,73,79,133,150,151],[67,69,70,71,79,133,150,151],[67,79,133,150,151],[67,72,79,133,150,151],[79,133,144,145,150,151,183,184],[79,130,131,133,150,151],[79,132,133,150,151],[133,150,151],[79,133,138,150,151,168],[79,133,134,139,144,150,151,153,165,176],[79,133,134,135,144,150,151,153],[79,133,136,150,151,177],[79,133,137,138,145,150,151,154],[79,133,138,150,151,165,173],[79,133,139,141,144,150,151,153],[79,132,133,140,150,151],[79,133,141,142,150,151],[79,133,143,144,150,151],[79,132,133,144,150,151],[79,133,144,145,146,150,151,165,176],[79,133,144,145,146,150,151,160,165,168],[79,125,133,141,144,147,150,151,153,165,176],[79,133,144,145,147,148,150,151,153,165,173,176],[79,133,147,149,150,151,165,173,176],[77,78,79,80,81,82,83,84,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182],[79,133,144,150,151],[79,133,150,151,152,176],[79,133,141,144,150,151,153,165],[79,133,150,151,154],[79,133,150,151,155],[79,132,133,150,151,156],[79,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182],[79,133,150,151,158],[79,133,150,151,159],[79,133,144,150,151,160,161],[79,133,150,151,160,162,177,179],[79,133,145,150,151],[79,133,144,150,151,165,166,168],[79,133,150,151,167,168],[79,133,150,151,165,166],[79,133,150,151,168],[79,133,150,151,169],[79,130,133,150,151,165,170,176],[79,133,144,150,151,171,172],[79,133,150,151,171,172],[79,133,138,150,151,153,165,173],[79,133,150,151,174],[79,133,150,151,153,175],[79,133,147,150,151,159,176],[79,133,138,150,151,177],[79,133,150,151,165,178],[79,133,150,151,152,179],[79,133,150,151,180],[79,133,138,150,151],[79,125,133,150,151],[79,133,150,151,181],[79,125,133,144,146,150,151,156,165,168,176,178,179,181],[79,133,150,151,165,182],[79,133,150,151,183],[79,91,94,97,98,133,150,151,176],[79,94,133,150,151,165,176],[79,94,98,133,150,151,176],[79,133,150,151,165],[79,88,133,150,151],[79,92,133,150,151],[79,90,91,94,133,150,151,176],[79,133,150,151,153,173],[79,88,133,150,151,183],[79,90,94,133,150,151,153,176],[79,85,86,87,89,93,133,144,150,151,165,176],[79,94,102,110,133,150,151],[79,86,92,133,150,151],[79,94,119,120,133,150,151],[79,86,89,94,133,150,151,168,176,183],[79,94,133,150,151],[79,90,94,133,150,151,176],[79,85,133,150,151],[79,88,89,90,92,93,94,95,96,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,120,121,122,123,124,133,150,151],[79,94,112,115,133,141,150,151],[79,94,102,103,104,133,150,151],[79,92,94,103,105,133,150,151],[79,93,133,150,151],[79,86,88,94,133,150,151],[79,94,98,103,105,133,150,151],[79,98,133,150,151],[79,92,94,97,133,150,151,176],[79,86,90,94,102,133,150,151],[79,94,112,133,150,151],[79,105,133,150,151],[79,88,94,119,133,150,151,168,181,183],[74,75,79,133,145,150,151,155],[74,75,79,133,145,146,150,151,154,155,185,186],[67,74,75,76,79,133,134,145,150,151,154,155,185,187,188],[74,79,133,150,151]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"26e0fe14baee4e127f4365d1ae0b276f400562e45e19e35fd2d4c296684715e6","impliedFormat":1},{"version":"d6b1eba8496bdd0eed6fc8a685768fe01b2da4a0388b5fe7df558290bffcf32f","affectsGlobalScope":true,"impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"7f57fc4404ff020bc45b9c620aff2b40f700b95fe31164024c453a5e3c163c54","impliedFormat":1},{"version":"2a2de5b9459b3fc44decd9ce6100b72f1b002ef523126c1d3d8b2a4a63d74d78","affectsGlobalScope":true,"impliedFormat":1},{"version":"f13f4b465c99041e912db5c44129a94588e1aafee35a50eab51044833f50b4ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3261badeb7843d157ef3e6f5d1427d0eeb0af0cf9df84a62cfd29fd47ac86e","affectsGlobalScope":true,"impliedFormat":1},{"version":"195daca651dde22f2167ac0d0a05e215308119a3100f5e6268e8317d05a92526","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b11e4285cd2bb164a4dc09248bdec69e9842517db4ca47c1ba913011e44ff2f","affectsGlobalScope":true,"impliedFormat":1},{"version":"0508571a52475e245b02bc50fa1394065a0a3d05277fbf5120c3784b85651799","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f9af488f510c3015af3cc8c267a9e9d96c4dd38a1fdff0e11dc5a544711415b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fc611fea8d30ea72c6bbfb599c9b4d393ce22e2f5bfef2172534781e7d138104","affectsGlobalScope":true,"impliedFormat":1},{"version":"f128dae7c44d8f35ee42e0a437000a57c9f06cc04f8b4fb42eebf44954d53dc8","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ecb8e347cb6b2a8927c09b86263663289418df375f5e68e11a0ae683776978f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"01a30f9e8582b369075c0808df71121e6855cb06fd8d3d39511d9ebb66405205","impliedFormat":1},{"version":"af4f042e8a99eb6f9a48411042e9633486f1eb058d9e1c769c9836cd05464489","impliedFormat":1},{"version":"b4d0053584c73bf5833bbcd9ec96d25600137c3af90bf0e69aff09afb70a741e","impliedFormat":1},{"version":"89dcbbf69b16cd94043e16c7fbcfa04256577ec98bb8ae894833d2a922394db4","impliedFormat":1},{"version":"7c0590bae81bbe21e3878be296210b76afd6c05a098bc287dbe242f38a8a852b","impliedFormat":1},{"version":"83bff103f33fa5b2bb32986e890533f95677057a836b7cf78a8202ad90a45608","impliedFormat":1},{"version":"72003eb7651e998adc17d10707d2ed12e5270c4b23edb513d0614491db91aa10","impliedFormat":1},{"version":"a9eac7528f5d68e0073a0db760c177c0e2e46c322c5a56819cc7fe82713fd156","impliedFormat":1},{"version":"314857f821f9455b2ac936919fd37752b5472ca21bb9433cc640662c81caaa4b","impliedFormat":1},{"version":"d596b83809535dbe4ce7b1c7a668e7ab4e4b8c249d5ddf7d0b1db16f5c1d7a81","impliedFormat":1},{"version":"f20028696c1a38226e42010da3031ddea24b3a418ad56a0bddbbf1a82fe8c609","signature":"3db2a08b4341f2125ba4bb3f793debb7b30932295c36871bcb138dc65115f23a"},{"version":"740d510020f3536ce50c4e341917ad27a3bb4ffeee6509f770efb5675b5896bd","signature":"e08bb6219752efcaf6119c06958e6e83b878bbb3369e1bb4aeac454836735f54"},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"378281aa35786c27d5811af7e6bcaa492eebd0c7013d48137c35bbc69a2b9751","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"1b2dd1cbeb0cc6ae20795958ba5950395ebb2849b7c8326853dd15530c77ab0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"387a023d363f755eb63450a66c28b14cdd7bc30a104565e2dbf0a8988bb4a56c","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"f724236417941ea77ec8d38c6b7021f5fb7f8521c7f8c1538e87661f2c6a0774","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d97fb21da858fb18b8ae72c314e9743fd52f73ebe2764e12af1db32fc03f853f","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ea15fd99b2e34cb25fe8346c955000bb70c8b423ae4377a972ef46bfb37f595","impliedFormat":1},{"version":"7cf69dd5502c41644c9e5106210b5da7144800670cbe861f66726fa209e231c4","impliedFormat":1},{"version":"72c1f5e0a28e473026074817561d1bc9647909cf253c8d56c41d1df8d95b85f7","impliedFormat":1},{"version":"f9b4137a0d285bd77dba2e6e895530112264310ae47e07bf311feae428fb8b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"c06b2652ffeb89afd0f1c52c165ced77032f9cd09bc481153fbd6b5504c69494","impliedFormat":1},{"version":"51aecd2df90a3cffea1eb4696b33b2d78594ea2aa2138e6b9471ec4841c6c2ee","impliedFormat":1},{"version":"9d8f9e63e29a3396285620908e7f14d874d066caea747dc4b2c378f0599166b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"612422d5ba6b4a5c4537f423e9199645468ad80a689801da63ab7edb43f7b835","impliedFormat":1},{"version":"db9ada976f9e52e13f7ae8b9a320f4b67b87685938c5879187d8864b2fbe97f3","impliedFormat":1},{"version":"9f39e70a354d0fba29ac3cdf6eca00b7f9e96f64b2b2780c432e8ea27f133743","impliedFormat":1},{"version":"0dace96cc0f7bc6d0ee2044921bdf19fe42d16284dbcc8ae200800d1c9579335","impliedFormat":1},{"version":"a2e2bbde231b65c53c764c12313897ffdfb6c49183dd31823ee2405f2f7b5378","impliedFormat":1},{"version":"ad1cc0ed328f3f708771272021be61ab146b32ecf2b78f3224959ff1e2cd2a5c","impliedFormat":1},{"version":"c64e1888baaa3253ca4405b455e4bf44f76357868a1bd0a52998ade9a092ad78","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc8c6f5322961b56d9906601b20798725df60baeab45ec014fba9f795d5596fd","impliedFormat":1},{"version":"0904660ae854e6d41f6ff25356db1d654436c6305b0f0aa89d1532df0253486e","impliedFormat":1},{"version":"060d305fe4494d8cb2b99d620928d369d1ee55c1645f5e729a2aca07d0f108cb","impliedFormat":1},{"version":"230bdc111d7578276e4a3bb9d075d85c78c6b68f428c3a9935e2eaa10f4ae1f5","impliedFormat":1},{"version":"0c50296ee73dae94efc3f0da4936b1146ca6ce2217acfabb44c19c9a33fa30e5","impliedFormat":1},{"version":"bbf42f98a5819f4f06e18c8b669a994afe9a17fe520ae3454a195e6eabf7700d","impliedFormat":1},{"version":"0e5974dfff7a97181c7c376545f126b20acf2f1341db7d3fccea4977bf3ce19c","impliedFormat":1},{"version":"c7f977ea78a1b060a30554c1c4ec0e2269c6e305a349ca2ada14931ac27ecc0b","affectsGlobalScope":true,"impliedFormat":1},{"version":"3806cdd6b48ba01a9198134e62a384ec217a98f316d4baef74dd46d62c947a63","impliedFormat":1},{"version":"ff65b8a8bd380c6d129becc35de02f7c29ad7ce03300331ca91311fb4044d1a9","impliedFormat":1},{"version":"04bf1aa481d1adfb16d93d76e44ce71c51c8ef68039d849926551199489637f6","impliedFormat":1},{"version":"2c9adcc85574b002c9a6311ff2141055769e0071856ec979d92ff989042b1f1b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8bf3fe89ec8baa335f6370b9fa36308e1bc7a72e2eb2dad1e94f31e27fa28b5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a58a15da4c5ba3df60c910a043281256fa52d36a0fcdef9b9100c646282e88dd","impliedFormat":1},{"version":"b36beffbf8acdc3ebc58c8bb4b75574b31a2169869c70fc03f82895b93950a12","impliedFormat":1},{"version":"de263f0089aefbfd73c89562fb7254a7468b1f33b61839aafc3f035d60766cb4","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"8c81fd4a110490c43d7c578e8c6f69b3af01717189196899a6a44f93daa57a3a","impliedFormat":1},{"version":"5fb39858b2459864b139950a09adae4f38dad87c25bf572ce414f10e4bd7baab","impliedFormat":1},{"version":"35390d6fa94bdb432c5d0bcb6547bdd11406c2692a6b90b9e47be2105ea19bd6","impliedFormat":1},{"version":"3910dab597c40e173bf0e0d419d3ce9682c54ebf6ae84849f9b829b1451a17ec","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"486c074a5c0f2254345c0d1c9540380f5463999e42d7e1a159305ea823d3c4b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"c119835edf36415081dfd9ed15fc0cd37aaa28d232be029ad073f15f3d88c323","impliedFormat":1},{"version":"8e7c3bed5f19ade8f911677ddc83052e2283e25b0a8654cd89db9079d4b323c7","impliedFormat":1},{"version":"9705cd157ffbb91c5cab48bdd2de5a437a372e63f870f8a8472e72ff634d47c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ae86f30d5d10e4f75ce8dcb6e1bd3a12ecec3d071a21e8f462c5c85c678efb41","impliedFormat":1},{"version":"ccf3afaeebbeee4ca9092101e99fd6abd681116b6e5ec23e381bbb1e1f32262c","impliedFormat":1},{"version":"e03460fe72b259f6d25ad029f085e4bedc3f90477da4401d8fbc1efa9793230e","impliedFormat":1},{"version":"4286a3a6619514fca656089aee160bb6f2e77f4dd53dc5a96b26a0b4fc778055","impliedFormat":1},{"version":"ab7818a9d57a9297b90e456fc68b77f84d74395a9210a3cfa9d87db33aff8b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb08062718a5470cd864c1fae0eb5b3a3adc5bcd05dcf87608d6f60b65eca3f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"3a815b7d1aebc0646b91548eab2fc19dada09ff255d04c71ced00bbd3058c8eb","impliedFormat":1},{"version":"255d948f87f24ffd57bcb2fdf95792fd418a2e1f712a98cf2cce88744d75085c","impliedFormat":1},{"version":"0d5b085f36e6dc55bc6332ecb9c733be3a534958c238fb8d8d18d4a2b6f2a15a","impliedFormat":1},{"version":"836b36913830645ac3b28fe33731aac3fdb3524ee8adbb4cdab9a5c189f41943","affectsGlobalScope":true,"impliedFormat":1},{"version":"bfd3b3c21a56104693183942e221c1896ee23bcb8f8d91ab0b941f7b32985411","impliedFormat":1},{"version":"d7e9ab1b0996639047c61c1e62f85c620e4382206b3abb430d9a21fb7bc23c77","impliedFormat":1},{"version":"963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","impliedFormat":1},{"version":"9c5c92b7fb8c38ff1b46df69701f2d1ea8e2d6468e3cd8f73d8af5e6f7864576","impliedFormat":1},{"version":"9f91eee81fda27d38d60963fe1de2f050a5cfb241af56b7e7ee6d9aa8522a058","impliedFormat":1},{"version":"1baaf9e01ea72170d3c74aca2d0d7acbef3eb83f776ba6e0ef0c944b454bd295","signature":"7657ae67f69f3df2efb4fc6bbebd5702f35bdb5662211626856df64bc0be41e5"},{"version":"399fc76aafc3c3e506515b7796f8a9b0ae63a40733f0b452fe949d986f1c01b7","impliedFormat":1},{"version":"4aee29034bd907cfbf0cddc8be9ebd421082a3703b509809170d97f20677a876","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"29f72ec1289ae3aeda78bf14b38086d3d803262ac13904b400422941a26a3636","affectsGlobalScope":true,"impliedFormat":1}],"root":[75,76,187,189],"options":{"alwaysStrict":true,"declaration":true,"esModuleInterop":true,"module":1,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./build","rootDir":"./src","sourceMap":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":false,"target":9,"useUnknownInCatchVariables":false},"referencedMap":[[190,1],[67,2],[69,3],[71,1],[74,4],[72,5],[70,6],[73,7],[185,8],[184,1],[130,9],[131,9],[132,10],[79,11],[133,12],[134,13],[135,14],[77,1],[136,15],[137,16],[138,17],[139,18],[140,19],[141,20],[142,20],[143,21],[144,22],[145,23],[146,24],[80,1],[78,1],[147,25],[148,26],[149,27],[183,28],[150,29],[151,1],[152,30],[153,31],[154,32],[155,33],[156,34],[157,35],[158,36],[159,37],[160,38],[161,38],[162,39],[163,1],[164,40],[165,41],[167,42],[166,43],[168,44],[169,45],[170,46],[171,47],[172,48],[173,49],[174,50],[175,51],[176,52],[177,53],[178,54],[179,55],[180,56],[81,1],[82,57],[83,1],[84,1],[126,58],[127,59],[128,1],[129,44],[181,60],[182,61],[188,62],[186,1],[68,1],[63,1],[64,1],[12,1],[10,1],[11,1],[16,1],[15,1],[2,1],[17,1],[18,1],[19,1],[20,1],[21,1],[22,1],[23,1],[24,1],[3,1],[25,1],[26,1],[4,1],[27,1],[31,1],[28,1],[29,1],[30,1],[32,1],[33,1],[34,1],[5,1],[35,1],[36,1],[37,1],[38,1],[6,1],[42,1],[39,1],[40,1],[41,1],[43,1],[7,1],[44,1],[49,1],[50,1],[45,1],[46,1],[47,1],[48,1],[8,1],[54,1],[51,1],[52,1],[53,1],[55,1],[9,1],[56,1],[65,1],[57,1],[58,1],[60,1],[59,1],[61,1],[1,1],[62,1],[14,1],[13,1],[102,63],[114,64],[100,65],[115,66],[124,67],[91,68],[92,69],[90,70],[123,62],[118,71],[122,72],[94,73],[111,74],[93,75],[121,76],[88,77],[89,71],[95,78],[96,1],[101,79],[99,78],[86,80],[125,81],[116,82],[105,83],[104,78],[106,84],[109,85],[103,86],[107,87],[119,62],[97,88],[98,89],[110,90],[87,66],[113,91],[112,78],[108,92],[117,1],[85,1],[120,93],[66,1],[76,94],[187,95],[189,96],[75,97]],"version":"6.0.3"}
|