@wavemaker/app-ng-runtime 11.12.1-rc.221 → 11.13.0-rc.222
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.
- package/build-task/bundles/index.umd.js +26 -24
- package/build-task/esm2022/containers/repeat-template.build.mjs +4 -2
- package/build-task/esm2022/data/form/form.build.mjs +4 -2
- package/build-task/esm2022/data/table/table-row/table-row.build.mjs +5 -3
- package/build-task/esm2022/page/page-content/page-content.build.mjs +6 -7
- package/build-task/esm2022/page/page.build.mjs +6 -7
- package/build-task/esm2022/partial/partial.build.mjs +6 -7
- package/build-task/esm2022/prefab/prefab-container/prefab-container.build.mjs +6 -7
- package/build-task/fesm2022/index.mjs +26 -24
- package/build-task/fesm2022/index.mjs.map +1 -1
- package/components/data/live-table/bundles/index.umd.js +4 -2
- package/components/data/live-table/esm2022/live-table.component.mjs +5 -3
- package/components/data/live-table/fesm2022/index.mjs +4 -2
- package/components/data/live-table/fesm2022/index.mjs.map +1 -1
- package/components/data/pagination/bundles/index.umd.js +4 -4
- package/components/data/pagination/esm2022/pagination.component.mjs +5 -5
- package/components/data/pagination/fesm2022/index.mjs +4 -4
- package/components/data/pagination/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/design-dialog/bundles/index.umd.js +6 -12
- package/components/dialogs/design-dialog/esm2022/dialog.component.mjs +7 -13
- package/components/dialogs/design-dialog/fesm2022/index.mjs +6 -12
- package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/iframe-dialog/bundles/index.umd.js +9 -16
- package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +8 -15
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs +7 -14
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/base-date-time.component.d.ts +6 -0
- package/components/input/epoch/bundles/index.umd.js +54 -31
- package/components/input/epoch/esm2022/base-date-time.component.mjs +16 -5
- package/components/input/epoch/esm2022/date-time/date-time.component.mjs +22 -15
- package/components/input/epoch/esm2022/time/time.component.mjs +19 -14
- package/components/input/epoch/fesm2022/index.mjs +54 -31
- package/components/input/epoch/fesm2022/index.mjs.map +1 -1
- package/components/input/slider/bundles/index.umd.js +9 -9
- package/components/input/slider/esm2022/slider.component.mjs +10 -10
- package/components/input/slider/fesm2022/index.mjs +9 -9
- package/components/input/slider/fesm2022/index.mjs.map +1 -1
- package/core/bundles/index.umd.js +3 -0
- package/core/esm2022/utils/wm-project-properties.mjs +4 -1
- package/core/fesm2022/index.mjs +3 -0
- package/core/fesm2022/index.mjs.map +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/runtime/base/bundles/index.umd.js +1 -1
- package/runtime/base/esm2022/services/i18n.service.mjs +2 -2
- package/runtime/base/fesm2022/index.mjs +1 -1
- package/runtime/base/fesm2022/index.mjs.map +1 -1
- package/security/bundles/index.umd.js +2 -2
- package/security/esm2022/security.service.mjs +3 -3
- package/security/fesm2022/index.mjs +2 -2
- package/security/fesm2022/index.mjs.map +1 -1
- package/transpiler/bundles/index.umd.js +0 -13
- package/transpiler/esm2022/build.mjs +1 -14
- package/transpiler/fesm2022/index.mjs +0 -13
- package/transpiler/fesm2022/index.mjs.map +1 -1
- package/variables/bundles/index.umd.js +1 -1
- package/variables/esm2022/service/metadata-service/metadata.service.mjs +2 -2
- package/variables/fesm2022/index.mjs +1 -1
- package/variables/fesm2022/index.mjs.map +1 -1
- package/scripts/hammerjs/hammer.min.js +0 -7
|
@@ -223,7 +223,7 @@ function PaginationComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
223
223
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
224
224
|
i0.ɵɵclassMapInterpolate1("pagination advanced ", ctx_r1.navigationClass, "");
|
|
225
225
|
i0.ɵɵadvance();
|
|
226
|
-
i0.ɵɵconditional(ctx_r1.allowpagesizechange ? 1 : -1);
|
|
226
|
+
i0.ɵɵconditional(ctx_r1.allowpagesizechange && (ctx_r1.pageSizeOptions == null ? null : ctx_r1.pageSizeOptions[0]) < (ctx_r1.rowSummary == null ? null : ctx_r1.rowSummary.totalRecords) ? 1 : -1);
|
|
227
227
|
i0.ɵɵadvance();
|
|
228
228
|
i0.ɵɵconditional(!(ctx_r1.dataSize <= ctx_r1.maxResults) ? 2 : -1);
|
|
229
229
|
i0.ɵɵadvance();
|
|
@@ -332,7 +332,7 @@ function PaginationComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
|
332
332
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
333
333
|
i0.ɵɵclassMapInterpolate1("pager ", ctx_r1.navigationClass, "");
|
|
334
334
|
i0.ɵɵadvance();
|
|
335
|
-
i0.ɵɵconditional(ctx_r1.allowpagesizechange ? 1 : -1);
|
|
335
|
+
i0.ɵɵconditional(ctx_r1.allowpagesizechange && (ctx_r1.pageSizeOptions == null ? null : ctx_r1.pageSizeOptions[0]) < (ctx_r1.rowSummary == null ? null : ctx_r1.rowSummary.totalRecords) ? 1 : -1);
|
|
336
336
|
i0.ɵɵadvance();
|
|
337
337
|
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(12, _c2, ctx_r1.isDisablePrevious));
|
|
338
338
|
i0.ɵɵadvance();
|
|
@@ -434,7 +434,7 @@ function PaginationComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
|
434
434
|
i0.ɵɵtemplate(0, PaginationComponent_Conditional_2_Conditional_0_Template, 9, 4)(1, PaginationComponent_Conditional_2_Conditional_1_Template, 1, 13, "pagination", 36);
|
|
435
435
|
} if (rf & 2) {
|
|
436
436
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
437
|
-
i0.ɵɵconditional(ctx_r1.allowpagesizechange ? 0 : -1);
|
|
437
|
+
i0.ɵɵconditional(ctx_r1.allowpagesizechange && (ctx_r1.pageSizeOptions == null ? null : ctx_r1.pageSizeOptions[0]) < (ctx_r1.rowSummary == null ? null : ctx_r1.rowSummary.totalRecords) ? 0 : -1);
|
|
438
438
|
i0.ɵɵadvance();
|
|
439
439
|
i0.ɵɵconditional(!(ctx_r1.dataSize <= ctx_r1.maxResults) ? 1 : -1);
|
|
440
440
|
} }
|
|
@@ -1209,7 +1209,7 @@ class PaginationComponent extends StylableComponent {
|
|
|
1209
1209
|
type: Component,
|
|
1210
1210
|
args: [{ standalone: true, imports: [CommonModule, WmComponentsModule, FormsModule, PaginationModule, BsDropdownModule, MenuComponent], selector: '[wmPagination]', providers: [
|
|
1211
1211
|
provideAsWidgetRef(PaginationComponent)
|
|
1212
|
-
], template: "\n@if (navcontrols === 'Classic') {\n<ul class=\"pagination advanced {{navigationClass}}\">\n @if (allowpagesizechange) {\n <li class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE}} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </li>\n @if (rowSummary?.totalRecords) {\n <li class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </li>\n }\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableFirst}\">\n <a [title]=\"appLocale.LABEL_FIRST\" name=\"first\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableFirst\"\n (click)=\"navigatePage('first', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-first-page\"></i></span>\n <span class=\"sr-only\">Go to first page {{ isDisableFirst ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a [title]=\"appLocale.LABEL_PREVIOUS\" name=\"prev\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisablePrevious\"\n (click)=\"navigatePage('prev', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n <span class=\"sr-only\">Go to previous page {{ isDisablePrevious ? ', Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li class=\"pagecount disabled\">\n <a href=\"javascript:void(0);\" aria-label=\"Change Page Number\">\n <input [(ngModel)]=\"dn.currentPage\" [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount\" [disabled]=\"isDisableCurrent\"\n [ngModelOptions]=\"{standalone: true}\"\n type=\"number\"\n (keydown)=\"onKeyDown($event)\" (change)=\"onModelChange($event)\" class=\"form-control\"/>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li class=\"disabled\">\n <a [hidden]=\"isDisableCount\"> / {{pageCount}}</a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableNext}\">\n <a [title]=\"appLocale.LABEL_NEXT\" name=\"next\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableNext\"\n (click)=\"navigatePage('next', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n <span class=\"sr-only\">Go to next page {{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableLast}\">\n <a [title]=\"appLocale.LABEL_LAST\" name=\"last\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableLast\"\n (click)=\"navigatePage('last', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-last-page\"></i></span>\n <span class=\"sr-only\">Go to last page {{ isDisableLast ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (showrecordcount) {\n <li class=\"totalcount disabled\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n }\n</ul>\n}\n@if (navcontrols === 'Pager') {\n <ul class=\"pager {{navigationClass}}\">\n @if (allowpagesizechange) {\n <li class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE}} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </li>\n @if (rowSummary?.totalRecords) {\n <li class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </li>\n }\n }\n\n <li class=\"previous\" [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('prev', $event)\"\n [attr.aria-disabled]=\"isDisablePrevious\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n {{appLocale.LABEL_PREVIOUS}}\n <span class=\"sr-only\">{{ isDisablePrevious ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li class=\"next\" [ngClass]=\"{'disabled':isDisableNext}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('next', $event)\"\n [attr.aria-disabled]=\"isDisableNext\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n {{appLocale.LABEL_NEXT}}\n <span class=\"sr-only\">{{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n </ul>\n}\n\n@if (navcontrols === 'Basic') {\n @if (allowpagesizechange) {\n <div class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE }} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </div>\n @if (rowSummary?.totalRecords) {\n <div class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </div>\n }\n }\n @if (!(dataSize<=maxResults)) {\n <pagination class=\"pagination basic\" [ngClass]=\"navigationClass\" role=\"navigation\"\n [itemsPerPage]=\"maxResults\" [totalItems]=\"dataSize\"\n (pageChanged)=\"pageChanged($event)\" [ngModelOptions]=\"{standalone:true}\" [ngModel]=\"dn.currentPage\"\n [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount + ' pages'\"\n [boundaryLinks]=\"boundarylinks\" [maxSize]=\"maxsize\"\n [directionLinks]=\"directionlinks\"\n firstText=\"Firtst\" lastText=\"Last\"\n [customPreviousTemplate]=\"prevTemplate\"\n [customNextTemplate]=\"nextTemplate\"\n [customPageTemplate]=\"pageTemplate\"></pagination>\n }\n}\n\n@if (navcontrols === 'Basic' && showrecordcount) {\n <ul class=\"pagination\">\n <li class=\"totalcount disabled basiccount\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n </ul>\n}\n\n<ng-template #pageTemplate let-page>\n <span class=\"sr-only\" [attr.data-isacitvepage]=\"page.active\">{{'Page '}}</span>\n {{page.number}}\n @if (page.active) {\n <span class=\"sr-only\"> {{', Showing page ' + page.number + ' of ' + pageCount}}</span>\n }\n</ng-template>\n<ng-template #prevTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Previous page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n<ng-template #nextTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Next page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n" }]
|
|
1212
|
+
], template: "\n@if (navcontrols === 'Classic') {\n<ul class=\"pagination advanced {{navigationClass}}\">\n @if (allowpagesizechange && pageSizeOptions?.[0]<rowSummary?.totalRecords) {\n <li class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE}} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </li>\n @if (rowSummary?.totalRecords) {\n <li class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </li>\n }\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableFirst}\">\n <a [title]=\"appLocale.LABEL_FIRST\" name=\"first\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableFirst\"\n (click)=\"navigatePage('first', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-first-page\"></i></span>\n <span class=\"sr-only\">Go to first page {{ isDisableFirst ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a [title]=\"appLocale.LABEL_PREVIOUS\" name=\"prev\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisablePrevious\"\n (click)=\"navigatePage('prev', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n <span class=\"sr-only\">Go to previous page {{ isDisablePrevious ? ', Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li class=\"pagecount disabled\">\n <a href=\"javascript:void(0);\" aria-label=\"Change Page Number\">\n <input [(ngModel)]=\"dn.currentPage\" [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount\" [disabled]=\"isDisableCurrent\"\n [ngModelOptions]=\"{standalone: true}\"\n type=\"number\"\n (keydown)=\"onKeyDown($event)\" (change)=\"onModelChange($event)\" class=\"form-control\"/>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li class=\"disabled\">\n <a [hidden]=\"isDisableCount\"> / {{pageCount}}</a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableNext}\">\n <a [title]=\"appLocale.LABEL_NEXT\" name=\"next\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableNext\"\n (click)=\"navigatePage('next', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n <span class=\"sr-only\">Go to next page {{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableLast}\">\n <a [title]=\"appLocale.LABEL_LAST\" name=\"last\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableLast\"\n (click)=\"navigatePage('last', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-last-page\"></i></span>\n <span class=\"sr-only\">Go to last page {{ isDisableLast ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (showrecordcount) {\n <li class=\"totalcount disabled\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n }\n</ul>\n}\n@if (navcontrols === 'Pager') {\n <ul class=\"pager {{navigationClass}}\">\n @if (allowpagesizechange && pageSizeOptions?.[0]<rowSummary?.totalRecords) {\n <li class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE}} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </li>\n @if (rowSummary?.totalRecords) {\n <li class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </li>\n }\n }\n\n <li class=\"previous\" [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('prev', $event)\"\n [attr.aria-disabled]=\"isDisablePrevious\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n {{appLocale.LABEL_PREVIOUS}}\n <span class=\"sr-only\">{{ isDisablePrevious ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li class=\"next\" [ngClass]=\"{'disabled':isDisableNext}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('next', $event)\"\n [attr.aria-disabled]=\"isDisableNext\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n {{appLocale.LABEL_NEXT}}\n <span class=\"sr-only\">{{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n </ul>\n}\n\n@if (navcontrols === 'Basic') {\n @if (allowpagesizechange && pageSizeOptions?.[0]<rowSummary?.totalRecords) {\n <div class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE }} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </div>\n @if (rowSummary?.totalRecords) {\n <div class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </div>\n }\n }\n @if (!(dataSize<=maxResults)) {\n <pagination class=\"pagination basic\" [ngClass]=\"navigationClass\" role=\"navigation\"\n [itemsPerPage]=\"maxResults\" [totalItems]=\"dataSize\"\n (pageChanged)=\"pageChanged($event)\" [ngModelOptions]=\"{standalone:true}\" [ngModel]=\"dn.currentPage\"\n [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount + ' pages'\"\n [boundaryLinks]=\"boundarylinks\" [maxSize]=\"maxsize\"\n [directionLinks]=\"directionlinks\"\n firstText=\"Firtst\" lastText=\"Last\"\n [customPreviousTemplate]=\"prevTemplate\"\n [customNextTemplate]=\"nextTemplate\"\n [customPageTemplate]=\"pageTemplate\"></pagination>\n }\n}\n\n@if (navcontrols === 'Basic' && showrecordcount) {\n <ul class=\"pagination\">\n <li class=\"totalcount disabled basiccount\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n </ul>\n}\n\n<ng-template #pageTemplate let-page>\n <span class=\"sr-only\" [attr.data-isacitvepage]=\"page.active\">{{'Page '}}</span>\n {{page.number}}\n @if (page.active) {\n <span class=\"sr-only\"> {{', Showing page ' + page.number + ' of ' + pageCount}}</span>\n }\n</ng-template>\n<ng-template #prevTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Previous page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n<ng-template #nextTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Next page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n" }]
|
|
1213
1213
|
}], () => [{ type: i0.Injector }, { type: undefined, decorators: [{
|
|
1214
1214
|
type: SkipSelf
|
|
1215
1215
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/data/pagination/src/pagination.props.ts","../../../../../projects/components/widgets/data/pagination/src/pagination.component.html","../../../../../projects/components/widgets/data/pagination/src/pagination.component.ts","../../../../../projects/components/widgets/data/pagination/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-pagination',\n new Map(\n [\n ['boundarylinks', {value: false, ...PROP_BOOLEAN}],\n ['class', PROP_STRING],\n ['dataset', PROP_ANY],\n ['directionlinks', {value: true, ...PROP_BOOLEAN}],\n ['forceellipses', {value: true, ...PROP_BOOLEAN}],\n ['allowpagesizechange', {value: false, ...PROP_BOOLEAN}],\n ['allowpagesizechange', {value: false, ...PROP_BOOLEAN}],\n ['pagesizeoptions', {value: '', ...PROP_STRING}],\n ['maxResults', PROP_NUMBER],\n ['maxsize', {value: 5, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['navigation', {value: 'Basic', ...PROP_STRING}],\n ['navigationalign', {value: 'left', ...PROP_STRING}],\n ['navigationsize', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showrecordcount', PROP_BOOLEAN],\n ['tabindex', {value: 0, ...PROP_NUMBER}]\n ]\n )\n );\n};\n","\n@if (navcontrols === 'Classic') {\n<ul class=\"pagination advanced {{navigationClass}}\">\n @if (allowpagesizechange) {\n <li class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE}} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </li>\n @if (rowSummary?.totalRecords) {\n <li class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </li>\n }\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableFirst}\">\n <a [title]=\"appLocale.LABEL_FIRST\" name=\"first\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableFirst\"\n (click)=\"navigatePage('first', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-first-page\"></i></span>\n <span class=\"sr-only\">Go to first page {{ isDisableFirst ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a [title]=\"appLocale.LABEL_PREVIOUS\" name=\"prev\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisablePrevious\"\n (click)=\"navigatePage('prev', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n <span class=\"sr-only\">Go to previous page {{ isDisablePrevious ? ', Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li class=\"pagecount disabled\">\n <a href=\"javascript:void(0);\" aria-label=\"Change Page Number\">\n <input [(ngModel)]=\"dn.currentPage\" [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount\" [disabled]=\"isDisableCurrent\"\n [ngModelOptions]=\"{standalone: true}\"\n type=\"number\"\n (keydown)=\"onKeyDown($event)\" (change)=\"onModelChange($event)\" class=\"form-control\"/>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li class=\"disabled\">\n <a [hidden]=\"isDisableCount\"> / {{pageCount}}</a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableNext}\">\n <a [title]=\"appLocale.LABEL_NEXT\" name=\"next\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableNext\"\n (click)=\"navigatePage('next', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n <span class=\"sr-only\">Go to next page {{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableLast}\">\n <a [title]=\"appLocale.LABEL_LAST\" name=\"last\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableLast\"\n (click)=\"navigatePage('last', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-last-page\"></i></span>\n <span class=\"sr-only\">Go to last page {{ isDisableLast ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (showrecordcount) {\n <li class=\"totalcount disabled\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n }\n</ul>\n}\n@if (navcontrols === 'Pager') {\n <ul class=\"pager {{navigationClass}}\">\n @if (allowpagesizechange) {\n <li class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE}} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </li>\n @if (rowSummary?.totalRecords) {\n <li class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </li>\n }\n }\n\n <li class=\"previous\" [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('prev', $event)\"\n [attr.aria-disabled]=\"isDisablePrevious\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n {{appLocale.LABEL_PREVIOUS}}\n <span class=\"sr-only\">{{ isDisablePrevious ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li class=\"next\" [ngClass]=\"{'disabled':isDisableNext}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('next', $event)\"\n [attr.aria-disabled]=\"isDisableNext\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n {{appLocale.LABEL_NEXT}}\n <span class=\"sr-only\">{{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n </ul>\n}\n\n@if (navcontrols === 'Basic') {\n @if (allowpagesizechange) {\n <div class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE }} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </div>\n @if (rowSummary?.totalRecords) {\n <div class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </div>\n }\n }\n @if (!(dataSize<=maxResults)) {\n <pagination class=\"pagination basic\" [ngClass]=\"navigationClass\" role=\"navigation\"\n [itemsPerPage]=\"maxResults\" [totalItems]=\"dataSize\"\n (pageChanged)=\"pageChanged($event)\" [ngModelOptions]=\"{standalone:true}\" [ngModel]=\"dn.currentPage\"\n [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount + ' pages'\"\n [boundaryLinks]=\"boundarylinks\" [maxSize]=\"maxsize\"\n [directionLinks]=\"directionlinks\"\n firstText=\"Firtst\" lastText=\"Last\"\n [customPreviousTemplate]=\"prevTemplate\"\n [customNextTemplate]=\"nextTemplate\"\n [customPageTemplate]=\"pageTemplate\"></pagination>\n }\n}\n\n@if (navcontrols === 'Basic' && showrecordcount) {\n <ul class=\"pagination\">\n <li class=\"totalcount disabled basiccount\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n </ul>\n}\n\n<ng-template #pageTemplate let-page>\n <span class=\"sr-only\" [attr.data-isacitvepage]=\"page.active\">{{'Page '}}</span>\n {{page.number}}\n @if (page.active) {\n <span class=\"sr-only\"> {{', Showing page ' + page.number + ' of ' + pageCount}}</span>\n }\n</ng-template>\n<ng-template #prevTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Previous page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n<ng-template #nextTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Next page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { WmComponentsModule } from \"@wm/components/base\";\nimport { FormsModule } from '@angular/forms';\nimport {Component, EventEmitter, Inject, Injector, Output, SkipSelf, AfterViewInit, Optional, ViewChild} from '@angular/core';\n\nimport {\n $appDigest,\n $watch,\n AppConstants,\n DataSource,\n debounce,\n isDefined,\n switchClass,\n triggerFn\n} from '@wm/core';\nimport { DEBOUNCE_TIMES, getOrderByExpr, provideAsWidgetRef, StylableComponent, styler, WidgetRef, unsupportedStatePersistenceTypes} from '@wm/components/base';\nimport { registerProps } from './pagination.props';\nimport {forEach, get, isArray, isEmpty, isNull, isString, range} from \"lodash-es\";\nimport { PaginationModule } from 'ngx-bootstrap/pagination';\nimport { BsDropdownModule, BsDropdownDirective } from 'ngx-bootstrap/dropdown';\nimport { MenuComponent } from '@wm/components/navigation/menu';\n\nconst DEFAULT_CLS = 'app-datanavigator clearfix';\nconst WIDGET_CONFIG = {widgetType: 'wm-pagination', hostClass: DEFAULT_CLS};\n\nconst sizeClasses = {\n 'Pager': {\n 'small': 'pager-sm',\n 'large': 'pager-lg'\n },\n 'Basic': {\n 'small': 'pagination-sm',\n 'large': 'pagination-lg'\n },\n 'Classic': {\n 'small': 'pagination-sm',\n 'large': 'pagination-lg'\n }\n};\n@Component({\n standalone: true,\n imports: [CommonModule, WmComponentsModule, FormsModule, PaginationModule, BsDropdownModule, MenuComponent],\n selector: '[wmPagination]',\n templateUrl: './pagination.component.html',\n providers: [\n provideAsWidgetRef(PaginationComponent)\n ]\n})\nexport class PaginationComponent extends StylableComponent implements AfterViewInit {\n static initializeProps = registerProps();\n @Output() resultEmitter: EventEmitter<any> = new EventEmitter();\n @Output() maxResultsEmitter: EventEmitter<any> = new EventEmitter();\n @ViewChild(BsDropdownDirective) protected bsDropdown;\n\n datasource;\n maxResults;\n pageSizeOptions;\n prevPageSize;\n actualPageSize;\n allowpagesizechange;\n defaultPageSizeOptions = [];\n focusedIndex = 0;\n rowSummary;\n navigationsize;\n showrecordcount;\n\n navcontrols;\n navigation;\n\n boundarylinks;\n directionlinks;\n\n navigationClass;\n dn = {\n currentPage: 1\n };\n\n pageCount = 0;\n isDisableNext = true;\n isDisablePrevious = true;\n isDisableFirst = true;\n isDisableLast = true;\n isDisableCurrent;\n dataSize;\n prevshowrecordcount;\n isDisableCount;\n firstRow;\n result;\n __fullData;\n dataset;\n options;\n statehandler;\n filterFields;\n sortOptions;\n binddataset;\n pagination;\n logicalOp;\n\n private _debouncedApplyDataset = debounce(() => this.widget.dataset = this.dataset, DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);\n private _debouncedPageChanged = debounce(event => {\n const currentPage = event && event.page;\n const maxResults = event && (event.pagesize || event.itemsPerPage) || this.maxResults;\n \n // Do not call goToPage if page has not changed\n if (currentPage !== this.dn.currentPage || this.maxResults !== maxResults) {\n const inst = (this as any).parent || this;\n this.dn.currentPage = currentPage;\n this.maxResults = maxResults;\n this.maxResultsEmitter.emit(this.maxResults);\n inst.invokeEventCallback('paginationchange', {$event: undefined, $index: this.dn.currentPage});\n this.goToPage();\n if (this.navigation === 'Basic') {\n this._setAriaForBasicNavigation();\n }\n }\n }, DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);\n\n private _setAriaForBasicNavigation() {\n forEach(this.nativeElement.getElementsByTagName('a'), (item) => {\n item.setAttribute('href', 'javascript:void(0);');\n const childNode = item.querySelector('span');\n if (childNode?.dataset.isacitvepage === \"true\") {\n item.setAttribute('aria-current', 'true');\n }\n if(childNode?.dataset.isdisabled === \"true\") {\n item.setAttribute('aria-disabled', 'true');\n } else {\n item.removeAttribute('aria-disabled');\n }\n });\n }\n\n constructor(inj: Injector, @SkipSelf() @Inject(WidgetRef) public parent, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n setTimeout(()=> {\n this.allowpagesizechange = this.parent.allowpagesizechange;\n if(this.allowpagesizechange)\n this.defaultPageSizeOptions = this.parent?.pagesizeoptions ? this.parent.pagesizeoptions?.split(',').map(Number).sort((a, b) => a - b) : [];\n }, 0);\n }\n\n setResult(result) {\n // TODO: Emit event only if result is changed\n this.result = result;\n this.resultEmitter.emit(this.result);\n }\n\n // Update navigationClass based on navigation and navigationSize props\n private updateNavSize() {\n const sizeCls = sizeClasses[this.navcontrols];\n if (sizeCls && this.navigationsize) {\n this.navigationClass = sizeCls[this.navigationsize];\n } else {\n this.navigationClass = '';\n }\n }\n\n // Function to reset the paging values to default.\n resetPageNavigation() {\n this.pageCount = 0;\n this.dn.currentPage = 1;\n this.dataSize = 0;\n }\n\n /*Function to calculate the paging values.*/\n calculatePagingValues() {\n this.pageCount = (this.dataSize > this.maxResults) ? (Math.ceil(this.dataSize / this.maxResults)) : (this.dataSize < 0 ? 0 : 1);\n this.dn.currentPage = this.dn.currentPage || 1;\n }\n\n /*Function to set default values to the paging parameters*/\n setDefaultPagingValues(dataSize, maxResults, currentPage) {\n /*If neither 'dataSize' nor 'maxResults' is set, then set default values to the paging parameters.*/\n if (!dataSize && !maxResults) {\n this.pageCount = 1;\n this.dn.currentPage = 1;\n this.maxResults = dataSize;\n this.dataSize = dataSize;\n } else { /*Else, set the specified values and recalculate paging parameters.*/\n this.maxResults = maxResults || this.maxResults;\n this.dataSize = isDefined(dataSize) ? dataSize : this.dataSize;\n this.dn.currentPage = currentPage || this.dn.currentPage;\n this.calculatePagingValues();\n }\n this.maxResultsEmitter.emit(this.maxResults);\n }\n\n /*Function to check the dataSize and manipulate the navigator accordingly.*/\n checkDataSize(dataSize, numberOfElements?, size?) {\n /*If the dataSize is -1 or Integer.MAX_VALUE( which is 2147483647), then the total number of records is not known.\n * Hence,\n * 1. Hide the 'Total Record Count'.\n * 2. Disable the 'GoToLastPage' link as the page number of the last page is not known.*/\n if (dataSize === -1 || dataSize === AppConstants.INT_MAX_VALUE) {\n this.prevshowrecordcount = this.showrecordcount;\n this.isDisableLast = true;\n this.isDisableCount = true;\n this.showrecordcount = false;\n // If number of records in current page is less than the max records size, this is the last page. So disable next button.\n if (numberOfElements < size) {\n this.isDisableNext = true;\n }\n } else {\n this.isDisableCount = false;\n this.showrecordcount = this.prevshowrecordcount || this.showrecordcount;\n }\n }\n\n /*Function to disable navigation based on the current and total pages.*/\n disableNavigation() {\n const isCurrentPageFirst = (this.dn.currentPage === 1),\n isCurrentPageLast = (this.dn.currentPage === this.pageCount);\n if (!this.pagination?.next) {\n this.isDisableFirst = this.isDisablePrevious = isCurrentPageFirst;\n this.isDisableNext = this.isDisableLast = isCurrentPageLast;\n } else {\n // WMS-18867: In case of server side pagination, for pager type pagination depend on prev and next flags which are set by developer\n this.isDisableFirst = this.isDisablePrevious = !this.pagination.prev;\n this.isDisableNext = this.isDisableLast = !this.pagination.next;\n }\n this.isDisableCurrent = isCurrentPageFirst && isCurrentPageLast;\n // In case of client side pagination, when load more reaches last page hide the on-demand grid ele\n if (this.dataset && this.dataset.length && this.isDisableNext && this.parent.onDemandLoad && this.parent.widgetType === 'wm-table') {\n this.parent.callDataGridMethod('hideLoadingIndicator', this.isDisableNext, this.parent.infScroll);\n }\n }\n\n /*Function to check if the variable bound to the data-navigator has paging.*/\n isDataSourceHasPaging() {\n return this.datasource && this.datasource.execute(DataSource.Operation.IS_PAGEABLE);\n }\n\n // this function returns an object which gives summary of the current page data (ex: In UI it is shown as 1 to 10 out of 50 records)\n getPageDetails(startIndex, endIndex, totalRecords) {\n this.rowSummary = (isDefined(startIndex) && isDefined(endIndex) && isDefined(totalRecords)) ? {\n startIndex: startIndex,\n endIndex: endIndex,\n totalRecords: totalRecords\n }: {};\n }\n\n // Set the result for client side pagination\n setNonPageableData(newVal) {\n let dataSize,\n maxResults,\n currentPage,\n startIndex;\n dataSize = isArray(newVal) ? newVal.length : (isEmpty(newVal) ? 0 : 1);\n maxResults = (this.options && this.options.maxResults) || dataSize;\n\n if (this.allowpagesizechange) { // when default page size is not given then use maxResults instead of options.maxResults\n maxResults = this.maxResults;\n }\n // For static variable, keep the current page. For other variables without pagination reset the page to 1\n // Fix for [WMS-23263]: gridOptions.isNextPageData flag is false when dataset is changed from script, so setting current page to 1\n if (this.datasource && (this.datasource.execute(DataSource.Operation.IS_API_AWARE) || (this.parent.widgetType === 'wm-table' && (this.parent.gridOptions.isNavTypeScrollOrOndemand() && (get(this.parent, 'gridOptions.lastActionPerformed') === this.parent.gridOptions.ACTIONS.DATASET_UPDATE || !get(this.parent, 'gridOptions.isNextPageData')))))) {\n currentPage = 1;\n } else {\n currentPage = this.dn.currentPage || 1;\n }\n\n this.setDefaultPagingValues(dataSize, maxResults, currentPage);\n this.disableNavigation();\n\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n this.getPageDetails(startIndex + 1, Math.min(startIndex + this.maxResults, newVal?.length), newVal?.length);\n this.setResult(isArray(newVal) ? newVal.slice(startIndex, startIndex + this.maxResults) : newVal);\n }\n\n /*Function to set the values needed for pagination*/\n private setPagingValues(newVal) {\n let dataSize,\n maxResults,\n currentPage,\n startIndex,\n dataSource;\n let variableOptions: any = {};\n // Store the data in __fullData. This is used for client side searching witvah out modifying the actual dataset.\n this.__fullData = newVal;\n /*Check for sanity*/\n if (this.binddataset) {\n dataSource = this.datasource || {};\n variableOptions = dataSource._options || {};\n /*Check for number of elements in the data set*/\n if (newVal) {\n if (this.isDataSourceHasPaging()) {\n this.pagination = this.datasource.execute(DataSource.Operation.GET_PAGING_OPTIONS) || {};\n // If \"filterFields\" and \"sortOptions\" have been set, then set them so that the filters can be retained while fetching data upon page navigation.\n this.filterFields = variableOptions.filterFields || {};\n this.logicalOp = variableOptions.logicalOp || '';\n this.sortOptions = variableOptions.orderBy ||\n (isArray(this.pagination.sort) ? getOrderByExpr(this.pagination.sort) : '');\n dataSize = this.pagination.totalElements;\n maxResults = this.pagination.size = Number(this.pagination.size) ? this.pagination.size : get(this.datasource.dataSet, this.pagination.size);\n this.pagination.numberOfElements = Number(this.pagination.numberOfElements) ? this.pagination.numberOfElements : get(this.datasource.dataSet, this.pagination.numberOfElements)\n if (this.pagination.numberOfElements > 0) {\n if (isDefined(this.pagination.number)) { // number is page number received from backend\n this.dn.currentPage = this.pagination.number + 1;\n }\n currentPage = this.dn.currentPage || 1;\n } else {\n currentPage = 1;\n }\n /* Sending pageCount undefined to calculate it again for query.*/\n this.setDefaultPagingValues(dataSize, maxResults, currentPage);\n this.disableNavigation();\n this.checkDataSize(dataSize, this.pagination.numberOfElements, this.pagination.size);\n startIndex = (currentPage - 1) * this.maxResults;\n this.getPageDetails(startIndex + 1, startIndex + this.pagination.numberOfElements, dataSize);\n this.setResult(newVal);\n } else if (!isString(newVal)) {\n this.setNonPageableData(newVal);\n }\n } else {\n this.setResult(newVal);\n this.resetPageNavigation();\n }\n if (this.navigation === 'Basic') {\n this._setAriaForBasicNavigation();\n }\n } else {\n if (newVal && !isString(newVal)) {\n this.setNonPageableData(newVal);\n }\n }\n }\n\n /*Function to check if the current page is the first page*/\n isFirstPage() {\n return (this.dn.currentPage === 1 || !this.dn.currentPage);\n }\n\n /*Function to check if the current page is the last page*/\n isLastPage() {\n return (this.dn.currentPage === this.pageCount);\n }\n\n /*Function to navigate to the last page*/\n goToLastPage(isRefresh, event, callback) {\n if (!this.isLastPage()) {\n this.dn.currentPage = this.pageCount;\n this.goToPage(event, callback);\n } else if (isRefresh) {\n this.goToPage(event, callback);\n }\n }\n\n /*Function to navigate to the first page*/\n goToFirstPage(isRefresh, event, callback) {\n if (!this.isFirstPage()) {\n this.dn.currentPage = 1;\n this.goToPage(event, callback);\n } else if (isRefresh) {\n this.goToPage(event, callback);\n }\n }\n\n /*Function to navigate to the current page*/\n goToPage(event?, callback?) {\n this.firstRow = (this.dn.currentPage - 1) * this.maxResults;\n const mode = this.parent.statePersistence.computeMode(this.statehandler),\n allowpagesizechange = this.parent.allowpagesizechange;\n if (mode && mode.toLowerCase() !== 'none' && (this.parent.widgetType === 'wm-table' || this.parent.widgetType === 'wm-list')) {\n this.parent._selectedItemsExist = true;\n if (this.isFirstPage() && !allowpagesizechange) {\n this.parent.statePersistence.removeWidgetState(this.parent, 'pagination');\n } else {\n if (unsupportedStatePersistenceTypes.indexOf(this.parent.navigation) < 0) {\n const state: { pagination: number; pagesize?: number } = { pagination: this.dn.currentPage };\n if (allowpagesizechange) {\n state.pagesize = this.maxResults;\n }\n this.parent.statePersistence.setWidgetState(this.parent, state);\n } else if (this.parent.widgetType === 'wm-list' || this.parent.widgetType === 'wm-table') {\n console.warn('Retain State handling on Widget ' + this.parent.name + ' is not supported for current pagination type.');\n }\n }\n this.parent.currentpage = this.dn.currentPage;\n this.parent.nativeElement?.setAttribute('currentpage', this.dn.currentPage);\n }\n // call getPageData after checking state config so that Static Variables can use it\n this.getPageData(event, callback);\n }\n\n /*Function to be invoked after the data of the page has been fetched.*/\n onPageDataReady(event, data, callback) {\n this.disableNavigation();\n this.invokeSetRecord(event, data);\n triggerFn(callback);\n }\n\n /*Function to get data for the current page*/\n getPageData(event, callback) {\n let data,\n startIndex;\n\n if (this.isDataSourceHasPaging()) {\n /**\n * In table component, in case of on demand and scroll pagination\n * When there is a change in data item which is not in current page\n * Fetch the items of the page where the change is made\n * */\n let pageIndex = this.dn.currentPage;\n if (this.isEditNotInCurrentPage() && this.parent.gridOptions.lastActionPerformed !== 'delete') {\n pageIndex = this.parent.actionRowPage;\n }\n this.datasource.execute(DataSource.Operation.LIST_RECORDS, {\n 'page': pageIndex,\n 'size': this.maxResults,\n 'filterFields': this.filterFields,\n 'orderBy': this.sortOptions,\n 'logicalOp': this.logicalOp,\n 'matchMode': 'anywhereignorecase'\n }).then(response => {\n this.onPageDataReady(event, response && response.data, callback);\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n this.getPageDetails(startIndex + 1 , startIndex + this.pagination?.numberOfElements, this.pagination?.totalElements);\n $appDigest();\n }, error => {\n // If error is undefined, do not show any message as this may be discarded request\n if (error) {\n // TODO: Handle Error\n // wmToaster.show('error', 'ERROR', 'Unable to get data of page -' + this.dn.currentPage + ':' + error);\n }\n });\n } else {\n if (this.isEditNotInCurrentPage()) {\n startIndex = (this.parent.actionRowPage - 1) * this.maxResults;\n } else {\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n }\n data = isArray(this.__fullData) ? this.__fullData.slice(startIndex, startIndex + this.maxResults) : this.__fullData;\n this.getPageDetails(startIndex + 1 , Math.min(startIndex + this.maxResults, this.__fullData?.length), this.__fullData?.length);\n this.setResult(data);\n this.onPageDataReady(event, data, callback);\n }\n }\n\n /*\n Function to check if the edit action is performed on the previous page data of the table\n */\n isEditNotInCurrentPage() {\n const pageIndex = this.dn.currentPage;\n return this.parent.widgetType === 'wm-table' && pageIndex === this.parent.currentPage &&\n this.parent.actionRowPage && this.parent.actionRowPage < pageIndex;\n }\n\n invokeSetRecord(event, data) {\n // Trigger the event handler if exists.\n const pageInfo = {\n currentPage: this.dn.currentPage,\n size: this.maxResults,\n totalElements: this.dataSize,\n totalPages: this.pageCount\n };\n if (this.parent) {\n this.parent.invokeEventCallback('setrecord', {$event: event, $data: data, $index: this.dn.currentPage, pageInfo, data});\n } else {\n this.invokeEventCallback('setrecord', {$event: event, $data: data, $index: this.dn.currentPage, pageInfo, data});\n }\n }\n\n /*Function to validate the page input.\n In case of invalid input, navigate to the appropriate page; also return false.\n In case of valid input, return true.*/\n validateCurrentPage(event, callback?) {\n /*If the value entered is greater than the last page number or invalid value, then highlighting the field showing error.*/\n if (event && (isNaN(this.dn.currentPage) || this.dn.currentPage <= 0 || (this.pageCount && (this.dn.currentPage > this.pageCount || isNull(this.dn.currentPage))))) {\n if (this.dn.currentPage <= 0) {\n this.dn.currentPage = 1;\n } else if (this.dn.currentPage > this.pageCount) {\n this.dn.currentPage = this.pageCount;\n }\n return false;\n }\n return true;\n }\n\n onModelChange(event) {\n if (!this.validateCurrentPage(event)) {\n return;\n }\n this.goToPage(event);\n }\n\n onKeyDown(event) {\n const targetEle = $(event.target).closest('a');\n if (event.code === 'KeyE') {\n targetEle.addClass('ng-invalid');\n return false;\n }\n targetEle.removeClass('ng-invalid');\n return true;\n }\n\n pageChanged(event: any) {\n this._debouncedPageChanged(event);\n }\n\n /*Function to navigate to the respective pages.*/\n navigatePage(index, event, isRefresh?, callback?) {\n // when navigated to next page turn on the isDataLoading flag to show the loading indicator\n if (isDefined(this.parent.isDataLoading) && !this.isDisableNext) {\n this.parent.isDataLoading = true;\n // In case of infinite scroll calling the showLoadingIndicator method to update the loading message immediately when navigated to next page\n if (this.parent.infScroll) {\n this.parent.variableInflight = true;\n this.parent.callDataGridMethod('showLoadingIndicator', this.parent.loadingdatamsg, true);\n }\n }\n // reset the last action performed to \"scroll\" and isDatasetUpdated to false\n if (this.parent.widgetType === 'wm-table' && this.parent.gridOptions.isNavTypeScrollOrOndemand()) {\n this.parent.gridOptions.setLastActionPerformed(this.parent.gridOptions.ACTIONS.DEFAULT);\n this.parent.gridOptions.setIsDatasetUpdated(false);\n }\n this.invokeEventCallback('paginationchange', {$event: undefined, $index: this.dn.currentPage});\n\n // Convert the current page to a valid page number.\n this.dn.currentPage = +this.dn.currentPage;\n\n switch (index) {\n case 'first':\n this.goToFirstPage(isRefresh, event, callback);\n return;\n case 'prev':\n /*Return if already on the first page.*/\n if (!this.pagination?.next && (this.isFirstPage() || !this.validateCurrentPage(event, callback))) {\n return;\n } else if (this.pagination?.next) { // WMS-18867: For server side pagination, skipping the regular flow and enabling isNext flag in pagination metadata\n this.datasource.pagination.isNext = false;\n this.datasource.pagination.isPrev = true;\n }\n /*Decrement the current page by 1.*/\n this.dn.currentPage -= 1;\n break;\n case 'next':\n /*Return if already on the last page.*/\n if (!this.pagination?.next && (this.isLastPage() || !this.validateCurrentPage(event, callback))) {\n return;\n } else if (this.pagination?.next) { // WMS-18867: For server side pagination, skipping the regular flow and enabling isPrev flag in pagination metadata\n this.datasource.pagination.isNext = true;\n this.datasource.pagination.isPrev = false;\n }\n /*Increment the current page by 1.*/\n this.dn.currentPage += 1;\n break;\n case 'last':\n this.goToLastPage(isRefresh, event, callback);\n return;\n default:\n break;\n }\n\n /*Navigate to the current page.*/\n this.goToPage(event, callback);\n }\n\n setBindDataSet(binddataset, parent, dataSource, dataset?, binddatasource?, datasetBoundExpr?, statehandler?) {\n const parts = binddataset.split('.');\n let bindPagingOptions;\n this.statehandler = statehandler;\n if (parts[0] === 'Variables' || parts[0] === 'Widgets') {\n bindPagingOptions = `${parts[0]}.${parts[1]}.pagination`;\n }\n if (!binddatasource && dataset && !datasetBoundExpr) {\n this.dataset = dataset;\n this._debouncedApplyDataset();\n return;\n }\n this.binddataset = binddataset;\n setTimeout(() => {\n // watching for dataset changes even when dataset is bound to \"item.\" (i.e. by checking for datasetBoundExpr)\n // item context is passed as dataSource here\n // [Todo-CSP]: check if same expr fn is generated by parent widget (list, table)\n this.registerDestroyListener(\n $watch(\n binddataset,\n parent,\n datasetBoundExpr ? dataSource : {},\n nv => {\n if (nv) {\n this.dataset = nv;\n this._debouncedApplyDataset();\n } else {\n // WMS-19285: Setting dataset on proxy only to handle propertychange handler call for undefined cases\n this.widget.dataset = nv;\n }\n }\n )\n );\n\n // Register a watch on paging options. Call dataset property change handler even if paging options changes to reflect pagination state\n if (!bindPagingOptions) {\n return;\n }\n //[Todo-CSP]: either generate watch expr fn or register an event from the datasource itself\n this.registerDestroyListener(\n $watch(\n bindPagingOptions,\n parent,\n {},\n () => this._debouncedApplyDataset()\n )\n );\n });\n // apply datasource only when dataset is not bound to \"item.FIELD\"\n if (!datasetBoundExpr) {\n this.datasource = dataSource;\n }\n }\n\n // Set the datasource of pagination from the parent widget\n setDataSource(dataSource) {\n this.datasource = dataSource;\n }\n\n onPropertyChange(key: string, nv, ov) {\n let pageSize, prevPageSize;\n if (key === 'dataset') {\n let data;\n if (this.parent && this.parent.onDataNavigatorDataSetChange) {\n data = this.parent.onDataNavigatorDataSetChange(nv);\n } else {\n data = nv;\n }\n // Set last action performed to \"dataset_update\" whenever dataset is changed in table component\n if (this.parent.widgetType === 'wm-table') {\n this.parent._triggeredByUser = false;\n }\n if (data?.length) { // calculate Pagesize options based on actual page size\n if (this.isDataSourceHasPaging()) { // for Live variables\n const currentPageSize = get(data, 'pagination.size') || get(this.datasource, 'pagination.size'),\n totalElements = get(data, 'pagination.totalElements') || get(this.datasource, 'pagination.totalElements'),\n widgetState = this.parent.statePersistence.getWidgetState(this.parent);\n this.actualPageSize = widgetState?.actualpagesize || currentPageSize;\n this.actualPageSize = Number(this.actualPageSize) ? this.actualPageSize : get(this.datasource.dataSet, this.actualPageSize)\n if(this.defaultPageSizeOptions.length > 0){\n this.pageSizeOptions = [...this.defaultPageSizeOptions];\n }else{\n this.pageSizeOptions = 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\n }\n if (widgetState?.selectedItem && widgetState.actualpagesize !== widgetState.pagesize) {\n if (!this.prevPageSize) {\n this.prevPageSize = this.actualPageSize || data?.length;\n }\n const updatedItems = this.handleStateParamsforNewPageSize(widgetState.selectedItem, this.prevPageSize, data?.length);\n if (updatedItems) {\n this.parent.statePersistence.setWidgetState(this.parent, {\n pagination: 1,\n pagesize: this.maxResults,\n actualpagesize: this.actualPageSize || this.maxResults,\n selectedItem: updatedItems\n })\n this.prevPageSize = undefined;\n }\n }\n } else {\n pageSize = this.parent.getActualPageSize();\n if(this.defaultPageSizeOptions.length > 0){\n this.pageSizeOptions = [...this.defaultPageSizeOptions];\n }else{\n this.pageSizeOptions = range(pageSize, data.length + pageSize, pageSize);\n }\n }\n }\n // When the dataset is not in current page, but in previous ones directly set the result without setting page values\n if (this.isEditNotInCurrentPage()) {\n this.setResult(data);\n } else {\n this.setPagingValues(data);\n }\n } else if (key === 'navigation') {\n if (nv === 'Advanced') { // Support for older projects where navigation type was advanced instead of clasic\n this.navigation = 'Classic';\n }\n this.updateNavSize();\n this.navcontrols = nv;\n } else if (key === 'navigationsize') {\n this.updateNavSize();\n } else if (key === 'navigationalign') {\n switchClass(this.nativeElement, `text-${nv}`, `text-${ov}`);\n } else if (key === 'maxResults') {\n this.setPagingValues(this.dataset);\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n // change the selectedItems page number and index in the stateparams when pagesize is changed\n handleStateParamsforNewPageSize(\n selectedItem: { page: number; index: number }[],\n oldPageSize: number,\n newPageSize: number\n ): { page: number; index: number }[] {\n return selectedItem.map(({ page, index }) => {\n const absoluteIndex = (page - 1) * oldPageSize + index;\n const newPage = Math.floor(absoluteIndex / newPageSize) + 1; // back to 1-based\n const newIndex = absoluteIndex % newPageSize;\n\n return {\n page: newPage,\n index: newIndex\n };\n });\n }\n\n onDropdownKeydown(event, index) {\n const $items = $('ul#dropdown-basic a.dropdown-item');\n const maxIndex = this.pageSizeOptions.length - 1;\n let selectedOption;\n\n switch (event.key) {\n case 'ArrowDown':\n case 'Tab':\n event.preventDefault();\n if (event.key === 'Tab' && event.shiftKey) {\n // Treat Shift+Tab as ArrowUp\n this.focusedIndex = (index - 1) < 0 ? maxIndex : index - 1;\n } else {\n // Treat Tab or ArrowDown as ArrowDown\n this.focusedIndex = (index + 1) > maxIndex ? 0 : index + 1;\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n this.focusedIndex = (index - 1) < 0 ? maxIndex : index - 1;\n break;\n\n case 'Enter':\n event.preventDefault();\n selectedOption = this.pageSizeOptions[this.focusedIndex];\n this.onPageSizeChange(event, selectedOption);\n this.closeDropdown();\n return;\n\n case 'Escape':\n event.preventDefault();\n this.closeDropdown();\n return;\n\n default:\n return;\n }\n\n // Move focus after index is updated\n setTimeout(() => {\n $items.eq(this.focusedIndex)?.focus();\n });\n\n }\n\n closeDropdown() {\n // Close dropdown\n this.bsDropdown.hide();\n const $toggleButton = $('button[aria-controls=\"dropdown-basic\"]');\n $toggleButton.focus(); // Return focus to button\n }\n\n // Function gets called on dropdown open & close\n onOpenChange(isOpen) {\n if (isOpen) {\n this.focusedIndex = 0;\n setTimeout(() => {\n // manually focus the dropdown as dropdown has container=\"body\"\n const $items = $('ul#dropdown-basic a.dropdown-item');\n const $firstItem = $items.eq(this.focusedIndex);\n $firstItem?.focus();\n }, 0);\n }\n }\n onPageSizeChange($event, newPageSize) {\n const widgetState = this.parent.statePersistence.getWidgetState(this.parent);\n let updatedItems;\n if (widgetState?.selectedItem) {\n updatedItems = this.handleStateParamsforNewPageSize(widgetState.selectedItem, this.maxResults, +newPageSize);\n }\n this.actualPageSize = this.actualPageSize || this.maxResults;\n this.maxResults = +newPageSize;\n this.maxResultsEmitter.emit(this.maxResults);\n if (this.isDataSourceHasPaging() && this.datasource) {\n this.datasource.maxResults = this.maxResults;\n }\n if (updatedItems) {\n this.parent.statePersistence.setWidgetState(this.parent, {\n pagination: 1,\n pagesize: this.maxResults,\n actualpagesize: this.actualPageSize || this.maxResults,\n selectedItem: updatedItems\n })\n } else {\n this.parent.statePersistence.setWidgetState(this.parent, {\n pagination: 1,\n pagesize: this.maxResults,\n actualpagesize: this.actualPageSize || this.maxResults\n })\n }\n this.navigatePage('first', $event, true);\n this.calculatePagingValues();\n }\n ngAfterViewInit() {\n const paginationElem = this.nativeElement as HTMLElement;\n paginationElem.onclick = (event) => {\n event.stopPropagation();\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/data/pagination/src/pagination.props.ts","../../../../../projects/components/widgets/data/pagination/src/pagination.component.html","../../../../../projects/components/widgets/data/pagination/src/pagination.component.ts","../../../../../projects/components/widgets/data/pagination/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-pagination',\n new Map(\n [\n ['boundarylinks', {value: false, ...PROP_BOOLEAN}],\n ['class', PROP_STRING],\n ['dataset', PROP_ANY],\n ['directionlinks', {value: true, ...PROP_BOOLEAN}],\n ['forceellipses', {value: true, ...PROP_BOOLEAN}],\n ['allowpagesizechange', {value: false, ...PROP_BOOLEAN}],\n ['allowpagesizechange', {value: false, ...PROP_BOOLEAN}],\n ['pagesizeoptions', {value: '', ...PROP_STRING}],\n ['maxResults', PROP_NUMBER],\n ['maxsize', {value: 5, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['navigation', {value: 'Basic', ...PROP_STRING}],\n ['navigationalign', {value: 'left', ...PROP_STRING}],\n ['navigationsize', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showrecordcount', PROP_BOOLEAN],\n ['tabindex', {value: 0, ...PROP_NUMBER}]\n ]\n )\n );\n};\n","\n@if (navcontrols === 'Classic') {\n<ul class=\"pagination advanced {{navigationClass}}\">\n @if (allowpagesizechange && pageSizeOptions?.[0]<rowSummary?.totalRecords) {\n <li class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE}} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </li>\n @if (rowSummary?.totalRecords) {\n <li class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </li>\n }\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableFirst}\">\n <a [title]=\"appLocale.LABEL_FIRST\" name=\"first\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableFirst\"\n (click)=\"navigatePage('first', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-first-page\"></i></span>\n <span class=\"sr-only\">Go to first page {{ isDisableFirst ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a [title]=\"appLocale.LABEL_PREVIOUS\" name=\"prev\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisablePrevious\"\n (click)=\"navigatePage('prev', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n <span class=\"sr-only\">Go to previous page {{ isDisablePrevious ? ', Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li class=\"pagecount disabled\">\n <a href=\"javascript:void(0);\" aria-label=\"Change Page Number\">\n <input [(ngModel)]=\"dn.currentPage\" [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount\" [disabled]=\"isDisableCurrent\"\n [ngModelOptions]=\"{standalone: true}\"\n type=\"number\"\n (keydown)=\"onKeyDown($event)\" (change)=\"onModelChange($event)\" class=\"form-control\"/>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li class=\"disabled\">\n <a [hidden]=\"isDisableCount\"> / {{pageCount}}</a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableNext}\">\n <a [title]=\"appLocale.LABEL_NEXT\" name=\"next\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableNext\"\n (click)=\"navigatePage('next', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n <span class=\"sr-only\">Go to next page {{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (!(dataSize<=maxResults)) {\n <li [ngClass]=\"{'disabled':isDisableLast}\">\n <a [title]=\"appLocale.LABEL_LAST\" name=\"last\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableLast\"\n (click)=\"navigatePage('last', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-last-page\"></i></span>\n <span class=\"sr-only\">Go to last page {{ isDisableLast ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n }\n @if (showrecordcount) {\n <li class=\"totalcount disabled\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n }\n</ul>\n}\n@if (navcontrols === 'Pager') {\n <ul class=\"pager {{navigationClass}}\">\n @if (allowpagesizechange && pageSizeOptions?.[0]<rowSummary?.totalRecords) {\n <li class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE}} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </li>\n @if (rowSummary?.totalRecords) {\n <li class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </li>\n }\n }\n\n <li class=\"previous\" [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('prev', $event)\"\n [attr.aria-disabled]=\"isDisablePrevious\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n {{appLocale.LABEL_PREVIOUS}}\n <span class=\"sr-only\">{{ isDisablePrevious ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li class=\"next\" [ngClass]=\"{'disabled':isDisableNext}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('next', $event)\"\n [attr.aria-disabled]=\"isDisableNext\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n {{appLocale.LABEL_NEXT}}\n <span class=\"sr-only\">{{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n </ul>\n}\n\n@if (navcontrols === 'Basic') {\n @if (allowpagesizechange && pageSizeOptions?.[0]<rowSummary?.totalRecords) {\n <div class=\"items-per-page\">\n <label [title]=\"appLocale.LABEL_ITEMS_PER_PAGE\" class=\"app-label\">{{appLocale.LABEL_ITEMS_PER_PAGE }} :</label>\n\n <div class=\"btn-group\" dropdown container=\"body\" (isOpenChange)=\"onOpenChange($event)\">\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn app-button dropdown-toggle\"\n aria-controls=\"dropdown-basic\">\n {{maxResults}} <span class=\"caret\"></span>\n </button>\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu pagesize-options\"\n role=\"menu\" aria-labelledby=\"button-basic\">\n @for (option of pageSizeOptions; track option; let i = $index) {\n <li role=\"menuitem\" [ngClass]=\"{ 'active': option == maxResults }\">\n <a class=\"dropdown-item\" (click)=\"onPageSizeChange($event, option)\" (keydown)=\"onDropdownKeydown($event, i)\"\n [attr.tabindex]=\"i === focusedIndex ? 0 : -1\">{{option}}</a>\n </li>\n }\n </ul>\n </div>\n </div>\n @if (rowSummary?.totalRecords) {\n <div class=\"item-range\">\n <div>\n <span>{{rowSummary.startIndex}} - {{rowSummary.endIndex}}</span>\n <span>of</span>\n <span>{{rowSummary.totalRecords}}</span>\n </div>\n </div>\n }\n }\n @if (!(dataSize<=maxResults)) {\n <pagination class=\"pagination basic\" [ngClass]=\"navigationClass\" role=\"navigation\"\n [itemsPerPage]=\"maxResults\" [totalItems]=\"dataSize\"\n (pageChanged)=\"pageChanged($event)\" [ngModelOptions]=\"{standalone:true}\" [ngModel]=\"dn.currentPage\"\n [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount + ' pages'\"\n [boundaryLinks]=\"boundarylinks\" [maxSize]=\"maxsize\"\n [directionLinks]=\"directionlinks\"\n firstText=\"Firtst\" lastText=\"Last\"\n [customPreviousTemplate]=\"prevTemplate\"\n [customNextTemplate]=\"nextTemplate\"\n [customPageTemplate]=\"pageTemplate\"></pagination>\n }\n}\n\n@if (navcontrols === 'Basic' && showrecordcount) {\n <ul class=\"pagination\">\n <li class=\"totalcount disabled basiccount\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n </ul>\n}\n\n<ng-template #pageTemplate let-page>\n <span class=\"sr-only\" [attr.data-isacitvepage]=\"page.active\">{{'Page '}}</span>\n {{page.number}}\n @if (page.active) {\n <span class=\"sr-only\"> {{', Showing page ' + page.number + ' of ' + pageCount}}</span>\n }\n</ng-template>\n<ng-template #prevTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Previous page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n<ng-template #nextTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Next page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { WmComponentsModule } from \"@wm/components/base\";\nimport { FormsModule } from '@angular/forms';\nimport {Component, EventEmitter, Inject, Injector, Output, SkipSelf, AfterViewInit, Optional, ViewChild} from '@angular/core';\n\nimport {\n $appDigest,\n $watch,\n AppConstants,\n DataSource,\n debounce,\n isDefined,\n switchClass,\n triggerFn\n} from '@wm/core';\nimport { DEBOUNCE_TIMES, getOrderByExpr, provideAsWidgetRef, StylableComponent, styler, WidgetRef, unsupportedStatePersistenceTypes} from '@wm/components/base';\nimport { registerProps } from './pagination.props';\nimport {forEach, get, isArray, isEmpty, isNull, isString, range} from \"lodash-es\";\nimport { PaginationModule } from 'ngx-bootstrap/pagination';\nimport { BsDropdownModule, BsDropdownDirective } from 'ngx-bootstrap/dropdown';\nimport { MenuComponent } from '@wm/components/navigation/menu';\n\nconst DEFAULT_CLS = 'app-datanavigator clearfix';\nconst WIDGET_CONFIG = {widgetType: 'wm-pagination', hostClass: DEFAULT_CLS};\n\nconst sizeClasses = {\n 'Pager': {\n 'small': 'pager-sm',\n 'large': 'pager-lg'\n },\n 'Basic': {\n 'small': 'pagination-sm',\n 'large': 'pagination-lg'\n },\n 'Classic': {\n 'small': 'pagination-sm',\n 'large': 'pagination-lg'\n }\n};\n@Component({\n standalone: true,\n imports: [CommonModule, WmComponentsModule, FormsModule, PaginationModule, BsDropdownModule, MenuComponent],\n selector: '[wmPagination]',\n templateUrl: './pagination.component.html',\n providers: [\n provideAsWidgetRef(PaginationComponent)\n ]\n})\nexport class PaginationComponent extends StylableComponent implements AfterViewInit {\n static initializeProps = registerProps();\n @Output() resultEmitter: EventEmitter<any> = new EventEmitter();\n @Output() maxResultsEmitter: EventEmitter<any> = new EventEmitter();\n @ViewChild(BsDropdownDirective) protected bsDropdown;\n\n datasource;\n maxResults;\n pageSizeOptions;\n prevPageSize;\n actualPageSize;\n allowpagesizechange;\n defaultPageSizeOptions = [];\n focusedIndex = 0;\n rowSummary;\n navigationsize;\n showrecordcount;\n\n navcontrols;\n navigation;\n\n boundarylinks;\n directionlinks;\n\n navigationClass;\n dn = {\n currentPage: 1\n };\n\n pageCount = 0;\n isDisableNext = true;\n isDisablePrevious = true;\n isDisableFirst = true;\n isDisableLast = true;\n isDisableCurrent;\n dataSize;\n prevshowrecordcount;\n isDisableCount;\n firstRow;\n result;\n __fullData;\n dataset;\n options;\n statehandler;\n filterFields;\n sortOptions;\n binddataset;\n pagination;\n logicalOp;\n\n private _debouncedApplyDataset = debounce(() => this.widget.dataset = this.dataset, DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);\n private _debouncedPageChanged = debounce(event => {\n const currentPage = event && event.page;\n const maxResults = event && (event.pagesize || event.itemsPerPage) || this.maxResults;\n \n // Do not call goToPage if page has not changed\n if (currentPage !== this.dn.currentPage || this.maxResults !== maxResults) {\n const inst = (this as any).parent || this;\n this.dn.currentPage = currentPage;\n this.maxResults = maxResults;\n this.maxResultsEmitter.emit(this.maxResults);\n inst.invokeEventCallback('paginationchange', {$event: undefined, $index: this.dn.currentPage});\n this.goToPage();\n if (this.navigation === 'Basic') {\n this._setAriaForBasicNavigation();\n }\n }\n }, DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);\n\n private _setAriaForBasicNavigation() {\n forEach(this.nativeElement.getElementsByTagName('a'), (item) => {\n item.setAttribute('href', 'javascript:void(0);');\n const childNode = item.querySelector('span');\n if (childNode?.dataset.isacitvepage === \"true\") {\n item.setAttribute('aria-current', 'true');\n }\n if(childNode?.dataset.isdisabled === \"true\") {\n item.setAttribute('aria-disabled', 'true');\n } else {\n item.removeAttribute('aria-disabled');\n }\n });\n }\n\n constructor(inj: Injector, @SkipSelf() @Inject(WidgetRef) public parent, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n setTimeout(()=> {\n this.allowpagesizechange = this.parent.allowpagesizechange;\n if(this.allowpagesizechange)\n this.defaultPageSizeOptions = this.parent?.pagesizeoptions ? this.parent.pagesizeoptions?.split(',').map(Number).sort((a, b) => a - b) : [];\n }, 0);\n }\n\n setResult(result) {\n // TODO: Emit event only if result is changed\n this.result = result;\n this.resultEmitter.emit(this.result);\n }\n\n // Update navigationClass based on navigation and navigationSize props\n private updateNavSize() {\n const sizeCls = sizeClasses[this.navcontrols];\n if (sizeCls && this.navigationsize) {\n this.navigationClass = sizeCls[this.navigationsize];\n } else {\n this.navigationClass = '';\n }\n }\n\n // Function to reset the paging values to default.\n resetPageNavigation() {\n this.pageCount = 0;\n this.dn.currentPage = 1;\n this.dataSize = 0;\n }\n\n /*Function to calculate the paging values.*/\n calculatePagingValues() {\n this.pageCount = (this.dataSize > this.maxResults) ? (Math.ceil(this.dataSize / this.maxResults)) : (this.dataSize < 0 ? 0 : 1);\n this.dn.currentPage = this.dn.currentPage || 1;\n }\n\n /*Function to set default values to the paging parameters*/\n setDefaultPagingValues(dataSize, maxResults, currentPage) {\n /*If neither 'dataSize' nor 'maxResults' is set, then set default values to the paging parameters.*/\n if (!dataSize && !maxResults) {\n this.pageCount = 1;\n this.dn.currentPage = 1;\n this.maxResults = dataSize;\n this.dataSize = dataSize;\n } else { /*Else, set the specified values and recalculate paging parameters.*/\n this.maxResults = maxResults || this.maxResults;\n this.dataSize = isDefined(dataSize) ? dataSize : this.dataSize;\n this.dn.currentPage = currentPage || this.dn.currentPage;\n this.calculatePagingValues();\n }\n this.maxResultsEmitter.emit(this.maxResults);\n }\n\n /*Function to check the dataSize and manipulate the navigator accordingly.*/\n checkDataSize(dataSize, numberOfElements?, size?) {\n /*If the dataSize is -1 or Integer.MAX_VALUE( which is 2147483647), then the total number of records is not known.\n * Hence,\n * 1. Hide the 'Total Record Count'.\n * 2. Disable the 'GoToLastPage' link as the page number of the last page is not known.*/\n if (dataSize === -1 || dataSize === AppConstants.INT_MAX_VALUE) {\n this.prevshowrecordcount = this.showrecordcount;\n this.isDisableLast = true;\n this.isDisableCount = true;\n this.showrecordcount = false;\n // If number of records in current page is less than the max records size, this is the last page. So disable next button.\n if (numberOfElements < size) {\n this.isDisableNext = true;\n }\n } else {\n this.isDisableCount = false;\n this.showrecordcount = this.prevshowrecordcount || this.showrecordcount;\n }\n }\n\n /*Function to disable navigation based on the current and total pages.*/\n disableNavigation() {\n const isCurrentPageFirst = (this.dn.currentPage === 1),\n isCurrentPageLast = (this.dn.currentPage === this.pageCount);\n if (!this.pagination?.next) {\n this.isDisableFirst = this.isDisablePrevious = isCurrentPageFirst;\n this.isDisableNext = this.isDisableLast = isCurrentPageLast;\n } else {\n // WMS-18867: In case of server side pagination, for pager type pagination depend on prev and next flags which are set by developer\n this.isDisableFirst = this.isDisablePrevious = !this.pagination.prev;\n this.isDisableNext = this.isDisableLast = !this.pagination.next;\n }\n this.isDisableCurrent = isCurrentPageFirst && isCurrentPageLast;\n // In case of client side pagination, when load more reaches last page hide the on-demand grid ele\n if (this.dataset && this.dataset.length && this.isDisableNext && this.parent.onDemandLoad && this.parent.widgetType === 'wm-table') {\n this.parent.callDataGridMethod('hideLoadingIndicator', this.isDisableNext, this.parent.infScroll);\n }\n }\n\n /*Function to check if the variable bound to the data-navigator has paging.*/\n isDataSourceHasPaging() {\n return this.datasource && this.datasource.execute(DataSource.Operation.IS_PAGEABLE);\n }\n\n // this function returns an object which gives summary of the current page data (ex: In UI it is shown as 1 to 10 out of 50 records)\n getPageDetails(startIndex, endIndex, totalRecords) {\n this.rowSummary = (isDefined(startIndex) && isDefined(endIndex) && isDefined(totalRecords)) ? {\n startIndex: startIndex,\n endIndex: endIndex,\n totalRecords: totalRecords\n }: {};\n }\n\n // Set the result for client side pagination\n setNonPageableData(newVal) {\n let dataSize,\n maxResults,\n currentPage,\n startIndex;\n dataSize = isArray(newVal) ? newVal.length : (isEmpty(newVal) ? 0 : 1);\n maxResults = (this.options && this.options.maxResults) || dataSize;\n\n if (this.allowpagesizechange) { // when default page size is not given then use maxResults instead of options.maxResults\n maxResults = this.maxResults;\n }\n // For static variable, keep the current page. For other variables without pagination reset the page to 1\n // Fix for [WMS-23263]: gridOptions.isNextPageData flag is false when dataset is changed from script, so setting current page to 1\n if (this.datasource && (this.datasource.execute(DataSource.Operation.IS_API_AWARE) || (this.parent.widgetType === 'wm-table' && (this.parent.gridOptions.isNavTypeScrollOrOndemand() && (get(this.parent, 'gridOptions.lastActionPerformed') === this.parent.gridOptions.ACTIONS.DATASET_UPDATE || !get(this.parent, 'gridOptions.isNextPageData')))))) {\n currentPage = 1;\n } else {\n currentPage = this.dn.currentPage || 1;\n }\n\n this.setDefaultPagingValues(dataSize, maxResults, currentPage);\n this.disableNavigation();\n\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n this.getPageDetails(startIndex + 1, Math.min(startIndex + this.maxResults, newVal?.length), newVal?.length);\n this.setResult(isArray(newVal) ? newVal.slice(startIndex, startIndex + this.maxResults) : newVal);\n }\n\n /*Function to set the values needed for pagination*/\n private setPagingValues(newVal) {\n let dataSize,\n maxResults,\n currentPage,\n startIndex,\n dataSource;\n let variableOptions: any = {};\n // Store the data in __fullData. This is used for client side searching witvah out modifying the actual dataset.\n this.__fullData = newVal;\n /*Check for sanity*/\n if (this.binddataset) {\n dataSource = this.datasource || {};\n variableOptions = dataSource._options || {};\n /*Check for number of elements in the data set*/\n if (newVal) {\n if (this.isDataSourceHasPaging()) {\n this.pagination = this.datasource.execute(DataSource.Operation.GET_PAGING_OPTIONS) || {};\n // If \"filterFields\" and \"sortOptions\" have been set, then set them so that the filters can be retained while fetching data upon page navigation.\n this.filterFields = variableOptions.filterFields || {};\n this.logicalOp = variableOptions.logicalOp || '';\n this.sortOptions = variableOptions.orderBy ||\n (isArray(this.pagination.sort) ? getOrderByExpr(this.pagination.sort) : '');\n dataSize = this.pagination.totalElements;\n maxResults = this.pagination.size = Number(this.pagination.size) ? this.pagination.size : get(this.datasource.dataSet, this.pagination.size);\n this.pagination.numberOfElements = Number(this.pagination.numberOfElements) ? this.pagination.numberOfElements : get(this.datasource.dataSet, this.pagination.numberOfElements)\n if (this.pagination.numberOfElements > 0) {\n if (isDefined(this.pagination.number)) { // number is page number received from backend\n this.dn.currentPage = this.pagination.number + 1;\n }\n currentPage = this.dn.currentPage || 1;\n } else {\n currentPage = 1;\n }\n /* Sending pageCount undefined to calculate it again for query.*/\n this.setDefaultPagingValues(dataSize, maxResults, currentPage);\n this.disableNavigation();\n this.checkDataSize(dataSize, this.pagination.numberOfElements, this.pagination.size);\n startIndex = (currentPage - 1) * this.maxResults;\n this.getPageDetails(startIndex + 1, startIndex + this.pagination.numberOfElements, dataSize);\n this.setResult(newVal);\n } else if (!isString(newVal)) {\n this.setNonPageableData(newVal);\n }\n } else {\n this.setResult(newVal);\n this.resetPageNavigation();\n }\n if (this.navigation === 'Basic') {\n this._setAriaForBasicNavigation();\n }\n } else {\n if (newVal && !isString(newVal)) {\n this.setNonPageableData(newVal);\n }\n }\n }\n\n /*Function to check if the current page is the first page*/\n isFirstPage() {\n return (this.dn.currentPage === 1 || !this.dn.currentPage);\n }\n\n /*Function to check if the current page is the last page*/\n isLastPage() {\n return (this.dn.currentPage === this.pageCount);\n }\n\n /*Function to navigate to the last page*/\n goToLastPage(isRefresh, event, callback) {\n if (!this.isLastPage()) {\n this.dn.currentPage = this.pageCount;\n this.goToPage(event, callback);\n } else if (isRefresh) {\n this.goToPage(event, callback);\n }\n }\n\n /*Function to navigate to the first page*/\n goToFirstPage(isRefresh, event, callback) {\n if (!this.isFirstPage()) {\n this.dn.currentPage = 1;\n this.goToPage(event, callback);\n } else if (isRefresh) {\n this.goToPage(event, callback);\n }\n }\n\n /*Function to navigate to the current page*/\n goToPage(event?, callback?) {\n this.firstRow = (this.dn.currentPage - 1) * this.maxResults;\n const mode = this.parent.statePersistence.computeMode(this.statehandler),\n allowpagesizechange = this.parent.allowpagesizechange;\n if (mode && mode.toLowerCase() !== 'none' && (this.parent.widgetType === 'wm-table' || this.parent.widgetType === 'wm-list')) {\n this.parent._selectedItemsExist = true;\n if (this.isFirstPage() && !allowpagesizechange) {\n this.parent.statePersistence.removeWidgetState(this.parent, 'pagination');\n } else {\n if (unsupportedStatePersistenceTypes.indexOf(this.parent.navigation) < 0) {\n const state: { pagination: number; pagesize?: number } = { pagination: this.dn.currentPage };\n if (allowpagesizechange) {\n state.pagesize = this.maxResults;\n }\n this.parent.statePersistence.setWidgetState(this.parent, state);\n } else if (this.parent.widgetType === 'wm-list' || this.parent.widgetType === 'wm-table') {\n console.warn('Retain State handling on Widget ' + this.parent.name + ' is not supported for current pagination type.');\n }\n }\n this.parent.currentpage = this.dn.currentPage;\n this.parent.nativeElement?.setAttribute('currentpage', this.dn.currentPage);\n }\n // call getPageData after checking state config so that Static Variables can use it\n this.getPageData(event, callback);\n }\n\n /*Function to be invoked after the data of the page has been fetched.*/\n onPageDataReady(event, data, callback) {\n this.disableNavigation();\n this.invokeSetRecord(event, data);\n triggerFn(callback);\n }\n\n /*Function to get data for the current page*/\n getPageData(event, callback) {\n let data,\n startIndex;\n\n if (this.isDataSourceHasPaging()) {\n /**\n * In table component, in case of on demand and scroll pagination\n * When there is a change in data item which is not in current page\n * Fetch the items of the page where the change is made\n * */\n let pageIndex = this.dn.currentPage;\n if (this.isEditNotInCurrentPage() && this.parent.gridOptions.lastActionPerformed !== 'delete') {\n pageIndex = this.parent.actionRowPage;\n }\n this.datasource.execute(DataSource.Operation.LIST_RECORDS, {\n 'page': pageIndex,\n 'size': this.maxResults,\n 'filterFields': this.filterFields,\n 'orderBy': this.sortOptions,\n 'logicalOp': this.logicalOp,\n 'matchMode': 'anywhereignorecase'\n }).then(response => {\n this.onPageDataReady(event, response && response.data, callback);\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n this.getPageDetails(startIndex + 1 , startIndex + this.pagination?.numberOfElements, this.pagination?.totalElements);\n $appDigest();\n }, error => {\n // If error is undefined, do not show any message as this may be discarded request\n if (error) {\n // TODO: Handle Error\n // wmToaster.show('error', 'ERROR', 'Unable to get data of page -' + this.dn.currentPage + ':' + error);\n }\n });\n } else {\n if (this.isEditNotInCurrentPage()) {\n startIndex = (this.parent.actionRowPage - 1) * this.maxResults;\n } else {\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n }\n data = isArray(this.__fullData) ? this.__fullData.slice(startIndex, startIndex + this.maxResults) : this.__fullData;\n this.getPageDetails(startIndex + 1 , Math.min(startIndex + this.maxResults, this.__fullData?.length), this.__fullData?.length);\n this.setResult(data);\n this.onPageDataReady(event, data, callback);\n }\n }\n\n /*\n Function to check if the edit action is performed on the previous page data of the table\n */\n isEditNotInCurrentPage() {\n const pageIndex = this.dn.currentPage;\n return this.parent.widgetType === 'wm-table' && pageIndex === this.parent.currentPage &&\n this.parent.actionRowPage && this.parent.actionRowPage < pageIndex;\n }\n\n invokeSetRecord(event, data) {\n // Trigger the event handler if exists.\n const pageInfo = {\n currentPage: this.dn.currentPage,\n size: this.maxResults,\n totalElements: this.dataSize,\n totalPages: this.pageCount\n };\n if (this.parent) {\n this.parent.invokeEventCallback('setrecord', {$event: event, $data: data, $index: this.dn.currentPage, pageInfo, data});\n } else {\n this.invokeEventCallback('setrecord', {$event: event, $data: data, $index: this.dn.currentPage, pageInfo, data});\n }\n }\n\n /*Function to validate the page input.\n In case of invalid input, navigate to the appropriate page; also return false.\n In case of valid input, return true.*/\n validateCurrentPage(event, callback?) {\n /*If the value entered is greater than the last page number or invalid value, then highlighting the field showing error.*/\n if (event && (isNaN(this.dn.currentPage) || this.dn.currentPage <= 0 || (this.pageCount && (this.dn.currentPage > this.pageCount || isNull(this.dn.currentPage))))) {\n if (this.dn.currentPage <= 0) {\n this.dn.currentPage = 1;\n } else if (this.dn.currentPage > this.pageCount) {\n this.dn.currentPage = this.pageCount;\n }\n return false;\n }\n return true;\n }\n\n onModelChange(event) {\n if (!this.validateCurrentPage(event)) {\n return;\n }\n this.goToPage(event);\n }\n\n onKeyDown(event) {\n const targetEle = $(event.target).closest('a');\n if (event.code === 'KeyE') {\n targetEle.addClass('ng-invalid');\n return false;\n }\n targetEle.removeClass('ng-invalid');\n return true;\n }\n\n pageChanged(event: any) {\n this._debouncedPageChanged(event);\n }\n\n /*Function to navigate to the respective pages.*/\n navigatePage(index, event, isRefresh?, callback?) {\n // when navigated to next page turn on the isDataLoading flag to show the loading indicator\n if (isDefined(this.parent.isDataLoading) && !this.isDisableNext) {\n this.parent.isDataLoading = true;\n // In case of infinite scroll calling the showLoadingIndicator method to update the loading message immediately when navigated to next page\n if (this.parent.infScroll) {\n this.parent.variableInflight = true;\n this.parent.callDataGridMethod('showLoadingIndicator', this.parent.loadingdatamsg, true);\n }\n }\n // reset the last action performed to \"scroll\" and isDatasetUpdated to false\n if (this.parent.widgetType === 'wm-table' && this.parent.gridOptions.isNavTypeScrollOrOndemand()) {\n this.parent.gridOptions.setLastActionPerformed(this.parent.gridOptions.ACTIONS.DEFAULT);\n this.parent.gridOptions.setIsDatasetUpdated(false);\n }\n this.invokeEventCallback('paginationchange', {$event: undefined, $index: this.dn.currentPage});\n\n // Convert the current page to a valid page number.\n this.dn.currentPage = +this.dn.currentPage;\n\n switch (index) {\n case 'first':\n this.goToFirstPage(isRefresh, event, callback);\n return;\n case 'prev':\n /*Return if already on the first page.*/\n if (!this.pagination?.next && (this.isFirstPage() || !this.validateCurrentPage(event, callback))) {\n return;\n } else if (this.pagination?.next) { // WMS-18867: For server side pagination, skipping the regular flow and enabling isNext flag in pagination metadata\n this.datasource.pagination.isNext = false;\n this.datasource.pagination.isPrev = true;\n }\n /*Decrement the current page by 1.*/\n this.dn.currentPage -= 1;\n break;\n case 'next':\n /*Return if already on the last page.*/\n if (!this.pagination?.next && (this.isLastPage() || !this.validateCurrentPage(event, callback))) {\n return;\n } else if (this.pagination?.next) { // WMS-18867: For server side pagination, skipping the regular flow and enabling isPrev flag in pagination metadata\n this.datasource.pagination.isNext = true;\n this.datasource.pagination.isPrev = false;\n }\n /*Increment the current page by 1.*/\n this.dn.currentPage += 1;\n break;\n case 'last':\n this.goToLastPage(isRefresh, event, callback);\n return;\n default:\n break;\n }\n\n /*Navigate to the current page.*/\n this.goToPage(event, callback);\n }\n\n setBindDataSet(binddataset, parent, dataSource, dataset?, binddatasource?, datasetBoundExpr?, statehandler?) {\n const parts = binddataset.split('.');\n let bindPagingOptions;\n this.statehandler = statehandler;\n if (parts[0] === 'Variables' || parts[0] === 'Widgets') {\n bindPagingOptions = `${parts[0]}.${parts[1]}.pagination`;\n }\n if (!binddatasource && dataset && !datasetBoundExpr) {\n this.dataset = dataset;\n this._debouncedApplyDataset();\n return;\n }\n this.binddataset = binddataset;\n setTimeout(() => {\n // watching for dataset changes even when dataset is bound to \"item.\" (i.e. by checking for datasetBoundExpr)\n // item context is passed as dataSource here\n // [Todo-CSP]: check if same expr fn is generated by parent widget (list, table)\n this.registerDestroyListener(\n $watch(\n binddataset,\n parent,\n datasetBoundExpr ? dataSource : {},\n nv => {\n if (nv) {\n this.dataset = nv;\n this._debouncedApplyDataset();\n } else {\n // WMS-19285: Setting dataset on proxy only to handle propertychange handler call for undefined cases\n this.widget.dataset = nv;\n }\n }\n )\n );\n\n // Register a watch on paging options. Call dataset property change handler even if paging options changes to reflect pagination state\n if (!bindPagingOptions) {\n return;\n }\n //[Todo-CSP]: either generate watch expr fn or register an event from the datasource itself\n this.registerDestroyListener(\n $watch(\n bindPagingOptions,\n parent,\n {},\n () => this._debouncedApplyDataset()\n )\n );\n });\n // apply datasource only when dataset is not bound to \"item.FIELD\"\n if (!datasetBoundExpr) {\n this.datasource = dataSource;\n }\n }\n\n // Set the datasource of pagination from the parent widget\n setDataSource(dataSource) {\n this.datasource = dataSource;\n }\n\n onPropertyChange(key: string, nv, ov) {\n let pageSize, prevPageSize;\n if (key === 'dataset') {\n let data;\n if (this.parent && this.parent.onDataNavigatorDataSetChange) {\n data = this.parent.onDataNavigatorDataSetChange(nv);\n } else {\n data = nv;\n }\n // Set last action performed to \"dataset_update\" whenever dataset is changed in table component\n if (this.parent.widgetType === 'wm-table') {\n this.parent._triggeredByUser = false;\n }\n if (data?.length) { // calculate Pagesize options based on actual page size\n if (this.isDataSourceHasPaging()) { // for Live variables\n const currentPageSize = get(data, 'pagination.size') || get(this.datasource, 'pagination.size'),\n totalElements = get(data, 'pagination.totalElements') || get(this.datasource, 'pagination.totalElements'),\n widgetState = this.parent.statePersistence.getWidgetState(this.parent);\n this.actualPageSize = widgetState?.actualpagesize || currentPageSize;\n this.actualPageSize = Number(this.actualPageSize) ? this.actualPageSize : get(this.datasource.dataSet, this.actualPageSize)\n if(this.defaultPageSizeOptions.length > 0){\n this.pageSizeOptions = [...this.defaultPageSizeOptions];\n }else{\n this.pageSizeOptions = 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\n }\n if (widgetState?.selectedItem && widgetState.actualpagesize !== widgetState.pagesize) {\n if (!this.prevPageSize) {\n this.prevPageSize = this.actualPageSize || data?.length;\n }\n const updatedItems = this.handleStateParamsforNewPageSize(widgetState.selectedItem, this.prevPageSize, data?.length);\n if (updatedItems) {\n this.parent.statePersistence.setWidgetState(this.parent, {\n pagination: 1,\n pagesize: this.maxResults,\n actualpagesize: this.actualPageSize || this.maxResults,\n selectedItem: updatedItems\n })\n this.prevPageSize = undefined;\n }\n }\n } else {\n pageSize = this.parent.getActualPageSize();\n if(this.defaultPageSizeOptions.length > 0){\n this.pageSizeOptions = [...this.defaultPageSizeOptions];\n }else{\n this.pageSizeOptions = range(pageSize, data.length + pageSize, pageSize);\n }\n }\n }\n // When the dataset is not in current page, but in previous ones directly set the result without setting page values\n if (this.isEditNotInCurrentPage()) {\n this.setResult(data);\n } else {\n this.setPagingValues(data);\n }\n } else if (key === 'navigation') {\n if (nv === 'Advanced') { // Support for older projects where navigation type was advanced instead of clasic\n this.navigation = 'Classic';\n }\n this.updateNavSize();\n this.navcontrols = nv;\n } else if (key === 'navigationsize') {\n this.updateNavSize();\n } else if (key === 'navigationalign') {\n switchClass(this.nativeElement, `text-${nv}`, `text-${ov}`);\n } else if (key === 'maxResults') {\n this.setPagingValues(this.dataset);\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n // change the selectedItems page number and index in the stateparams when pagesize is changed\n handleStateParamsforNewPageSize(\n selectedItem: { page: number; index: number }[],\n oldPageSize: number,\n newPageSize: number\n ): { page: number; index: number }[] {\n return selectedItem.map(({ page, index }) => {\n const absoluteIndex = (page - 1) * oldPageSize + index;\n const newPage = Math.floor(absoluteIndex / newPageSize) + 1; // back to 1-based\n const newIndex = absoluteIndex % newPageSize;\n\n return {\n page: newPage,\n index: newIndex\n };\n });\n }\n\n onDropdownKeydown(event, index) {\n const $items = $('ul#dropdown-basic a.dropdown-item');\n const maxIndex = this.pageSizeOptions.length - 1;\n let selectedOption;\n\n switch (event.key) {\n case 'ArrowDown':\n case 'Tab':\n event.preventDefault();\n if (event.key === 'Tab' && event.shiftKey) {\n // Treat Shift+Tab as ArrowUp\n this.focusedIndex = (index - 1) < 0 ? maxIndex : index - 1;\n } else {\n // Treat Tab or ArrowDown as ArrowDown\n this.focusedIndex = (index + 1) > maxIndex ? 0 : index + 1;\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n this.focusedIndex = (index - 1) < 0 ? maxIndex : index - 1;\n break;\n\n case 'Enter':\n event.preventDefault();\n selectedOption = this.pageSizeOptions[this.focusedIndex];\n this.onPageSizeChange(event, selectedOption);\n this.closeDropdown();\n return;\n\n case 'Escape':\n event.preventDefault();\n this.closeDropdown();\n return;\n\n default:\n return;\n }\n\n // Move focus after index is updated\n setTimeout(() => {\n $items.eq(this.focusedIndex)?.focus();\n });\n\n }\n\n closeDropdown() {\n // Close dropdown\n this.bsDropdown.hide();\n const $toggleButton = $('button[aria-controls=\"dropdown-basic\"]');\n $toggleButton.focus(); // Return focus to button\n }\n\n // Function gets called on dropdown open & close\n onOpenChange(isOpen) {\n if (isOpen) {\n this.focusedIndex = 0;\n setTimeout(() => {\n // manually focus the dropdown as dropdown has container=\"body\"\n const $items = $('ul#dropdown-basic a.dropdown-item');\n const $firstItem = $items.eq(this.focusedIndex);\n $firstItem?.focus();\n }, 0);\n }\n }\n onPageSizeChange($event, newPageSize) {\n const widgetState = this.parent.statePersistence.getWidgetState(this.parent);\n let updatedItems;\n if (widgetState?.selectedItem) {\n updatedItems = this.handleStateParamsforNewPageSize(widgetState.selectedItem, this.maxResults, +newPageSize);\n }\n this.actualPageSize = this.actualPageSize || this.maxResults;\n this.maxResults = +newPageSize;\n this.maxResultsEmitter.emit(this.maxResults);\n if (this.isDataSourceHasPaging() && this.datasource) {\n this.datasource.maxResults = this.maxResults;\n }\n if (updatedItems) {\n this.parent.statePersistence.setWidgetState(this.parent, {\n pagination: 1,\n pagesize: this.maxResults,\n actualpagesize: this.actualPageSize || this.maxResults,\n selectedItem: updatedItems\n })\n } else {\n this.parent.statePersistence.setWidgetState(this.parent, {\n pagination: 1,\n pagesize: this.maxResults,\n actualpagesize: this.actualPageSize || this.maxResults\n })\n }\n this.navigatePage('first', $event, true);\n this.calculatePagingValues();\n }\n ngAfterViewInit() {\n const paginationElem = this.nativeElement as HTMLElement;\n paginationElem.onclick = (event) => {\n event.stopPropagation();\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|