@wavemaker/app-ng-runtime 11.15.4-rc.250 → 11.15.5-rc.253

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 (53) hide show
  1. package/components/base/bundles/index.umd.js +4 -13
  2. package/components/base/esm2022/utils/widget-utils.mjs +5 -4
  3. package/components/base/esm2022/widgets/common/base/base.component.mjs +1 -11
  4. package/components/base/fesm2022/index.mjs +4 -13
  5. package/components/base/fesm2022/index.mjs.map +1 -1
  6. package/components/containers/tabs/bundles/index.umd.js +1 -1
  7. package/components/containers/tabs/esm2022/tabs.animator.mjs +2 -2
  8. package/components/containers/tabs/fesm2022/index.mjs +1 -1
  9. package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  10. package/components/data/form/bundles/index.umd.js +6 -3
  11. package/components/data/form/esm2022/form.component.mjs +5 -2
  12. package/components/data/form/esm2022/live-form/live-form.directive.mjs +3 -3
  13. package/components/data/form/fesm2022/index.mjs +6 -3
  14. package/components/data/form/fesm2022/index.mjs.map +1 -1
  15. package/components/data/form/live-form/live-form.directive.d.ts +1 -1
  16. package/components/data/list/bundles/index.umd.js +6 -0
  17. package/components/data/list/esm2022/list.component.mjs +7 -1
  18. package/components/data/list/fesm2022/index.mjs +6 -0
  19. package/components/data/list/fesm2022/index.mjs.map +1 -1
  20. package/components/data/pagination/bundles/index.umd.js +45 -7
  21. package/components/data/pagination/esm2022/pagination.component.mjs +46 -8
  22. package/components/data/pagination/fesm2022/index.mjs +45 -7
  23. package/components/data/pagination/fesm2022/index.mjs.map +1 -1
  24. package/components/data/pagination/pagination.component.d.ts +1 -0
  25. package/components/data/table/bundles/index.umd.js +228 -20
  26. package/components/data/table/esm2022/table-column/table-column.directive.mjs +6 -1
  27. package/components/data/table/esm2022/table-cud.directive.mjs +14 -3
  28. package/components/data/table/esm2022/table-filter.directive.mjs +6 -1
  29. package/components/data/table/esm2022/table.component.mjs +206 -19
  30. package/components/data/table/fesm2022/index.mjs +229 -21
  31. package/components/data/table/fesm2022/index.mjs.map +1 -1
  32. package/components/data/table/table.component.d.ts +16 -1
  33. package/core/bundles/index.umd.js +7 -1
  34. package/core/esm2022/utils/dom.mjs +4 -2
  35. package/core/esm2022/utils/utils.mjs +5 -1
  36. package/core/fesm2022/index.mjs +7 -1
  37. package/core/fesm2022/index.mjs.map +1 -1
  38. package/npm-shrinkwrap.json +2 -2
  39. package/package-lock.json +2 -2
  40. package/package.json +1 -1
  41. package/runtime/base/bundles/index.umd.js +45 -12
  42. package/runtime/base/components/app-component/app.component.d.ts +1 -1
  43. package/runtime/base/esm2022/components/app-component/app.component.mjs +23 -12
  44. package/runtime/base/esm2022/guards/role.guard.mjs +2 -2
  45. package/runtime/base/esm2022/services/app.manager.service.mjs +23 -1
  46. package/runtime/base/fesm2022/index.mjs +45 -12
  47. package/runtime/base/fesm2022/index.mjs.map +1 -1
  48. package/runtime/base/services/app.manager.service.d.ts +5 -0
  49. package/scripts/datatable/datatable.js +282 -44
  50. package/transpiler/bundles/index.umd.js +3 -0
  51. package/transpiler/esm2022/build.mjs +4 -1
  52. package/transpiler/fesm2022/index.mjs +3 -0
  53. package/transpiler/fesm2022/index.mjs.map +1 -1
@@ -122,9 +122,40 @@
122
122
  }
123
123
  this.allowpagesizechange = this.parent.allowpagesizechange;
124
124
  if (this.allowpagesizechange)
125
- this.defaultPageSizeOptions = this.parent?.pagesizeoptions ? this.parent.pagesizeoptions?.split(',').map(Number).sort((a, b) => a - b) : [];
125
+ this.defaultPageSizeOptions = this.normalizeToNumberArray(this.parent?.pagesizeoptions);
126
126
  }, 0);
127
127
  }
