diff --git a/dist/xrfragment.aframe.js b/dist/xrfragment.aframe.js index cb29f96..9cdf499 100644 --- a/dist/xrfragment.aframe.js +++ b/dist/xrfragment.aframe.js @@ -252,12 +252,12 @@ xrfragment_Parser.parse = function(key,value,store) { var v = new xrfragment_XRF(key,Frag_h[key]); if(Object.prototype.hasOwnProperty.call(Frag_h,key)) { if(!v.validate(value)) { - console.log("src/xrfragment/Parser.hx:79:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); + console.log("src/xrfragment/Parser.hx:82:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); return false; } store[key] = v; if(xrfragment_Parser.debug) { - console.log("src/xrfragment/Parser.hx:83:","✔ " + key + ": " + v.string); + console.log("src/xrfragment/Parser.hx:86:","✔ " + key + ": " + v.string); } } else { if(typeof(value) == "string") { diff --git a/dist/xrfragment.js b/dist/xrfragment.js index 8374a5f..85d2f1f 100644 --- a/dist/xrfragment.js +++ b/dist/xrfragment.js @@ -252,12 +252,12 @@ xrfragment_Parser.parse = function(key,value,store) { var v = new xrfragment_XRF(key,Frag_h[key]); if(Object.prototype.hasOwnProperty.call(Frag_h,key)) { if(!v.validate(value)) { - console.log("src/xrfragment/Parser.hx:79:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); + console.log("src/xrfragment/Parser.hx:82:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); return false; } store[key] = v; if(xrfragment_Parser.debug) { - console.log("src/xrfragment/Parser.hx:83:","✔ " + key + ": " + v.string); + console.log("src/xrfragment/Parser.hx:86:","✔ " + key + ": " + v.string); } } else { if(typeof(value) == "string") { diff --git a/dist/xrfragment.lua b/dist/xrfragment.lua index b315695..84f6ea8 100644 --- a/dist/xrfragment.lua +++ b/dist/xrfragment.lua @@ -1614,12 +1614,12 @@ __xrfragment_Parser.parse = function(key,value,store) local v = __xrfragment_XRF.new(key, ret); if (Frag_h[key] ~= nil) then if (not v:validate(value)) then - __haxe_Log.trace(Std.string(Std.string(Std.string(Std.string("⚠ fragment '") .. Std.string(key)) .. Std.string("' has incompatible value (")) .. Std.string(value)) .. Std.string(")"), _hx_o({__fields__={fileName=true,lineNumber=true,className=true,methodName=true},fileName="src/xrfragment/Parser.hx",lineNumber=79,className="xrfragment.Parser",methodName="parse"})); + __haxe_Log.trace(Std.string(Std.string(Std.string(Std.string("⚠ fragment '") .. Std.string(key)) .. Std.string("' has incompatible value (")) .. Std.string(value)) .. Std.string(")"), _hx_o({__fields__={fileName=true,lineNumber=true,className=true,methodName=true},fileName="src/xrfragment/Parser.hx",lineNumber=82,className="xrfragment.Parser",methodName="parse"})); do return false end; end; store[key] = v; if (__xrfragment_Parser.debug) then - __haxe_Log.trace(Std.string(Std.string(Std.string("✔ ") .. Std.string(key)) .. Std.string(": ")) .. Std.string(v.string), _hx_o({__fields__={fileName=true,lineNumber=true,className=true,methodName=true},fileName="src/xrfragment/Parser.hx",lineNumber=83,className="xrfragment.Parser",methodName="parse"})); + __haxe_Log.trace(Std.string(Std.string(Std.string("✔ ") .. Std.string(key)) .. Std.string(": ")) .. Std.string(v.string), _hx_o({__fields__={fileName=true,lineNumber=true,className=true,methodName=true},fileName="src/xrfragment/Parser.hx",lineNumber=86,className="xrfragment.Parser",methodName="parse"})); end; else if (__lua_Boot.__instanceof(value, String)) then diff --git a/dist/xrfragment.module.js b/dist/xrfragment.module.js index d69b3ed..66637e8 100644 --- a/dist/xrfragment.module.js +++ b/dist/xrfragment.module.js @@ -252,12 +252,12 @@ xrfragment_Parser.parse = function(key,value,store) { var v = new xrfragment_XRF(key,Frag_h[key]); if(Object.prototype.hasOwnProperty.call(Frag_h,key)) { if(!v.validate(value)) { - console.log("src/xrfragment/Parser.hx:79:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); + console.log("src/xrfragment/Parser.hx:82:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); return false; } store[key] = v; if(xrfragment_Parser.debug) { - console.log("src/xrfragment/Parser.hx:83:","✔ " + key + ": " + v.string); + console.log("src/xrfragment/Parser.hx:86:","✔ " + key + ": " + v.string); } } else { if(typeof(value) == "string") { diff --git a/dist/xrfragment.three.js b/dist/xrfragment.three.js index 392bd0b..15caeec 100644 --- a/dist/xrfragment.three.js +++ b/dist/xrfragment.three.js @@ -252,12 +252,12 @@ xrfragment_Parser.parse = function(key,value,store) { var v = new xrfragment_XRF(key,Frag_h[key]); if(Object.prototype.hasOwnProperty.call(Frag_h,key)) { if(!v.validate(value)) { - console.log("src/xrfragment/Parser.hx:79:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); + console.log("src/xrfragment/Parser.hx:82:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); return false; } store[key] = v; if(xrfragment_Parser.debug) { - console.log("src/xrfragment/Parser.hx:83:","✔ " + key + ": " + v.string); + console.log("src/xrfragment/Parser.hx:86:","✔ " + key + ": " + v.string); } } else { if(typeof(value) == "string") { diff --git a/dist/xrfragment.three.module.js b/dist/xrfragment.three.module.js index a48f216..2c1222d 100644 --- a/dist/xrfragment.three.module.js +++ b/dist/xrfragment.three.module.js @@ -252,12 +252,12 @@ xrfragment_Parser.parse = function(key,value,store) { var v = new xrfragment_XRF(key,Frag_h[key]); if(Object.prototype.hasOwnProperty.call(Frag_h,key)) { if(!v.validate(value)) { - console.log("src/xrfragment/Parser.hx:79:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); + console.log("src/xrfragment/Parser.hx:82:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); return false; } store[key] = v; if(xrfragment_Parser.debug) { - console.log("src/xrfragment/Parser.hx:83:","✔ " + key + ": " + v.string); + console.log("src/xrfragment/Parser.hx:86:","✔ " + key + ": " + v.string); } } else { if(typeof(value) == "string") { diff --git a/make b/make index 6d9cbdd..6cefa29 100755 --- a/make +++ b/make @@ -55,6 +55,8 @@ build(){ } build_js(){ + # prepend license to vanilla lib + #echo "// https://xrfragment.org\n// SPDX-License-Identifier: MPL-2.0\n$(cat dist/xrfragment.js)" > dist/xrfragment.js # add js module cat dist/xrfragment.js > dist/xrfragment.module.js echo "export default xrfragment;" >> dist/xrfragment.module.js diff --git a/src/xrfragment/Query.hx b/src/xrfragment/Query.hx index 4030963..d66c42b 100644 --- a/src/xrfragment/Query.hx +++ b/src/xrfragment/Query.hx @@ -97,6 +97,7 @@ class Query { if( str.indexOf("<") != -1 ) oper = "<"; // 1. then scan for `<` operator if( str.indexOf(">=") != -1 ) oper = ">="; // 1. then scan for `>=` operator if( str.indexOf("<=") != -1 ) oper = "<="; // 1. then scan for `<=` operator + if( isExclude.match(k) ){ oper = "!="; k = k.substr(1); // 1. then strip key-operator: convert "-foo" into "foo" }else v = v.substr(oper.length); // 1. then strip value operator: change value ">=foo" into "foo" diff --git a/test/generated/test.js b/test/generated/test.js index 5562b22..5054f06 100644 --- a/test/generated/test.js +++ b/test/generated/test.js @@ -366,12 +366,12 @@ xrfragment_Parser.parse = function(key,value,store) { var v = new xrfragment_XRF(key,Frag_h[key]); if(Object.prototype.hasOwnProperty.call(Frag_h,key)) { if(!v.validate(value)) { - console.log("src/xrfragment/Parser.hx:79:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); + console.log("src/xrfragment/Parser.hx:82:","⚠ fragment '" + key + "' has incompatible value (" + value + ")"); return false; } store[key] = v; if(xrfragment_Parser.debug) { - console.log("src/xrfragment/Parser.hx:83:","✔ " + key + ": " + v.string); + console.log("src/xrfragment/Parser.hx:86:","✔ " + key + ": " + v.string); } } else { if(typeof(value) == "string") {