datatables.net-searchbuilder 1.4.0 → 1.4.2

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.
@@ -1,4 +1,4 @@
1
- /*! SearchBuilder 1.4.0
1
+ /*! SearchBuilder 1.4.2
2
2
  * ©SpryMedia Ltd - datatables.net/license/mit
3
3
  */
4
4
 
@@ -11,26 +11,33 @@
11
11
  }
12
12
  else if ( typeof exports === 'object' ) {
13
13
  // CommonJS
14
- module.exports = function (root, $) {
15
- if ( ! root ) {
16
- // CommonJS environments without a window global must pass a
17
- // root. This will give an error otherwise
18
- root = window;
19
- }
20
-
21
- if ( ! $ ) {
22
- $ = typeof window !== 'undefined' ? // jQuery's factory checks for a global window
23
- require('jquery') :
24
- require('jquery')( root );
25
- }
26
-
14
+ var jq = require('jquery');
15
+ var cjsRequires = function (root, $) {
27
16
  if ( ! $.fn.dataTable ) {
28
17
  require('datatables.net')(root, $);
29
18
  }
19
+ };
30
20
 
21
+ if (typeof window !== 'undefined') {
22
+ module.exports = function (root, $) {
23
+ if ( ! root ) {
24
+ // CommonJS environments without a window global must pass a
25
+ // root. This will give an error otherwise
26
+ root = window;
27
+ }
31
28
 
32
- return factory( $, root, root.document );
33
- };
29
+ if ( ! $ ) {
30
+ $ = jq( root );
31
+ }
32
+
33
+ cjsRequires( root, $ );
34
+ return factory( $, root, root.document );
35
+ };
36
+ }
37
+ else {
38
+ cjsRequires( window, jq );
39
+ module.exports = factory( jq, window, window.document );
40
+ }
34
41
  }
35
42
  else {
36
43
  // Browser
@@ -350,7 +357,7 @@ var DataTable = $.fn.dataTable;
350
357
  }
351
358
  if (this.s.type.includes('num') && this.s.dt.page.info().serverSide) {
352
359
  for (var i = 0; i < this.s.value.length; i++) {
353
- this.s.value[i] = this.s.value[i].replace(/[^0-9.]/g, '');
360
+ this.s.value[i] = this.s.value[i].replace(/[^0-9.\-]/g, '');
354
361
  }
355
362
  }
356
363
  return {
@@ -825,81 +832,33 @@ var DataTable = $.fn.dataTable;
825
832
  }
826
833
  };
827
834
  /**
828
- * Populates the data select element
835
+ * Populates the data / column select element
829
836
  */
