jqwidgets-ng 22.0.3 → 23.0.1

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.
Files changed (202) hide show
  1. package/esm2020/jqxform/angular_jqxform.mjs +35 -2
  2. package/esm2020/jqxgrid/angular_jqxgrid.mjs +12 -0
  3. package/esm2020/jqxtree/angular_jqxtree.mjs +6 -0
  4. package/esm2020/jqxwindow/angular_jqxwindow.mjs +6 -0
  5. package/fesm2015/jqwidgets-ng-jqxform.mjs +35 -2
  6. package/fesm2015/jqwidgets-ng-jqxgrid.mjs +12 -0
  7. package/fesm2015/jqwidgets-ng-jqxtree.mjs +6 -0
  8. package/fesm2015/jqwidgets-ng-jqxwindow.mjs +6 -0
  9. package/fesm2020/jqwidgets-ng-jqxform.mjs +35 -2
  10. package/fesm2020/jqwidgets-ng-jqxgrid.mjs +12 -0
  11. package/fesm2020/jqwidgets-ng-jqxtree.mjs +6 -0
  12. package/fesm2020/jqwidgets-ng-jqxwindow.mjs +6 -0
  13. package/jqwidgets/jqx-all.js +28 -2467
  14. package/jqwidgets/jqxangular.js +3 -1
  15. package/jqwidgets/jqxbarcode.js +7 -1
  16. package/jqwidgets/jqxbargauge.js +3 -1
  17. package/jqwidgets/jqxbulletchart.js +3 -1
  18. package/jqwidgets/jqxbuttongroup.js +3 -1
  19. package/jqwidgets/jqxbuttons.js +3 -1
  20. package/jqwidgets/jqxcalendar.js +3 -1
  21. package/jqwidgets/jqxchart.annotations.js +3 -1
  22. package/jqwidgets/jqxchart.api.js +3 -1
  23. package/jqwidgets/jqxchart.core.js +3 -1
  24. package/jqwidgets/jqxchart.js +1 -1
  25. package/jqwidgets/jqxchart.rangeselector.js +3 -1
  26. package/jqwidgets/jqxchart.waterfall.js +3 -1
  27. package/jqwidgets/jqxcheckbox.js +3 -1
  28. package/jqwidgets/jqxcheckboxgroup.js +7 -1
  29. package/jqwidgets/jqxcolorpicker.js +3 -1
  30. package/jqwidgets/jqxcombobox.js +3 -1
  31. package/jqwidgets/jqxcomplexinput.js +3 -1
  32. package/jqwidgets/jqxcore.js +3 -1
  33. package/jqwidgets/jqxdata.export.js +3 -1
  34. package/jqwidgets/jqxdata.js +3 -1
  35. package/jqwidgets/jqxdatatable.js +3 -1
  36. package/jqwidgets/jqxdate.js +3 -1
  37. package/jqwidgets/jqxdatetimeinput.js +3 -1
  38. package/jqwidgets/jqxdocking.js +3 -1
  39. package/jqwidgets/jqxdockinglayout.js +3 -1
  40. package/jqwidgets/jqxdockpanel.js +3 -1
  41. package/jqwidgets/jqxdragdrop.js +3 -1
  42. package/jqwidgets/jqxdraw.js +3 -1
  43. package/jqwidgets/jqxdropdownbutton.js +3 -1
  44. package/jqwidgets/jqxdropdownlist.js +3 -1
  45. package/jqwidgets/jqxeditor.js +3 -1
  46. package/jqwidgets/jqxexpander.js +3 -1
  47. package/jqwidgets/jqxfileupload.js +3 -1
  48. package/jqwidgets/jqxform.js +4 -2
  49. package/jqwidgets/jqxformattedinput.js +3 -1
  50. package/jqwidgets/jqxgantt.api.js +75 -90
  51. package/jqwidgets/jqxgantt.js +3 -1
  52. package/jqwidgets/jqxgauge.js +4 -2
  53. package/jqwidgets/jqxgrid.aggregates.js +3 -1
  54. package/jqwidgets/jqxgrid.columnsreorder.js +3 -1
  55. package/jqwidgets/jqxgrid.columnsresize.js +3 -1
  56. package/jqwidgets/jqxgrid.edit.js +3 -1
  57. package/jqwidgets/jqxgrid.export.js +3 -1
  58. package/jqwidgets/jqxgrid.filter.js +4 -2
  59. package/jqwidgets/jqxgrid.grouping.js +3 -1
  60. package/jqwidgets/jqxgrid.js +4 -2
  61. package/jqwidgets/jqxgrid.pager.js +3 -1
  62. package/jqwidgets/jqxgrid.selection.js +3 -1
  63. package/jqwidgets/jqxgrid.sort.js +3 -1
  64. package/jqwidgets/jqxgrid.storage.js +4 -2
  65. package/jqwidgets/jqxheatmap.js +3 -1
  66. package/jqwidgets/jqxinput.js +3 -1
  67. package/jqwidgets/jqxkanban.js +3 -1
  68. package/jqwidgets/jqxknob.js +3 -1
  69. package/jqwidgets/jqxknockout.js +3 -1
  70. package/jqwidgets/jqxlayout.js +3 -1
  71. package/jqwidgets/jqxlistbox.js +4 -2
  72. package/jqwidgets/jqxlistmenu.js +3 -1
  73. package/jqwidgets/jqxloader.js +3 -1
  74. package/jqwidgets/jqxmaskedinput.js +3 -1
  75. package/jqwidgets/jqxmenu.js +3 -1
  76. package/jqwidgets/jqxnavbar.js +3 -1
  77. package/jqwidgets/jqxnavigationbar.js +3 -1
  78. package/jqwidgets/jqxnotification.js +3 -1
  79. package/jqwidgets/jqxnumberinput.js +3 -1
  80. package/jqwidgets/jqxpanel.js +3 -1
  81. package/jqwidgets/jqxpasswordinput.js +3 -1
  82. package/jqwidgets/jqxpivot.js +3 -1
  83. package/jqwidgets/jqxpivotdesigner.js +3 -1
  84. package/jqwidgets/jqxpivotgrid.js +3 -1
  85. package/jqwidgets/jqxpopover.js +3 -1
  86. package/jqwidgets/jqxprogressbar.js +3 -1
  87. package/jqwidgets/jqxqrcode.js +7 -1
  88. package/jqwidgets/jqxradiobutton.js +3 -1
  89. package/jqwidgets/jqxradiobuttongroup.js +7 -1
  90. package/jqwidgets/jqxrangeselector.js +3 -1
  91. package/jqwidgets/jqxrating.js +3 -1
  92. package/jqwidgets/jqxresponsivepanel.js +3 -1
  93. package/jqwidgets/jqxribbon.js +3 -1
  94. package/jqwidgets/jqxscheduler.api.js +3 -1
  95. package/jqwidgets/jqxscheduler.js +4 -2
  96. package/jqwidgets/jqxscrollbar.js +3 -1
  97. package/jqwidgets/jqxscrollview.js +3 -1
  98. package/jqwidgets/jqxslider.js +3 -1
  99. package/jqwidgets/jqxsortable.js +3 -1
  100. package/jqwidgets/jqxsplitlayout_.js +11 -0
  101. package/jqwidgets/jqxsplitter.js +3 -1
  102. package/jqwidgets/jqxswitchbutton.js +4 -2
  103. package/jqwidgets/jqxtabs.js +3 -1
  104. package/jqwidgets/jqxtagcloud.js +3 -1
  105. package/jqwidgets/jqxtextarea.js +3 -1
  106. package/jqwidgets/jqxtimeline.js +3 -1
  107. package/jqwidgets/jqxtimepicker.js +3 -1
  108. package/jqwidgets/jqxtoolbar.js +3 -1
  109. package/jqwidgets/jqxtooltip.js +3 -1
  110. package/jqwidgets/jqxtouch.js +3 -1
  111. package/jqwidgets/jqxtree.js +4 -2
  112. package/jqwidgets/jqxtreegrid.js +3 -1
  113. package/jqwidgets/jqxtreemap.js +3 -1
  114. package/jqwidgets/jqxvalidator.js +3 -1
  115. package/jqwidgets/jqxwindow.js +4 -2
  116. package/jqwidgets/modules/jqxbarcode.js +65 -19
  117. package/jqwidgets/modules/jqxbargauge.js +67 -23
  118. package/jqwidgets/modules/jqxbulletchart.js +70 -28
  119. package/jqwidgets/modules/jqxbuttongroup.js +68 -24
  120. package/jqwidgets/modules/jqxbuttons.js +65 -19
  121. package/jqwidgets/modules/jqxcalendar.js +72 -30
  122. package/jqwidgets/modules/jqxchart.js +82 -62
  123. package/jqwidgets/modules/jqxcheckbox.js +71 -29
  124. package/jqwidgets/modules/jqxcheckboxgroup.js +71 -29
  125. package/jqwidgets/modules/jqxcolorpicker.js +74 -34
  126. package/jqwidgets/modules/jqxcombobox.js +80 -44
  127. package/jqwidgets/modules/jqxcomplexinput.js +68 -24
  128. package/jqwidgets/modules/jqxdatatable.js +108 -114
  129. package/jqwidgets/modules/jqxdatetimeinput.js +98 -74
  130. package/jqwidgets/modules/jqxdocking.js +208 -29
  131. package/jqwidgets/modules/jqxdockinglayout.js +219 -48
  132. package/jqwidgets/modules/jqxdockpanel.js +68 -24
  133. package/jqwidgets/modules/jqxdragdrop.js +69 -27
  134. package/jqwidgets/modules/jqxdraw.js +64 -18
  135. package/jqwidgets/modules/jqxdropdownbutton.js +68 -24
  136. package/jqwidgets/modules/jqxdropdownlist.js +96 -70
  137. package/jqwidgets/modules/jqxeditor.js +249 -98
  138. package/jqwidgets/modules/jqxexpander.js +76 -36
  139. package/jqwidgets/modules/jqxfileupload.js +71 -29
  140. package/jqwidgets/modules/jqxform.js +1200 -1020
  141. package/jqwidgets/modules/jqxformattedinput.js +99 -73
  142. package/jqwidgets/modules/jqxgantt.js +149 -118
  143. package/jqwidgets/modules/jqxgauge.js +3063 -3747
  144. package/jqwidgets/modules/jqxgrid.js +1799 -789
  145. package/jqwidgets/modules/jqxheatmap.js +68 -24
  146. package/jqwidgets/modules/jqxinput.js +70 -28
  147. package/jqwidgets/modules/jqxkanban.js +111 -95
  148. package/jqwidgets/modules/jqxknob.js +70 -28
  149. package/jqwidgets/modules/jqxlayout.js +219 -48
  150. package/jqwidgets/modules/jqxlineargauge.js +3063 -3747
  151. package/jqwidgets/modules/jqxlinkbutton.js +65 -19
  152. package/jqwidgets/modules/jqxlistbox.js +84 -50
  153. package/jqwidgets/modules/jqxlistmenu.js +107 -87
  154. package/jqwidgets/modules/jqxloader.js +65 -19
  155. package/jqwidgets/modules/jqxmaskedinput.js +65 -19
  156. package/jqwidgets/modules/jqxmenu.js +81 -45
  157. package/jqwidgets/modules/jqxnavbar.js +76 -36
  158. package/jqwidgets/modules/jqxnavigationbar.js +88 -56
  159. package/jqwidgets/modules/jqxnotification.js +76 -38
  160. package/jqwidgets/modules/jqxnumberinput.js +86 -54
  161. package/jqwidgets/modules/jqxpanel.js +73 -33
  162. package/jqwidgets/modules/jqxpasswordinput.js +75 -37
  163. package/jqwidgets/modules/jqxpivotdesigner.js +254 -105
  164. package/jqwidgets/modules/jqxpivotgrid.js +254 -105
  165. package/jqwidgets/modules/jqxpopover.js +68 -24
  166. package/jqwidgets/modules/jqxprogressbar.js +65 -19
  167. package/jqwidgets/modules/jqxqrcode.js +75 -35
  168. package/jqwidgets/modules/jqxradiobutongroup.js +71 -29
  169. package/jqwidgets/modules/jqxradiobutton.js +68 -24
  170. package/jqwidgets/modules/jqxrangeselector.js +70 -28
  171. package/jqwidgets/modules/jqxrating.js +68 -24
  172. package/jqwidgets/modules/jqxrepeatbutton.js +65 -19
  173. package/jqwidgets/modules/jqxresponsivepanel.js +68 -24
  174. package/jqwidgets/modules/jqxribbon.js +71 -29
  175. package/jqwidgets/modules/jqxscheduler.js +261 -142
  176. package/jqwidgets/modules/jqxscrollbar.js +67 -23
  177. package/jqwidgets/modules/jqxscrollview.js +67 -23
  178. package/jqwidgets/modules/jqxslider.js +57 -23
  179. package/jqwidgets/modules/jqxsortable.js +7 -14119
  180. package/jqwidgets/modules/jqxsplitlayout.js +7 -13895
  181. package/jqwidgets/modules/jqxsplitter.js +7 -13468
  182. package/jqwidgets/modules/jqxswitchbutton.js +63 -33
  183. package/jqwidgets/modules/jqxtabs.js +73 -49
  184. package/jqwidgets/modules/jqxtagcloud.js +65 -37
  185. package/jqwidgets/modules/jqxtextarea.js +65 -37
  186. package/jqwidgets/modules/jqxtimeline.js +55 -19
  187. package/jqwidgets/modules/jqxtimepicker.js +56 -22
  188. package/jqwidgets/modules/jqxtogglebutton.js +55 -19
  189. package/jqwidgets/modules/jqxtoolbar.js +99 -91
  190. package/jqwidgets/modules/jqxtooltip.js +54 -18
  191. package/jqwidgets/modules/jqxtree.js +2638 -2581
  192. package/jqwidgets/modules/jqxtreegrid.js +100 -118
  193. package/jqwidgets/modules/jqxtreemap.js +59 -27
  194. package/jqwidgets/modules/jqxvalidator.js +62 -32
  195. package/jqwidgets/modules/jqxwindow.js +195 -24
  196. package/jqwidgets/styles/jqx.base.css +182 -1
  197. package/jqwidgets.d.ts +13 -1
  198. package/jqxform/angular_jqxform.d.ts +7 -1
  199. package/jqxgrid/angular_jqxgrid.d.ts +2 -0
  200. package/jqxtree/angular_jqxtree.d.ts +2 -0
  201. package/jqxwindow/angular_jqxwindow.d.ts +2 -0
  202. package/package.json +3 -2
@@ -4,6 +4,46 @@ Copyright (c) 2011-2025 jQWidgets.
4
4
  License: https://jqwidgets.com/license/ */
5
5
 
6
6
 
7
+ /******/ (() => { // webpackBootstrap
8
+ var __webpack_exports__ = {};
9
+
10
+ /* Release Date: Jan-28-2025
11
+ Copyright (c) 2011-2025 jQWidgets.
12
+ License: https://jqwidgets.com/license/ */
13
+
14
+
15
+ /******/ (() => { // webpackBootstrap
16
+ var __webpack_exports__ = {};
17
+
18
+ /* Release Date: Jan-28-2025
19
+ Copyright (c) 2011-2025 jQWidgets.
20
+ License: https://jqwidgets.com/license/ */
21
+
22
+
23
+ /******/ (() => { // webpackBootstrap
24
+ var __webpack_exports__ = {};
25
+
26
+ /* Release Date: Jan-28-2025
27
+ Copyright (c) 2011-2025 jQWidgets.
28
+ License: https://jqwidgets.com/license/ */
29
+
30
+
31
+ /******/ (() => { // webpackBootstrap
32
+ var __webpack_exports__ = {};
33
+
34
+ /* Release Date: Jan-28-2025
35
+ Copyright (c) 2011-2025 jQWidgets.
36
+ License: https://jqwidgets.com/license/ */
37
+
38
+
39
+ /******/ (() => { // webpackBootstrap
40
+ var __webpack_exports__ = {};
41
+
42
+ /* Release Date: Jan-28-2025
43
+ Copyright (c) 2011-2025 jQWidgets.
44
+ License: https://jqwidgets.com/license/ */
45
+
46
+
7
47
  /******/ (() => { // webpackBootstrap
8
48
  /******/ var __webpack_modules__ = ({
9
49
 
@@ -2252,9 +2292,7 @@ document.Globalize = Globalize;
2252
2292
  }
2253
2293
  });
2254
2294
  })(jqxBaseFramework);
2255
- })();
2256
-
2257
-
2295
+ })();
2258
2296
 
2259
2297
  /***/ }),
2260
2298
 
@@ -3440,9 +3478,7 @@ document.Globalize = Globalize;
3440
3478
  //// End of ToggleButton
3441
3479
 
3442
3480
  })(jqxBaseFramework);
3443
- })();
3444
-
3445
-
3481
+ })();
3446
3482
 
3447
3483
  /***/ }),
3448
3484
 
@@ -7282,9 +7318,7 @@ document.Globalize = Globalize;
7282
7318
  } // calendar month
7283
7319
 
7284
7320
  })(jqxBaseFramework);
7285
- })();
7286
-
7287
-
7321
+ })();
7288
7322
 
7289
7323
  /***/ }),
7290
7324
 
@@ -8130,9 +8164,7 @@ document.Globalize = Globalize;
8130
8164
  }
8131
8165
  });
8132
8166
  })(jqxBaseFramework);
8133
- })();
8134
-
8135
-
8167
+ })();
8136
8168
 
8137
8169
  /***/ }),
8138
8170
 
@@ -11429,14 +11461,12 @@ document.Globalize = Globalize;
11429
11461
  }
11430
11462
  });
11431
11463
  })(jqxBaseFramework);
11432
- })();
11433
-
11434
-
11464
+ })();
11435
11465
 
11436
11466
  /***/ }),
11437
11467
 
11438
11468
  /***/ 5459:
