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