@abaplint/cli 2.113.3 → 2.113.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +51 -13
- package/package.json +2 -2
package/build/cli.js
CHANGED
|
@@ -7487,7 +7487,7 @@ class SelectLoop extends combi_1.Expression {
|
|
|
7487
7487
|
const packTab = (0, combi_1.seq)(pack, _1.SQLIntoTable);
|
|
7488
7488
|
const into = (0, combi_1.altPrio)(sql_into_structure_1.SQLIntoStructure, _1.SQLIntoList);
|
|
7489
7489
|
const perm = (0, combi_1.per)(_1.SQLFrom, where, sql_up_to_1.SQLUpTo, sql_order_by_1.SQLOrderBy, sql_having_1.SQLHaving, _1.SQLClient, bypass, _1.SQLGroupBy, _1.SQLForAllEntries, (0, combi_1.alt)(tab, into, packTab));
|
|
7490
|
-
const strict = (0, combi_1.seq)(_1.SQLFrom, (0, combi_1.ver)(version_1.Version.v750, _1.SQLFields), where, into, sql_up_to_1.SQLUpTo);
|
|
7490
|
+
const strict = (0, combi_1.seq)(_1.SQLFrom, (0, combi_1.ver)(version_1.Version.v750, _1.SQLFields), (0, combi_1.optPrio)((0, combi_1.seq)(where, into, sql_up_to_1.SQLUpTo)));
|
|
7491
7491
|
const ret = (0, combi_1.seq)("SELECT", (0, combi_1.altPrio)((0, combi_1.seq)((0, combi_1.optPrio)("DISTINCT"), sql_field_list_loop_1.SQLFieldListLoop, perm), strict), (0, combi_1.optPrio)(sql_hints_1.SQLHints));
|
|
7492
7492
|
return ret;
|
|
7493
7493
|
}
|
|
@@ -35465,6 +35465,7 @@ class StatementFlow {
|
|
|
35465
35465
|
graph.addEdge(loopName, graph.getEnd(), flow_graph_1.FLOW_EDGE_TYPE.false);
|
|
35466
35466
|
}
|
|
35467
35467
|
else if (type instanceof Structures.Data
|
|
35468
|
+
|| type instanceof Structures.Constants
|
|
35468
35469
|
|| type instanceof Structures.Types) {
|
|
35469
35470
|
// these doesnt affect control flow, so just take the first statement
|
|
35470
35471
|
const statement = n.getFirstStatement();
|
|
@@ -52682,7 +52683,7 @@ class Registry {
|
|
|
52682
52683
|
}
|
|
52683
52684
|
static abaplintVersion() {
|
|
52684
52685
|
// magic, see build script "version.sh"
|
|
52685
|
-
return "2.113.
|
|
52686
|
+
return "2.113.4";
|
|
52686
52687
|
}
|
|
52687
52688
|
getDDICReferences() {
|
|
52688
52689
|
return this.ddicReferences;
|
|
@@ -76412,6 +76413,35 @@ module.exports = {
|
|
|
76412
76413
|
|
|
76413
76414
|
/***/ }),
|
|
76414
76415
|
|
|
76416
|
+
/***/ "./node_modules/fast-xml-parser/src/ignoreAttributes.js":
|
|
76417
|
+
/*!**************************************************************!*\
|
|
76418
|
+
!*** ./node_modules/fast-xml-parser/src/ignoreAttributes.js ***!
|
|
76419
|
+
\**************************************************************/
|
|
76420
|
+
/***/ ((module) => {
|
|
76421
|
+
|
|
76422
|
+
function getIgnoreAttributesFn(ignoreAttributes) {
|
|
76423
|
+
if (typeof ignoreAttributes === 'function') {
|
|
76424
|
+
return ignoreAttributes
|
|
76425
|
+
}
|
|
76426
|
+
if (Array.isArray(ignoreAttributes)) {
|
|
76427
|
+
return (attrName) => {
|
|
76428
|
+
for (const pattern of ignoreAttributes) {
|
|
76429
|
+
if (typeof pattern === 'string' && attrName === pattern) {
|
|
76430
|
+
return true
|
|
76431
|
+
}
|
|
76432
|
+
if (pattern instanceof RegExp && pattern.test(attrName)) {
|
|
76433
|
+
return true
|
|
76434
|
+
}
|
|
76435
|
+
}
|
|
76436
|
+
}
|
|
76437
|
+
}
|
|
76438
|
+
return () => false
|
|
76439
|
+
}
|
|
76440
|
+
|
|
76441
|
+
module.exports = getIgnoreAttributesFn
|
|
76442
|
+
|
|
76443
|
+
/***/ }),
|
|
76444
|
+
|
|
76415
76445
|
/***/ "./node_modules/fast-xml-parser/src/util.js":
|
|
76416
76446
|
/*!**************************************************!*\
|
|
76417
76447
|
!*** ./node_modules/fast-xml-parser/src/util.js ***!
|
|
@@ -76941,6 +76971,7 @@ function getPositionFromMatch(match) {
|
|
|
76941
76971
|
|
|
76942
76972
|
//parse Empty Node as self closing node
|
|
76943
76973
|
const buildFromOrderedJs = __webpack_require__(/*! ./orderedJs2Xml */ "./node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js");
|
|
76974
|
+
const getIgnoreAttributesFn = __webpack_require__(/*! ../ignoreAttributes */ "./node_modules/fast-xml-parser/src/ignoreAttributes.js")
|
|
76944
76975
|
|
|
76945
76976
|
const defaultOptions = {
|
|
76946
76977
|
attributeNamePrefix: '@_',
|
|
@@ -76978,11 +77009,12 @@ const defaultOptions = {
|
|
|
76978
77009
|
|
|
76979
77010
|
function Builder(options) {
|
|
76980
77011
|
this.options = Object.assign({}, defaultOptions, options);
|
|
76981
|
-
if (this.options.ignoreAttributes || this.options.attributesGroupName) {
|
|
77012
|
+
if (this.options.ignoreAttributes === true || this.options.attributesGroupName) {
|
|
76982
77013
|
this.isAttribute = function(/*a*/) {
|
|
76983
77014
|
return false;
|
|
76984
77015
|
};
|
|
76985
77016
|
} else {
|
|
77017
|
+
this.ignoreAttributesFn = getIgnoreAttributesFn(this.options.ignoreAttributes)
|
|
76986
77018
|
this.attrPrefixLen = this.options.attributeNamePrefix.length;
|
|
76987
77019
|
this.isAttribute = isAttribute;
|
|
76988
77020
|
}
|
|
@@ -77011,13 +77043,14 @@ Builder.prototype.build = function(jObj) {
|
|
|
77011
77043
|
[this.options.arrayNodeName] : jObj
|
|
77012
77044
|
}
|
|
77013
77045
|
}
|
|
77014
|
-
return this.j2x(jObj, 0).val;
|
|
77046
|
+
return this.j2x(jObj, 0, []).val;
|
|
77015
77047
|
}
|
|
77016
77048
|
};
|
|
77017
77049
|
|
|
77018
|
-
Builder.prototype.j2x = function(jObj, level) {
|
|
77050
|
+
Builder.prototype.j2x = function(jObj, level, ajPath) {
|
|
77019
77051
|
let attrStr = '';
|
|
77020
77052
|
let val = '';
|
|
77053
|
+
const jPath = ajPath.join('.')
|
|
77021
77054
|
for (let key in jObj) {
|
|
77022
77055
|
if(!Object.prototype.hasOwnProperty.call(jObj, key)) continue;
|
|
77023
77056
|
if (typeof jObj[key] === 'undefined') {
|
|
@@ -77040,9 +77073,9 @@ Builder.prototype.j2x = function(jObj, level) {
|
|
|
77040
77073
|
} else if (typeof jObj[key] !== 'object') {
|
|
77041
77074
|
//premitive type
|
|
77042
77075
|
const attr = this.isAttribute(key);
|
|
77043
|
-
if (attr) {
|
|
77076
|
+
if (attr && !this.ignoreAttributesFn(attr, jPath)) {
|
|
77044
77077
|
attrStr += this.buildAttrPairStr(attr, '' + jObj[key]);
|
|
77045
|
-
}else {
|
|
77078
|
+
} else if (!attr) {
|
|
77046
77079
|
//tag value
|
|
77047
77080
|
if (key === this.options.textNodeName) {
|
|
77048
77081
|
let newval = this.options.tagValueProcessor(key, '' + jObj[key]);
|
|
@@ -77066,13 +77099,13 @@ Builder.prototype.j2x = function(jObj, level) {
|
|
|
77066
77099
|
// val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;
|
|
77067
77100
|
} else if (typeof item === 'object') {
|
|
77068
77101
|
if(this.options.oneListGroup){
|
|
77069
|
-
const result = this.j2x(item, level + 1);
|
|
77102
|
+
const result = this.j2x(item, level + 1, ajPath.concat(key));
|
|
77070
77103
|
listTagVal += result.val;
|
|
77071
77104
|
if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {
|
|
77072
77105
|
listTagAttr += result.attrStr
|
|
77073
77106
|
}
|
|
77074
77107
|
}else{
|
|
77075
|
-
listTagVal += this.processTextOrObjNode(item, key, level)
|
|
77108
|
+
listTagVal += this.processTextOrObjNode(item, key, level, ajPath)
|
|
77076
77109
|
}
|
|
77077
77110
|
} else {
|
|
77078
77111
|
if (this.options.oneListGroup) {
|
|
@@ -77097,7 +77130,7 @@ Builder.prototype.j2x = function(jObj, level) {
|
|
|
77097
77130
|
attrStr += this.buildAttrPairStr(Ks[j], '' + jObj[key][Ks[j]]);
|
|
77098
77131
|
}
|
|
77099
77132
|
} else {
|
|
77100
|
-
val += this.processTextOrObjNode(jObj[key], key, level)
|
|
77133
|
+
val += this.processTextOrObjNode(jObj[key], key, level, ajPath)
|
|
77101
77134
|
}
|
|
77102
77135
|
}
|
|
77103
77136
|
}
|
|
@@ -77112,8 +77145,8 @@ Builder.prototype.buildAttrPairStr = function(attrName, val){
|
|
|
77112
77145
|
} else return ' ' + attrName + '="' + val + '"';
|
|
77113
77146
|
}
|
|
77114
77147
|
|
|
77115
|
-
function processTextOrObjNode (object, key, level) {
|
|
77116
|
-
const result = this.j2x(object, level + 1);
|
|
77148
|
+
function processTextOrObjNode (object, key, level, ajPath) {
|
|
77149
|
+
const result = this.j2x(object, level + 1, ajPath.concat(key));
|
|
77117
77150
|
if (object[this.options.textNodeName] !== undefined && Object.keys(object).length === 1) {
|
|
77118
77151
|
return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);
|
|
77119
77152
|
} else {
|
|
@@ -77601,6 +77634,7 @@ const util = __webpack_require__(/*! ../util */ "./node_modules/fast-xml-parser/
|
|
|
77601
77634
|
const xmlNode = __webpack_require__(/*! ./xmlNode */ "./node_modules/fast-xml-parser/src/xmlparser/xmlNode.js");
|
|
77602
77635
|
const readDocType = __webpack_require__(/*! ./DocTypeReader */ "./node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js");
|
|
77603
77636
|
const toNumber = __webpack_require__(/*! strnum */ "./node_modules/strnum/strnum.js");
|
|
77637
|
+
const getIgnoreAttributesFn = __webpack_require__(/*! ../ignoreAttributes */ "./node_modules/fast-xml-parser/src/ignoreAttributes.js")
|
|
77604
77638
|
|
|
77605
77639
|
// const regx =
|
|
77606
77640
|
// '<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)'
|
|
@@ -77649,6 +77683,7 @@ class OrderedObjParser{
|
|
|
77649
77683
|
this.readStopNodeData = readStopNodeData;
|
|
77650
77684
|
this.saveTextToParentTag = saveTextToParentTag;
|
|
77651
77685
|
this.addChild = addChild;
|
|
77686
|
+
this.ignoreAttributesFn = getIgnoreAttributesFn(this.options.ignoreAttributes)
|
|
77652
77687
|
}
|
|
77653
77688
|
|
|
77654
77689
|
}
|
|
@@ -77721,7 +77756,7 @@ function resolveNameSpace(tagname) {
|
|
|
77721
77756
|
const attrsRegx = new RegExp('([^\\s=]+)\\s*(=\\s*([\'"])([\\s\\S]*?)\\3)?', 'gm');
|
|
77722
77757
|
|
|
77723
77758
|
function buildAttributesMap(attrStr, jPath, tagName) {
|
|
77724
|
-
if (
|
|
77759
|
+
if (this.options.ignoreAttributes !== true && typeof attrStr === 'string') {
|
|
77725
77760
|
// attrStr = attrStr.replace(/\r?\n/g, ' ');
|
|
77726
77761
|
//attrStr = attrStr || attrStr.trim();
|
|
77727
77762
|
|
|
@@ -77730,6 +77765,9 @@ function buildAttributesMap(attrStr, jPath, tagName) {
|
|
|
77730
77765
|
const attrs = {};
|
|
77731
77766
|
for (let i = 0; i < len; i++) {
|
|
77732
77767
|
const attrName = this.resolveNameSpace(matches[i][1]);
|
|
77768
|
+
if (this.ignoreAttributesFn(attrName, jPath)) {
|
|
77769
|
+
continue
|
|
77770
|
+
}
|
|
77733
77771
|
let oldVal = matches[i][4];
|
|
77734
77772
|
let aName = this.options.attributeNamePrefix + attrName;
|
|
77735
77773
|
if (attrName.length) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abaplint/cli",
|
|
3
|
-
"version": "2.113.
|
|
3
|
+
"version": "2.113.4",
|
|
4
4
|
"description": "abaplint - Command Line Interface",
|
|
5
5
|
"funding": "https://github.com/sponsors/larshp",
|
|
6
6
|
"bin": {
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
},
|
|
39
39
|
"homepage": "https://abaplint.org",
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@abaplint/core": "^2.113.
|
|
41
|
+
"@abaplint/core": "^2.113.4",
|
|
42
42
|
"@types/chai": "^4.3.19",
|
|
43
43
|
"@types/glob": "^8.1.0",
|
|
44
44
|
"@types/minimist": "^1.2.5",
|