jqwidgets-ng 23.1.0 → 24.1.0

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 (185) hide show
  1. package/jqwidgets/jqx-all.js +9 -9
  2. package/jqwidgets/jqxangular.js +1 -1
  3. package/jqwidgets/jqxbarcode.js +1 -1
  4. package/jqwidgets/jqxbargauge.js +1 -1
  5. package/jqwidgets/jqxbulletchart.js +1 -1
  6. package/jqwidgets/jqxbuttongroup.js +1 -1
  7. package/jqwidgets/jqxbuttons.js +2 -2
  8. package/jqwidgets/jqxcalendar.js +1 -1
  9. package/jqwidgets/jqxchart.annotations.js +1 -1
  10. package/jqwidgets/jqxchart.api.js +1 -1
  11. package/jqwidgets/jqxchart.core.js +1 -1
  12. package/jqwidgets/jqxchart.js +1 -1
  13. package/jqwidgets/jqxchart.rangeselector.js +1 -1
  14. package/jqwidgets/jqxchart.waterfall.js +1 -1
  15. package/jqwidgets/jqxcheckbox.js +1 -1
  16. package/jqwidgets/jqxcheckboxgroup.js +1 -1
  17. package/jqwidgets/jqxcolorpicker.js +1 -1
  18. package/jqwidgets/jqxcombobox.js +1 -1
  19. package/jqwidgets/jqxcomplexinput.js +1 -1
  20. package/jqwidgets/jqxcore.js +2 -2
  21. package/jqwidgets/jqxdata.export.js +1 -1
  22. package/jqwidgets/jqxdata.js +1 -1
  23. package/jqwidgets/jqxdatatable.js +1 -1
  24. package/jqwidgets/jqxdate.js +1 -1
  25. package/jqwidgets/jqxdatetimeinput.js +2 -2
  26. package/jqwidgets/jqxdocking.js +1 -1
  27. package/jqwidgets/jqxdockinglayout.js +1 -1
  28. package/jqwidgets/jqxdockpanel.js +1 -1
  29. package/jqwidgets/jqxdragdrop.js +1 -1
  30. package/jqwidgets/jqxdraw.js +1 -1
  31. package/jqwidgets/jqxdropdownbutton.js +1 -1
  32. package/jqwidgets/jqxdropdownlist.js +1 -1
  33. package/jqwidgets/jqxeditor.js +1 -1
  34. package/jqwidgets/jqxexpander.js +2 -2
  35. package/jqwidgets/jqxfileupload.js +1 -1
  36. package/jqwidgets/jqxform.js +1 -1
  37. package/jqwidgets/jqxformattedinput.js +1 -1
  38. package/jqwidgets/jqxgantt.js +1 -1
  39. package/jqwidgets/jqxgauge.js +1 -1
  40. package/jqwidgets/jqxgrid.aggregates.js +1 -1
  41. package/jqwidgets/jqxgrid.columnsreorder.js +1 -1
  42. package/jqwidgets/jqxgrid.columnsresize.js +1 -1
  43. package/jqwidgets/jqxgrid.edit.js +1 -1
  44. package/jqwidgets/jqxgrid.export.js +1 -1
  45. package/jqwidgets/jqxgrid.filter.js +2 -2
  46. package/jqwidgets/jqxgrid.grouping.js +1 -1
  47. package/jqwidgets/jqxgrid.js +2 -2
  48. package/jqwidgets/jqxgrid.pager.js +1 -1
  49. package/jqwidgets/jqxgrid.selection.js +2 -2
  50. package/jqwidgets/jqxgrid.sort.js +2 -2
  51. package/jqwidgets/jqxgrid.storage.js +1 -1
  52. package/jqwidgets/jqxheatmap.js +1 -1
  53. package/jqwidgets/jqxinput.js +1 -1
  54. package/jqwidgets/jqxkanban.js +1 -1
  55. package/jqwidgets/jqxknob.js +1 -1
  56. package/jqwidgets/jqxknockout.js +1 -1
  57. package/jqwidgets/jqxlayout.js +1 -1
  58. package/jqwidgets/jqxlistbox.js +1 -1
  59. package/jqwidgets/jqxlistmenu.js +1 -1
  60. package/jqwidgets/jqxloader.js +1 -1
  61. package/jqwidgets/jqxmaskedinput.js +1 -1
  62. package/jqwidgets/jqxmenu.js +1 -1
  63. package/jqwidgets/jqxnavbar.js +1 -1
  64. package/jqwidgets/jqxnavigationbar.js +1 -1
  65. package/jqwidgets/jqxnotification.js +1 -1
  66. package/jqwidgets/jqxnumberinput.js +1 -1
  67. package/jqwidgets/jqxpanel.js +1 -1
  68. package/jqwidgets/jqxpasswordinput.js +1 -1
  69. package/jqwidgets/jqxpivot.js +1 -1
  70. package/jqwidgets/jqxpivotdesigner.js +1 -1
  71. package/jqwidgets/jqxpivotgrid.js +1 -1
  72. package/jqwidgets/jqxpopover.js +1 -1
  73. package/jqwidgets/jqxprogressbar.js +1 -1
  74. package/jqwidgets/jqxqrcode.js +1 -1
  75. package/jqwidgets/jqxradiobutton.js +1 -1
  76. package/jqwidgets/jqxradiobuttongroup.js +1 -1
  77. package/jqwidgets/jqxrangeselector.js +1 -1
  78. package/jqwidgets/jqxrating.js +1 -1
  79. package/jqwidgets/jqxresponsivepanel.js +1 -1
  80. package/jqwidgets/jqxribbon.js +1 -1
  81. package/jqwidgets/jqxscheduler.api.js +1 -1
  82. package/jqwidgets/jqxscheduler.js +1 -1
  83. package/jqwidgets/jqxscrollbar.js +1 -1
  84. package/jqwidgets/jqxscrollview.js +1 -1
  85. package/jqwidgets/jqxslider.js +1 -1
  86. package/jqwidgets/jqxsortable.js +1 -1
  87. package/jqwidgets/jqxsplitlayout.js +1 -1
  88. package/jqwidgets/jqxsplitter.js +1 -1
  89. package/jqwidgets/jqxswitchbutton.js +1 -1
  90. package/jqwidgets/jqxtabs.js +1 -1
  91. package/jqwidgets/jqxtagcloud.js +1 -1
  92. package/jqwidgets/jqxtextarea.js +1 -1
  93. package/jqwidgets/jqxtimeline.js +1 -1
  94. package/jqwidgets/jqxtimepicker.js +1 -1
  95. package/jqwidgets/jqxtoolbar.js +1 -1
  96. package/jqwidgets/jqxtooltip.js +1 -1
  97. package/jqwidgets/jqxtouch.js +1 -1
  98. package/jqwidgets/jqxtree.js +1 -1
  99. package/jqwidgets/jqxtreegrid.js +1 -1
  100. package/jqwidgets/jqxtreemap.js +1 -1
  101. package/jqwidgets/jqxvalidator.js +1 -1
  102. package/jqwidgets/jqxwindow.js +1 -1
  103. package/jqwidgets/modules/jqxbarcode.js +37 -27
  104. package/jqwidgets/modules/jqxbargauge.js +39 -31
  105. package/jqwidgets/modules/jqxbulletchart.js +42 -36
  106. package/jqwidgets/modules/jqxbuttongroup.js +42 -32
  107. package/jqwidgets/modules/jqxbuttons.js +39 -27
  108. package/jqwidgets/modules/jqxcalendar.js +47 -39
  109. package/jqwidgets/modules/jqxchart.js +8257 -8273
  110. package/jqwidgets/modules/jqxcheckbox.js +45 -37
  111. package/jqwidgets/modules/jqxcheckboxgroup.js +45 -37
  112. package/jqwidgets/modules/jqxcolorpicker.js +48 -42
  113. package/jqwidgets/modules/jqxcombobox.js +53 -51
  114. package/jqwidgets/modules/jqxcomplexinput.js +42 -32
  115. package/jqwidgets/modules/jqxdatatable.js +82 -122
  116. package/jqwidgets/modules/jqxdatetimeinput.js +72 -82
  117. package/jqwidgets/modules/jqxdocking.js +45 -37
  118. package/jqwidgets/modules/jqxdockinglayout.js +56 -56
  119. package/jqwidgets/modules/jqxdockpanel.js +42 -32
  120. package/jqwidgets/modules/jqxdragdrop.js +43 -35
  121. package/jqwidgets/modules/jqxdraw.js +36 -26
  122. package/jqwidgets/modules/jqxdropdownbutton.js +42 -32
  123. package/jqwidgets/modules/jqxdropdownlist.js +70 -78
  124. package/jqwidgets/modules/jqxeditor.js +86 -106
  125. package/jqwidgets/modules/jqxexpander.js +724 -711
  126. package/jqwidgets/modules/jqxfileupload.js +45 -37
  127. package/jqwidgets/modules/jqxform.js +83 -99
  128. package/jqwidgets/modules/jqxformattedinput.js +72 -80
  129. package/jqwidgets/modules/jqxgantt.js +39 -29
  130. package/jqwidgets/modules/jqxgauge.js +47 -41
  131. package/jqwidgets/modules/jqxgrid.js +757 -760
  132. package/jqwidgets/modules/jqxheatmap.js +40 -32
  133. package/jqwidgets/modules/jqxinput.js +43 -37
  134. package/jqwidgets/modules/jqxkanban.js +85 -103
  135. package/jqwidgets/modules/jqxknob.js +44 -36
  136. package/jqwidgets/modules/jqxlayout.js +56 -56
  137. package/jqwidgets/modules/jqxlineargauge.js +47 -41
  138. package/jqwidgets/modules/jqxlinkbutton.js +39 -27
  139. package/jqwidgets/modules/jqxlistbox.js +57 -57
  140. package/jqwidgets/modules/jqxlistmenu.js +81 -95
  141. package/jqwidgets/modules/jqxloader.js +37 -27
  142. package/jqwidgets/modules/jqxmaskedinput.js +37 -27
  143. package/jqwidgets/modules/jqxmenu.js +55 -53
  144. package/jqwidgets/modules/jqxnavbar.js +50 -44
  145. package/jqwidgets/modules/jqxnavigationbar.js +61 -63
  146. package/jqwidgets/modules/jqxnotification.js +50 -46
  147. package/jqwidgets/modules/jqxnumberinput.js +59 -61
  148. package/jqwidgets/modules/jqxpanel.js +47 -41
  149. package/jqwidgets/modules/jqxpasswordinput.js +49 -45
  150. package/jqwidgets/modules/jqxpivotdesigner.js +91 -113
  151. package/jqwidgets/modules/jqxpivotgrid.js +91 -113
  152. package/jqwidgets/modules/jqxpopover.js +42 -32
  153. package/jqwidgets/modules/jqxprogressbar.js +37 -27
  154. package/jqwidgets/modules/jqxqrcode.js +47 -43
  155. package/jqwidgets/modules/jqxradiobutongroup.js +45 -37
  156. package/jqwidgets/modules/jqxradiobutton.js +42 -32
  157. package/jqwidgets/modules/jqxrangeselector.js +42 -36
  158. package/jqwidgets/modules/jqxrating.js +42 -32
  159. package/jqwidgets/modules/jqxrepeatbutton.js +39 -27
  160. package/jqwidgets/modules/jqxresponsivepanel.js +40 -32
  161. package/jqwidgets/modules/jqxribbon.js +45 -37
  162. package/jqwidgets/modules/jqxscheduler.js +97 -149
  163. package/jqwidgets/modules/jqxscrollbar.js +41 -31
  164. package/jqwidgets/modules/jqxscrollview.js +41 -31
  165. package/jqwidgets/modules/jqxslider.js +41 -31
  166. package/jqwidgets/modules/jqxsortable.js +41 -31
  167. package/jqwidgets/modules/jqxsplitlayout.js +45 -24
  168. package/jqwidgets/modules/jqxsplitter.js +41 -31
  169. package/jqwidgets/modules/jqxswitchbutton.js +46 -40
  170. package/jqwidgets/modules/jqxtabs.js +57 -57
  171. package/jqwidgets/modules/jqxtagcloud.js +49 -45
  172. package/jqwidgets/modules/jqxtextarea.js +49 -45
  173. package/jqwidgets/modules/jqxtimeline.js +37 -27
  174. package/jqwidgets/modules/jqxtimepicker.js +38 -30
  175. package/jqwidgets/modules/jqxtogglebutton.js +39 -27
  176. package/jqwidgets/modules/jqxtoolbar.js +83 -99
  177. package/jqwidgets/modules/jqxtooltip.js +36 -26
  178. package/jqwidgets/modules/jqxtree.js +54 -54
  179. package/jqwidgets/modules/jqxtreegrid.js +84 -126
  180. package/jqwidgets/modules/jqxtreemap.js +41 -35
  181. package/jqwidgets/modules/jqxvalidator.js +46 -40
  182. package/jqwidgets/modules/jqxwindow.js +42 -32
  183. package/jqwidgets/styles/jqx.tailwind.css +3595 -0
  184. package/package.json +36 -34
  185. package/ReleaseNotes.txt +0 -3058
