diff --git a/pom.xml b/pom.xml
index df8c6ed8d6..de4baadb8a 100755
--- a/pom.xml
+++ b/pom.xml
@@ -78,7 +78,7 @@
3.8.1
3.21.9
1.42.1
- 1.0.7
+ 1.0.8
1.18.18
1.2.4
1.2.5
diff --git a/ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js b/ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js
index d1d47d0c75..ec4133da2a 100644
--- a/ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js
+++ b/ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js
@@ -4656,10 +4656,12 @@ var JSHINT = (function() {
case "else":
case "finally":
case "for":
+ case "foreach":
case "if":
case "in":
case "instanceof":
case "return":
+ case "until":
case "switch":
case "throw":
case "try":
@@ -5387,6 +5389,7 @@ var JSHINT = (function() {
}
switch (state.funct["(verb)"]) {
case "break":
+ case "until":
case "continue":
case "return":
case "throw":
@@ -7691,6 +7694,20 @@ var JSHINT = (function() {
return this;
}).labelled = true;
+ blockstmt("until", function(context) {
+ var t = state.tokens.next;
+ state.funct["(breakage)"] += 1;
+ state.funct["(loopage)"] += 1;
+ increaseComplexityCount();
+ advance("(");
+ checkCondAssignment(expression(context, 0));
+ advance(")", t);
+ block(context, true, true);
+ state.funct["(breakage)"] -= 1;
+ state.funct["(loopage)"] -= 1;
+ return this;
+ }).labelled = true;
+
blockstmt("with", function(context) {
var t = state.tokens.next;
if (state.isStrict()) {
@@ -7840,7 +7857,12 @@ var JSHINT = (function() {
increaseComplexityCount();
this.first = block(context, true, true);
- advance("while");
+ var s = state.tokens.next;
+ if (s.value !== "while") {
+ advance("until");
+ } else {
+ advance("while");
+ }
var t = state.tokens.next;
advance("(");
checkCondAssignment(expression(context, 0));
@@ -8135,7 +8157,7 @@ var JSHINT = (function() {
state.funct["(breakage)"] += 1;
state.funct["(loopage)"] += 1;
- state.funct["(breakage)"] -= 1;
+ // state.funct["(breakage)"] -= 1;
state.funct["(loopage)"] -= 1;
} else {
nolinebreak(state.tokens.curr);
@@ -9755,9 +9777,9 @@ Lexer.prototype = {
scanKeyword: function() {
var result = /^[a-zA-Z_$][a-zA-Z0-9_$]*/.exec(this.input);
var keywords = [
- "if", "in", "do", "var", "for", "new",
+ "if", "in", "do", "var", "for", "foreach", "new",
"try", "let", "this", "else", "case",
- "void", "with", "enum", "while", "break",
+ "void", "with", "enum", "while", "until", "break",
"catch", "throw", "const", "yield", "class",
"super", "return", "typeof", "delete",
"switch", "export", "import", "default",