pict 1.0.282 → 1.0.284
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/dist/pict.compatible.js +11 -10
- package/dist/pict.compatible.js.map +1 -1
- package/dist/pict.compatible.min.js +2 -2
- package/dist/pict.compatible.min.js.map +1 -1
- package/dist/pict.js +11 -10
- package/dist/pict.js.map +1 -1
- package/dist/pict.min.js +2 -2
- package/dist/pict.min.js.map +1 -1
- package/package.json +1 -1
- package/source/filters/Filter.js +50 -15
- package/test/Pict_FilterProvider_tests.js +1 -1
- package/types/source/filters/Filter.d.ts.map +1 -1
package/dist/pict.compatible.js
CHANGED
|
@@ -5101,7 +5101,7 @@ try{if(!global.localStorage)return false;}catch(_){return false;}var val=global.
|
|
|
5101
5101
|
// presumably different callback function.
|
|
5102
5102
|
// This makes sure that own properties are retained, so that
|
|
5103
5103
|
// decorations and such are not lost along the way.
|
|
5104
|
-
module.exports=wrappy;function wrappy(fn,cb){if(fn&&cb)return wrappy(fn)(cb);if(typeof fn!=='function')throw new TypeError('need wrapper function');Object.keys(fn).forEach(function(k){wrapper[k]=fn[k];});return wrapper;function wrapper(){var args=new Array(arguments.length);for(var i=0;i<args.length;i++){args[i]=arguments[i];}var ret=fn.apply(this,args);var cb=args[args.length-1];if(typeof ret==='function'&&ret!==cb){Object.keys(cb).forEach(function(k){ret[k]=cb[k];});}return ret;}}},{}],190:[function(require,module,exports){module.exports=extend;var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(){var target={};for(var i=0;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;}},{}],191:[function(require,module,exports){module.exports={"name":"pict","version":"1.0.
|
|
5104
|
+
module.exports=wrappy;function wrappy(fn,cb){if(fn&&cb)return wrappy(fn)(cb);if(typeof fn!=='function')throw new TypeError('need wrapper function');Object.keys(fn).forEach(function(k){wrapper[k]=fn[k];});return wrapper;function wrapper(){var args=new Array(arguments.length);for(var i=0;i<args.length;i++){args[i]=arguments[i];}var ret=fn.apply(this,args);var cb=args[args.length-1];if(typeof ret==='function'&&ret!==cb){Object.keys(cb).forEach(function(k){ret[k]=cb[k];});}return ret;}}},{}],190:[function(require,module,exports){module.exports=extend;var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(){var target={};for(var i=0;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;}},{}],191:[function(require,module,exports){module.exports={"name":"pict","version":"1.0.284","description":"Pict browser library.","main":"source/Pict.js","scripts":{"start":"node source/Pict.js","test":"npx mocha -u tdd -R spec","tests":"npx mocha -u tdd --exit -R spec --grep","coverage":"npx nyc --reporter=lcov --reporter=text-lcov npx mocha -- -u tdd -R spec","build":"npx quack build","docker-dev-build":"docker build ./ -f Dockerfile_LUXURYCode -t pict-image:local","docker-dev-run":"docker run -it -d --name pict-dev -p 37447:8080 -p 19506:8086 -v \"$PWD/.config:/home/coder/.config\" -v \"$PWD:/home/coder/pict\" -u \"$(id -u):$(id -g)\" -e \"DOCKER_USER=$USER\" pict-image:local","docker-dev-shell":"docker exec -it pict-dev /bin/bash","lint":"eslint source/**/*.js test/**/*.js","types":"tsc -p ."},"types":"types/source/Pict.d.ts","mocha":{"diff":true,"extension":["js"],"package":"./package.json","reporter":"spec","slow":"75","timeout":"5000","ui":"tdd","watch-files":["source/**/*.js","test/**/*.js"],"watch-ignore":["lib/vendor"]},"repository":{"type":"git","url":"git+https://stevenvelozo@github.com/stevenvelozo/pict.git"},"author":"steven velozo <steven@velozo.com>","license":"MIT","bugs":{"url":"https://github.com/stevenvelozo/pict/issues"},"homepage":"https://github.com/stevenvelozo/pict#readme","devDependencies":{"@eslint/js":"^9.27.0","@types/jquery":"^3.5.32","@types/sinon":"^17.0.4","eslint":"^9.27.0","globals":"^16.2.0","quackage":"^1.0.42","sinon":"^20.0.0","typescript":"^5.8.3"},"dependencies":{"cachetrax":"^1.0.4","fable":"^3.1.16","pict-application":"^1.0.27","pict-provider":"^1.0.6","pict-template":"^1.0.12","pict-view":"^1.0.62"}};},{}],192:[function(require,module,exports){// This assumes Pict has been required in the browser. Delcare these as globals so linter can do its job.
|
|
5105
5105
|
/* global Pict, _Pict: writeable *//**
|
|
5106
5106
|
* Simple function to load a pict Application
|
|
5107
5107
|
*
|
|
@@ -5793,7 +5793,7 @@ return this.contentMap[pAddress];}this.pict.log.warn("Mock read from Address ".c
|
|
|
5793
5793
|
* @param {import('../Pict.js')} pFable
|
|
5794
5794
|
*/function FilterMeadowStanzaTokenGenerator(pFable){_classCallCheck2(this,FilterMeadowStanzaTokenGenerator);this.fable=pFable;this.pict=pFable;this.log=pFable.log;}/**
|
|
5795
5795
|
* @param {FilterState} pFilterState
|
|
5796
|
-
*/return _createClass2(FilterMeadowStanzaTokenGenerator,[{key:"generateMeadowFilterStanzas",value:function generateMeadowFilterStanzas(pFilterState){var tmpResult=[];pFilterState.UserFilters=[];var _iterator13=_createForOfIteratorHelper(pFilterState.FilterConfiguration||[]),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var tmpFilterConfig=_step13.value;/** @type {PreparedFilter} */var tmpFilterResult={GUID:this.pict.getUUID(),Filters:[]};switch(tmpFilterConfig.Type){case'ExternalJoinMatch':case'ExternalJoinStringMatch':case'ExternalJoinDateMatch':case'ExternalJoinNumericMatch':/*
|
|
5796
|
+
*/return _createClass2(FilterMeadowStanzaTokenGenerator,[{key:"generateMeadowFilterStanzas",value:function generateMeadowFilterStanzas(pFilterState){var tmpResult=[];pFilterState.UserFilters=[];var _iterator13=_createForOfIteratorHelper(pFilterState.FilterConfiguration||[]),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var tmpFilterConfig=_step13.value;/** @type {PreparedFilter} */var tmpFilterResult={GUID:this.pict.getUUID(),Filters:[]};var tmpValuesArray=Array.isArray(tmpFilterConfig.Values)?tmpFilterConfig.Values:tmpFilterConfig.Value!=null?[tmpFilterConfig.Value]:[];switch(tmpFilterConfig.Type){case'ExternalJoinMatch':case'ExternalJoinStringMatch':case'ExternalJoinDateMatch':case'ExternalJoinNumericMatch':/*
|
|
5797
5797
|
"Values": [ "John", "Jane" ],
|
|
5798
5798
|
"ExternalFilterByColumns": [ "Name" ],
|
|
5799
5799
|
"ExactMatch": false,
|
|
@@ -5806,29 +5806,30 @@ return this.contentMap[pAddress];}this.pict.log.warn("Mock read from Address ".c
|
|
|
5806
5806
|
|
|
5807
5807
|
"ExternalFilterByTable": "Author",
|
|
5808
5808
|
"ExternalFilterByTableConnectionColumn": "IDAuthor",
|
|
5809
|
-
*/var _iterator14=_createForOfIteratorHelper(tmpFilterConfig.ExternalFilterByColumns||(tmpFilterConfig.ExternalFilterByColumn?[tmpFilterConfig.ExternalFilterByColumn]:['Name'])),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var tmpField=_step14.value;var _iterator15=_createForOfIteratorHelper(
|
|
5810
|
-
}tmpFilterResult.Filters.push(tmpFilter);}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}if(!tmpFilterConfig.JoinTable){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinTable, cannot filter join table."),{FilterConfig:tmpFilterConfig});break;}if(!tmpFilterConfig.JoinTableExternalConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinTableExternalConnectionColumn, cannot filter join table [").concat(tmpFilterConfig.JoinTable,"]."));break;}if(tmpFilterResult.Filters.length>0){tmpFilterResult.Filters.push({Index:0,Fulcrum:true,Entity:tmpFilterConfig.JoinTable,Instruction:'FBL',Field:tmpFilterConfig.JoinTableExternalConnectionColumn,Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinTableExternalConnectionColumn,"^Record.State[Step-1]~}")});if(!tmpFilterConfig.CoreConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing CoreConnectionColumn, cannot filter core table [").concat(pFilterState.Entity,"]."));break;}tmpFilterResult.JoinConfig={CoreEntity:pFilterState.Entity,Instruction:'FBLOR',Fields:[tmpFilterConfig.CoreConnectionColumn],Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinTableCoreConnectionColumn,"^Record.State[Step0]~}")};}break;case'ExternalJoinStringRange':case'ExternalJoinNumericRange':case'ExternalJoinDateRange':case'ExternalJoinRange':if(!tmpFilterConfig.Values
|
|
5811
|
-
}var _iterator16=_createForOfIteratorHelper(tmpFilterConfig.ExternalFilterByColumns||(tmpFilterConfig.ExternalFilterByColumn?[tmpFilterConfig.ExternalFilterByColumn]:['Name'])),_step16;try{for(_iterator16.s();!(_step16=_iterator16.n()).done;){var _tmpField=_step16.value;if(tmpFilterConfig.Values&&tmpFilterConfig.Values.Start){tmpFilterResult.Filters.push({Index:-1,CoreEntity:true,Entity:pFilterState.Entity,Instruction:'
|
|
5809
|
+
*/var _iterator14=_createForOfIteratorHelper(tmpFilterConfig.ExternalFilterByColumns||(tmpFilterConfig.ExternalFilterByColumn?[tmpFilterConfig.ExternalFilterByColumn]:['Name'])),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var tmpField=_step14.value;var _iterator15=_createForOfIteratorHelper(tmpValuesArray),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var tmpValue=_step15.value;var tmpFilter={Index:-1,Entity:tmpFilterConfig.ExternalFilterByTable,Instruction:'FBVOR',Field:tmpField};if(tmpFilterConfig.ExactMatch||typeof tmpFilterConfig.ExactMatch==='undefined'&&(tmpFilterConfig.Type=='ExternalJoinNumericMatch'||tmpFilterConfig.Type=='ExternalJoinDateMatch')){tmpFilter.Operator='EQ';tmpFilter.Value=tmpValue;}else{tmpFilter.Operator='LK';tmpFilter.Value="%25".concat(tmpValue,"%25");//FIXME: point of URI encoding needs to be addressed
|
|
5810
|
+
}tmpFilterResult.Filters.push(tmpFilter);}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}if(!tmpFilterConfig.JoinTable){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinTable, cannot filter join table."),{FilterConfig:tmpFilterConfig});break;}if(!tmpFilterConfig.JoinTableExternalConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinTableExternalConnectionColumn, cannot filter join table [").concat(tmpFilterConfig.JoinTable,"]."));break;}if(tmpFilterResult.Filters.length>0){tmpFilterResult.Filters.push({Index:0,Fulcrum:true,Entity:tmpFilterConfig.JoinTable,Instruction:'FBL',Field:tmpFilterConfig.JoinTableExternalConnectionColumn,Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinTableExternalConnectionColumn,"^Record.State[Step-1]~}")});if(!tmpFilterConfig.CoreConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing CoreConnectionColumn, cannot filter core table [").concat(pFilterState.Entity,"]."));break;}tmpFilterResult.JoinConfig={CoreEntity:pFilterState.Entity,Instruction:'FBLOR',Fields:[tmpFilterConfig.CoreConnectionColumn],Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinTableCoreConnectionColumn,"^Record.State[Step0]~}")};}break;case'ExternalJoinStringRange':case'ExternalJoinNumericRange':case'ExternalJoinDateRange':case'ExternalJoinRange':if(!tmpFilterConfig.Values||tmpFilterConfig.Values.Start==null&&tmpFilterConfig.Values.End==null){break;}// do not honor '0' for dates
|
|
5811
|
+
if(tmpFilterConfig.Type=='ExternalJoinDateRange'){if((!tmpFilterConfig.Values.Start||tmpFilterConfig.Values.Start=='0')&&(!tmpFilterConfig.Values.End||tmpFilterConfig.Values.End=='0')){break;}}var _iterator16=_createForOfIteratorHelper(tmpFilterConfig.ExternalFilterByColumns||(tmpFilterConfig.ExternalFilterByColumn?[tmpFilterConfig.ExternalFilterByColumn]:['Name'])),_step16;try{for(_iterator16.s();!(_step16=_iterator16.n()).done;){var _tmpField=_step16.value;if(tmpFilterConfig.Values&&tmpFilterConfig.Values.Start&&(tmpFilterConfig.Type!='ExternalJoinDateRange'||tmpFilterConfig.Values.Start!='0')){tmpFilterResult.Filters.push({Index:-1,CoreEntity:true,Entity:pFilterState.Entity,Instruction:'FBV',Field:_tmpField,Operator:tmpFilterConfig.StartExclusive?'GT':'GE',Value:tmpFilterConfig.Values.Start});}if(tmpFilterConfig.Values&&tmpFilterConfig.Values.End&&(tmpFilterConfig.Type!='ExternalJoinDateRange'||tmpFilterConfig.Values.End!='0')){tmpFilterResult.Filters.push({Index:-1,CoreEntity:true,Entity:pFilterState.Entity,Instruction:'FBV',Field:_tmpField,Operator:tmpFilterConfig.EndExclusive?'LT':'LE',Value:tmpFilterConfig.Values.End});}}}catch(err){_iterator16.e(err);}finally{_iterator16.f();}if(!tmpFilterConfig.JoinTable){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinTable, cannot filter join table."),{FilterConfig:tmpFilterConfig});break;}if(!tmpFilterConfig.JoinTableExternalConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinTableExternalConnectionColumn, cannot filter join table [").concat(tmpFilterConfig.JoinTable,"]."));break;}if(tmpFilterResult.Filters.length>0){tmpFilterResult.Filters.push({Index:0,Fulcrum:true,Entity:tmpFilterConfig.JoinTable,Instruction:'FBL',Field:tmpFilterConfig.JoinTableExternalConnectionColumn,Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinTableExternalConnectionColumn,"^Record.State[Step-1]~}")});if(!tmpFilterConfig.CoreConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing CoreConnectionColumn, cannot filter core table [").concat(pFilterState.Entity,"]."));break;}if(!tmpFilterConfig.JoinTableCoreConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinTableCoreConnectionColumn, cannot filter core table [").concat(pFilterState.Entity,"]."));break;}tmpFilterResult.JoinConfig={CoreEntity:pFilterState.Entity,Instruction:'FBLOR',Fields:[tmpFilterConfig.CoreConnectionColumn],Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinTableCoreConnectionColumn,"^Record.State[Step0]~}")};}break;case'StringRange':case'DateRange':case'NumericRange':case'Range':if(!tmpFilterConfig.Values||tmpFilterConfig.Values.Start==null&&tmpFilterConfig.Values.End==null){break;}// do not honor '0' for dates
|
|
5812
|
+
if(tmpFilterConfig.Type=='DateRange'){if((!tmpFilterConfig.Values.Start||tmpFilterConfig.Values.Start=='0')&&(!tmpFilterConfig.Values.End||tmpFilterConfig.Values.End=='0')){break;}}/*
|
|
5812
5813
|
"Values":
|
|
5813
5814
|
{
|
|
5814
5815
|
"Start": "2023-01-01T00:00:00Z",
|
|
5815
5816
|
"End": "2024-01-01T00:00:00Z"
|
|
5816
5817
|
},
|
|
5817
5818
|
"FilterByColumn": "CreateDate",
|
|
5818
|
-
*/var _iterator17=_createForOfIteratorHelper(tmpFilterConfig.FilterByColumns||(tmpFilterConfig.FilterByColumn?[tmpFilterConfig.FilterByColumn]:['Name'])),_step17;try{for(_iterator17.s();!(_step17=_iterator17.n()).done;){var _tmpField2=_step17.value;if(tmpFilterConfig.Values&&tmpFilterConfig.Values.Start){tmpFilterResult.Filters.push({Index:0,CoreEntity:true,Entity:pFilterState.Entity,Instruction:'FBV',Field:_tmpField2,Operator:tmpFilterConfig.StartExclusive?'GT':'GE',Value:tmpFilterConfig.Values.Start});}if(tmpFilterConfig.Values&&tmpFilterConfig.Values.End){tmpFilterResult.Filters.push({Index:0,CoreEntity:true,Entity:pFilterState.Entity,Instruction:'FBV',Field:_tmpField2,Operator:tmpFilterConfig.EndExclusive?'LT':'LE',Value:tmpFilterConfig.Values.End});}}}catch(err){_iterator17.e(err);}finally{_iterator17.f();}break;case'StringMatch':case'DateMatch':case'NumericMatch':case'Match':/*
|
|
5819
|
+
*/var _iterator17=_createForOfIteratorHelper(tmpFilterConfig.FilterByColumns||(tmpFilterConfig.FilterByColumn?[tmpFilterConfig.FilterByColumn]:['Name'])),_step17;try{for(_iterator17.s();!(_step17=_iterator17.n()).done;){var _tmpField2=_step17.value;if(tmpFilterConfig.Values&&tmpFilterConfig.Values.Start&&(tmpFilterConfig.Type!='DateRange'||tmpFilterConfig.Values.Start!='0')){tmpFilterResult.Filters.push({Index:0,CoreEntity:true,Entity:pFilterState.Entity,Instruction:'FBV',Field:_tmpField2,Operator:tmpFilterConfig.StartExclusive?'GT':'GE',Value:tmpFilterConfig.Values.Start});}if(tmpFilterConfig.Values&&tmpFilterConfig.Values.End&&(tmpFilterConfig.Type!='DateRange'||tmpFilterConfig.Values.End!='0')){tmpFilterResult.Filters.push({Index:0,CoreEntity:true,Entity:pFilterState.Entity,Instruction:'FBV',Field:_tmpField2,Operator:tmpFilterConfig.EndExclusive?'LT':'LE',Value:tmpFilterConfig.Values.End});}}}catch(err){_iterator17.e(err);}finally{_iterator17.f();}break;case'StringMatch':case'DateMatch':case'NumericMatch':case'Match':/*
|
|
5819
5820
|
"Values": [ "John", "Jane" ],
|
|
5820
5821
|
"FilterByColumn": "Name",
|
|
5821
5822
|
"ExactMatch": false,
|
|
5822
|
-
*/var _iterator18=_createForOfIteratorHelper(tmpFilterConfig.FilterByColumns||(tmpFilterConfig.FilterByColumn?[tmpFilterConfig.FilterByColumn]:['Name'])),_step18;try{for(_iterator18.s();!(_step18=_iterator18.n()).done;){var _tmpField3=_step18.value;var _iterator19=_createForOfIteratorHelper(
|
|
5823
|
+
*/var _iterator18=_createForOfIteratorHelper(tmpFilterConfig.FilterByColumns||(tmpFilterConfig.FilterByColumn?[tmpFilterConfig.FilterByColumn]:['Name'])),_step18;try{for(_iterator18.s();!(_step18=_iterator18.n()).done;){var _tmpField3=_step18.value;var _iterator19=_createForOfIteratorHelper(tmpValuesArray),_step19;try{for(_iterator19.s();!(_step19=_iterator19.n()).done;){var _tmpValue5=_step19.value;var _tmpFilter={Index:0,CoreEntity:true,Entity:pFilterState.Entity,Instruction:'FBVOR',Field:_tmpField3};// don't use like for numbers
|
|
5823
5824
|
if(tmpFilterConfig.ExactMatch||typeof tmpFilterConfig.ExactMatch==='undefined'&&(tmpFilterConfig.Type=='NumericMatch'||tmpFilterConfig.Type=='DateMatch')){_tmpFilter.Operator='EQ';_tmpFilter.Value=_tmpValue5;}else{_tmpFilter.Operator='LK';_tmpFilter.Value="%25".concat(_tmpValue5,"%25");//FIXME: figure out a cleaner way to do URL encoding for these - probably, should be downstream, but isn't currently
|
|
5824
|
-
}tmpFilterResult.Filters.push(_tmpFilter);}}catch(err){_iterator19.e(err);}finally{_iterator19.f();}}}catch(err){_iterator18.e(err);}finally{_iterator18.f();}break;case'InternalJoinStringRange':case'InternalJoinNumericRange':case'InternalJoinDateRange':case'InternalJoinRange':if(!tmpFilterConfig.Values
|
|
5825
|
-
}var _iterator20=_createForOfIteratorHelper(tmpFilterConfig.ExternalFilterByColumns||(tmpFilterConfig.ExternalFilterByColumn?[tmpFilterConfig.ExternalFilterByColumn]:['Name'])),_step20;try{for(_iterator20.s();!(_step20=_iterator20.n()).done;){var _tmpField4=_step20.value;if(tmpFilterConfig.Values&&tmpFilterConfig.Values.Start){tmpFilterResult.Filters.push({Index:0,Entity:tmpFilterConfig.RemoteTable,Instruction:'FBV',Field:_tmpField4,Operator:tmpFilterConfig.StartExclusive?'GT':'GE',Value:tmpFilterConfig.Values.Start});}if(tmpFilterConfig.Values&&tmpFilterConfig.Values.End){tmpFilterResult.Filters.push({Index:0,Entity:tmpFilterConfig.RemoteTable,Instruction:'FBV',Field:_tmpField4,Operator:tmpFilterConfig.EndExclusive?'LT':'LE',Value:tmpFilterConfig.Values.End});}}}catch(err){_iterator20.e(err);}finally{_iterator20.f();}if(tmpFilterResult.Filters.length>0){if(!tmpFilterConfig.JoinInternalConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinInternalConnectionColumn, cannot filter core table [").concat(pFilterState.Entity,"]."));break;}tmpFilterResult.JoinConfig={Instruction:'FBLOR',CoreEntity:pFilterState.Entity,Fields:[tmpFilterConfig.JoinInternalConnectionColumn],Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinExternalConnectionColumn,"^Record.State[Step0]~}")};}break;case'InternalJoinMatch':case'InternalJoinStringMatch':case'InternalJoinDateMatch':case'InternalJoinNumericMatch':/*
|
|
5825
|
+
}tmpFilterResult.Filters.push(_tmpFilter);}}catch(err){_iterator19.e(err);}finally{_iterator19.f();}}}catch(err){_iterator18.e(err);}finally{_iterator18.f();}break;case'InternalJoinStringRange':case'InternalJoinNumericRange':case'InternalJoinDateRange':case'InternalJoinRange':if(!tmpFilterConfig.Values||tmpFilterConfig.Values.Start==null&&tmpFilterConfig.Values.End==null){break;}// do not honor '0' for dates
|
|
5826
|
+
if(tmpFilterConfig.Type=='InternalJoinDateRange'){if((!tmpFilterConfig.Values.Start||tmpFilterConfig.Values.Start=='0')&&(!tmpFilterConfig.Values.End||tmpFilterConfig.Values.End=='0')){break;}}var _iterator20=_createForOfIteratorHelper(tmpFilterConfig.ExternalFilterByColumns||(tmpFilterConfig.ExternalFilterByColumn?[tmpFilterConfig.ExternalFilterByColumn]:['Name'])),_step20;try{for(_iterator20.s();!(_step20=_iterator20.n()).done;){var _tmpField4=_step20.value;if(tmpFilterConfig.Values&&tmpFilterConfig.Values.Start&&(tmpFilterConfig.Type!='InternalJoinDateRange'||tmpFilterConfig.Values.Start!='0')){tmpFilterResult.Filters.push({Index:0,Entity:tmpFilterConfig.RemoteTable,Instruction:'FBV',Field:_tmpField4,Operator:tmpFilterConfig.StartExclusive?'GT':'GE',Value:tmpFilterConfig.Values.Start});}if(tmpFilterConfig.Values&&tmpFilterConfig.Values.End&&(tmpFilterConfig.Type!='InternalJoinDateRange'||tmpFilterConfig.Values.End!='0')){tmpFilterResult.Filters.push({Index:0,Entity:tmpFilterConfig.RemoteTable,Instruction:'FBV',Field:_tmpField4,Operator:tmpFilterConfig.EndExclusive?'LT':'LE',Value:tmpFilterConfig.Values.End});}}}catch(err){_iterator20.e(err);}finally{_iterator20.f();}if(tmpFilterResult.Filters.length>0){if(!tmpFilterConfig.JoinInternalConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinInternalConnectionColumn, cannot filter core table [").concat(pFilterState.Entity,"]."));break;}tmpFilterResult.JoinConfig={Instruction:'FBLOR',CoreEntity:pFilterState.Entity,Fields:[tmpFilterConfig.JoinInternalConnectionColumn],Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinExternalConnectionColumn,"^Record.State[Step0]~}")};}break;case'InternalJoinMatch':case'InternalJoinStringMatch':case'InternalJoinDateMatch':case'InternalJoinNumericMatch':/*
|
|
5826
5827
|
"Values": [ "Bob" ],
|
|
5827
5828
|
"RemoteTable": "User",
|
|
5828
5829
|
"ExternalFilterByColumns": [ "NameFirst", "NameLast" ],
|
|
5829
5830
|
"JoinExternalConnectionColumn": "IDUser",
|
|
5830
5831
|
"JoinInternalConnectionColumn": "CreatingIDUser",
|
|
5831
|
-
*/var _iterator21=_createForOfIteratorHelper(tmpFilterConfig.ExternalFilterByColumns||(tmpFilterConfig.ExternalFilterByColumn?[tmpFilterConfig.ExternalFilterByColumn]:['Name'])),_step21;try{for(_iterator21.s();!(_step21=_iterator21.n()).done;){var _tmpField5=_step21.value;var _iterator22=_createForOfIteratorHelper(
|
|
5832
|
+
*/var _iterator21=_createForOfIteratorHelper(tmpFilterConfig.ExternalFilterByColumns||(tmpFilterConfig.ExternalFilterByColumn?[tmpFilterConfig.ExternalFilterByColumn]:['Name'])),_step21;try{for(_iterator21.s();!(_step21=_iterator21.n()).done;){var _tmpField5=_step21.value;var _iterator22=_createForOfIteratorHelper(tmpValuesArray),_step22;try{for(_iterator22.s();!(_step22=_iterator22.n()).done;){var _tmpValue6=_step22.value;var _tmpFilter2={Index:0,Entity:tmpFilterConfig.RemoteTable,Instruction:'FBV',Field:_tmpField5};if(tmpFilterConfig.ExactMatch||typeof tmpFilterConfig.ExactMatch==='undefined'&&(tmpFilterConfig.Type=='InternalJoinNumericMatch'||tmpFilterConfig.Type=='InternalJoinDateMatch')){_tmpFilter2.Operator='EQ';_tmpFilter2.Value=_tmpValue6;}else{_tmpFilter2.Operator='LK';_tmpFilter2.Value="%25".concat(_tmpValue6,"%25");}tmpFilterResult.Filters.push(_tmpFilter2);}}catch(err){_iterator22.e(err);}finally{_iterator22.f();}}}catch(err){_iterator21.e(err);}finally{_iterator21.f();}if(tmpFilterResult.Filters.length>0){if(!tmpFilterConfig.JoinInternalConnectionColumn){this.log.error("".concat(tmpFilterConfig.Type," filter missing JoinInternalConnectionColumn, cannot filter core table [").concat(pFilterState.Entity,"]."));break;}tmpFilterResult.JoinConfig={Instruction:'FBLOR',CoreEntity:pFilterState.Entity,Fields:[tmpFilterConfig.JoinInternalConnectionColumn],Operator:'INN',ValueTemplate:"{~PJU:,^".concat(tmpFilterConfig.JoinExternalConnectionColumn,"^Record.State[Step0]~}")};}break;case'RawFilter':if(!tmpFilterConfig.Value){this.log.warn("RawFilter configuration missing Value, not adding filter.",{FilterConfig:tmpFilterConfig});break;}pFilterState.UserFilters.push(tmpFilterConfig.Value);break;default:this.log.warn("Unknown filter type ".concat(tmpFilterConfig.Type," in filter configuration."),{FilterConfig:tmpFilterConfig});}if(tmpFilterResult.Filters.length>0){tmpResult.push(tmpFilterResult);}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}pFilterState.PreparedFilters=tmpResult;}/**
|
|
5832
5833
|
* @param {FilterState} pFilterState
|
|
5833
5834
|
*/},{key:"linkPreparedFilters",value:function linkPreparedFilters(pFilterState){var tmpGroupedStanzas=[];var _iterator23=_createForOfIteratorHelper(pFilterState.PreparedFilters||[]),_step23;try{for(_iterator23.s();!(_step23=_iterator23.n()).done;){var tmpPreparedFilter=_step23.value;if(tmpPreparedFilter.JoinConfig){var tmpSubGroup=tmpPreparedFilter.Filters;var tmpJoinConfig=tmpPreparedFilter.JoinConfig;var _iterator24=_createForOfIteratorHelper(tmpJoinConfig.Fields||[]),_step24;try{for(_iterator24.s();!(_step24=_iterator24.n()).done;){var tmpField=_step24.value;var tmpStanza={Index:1,CoreEntity:true,Entity:tmpPreparedFilter.JoinConfig.CoreEntity,Instruction:tmpPreparedFilter.JoinConfig.Instruction||'FBVOR',Field:tmpField,Operator:tmpJoinConfig.Operator,Value:tmpJoinConfig.Value,ValueTemplate:tmpJoinConfig.ValueTemplate};tmpSubGroup.push(tmpStanza);}}catch(err){_iterator24.e(err);}finally{_iterator24.f();}tmpGroupedStanzas.push(tmpSubGroup);}else{tmpGroupedStanzas.push(tmpPreparedFilter.Filters);}}}catch(err){_iterator23.e(err);}finally{_iterator23.f();}return tmpGroupedStanzas;}/**
|
|
5834
5835
|
* Generate a computed index for each filter in the meadow filter stanzas such that the overall address space is non-overlapping and stable.
|