830
837
  Criteria.prototype._populateData = function () {
831
- var _this = this;
838
+ var columns = this.s.dt.settings()[0].aoColumns;
839
+ var includeColumns = this.s.dt.columns(this.c.columns).indexes().toArray();
832
840
  this.dom.data.empty().append(this.dom.dataTitle);
833
- // If there are no datas stored then we need to get them from the table
834
- if (this.s.dataPoints.length === 0) {
835
- this.s.dt.columns().every(function (index) {
836
- // Need to check that the column can be filtered on before adding it
837
- if (_this.c.columns === true ||
838
- _this.s.dt.columns(_this.c.columns).indexes().toArray().includes(index)) {
839
- var found = false;
840
- for (var _i = 0, _a = _this.s.dataPoints; _i < _a.length; _i++) {
841
- var val = _a[_i];
842
- if (val.index === index) {
843
- found = true;
844
- break;
845
- }
846
- }
847
- if (!found) {
848
- var col = _this.s.dt.settings()[0].aoColumns[index];
849
- var opt = {
850
- index: index,
851
- origData: col.data,
852
- text: (col.searchBuilderTitle === undefined ?
853
- col.sTitle :
854
- col.searchBuilderTitle).replace(/(<([^>]+)>)/ig, '')
855
- };
856
- _this.s.dataPoints.push(opt);
857
- _this.dom.data.append($$3('<option>', {
858
- text: opt.text,
859
- value: opt.index
860
- })
861
- .addClass(_this.classes.option)
862
- .addClass(_this.classes.notItalic)
863
- .prop('origData', col.data)
864
- .prop('selected', _this.s.dataIdx === opt.index ? true : false));
865
- if (_this.s.dataIdx === opt.index) {
866
- _this.dom.dataTitle.removeProp('selected');
867
- }
868
- }
869
- }
870
- });
871
- }
872
- // Otherwise we can just load them in
873
- else {
874
- var _loop_3 = function (data) {
875
- this_1.s.dt.columns().every(function (index) {
876
- var col = _this.s.dt.settings()[0].aoColumns[index];
877
- if ((col.searchBuilderTitle === undefined ?
878
- col.sTitle :
879
- col.searchBuilderTitle).replace(/(<([^>]+)>)/ig, '') === data.text) {
880
- data.index = index;
881
- data.origData = col.data;
882
- }
883
- });
884
- var newOpt = $$3('<option>', {
885
- text: data.text.replace(/(<([^>]+)>)/ig, ''),
886
- value: data.index
841
+ for (var index = 0; index < columns.length; index++) {
842
+ // Need to check that the column can be filtered on before adding it
843
+ if (this.c.columns === true || includeColumns.includes(index)) {
844
+ var col = columns[index];
845
+ var opt = {
846
+ index: index,
847
+ origData: col.data,
848
+ text: (col.searchBuilderTitle || col.sTitle)
849
+ .replace(/(<([^>]+)>)/ig, '')
850
+ };
851
+ this.dom.data.append($$3('<option>', {
852
+ text: opt.text,
853
+ value: opt.index
887
854
  })
888
- .addClass(this_1.classes.option)
889
- .addClass(this_1.classes.notItalic)
890
- .prop('origData', data.origData);
891
- if (this_1.s.data === data.text) {
892
- this_1.s.dataIdx = data.index;
893
- this_1.dom.dataTitle.removeProp('selected');
894
- newOpt.prop('selected', true);
895
- this_1.dom.data.removeClass(this_1.classes.italic);
855
+ .addClass(this.classes.option)
856
+ .addClass(this.classes.notItalic)
857
+ .prop('origData', col.data)
858
+ .prop('selected', this.s.dataIdx === opt.index ? true : false));
859
+ if (this.s.dataIdx === opt.index) {
860
+ this.dom.dataTitle.removeProp('selected');
896
861
  }
897
- this_1.dom.data.append(newOpt);
898
- };
899
- var this_1 = this;
900
- for (var _i = 0, _a = this.s.dataPoints; _i < _a.length; _i++) {
901
- var data = _a[_i];
902
- _loop_3(data);
903
862
  }
904
863
  }
905
864
  };
@@ -917,7 +876,7 @@ var DataTable = $.fn.dataTable;
917
876
  setTimeout(function () {
918
877
  _this.dom.defaultValue.remove();
919
878
  }, 50);
920
- var _loop_4 = function (val) {
879
+ var _loop_3 = function (val) {
921
880
  // Timeout is annoying but because of IOS
922
881
  setTimeout(function () {
923
882
  if (val !== undefined) {
@@ -927,7 +886,7 @@ var DataTable = $.fn.dataTable;
927
886
  };
928
887
  for (var _i = 0, _a = this.dom.value; _i < _a.length; _i++) {
929
888
  var val = _a[_i];
930
- _loop_4(val);
889
+ _loop_3(val);
931
890
  }
932
891
  var children = this.dom.inputCont.children();
933
892
  if (children.length > 1) {
@@ -1340,6 +1299,7 @@ var DataTable = $.fn.dataTable;
1340
1299
  that.s.dt.one('draw.dtsb', function () {
1341
1300
  that.s.topGroup.trigger('dtsb-redrawLogic');
1342
1301
  });
1302
+ return [];
1343
1303
  };
1344
1304
  Criteria.init2Date = function (that, fn, preDefined) {
1345
1305
  var _this = this;
@@ -3637,7 +3597,7 @@ var DataTable = $.fn.dataTable;
3637
3597
  _this.dom.clearAll.remove();
3638
3598
  });
3639
3599
  };
3640
- SearchBuilder.version = '1.4.0';
3600
+ SearchBuilder.version = '1.4.2';
3641
3601
  SearchBuilder.classes = {
3642
3602
  button: 'dtsb-button',
3643
3603
  clearAll: 'dtsb-clearAll',
@@ -3743,7 +3703,7 @@ var DataTable = $.fn.dataTable;
3743
3703
  return SearchBuilder;
3744
3704
  }());
3745
3705
 
3746
- /*! SearchBuilder 1.4.0
3706
+ /*! SearchBuilder 1.4.2
3747
3707
  * ©SpryMedia Ltd - datatables.net/license/mit
3748
3708
  */
3749
3709
  setJQuery($);
@@ -1,4 +1,4 @@
1
- /*! SearchBuilder 1.4.0
1
+ /*! SearchBuilder 1.4.2
2
2
  * ©SpryMedia Ltd - datatables.net/license/mit
3
3
  */
4
- !function(e){"function"==typeof define&&define.amd?define(["jquery","datatables.net"],function(t){return e(t,window,document)}):"object"==typeof exports?module.exports=function(t,i){return t=t||window,(i=i||("undefined"!=typeof window?require("jquery"):require("jquery")(t))).fn.dataTable||require("datatables.net")(t,i),e(i,t,t.document)}:e(jQuery,window,document)}(function(s,l,t,I){"use strict";var w,u,a,d,c,h,p,m,e,i,r=s.fn.dataTable;function o(){return l.moment}function f(){return l.luxon}function B(t,i,e,n,s,r){var o=this;if(void 0===n&&(n=0),void 0===s&&(s=1),void 0===r&&(r=I),!u||!u.versionCheck||!u.versionCheck("1.10.0"))throw new Error("SearchPane requires DataTables 1.10 or newer");this.classes=w.extend(!0,{},B.classes),this.c=w.extend(!0,{},B.defaults,w.fn.dataTable.ext.searchBuilder,i);i=this.c.i18n;if(this.s={condition:I,conditions:{},data:I,dataIdx:-1,dataPoints:[],dateFormat:!1,depth:s,dt:t,filled:!1,index:n,origData:I,preventRedraw:!1,serverData:r,topGroup:e,type:"",value:[]},this.dom={buttons:w("<div/>").addClass(this.classes.buttonContainer),condition:w("<select disabled/>").addClass(this.classes.condition).addClass(this.classes.dropDown).addClass(this.classes.italic).attr("autocomplete","hacking"),conditionTitle:w('<option value="" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.condition",i.condition)),container:w("<div/>").addClass(this.classes.container),data:w("<select/>").addClass(this.classes.data).addClass(this.classes.dropDown).addClass(this.classes.italic),dataTitle:w('<option value="" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.data",i.data)),defaultValue:w("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.select).addClass(this.classes.italic),delete:w("<button/>").html(this.s.dt.i18n("searchBuilder.delete",i.delete)).addClass(this.classes.delete).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.deleteTitle",i.deleteTitle)).attr("type","button"),inputCont:w("<div/>").addClass(this.classes.inputCont),left:w("<button/>").html(this.s.dt.i18n("searchBuilder.left",i.left)).addClass(this.classes.left).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.leftTitle",i.leftTitle)).attr("type","button"),right:w("<button/>").html(this.s.dt.i18n("searchBuilder.right",i.right)).addClass(this.classes.right).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.rightTitle",i.rightTitle)).attr("type","button"),value:[w("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.italic).addClass(this.classes.select)],valueTitle:w('<option value="--valueTitle--" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.value",i.value))},this.c.greyscale){this.dom.data.addClass(this.classes.greyscale),this.dom.condition.addClass(this.classes.greyscale),this.dom.defaultValue.addClass(this.classes.greyscale);for(var a=0,d=this.dom.value;a<d.length;a++)d[a].addClass(this.classes.greyscale)}return w(l).on("resize.dtsb",u.util.throttle(function(){o.s.topGroup.trigger("dtsb-redrawLogic")})),this._buildCriteria(),this}function g(t,i,e,n,s,r,o){if(void 0===n&&(n=0),void 0===s&&(s=!1),void 0===r&&(r=1),void 0===o&&(o=I),d&&d.versionCheck&&d.versionCheck("1.10.0"))return this.classes=a.extend(!0,{},g.classes),this.c=a.extend(!0,{},g.defaults,i),this.s={criteria:[],depth:r,dt:t,index:n,isChild:s,logic:I,opts:i,preventRedraw:!1,serverData:o,toDrop:I,topGroup:e},this.dom={add:a("<button/>").addClass(this.classes.add).addClass(this.classes.button).attr("type","button"),clear:a("<button>&times</button>").addClass(this.classes.button).addClass(this.classes.clearGroup).attr("type","button"),container:a("<div/>").addClass(this.classes.group),logic:a("<button><div/></button>").addClass(this.classes.logic).addClass(this.classes.button).attr("type","button"),logicContainer:a("<div/>").addClass(this.classes.logicContainer)},this.s.topGroup===I&&(this.s.topGroup=this.dom.container),this._setup(),this;throw new Error("SearchBuilder requires DataTables 1.10 or newer")}function n(t,i){var s=this;if(!p||!p.versionCheck||!p.versionCheck("1.10.0"))throw new Error("SearchBuilder requires DataTables 1.10 or newer");t=new p.Api(t);if(this.classes=h.extend(!0,{},n.classes),this.c=h.extend(!0,{},n.defaults,i),this.dom={clearAll:h('<button type="button">'+t.i18n("searchBuilder.clearAll",this.c.i18n.clearAll)+"</button>").addClass(this.classes.clearAll).addClass(this.classes.button).attr("type","button"),container:h("<div/>").addClass(this.classes.container),title:h("<div/>").addClass(this.classes.title),titleRow:h("<div/>").addClass(this.classes.titleRow),topGroup:I},this.s={dt:t,opts:i,search:I,serverData:I,topGroup:I},t.settings()[0]._searchBuilder===I)return(t.settings()[0]._searchBuilder=this).s.dt.page.info().serverSide&&(this.s.dt.on("preXhr.dtsb",function(t,i,e){var n=s.s.dt.state.loaded();n&&n.searchBuilder&&(e.searchBuilder=s._collapseArray(n.searchBuilder))}),this.s.dt.on("xhr.dtsb",function(t,i,e){e&&e.searchBuilder&&e.searchBuilder.options&&(s.s.serverData=e.searchBuilder.options)})),this.s.dt.settings()[0]._bInitComplete?this._setUp():t.one("init.dt",function(){s._setUp()}),this}function v(t,i){t=new r.Api(t),i=i||t.init().searchBuilder||r.defaults.searchBuilder;return new e(t,i).getNode()}return B._escapeHTML=function(t){return t.toString().replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"')},B.parseNumFmt=function(t){return+t.replace(/(?!^-)[^0-9.]/g,"")},B.prototype.updateArrows=function(t){void 0===t&&(t=!1),this.dom.container.children().detach(),this.dom.container.append(this.dom.data).append(this.dom.condition).append(this.dom.inputCont),this.setListeners(),this.dom.value[0]!==I&&this.dom.value[0].trigger("dtsb-inserted");for(var i=1;i<this.dom.value.length;i++)this.dom.inputCont.append(this.dom.value[i]),this.dom.value[i].trigger("dtsb-inserted");1<this.s.depth&&this.dom.buttons.append(this.dom.left),(!1===this.c.depthLimit||this.s.depth<this.c.depthLimit)&&t?this.dom.buttons.append(this.dom.right):this.dom.right.remove(),this.dom.buttons.append(this.dom.delete),this.dom.container.append(this.dom.buttons)},B.prototype.destroy=function(){this.dom.data.off(".dtsb"),this.dom.condition.off(".dtsb"),this.dom.delete.off(".dtsb");for(var t=0,i=this.dom.value;t<i.length;t++)i[t].off(".dtsb");this.dom.container.remove()},B.prototype.search=function(t,i){var e=this.s.conditions[this.s.condition];if(this.s.condition!==I&&e!==I){var n=t[this.s.dataIdx];if(this.s.type.includes("num")&&(""!==this.s.dt.settings()[0].oLanguage.sDecimal||""!==this.s.dt.settings()[0].oLanguage.sThousands)){var s=[t[this.s.dataIdx]];if(""!==this.s.dt.settings()[0].oLanguage.sDecimal&&(s=t[this.s.dataIdx].split(this.s.dt.settings()[0].oLanguage.sDecimal)),""!==this.s.dt.settings()[0].oLanguage.sThousands)for(var r=0;r<s.length;r++)s[r]=s[r].replace(this.s.dt.settings()[0].oLanguage.sThousands,",");n=s.join(".")}if("filter"!==this.c.orthogonal.search&&(n=(t=this.s.dt.settings()[0]).oApi._fnGetCellData(t,i,this.s.dataIdx,"string"==typeof this.c.orthogonal?this.c.orthogonal:this.c.orthogonal.search)),"array"===this.s.type){(n=Array.isArray(n)?n:[n]).sort();for(var o=0,a=n;o<a.length;o++){var d=a[o];d&&"string"==typeof d&&(d=d.replace(/[\r\n\u2028]/g," "))}}else null!==n&&"string"==typeof n&&(n=n.replace(/[\r\n\u2028]/g," "));return this.s.type.includes("html")&&"string"==typeof n&&(n=n.replace(/(<([^>]+)>)/gi,"")),e.search(n=null===n?"":n,this.s.value,this)}},B.prototype.getDetails=function(t){if(void 0===t&&(t=!1),null===this.s.type||!this.s.type.includes("num")||""===this.s.dt.settings()[0].oLanguage.sDecimal&&""===this.s.dt.settings()[0].oLanguage.sThousands){if(null!==this.s.type&&t)if(this.s.type.includes("date")||this.s.type.includes("time"))for(i=0;i<this.s.value.length;i++)null===this.s.value[i].match(/^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])$/g)&&(this.s.value[i]="");else if(this.s.type.includes("moment"))for(i=0;i<this.s.value.length;i++)this.s.value[i]&&0<this.s.value[i].length&&o()(this.s.value[i],this.s.dateFormat,!0).isValid()&&(this.s.value[i]=o()(this.s.value[i],this.s.dateFormat).format("YYYY-MM-DD HH:mm:ss"));else if(this.s.type.includes("luxon"))for(i=0;i<this.s.value.length;i++)this.s.value[i]&&0<this.s.value[i].length&&null===f().DateTime.fromFormat(this.s.value[i],this.s.dateFormat).invalid&&(this.s.value[i]=f().DateTime.fromFormat(this.s.value[i],this.s.dateFormat).toFormat("yyyy-MM-dd HH:mm:ss"))}else for(var i=0;i<this.s.value.length;i++){var e=[this.s.value[i].toString()];if(""!==this.s.dt.settings()[0].oLanguage.sDecimal&&(e=this.s.value[i].split(this.s.dt.settings()[0].oLanguage.sDecimal)),""!==this.s.dt.settings()[0].oLanguage.sThousands)for(var n=0;n<e.length;n++)e[n]=e[n].replace(this.s.dt.settings()[0].oLanguage.sThousands,",");this.s.value[i]=e.join(".")}if(this.s.type.includes("num")&&this.s.dt.page.info().serverSide)for(i=0;i<this.s.value.length;i++)this.s.value[i]=this.s.value[i].replace(/[^0-9.]/g,"");return{condition:this.s.condition,data:this.s.data,origData:this.s.origData,type:this.s.type,value:this.s.value.map(function(t){return null!==t&&t!==I?t.toString():t})}},B.prototype.getNode=function(){return this.dom.container},B.prototype.populate=function(){this._populateData(),-1!==this.s.dataIdx&&(this._populateCondition(),this.s.condition!==I&&this._populateValue())},B.prototype.rebuild=function(t){var i,e,n,s=!1;if(this._populateData(),t.data!==I&&(e=this.classes.italic,n=this.dom.data,this.dom.data.children("option").each(function(){!s&&(w(this).text()===t.data||t.origData&&w(this).prop("origData")===t.origData)?(w(this).prop("selected",!0),n.removeClass(e),s=!0,i=w(this).val()):w(this).removeProp("selected")})),s){this.s.data=t.data,this.s.origData=t.origData,this.s.dataIdx=i,this.c.orthogonal=this._getOptions().orthogonal,this.dom.dataTitle.remove(),this._populateCondition(),this.dom.conditionTitle.remove();for(var r=void 0,o=this.dom.condition.children("option"),a=0;a<o.length;a++){var d=w(o[a]);t.condition!==I&&d.val()===t.condition&&"string"==typeof t.condition?(d.prop("selected",!0),r=d.val()):d.removeProp("selected")}if(this.s.condition=r,this.s.condition!==I){this.dom.conditionTitle.removeProp("selected"),this.dom.conditionTitle.remove(),this.dom.condition.removeClass(this.classes.italic);for(a=0;a<o.length;a++)(d=w(o[a])).val()!==this.s.condition&&d.removeProp("selected");this._populateValue(t)}else this.dom.conditionTitle.prependTo(this.dom.condition).prop("selected",!0)}},B.prototype.setListeners=function(){var l=this;this.dom.data.unbind("change").on("change.dtsb",function(){l.dom.dataTitle.removeProp("selected");for(var t=l.dom.data.children("option."+l.classes.option),i=0;i<t.length;i++){var e=w(t[i]);e.val()===l.dom.data.val()?(l.dom.data.removeClass(l.classes.italic),e.prop("selected",!0),l.s.dataIdx=+e.val(),l.s.data=e.text(),l.s.origData=e.prop("origData"),l.c.orthogonal=l._getOptions().orthogonal,l._clearCondition(),l._clearValue(),l._populateCondition(),l.s.filled&&(l.s.filled=!1,l.s.dt.draw(),l.setListeners()),l.s.dt.state.save()):e.removeProp("selected")}}),this.dom.condition.unbind("change").on("change.dtsb",function(){l.dom.conditionTitle.removeProp("selected");for(var t=l.dom.condition.children("option."+l.classes.option),i=0;i<t.length;i++){var e=w(t[i]);if(e.val()===l.dom.condition.val()){l.dom.condition.removeClass(l.classes.italic),e.prop("selected",!0);for(var n=e.val(),s=0,r=Object.keys(l.s.conditions);s<r.length;s++)if(r[s]===n){l.s.condition=n;break}l._clearValue(),l._populateValue();for(var o=0,a=l.dom.value;o<a.length;o++){var d=a[o];l.s.filled&&d!==I&&0!==l.dom.inputCont.has(d[0]).length&&(l.s.filled=!1,l.s.dt.draw(),l.setListeners())}(0===l.dom.value.length||1===l.dom.value.length&&l.dom.value[0]===I)&&l.s.dt.draw()}else e.removeProp("selected")}})},B.prototype.setupButtons=function(){550<l.innerWidth?(this.dom.container.removeClass(this.classes.vertical),this.dom.buttons.css("left",null),this.dom.buttons.css("top",null)):(this.dom.container.addClass(this.classes.vertical),this.dom.buttons.css("left",this.dom.data.innerWidth()),this.dom.buttons.css("top",this.dom.data.position().top))},B.prototype._buildCriteria=function(){this.dom.data.append(this.dom.dataTitle),this.dom.condition.append(this.dom.conditionTitle),this.dom.container.append(this.dom.data).append(this.dom.condition),this.dom.inputCont.empty();for(var t=0,i=this.dom.value;t<i.length;t++){var e=i[t];e.append(this.dom.valueTitle),this.dom.inputCont.append(e)}this.dom.buttons.append(this.dom.delete).append(this.dom.right),this.dom.container.append(this.dom.inputCont).append(this.dom.buttons),this.setListeners()},B.prototype._clearCondition=function(){this.dom.condition.empty(),this.dom.conditionTitle.prop("selected",!0).attr("disabled","true"),this.dom.condition.prepend(this.dom.conditionTitle).prop("selectedIndex",0),this.s.conditions={},this.s.condition=I},B.prototype._clearValue=function(){if(this.s.condition!==I){if(0<this.dom.value.length&&this.dom.value[0]!==I)for(var t=0,i=this.dom.value;t<i.length;t++)!function(t){t!==I&&setTimeout(function(){t.remove()},50)}(i[t]);if(this.dom.value=[].concat(this.s.conditions[this.s.condition].init(this,B.updateListener)),0<this.dom.value.length&&this.dom.value[0]!==I){this.dom.inputCont.empty().append(this.dom.value[0]).insertAfter(this.dom.condition),this.dom.value[0].trigger("dtsb-inserted");for(var e=1;e<this.dom.value.length;e++)this.dom.inputCont.append(this.dom.value[e]),this.dom.value[e].trigger("dtsb-inserted")}}else{for(var n=0,s=this.dom.value;n<s.length;n++)!function(t){t!==I&&setTimeout(function(){t.remove()},50)}(s[n]);this.dom.valueTitle.prop("selected",!0),this.dom.defaultValue.append(this.dom.valueTitle).insertAfter(this.dom.condition)}this.s.value=[],this.dom.value=[w("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.italic).addClass(this.classes.select).append(this.dom.valueTitle.clone())]},B.prototype._getOptions=function(){var t=this.s.dt;return w.extend(!0,{},B.defaults,t.settings()[0].aoColumns[this.s.dataIdx].searchBuilder)},B.prototype._populateCondition=function(){var t=[],i=Object.keys(this.s.conditions).length,e=this.s.dt.settings()[0].aoColumns,n=+this.dom.data.children("option:selected").val();if(0===i){this.s.type=this.s.dt.columns().type().toArray()[n],e!==I&&((s=e[n]).searchBuilderType!==I&&null!==s.searchBuilderType?this.s.type=s.searchBuilderType:this.s.type!==I&&null!==this.s.type||(this.s.type=s.sType)),null!==this.s.type&&this.s.type!==I||(w.fn.dataTable.ext.oApi._fnColumnTypes(this.s.dt.settings()[0]),this.s.type=this.s.dt.columns().type().toArray()[n]),this.dom.condition.removeAttr("disabled").empty().append(this.dom.conditionTitle).addClass(this.classes.italic),this.dom.conditionTitle.prop("selected",!0);var s=this.s.dt.settings()[0].oLanguage.sDecimal,r=(""!==s&&this.s.type.indexOf(s)===this.s.type.length-s.length&&(this.s.type.includes("num-fmt")||this.s.type.includes("num"))&&(this.s.type=this.s.type.replace(s,"")),this.c.conditions[this.s.type]!==I?this.c.conditions[this.s.type]:this.s.type.includes("moment")?this.c.conditions.moment:this.s.type.includes("luxon")?this.c.conditions.luxon:this.c.conditions.string);this.s.type.includes("moment")?this.s.dateFormat=this.s.type.replace(/moment-/g,""):this.s.type.includes("luxon")&&(this.s.dateFormat=this.s.type.replace(/luxon-/g,""));for(var o,a=0,d=Object.keys(r);a<d.length;a++)null!==r[c=d[a]]&&(this.s.dt.page.info().serverSide&&r[c].init===B.initSelect&&(o=e[n],this.s.serverData&&this.s.serverData[o.data]?(r[c].init=B.initSelectSSP,r[c].inputValue=B.inputValueSelect,r[c].isInputValid=B.isInputValidSelect):(r[c].init=B.initInput,r[c].inputValue=B.inputValueInput,r[c].isInputValid=B.isInputValidInput)),this.s.conditions[c]=r[c],"function"==typeof(C=r[c].conditionName)&&(C=C(this.s.dt,this.c.i18n)),t.push(w("<option>",{text:C,value:c}).addClass(this.classes.option).addClass(this.classes.notItalic)))}else{if(!(0<i))return void this.dom.condition.attr("disabled","true").addClass(this.classes.italic);this.dom.condition.empty().removeAttr("disabled").addClass(this.classes.italic);for(var l=0,u=Object.keys(this.s.conditions);l<u.length;l++){var c=u[l],h=("function"==typeof(C=this.s.conditions[c].conditionName)&&(C=C(this.s.dt,this.c.i18n)),w("<option>",{text:C,value:c}).addClass(this.classes.option).addClass(this.classes.notItalic));this.s.condition!==I&&this.s.condition===C&&(h.prop("selected",!0),this.dom.condition.removeClass(this.classes.italic)),t.push(h)}}for(var p=0,m=t;p<m.length;p++){var f=m[p];this.dom.condition.append(f)}if(e[n].searchBuilder&&e[n].searchBuilder.defaultCondition){var g=e[n].searchBuilder.defaultCondition;if("number"==typeof g)this.dom.condition.prop("selectedIndex",g),this.dom.condition.trigger("change");else if("string"==typeof g)for(var v=0;v<t.length;v++)for(var b=0,y=Object.keys(this.s.conditions);b<y.length;b++){var C,V=y[b];if(("string"==typeof(C=this.s.conditions[V].conditionName)?C:C(this.s.dt,this.c.i18n))===t[v].text()&&V===g){this.dom.condition.prop("selectedIndex",this.dom.condition.children().toArray().indexOf(t[v][0])).removeClass(this.classes.italic),this.dom.condition.trigger("change"),v=t.length;break}}}else this.dom.condition.prop("selectedIndex",0)},B.prototype._populateData=function(){var o=this;if(this.dom.data.empty().append(this.dom.dataTitle),0===this.s.dataPoints.length)this.s.dt.columns().every(function(t){if(!0===o.c.columns||o.s.dt.columns(o.c.columns).indexes().toArray().includes(t)){for(var i,e,n=!1,s=0,r=o.s.dataPoints;s<r.length;s++)if(r[s].index===t){n=!0;break}n||(e={index:t,origData:(i=o.s.dt.settings()[0].aoColumns[t]).data,text:(i.searchBuilderTitle===I?i.sTitle:i.searchBuilderTitle).replace(/(<([^>]+)>)/gi,"")},o.s.dataPoints.push(e),o.dom.data.append(w("<option>",{text:e.text,value:e.index}).addClass(o.classes.option).addClass(o.classes.notItalic).prop("origData",i.data).prop("selected",o.s.dataIdx===e.index)),o.s.dataIdx===e.index&&o.dom.dataTitle.removeProp("selected"))}});else for(var i=this,t=0,e=this.s.dataPoints;t<e.length;t++)!function(e){i.s.dt.columns().every(function(t){var i=o.s.dt.settings()[0].aoColumns[t];(i.searchBuilderTitle===I?i.sTitle:i.searchBuilderTitle).replace(/(<([^>]+)>)/gi,"")===e.text&&(e.index=t,e.origData=i.data)});var t=w("<option>",{text:e.text.replace(/(<([^>]+)>)/gi,""),value:e.index}).addClass(i.classes.option).addClass(i.classes.notItalic).prop("origData",e.origData);i.s.data===e.text&&(i.s.dataIdx=e.index,i.dom.dataTitle.removeProp("selected"),t.prop("selected",!0),i.dom.data.removeClass(i.classes.italic)),i.dom.data.append(t)}(e[t])},B.prototype._populateValue=function(i){for(var e=this,t=this.s.filled,n=(this.s.filled=!1,setTimeout(function(){e.dom.defaultValue.remove()},50),0),s=this.dom.value;n<s.length;n++)!function(t){setTimeout(function(){t!==I&&t.remove()},50)}(s[n]);var r=this.dom.inputCont.children();if(1<r.length)for(var o=0;o<r.length;o++)w(r[o]).remove();i!==I&&this.s.dt.columns().every(function(t){e.s.dt.settings()[0].aoColumns[t].sTitle===i.data&&(e.s.dataIdx=t)}),this.dom.value=[].concat(this.s.conditions[this.s.condition].init(this,B.updateListener,i!==I?i.value:I)),i!==I&&i.value!==I&&(this.s.value=i.value),this.dom.inputCont.empty(),this.dom.value[0]!==I&&this.dom.value[0].appendTo(this.dom.inputCont).trigger("dtsb-inserted");for(o=1;o<this.dom.value.length;o++)this.dom.value[o].insertAfter(this.dom.value[o-1]).trigger("dtsb-inserted");this.s.filled=this.s.conditions[this.s.condition].isInputValid(this.dom.value,this),this.setListeners(),this.s.preventRedraw||t===this.s.filled||(this.s.dt.page.info().serverSide||this.s.dt.draw(),this.setListeners())},B.prototype._throttle=function(n,s){var r=null,o=null,a=this;return null===(s=void 0===s?200:s)&&(s=200),function(){for(var t=[],i=0;i<arguments.length;i++)t[i]=arguments[i];var e=+new Date;null!==r&&e<r+s?clearTimeout(o):r=e,o=setTimeout(function(){r=null,n.apply(a,t)},s)}},B.version="1.1.0",B.classes={button:"dtsb-button",buttonContainer:"dtsb-buttonContainer",condition:"dtsb-condition",container:"dtsb-criteria",data:"dtsb-data",delete:"dtsb-delete",dropDown:"dtsb-dropDown",greyscale:"dtsb-greyscale",input:"dtsb-input",inputCont:"dtsb-inputCont",italic:"dtsb-italic",joiner:"dtsp-joiner",left:"dtsb-left",notItalic:"dtsb-notItalic",option:"dtsb-option",right:"dtsb-right",select:"dtsb-select",value:"dtsb-value",vertical:"dtsb-vertical"},B.initSelect=function(e,t,n,i){void 0===n&&(n=null),void 0===i&&(i=!1);for(var s=e.dom.data.children("option:selected").val(),r=e.s.dt.rows().indexes().toArray(),o=e.s.dt.settings()[0],a=(e.dom.valueTitle.prop("selected",!0),w("<select/>").addClass(B.classes.value).addClass(B.classes.dropDown).addClass(B.classes.italic).addClass(B.classes.select).append(e.dom.valueTitle).on("change.dtsb",function(){w(this).removeClass(B.classes.italic),t(e,this)})),d=(e.c.greyscale&&a.addClass(B.classes.greyscale),[]),l=[],u=0,c=r;u<c.length;u++){var h=c[u],p=o.oApi._fnGetCellData(o,h,s,"string"==typeof e.c.orthogonal?e.c.orthogonal:e.c.orthogonal.search),m={filter:"string"==typeof p?p.replace(/[\r\n\u2028]/g," "):p,index:h,text:o.oApi._fnGetCellData(o,h,s,"string"==typeof e.c.orthogonal?e.c.orthogonal:e.c.orthogonal.display)},f=("array"===e.s.type&&(m.filter=Array.isArray(m.filter)?m.filter:[m.filter],m.text=Array.isArray(m.text)?m.text:[m.text]),function(t,i){e.s.type.includes("html")&&null!==t&&"string"==typeof t&&t.replace(/(<([^>]+)>)/gi,"");t=w("<option>",{type:Array.isArray(t)?"Array":"String",value:t}).data("sbv",t).addClass(e.classes.option).addClass(e.classes.notItalic).html("string"==typeof i?i.replace(/(<([^>]+)>)/gi,""):i),i=t.val();-1===d.indexOf(i)&&(d.push(i),l.push(t),null!==n&&Array.isArray(n[0])&&(n[0]=n[0].sort().join(",")),null!==n&&t.val()===n[0]&&(t.prop("selected",!0),a.removeClass(B.classes.italic),e.dom.valueTitle.removeProp("selected")))});if(i)for(var g=0;g<m.filter.length;g++)f(m.filter[g],m.text[g]);else f(m.filter,Array.isArray(m.text)?m.text.join(", "):m.text)}l.sort(function(t,i){return"array"===e.s.type||"string"===e.s.type||"html"===e.s.type?t.val()<i.val()?-1:t.val()>i.val()?1:0:"num"===e.s.type||"html-num"===e.s.type?+t.val().replace(/(<([^>]+)>)/gi,"")<+i.val().replace(/(<([^>]+)>)/gi,"")?-1:+t.val().replace(/(<([^>]+)>)/gi,"")>+i.val().replace(/(<([^>]+)>)/gi,"")?1:0:"num-fmt"===e.s.type||"html-num-fmt"===e.s.type?+t.val().replace(/[^0-9.]/g,"")<+i.val().replace(/[^0-9.]/g,"")?-1:+t.val().replace(/[^0-9.]/g,"")>+i.val().replace(/[^0-9.]/g,"")?1:0:void 0});for(var v=0,b=l;v<b.length;v++){var y=b[v];a.append(y)}return a},B.initSelectSSP=function(t,i,e){void 0===e&&(e=null),t.dom.valueTitle.prop("selected",!0);for(var n=w("<select/>").addClass(B.classes.value).addClass(B.classes.dropDown).addClass(B.classes.italic).addClass(B.classes.select).append(t.dom.valueTitle).on("change.dtsb",function(){w(this).removeClass(B.classes.italic),i(t,this)}),s=(t.c.greyscale&&n.addClass(B.classes.greyscale),[]),r=0,o=t.s.serverData[t.s.origData];r<o.length;r++){var a=o[r],d=a.value,a=a.label,l=(l=void 0,d),d=a;t.s.type.includes("html")&&null!==l&&"string"==typeof l&&l.replace(/(<([^>]+)>)/gi,""),l=w("<option>",{type:Array.isArray(l)?"Array":"String",value:l}).data("sbv",l).addClass(t.classes.option).addClass(t.classes.notItalic).html("string"==typeof d?d.replace(/(<([^>]+)>)/gi,""):d),s.push(l),null!==e&&l.val()===e[0]&&(l.prop("selected",!0),n.removeClass(B.classes.italic),t.dom.valueTitle.removeProp("selected"))}for(var u=0,c=s;u<c.length;u++){var h=c[u];n.append(h)}return n},B.initSelectArray=function(t,i,e){return B.initSelect(t,i,e=void 0===e?null:e,!0)},B.initInput=function(i,e,t){void 0===t&&(t=null);var n=i.s.dt.settings()[0].searchDelay,n=w("<input/>").addClass(B.classes.value).addClass(B.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n));return i.c.greyscale&&n.addClass(B.classes.greyscale),null!==t&&n.val(t[0]),i.s.dt.one("draw.dtsb",function(){i.s.topGroup.trigger("dtsb-redrawLogic")}),n},B.init2Input=function(i,e,t){void 0===t&&(t=null);var n=i.s.dt.settings()[0].searchDelay,n=[w("<input/>").addClass(B.classes.value).addClass(B.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n)),w("<span>").addClass(i.classes.joiner).html(i.s.dt.i18n("searchBuilder.valueJoiner",i.c.i18n.valueJoiner)),w("<input/>").addClass(B.classes.value).addClass(B.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n))];return i.c.greyscale&&(n[0].addClass(B.classes.greyscale),n[2].addClass(B.classes.greyscale)),null!==t&&(n[0].val(t[0]),n[2].val(t[1])),i.s.dt.one("draw.dtsb",function(){i.s.topGroup.trigger("dtsb-redrawLogic")}),n},B.initDate=function(e,n,t){void 0===t&&(t=null);var s=e.s.dt.settings()[0].searchDelay,i=w("<input/>").addClass(B.classes.value).addClass(B.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||I}).on("change.dtsb",e._throttle(function(){return n(e,this)},null===s?100:s)).on("input.dtsb keypress.dtsb",function(i){e._throttle(function(){var t=i.keyCode||i.which;return n(e,this,t)},null===s?100:s)});return e.c.greyscale&&i.addClass(B.classes.greyscale),null!==t&&i.val(t[0]),e.s.dt.one("draw.dtsb",function(){e.s.topGroup.trigger("dtsb-redrawLogic")}),i},B.initNoValue=function(t){t.s.dt.one("draw.dtsb",function(){t.s.topGroup.trigger("dtsb-redrawLogic")})},B.init2Date=function(e,n,t){var i=this,s=(void 0===t&&(t=null),e.s.dt.settings()[0].searchDelay),r=[w("<input/>").addClass(B.classes.value).addClass(B.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||I}).on("change.dtsb",null!==s?e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s):function(){n(e,i)}).on("input.dtsb keypress.dtsb",function(i){e.s.dt.settings()[0].oApi._fnThrottle(function(){var t=i.keyCode||i.which;return n(e,this,t)},null===s?0:s)}),w("<span>").addClass(e.classes.joiner).html(e.s.dt.i18n("searchBuilder.valueJoiner",e.c.i18n.valueJoiner)),w("<input/>").addClass(B.classes.value).addClass(B.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||I}).on("change.dtsb",null!==s?e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s):function(){n(e,i)}).on("input.dtsb keypress.dtsb",e.c.enterSearch||e.s.dt.settings()[0].oInit.search!==I&&e.s.dt.settings()[0].oInit.search.return||null===s?function(t){t=t.keyCode||t.which;n(e,i,t)}:e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s))];return e.c.greyscale&&(r[0].addClass(B.classes.greyscale),r[2].addClass(B.classes.greyscale)),null!==t&&0<t.length&&(r[0].val(t[0]),r[2].val(t[1])),e.s.dt.one("draw.dtsb",function(){e.s.topGroup.trigger("dtsb-redrawLogic")}),r},B.isInputValidSelect=function(t){for(var i=!0,e=0,n=t;e<n.length;e++){var s=n[e];s.children("option:selected").length===s.children("option").length-s.children("option."+B.classes.notItalic).length&&1===s.children("option:selected").length&&s.children("option:selected")[0]===s.children("option")[0]&&(i=!1)}return i},B.isInputValidInput=function(t){for(var i=!0,e=0,n=t;e<n.length;e++){var s=n[e];s.is("input")&&0===s.val().length&&(i=!1)}return i},B.inputValueSelect=function(t){for(var i=[],e=0,n=t;e<n.length;e++){var s=n[e];s.is("select")&&i.push(B._escapeHTML(s.children("option:selected").data("sbv")))}return i},B.inputValueInput=function(t){for(var i=[],e=0,n=t;e<n.length;e++){var s=n[e];s.is("input")&&i.push(B._escapeHTML(s.val()))}return i},B.updateListener=function(t,i,e){var n=t.s.conditions[t.s.condition];if(t.s.filled=n.isInputValid(t.dom.value,t),t.s.value=n.inputValue(t.dom.value,t),t.s.filled){Array.isArray(t.s.value)||(t.s.value=[t.s.value]);for(var s=0;s<t.s.value.length;s++)if(Array.isArray(t.s.value[s]))t.s.value[s].sort();else if(t.s.type.includes("num")&&(""!==t.s.dt.settings()[0].oLanguage.sDecimal||""!==t.s.dt.settings()[0].oLanguage.sThousands)){var r=[t.s.value[s].toString()];if(""!==t.s.dt.settings()[0].oLanguage.sDecimal&&(r=t.s.value[s].split(t.s.dt.settings()[0].oLanguage.sDecimal)),""!==t.s.dt.settings()[0].oLanguage.sThousands)for(var o=0;o<r.length;o++)r[o]=r[o].replace(t.s.dt.settings()[0].oLanguage.sThousands,",");t.s.value[s]=r.join(".")}for(var a=null,d=null,s=0;s<t.dom.value.length;s++)i===t.dom.value[s][0]&&(a=s,i.selectionStart!==I&&(d=i.selectionStart));(t.c.enterSearch||t.s.dt.settings()[0].oInit.search!==I&&t.s.dt.settings()[0].oInit.search.return)&&13!==e||t.s.dt.draw(),null!==a&&(t.dom.value[a].removeClass(t.classes.italic),t.dom.value[a].focus(),null!==d&&t.dom.value[a][0].setSelectionRange(d,d))}else(t.c.enterSearch||t.s.dt.settings()[0].oInit.search!==I&&t.s.dt.settings()[0].oInit.search.return)&&13!==e||t.s.dt.draw()},B.dateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))===i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))!==i[0]}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))<i[0]}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))>i[0]}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return t=t.replace(/(\/|-|,)/g,"-"),i[0]<i[1]?i[0]<=t&&t<=i[1]:i[1]<=t&&t<=i[0]}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return t=t.replace(/(\/|-|,)/g,"-"),i[0]<i[1]?!(i[0]<=t&&t<=i[1]):!(i[1]<=t&&t<=i[0])}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.momentDateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return o()(t,e.s.dateFormat).valueOf()===o()(i[0],e.s.dateFormat).valueOf()}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return o()(t,e.s.dateFormat).valueOf()!==o()(i[0],e.s.dateFormat).valueOf()}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return o()(t,e.s.dateFormat).valueOf()<o()(i[0],e.s.dateFormat).valueOf()}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return o()(t,e.s.dateFormat).valueOf()>o()(i[0],e.s.dateFormat).valueOf()}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){var t=o()(t,e.s.dateFormat).valueOf(),n=o()(i[0],e.s.dateFormat).valueOf(),i=o()(i[1],e.s.dateFormat).valueOf();return n<i?n<=t&&t<=i:i<=t&&t<=n}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){var t=o()(t,e.s.dateFormat).valueOf(),n=o()(i[0],e.s.dateFormat).valueOf(),i=o()(i[1],e.s.dateFormat).valueOf();return n<i?!(+n<=+t&&+t<=+i):!(+i<=+t&&+t<=+n)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.luxonDateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return f().DateTime.fromFormat(t,e.s.dateFormat).ts===f().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return f().DateTime.fromFormat(t,e.s.dateFormat).ts!==f().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return f().DateTime.fromFormat(t,e.s.dateFormat).ts<f().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return f().DateTime.fromFormat(t,e.s.dateFormat).ts>f().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){var t=f().DateTime.fromFormat(t,e.s.dateFormat).ts,n=f().DateTime.fromFormat(i[0],e.s.dateFormat).ts,i=f().DateTime.fromFormat(i[1],e.s.dateFormat).ts;return n<i?n<=t&&t<=i:i<=t&&t<=n}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){var t=f().DateTime.fromFormat(t,e.s.dateFormat).ts,n=f().DateTime.fromFormat(i[0],e.s.dateFormat).ts,i=f().DateTime.fromFormat(i[1],e.s.dateFormat).ts;return n<i?!(+n<=+t&&+t<=+i):!(+i<=+t&&+t<=+n)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.numConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.equals",i.conditions.number.equals)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return+t==+i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.not",i.conditions.number.not)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return+t!=+i[0]}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lt",i.conditions.number.lt)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+t<+i[0]}},"<=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lte",i.conditions.number.lte)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+t<=+i[0]}},">=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gte",i.conditions.number.gte)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+t>=+i[0]}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gt",i.conditions.number.gt)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+t>+i[0]}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.between",i.conditions.number.between)},init:B.init2Input,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+i[0]<+i[1]?+i[0]<=+t&&+t<=+i[1]:+i[1]<=+t&&+t<=+i[0]}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notBetween",i.conditions.number.notBetween)},init:B.init2Input,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+i[0]<+i[1]?!(+i[0]<=+t&&+t<=+i[1]):!(+i[1]<=+t&&+t<=+i[0])}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.empty",i.conditions.number.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notEmpty",i.conditions.number.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.numFmtConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.equals",i.conditions.number.equals)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return B.parseNumFmt(t)===B.parseNumFmt(i[0])}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.not",i.conditions.number.not)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return B.parseNumFmt(t)!==B.parseNumFmt(i[0])}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lt",i.conditions.number.lt)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return B.parseNumFmt(t)<B.parseNumFmt(i[0])}},"<=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lte",i.conditions.number.lte)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return B.parseNumFmt(t)<=B.parseNumFmt(i[0])}},">=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gte",i.conditions.number.gte)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return B.parseNumFmt(t)>=B.parseNumFmt(i[0])}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gt",i.conditions.number.gt)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return B.parseNumFmt(t)>B.parseNumFmt(i[0])}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.between",i.conditions.number.between)},init:B.init2Input,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){var t=B.parseNumFmt(t),e=B.parseNumFmt(i[0]),i=B.parseNumFmt(i[1]);return+e<+i?+e<=+t&&+t<=+i:+i<=+t&&+t<=+e}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notBetween",i.conditions.number.notBetween)},init:B.init2Input,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){var t=B.parseNumFmt(t),e=B.parseNumFmt(i[0]),i=B.parseNumFmt(i[1]);return+e<+i?!(+e<=+t&&+t<=+i):!(+i<=+t&&+t<=+e)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.empty",i.conditions.number.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notEmpty",i.conditions.number.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.stringConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.equals",i.conditions.string.equals)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return t===i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.not",i.conditions.string.not)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidInput,search:function(t,i){return t!==i[0]}},starts:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.startsWith",i.conditions.string.startsWith)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return 0===t.toLowerCase().indexOf(i[0].toLowerCase())}},"!starts":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notStartsWith",i.conditions.string.notStartsWith)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return 0!==t.toLowerCase().indexOf(i[0].toLowerCase())}},contains:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.contains",i.conditions.string.contains)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return t.toLowerCase().includes(i[0].toLowerCase())}},"!contains":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notContains",i.conditions.string.notContains)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return!t.toLowerCase().includes(i[0].toLowerCase())}},ends:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.endsWith",i.conditions.string.endsWith)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return t.toLowerCase().endsWith(i[0].toLowerCase())}},"!ends":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notEndsWith",i.conditions.string.notEndsWith)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return!t.toLowerCase().endsWith(i[0].toLowerCase())}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.empty",i.conditions.string.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notEmpty",i.conditions.string.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.defaults={columns:!0,conditions:{array:B.arrayConditions={contains:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.contains",i.conditions.array.contains)},init:B.initSelectArray,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return t.includes(i[0])}},without:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.without",i.conditions.array.without)},init:B.initSelectArray,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return-1===t.indexOf(i[0])}},"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.equals",i.conditions.array.equals)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){if(t.length!==i[0].length)return!1;for(var e=0;e<t.length;e++)if(t[e]!==i[0][e])return!1;return!0}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.not",i.conditions.array.not)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){if(t.length!==i[0].length)return!0;for(var e=0;e<t.length;e++)if(t[e]!==i[0][e])return!0;return!1}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.empty",i.conditions.array.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.notEmpty",i.conditions.array.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null!==t&&t!==I&&0!==t.length}}},date:B.dateConditions,html:B.stringConditions,"html-num":B.numConditions,"html-num-fmt":B.numFmtConditions,luxon:B.luxonDateConditions,moment:B.momentDateConditions,num:B.numConditions,"num-fmt":B.numFmtConditions,string:B.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:I,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1},c=B,g.prototype.destroy=function(){this.dom.add.off(".dtsb"),this.dom.logic.off(".dtsb"),this.dom.container.trigger("dtsb-destroy").remove(),this.s.criteria=[]},g.prototype.getDetails=function(t){if(void 0===t&&(t=!1),0===this.s.criteria.length)return{};for(var i={criteria:[],logic:this.s.logic},e=0,n=this.s.criteria;e<n.length;e++){var s=n[e];i.criteria.push(s.criteria.getDetails(t))}return i},g.prototype.getNode=function(){return this.dom.container},g.prototype.rebuild=function(t){if(!(t.criteria===I||null===t.criteria||Array.isArray(t.criteria)&&0===t.criteria.length)){if(this.s.logic=t.logic,this.dom.logic.children().first().html("OR"===this.s.logic?this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr):this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd)),Array.isArray(t.criteria))for(var i=0,e=t.criteria;i<e.length;i++)(n=e[i]).logic!==I?this._addPrevGroup(n):n.logic===I&&this._addPrevCriteria(n);for(var n,s=0,r=this.s.criteria;s<r.length;s++)(n=r[s]).criteria instanceof c&&(n.criteria.updateArrows(1<this.s.criteria.length),this._setCriteriaListeners(n.criteria))}},g.prototype.redrawContents=function(){if(!this.s.preventRedraw){this.dom.container.children().detach(),this.dom.container.append(this.dom.logicContainer).append(this.dom.add),this.s.criteria.sort(function(t,i){return t.criteria.s.index<i.criteria.s.index?-1:t.criteria.s.index>i.criteria.s.index?1:0}),this.setListeners();for(var t=0;t<this.s.criteria.length;t++){var i=this.s.criteria[t].criteria;i instanceof c?(this.s.criteria[t].index=t,this.s.criteria[t].criteria.s.index=t,this.s.criteria[t].criteria.dom.container.insertBefore(this.dom.add),this._setCriteriaListeners(i),this.s.criteria[t].criteria.s.preventRedraw=this.s.preventRedraw,this.s.criteria[t].criteria.rebuild(this.s.criteria[t].criteria.getDetails()),this.s.criteria[t].criteria.s.preventRedraw=!1):i instanceof g&&0<i.s.criteria.length?(this.s.criteria[t].index=t,this.s.criteria[t].criteria.s.index=t,this.s.criteria[t].criteria.dom.container.insertBefore(this.dom.add),i.s.preventRedraw=this.s.preventRedraw,i.redrawContents(),i.s.preventRedraw=!1,this._setGroupListeners(i)):(this.s.criteria.splice(t,1),t--)}this.setupLogic()}},g.prototype.redrawLogic=function(){for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof g&&e.criteria.redrawLogic()}this.setupLogic()},g.prototype.search=function(t,i){return"AND"===this.s.logic?this._andSearch(t,i):"OR"!==this.s.logic||this._orSearch(t,i)},g.prototype.setupLogic=function(){if(this.dom.logicContainer.remove(),this.dom.clear.remove(),this.s.criteria.length<1)this.s.isChild||(this.dom.container.trigger("dtsb-destroy"),this.dom.container.css("margin-left",0));else{this.dom.clear.height("0px"),this.dom.logicContainer.append(this.dom.clear),this.dom.container.prepend(this.dom.logicContainer);for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof c&&e.criteria.setupButtons()}var n=this.dom.container.outerHeight()-1,n=(this.dom.logicContainer.width(n),this._setLogicListener(),this.dom.container.css("margin-left",this.dom.logicContainer.outerHeight(!0)),this.dom.logicContainer.offset()),s=n.left,s=s-(s-this.dom.container.offset().left)-this.dom.logicContainer.outerHeight(!0),s=(this.dom.logicContainer.offset({left:s}),this.dom.logicContainer.next()),n=n.top,s=a(s).offset().top;this.dom.logicContainer.offset({top:n-(n-s)}),this.dom.clear.outerHeight(this.dom.logicContainer.height()),this._setClearListener()}},g.prototype.setListeners=function(){var t=this;this.dom.add.unbind("click"),this.dom.add.on("click.dtsb",function(){return t.s.isChild||t.dom.container.prepend(t.dom.logicContainer),t.addCriteria(),t.dom.container.trigger("dtsb-add"),t.s.dt.state.save(),!1});for(var i=0,e=this.s.criteria;i<e.length;i++)e[i].criteria.setListeners();this._setClearListener(),this._setLogicListener()},g.prototype.addCriteria=function(t){for(var i=null===(t=void 0===t?null:t)?this.s.criteria.length:t.s.index,e=new c(this.s.dt,this.s.opts,this.s.topGroup,i,this.s.depth,this.s.serverData),n=(null!==t&&(e.c=t.c,e.s=t.s,e.s.depth=this.s.depth,e.classes=t.classes),e.populate(),!1),s=0;s<this.s.criteria.length;s++)0===s&&this.s.criteria[s].criteria.s.index>e.s.index?(e.getNode().insertBefore(this.s.criteria[s].criteria.dom.container),n=!0):s<this.s.criteria.length-1&&this.s.criteria[s].criteria.s.index<e.s.index&&this.s.criteria[s+1].criteria.s.index>e.s.index&&(e.getNode().insertAfter(this.s.criteria[s].criteria.dom.container),n=!0);n||e.getNode().insertBefore(this.dom.add),this.s.criteria.push({criteria:e,index:i}),this.s.criteria=this.s.criteria.sort(function(t,i){return t.criteria.s.index-i.criteria.s.index});for(var r=0,o=this.s.criteria;r<o.length;r++){var a=o[r];a.criteria instanceof c&&a.criteria.updateArrows(1<this.s.criteria.length)}this._setCriteriaListeners(e),e.setListeners(),this.setupLogic()},g.prototype.checkFilled=function(){for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];if(e.criteria instanceof c&&e.criteria.s.filled||e.criteria instanceof g&&e.criteria.checkFilled())return!0}return!1},g.prototype.count=function(){for(var t=0,i=0,e=this.s.criteria;i<e.length;i++){var n=e[i];n.criteria instanceof g?t+=n.criteria.count():t++}return t},g.prototype._addPrevGroup=function(t){var i=this.s.criteria.length,e=new g(this.s.dt,this.c,this.s.topGroup,i,!0,this.s.depth+1,this.s.serverData);this.s.criteria.push({criteria:e,index:i,logic:e.s.logic}),e.rebuild(t),this.s.criteria[i].criteria=e,this.s.topGroup.trigger("dtsb-redrawContents"),this._setGroupListeners(e)},g.prototype._addPrevCriteria=function(t){var i=this.s.criteria.length,e=new c(this.s.dt,this.s.opts,this.s.topGroup,i,this.s.depth,this.s.serverData);e.populate(),this.s.criteria.push({criteria:e,index:i}),e.s.preventRedraw=this.s.preventRedraw,e.rebuild(t),e.s.preventRedraw=!1,this.s.criteria[i].criteria=e,this.s.preventRedraw||this.s.topGroup.trigger("dtsb-redrawContents")},g.prototype._andSearch=function(t,i){if(0!==this.s.criteria.length)for(var e=0,n=this.s.criteria;e<n.length;e++){var s=n[e];if((!(s.criteria instanceof c)||s.criteria.s.filled)&&!s.criteria.search(t,i))return!1}return!0},g.prototype._orSearch=function(t,i){if(0===this.s.criteria.length)return!0;for(var e=!1,n=0,s=this.s.criteria;n<s.length;n++){var r=s[n];if(r.criteria instanceof c&&r.criteria.s.filled){if(e=!0,r.criteria.search(t,i))return!0}else if(r.criteria instanceof g&&r.criteria.checkFilled()&&(e=!0,r.criteria.search(t,i)))return!0}return!e},g.prototype._removeCriteria=function(t,i){if(void 0===i&&(i=!1),this.s.criteria.length<=1&&this.s.isChild)this.destroy();else{for(var e=void 0,n=0;n<this.s.criteria.length;n++)this.s.criteria[n].index===t.s.index&&(!i||this.s.criteria[n].criteria instanceof g)&&(e=n);e!==I&&this.s.criteria.splice(e,1);for(n=0;n<this.s.criteria.length;n++)this.s.criteria[n].index=n,this.s.criteria[n].criteria.s.index=n}},g.prototype._setCriteriaListeners=function(n){var s=this;n.dom.delete.unbind("click").on("click.dtsb",function(){s._removeCriteria(n),n.dom.container.remove();for(var t=0,i=s.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof c&&e.criteria.updateArrows(1<s.s.criteria.length)}return n.destroy(),s.s.dt.draw(),s.s.topGroup.trigger("dtsb-redrawContents"),!1}),n.dom.right.unbind("click").on("click.dtsb",function(){var t=n.s.index,i=new g(s.s.dt,s.s.opts,s.s.topGroup,n.s.index,!0,s.s.depth+1,s.s.serverData);return i.addCriteria(n),s.s.criteria[t].criteria=i,s.s.criteria[t].logic="AND",s.s.topGroup.trigger("dtsb-redrawContents"),s._setGroupListeners(i),!1}),n.dom.left.unbind("click").on("click.dtsb",function(){s.s.toDrop=new c(s.s.dt,s.s.opts,s.s.topGroup,n.s.index,I,s.s.serverData),s.s.toDrop.s=n.s,s.s.toDrop.c=n.c,s.s.toDrop.classes=n.classes,s.s.toDrop.populate();var t=s.s.toDrop.s.index;return s.dom.container.trigger("dtsb-dropCriteria"),n.s.index=t,s._removeCriteria(n),s.s.topGroup.trigger("dtsb-redrawContents"),s.s.dt.draw(),!1})},g.prototype._setClearListener=function(){var t=this;this.dom.clear.unbind("click").on("click.dtsb",function(){return t.s.isChild?(t.destroy(),t.s.topGroup.trigger("dtsb-redrawContents")):t.dom.container.trigger("dtsb-clearContents"),!1})},g.prototype._setGroupListeners=function(i){var e=this;i.dom.add.unbind("click").on("click.dtsb",function(){return e.setupLogic(),e.dom.container.trigger("dtsb-add"),!1}),i.dom.container.unbind("dtsb-add").on("dtsb-add.dtsb",function(){return e.setupLogic(),e.dom.container.trigger("dtsb-add"),!1}),i.dom.container.unbind("dtsb-destroy").on("dtsb-destroy.dtsb",function(){return e._removeCriteria(i,!0),i.dom.container.remove(),e.setupLogic(),!1}),i.dom.container.unbind("dtsb-dropCriteria").on("dtsb-dropCriteria.dtsb",function(){var t=i.s.toDrop;return t.s.index=i.s.index,t.updateArrows(1<e.s.criteria.length),e.addCriteria(t),!1}),i.setListeners()},g.prototype._setup=function(){this.setListeners(),this.dom.add.html(this.s.dt.i18n("searchBuilder.add",this.c.i18n.add)),this.dom.logic.children().first().html("OR"===this.c.logic?this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr):this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd)),this.s.logic="OR"===this.c.logic?"OR":"AND",this.c.greyscale&&this.dom.logic.addClass(this.classes.greyscale),this.dom.logicContainer.append(this.dom.logic).append(this.dom.clear),this.s.isChild&&this.dom.container.append(this.dom.logicContainer),this.dom.container.append(this.dom.add)},g.prototype._setLogicListener=function(){var e=this;this.dom.logic.unbind("click").on("click.dtsb",function(){e._toggleLogic(),e.s.dt.draw();for(var t=0,i=e.s.criteria;t<i.length;t++)i[t].criteria.setListeners()})},g.prototype._toggleLogic=function(){"OR"===this.s.logic?(this.s.logic="AND",this.dom.logic.children().first().html(this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd))):"AND"===this.s.logic&&(this.s.logic="OR",this.dom.logic.children().first().html(this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr)))},g.version="1.1.0",g.classes={add:"dtsb-add",button:"dtsb-button",clearGroup:"dtsb-clearGroup",greyscale:"dtsb-greyscale",group:"dtsb-group",inputButton:"dtsb-iptbtn",logic:"dtsb-logic",logicContainer:"dtsb-logicContainer"},g.defaults={columns:!0,conditions:{date:c.dateConditions,html:c.stringConditions,"html-num":c.numConditions,"html-num-fmt":c.numFmtConditions,luxon:c.luxonDateConditions,moment:c.momentDateConditions,num:c.numConditions,"num-fmt":c.numFmtConditions,string:c.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:I,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1},m=g,n.prototype.getDetails=function(t){return this.s.topGroup.getDetails(t=void 0===t?!1:t)},n.prototype.getNode=function(){return this.dom.container},n.prototype.rebuild=function(t){return this.dom.clearAll.click(),t!==I&&null!==t&&(this.s.topGroup.s.preventRedraw=!0,this.s.topGroup.rebuild(t),this.s.topGroup.s.preventRedraw=!1,this._checkClear(),this._updateTitle(this.s.topGroup.count()),this.s.topGroup.redrawContents(),this.s.dt.draw(!1),this.s.topGroup.setListeners()),this},n.prototype._applyPreDefDefaults=function(t){for(var e=this,n=(t.criteria!==I&&t.logic===I&&(t.logic="AND"),this),i=0,s=t.criteria;i<s.length;i++)!function(i){i.criteria!==I?i=n._applyPreDefDefaults(i):n.s.dt.columns().every(function(t){e.s.dt.settings()[0].aoColumns[t].sTitle===i.data&&(i.dataIdx=t)})}(s[i]);return t},n.prototype._setUp=function(t){var n=this;if(void 0===t&&(t=!0),h.fn.DataTable.Api.registerPlural("columns().type()","column().type()",function(){return this.iterator("column",function(t,i){return t.aoColumns[i].sType},1)}),!p.DateTime){if((i=this.s.dt.columns().type().toArray())===I||i.includes(I)||i.includes(null))for(var i=[],e=0,s=this.s.dt.settings()[0].aoColumns;e<s.length;e++){var r=s[e];i.push(r.searchBuilderType!==I?r.searchBuilderType:r.sType)}var o=this.s.dt.columns().toArray();(i===I||i.includes(I)||i.includes(null))&&(h.fn.dataTable.ext.oApi._fnColumnTypes(this.s.dt.settings()[0]),i=this.s.dt.columns().type().toArray());for(var a=0;a<o[0].length;a++){var d=i[o[0][a]];if((!0===this.c.columns||Array.isArray(this.c.columns)&&this.c.columns.includes(a))&&(d.includes("date")||d.includes("moment")||d.includes("luxon")))throw alert("SearchBuilder Requires DateTime when used with dates."),new Error("SearchBuilder requires DateTime")}}this.s.topGroup=new m(this.s.dt,this.c,I,I,I,I,this.s.serverData),this._setClearListener(),this.s.dt.on("stateSaveParams.dtsb",function(t,i,e){e.searchBuilder=n.getDetails(),e.scroller?e.start=n.s.dt.state().start:e.page=n.s.dt.page()}),this.s.dt.on("stateLoadParams.dtsb",function(t,i,e){n.rebuild(e.searchBuilder)}),this._build(),this.s.dt.on("preXhr.dtsb",function(t,i,e){n.s.dt.page.info().serverSide&&(e.searchBuilder=n._collapseArray(n.getDetails(!0)))}),this.s.dt.on("column-reorder",function(){n.rebuild(n.getDetails())}),t&&(null!==(t=this.s.dt.state.loaded())&&t.searchBuilder!==I?(this.s.topGroup.rebuild(t.searchBuilder),this.s.topGroup.dom.container.trigger("dtsb-redrawContents"),this.s.dt.page.info().serverSide||(t.page?this.s.dt.page(t.page).draw("page"):this.s.dt.scroller&&t.scroller&&this.s.dt.scroller().scrollToRow(t.scroller.topRow)),this.s.topGroup.setListeners()):!1!==this.c.preDefined&&(this.c.preDefined=this._applyPreDefDefaults(this.c.preDefined),this.rebuild(this.c.preDefined))),this._setEmptyListener(),this.s.dt.state.save()},n.prototype._collapseArray=function(t){if(t.logic===I)t.value!==I&&(t.value.sort(function(t,i){return isNaN(+t)||(t=+t,i=+i),t<i?-1:i<t?1:0}),t.value1=t.value[0],t.value2=t.value[1]);else for(var i=0;i<t.criteria.length;i++)t.criteria[i]=this._collapseArray(t.criteria[i]);return t},n.prototype._updateTitle=function(t){this.dom.title.html(this.s.dt.i18n("searchBuilder.title",this.c.i18n.title,t))},n.prototype._build=function(){var n=this,t=(this.dom.clearAll.remove(),this.dom.container.empty(),this.s.topGroup.count()),s=(this._updateTitle(t),this.dom.titleRow.append(this.dom.title),this.dom.container.append(this.dom.titleRow),this.dom.topGroup=this.s.topGroup.getNode(),this.dom.container.append(this.dom.topGroup),this._setRedrawListener(),this.s.dt.table(0).node());h.fn.dataTable.ext.search.includes(this.s.search)||(this.s.search=function(t,i,e){return t.nTable!==s||n.s.topGroup.search(i,e)},h.fn.dataTable.ext.search.push(this.s.search)),this.s.dt.on("destroy.dtsb",function(){n.dom.container.remove(),n.dom.clearAll.remove();for(var t=h.fn.dataTable.ext.search.indexOf(n.s.search);-1!==t;)h.fn.dataTable.ext.search.splice(t,1),t=h.fn.dataTable.ext.search.indexOf(n.s.search);n.s.dt.off(".dtsb"),h(n.s.dt.table().node()).off(".dtsb")})},n.prototype._checkClear=function(){0<this.s.topGroup.s.criteria.length?(this.dom.clearAll.insertAfter(this.dom.title),this._setClearListener()):this.dom.clearAll.remove()},n.prototype._filterChanged=function(t){var i=this.c.filterChanged;"function"==typeof i&&i(t,this.s.dt.i18n("searchBuilder.button",this.c.i18n.button,t))},n.prototype._setClearListener=function(){var t=this;this.dom.clearAll.unbind("click"),this.dom.clearAll.on("click.dtsb",function(){return t.s.topGroup=new m(t.s.dt,t.c,I,I,I,I,t.s.serverData),t._build(),t.s.dt.draw(),t.s.topGroup.setListeners(),t.dom.clearAll.remove(),t._setEmptyListener(),t._filterChanged(0),!1})},n.prototype._setRedrawListener=function(){var i=this;this.s.topGroup.dom.container.unbind("dtsb-redrawContents"),this.s.topGroup.dom.container.on("dtsb-redrawContents.dtsb",function(){i._checkClear(),i.s.topGroup.redrawContents(),i.s.topGroup.setupLogic(),i._setEmptyListener();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t),i.s.dt.page.info().serverSide||i.s.dt.draw(),i.s.dt.state.save()}),this.s.topGroup.dom.container.unbind("dtsb-redrawContents-noDraw"),this.s.topGroup.dom.container.on("dtsb-redrawContents-noDraw.dtsb",function(){i._checkClear(),i.s.topGroup.s.preventRedraw=!0,i.s.topGroup.redrawContents(),i.s.topGroup.s.preventRedraw=!1,i.s.topGroup.setupLogic(),i._setEmptyListener();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.topGroup.dom.container.unbind("dtsb-redrawLogic"),this.s.topGroup.dom.container.on("dtsb-redrawLogic.dtsb",function(){i.s.topGroup.redrawLogic();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.topGroup.dom.container.unbind("dtsb-add"),this.s.topGroup.dom.container.on("dtsb-add.dtsb",function(){var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.dt.on("postEdit.dtsb postCreate.dtsb postRemove.dtsb",function(){i.s.topGroup.redrawContents()}),this.s.topGroup.dom.container.unbind("dtsb-clearContents"),this.s.topGroup.dom.container.on("dtsb-clearContents.dtsb",function(){i._setUp(!1),i._filterChanged(0),i.s.dt.draw()})},n.prototype._setEmptyListener=function(){var t=this;this.s.topGroup.dom.add.on("click.dtsb",function(){t._checkClear()}),this.s.topGroup.dom.container.on("dtsb-destroy.dtsb",function(){t.dom.clearAll.remove()})},n.version="1.4.0",n.classes={button:"dtsb-button",clearAll:"dtsb-clearAll",container:"dtsb-searchBuilder",inputButton:"dtsb-iptbtn",title:"dtsb-title",titleRow:"dtsb-titleRow"},n.defaults={columns:!0,conditions:{date:c.dateConditions,html:c.stringConditions,"html-num":c.numConditions,"html-num-fmt":c.numFmtConditions,luxon:c.luxonDateConditions,moment:c.momentDateConditions,num:c.numConditions,"num-fmt":c.numFmtConditions,string:c.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:I,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",conditions:{array:{contains:"Contains",empty:"Empty",equals:"Equals",not:"Not",notEmpty:"Not Empty",without:"Without"},date:{after:"After",before:"Before",between:"Between",empty:"Empty",equals:"Equals",not:"Not",notBetween:"Not Between",notEmpty:"Not Empty"},number:{between:"Between",empty:"Empty",equals:"Equals",gt:"Greater Than",gte:"Greater Than Equal To",lt:"Less Than",lte:"Less Than Equal To",not:"Not",notBetween:"Not Between",notEmpty:"Not Empty"},string:{contains:"Contains",empty:"Empty",endsWith:"Ends With",equals:"Equals",not:"Not",notContains:"Does Not Contain",notEmpty:"Not Empty",notEndsWith:"Does Not End With",notStartsWith:"Does Not Start With",startsWith:"Starts With"}},data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1},e=n,p=(h=s).fn.DataTable,d=(a=s).fn.dataTable,u=(w=s).fn.dataTable,i=s.fn.dataTable,r.SearchBuilder=e,i.SearchBuilder=e,r.Group=m,i.Group=m,r.Criteria=c,i.Criteria=c,i=r.Api.register,r.ext.searchBuilder={conditions:{}},r.ext.buttons.searchBuilder={action:function(t,i,e,n){this.popover(n._searchBuilder.getNode(),{align:"container",span:"container"});n=n._searchBuilder.s.topGroup;n!==I&&n.dom.container.trigger("dtsb-redrawContents-noDraw"),0===n.s.criteria.length&&s("."+s.fn.dataTable.Group.classes.add.replace(/ /g,".")).click()},config:{},init:function(e,n,t){var i=new r.SearchBuilder(e,s.extend({filterChanged:function(t,i){e.button(n).text(i)}},t.config));e.button(n).text(t.text||e.i18n("searchBuilder.button",i.c.i18n.button,0)),t._searchBuilder=i},text:null},i("searchBuilder.getDetails()",function(t){void 0===t&&(t=!1);var i=this.context[0];return i._searchBuilder?i._searchBuilder.getDetails(t):null}),i("searchBuilder.rebuild()",function(t){var i=this.context[0];return i._searchBuilder===I?null:(i._searchBuilder.rebuild(t),this)}),i("searchBuilder.container()",function(){var t=this.context[0];return t._searchBuilder?t._searchBuilder.getNode():null}),s(t).on("preInit.dt.dtsp",function(t,i){"dt"!==t.namespace||!i.oInit.searchBuilder&&!r.defaults.searchBuilder||i._searchBuilder||v(i)}),r.ext.feature.push({cFeature:"Q",fnInit:v}),r.ext.features&&r.ext.features.register("searchBuilder",v),r});
4
+ !function(e){var n,s;"function"==typeof define&&define.amd?define(["jquery","datatables.net"],function(t){return e(t,window,document)}):"object"==typeof exports?(n=require("jquery"),s=function(t,i){i.fn.dataTable||require("datatables.net")(t,i)},"undefined"!=typeof window?module.exports=function(t,i){return t=t||window,i=i||n(t),s(t,i),e(i,t,t.document)}:(s(window,n),module.exports=e(n,window,window.document))):e(jQuery,window,document)}(function(s,l,t,I){"use strict";var w,u,a,d,c,h,p,m,e,i,r=s.fn.dataTable;function o(){return l.moment}function f(){return l.luxon}function B(t,i,e,n,s,r){var o=this;if(void 0===n&&(n=0),void 0===s&&(s=1),void 0===r&&(r=I),!u||!u.versionCheck||!u.versionCheck("1.10.0"))throw new Error("SearchPane requires DataTables 1.10 or newer");this.classes=w.extend(!0,{},B.classes),this.c=w.extend(!0,{},B.defaults,w.fn.dataTable.ext.searchBuilder,i);i=this.c.i18n;if(this.s={condition:I,conditions:{},data:I,dataIdx:-1,dataPoints:[],dateFormat:!1,depth:s,dt:t,filled:!1,index:n,origData:I,preventRedraw:!1,serverData:r,topGroup:e,type:"",value:[]},this.dom={buttons:w("<div/>").addClass(this.classes.buttonContainer),condition:w("<select disabled/>").addClass(this.classes.condition).addClass(this.classes.dropDown).addClass(this.classes.italic).attr("autocomplete","hacking"),conditionTitle:w('<option value="" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.condition",i.condition)),container:w("<div/>").addClass(this.classes.container),data:w("<select/>").addClass(this.classes.data).addClass(this.classes.dropDown).addClass(this.classes.italic),dataTitle:w('<option value="" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.data",i.data)),defaultValue:w("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.select).addClass(this.classes.italic),delete:w("<button/>").html(this.s.dt.i18n("searchBuilder.delete",i.delete)).addClass(this.classes.delete).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.deleteTitle",i.deleteTitle)).attr("type","button"),inputCont:w("<div/>").addClass(this.classes.inputCont),left:w("<button/>").html(this.s.dt.i18n("searchBuilder.left",i.left)).addClass(this.classes.left).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.leftTitle",i.leftTitle)).attr("type","button"),right:w("<button/>").html(this.s.dt.i18n("searchBuilder.right",i.right)).addClass(this.classes.right).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.rightTitle",i.rightTitle)).attr("type","button"),value:[w("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.italic).addClass(this.classes.select)],valueTitle:w('<option value="--valueTitle--" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.value",i.value))},this.c.greyscale){this.dom.data.addClass(this.classes.greyscale),this.dom.condition.addClass(this.classes.greyscale),this.dom.defaultValue.addClass(this.classes.greyscale);for(var a=0,d=this.dom.value;a<d.length;a++)d[a].addClass(this.classes.greyscale)}return w(l).on("resize.dtsb",u.util.throttle(function(){o.s.topGroup.trigger("dtsb-redrawLogic")})),this._buildCriteria(),this}function g(t,i,e,n,s,r,o){if(void 0===n&&(n=0),void 0===s&&(s=!1),void 0===r&&(r=1),void 0===o&&(o=I),d&&d.versionCheck&&d.versionCheck("1.10.0"))return this.classes=a.extend(!0,{},g.classes),this.c=a.extend(!0,{},g.defaults,i),this.s={criteria:[],depth:r,dt:t,index:n,isChild:s,logic:I,opts:i,preventRedraw:!1,serverData:o,toDrop:I,topGroup:e},this.dom={add:a("<button/>").addClass(this.classes.add).addClass(this.classes.button).attr("type","button"),clear:a("<button>&times</button>").addClass(this.classes.button).addClass(this.classes.clearGroup).attr("type","button"),container:a("<div/>").addClass(this.classes.group),logic:a("<button><div/></button>").addClass(this.classes.logic).addClass(this.classes.button).attr("type","button"),logicContainer:a("<div/>").addClass(this.classes.logicContainer)},this.s.topGroup===I&&(this.s.topGroup=this.dom.container),this._setup(),this;throw new Error("SearchBuilder requires DataTables 1.10 or newer")}function n(t,i){var s=this;if(!p||!p.versionCheck||!p.versionCheck("1.10.0"))throw new Error("SearchBuilder requires DataTables 1.10 or newer");t=new p.Api(t);if(this.classes=h.extend(!0,{},n.classes),this.c=h.extend(!0,{},n.defaults,i),this.dom={clearAll:h('<button type="button">'+t.i18n("searchBuilder.clearAll",this.c.i18n.clearAll)+"</button>").addClass(this.classes.clearAll).addClass(this.classes.button).attr("type","button"),container:h("<div/>").addClass(this.classes.container),title:h("<div/>").addClass(this.classes.title),titleRow:h("<div/>").addClass(this.classes.titleRow),topGroup:I},this.s={dt:t,opts:i,search:I,serverData:I,topGroup:I},t.settings()[0]._searchBuilder===I)return(t.settings()[0]._searchBuilder=this).s.dt.page.info().serverSide&&(this.s.dt.on("preXhr.dtsb",function(t,i,e){var n=s.s.dt.state.loaded();n&&n.searchBuilder&&(e.searchBuilder=s._collapseArray(n.searchBuilder))}),this.s.dt.on("xhr.dtsb",function(t,i,e){e&&e.searchBuilder&&e.searchBuilder.options&&(s.s.serverData=e.searchBuilder.options)})),this.s.dt.settings()[0]._bInitComplete?this._setUp():t.one("init.dt",function(){s._setUp()}),this}function v(t,i){t=new r.Api(t),i=i||t.init().searchBuilder||r.defaults.searchBuilder;return new e(t,i).getNode()}return B._escapeHTML=function(t){return t.toString().replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"')},B.parseNumFmt=function(t){return+t.replace(/(?!^-)[^0-9.]/g,"")},B.prototype.updateArrows=function(t){void 0===t&&(t=!1),this.dom.container.children().detach(),this.dom.container.append(this.dom.data).append(this.dom.condition).append(this.dom.inputCont),this.setListeners(),this.dom.value[0]!==I&&this.dom.value[0].trigger("dtsb-inserted");for(var i=1;i<this.dom.value.length;i++)this.dom.inputCont.append(this.dom.value[i]),this.dom.value[i].trigger("dtsb-inserted");1<this.s.depth&&this.dom.buttons.append(this.dom.left),(!1===this.c.depthLimit||this.s.depth<this.c.depthLimit)&&t?this.dom.buttons.append(this.dom.right):this.dom.right.remove(),this.dom.buttons.append(this.dom.delete),this.dom.container.append(this.dom.buttons)},B.prototype.destroy=function(){this.dom.data.off(".dtsb"),this.dom.condition.off(".dtsb"),this.dom.delete.off(".dtsb");for(var t=0,i=this.dom.value;t<i.length;t++)i[t].off(".dtsb");this.dom.container.remove()},B.prototype.search=function(t,i){var e=this.s.conditions[this.s.condition];if(this.s.condition!==I&&e!==I){var n=t[this.s.dataIdx];if(this.s.type.includes("num")&&(""!==this.s.dt.settings()[0].oLanguage.sDecimal||""!==this.s.dt.settings()[0].oLanguage.sThousands)){var s=[t[this.s.dataIdx]];if(""!==this.s.dt.settings()[0].oLanguage.sDecimal&&(s=t[this.s.dataIdx].split(this.s.dt.settings()[0].oLanguage.sDecimal)),""!==this.s.dt.settings()[0].oLanguage.sThousands)for(var r=0;r<s.length;r++)s[r]=s[r].replace(this.s.dt.settings()[0].oLanguage.sThousands,",");n=s.join(".")}if("filter"!==this.c.orthogonal.search&&(n=(t=this.s.dt.settings()[0]).oApi._fnGetCellData(t,i,this.s.dataIdx,"string"==typeof this.c.orthogonal?this.c.orthogonal:this.c.orthogonal.search)),"array"===this.s.type){(n=Array.isArray(n)?n:[n]).sort();for(var o=0,a=n;o<a.length;o++){var d=a[o];d&&"string"==typeof d&&(d=d.replace(/[\r\n\u2028]/g," "))}}else null!==n&&"string"==typeof n&&(n=n.replace(/[\r\n\u2028]/g," "));return this.s.type.includes("html")&&"string"==typeof n&&(n=n.replace(/(<([^>]+)>)/gi,"")),e.search(n=null===n?"":n,this.s.value,this)}},B.prototype.getDetails=function(t){if(void 0===t&&(t=!1),null===this.s.type||!this.s.type.includes("num")||""===this.s.dt.settings()[0].oLanguage.sDecimal&&""===this.s.dt.settings()[0].oLanguage.sThousands){if(null!==this.s.type&&t)if(this.s.type.includes("date")||this.s.type.includes("time"))for(i=0;i<this.s.value.length;i++)null===this.s.value[i].match(/^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])$/g)&&(this.s.value[i]="");else if(this.s.type.includes("moment"))for(i=0;i<this.s.value.length;i++)this.s.value[i]&&0<this.s.value[i].length&&o()(this.s.value[i],this.s.dateFormat,!0).isValid()&&(this.s.value[i]=o()(this.s.value[i],this.s.dateFormat).format("YYYY-MM-DD HH:mm:ss"));else if(this.s.type.includes("luxon"))for(i=0;i<this.s.value.length;i++)this.s.value[i]&&0<this.s.value[i].length&&null===f().DateTime.fromFormat(this.s.value[i],this.s.dateFormat).invalid&&(this.s.value[i]=f().DateTime.fromFormat(this.s.value[i],this.s.dateFormat).toFormat("yyyy-MM-dd HH:mm:ss"))}else for(var i=0;i<this.s.value.length;i++){var e=[this.s.value[i].toString()];if(""!==this.s.dt.settings()[0].oLanguage.sDecimal&&(e=this.s.value[i].split(this.s.dt.settings()[0].oLanguage.sDecimal)),""!==this.s.dt.settings()[0].oLanguage.sThousands)for(var n=0;n<e.length;n++)e[n]=e[n].replace(this.s.dt.settings()[0].oLanguage.sThousands,",");this.s.value[i]=e.join(".")}if(this.s.type.includes("num")&&this.s.dt.page.info().serverSide)for(i=0;i<this.s.value.length;i++)this.s.value[i]=this.s.value[i].replace(/[^0-9.\-]/g,"");return{condition:this.s.condition,data:this.s.data,origData:this.s.origData,type:this.s.type,value:this.s.value.map(function(t){return null!==t&&t!==I?t.toString():t})}},B.prototype.getNode=function(){return this.dom.container},B.prototype.populate=function(){this._populateData(),-1!==this.s.dataIdx&&(this._populateCondition(),this.s.condition!==I&&this._populateValue())},B.prototype.rebuild=function(t){var i,e,n,s=!1;if(this._populateData(),t.data!==I&&(e=this.classes.italic,n=this.dom.data,this.dom.data.children("option").each(function(){!s&&(w(this).text()===t.data||t.origData&&w(this).prop("origData")===t.origData)?(w(this).prop("selected",!0),n.removeClass(e),s=!0,i=w(this).val()):w(this).removeProp("selected")})),s){this.s.data=t.data,this.s.origData=t.origData,this.s.dataIdx=i,this.c.orthogonal=this._getOptions().orthogonal,this.dom.dataTitle.remove(),this._populateCondition(),this.dom.conditionTitle.remove();for(var r=void 0,o=this.dom.condition.children("option"),a=0;a<o.length;a++){var d=w(o[a]);t.condition!==I&&d.val()===t.condition&&"string"==typeof t.condition?(d.prop("selected",!0),r=d.val()):d.removeProp("selected")}if(this.s.condition=r,this.s.condition!==I){this.dom.conditionTitle.removeProp("selected"),this.dom.conditionTitle.remove(),this.dom.condition.removeClass(this.classes.italic);for(a=0;a<o.length;a++)(d=w(o[a])).val()!==this.s.condition&&d.removeProp("selected");this._populateValue(t)}else this.dom.conditionTitle.prependTo(this.dom.condition).prop("selected",!0)}},B.prototype.setListeners=function(){var l=this;this.dom.data.unbind("change").on("change.dtsb",function(){l.dom.dataTitle.removeProp("selected");for(var t=l.dom.data.children("option."+l.classes.option),i=0;i<t.length;i++){var e=w(t[i]);e.val()===l.dom.data.val()?(l.dom.data.removeClass(l.classes.italic),e.prop("selected",!0),l.s.dataIdx=+e.val(),l.s.data=e.text(),l.s.origData=e.prop("origData"),l.c.orthogonal=l._getOptions().orthogonal,l._clearCondition(),l._clearValue(),l._populateCondition(),l.s.filled&&(l.s.filled=!1,l.s.dt.draw(),l.setListeners()),l.s.dt.state.save()):e.removeProp("selected")}}),this.dom.condition.unbind("change").on("change.dtsb",function(){l.dom.conditionTitle.removeProp("selected");for(var t=l.dom.condition.children("option."+l.classes.option),i=0;i<t.length;i++){var e=w(t[i]);if(e.val()===l.dom.condition.val()){l.dom.condition.removeClass(l.classes.italic),e.prop("selected",!0);for(var n=e.val(),s=0,r=Object.keys(l.s.conditions);s<r.length;s++)if(r[s]===n){l.s.condition=n;break}l._clearValue(),l._populateValue();for(var o=0,a=l.dom.value;o<a.length;o++){var d=a[o];l.s.filled&&d!==I&&0!==l.dom.inputCont.has(d[0]).length&&(l.s.filled=!1,l.s.dt.draw(),l.setListeners())}(0===l.dom.value.length||1===l.dom.value.length&&l.dom.value[0]===I)&&l.s.dt.draw()}else e.removeProp("selected")}})},B.prototype.setupButtons=function(){550<l.innerWidth?(this.dom.container.removeClass(this.classes.vertical),this.dom.buttons.css("left",null),this.dom.buttons.css("top",null)):(this.dom.container.addClass(this.classes.vertical),this.dom.buttons.css("left",this.dom.data.innerWidth()),this.dom.buttons.css("top",this.dom.data.position().top))},B.prototype._buildCriteria=function(){this.dom.data.append(this.dom.dataTitle),this.dom.condition.append(this.dom.conditionTitle),this.dom.container.append(this.dom.data).append(this.dom.condition),this.dom.inputCont.empty();for(var t=0,i=this.dom.value;t<i.length;t++){var e=i[t];e.append(this.dom.valueTitle),this.dom.inputCont.append(e)}this.dom.buttons.append(this.dom.delete).append(this.dom.right),this.dom.container.append(this.dom.inputCont).append(this.dom.buttons),this.setListeners()},B.prototype._clearCondition=function(){this.dom.condition.empty(),this.dom.conditionTitle.prop("selected",!0).attr("disabled","true"),this.dom.condition.prepend(this.dom.conditionTitle).prop("selectedIndex",0),this.s.conditions={},this.s.condition=I},B.prototype._clearValue=function(){if(this.s.condition!==I){if(0<this.dom.value.length&&this.dom.value[0]!==I)for(var t=0,i=this.dom.value;t<i.length;t++)!function(t){t!==I&&setTimeout(function(){t.remove()},50)}(i[t]);if(this.dom.value=[].concat(this.s.conditions[this.s.condition].init(this,B.updateListener)),0<this.dom.value.length&&this.dom.value[0]!==I){this.dom.inputCont.empty().append(this.dom.value[0]).insertAfter(this.dom.condition),this.dom.value[0].trigger("dtsb-inserted");for(var e=1;e<this.dom.value.length;e++)this.dom.inputCont.append(this.dom.value[e]),this.dom.value[e].trigger("dtsb-inserted")}}else{for(var n=0,s=this.dom.value;n<s.length;n++)!function(t){t!==I&&setTimeout(function(){t.remove()},50)}(s[n]);this.dom.valueTitle.prop("selected",!0),this.dom.defaultValue.append(this.dom.valueTitle).insertAfter(this.dom.condition)}this.s.value=[],this.dom.value=[w("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.italic).addClass(this.classes.select).append(this.dom.valueTitle.clone())]},B.prototype._getOptions=function(){var t=this.s.dt;return w.extend(!0,{},B.defaults,t.settings()[0].aoColumns[this.s.dataIdx].searchBuilder)},B.prototype._populateCondition=function(){var t=[],i=Object.keys(this.s.conditions).length,e=this.s.dt.settings()[0].aoColumns,n=+this.dom.data.children("option:selected").val();if(0===i){this.s.type=this.s.dt.columns().type().toArray()[n],e!==I&&((s=e[n]).searchBuilderType!==I&&null!==s.searchBuilderType?this.s.type=s.searchBuilderType:this.s.type!==I&&null!==this.s.type||(this.s.type=s.sType)),null!==this.s.type&&this.s.type!==I||(w.fn.dataTable.ext.oApi._fnColumnTypes(this.s.dt.settings()[0]),this.s.type=this.s.dt.columns().type().toArray()[n]),this.dom.condition.removeAttr("disabled").empty().append(this.dom.conditionTitle).addClass(this.classes.italic),this.dom.conditionTitle.prop("selected",!0);var s=this.s.dt.settings()[0].oLanguage.sDecimal,r=(""!==s&&this.s.type.indexOf(s)===this.s.type.length-s.length&&(this.s.type.includes("num-fmt")||this.s.type.includes("num"))&&(this.s.type=this.s.type.replace(s,"")),this.c.conditions[this.s.type]!==I?this.c.conditions[this.s.type]:this.s.type.includes("moment")?this.c.conditions.moment:this.s.type.includes("luxon")?this.c.conditions.luxon:this.c.conditions.string);this.s.type.includes("moment")?this.s.dateFormat=this.s.type.replace(/moment-/g,""):this.s.type.includes("luxon")&&(this.s.dateFormat=this.s.type.replace(/luxon-/g,""));for(var o,a=0,d=Object.keys(r);a<d.length;a++)null!==r[c=d[a]]&&(this.s.dt.page.info().serverSide&&r[c].init===B.initSelect&&(o=e[n],this.s.serverData&&this.s.serverData[o.data]?(r[c].init=B.initSelectSSP,r[c].inputValue=B.inputValueSelect,r[c].isInputValid=B.isInputValidSelect):(r[c].init=B.initInput,r[c].inputValue=B.inputValueInput,r[c].isInputValid=B.isInputValidInput)),this.s.conditions[c]=r[c],"function"==typeof(C=r[c].conditionName)&&(C=C(this.s.dt,this.c.i18n)),t.push(w("<option>",{text:C,value:c}).addClass(this.classes.option).addClass(this.classes.notItalic)))}else{if(!(0<i))return void this.dom.condition.attr("disabled","true").addClass(this.classes.italic);this.dom.condition.empty().removeAttr("disabled").addClass(this.classes.italic);for(var l=0,u=Object.keys(this.s.conditions);l<u.length;l++){var c=u[l],h=("function"==typeof(C=this.s.conditions[c].conditionName)&&(C=C(this.s.dt,this.c.i18n)),w("<option>",{text:C,value:c}).addClass(this.classes.option).addClass(this.classes.notItalic));this.s.condition!==I&&this.s.condition===C&&(h.prop("selected",!0),this.dom.condition.removeClass(this.classes.italic)),t.push(h)}}for(var p=0,m=t;p<m.length;p++){var f=m[p];this.dom.condition.append(f)}if(e[n].searchBuilder&&e[n].searchBuilder.defaultCondition){var g=e[n].searchBuilder.defaultCondition;if("number"==typeof g)this.dom.condition.prop("selectedIndex",g),this.dom.condition.trigger("change");else if("string"==typeof g)for(var v=0;v<t.length;v++)for(var b=0,y=Object.keys(this.s.conditions);b<y.length;b++){var C,V=y[b];if(("string"==typeof(C=this.s.conditions[V].conditionName)?C:C(this.s.dt,this.c.i18n))===t[v].text()&&V===g){this.dom.condition.prop("selectedIndex",this.dom.condition.children().toArray().indexOf(t[v][0])).removeClass(this.classes.italic),this.dom.condition.trigger("change"),v=t.length;break}}}else this.dom.condition.prop("selectedIndex",0)},B.prototype._populateData=function(){var t=this.s.dt.settings()[0].aoColumns,i=this.s.dt.columns(this.c.columns).indexes().toArray();this.dom.data.empty().append(this.dom.dataTitle);for(var e,n,s=0;s<t.length;s++)!0!==this.c.columns&&!i.includes(s)||(n={index:s,origData:(e=t[s]).data,text:(e.searchBuilderTitle||e.sTitle).replace(/(<([^>]+)>)/gi,"")},this.dom.data.append(w("<option>",{text:n.text,value:n.index}).addClass(this.classes.option).addClass(this.classes.notItalic).prop("origData",e.data).prop("selected",this.s.dataIdx===n.index)),this.s.dataIdx===n.index&&this.dom.dataTitle.removeProp("selected"))},B.prototype._populateValue=function(i){for(var e=this,t=this.s.filled,n=(this.s.filled=!1,setTimeout(function(){e.dom.defaultValue.remove()},50),0),s=this.dom.value;n<s.length;n++)!function(t){setTimeout(function(){t!==I&&t.remove()},50)}(s[n]);var r=this.dom.inputCont.children();if(1<r.length)for(var o=0;o<r.length;o++)w(r[o]).remove();i!==I&&this.s.dt.columns().every(function(t){e.s.dt.settings()[0].aoColumns[t].sTitle===i.data&&(e.s.dataIdx=t)}),this.dom.value=[].concat(this.s.conditions[this.s.condition].init(this,B.updateListener,i!==I?i.value:I)),i!==I&&i.value!==I&&(this.s.value=i.value),this.dom.inputCont.empty(),this.dom.value[0]!==I&&this.dom.value[0].appendTo(this.dom.inputCont).trigger("dtsb-inserted");for(o=1;o<this.dom.value.length;o++)this.dom.value[o].insertAfter(this.dom.value[o-1]).trigger("dtsb-inserted");this.s.filled=this.s.conditions[this.s.condition].isInputValid(this.dom.value,this),this.setListeners(),this.s.preventRedraw||t===this.s.filled||(this.s.dt.page.info().serverSide||this.s.dt.draw(),this.setListeners())},B.prototype._throttle=function(n,s){var r=null,o=null,a=this;return null===(s=void 0===s?200:s)&&(s=200),function(){for(var t=[],i=0;i<arguments.length;i++)t[i]=arguments[i];var e=+new Date;null!==r&&e<r+s?clearTimeout(o):r=e,o=setTimeout(function(){r=null,n.apply(a,t)},s)}},B.version="1.1.0",B.classes={button:"dtsb-button",buttonContainer:"dtsb-buttonContainer",condition:"dtsb-condition",container:"dtsb-criteria",data:"dtsb-data",delete:"dtsb-delete",dropDown:"dtsb-dropDown",greyscale:"dtsb-greyscale",input:"dtsb-input",inputCont:"dtsb-inputCont",italic:"dtsb-italic",joiner:"dtsp-joiner",left:"dtsb-left",notItalic:"dtsb-notItalic",option:"dtsb-option",right:"dtsb-right",select:"dtsb-select",value:"dtsb-value",vertical:"dtsb-vertical"},B.initSelect=function(e,t,n,i){void 0===n&&(n=null),void 0===i&&(i=!1);for(var s=e.dom.data.children("option:selected").val(),r=e.s.dt.rows().indexes().toArray(),o=e.s.dt.settings()[0],a=(e.dom.valueTitle.prop("selected",!0),w("<select/>").addClass(B.classes.value).addClass(B.classes.dropDown).addClass(B.classes.italic).addClass(B.classes.select).append(e.dom.valueTitle).on("change.dtsb",function(){w(this).removeClass(B.classes.italic),t(e,this)})),d=(e.c.greyscale&&a.addClass(B.classes.greyscale),[]),l=[],u=0,c=r;u<c.length;u++){var h=c[u],p=o.oApi._fnGetCellData(o,h,s,"string"==typeof e.c.orthogonal?e.c.orthogonal:e.c.orthogonal.search),m={filter:"string"==typeof p?p.replace(/[\r\n\u2028]/g," "):p,index:h,text:o.oApi._fnGetCellData(o,h,s,"string"==typeof e.c.orthogonal?e.c.orthogonal:e.c.orthogonal.display)},f=("array"===e.s.type&&(m.filter=Array.isArray(m.filter)?m.filter:[m.filter],m.text=Array.isArray(m.text)?m.text:[m.text]),function(t,i){e.s.type.includes("html")&&null!==t&&"string"==typeof t&&t.replace(/(<([^>]+)>)/gi,"");t=w("<option>",{type:Array.isArray(t)?"Array":"String",value:t}).data("sbv",t).addClass(e.classes.option).addClass(e.classes.notItalic).html("string"==typeof i?i.replace(/(<([^>]+)>)/gi,""):i),i=t.val();-1===d.indexOf(i)&&(d.push(i),l.push(t),null!==n&&Array.isArray(n[0])&&(n[0]=n[0].sort().join(",")),null!==n&&t.val()===n[0]&&(t.prop("selected",!0),a.removeClass(B.classes.italic),e.dom.valueTitle.removeProp("selected")))});if(i)for(var g=0;g<m.filter.length;g++)f(m.filter[g],m.text[g]);else f(m.filter,Array.isArray(m.text)?m.text.join(", "):m.text)}l.sort(function(t,i){return"array"===e.s.type||"string"===e.s.type||"html"===e.s.type?t.val()<i.val()?-1:t.val()>i.val()?1:0:"num"===e.s.type||"html-num"===e.s.type?+t.val().replace(/(<([^>]+)>)/gi,"")<+i.val().replace(/(<([^>]+)>)/gi,"")?-1:+t.val().replace(/(<([^>]+)>)/gi,"")>+i.val().replace(/(<([^>]+)>)/gi,"")?1:0:"num-fmt"===e.s.type||"html-num-fmt"===e.s.type?+t.val().replace(/[^0-9.]/g,"")<+i.val().replace(/[^0-9.]/g,"")?-1:+t.val().replace(/[^0-9.]/g,"")>+i.val().replace(/[^0-9.]/g,"")?1:0:void 0});for(var v=0,b=l;v<b.length;v++){var y=b[v];a.append(y)}return a},B.initSelectSSP=function(t,i,e){void 0===e&&(e=null),t.dom.valueTitle.prop("selected",!0);for(var n=w("<select/>").addClass(B.classes.value).addClass(B.classes.dropDown).addClass(B.classes.italic).addClass(B.classes.select).append(t.dom.valueTitle).on("change.dtsb",function(){w(this).removeClass(B.classes.italic),i(t,this)}),s=(t.c.greyscale&&n.addClass(B.classes.greyscale),[]),r=0,o=t.s.serverData[t.s.origData];r<o.length;r++){var a=o[r],d=a.value,a=a.label,l=(l=void 0,d),d=a;t.s.type.includes("html")&&null!==l&&"string"==typeof l&&l.replace(/(<([^>]+)>)/gi,""),l=w("<option>",{type:Array.isArray(l)?"Array":"String",value:l}).data("sbv",l).addClass(t.classes.option).addClass(t.classes.notItalic).html("string"==typeof d?d.replace(/(<([^>]+)>)/gi,""):d),s.push(l),null!==e&&l.val()===e[0]&&(l.prop("selected",!0),n.removeClass(B.classes.italic),t.dom.valueTitle.removeProp("selected"))}for(var u=0,c=s;u<c.length;u++){var h=c[u];n.append(h)}return n},B.initSelectArray=function(t,i,e){return B.initSelect(t,i,e=void 0===e?null:e,!0)},B.initInput=function(i,e,t){void 0===t&&(t=null);var n=i.s.dt.settings()[0].searchDelay,n=w("<input/>").addClass(B.classes.value).addClass(B.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n));return i.c.greyscale&&n.addClass(B.classes.greyscale),null!==t&&n.val(t[0]),i.s.dt.one("draw.dtsb",function(){i.s.topGroup.trigger("dtsb-redrawLogic")}),n},B.init2Input=function(i,e,t){void 0===t&&(t=null);var n=i.s.dt.settings()[0].searchDelay,n=[w("<input/>").addClass(B.classes.value).addClass(B.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n)),w("<span>").addClass(i.classes.joiner).html(i.s.dt.i18n("searchBuilder.valueJoiner",i.c.i18n.valueJoiner)),w("<input/>").addClass(B.classes.value).addClass(B.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n))];return i.c.greyscale&&(n[0].addClass(B.classes.greyscale),n[2].addClass(B.classes.greyscale)),null!==t&&(n[0].val(t[0]),n[2].val(t[1])),i.s.dt.one("draw.dtsb",function(){i.s.topGroup.trigger("dtsb-redrawLogic")}),n},B.initDate=function(e,n,t){void 0===t&&(t=null);var s=e.s.dt.settings()[0].searchDelay,i=w("<input/>").addClass(B.classes.value).addClass(B.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||I}).on("change.dtsb",e._throttle(function(){return n(e,this)},null===s?100:s)).on("input.dtsb keypress.dtsb",function(i){e._throttle(function(){var t=i.keyCode||i.which;return n(e,this,t)},null===s?100:s)});return e.c.greyscale&&i.addClass(B.classes.greyscale),null!==t&&i.val(t[0]),e.s.dt.one("draw.dtsb",function(){e.s.topGroup.trigger("dtsb-redrawLogic")}),i},B.initNoValue=function(t){return t.s.dt.one("draw.dtsb",function(){t.s.topGroup.trigger("dtsb-redrawLogic")}),[]},B.init2Date=function(e,n,t){var i=this,s=(void 0===t&&(t=null),e.s.dt.settings()[0].searchDelay),r=[w("<input/>").addClass(B.classes.value).addClass(B.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||I}).on("change.dtsb",null!==s?e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s):function(){n(e,i)}).on("input.dtsb keypress.dtsb",function(i){e.s.dt.settings()[0].oApi._fnThrottle(function(){var t=i.keyCode||i.which;return n(e,this,t)},null===s?0:s)}),w("<span>").addClass(e.classes.joiner).html(e.s.dt.i18n("searchBuilder.valueJoiner",e.c.i18n.valueJoiner)),w("<input/>").addClass(B.classes.value).addClass(B.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||I}).on("change.dtsb",null!==s?e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s):function(){n(e,i)}).on("input.dtsb keypress.dtsb",e.c.enterSearch||e.s.dt.settings()[0].oInit.search!==I&&e.s.dt.settings()[0].oInit.search.return||null===s?function(t){t=t.keyCode||t.which;n(e,i,t)}:e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s))];return e.c.greyscale&&(r[0].addClass(B.classes.greyscale),r[2].addClass(B.classes.greyscale)),null!==t&&0<t.length&&(r[0].val(t[0]),r[2].val(t[1])),e.s.dt.one("draw.dtsb",function(){e.s.topGroup.trigger("dtsb-redrawLogic")}),r},B.isInputValidSelect=function(t){for(var i=!0,e=0,n=t;e<n.length;e++){var s=n[e];s.children("option:selected").length===s.children("option").length-s.children("option."+B.classes.notItalic).length&&1===s.children("option:selected").length&&s.children("option:selected")[0]===s.children("option")[0]&&(i=!1)}return i},B.isInputValidInput=function(t){for(var i=!0,e=0,n=t;e<n.length;e++){var s=n[e];s.is("input")&&0===s.val().length&&(i=!1)}return i},B.inputValueSelect=function(t){for(var i=[],e=0,n=t;e<n.length;e++){var s=n[e];s.is("select")&&i.push(B._escapeHTML(s.children("option:selected").data("sbv")))}return i},B.inputValueInput=function(t){for(var i=[],e=0,n=t;e<n.length;e++){var s=n[e];s.is("input")&&i.push(B._escapeHTML(s.val()))}return i},B.updateListener=function(t,i,e){var n=t.s.conditions[t.s.condition];if(t.s.filled=n.isInputValid(t.dom.value,t),t.s.value=n.inputValue(t.dom.value,t),t.s.filled){Array.isArray(t.s.value)||(t.s.value=[t.s.value]);for(var s=0;s<t.s.value.length;s++)if(Array.isArray(t.s.value[s]))t.s.value[s].sort();else if(t.s.type.includes("num")&&(""!==t.s.dt.settings()[0].oLanguage.sDecimal||""!==t.s.dt.settings()[0].oLanguage.sThousands)){var r=[t.s.value[s].toString()];if(""!==t.s.dt.settings()[0].oLanguage.sDecimal&&(r=t.s.value[s].split(t.s.dt.settings()[0].oLanguage.sDecimal)),""!==t.s.dt.settings()[0].oLanguage.sThousands)for(var o=0;o<r.length;o++)r[o]=r[o].replace(t.s.dt.settings()[0].oLanguage.sThousands,",");t.s.value[s]=r.join(".")}for(var a=null,d=null,s=0;s<t.dom.value.length;s++)i===t.dom.value[s][0]&&(a=s,i.selectionStart!==I&&(d=i.selectionStart));(t.c.enterSearch||t.s.dt.settings()[0].oInit.search!==I&&t.s.dt.settings()[0].oInit.search.return)&&13!==e||t.s.dt.draw(),null!==a&&(t.dom.value[a].removeClass(t.classes.italic),t.dom.value[a].focus(),null!==d&&t.dom.value[a][0].setSelectionRange(d,d))}else(t.c.enterSearch||t.s.dt.settings()[0].oInit.search!==I&&t.s.dt.settings()[0].oInit.search.return)&&13!==e||t.s.dt.draw()},B.dateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))===i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))!==i[0]}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))<i[0]}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))>i[0]}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return t=t.replace(/(\/|-|,)/g,"-"),i[0]<i[1]?i[0]<=t&&t<=i[1]:i[1]<=t&&t<=i[0]}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return t=t.replace(/(\/|-|,)/g,"-"),i[0]<i[1]?!(i[0]<=t&&t<=i[1]):!(i[1]<=t&&t<=i[0])}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.momentDateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return o()(t,e.s.dateFormat).valueOf()===o()(i[0],e.s.dateFormat).valueOf()}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return o()(t,e.s.dateFormat).valueOf()!==o()(i[0],e.s.dateFormat).valueOf()}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return o()(t,e.s.dateFormat).valueOf()<o()(i[0],e.s.dateFormat).valueOf()}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return o()(t,e.s.dateFormat).valueOf()>o()(i[0],e.s.dateFormat).valueOf()}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){var t=o()(t,e.s.dateFormat).valueOf(),n=o()(i[0],e.s.dateFormat).valueOf(),i=o()(i[1],e.s.dateFormat).valueOf();return n<i?n<=t&&t<=i:i<=t&&t<=n}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){var t=o()(t,e.s.dateFormat).valueOf(),n=o()(i[0],e.s.dateFormat).valueOf(),i=o()(i[1],e.s.dateFormat).valueOf();return n<i?!(+n<=+t&&+t<=+i):!(+i<=+t&&+t<=+n)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.luxonDateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return f().DateTime.fromFormat(t,e.s.dateFormat).ts===f().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return f().DateTime.fromFormat(t,e.s.dateFormat).ts!==f().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return f().DateTime.fromFormat(t,e.s.dateFormat).ts<f().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:B.initDate,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){return f().DateTime.fromFormat(t,e.s.dateFormat).ts>f().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){var t=f().DateTime.fromFormat(t,e.s.dateFormat).ts,n=f().DateTime.fromFormat(i[0],e.s.dateFormat).ts,i=f().DateTime.fromFormat(i[1],e.s.dateFormat).ts;return n<i?n<=t&&t<=i:i<=t&&t<=n}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:B.init2Date,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i,e){var t=f().DateTime.fromFormat(t,e.s.dateFormat).ts,n=f().DateTime.fromFormat(i[0],e.s.dateFormat).ts,i=f().DateTime.fromFormat(i[1],e.s.dateFormat).ts;return n<i?!(+n<=+t&&+t<=+i):!(+i<=+t&&+t<=+n)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.numConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.equals",i.conditions.number.equals)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return+t==+i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.not",i.conditions.number.not)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return+t!=+i[0]}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lt",i.conditions.number.lt)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+t<+i[0]}},"<=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lte",i.conditions.number.lte)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+t<=+i[0]}},">=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gte",i.conditions.number.gte)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+t>=+i[0]}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gt",i.conditions.number.gt)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+t>+i[0]}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.between",i.conditions.number.between)},init:B.init2Input,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+i[0]<+i[1]?+i[0]<=+t&&+t<=+i[1]:+i[1]<=+t&&+t<=+i[0]}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notBetween",i.conditions.number.notBetween)},init:B.init2Input,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return+i[0]<+i[1]?!(+i[0]<=+t&&+t<=+i[1]):!(+i[1]<=+t&&+t<=+i[0])}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.empty",i.conditions.number.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notEmpty",i.conditions.number.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.numFmtConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.equals",i.conditions.number.equals)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return B.parseNumFmt(t)===B.parseNumFmt(i[0])}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.not",i.conditions.number.not)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return B.parseNumFmt(t)!==B.parseNumFmt(i[0])}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lt",i.conditions.number.lt)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return B.parseNumFmt(t)<B.parseNumFmt(i[0])}},"<=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lte",i.conditions.number.lte)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return B.parseNumFmt(t)<=B.parseNumFmt(i[0])}},">=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gte",i.conditions.number.gte)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return B.parseNumFmt(t)>=B.parseNumFmt(i[0])}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gt",i.conditions.number.gt)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return B.parseNumFmt(t)>B.parseNumFmt(i[0])}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.between",i.conditions.number.between)},init:B.init2Input,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){var t=B.parseNumFmt(t),e=B.parseNumFmt(i[0]),i=B.parseNumFmt(i[1]);return+e<+i?+e<=+t&&+t<=+i:+i<=+t&&+t<=+e}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notBetween",i.conditions.number.notBetween)},init:B.init2Input,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){var t=B.parseNumFmt(t),e=B.parseNumFmt(i[0]),i=B.parseNumFmt(i[1]);return+e<+i?!(+e<=+t&&+t<=+i):!(+i<=+t&&+t<=+e)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.empty",i.conditions.number.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notEmpty",i.conditions.number.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.stringConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.equals",i.conditions.string.equals)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return t===i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.not",i.conditions.string.not)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidInput,search:function(t,i){return t!==i[0]}},starts:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.startsWith",i.conditions.string.startsWith)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return 0===t.toLowerCase().indexOf(i[0].toLowerCase())}},"!starts":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notStartsWith",i.conditions.string.notStartsWith)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return 0!==t.toLowerCase().indexOf(i[0].toLowerCase())}},contains:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.contains",i.conditions.string.contains)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return t.toLowerCase().includes(i[0].toLowerCase())}},"!contains":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notContains",i.conditions.string.notContains)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return!t.toLowerCase().includes(i[0].toLowerCase())}},ends:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.endsWith",i.conditions.string.endsWith)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return t.toLowerCase().endsWith(i[0].toLowerCase())}},"!ends":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notEndsWith",i.conditions.string.notEndsWith)},init:B.initInput,inputValue:B.inputValueInput,isInputValid:B.isInputValidInput,search:function(t,i){return!t.toLowerCase().endsWith(i[0].toLowerCase())}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.empty",i.conditions.string.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notEmpty",i.conditions.string.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null===t||t===I||0===t.length)}}},B.defaults={columns:!0,conditions:{array:B.arrayConditions={contains:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.contains",i.conditions.array.contains)},init:B.initSelectArray,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return t.includes(i[0])}},without:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.without",i.conditions.array.without)},init:B.initSelectArray,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){return-1===t.indexOf(i[0])}},"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.equals",i.conditions.array.equals)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){if(t.length!==i[0].length)return!1;for(var e=0;e<t.length;e++)if(t[e]!==i[0][e])return!1;return!0}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.not",i.conditions.array.not)},init:B.initSelect,inputValue:B.inputValueSelect,isInputValid:B.isInputValidSelect,search:function(t,i){if(t.length!==i[0].length)return!0;for(var e=0;e<t.length;e++)if(t[e]!==i[0][e])return!0;return!1}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.empty",i.conditions.array.empty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null===t||t===I||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.notEmpty",i.conditions.array.notEmpty)},init:B.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null!==t&&t!==I&&0!==t.length}}},date:B.dateConditions,html:B.stringConditions,"html-num":B.numConditions,"html-num-fmt":B.numFmtConditions,luxon:B.luxonDateConditions,moment:B.momentDateConditions,num:B.numConditions,"num-fmt":B.numFmtConditions,string:B.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:I,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1},c=B,g.prototype.destroy=function(){this.dom.add.off(".dtsb"),this.dom.logic.off(".dtsb"),this.dom.container.trigger("dtsb-destroy").remove(),this.s.criteria=[]},g.prototype.getDetails=function(t){if(void 0===t&&(t=!1),0===this.s.criteria.length)return{};for(var i={criteria:[],logic:this.s.logic},e=0,n=this.s.criteria;e<n.length;e++){var s=n[e];i.criteria.push(s.criteria.getDetails(t))}return i},g.prototype.getNode=function(){return this.dom.container},g.prototype.rebuild=function(t){if(!(t.criteria===I||null===t.criteria||Array.isArray(t.criteria)&&0===t.criteria.length)){if(this.s.logic=t.logic,this.dom.logic.children().first().html("OR"===this.s.logic?this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr):this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd)),Array.isArray(t.criteria))for(var i=0,e=t.criteria;i<e.length;i++)(n=e[i]).logic!==I?this._addPrevGroup(n):n.logic===I&&this._addPrevCriteria(n);for(var n,s=0,r=this.s.criteria;s<r.length;s++)(n=r[s]).criteria instanceof c&&(n.criteria.updateArrows(1<this.s.criteria.length),this._setCriteriaListeners(n.criteria))}},g.prototype.redrawContents=function(){if(!this.s.preventRedraw){this.dom.container.children().detach(),this.dom.container.append(this.dom.logicContainer).append(this.dom.add),this.s.criteria.sort(function(t,i){return t.criteria.s.index<i.criteria.s.index?-1:t.criteria.s.index>i.criteria.s.index?1:0}),this.setListeners();for(var t=0;t<this.s.criteria.length;t++){var i=this.s.criteria[t].criteria;i instanceof c?(this.s.criteria[t].index=t,this.s.criteria[t].criteria.s.index=t,this.s.criteria[t].criteria.dom.container.insertBefore(this.dom.add),this._setCriteriaListeners(i),this.s.criteria[t].criteria.s.preventRedraw=this.s.preventRedraw,this.s.criteria[t].criteria.rebuild(this.s.criteria[t].criteria.getDetails()),this.s.criteria[t].criteria.s.preventRedraw=!1):i instanceof g&&0<i.s.criteria.length?(this.s.criteria[t].index=t,this.s.criteria[t].criteria.s.index=t,this.s.criteria[t].criteria.dom.container.insertBefore(this.dom.add),i.s.preventRedraw=this.s.preventRedraw,i.redrawContents(),i.s.preventRedraw=!1,this._setGroupListeners(i)):(this.s.criteria.splice(t,1),t--)}this.setupLogic()}},g.prototype.redrawLogic=function(){for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof g&&e.criteria.redrawLogic()}this.setupLogic()},g.prototype.search=function(t,i){return"AND"===this.s.logic?this._andSearch(t,i):"OR"!==this.s.logic||this._orSearch(t,i)},g.prototype.setupLogic=function(){if(this.dom.logicContainer.remove(),this.dom.clear.remove(),this.s.criteria.length<1)this.s.isChild||(this.dom.container.trigger("dtsb-destroy"),this.dom.container.css("margin-left",0));else{this.dom.clear.height("0px"),this.dom.logicContainer.append(this.dom.clear),this.dom.container.prepend(this.dom.logicContainer);for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof c&&e.criteria.setupButtons()}var n=this.dom.container.outerHeight()-1,n=(this.dom.logicContainer.width(n),this._setLogicListener(),this.dom.container.css("margin-left",this.dom.logicContainer.outerHeight(!0)),this.dom.logicContainer.offset()),s=n.left,s=s-(s-this.dom.container.offset().left)-this.dom.logicContainer.outerHeight(!0),s=(this.dom.logicContainer.offset({left:s}),this.dom.logicContainer.next()),n=n.top,s=a(s).offset().top;this.dom.logicContainer.offset({top:n-(n-s)}),this.dom.clear.outerHeight(this.dom.logicContainer.height()),this._setClearListener()}},g.prototype.setListeners=function(){var t=this;this.dom.add.unbind("click"),this.dom.add.on("click.dtsb",function(){return t.s.isChild||t.dom.container.prepend(t.dom.logicContainer),t.addCriteria(),t.dom.container.trigger("dtsb-add"),t.s.dt.state.save(),!1});for(var i=0,e=this.s.criteria;i<e.length;i++)e[i].criteria.setListeners();this._setClearListener(),this._setLogicListener()},g.prototype.addCriteria=function(t){for(var i=null===(t=void 0===t?null:t)?this.s.criteria.length:t.s.index,e=new c(this.s.dt,this.s.opts,this.s.topGroup,i,this.s.depth,this.s.serverData),n=(null!==t&&(e.c=t.c,e.s=t.s,e.s.depth=this.s.depth,e.classes=t.classes),e.populate(),!1),s=0;s<this.s.criteria.length;s++)0===s&&this.s.criteria[s].criteria.s.index>e.s.index?(e.getNode().insertBefore(this.s.criteria[s].criteria.dom.container),n=!0):s<this.s.criteria.length-1&&this.s.criteria[s].criteria.s.index<e.s.index&&this.s.criteria[s+1].criteria.s.index>e.s.index&&(e.getNode().insertAfter(this.s.criteria[s].criteria.dom.container),n=!0);n||e.getNode().insertBefore(this.dom.add),this.s.criteria.push({criteria:e,index:i}),this.s.criteria=this.s.criteria.sort(function(t,i){return t.criteria.s.index-i.criteria.s.index});for(var r=0,o=this.s.criteria;r<o.length;r++){var a=o[r];a.criteria instanceof c&&a.criteria.updateArrows(1<this.s.criteria.length)}this._setCriteriaListeners(e),e.setListeners(),this.setupLogic()},g.prototype.checkFilled=function(){for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];if(e.criteria instanceof c&&e.criteria.s.filled||e.criteria instanceof g&&e.criteria.checkFilled())return!0}return!1},g.prototype.count=function(){for(var t=0,i=0,e=this.s.criteria;i<e.length;i++){var n=e[i];n.criteria instanceof g?t+=n.criteria.count():t++}return t},g.prototype._addPrevGroup=function(t){var i=this.s.criteria.length,e=new g(this.s.dt,this.c,this.s.topGroup,i,!0,this.s.depth+1,this.s.serverData);this.s.criteria.push({criteria:e,index:i,logic:e.s.logic}),e.rebuild(t),this.s.criteria[i].criteria=e,this.s.topGroup.trigger("dtsb-redrawContents"),this._setGroupListeners(e)},g.prototype._addPrevCriteria=function(t){var i=this.s.criteria.length,e=new c(this.s.dt,this.s.opts,this.s.topGroup,i,this.s.depth,this.s.serverData);e.populate(),this.s.criteria.push({criteria:e,index:i}),e.s.preventRedraw=this.s.preventRedraw,e.rebuild(t),e.s.preventRedraw=!1,this.s.criteria[i].criteria=e,this.s.preventRedraw||this.s.topGroup.trigger("dtsb-redrawContents")},g.prototype._andSearch=function(t,i){if(0!==this.s.criteria.length)for(var e=0,n=this.s.criteria;e<n.length;e++){var s=n[e];if((!(s.criteria instanceof c)||s.criteria.s.filled)&&!s.criteria.search(t,i))return!1}return!0},g.prototype._orSearch=function(t,i){if(0===this.s.criteria.length)return!0;for(var e=!1,n=0,s=this.s.criteria;n<s.length;n++){var r=s[n];if(r.criteria instanceof c&&r.criteria.s.filled){if(e=!0,r.criteria.search(t,i))return!0}else if(r.criteria instanceof g&&r.criteria.checkFilled()&&(e=!0,r.criteria.search(t,i)))return!0}return!e},g.prototype._removeCriteria=function(t,i){if(void 0===i&&(i=!1),this.s.criteria.length<=1&&this.s.isChild)this.destroy();else{for(var e=void 0,n=0;n<this.s.criteria.length;n++)this.s.criteria[n].index===t.s.index&&(!i||this.s.criteria[n].criteria instanceof g)&&(e=n);e!==I&&this.s.criteria.splice(e,1);for(n=0;n<this.s.criteria.length;n++)this.s.criteria[n].index=n,this.s.criteria[n].criteria.s.index=n}},g.prototype._setCriteriaListeners=function(n){var s=this;n.dom.delete.unbind("click").on("click.dtsb",function(){s._removeCriteria(n),n.dom.container.remove();for(var t=0,i=s.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof c&&e.criteria.updateArrows(1<s.s.criteria.length)}return n.destroy(),s.s.dt.draw(),s.s.topGroup.trigger("dtsb-redrawContents"),!1}),n.dom.right.unbind("click").on("click.dtsb",function(){var t=n.s.index,i=new g(s.s.dt,s.s.opts,s.s.topGroup,n.s.index,!0,s.s.depth+1,s.s.serverData);return i.addCriteria(n),s.s.criteria[t].criteria=i,s.s.criteria[t].logic="AND",s.s.topGroup.trigger("dtsb-redrawContents"),s._setGroupListeners(i),!1}),n.dom.left.unbind("click").on("click.dtsb",function(){s.s.toDrop=new c(s.s.dt,s.s.opts,s.s.topGroup,n.s.index,I,s.s.serverData),s.s.toDrop.s=n.s,s.s.toDrop.c=n.c,s.s.toDrop.classes=n.classes,s.s.toDrop.populate();var t=s.s.toDrop.s.index;return s.dom.container.trigger("dtsb-dropCriteria"),n.s.index=t,s._removeCriteria(n),s.s.topGroup.trigger("dtsb-redrawContents"),s.s.dt.draw(),!1})},g.prototype._setClearListener=function(){var t=this;this.dom.clear.unbind("click").on("click.dtsb",function(){return t.s.isChild?(t.destroy(),t.s.topGroup.trigger("dtsb-redrawContents")):t.dom.container.trigger("dtsb-clearContents"),!1})},g.prototype._setGroupListeners=function(i){var e=this;i.dom.add.unbind("click").on("click.dtsb",function(){return e.setupLogic(),e.dom.container.trigger("dtsb-add"),!1}),i.dom.container.unbind("dtsb-add").on("dtsb-add.dtsb",function(){return e.setupLogic(),e.dom.container.trigger("dtsb-add"),!1}),i.dom.container.unbind("dtsb-destroy").on("dtsb-destroy.dtsb",function(){return e._removeCriteria(i,!0),i.dom.container.remove(),e.setupLogic(),!1}),i.dom.container.unbind("dtsb-dropCriteria").on("dtsb-dropCriteria.dtsb",function(){var t=i.s.toDrop;return t.s.index=i.s.index,t.updateArrows(1<e.s.criteria.length),e.addCriteria(t),!1}),i.setListeners()},g.prototype._setup=function(){this.setListeners(),this.dom.add.html(this.s.dt.i18n("searchBuilder.add",this.c.i18n.add)),this.dom.logic.children().first().html("OR"===this.c.logic?this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr):this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd)),this.s.logic="OR"===this.c.logic?"OR":"AND",this.c.greyscale&&this.dom.logic.addClass(this.classes.greyscale),this.dom.logicContainer.append(this.dom.logic).append(this.dom.clear),this.s.isChild&&this.dom.container.append(this.dom.logicContainer),this.dom.container.append(this.dom.add)},g.prototype._setLogicListener=function(){var e=this;this.dom.logic.unbind("click").on("click.dtsb",function(){e._toggleLogic(),e.s.dt.draw();for(var t=0,i=e.s.criteria;t<i.length;t++)i[t].criteria.setListeners()})},g.prototype._toggleLogic=function(){"OR"===this.s.logic?(this.s.logic="AND",this.dom.logic.children().first().html(this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd))):"AND"===this.s.logic&&(this.s.logic="OR",this.dom.logic.children().first().html(this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr)))},g.version="1.1.0",g.classes={add:"dtsb-add",button:"dtsb-button",clearGroup:"dtsb-clearGroup",greyscale:"dtsb-greyscale",group:"dtsb-group",inputButton:"dtsb-iptbtn",logic:"dtsb-logic",logicContainer:"dtsb-logicContainer"},g.defaults={columns:!0,conditions:{date:c.dateConditions,html:c.stringConditions,"html-num":c.numConditions,"html-num-fmt":c.numFmtConditions,luxon:c.luxonDateConditions,moment:c.momentDateConditions,num:c.numConditions,"num-fmt":c.numFmtConditions,string:c.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:I,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1},m=g,n.prototype.getDetails=function(t){return this.s.topGroup.getDetails(t=void 0===t?!1:t)},n.prototype.getNode=function(){return this.dom.container},n.prototype.rebuild=function(t){return this.dom.clearAll.click(),t!==I&&null!==t&&(this.s.topGroup.s.preventRedraw=!0,this.s.topGroup.rebuild(t),this.s.topGroup.s.preventRedraw=!1,this._checkClear(),this._updateTitle(this.s.topGroup.count()),this.s.topGroup.redrawContents(),this.s.dt.draw(!1),this.s.topGroup.setListeners()),this},n.prototype._applyPreDefDefaults=function(t){for(var e=this,n=(t.criteria!==I&&t.logic===I&&(t.logic="AND"),this),i=0,s=t.criteria;i<s.length;i++)!function(i){i.criteria!==I?i=n._applyPreDefDefaults(i):n.s.dt.columns().every(function(t){e.s.dt.settings()[0].aoColumns[t].sTitle===i.data&&(i.dataIdx=t)})}(s[i]);return t},n.prototype._setUp=function(t){var n=this;if(void 0===t&&(t=!0),h.fn.DataTable.Api.registerPlural("columns().type()","column().type()",function(){return this.iterator("column",function(t,i){return t.aoColumns[i].sType},1)}),!p.DateTime){if((i=this.s.dt.columns().type().toArray())===I||i.includes(I)||i.includes(null))for(var i=[],e=0,s=this.s.dt.settings()[0].aoColumns;e<s.length;e++){var r=s[e];i.push(r.searchBuilderType!==I?r.searchBuilderType:r.sType)}var o=this.s.dt.columns().toArray();(i===I||i.includes(I)||i.includes(null))&&(h.fn.dataTable.ext.oApi._fnColumnTypes(this.s.dt.settings()[0]),i=this.s.dt.columns().type().toArray());for(var a=0;a<o[0].length;a++){var d=i[o[0][a]];if((!0===this.c.columns||Array.isArray(this.c.columns)&&this.c.columns.includes(a))&&(d.includes("date")||d.includes("moment")||d.includes("luxon")))throw alert("SearchBuilder Requires DateTime when used with dates."),new Error("SearchBuilder requires DateTime")}}this.s.topGroup=new m(this.s.dt,this.c,I,I,I,I,this.s.serverData),this._setClearListener(),this.s.dt.on("stateSaveParams.dtsb",function(t,i,e){e.searchBuilder=n.getDetails(),e.scroller?e.start=n.s.dt.state().start:e.page=n.s.dt.page()}),this.s.dt.on("stateLoadParams.dtsb",function(t,i,e){n.rebuild(e.searchBuilder)}),this._build(),this.s.dt.on("preXhr.dtsb",function(t,i,e){n.s.dt.page.info().serverSide&&(e.searchBuilder=n._collapseArray(n.getDetails(!0)))}),this.s.dt.on("column-reorder",function(){n.rebuild(n.getDetails())}),t&&(null!==(t=this.s.dt.state.loaded())&&t.searchBuilder!==I?(this.s.topGroup.rebuild(t.searchBuilder),this.s.topGroup.dom.container.trigger("dtsb-redrawContents"),this.s.dt.page.info().serverSide||(t.page?this.s.dt.page(t.page).draw("page"):this.s.dt.scroller&&t.scroller&&this.s.dt.scroller().scrollToRow(t.scroller.topRow)),this.s.topGroup.setListeners()):!1!==this.c.preDefined&&(this.c.preDefined=this._applyPreDefDefaults(this.c.preDefined),this.rebuild(this.c.preDefined))),this._setEmptyListener(),this.s.dt.state.save()},n.prototype._collapseArray=function(t){if(t.logic===I)t.value!==I&&(t.value.sort(function(t,i){return isNaN(+t)||(t=+t,i=+i),t<i?-1:i<t?1:0}),t.value1=t.value[0],t.value2=t.value[1]);else for(var i=0;i<t.criteria.length;i++)t.criteria[i]=this._collapseArray(t.criteria[i]);return t},n.prototype._updateTitle=function(t){this.dom.title.html(this.s.dt.i18n("searchBuilder.title",this.c.i18n.title,t))},n.prototype._build=function(){var n=this,t=(this.dom.clearAll.remove(),this.dom.container.empty(),this.s.topGroup.count()),s=(this._updateTitle(t),this.dom.titleRow.append(this.dom.title),this.dom.container.append(this.dom.titleRow),this.dom.topGroup=this.s.topGroup.getNode(),this.dom.container.append(this.dom.topGroup),this._setRedrawListener(),this.s.dt.table(0).node());h.fn.dataTable.ext.search.includes(this.s.search)||(this.s.search=function(t,i,e){return t.nTable!==s||n.s.topGroup.search(i,e)},h.fn.dataTable.ext.search.push(this.s.search)),this.s.dt.on("destroy.dtsb",function(){n.dom.container.remove(),n.dom.clearAll.remove();for(var t=h.fn.dataTable.ext.search.indexOf(n.s.search);-1!==t;)h.fn.dataTable.ext.search.splice(t,1),t=h.fn.dataTable.ext.search.indexOf(n.s.search);n.s.dt.off(".dtsb"),h(n.s.dt.table().node()).off(".dtsb")})},n.prototype._checkClear=function(){0<this.s.topGroup.s.criteria.length?(this.dom.clearAll.insertAfter(this.dom.title),this._setClearListener()):this.dom.clearAll.remove()},n.prototype._filterChanged=function(t){var i=this.c.filterChanged;"function"==typeof i&&i(t,this.s.dt.i18n("searchBuilder.button",this.c.i18n.button,t))},n.prototype._setClearListener=function(){var t=this;this.dom.clearAll.unbind("click"),this.dom.clearAll.on("click.dtsb",function(){return t.s.topGroup=new m(t.s.dt,t.c,I,I,I,I,t.s.serverData),t._build(),t.s.dt.draw(),t.s.topGroup.setListeners(),t.dom.clearAll.remove(),t._setEmptyListener(),t._filterChanged(0),!1})},n.prototype._setRedrawListener=function(){var i=this;this.s.topGroup.dom.container.unbind("dtsb-redrawContents"),this.s.topGroup.dom.container.on("dtsb-redrawContents.dtsb",function(){i._checkClear(),i.s.topGroup.redrawContents(),i.s.topGroup.setupLogic(),i._setEmptyListener();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t),i.s.dt.page.info().serverSide||i.s.dt.draw(),i.s.dt.state.save()}),this.s.topGroup.dom.container.unbind("dtsb-redrawContents-noDraw"),this.s.topGroup.dom.container.on("dtsb-redrawContents-noDraw.dtsb",function(){i._checkClear(),i.s.topGroup.s.preventRedraw=!0,i.s.topGroup.redrawContents(),i.s.topGroup.s.preventRedraw=!1,i.s.topGroup.setupLogic(),i._setEmptyListener();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.topGroup.dom.container.unbind("dtsb-redrawLogic"),this.s.topGroup.dom.container.on("dtsb-redrawLogic.dtsb",function(){i.s.topGroup.redrawLogic();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.topGroup.dom.container.unbind("dtsb-add"),this.s.topGroup.dom.container.on("dtsb-add.dtsb",function(){var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.dt.on("postEdit.dtsb postCreate.dtsb postRemove.dtsb",function(){i.s.topGroup.redrawContents()}),this.s.topGroup.dom.container.unbind("dtsb-clearContents"),this.s.topGroup.dom.container.on("dtsb-clearContents.dtsb",function(){i._setUp(!1),i._filterChanged(0),i.s.dt.draw()})},n.prototype._setEmptyListener=function(){var t=this;this.s.topGroup.dom.add.on("click.dtsb",function(){t._checkClear()}),this.s.topGroup.dom.container.on("dtsb-destroy.dtsb",function(){t.dom.clearAll.remove()})},n.version="1.4.2",n.classes={button:"dtsb-button",clearAll:"dtsb-clearAll",container:"dtsb-searchBuilder",inputButton:"dtsb-iptbtn",title:"dtsb-title",titleRow:"dtsb-titleRow"},n.defaults={columns:!0,conditions:{date:c.dateConditions,html:c.stringConditions,"html-num":c.numConditions,"html-num-fmt":c.numFmtConditions,luxon:c.luxonDateConditions,moment:c.momentDateConditions,num:c.numConditions,"num-fmt":c.numFmtConditions,string:c.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:I,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",conditions:{array:{contains:"Contains",empty:"Empty",equals:"Equals",not:"Not",notEmpty:"Not Empty",without:"Without"},date:{after:"After",before:"Before",between:"Between",empty:"Empty",equals:"Equals",not:"Not",notBetween:"Not Between",notEmpty:"Not Empty"},number:{between:"Between",empty:"Empty",equals:"Equals",gt:"Greater Than",gte:"Greater Than Equal To",lt:"Less Than",lte:"Less Than Equal To",not:"Not",notBetween:"Not Between",notEmpty:"Not Empty"},string:{contains:"Contains",empty:"Empty",endsWith:"Ends With",equals:"Equals",not:"Not",notContains:"Does Not Contain",notEmpty:"Not Empty",notEndsWith:"Does Not End With",notStartsWith:"Does Not Start With",startsWith:"Starts With"}},data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1},e=n,p=(h=s).fn.DataTable,d=(a=s).fn.dataTable,u=(w=s).fn.dataTable,i=s.fn.dataTable,r.SearchBuilder=e,i.SearchBuilder=e,r.Group=m,i.Group=m,r.Criteria=c,i.Criteria=c,i=r.Api.register,r.ext.searchBuilder={conditions:{}},r.ext.buttons.searchBuilder={action:function(t,i,e,n){this.popover(n._searchBuilder.getNode(),{align:"container",span:"container"});n=n._searchBuilder.s.topGroup;n!==I&&n.dom.container.trigger("dtsb-redrawContents-noDraw"),0===n.s.criteria.length&&s("."+s.fn.dataTable.Group.classes.add.replace(/ /g,".")).click()},config:{},init:function(e,n,t){var i=new r.SearchBuilder(e,s.extend({filterChanged:function(t,i){e.button(n).text(i)}},t.config));e.button(n).text(t.text||e.i18n("searchBuilder.button",i.c.i18n.button,0)),t._searchBuilder=i},text:null},i("searchBuilder.getDetails()",function(t){void 0===t&&(t=!1);var i=this.context[0];return i._searchBuilder?i._searchBuilder.getDetails(t):null}),i("searchBuilder.rebuild()",function(t){var i=this.context[0];return i._searchBuilder===I?null:(i._searchBuilder.rebuild(t),this)}),i("searchBuilder.container()",function(){var t=this.context[0];return t._searchBuilder?t._searchBuilder.getNode():null}),s(t).on("preInit.dt.dtsp",function(t,i){"dt"!==t.namespace||!i.oInit.searchBuilder&&!r.defaults.searchBuilder||i._searchBuilder||v(i)}),r.ext.feature.push({cFeature:"Q",fnInit:v}),r.ext.features&&r.ext.features.register("searchBuilder",v),r});
@@ -1,7 +1,7 @@
1
- /*! SearchBuilder 1.4.0
1
+ /*! SearchBuilder 1.4.2
2
2
  * ©SpryMedia Ltd - datatables.net/license/mit
3
3
  */
4
- import $ from"jquery";import DataTable from"datatables.net";!function(){"use strict";var I,l;function s(){return window.moment}function o(){return window.luxon}w._escapeHTML=function(t){return t.toString().replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"')},w.parseNumFmt=function(t){return+t.replace(/(?!^-)[^0-9.]/g,"")},w.prototype.updateArrows=function(t){void 0===t&&(t=!1),this.dom.container.children().detach(),this.dom.container.append(this.dom.data).append(this.dom.condition).append(this.dom.inputCont),this.setListeners(),void 0!==this.dom.value[0]&&this.dom.value[0].trigger("dtsb-inserted");for(var i=1;i<this.dom.value.length;i++)this.dom.inputCont.append(this.dom.value[i]),this.dom.value[i].trigger("dtsb-inserted");1<this.s.depth&&this.dom.buttons.append(this.dom.left),(!1===this.c.depthLimit||this.s.depth<this.c.depthLimit)&&t?this.dom.buttons.append(this.dom.right):this.dom.right.remove(),this.dom.buttons.append(this.dom.delete),this.dom.container.append(this.dom.buttons)},w.prototype.destroy=function(){this.dom.data.off(".dtsb"),this.dom.condition.off(".dtsb"),this.dom.delete.off(".dtsb");for(var t=0,i=this.dom.value;t<i.length;t++)i[t].off(".dtsb");this.dom.container.remove()},w.prototype.search=function(t,i){var e=this.s.conditions[this.s.condition];if(void 0!==this.s.condition&&void 0!==e){var n=t[this.s.dataIdx];if(this.s.type.includes("num")&&(""!==this.s.dt.settings()[0].oLanguage.sDecimal||""!==this.s.dt.settings()[0].oLanguage.sThousands)){var s=[t[this.s.dataIdx]];if(""!==this.s.dt.settings()[0].oLanguage.sDecimal&&(s=t[this.s.dataIdx].split(this.s.dt.settings()[0].oLanguage.sDecimal)),""!==this.s.dt.settings()[0].oLanguage.sThousands)for(var o=0;o<s.length;o++)s[o]=s[o].replace(this.s.dt.settings()[0].oLanguage.sThousands,",");n=s.join(".")}if("filter"!==this.c.orthogonal.search&&(n=(t=this.s.dt.settings()[0]).oApi._fnGetCellData(t,i,this.s.dataIdx,"string"==typeof this.c.orthogonal?this.c.orthogonal:this.c.orthogonal.search)),"array"===this.s.type){(n=Array.isArray(n)?n:[n]).sort();for(var r=0,a=n;r<a.length;r++){var d=a[r];d&&"string"==typeof d&&(d=d.replace(/[\r\n\u2028]/g," "))}}else null!==n&&"string"==typeof n&&(n=n.replace(/[\r\n\u2028]/g," "));return this.s.type.includes("html")&&"string"==typeof n&&(n=n.replace(/(<([^>]+)>)/gi,"")),e.search(n=null===n?"":n,this.s.value,this)}},w.prototype.getDetails=function(t){if(void 0===t&&(t=!1),null===this.s.type||!this.s.type.includes("num")||""===this.s.dt.settings()[0].oLanguage.sDecimal&&""===this.s.dt.settings()[0].oLanguage.sThousands){if(null!==this.s.type&&t)if(this.s.type.includes("date")||this.s.type.includes("time"))for(i=0;i<this.s.value.length;i++)null===this.s.value[i].match(/^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])$/g)&&(this.s.value[i]="");else if(this.s.type.includes("moment"))for(i=0;i<this.s.value.length;i++)this.s.value[i]&&0<this.s.value[i].length&&s()(this.s.value[i],this.s.dateFormat,!0).isValid()&&(this.s.value[i]=s()(this.s.value[i],this.s.dateFormat).format("YYYY-MM-DD HH:mm:ss"));else if(this.s.type.includes("luxon"))for(i=0;i<this.s.value.length;i++)this.s.value[i]&&0<this.s.value[i].length&&null===o().DateTime.fromFormat(this.s.value[i],this.s.dateFormat).invalid&&(this.s.value[i]=o().DateTime.fromFormat(this.s.value[i],this.s.dateFormat).toFormat("yyyy-MM-dd HH:mm:ss"))}else for(var i=0;i<this.s.value.length;i++){var e=[this.s.value[i].toString()];if(""!==this.s.dt.settings()[0].oLanguage.sDecimal&&(e=this.s.value[i].split(this.s.dt.settings()[0].oLanguage.sDecimal)),""!==this.s.dt.settings()[0].oLanguage.sThousands)for(var n=0;n<e.length;n++)e[n]=e[n].replace(this.s.dt.settings()[0].oLanguage.sThousands,",");this.s.value[i]=e.join(".")}if(this.s.type.includes("num")&&this.s.dt.page.info().serverSide)for(i=0;i<this.s.value.length;i++)this.s.value[i]=this.s.value[i].replace(/[^0-9.]/g,"");return{condition:this.s.condition,data:this.s.data,origData:this.s.origData,type:this.s.type,value:this.s.value.map(function(t){return null!=t?t.toString():t})}},w.prototype.getNode=function(){return this.dom.container},w.prototype.populate=function(){this._populateData(),-1!==this.s.dataIdx&&(this._populateCondition(),void 0!==this.s.condition&&this._populateValue())},w.prototype.rebuild=function(t){var i,e,n,s=!1;if(this._populateData(),void 0!==t.data&&(e=this.classes.italic,n=this.dom.data,this.dom.data.children("option").each(function(){!s&&(I(this).text()===t.data||t.origData&&I(this).prop("origData")===t.origData)?(I(this).prop("selected",!0),n.removeClass(e),s=!0,i=I(this).val()):I(this).removeProp("selected")})),s){this.s.data=t.data,this.s.origData=t.origData,this.s.dataIdx=i,this.c.orthogonal=this._getOptions().orthogonal,this.dom.dataTitle.remove(),this._populateCondition(),this.dom.conditionTitle.remove();for(var o=void 0,r=this.dom.condition.children("option"),a=0;a<r.length;a++){var d=I(r[a]);void 0!==t.condition&&d.val()===t.condition&&"string"==typeof t.condition?(d.prop("selected",!0),o=d.val()):d.removeProp("selected")}if(this.s.condition=o,void 0!==this.s.condition){this.dom.conditionTitle.removeProp("selected"),this.dom.conditionTitle.remove(),this.dom.condition.removeClass(this.classes.italic);for(a=0;a<r.length;a++)(d=I(r[a])).val()!==this.s.condition&&d.removeProp("selected");this._populateValue(t)}else this.dom.conditionTitle.prependTo(this.dom.condition).prop("selected",!0)}},w.prototype.setListeners=function(){var l=this;this.dom.data.unbind("change").on("change.dtsb",function(){l.dom.dataTitle.removeProp("selected");for(var t=l.dom.data.children("option."+l.classes.option),i=0;i<t.length;i++){var e=I(t[i]);e.val()===l.dom.data.val()?(l.dom.data.removeClass(l.classes.italic),e.prop("selected",!0),l.s.dataIdx=+e.val(),l.s.data=e.text(),l.s.origData=e.prop("origData"),l.c.orthogonal=l._getOptions().orthogonal,l._clearCondition(),l._clearValue(),l._populateCondition(),l.s.filled&&(l.s.filled=!1,l.s.dt.draw(),l.setListeners()),l.s.dt.state.save()):e.removeProp("selected")}}),this.dom.condition.unbind("change").on("change.dtsb",function(){l.dom.conditionTitle.removeProp("selected");for(var t=l.dom.condition.children("option."+l.classes.option),i=0;i<t.length;i++){var e=I(t[i]);if(e.val()===l.dom.condition.val()){l.dom.condition.removeClass(l.classes.italic),e.prop("selected",!0);for(var n=e.val(),s=0,o=Object.keys(l.s.conditions);s<o.length;s++)if(o[s]===n){l.s.condition=n;break}l._clearValue(),l._populateValue();for(var r=0,a=l.dom.value;r<a.length;r++){var d=a[r];l.s.filled&&void 0!==d&&0!==l.dom.inputCont.has(d[0]).length&&(l.s.filled=!1,l.s.dt.draw(),l.setListeners())}(0===l.dom.value.length||1===l.dom.value.length&&void 0===l.dom.value[0])&&l.s.dt.draw()}else e.removeProp("selected")}})},w.prototype.setupButtons=function(){550<window.innerWidth?(this.dom.container.removeClass(this.classes.vertical),this.dom.buttons.css("left",null),this.dom.buttons.css("top",null)):(this.dom.container.addClass(this.classes.vertical),this.dom.buttons.css("left",this.dom.data.innerWidth()),this.dom.buttons.css("top",this.dom.data.position().top))},w.prototype._buildCriteria=function(){this.dom.data.append(this.dom.dataTitle),this.dom.condition.append(this.dom.conditionTitle),this.dom.container.append(this.dom.data).append(this.dom.condition),this.dom.inputCont.empty();for(var t=0,i=this.dom.value;t<i.length;t++){var e=i[t];e.append(this.dom.valueTitle),this.dom.inputCont.append(e)}this.dom.buttons.append(this.dom.delete).append(this.dom.right),this.dom.container.append(this.dom.inputCont).append(this.dom.buttons),this.setListeners()},w.prototype._clearCondition=function(){this.dom.condition.empty(),this.dom.conditionTitle.prop("selected",!0).attr("disabled","true"),this.dom.condition.prepend(this.dom.conditionTitle).prop("selectedIndex",0),this.s.conditions={},this.s.condition=void 0},w.prototype._clearValue=function(){if(void 0!==this.s.condition){if(0<this.dom.value.length&&void 0!==this.dom.value[0])for(var t=0,i=this.dom.value;t<i.length;t++)!function(t){void 0!==t&&setTimeout(function(){t.remove()},50)}(i[t]);if(this.dom.value=[].concat(this.s.conditions[this.s.condition].init(this,w.updateListener)),0<this.dom.value.length&&void 0!==this.dom.value[0]){this.dom.inputCont.empty().append(this.dom.value[0]).insertAfter(this.dom.condition),this.dom.value[0].trigger("dtsb-inserted");for(var e=1;e<this.dom.value.length;e++)this.dom.inputCont.append(this.dom.value[e]),this.dom.value[e].trigger("dtsb-inserted")}}else{for(var n=0,s=this.dom.value;n<s.length;n++)!function(t){void 0!==t&&setTimeout(function(){t.remove()},50)}(s[n]);this.dom.valueTitle.prop("selected",!0),this.dom.defaultValue.append(this.dom.valueTitle).insertAfter(this.dom.condition)}this.s.value=[],this.dom.value=[I("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.italic).addClass(this.classes.select).append(this.dom.valueTitle.clone())]},w.prototype._getOptions=function(){var t=this.s.dt;return I.extend(!0,{},w.defaults,t.settings()[0].aoColumns[this.s.dataIdx].searchBuilder)},w.prototype._populateCondition=function(){var t=[],i=Object.keys(this.s.conditions).length,e=this.s.dt.settings()[0].aoColumns,n=+this.dom.data.children("option:selected").val();if(0===i){this.s.type=this.s.dt.columns().type().toArray()[n],void 0!==e&&(void 0!==(s=e[n]).searchBuilderType&&null!==s.searchBuilderType?this.s.type=s.searchBuilderType:void 0!==this.s.type&&null!==this.s.type||(this.s.type=s.sType)),null!==this.s.type&&void 0!==this.s.type||(I.fn.dataTable.ext.oApi._fnColumnTypes(this.s.dt.settings()[0]),this.s.type=this.s.dt.columns().type().toArray()[n]),this.dom.condition.removeAttr("disabled").empty().append(this.dom.conditionTitle).addClass(this.classes.italic),this.dom.conditionTitle.prop("selected",!0);var s=this.s.dt.settings()[0].oLanguage.sDecimal,o=(""!==s&&this.s.type.indexOf(s)===this.s.type.length-s.length&&(this.s.type.includes("num-fmt")||this.s.type.includes("num"))&&(this.s.type=this.s.type.replace(s,"")),void 0!==this.c.conditions[this.s.type]?this.c.conditions[this.s.type]:this.s.type.includes("moment")?this.c.conditions.moment:this.s.type.includes("luxon")?this.c.conditions.luxon:this.c.conditions.string);this.s.type.includes("moment")?this.s.dateFormat=this.s.type.replace(/moment-/g,""):this.s.type.includes("luxon")&&(this.s.dateFormat=this.s.type.replace(/luxon-/g,""));for(var r,a=0,d=Object.keys(o);a<d.length;a++)null!==o[c=d[a]]&&(this.s.dt.page.info().serverSide&&o[c].init===w.initSelect&&(r=e[n],this.s.serverData&&this.s.serverData[r.data]?(o[c].init=w.initSelectSSP,o[c].inputValue=w.inputValueSelect,o[c].isInputValid=w.isInputValidSelect):(o[c].init=w.initInput,o[c].inputValue=w.inputValueInput,o[c].isInputValid=w.isInputValidInput)),this.s.conditions[c]=o[c],"function"==typeof(C=o[c].conditionName)&&(C=C(this.s.dt,this.c.i18n)),t.push(I("<option>",{text:C,value:c}).addClass(this.classes.option).addClass(this.classes.notItalic)))}else{if(!(0<i))return void this.dom.condition.attr("disabled","true").addClass(this.classes.italic);this.dom.condition.empty().removeAttr("disabled").addClass(this.classes.italic);for(var l=0,u=Object.keys(this.s.conditions);l<u.length;l++){var c=u[l],h=("function"==typeof(C=this.s.conditions[c].conditionName)&&(C=C(this.s.dt,this.c.i18n)),I("<option>",{text:C,value:c}).addClass(this.classes.option).addClass(this.classes.notItalic));void 0!==this.s.condition&&this.s.condition===C&&(h.prop("selected",!0),this.dom.condition.removeClass(this.classes.italic)),t.push(h)}}for(var p=0,m=t;p<m.length;p++){var f=m[p];this.dom.condition.append(f)}if(e[n].searchBuilder&&e[n].searchBuilder.defaultCondition){var g=e[n].searchBuilder.defaultCondition;if("number"==typeof g)this.dom.condition.prop("selectedIndex",g),this.dom.condition.trigger("change");else if("string"==typeof g)for(var v=0;v<t.length;v++)for(var b=0,y=Object.keys(this.s.conditions);b<y.length;b++){var C,V=y[b];if(("string"==typeof(C=this.s.conditions[V].conditionName)?C:C(this.s.dt,this.c.i18n))===t[v].text()&&V===g){this.dom.condition.prop("selectedIndex",this.dom.condition.children().toArray().indexOf(t[v][0])).removeClass(this.classes.italic),this.dom.condition.trigger("change"),v=t.length;break}}}else this.dom.condition.prop("selectedIndex",0)},w.prototype._populateData=function(){var r=this;if(this.dom.data.empty().append(this.dom.dataTitle),0===this.s.dataPoints.length)this.s.dt.columns().every(function(t){if(!0===r.c.columns||r.s.dt.columns(r.c.columns).indexes().toArray().includes(t)){for(var i,e,n=!1,s=0,o=r.s.dataPoints;s<o.length;s++)if(o[s].index===t){n=!0;break}n||(e={index:t,origData:(i=r.s.dt.settings()[0].aoColumns[t]).data,text:(void 0===i.searchBuilderTitle?i.sTitle:i.searchBuilderTitle).replace(/(<([^>]+)>)/gi,"")},r.s.dataPoints.push(e),r.dom.data.append(I("<option>",{text:e.text,value:e.index}).addClass(r.classes.option).addClass(r.classes.notItalic).prop("origData",i.data).prop("selected",r.s.dataIdx===e.index)),r.s.dataIdx===e.index&&r.dom.dataTitle.removeProp("selected"))}});else for(var i=this,t=0,e=this.s.dataPoints;t<e.length;t++)!function(e){i.s.dt.columns().every(function(t){var i=r.s.dt.settings()[0].aoColumns[t];(void 0===i.searchBuilderTitle?i.sTitle:i.searchBuilderTitle).replace(/(<([^>]+)>)/gi,"")===e.text&&(e.index=t,e.origData=i.data)});var t=I("<option>",{text:e.text.replace(/(<([^>]+)>)/gi,""),value:e.index}).addClass(i.classes.option).addClass(i.classes.notItalic).prop("origData",e.origData);i.s.data===e.text&&(i.s.dataIdx=e.index,i.dom.dataTitle.removeProp("selected"),t.prop("selected",!0),i.dom.data.removeClass(i.classes.italic)),i.dom.data.append(t)}(e[t])},w.prototype._populateValue=function(i){for(var e=this,t=this.s.filled,n=(this.s.filled=!1,setTimeout(function(){e.dom.defaultValue.remove()},50),0),s=this.dom.value;n<s.length;n++)!function(t){setTimeout(function(){void 0!==t&&t.remove()},50)}(s[n]);var o=this.dom.inputCont.children();if(1<o.length)for(var r=0;r<o.length;r++)I(o[r]).remove();void 0!==i&&this.s.dt.columns().every(function(t){e.s.dt.settings()[0].aoColumns[t].sTitle===i.data&&(e.s.dataIdx=t)}),this.dom.value=[].concat(this.s.conditions[this.s.condition].init(this,w.updateListener,void 0!==i?i.value:void 0)),void 0!==i&&void 0!==i.value&&(this.s.value=i.value),this.dom.inputCont.empty(),void 0!==this.dom.value[0]&&this.dom.value[0].appendTo(this.dom.inputCont).trigger("dtsb-inserted");for(r=1;r<this.dom.value.length;r++)this.dom.value[r].insertAfter(this.dom.value[r-1]).trigger("dtsb-inserted");this.s.filled=this.s.conditions[this.s.condition].isInputValid(this.dom.value,this),this.setListeners(),this.s.preventRedraw||t===this.s.filled||(this.s.dt.page.info().serverSide||this.s.dt.draw(),this.setListeners())},w.prototype._throttle=function(n,s){var o=null,r=null,a=this;return null===(s=void 0===s?200:s)&&(s=200),function(){for(var t=[],i=0;i<arguments.length;i++)t[i]=arguments[i];var e=+new Date;null!==o&&e<o+s?clearTimeout(r):o=e,r=setTimeout(function(){o=null,n.apply(a,t)},s)}},w.version="1.1.0",w.classes={button:"dtsb-button",buttonContainer:"dtsb-buttonContainer",condition:"dtsb-condition",container:"dtsb-criteria",data:"dtsb-data",delete:"dtsb-delete",dropDown:"dtsb-dropDown",greyscale:"dtsb-greyscale",input:"dtsb-input",inputCont:"dtsb-inputCont",italic:"dtsb-italic",joiner:"dtsp-joiner",left:"dtsb-left",notItalic:"dtsb-notItalic",option:"dtsb-option",right:"dtsb-right",select:"dtsb-select",value:"dtsb-value",vertical:"dtsb-vertical"},w.initSelect=function(e,t,n,i){void 0===n&&(n=null),void 0===i&&(i=!1);for(var s=e.dom.data.children("option:selected").val(),o=e.s.dt.rows().indexes().toArray(),r=e.s.dt.settings()[0],a=(e.dom.valueTitle.prop("selected",!0),I("<select/>").addClass(w.classes.value).addClass(w.classes.dropDown).addClass(w.classes.italic).addClass(w.classes.select).append(e.dom.valueTitle).on("change.dtsb",function(){I(this).removeClass(w.classes.italic),t(e,this)})),d=(e.c.greyscale&&a.addClass(w.classes.greyscale),[]),l=[],u=0,c=o;u<c.length;u++){var h=c[u],p=r.oApi._fnGetCellData(r,h,s,"string"==typeof e.c.orthogonal?e.c.orthogonal:e.c.orthogonal.search),m={filter:"string"==typeof p?p.replace(/[\r\n\u2028]/g," "):p,index:h,text:r.oApi._fnGetCellData(r,h,s,"string"==typeof e.c.orthogonal?e.c.orthogonal:e.c.orthogonal.display)},f=("array"===e.s.type&&(m.filter=Array.isArray(m.filter)?m.filter:[m.filter],m.text=Array.isArray(m.text)?m.text:[m.text]),function(t,i){e.s.type.includes("html")&&null!==t&&"string"==typeof t&&t.replace(/(<([^>]+)>)/gi,"");t=I("<option>",{type:Array.isArray(t)?"Array":"String",value:t}).data("sbv",t).addClass(e.classes.option).addClass(e.classes.notItalic).html("string"==typeof i?i.replace(/(<([^>]+)>)/gi,""):i),i=t.val();-1===d.indexOf(i)&&(d.push(i),l.push(t),null!==n&&Array.isArray(n[0])&&(n[0]=n[0].sort().join(",")),null!==n&&t.val()===n[0]&&(t.prop("selected",!0),a.removeClass(w.classes.italic),e.dom.valueTitle.removeProp("selected")))});if(i)for(var g=0;g<m.filter.length;g++)f(m.filter[g],m.text[g]);else f(m.filter,Array.isArray(m.text)?m.text.join(", "):m.text)}l.sort(function(t,i){return"array"===e.s.type||"string"===e.s.type||"html"===e.s.type?t.val()<i.val()?-1:t.val()>i.val()?1:0:"num"===e.s.type||"html-num"===e.s.type?+t.val().replace(/(<([^>]+)>)/gi,"")<+i.val().replace(/(<([^>]+)>)/gi,"")?-1:+t.val().replace(/(<([^>]+)>)/gi,"")>+i.val().replace(/(<([^>]+)>)/gi,"")?1:0:"num-fmt"===e.s.type||"html-num-fmt"===e.s.type?+t.val().replace(/[^0-9.]/g,"")<+i.val().replace(/[^0-9.]/g,"")?-1:+t.val().replace(/[^0-9.]/g,"")>+i.val().replace(/[^0-9.]/g,"")?1:0:void 0});for(var v=0,b=l;v<b.length;v++){var y=b[v];a.append(y)}return a},w.initSelectSSP=function(t,i,e){void 0===e&&(e=null),t.dom.valueTitle.prop("selected",!0);for(var n=I("<select/>").addClass(w.classes.value).addClass(w.classes.dropDown).addClass(w.classes.italic).addClass(w.classes.select).append(t.dom.valueTitle).on("change.dtsb",function(){I(this).removeClass(w.classes.italic),i(t,this)}),s=(t.c.greyscale&&n.addClass(w.classes.greyscale),[]),o=0,r=t.s.serverData[t.s.origData];o<r.length;o++){var a=r[o],d=a.value,a=a.label,l=(l=void 0,d),d=a;t.s.type.includes("html")&&null!==l&&"string"==typeof l&&l.replace(/(<([^>]+)>)/gi,""),l=I("<option>",{type:Array.isArray(l)?"Array":"String",value:l}).data("sbv",l).addClass(t.classes.option).addClass(t.classes.notItalic).html("string"==typeof d?d.replace(/(<([^>]+)>)/gi,""):d),s.push(l),null!==e&&l.val()===e[0]&&(l.prop("selected",!0),n.removeClass(w.classes.italic),t.dom.valueTitle.removeProp("selected"))}for(var u=0,c=s;u<c.length;u++){var h=c[u];n.append(h)}return n},w.initSelectArray=function(t,i,e){return w.initSelect(t,i,e=void 0===e?null:e,!0)},w.initInput=function(i,e,t){void 0===t&&(t=null);var n=i.s.dt.settings()[0].searchDelay,n=I("<input/>").addClass(w.classes.value).addClass(w.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n));return i.c.greyscale&&n.addClass(w.classes.greyscale),null!==t&&n.val(t[0]),i.s.dt.one("draw.dtsb",function(){i.s.topGroup.trigger("dtsb-redrawLogic")}),n},w.init2Input=function(i,e,t){void 0===t&&(t=null);var n=i.s.dt.settings()[0].searchDelay,n=[I("<input/>").addClass(w.classes.value).addClass(w.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n)),I("<span>").addClass(i.classes.joiner).html(i.s.dt.i18n("searchBuilder.valueJoiner",i.c.i18n.valueJoiner)),I("<input/>").addClass(w.classes.value).addClass(w.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n))];return i.c.greyscale&&(n[0].addClass(w.classes.greyscale),n[2].addClass(w.classes.greyscale)),null!==t&&(n[0].val(t[0]),n[2].val(t[1])),i.s.dt.one("draw.dtsb",function(){i.s.topGroup.trigger("dtsb-redrawLogic")}),n},w.initDate=function(e,n,t){void 0===t&&(t=null);var s=e.s.dt.settings()[0].searchDelay,i=I("<input/>").addClass(w.classes.value).addClass(w.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||void 0}).on("change.dtsb",e._throttle(function(){return n(e,this)},null===s?100:s)).on("input.dtsb keypress.dtsb",function(i){e._throttle(function(){var t=i.keyCode||i.which;return n(e,this,t)},null===s?100:s)});return e.c.greyscale&&i.addClass(w.classes.greyscale),null!==t&&i.val(t[0]),e.s.dt.one("draw.dtsb",function(){e.s.topGroup.trigger("dtsb-redrawLogic")}),i},w.initNoValue=function(t){t.s.dt.one("draw.dtsb",function(){t.s.topGroup.trigger("dtsb-redrawLogic")})},w.init2Date=function(e,n,t){var i=this,s=(void 0===t&&(t=null),e.s.dt.settings()[0].searchDelay),o=[I("<input/>").addClass(w.classes.value).addClass(w.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||void 0}).on("change.dtsb",null!==s?e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s):function(){n(e,i)}).on("input.dtsb keypress.dtsb",function(i){e.s.dt.settings()[0].oApi._fnThrottle(function(){var t=i.keyCode||i.which;return n(e,this,t)},null===s?0:s)}),I("<span>").addClass(e.classes.joiner).html(e.s.dt.i18n("searchBuilder.valueJoiner",e.c.i18n.valueJoiner)),I("<input/>").addClass(w.classes.value).addClass(w.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||void 0}).on("change.dtsb",null!==s?e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s):function(){n(e,i)}).on("input.dtsb keypress.dtsb",e.c.enterSearch||void 0!==e.s.dt.settings()[0].oInit.search&&e.s.dt.settings()[0].oInit.search.return||null===s?function(t){t=t.keyCode||t.which;n(e,i,t)}:e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s))];return e.c.greyscale&&(o[0].addClass(w.classes.greyscale),o[2].addClass(w.classes.greyscale)),null!==t&&0<t.length&&(o[0].val(t[0]),o[2].val(t[1])),e.s.dt.one("draw.dtsb",function(){e.s.topGroup.trigger("dtsb-redrawLogic")}),o},w.isInputValidSelect=function(t){for(var i=!0,e=0,n=t;e<n.length;e++){var s=n[e];s.children("option:selected").length===s.children("option").length-s.children("option."+w.classes.notItalic).length&&1===s.children("option:selected").length&&s.children("option:selected")[0]===s.children("option")[0]&&(i=!1)}return i},w.isInputValidInput=function(t){for(var i=!0,e=0,n=t;e<n.length;e++){var s=n[e];s.is("input")&&0===s.val().length&&(i=!1)}return i},w.inputValueSelect=function(t){for(var i=[],e=0,n=t;e<n.length;e++){var s=n[e];s.is("select")&&i.push(w._escapeHTML(s.children("option:selected").data("sbv")))}return i},w.inputValueInput=function(t){for(var i=[],e=0,n=t;e<n.length;e++){var s=n[e];s.is("input")&&i.push(w._escapeHTML(s.val()))}return i},w.updateListener=function(t,i,e){var n=t.s.conditions[t.s.condition];if(t.s.filled=n.isInputValid(t.dom.value,t),t.s.value=n.inputValue(t.dom.value,t),t.s.filled){Array.isArray(t.s.value)||(t.s.value=[t.s.value]);for(var s=0;s<t.s.value.length;s++)if(Array.isArray(t.s.value[s]))t.s.value[s].sort();else if(t.s.type.includes("num")&&(""!==t.s.dt.settings()[0].oLanguage.sDecimal||""!==t.s.dt.settings()[0].oLanguage.sThousands)){var o=[t.s.value[s].toString()];if(""!==t.s.dt.settings()[0].oLanguage.sDecimal&&(o=t.s.value[s].split(t.s.dt.settings()[0].oLanguage.sDecimal)),""!==t.s.dt.settings()[0].oLanguage.sThousands)for(var r=0;r<o.length;r++)o[r]=o[r].replace(t.s.dt.settings()[0].oLanguage.sThousands,",");t.s.value[s]=o.join(".")}for(var a=null,d=null,s=0;s<t.dom.value.length;s++)i===t.dom.value[s][0]&&(a=s,void 0!==i.selectionStart&&(d=i.selectionStart));(t.c.enterSearch||void 0!==t.s.dt.settings()[0].oInit.search&&t.s.dt.settings()[0].oInit.search.return)&&13!==e||t.s.dt.draw(),null!==a&&(t.dom.value[a].removeClass(t.classes.italic),t.dom.value[a].focus(),null!==d&&t.dom.value[a][0].setSelectionRange(d,d))}else(t.c.enterSearch||void 0!==t.s.dt.settings()[0].oInit.search&&t.s.dt.settings()[0].oInit.search.return)&&13!==e||t.s.dt.draw()},w.dateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))===i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))!==i[0]}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))<i[0]}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))>i[0]}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return t=t.replace(/(\/|-|,)/g,"-"),i[0]<i[1]?i[0]<=t&&t<=i[1]:i[1]<=t&&t<=i[0]}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return t=t.replace(/(\/|-|,)/g,"-"),i[0]<i[1]?!(i[0]<=t&&t<=i[1]):!(i[1]<=t&&t<=i[0])}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.momentDateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return s()(t,e.s.dateFormat).valueOf()===s()(i[0],e.s.dateFormat).valueOf()}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return s()(t,e.s.dateFormat).valueOf()!==s()(i[0],e.s.dateFormat).valueOf()}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return s()(t,e.s.dateFormat).valueOf()<s()(i[0],e.s.dateFormat).valueOf()}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return s()(t,e.s.dateFormat).valueOf()>s()(i[0],e.s.dateFormat).valueOf()}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){var t=s()(t,e.s.dateFormat).valueOf(),n=s()(i[0],e.s.dateFormat).valueOf(),i=s()(i[1],e.s.dateFormat).valueOf();return n<i?n<=t&&t<=i:i<=t&&t<=n}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){var t=s()(t,e.s.dateFormat).valueOf(),n=s()(i[0],e.s.dateFormat).valueOf(),i=s()(i[1],e.s.dateFormat).valueOf();return n<i?!(+n<=+t&&+t<=+i):!(+i<=+t&&+t<=+n)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.luxonDateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return o().DateTime.fromFormat(t,e.s.dateFormat).ts===o().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return o().DateTime.fromFormat(t,e.s.dateFormat).ts!==o().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return o().DateTime.fromFormat(t,e.s.dateFormat).ts<o().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return o().DateTime.fromFormat(t,e.s.dateFormat).ts>o().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){var t=o().DateTime.fromFormat(t,e.s.dateFormat).ts,n=o().DateTime.fromFormat(i[0],e.s.dateFormat).ts,i=o().DateTime.fromFormat(i[1],e.s.dateFormat).ts;return n<i?n<=t&&t<=i:i<=t&&t<=n}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){var t=o().DateTime.fromFormat(t,e.s.dateFormat).ts,n=o().DateTime.fromFormat(i[0],e.s.dateFormat).ts,i=o().DateTime.fromFormat(i[1],e.s.dateFormat).ts;return n<i?!(+n<=+t&&+t<=+i):!(+i<=+t&&+t<=+n)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.numConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.equals",i.conditions.number.equals)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return+t==+i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.not",i.conditions.number.not)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return+t!=+i[0]}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lt",i.conditions.number.lt)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+t<+i[0]}},"<=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lte",i.conditions.number.lte)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+t<=+i[0]}},">=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gte",i.conditions.number.gte)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+t>=+i[0]}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gt",i.conditions.number.gt)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+t>+i[0]}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.between",i.conditions.number.between)},init:w.init2Input,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+i[0]<+i[1]?+i[0]<=+t&&+t<=+i[1]:+i[1]<=+t&&+t<=+i[0]}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notBetween",i.conditions.number.notBetween)},init:w.init2Input,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+i[0]<+i[1]?!(+i[0]<=+t&&+t<=+i[1]):!(+i[1]<=+t&&+t<=+i[0])}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.empty",i.conditions.number.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notEmpty",i.conditions.number.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.numFmtConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.equals",i.conditions.number.equals)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return w.parseNumFmt(t)===w.parseNumFmt(i[0])}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.not",i.conditions.number.not)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return w.parseNumFmt(t)!==w.parseNumFmt(i[0])}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lt",i.conditions.number.lt)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return w.parseNumFmt(t)<w.parseNumFmt(i[0])}},"<=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lte",i.conditions.number.lte)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return w.parseNumFmt(t)<=w.parseNumFmt(i[0])}},">=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gte",i.conditions.number.gte)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return w.parseNumFmt(t)>=w.parseNumFmt(i[0])}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gt",i.conditions.number.gt)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return w.parseNumFmt(t)>w.parseNumFmt(i[0])}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.between",i.conditions.number.between)},init:w.init2Input,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){var t=w.parseNumFmt(t),e=w.parseNumFmt(i[0]),i=w.parseNumFmt(i[1]);return+e<+i?+e<=+t&&+t<=+i:+i<=+t&&+t<=+e}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notBetween",i.conditions.number.notBetween)},init:w.init2Input,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){var t=w.parseNumFmt(t),e=w.parseNumFmt(i[0]),i=w.parseNumFmt(i[1]);return+e<+i?!(+e<=+t&&+t<=+i):!(+i<=+t&&+t<=+e)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.empty",i.conditions.number.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notEmpty",i.conditions.number.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.stringConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.equals",i.conditions.string.equals)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return t===i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.not",i.conditions.string.not)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidInput,search:function(t,i){return t!==i[0]}},starts:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.startsWith",i.conditions.string.startsWith)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return 0===t.toLowerCase().indexOf(i[0].toLowerCase())}},"!starts":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notStartsWith",i.conditions.string.notStartsWith)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return 0!==t.toLowerCase().indexOf(i[0].toLowerCase())}},contains:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.contains",i.conditions.string.contains)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return t.toLowerCase().includes(i[0].toLowerCase())}},"!contains":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notContains",i.conditions.string.notContains)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return!t.toLowerCase().includes(i[0].toLowerCase())}},ends:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.endsWith",i.conditions.string.endsWith)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return t.toLowerCase().endsWith(i[0].toLowerCase())}},"!ends":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notEndsWith",i.conditions.string.notEndsWith)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return!t.toLowerCase().endsWith(i[0].toLowerCase())}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.empty",i.conditions.string.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notEmpty",i.conditions.string.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.defaults={columns:!0,conditions:{array:w.arrayConditions={contains:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.contains",i.conditions.array.contains)},init:w.initSelectArray,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return t.includes(i[0])}},without:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.without",i.conditions.array.without)},init:w.initSelectArray,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return-1===t.indexOf(i[0])}},"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.equals",i.conditions.array.equals)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){if(t.length!==i[0].length)return!1;for(var e=0;e<t.length;e++)if(t[e]!==i[0][e])return!1;return!0}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.not",i.conditions.array.not)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){if(t.length!==i[0].length)return!0;for(var e=0;e<t.length;e++)if(t[e]!==i[0][e])return!0;return!1}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.empty",i.conditions.array.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.notEmpty",i.conditions.array.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null!=t&&0!==t.length}}},date:w.dateConditions,html:w.stringConditions,"html-num":w.numConditions,"html-num-fmt":w.numFmtConditions,luxon:w.luxonDateConditions,moment:w.momentDateConditions,num:w.numConditions,"num-fmt":w.numFmtConditions,string:w.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:void 0,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1};var a,d,u=w;function w(t,i,e,n,s,o){var r=this;if(void 0===n&&(n=0),void 0===s&&(s=1),void 0===o&&(o=void 0),!l||!l.versionCheck||!l.versionCheck("1.10.0"))throw new Error("SearchPane requires DataTables 1.10 or newer");this.classes=I.extend(!0,{},w.classes),this.c=I.extend(!0,{},w.defaults,I.fn.dataTable.ext.searchBuilder,i);i=this.c.i18n;if(this.s={condition:void 0,conditions:{},data:void 0,dataIdx:-1,dataPoints:[],dateFormat:!1,depth:s,dt:t,filled:!1,index:n,origData:void 0,preventRedraw:!1,serverData:o,topGroup:e,type:"",value:[]},this.dom={buttons:I("<div/>").addClass(this.classes.buttonContainer),condition:I("<select disabled/>").addClass(this.classes.condition).addClass(this.classes.dropDown).addClass(this.classes.italic).attr("autocomplete","hacking"),conditionTitle:I('<option value="" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.condition",i.condition)),container:I("<div/>").addClass(this.classes.container),data:I("<select/>").addClass(this.classes.data).addClass(this.classes.dropDown).addClass(this.classes.italic),dataTitle:I('<option value="" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.data",i.data)),defaultValue:I("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.select).addClass(this.classes.italic),delete:I("<button/>").html(this.s.dt.i18n("searchBuilder.delete",i.delete)).addClass(this.classes.delete).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.deleteTitle",i.deleteTitle)).attr("type","button"),inputCont:I("<div/>").addClass(this.classes.inputCont),left:I("<button/>").html(this.s.dt.i18n("searchBuilder.left",i.left)).addClass(this.classes.left).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.leftTitle",i.leftTitle)).attr("type","button"),right:I("<button/>").html(this.s.dt.i18n("searchBuilder.right",i.right)).addClass(this.classes.right).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.rightTitle",i.rightTitle)).attr("type","button"),value:[I("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.italic).addClass(this.classes.select)],valueTitle:I('<option value="--valueTitle--" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.value",i.value))},this.c.greyscale){this.dom.data.addClass(this.classes.greyscale),this.dom.condition.addClass(this.classes.greyscale),this.dom.defaultValue.addClass(this.classes.greyscale);for(var a=0,d=this.dom.value;a<d.length;a++)d[a].addClass(this.classes.greyscale)}return I(window).on("resize.dtsb",l.util.throttle(function(){r.s.topGroup.trigger("dtsb-redrawLogic")})),this._buildCriteria(),this}m.prototype.destroy=function(){this.dom.add.off(".dtsb"),this.dom.logic.off(".dtsb"),this.dom.container.trigger("dtsb-destroy").remove(),this.s.criteria=[]},m.prototype.getDetails=function(t){if(void 0===t&&(t=!1),0===this.s.criteria.length)return{};for(var i={criteria:[],logic:this.s.logic},e=0,n=this.s.criteria;e<n.length;e++){var s=n[e];i.criteria.push(s.criteria.getDetails(t))}return i},m.prototype.getNode=function(){return this.dom.container},m.prototype.rebuild=function(t){if(!(void 0===t.criteria||null===t.criteria||Array.isArray(t.criteria)&&0===t.criteria.length)){if(this.s.logic=t.logic,this.dom.logic.children().first().html("OR"===this.s.logic?this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr):this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd)),Array.isArray(t.criteria))for(var i=0,e=t.criteria;i<e.length;i++)void 0!==(n=e[i]).logic?this._addPrevGroup(n):void 0===n.logic&&this._addPrevCriteria(n);for(var n,s=0,o=this.s.criteria;s<o.length;s++)(n=o[s]).criteria instanceof u&&(n.criteria.updateArrows(1<this.s.criteria.length),this._setCriteriaListeners(n.criteria))}},m.prototype.redrawContents=function(){if(!this.s.preventRedraw){this.dom.container.children().detach(),this.dom.container.append(this.dom.logicContainer).append(this.dom.add),this.s.criteria.sort(function(t,i){return t.criteria.s.index<i.criteria.s.index?-1:t.criteria.s.index>i.criteria.s.index?1:0}),this.setListeners();for(var t=0;t<this.s.criteria.length;t++){var i=this.s.criteria[t].criteria;i instanceof u?(this.s.criteria[t].index=t,this.s.criteria[t].criteria.s.index=t,this.s.criteria[t].criteria.dom.container.insertBefore(this.dom.add),this._setCriteriaListeners(i),this.s.criteria[t].criteria.s.preventRedraw=this.s.preventRedraw,this.s.criteria[t].criteria.rebuild(this.s.criteria[t].criteria.getDetails()),this.s.criteria[t].criteria.s.preventRedraw=!1):i instanceof m&&0<i.s.criteria.length?(this.s.criteria[t].index=t,this.s.criteria[t].criteria.s.index=t,this.s.criteria[t].criteria.dom.container.insertBefore(this.dom.add),i.s.preventRedraw=this.s.preventRedraw,i.redrawContents(),i.s.preventRedraw=!1,this._setGroupListeners(i)):(this.s.criteria.splice(t,1),t--)}this.setupLogic()}},m.prototype.redrawLogic=function(){for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof m&&e.criteria.redrawLogic()}this.setupLogic()},m.prototype.search=function(t,i){return"AND"===this.s.logic?this._andSearch(t,i):"OR"!==this.s.logic||this._orSearch(t,i)},m.prototype.setupLogic=function(){if(this.dom.logicContainer.remove(),this.dom.clear.remove(),this.s.criteria.length<1)this.s.isChild||(this.dom.container.trigger("dtsb-destroy"),this.dom.container.css("margin-left",0));else{this.dom.clear.height("0px"),this.dom.logicContainer.append(this.dom.clear),this.dom.container.prepend(this.dom.logicContainer);for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof u&&e.criteria.setupButtons()}var n=this.dom.container.outerHeight()-1,n=(this.dom.logicContainer.width(n),this._setLogicListener(),this.dom.container.css("margin-left",this.dom.logicContainer.outerHeight(!0)),this.dom.logicContainer.offset()),s=n.left,s=s-(s-this.dom.container.offset().left)-this.dom.logicContainer.outerHeight(!0),s=(this.dom.logicContainer.offset({left:s}),this.dom.logicContainer.next()),n=n.top,s=a(s).offset().top;this.dom.logicContainer.offset({top:n-(n-s)}),this.dom.clear.outerHeight(this.dom.logicContainer.height()),this._setClearListener()}},m.prototype.setListeners=function(){var t=this;this.dom.add.unbind("click"),this.dom.add.on("click.dtsb",function(){return t.s.isChild||t.dom.container.prepend(t.dom.logicContainer),t.addCriteria(),t.dom.container.trigger("dtsb-add"),t.s.dt.state.save(),!1});for(var i=0,e=this.s.criteria;i<e.length;i++)e[i].criteria.setListeners();this._setClearListener(),this._setLogicListener()},m.prototype.addCriteria=function(t){for(var i=null===(t=void 0===t?null:t)?this.s.criteria.length:t.s.index,e=new u(this.s.dt,this.s.opts,this.s.topGroup,i,this.s.depth,this.s.serverData),n=(null!==t&&(e.c=t.c,e.s=t.s,e.s.depth=this.s.depth,e.classes=t.classes),e.populate(),!1),s=0;s<this.s.criteria.length;s++)0===s&&this.s.criteria[s].criteria.s.index>e.s.index?(e.getNode().insertBefore(this.s.criteria[s].criteria.dom.container),n=!0):s<this.s.criteria.length-1&&this.s.criteria[s].criteria.s.index<e.s.index&&this.s.criteria[s+1].criteria.s.index>e.s.index&&(e.getNode().insertAfter(this.s.criteria[s].criteria.dom.container),n=!0);n||e.getNode().insertBefore(this.dom.add),this.s.criteria.push({criteria:e,index:i}),this.s.criteria=this.s.criteria.sort(function(t,i){return t.criteria.s.index-i.criteria.s.index});for(var o=0,r=this.s.criteria;o<r.length;o++){var a=r[o];a.criteria instanceof u&&a.criteria.updateArrows(1<this.s.criteria.length)}this._setCriteriaListeners(e),e.setListeners(),this.setupLogic()},m.prototype.checkFilled=function(){for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];if(e.criteria instanceof u&&e.criteria.s.filled||e.criteria instanceof m&&e.criteria.checkFilled())return!0}return!1},m.prototype.count=function(){for(var t=0,i=0,e=this.s.criteria;i<e.length;i++){var n=e[i];n.criteria instanceof m?t+=n.criteria.count():t++}return t},m.prototype._addPrevGroup=function(t){var i=this.s.criteria.length,e=new m(this.s.dt,this.c,this.s.topGroup,i,!0,this.s.depth+1,this.s.serverData);this.s.criteria.push({criteria:e,index:i,logic:e.s.logic}),e.rebuild(t),this.s.criteria[i].criteria=e,this.s.topGroup.trigger("dtsb-redrawContents"),this._setGroupListeners(e)},m.prototype._addPrevCriteria=function(t){var i=this.s.criteria.length,e=new u(this.s.dt,this.s.opts,this.s.topGroup,i,this.s.depth,this.s.serverData);e.populate(),this.s.criteria.push({criteria:e,index:i}),e.s.preventRedraw=this.s.preventRedraw,e.rebuild(t),e.s.preventRedraw=!1,this.s.criteria[i].criteria=e,this.s.preventRedraw||this.s.topGroup.trigger("dtsb-redrawContents")},m.prototype._andSearch=function(t,i){if(0!==this.s.criteria.length)for(var e=0,n=this.s.criteria;e<n.length;e++){var s=n[e];if((!(s.criteria instanceof u)||s.criteria.s.filled)&&!s.criteria.search(t,i))return!1}return!0},m.prototype._orSearch=function(t,i){if(0===this.s.criteria.length)return!0;for(var e=!1,n=0,s=this.s.criteria;n<s.length;n++){var o=s[n];if(o.criteria instanceof u&&o.criteria.s.filled){if(e=!0,o.criteria.search(t,i))return!0}else if(o.criteria instanceof m&&o.criteria.checkFilled()&&(e=!0,o.criteria.search(t,i)))return!0}return!e},m.prototype._removeCriteria=function(t,i){if(void 0===i&&(i=!1),this.s.criteria.length<=1&&this.s.isChild)this.destroy();else{for(var e=void 0,n=0;n<this.s.criteria.length;n++)this.s.criteria[n].index===t.s.index&&(!i||this.s.criteria[n].criteria instanceof m)&&(e=n);void 0!==e&&this.s.criteria.splice(e,1);for(n=0;n<this.s.criteria.length;n++)this.s.criteria[n].index=n,this.s.criteria[n].criteria.s.index=n}},m.prototype._setCriteriaListeners=function(n){var s=this;n.dom.delete.unbind("click").on("click.dtsb",function(){s._removeCriteria(n),n.dom.container.remove();for(var t=0,i=s.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof u&&e.criteria.updateArrows(1<s.s.criteria.length)}return n.destroy(),s.s.dt.draw(),s.s.topGroup.trigger("dtsb-redrawContents"),!1}),n.dom.right.unbind("click").on("click.dtsb",function(){var t=n.s.index,i=new m(s.s.dt,s.s.opts,s.s.topGroup,n.s.index,!0,s.s.depth+1,s.s.serverData);return i.addCriteria(n),s.s.criteria[t].criteria=i,s.s.criteria[t].logic="AND",s.s.topGroup.trigger("dtsb-redrawContents"),s._setGroupListeners(i),!1}),n.dom.left.unbind("click").on("click.dtsb",function(){s.s.toDrop=new u(s.s.dt,s.s.opts,s.s.topGroup,n.s.index,void 0,s.s.serverData),s.s.toDrop.s=n.s,s.s.toDrop.c=n.c,s.s.toDrop.classes=n.classes,s.s.toDrop.populate();var t=s.s.toDrop.s.index;return s.dom.container.trigger("dtsb-dropCriteria"),n.s.index=t,s._removeCriteria(n),s.s.topGroup.trigger("dtsb-redrawContents"),s.s.dt.draw(),!1})},m.prototype._setClearListener=function(){var t=this;this.dom.clear.unbind("click").on("click.dtsb",function(){return t.s.isChild?(t.destroy(),t.s.topGroup.trigger("dtsb-redrawContents")):t.dom.container.trigger("dtsb-clearContents"),!1})},m.prototype._setGroupListeners=function(i){var e=this;i.dom.add.unbind("click").on("click.dtsb",function(){return e.setupLogic(),e.dom.container.trigger("dtsb-add"),!1}),i.dom.container.unbind("dtsb-add").on("dtsb-add.dtsb",function(){return e.setupLogic(),e.dom.container.trigger("dtsb-add"),!1}),i.dom.container.unbind("dtsb-destroy").on("dtsb-destroy.dtsb",function(){return e._removeCriteria(i,!0),i.dom.container.remove(),e.setupLogic(),!1}),i.dom.container.unbind("dtsb-dropCriteria").on("dtsb-dropCriteria.dtsb",function(){var t=i.s.toDrop;return t.s.index=i.s.index,t.updateArrows(1<e.s.criteria.length),e.addCriteria(t),!1}),i.setListeners()},m.prototype._setup=function(){this.setListeners(),this.dom.add.html(this.s.dt.i18n("searchBuilder.add",this.c.i18n.add)),this.dom.logic.children().first().html("OR"===this.c.logic?this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr):this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd)),this.s.logic="OR"===this.c.logic?"OR":"AND",this.c.greyscale&&this.dom.logic.addClass(this.classes.greyscale),this.dom.logicContainer.append(this.dom.logic).append(this.dom.clear),this.s.isChild&&this.dom.container.append(this.dom.logicContainer),this.dom.container.append(this.dom.add)},m.prototype._setLogicListener=function(){var e=this;this.dom.logic.unbind("click").on("click.dtsb",function(){e._toggleLogic(),e.s.dt.draw();for(var t=0,i=e.s.criteria;t<i.length;t++)i[t].criteria.setListeners()})},m.prototype._toggleLogic=function(){"OR"===this.s.logic?(this.s.logic="AND",this.dom.logic.children().first().html(this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd))):"AND"===this.s.logic&&(this.s.logic="OR",this.dom.logic.children().first().html(this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr)))},m.version="1.1.0",m.classes={add:"dtsb-add",button:"dtsb-button",clearGroup:"dtsb-clearGroup",greyscale:"dtsb-greyscale",group:"dtsb-group",inputButton:"dtsb-iptbtn",logic:"dtsb-logic",logicContainer:"dtsb-logicContainer"},m.defaults={columns:!0,conditions:{date:u.dateConditions,html:u.stringConditions,"html-num":u.numConditions,"html-num-fmt":u.numFmtConditions,luxon:u.luxonDateConditions,moment:u.momentDateConditions,num:u.numConditions,"num-fmt":u.numFmtConditions,string:u.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:void 0,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1};var c,h,p=m;function m(t,i,e,n,s,o,r){if(void 0===n&&(n=0),void 0===s&&(s=!1),void 0===o&&(o=1),void 0===r&&(r=void 0),d&&d.versionCheck&&d.versionCheck("1.10.0"))return this.classes=a.extend(!0,{},m.classes),this.c=a.extend(!0,{},m.defaults,i),this.s={criteria:[],depth:o,dt:t,index:n,isChild:s,logic:void 0,opts:i,preventRedraw:!1,serverData:r,toDrop:void 0,topGroup:e},this.dom={add:a("<button/>").addClass(this.classes.add).addClass(this.classes.button).attr("type","button"),clear:a("<button>&times</button>").addClass(this.classes.button).addClass(this.classes.clearGroup).attr("type","button"),container:a("<div/>").addClass(this.classes.group),logic:a("<button><div/></button>").addClass(this.classes.logic).addClass(this.classes.button).attr("type","button"),logicContainer:a("<div/>").addClass(this.classes.logicContainer)},void 0===this.s.topGroup&&(this.s.topGroup=this.dom.container),this._setup(),this;throw new Error("SearchBuilder requires DataTables 1.10 or newer")}n.prototype.getDetails=function(t){return this.s.topGroup.getDetails(t=void 0===t?!1:t)},n.prototype.getNode=function(){return this.dom.container},n.prototype.rebuild=function(t){return this.dom.clearAll.click(),null!=t&&(this.s.topGroup.s.preventRedraw=!0,this.s.topGroup.rebuild(t),this.s.topGroup.s.preventRedraw=!1,this._checkClear(),this._updateTitle(this.s.topGroup.count()),this.s.topGroup.redrawContents(),this.s.dt.draw(!1),this.s.topGroup.setListeners()),this},n.prototype._applyPreDefDefaults=function(t){for(var e=this,n=(void 0!==t.criteria&&void 0===t.logic&&(t.logic="AND"),this),i=0,s=t.criteria;i<s.length;i++)!function(i){void 0!==i.criteria?i=n._applyPreDefDefaults(i):n.s.dt.columns().every(function(t){e.s.dt.settings()[0].aoColumns[t].sTitle===i.data&&(i.dataIdx=t)})}(s[i]);return t},n.prototype._setUp=function(t){var n=this;if(void 0===t&&(t=!0),c.fn.DataTable.Api.registerPlural("columns().type()","column().type()",function(){return this.iterator("column",function(t,i){return t.aoColumns[i].sType},1)}),!h.DateTime){if(void 0===(i=this.s.dt.columns().type().toArray())||i.includes(void 0)||i.includes(null))for(var i=[],e=0,s=this.s.dt.settings()[0].aoColumns;e<s.length;e++){var o=s[e];i.push(void 0!==o.searchBuilderType?o.searchBuilderType:o.sType)}var r=this.s.dt.columns().toArray();(void 0===i||i.includes(void 0)||i.includes(null))&&(c.fn.dataTable.ext.oApi._fnColumnTypes(this.s.dt.settings()[0]),i=this.s.dt.columns().type().toArray());for(var a=0;a<r[0].length;a++){var d=i[r[0][a]];if((!0===this.c.columns||Array.isArray(this.c.columns)&&this.c.columns.includes(a))&&(d.includes("date")||d.includes("moment")||d.includes("luxon")))throw alert("SearchBuilder Requires DateTime when used with dates."),new Error("SearchBuilder requires DateTime")}}this.s.topGroup=new p(this.s.dt,this.c,void 0,void 0,void 0,void 0,this.s.serverData),this._setClearListener(),this.s.dt.on("stateSaveParams.dtsb",function(t,i,e){e.searchBuilder=n.getDetails(),e.scroller?e.start=n.s.dt.state().start:e.page=n.s.dt.page()}),this.s.dt.on("stateLoadParams.dtsb",function(t,i,e){n.rebuild(e.searchBuilder)}),this._build(),this.s.dt.on("preXhr.dtsb",function(t,i,e){n.s.dt.page.info().serverSide&&(e.searchBuilder=n._collapseArray(n.getDetails(!0)))}),this.s.dt.on("column-reorder",function(){n.rebuild(n.getDetails())}),t&&(null!==(t=this.s.dt.state.loaded())&&void 0!==t.searchBuilder?(this.s.topGroup.rebuild(t.searchBuilder),this.s.topGroup.dom.container.trigger("dtsb-redrawContents"),this.s.dt.page.info().serverSide||(t.page?this.s.dt.page(t.page).draw("page"):this.s.dt.scroller&&t.scroller&&this.s.dt.scroller().scrollToRow(t.scroller.topRow)),this.s.topGroup.setListeners()):!1!==this.c.preDefined&&(this.c.preDefined=this._applyPreDefDefaults(this.c.preDefined),this.rebuild(this.c.preDefined))),this._setEmptyListener(),this.s.dt.state.save()},n.prototype._collapseArray=function(t){if(void 0===t.logic)void 0!==t.value&&(t.value.sort(function(t,i){return isNaN(+t)||(t=+t,i=+i),t<i?-1:i<t?1:0}),t.value1=t.value[0],t.value2=t.value[1]);else for(var i=0;i<t.criteria.length;i++)t.criteria[i]=this._collapseArray(t.criteria[i]);return t},n.prototype._updateTitle=function(t){this.dom.title.html(this.s.dt.i18n("searchBuilder.title",this.c.i18n.title,t))},n.prototype._build=function(){var n=this,t=(this.dom.clearAll.remove(),this.dom.container.empty(),this.s.topGroup.count()),s=(this._updateTitle(t),this.dom.titleRow.append(this.dom.title),this.dom.container.append(this.dom.titleRow),this.dom.topGroup=this.s.topGroup.getNode(),this.dom.container.append(this.dom.topGroup),this._setRedrawListener(),this.s.dt.table(0).node());c.fn.dataTable.ext.search.includes(this.s.search)||(this.s.search=function(t,i,e){return t.nTable!==s||n.s.topGroup.search(i,e)},c.fn.dataTable.ext.search.push(this.s.search)),this.s.dt.on("destroy.dtsb",function(){n.dom.container.remove(),n.dom.clearAll.remove();for(var t=c.fn.dataTable.ext.search.indexOf(n.s.search);-1!==t;)c.fn.dataTable.ext.search.splice(t,1),t=c.fn.dataTable.ext.search.indexOf(n.s.search);n.s.dt.off(".dtsb"),c(n.s.dt.table().node()).off(".dtsb")})},n.prototype._checkClear=function(){0<this.s.topGroup.s.criteria.length?(this.dom.clearAll.insertAfter(this.dom.title),this._setClearListener()):this.dom.clearAll.remove()},n.prototype._filterChanged=function(t){var i=this.c.filterChanged;"function"==typeof i&&i(t,this.s.dt.i18n("searchBuilder.button",this.c.i18n.button,t))},n.prototype._setClearListener=function(){var t=this;this.dom.clearAll.unbind("click"),this.dom.clearAll.on("click.dtsb",function(){return t.s.topGroup=new p(t.s.dt,t.c,void 0,void 0,void 0,void 0,t.s.serverData),t._build(),t.s.dt.draw(),t.s.topGroup.setListeners(),t.dom.clearAll.remove(),t._setEmptyListener(),t._filterChanged(0),!1})},n.prototype._setRedrawListener=function(){var i=this;this.s.topGroup.dom.container.unbind("dtsb-redrawContents"),this.s.topGroup.dom.container.on("dtsb-redrawContents.dtsb",function(){i._checkClear(),i.s.topGroup.redrawContents(),i.s.topGroup.setupLogic(),i._setEmptyListener();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t),i.s.dt.page.info().serverSide||i.s.dt.draw(),i.s.dt.state.save()}),this.s.topGroup.dom.container.unbind("dtsb-redrawContents-noDraw"),this.s.topGroup.dom.container.on("dtsb-redrawContents-noDraw.dtsb",function(){i._checkClear(),i.s.topGroup.s.preventRedraw=!0,i.s.topGroup.redrawContents(),i.s.topGroup.s.preventRedraw=!1,i.s.topGroup.setupLogic(),i._setEmptyListener();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.topGroup.dom.container.unbind("dtsb-redrawLogic"),this.s.topGroup.dom.container.on("dtsb-redrawLogic.dtsb",function(){i.s.topGroup.redrawLogic();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.topGroup.dom.container.unbind("dtsb-add"),this.s.topGroup.dom.container.on("dtsb-add.dtsb",function(){var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.dt.on("postEdit.dtsb postCreate.dtsb postRemove.dtsb",function(){i.s.topGroup.redrawContents()}),this.s.topGroup.dom.container.unbind("dtsb-clearContents"),this.s.topGroup.dom.container.on("dtsb-clearContents.dtsb",function(){i._setUp(!1),i._filterChanged(0),i.s.dt.draw()})},n.prototype._setEmptyListener=function(){var t=this;this.s.topGroup.dom.add.on("click.dtsb",function(){t._checkClear()}),this.s.topGroup.dom.container.on("dtsb-destroy.dtsb",function(){t.dom.clearAll.remove()})},n.version="1.4.0",n.classes={button:"dtsb-button",clearAll:"dtsb-clearAll",container:"dtsb-searchBuilder",inputButton:"dtsb-iptbtn",title:"dtsb-title",titleRow:"dtsb-titleRow"},n.defaults={columns:!0,conditions:{date:u.dateConditions,html:u.stringConditions,"html-num":u.numConditions,"html-num-fmt":u.numFmtConditions,luxon:u.luxonDateConditions,moment:u.momentDateConditions,num:u.numConditions,"num-fmt":u.numFmtConditions,string:u.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:void 0,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",conditions:{array:{contains:"Contains",empty:"Empty",equals:"Equals",not:"Not",notEmpty:"Not Empty",without:"Without"},date:{after:"After",before:"Before",between:"Between",empty:"Empty",equals:"Equals",not:"Not",notBetween:"Not Between",notEmpty:"Not Empty"},number:{between:"Between",empty:"Empty",equals:"Equals",gt:"Greater Than",gte:"Greater Than Equal To",lt:"Less Than",lte:"Less Than Equal To",not:"Not",notBetween:"Not Between",notEmpty:"Not Empty"},string:{contains:"Contains",empty:"Empty",endsWith:"Ends With",equals:"Equals",not:"Not",notContains:"Does Not Contain",notEmpty:"Not Empty",notEndsWith:"Does Not End With",notStartsWith:"Does Not Start With",startsWith:"Starts With"}},data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1};
5
- /*! SearchBuilder 1.4.0
4
+ import $ from"jquery";import DataTable from"datatables.net";!function(){"use strict";var I,l;function s(){return window.moment}function o(){return window.luxon}w._escapeHTML=function(t){return t.toString().replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"')},w.parseNumFmt=function(t){return+t.replace(/(?!^-)[^0-9.]/g,"")},w.prototype.updateArrows=function(t){void 0===t&&(t=!1),this.dom.container.children().detach(),this.dom.container.append(this.dom.data).append(this.dom.condition).append(this.dom.inputCont),this.setListeners(),void 0!==this.dom.value[0]&&this.dom.value[0].trigger("dtsb-inserted");for(var i=1;i<this.dom.value.length;i++)this.dom.inputCont.append(this.dom.value[i]),this.dom.value[i].trigger("dtsb-inserted");1<this.s.depth&&this.dom.buttons.append(this.dom.left),(!1===this.c.depthLimit||this.s.depth<this.c.depthLimit)&&t?this.dom.buttons.append(this.dom.right):this.dom.right.remove(),this.dom.buttons.append(this.dom.delete),this.dom.container.append(this.dom.buttons)},w.prototype.destroy=function(){this.dom.data.off(".dtsb"),this.dom.condition.off(".dtsb"),this.dom.delete.off(".dtsb");for(var t=0,i=this.dom.value;t<i.length;t++)i[t].off(".dtsb");this.dom.container.remove()},w.prototype.search=function(t,i){var e=this.s.conditions[this.s.condition];if(void 0!==this.s.condition&&void 0!==e){var n=t[this.s.dataIdx];if(this.s.type.includes("num")&&(""!==this.s.dt.settings()[0].oLanguage.sDecimal||""!==this.s.dt.settings()[0].oLanguage.sThousands)){var s=[t[this.s.dataIdx]];if(""!==this.s.dt.settings()[0].oLanguage.sDecimal&&(s=t[this.s.dataIdx].split(this.s.dt.settings()[0].oLanguage.sDecimal)),""!==this.s.dt.settings()[0].oLanguage.sThousands)for(var o=0;o<s.length;o++)s[o]=s[o].replace(this.s.dt.settings()[0].oLanguage.sThousands,",");n=s.join(".")}if("filter"!==this.c.orthogonal.search&&(n=(t=this.s.dt.settings()[0]).oApi._fnGetCellData(t,i,this.s.dataIdx,"string"==typeof this.c.orthogonal?this.c.orthogonal:this.c.orthogonal.search)),"array"===this.s.type){(n=Array.isArray(n)?n:[n]).sort();for(var r=0,a=n;r<a.length;r++){var d=a[r];d&&"string"==typeof d&&(d=d.replace(/[\r\n\u2028]/g," "))}}else null!==n&&"string"==typeof n&&(n=n.replace(/[\r\n\u2028]/g," "));return this.s.type.includes("html")&&"string"==typeof n&&(n=n.replace(/(<([^>]+)>)/gi,"")),e.search(n=null===n?"":n,this.s.value,this)}},w.prototype.getDetails=function(t){if(void 0===t&&(t=!1),null===this.s.type||!this.s.type.includes("num")||""===this.s.dt.settings()[0].oLanguage.sDecimal&&""===this.s.dt.settings()[0].oLanguage.sThousands){if(null!==this.s.type&&t)if(this.s.type.includes("date")||this.s.type.includes("time"))for(i=0;i<this.s.value.length;i++)null===this.s.value[i].match(/^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])$/g)&&(this.s.value[i]="");else if(this.s.type.includes("moment"))for(i=0;i<this.s.value.length;i++)this.s.value[i]&&0<this.s.value[i].length&&s()(this.s.value[i],this.s.dateFormat,!0).isValid()&&(this.s.value[i]=s()(this.s.value[i],this.s.dateFormat).format("YYYY-MM-DD HH:mm:ss"));else if(this.s.type.includes("luxon"))for(i=0;i<this.s.value.length;i++)this.s.value[i]&&0<this.s.value[i].length&&null===o().DateTime.fromFormat(this.s.value[i],this.s.dateFormat).invalid&&(this.s.value[i]=o().DateTime.fromFormat(this.s.value[i],this.s.dateFormat).toFormat("yyyy-MM-dd HH:mm:ss"))}else for(var i=0;i<this.s.value.length;i++){var e=[this.s.value[i].toString()];if(""!==this.s.dt.settings()[0].oLanguage.sDecimal&&(e=this.s.value[i].split(this.s.dt.settings()[0].oLanguage.sDecimal)),""!==this.s.dt.settings()[0].oLanguage.sThousands)for(var n=0;n<e.length;n++)e[n]=e[n].replace(this.s.dt.settings()[0].oLanguage.sThousands,",");this.s.value[i]=e.join(".")}if(this.s.type.includes("num")&&this.s.dt.page.info().serverSide)for(i=0;i<this.s.value.length;i++)this.s.value[i]=this.s.value[i].replace(/[^0-9.\-]/g,"");return{condition:this.s.condition,data:this.s.data,origData:this.s.origData,type:this.s.type,value:this.s.value.map(function(t){return null!=t?t.toString():t})}},w.prototype.getNode=function(){return this.dom.container},w.prototype.populate=function(){this._populateData(),-1!==this.s.dataIdx&&(this._populateCondition(),void 0!==this.s.condition&&this._populateValue())},w.prototype.rebuild=function(t){var i,e,n,s=!1;if(this._populateData(),void 0!==t.data&&(e=this.classes.italic,n=this.dom.data,this.dom.data.children("option").each(function(){!s&&(I(this).text()===t.data||t.origData&&I(this).prop("origData")===t.origData)?(I(this).prop("selected",!0),n.removeClass(e),s=!0,i=I(this).val()):I(this).removeProp("selected")})),s){this.s.data=t.data,this.s.origData=t.origData,this.s.dataIdx=i,this.c.orthogonal=this._getOptions().orthogonal,this.dom.dataTitle.remove(),this._populateCondition(),this.dom.conditionTitle.remove();for(var o=void 0,r=this.dom.condition.children("option"),a=0;a<r.length;a++){var d=I(r[a]);void 0!==t.condition&&d.val()===t.condition&&"string"==typeof t.condition?(d.prop("selected",!0),o=d.val()):d.removeProp("selected")}if(this.s.condition=o,void 0!==this.s.condition){this.dom.conditionTitle.removeProp("selected"),this.dom.conditionTitle.remove(),this.dom.condition.removeClass(this.classes.italic);for(a=0;a<r.length;a++)(d=I(r[a])).val()!==this.s.condition&&d.removeProp("selected");this._populateValue(t)}else this.dom.conditionTitle.prependTo(this.dom.condition).prop("selected",!0)}},w.prototype.setListeners=function(){var l=this;this.dom.data.unbind("change").on("change.dtsb",function(){l.dom.dataTitle.removeProp("selected");for(var t=l.dom.data.children("option."+l.classes.option),i=0;i<t.length;i++){var e=I(t[i]);e.val()===l.dom.data.val()?(l.dom.data.removeClass(l.classes.italic),e.prop("selected",!0),l.s.dataIdx=+e.val(),l.s.data=e.text(),l.s.origData=e.prop("origData"),l.c.orthogonal=l._getOptions().orthogonal,l._clearCondition(),l._clearValue(),l._populateCondition(),l.s.filled&&(l.s.filled=!1,l.s.dt.draw(),l.setListeners()),l.s.dt.state.save()):e.removeProp("selected")}}),this.dom.condition.unbind("change").on("change.dtsb",function(){l.dom.conditionTitle.removeProp("selected");for(var t=l.dom.condition.children("option."+l.classes.option),i=0;i<t.length;i++){var e=I(t[i]);if(e.val()===l.dom.condition.val()){l.dom.condition.removeClass(l.classes.italic),e.prop("selected",!0);for(var n=e.val(),s=0,o=Object.keys(l.s.conditions);s<o.length;s++)if(o[s]===n){l.s.condition=n;break}l._clearValue(),l._populateValue();for(var r=0,a=l.dom.value;r<a.length;r++){var d=a[r];l.s.filled&&void 0!==d&&0!==l.dom.inputCont.has(d[0]).length&&(l.s.filled=!1,l.s.dt.draw(),l.setListeners())}(0===l.dom.value.length||1===l.dom.value.length&&void 0===l.dom.value[0])&&l.s.dt.draw()}else e.removeProp("selected")}})},w.prototype.setupButtons=function(){550<window.innerWidth?(this.dom.container.removeClass(this.classes.vertical),this.dom.buttons.css("left",null),this.dom.buttons.css("top",null)):(this.dom.container.addClass(this.classes.vertical),this.dom.buttons.css("left",this.dom.data.innerWidth()),this.dom.buttons.css("top",this.dom.data.position().top))},w.prototype._buildCriteria=function(){this.dom.data.append(this.dom.dataTitle),this.dom.condition.append(this.dom.conditionTitle),this.dom.container.append(this.dom.data).append(this.dom.condition),this.dom.inputCont.empty();for(var t=0,i=this.dom.value;t<i.length;t++){var e=i[t];e.append(this.dom.valueTitle),this.dom.inputCont.append(e)}this.dom.buttons.append(this.dom.delete).append(this.dom.right),this.dom.container.append(this.dom.inputCont).append(this.dom.buttons),this.setListeners()},w.prototype._clearCondition=function(){this.dom.condition.empty(),this.dom.conditionTitle.prop("selected",!0).attr("disabled","true"),this.dom.condition.prepend(this.dom.conditionTitle).prop("selectedIndex",0),this.s.conditions={},this.s.condition=void 0},w.prototype._clearValue=function(){if(void 0!==this.s.condition){if(0<this.dom.value.length&&void 0!==this.dom.value[0])for(var t=0,i=this.dom.value;t<i.length;t++)!function(t){void 0!==t&&setTimeout(function(){t.remove()},50)}(i[t]);if(this.dom.value=[].concat(this.s.conditions[this.s.condition].init(this,w.updateListener)),0<this.dom.value.length&&void 0!==this.dom.value[0]){this.dom.inputCont.empty().append(this.dom.value[0]).insertAfter(this.dom.condition),this.dom.value[0].trigger("dtsb-inserted");for(var e=1;e<this.dom.value.length;e++)this.dom.inputCont.append(this.dom.value[e]),this.dom.value[e].trigger("dtsb-inserted")}}else{for(var n=0,s=this.dom.value;n<s.length;n++)!function(t){void 0!==t&&setTimeout(function(){t.remove()},50)}(s[n]);this.dom.valueTitle.prop("selected",!0),this.dom.defaultValue.append(this.dom.valueTitle).insertAfter(this.dom.condition)}this.s.value=[],this.dom.value=[I("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.italic).addClass(this.classes.select).append(this.dom.valueTitle.clone())]},w.prototype._getOptions=function(){var t=this.s.dt;return I.extend(!0,{},w.defaults,t.settings()[0].aoColumns[this.s.dataIdx].searchBuilder)},w.prototype._populateCondition=function(){var t=[],i=Object.keys(this.s.conditions).length,e=this.s.dt.settings()[0].aoColumns,n=+this.dom.data.children("option:selected").val();if(0===i){this.s.type=this.s.dt.columns().type().toArray()[n],void 0!==e&&(void 0!==(s=e[n]).searchBuilderType&&null!==s.searchBuilderType?this.s.type=s.searchBuilderType:void 0!==this.s.type&&null!==this.s.type||(this.s.type=s.sType)),null!==this.s.type&&void 0!==this.s.type||(I.fn.dataTable.ext.oApi._fnColumnTypes(this.s.dt.settings()[0]),this.s.type=this.s.dt.columns().type().toArray()[n]),this.dom.condition.removeAttr("disabled").empty().append(this.dom.conditionTitle).addClass(this.classes.italic),this.dom.conditionTitle.prop("selected",!0);var s=this.s.dt.settings()[0].oLanguage.sDecimal,o=(""!==s&&this.s.type.indexOf(s)===this.s.type.length-s.length&&(this.s.type.includes("num-fmt")||this.s.type.includes("num"))&&(this.s.type=this.s.type.replace(s,"")),void 0!==this.c.conditions[this.s.type]?this.c.conditions[this.s.type]:this.s.type.includes("moment")?this.c.conditions.moment:this.s.type.includes("luxon")?this.c.conditions.luxon:this.c.conditions.string);this.s.type.includes("moment")?this.s.dateFormat=this.s.type.replace(/moment-/g,""):this.s.type.includes("luxon")&&(this.s.dateFormat=this.s.type.replace(/luxon-/g,""));for(var r,a=0,d=Object.keys(o);a<d.length;a++)null!==o[c=d[a]]&&(this.s.dt.page.info().serverSide&&o[c].init===w.initSelect&&(r=e[n],this.s.serverData&&this.s.serverData[r.data]?(o[c].init=w.initSelectSSP,o[c].inputValue=w.inputValueSelect,o[c].isInputValid=w.isInputValidSelect):(o[c].init=w.initInput,o[c].inputValue=w.inputValueInput,o[c].isInputValid=w.isInputValidInput)),this.s.conditions[c]=o[c],"function"==typeof(C=o[c].conditionName)&&(C=C(this.s.dt,this.c.i18n)),t.push(I("<option>",{text:C,value:c}).addClass(this.classes.option).addClass(this.classes.notItalic)))}else{if(!(0<i))return void this.dom.condition.attr("disabled","true").addClass(this.classes.italic);this.dom.condition.empty().removeAttr("disabled").addClass(this.classes.italic);for(var l=0,u=Object.keys(this.s.conditions);l<u.length;l++){var c=u[l],h=("function"==typeof(C=this.s.conditions[c].conditionName)&&(C=C(this.s.dt,this.c.i18n)),I("<option>",{text:C,value:c}).addClass(this.classes.option).addClass(this.classes.notItalic));void 0!==this.s.condition&&this.s.condition===C&&(h.prop("selected",!0),this.dom.condition.removeClass(this.classes.italic)),t.push(h)}}for(var p=0,m=t;p<m.length;p++){var f=m[p];this.dom.condition.append(f)}if(e[n].searchBuilder&&e[n].searchBuilder.defaultCondition){var g=e[n].searchBuilder.defaultCondition;if("number"==typeof g)this.dom.condition.prop("selectedIndex",g),this.dom.condition.trigger("change");else if("string"==typeof g)for(var v=0;v<t.length;v++)for(var b=0,y=Object.keys(this.s.conditions);b<y.length;b++){var C,V=y[b];if(("string"==typeof(C=this.s.conditions[V].conditionName)?C:C(this.s.dt,this.c.i18n))===t[v].text()&&V===g){this.dom.condition.prop("selectedIndex",this.dom.condition.children().toArray().indexOf(t[v][0])).removeClass(this.classes.italic),this.dom.condition.trigger("change"),v=t.length;break}}}else this.dom.condition.prop("selectedIndex",0)},w.prototype._populateData=function(){var t=this.s.dt.settings()[0].aoColumns,i=this.s.dt.columns(this.c.columns).indexes().toArray();this.dom.data.empty().append(this.dom.dataTitle);for(var e,n,s=0;s<t.length;s++)!0!==this.c.columns&&!i.includes(s)||(n={index:s,origData:(e=t[s]).data,text:(e.searchBuilderTitle||e.sTitle).replace(/(<([^>]+)>)/gi,"")},this.dom.data.append(I("<option>",{text:n.text,value:n.index}).addClass(this.classes.option).addClass(this.classes.notItalic).prop("origData",e.data).prop("selected",this.s.dataIdx===n.index)),this.s.dataIdx===n.index&&this.dom.dataTitle.removeProp("selected"))},w.prototype._populateValue=function(i){for(var e=this,t=this.s.filled,n=(this.s.filled=!1,setTimeout(function(){e.dom.defaultValue.remove()},50),0),s=this.dom.value;n<s.length;n++)!function(t){setTimeout(function(){void 0!==t&&t.remove()},50)}(s[n]);var o=this.dom.inputCont.children();if(1<o.length)for(var r=0;r<o.length;r++)I(o[r]).remove();void 0!==i&&this.s.dt.columns().every(function(t){e.s.dt.settings()[0].aoColumns[t].sTitle===i.data&&(e.s.dataIdx=t)}),this.dom.value=[].concat(this.s.conditions[this.s.condition].init(this,w.updateListener,void 0!==i?i.value:void 0)),void 0!==i&&void 0!==i.value&&(this.s.value=i.value),this.dom.inputCont.empty(),void 0!==this.dom.value[0]&&this.dom.value[0].appendTo(this.dom.inputCont).trigger("dtsb-inserted");for(r=1;r<this.dom.value.length;r++)this.dom.value[r].insertAfter(this.dom.value[r-1]).trigger("dtsb-inserted");this.s.filled=this.s.conditions[this.s.condition].isInputValid(this.dom.value,this),this.setListeners(),this.s.preventRedraw||t===this.s.filled||(this.s.dt.page.info().serverSide||this.s.dt.draw(),this.setListeners())},w.prototype._throttle=function(n,s){var o=null,r=null,a=this;return null===(s=void 0===s?200:s)&&(s=200),function(){for(var t=[],i=0;i<arguments.length;i++)t[i]=arguments[i];var e=+new Date;null!==o&&e<o+s?clearTimeout(r):o=e,r=setTimeout(function(){o=null,n.apply(a,t)},s)}},w.version="1.1.0",w.classes={button:"dtsb-button",buttonContainer:"dtsb-buttonContainer",condition:"dtsb-condition",container:"dtsb-criteria",data:"dtsb-data",delete:"dtsb-delete",dropDown:"dtsb-dropDown",greyscale:"dtsb-greyscale",input:"dtsb-input",inputCont:"dtsb-inputCont",italic:"dtsb-italic",joiner:"dtsp-joiner",left:"dtsb-left",notItalic:"dtsb-notItalic",option:"dtsb-option",right:"dtsb-right",select:"dtsb-select",value:"dtsb-value",vertical:"dtsb-vertical"},w.initSelect=function(e,t,n,i){void 0===n&&(n=null),void 0===i&&(i=!1);for(var s=e.dom.data.children("option:selected").val(),o=e.s.dt.rows().indexes().toArray(),r=e.s.dt.settings()[0],a=(e.dom.valueTitle.prop("selected",!0),I("<select/>").addClass(w.classes.value).addClass(w.classes.dropDown).addClass(w.classes.italic).addClass(w.classes.select).append(e.dom.valueTitle).on("change.dtsb",function(){I(this).removeClass(w.classes.italic),t(e,this)})),d=(e.c.greyscale&&a.addClass(w.classes.greyscale),[]),l=[],u=0,c=o;u<c.length;u++){var h=c[u],p=r.oApi._fnGetCellData(r,h,s,"string"==typeof e.c.orthogonal?e.c.orthogonal:e.c.orthogonal.search),m={filter:"string"==typeof p?p.replace(/[\r\n\u2028]/g," "):p,index:h,text:r.oApi._fnGetCellData(r,h,s,"string"==typeof e.c.orthogonal?e.c.orthogonal:e.c.orthogonal.display)},f=("array"===e.s.type&&(m.filter=Array.isArray(m.filter)?m.filter:[m.filter],m.text=Array.isArray(m.text)?m.text:[m.text]),function(t,i){e.s.type.includes("html")&&null!==t&&"string"==typeof t&&t.replace(/(<([^>]+)>)/gi,"");t=I("<option>",{type:Array.isArray(t)?"Array":"String",value:t}).data("sbv",t).addClass(e.classes.option).addClass(e.classes.notItalic).html("string"==typeof i?i.replace(/(<([^>]+)>)/gi,""):i),i=t.val();-1===d.indexOf(i)&&(d.push(i),l.push(t),null!==n&&Array.isArray(n[0])&&(n[0]=n[0].sort().join(",")),null!==n&&t.val()===n[0]&&(t.prop("selected",!0),a.removeClass(w.classes.italic),e.dom.valueTitle.removeProp("selected")))});if(i)for(var g=0;g<m.filter.length;g++)f(m.filter[g],m.text[g]);else f(m.filter,Array.isArray(m.text)?m.text.join(", "):m.text)}l.sort(function(t,i){return"array"===e.s.type||"string"===e.s.type||"html"===e.s.type?t.val()<i.val()?-1:t.val()>i.val()?1:0:"num"===e.s.type||"html-num"===e.s.type?+t.val().replace(/(<([^>]+)>)/gi,"")<+i.val().replace(/(<([^>]+)>)/gi,"")?-1:+t.val().replace(/(<([^>]+)>)/gi,"")>+i.val().replace(/(<([^>]+)>)/gi,"")?1:0:"num-fmt"===e.s.type||"html-num-fmt"===e.s.type?+t.val().replace(/[^0-9.]/g,"")<+i.val().replace(/[^0-9.]/g,"")?-1:+t.val().replace(/[^0-9.]/g,"")>+i.val().replace(/[^0-9.]/g,"")?1:0:void 0});for(var v=0,b=l;v<b.length;v++){var y=b[v];a.append(y)}return a},w.initSelectSSP=function(t,i,e){void 0===e&&(e=null),t.dom.valueTitle.prop("selected",!0);for(var n=I("<select/>").addClass(w.classes.value).addClass(w.classes.dropDown).addClass(w.classes.italic).addClass(w.classes.select).append(t.dom.valueTitle).on("change.dtsb",function(){I(this).removeClass(w.classes.italic),i(t,this)}),s=(t.c.greyscale&&n.addClass(w.classes.greyscale),[]),o=0,r=t.s.serverData[t.s.origData];o<r.length;o++){var a=r[o],d=a.value,a=a.label,l=(l=void 0,d),d=a;t.s.type.includes("html")&&null!==l&&"string"==typeof l&&l.replace(/(<([^>]+)>)/gi,""),l=I("<option>",{type:Array.isArray(l)?"Array":"String",value:l}).data("sbv",l).addClass(t.classes.option).addClass(t.classes.notItalic).html("string"==typeof d?d.replace(/(<([^>]+)>)/gi,""):d),s.push(l),null!==e&&l.val()===e[0]&&(l.prop("selected",!0),n.removeClass(w.classes.italic),t.dom.valueTitle.removeProp("selected"))}for(var u=0,c=s;u<c.length;u++){var h=c[u];n.append(h)}return n},w.initSelectArray=function(t,i,e){return w.initSelect(t,i,e=void 0===e?null:e,!0)},w.initInput=function(i,e,t){void 0===t&&(t=null);var n=i.s.dt.settings()[0].searchDelay,n=I("<input/>").addClass(w.classes.value).addClass(w.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n));return i.c.greyscale&&n.addClass(w.classes.greyscale),null!==t&&n.val(t[0]),i.s.dt.one("draw.dtsb",function(){i.s.topGroup.trigger("dtsb-redrawLogic")}),n},w.init2Input=function(i,e,t){void 0===t&&(t=null);var n=i.s.dt.settings()[0].searchDelay,n=[I("<input/>").addClass(w.classes.value).addClass(w.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n)),I("<span>").addClass(i.classes.joiner).html(i.s.dt.i18n("searchBuilder.valueJoiner",i.c.i18n.valueJoiner)),I("<input/>").addClass(w.classes.value).addClass(w.classes.input).on("input.dtsb keypress.dtsb",i._throttle(function(t){t=t.keyCode||t.which;return e(i,this,t)},null===n?100:n))];return i.c.greyscale&&(n[0].addClass(w.classes.greyscale),n[2].addClass(w.classes.greyscale)),null!==t&&(n[0].val(t[0]),n[2].val(t[1])),i.s.dt.one("draw.dtsb",function(){i.s.topGroup.trigger("dtsb-redrawLogic")}),n},w.initDate=function(e,n,t){void 0===t&&(t=null);var s=e.s.dt.settings()[0].searchDelay,i=I("<input/>").addClass(w.classes.value).addClass(w.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||void 0}).on("change.dtsb",e._throttle(function(){return n(e,this)},null===s?100:s)).on("input.dtsb keypress.dtsb",function(i){e._throttle(function(){var t=i.keyCode||i.which;return n(e,this,t)},null===s?100:s)});return e.c.greyscale&&i.addClass(w.classes.greyscale),null!==t&&i.val(t[0]),e.s.dt.one("draw.dtsb",function(){e.s.topGroup.trigger("dtsb-redrawLogic")}),i},w.initNoValue=function(t){return t.s.dt.one("draw.dtsb",function(){t.s.topGroup.trigger("dtsb-redrawLogic")}),[]},w.init2Date=function(e,n,t){var i=this,s=(void 0===t&&(t=null),e.s.dt.settings()[0].searchDelay),o=[I("<input/>").addClass(w.classes.value).addClass(w.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||void 0}).on("change.dtsb",null!==s?e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s):function(){n(e,i)}).on("input.dtsb keypress.dtsb",function(i){e.s.dt.settings()[0].oApi._fnThrottle(function(){var t=i.keyCode||i.which;return n(e,this,t)},null===s?0:s)}),I("<span>").addClass(e.classes.joiner).html(e.s.dt.i18n("searchBuilder.valueJoiner",e.c.i18n.valueJoiner)),I("<input/>").addClass(w.classes.value).addClass(w.classes.input).dtDateTime({attachTo:"input",format:e.s.dateFormat||void 0}).on("change.dtsb",null!==s?e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s):function(){n(e,i)}).on("input.dtsb keypress.dtsb",e.c.enterSearch||void 0!==e.s.dt.settings()[0].oInit.search&&e.s.dt.settings()[0].oInit.search.return||null===s?function(t){t=t.keyCode||t.which;n(e,i,t)}:e.s.dt.settings()[0].oApi._fnThrottle(function(){return n(e,this)},s))];return e.c.greyscale&&(o[0].addClass(w.classes.greyscale),o[2].addClass(w.classes.greyscale)),null!==t&&0<t.length&&(o[0].val(t[0]),o[2].val(t[1])),e.s.dt.one("draw.dtsb",function(){e.s.topGroup.trigger("dtsb-redrawLogic")}),o},w.isInputValidSelect=function(t){for(var i=!0,e=0,n=t;e<n.length;e++){var s=n[e];s.children("option:selected").length===s.children("option").length-s.children("option."+w.classes.notItalic).length&&1===s.children("option:selected").length&&s.children("option:selected")[0]===s.children("option")[0]&&(i=!1)}return i},w.isInputValidInput=function(t){for(var i=!0,e=0,n=t;e<n.length;e++){var s=n[e];s.is("input")&&0===s.val().length&&(i=!1)}return i},w.inputValueSelect=function(t){for(var i=[],e=0,n=t;e<n.length;e++){var s=n[e];s.is("select")&&i.push(w._escapeHTML(s.children("option:selected").data("sbv")))}return i},w.inputValueInput=function(t){for(var i=[],e=0,n=t;e<n.length;e++){var s=n[e];s.is("input")&&i.push(w._escapeHTML(s.val()))}return i},w.updateListener=function(t,i,e){var n=t.s.conditions[t.s.condition];if(t.s.filled=n.isInputValid(t.dom.value,t),t.s.value=n.inputValue(t.dom.value,t),t.s.filled){Array.isArray(t.s.value)||(t.s.value=[t.s.value]);for(var s=0;s<t.s.value.length;s++)if(Array.isArray(t.s.value[s]))t.s.value[s].sort();else if(t.s.type.includes("num")&&(""!==t.s.dt.settings()[0].oLanguage.sDecimal||""!==t.s.dt.settings()[0].oLanguage.sThousands)){var o=[t.s.value[s].toString()];if(""!==t.s.dt.settings()[0].oLanguage.sDecimal&&(o=t.s.value[s].split(t.s.dt.settings()[0].oLanguage.sDecimal)),""!==t.s.dt.settings()[0].oLanguage.sThousands)for(var r=0;r<o.length;r++)o[r]=o[r].replace(t.s.dt.settings()[0].oLanguage.sThousands,",");t.s.value[s]=o.join(".")}for(var a=null,d=null,s=0;s<t.dom.value.length;s++)i===t.dom.value[s][0]&&(a=s,void 0!==i.selectionStart&&(d=i.selectionStart));(t.c.enterSearch||void 0!==t.s.dt.settings()[0].oInit.search&&t.s.dt.settings()[0].oInit.search.return)&&13!==e||t.s.dt.draw(),null!==a&&(t.dom.value[a].removeClass(t.classes.italic),t.dom.value[a].focus(),null!==d&&t.dom.value[a][0].setSelectionRange(d,d))}else(t.c.enterSearch||void 0!==t.s.dt.settings()[0].oInit.search&&t.s.dt.settings()[0].oInit.search.return)&&13!==e||t.s.dt.draw()},w.dateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))===i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))!==i[0]}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))<i[0]}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return(t=t.replace(/(\/|-|,)/g,"-"))>i[0]}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return t=t.replace(/(\/|-|,)/g,"-"),i[0]<i[1]?i[0]<=t&&t<=i[1]:i[1]<=t&&t<=i[0]}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return t=t.replace(/(\/|-|,)/g,"-"),i[0]<i[1]?!(i[0]<=t&&t<=i[1]):!(i[1]<=t&&t<=i[0])}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.momentDateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return s()(t,e.s.dateFormat).valueOf()===s()(i[0],e.s.dateFormat).valueOf()}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return s()(t,e.s.dateFormat).valueOf()!==s()(i[0],e.s.dateFormat).valueOf()}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return s()(t,e.s.dateFormat).valueOf()<s()(i[0],e.s.dateFormat).valueOf()}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return s()(t,e.s.dateFormat).valueOf()>s()(i[0],e.s.dateFormat).valueOf()}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){var t=s()(t,e.s.dateFormat).valueOf(),n=s()(i[0],e.s.dateFormat).valueOf(),i=s()(i[1],e.s.dateFormat).valueOf();return n<i?n<=t&&t<=i:i<=t&&t<=n}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){var t=s()(t,e.s.dateFormat).valueOf(),n=s()(i[0],e.s.dateFormat).valueOf(),i=s()(i[1],e.s.dateFormat).valueOf();return n<i?!(+n<=+t&&+t<=+i):!(+i<=+t&&+t<=+n)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.luxonDateConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.equals",i.conditions.date.equals)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return o().DateTime.fromFormat(t,e.s.dateFormat).ts===o().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.not",i.conditions.date.not)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return o().DateTime.fromFormat(t,e.s.dateFormat).ts!==o().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.before",i.conditions.date.before)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return o().DateTime.fromFormat(t,e.s.dateFormat).ts<o().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.after",i.conditions.date.after)},init:w.initDate,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){return o().DateTime.fromFormat(t,e.s.dateFormat).ts>o().DateTime.fromFormat(i[0],e.s.dateFormat).ts}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.between",i.conditions.date.between)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){var t=o().DateTime.fromFormat(t,e.s.dateFormat).ts,n=o().DateTime.fromFormat(i[0],e.s.dateFormat).ts,i=o().DateTime.fromFormat(i[1],e.s.dateFormat).ts;return n<i?n<=t&&t<=i:i<=t&&t<=n}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notBetween",i.conditions.date.notBetween)},init:w.init2Date,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i,e){var t=o().DateTime.fromFormat(t,e.s.dateFormat).ts,n=o().DateTime.fromFormat(i[0],e.s.dateFormat).ts,i=o().DateTime.fromFormat(i[1],e.s.dateFormat).ts;return n<i?!(+n<=+t&&+t<=+i):!(+i<=+t&&+t<=+n)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.empty",i.conditions.date.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.date.notEmpty",i.conditions.date.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.numConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.equals",i.conditions.number.equals)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return+t==+i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.not",i.conditions.number.not)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return+t!=+i[0]}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lt",i.conditions.number.lt)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+t<+i[0]}},"<=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lte",i.conditions.number.lte)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+t<=+i[0]}},">=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gte",i.conditions.number.gte)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+t>=+i[0]}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gt",i.conditions.number.gt)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+t>+i[0]}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.between",i.conditions.number.between)},init:w.init2Input,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+i[0]<+i[1]?+i[0]<=+t&&+t<=+i[1]:+i[1]<=+t&&+t<=+i[0]}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notBetween",i.conditions.number.notBetween)},init:w.init2Input,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return+i[0]<+i[1]?!(+i[0]<=+t&&+t<=+i[1]):!(+i[1]<=+t&&+t<=+i[0])}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.empty",i.conditions.number.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notEmpty",i.conditions.number.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.numFmtConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.equals",i.conditions.number.equals)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return w.parseNumFmt(t)===w.parseNumFmt(i[0])}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.not",i.conditions.number.not)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return w.parseNumFmt(t)!==w.parseNumFmt(i[0])}},"<":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lt",i.conditions.number.lt)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return w.parseNumFmt(t)<w.parseNumFmt(i[0])}},"<=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.lte",i.conditions.number.lte)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return w.parseNumFmt(t)<=w.parseNumFmt(i[0])}},">=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gte",i.conditions.number.gte)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return w.parseNumFmt(t)>=w.parseNumFmt(i[0])}},">":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.gt",i.conditions.number.gt)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return w.parseNumFmt(t)>w.parseNumFmt(i[0])}},between:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.between",i.conditions.number.between)},init:w.init2Input,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){var t=w.parseNumFmt(t),e=w.parseNumFmt(i[0]),i=w.parseNumFmt(i[1]);return+e<+i?+e<=+t&&+t<=+i:+i<=+t&&+t<=+e}},"!between":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notBetween",i.conditions.number.notBetween)},init:w.init2Input,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){var t=w.parseNumFmt(t),e=w.parseNumFmt(i[0]),i=w.parseNumFmt(i[1]);return+e<+i?!(+e<=+t&&+t<=+i):!(+i<=+t&&+t<=+e)}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.empty",i.conditions.number.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.number.notEmpty",i.conditions.number.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.stringConditions={"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.equals",i.conditions.string.equals)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return t===i[0]}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.not",i.conditions.string.not)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidInput,search:function(t,i){return t!==i[0]}},starts:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.startsWith",i.conditions.string.startsWith)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return 0===t.toLowerCase().indexOf(i[0].toLowerCase())}},"!starts":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notStartsWith",i.conditions.string.notStartsWith)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return 0!==t.toLowerCase().indexOf(i[0].toLowerCase())}},contains:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.contains",i.conditions.string.contains)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return t.toLowerCase().includes(i[0].toLowerCase())}},"!contains":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notContains",i.conditions.string.notContains)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return!t.toLowerCase().includes(i[0].toLowerCase())}},ends:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.endsWith",i.conditions.string.endsWith)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return t.toLowerCase().endsWith(i[0].toLowerCase())}},"!ends":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notEndsWith",i.conditions.string.notEndsWith)},init:w.initInput,inputValue:w.inputValueInput,isInputValid:w.isInputValidInput,search:function(t,i){return!t.toLowerCase().endsWith(i[0].toLowerCase())}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.empty",i.conditions.string.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.string.notEmpty",i.conditions.string.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return!(null==t||0===t.length)}}},w.defaults={columns:!0,conditions:{array:w.arrayConditions={contains:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.contains",i.conditions.array.contains)},init:w.initSelectArray,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return t.includes(i[0])}},without:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.without",i.conditions.array.without)},init:w.initSelectArray,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){return-1===t.indexOf(i[0])}},"=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.equals",i.conditions.array.equals)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){if(t.length!==i[0].length)return!1;for(var e=0;e<t.length;e++)if(t[e]!==i[0][e])return!1;return!0}},"!=":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.not",i.conditions.array.not)},init:w.initSelect,inputValue:w.inputValueSelect,isInputValid:w.isInputValidSelect,search:function(t,i){if(t.length!==i[0].length)return!0;for(var e=0;e<t.length;e++)if(t[e]!==i[0][e])return!0;return!1}},null:{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.empty",i.conditions.array.empty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null==t||0===t.length}},"!null":{conditionName:function(t,i){return t.i18n("searchBuilder.conditions.array.notEmpty",i.conditions.array.notEmpty)},init:w.initNoValue,inputValue:function(){},isInputValid:function(){return!0},search:function(t){return null!=t&&0!==t.length}}},date:w.dateConditions,html:w.stringConditions,"html-num":w.numConditions,"html-num-fmt":w.numFmtConditions,luxon:w.luxonDateConditions,moment:w.momentDateConditions,num:w.numConditions,"num-fmt":w.numFmtConditions,string:w.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:void 0,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1};var a,d,u=w;function w(t,i,e,n,s,o){var r=this;if(void 0===n&&(n=0),void 0===s&&(s=1),void 0===o&&(o=void 0),!l||!l.versionCheck||!l.versionCheck("1.10.0"))throw new Error("SearchPane requires DataTables 1.10 or newer");this.classes=I.extend(!0,{},w.classes),this.c=I.extend(!0,{},w.defaults,I.fn.dataTable.ext.searchBuilder,i);i=this.c.i18n;if(this.s={condition:void 0,conditions:{},data:void 0,dataIdx:-1,dataPoints:[],dateFormat:!1,depth:s,dt:t,filled:!1,index:n,origData:void 0,preventRedraw:!1,serverData:o,topGroup:e,type:"",value:[]},this.dom={buttons:I("<div/>").addClass(this.classes.buttonContainer),condition:I("<select disabled/>").addClass(this.classes.condition).addClass(this.classes.dropDown).addClass(this.classes.italic).attr("autocomplete","hacking"),conditionTitle:I('<option value="" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.condition",i.condition)),container:I("<div/>").addClass(this.classes.container),data:I("<select/>").addClass(this.classes.data).addClass(this.classes.dropDown).addClass(this.classes.italic),dataTitle:I('<option value="" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.data",i.data)),defaultValue:I("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.select).addClass(this.classes.italic),delete:I("<button/>").html(this.s.dt.i18n("searchBuilder.delete",i.delete)).addClass(this.classes.delete).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.deleteTitle",i.deleteTitle)).attr("type","button"),inputCont:I("<div/>").addClass(this.classes.inputCont),left:I("<button/>").html(this.s.dt.i18n("searchBuilder.left",i.left)).addClass(this.classes.left).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.leftTitle",i.leftTitle)).attr("type","button"),right:I("<button/>").html(this.s.dt.i18n("searchBuilder.right",i.right)).addClass(this.classes.right).addClass(this.classes.button).attr("title",this.s.dt.i18n("searchBuilder.rightTitle",i.rightTitle)).attr("type","button"),value:[I("<select disabled/>").addClass(this.classes.value).addClass(this.classes.dropDown).addClass(this.classes.italic).addClass(this.classes.select)],valueTitle:I('<option value="--valueTitle--" disabled selected hidden/>').html(this.s.dt.i18n("searchBuilder.value",i.value))},this.c.greyscale){this.dom.data.addClass(this.classes.greyscale),this.dom.condition.addClass(this.classes.greyscale),this.dom.defaultValue.addClass(this.classes.greyscale);for(var a=0,d=this.dom.value;a<d.length;a++)d[a].addClass(this.classes.greyscale)}return I(window).on("resize.dtsb",l.util.throttle(function(){r.s.topGroup.trigger("dtsb-redrawLogic")})),this._buildCriteria(),this}m.prototype.destroy=function(){this.dom.add.off(".dtsb"),this.dom.logic.off(".dtsb"),this.dom.container.trigger("dtsb-destroy").remove(),this.s.criteria=[]},m.prototype.getDetails=function(t){if(void 0===t&&(t=!1),0===this.s.criteria.length)return{};for(var i={criteria:[],logic:this.s.logic},e=0,n=this.s.criteria;e<n.length;e++){var s=n[e];i.criteria.push(s.criteria.getDetails(t))}return i},m.prototype.getNode=function(){return this.dom.container},m.prototype.rebuild=function(t){if(!(void 0===t.criteria||null===t.criteria||Array.isArray(t.criteria)&&0===t.criteria.length)){if(this.s.logic=t.logic,this.dom.logic.children().first().html("OR"===this.s.logic?this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr):this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd)),Array.isArray(t.criteria))for(var i=0,e=t.criteria;i<e.length;i++)void 0!==(n=e[i]).logic?this._addPrevGroup(n):void 0===n.logic&&this._addPrevCriteria(n);for(var n,s=0,o=this.s.criteria;s<o.length;s++)(n=o[s]).criteria instanceof u&&(n.criteria.updateArrows(1<this.s.criteria.length),this._setCriteriaListeners(n.criteria))}},m.prototype.redrawContents=function(){if(!this.s.preventRedraw){this.dom.container.children().detach(),this.dom.container.append(this.dom.logicContainer).append(this.dom.add),this.s.criteria.sort(function(t,i){return t.criteria.s.index<i.criteria.s.index?-1:t.criteria.s.index>i.criteria.s.index?1:0}),this.setListeners();for(var t=0;t<this.s.criteria.length;t++){var i=this.s.criteria[t].criteria;i instanceof u?(this.s.criteria[t].index=t,this.s.criteria[t].criteria.s.index=t,this.s.criteria[t].criteria.dom.container.insertBefore(this.dom.add),this._setCriteriaListeners(i),this.s.criteria[t].criteria.s.preventRedraw=this.s.preventRedraw,this.s.criteria[t].criteria.rebuild(this.s.criteria[t].criteria.getDetails()),this.s.criteria[t].criteria.s.preventRedraw=!1):i instanceof m&&0<i.s.criteria.length?(this.s.criteria[t].index=t,this.s.criteria[t].criteria.s.index=t,this.s.criteria[t].criteria.dom.container.insertBefore(this.dom.add),i.s.preventRedraw=this.s.preventRedraw,i.redrawContents(),i.s.preventRedraw=!1,this._setGroupListeners(i)):(this.s.criteria.splice(t,1),t--)}this.setupLogic()}},m.prototype.redrawLogic=function(){for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof m&&e.criteria.redrawLogic()}this.setupLogic()},m.prototype.search=function(t,i){return"AND"===this.s.logic?this._andSearch(t,i):"OR"!==this.s.logic||this._orSearch(t,i)},m.prototype.setupLogic=function(){if(this.dom.logicContainer.remove(),this.dom.clear.remove(),this.s.criteria.length<1)this.s.isChild||(this.dom.container.trigger("dtsb-destroy"),this.dom.container.css("margin-left",0));else{this.dom.clear.height("0px"),this.dom.logicContainer.append(this.dom.clear),this.dom.container.prepend(this.dom.logicContainer);for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof u&&e.criteria.setupButtons()}var n=this.dom.container.outerHeight()-1,n=(this.dom.logicContainer.width(n),this._setLogicListener(),this.dom.container.css("margin-left",this.dom.logicContainer.outerHeight(!0)),this.dom.logicContainer.offset()),s=n.left,s=s-(s-this.dom.container.offset().left)-this.dom.logicContainer.outerHeight(!0),s=(this.dom.logicContainer.offset({left:s}),this.dom.logicContainer.next()),n=n.top,s=a(s).offset().top;this.dom.logicContainer.offset({top:n-(n-s)}),this.dom.clear.outerHeight(this.dom.logicContainer.height()),this._setClearListener()}},m.prototype.setListeners=function(){var t=this;this.dom.add.unbind("click"),this.dom.add.on("click.dtsb",function(){return t.s.isChild||t.dom.container.prepend(t.dom.logicContainer),t.addCriteria(),t.dom.container.trigger("dtsb-add"),t.s.dt.state.save(),!1});for(var i=0,e=this.s.criteria;i<e.length;i++)e[i].criteria.setListeners();this._setClearListener(),this._setLogicListener()},m.prototype.addCriteria=function(t){for(var i=null===(t=void 0===t?null:t)?this.s.criteria.length:t.s.index,e=new u(this.s.dt,this.s.opts,this.s.topGroup,i,this.s.depth,this.s.serverData),n=(null!==t&&(e.c=t.c,e.s=t.s,e.s.depth=this.s.depth,e.classes=t.classes),e.populate(),!1),s=0;s<this.s.criteria.length;s++)0===s&&this.s.criteria[s].criteria.s.index>e.s.index?(e.getNode().insertBefore(this.s.criteria[s].criteria.dom.container),n=!0):s<this.s.criteria.length-1&&this.s.criteria[s].criteria.s.index<e.s.index&&this.s.criteria[s+1].criteria.s.index>e.s.index&&(e.getNode().insertAfter(this.s.criteria[s].criteria.dom.container),n=!0);n||e.getNode().insertBefore(this.dom.add),this.s.criteria.push({criteria:e,index:i}),this.s.criteria=this.s.criteria.sort(function(t,i){return t.criteria.s.index-i.criteria.s.index});for(var o=0,r=this.s.criteria;o<r.length;o++){var a=r[o];a.criteria instanceof u&&a.criteria.updateArrows(1<this.s.criteria.length)}this._setCriteriaListeners(e),e.setListeners(),this.setupLogic()},m.prototype.checkFilled=function(){for(var t=0,i=this.s.criteria;t<i.length;t++){var e=i[t];if(e.criteria instanceof u&&e.criteria.s.filled||e.criteria instanceof m&&e.criteria.checkFilled())return!0}return!1},m.prototype.count=function(){for(var t=0,i=0,e=this.s.criteria;i<e.length;i++){var n=e[i];n.criteria instanceof m?t+=n.criteria.count():t++}return t},m.prototype._addPrevGroup=function(t){var i=this.s.criteria.length,e=new m(this.s.dt,this.c,this.s.topGroup,i,!0,this.s.depth+1,this.s.serverData);this.s.criteria.push({criteria:e,index:i,logic:e.s.logic}),e.rebuild(t),this.s.criteria[i].criteria=e,this.s.topGroup.trigger("dtsb-redrawContents"),this._setGroupListeners(e)},m.prototype._addPrevCriteria=function(t){var i=this.s.criteria.length,e=new u(this.s.dt,this.s.opts,this.s.topGroup,i,this.s.depth,this.s.serverData);e.populate(),this.s.criteria.push({criteria:e,index:i}),e.s.preventRedraw=this.s.preventRedraw,e.rebuild(t),e.s.preventRedraw=!1,this.s.criteria[i].criteria=e,this.s.preventRedraw||this.s.topGroup.trigger("dtsb-redrawContents")},m.prototype._andSearch=function(t,i){if(0!==this.s.criteria.length)for(var e=0,n=this.s.criteria;e<n.length;e++){var s=n[e];if((!(s.criteria instanceof u)||s.criteria.s.filled)&&!s.criteria.search(t,i))return!1}return!0},m.prototype._orSearch=function(t,i){if(0===this.s.criteria.length)return!0;for(var e=!1,n=0,s=this.s.criteria;n<s.length;n++){var o=s[n];if(o.criteria instanceof u&&o.criteria.s.filled){if(e=!0,o.criteria.search(t,i))return!0}else if(o.criteria instanceof m&&o.criteria.checkFilled()&&(e=!0,o.criteria.search(t,i)))return!0}return!e},m.prototype._removeCriteria=function(t,i){if(void 0===i&&(i=!1),this.s.criteria.length<=1&&this.s.isChild)this.destroy();else{for(var e=void 0,n=0;n<this.s.criteria.length;n++)this.s.criteria[n].index===t.s.index&&(!i||this.s.criteria[n].criteria instanceof m)&&(e=n);void 0!==e&&this.s.criteria.splice(e,1);for(n=0;n<this.s.criteria.length;n++)this.s.criteria[n].index=n,this.s.criteria[n].criteria.s.index=n}},m.prototype._setCriteriaListeners=function(n){var s=this;n.dom.delete.unbind("click").on("click.dtsb",function(){s._removeCriteria(n),n.dom.container.remove();for(var t=0,i=s.s.criteria;t<i.length;t++){var e=i[t];e.criteria instanceof u&&e.criteria.updateArrows(1<s.s.criteria.length)}return n.destroy(),s.s.dt.draw(),s.s.topGroup.trigger("dtsb-redrawContents"),!1}),n.dom.right.unbind("click").on("click.dtsb",function(){var t=n.s.index,i=new m(s.s.dt,s.s.opts,s.s.topGroup,n.s.index,!0,s.s.depth+1,s.s.serverData);return i.addCriteria(n),s.s.criteria[t].criteria=i,s.s.criteria[t].logic="AND",s.s.topGroup.trigger("dtsb-redrawContents"),s._setGroupListeners(i),!1}),n.dom.left.unbind("click").on("click.dtsb",function(){s.s.toDrop=new u(s.s.dt,s.s.opts,s.s.topGroup,n.s.index,void 0,s.s.serverData),s.s.toDrop.s=n.s,s.s.toDrop.c=n.c,s.s.toDrop.classes=n.classes,s.s.toDrop.populate();var t=s.s.toDrop.s.index;return s.dom.container.trigger("dtsb-dropCriteria"),n.s.index=t,s._removeCriteria(n),s.s.topGroup.trigger("dtsb-redrawContents"),s.s.dt.draw(),!1})},m.prototype._setClearListener=function(){var t=this;this.dom.clear.unbind("click").on("click.dtsb",function(){return t.s.isChild?(t.destroy(),t.s.topGroup.trigger("dtsb-redrawContents")):t.dom.container.trigger("dtsb-clearContents"),!1})},m.prototype._setGroupListeners=function(i){var e=this;i.dom.add.unbind("click").on("click.dtsb",function(){return e.setupLogic(),e.dom.container.trigger("dtsb-add"),!1}),i.dom.container.unbind("dtsb-add").on("dtsb-add.dtsb",function(){return e.setupLogic(),e.dom.container.trigger("dtsb-add"),!1}),i.dom.container.unbind("dtsb-destroy").on("dtsb-destroy.dtsb",function(){return e._removeCriteria(i,!0),i.dom.container.remove(),e.setupLogic(),!1}),i.dom.container.unbind("dtsb-dropCriteria").on("dtsb-dropCriteria.dtsb",function(){var t=i.s.toDrop;return t.s.index=i.s.index,t.updateArrows(1<e.s.criteria.length),e.addCriteria(t),!1}),i.setListeners()},m.prototype._setup=function(){this.setListeners(),this.dom.add.html(this.s.dt.i18n("searchBuilder.add",this.c.i18n.add)),this.dom.logic.children().first().html("OR"===this.c.logic?this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr):this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd)),this.s.logic="OR"===this.c.logic?"OR":"AND",this.c.greyscale&&this.dom.logic.addClass(this.classes.greyscale),this.dom.logicContainer.append(this.dom.logic).append(this.dom.clear),this.s.isChild&&this.dom.container.append(this.dom.logicContainer),this.dom.container.append(this.dom.add)},m.prototype._setLogicListener=function(){var e=this;this.dom.logic.unbind("click").on("click.dtsb",function(){e._toggleLogic(),e.s.dt.draw();for(var t=0,i=e.s.criteria;t<i.length;t++)i[t].criteria.setListeners()})},m.prototype._toggleLogic=function(){"OR"===this.s.logic?(this.s.logic="AND",this.dom.logic.children().first().html(this.s.dt.i18n("searchBuilder.logicAnd",this.c.i18n.logicAnd))):"AND"===this.s.logic&&(this.s.logic="OR",this.dom.logic.children().first().html(this.s.dt.i18n("searchBuilder.logicOr",this.c.i18n.logicOr)))},m.version="1.1.0",m.classes={add:"dtsb-add",button:"dtsb-button",clearGroup:"dtsb-clearGroup",greyscale:"dtsb-greyscale",group:"dtsb-group",inputButton:"dtsb-iptbtn",logic:"dtsb-logic",logicContainer:"dtsb-logicContainer"},m.defaults={columns:!0,conditions:{date:u.dateConditions,html:u.stringConditions,"html-num":u.numConditions,"html-num-fmt":u.numFmtConditions,luxon:u.luxonDateConditions,moment:u.momentDateConditions,num:u.numConditions,"num-fmt":u.numFmtConditions,string:u.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:void 0,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1};var c,h,p=m;function m(t,i,e,n,s,o,r){if(void 0===n&&(n=0),void 0===s&&(s=!1),void 0===o&&(o=1),void 0===r&&(r=void 0),d&&d.versionCheck&&d.versionCheck("1.10.0"))return this.classes=a.extend(!0,{},m.classes),this.c=a.extend(!0,{},m.defaults,i),this.s={criteria:[],depth:o,dt:t,index:n,isChild:s,logic:void 0,opts:i,preventRedraw:!1,serverData:r,toDrop:void 0,topGroup:e},this.dom={add:a("<button/>").addClass(this.classes.add).addClass(this.classes.button).attr("type","button"),clear:a("<button>&times</button>").addClass(this.classes.button).addClass(this.classes.clearGroup).attr("type","button"),container:a("<div/>").addClass(this.classes.group),logic:a("<button><div/></button>").addClass(this.classes.logic).addClass(this.classes.button).attr("type","button"),logicContainer:a("<div/>").addClass(this.classes.logicContainer)},void 0===this.s.topGroup&&(this.s.topGroup=this.dom.container),this._setup(),this;throw new Error("SearchBuilder requires DataTables 1.10 or newer")}n.prototype.getDetails=function(t){return this.s.topGroup.getDetails(t=void 0===t?!1:t)},n.prototype.getNode=function(){return this.dom.container},n.prototype.rebuild=function(t){return this.dom.clearAll.click(),null!=t&&(this.s.topGroup.s.preventRedraw=!0,this.s.topGroup.rebuild(t),this.s.topGroup.s.preventRedraw=!1,this._checkClear(),this._updateTitle(this.s.topGroup.count()),this.s.topGroup.redrawContents(),this.s.dt.draw(!1),this.s.topGroup.setListeners()),this},n.prototype._applyPreDefDefaults=function(t){for(var e=this,n=(void 0!==t.criteria&&void 0===t.logic&&(t.logic="AND"),this),i=0,s=t.criteria;i<s.length;i++)!function(i){void 0!==i.criteria?i=n._applyPreDefDefaults(i):n.s.dt.columns().every(function(t){e.s.dt.settings()[0].aoColumns[t].sTitle===i.data&&(i.dataIdx=t)})}(s[i]);return t},n.prototype._setUp=function(t){var n=this;if(void 0===t&&(t=!0),c.fn.DataTable.Api.registerPlural("columns().type()","column().type()",function(){return this.iterator("column",function(t,i){return t.aoColumns[i].sType},1)}),!h.DateTime){if(void 0===(i=this.s.dt.columns().type().toArray())||i.includes(void 0)||i.includes(null))for(var i=[],e=0,s=this.s.dt.settings()[0].aoColumns;e<s.length;e++){var o=s[e];i.push(void 0!==o.searchBuilderType?o.searchBuilderType:o.sType)}var r=this.s.dt.columns().toArray();(void 0===i||i.includes(void 0)||i.includes(null))&&(c.fn.dataTable.ext.oApi._fnColumnTypes(this.s.dt.settings()[0]),i=this.s.dt.columns().type().toArray());for(var a=0;a<r[0].length;a++){var d=i[r[0][a]];if((!0===this.c.columns||Array.isArray(this.c.columns)&&this.c.columns.includes(a))&&(d.includes("date")||d.includes("moment")||d.includes("luxon")))throw alert("SearchBuilder Requires DateTime when used with dates."),new Error("SearchBuilder requires DateTime")}}this.s.topGroup=new p(this.s.dt,this.c,void 0,void 0,void 0,void 0,this.s.serverData),this._setClearListener(),this.s.dt.on("stateSaveParams.dtsb",function(t,i,e){e.searchBuilder=n.getDetails(),e.scroller?e.start=n.s.dt.state().start:e.page=n.s.dt.page()}),this.s.dt.on("stateLoadParams.dtsb",function(t,i,e){n.rebuild(e.searchBuilder)}),this._build(),this.s.dt.on("preXhr.dtsb",function(t,i,e){n.s.dt.page.info().serverSide&&(e.searchBuilder=n._collapseArray(n.getDetails(!0)))}),this.s.dt.on("column-reorder",function(){n.rebuild(n.getDetails())}),t&&(null!==(t=this.s.dt.state.loaded())&&void 0!==t.searchBuilder?(this.s.topGroup.rebuild(t.searchBuilder),this.s.topGroup.dom.container.trigger("dtsb-redrawContents"),this.s.dt.page.info().serverSide||(t.page?this.s.dt.page(t.page).draw("page"):this.s.dt.scroller&&t.scroller&&this.s.dt.scroller().scrollToRow(t.scroller.topRow)),this.s.topGroup.setListeners()):!1!==this.c.preDefined&&(this.c.preDefined=this._applyPreDefDefaults(this.c.preDefined),this.rebuild(this.c.preDefined))),this._setEmptyListener(),this.s.dt.state.save()},n.prototype._collapseArray=function(t){if(void 0===t.logic)void 0!==t.value&&(t.value.sort(function(t,i){return isNaN(+t)||(t=+t,i=+i),t<i?-1:i<t?1:0}),t.value1=t.value[0],t.value2=t.value[1]);else for(var i=0;i<t.criteria.length;i++)t.criteria[i]=this._collapseArray(t.criteria[i]);return t},n.prototype._updateTitle=function(t){this.dom.title.html(this.s.dt.i18n("searchBuilder.title",this.c.i18n.title,t))},n.prototype._build=function(){var n=this,t=(this.dom.clearAll.remove(),this.dom.container.empty(),this.s.topGroup.count()),s=(this._updateTitle(t),this.dom.titleRow.append(this.dom.title),this.dom.container.append(this.dom.titleRow),this.dom.topGroup=this.s.topGroup.getNode(),this.dom.container.append(this.dom.topGroup),this._setRedrawListener(),this.s.dt.table(0).node());c.fn.dataTable.ext.search.includes(this.s.search)||(this.s.search=function(t,i,e){return t.nTable!==s||n.s.topGroup.search(i,e)},c.fn.dataTable.ext.search.push(this.s.search)),this.s.dt.on("destroy.dtsb",function(){n.dom.container.remove(),n.dom.clearAll.remove();for(var t=c.fn.dataTable.ext.search.indexOf(n.s.search);-1!==t;)c.fn.dataTable.ext.search.splice(t,1),t=c.fn.dataTable.ext.search.indexOf(n.s.search);n.s.dt.off(".dtsb"),c(n.s.dt.table().node()).off(".dtsb")})},n.prototype._checkClear=function(){0<this.s.topGroup.s.criteria.length?(this.dom.clearAll.insertAfter(this.dom.title),this._setClearListener()):this.dom.clearAll.remove()},n.prototype._filterChanged=function(t){var i=this.c.filterChanged;"function"==typeof i&&i(t,this.s.dt.i18n("searchBuilder.button",this.c.i18n.button,t))},n.prototype._setClearListener=function(){var t=this;this.dom.clearAll.unbind("click"),this.dom.clearAll.on("click.dtsb",function(){return t.s.topGroup=new p(t.s.dt,t.c,void 0,void 0,void 0,void 0,t.s.serverData),t._build(),t.s.dt.draw(),t.s.topGroup.setListeners(),t.dom.clearAll.remove(),t._setEmptyListener(),t._filterChanged(0),!1})},n.prototype._setRedrawListener=function(){var i=this;this.s.topGroup.dom.container.unbind("dtsb-redrawContents"),this.s.topGroup.dom.container.on("dtsb-redrawContents.dtsb",function(){i._checkClear(),i.s.topGroup.redrawContents(),i.s.topGroup.setupLogic(),i._setEmptyListener();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t),i.s.dt.page.info().serverSide||i.s.dt.draw(),i.s.dt.state.save()}),this.s.topGroup.dom.container.unbind("dtsb-redrawContents-noDraw"),this.s.topGroup.dom.container.on("dtsb-redrawContents-noDraw.dtsb",function(){i._checkClear(),i.s.topGroup.s.preventRedraw=!0,i.s.topGroup.redrawContents(),i.s.topGroup.s.preventRedraw=!1,i.s.topGroup.setupLogic(),i._setEmptyListener();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.topGroup.dom.container.unbind("dtsb-redrawLogic"),this.s.topGroup.dom.container.on("dtsb-redrawLogic.dtsb",function(){i.s.topGroup.redrawLogic();var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.topGroup.dom.container.unbind("dtsb-add"),this.s.topGroup.dom.container.on("dtsb-add.dtsb",function(){var t=i.s.topGroup.count();i._updateTitle(t),i._filterChanged(t)}),this.s.dt.on("postEdit.dtsb postCreate.dtsb postRemove.dtsb",function(){i.s.topGroup.redrawContents()}),this.s.topGroup.dom.container.unbind("dtsb-clearContents"),this.s.topGroup.dom.container.on("dtsb-clearContents.dtsb",function(){i._setUp(!1),i._filterChanged(0),i.s.dt.draw()})},n.prototype._setEmptyListener=function(){var t=this;this.s.topGroup.dom.add.on("click.dtsb",function(){t._checkClear()}),this.s.topGroup.dom.container.on("dtsb-destroy.dtsb",function(){t.dom.clearAll.remove()})},n.version="1.4.2",n.classes={button:"dtsb-button",clearAll:"dtsb-clearAll",container:"dtsb-searchBuilder",inputButton:"dtsb-iptbtn",title:"dtsb-title",titleRow:"dtsb-titleRow"},n.defaults={columns:!0,conditions:{date:u.dateConditions,html:u.stringConditions,"html-num":u.numConditions,"html-num-fmt":u.numFmtConditions,luxon:u.luxonDateConditions,moment:u.momentDateConditions,num:u.numConditions,"num-fmt":u.numFmtConditions,string:u.stringConditions},depthLimit:!1,enterSearch:!1,filterChanged:void 0,greyscale:!1,i18n:{add:"Add Condition",button:{0:"Search Builder",_:"Search Builder (%d)"},clearAll:"Clear All",condition:"Condition",conditions:{array:{contains:"Contains",empty:"Empty",equals:"Equals",not:"Not",notEmpty:"Not Empty",without:"Without"},date:{after:"After",before:"Before",between:"Between",empty:"Empty",equals:"Equals",not:"Not",notBetween:"Not Between",notEmpty:"Not Empty"},number:{between:"Between",empty:"Empty",equals:"Equals",gt:"Greater Than",gte:"Greater Than Equal To",lt:"Less Than",lte:"Less Than Equal To",not:"Not",notBetween:"Not Between",notEmpty:"Not Empty"},string:{contains:"Contains",empty:"Empty",endsWith:"Ends With",equals:"Equals",not:"Not",notContains:"Does Not Contain",notEmpty:"Not Empty",notEndsWith:"Does Not End With",notStartsWith:"Does Not Start With",startsWith:"Starts With"}},data:"Data",delete:"&times",deleteTitle:"Delete filtering rule",left:"<",leftTitle:"Outdent criteria",logicAnd:"And",logicOr:"Or",right:">",rightTitle:"Indent criteria",title:{0:"Custom Search Builder",_:"Custom Search Builder (%d)"},value:"Value",valueJoiner:"and"},logic:"AND",orthogonal:{display:"display",search:"filter"},preDefined:!1};
5
+ /*! SearchBuilder 1.4.2
6
6
  * ©SpryMedia Ltd - datatables.net/license/mit
7
7
  */var e=n;function n(t,i){var s=this;if(!h||!h.versionCheck||!h.versionCheck("1.10.0"))throw new Error("SearchBuilder requires DataTables 1.10 or newer");t=new h.Api(t);if(this.classes=c.extend(!0,{},n.classes),this.c=c.extend(!0,{},n.defaults,i),this.dom={clearAll:c('<button type="button">'+t.i18n("searchBuilder.clearAll",this.c.i18n.clearAll)+"</button>").addClass(this.classes.clearAll).addClass(this.classes.button).attr("type","button"),container:c("<div/>").addClass(this.classes.container),title:c("<div/>").addClass(this.classes.title),titleRow:c("<div/>").addClass(this.classes.titleRow),topGroup:void 0},this.s={dt:t,opts:i,search:void 0,serverData:void 0,topGroup:void 0},void 0===t.settings()[0]._searchBuilder)return(t.settings()[0]._searchBuilder=this).s.dt.page.info().serverSide&&(this.s.dt.on("preXhr.dtsb",function(t,i,e){var n=s.s.dt.state.loaded();n&&n.searchBuilder&&(e.searchBuilder=s._collapseArray(n.searchBuilder))}),this.s.dt.on("xhr.dtsb",function(t,i,e){e&&e.searchBuilder&&e.searchBuilder.options&&(s.s.serverData=e.searchBuilder.options)})),this.s.dt.settings()[0]._bInitComplete?this._setUp():t.one("init.dt",function(){s._setUp()}),this}h=(c=$).fn.DataTable,d=(a=$).fn.dataTable,l=(I=$).fn.dataTable;var t=$.fn.dataTable,t=(DataTable.SearchBuilder=e,t.SearchBuilder=e,DataTable.Group=p,t.Group=p,DataTable.Criteria=u,t.Criteria=u,DataTable.Api.register);function r(t,i){t=new DataTable.Api(t),i=i||t.init().searchBuilder||DataTable.defaults.searchBuilder;return new e(t,i).getNode()}DataTable.ext.searchBuilder={conditions:{}},DataTable.ext.buttons.searchBuilder={action:function(t,i,e,n){this.popover(n._searchBuilder.getNode(),{align:"container",span:"container"});n=n._searchBuilder.s.topGroup;void 0!==n&&n.dom.container.trigger("dtsb-redrawContents-noDraw"),0===n.s.criteria.length&&$("."+$.fn.dataTable.Group.classes.add.replace(/ /g,".")).click()},config:{},init:function(e,n,t){var i=new DataTable.SearchBuilder(e,$.extend({filterChanged:function(t,i){e.button(n).text(i)}},t.config));e.button(n).text(t.text||e.i18n("searchBuilder.button",i.c.i18n.button,0)),t._searchBuilder=i},text:null},t("searchBuilder.getDetails()",function(t){void 0===t&&(t=!1);var i=this.context[0];return i._searchBuilder?i._searchBuilder.getDetails(t):null}),t("searchBuilder.rebuild()",function(t){var i=this.context[0];return void 0===i._searchBuilder?null:(i._searchBuilder.rebuild(t),this)}),t("searchBuilder.container()",function(){var t=this.context[0];return t._searchBuilder?t._searchBuilder.getNode():null}),$(document).on("preInit.dt.dtsp",function(t,i){"dt"!==t.namespace||!i.oInit.searchBuilder&&!DataTable.defaults.searchBuilder||i._searchBuilder||r(i)}),DataTable.ext.feature.push({cFeature:"Q",fnInit:r}),DataTable.ext.features&&DataTable.ext.features.register("searchBuilder",r)}();export default DataTable;