128
+ normalizeToNumberArray(input) {
129
+ if (!input)
130
+ return [];
131
+ let arr;
132
+ if (Array.isArray(input)) {
133
+ arr = input;
134
+ }
135
+ else if (typeof input === "string") {
136
+ const trimmed = input.trim();
137
+ // handle "[1,2,3]"
138
+ if (trimmed.startsWith("[") && trimmed.endsWith("]")) {
139
+ try {
140
+ arr = JSON.parse(trimmed);
141
+ }
142
+ catch {
143
+ arr = [];
144
+ }
145
+ }
146
+ else {
147
+ // handle "1,2,3"
148
+ arr = trimmed.split(",");
149
+ }
150
+ }
151
+ else {
152
+ return [];
153
+ }
154
+ return arr
155
+ .map(v => Number(v))
156
+ .filter(v => !isNaN(v))
157
+ .sort((a, b) => a - b);
158
+ }
128
159
  setResult(result) {
129
160
  // TODO: Emit event only if result is changed
130
161
  this.result = result;
@@ -528,6 +559,9 @@
528
559
  if (parts[0] === 'Variables' || parts[0] === 'Widgets') {
529
560
  bindPagingOptions = `${parts[0]}.${parts[1]}.pagination`;
530
561
  }
562
+ else if (parts[0] === 'App' && parts[1] === 'activePage' && parts[2] === 'Variables' && parts[3]) {
563
+ bindPagingOptions = `App.activePage.Variables.${parts[3]}.pagination`;
564
+ }
531
565
  if (!binddatasource && dataset && !datasetBoundExpr) {
532
566
  this.dataset = dataset;
533
567
  if (this._debouncedApplyDataset) {
@@ -597,11 +631,13 @@
597
631
  else {
598
632
  this.pageSizeOptions = lodashEs.range(this.actualPageSize, Math.max(this.actualPageSize + 1, this.actualPageSize + totalElements), this.actualPageSize); // here data has only that page data and pagesize has totalNoof Elements
599
633
  }
600
- if (widgetState?.selectedItem && widgetState.actualpagesize !== widgetState.pagesize) {
634
+ if (widgetState?.selectedItem && widgetState.actualpagesize !== widgetState.pagesize
635
+ && +this.prevPageSize !== +(widgetState.pagesize || this.maxResults)) {
636
+ const newPageSize = +(widgetState.pagesize || this.maxResults);
601
637
  if (!this.prevPageSize) {
602
- this.prevPageSize = this.actualPageSize || data?.length;
638
+ this.prevPageSize = widgetState.actualpagesize || this.actualPageSize || data?.length;
603
639
  }
604
- const updatedItems = this.handleStateParamsforNewPageSize(widgetState.selectedItem, this.prevPageSize, data?.length);
640
+ const updatedItems = this.handleStateParamsforNewPageSize(widgetState.selectedItem, this.prevPageSize, newPageSize);
605
641
  if (updatedItems) {
606
642
  this.parent.statePersistence.setWidgetState(this.parent, {
607
643
  pagination: 1,
@@ -609,8 +645,8 @@
609
645
  actualpagesize: this.actualPageSize || this.maxResults,
610
646
  selectedItem: updatedItems
611
647
  });
612
- this.prevPageSize = undefined;
613
648
  }
649
+ this.prevPageSize = newPageSize;
614
650
  }
615
651
  }
616
652
  else {
@@ -723,11 +759,13 @@
723
759
  onPageSizeChange($event, newPageSize) {
724
760
  const widgetState = this.parent.statePersistence.getWidgetState(this.parent);
725
761
  let updatedItems;
762
+ const oldPageSize = widgetState?.pagesize || this.maxResults;
726
763
  if (widgetState?.selectedItem) {
727
- updatedItems = this.handleStateParamsforNewPageSize(widgetState.selectedItem, this.maxResults, +newPageSize);
764
+ updatedItems = this.handleStateParamsforNewPageSize(widgetState.selectedItem, oldPageSize, +newPageSize);
728
765
  }
729
- this.actualPageSize = this.actualPageSize || this.maxResults;
766
+ this.actualPageSize = widgetState?.actualpagesize || this.actualPageSize || oldPageSize;
730
767
  this.maxResults = +newPageSize;
768
+ this.prevPageSize = +newPageSize;
731
769
  this.maxResultsEmitter.emit(this.maxResults);
732
770
  if (this.isDataSourceHasPaging() && this.datasource) {
733
771
  this.datasource.maxResults = this.maxResults;