11439
- /***/ ((module, exports, __webpack_require__) => {
11469
+ /***/ ((module, exports, __nested_webpack_require_484119__) => {
11440
11470
 
11441
11471
  var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disable */
11442
11472
  /* eslint-disable */
@@ -19616,7 +19646,7 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disabl
19616
19646
  // file names, and JQXLite is normally delivered in a lowercase file name.
19617
19647
  // Do this after creating the global so that if an AMD module wants to call
19618
19648
  // noConflict to hide this version of JQXLite, it will work.
19619
- if ( true && __webpack_require__.amdO.JQXLite) {
19649
+ if ( true && __nested_webpack_require_484119__.amdO.JQXLite) {
19620
19650
  !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { return JQXLite; }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
19621
19651
  __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
19622
19652
  }
@@ -22791,8 +22821,6 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disabl
22791
22821
  }
22792
22822
  })(jqxBaseFramework);
22793
22823
  })();
22794
-
22795
-
22796
22824
 
22797
22825
 
22798
22826
  /***/ }),
@@ -27737,9 +27765,7 @@ var saveAs = window.jqxSaveAs = saveAs
27737
27765
 
27738
27766
 
27739
27767
  })(pdfDataExport.API)
27740
- })();
27741
-
27742
-
27768
+ })();
27743
27769
 
27744
27770
  /***/ }),
27745
27771
 
@@ -33886,9 +33912,7 @@ var saveAs = window.jqxSaveAs = saveAs
33886
33912
  }
33887
33913
  }
33888
33914
  } )( jqxBaseFramework );
33889
- })();
33890
-
33891
-
33915
+ })();
33892
33916
 
33893
33917
  /***/ }),
33894
33918
 
@@ -40358,8 +40382,6 @@ var saveAs = window.jqxSaveAs = saveAs
40358
40382
  })(jqxBaseFramework);
40359
40383
  })();
40360
40384
 
40361
-
40362
-
40363
40385
 
40364
40386
 
40365
40387
  /***/ }),
@@ -42504,9 +42526,7 @@ var saveAs = window.jqxSaveAs = saveAs
42504
42526
  }
42505
42527
  });
42506
42528
  })(jqxBaseFramework);
42507
- })();
42508
-
42509
-
42529
+ })();
42510
42530
 
42511
42531
  /***/ }),
42512
42532
 
@@ -47634,8 +47654,6 @@ var saveAs = window.jqxSaveAs = saveAs
47634
47654
  })(jqxBaseFramework);
47635
47655
  })();
47636
47656
 
47637
-
47638
-
47639
47657
 
47640
47658
 
47641
47659
  /***/ }),
@@ -48565,9 +48583,7 @@ var saveAs = window.jqxSaveAs = saveAs
48565
48583
  }
48566
48584
  });
48567
48585
  })(jqxBaseFramework);
48568
- })();
48569
-
48570
-
48586
+ })();
48571
48587
 
48572
48588
  /***/ }),
48573
48589
 
@@ -49274,8 +49290,6 @@ var saveAs = window.jqxSaveAs = saveAs
49274
49290
  })(jqxBaseFramework);
49275
49291
  })();
49276
49292
 
49277
-
49278
-
49279
49293
 
49280
49294
 
49281
49295
  /***/ }),
@@ -52148,8 +52162,6 @@ var saveAs = window.jqxSaveAs = saveAs
52148
52162
  );
52149
52163
  })();
52150
52164
 
52151
-
52152
-
52153
52165
 
52154
52166
 
52155
52167
  /***/ }),
@@ -52985,8 +52997,6 @@ var saveAs = window.jqxSaveAs = saveAs
52985
52997
  })(jqxBaseFramework);
52986
52998
  })();
52987
52999
 
52988
-
52989
-
52990
53000
 
52991
53001
 
52992
53002
  /***/ }),
@@ -53110,6 +53120,604 @@ var saveAs = window.jqxSaveAs = saveAs
53110
53120
  tablerow.height(this.filterrowheight);
53111
53121
  },
53112
53122
 
53123
+ filterByQuery: function (query) {
53124
+ var that = this;
53125
+
53126
+ var columns = [];
53127
+ for (var i = 0; i < this.columns.records.length; i++) {
53128
+ var column = this.columns.records[i];
53129
+
53130
+ var type = 'string';
53131
+
53132
+ if (!this.source) {
53133
+ this.source = new $.jqx.dataAdapter({
53134
+ });
53135
+ }
53136
+
53137
+ var datafields = this.source.datafields || ((this.source._source) ? this.source._source.datafields : null);
53138
+
53139
+ if (datafields) {
53140
+ var foundType = "";
53141
+ $.each(datafields, function () {
53142
+ if (this.name == column.displayfield) {
53143
+ if (this.type) {
53144
+ foundType = this.type;
53145
+ }
53146
+ return false;
53147
+ }
53148
+ });
53149
+ if (foundType) {
53150
+ type = foundType;
53151
+ }
53152
+ }
53153
+ columns.push({
53154
+ text: column.text,
53155
+ dataField: column.datafield,
53156
+ type: type
53157
+ });
53158
+ }
53159
+
53160
+ function parseDateWithLocales(dateStr) {
53161
+ var trimmed = dateStr.trim();
53162
+
53163
+ // Try parsing known regional formats manually
53164
+ var datePatterns = [
53165
+ /^\d{2}\/\d{2}\/\d{4}$/, // MM/DD/YYYY or DD/MM/YYYY
53166
+ /^\d{4}-\d{2}-\d{2}$/, // YYYY-MM-DD (ISO)
53167
+ /^\d{2}\s+[A-Za-z]+\s+\d{4}$/, // DD Month YYYY
53168
+ /^[A-Za-z]+\s+\d{2},\s+\d{4}$/ // Month DD, YYYY
53169
+ ];
53170
+
53171
+ for (var i = 0; i < datePatterns.length; i++) {
53172
+ var pattern = datePatterns[i];
53173
+ var match = trimmed.match(pattern);
53174
+ if (!match) continue;
53175
+
53176
+ try {
53177
+ var day, month, year;
53178
+ if (pattern === datePatterns[0]) {
53179
+ var parts = trimmed.split('/');
53180
+ var part1 = parseInt(parts[0], 10);
53181
+ var part2 = parseInt(parts[1], 10);
53182
+ var part3 = parseInt(parts[2], 10);
53183
+
53184
+ if (part1 > 12) {
53185
+ day = part1;
53186
+ month = part2 - 1;
53187
+ } else if (part2 > 12) {
53188
+ day = part2;
53189
+ month = part1 - 1;
53190
+ } else {
53191
+ month = part1 - 1;
53192
+ day = part2;
53193
+ }
53194
+ year = part3;
53195
+ } else if (pattern === datePatterns[1]) {
53196
+ var parts = trimmed.split('-');
53197
+ year = parseInt(parts[0], 10);
53198
+ month = parseInt(parts[1], 10) - 1;
53199
+ day = parseInt(parts[2], 10);
53200
+ } else if (pattern === datePatterns[2]) {
53201
+ var parts = trimmed.split(' ');
53202
+ day = parseInt(parts[0], 10);
53203
+ month = getMonthIndex(parts[1]);
53204
+ year = parseInt(parts[2], 10);
53205
+ } else if (pattern === datePatterns[3]) {
53206
+ var clean = trimmed.replace(',', '');
53207
+ var split = clean.split(' ');
53208
+ var monthStr = split[0];
53209
+ var dayStr = split[1];
53210
+ var yearStr = split[2];
53211
+ month = getMonthIndex(monthStr);
53212
+ day = parseInt(dayStr, 10);
53213
+ year = parseInt(yearStr, 10);
53214
+ }
53215
+
53216
+ var parsed = new Date(year, month, day);
53217
+ if (!isNaN(parsed.getTime())) {
53218
+ return parsed;
53219
+ }
53220
+ } catch (e) {
53221
+ continue;
53222
+ }
53223
+ }
53224
+
53225
+
53226
+ // Fallback to native Date parser
53227
+ var fallback = new Date(trimmed);
53228
+ return isNaN(fallback.getTime()) ? null : fallback;
53229
+ }
53230
+
53231
+ function getMonthIndex(monthName) {
53232
+ var months = [
53233
+ 'january', 'february', 'march', 'april', 'may', 'june',
53234
+ 'july', 'august', 'september', 'october', 'november', 'december'
53235
+ ];
53236
+ return months.indexOf(monthName.toLowerCase());
53237
+ }
53238
+
53239
+ function parseNaturalFilterQueryToJSON(query, columns) {
53240
+ // === UTILS ===
53241
+ function normalize(str) {
53242
+ return str.trim().replace(/\s+/g, ' ');
53243
+ }
53244
+
53245
+ function parseDateWithLocales(value) {
53246
+ var d = new Date(value);
53247
+ if (!isNaN(d)) return d;
53248
+ return null;
53249
+ }
53250
+
53251
+ function preprocessValue(value, column) {
53252
+ if (column.type === 'date') {
53253
+ var d = parseDateWithLocales(value);
53254
+ if (d) return d.toISOString().split('T')[0];
53255
+ return value;
53256
+ }
53257
+ if (column.type === 'boolean' || column.type === 'bool') {
53258
+ if (value.toLowerCase() === 'true') return true;
53259
+ if (value.toLowerCase() === 'false') return false;
53260
+ return value;
53261
+ }
53262
+ if (column.type === 'number') {
53263
+ var n = parseFloat(value);
53264
+ if (!isNaN(n)) return n;
53265
+ return value;
53266
+ }
53267
+ return value;
53268
+ }
53269
+
53270
+ // === TOKENIZER SETUP ===
53271
+ // Operator keywords with precedence for matching
53272
+ var OPERATOR_ALIASES = [
53273
+ { keyword: 'greater than or equal to', op: 'GREATER_THAN_OR_EQUAL' },
53274
+ { keyword: 'greater than or equal', op: 'GREATER_THAN_OR_EQUAL' },
53275
+ { keyword: 'greater than', op: 'GREATER_THAN' },
53276
+ { keyword: 'less than or equal to', op: 'LESS_THAN_OR_EQUAL' },
53277
+ { keyword: 'less than or equal', op: 'LESS_THAN_OR_EQUAL' },
53278
+ { keyword: 'less than', op: 'LESS_THAN' },
53279
+ { keyword: 'not equal to', op: 'NOT_EQUAL' },
53280
+ { keyword: 'not equal', op: 'NOT_EQUAL' },
53281
+ { keyword: 'not equals', op: 'NOT_EQUAL' },
53282
+ { keyword: 'starts with', op: 'STARTS_WITH' },
53283
+ { keyword: 'ends with', op: 'ENDS_WITH' },
53284
+ { keyword: 'contains', op: 'CONTAINS' },
53285
+ { keyword: 'is', op: 'EQUAL' },
53286
+ { keyword: '=', op: 'EQUAL' },
53287
+ ];
53288
+ // Use full-word matching for logic tokens
53289
+ var LOGIC_TOKENS = ['and', 'or'];
53290
+
53291
+
53292
+ // Symbol operators with precedence by length
53293
+ var SYMBOL_OPERATORS = ['<=', '>=', '<>', '!=', '<', '>'];
53294
+
53295
+
53296
+ // Build regexes for column names (longest first)
53297
+ var columnsByLengthDesc = columns.slice().sort(function (a, b) {
53298
+ return b.text.length - a.text.length;
53299
+ });
53300
+
53301
+ var columnRegexes = [];
53302
+ for (var i = 0; i < columnsByLengthDesc.length; i++) {
53303
+ var col = columnsByLengthDesc[i];
53304
+ var escapedText = col.text.replace(/[-[\]/{}()*+?.\\^$|]/g, '\\$&');
53305
+ columnRegexes.push({
53306
+ col: col,
53307
+ regex: new RegExp('^' + escapedText, 'i')
53308
+ });
53309
+ }
53310
+
53311
+
53312
+ // --- Custom function to consume a value token without gobbling following tokens ---
53313
+ function consumeValue(s) {
53314
+ var val = "";
53315
+ var i = 0;
53316
+ while (i < s.length) {
53317
+ if (s.charAt(i) === '(' || s.charAt(i) === ')') break;
53318
+
53319
+ var logicMatch = s.slice(i).match(/^(and|or)\b/i);
53320
+ if (logicMatch) break;
53321
+
53322
+ var foundColumn = false;
53323
+ for (var j = 0; j < columnRegexes.length; j++) {
53324
+ var regex = columnRegexes[j].regex;
53325
+ if (s.slice(i).match(regex)) {
53326
+ foundColumn = true;
53327
+ break;
53328
+ }
53329
+ }
53330
+ if (foundColumn) break;
53331
+
53332
+ val += s.charAt(i);
53333
+ i++;
53334
+ }
53335
+ return { value: val.trim(), length: i };
53336
+ }
53337
+
53338
+ // === TOKENIZER ===
53339
+ function tokenize(input) {
53340
+ var tokens = [];
53341
+ var s = input.trim();
53342
+
53343
+ while (s.length > 0) {
53344
+ var ws = /^\s+/.exec(s);
53345
+ if (ws) {
53346
+ s = s.slice(ws[0].length);
53347
+ continue;
53348
+ }
53349
+
53350
+ if (s.charAt(0) === '(') {
53351
+ tokens.push({ type: 'OPEN_PAREN' });
53352
+ s = s.slice(1);
53353
+ continue;
53354
+ }
53355
+ if (s.charAt(0) === ')') {
53356
+ tokens.push({ type: 'CLOSE_PAREN' });
53357
+ s = s.slice(1);
53358
+ continue;
53359
+ }
53360
+
53361
+ var logicMatch = s.match(/^(and|or)\b/i);
53362
+ if (logicMatch) {
53363
+ tokens.push({ type: 'LOGIC', value: logicMatch[1].toUpperCase() });
53364
+ s = s.slice(logicMatch[0].length);
53365
+ continue;
53366
+ }
53367
+
53368
+ var matchedColumn = null;
53369
+ for (var i = 0; i < columnRegexes.length; i++) {
53370
+ var col = columnRegexes[i].col;
53371
+ var regex = columnRegexes[i].regex;
53372
+ var m = regex.exec(s);
53373
+ if (m) {
53374
+ matchedColumn = col;
53375
+ tokens.push({ type: 'COLUMN', value: matchedColumn });
53376
+ s = s.slice(m[0].length);
53377
+ break;
53378
+ }
53379
+ }
53380
+ if (matchedColumn) continue;
53381
+
53382
+ var matchedOp = null;
53383
+ for (var i = 0; i < OPERATOR_ALIASES.length; i++) {
53384
+ var alias = OPERATOR_ALIASES[i];
53385
+ if (s.toLowerCase().indexOf(alias.keyword) === 0) {
53386
+ matchedOp = alias.op;
53387
+ tokens.push({ type: 'OPERATOR', value: matchedOp });
53388
+ s = s.slice(alias.keyword.length);
53389
+ break;
53390
+ }
53391
+ }
53392
+ if (matchedOp) continue;
53393
+
53394
+ var symOp = null;
53395
+ for (var i = 0; i < SYMBOL_OPERATORS.length; i++) {
53396
+ if (s.indexOf(SYMBOL_OPERATORS[i]) === 0) {
53397
+ symOp = SYMBOL_OPERATORS[i];
53398
+ break;
53399
+ }
53400
+ }
53401
+ if (symOp) {
53402
+ tokens.push({ type: 'OPERATOR', value: symOp });
53403
+ s = s.slice(symOp.length);
53404
+ continue;
53405
+ }
53406
+
53407
+ if (s.charAt(0) === '=') {
53408
+ tokens.push({ type: 'OPERATOR', value: 'EQUAL' });
53409
+ s = s.slice(1);
53410
+ continue;
53411
+ }
53412
+ if (s.charAt(0) === ':') {
53413
+ tokens.push({ type: 'OPERATOR', value: 'EQUAL' });
53414
+ s = s.slice(1);
53415
+ continue;
53416
+ }
53417
+
53418
+ var consumed = consumeValue(s);
53419
+ if (consumed.value.length > 0) {
53420
+ tokens.push({ type: 'VALUE', value: consumed.value });
53421
+ s = s.slice(consumed.length);
53422
+ continue;
53423
+ }
53424
+
53425
+ // Prevent infinite loop
53426
+ break;
53427
+ }
53428
+
53429
+ return tokens;
53430
+ }
53431
+
53432
+ // === PARSER ===
53433
+ // Preprocess the query by removing noise words.
53434
+ query = normalize(query).toLowerCase();
53435
+ query = query.replace(/\b(filter\s+by|where\s+value)\b/g, "").trim();
53436
+
53437
+ var tokens = tokenize(query);
53438
+ var pos = 0;
53439
+ var lastColumn = null;
53440
+
53441
+ // Map symbol operators to internal string codes:
53442
+ var SYMBOL_TO_OP = {
53443
+ '<': 'LESS_THAN',
53444
+ '<=': 'LESS_THAN_OR_EQUAL',
53445
+ '>': 'GREATER_THAN',
53446
+ '>=': 'GREATER_THAN_OR_EQUAL',
53447
+ '!=': 'NOT_EQUAL',
53448
+ '<>': 'NOT_EQUAL',
53449
+ };
53450
+
53451
+ function peek() {
53452
+ return tokens[pos];
53453
+ }
53454
+ function consume(expectedType) {
53455
+ var t = tokens[pos];
53456
+ if (!t) return null;
53457
+ if (!expectedType || t.type === expectedType) {
53458
+ pos++;
53459
+ return t;
53460
+ }
53461
+ return null;
53462
+ }
53463
+
53464
+ function parseExpression() {
53465
+ var node = parseTerm();
53466
+ while (true) {
53467
+ var t = peek();
53468
+ if (!t || t.type !== 'LOGIC') break;
53469
+ var logic = consume('LOGIC').value; // AND/OR
53470
+ var right = parseTerm();
53471
+ node = { logic: logic, conditions: [node, right] };
53472
+ }
53473
+ return node;
53474
+ }
53475
+
53476
+ function parseTerm() {
53477
+ var t = peek();
53478
+
53479
+ if (t && t.type === 'OPEN_PAREN') {
53480
+ consume('OPEN_PAREN');
53481
+ var expr = parseExpression();
53482
+ consume('CLOSE_PAREN');
53483
+ return expr;
53484
+ }
53485
+
53486
+ t = peek();
53487
+ var column = null;
53488
+ if (t && t.type === 'COLUMN') {
53489
+ column = consume('COLUMN').value;
53490
+ lastColumn = column;
53491
+ } else if (t && t.type === 'VALUE' && lastColumn) {
53492
+ column = lastColumn;
53493
+ } else {
53494
+ console.warn('Expected COLUMN or VALUE but got', t);
53495
+ return null;
53496
+ }
53497
+
53498
+ var operator = 'EQUAL';
53499
+ var next = peek();
53500
+ if (next && next.type === 'OPERATOR') {
53501
+ var rawOp = consume('OPERATOR').value;
53502
+ operator = SYMBOL_TO_OP.hasOwnProperty(rawOp) ? SYMBOL_TO_OP[rawOp] : rawOp;
53503
+ }
53504
+
53505
+ var v = consume('VALUE');
53506
+ if (!v) {
53507
+ console.warn('Expected VALUE token');
53508
+ return null;
53509
+ }
53510
+
53511
+ var parts = v.value.split(/\s+or\s+/i);
53512
+ var values = [];
53513
+ for (var i = 0; i < parts.length; i++) {
53514
+ var val = normalize(parts[i]);
53515
+ if (val) {
53516
+ values.push(val);
53517
+ }
53518
+ }
53519
+
53520
+ var filters = [];
53521
+ for (var i = 0; i < values.length; i++) {
53522
+ filters.push({
53523
+ field: column.dataField,
53524
+ type: column.type,
53525
+ operator: operator,
53526
+ value: preprocessValue(values[i], column)
53527
+ });
53528
+ }
53529
+
53530
+ if (filters.length === 1) return filters[0];
53531
+
53532
+ return {
53533
+ logic: 'OR',
53534
+ conditions: filters
53535
+ };
53536
+ }
53537
+
53538
+ // === FLATTEN AST ===
53539
+ function flatten(node, parentLogic) {
53540
+ if (!node) return [];
53541
+ if (typeof parentLogic === 'undefined') parentLogic = 'AND';
53542
+
53543
+ if (node.conditions) {
53544
+ var flattened = [];
53545
+ for (var i = 0; i < node.conditions.length; i++) {
53546
+ var child = node.conditions[i];
53547
+ var logic = (i === 0) ? parentLogic : node.logic;
53548
+ flattened = flattened.concat(flatten(child, logic));
53549
+ }
53550
+ return flattened;
53551
+ }
53552
+
53553
+ return [{
53554
+ field: node.field,
53555
+ type: node.type,
53556
+ operator: node.operator,
53557
+ value: node.value,
53558
+ logic: parentLogic
53559
+ }];
53560
+ }
53561
+
53562
+ try {
53563
+ var ast = parseExpression();
53564
+ return flatten(ast);
53565
+ } catch (e) {
53566
+ console.error('Parse error:', e);
53567
+ return [];
53568
+ }
53569
+ }
53570
+
53571
+
53572
+
53573
+ function fallbackToAI(query, columns, aiKey, applyFilters) {
53574
+ var systemPrompt =
53575
+ "You are a helpful assistant converting natural language filter queries into structured JSON filters.\n" +
53576
+ "Use only these columns:\n";
53577
+
53578
+ for (var i = 0; i < columns.length; i++) {
53579
+ var col = columns[i];
53580
+ systemPrompt += "- " + col.text + " (" + col.type + ") => " + col.dataField + "\n";
53581
+ }
53582
+
53583
+ systemPrompt +=
53584
+ "\nSupported operators: EQUAL, NOT_EQUAL, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, CONTAINS, STARTS_WITH, ENDS_WITH\n\n" +
53585
+ "Respond in this format:\n" +
53586
+ "[\n" +
53587
+ " {\n" +
53588
+ " \"field\": \"dataField\",\n" +
53589
+ " \"operator\": \"EQUAL\",\n" +
53590
+ " \"value\": \"some value\",\n" +
53591
+ " \"type\": \"string\",\n" +
53592
+ " \"logic\": \"AND\"\n" +
53593
+ " }\n" +
53594
+ "]\n";
53595
+ function callOpenAI(aiUrl, aiKey, systemPrompt, query, applyFilters, callback) {
53596
+ var url = aiUrl || 'https://api.openai.com/v1/chat/completions';
53597
+
53598
+ var xhr = new XMLHttpRequest();
53599
+ xhr.open('POST', url, true);
53600
+ xhr.setRequestHeader('Authorization', 'Bearer ' + aiKey);
53601
+ xhr.setRequestHeader('Content-Type', 'application/json');
53602
+
53603
+ xhr.onreadystatechange = function () {
53604
+ if (xhr.readyState === 4) { // DONE
53605
+ if (xhr.status >= 200 && xhr.status < 300) {
53606
+ try {
53607
+ var json = JSON.parse(xhr.responseText);
53608
+ if (that._aiCanFetch) {
53609
+ var text = json.choices[0].message.content;
53610
+ var parsed = JSON.parse(text);
53611
+ if (applyFilters && typeof applyFilters === 'function') {
53612
+ applyFilters(parsed);
53613
+ }
53614
+ that._aiCanFetch = false;
53615
+ callback(null, parsed);
53616
+ } else {
53617
+ callback(null, []);
53618
+ }
53619
+ } catch (e) {
53620
+ console.error('Failed to parse OpenAI response:', xhr.responseText);
53621
+ callback(e, []);
53622
+ }
53623
+ } else {
53624
+ console.error('Error calling OpenAI API:', xhr.status, xhr.statusText);
53625
+ callback(new Error('HTTP error: ' + xhr.status), []);
53626
+ }
53627
+ }
53628
+ };
53629
+
53630
+ var body = JSON.stringify({
53631
+ model: 'gpt-4',
53632
+ messages: [
53633
+ { role: 'system', content: systemPrompt },
53634
+ { role: 'user', content: 'Query: ' + query }
53635
+ ],
53636
+ temperature: 0
53637
+ });
53638
+
53639
+ xhr.send(body);
53640
+ }
53641
+
53642
+ }
53643
+
53644
+ var aiKey = this.aiKey;
53645
+
53646
+ var applyFilters = function (json) {
53647
+ function createJqxFilterGroupFromJSON(parsedFilters) {
53648
+ var filterGroups = {};
53649
+
53650
+ for (var i = 0; i < parsedFilters.length; i++) {
53651
+ var filter = parsedFilters[i];
53652
+ var field = filter.field;
53653
+ var type = filter.type;
53654
+ var operator = filter.operator;
53655
+ var value = filter.value;
53656
+ var logic = filter.logic;
53657
+
53658
+ for (var j = 0; j < that.columns.records.length; j++) {
53659
+ var column = that.columns.records[j];
53660
+ if (field === column.text && column.datafield) {
53661
+ field = column.datafield;
53662
+ }
53663
+ }
53664
+
53665
+ if (!filterGroups[field]) {
53666
+ var fg = new $.jqx.filter();
53667
+ filterGroups[field] = { filterGroup: fg, logic: logic || 'and' };
53668
+ }
53669
+ if (logic) {
53670
+ filterGroups[field].logic = logic || 'and';
53671
+ }
53672
+ var filterGroup = filterGroups[field].filterGroup;
53673
+
53674
+ var filterType;
53675
+ switch (type) {
53676
+ case 'string':
53677
+ filterType = filterGroup.createfilter('stringfilter', value, operator);
53678
+ break;
53679
+ case 'date':
53680
+ filterType = filterGroup.createfilter('datefilter', value, operator);
53681
+ break;
53682
+ case 'number':
53683
+ filterType = filterGroup.createfilter('numericfilter', value, operator);
53684
+ break;
53685
+ case 'boolean':
53686
+ case 'bool':
53687
+ filterType = filterGroup.createfilter('booleanfilter', value, operator);
53688
+ break;
53689
+ default:
53690
+ continue;
53691
+ }
53692
+
53693
+ filterGroup.addfilter(filterGroups[field].logic.toLowerCase(), filterType);
53694
+ }
53695
+
53696
+ return filterGroups;
53697
+ }
53698
+
53699
+ that.clearfilters();
53700
+ var filterGroups = createJqxFilterGroupFromJSON(json);
53701
+ for (var field in filterGroups) {
53702
+ if (filterGroups.hasOwnProperty(field)) {
53703
+ var group = filterGroups[field].filterGroup;
53704
+ that.addfilter(field, group, false);
53705
+ }
53706
+ }
53707
+ that.applyfilters();
53708
+ };
53709
+
53710
+
53711
+ var json = parseNaturalFilterQueryToJSON(query, columns);
53712
+
53713
+ if (json && json.length > 0) {
53714
+ applyFilters(json);
53715
+ }
53716
+ else if (aiKey) {
53717
+ fallbackToAI(query, columns, aiKey, applyFilters);
53718
+ }
53719
+ },
53720
+
53113
53721
  clearfilterrow: function (datafield) {
53114
53722
  this._disablefilterrow = true;
53115
53723
  if (!this.columns.records)
@@ -53515,6 +54123,24 @@ var saveAs = window.jqxSaveAs = saveAs
53515
54123
  if (!this._filterrowcache)
53516
54124
  this._filterrowcache = new Array();
53517
54125
 
54126
+ if (!this._idsCache) {
54127
+ this._idsCache = new Array();
54128
+ }
54129
+
54130
+ if (this._idsCache) {
54131
+ for (var i = 0; i < this._idsCache.length; i++) {
54132
+ var id = this._idsCache[i].id;
54133
+ var type = this._idsCache[i].type;
54134
+ switch (type) {
54135
+ case 'dropDownList':
54136
+ $("#" + id).jqxDropDownList('destroy');
54137
+ break;
54138
+ case 'dateTimeInput':
54139
+ $("#" + id).jqxDateTimeInput('destroy');
54140
+ break;
54141
+ }
54142
+ }
54143
+ }
53518
54144
  this._initcolumntypes();
53519
54145
 
53520
54146
  var usefromcache = false;
@@ -55688,6 +56314,37 @@ var saveAs = window.jqxSaveAs = saveAs
55688
56314
  if (!this._filterrowcache)
55689
56315
  this._filterrowcache = new Array();
55690
56316
 
56317
+ if (!this._idsCache) {
56318
+ this._idsCache = new Array();
56319
+ }
56320
+
56321
+ if (this._idsCache) {
56322
+ for (var i = 0; i < this._idsCache.length; i++) {
56323
+ var id = this._idsCache[i].id;
56324
+ var type = this._idsCache[i].type;
56325
+ switch (type) {
56326
+ case 'dropDownList':
56327
+ if ($("#" + id).length) {
56328
+ $("#" + id).jqxDropDownList('destroy');
56329
+ }
56330
+
56331
+
56332
+ if ($("#listBox" + id).length) {
56333
+ $("#listBox" + id).remove();
56334
+ }
56335
+ break;
56336
+ case 'dateTimeInput':
56337
+ if ($("#" + id).length) {
56338
+ $("#" + id).jqxDateTimeInput('destroy');
56339
+ }
56340
+ if ($("#calendar" + id).length) {
56341
+ $("#calendar" + id).remove();
56342
+ }
56343
+ break;
56344
+ }
56345
+ }
56346
+ }
56347
+
55691
56348
  this._initcolumntypes();
55692
56349
 
55693
56350
  var usefromcache = false;
@@ -56041,6 +56698,12 @@ var saveAs = window.jqxSaveAs = saveAs
56041
56698
  firstDayOfWeek: this.gridlocalization.firstDay, readonly: true, disabled: me.disabled, localization: localization, rtl: me.rtl, showFooter: true, formatString: columnrecord.cellsformat, selectionMode: columnrecord.filtertype, value: null, theme: this.theme, width: width - 9,
56042
56699
  height: this.theme === 'fluent' ? 20 : this.filterrowheight - 9
56043
56700
  });
