From 3dc696b2a9d26aeb4abaead5c534fb35e3ab9689 Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Sat, 27 Feb 2021 21:58:05 +0000 Subject: [PATCH] Fix semver comparison in palette editor --- .../editor-client/src/js/ui/palette-editor.js | 45 +++++++------------ 1 file changed, 16 insertions(+), 29 deletions(-) diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/palette-editor.js b/packages/node_modules/@node-red/editor-client/src/js/ui/palette-editor.js index 4b1064b28..d50601bdc 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/palette-editor.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/palette-editor.js @@ -34,62 +34,49 @@ RED.palette.editor = (function() { var semverre = /^(?\d+)(\.(?\d+))?(\.(?\d+))?(-(?
[0-9A-Za-z-]+))?(\.(?[0-9A-Za-z-.]+))?$/;
     var NUMBERS_ONLY = /^\d+$/;
 
-
-	function SemVerPart ( part ) {
+    function SemVerPart(part) {
         this.number = 0;
         this.text = part;
-        if ( NUMBERS_ONLY.test( toe ) )
-        {
-            this.number = parseInt( part );
+        if ( NUMBERS_ONLY.test(part)){
+            this.number = parseInt(part);
             this.type = "N";
-        } else
-        {
+        } else {
             this.type = part == undefined || part.length < 1 ? "E" : "T";
         }
     }
 
-    SemVerPart.prototype.compare = function ( other ) {
-        const types = this.type + other.type;
-
-        switch ( types )
-        {
+    SemVerPart.prototype.compare = function(other) {
+        var types = this.type + other.type;
+        switch ( types ) {
             case "EE": return 0;
-
             case "NT":
             case "TE":
             case "EN": return -1;
-
             case "NN": return this.number - other.number;
-
             case "TT": return this.text.localeCompare( other.text );
-
             case "ET":
             case "TN":
             case "NE": return 1;
         }
     };
 
-    function SemVer ( ver ) {
-        const groups = ver.match( semverre ).groups;
+    function SemVer(ver) {
+        var groups = ver.match( semverre ).groups;
         this.parts = [ new SemVerPart( groups.major ), new SemVerPart( groups.minor ), new SemVerPart( groups.patch ), new SemVerPart( groups.pre ), new SemVerPart( groups.build ) ];
     }
 
-    SemVer.prototype.compare = function ( other ) {
-        let result = 0;
-        for ( let i = 0, n = this.parts.length; result == 0 && i < n; i++ )
-        {
+    SemVer.prototype.compare = function(other) {
+        var result = 0;
+        for ( var i = 0, n = this.parts.length; result == 0 && i < n; i++ ) {
             result = this.parts[ i ].compare( other.parts[ i ] );
         }
-
         return result;
     };
 
-    function semVerCompare ( ver1, ver2 ) {
-        const semver1 = new SemVer( ver1 );
-        const semver2 = new SemVer( ver2 );
-
-        const result = semver1.compare( semver2 );
-
+    function semVerCompare(ver1, ver2) {
+        var semver1 = new SemVer(ver1);
+        var semver2 = new SemVer(ver2);
+        var result = semver1.compare(semver2);
         return result;
     }