@wavemaker/app-ng-runtime 11.11.1-rc.6144 → 11.11.2-rc.6152

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 (34) hide show
  1. package/components/base/bundles/index.umd.js +1 -1
  2. package/components/base/esm2022/widgets/common/base/base.component.mjs +2 -2
  3. package/components/base/fesm2022/index.mjs +1 -1
  4. package/components/base/fesm2022/index.mjs.map +1 -1
  5. package/components/containers/wizard/bundles/index.umd.js +42 -18
  6. package/components/containers/wizard/esm2022/wizard-step/wizard-step.component.mjs +1 -1
  7. package/components/containers/wizard/esm2022/wizard.component.mjs +43 -19
  8. package/components/containers/wizard/fesm2022/index.mjs +42 -18
  9. package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  10. package/components/containers/wizard/wizard-step/wizard-step.component.d.ts +3 -3
  11. package/components/containers/wizard/wizard.component.d.ts +6 -3
  12. package/components/input/epoch/base-date-time.component.d.ts +1 -0
  13. package/components/input/epoch/bundles/index.umd.js +34 -10
  14. package/components/input/epoch/esm2022/base-date-time.component.mjs +22 -2
  15. package/components/input/epoch/esm2022/date/date.component.mjs +6 -5
  16. package/components/input/epoch/esm2022/date-time/date-time.component.mjs +9 -6
  17. package/components/input/epoch/fesm2022/index.mjs +34 -10
  18. package/components/input/epoch/fesm2022/index.mjs.map +1 -1
  19. package/core/bundles/index.umd.js +35 -23
  20. package/core/esm2022/services/custom-icons-loader.service.mjs +7 -12
  21. package/core/esm2022/utils/utils.mjs +3 -2
  22. package/core/esm2022/utils/wm-project-properties.mjs +15 -1
  23. package/core/fesm2022/index.mjs +35 -26
  24. package/core/fesm2022/index.mjs.map +1 -1
  25. package/core/services/custom-icons-loader.service.d.ts +0 -1
  26. package/core/utils/wm-project-properties.d.ts +2 -0
  27. package/npm-shrinkwrap.json +2 -2
  28. package/package-lock.json +2 -2
  29. package/package.json +1 -1
  30. package/runtime/dynamic/bundles/index.umd.js +12 -5
  31. package/runtime/dynamic/esm2022/main.mjs +10 -1
  32. package/runtime/dynamic/fesm2022/index.mjs +9 -2
  33. package/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  34. package/scripts/datatable/datatable.js +39 -3
@@ -1896,7 +1896,9 @@ $.widget('wm.datatable', {
1896
1896
  },
1897
1897
  //Focus the active row
1898
1898
  focusActiveRow: function () {
1899
- this.gridElement.find('tr.app-datagrid-row.active').focus();
1899
+ if(this.options.editmode!==this.CONSTANTS.QUICK_EDIT){
1900
+ this.gridElement.find('tr.app-datagrid-row.active').focus();
1901
+ }
1900
1902
  },
1901
1903
  focusNewRow: function () {
1902
1904
  var newRow = this.gridElement.find('tr.always-new-row');
@@ -2639,7 +2641,9 @@ $.widget('wm.datatable', {
2639
2641
  $target.focus();
2640
2642
  } else {
2641
2643
  self.focusActiveRow();
2642
- self.focusNewRow();
2644
+ self.options.timeoutCall(function () {
2645
+ self.focusNewRow();
2646
+ }, 400);
2643
2647
  }
2644
2648
  }
2645
2649
  });
@@ -2692,6 +2696,12 @@ $.widget('wm.datatable', {
2692
2696
  }
2693
2697
  if (event.which === 13) { //Enter key
2694
2698
  event.stopPropagation();
2699
+ // Fix for [WMS-28247]: prevent row getting selected when pressing Enter on a data table field in view mode when isrowselectable flag is false.
2700
+ if (this.options.editmode !== this.CONSTANTS.QUICK_EDIT && !$row.hasClass('row-editing')) {
2701
+ if ((this.options.multiselect || this.options.showRadioColumn) && !this.options.isrowselectable && Number(this.getColInfo(event))) {
2702
+ return;
2703
+ }
2704
+ }
2695
2705
  this._debounceOnEnter($target, $row, quickEdit, event);
2696
2706
  return;
2697
2707
  }
@@ -2824,6 +2834,12 @@ $.widget('wm.datatable', {
2824
2834
  $htm.find('.save-edit-row-button').on('click', {action: 'save'}, this.toggleEditRow.bind(this));
2825
2835
  }
2826
2836
  if (self.options.editmode === self.CONSTANTS.QUICK_EDIT) {
2837
+ $htm.on('focus', 'tr.app-datagrid-row[data-row-id="0"]', function (e) {
2838
+ var $row = $(e.currentTarget);
2839
+ if (!$row.hasClass('row-editing')) {
2840
+ self.toggleEditRow(e, { $row: $row, action: 'edit' });
2841
+ }
2842
+ });
2827
2843
  //On tab out of a row, save the current row and make next row editable
2828
2844
  $htm.on('focusout', 'tr.app-datagrid-row', function (e) {
2829
2845
  var $target = $(e.target),
@@ -2869,7 +2885,7 @@ $.widget('wm.datatable', {
2869
2885
  'noMsg': true,
2870
2886
  'success': function (skipFocus, error, isNewRow) {
2871
2887
  if (!isNewRow) {
2872
- self.editSuccessHandler(skipFocus, error, e, $row);
2888
+ self.editSuccessHandler(skipFocus, error, e, $row,false);
2873
2889
  }
2874
2890
  }
2875
2891
  });
@@ -3134,9 +3150,29 @@ $.widget('wm.datatable', {
3134
3150
  }
3135
3151
  /**Add event handler, to the select all checkbox on the header**/
3136
3152
  $header.on('click', '.app-datagrid-header-cell input:checkbox', toggleSelectAll);
3153
+ $header.on('keydown', '.app-datagrid-header-cell input:checkbox', function(event) {
3154
+ if (event.key === 'Enter' || event.keyCode === 13) {
3155
+ event.preventDefault(); // Prevent default behavior
3156
+
3157
+ // Simulate a click on the checkbox
3158
+ const checkbox = this;
3159
+ setTimeout(() => checkbox.click(), 0);
3160
+ }
3161
+ });
3137
3162
 
3138
3163
  if (_.isFunction(this.options.onHeaderClick)) {
3139
3164
  this.gridHeaderElement.find('th.app-datagrid-header-cell').on('click', this.headerClickHandler.bind(this));
3165
+ this.gridHeaderElement.find('th.app-datagrid-header-cell').on('keydown', function (e) {
3166
+ if (e.key === 'Enter' || e.keyCode === 13) {
3167
+ var $target = $(e.target);
3168
+ // Only run if on the checkbox column
3169
+ if ($target.attr('data-col-field') === 'checkbox') {
3170
+ e.preventDefault();
3171
+ // Trigger native click on the checkbox inside the header
3172
+ $target.find('input[type="checkbox"]').trigger('click');
3173
+ }
3174
+ }
3175
+ });
3140
3176
  }
3141
3177
 
3142
3178
  if (!this.options.isMobile && this.gridHeaderElement.length) {