56701
+
56702
+ this._idsCache.push({
56703
+ id: datetimeinput[0].id,
56704
+ type: 'dateTimeInput'
56705
+ });
56706
+
56044
56707
  if (columnrecord.createfilterwidget) {
56045
56708
  columnrecord.createfilterwidget(columnrecord, tablecolumn, datetimeinput);
56046
56709
  }
@@ -56069,6 +56732,7 @@ var saveAs = window.jqxSaveAs = saveAs
56069
56732
 
56070
56733
  var autoheight = false;
56071
56734
  var dropdownlist = $("<div></div>");
56735
+
56072
56736
  dropdownlist.css('margin', '4px');
56073
56737
  dropdownlist.css('margin-left', '5px');
56074
56738
  var datafield = columnrecord.datafield;
@@ -56080,6 +56744,12 @@ var saveAs = window.jqxSaveAs = saveAs
56080
56744
  autoheight = autoDropDownHeight;
56081
56745
  dropdownlist.appendTo(tablecolumn);
56082
56746
  dropdownlist.jqxDropDownList({ hint: false, placeHolder: me.gridlocalization.filterchoosestring, disabled: me.disabled, touchMode: me.touchmode, rtl: me.rtl, checkboxes: checkboxes, dropDownWidth: dropDownWidth, source: dataadapter.records, autoDropDownHeight: autoDropDownHeight, theme: this.theme, width: width - 9, height: this.filterrowheight - 9, displayMember: columnrecord.displayfield, valueMember: datafield });
56747
+
56748
+ this._idsCache.push({
56749
+ id: dropdownlist[0].id,
56750
+ type: 'dropDownList'
56751
+ });
56752
+
56083
56753
  dropdownlist.attr('tabindex', 5 + columnrecord.visibleindex);
56084
56754
  dropdownlist.attr('default-placeholder', true);
56085
56755
  if (columnrecord.createfilterwidget) {
@@ -56339,11 +57009,17 @@ var saveAs = window.jqxSaveAs = saveAs
56339
57009
  if (column.filtertype == "range") {
56340
57010
  var from = new Date(value);
56341
57011
  var to = new Date(value2);
57012
+
57013
+ if (column.cellsformat) {
57014
+ from = $.jqx.dataFormat.tryparsedate(value, null, column.cellsformat);
57015
+ to = $.jqx.dataFormat.tryparsedate(value2, null, column.cellsformat);
57016
+ }
57017
+
56342
57018
  if (isNaN(from)) {
56343
57019
  from = $.jqx.dataFormat.tryparsedate(value);
56344
57020
  }
56345
57021
  if (isNaN(to)) {
56346
- to = $.jqx.dataFormat.tryparsedate(value);
57022
+ to = $.jqx.dataFormat.tryparsedate(value2);
56347
57023
  }
56348
57024
 
56349
57025
  $(tablecolumn.children()[0]).jqxDateTimeInput('setRange', from, to);
@@ -57680,8 +58356,6 @@ var saveAs = window.jqxSaveAs = saveAs
57680
58356
  })(jqxBaseFramework);
57681
58357
  })();
57682
58358
 
57683
-
57684
-
57685
58359
 
57686
58360
 
57687
58361
  /***/ }),
@@ -59687,9 +60361,7 @@ var saveAs = window.jqxSaveAs = saveAs
59687
60361
  }
59688
60362
  });
59689
60363
  })(jqxBaseFramework);
59690
- })();
59691
-
59692
-
60364
+ })();
59693
60365
 
59694
60366
  /***/ }),
59695
60367
 
@@ -59965,6 +60637,7 @@ var saveAs = window.jqxSaveAs = saveAs
59965
60637
  deferreddatafields: null,
59966
60638
  localization: null,
59967
60639
  rtl: false,
60640
+ filternlpinput: '',
59968
60641
  menuitemsarray: [],
