@wavemaker/app-ng-runtime 11.14.1-next.28343 → 11.14.1-rc.236

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 (29) hide show
  1. package/components/base/bundles/index.umd.js +8 -8
  2. package/components/base/esm2022/pipes/custom-pipes.mjs +10 -10
  3. package/components/base/fesm2022/index.mjs +8 -8
  4. package/components/base/fesm2022/index.mjs.map +1 -1
  5. package/components/base/pipes/custom-pipes.d.ts +5 -5
  6. package/components/basic/search/bundles/index.umd.js +4 -4
  7. package/components/basic/search/esm2022/scrollable.directive.mjs +3 -3
  8. package/components/basic/search/esm2022/search.component.mjs +3 -3
  9. package/components/basic/search/fesm2022/index.mjs +4 -4
  10. package/components/basic/search/fesm2022/index.mjs.map +1 -1
  11. package/components/basic/search/scrollable.directive.d.ts +1 -1
  12. package/components/data/list/bundles/index.umd.js +33 -2
  13. package/components/data/list/esm2022/list.component.mjs +34 -3
  14. package/components/data/list/fesm2022/index.mjs +33 -2
  15. package/components/data/list/fesm2022/index.mjs.map +1 -1
  16. package/components/data/list/list.component.d.ts +4 -0
  17. package/components/data/table/bundles/index.umd.js +34 -3
  18. package/components/data/table/esm2022/table.component.mjs +35 -4
  19. package/components/data/table/fesm2022/index.mjs +34 -3
  20. package/components/data/table/fesm2022/index.mjs.map +1 -1
  21. package/components/data/table/table.component.d.ts +4 -0
  22. package/npm-shrinkwrap.json +2 -2
  23. package/package-lock.json +2 -2
  24. package/package.json +1 -1
  25. package/runtime/base/bundles/index.umd.js +3 -2
  26. package/runtime/base/esm2022/services/app.manager.service.mjs +4 -3
  27. package/runtime/base/fesm2022/index.mjs +3 -2
  28. package/runtime/base/fesm2022/index.mjs.map +1 -1
  29. package/scripts/@wavemaker/nvd3/build/nv.d3.min.js +1 -1
@@ -561,8 +561,10 @@ class ListComponent extends StylableComponent {
561
561
  this.allowpagesizechange = nv;
562
562
  }
563
563
  else if (key === 'pagesizeoptions') {
564
- this.pagesizeoptions = nv;
565
- this.setDefaultPageSize(nv);
564
+ this.prevPagesizeoptions = this.sanitizeCommaSeparatedIntegers(ov);
565
+ this.pagesizeoptions = this.sanitizeCommaSeparatedIntegers(nv);
566
+ if (this.allowpagesizechange)
567
+ this.setDefaultPageSize(nv);
566
568
  }
567
569
  else {
568
570
  super.onPropertyChange(key, nv, ov);
@@ -579,6 +581,10 @@ class ListComponent extends StylableComponent {
579
581
  nv = this.pagesizeoptions?.split(',').map(Number).sort((a, b) => a - b)[0];
580
582
  this.pagesize = nv;
581
583
  }
584
+ if (this.isPageSizeOptionsChanged()) {
585
+ this.dataNavigator.defaultPageSizeOptions = this.pagesizeoptions?.split(',').map(Number).sort((a, b) => a - b) || [];
586
+ this.dataNavigator.pageSizeOptions = [...this.dataNavigator.defaultPageSizeOptions];
587
+ }
582
588
  }
583
589
  this.updatedPageSize = nv;
584
590
  this.dataNavigator.updatedPageSize = nv;
@@ -587,6 +593,31 @@ class ListComponent extends StylableComponent {
587
593
  };
588
594
  this.dataNavigator.widget.maxResults = nv;
589
595
  this.dataNavigator.maxResults = nv;
596
+ if (this.datasource) {
597
+ this.datasource.maxResults = this.pagesize || this.datasource.maxResults;
598
+ }
599
+ }
600
+ isPageSizeOptionsChanged() {
601
+ return !isEqual(this.prevPagesizeoptions, this.pagesizeoptions);
602
+ }
603
+ selectPageSize(pagesize) {
604
+ if (!this.allowpagesizechange && !pagesize)
605
+ return;
606
+ if (pagesize < this.dataNavigator.pageSizeOptions[0] || pagesize > this.dataNavigator.pageSizeOptions[this.dataNavigator.pageSizeOptions.length - 1]
607
+ || !this.dataNavigator.pageSizeOptions.includes(Number(pagesize))) {
608
+ pagesize = this.dataNavigator.pageSizeOptions[0];
609
+ }
610
+ this.dataNavigator.onPageSizeChange(undefined, pagesize);
611
+ }
612
+ sanitizeCommaSeparatedIntegers(input) {
613
+ if (!input)
614
+ return "";
615
+ const uniqueNumbers = Array.from(new Set(input
616
+ .split(",")
617
+ .map(v => v.trim())
618
+ .filter(v => /^-?\d+$/.test(v))
619
+ .map(v => Math.abs(parseInt(v, 10)))));
620
+ return uniqueNumbers.join(",");
590
621
  }
591
622
  onItemClick(evt, $listItem) {
592
623
  let selectCount;