@@ -1,5 +1,13 @@
1
1
 
2
- /* Release Date: June-03-2025
2
+ /* Release Date: Sep-17-2025
3
+ Copyright (c) 2011-2025 jQWidgets.
4
+ License: https://jqwidgets.com/license/ */
5
+
6
+
7
+ /******/ (() => { // webpackBootstrap
8
+ var __webpack_exports__ = {};
9
+
10
+ /* Release Date: Sep-17-2025
3
11
  Copyright (c) 2011-2025 jQWidgets.
4
12
  License: https://jqwidgets.com/license/ */
5
13
 
@@ -559,6 +567,7 @@ License: https://jqwidgets.com/license/ */
559
567
  else {
560
568
  instance.element.style.cursor = 'default';
561
569
  }
570
+ instance.buttonObj.removeClass(instance.toThemeProperty('jqx-fill-state-hover'));
562
571
 
563
572
  $.jqx.aria(instance, "aria-disabled", instance.disabled);
564
573
  }
@@ -1050,6 +1059,7 @@ License: https://jqwidgets.com/license/ */
1050
1059
  };
1051
1060
  that.propertyChangeMap['disabled'] = function (instance, key, oldVal, value) {
1052
1061
  instance.base.disabled = value;
1062
+ instance.base.buttonObj.removeClass(instance.toThemeProperty('jqx-fill-state-hover'));
1053
1063
  instance.refresh();
1054
1064
  };
1055
1065
 
@@ -1189,22 +1199,20 @@ License: https://jqwidgets.com/license/ */
1189
1199
  //// End of ToggleButton
1190
1200
 
1191
1201
  })(jqxBaseFramework);
1192
- })();
1193
-
1194
-
1202
+ })();
1195
1203
 
1196
1204
  /***/ }),
1197
1205
 
1198
1206
  /***/ 5459:
1199
- /***/ ((module, exports, __webpack_require__) => {
1207
+ /***/ ((module, exports, __nested_webpack_require_52300__) => {
1200
1208
 
1201
1209
  var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disable */
1202
1210
  /* eslint-disable */
1203
- (function(){
1204
- if (typeof document === 'undefined') {
1211
+ (function () {
1212
+ if (typeof document === 'undefined') {
1205
1213
  return;
1206
1214
  }
1207
-
1215
+
1208
1216
  var oldBrowser = document.all && !document.addEventListener;
1209
1217
  if (!oldBrowser) {
1210
1218
  (function (window, undefined) {
@@ -9376,7 +9384,7 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disabl
9376
9384
  // file names, and JQXLite is normally delivered in a lowercase file name.
9377
9385
  // Do this after creating the global so that if an AMD module wants to call
9378
9386
  // noConflict to hide this version of JQXLite, it will work.
9379
- if ( true && __webpack_require__.amdO.JQXLite) {
9387
+ if ( true && __nested_webpack_require_52300__.amdO.JQXLite) {
9380
9388
  !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { return JQXLite; }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
9381
9389
  __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
9382
9390
  }
@@ -10262,6 +10270,10 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disabl
10262
10270
  return true;
10263
10271
  }
10264
10272
 
10273
+ if (this.theme === "tailwind" || this.theme === "tailwind-dark") {
10274
+ return true;
10275
+ }
10276
+
10265
10277
  if (this.theme === "light") {
10266
10278
  return true;
10267
10279
  }
@@ -11018,7 +11030,7 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disabl
11018
11030
  if (!$(element).on || !$.access) {
11019
11031
  return $(element).html(value);
11020
11032
  }
11021
- try {
11033
+ try {
11022
11034
  return $.access(element, function (value) {
11023
11035
  var elem = element[0] || {},
11024
11036
  i = 0,
@@ -11511,12 +11523,12 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disabl
11511
11523
  returnValue = returnValue + $(window).scrollTop();
11512
11524
  }
11513
11525
  if (/(Android.*Chrome\/[.0-9]* (!?Mobile))/.exec(navigator.userAgent)) {
11514
- return returnValue;
11515
- // return returnValue + $(window).scrollTop();
11526
+ return returnValue;
11527
+ // return returnValue + $(window).scrollTop();
11516
11528
  }
11517
11529
  if (/(Android.*Chrome\/[.0-9]* Mobile)/.exec(navigator.userAgent)) {
11518
11530
  return returnValue;
11519
- // return returnValue + $(window).scrollTop();
11531
+ // return returnValue + $(window).scrollTop();
11520
11532
  }
11521
11533
 
11522
11534
  return initialOffset.top;
@@ -12551,8 +12563,6 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* tslint:disabl
12551
12563
  }
12552
12564
  })(jqxBaseFramework);
12553
12565
  })();
12554
-
12555
-
12556
12566
 
12557
12567
 
12558
12568
  /***/ }),
@@ -17497,9 +17507,7 @@ var saveAs = window.jqxSaveAs = saveAs
17497
17507
 
17498
17508
 
17499
17509
  })(pdfDataExport.API)
17500
- })();
17501
-
17502
-
17510
+ })();
17503
17511
 
17504
17512
  /***/ }),
17505
17513
 
@@ -23646,9 +23654,7 @@ var saveAs = window.jqxSaveAs = saveAs
23646
23654
  }
23647
23655
  }
23648
23656
  } )( jqxBaseFramework );
23649
- })();
23650
-
23651
-
23657
+ })();
23652
23658
 
23653
23659
  /***/ }),
23654
23660
 
@@ -23657,91 +23663,150 @@ var saveAs = window.jqxSaveAs = saveAs
23657
23663
 
23658
23664
  /* tslint:disable */
23659
23665
  /* eslint-disable */