59969
60642
  charting: {
59970
60643
  appendTo: null,
@@ -59988,6 +60661,8 @@ var saveAs = window.jqxSaveAs = saveAs
59988
60661
  contextmenuwidth: 200,
59989
60662
  contextmenuheight: 'auto',
59990
60663
  contextmenuitemclick: null,
60664
+ aiUrl: "",
60665
+ aiKey: "",
59991
60666
  events:
59992
60667
  [
59993
60668
  /*0*/'initialized',
@@ -60076,6 +60751,32 @@ var saveAs = window.jqxSaveAs = saveAs
60076
60751
  that._undoRedo = [];
60077
60752
  that._undoRedoIndex = -1;
60078
60753
 
60754
+ if (that.filternlpinput) {
60755
+ var filternlpinput = document.querySelector(that.filternlpinput);
60756
+ if (filternlpinput) {
60757
+ filternlpinput.addEventListener('input', function () {
60758
+ if (that._filterTimer) {
60759
+ clearTimeout(that._filterTimer);
60760
+ }
60761
+
60762
+ that._aiCanFetch = false;
60763
+ that._filterTimer = setTimeout(function () {
60764
+ var value = filternlpinput.value.trim();
60765
+ that._aiCanFetch = true;
60766
+ that.filterByQuery(value);
60767
+ }, 800);
60768
+ });
60769
+ filternlpinput.addEventListener('change', function () {
60770
+ if (that._filterTimer) {
60771
+ clearTimeout(that._filterTimer);
60772
+ }
60773
+
60774
+ that._aiCanFetch = true;
60775
+ var value = filternlpinput.value.trim();
60776
+ that.filterByQuery(value);
60777
+ });
60778
+ }
60779
+ }
60079
60780
  if (that.cardview) {
60080
60781
  that.__rowsheight = that.rowsheight;
60081
60782
  that.rowsheight = that.cardheight;
@@ -60975,33 +61676,7 @@ var saveAs = window.jqxSaveAs = saveAs
60975
61676
  },
60976
61677
 
60977
61678
  _rendercelltexts: function () {
60978
- if ($.jqx["c" + "r" + "e" + "d" + "i" + "t" + "s"] !== "71208878-FCD1-4EC7-9249-BA0F153A5DE8") {
60979
- var t = "w" + "w" + "w" + "." + "j" + "q" + "w" + "i" + "d" + "g" + "e" + "t" + "s" + "." + "c" + "o" + "m";
60980
- if (location.hostname.indexOf(t.substring(4)) == -1) {
60981
- if (this._gridRenderElement) {
60982
- $(this._gridRenderElement).remove();
60983
- }
60984
- var h = String.fromCharCode(83, 80, 65, 78);
60985
- var m = String.fromCharCode(72, 84, 84, 80, 58, 47, 47);
60986
- var _gridRenderElement = document.createElement(h);
60987
- _gridRenderElement.id = $.jqx.utilities.createId();
60988
- _gridRenderElement.innerHTML = t;
60989
- _gridRenderElement.style.position = 'absolute';
60990
- _gridRenderElement.style.right = '5px';
60991
- _gridRenderElement.style.bottom = '5px';
60992
- _gridRenderElement.style.color = '#909090';
60993
- _gridRenderElement.style.cursor = 'pointer';
60994
- _gridRenderElement.style.zIndex = '999999';
60995
- _gridRenderElement.style.display = 'none';
60996
- _gridRenderElement.style.fontSize = '9px';
60997
-
60998
- _gridRenderElement.onmousedown = function () {
60999
- open(m + t);
61000
- }
61001
- this.content[0].appendChild(_gridRenderElement);
61002
- this._gridRenderElement = _gridRenderElement;
61003
- }
61004
- }
61679
+ //DEPRECATED
61005
61680
  },
61006
61681
 
61007
61682
  isTouchDevice: function () {
@@ -72972,6 +73647,343 @@ var saveAs = window.jqxSaveAs = saveAs
72972
73647
  delete this.call;
72973
73648
  },
72974
73649
 
73650
+ closeSidePanel: function () {
73651
+ var that = this;
73652
+
73653
+ if (that._sideDialogPanel) {
73654
+ that._sideDialogPanel.close();
73655
+ }
73656
+ },
73657
+
73658
+
73659
+ _createDialog: function (options) {
73660
+ var that = this;
73661
+ var dialog = document.createElement('div');
73662
+
73663
+ if (!options) {
73664
+ options = {
73665
+ width: 'auto',
73666
+ height: 'auto',
73667
+ moda: false,
73668
+ screenModal: false
73669
+ }
73670
+ }
73671
+
73672
+ if (options.modal !== undefined) {
73673
+ dialog.modal = options.modal;
73674
+ }
73675
+
73676
+ if (options.screenModal !== undefined) {
73677
+ dialog.screenModal = options.screenModal;
73678
+ }
73679
+
73680
+ dialog.setAttribute('animation', 'none');
73681
+ dialog.classList.add('jqx-window', 'jqx-grid-dialog');
73682
+ dialog.style.width = options.width === 'auto' ? options.width : options.width + 'px';
73683
+ dialog.style.height = options.height === 'auto' ? options.height : options.height + 'px';
73684
+
73685
+ if (options.width && typeof options.width === 'string') {
73686
+ dialog.style.width = options.width;
73687
+ }
73688
+
73689
+ if (options.height && typeof options.height === 'string') {
73690
+ dialog.style.height = options.height;
73691
+ }
73692
+
73693
+ dialog.style.left = '';
73694
+ dialog.style.top = '';
73695
+
73696
+ dialog.innerHTML =
73697
+ '<div class="jqx-container">' +
73698
+ '<div class="jqx-content-container" jqx-id="container">' +
73699
+ '<div id="headerSection" class="jqx-header-section">' +
73700
+ '<div class="jqx-header">' +
73701
+ '</div>' +
73702
+ '<div class="jqx-buttons-container">' +
73703
+ '<button title="Close" class="jqx-button jqx-element jqx-close-button" aria-label="Close" jqx-id="closeButton"></button>' +
73704
+ '</div>' +
73705
+ '</div>' +
73706
+ '<div class="jqx-content"><div class="jqx-content-container"></div></div>' +
73707
+ '<div class="jqx-footer">' +
73708
+ '<div class="jqx-stack-layout right spacing">' +
73709
+ '<jqx-button class="jqx-confirm-button item primary">Ok</jqx-button>' +
73710
+ '<jqx-button class="jqx-cancel-button item">Cancel</jqx-button>' +
73711
+ '</div>' +
73712
+ '</div>' +
73713
+ '</div>' +
73714
+ '</div>';
73715
+
73716
+
73717
+ if (dialog.querySelector && dialog.querySelector('.jqx-content')) {
73718
+ dialog.content = dialog.querySelector('.jqx-content').firstChild;
73719
+ }
73720
+
73721
+ dialog.footer = dialog.querySelector('.jqx-footer');
73722
+ dialog.header = dialog.querySelector('.jqx-header');
73723
+ dialog.btnConfirm = dialog.querySelector('.jqx-confirm-button');
73724
+ dialog.btnCancel = dialog.querySelector('.jqx-cancel-button');
73725
+ dialog.btnClose = dialog.querySelector('.jqx-close-button');
73726
+
73727
+ dialog.headerSection = dialog.querySelector('.jqx-header-section');
73728
+
73729
+
73730
+ var overlay = document.createElement('div');
73731
+
73732
+ overlay.classList.add('jqx-grid-dialog-overlay');
73733
+
73734
+ overlay.onclick = function () {
73735
+ if (dialog.overlayClick) {
73736
+ dialog.overlayClick();
73737
+ }
73738
+ return;
73739
+ }
73740
+
73741
+ dialog.overlay = overlay;
73742
+
73743
+ dialog.remove = function () {
73744
+ if (dialog.parentNode) {
73745
+ dialog.parentNode.removeChild(dialog);
73746
+ }
73747
+ };
73748
+
73749
+ dialog.close = function () {
73750
+ if (!dialog.classList.contains('open')) {
73751
+ return;
73752
+ }
73753
+
73754
+ dialog.classList.remove('open');
73755
+
73756
+ delete that._resizeHandling;
73757
+
73758
+ dialog.addEventListener('transitionend', dialog.remove);
73759
+ dialog.addEventListener('transitioncancel', dialog.remove);
73760
+
73761
+ if (dialog.modal) {
73762
+ if (dialog.overlay.parentNode) {
73763
+ dialog.overlay.parentNode.removeChild(dialog.overlay);
73764
+ }
73765
+ }
73766
+
73767
+ if (dialog.onClose) {
73768
+ dialog.onClose();
73769
+ }
73770
+ }
73771
+
73772
+
73773
+ dialog.open = function (left, top) {
73774
+ dialog.removeEventListener('transitionend', dialog.remove);
73775
+ dialog.removeEventListener('transitioncancel', dialog.remove);
73776
+
73777
+ if (that.isInShadowDOM) {
73778
+ var rootNode = that.getRootNode();
73779
+ rootNode.appendChild(dialog);
73780
+ }
73781
+ else {
73782
+ document.body.appendChild(dialog);
73783
+ }
73784
+
73785
+ that._resizeHandling = false;
73786
+
73787
+ if (undefined === left) {
73788
+ left = options.left;
73789
+ }
73790
+
73791
+ if (undefined === top) {
73792
+ top = options.top;
73793
+ }
73794
+
73795
+ requestAnimationFrame(function () {
73796
+ var element = dialog.querySelector('[bind="name"]');
73797
+
73798
+ if (element) {
73799
+ var input = element.querySelector('jqx-input');
73800
+ if (input) {
73801
+ if (that.editing.enabled) {
73802
+ input.focus();
73803
+ }
73804
+ }
73805
+ }
73806
+ var positionFromString = function (position, alignment) {
73807
+ var offset = that.host.offset();
73808
+
73809
+ if (position === 'center' && alignment === 'horizontal') {
73810
+ position = 'middle';
73811
+ }
73812
+
73813
+ switch (position) {
73814
+ case 'top':
73815
+ return offset.top;
73816
+ case 'bottom':
73817
+ return Math.max(offset.top, offset.top + that.offsetHeight - dialog.offsetHeight);
73818
+ case 'center':
73819
+ return Math.max(offset.top, offset.top + that.offsetHeight / 2 - dialog.offsetHeight / 2);
73820
+ case 'left':
73821
+ return offset.left;
73822
+ case 'middle':
73823
+ return offset.left + that.offsetWidth / 2 - dialog.offsetWidth / 2;
73824
+ case 'right':
73825
+ return offset.left + that.offsetWidth - dialog.offsetWidth;
73826
+ }
73827
+
73828
+ if (alignment === 'horizontal') {
73829
+ return parseInt(position) + offset.left;
73830
+ }
73831
+
73832
+ if (alignment === 'vertical') {
73833
+ return parseInt(position) + offset.top;
73834
+ }
73835
+
73836
+ if (typeof position === 'number') {
73837
+ return position;
73838
+ }
73839
+
73840
+ return parseInt(position);
73841
+ }
73842
+
73843
+ dialog.style.left = positionFromString(left, 'horizontal') + 'px';
73844
+ dialog.style.top = positionFromString(top, 'vertical') + 'px';
73845
+
73846
+ dialog.setPosition = function (position, isHorizontal) {
73847
+ if (isHorizontal) {
73848
+ dialog.style.left = positionFromString(position, 'horizontal') + 'px';
73849
+ }
73850
+ else {
73851
+ dialog.style.top = positionFromString(position, 'vertical') + 'px';
73852
+
73853
+ }
73854
+ }
73855
+
73856
+ if (left === 'center') {
73857
+ if (parseInt(dialog.style.left) < 0) {
73858
+ dialog.style.left = '5%';
73859
+ dialog.style.maxWidth = '90%';
73860
+ }
73861
+ }
73862
+
73863
+ if (left === 'screenMiddle') {
73864
+ dialog.style.left = 'calc(50% - ' + dialog.offsetWidth / 2 + 'px)';
73865
+ }
73866
+
73867
+ if (top === 'screenCenter') {
73868
+ dialog.style.top = 'calc(50% - ' + dialog.offsetHeight / 2 + 'px)';
73869
+ }
73870
+ });
73871
+
73872
+ if (dialog.modal) {
73873
+ if (dialog.screenModal) {
73874
+ if (that.isInShadowDOM) {
73875
+ var rootNode = that.getRootNode();
73876
+ rootNode.appendChild(dialog.overlay);
73877
+ }
73878
+ else {
73879
+ document.body.appendChild(dialog.overlay);
73880
+ }
73881
+ }
73882
+ else {
73883
+ that.appendChild(dialog.overlay);
73884
+ }
73885
+ }
73886
+
73887
+ if (dialog.onOpen) {
73888
+ dialog.onOpen();
73889
+ }
73890
+ }
73891
+
73892
+ return dialog;
73893
+ },
73894
+
73895
+
73896
+ showSidePanel: function (content, width, callback) {
73897
+ var that = this;
73898
+ var dialog;
73899
+
73900
+ if (!width) {
73901
+ width = 400;
73902
+ }
73903
+
73904
+ var oldPanelOpened = that._sideDialogPanel && that._sideDialogPanel.classList.contains('open');
73905
+ if (that._sideDialogPanel) {
73906
+ that._sideDialogPanel.remove();
73907
+ delete that._sideDialogPanel;
73908
+ }
73909
+
73910
+ if (!dialog) {
73911
+ dialog = that._createDialog();
73912
+ dialog.classList.add('jqx-grid-side-panel');
73913
+ if (oldPanelOpened) {
73914
+ dialog.style.transition = 'none';
73915
+ }
73916
+ that._sideDialogPanel = dialog;
73917
+ }
73918
+
73919
+ dialog.btnClose.onclick = function () {
73920
+ dialog.style.transition = '';
73921
+ dialog.close();
73922
+ }
73923
+ dialog.footer.classList.add('jqx-hidden');
73924
+ dialog.content.parentElement.style.height = '100%';
73925
+ dialog.content.parentElement.style.paddingTop = '0px';
73926
+ dialog.headerSection.style.background = 'var(--jqx-background)';
73927
+ dialog.headerSection.style.height = dialog.headerSection.style.minHeight = '30px';
73928
+
73929
+ dialog.btnConfirm.remove();
73930
+
73931
+ dialog.onOpen = function () {
73932
+ requestAnimationFrame(function () {
73933
+ var offset = that.host.offset()
73934
+ dialog.style.width = width + 'px';
73935
+ dialog.style.left = offset.left + that.element.offsetWidth - dialog.offsetWidth + 'px';
73936
+ dialog.style.top = offset.top + 'px';
73937
+ dialog.style.height = dialog.style.maxHeight = that.element.offsetHeight - 10 + 'px';
73938
+
73939
+ dialog.classList.add('open');
73940
+
73941
+ });
73942
+
73943
+ }
73944
+
73945
+ dialog.open();
73946
+ var panel = dialog.content;
73947
+ // Clear previous content
73948
+ panel.innerHTML = '';
73949
+
73950
+ // Handle raw HTML string
73951
+ if (typeof content === 'string') {
73952
+ panel.innerHTML = content; // Set raw HTML
73953
+ if (callback) {
73954
+ callback(panel);
73955
+ }
73956
+ return;
73957
+ }
73958
+
73959
+ // Handle HTMLElement or Template
73960
+ if (content instanceof HTMLElement) {
73961
+ var clonedNode = content.cloneNode(true);
73962
+ clonedNode.removeAttribute('id');
73963
+ clonedNode.style.display = 'block';
73964
+ panel.appendChild(clonedNode);
73965
+ if (callback) {
73966
+ setTimeout(function () {
73967
+ callback(panel);
73968
+ });
73969
+ }
73970
+ return;
73971
+ }
73972
+ if (content instanceof HTMLTemplateElement) {
73973
+ panel.appendChild(content.content.cloneNode(true));
73974
+ if (callback) {
73975
+ setTimeout(function () {
73976
+ callback(panel);
73977
+ });
73978
+ }
73979
+ return;
73980
+ }
73981
+
73982
+ // Fallback if nothing matches
73983
+ panel.innerHTML = '<p>Unsupported content type.</p>';
73984
+
73985
+ },
73986
+
72975
73987
  _initializeColumns: function () {
72976
73988
  var datafields = this.source ? this.source.datafields : null;
72977
73989
  if (datafields == null && this.source && this.source._source) {
@@ -73775,7 +74787,7 @@ var saveAs = window.jqxSaveAs = saveAs
73775
74787
  return true;
73776
74788
  }
73777
74789
 
73778
- self._keydown = true && !self.editcell;
74790
+ self._keydown = true && !self.editcell;
73779
74791
  var key = event.charCode ? event.charCode : event.keyCode ? event.keyCode : 0;
73780
74792
  if (key === 20) {
73781
74793
  if (!self._capsLock) {
@@ -74134,7 +75146,7 @@ var saveAs = window.jqxSaveAs = saveAs
74134
75146
 
74135
75147
  if (field.name === datafield) {
74136
75148
  if (field.type === 'bool' || field.type === 'boolean') {
74137
- value = true ? true : 0;
75149
+ value = true ? true : 0;
74138
75150
  }
74139
75151
 
74140
75152
  var column = that._getcolumnbydatafield(field.name);
@@ -77407,9 +78419,7 @@ var saveAs = window.jqxSaveAs = saveAs
77407
78419
  return this;
77408
78420
  }
77409
78421
  })(jqxBaseFramework);
77410
- })();
77411
-
77412
-
78422
+ })();
77413
78423
 
77414
78424
  /***/ }),
77415
78425
 
@@ -78448,9 +79458,7 @@ var saveAs = window.jqxSaveAs = saveAs
78448
79458
  }
78449
79459
  });
78450
79460
  })(jqxBaseFramework);
78451
- })();
78452
-
78453
-
79461
+ })();
78454
79462
 
78455
79463
  /***/ }),
78456
79464
 
@@ -81257,8 +82265,6 @@ var saveAs = window.jqxSaveAs = saveAs
81257
82265
  })(jqxBaseFramework);
81258
82266
  })();
81259
82267
 
81260
-
81261
-
81262
82268
 
81263
82269
 
81264
82270
  /***/ }),
@@ -82041,8 +83047,6 @@ var saveAs = window.jqxSaveAs = saveAs
82041
83047
  })(jqxBaseFramework);
82042
83048
  })();
82043
83049
 
82044
-
82045
-
82046
83050
 
82047
83051
 
82048
83052
  /***/ }),
@@ -82052,748 +83056,752 @@ var saveAs = window.jqxSaveAs = saveAs
82052
83056
 
82053
83057
  /* tslint:disable */
82054
83058
  /* eslint-disable */
