@wavemaker/app-runtime-wm-build 11.4.0-next.28151 → 11.4.0-next.28701

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.
@@ -189959,6 +189959,11 @@ $.widget("wm.datatable", {
189959
189959
  var self = this, preparedData, $tbody, pageStartIndex = self.getPageStartIndex(), startRowIndex = self.options.startRowIndex, isScrollorOnDemand = self.options.isNavTypeScrollOrOndemand();
189960
189960
  if (isScrollorOnDemand) {
189961
189961
  $tbody = this.gridElement;
189962
+ if (this.renderTableOnViewLess) {
189963
+ $tbody = this.gridElement.empty();
189964
+ this.hideLoadingIndicator();
189965
+ this.renderTableOnViewLess = false;
189966
+ }
189962
189967
  } else {
189963
189968
  $tbody = this.gridElement.empty();
189964
189969
  }
@@ -190426,17 +190431,40 @@ $.widget("wm.datatable", {
190426
190431
  }), 100);
190427
190432
  }
190428
190433
  },
190429
- addLoadMoreBtn: function(onDemandMsg, loadingdatamsg, cb) {
190430
- if (!this.options.isLastPage) {
190434
+ addLoadMoreBtn: function(onDemandMsg, loadingdatamsg, cb, infScroll) {
190435
+ var $btnEl;
190436
+ if (!this.options.isLastPage || infScroll) {
190431
190437
  var self = this;
190432
190438
  var $parenEl = $('<div class="on-demand-datagrid"><a class="app-button btn btn-block on-demand-load-btn"></a></div>');
190433
- var $btnEl = $parenEl.find("a");
190439
+ $btnEl = $parenEl.find("a");
190434
190440
  $btnEl.append(onDemandMsg);
190435
190441
  this.element.find(".app-grid-header-inner").append($parenEl);
190442
+ if (infScroll) {
190443
+ if (this.element.find(".on-demand-load-btn").length) {
190444
+ this.element.find(".on-demand-load-btn").text(this.options.viewlessmessage);
190445
+ }
190446
+ }
190436
190447
  $btnEl.on("click", (function(e) {
190437
- if (cb && typeof cb === "function") {
190438
- $btnEl.hide();
190448
+ var lastPage = self.options.getCurrentPage() == self.options.getPageCount();
190449
+ if (!lastPage) {
190439
190450
  self.showLoadingIndicator(loadingdatamsg, false);
190451
+ }
190452
+ if (!self.options.showviewlessbutton) {
190453
+ $btnEl.hide();
190454
+ }
190455
+ if (infScroll) {
190456
+ if (lastPage) {
190457
+ self.element.find(".on-demand-datagrid").remove();
190458
+ }
190459
+ }
190460
+ if (lastPage && self.options.showviewlessbutton) {
190461
+ $btnEl.hide();
190462
+ self.renderTableOnViewLess = true;
190463
+ self.renderPaginationOnViewLess = true;
190464
+ self.options.enableNavigation();
190465
+ self._renderGrid();
190466
+ }
190467
+ if (cb && typeof cb === "function") {
190440
190468
  cb(e);
190441
190469
  }
190442
190470
  }));
@@ -190463,7 +190491,17 @@ $.widget("wm.datatable", {
190463
190491
  hideLoadingIndicator: function(showLoadBtn, infScroll) {
190464
190492
  if (!showLoadBtn && !infScroll) {
190465
190493
  this.element.find(".loading-data-msg").hide();
190494
+ this.element.find(".on-demand-load-btn").text(this.options.ondemandmessage);
190466
190495
  this.element.find(".on-demand-load-btn").show();
190496
+ } else if (this.options.getCurrentPage() == this.options.getPageCount() && this.options.showviewlessbutton) {
190497
+ this.element.find(".on-demand-load-btn").show().text(this.options.viewlessmessage);
190498
+ this.element.find(".loading-data-msg").hide();
190499
+ if (infScroll) {
190500
+ if (!this.element.find(".on-demand-load-btn").length) {
190501
+ this.options.addLoadMoreBtn();
190502
+ }
190503
+ this.element.find(".loading-data-msg").hide();
190504
+ }
190467
190505
  } else {
190468
190506
  this.element.find(".on-demand-datagrid").hide();
190469
190507
  }
@@ -191999,7 +192037,9 @@ $.widget("wm.datatable", {
191999
192037
  if (this.options.summaryRow) {
192000
192038
  var $summaryRowHtm = $(this._getSummaryRowTemplate());
192001
192039
  this.tableContainer.find("tfoot").remove();
192002
- this.tableContainer.append($summaryRowHtm);
192040
+ if (this.options.data.length) {
192041
+ this.tableContainer.append($summaryRowHtm);
192042
+ }
192003
192043
  }
192004
192044
  if (!this.options.data.length && this.dataStatus.state === "nodata") {
192005
192045
  this.setStatus("nodata");
@@ -192009,7 +192049,7 @@ $.widget("wm.datatable", {
192009
192049
  this.setStatus(this.dataStatus.state, this.dataStatus.message, isCreated);
192010
192050
  }
192011
192051
  this.gridBody = this.gridElement.find("tbody");
192012
- this.gridFooter = this.gridElement.find("tfoot");
192052
+ this.gridFooter = this.tableContainer.find("tfoot");
192013
192053
  this._findAndReplaceCompiledTemplates();
192014
192054
  this.options.clearRowActions();
192015
192055
  this._appendRowExpansionButtons($htm);
@@ -192069,6 +192109,9 @@ $.widget("wm.datatable", {
192069
192109
  this._toggleSpacingClasses("condensed");
192070
192110
  }
192071
192111
  this._renderGrid(isCreated);
192112
+ this.addNavigationControls();
192113
+ },
192114
+ addNavigationControls: function() {
192072
192115
  if (this.options.isdynamictable) {
192073
192116
  this.element.find(".on-demand-datagrid").remove();
192074
192117
  if (this.options.navigation === "On-Demand" && !this.element.find(".on-demand-datagrid").length) {
@@ -192089,7 +192132,7 @@ $.widget("wm.datatable", {
192089
192132
  if (state === "ready") {
192090
192133
  this.dataStatusContainer.hide();
192091
192134
  } else {
192092
- if (this.options.isNavTypeScrollOrOndemand() && (state === "nodata" || this.options.isLastPage)) {
192135
+ if (this.options.isNavTypeScrollOrOndemand() && (state === "nodata" || this.options.getCurrentPage() == this.options.getPageCount() && !this.options.showviewlessbutton)) {
192093
192136
  this.element.find(".on-demand-datagrid a").hide();
192094
192137
  }
192095
192138
  this.dataStatusContainer.show();
@@ -219716,7 +219759,7 @@ window.requestAnimationFrame = function() {
219716
219759
  }));
219717
219760
 
219718
219761
  /*!
219719
- * tabbable 6.2.0
219762
+ * tabbable 6.1.2
219720
219763
  * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
219721
219764
  */
219722
219765
  (function(global, factory) {
@@ -219812,27 +219855,14 @@ window.requestAnimationFrame = function() {
219812
219855
  }
219813
219856
  return candidates;
219814
219857
  };
219815
- var hasTabIndex = function hasTabIndex(node) {
219816
- return !isNaN(parseInt(node.getAttribute("tabindex"), 10));
219817
- };
219818
- var getTabIndex = function getTabIndex(node) {
219819
- if (!node) {
219820
- throw new Error("No node provided");
219821
- }
219858
+ var getTabindex = function getTabindex(node, isScope) {
219822
219859
  if (node.tabIndex < 0) {
219823
- if ((/^(AUDIO|VIDEO|DETAILS)$/.test(node.tagName) || isContentEditable(node)) && !hasTabIndex(node)) {
219860
+ if ((isScope || /^(AUDIO|VIDEO|DETAILS)$/.test(node.tagName) || isContentEditable(node)) && isNaN(parseInt(node.getAttribute("tabindex"), 10))) {
219824
219861
  return 0;
219825
219862
  }
219826
219863
  }
219827
219864
  return node.tabIndex;
219828
219865
  };
219829
- var getSortOrderTabIndex = function getSortOrderTabIndex(node, isScope) {
219830
- var tabIndex = getTabIndex(node);
219831
- if (tabIndex < 0 && isScope && !hasTabIndex(node)) {
219832
- return 0;
219833
- }
219834
- return tabIndex;
219835
- };
219836
219866
  var sortOrderedTabbables = function sortOrderedTabbables(a, b) {
219837
219867
  return a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex;
219838
219868
  };
@@ -219968,7 +219998,7 @@ window.requestAnimationFrame = function() {
219968
219998
  return true;
219969
219999
  };
219970
220000
  var isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable(options, node) {
219971
- if (isNonTabbableRadio(node) || getTabIndex(node) < 0 || !isNodeMatchingSelectorFocusable(options, node)) {
220001
+ if (isNonTabbableRadio(node) || getTabindex(node) < 0 || !isNodeMatchingSelectorFocusable(options, node)) {
219972
220002
  return false;
219973
220003
  }
219974
220004
  return true;
@@ -219986,7 +220016,7 @@ window.requestAnimationFrame = function() {
219986
220016
  candidates.forEach((function(item, i) {
219987
220017
  var isScope = !!item.scopeParent;
219988
220018
  var element = isScope ? item.scopeParent : item;
219989
- var candidateTabindex = getSortOrderTabIndex(element, isScope);
220019
+ var candidateTabindex = getTabindex(element, isScope);
219990
220020
  var elements = isScope ? sortByOrder(item.candidates) : element;
219991
220021
  if (candidateTabindex === 0) {
219992
220022
  isScope ? regularTabbables.push.apply(regularTabbables, elements) : regularTabbables.push(element);
@@ -220005,32 +220035,32 @@ window.requestAnimationFrame = function() {
220005
220035
  return acc;
220006
220036
  }), []).concat(regularTabbables);
220007
220037
  };
220008
- var tabbable = function tabbable(container, options) {
220038
+ var tabbable = function tabbable(el, options) {
220009
220039
  options = options || {};
220010
220040
  var candidates;
220011
220041
  if (options.getShadowRoot) {
220012
- candidates = getCandidatesIteratively([ container ], options.includeContainer, {
220042
+ candidates = getCandidatesIteratively([ el ], options.includeContainer, {
220013
220043
  filter: isNodeMatchingSelectorTabbable.bind(null, options),
220014
220044
  flatten: false,
220015
220045
  getShadowRoot: options.getShadowRoot,
220016
220046
  shadowRootFilter: isValidShadowRootTabbable
220017
220047
  });
220018
220048
  } else {
220019
- candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));
220049
+ candidates = getCandidates(el, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));
220020
220050
  }
220021
220051
  return sortByOrder(candidates);
220022
220052
  };
220023
- var focusable = function focusable(container, options) {
220053
+ var focusable = function focusable(el, options) {
220024
220054
  options = options || {};
220025
220055
  var candidates;
220026
220056
  if (options.getShadowRoot) {
220027
- candidates = getCandidatesIteratively([ container ], options.includeContainer, {
220057
+ candidates = getCandidatesIteratively([ el ], options.includeContainer, {
220028
220058
  filter: isNodeMatchingSelectorFocusable.bind(null, options),
220029
220059
  flatten: true,
220030
220060
  getShadowRoot: options.getShadowRoot
220031
220061
  });
220032
220062
  } else {
220033
- candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorFocusable.bind(null, options));
220063
+ candidates = getCandidates(el, options.includeContainer, isNodeMatchingSelectorFocusable.bind(null, options));
220034
220064
  }
220035
220065
  return candidates;
220036
220066
  };
@@ -220056,7 +220086,6 @@ window.requestAnimationFrame = function() {
220056
220086
  return isNodeMatchingSelectorFocusable(options, node);
220057
220087
  };
220058
220088
  exports.focusable = focusable;
220059
- exports.getTabIndex = getTabIndex;
220060
220089
  exports.isFocusable = isFocusable;
220061
220090
  exports.isTabbable = isTabbable;
220062
220091
  exports.tabbable = tabbable;