@@ -1,11 +1,10 @@
1
- /*! SearchBuilder 1.4.0
1
+ /*! SearchBuilder 1.4.2
2
2
  * ©SpryMedia Ltd - datatables.net/license/mit
3
3
  */
4
4
 
5
5
  import $ from 'jquery';
6
6
  import DataTable from 'datatables.net';
7
7
 
8
-
9
8
  (function () {
10
9
  'use strict';
11
10
 
@@ -315,7 +314,7 @@ import DataTable from 'datatables.net';
315
314
  }
316
315
  if (this.s.type.includes('num') && this.s.dt.page.info().serverSide) {
317
316
  for (var i = 0; i < this.s.value.length; i++) {
318
- this.s.value[i] = this.s.value[i].replace(/[^0-9.]/g, '');
317
+ this.s.value[i] = this.s.value[i].replace(/[^0-9.\-]/g, '');
319
318
  }
320
319
  }
321
320
  return {
@@ -790,81 +789,33 @@ import DataTable from 'datatables.net';
790
789
  }
791
790
  };
792
791
  /**
793
- * Populates the data select element
792
+ * Populates the data / column select element
794
793
  */
795
794
  Criteria.prototype._populateData = function () {
796
- var _this = this;
795
+ var columns = this.s.dt.settings()[0].aoColumns;
796
+ var includeColumns = this.s.dt.columns(this.c.columns).indexes().toArray();
797
797
  this.dom.data.empty().append(this.dom.dataTitle);
798
- // If there are no datas stored then we need to get them from the table
799
- if (this.s.dataPoints.length === 0) {
800
- this.s.dt.columns().every(function (index) {
801
- // Need to check that the column can be filtered on before adding it
802
- if (_this.c.columns === true ||
803
- _this.s.dt.columns(_this.c.columns).indexes().toArray().includes(index)) {
804
- var found = false;
805
- for (var _i = 0, _a = _this.s.dataPoints; _i < _a.length; _i++) {
806
- var val = _a[_i];
807
- if (val.index === index) {
808
- found = true;
809
- break;
810
- }
811
- }
812
- if (!found) {
813
- var col = _this.s.dt.settings()[0].aoColumns[index];
814
- var opt = {
815
- index: index,
816
- origData: col.data,
817
- text: (col.searchBuilderTitle === undefined ?
818
- col.sTitle :
819
- col.searchBuilderTitle).replace(/(<([^>]+)>)/ig, '')
820
- };
821
- _this.s.dataPoints.push(opt);
822
- _this.dom.data.append($$3('<option>', {
823
- text: opt.text,
824
- value: opt.index
825
- })
826
- .addClass(_this.classes.option)
827
- .addClass(_this.classes.notItalic)
828
- .prop('origData', col.data)
829
- .prop('selected', _this.s.dataIdx === opt.index ? true : false));
830
- if (_this.s.dataIdx === opt.index) {
831
- _this.dom.dataTitle.removeProp('selected');
832
- }
833
- }
834
- }
835
- });
836
- }
837
- // Otherwise we can just load them in
838
- else {
839
- var _loop_3 = function (data) {
840
- this_1.s.dt.columns().every(function (index) {
841
- var col = _this.s.dt.settings()[0].aoColumns[index];
842
- if ((col.searchBuilderTitle === undefined ?
843
- col.sTitle :
844
- col.searchBuilderTitle).replace(/(<([^>]+)>)/ig, '') === data.text) {
845
- data.index = index;
846
- data.origData = col.data;
847
- }
848
- });
849
- var newOpt = $$3('<option>', {
850
- text: data.text.replace(/(<([^>]+)>)/ig, ''),
851
- value: data.index
798
+ for (var index = 0; index < columns.length; index++) {
799
+ // Need to check that the column can be filtered on before adding it
800
+ if (this.c.columns === true || includeColumns.includes(index)) {
801
+ var col = columns[index];
802
+ var opt = {
803
+ index: index,
804
+ origData: col.data,
805
+ text: (col.searchBuilderTitle || col.sTitle)
806
+ .replace(/(<([^>]+)>)/ig, '')
807
+ };
808
+ this.dom.data.append($$3('<option>', {
809
+ text: opt.text,
810
+ value: opt.index
852
811
  })
853
- .addClass(this_1.classes.option)
854
- .addClass(this_1.classes.notItalic)
855
- .prop('origData', data.origData);
856
- if (this_1.s.data === data.text) {
857
- this_1.s.dataIdx = data.index;
858
- this_1.dom.dataTitle.removeProp('selected');
859
- newOpt.prop('selected', true);
860
- this_1.dom.data.removeClass(this_1.classes.italic);
812
+ .addClass(this.classes.option)
813
+ .addClass(this.classes.notItalic)
814
+ .prop('origData', col.data)
815
+ .prop('selected', this.s.dataIdx === opt.index ? true : false));
816
+ if (this.s.dataIdx === opt.index) {
817
+ this.dom.dataTitle.removeProp('selected');
861
818
  }
862
- this_1.dom.data.append(newOpt);
863
- };
864
- var this_1 = this;
865
- for (var _i = 0, _a = this.s.dataPoints; _i < _a.length; _i++) {
866
- var data = _a[_i];
867
- _loop_3(data);
868
819
  }
869
820
  }
870
821
  };
@@ -882,7 +833,7 @@ import DataTable from 'datatables.net';
882
833
  setTimeout(function () {
883
834
  _this.dom.defaultValue.remove();
884
835
  }, 50);
885
- var _loop_4 = function (val) {
836
+ var _loop_3 = function (val) {
886
837
  // Timeout is annoying but because of IOS
887
838
  setTimeout(function () {
888
839
  if (val !== undefined) {
@@ -892,7 +843,7 @@ import DataTable from 'datatables.net';
892
843
  };
893
844
  for (var _i = 0, _a = this.dom.value; _i < _a.length; _i++) {
894
845
  var val = _a[_i];
895
- _loop_4(val);
846
+ _loop_3(val);
896
847
  }
897
848
  var children = this.dom.inputCont.children();
898
849
  if (children.length > 1) {
@@ -1305,6 +1256,7 @@ import DataTable from 'datatables.net';
1305
1256
  that.s.dt.one('draw.dtsb', function () {
1306
1257
  that.s.topGroup.trigger('dtsb-redrawLogic');
1307
1258
  });
1259
+ return [];
1308
1260
  };
1309
1261
  Criteria.init2Date = function (that, fn, preDefined) {
1310
1262
  var _this = this;
@@ -3602,7 +3554,7 @@ import DataTable from 'datatables.net';
3602
3554
  _this.dom.clearAll.remove();
3603
3555
  });
3604
3556
  };
3605
- SearchBuilder.version = '1.4.0';
3557
+ SearchBuilder.version = '1.4.2';
3606
3558
  SearchBuilder.classes = {
3607
3559
  button: 'dtsb-button',
3608
3560
  clearAll: 'dtsb-clearAll',
@@ -3708,7 +3660,7 @@ import DataTable from 'datatables.net';
3708
3660
  return SearchBuilder;
3709
3661
  }());
3710
3662
 
3711
- /*! SearchBuilder 1.4.0
3663
+ /*! SearchBuilder 1.4.2
3712
3664
  * ©SpryMedia Ltd - datatables.net/license/mit
3713
3665
  */
3714
3666
  setJQuery($);
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "main": "js/dataTables.searchBuilder.js",
5
5
  "module": "js/dataTables.searchBuilder.mjs",
6
6
  "types": "./types/types.d.ts",
7
- "version": "1.4.0",
7
+ "version": "1.4.2",
8
8
  "files": [
9
9
  "js/**/*.js",
10
10
  "js/**/*.mjs",
@@ -249,7 +249,7 @@ export default class Criteria {
249
249
  */
250
250
  private _populateCondition;
251
251
  /**
252
- * Populates the data select element
252
+ * Populates the data / column select element
253
253
  */
254
254
  private _populateData;
255
255
  /**
package/types/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- /*! SearchBuilder 1.4.0
1
+ /*! SearchBuilder 1.4.2
2
2
  * ©SpryMedia Ltd - datatables.net/license/mit
3
3
  */
4
4
  export {};
package/types/types.d.ts CHANGED
@@ -32,6 +32,22 @@ declare module 'datatables.net' {
32
32
  searchBuilder?: ConfigSearchBuilderLanguage;
33
33
  }
34
34
 
35
+ interface ConfigColumns {
36
+ searchBuilder?: {
37
+ /** Set a default condition for this column */
38
+ defaultCondition?: number | string;
39
+
40
+ /** Set values of orthogonal data for rendering functions */
41
+ orthogonal?: {[key: string]: string};
42
+ };
43
+
44
+ /** Set a custom title for a column in SearchBuilder */
45
+ searchBuilderTitle?: string;
46
+
47
+ /** Set the SearchBuilder type to use for a column */
48
+ searchBuilderType?: string;
49
+ }
50
+
35
51
  interface Api<T> {
36
52
  /**
37
53
  * SearchBuilder methods container