82055
- (function(){
82056
- if (typeof document === 'undefined') {
82057
- return;
82058
- }
83059
+ (function () {
83060
+ if (typeof document === 'undefined') {
83061
+ return;
83062
+ }
82059
83063
 
82060
- (function ($) {
82061
- $.extend($.jqx._jqxGrid.prototype, {
82062
- savestate: function (options) {
82063
- if (this.loadingstate) {
82064
- return;
82065
- }
83064
+ (function ($) {
83065
+ $.extend($.jqx._jqxGrid.prototype, {
83066
+ savestate: function (options) {
83067
+ if (this.loadingstate) {
83068
+ return;
83069
+ }
82066
83070
 
82067
- var state = this.getstate();
83071
+ var state = this.getstate();
82068
83072
 
82069
- if (options !== undefined && !$.isEmptyObject(options)) {
82070
- if (options.indexOf('sort') == -1) {
82071
- delete state.sortcolumn;
82072
- delete state.sortdirection;
82073
- }
82074
- if (options.indexOf('pager') == -1) {
82075
- delete state.pagenum;
82076
- delete state.pagesizeoptions;
82077
- delete state.pagesize;
82078
- }
82079
- if (options.indexOf('selection') == -1) {
82080
- delete state.selectedcells;
82081
- delete state.selectedrowindexes;
82082
- delete state.selectedrowindex;
82083
- }
82084
- if (options.indexOf('grouping') == -1) {
82085
- delete state.groups;
82086
- }
82087
- if (options.indexOf('filter') == -1) {
82088
- delete state.filters;
82089
- }
82090
- $.each(this.columns.records, function (index) {
82091
- var column_state = state.columns[this.datafield];
82092
- if (options.indexOf('hidden_columns') == -1) {
82093
- delete column_state.hidden;
83073
+ if (options !== undefined && !$.isEmptyObject(options)) {
83074
+ if (options.indexOf('sort') == -1) {
83075
+ delete state.sortcolumn;
83076
+ delete state.sortdirection;
82094
83077
  }
82095
- if (options.indexOf('reorder') == -1) {
82096
- delete column_state.index;
83078
+ if (options.indexOf('pager') == -1) {
83079
+ delete state.pagenum;
83080
+ delete state.pagesizeoptions;
83081
+ delete state.pagesize;
82097
83082
  }
82098
- if (options.indexOf('columns_width') == -1) {
82099
- delete column_state.width;
83083
+ if (options.indexOf('selection') == -1) {
83084
+ delete state.selectedcells;
83085
+ delete state.selectedrowindexes;
83086
+ delete state.selectedrowindex;
82100
83087
  }
82101
- if (options.indexOf('columns_text') == -1) {
82102
- delete column_state.text;
83088
+ if (options.indexOf('grouping') == -1) {
83089
+ delete state.groups;
82103
83090
  }
82104
- if (options.indexOf('alignment') == -1) {
82105
- delete column_state.align;
82106
- delete column_state.cellsalign;
83091
+ if (options.indexOf('filter') == -1) {
83092
+ delete state.filters;
82107
83093
  }
82108
- });
82109
- }
82110
-
82111
- if (window.localStorage) {
82112
- window.localStorage["jqxGrid" + this.element.id] = this._stringify(state);
82113
- }
82114
- this._savedstate = state;
82115
- return state;
82116
- },
83094
+ $.each(this.columns.records, function (index) {
83095
+ var column_state = state.columns[this.datafield];
83096
+ if (options.indexOf('hidden_columns') == -1) {
83097
+ delete column_state.hidden;
83098
+ }
83099
+ if (options.indexOf('reorder') == -1) {
83100
+ delete column_state.index;
83101
+ }
83102
+ if (options.indexOf('columns_width') == -1) {
83103
+ delete column_state.width;
83104
+ }
83105
+ if (options.indexOf('columns_text') == -1) {
83106
+ delete column_state.text;
83107
+ }
83108
+ if (options.indexOf('alignment') == -1) {
83109
+ delete column_state.align;
83110
+ delete column_state.cellsalign;
83111
+ }
83112
+ });
83113
+ }
82117
83114
 
82118
- loadstate: function (gridstate, binding) {
82119
- var state = "";
82120
- if (gridstate != undefined && gridstate.width != undefined) {
82121
- state = gridstate;
82122
- }
82123
- else if (window.localStorage) {
82124
- var hasState = window.localStorage["jqxGrid" + this.element.id];
82125
- if (hasState) {
82126
- var state = $.parseJSON(window.localStorage["jqxGrid" + this.element.id]);
83115
+ if (window.localStorage) {
83116
+ window.localStorage["jqxGrid" + this.element.id] = this._stringify(state);
82127
83117
  }
82128
- }
82129
- else if (this._savedstate) {
82130
- var state = this._savedstate;
82131
- }
82132
- if (state != null && state !== "") {
82133
- if (this.virtualmode || (this.source._source.url && this.source._source.url != "")) {
82134
- this.source.beginUpdate();
83118
+ this._savedstate = state;
83119
+ return state;
83120
+ },
83121
+
83122
+ loadstate: function (gridstate, binding) {
83123
+ var state = "";
83124
+ if (gridstate != undefined && gridstate.width != undefined) {
83125
+ state = gridstate;
82135
83126
  }
82136
- var data = state;
82137
- if (data.width !== undefined) {
82138
- this.width = data.width;
83127
+ else if (window.localStorage) {
83128
+ var hasState = window.localStorage["jqxGrid" + this.element.id];
83129
+ if (hasState) {
83130
+ var state = $.parseJSON(window.localStorage["jqxGrid" + this.element.id]);
83131
+ }
82139
83132
  }
82140
- if (data.height !== undefined) {
82141
- this.height = data.height;
83133
+ else if (this._savedstate) {
83134
+ var state = this._savedstate;
82142
83135
  }
82143
- if (this.pageable) {
82144
- if (data.pagesize != undefined) {
82145
- this.pagesize = data.pagesize;
82146
- this.dataview.pagesize = data.pagesize;
83136
+ if (state != null && state !== "") {
83137
+ if (this.virtualmode || (this.source._source.url && this.source._source.url != "")) {
83138
+ this.source.beginUpdate();
82147
83139
  }
82148
- if (data.pagenum != undefined) {
82149
- this.dataview.pagenum = data.pagenum;
83140
+ var data = state;
83141
+ if (data.width !== undefined) {
83142
+ this.width = data.width;
82150
83143
  }
82151
- if (data.pagesizeoptions != undefined) {
82152
- this.pagesizeoptions = data.pagesizeoptions;
83144
+ if (data.height !== undefined) {
83145
+ this.height = data.height;
82153
83146
  }
82154
- if (this.pagesizeoptions) {
82155
- var selectedindex = 0;
83147
+ if (this.pageable) {
83148
+ if (data.pagesize != undefined) {
83149
+ this.pagesize = data.pagesize;
83150
+ this.dataview.pagesize = data.pagesize;
83151
+ }
83152
+ if (data.pagenum != undefined) {
83153
+ this.dataview.pagenum = data.pagenum;
83154
+ }
83155
+ if (data.pagesizeoptions != undefined) {
83156
+ this.pagesizeoptions = data.pagesizeoptions;
83157
+ }
83158
+ if (this.pagesizeoptions) {
83159
+ var selectedindex = 0;
82156
83160
 
82157
- for (var i = 0; i < this.pagesizeoptions.length; i++) {
82158
- if (this.pagesize >= this.pagesizeoptions[i]) {
82159
- selectedindex = i;
83161
+ for (var i = 0; i < this.pagesizeoptions.length; i++) {
83162
+ if (this.pagesize >= this.pagesizeoptions[i]) {
83163
+ selectedindex = i;
83164
+ }
83165
+ }
83166
+ if (this.pagershowrowscombo) {
83167
+ this.pagershowrowscombo.jqxDropDownList({ selectedIndex: selectedindex });
82160
83168
  }
82161
- }
82162
- if (this.pagershowrowscombo) {
82163
- this.pagershowrowscombo.jqxDropDownList({ selectedIndex: selectedindex });
82164
83169
  }
82165
83170
  }
82166
- }
82167
- if (this.sortable) {
82168
- if (this._loading) this._loading = false;
82169
- if (data.sortdirection) {
82170
- if (data.sortdirection.ascending || data.sortdirection.descending) {
82171
- this.dataview.sortfield = data.sortcolumn;
82172
- var direction = data.sortdirection.ascending ? 'asc' : 'desc';
82173
- this.dataview.sortfielddirection = direction;
82174
- this.source.sortcolumn = data.sortcolumn;
82175
- this.source.sortdirection = direction;
82176
- this.sortby(data.sortcolumn, direction);
83171
+ if (this.sortable) {
83172
+ if (this._loading) this._loading = false;
83173
+ if (data.sortdirection) {
83174
+ if (data.sortdirection.ascending || data.sortdirection.descending) {
83175
+ this.dataview.sortfield = data.sortcolumn;
83176
+ var direction = data.sortdirection.ascending ? 'asc' : 'desc';
83177
+ this.dataview.sortfielddirection = direction;
83178
+ this.source.sortcolumn = data.sortcolumn;
83179
+ this.source.sortdirection = direction;
83180
+ this.sortby(data.sortcolumn, direction);
83181
+ }
83182
+ }
83183
+ else if (this.dataview.sortfield != null && (this.dataview.sortfielddirection == 'asc' || this.dataview.sortfielddirection == 'desc')) {
83184
+ this.sortby(this.dataview.sortfield, null);
82177
83185
  }
82178
- }
82179
- else if (this.dataview.sortfield != null && (this.dataview.sortfielddirection == 'asc' || this.dataview.sortfielddirection == 'desc')) {
82180
- this.sortby(this.dataview.sortfield, null);
82181
- }
82182
83186
 
82183
- if (data.sortcolumns) {
82184
- for (var i = 0; i < data.sortcolumns.length; i++) {
82185
- var sortcolumn = data.sortcolumns[i];
83187
+ if (data.sortcolumns) {
83188
+ for (var i = 0; i < data.sortcolumns.length; i++) {
83189
+ var sortcolumn = data.sortcolumns[i];
82186
83190
 
82187
- this.sortby(sortcolumn.dataField, sortcolumn.ascending);
83191
+ this.sortby(sortcolumn.dataField, sortcolumn.ascending);
83192
+ }
82188
83193
  }
82189
83194
  }
82190
- }
82191
- if (this.groupable && data.groups) {
82192
- this.dataview.groups = data.groups;
82193
- this.groups = data.groups;
82194
- }
82195
- this.loadingstate = true;
82196
- if (this.virtualsizeinfo) {
82197
- this._loadselectionandcolumnwidths(data);
82198
- }
82199
- this.loadingstate = false;
82200
- if (this.virtualmode || (this.source._source.url && this.source._source.url != "")) {
82201
- if (binding == true) {
82202
- this.source.endUpdate(false);
83195
+ if (this.groupable && data.groups) {
83196
+ this.dataview.groups = data.groups;
83197
+ this.groups = data.groups;
82203
83198
  }
82204
- else {
82205
- this.source.endUpdate(false);
82206
- if (this.virtualmode || this.source._source.filter || this.source._source.sort) {
82207
- this.updatebounddata("state");
83199
+ this.loadingstate = true;
83200
+ if (this.virtualsizeinfo) {
83201
+ this._loadselectionandcolumnwidths(data);
83202
+ }
83203
+ this.loadingstate = false;
83204
+ if (this.virtualmode || (this.source._source.url && this.source._source.url != "")) {
83205
+ if (binding == true) {
83206
+ this.source.endUpdate(false);
83207
+ }
83208
+ else {
83209
+ this.source.endUpdate(false);
83210
+ if (this.virtualmode || this.source._source.filter || this.source._source.sort) {
83211
+ this.updatebounddata("state");
83212
+ }
82208
83213
  }
82209
83214
  }
82210
83215
  }
82211
- }
82212
- },
83216
+ },
82213
83217
 
82214
- _loadselectionandcolumnwidths: function (gridstate) {
82215
- this.loadingstate = true;
82216
- var state = "";
83218
+ _loadselectionandcolumnwidths: function (gridstate) {
83219
+ this.loadingstate = true;
83220
+ var state = "";
82217
83221
 
82218
- if (gridstate != undefined && gridstate.width != undefined) {
82219
- state = gridstate;
82220
- }
82221
- else if (window.localStorage) {
82222
- if (window.localStorage["jqxGrid" + this.element.id]) {
82223
- var state = $.parseJSON(window.localStorage["jqxGrid" + this.element.id]);
83222
+ if (gridstate != undefined && gridstate.width != undefined) {
83223
+ state = gridstate;
82224
83224
  }
82225
- }
82226
- else if (this._savedstate) {
82227
- var state = this._savedstate;
82228
- }
82229
- if (state != null && state != "") {
82230
- var _tmploading = this._loading;
82231
- this._loading = false;
83225
+ else if (window.localStorage) {
83226
+ if (window.localStorage["jqxGrid" + this.element.id]) {
83227
+ var state = $.parseJSON(window.localStorage["jqxGrid" + this.element.id]);
83228
+ }
83229
+ }
83230
+ else if (this._savedstate) {
83231
+ var state = this._savedstate;
83232
+ }
83233
+ if (state != null && state != "") {
83234
+ var _tmploading = this._loading;
83235
+ this._loading = false;
82232
83236
 
82233
- var data = state;
82234
- var me = this;
82235
- var requiresRender = false;
82236
- var columnstomove = [];
82237
- columnstomove.length = 0;
82238
- var columnstomoveindexes = [];
82239
- $.each(this.columns.records, function (index) {
82240
- var savedColumn = data.columns[this.datafield];
82241
- if (savedColumn != undefined) {
82242
- if (this.text != savedColumn.text) {
82243
- requiresRender = true;
82244
- }
82245
- if (this.hidden != savedColumn.hidden) {
82246
- requiresRender = true;
82247
- }
83237
+ var data = state;
83238
+ var me = this;
83239
+ var requiresRender = false;
83240
+ var columnstomove = [];
83241
+ columnstomove.length = 0;
83242
+ var columnstomoveindexes = [];
83243
+ $.each(this.columns.records, function (index) {
83244
+ var savedColumn = data.columns[this.datafield];
83245
+ if (savedColumn != undefined) {
83246
+ if (this.text != savedColumn.text) {
83247
+ requiresRender = true;
83248
+ }
83249
+ if (this.hidden != savedColumn.hidden) {
83250
+ requiresRender = true;
83251
+ }
82248
83252
 
82249
- if (savedColumn.width !== undefined) {
82250
- this.width = savedColumn.width;
82251
- if (this._width) {
82252
- this._width = null;
83253
+ if (savedColumn.width !== undefined) {
83254
+ this.width = savedColumn.width;
83255
+ if (this._width) {
83256
+ this._width = null;
83257
+ }
83258
+ if (this._percentagewidth) {
83259
+ this._percentagewidth = null;
83260
+ }
82253
83261
  }
82254
- if (this._percentagewidth) {
82255
- this._percentagewidth = null;
83262
+ if (savedColumn.hidden !== undefined) {
83263
+ this.hidden = savedColumn.hidden;
82256
83264
  }
82257
- }
82258
- if (savedColumn.hidden !== undefined) {
82259
- this.hidden = savedColumn.hidden;
82260
- }
82261
- if (savedColumn.pinned !== undefined) {
82262
- this.pinned = savedColumn.pinned;
82263
- }
82264
- if (savedColumn.groupable !== undefined) {
82265
- this.groupable = savedColumn.groupable;
82266
- }
82267
- if (savedColumn.resizable !== undefined) {
82268
- this.resizable = savedColumn.resizable;
82269
- }
82270
- this.draggable = savedColumn.draggable;
82271
- if (savedColumn.text !== undefined) {
82272
- this.text = savedColumn.text;
82273
- }
82274
- if (savedColumn.align !== undefined) {
82275
- this.align = savedColumn.align;
82276
- }
82277
- if (savedColumn.cellsalign !== undefined) {
82278
- this.cellsalign = savedColumn.cellsalign;
82279
- }
82280
- if (me._columns) {
82281
- for (var j = 0; j < me._columns.length; j++) {
82282
- if (me._columns[j].datafield == this.datafield) {
82283
- if (savedColumn.hidden !== undefined) {
82284
- me._columns[j]["hidden"] = savedColumn.hidden;
82285
- }
82286
- if (savedColumn.width !== undefined) {
82287
- me._columns[j]["width"] = savedColumn.width;
83265
+ if (savedColumn.pinned !== undefined) {
83266
+ this.pinned = savedColumn.pinned;
83267
+ }
83268
+ if (savedColumn.groupable !== undefined) {
83269
+ this.groupable = savedColumn.groupable;
83270
+ }
83271
+ if (savedColumn.resizable !== undefined) {
83272
+ this.resizable = savedColumn.resizable;
83273
+ }
83274
+ this.draggable = savedColumn.draggable;
83275
+ if (savedColumn.text !== undefined) {
83276
+ this.text = savedColumn.text;
83277
+ }
83278
+ if (savedColumn.align !== undefined) {
83279
+ this.align = savedColumn.align;
83280
+ }
83281
+ if (savedColumn.cellsalign !== undefined) {
83282
+ this.cellsalign = savedColumn.cellsalign;
83283
+ }
83284
+ if (me._columns) {
83285
+ for (var j = 0; j < me._columns.length; j++) {
83286
+ if (me._columns[j].datafield == this.datafield) {
83287
+ if (savedColumn.hidden !== undefined) {
83288
+ me._columns[j]["hidden"] = savedColumn.hidden;
83289
+ }
83290
+ if (savedColumn.width !== undefined) {
83291
+ me._columns[j]["width"] = savedColumn.width;
83292
+ }
82288
83293
  }
82289
83294
  }
82290
83295
  }
82291
- }
82292
83296
 
82293
- if (savedColumn.index !== undefined) {
82294
- columnstomove[this.datafield] = savedColumn.index;
82295
- columnstomove.length++;
83297
+ if (savedColumn.index !== undefined) {
83298
+ columnstomove[this.datafield] = savedColumn.index;
83299
+ columnstomove.length++;
83300
+ }
82296
83301
  }
82297
- }
82298
- });
83302
+ });
82299
83303
 
82300
- if (columnstomove.length > 0) {
82301
- if (this.setcolumnindex) {
82302
- var groupingcolumnscount = this.rowdetails ? 1 : 0;
82303
- groupingcolumnscount += this.groupable ? this.groups.length : 0;
83304
+ if (columnstomove.length > 0) {
83305
+ if (this.setcolumnindex) {
83306
+ var groupingcolumnscount = this.rowdetails ? 1 : 0;
83307
+ groupingcolumnscount += this.groupable ? this.groups.length : 0;
82304
83308
 
82305
- var columnsRecords = new Array();
82306
- for (var i = 0; i < this.columns.records.length; i++) {
82307
- columnsRecords.push(this.columns.records[i]);
82308
- }
83309
+ var columnsRecords = new Array();
83310
+ for (var i = 0; i < this.columns.records.length; i++) {
83311
+ columnsRecords.push(this.columns.records[i]);
83312
+ }
82309
83313
 
82310
- var groupedcolumns = 0;
82311
- var moveOrder = new Array();
82312
- for (var i = 0; i < columnsRecords.length; i++) {
82313
- var column = columnsRecords[i];
82314
- var index = columnstomove[column.datafield];
83314
+ var groupedcolumns = 0;
83315
+ var moveOrder = new Array();
83316
+ for (var i = 0; i < columnsRecords.length; i++) {
83317
+ var column = columnsRecords[i];
83318
+ var index = columnstomove[column.datafield];
82315
83319
 
82316
- if (this.groupable && column.grouped) {
82317
- groupedcolumns++;
82318
- continue;
82319
- }
82320
- if (i == 0 && this.rowdetails) {
82321
- groupedcolumns++;
82322
- continue;
82323
- }
83320
+ if (this.groupable && column.grouped) {
83321
+ groupedcolumns++;
83322
+ continue;
83323
+ }
83324
+ if (i == 0 && this.rowdetails) {
83325
+ groupedcolumns++;
83326
+ continue;
83327
+ }
82324
83328
 
82325
- if (i !== index || this.groupable || this.rowdetails) {
82326
- var colindex = groupedcolumns + index;
82327
- moveOrder.push({ column: column, key: colindex });
83329
+ if (i !== index || this.groupable || this.rowdetails) {
83330
+ var colindex = groupedcolumns + index;
83331
+ moveOrder.push({ column: column, key: colindex });
83332
+ }
82328
83333
  }
82329
- }
82330
83334
 
82331
- moveOrder.sort(function (value1, value2) {
82332
- if (value1.key < value2.key) { return -1; }
82333
- if (value1.key > value2.key) { return 1; }
82334
- return 0;
82335
- });
82336
- moveOrder.reverse();
83335
+ moveOrder.sort(function (value1, value2) {
83336
+ if (value1.key < value2.key) { return -1; }
83337
+ if (value1.key > value2.key) { return 1; }
83338
+ return 0;
83339
+ });
83340
+ moveOrder.reverse();
82337
83341
 
82338
- $.each(moveOrder, function (index, value) {
82339
- var columnIndex = this.key
82340
- me.setcolumnindex(this.column.datafield, columnIndex, false);
82341
- });
82342
- }
82343
- this.prerenderrequired = true;
82344
- if (this.groupable) {
82345
- this._refreshdataview();
82346
- }
82347
- this.rendergridcontent(true);
83342
+ $.each(moveOrder, function (index, value) {
83343
+ var columnIndex = this.key
83344
+ me.setcolumnindex(this.column.datafield, columnIndex, false);
83345
+ });
83346
+ }
83347
+ this.prerenderrequired = true;
83348
+ if (this.groupable) {
83349
+ this._refreshdataview();
83350
+ }
83351
+ this.rendergridcontent(true);
82348
83352
 
82349
- if (this._updatefilterrowui && this.filterable && this.showfilterrow) {
82350
- this._updatefilterrowui();
82351
- }
82352
- this._renderrows(this.virtualsizeinfo);
82353
- if (this.groupable && data.groups !== undefined) {
82354
- var datafields = this.source ? this.source.datafields : null;
82355
- if (datafields == null && this.source && this.source._source) {
82356
- datafields = this.source._source.datafields;
82357
- var self = this;
83353
+ if (this._updatefilterrowui && this.filterable && this.showfilterrow) {
83354
+ this._updatefilterrowui();
83355
+ }
83356
+ this._renderrows(this.virtualsizeinfo);
83357
+ if (this.groupable && data.groups !== undefined) {
83358
+ var datafields = this.source ? this.source.datafields : null;
83359
+ if (datafields == null && this.source && this.source._source) {
83360
+ datafields = this.source._source.datafields;
83361
+ var self = this;
82358
83362
 
82359
- if (self._columns) {
82360
- self._columns.sort(function (value1, value2) {
82361
- var index1;
82362
- var index2;
82363
- for (var i = 0; i < self.columns.records.length; i++) {
82364
- if (self.columns.records[i].datafield === value1.datafield) {
82365
- index1 = i;
83363
+ if (self._columns) {
83364
+ self._columns.sort(function (value1, value2) {
83365
+ var index1;
83366
+ var index2;
83367
+ for (var i = 0; i < self.columns.records.length; i++) {
83368
+ if (self.columns.records[i].datafield === value1.datafield) {
83369
+ index1 = i;
83370
+ }
83371
+ if (self.columns.records[i].datafield === value2.datafield) {
83372
+ index2 = i;
83373
+ }
82366
83374
  }
82367
- if (self.columns.records[i].datafield === value2.datafield) {
82368
- index2 = i;
83375
+ if (index1 < index2) {
83376
+ return -1;
82369
83377
  }
82370
- }
82371
- if (index1 < index2) {
82372
- return -1;
82373
- }
82374
- if (index1 > index2) {
82375
- return 1;
82376
- }
82377
- return 0;
82378
- });
83378
+ if (index1 > index2) {
83379
+ return 1;
83380
+ }
83381
+ return 0;
83382
+ });
83383
+ }
82379
83384
  }
82380
83385
  }
82381
83386
  }
82382
- }
82383
83387
 
82384
- if (this.filterable && data.filters !== undefined) {
82385
- if (this.clearfilters) {
82386
- this._loading = false;
82387
- this.clearfilters(false);
82388
- }
82389
- var oldcolumn = "";
82390
- var filtergroup = new $.jqx.filter();
82391
- for (var i = 0; i < data.filters.filterscount; i++) {
82392
- var condition = data.filters['filtercondition' + i];
82393
- var datafield = data.filters['filterdatafield' + i];
82394
- var column = this.getcolumn(datafield);
82395
- if (datafield != oldcolumn) {
82396
- filtergroup = new $.jqx.filter();
82397
- }
82398
-
82399
- oldcolumn = datafield;
82400
- if (column && column.filterable) {
82401
- var value = data.filters['filtervalue' + i];
82402
- var operator = data.filters['filteroperator' + i];
82403
- var filtertype = data.filters['filtertype' + i];
82404
- if (filtertype == "datefilter") {
82405
- var filter = filtergroup.createfilter(filtertype, value, condition, null, column.cellsformat, this.gridlocalization);
82406
- }
82407
- else {
82408
- var filter = filtergroup.createfilter(filtertype, value, condition);
82409
- }
82410
- filtergroup.addfilter(operator, filter);
82411
-
82412
- if (this.showfilterrow) {
82413
- var widget = column._filterwidget;
82414
- var tablecolumn = column._filterwidget.parent();
82415
- if (widget != null) {
82416
- switch (column.filtertype) {
82417
- case 'number':
82418
- tablecolumn.find('input').val(value);
82419
- if (this.host.jqxDropDownList) {
82420
- var conditions = filtergroup.getoperatorsbyfiltertype('numericfilter');
82421
- widget.find('.filter').jqxDropDownList('selectIndex', conditions.indexOf(condition));
82422
- }
82423
- break;
82424
- case 'date':
82425
- if (this.host.jqxDateTimeInput) {
82426
- $(tablecolumn.children()[0]).jqxDateTimeInput('setDate', value);
82427
- }
82428
- else widget.val(value);
82429
- break;
82430
- case 'range':
82431
- if (this.host.jqxDateTimeInput) {
82432
- var value2 = data.filters['filtervalue' + (i + 1)];
82433
- var filtertype = data.filters['filtertype' + i];
82434
- var filter = filtergroup.createfilter(filtertype, value2, "LESS_THAN_OR_EQUAL");
82435
- filtergroup.addfilter(operator, filter);
82436
-
82437
- var from = new Date(value);
82438
- var to = new Date(value2);
82439
- if (isNaN(from)) {
82440
- from = $.jqx.dataFormat.tryparsedate(value);
83388
+ if (this.filterable && data.filters !== undefined) {
83389
+ if (this.clearfilters) {
83390
+ this._loading = false;
83391
+ this.clearfilters(false);
83392
+ }
83393
+ var oldcolumn = "";
83394
+ var filtergroup = new $.jqx.filter();
83395
+ for (var i = 0; i < data.filters.filterscount; i++) {
83396
+ var condition = data.filters['filtercondition' + i];
83397
+ var datafield = data.filters['filterdatafield' + i];
83398
+ var column = this.getcolumn(datafield);
83399
+ if (datafield != oldcolumn) {
83400
+ filtergroup = new $.jqx.filter();
83401
+ }
83402
+
83403
+ oldcolumn = datafield;
83404
+ if (column && column.filterable) {
83405
+ var value = data.filters['filtervalue' + i];
83406
+ var operator = data.filters['filteroperator' + i];
83407
+ var filtertype = data.filters['filtertype' + i];
83408
+ if (filtertype == "datefilter") {
83409
+ var filter = filtergroup.createfilter(filtertype, value, condition, null, column.cellsformat, this.gridlocalization);
83410
+ }
83411
+ else {
83412
+ var filter = filtergroup.createfilter(filtertype, value, condition);
83413
+ }
83414
+ filtergroup.addfilter(operator, filter);
83415
+
83416
+ if (this.showfilterrow) {
83417
+ var widget = column._filterwidget;
83418
+ var tablecolumn = column._filterwidget.parent();
83419
+ if (widget != null) {
83420
+ switch (column.filtertype) {
83421
+ case 'number':
83422
+ tablecolumn.find('input').val(value);
83423
+ if (this.host.jqxDropDownList) {
83424
+ var conditions = filtergroup.getoperatorsbyfiltertype('numericfilter');
83425
+ widget.find('.filter').jqxDropDownList('selectIndex', conditions.indexOf(condition));
82441
83426
  }
82442
- if (isNaN(to)) {
82443
- to = $.jqx.dataFormat.tryparsedate(value);
83427
+ break;
83428
+ case 'date':
83429
+ if (this.host.jqxDateTimeInput) {
83430
+ $(tablecolumn.children()[0]).jqxDateTimeInput('setDate', value);
82444
83431
  }
83432
+ else widget.val(value);
83433
+ break;
83434
+ case 'range':
83435
+ if (this.host.jqxDateTimeInput) {
83436
+ var value2 = data.filters['filtervalue' + (i + 1)];
83437
+ var filtertype = data.filters['filtertype' + i];
83438
+ var filter = filtergroup.createfilter(filtertype, value2, "LESS_THAN_OR_EQUAL");
83439
+ filtergroup.addfilter(operator, filter);
83440
+
83441
+ var from = new Date(value);
83442
+ var to = new Date(value2);
83443
+
83444
+ if (column.cellsformat) {
83445
+ from = $.jqx.dataFormat.tryparsedate(value, null, column.cellsformat);
83446
+ to = $.jqx.dataFormat.tryparsedate(value2, null, column.cellsformat);
83447
+ }
82445
83448
 
82446
- $(tablecolumn.children()[0]).jqxDateTimeInput('setRange', from, to);
82447
- i++;
82448
- }
82449
- else widget.val(value);
82450
- break;
82451
- case 'textbox':
82452
- case 'default':
82453
- widget.val(value);
82454
- me["_oldWriteText" + widget[0].id] = value;
82455
- break;
82456
- case 'list':
82457
- if (this.host.jqxDropDownList) {
82458
- var items = $(tablecolumn.children()[0]).jqxDropDownList('getItems');
82459
- var index = -1;
82460
- $.each(items, function (i) {
82461
- if (this.value == value) {
82462
- index = i;
82463
- return false;
83449
+ if (isNaN(from)) {
83450
+ from = $.jqx.dataFormat.tryparsedate(value);
83451
+ }
83452
+ if (isNaN(to)) {
83453
+ to = $.jqx.dataFormat.tryparsedate(value2);
82464
83454
  }
82465
- });
82466
83455
 
82467
- $(tablecolumn.children()[0]).jqxDropDownList('selectIndex', index);
82468
- }
82469
- else widget.val(value);
82470
- break;
82471
- case 'checkedlist':
82472
- if (!this.host.jqxDropDownList) {
82473
- widget.val(value);
82474
- }
82475
- break;
82476
- case 'bool':
82477
- case 'boolean':
82478
- if (!this.host.jqxCheckBox) {
83456
+ $(tablecolumn.children()[0]).jqxDateTimeInput('setRange', from, to);
83457
+ i++;
83458
+ }
83459
+ else widget.val(value);
83460
+ break;
83461
+ case 'textbox':
83462
+ case 'default':
82479
83463
  widget.val(value);
82480
- }
82481
- else $(tablecolumn.children()[0]).jqxCheckBox({ checked: value });
82482
- break;
83464
+ me["_oldWriteText" + widget[0].id] = value;
83465
+ break;
83466
+ case 'list':
83467
+ if (this.host.jqxDropDownList) {
83468
+ var items = $(tablecolumn.children()[0]).jqxDropDownList('getItems');
83469
+ var index = -1;
83470
+ $.each(items, function (i) {
83471
+ if (this.value == value) {
83472
+ index = i;
83473
+ return false;
83474
+ }
83475
+ });
83476
+
83477
+ $(tablecolumn.children()[0]).jqxDropDownList('selectIndex', index);
83478
+ }
83479
+ else widget.val(value);
83480
+ break;
83481
+ case 'checkedlist':
83482
+ if (!this.host.jqxDropDownList) {
83483
+ widget.val(value);
83484
+ }
83485
+ break;
83486
+ case 'bool':
83487
+ case 'boolean':
83488
+ if (!this.host.jqxCheckBox) {
83489
+ widget.val(value);
83490
+ }
83491
+ else $(tablecolumn.children()[0]).jqxCheckBox({ checked: value });
83492
+ break;
83493
+ }
82483
83494
  }
82484
83495
  }
83496
+ this.addfilter(datafield, filtergroup);
82485
83497
  }
82486
- this.addfilter(datafield, filtergroup);
82487
83498
  }
82488
- }
82489
- if (data.filters && data.filters.filterscount > 0) {
82490
- this.applyfilters();
82491
- if (this.showfilterrow) {
82492
- $.each(this.columns.records, function () {
82493
- if (this.filtertype == 'checkedlist' && this.filterable) {
82494
- if (me.host.jqxDropDownList) {
82495
- var column = this;
82496
- var dropdownlist = column._filterwidget;
82497
- var dropdownitems = dropdownlist.jqxDropDownList('getItems');
82498
- var listbox = dropdownlist.jqxDropDownList('listBox');
82499
- listbox.checkAll(false);
82500
- if (column.filter) {
82501
- listbox.uncheckAll(false);
82502
- var filters = column.filter.getfilters();
82503
-
82504
- for (var i = 0; i < listbox.items.length; i++) {
82505
- var label = listbox.items[i].label;
82506
- $.each(filters, function () {
82507
- if (this.condition == "NOT_EQUAL") return true;
82508
- if (label == this.value) {
82509
- listbox.checkIndex(i, false, false);
82510
- }
82511
- });
82512
- }
82513
- listbox._updateCheckedItems();
82514
- var checkedItemsLength = listbox.getCheckedItems().length;
82515
- if (listbox.items.length != checkedItemsLength && checkedItemsLength > 0) {
82516
- listbox.host.jqxListBox('indeterminateIndex', 0, true, false);
83499
+ if (data.filters && data.filters.filterscount > 0) {
83500
+ this.applyfilters();
83501
+ if (this.showfilterrow) {
83502
+ $.each(this.columns.records, function () {
83503
+ if (this.filtertype == 'checkedlist' && this.filterable) {
83504
+ if (me.host.jqxDropDownList) {
83505
+ var column = this;
83506
+ var dropdownlist = column._filterwidget;
83507
+ var dropdownitems = dropdownlist.jqxDropDownList('getItems');
83508
+ var listbox = dropdownlist.jqxDropDownList('listBox');
83509
+ listbox.checkAll(false);
83510
+ if (column.filter) {
83511
+ listbox.uncheckAll(false);
83512
+ var filters = column.filter.getfilters();
83513
+
83514
+ for (var i = 0; i < listbox.items.length; i++) {
83515
+ var label = listbox.items[i].label;
83516
+ $.each(filters, function () {
83517
+ if (this.condition == "NOT_EQUAL") return true;
83518
+ if (label == this.value) {
83519
+ listbox.checkIndex(i, false, false);
83520
+ }
83521
+ });
83522
+ }
83523
+ listbox._updateCheckedItems();
83524
+ var checkedItemsLength = listbox.getCheckedItems().length;
83525
+ if (listbox.items.length != checkedItemsLength && checkedItemsLength > 0) {
83526
+ listbox.host.jqxListBox('indeterminateIndex', 0, true, false);
83527
+ }
82517
83528
  }
82518
83529
  }
82519
83530
  }
82520
- }
82521
- });
83531
+ });
83532
+ }
82522
83533
  }
82523
- }
82524
83534
 
82525
- if (this.pageable && data.pagenum !== undefined) {
82526
- if (this.gotopage && !this.virtualmode) {
82527
- this.dataview.pagenum = -1;
82528
- this.gotopage(data.pagenum);
82529
- }
82530
- else if (this.gotopage && this.virtualmode) {
82531
- this.gotopage(data.pagenum);
83535
+ if (this.pageable && data.pagenum !== undefined) {
83536
+ if (this.gotopage && !this.virtualmode) {
83537
+ this.dataview.pagenum = -1;
83538
+ this.gotopage(data.pagenum);
83539
+ }
83540
+ else if (this.gotopage && this.virtualmode) {
83541
+ this.gotopage(data.pagenum);
83542
+ }
82532
83543
  }
82533
83544
  }
82534
- }
82535
83545
 
82536
- if (data.selectedrowindexes && data.selectedrowindexes && data.selectedrowindexes.length > 0) {
82537
- this.selectedrowindexes = data.selectedrowindexes;
82538
- this.selectedrowindex = data.selectedrowindex;
82539
- if (this.selectionmode === "checkbox") {
82540
- this._updatecheckboxselection();
83546
+ if (data.selectedrowindexes && data.selectedrowindexes && data.selectedrowindexes.length > 0) {
83547
+ this.selectedrowindexes = data.selectedrowindexes;
83548
+ this.selectedrowindex = data.selectedrowindex;
83549
+ if (this.selectionmode === "checkbox") {
83550
+ this._updatecheckboxselection();
83551
+ }
82541
83552
  }
82542
- }
82543
- if (data.selectedcells) {
82544
- if (this._applycellselection) {
82545
- $.each(data.selectedcells, function () {
82546
- me._applycellselection(this.rowindex, this.datafield, true, false);
82547
- });
83553
+ if (data.selectedcells) {
83554
+ if (this._applycellselection) {
83555
+ $.each(data.selectedcells, function () {
83556
+ me._applycellselection(this.rowindex, this.datafield, true, false);
83557
+ });
83558
+ }
82548
83559
  }
82549
- }
82550
83560
 
82551
- if (this.groupable && data.groups !== undefined) {
82552
- this._refreshdataview();
82553
- this.render();
82554
- this._loading = _tmploading;
82555
- this.loadingstate = false;
83561
+ if (this.groupable && data.groups !== undefined) {
83562
+ this._refreshdataview();
83563
+ this.render();
83564
+ this._loading = _tmploading;
83565
+ this.loadingstate = false;
82556
83566
 
82557
- return;
82558
- }
83567
+ return;
83568
+ }
82559
83569
 
82560
- if (requiresRender) {
82561
- this.prerenderrequired = true;
82562
- this.rendergridcontent(true);
82563
- this._loading = _tmploading;
82564
- this.loadingstate = false;
82565
- if (this.updating()) {
82566
- return false;
83570
+ if (requiresRender) {
83571
+ this.prerenderrequired = true;
83572
+ this.rendergridcontent(true);
83573
+ this._loading = _tmploading;
83574
+ this.loadingstate = false;
83575
+ if (this.updating()) {
83576
+ return false;
83577
+ }
82567
83578
  }
82568
- }
82569
- else {
82570
- this._loading = _tmploading;
82571
- this._updatecolumnwidths();
82572
- this._updatecellwidths();
83579
+ else {
83580
+ this._loading = _tmploading;
83581
+ this._updatecolumnwidths();
83582
+ this._updatecellwidths();
83583
+ this.loadingstate = false;
83584
+ }
83585
+
82573
83586
  this.loadingstate = false;
83587
+ this._loading = _tmploading;
83588
+ this._renderrows(this.virtualsizeinfo);
82574
83589
  }
82575
-
82576
83590
  this.loadingstate = false;
82577
- this._loading = _tmploading;
82578
- this._renderrows(this.virtualsizeinfo);
82579
- }
82580
- this.loadingstate = false;
82581
- },
83591
+ },
82582
83592
 
82583
- getstate: function () {
82584
- var datainfo = this.getdatainformation();
82585
- var data = {};
82586
- data.width = this.width;
82587
- data.height = this.height;
82588
- data.pagenum = datainfo.paginginformation.pagenum;
82589
- data.pagesize = datainfo.paginginformation.pagesize;
82590
- data.pagesizeoptions = this.pagesizeoptions;
82591
- data.sortcolumn = datainfo.sortinformation.sortcolumn;
82592
- data.sortdirection = datainfo.sortinformation.sortdirection;
82593
-
82594
- if (this.sortmode === 'many') {
82595
- data.sortcolumns = this.getsortcolumns();
82596
- }
82597
- if (this.selectionmode != null) {
82598
- if (this.getselectedcells) {
82599
- if (this.selectionmode.toString().indexOf('cell') != -1) {
82600
- var selectedcells = this.getselectedcells();
82601
- var cells = new Array();
82602
- $.each(selectedcells, function () {
82603
- cells.push({ datafield: this.datafield, rowindex: this.rowindex });
82604
- });
82605
- data.selectedcells = cells;
82606
- }
82607
- else {
82608
- var selectedrowindexes = this.getselectedrowindexes();
82609
- data.selectedrowindexes = selectedrowindexes;
82610
- data.selectedrowindex = this.selectedrowindex;
82611
- }
82612
- }
82613
- }
82614
- var postdata = {};
82615
- var filterslength = 0;
82616
- if (this.dataview.filters) {
82617
- for (var x = 0; x < this.dataview.filters.length; x++) {
82618
- var filterdatafield = this.dataview.filters[x].datafield;
82619
- var filter = this.dataview.filters[x].filter;
82620
- var filters = filter.getfilters();
82621
- postdata[filterdatafield + "operator"] = filter.operator;
82622
- for (var m = 0; m < filters.length; m++) {
82623
- filters[m].datafield = filterdatafield;
82624
- if (filters[m].type == "datefilter") {
82625
- if (filters[m].value && filters[m].value.toLocaleString) {
82626
- var column = this.getcolumn(filters[m].datafield);
82627
- if (column.cellsformat) {
82628
- var value = this.source.formatDate(filters[m].value, column.cellsformat, this.gridlocalization);
82629
- if (value) {
82630
- postdata["filtervalue" + filterslength] = value;
83593
+ getstate: function () {
83594
+ var datainfo = this.getdatainformation();
83595
+ var data = {};
83596
+ data.width = this.width;
83597
+ data.height = this.height;
83598
+ data.pagenum = datainfo.paginginformation.pagenum;
83599
+ data.pagesize = datainfo.paginginformation.pagesize;
83600
+ data.pagesizeoptions = this.pagesizeoptions;
83601
+ data.sortcolumn = datainfo.sortinformation.sortcolumn;
83602
+ data.sortdirection = datainfo.sortinformation.sortdirection;
83603
+
83604
+ if (this.sortmode === 'many') {
83605
+ data.sortcolumns = this.getsortcolumns();
83606
+ }
83607
+ if (this.selectionmode != null) {
83608
+ if (this.getselectedcells) {
83609
+ if (this.selectionmode.toString().indexOf('cell') != -1) {
83610
+ var selectedcells = this.getselectedcells();
83611
+ var cells = new Array();
83612
+ $.each(selectedcells, function () {
83613
+ cells.push({ datafield: this.datafield, rowindex: this.rowindex });
83614
+ });
83615
+ data.selectedcells = cells;
83616
+ }
83617
+ else {
83618
+ var selectedrowindexes = this.getselectedrowindexes();
83619
+ data.selectedrowindexes = selectedrowindexes;
83620
+ data.selectedrowindex = this.selectedrowindex;
83621
+ }
83622
+ }
83623
+ }
83624
+ var postdata = {};
83625
+ var filterslength = 0;
83626
+ if (this.dataview.filters) {
83627
+ for (var x = 0; x < this.dataview.filters.length; x++) {
83628
+ var filterdatafield = this.dataview.filters[x].datafield;
83629
+ var filter = this.dataview.filters[x].filter;
83630
+ var filters = filter.getfilters();
83631
+ postdata[filterdatafield + "operator"] = filter.operator;
83632
+ for (var m = 0; m < filters.length; m++) {
83633
+ filters[m].datafield = filterdatafield;
83634
+ if (filters[m].type == "datefilter") {
83635
+ if (filters[m].value && filters[m].value.toLocaleString) {
83636
+ var column = this.getcolumn(filters[m].datafield);
83637
+ if (column.cellsformat) {
83638
+ var value = this.source.formatDate(filters[m].value, column.cellsformat, this.gridlocalization);
83639
+ if (value) {
83640
+ postdata["filtervalue" + filterslength] = value;
83641
+ }
83642
+ else {
83643
+ postdata["filtervalue" + filterslength] = filters[m].value.toLocaleString();
83644
+ }
82631
83645
  }
82632
83646
  else {
82633
83647
  postdata["filtervalue" + filterslength] = filters[m].value.toLocaleString();
82634
83648
  }
82635
83649
  }
82636
83650
  else {
82637
- postdata["filtervalue" + filterslength] = filters[m].value.toLocaleString();
83651
+ postdata["filtervalue" + filterslength] = filters[m].value;
82638
83652
  }
82639
83653
  }
82640
83654
  else {
82641
83655
  postdata["filtervalue" + filterslength] = filters[m].value;
82642
83656
  }
82643
- }
82644
- else {
82645
- postdata["filtervalue" + filterslength] = filters[m].value;
82646
- }
82647
- postdata["filtercondition" + filterslength] = filters[m].condition;
82648
- postdata["filteroperator" + filterslength] = filters[m].operator;
82649
- postdata["filterdatafield" + filterslength] = filterdatafield;
82650
- postdata["filtertype" + filterslength] = filters[m].type;
83657
+ postdata["filtercondition" + filterslength] = filters[m].condition;
83658
+ postdata["filteroperator" + filterslength] = filters[m].operator;
83659
+ postdata["filterdatafield" + filterslength] = filterdatafield;
83660
+ postdata["filtertype" + filterslength] = filters[m].type;
82651
83661
 
82652
- filterslength++;
83662
+ filterslength++;
83663
+ }
82653
83664
  }
82654
83665
  }
82655
- }
82656
- postdata.filterscount = filterslength;
82657
- data.filters = postdata;
82658
- data.groups = this.groups;
82659
- //if (this.groupable && this.groups.length > 0) {
82660
- // var me = this;
82661
- // var groupstates = [];
82662
- // $.each(this.dataview.loadedgroups, function () {
82663
- // var groupstate = me._findgroupstate(this.uniqueid);
82664
- // groupstates[this.group] = groupstate;
82665
- // });
82666
- // data.groupstates = groupstates;
82667
- //}
82668
-
82669
- data.columns = {};
82670
- var columnindex = 0;
82671
- if (this.columns.records) {
82672
- $.each(this.columns.records, function (index, value) {
82673
- if (!this.datafield) {
82674
- return true;
82675
- }
83666
+ postdata.filterscount = filterslength;
83667
+ data.filters = postdata;
83668
+ data.groups = this.groups;
83669
+ //if (this.groupable && this.groups.length > 0) {
83670
+ // var me = this;
83671
+ // var groupstates = [];
83672
+ // $.each(this.dataview.loadedgroups, function () {
83673
+ // var groupstate = me._findgroupstate(this.uniqueid);
83674
+ // groupstates[this.group] = groupstate;
83675
+ // });
83676
+ // data.groupstates = groupstates;
83677
+ //}
82676
83678
 
82677
- var columndata = {};
82678
- columndata.width = this.width;
82679
- if (this._percentagewidth) {
82680
- columndata.width = this._percentagewidth;
82681
- }
82682
- columndata.hidden = this.hidden;
82683
- columndata.pinned = this.pinned;
82684
- columndata.groupable = this.groupable;
82685
- columndata.resizable = this.resizable;
82686
- columndata.draggable = this.draggable;
82687
- columndata.text = this.text;
82688
- columndata.align = this.align;
82689
- columndata.cellsalign = this.cellsalign;
82690
- columndata.index = columnindex++;
82691
- data.columns[this.datafield] = columndata;
82692
- });
82693
- }
82694
- return data;
82695
- },
83679
+ data.columns = {};
83680
+ var columnindex = 0;
83681
+ if (this.columns.records) {
83682
+ $.each(this.columns.records, function (index, value) {
83683
+ if (!this.datafield) {
83684
+ return true;
83685
+ }
82696
83686
 
82697
- _stringify: function (value) {
82698
- if (window.JSON && typeof window.JSON.stringify === 'function') {
82699
- var me = this;
82700
- var json = "";
82701
- try {
82702
- json = window.JSON.stringify(value);
83687
+ var columndata = {};
83688
+ columndata.width = this.width;
83689
+ if (this._percentagewidth) {
83690
+ columndata.width = this._percentagewidth;
83691
+ }
83692
+ columndata.hidden = this.hidden;
83693
+ columndata.pinned = this.pinned;
83694
+ columndata.groupable = this.groupable;
83695
+ columndata.resizable = this.resizable;
83696
+ columndata.draggable = this.draggable;
83697
+ columndata.text = this.text;
83698
+ columndata.align = this.align;
83699
+ columndata.cellsalign = this.cellsalign;
83700
+ columndata.index = columnindex++;
83701
+ data.columns[this.datafield] = columndata;
83702
+ });
82703
83703
  }
82704
- catch (error) {
82705
- return me._str("", { "": value })
83704
+ return data;
83705
+ },
83706
+
83707
+ _stringify: function (value) {
83708
+ if (window.JSON && typeof window.JSON.stringify === 'function') {
83709
+ var me = this;
83710
+ var json = "";
83711
+ try {
83712
+ json = window.JSON.stringify(value);
83713
+ }
83714
+ catch (error) {
83715
+ return me._str("", { "": value })
83716
+ }
83717
+ return json;
82706
83718
  }
82707
- return json;
82708
- }
82709
83719
 
82710
- var json = this._str("", { "": value })
82711
- return json;
82712
- },
83720
+ var json = this._str("", { "": value })
83721
+ return json;
83722
+ },
82713
83723
 
82714
- _quote: function (string) {
82715
- var escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
82716
- meta = {
82717
- '\b': '\\b',
82718
- '\t': '\\t',
82719
- '\n': '\\n',
82720
- '\f': '\\f',
82721
- '\r': '\\r',
82722
- '"': '\\"',
82723
- '\\': '\\\\'
82724
- };
83724
+ _quote: function (string) {
83725
+ var escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
83726
+ meta = {
83727
+ '\b': '\\b',
83728
+ '\t': '\\t',
83729
+ '\n': '\\n',
83730
+ '\f': '\\f',
83731
+ '\r': '\\r',
83732
+ '"': '\\"',
83733
+ '\\': '\\\\'
83734
+ };
82725
83735
 
82726
- return '"' + string.replace(escapable, function (a) {
82727
- var c = meta[a];
82728
- return typeof c === 'string' ? c : '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
82729
- }) + '"';
82730
- },
83736
+ return '"' + string.replace(escapable, function (a) {
83737
+ var c = meta[a];
83738
+ return typeof c === 'string' ? c : '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
83739
+ }) + '"';
83740
+ },
82731
83741
 
82732
83742
 
82733
- _stringifyArray: function (value) {
82734
- var len = value.length,
82735
- partial = [],
82736
- i;
82737
- for (var i = 0; i < len; i++) {
82738
- partial.push(this._str(i, value) || 'null');
82739
- }
83743
+ _stringifyArray: function (value) {
83744
+ var len = value.length,
83745
+ partial = [],
83746
+ i;
83747
+ for (var i = 0; i < len; i++) {
83748
+ partial.push(this._str(i, value) || 'null');
83749
+ }
82740
83750
 
82741
- return '[' + partial.join(',') + ']';
82742
- },
83751
+ return '[' + partial.join(',') + ']';
83752
+ },
82743
83753
 
82744
- _stringifyObject: function (value) {
82745
- var partial = [],
82746
- i, v;
82747
- var me = this;
82748
- for (i in value) {
82749
- if (Object.prototype.hasOwnProperty.call(value, i)) {
82750
- v = me._str(i, value);
82751
- if (v) {
82752
- partial.push(me._quote(i) + ':' + v);
83754
+ _stringifyObject: function (value) {
83755
+ var partial = [],
83756
+ i, v;
83757
+ var me = this;
83758
+ for (i in value) {
83759
+ if (Object.prototype.hasOwnProperty.call(value, i)) {
83760
+ v = me._str(i, value);
83761
+ if (v) {
83762
+ partial.push(me._quote(i) + ':' + v);
83763
+ }
82753
83764
  }
82754
83765
  }
82755
- }
82756
- return '{' + partial.join(',') + '}';
82757
- },
83766
+ return '{' + partial.join(',') + '}';
83767
+ },
82758
83768
 
82759
- _stringifyReference: function (value) {
82760
- switch (Object.prototype.toString.call(value)) {
82761
- case '[object Array]':
82762
- return this._stringifyArray(value);
82763
- }
82764
- return this._stringifyObject(value);
82765
- },
83769
+ _stringifyReference: function (value) {
83770
+ switch (Object.prototype.toString.call(value)) {
83771
+ case '[object Array]':
83772
+ return this._stringifyArray(value);
83773
+ }
83774
+ return this._stringifyObject(value);
83775
+ },
82766
83776
 
82767
- _stringifyPrimitive: function (value, type) {
82768
- switch (type) {
82769
- case 'string':
82770
- return this._quote(value);
82771
- case 'number':
82772
- return isFinite(value) ? value : 'null';
82773
- case 'boolean':
82774
- return value;
82775
- }
82776
- return 'null';
82777
- },
83777
+ _stringifyPrimitive: function (value, type) {
83778
+ switch (type) {
83779
+ case 'string':
83780
+ return this._quote(value);
83781
+ case 'number':
83782
+ return isFinite(value) ? value : 'null';
83783
+ case 'boolean':
83784
+ return value;
83785
+ }
83786
+ return 'null';
83787
+ },
82778
83788
 
82779
- _str: function (key, holder) {
82780
- var value = holder[key], type = typeof value;
83789
+ _str: function (key, holder) {
83790
+ var value = holder[key], type = typeof value;
82781
83791
 
82782
- if (value && typeof value === 'object' && typeof value.toJSON === 'function') {
82783
- value = value.toJSON(key);
82784
- type = typeof value;
82785
- }
82786
- if (/(number|string|boolean)/.test(type) || (!value && type === 'object')) {
82787
- return this._stringifyPrimitive(value, type);
82788
- } else {
82789
- return this._stringifyReference(value);
83792
+ if (value && typeof value === 'object' && typeof value.toJSON === 'function') {
83793
+ value = value.toJSON(key);
83794
+ type = typeof value;
83795
+ }
83796
+ if (/(number|string|boolean)/.test(type) || (!value && type === 'object')) {
83797
+ return this._stringifyPrimitive(value, type);
83798
+ } else {
83799
+ return this._stringifyReference(value);
83800
+ }
82790
83801
  }
82791
- }
82792
- });
82793
- })(jqxBaseFramework);
82794
- })();
82795
-
82796
-
83802
+ });
83803
+ })(jqxBaseFramework);
83804
+ })();
82797
83805
 
82798
83806
  /***/ }),
82799
83807
 
@@ -84498,7 +85506,7 @@ var saveAs = window.jqxSaveAs = saveAs
84498
85506
  // clears the selection.
84499
85507
  clearSelection: function (render) {
84500
85508
  for (var indx = 0; indx < this.selectedIndexes.length; indx++) {
84501
- if (this.selectedIndexes[indx] && this.selectedIndexes[indx] != -1) {
85509
+ if (this.selectedIndexes[indx] !== undefined && this.selectedIndexes[indx] != -1) {
84502
85510
  this._raiseEvent('1', { index: indx, type: 'api', item: this.getVisibleItem(indx), originalEvent: null });
84503
85511
  }
84504
85512
 
@@ -87731,9 +88739,7 @@ var saveAs = window.jqxSaveAs = saveAs
87731
88739
  return result;
87732
88740
  }
87733
88741
  })(jqxBaseFramework);
87734
- })();
87735
-
87736
-
88742
+ })();
87737
88743
 
87738
88744
  /***/ }),
87739
88745
 
@@ -90704,9 +91710,7 @@ var saveAs = window.jqxSaveAs = saveAs
90704
91710
  return menuItem;
90705
91711
  }; //
90706
91712
  })(jqxBaseFramework);
90707
- })();
90708
-
90709
-
91713
+ })();
90710
91714
 
90711
91715
  /***/ }),
90712
91716
 
@@ -94662,9 +95666,7 @@ var saveAs = window.jqxSaveAs = saveAs
94662
95666
  }
94663
95667
  });
94664
95668
  })(jqxBaseFramework);
94665
- })();
94666
-
94667
-
95669
+ })();
94668
95670
 
94669
95671
  /***/ }),
94670
95672
 
@@ -96257,8 +97259,6 @@ var saveAs = window.jqxSaveAs = saveAs
96257
97259
  }); // jqxScrollBar
96258
97260
  })(jqxBaseFramework);
96259
97261
  })();
96260
-
96261
-
96262
97262
 
96263
97263
 
96264
97264
  /***/ })
@@ -96269,7 +97269,7 @@ var saveAs = window.jqxSaveAs = saveAs
96269
97269
  /******/ var __webpack_module_cache__ = {};
96270
97270
  /******/
96271
97271
  /******/ // The require function
96272
- /******/ function __webpack_require__(moduleId) {
97272
+ /******/ function __nested_webpack_require_4285403__(moduleId) {
96273
97273
  /******/ // Check if module is in cache
96274
97274
  /******/ var cachedModule = __webpack_module_cache__[moduleId];
96275
97275
  /******/ if (cachedModule !== undefined) {
@@ -96283,7 +97283,7 @@ var saveAs = window.jqxSaveAs = saveAs
96283
97283
  /******/ };
96284
97284
  /******/
96285
97285
  /******/ // Execute the module function
96286
- /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
97286
+ /******/ __webpack_modules__[moduleId](module, module.exports, __nested_webpack_require_4285403__);
96287
97287
  /******/
96288
97288
  /******/ // Return the exports of the module
96289
97289
  /******/ return module.exports;
@@ -96292,17 +97292,17 @@ var saveAs = window.jqxSaveAs = saveAs
96292
97292
  /************************************************************************/
96293
97293
  /******/ /* webpack/runtime/amd options */
96294
97294
  /******/ (() => {
96295
- /******/ __webpack_require__.amdO = {};
97295
+ /******/ __nested_webpack_require_4285403__.amdO = {};
96296
97296
  /******/ })();
96297
97297
  /******/
96298
97298
  /******/ /* webpack/runtime/compat get default export */
96299
97299
  /******/ (() => {
96300
97300
  /******/ // getDefaultExport function for compatibility with non-harmony modules
96301
- /******/ __webpack_require__.n = (module) => {
97301
+ /******/ __nested_webpack_require_4285403__.n = (module) => {
96302
97302
  /******/ var getter = module && module.__esModule ?
96303
97303
  /******/ () => (module['default']) :
96304
97304
  /******/ () => (module);
96305
- /******/ __webpack_require__.d(getter, { a: getter });
97305
+ /******/ __nested_webpack_require_4285403__.d(getter, { a: getter });
96306
97306
  /******/ return getter;
96307
97307
  /******/ };
96308
97308
  /******/ })();
@@ -96310,9 +97310,9 @@ var saveAs = window.jqxSaveAs = saveAs
96310
97310
  /******/ /* webpack/runtime/define property getters */
96311
97311
  /******/ (() => {
96312
97312
  /******/ // define getter functions for harmony exports
96313
- /******/ __webpack_require__.d = (exports, definition) => {
97313
+ /******/ __nested_webpack_require_4285403__.d = (exports, definition) => {
96314
97314
  /******/ for(var key in definition) {
96315
- /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
97315
+ /******/ if(__nested_webpack_require_4285403__.o(definition, key) && !__nested_webpack_require_4285403__.o(exports, key)) {
96316
97316
  /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
96317
97317
  /******/ }
96318
97318
  /******/ }
@@ -96321,7 +97321,7 @@ var saveAs = window.jqxSaveAs = saveAs
96321
97321
  /******/
96322
97322
  /******/ /* webpack/runtime/hasOwnProperty shorthand */
96323
97323
  /******/ (() => {
96324
- /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
97324
+ /******/ __nested_webpack_require_4285403__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
96325
97325
  /******/ })();
96326
97326
  /******/
96327
97327
  /************************************************************************/
@@ -96329,64 +97329,64 @@ var __webpack_exports__ = {};
96329
97329
  // This entry need to be wrapped in an IIFE because it need to be in strict mode.
96330
97330
  (() => {
96331
97331
  "use strict";
96332
- /* harmony import */ var _jqxcore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5459);
96333
- /* harmony import */ var _jqxcore__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_jqxcore__WEBPACK_IMPORTED_MODULE_0__);
96334
- /* harmony import */ var _jqxdata__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4198);
96335
- /* harmony import */ var _jqxdata__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_jqxdata__WEBPACK_IMPORTED_MODULE_1__);
96336
- /* harmony import */ var _jqxdata_export__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3907);
96337
- /* harmony import */ var _jqxdata_export__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_jqxdata_export__WEBPACK_IMPORTED_MODULE_2__);
96338
- /* harmony import */ var _jqxexport__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(714);
96339
- /* harmony import */ var _jqxexport__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_jqxexport__WEBPACK_IMPORTED_MODULE_3__);
96340
- /* harmony import */ var _jqxbuttons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(7351);
96341
- /* harmony import */ var _jqxbuttons__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_jqxbuttons__WEBPACK_IMPORTED_MODULE_4__);
96342
- /* harmony import */ var _jqxbuttongroup__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(7196);
96343
- /* harmony import */ var _jqxbuttongroup__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_jqxbuttongroup__WEBPACK_IMPORTED_MODULE_5__);
96344
- /* harmony import */ var _jqxscrollbar__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(4240);
96345
- /* harmony import */ var _jqxscrollbar__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_jqxscrollbar__WEBPACK_IMPORTED_MODULE_6__);
96346
- /* harmony import */ var _jqxmenu__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(1610);
96347
- /* harmony import */ var _jqxmenu__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_jqxmenu__WEBPACK_IMPORTED_MODULE_7__);
96348
- /* harmony import */ var _jqxlistbox__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(1062);
96349
- /* harmony import */ var _jqxlistbox__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_jqxlistbox__WEBPACK_IMPORTED_MODULE_8__);
96350
- /* harmony import */ var _jqxdropdownlist__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(5868);
96351
- /* harmony import */ var _jqxdropdownlist__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_jqxdropdownlist__WEBPACK_IMPORTED_MODULE_9__);
96352
- /* harmony import */ var _jqxcombobox__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(4720);
96353
- /* harmony import */ var _jqxcombobox__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_jqxcombobox__WEBPACK_IMPORTED_MODULE_10__);
96354
- /* harmony import */ var _jqxnumberinput__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(7995);
96355
- /* harmony import */ var _jqxnumberinput__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_jqxnumberinput__WEBPACK_IMPORTED_MODULE_11__);
96356
- /* harmony import */ var _jqxcheckbox__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(4545);
96357
- /* harmony import */ var _jqxcheckbox__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_jqxcheckbox__WEBPACK_IMPORTED_MODULE_12__);
96358
- /* harmony import */ var _globalization_globalize__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(2497);
96359
- /* harmony import */ var _globalization_globalize__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_globalization_globalize__WEBPACK_IMPORTED_MODULE_13__);
96360
- /* harmony import */ var _jqxcalendar__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(5725);
96361
- /* harmony import */ var _jqxcalendar__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(_jqxcalendar__WEBPACK_IMPORTED_MODULE_14__);
96362
- /* harmony import */ var _jqxdatetimeinput__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(4993);
96363
- /* harmony import */ var _jqxdatetimeinput__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(_jqxdatetimeinput__WEBPACK_IMPORTED_MODULE_15__);
96364
- /* harmony import */ var _jqxgrid__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(4007);
96365
- /* harmony import */ var _jqxgrid__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid__WEBPACK_IMPORTED_MODULE_16__);
96366
- /* harmony import */ var _jqxgrid_edit__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(5574);
96367
- /* harmony import */ var _jqxgrid_edit__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_edit__WEBPACK_IMPORTED_MODULE_17__);
96368
- /* harmony import */ var _jqxgrid_pager__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(5911);
96369
- /* harmony import */ var _jqxgrid_pager__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_pager__WEBPACK_IMPORTED_MODULE_18__);
96370
- /* harmony import */ var _jqxgrid_selection__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(9041);
96371
- /* harmony import */ var _jqxgrid_selection__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_selection__WEBPACK_IMPORTED_MODULE_19__);
96372
- /* harmony import */ var _jqxgrid_filter__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(8690);
96373
- /* harmony import */ var _jqxgrid_filter__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_filter__WEBPACK_IMPORTED_MODULE_20__);
96374
- /* harmony import */ var _jqxgrid_sort__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(4687);
96375
- /* harmony import */ var _jqxgrid_sort__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_sort__WEBPACK_IMPORTED_MODULE_21__);
96376
- /* harmony import */ var _jqxgrid_storage__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(9701);
96377
- /* harmony import */ var _jqxgrid_storage__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_storage__WEBPACK_IMPORTED_MODULE_22__);
96378
- /* harmony import */ var _jqxgrid_grouping__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(3066);
96379
- /* harmony import */ var _jqxgrid_grouping__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_grouping__WEBPACK_IMPORTED_MODULE_23__);
96380
- /* harmony import */ var _jqxgrid_export__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(469);
96381
- /* harmony import */ var _jqxgrid_export__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_export__WEBPACK_IMPORTED_MODULE_24__);
96382
- /* harmony import */ var _jqxgrid_columnsresize__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(4854);
96383
- /* harmony import */ var _jqxgrid_columnsresize__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_columnsresize__WEBPACK_IMPORTED_MODULE_25__);
96384
- /* harmony import */ var _jqxgrid_columnsreorder__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(2421);
96385
- /* harmony import */ var _jqxgrid_columnsreorder__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_columnsreorder__WEBPACK_IMPORTED_MODULE_26__);
96386
- /* harmony import */ var _jqxgrid_aggregates__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(3189);
96387
- /* harmony import */ var _jqxgrid_aggregates__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_aggregates__WEBPACK_IMPORTED_MODULE_27__);
96388
- /* harmony import */ var _jqxgrid_chart__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(2465);
96389
- /* harmony import */ var _jqxgrid_chart__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(_jqxgrid_chart__WEBPACK_IMPORTED_MODULE_28__);
97332
+ /* harmony import */ var _jqxcore__WEBPACK_IMPORTED_MODULE_0__ = __nested_webpack_require_4285403__(5459);
97333
+ /* harmony import */ var _jqxcore__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxcore__WEBPACK_IMPORTED_MODULE_0__);
97334
+ /* harmony import */ var _jqxdata__WEBPACK_IMPORTED_MODULE_1__ = __nested_webpack_require_4285403__(4198);
97335
+ /* harmony import */ var _jqxdata__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxdata__WEBPACK_IMPORTED_MODULE_1__);
97336
+ /* harmony import */ var _jqxdata_export__WEBPACK_IMPORTED_MODULE_2__ = __nested_webpack_require_4285403__(3907);
97337
+ /* harmony import */ var _jqxdata_export__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxdata_export__WEBPACK_IMPORTED_MODULE_2__);
97338
+ /* harmony import */ var _jqxexport__WEBPACK_IMPORTED_MODULE_3__ = __nested_webpack_require_4285403__(714);
97339
+ /* harmony import */ var _jqxexport__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxexport__WEBPACK_IMPORTED_MODULE_3__);
97340
+ /* harmony import */ var _jqxbuttons__WEBPACK_IMPORTED_MODULE_4__ = __nested_webpack_require_4285403__(7351);
97341
+ /* harmony import */ var _jqxbuttons__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxbuttons__WEBPACK_IMPORTED_MODULE_4__);
97342
+ /* harmony import */ var _jqxbuttongroup__WEBPACK_IMPORTED_MODULE_5__ = __nested_webpack_require_4285403__(7196);
97343
+ /* harmony import */ var _jqxbuttongroup__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxbuttongroup__WEBPACK_IMPORTED_MODULE_5__);
97344
+ /* harmony import */ var _jqxscrollbar__WEBPACK_IMPORTED_MODULE_6__ = __nested_webpack_require_4285403__(4240);
97345
+ /* harmony import */ var _jqxscrollbar__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxscrollbar__WEBPACK_IMPORTED_MODULE_6__);
97346
+ /* harmony import */ var _jqxmenu__WEBPACK_IMPORTED_MODULE_7__ = __nested_webpack_require_4285403__(1610);
97347
+ /* harmony import */ var _jqxmenu__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxmenu__WEBPACK_IMPORTED_MODULE_7__);
97348
+ /* harmony import */ var _jqxlistbox__WEBPACK_IMPORTED_MODULE_8__ = __nested_webpack_require_4285403__(1062);
97349
+ /* harmony import */ var _jqxlistbox__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxlistbox__WEBPACK_IMPORTED_MODULE_8__);
97350
+ /* harmony import */ var _jqxdropdownlist__WEBPACK_IMPORTED_MODULE_9__ = __nested_webpack_require_4285403__(5868);
97351
+ /* harmony import */ var _jqxdropdownlist__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxdropdownlist__WEBPACK_IMPORTED_MODULE_9__);
97352
+ /* harmony import */ var _jqxcombobox__WEBPACK_IMPORTED_MODULE_10__ = __nested_webpack_require_4285403__(4720);
97353
+ /* harmony import */ var _jqxcombobox__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxcombobox__WEBPACK_IMPORTED_MODULE_10__);
97354
+ /* harmony import */ var _jqxnumberinput__WEBPACK_IMPORTED_MODULE_11__ = __nested_webpack_require_4285403__(7995);
97355
+ /* harmony import */ var _jqxnumberinput__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxnumberinput__WEBPACK_IMPORTED_MODULE_11__);
97356
+ /* harmony import */ var _jqxcheckbox__WEBPACK_IMPORTED_MODULE_12__ = __nested_webpack_require_4285403__(4545);
97357
+ /* harmony import */ var _jqxcheckbox__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxcheckbox__WEBPACK_IMPORTED_MODULE_12__);
97358
+ /* harmony import */ var _globalization_globalize__WEBPACK_IMPORTED_MODULE_13__ = __nested_webpack_require_4285403__(2497);
97359
+ /* harmony import */ var _globalization_globalize__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_globalization_globalize__WEBPACK_IMPORTED_MODULE_13__);
97360
+ /* harmony import */ var _jqxcalendar__WEBPACK_IMPORTED_MODULE_14__ = __nested_webpack_require_4285403__(5725);
97361
+ /* harmony import */ var _jqxcalendar__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxcalendar__WEBPACK_IMPORTED_MODULE_14__);
97362
+ /* harmony import */ var _jqxdatetimeinput__WEBPACK_IMPORTED_MODULE_15__ = __nested_webpack_require_4285403__(4993);
97363
+ /* harmony import */ var _jqxdatetimeinput__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxdatetimeinput__WEBPACK_IMPORTED_MODULE_15__);
97364
+ /* harmony import */ var _jqxgrid__WEBPACK_IMPORTED_MODULE_16__ = __nested_webpack_require_4285403__(4007);
97365
+ /* harmony import */ var _jqxgrid__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid__WEBPACK_IMPORTED_MODULE_16__);
97366
+ /* harmony import */ var _jqxgrid_edit__WEBPACK_IMPORTED_MODULE_17__ = __nested_webpack_require_4285403__(5574);
97367
+ /* harmony import */ var _jqxgrid_edit__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_edit__WEBPACK_IMPORTED_MODULE_17__);
97368
+ /* harmony import */ var _jqxgrid_pager__WEBPACK_IMPORTED_MODULE_18__ = __nested_webpack_require_4285403__(5911);
97369
+ /* harmony import */ var _jqxgrid_pager__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_pager__WEBPACK_IMPORTED_MODULE_18__);
97370
+ /* harmony import */ var _jqxgrid_selection__WEBPACK_IMPORTED_MODULE_19__ = __nested_webpack_require_4285403__(9041);
97371
+ /* harmony import */ var _jqxgrid_selection__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_selection__WEBPACK_IMPORTED_MODULE_19__);
97372
+ /* harmony import */ var _jqxgrid_filter__WEBPACK_IMPORTED_MODULE_20__ = __nested_webpack_require_4285403__(8690);
97373
+ /* harmony import */ var _jqxgrid_filter__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_filter__WEBPACK_IMPORTED_MODULE_20__);
97374
+ /* harmony import */ var _jqxgrid_sort__WEBPACK_IMPORTED_MODULE_21__ = __nested_webpack_require_4285403__(4687);
97375
+ /* harmony import */ var _jqxgrid_sort__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_sort__WEBPACK_IMPORTED_MODULE_21__);
97376
+ /* harmony import */ var _jqxgrid_storage__WEBPACK_IMPORTED_MODULE_22__ = __nested_webpack_require_4285403__(9701);
97377
+ /* harmony import */ var _jqxgrid_storage__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_storage__WEBPACK_IMPORTED_MODULE_22__);
97378
+ /* harmony import */ var _jqxgrid_grouping__WEBPACK_IMPORTED_MODULE_23__ = __nested_webpack_require_4285403__(3066);
97379
+ /* harmony import */ var _jqxgrid_grouping__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_grouping__WEBPACK_IMPORTED_MODULE_23__);
97380
+ /* harmony import */ var _jqxgrid_export__WEBPACK_IMPORTED_MODULE_24__ = __nested_webpack_require_4285403__(469);
97381
+ /* harmony import */ var _jqxgrid_export__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_export__WEBPACK_IMPORTED_MODULE_24__);
97382
+ /* harmony import */ var _jqxgrid_columnsresize__WEBPACK_IMPORTED_MODULE_25__ = __nested_webpack_require_4285403__(4854);
97383
+ /* harmony import */ var _jqxgrid_columnsresize__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_columnsresize__WEBPACK_IMPORTED_MODULE_25__);
97384
+ /* harmony import */ var _jqxgrid_columnsreorder__WEBPACK_IMPORTED_MODULE_26__ = __nested_webpack_require_4285403__(2421);
97385
+ /* harmony import */ var _jqxgrid_columnsreorder__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_columnsreorder__WEBPACK_IMPORTED_MODULE_26__);
97386
+ /* harmony import */ var _jqxgrid_aggregates__WEBPACK_IMPORTED_MODULE_27__ = __nested_webpack_require_4285403__(3189);
97387
+ /* harmony import */ var _jqxgrid_aggregates__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_aggregates__WEBPACK_IMPORTED_MODULE_27__);
97388
+ /* harmony import */ var _jqxgrid_chart__WEBPACK_IMPORTED_MODULE_28__ = __nested_webpack_require_4285403__(2465);
97389
+ /* harmony import */ var _jqxgrid_chart__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__nested_webpack_require_4285403__.n(_jqxgrid_chart__WEBPACK_IMPORTED_MODULE_28__);
96390
97390
 
96391
97391
 
96392
97392
 
@@ -96418,5 +97418,15 @@ var __webpack_exports__ = {};
96418
97418
 
96419
97419
  })();
96420
97420
 
97421
+ /******/ })()
97422
+ ;
97423
+ /******/ })()
97424
+ ;
97425
+ /******/ })()
97426
+ ;
97427
+ /******/ })()
97428
+ ;
97429
+ /******/ })()
97430
+ ;
96421
97431
  /******/ })()
96422
97432
  ;