23660
- (function(){
23661
- if (typeof document === 'undefined') {
23662
- return;
23663
- }
23666
+ (function () {
23667
+ if (typeof document === 'undefined') {
23668
+ return;
23669
+ }
23664
23670
 
23665
- (function ($) {
23666
- 'use strict';
23667
- $.jqx.jqxWidget('jqxExpander', '', {});
23668
-
23669
- $.extend($.jqx._jqxExpander.prototype, {
23670
-
23671
- defineInstance: function () {
23672
- var settings =
23673
- {
23674
- //// properties
23675
- width: 'auto',
23676
- height: 'auto',
23677
- expanded: true, // possible values: true, false
23678
- expandAnimationDuration: 259,
23679
- collapseAnimationDuration: 250,
23680
- animationType: 'slide', // possible values: 'slide', 'fade', 'none'
23681
- toggleMode: 'click', //possible values: 'click', 'dblclick', 'none'
23682
- showArrow: true, // possible values: true, false
23683
- arrowPosition: 'right', // possible values: 'left', 'right'
23684
- headerPosition: 'top', // possible values: 'top', 'bottom'
23685
- disabled: false, // possible values: true, false
23686
- initContent: null, // callback function
23687
- rtl: false, // possible values: true, false
23688
- easing: 'easeInOutSine', // possible values: easeOutBack, easeInQuad, easeInOutCirc, easeInOutSine, easeInCubic, easeOutCubic, easeInOutCubic, easeInSine, easeOutSine, easeInOutSine
23689
- aria:
23690
- {
23691
- 'aria-disabled': { name: 'disabled', type: 'boolean' }
23692
- },
23693
- //// events
23694
- events: ['expanding', 'expanded', 'collapsing', 'collapsed', 'resize']
23695
- };
23696
- if (this === $.jqx._jqxExpander.prototype) {
23671
+ (function ($) {
23672
+ 'use strict';
23673
+ $.jqx.jqxWidget('jqxExpander', '', {});
23674
+
23675
+ $.extend($.jqx._jqxExpander.prototype, {
23676
+
23677
+ defineInstance: function () {
23678
+ var settings =
23679
+ {
23680
+ //// properties
23681
+ width: 'auto',
23682
+ height: 'auto',
23683
+ expanded: true, // possible values: true, false
23684
+ expandAnimationDuration: 259,
23685
+ collapseAnimationDuration: 250,
23686
+ animationType: 'slide', // possible values: 'slide', 'fade', 'none'
23687
+ toggleMode: 'click', //possible values: 'click', 'dblclick', 'none'
23688
+ showArrow: true, // possible values: true, false
23689
+ arrowPosition: 'right', // possible values: 'left', 'right'
23690
+ headerPosition: 'top', // possible values: 'top', 'bottom'
23691
+ disabled: false, // possible values: true, false
23692
+ initContent: null, // callback function
23693
+ rtl: false, // possible values: true, false
23694
+ easing: 'easeInOutSine', // possible values: easeOutBack, easeInQuad, easeInOutCirc, easeInOutSine, easeInCubic, easeOutCubic, easeInOutCubic, easeInSine, easeOutSine, easeInOutSine
23695
+ aria:
23696
+ {
23697
+ 'aria-disabled': { name: 'disabled', type: 'boolean' }
23698
+ },
23699
+ //// events
23700
+ events: ['expanding', 'expanded', 'collapsing', 'collapsed', 'resize']
23701
+ };
23702
+ if (this === $.jqx._jqxExpander.prototype) {
23703
+ return settings;
23704
+ }
23705
+ $.extend(true, this, settings);
23697
23706
  return settings;
23698
- }
23699
- $.extend(true, this, settings);
23700
- return settings;
23701
- },
23707
+ },
23702
23708
 
23703
- createInstance: function () {
23704
- this._isTouchDevice = $.jqx.mobile.isTouchDevice();
23705
- $.jqx.aria(this);
23706
- // saves the initial HTML structure in a variable
23707
- this._cachedHTMLStructure = this.host.html();
23709
+ createInstance: function () {
23710
+ this._isTouchDevice = $.jqx.mobile.isTouchDevice();
23711
+ $.jqx.aria(this);
23712
+ // saves the initial HTML structure in a variable
23713
+ this._cachedHTMLStructure = this.host.html();
23708
23714
 
23709
- // renders the widget
23710
- this._rendered = false;
23711
- this.render();
23712
- this._rendered = true;
23713
- },
23715
+ // renders the widget
23716
+ this._rendered = false;
23717
+ this.render();
23718
+ this._rendered = true;
23719
+ },
23714
23720
 
23715
- //// methods
23721
+ //// methods
23722
+
23723
+ //// public methods
23724
+
23725
+ // expands the content
23726
+ expand: function () {
23727
+ if (this.disabled === false && this.expanded === false && this._expandChecker == 1) {
23728
+ var that = this;
23729
+ this._expandChecker = 0;
23730
+ this._raiseEvent('0');
23731
+ this._header.removeClass(this.toThemeProperty('jqx-fill-state-normal'));
23732
+ this._header.addClass(this.toThemeProperty('jqx-fill-state-pressed jqx-expander-header-expanded'));
23733
+ if (this.headerPosition == 'top') {
23734
+ this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-down jqx-icon-arrow-down-hover jqx-icon-arrow-up-hover jqx-icon-arrow-down-selected jqx-expander-arrow-top'));
23735
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up jqx-icon-arrow-up-selected jqx-expander-arrow-bottom jqx-expander-arrow-expanded'));
23736
+ } else if (this.headerPosition == 'bottom') {
23737
+ this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-up jqx-icon-arrow-up-selected jqx-icon-arrow-down-hover jqx-icon-arrow-up-hover jqx-expander-arrow-bottom'));
23738
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down jqx-expander-arrow-top jqx-expander-arrow-expanded-top'));
23739
+ }
23740
+ switch (this.animationType) {
23741
+ case 'slide':
23742
+ if (this.headerPosition == 'top') {
23743
+ this._content.slideDown({
23744
+ duration: this.expandAnimationDuration,
23745
+ easing: this.easing,
23746
+ complete: function () {
23747
+ that.expanded = true;
23748
+ $.jqx.aria(that._header, 'aria-expanded', true);
23749
+ $.jqx.aria(that._content, 'aria-hidden', false);
23716
23750
 
23717
- //// public methods
23751
+ that._raiseEvent('1');
23752
+ if (that.initContent && that._initialized === false) {
23753
+ that.initContent();
23754
+ that._initialized = true;
23755
+ }
23756
+ }
23757
+ });
23758
+ } else if (this.headerPosition == 'bottom') {
23759
+ this._contentElement.style.display = '';
23760
+ this._contentElement.style.height = '0px';
23761
+ if ($.jqx.browser.msie && $.jqx.browser.version < 8) {
23762
+ this._contentElement.style.display = 'block';
23763
+ }
23718
23764
 
23719
- // expands the content
23720
- expand: function () {
23721
- if (this.disabled === false && this.expanded === false && this._expandChecker == 1) {
23722
- var that = this;
23723
- this._expandChecker = 0;
23724
- this._raiseEvent('0');
23725
- this._header.removeClass(this.toThemeProperty('jqx-fill-state-normal'));
23726
- this._header.addClass(this.toThemeProperty('jqx-fill-state-pressed jqx-expander-header-expanded'));
23727
- if (this.headerPosition == 'top') {
23728
- this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-down jqx-icon-arrow-down-hover jqx-icon-arrow-up-hover jqx-icon-arrow-down-selected jqx-expander-arrow-top'));
23729
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up jqx-icon-arrow-up-selected jqx-expander-arrow-bottom jqx-expander-arrow-expanded'));
23730
- } else if (this.headerPosition == 'bottom') {
23731
- this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-up jqx-icon-arrow-up-selected jqx-icon-arrow-down-hover jqx-icon-arrow-up-hover jqx-expander-arrow-bottom'));
23732
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down jqx-expander-arrow-top jqx-expander-arrow-expanded-top'));
23733
- }
23734
- switch (this.animationType) {
23735
- case 'slide':
23736
- if (this.headerPosition == 'top') {
23737
- this._content.slideDown({
23765
+ if (this._cntntEmpty === true) {
23766
+ this._content.animate({
23767
+ height: 0
23768
+ }, {
23769
+ duration: this.expandAnimationDuration,
23770
+ easing: this.easing,
23771
+ complete: function () {
23772
+ that.expanded = true;
23773
+ $.jqx.aria(that._header, 'aria-expanded', true);
23774
+ $.jqx.aria(that._content, 'aria-hidden', false);
23775
+ that._raiseEvent('1');
23776
+ if (that.initContent && that._initialized === false) {
23777
+ that.initContent();
23778
+ that._initialized = true;
23779
+ }
23780
+ }
23781
+ });
23782
+ } else {
23783
+ this._content.animate({
23784
+ height: this._contentHeight
23785
+ }, {
23786
+ duration: this.expandAnimationDuration,
23787
+ easing: this.easing,
23788
+ complete: function () {
23789
+ that.expanded = true;
23790
+ $.jqx.aria(that._header, 'aria-expanded', true);
23791
+ $.jqx.aria(that._content, 'aria-hidden', false);
23792
+ that._raiseEvent('1');
23793
+ if (that.initContent && that._initialized === false) {
23794
+ that.initContent();
23795
+ that._initialized = true;
23796
+ }
23797
+ }
23798
+ });
23799
+ }
23800
+ }
23801
+ break;
23802
+ case 'fade':
23803
+ this._content.fadeIn({
23738
23804
  duration: this.expandAnimationDuration,
23739
23805
  easing: this.easing,
23740
23806
  complete: function () {
23741
23807
  that.expanded = true;
23742
23808
  $.jqx.aria(that._header, 'aria-expanded', true);
23743
23809
  $.jqx.aria(that._content, 'aria-hidden', false);
23744
-
23745
23810
  that._raiseEvent('1');
23746
23811
  if (that.initContent && that._initialized === false) {
23747
23812
  that.initContent();
@@ -23749,106 +23814,74 @@ var saveAs = window.jqxSaveAs = saveAs
23749
23814
  }
23750
23815
  }
23751
23816
  });
23752
- } else if (this.headerPosition == 'bottom') {
23817
+ break;
23818
+ case 'none':
23753
23819
  this._contentElement.style.display = '';
23754
- this._contentElement.style.height = '0px';
23755
- if ($.jqx.browser.msie && $.jqx.browser.version < 8) {
23756
- this._contentElement.style.display = 'block';
23820
+ this.expanded = true;
23821
+ $.jqx.aria(that._header, 'aria-expanded', true);
23822
+ $.jqx.aria(that._content, 'aria-hidden', false);
23823
+ this._raiseEvent('1');
23824
+ if (this.initContent && this._initialized === false) {
23825
+ this.initContent();
23826
+ this._initialized = true;
23757
23827
  }
23828
+ break;
23829
+ }
23830
+ }
23831
+ },
23758
23832
 
23759
- if (this._cntntEmpty === true) {
23760
- this._content.animate({
23761
- height: 0
23762
- }, {
23763
- duration: this.expandAnimationDuration,
23833
+ // collapses the content
23834
+ collapse: function () {
23835
+ if (this.disabled === false && this.expanded === true && this._expandChecker === 0) {
23836
+ var that = this;
23837
+ this._expandChecker = 1;
23838
+ this._raiseEvent('2');
23839
+ this._header.removeClass(this.toThemeProperty('jqx-fill-state-pressed jqx-expander-header-expanded'));
23840
+ this._header.addClass(this.toThemeProperty('jqx-fill-state-normal'));
23841
+ if (this.headerPosition == 'top') {
23842
+ this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-up jqx-icon-arrow-up-selected jqx-expander-arrow-bottom jqx-expander-arrow-expanded'));
23843
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down jqx-expander-arrow-top'));
23844
+ if (that._hovered) {
23845
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down-hover'));
23846
+ }
23847
+ } else if (this.headerPosition == 'bottom') {
23848
+ this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-down jqx-icon-arrow-down-selected jqx-expander-arrow-top jqx-expander-arrow-expanded-top'));
23849
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up jqx-expander-arrow-bottom'));
23850
+ if (that._hovered) {
23851
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up-hover'));
23852
+ }
23853
+ }
23854
+ switch (this.animationType) {
23855
+ case 'slide':
23856
+ if (this.headerPosition == 'top') {
23857
+ this._content.slideUp({
23858
+ duration: this.collapseAnimationDuration,
23764
23859
  easing: this.easing,
23765
23860
  complete: function () {
23766
- that.expanded = true;
23767
- $.jqx.aria(that._header, 'aria-expanded', true);
23768
- $.jqx.aria(that._content, 'aria-hidden', false);
23769
- that._raiseEvent('1');
23770
- if (that.initContent && that._initialized === false) {
23771
- that.initContent();
23772
- that._initialized = true;
23773
- }
23861
+ that.expanded = false;
23862
+ $.jqx.aria(that._header, 'aria-expanded', false);
23863
+ $.jqx.aria(that._content, 'aria-hidden', true);
23864
+ that._raiseEvent('3');
23774
23865
  }
23775
23866
  });
23776
- } else {
23867
+ } else if (this.headerPosition == 'bottom') {
23777
23868
  this._content.animate({
23778
- height: this._contentHeight
23869
+ height: 0
23779
23870
  }, {
23780
23871
  duration: this.expandAnimationDuration,
23781
23872
  easing: this.easing,
23782
23873
  complete: function () {
23783
- that.expanded = true;
23784
- $.jqx.aria(that._header, 'aria-expanded', true);
23785
- $.jqx.aria(that._content, 'aria-hidden', false);
23786
- that._raiseEvent('1');
23787
- if (that.initContent && that._initialized === false) {
23788
- that.initContent();
23789
- that._initialized = true;
23790
- }
23874
+ that._contentElement.style.display = 'none';
23875
+ that.expanded = false;
23876
+ $.jqx.aria(that._header, 'aria-expanded', false);
23877
+ $.jqx.aria(that._content, 'aria-hidden', true);
23878
+ that._raiseEvent('3');
23791
23879
  }
23792
23880
  });
23793
23881
  }
23794
- }
23795
- break;
23796
- case 'fade':
23797
- this._content.fadeIn({
23798
- duration: this.expandAnimationDuration,
23799
- easing: this.easing,
23800
- complete: function () {
23801
- that.expanded = true;
23802
- $.jqx.aria(that._header, 'aria-expanded', true);
23803
- $.jqx.aria(that._content, 'aria-hidden', false);
23804
- that._raiseEvent('1');
23805
- if (that.initContent && that._initialized === false) {
23806
- that.initContent();
23807
- that._initialized = true;
23808
- }
23809
- }
23810
- });
23811
- break;
23812
- case 'none':
23813
- this._contentElement.style.display = '';
23814
- this.expanded = true;
23815
- $.jqx.aria(that._header, 'aria-expanded', true);
23816
- $.jqx.aria(that._content, 'aria-hidden', false);
23817
- this._raiseEvent('1');
23818
- if (this.initContent && this._initialized === false) {
23819
- this.initContent();
23820
- this._initialized = true;
23821
- }
23822
- break;
23823
- }
23824
- }
23825
- },
23826
-
23827
- // collapses the content
23828
- collapse: function () {
23829
- if (this.disabled === false && this.expanded === true && this._expandChecker === 0) {
23830
- var that = this;
23831
- this._expandChecker = 1;
23832
- this._raiseEvent('2');
23833
- this._header.removeClass(this.toThemeProperty('jqx-fill-state-pressed jqx-expander-header-expanded'));
23834
- this._header.addClass(this.toThemeProperty('jqx-fill-state-normal'));
23835
- if (this.headerPosition == 'top') {
23836
- this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-up jqx-icon-arrow-up-selected jqx-expander-arrow-bottom jqx-expander-arrow-expanded'));
23837
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down jqx-expander-arrow-top'));
23838
- if (that._hovered) {
23839
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down-hover'));
23840
- }
23841
- } else if (this.headerPosition == 'bottom') {
23842
- this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-down jqx-icon-arrow-down-selected jqx-expander-arrow-top jqx-expander-arrow-expanded-top'));
23843
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up jqx-expander-arrow-bottom'));
23844
- if (that._hovered) {
23845
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up-hover'));
23846
- }
23847
- }
23848
- switch (this.animationType) {
23849
- case 'slide':
23850
- if (this.headerPosition == 'top') {
23851
- this._content.slideUp({
23882
+ break;
23883
+ case 'fade':
23884
+ this._content.fadeOut({
23852
23885
  duration: this.collapseAnimationDuration,
23853
23886
  easing: this.easing,
23854
23887
  complete: function () {
@@ -23858,605 +23891,583 @@ var saveAs = window.jqxSaveAs = saveAs
23858
23891
  that._raiseEvent('3');
23859
23892
  }
23860
23893
  });
23861
- } else if (this.headerPosition == 'bottom') {
23862
- this._content.animate({
23863
- height: 0
23864
- }, {
23865
- duration: this.expandAnimationDuration,
23866
- easing: this.easing,
23867
- complete: function () {
23868
- that._contentElement.style.display = 'none';
23869
- that.expanded = false;
23870
- $.jqx.aria(that._header, 'aria-expanded', false);
23871
- $.jqx.aria(that._content, 'aria-hidden', true);
23872
- that._raiseEvent('3');
23873
- }
23874
- });
23875
- }
23876
- break;
23877
- case 'fade':
23878
- this._content.fadeOut({
23879
- duration: this.collapseAnimationDuration,
23880
- easing: this.easing,
23881
- complete: function () {
23882
- that.expanded = false;
23883
- $.jqx.aria(that._header, 'aria-expanded', false);
23884
- $.jqx.aria(that._content, 'aria-hidden', true);
23885
- that._raiseEvent('3');
23886
- }
23887
- });
23888
- break;
23889
- case 'none':
23890
- that._contentElement.style.display = 'none';
23891
- this.expanded = false;
23892
- $.jqx.aria(that._header, 'aria-expanded', false);
23893
- $.jqx.aria(that._content, 'aria-hidden', true);
23894
- this._raiseEvent('3');
23895
- break;
23894
+ break;
23895
+ case 'none':
23896
+ that._contentElement.style.display = 'none';
23897
+ this.expanded = false;
23898
+ $.jqx.aria(that._header, 'aria-expanded', false);
23899
+ $.jqx.aria(that._content, 'aria-hidden', true);
23900
+ this._raiseEvent('3');
23901
+ break;
23902
+ }
23896
23903
  }
23897
- }
23898
- },
23899
-
23900
- // sets the header's content
23901
- setHeaderContent: function (headerContent) {
23902
- this._headerText.innerHTML = headerContent;
23903
- this.invalidate();
23904
- },
23905
-
23906
- // gets the header's content
23907
- getHeaderContent: function () {
23908
- return this._headerText.innerHTML;
23909
- },
23910
-
23911
- // sets the content
23912
- setContent: function (content) {
23913
- this._content.html(content);
23914
- this._checkContent();
23915
- this.invalidate();
23916
- },
23904
+ },
23917
23905
 
23918
- // gets the content
23919
- getContent: function () {
23920
- return this._content.html();
23921
- },
23906
+ // sets the header's content
23907
+ setHeaderContent: function (headerContent) {
23908
+ this._headerText.innerHTML = headerContent;
23909
+ this.invalidate();
23910
+ },
23922
23911
 
23923
- // enables the widget
23924
- enable: function () {
23925
- this.disabled = false;
23926
- this.refresh();
23927
- $.jqx.aria(this, 'aria-disabled', false);
23928
- },
23912
+ // gets the header's content
23913
+ getHeaderContent: function () {
23914
+ return this._headerText.innerHTML;
23915
+ },
23929
23916
 
23930
- // disables the widget
23931
- disable: function () {
23932
- this.disabled = true;
23933
- this.refresh();
23934
- $.jqx.aria(this, 'aria-disabled', true);
23935
- },
23917
+ // sets the content
23918
+ setContent: function (content) {
23919
+ this._content.html(content);
23920
+ this._checkContent();
23921
+ this.invalidate();
23922
+ },
23936
23923
 
23937
- // refreshes the widget
23938
- invalidate: function () {
23939
- if ($.jqx.isHidden(this.host)) {
23940
- return;
23941
- }
23924
+ // gets the content
23925
+ getContent: function () {
23926
+ return this._content.html();
23927
+ },
23942
23928
 
23943
- this._setSize();
23944
- },
23929
+ // enables the widget
23930
+ enable: function () {
23931
+ this.disabled = false;
23932
+ this.refresh();
23933
+ $.jqx.aria(this, 'aria-disabled', false);
23934
+ },
23945
23935
 
23946
- // refreshes the widget
23947
- refresh: function (initialRefresh) {
23948
- if (initialRefresh === true) {
23949
- return;
23950
- }
23936
+ // disables the widget
23937
+ disable: function () {
23938
+ this.disabled = true;
23939
+ this.refresh();
23940
+ $.jqx.aria(this, 'aria-disabled', true);
23941
+ },
23951
23942
 
23952
- this._removeHandlers();
23953
- if (this.showArrow === true) {
23954
- this._arrowElement.style.display = '';
23955
- } else {
23956
- this._arrowElement.style.display = 'none';
23957
- }
23958
- this._setTheme();
23959
- this._setSize();
23960
- if (this.disabled === false) {
23961
- this._toggle();
23962
- }
23963
- this._keyBoard();
23964
- },
23943
+ // refreshes the widget
23944
+ invalidate: function () {
23945
+ if ($.jqx.isHidden(this.host)) {
23946
+ return;
23947
+ }
23965
23948
 
23966
- // renders the widget
23967
- render: function () {
23968
- var that = this;
23949
+ this._setSize();
23950
+ },
23969
23951
 
23970
- if (that._rendered) {
23971
- that.refresh();
23972
- return;
23973
- }
23952
+ // refreshes the widget
23953
+ refresh: function (initialRefresh) {
23954
+ if (initialRefresh === true) {
23955
+ return;
23956
+ }
23974
23957
 
23975
- this.widgetID = this.element.id;
23958
+ this._removeHandlers();
23959
+ if (this.showArrow === true) {
23960
+ this._arrowElement.style.display = '';
23961
+ } else {
23962
+ this._arrowElement.style.display = 'none';
23963
+ }
23964
+ this._setTheme();
23965
+ this._setSize();
23966
+ if (this.disabled === false) {
23967
+ this._toggle();
23968
+ }
23969
+ this._keyBoard();
23970
+ },
23976
23971
 
23977
- var hostChildren = this.host.children();
23978
- this._headerText = hostChildren[0];
23972
+ // renders the widget
23973
+ render: function () {
23974
+ var that = this;
23979
23975
 
23980
- this._headerElement = document.createElement('div');
23981
- this._header = $(this._headerElement);
23976
+ if (that._rendered) {
23977
+ that.refresh();
23978
+ return;
23979
+ }
23982
23980
 
23983
- this._contentElement = hostChildren[1];
23984
- this._content = $(this._contentElement);
23985
- if (this._content.initAnimate) {
23986
- this._content.initAnimate();
23987
- }
23981
+ this.widgetID = this.element.id;
23988
23982
 
23989
- if (this.headerPosition === 'top') {
23990
- that.element.insertBefore(that._headerElement, that._headerText);
23991
- } else {
23992
- that.element.appendChild(that._headerElement);
23993
- }
23994
- that._headerElement.appendChild(that._headerText);
23983
+ var hostChildren = this.host.children();
23984
+ this._headerText = hostChildren[0];
23995
23985
 
23996
- // defines the header text section
23997
- var className = this._headerText.className;
23998
- this._headerElement.className = className;
23999
- this._headerText.className = '';
24000
- if (!this.rtl) {
24001
- this._headerText.className += ' ' + that.toThemeProperty('jqx-expander-header-content');
24002
- }
24003
- else {
24004
- this._headerText.className += ' ' + that.toThemeProperty('jqx-expander-header-content-rtl');
24005
- }
23986
+ this._headerElement = document.createElement('div');
23987
+ this._header = $(this._headerElement);
24006
23988
 
24007
- // appends an arrow to the header
24008
- that._arrowElement = document.createElement('div');
24009
- that._headerElement.appendChild(that._arrowElement);
24010
- this._arrow = $(that._arrowElement);
24011
- if (this.showArrow === true) {
24012
- that._arrowElement.style.display = '';
24013
- } else {
24014
- that._arrowElement.style.display = 'none';
24015
- }
23989
+ this._contentElement = hostChildren[1];
23990
+ this._content = $(this._contentElement);
23991
+ if (this._content.initAnimate) {
23992
+ this._content.initAnimate();
23993
+ }
24016
23994
 
24017
- // sets the tabindex attribute of the header and conten if it is not already set
24018
- if (this._headerElement.getAttribute('tabindex') === null && this._contentElement.getAttribute('tabindex') === null) {
24019
- if (that.headerPosition === 'top') {
24020
- this._headerElement.setAttribute('tabindex', 1);
24021
- this._contentElement.setAttribute('tabindex', 2);
23995
+ if (this.headerPosition === 'top') {
23996
+ that.element.insertBefore(that._headerElement, that._headerText);
24022
23997
  } else {
24023
- this._headerElement.setAttribute('tabindex', 2);
24024
- this._contentElement.setAttribute('tabindex', 1);
23998
+ that.element.appendChild(that._headerElement);
24025
23999
  }
24026
- }
24027
-
24028
- // sets the expander's theme and classes
24029
- this._setTheme();
24000
+ that._headerElement.appendChild(that._headerText);
24030
24001
 
24031
- // checks whether the HTML structure of the widget is valid and alerts the user if not
24032
- var exceptionMessage = 'Invalid jqxExpander structure. Please add only two child div elements to your jqxExpander div that will represent the expander\'s header and content.';
24033
- try {
24034
- if (this._header.length === 0 || this._content.length === 0 || hostChildren.length < 2 || hostChildren.length > 2) {
24035
- throw exceptionMessage;
24002
+ // defines the header text section
24003
+ var className = this._headerText.className;
24004
+ this._headerElement.className = className;
24005
+ this._headerText.className = '';
24006
+ if (!this.rtl) {
24007
+ this._headerText.className += ' ' + that.toThemeProperty('jqx-expander-header-content');
24036
24008
  }
24037
- } catch (exception) {
24038
- throw new Error(exception);
24039
- }
24040
-
24041
- // sets the width and height of the widget
24042
- this._setSize();
24043
-
24044
- // checks if content is expanded initially
24045
- if (this.expanded === true) {
24046
- if (this.headerPosition == 'top') {
24047
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up jqx-icon-arrow-up-selected jqx-expander-arrow-bottom jqx-expander-arrow-expanded'));
24048
- } else if (this.headerPosition == 'bottom') {
24049
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down jqx-icon-arrow-down-selected jqx-expander-arrow-top jqx-expander-arrow-expanded-top'));
24009
+ else {
24010
+ this._headerText.className += ' ' + that.toThemeProperty('jqx-expander-header-content-rtl');
24050
24011
  }
24051
- if (this.initContent) {
24052
- //this._setSize();
24053
- this.initContent();
24012
+
24013
+ // appends an arrow to the header
24014
+ that._arrowElement = document.createElement('div');
24015
+ that._headerElement.appendChild(that._arrowElement);
24016
+ this._arrow = $(that._arrowElement);
24017
+ if (this.showArrow === true) {
24018
+ that._arrowElement.style.display = '';
24019
+ } else {
24020
+ that._arrowElement.style.display = 'none';
24054
24021
  }
24055
- this._initialized = true;
24056
- this._expandChecker = 0;
24057
- } else if (this.expanded === false) {
24058
- this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-down-selected jqx-icon-arrow-up-selected'));
24059
- if (this.headerPosition == 'top') {
24060
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down jqx-expander-arrow-top'));
24061
- } else if (this.headerPosition == 'bottom') {
24062
- this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up jqx-expander-arrow-bottom'));
24022
+
24023
+ // sets the tabindex attribute of the header and conten if it is not already set
24024
+ if (this._headerElement.getAttribute('tabindex') === null && this._contentElement.getAttribute('tabindex') === null) {
24025
+ if (that.headerPosition === 'top') {
24026
+ this._headerElement.setAttribute('tabindex', 1);
24027
+ this._contentElement.setAttribute('tabindex', 2);
24028
+ } else {
24029
+ this._headerElement.setAttribute('tabindex', 2);
24030
+ this._contentElement.setAttribute('tabindex', 1);
24031
+ }
24063
24032
  }
24064
- this._initialized = false;
24065
- this._expandChecker = 1;
24066
- this._contentElement.style.display = 'none';
24067
- }
24068
24033
 
24069
- // checks if the content is empty
24070
- this._checkContent();
24034
+ // sets the expander's theme and classes
24035
+ this._setTheme();
24071
24036
 
24072
- // toggles the widget
24073
- if (this.disabled === false) {
24074
- this._toggle();
24075
- }
24037
+ // checks whether the HTML structure of the widget is valid and alerts the user if not
24038
+ var exceptionMessage = 'Invalid jqxExpander structure. Please add only two child div elements to your jqxExpander div that will represent the expander\'s header and content.';
24039
+ try {
24040
+ if (this._header.length === 0 || this._content.length === 0 || hostChildren.length < 2 || hostChildren.length > 2) {
24041
+ throw exceptionMessage;
24042
+ }
24043
+ } catch (exception) {
24044
+ throw new Error(exception);
24045
+ }
24076
24046
 
24077
- // adds keyboard interaction
24078
- this._keyBoard();
24047
+ // sets the width and height of the widget
24048
+ this._setSize();
24079
24049
 
24080
- $.jqx.utilities.resize(this.host, function () {
24081
- that.invalidate();
24082
- });
24083
- },
24050
+ // checks if content is expanded initially
24051
+ if (this.expanded === true) {
24052
+ if (this.headerPosition == 'top') {
24053
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up jqx-icon-arrow-up-selected jqx-expander-arrow-bottom jqx-expander-arrow-expanded'));
24054
+ } else if (this.headerPosition == 'bottom') {
24055
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down jqx-icon-arrow-down-selected jqx-expander-arrow-top jqx-expander-arrow-expanded-top'));
24056
+ }
24057
+ if (this.initContent) {
24058
+ //this._setSize();
24059
+ this.initContent();
24060
+ }
24061
+ this._initialized = true;
24062
+ this._expandChecker = 0;
24063
+ } else if (this.expanded === false) {
24064
+ this._arrow.removeClass(this.toThemeProperty('jqx-icon-arrow-down-selected jqx-icon-arrow-up-selected'));
24065
+ if (this.headerPosition == 'top') {
24066
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-down jqx-expander-arrow-top'));
24067
+ } else if (this.headerPosition == 'bottom') {
24068
+ this._arrow.addClass(this.toThemeProperty('jqx-icon-arrow-up jqx-expander-arrow-bottom'));
24069
+ }
24070
+ this._initialized = false;
24071
+ this._expandChecker = 1;
24072
+ this._contentElement.style.display = 'none';
24073
+ }
24084
24074
 
24085
- // removes the widget
24086
- destroy: function () {
24087
- this.removeHandler($(window), 'resize.expander' + this.widgetID);
24088
- this.host.remove();
24089
- $(this.element).removeData('jqxExpander');
24090
- },
24075
+ // checks if the content is empty
24076
+ this._checkContent();
24091
24077
 
24092
- // focuses on the widget
24093
- focus: function () {
24094
- try {
24078
+ // toggles the widget
24095
24079
  if (this.disabled === false) {
24096
- this._headerElement.focus();
24080
+ this._toggle();
24097
24081
  }
24098
- }
24099
- catch (error) {
24100
- }
24101
- },
24102
24082
 
24103
- //// private methods
24104
- propertiesChangedHandler: function (object, key, value) {
24105
- if (value.width && value.height && Object.keys(value).length == 2) {
24106
- object._setSize();
24107
- }
24108
- },
24083
+ // adds keyboard interaction
24084
+ this._keyBoard();
24109
24085
 
24110
- // called when a property is changed
24111
- propertyChangedHandler: function (object, key, oldvalue, value) {
24112
- if (object.batchUpdate && object.batchUpdate.width && object.batchUpdate.height && Object.keys(object.batchUpdate).length == 2) {
24113
- return;
24114
- }
24086
+ $.jqx.utilities.resize(this.host, function () {
24087
+ that.invalidate();
24088
+ });
24089
+ },
24115
24090
 
24116
- if (key == 'width' || key == 'height') {
24117
- object._setSize();
24118
- return;
24119
- }
24091
+ // removes the widget
24092
+ destroy: function () {
24093
+ this.removeHandler($(window), 'resize.expander' + this.widgetID);
24094
+ this.host.remove();
24095
+ $(this.element).removeData('jqxExpander');
24096
+ },
24120
24097
 
24121
- if (key == 'expanded') {
24122
- if (value === true && oldvalue === false) {
24123
- this.expanded = false;
24124
- this.expand();
24125
- } else if (value === false && oldvalue === true) {
24126
- this.expanded = true;
24127
- this.collapse();
24098
+ // focuses on the widget
24099
+ focus: function () {
24100
+ try {
24101
+ if (this.disabled === false) {
24102
+ this._headerElement.focus();
24103
+ }
24128
24104
  }
24129
- } else {
24130
- this.refresh();
24131
- }
24132
- },
24105
+ catch (error) {
24106
+ }
24107
+ },
24133
24108
 
24134
- // raises an event
24135
- _raiseEvent: function (id, args) {
24136
- var evt = this.events[id];
24137
- var event = new $.Event(evt);
24138
- event.owner = this;
24139
- event.args = args;
24109
+ //// private methods
24110
+ propertiesChangedHandler: function (object, key, value) {
24111
+ if (value.width && value.height && Object.keys(value).length == 2) {
24112
+ object._setSize();
24113
+ }
24114
+ },
24140
24115
 
24141
- var result;
24142
- try {
24143
- result = this.host.trigger(event);
24144
- }
24145
- catch (error) {
24146
- }
24116
+ // called when a property is changed
24117
+ propertyChangedHandler: function (object, key, oldvalue, value) {
24118
+ if (object.batchUpdate && object.batchUpdate.width && object.batchUpdate.height && Object.keys(object.batchUpdate).length == 2) {
24119
+ return;
24120
+ }
24147
24121
 
24148
- return result;
24149
- },
24122
+ if (key == 'width' || key == 'height') {
24123
+ object._setSize();
24124
+ return;
24125
+ }
24150
24126
 
24151
- resize: function (width, height) {
24152
- this.width = width;
24153
- this.height = height;
24154
- this._setSize();
24155
- },
24127
+ if (key === 'headerPosition') {
24128
+ var that = this;
24129
+ that._rendered = false;
24130
+ that._headerElement.innerHTML = that._headerText.innerHTML;
24131
+ this.render();
24132
+ that._rendered = true;
24133
+ }
24134
+ if (key == 'expanded') {
24135
+ if (value === true && oldvalue === false) {
24136
+ this.expanded = false;
24137
+ this.expand();
24138
+ } else if (value === false && oldvalue === true) {
24139
+ this.expanded = true;
24140
+ this.collapse();
24141
+ }
24142
+ } else {
24143
+ this.refresh();
24144
+ }
24145
+ },
24156
24146
 
24157
- // sets the width and height of the widget
24158
- _setSize: function () {
24159
- this.element.style.width = this._toPx(this.width);
24160
- this.element.style.height = this._toPx(this.height);
24147
+ // raises an event
24148
+ _raiseEvent: function (id, args) {
24149
+ var evt = this.events[id];
24150
+ var event = new $.Event(evt);
24151
+ event.owner = this;
24152
+ event.args = args;
24161
24153
 
24162
- this._headerElement.style.height = 'auto';
24163
- this._headerElement.style.minHeight = this._arrowElement.offsetHeight;
24154
+ var result;
24155
+ try {
24156
+ result = this.host.trigger(event);
24157
+ }
24158
+ catch (error) {
24159
+ }
24164
24160
 
24165
- // sets the arrow position
24166
- var arrowPosition = this.arrowPosition;
24167
- if (this.rtl) {
24168
- switch (arrowPosition) {
24169
- case 'left':
24170
- arrowPosition = 'right';
24171
- break;
24172
- case 'right':
24173
- arrowPosition = 'left';
24174
- break;
24161
+ return result;
24162
+ },
24163
+
24164
+ resize: function (width, height) {
24165
+ this.width = width;
24166
+ this.height = height;
24167
+ this._setSize();
24168
+ },
24169
+
24170
+ // sets the width and height of the widget
24171
+ _setSize: function () {
24172
+ this.element.style.width = this._toPx(this.width);
24173
+ this.element.style.height = this._toPx(this.height);
24174
+
24175
+ this._headerElement.style.height = 'auto';
24176
+ this._headerElement.style.minHeight = this._arrowElement.offsetHeight;
24177
+
24178
+ // sets the arrow position
24179
+ var arrowPosition = this.arrowPosition;
24180
+ if (this.rtl) {
24181
+ switch (arrowPosition) {
24182
+ case 'left':
24183
+ arrowPosition = 'right';
24184
+ break;
24185
+ case 'right':
24186
+ arrowPosition = 'left';
24187
+ break;
24188
+ }
24175
24189
  }
24176
- }
24177
- if (arrowPosition == 'right') {
24178
- this._headerText.style['float'] = 'left';
24179
- this._headerText.style.marginLeft = '0px';
24180
- this._arrowElement.style['float'] = 'right';
24181
- this._arrowElement.style.position = 'relative';
24182
- } else if (arrowPosition == 'left') {
24183
- if (this.width == 'auto') {
24190
+ if (arrowPosition == 'right') {
24184
24191
  this._headerText.style['float'] = 'left';
24185
- this._headerText.style.marginLeft = '17px';
24186
- this._arrowElement.style['float'] = 'left';
24187
- this._arrowElement.style.position = 'absolute';
24188
- } else {
24189
- this._headerText.style['float'] = 'right';
24190
24192
  this._headerText.style.marginLeft = '0px';
24191
- this._arrowElement.style['float'] = 'left';
24193
+ this._arrowElement.style['float'] = 'right';
24192
24194
  this._arrowElement.style.position = 'relative';
24195
+ } else if (arrowPosition == 'left') {
24196
+ if (this.width == 'auto') {
24197
+ this._headerText.style['float'] = 'left';
24198
+ this._headerText.style.marginLeft = '17px';
24199
+ this._arrowElement.style['float'] = 'left';
24200
+ this._arrowElement.style.position = 'absolute';
24201
+ } else {
24202
+ this._headerText.style['float'] = 'right';
24203
+ this._headerText.style.marginLeft = '0px';
24204
+ this._arrowElement.style['float'] = 'left';
24205
+ this._arrowElement.style.position = 'relative';
24206
+ }
24193
24207
  }
24194
- }
24195
- this._arrowElement.style.marginTop = (this._headerText.offsetHeight / 2 - this._arrowElement.offsetHeight / 2) + 'px';
24208
+ this._arrowElement.style.marginTop = (this._headerText.offsetHeight / 2 - this._arrowElement.offsetHeight / 2) + 'px';
24196
24209
 
24197
- this._contentElement.style.height = 'auto';
24198
- var actualContentHeight = Math.max(0, this._content.height());
24199
- if (this.height == 'auto') {
24200
- this._contentHeight = actualContentHeight;
24201
- } else {
24202
- var newHeight = Math.round(this.element.offsetHeight) - Math.round(this._header.outerHeight()) - 1;
24203
- if (newHeight < 0) {
24204
- newHeight = 0;
24205
- }
24206
- if (!this._contentHeight) {
24210
+ this._contentElement.style.height = 'auto';
24211
+ var actualContentHeight = Math.max(0, this._content.height());
24212
+ if (this.height == 'auto') {
24207
24213
  this._contentHeight = actualContentHeight;
24208
- }
24209
- if (newHeight != this._contentHeight) {
24210
- this._contentElement.style.height = this._toPx(newHeight);
24211
- this._contentHeight = Math.round(this._content.outerHeight());
24212
24214
  } else {
24213
- this._contentElement.style.height = this._toPx(this._contentHeight);
24215
+ var newHeight = Math.round(this.element.offsetHeight) - Math.round(this._header.outerHeight()) - 1;
24216
+ if (newHeight < 0) {
24217
+ newHeight = 0;
24218
+ }
24219
+ if (!this._contentHeight) {
24220
+ this._contentHeight = actualContentHeight;
24221
+ }
24222
+ if (newHeight != this._contentHeight) {
24223
+ this._contentElement.style.height = this._toPx(newHeight);
24224
+ this._contentHeight = Math.round(this._content.outerHeight());
24225
+ } else {
24226
+ this._contentElement.style.height = this._toPx(this._contentHeight);
24227
+ }
24214
24228
  }
24215
- }
24216
- },
24229
+ },
24217
24230
 
24218
- // toggles the expander
24219
- _toggle: function () {
24220
- var that = this;
24221
- if (this._isTouchDevice === false) {
24222
- this._header.removeClass(this.toThemeProperty('jqx-expander-header-disabled'));
24223
- switch (this.toggleMode) {
24224
- case 'click':
24225
- this.addHandler(this._header, 'click.expander' + this.widgetID, function () {
24226
- that._animate();
24227
- });
24228
- break;
24229
- case 'dblclick':
24230
- this.addHandler(this._header, 'dblclick.expander' + this.widgetID, function () {
24231
+ // toggles the expander
24232
+ _toggle: function () {
24233
+ var that = this;
24234
+ if (this._isTouchDevice === false) {
24235
+ this._header.removeClass(this.toThemeProperty('jqx-expander-header-disabled'));
24236
+ switch (this.toggleMode) {
24237
+ case 'click':
24238
+ this.addHandler(this._header, 'click.expander' + this.widgetID, function () {
24239
+ that._animate();
24240
+ });
24241
+ break;
24242
+ case 'dblclick':
24243
+ this.addHandler(this._header, 'dblclick.expander' + this.widgetID, function () {
24244
+ that._animate();
24245
+ });
24246
+ break;
24247
+ case 'none':
24248
+ this._header.addClass(this.toThemeProperty('jqx-expander-header-disabled'));
24249
+ break;
24250
+ }
24251
+ } else {
24252
+ if (this.toggleMode != 'none') {
24253
+ this.addHandler(this._header, $.jqx.mobile.getTouchEventName('touchstart') + '.' + this.widgetID, function () {
24231
24254
  that._animate();
24232
24255
  });
24233
- break;
24234
- case 'none':
24235
- this._header.addClass(this.toThemeProperty('jqx-expander-header-disabled'));
24236
- break;
24237
- }
24238
- } else {
24239
- if (this.toggleMode != 'none') {
24240
- this.addHandler(this._header, $.jqx.mobile.getTouchEventName('touchstart') + '.' + this.widgetID, function () {
24241
- that._animate();
24242
- });
24243
- } else {
24244
- return;
24256
+ } else {
24257
+ return;
24258
+ }
24245
24259
  }
24246
- }
24247
- },
24260
+ },
24248
24261
 
24249
- // calls for either expand() or collapse()
24250
- _animate: function () {
24251
- if (this.expanded === true) {
24252
- this.collapse();
24253
- this._header.addClass(this.toThemeProperty('jqx-fill-state-hover jqx-expander-header-hover'));
24254
- if (this.headerPosition == 'top') {
24255
- this._arrow.addClass(this.toThemeProperty('jqx-expander-arrow-top-hover jqx-expander-arrow-down-hover'));
24256
- } else if (this.headerPosition == 'bottom') {
24257
- this._arrow.addClass(this.toThemeProperty('jqx-expander-arrow-bottom-hover jqx-expander-arrow-up-hover'));
24258
- }
24259
- } else {
24260
- this.expand();
24261
- this._header.removeClass(this.toThemeProperty('jqx-fill-state-hover jqx-expander-header-hover'));
24262
- if (this.headerPosition == 'top') {
24263
- this._arrow.removeClass(this.toThemeProperty('jqx-expander-arrow-top-hover jqx-expander-arrow-down-hover'));
24264
- } else if (this.headerPosition == 'bottom') {
24265
- this._arrow.removeClass(this.toThemeProperty('jqx-expander-arrow-bottom-hover jqx-expander-arrow-up-hover'));
24262
+ // calls for either expand() or collapse()
24263
+ _animate: function () {
24264
+ if (this.expanded === true) {
24265
+ this.collapse();
24266
+ this._header.addClass(this.toThemeProperty('jqx-fill-state-hover jqx-expander-header-hover'));
24267
+ if (this.headerPosition == 'top') {
24268
+ this._arrow.addClass(this.toThemeProperty('jqx-expander-arrow-top-hover jqx-expander-arrow-down-hover'));
24269
+ } else if (this.headerPosition == 'bottom') {
24270
+ this._arrow.addClass(this.toThemeProperty('jqx-expander-arrow-bottom-hover jqx-expander-arrow-up-hover'));
24271
+ }
24272
+ } else {
24273
+ this.expand();
24274
+ this._header.removeClass(this.toThemeProperty('jqx-fill-state-hover jqx-expander-header-hover'));
24275
+ if (this.headerPosition == 'top') {
24276
+ this._arrow.removeClass(this.toThemeProperty('jqx-expander-arrow-top-hover jqx-expander-arrow-down-hover'));
24277
+ } else if (this.headerPosition == 'bottom') {
24278
+ this._arrow.removeClass(this.toThemeProperty('jqx-expander-arrow-bottom-hover jqx-expander-arrow-up-hover'));
24279
+ }
24266
24280
  }
24267
- }
24268
- },
24281
+ },
24269
24282
 
24270
- // removes event handlers
24271
- _removeHandlers: function () {
24272
- this.removeHandler(this._header, 'click.expander' + this.widgetID);
24273
- this.removeHandler(this._header, 'dblclick.expander' + this.widgetID);
24274
- this.removeHandler(this._header, 'mouseenter.expander' + this.widgetID);
24275
- this.removeHandler(this._header, 'mouseleave.expander' + this.widgetID);
24276
- },
24283
+ // removes event handlers
24284
+ _removeHandlers: function () {
24285
+ this.removeHandler(this._header, 'click.expander' + this.widgetID);
24286
+ this.removeHandler(this._header, 'dblclick.expander' + this.widgetID);
24287
+ this.removeHandler(this._header, 'mouseenter.expander' + this.widgetID);
24288
+ this.removeHandler(this._header, 'mouseleave.expander' + this.widgetID);
24289
+ },
24277
24290
 
24278
- // sets the expander's theme and classes
24279
- _setTheme: function () {
24280
- var that = this,
24281
- hostClass = 'jqx-widget jqx-expander',
24282
- headerClass = 'jqx-widget-header jqx-expander-header',
24283
- contentClass = 'jqx-widget-content jqx-expander-content';
24291
+ // sets the expander's theme and classes
24292
+ _setTheme: function () {
24293
+ var that = this,
24294
+ hostClass = 'jqx-widget jqx-expander',
24295
+ headerClass = 'jqx-widget-header jqx-expander-header',
24296
+ contentClass = 'jqx-widget-content jqx-expander-content';
24284
24297
 
24285
- if (this.rtl === true) {
24286
- hostClass += ' jqx-rtl';
24287
- }
24298
+ if (this.rtl === true) {
24299
+ hostClass += ' jqx-rtl';
24300
+ }
24288
24301
 
24289
- if (this.disabled === false) {
24290
- this._header.removeClass(this.toThemeProperty('jqx-expander-header-disabled'));
24291
- this.host.removeClass(this.toThemeProperty('jqx-fill-state-disabled'));
24292
- if (this.expanded === true) {
24293
- headerClass += ' jqx-fill-state-pressed jqx-expander-header-expanded';
24294
- } else {
24295
- headerClass += ' jqx-fill-state-normal';
24296
- this._header.removeClass(this.toThemeProperty('jqx-expander-header-expanded'));
24297
- }
24298
-
24299
- this._hovered = false;
24300
- if (!that._isTouchDevice) {
24301
- // adds events on hover over header
24302
- this.addHandler(this._header, 'mouseenter.expander' + this.widgetID, function () {
24303
- that._hovered = true;
24304
- if (that._expandChecker == 1) {
24305
- that._header.removeClass(that.toThemeProperty('jqx-fill-state-normal jqx-fill-state-pressed'));
24306
- that._header.addClass(that.toThemeProperty('jqx-fill-state-hover jqx-expander-header-hover'));
24307
- if (that.headerPosition == 'top') {
24308
- if (that.expanded) {
24309
- that._arrow.addClass(that.toThemeProperty('jqx-icon-arrow-up-hover'));
24310
- } else {
24311
- that._arrow.addClass(that.toThemeProperty('jqx-icon-arrow-down-hover'));
24302
+ if (this.disabled === false) {
24303
+ this._header.removeClass(this.toThemeProperty('jqx-expander-header-disabled'));
24304
+ this.host.removeClass(this.toThemeProperty('jqx-fill-state-disabled'));
24305
+ if (this.expanded === true) {
24306
+ headerClass += ' jqx-fill-state-pressed jqx-expander-header-expanded';
24307
+ } else {
24308
+ headerClass += ' jqx-fill-state-normal';
24309
+ this._header.removeClass(this.toThemeProperty('jqx-expander-header-expanded'));
24310
+ }
24311
+
24312
+ this._hovered = false;
24313
+ if (!that._isTouchDevice) {
24314
+ // adds events on hover over header
24315
+ this.addHandler(this._header, 'mouseenter.expander' + this.widgetID, function () {
24316
+ that._hovered = true;
24317
+ if (that._expandChecker == 1) {
24318
+ that._header.removeClass(that.toThemeProperty('jqx-fill-state-normal jqx-fill-state-pressed'));
24319
+ that._header.addClass(that.toThemeProperty('jqx-fill-state-hover jqx-expander-header-hover'));
24320
+ if (that.headerPosition == 'top') {
24321
+ if (that.expanded) {
24322
+ that._arrow.addClass(that.toThemeProperty('jqx-icon-arrow-up-hover'));
24323
+ } else {
24324
+ that._arrow.addClass(that.toThemeProperty('jqx-icon-arrow-down-hover'));
24325
+ }
24326
+ that._arrow.addClass(that.toThemeProperty('jqx-expander-arrow-top-hover jqx-expander-arrow-down-hover'));
24327
+ } else if (that.headerPosition == 'bottom') {
24328
+ if (that.expanded) {
24329
+ that._arrow.addClass(that.toThemeProperty('jqx-icon-arrow-down-hover'));
24330
+ }
24331
+ that._arrow.addClass(that.toThemeProperty('jqx-expander-arrow-bottom-hover jqx-expander-arrow-up-hover'));
24312
24332
  }
24313
- that._arrow.addClass(that.toThemeProperty('jqx-expander-arrow-top-hover jqx-expander-arrow-down-hover'));
24333
+ }
24334
+ });
24335
+ this.addHandler(this._header, 'mouseleave.expander' + this.widgetID, function () {
24336
+ that._hovered = false;
24337
+ that._header.removeClass(that.toThemeProperty('jqx-fill-state-hover jqx-expander-header-hover'));
24338
+ that._arrow.removeClass(that.toThemeProperty('jqx-icon-arrow-up-hover jqx-icon-arrow-down-hover'));
24339
+ if (that.headerPosition == 'top') {
24340
+ that._arrow.removeClass(that.toThemeProperty('jqx-expander-arrow-top-hover jqx-expander-arrow-down-hover'));
24314
24341
  } else if (that.headerPosition == 'bottom') {
24315
- if (that.expanded) {
24316
- that._arrow.addClass(that.toThemeProperty('jqx-icon-arrow-down-hover'));
24317
- }
24318
- that._arrow.addClass(that.toThemeProperty('jqx-expander-arrow-bottom-hover jqx-expander-arrow-up-hover'));
24342
+ that._arrow.removeClass(that.toThemeProperty('jqx-expander-arrow-bottom-hover jqx-expander-arrow-up-hover'));
24319
24343
  }
24320
- }
24321
- });
24322
- this.addHandler(this._header, 'mouseleave.expander' + this.widgetID, function () {
24323
- that._hovered = false;
24324
- that._header.removeClass(that.toThemeProperty('jqx-fill-state-hover jqx-expander-header-hover'));
24325
- that._arrow.removeClass(that.toThemeProperty('jqx-icon-arrow-up-hover jqx-icon-arrow-down-hover'));
24326
- if (that.headerPosition == 'top') {
24327
- that._arrow.removeClass(that.toThemeProperty('jqx-expander-arrow-top-hover jqx-expander-arrow-down-hover'));
24328
- } else if (that.headerPosition == 'bottom') {
24329
- that._arrow.removeClass(that.toThemeProperty('jqx-expander-arrow-bottom-hover jqx-expander-arrow-up-hover'));
24330
- }
24331
- if (that._expandChecker == 1) {
24332
- that._header.addClass(that.toThemeProperty('jqx-fill-state-normal'));
24333
- } else {
24334
- that._header.addClass(that.toThemeProperty('jqx-fill-state-pressed'));
24335
- }
24336
- });
24344
+ if (that._expandChecker == 1) {
24345
+ that._header.addClass(that.toThemeProperty('jqx-fill-state-normal'));
24346
+ } else {
24347
+ that._header.addClass(that.toThemeProperty('jqx-fill-state-pressed'));
24348
+ }
24349
+ });
24350
+ }
24351
+ } else {
24352
+ hostClass += ' jqx-fill-state-disabled';
24353
+ headerClass += ' jqx-expander-header-disabled';
24337
24354
  }
24338
- } else {
24339
- hostClass += ' jqx-fill-state-disabled';
24340
- headerClass += ' jqx-expander-header-disabled';
24341
- }
24342
24355
 
24343
- if (this.headerPosition == 'top') {
24344
- contentClass += ' jqx-expander-content-bottom';
24345
- } else if (this.headerPosition == 'bottom') {
24346
- contentClass += ' jqx-expander-content-top';
24347
- }
24356
+ if (this.headerPosition == 'top') {
24357
+ contentClass += ' jqx-expander-content-bottom';
24358
+ } else if (this.headerPosition == 'bottom') {
24359
+ contentClass += ' jqx-expander-content-top';
24360
+ }
24348
24361
 
24349
- this.host.addClass(this.toThemeProperty(hostClass));
24350
- this._header.addClass(this.toThemeProperty(headerClass));
24351
- this._content.addClass(this.toThemeProperty(contentClass));
24352
- this._arrow.addClass(this.toThemeProperty('jqx-expander-arrow'));
24353
- },
24362
+ this.host.addClass(this.toThemeProperty(hostClass));
24363
+ this._header.addClass(this.toThemeProperty(headerClass));
24364
+ this._content.addClass(this.toThemeProperty(contentClass));
24365
+ this._arrow.addClass(this.toThemeProperty('jqx-expander-arrow'));
24366
+ },
24354
24367
 
24355
- // checks if the content is empty
24356
- _checkContent: function () {
24357
- this._cntntEmpty = /^\s*$/.test(this._contentElement.innerHTML);
24358
- if (this._cntntEmpty === true) {
24359
- this._contentElement.style.height = '0px';
24360
- this._content.addClass(this.toThemeProperty('jqx-expander-content-empty'));
24361
- } else {
24362
- if (this.height === 'auto') {
24363
- this._contentElement.style.height = 'auto';
24368
+ // checks if the content is empty
24369
+ _checkContent: function () {
24370
+ this._cntntEmpty = /^\s*$/.test(this._contentElement.innerHTML);
24371
+ if (this._cntntEmpty === true) {
24372
+ this._contentElement.style.height = '0px';
24373
+ this._content.addClass(this.toThemeProperty('jqx-expander-content-empty'));
24364
24374
  } else {
24365
- this._contentElement.style.height = this._contentHeight + 'px';
24375
+ if (this.height === 'auto') {
24376
+ this._contentElement.style.height = 'auto';
24377
+ } else {
24378
+ this._contentElement.style.height = this._contentHeight + 'px';
24379
+ }
24380
+ this._content.removeClass(this.toThemeProperty('jqx-expander-content-empty'));
24366
24381
  }
24367
- this._content.removeClass(this.toThemeProperty('jqx-expander-content-empty'));
24368
- }
24369
- },
24382
+ },
24370
24383
 
24371
- // adds keyboard interaction
24372
- _keyBoard: function () {
24373
- var that = this;
24374
- this._focus();
24375
-
24376
- this.addHandler(this.host, 'keydown.expander' + this.widgetID, function (event) {
24377
- var handled = false;
24378
- if ((that.focusedH === true || that.focusedC === true) && that.disabled === false) {
24379
-
24380
- // functionality for different keys
24381
- switch (event.keyCode) {
24382
- case 13:
24383
- case 32:
24384
- if (that.toggleMode != 'none') {
24385
- if (that.focusedH === true) {
24386
- that._animate();
24384
+ // adds keyboard interaction
24385
+ _keyBoard: function () {
24386
+ var that = this;
24387
+ this._focus();
24388
+
24389
+ this.addHandler(this.host, 'keydown.expander' + this.widgetID, function (event) {
24390
+ var handled = false;
24391
+ if ((that.focusedH === true || that.focusedC === true) && that.disabled === false) {
24392
+
24393
+ // functionality for different keys
24394
+ switch (event.keyCode) {
24395
+ case 13:
24396
+ case 32:
24397
+ if (that.toggleMode != 'none') {
24398
+ if (that.focusedH === true) {
24399
+ that._animate();
24400
+ }
24401
+ handled = true;
24402
+ }
24403
+ break;
24404
+ case 38:
24405
+ if (event.ctrlKey === true && that.focusedC === true) {
24406
+ that._headerElement.focus();
24387
24407
  }
24388
24408
  handled = true;
24389
- }
24390
- break;
24391
- case 38:
24392
- if (event.ctrlKey === true && that.focusedC === true) {
24393
- that._headerElement.focus();
24394
- }
24395
- handled = true;
24396
- break;
24397
- case 40:
24398
- if (event.ctrlKey === true && that.focusedH === true) {
24399
- that._contentElement.focus();
24400
- }
24401
- handled = true;
24402
- break;
24409
+ break;
24410
+ case 40:
24411
+ if (event.ctrlKey === true && that.focusedH === true) {
24412
+ that._contentElement.focus();
24413
+ }
24414
+ handled = true;
24415
+ break;
24403
24416
  // case 9:
24404
24417
  // that._headerElement.focus();
24405
24418
  // handled = true;
24406
24419
  // break;
24420
+ }
24421
+ return true;
24407
24422
  }
24408
- return true;
24409
- }
24410
24423
 
24411
- if (handled && event.preventDefault) {
24412
- event.preventDefault();
24413
- }
24424
+ if (handled && event.preventDefault) {
24425
+ event.preventDefault();
24426
+ }
24414
24427
 
24415
- return !handled;
24416
- });
24417
- },
24428
+ return !handled;
24429
+ });
24430
+ },
24418
24431
 
24419
- // focuses/blurs the headers and contents
24420
- _focus: function () {
24421
- var that = this;
24422
- this.addHandler(this._header, 'focus.expander' + this.widgetID, function () {
24423
- that.focusedH = true;
24424
- $.jqx.aria(that._header, 'aria-selected', true);
24425
- that._header.addClass(that.toThemeProperty('jqx-fill-state-focus'));
24426
- });
24427
- this.addHandler(this._header, 'blur.expander' + this.widgetID, function () {
24428
- that.focusedH = false;
24429
- $.jqx.aria(that._header, 'aria-selected', false);
24430
- that._header.removeClass(that.toThemeProperty('jqx-fill-state-focus'));
24431
- });
24432
- this.addHandler(this._headerText, 'focus.expander' + this.widgetID, function () {
24433
- that._headerElement.focus();
24434
- });
24435
- this.addHandler(this._arrow, 'focus.expander' + this.widgetID, function () {
24436
- that._headerElement.focus();
24437
- });
24438
- this.addHandler(this._content, 'focus.expander' + this.widgetID, function () {
24439
- that.focusedC = true;
24440
- that._content.addClass(that.toThemeProperty('jqx-fill-state-focus'));
24441
- });
24442
- this.addHandler(this._content, 'blur.expander' + this.widgetID, function () {
24443
- that.focusedC = false;
24444
- that._content.removeClass(that.toThemeProperty('jqx-fill-state-focus'));
24445
- });
24446
- },
24432
+ // focuses/blurs the headers and contents
24433
+ _focus: function () {
24434
+ var that = this;
24435
+ this.addHandler(this._header, 'focus.expander' + this.widgetID, function () {
24436
+ that.focusedH = true;
24437
+ $.jqx.aria(that._header, 'aria-selected', true);
24438
+ that._header.addClass(that.toThemeProperty('jqx-fill-state-focus'));
24439
+ });
24440
+ this.addHandler(this._header, 'blur.expander' + this.widgetID, function () {
24441
+ that.focusedH = false;
24442
+ $.jqx.aria(that._header, 'aria-selected', false);
24443
+ that._header.removeClass(that.toThemeProperty('jqx-fill-state-focus'));
24444
+ });
24445
+ this.addHandler(this._headerText, 'focus.expander' + this.widgetID, function () {
24446
+ that._headerElement.focus();
24447
+ });
24448
+ this.addHandler(this._arrow, 'focus.expander' + this.widgetID, function () {
24449
+ that._headerElement.focus();
24450
+ });
24451
+ this.addHandler(this._content, 'focus.expander' + this.widgetID, function () {
24452
+ that.focusedC = true;
24453
+ that._content.addClass(that.toThemeProperty('jqx-fill-state-focus'));
24454
+ });
24455
+ this.addHandler(this._content, 'blur.expander' + this.widgetID, function () {
24456
+ that.focusedC = false;
24457
+ that._content.removeClass(that.toThemeProperty('jqx-fill-state-focus'));
24458
+ });
24459
+ },
24447
24460
 
24448
- _toPx: function (value) {
24449
- if (typeof value === 'number') {
24450
- return value + 'px';
24451
- } else {
24452
- return value;
24461
+ _toPx: function (value) {
24462
+ if (typeof value === 'number') {
24463
+ return value + 'px';
24464
+ } else {
24465
+ return value;
24466
+ }
24453
24467
  }
24454
- }
24455
- });
24456
- })(jqxBaseFramework); //ignore jslint
24457
- })();
24458
-
24459
-
24468
+ });
24469
+ })(jqxBaseFramework); //ignore jslint
24470
+ })();
24460
24471
 
24461
24472
  /***/ }),
24462
24473
 
@@ -29326,7 +29337,7 @@ var saveAs = window.jqxSaveAs = saveAs
29326
29337
  /******/ var __webpack_module_cache__ = {};
29327
29338
  /******/
29328
29339
  /******/ // The require function
29329
- /******/ function __webpack_require__(moduleId) {
29340
+ /******/ function __nested_webpack_require_1147771__(moduleId) {
29330
29341
  /******/ // Check if module is in cache
29331
29342
  /******/ var cachedModule = __webpack_module_cache__[moduleId];
29332
29343
  /******/ if (cachedModule !== undefined) {
@@ -29340,7 +29351,7 @@ var saveAs = window.jqxSaveAs = saveAs
29340
29351
  /******/ };
29341
29352
  /******/
29342
29353
  /******/ // Execute the module function
29343
- /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
29354
+ /******/ __webpack_modules__[moduleId](module, module.exports, __nested_webpack_require_1147771__);
29344
29355
  /******/
29345
29356
  /******/ // Return the exports of the module
29346
29357
  /******/ return module.exports;
@@ -29349,17 +29360,17 @@ var saveAs = window.jqxSaveAs = saveAs
29349
29360
  /************************************************************************/
29350
29361
  /******/ /* webpack/runtime/amd options */
29351
29362
  /******/ (() => {
29352
- /******/ __webpack_require__.amdO = {};
29363
+ /******/ __nested_webpack_require_1147771__.amdO = {};
29353
29364
  /******/ })();
29354
29365
  /******/
29355
29366
  /******/ /* webpack/runtime/compat get default export */
29356
29367
  /******/ (() => {
29357
29368
  /******/ // getDefaultExport function for compatibility with non-harmony modules
29358
- /******/ __webpack_require__.n = (module) => {
29369
+ /******/ __nested_webpack_require_1147771__.n = (module) => {
29359
29370
  /******/ var getter = module && module.__esModule ?
29360
29371
  /******/ () => (module['default']) :
29361
29372
  /******/ () => (module);
29362
- /******/ __webpack_require__.d(getter, { a: getter });
29373
+ /******/ __nested_webpack_require_1147771__.d(getter, { a: getter });
29363
29374
  /******/ return getter;
29364
29375
  /******/ };
29365
29376
  /******/ })();
@@ -29367,9 +29378,9 @@ var saveAs = window.jqxSaveAs = saveAs
29367
29378
  /******/ /* webpack/runtime/define property getters */
29368
29379
  /******/ (() => {
29369
29380
  /******/ // define getter functions for harmony exports
29370
- /******/ __webpack_require__.d = (exports, definition) => {
29381
+ /******/ __nested_webpack_require_1147771__.d = (exports, definition) => {
29371
29382
  /******/ for(var key in definition) {
29372
- /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
29383
+ /******/ if(__nested_webpack_require_1147771__.o(definition, key) && !__nested_webpack_require_1147771__.o(exports, key)) {
29373
29384
  /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
29374
29385
  /******/ }
29375
29386
  /******/ }
@@ -29378,7 +29389,7 @@ var saveAs = window.jqxSaveAs = saveAs
29378
29389
  /******/
29379
29390
  /******/ /* webpack/runtime/hasOwnProperty shorthand */
29380
29391
  /******/ (() => {
29381
- /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
29392
+ /******/ __nested_webpack_require_1147771__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
29382
29393
  /******/ })();
29383
29394
  /******/
29384
29395
  /************************************************************************/
@@ -29386,18 +29397,18 @@ var __webpack_exports__ = {};
29386
29397
  // This entry need to be wrapped in an IIFE because it need to be in strict mode.
29387
29398
  (() => {
29388
29399
  "use strict";
29389
- /* harmony import */ var _jqxcore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5459);
29390
- /* harmony import */ var _jqxcore__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_jqxcore__WEBPACK_IMPORTED_MODULE_0__);
29391
- /* harmony import */ var _jqxdata__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4198);
29392
- /* harmony import */ var _jqxdata__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_jqxdata__WEBPACK_IMPORTED_MODULE_1__);
29393
- /* harmony import */ var _jqxdata_export__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3907);
29394
- /* harmony import */ var _jqxdata_export__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_jqxdata_export__WEBPACK_IMPORTED_MODULE_2__);
29395
- /* harmony import */ var _jqxexport__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(714);
29396
- /* harmony import */ var _jqxexport__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_jqxexport__WEBPACK_IMPORTED_MODULE_3__);
29397
- /* harmony import */ var _jqxbuttons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(7351);
29398
- /* harmony import */ var _jqxbuttons__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_jqxbuttons__WEBPACK_IMPORTED_MODULE_4__);
29399
- /* harmony import */ var _jqxexpander__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(4247);
29400
- /* harmony import */ var _jqxexpander__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_jqxexpander__WEBPACK_IMPORTED_MODULE_5__);
29400
+ /* harmony import */ var _jqxcore__WEBPACK_IMPORTED_MODULE_0__ = __nested_webpack_require_1147771__(5459);
29401
+ /* harmony import */ var _jqxcore__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nested_webpack_require_1147771__.n(_jqxcore__WEBPACK_IMPORTED_MODULE_0__);
29402
+ /* harmony import */ var _jqxdata__WEBPACK_IMPORTED_MODULE_1__ = __nested_webpack_require_1147771__(4198);
29403
+ /* harmony import */ var _jqxdata__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__nested_webpack_require_1147771__.n(_jqxdata__WEBPACK_IMPORTED_MODULE_1__);
29404
+ /* harmony import */ var _jqxdata_export__WEBPACK_IMPORTED_MODULE_2__ = __nested_webpack_require_1147771__(3907);
29405
+ /* harmony import */ var _jqxdata_export__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__nested_webpack_require_1147771__.n(_jqxdata_export__WEBPACK_IMPORTED_MODULE_2__);
29406
+ /* harmony import */ var _jqxexport__WEBPACK_IMPORTED_MODULE_3__ = __nested_webpack_require_1147771__(714);
29407
+ /* harmony import */ var _jqxexport__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__nested_webpack_require_1147771__.n(_jqxexport__WEBPACK_IMPORTED_MODULE_3__);
29408
+ /* harmony import */ var _jqxbuttons__WEBPACK_IMPORTED_MODULE_4__ = __nested_webpack_require_1147771__(7351);
29409
+ /* harmony import */ var _jqxbuttons__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__nested_webpack_require_1147771__.n(_jqxbuttons__WEBPACK_IMPORTED_MODULE_4__);
29410
+ /* harmony import */ var _jqxexpander__WEBPACK_IMPORTED_MODULE_5__ = __nested_webpack_require_1147771__(4247);
29411
+ /* harmony import */ var _jqxexpander__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__nested_webpack_require_1147771__.n(_jqxexpander__WEBPACK_IMPORTED_MODULE_5__);
29401
29412
 
29402
29413
 
29403
29414
 
@@ -29406,5 +29417,7 @@ var __webpack_exports__ = {};
29406
29417
 
29407
29418
  })();
29408
29419
 
29420
+ /******/ })()
29421
+ ;
29409
29422
  /******/ })()
29410
29423
  ;