cax-design-system 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/README.md +1 -1
  2. package/avatargroup/avatargroup.d.ts +1 -7
  3. package/avatargroup/avatargroup.module.d.ts +9 -0
  4. package/avatargroup/public_api.d.ts +1 -0
  5. package/badge/badge.directive.d.ts +4 -2
  6. package/button/button.d.ts +2 -1
  7. package/editor/editor.d.ts +1 -8
  8. package/editor/editor.module.d.ts +9 -0
  9. package/editor/public_api.d.ts +1 -0
  10. package/esm2022/avatar/avatar.mjs +3 -3
  11. package/esm2022/avatargroup/avatargroup.mjs +5 -27
  12. package/esm2022/avatargroup/avatargroup.module.mjs +19 -0
  13. package/esm2022/avatargroup/public_api.mjs +2 -1
  14. package/esm2022/badge/badge.directive.mjs +20 -8
  15. package/esm2022/badge/badge.mjs +4 -4
  16. package/esm2022/button/button.mjs +5 -4
  17. package/esm2022/checkbox/checkbox.mjs +3 -3
  18. package/esm2022/dropdown/dropdown.mjs +4 -6
  19. package/esm2022/editor/editor.mjs +9 -120
  20. package/esm2022/editor/editor.module.mjs +19 -0
  21. package/esm2022/editor/public_api.mjs +2 -1
  22. package/esm2022/inputmask/inputmask.mjs +42 -108
  23. package/esm2022/inputmask/inputmask.module.mjs +22 -0
  24. package/esm2022/inputmask/public_api.mjs +2 -1
  25. package/esm2022/inputtext/inputtext.component.mjs +14 -8
  26. package/esm2022/inputtext/inputtext.directive.mjs +3 -4
  27. package/esm2022/messages/messages.mjs +5 -5
  28. package/esm2022/overlaypanel/overlaypanel.mjs +3 -3
  29. package/esm2022/paginator/paginator.mjs +21 -8
  30. package/esm2022/progressbar/progressbar.mjs +2 -2
  31. package/esm2022/progressspinner/progressspinner.mjs +12 -12
  32. package/esm2022/selectbutton/selectbutton.mjs +2 -2
  33. package/esm2022/sidebar/sidebar.mjs +3 -3
  34. package/esm2022/splitbutton/splitbutton.mjs +8 -3
  35. package/esm2022/splitbutton/splitbutton.module.mjs +5 -4
  36. package/esm2022/steps/public_api.mjs +2 -1
  37. package/esm2022/steps/steps.mjs +5 -143
  38. package/esm2022/steps/steps.module.mjs +20 -0
  39. package/esm2022/table/table.mjs +3 -3
  40. package/esm2022/tabview/tabview.mjs +28 -3
  41. package/esm2022/timeline/public_api.mjs +2 -1
  42. package/esm2022/timeline/timeline.mjs +6 -90
  43. package/esm2022/timeline/timeline.module.mjs +19 -0
  44. package/esm2022/togglebutton/togglebutton.mjs +2 -2
  45. package/esm2022/toggleswitch/toggleswitch.mjs +7 -4
  46. package/fesm2022/cax-design-system-avatar.mjs +2 -2
  47. package/fesm2022/cax-design-system-avatar.mjs.map +1 -1
  48. package/fesm2022/cax-design-system-avatargroup.mjs +9 -15
  49. package/fesm2022/cax-design-system-avatargroup.mjs.map +1 -1
  50. package/fesm2022/cax-design-system-badge.mjs +22 -10
  51. package/fesm2022/cax-design-system-badge.mjs.map +1 -1
  52. package/fesm2022/cax-design-system-button.mjs +5 -4
  53. package/fesm2022/cax-design-system-button.mjs.map +1 -1
  54. package/fesm2022/cax-design-system-checkbox.mjs +2 -2
  55. package/fesm2022/cax-design-system-checkbox.mjs.map +1 -1
  56. package/fesm2022/cax-design-system-dropdown.mjs +3 -5
  57. package/fesm2022/cax-design-system-dropdown.mjs.map +1 -1
  58. package/fesm2022/cax-design-system-editor.mjs +9 -106
  59. package/fesm2022/cax-design-system-editor.mjs.map +1 -1
  60. package/fesm2022/cax-design-system-inputmask.mjs +40 -89
  61. package/fesm2022/cax-design-system-inputmask.mjs.map +1 -1
  62. package/fesm2022/cax-design-system-inputtext.mjs +15 -10
  63. package/fesm2022/cax-design-system-inputtext.mjs.map +1 -1
  64. package/fesm2022/cax-design-system-messages.mjs +4 -4
  65. package/fesm2022/cax-design-system-messages.mjs.map +1 -1
  66. package/fesm2022/cax-design-system-overlaypanel.mjs +2 -2
  67. package/fesm2022/cax-design-system-overlaypanel.mjs.map +1 -1
  68. package/fesm2022/cax-design-system-paginator.mjs +20 -7
  69. package/fesm2022/cax-design-system-paginator.mjs.map +1 -1
  70. package/fesm2022/cax-design-system-progressbar.mjs +2 -2
  71. package/fesm2022/cax-design-system-progressbar.mjs.map +1 -1
  72. package/fesm2022/cax-design-system-progressspinner.mjs +11 -11
  73. package/fesm2022/cax-design-system-progressspinner.mjs.map +1 -1
  74. package/fesm2022/cax-design-system-selectbutton.mjs +2 -2
  75. package/fesm2022/cax-design-system-selectbutton.mjs.map +1 -1
  76. package/fesm2022/cax-design-system-sidebar.mjs +2 -2
  77. package/fesm2022/cax-design-system-sidebar.mjs.map +1 -1
  78. package/fesm2022/cax-design-system-splitbutton.mjs +11 -5
  79. package/fesm2022/cax-design-system-splitbutton.mjs.map +1 -1
  80. package/fesm2022/cax-design-system-steps.mjs +7 -128
  81. package/fesm2022/cax-design-system-steps.mjs.map +1 -1
  82. package/fesm2022/cax-design-system-table.mjs +2 -2
  83. package/fesm2022/cax-design-system-table.mjs.map +1 -1
  84. package/fesm2022/cax-design-system-tabview.mjs +27 -2
  85. package/fesm2022/cax-design-system-tabview.mjs.map +1 -1
  86. package/fesm2022/cax-design-system-timeline.mjs +6 -75
  87. package/fesm2022/cax-design-system-timeline.mjs.map +1 -1
  88. package/fesm2022/cax-design-system-togglebutton.mjs +2 -2
  89. package/fesm2022/cax-design-system-togglebutton.mjs.map +1 -1
  90. package/fesm2022/cax-design-system-toggleswitch.mjs +6 -3
  91. package/fesm2022/cax-design-system-toggleswitch.mjs.map +1 -1
  92. package/inputmask/inputmask.d.ts +12 -12
  93. package/inputmask/inputmask.module.d.ts +12 -0
  94. package/inputmask/public_api.d.ts +1 -0
  95. package/inputtext/inputtext.component.d.ts +6 -3
  96. package/messages/messages.d.ts +1 -1
  97. package/package.json +215 -215
  98. package/paginator/paginator.d.ts +4 -1
  99. package/progressspinner/progressspinner.d.ts +1 -1
  100. package/resources/cax.min.scss +1 -1
  101. package/resources/cax.scss +7686 -6588
  102. package/resources/components/avatar/avatar.scss +2 -2
  103. package/resources/components/avatargroup/{avatargroup.css → avatargroup.scss} +2 -2
  104. package/resources/components/badge/badge.scss +33 -0
  105. package/resources/components/button/button.scss +44 -11
  106. package/resources/components/dropdown/dropdown.scss +2 -18
  107. package/resources/components/editor/editor.scss +4 -0
  108. package/resources/components/inputmask/{inputmask.css → inputmask.scss} +2 -2
  109. package/resources/components/inputtext/inputtext.scss +21 -23
  110. package/resources/components/messages/messages.scss +1 -1
  111. package/resources/components/overlaypanel/overlaypanel.scss +4 -1
  112. package/resources/components/paginator/paginator.scss +4 -0
  113. package/resources/components/progressbar/progressbar.scss +0 -15
  114. package/resources/components/progressspinner/progressspinner.scss +9 -9
  115. package/resources/components/sidebar/sidebar.scss +1 -1
  116. package/resources/components/splitbutton/splitbutton.scss +6 -3
  117. package/resources/components/steps/{steps.css → steps.scss} +10 -9
  118. package/resources/components/table/table.scss +41 -1
  119. package/resources/components/tabview/tabview.scss +12 -8
  120. package/resources/components/timeline/timeline.scss +134 -0
  121. package/resources/components/toggleswitch/toggleswitch.scss +6 -0
  122. package/splitbutton/splitbutton.d.ts +1 -0
  123. package/splitbutton/splitbutton.module.d.ts +2 -1
  124. package/steps/public_api.d.ts +1 -0
  125. package/steps/steps.d.ts +1 -9
  126. package/steps/steps.module.d.ts +10 -0
  127. package/timeline/public_api.d.ts +1 -0
  128. package/timeline/timeline.d.ts +1 -8
  129. package/timeline/timeline.module.d.ts +9 -0
  130. package/toggleswitch/toggleswitch.d.ts +2 -1
  131. package/resources/components/editor/editor.css +0 -4
  132. package/resources/components/timeline/timeline.css +0 -114
@@ -355,23 +355,33 @@ class Paginator {
355
355
  .replace('{rows}', String(this.rows))
356
356
  .replace('{totalRecords}', String(this.totalRecords));
357
357
  }
358
+ rightAligned = false;
359
+ isSinglePage() {
360
+ return this.getPageCount() <= 1;
361
+ }
358
362
  getPositionClass() {
359
- if (this.isFirstPage()) {
360
- return 'at-first-page';
363
+ let positions = [];
364
+ if (this.isSinglePage()) {
365
+ positions.push('single-page');
361
366
  }
362
- else if (this.isLastPage()) {
363
- return 'at-last-page';
367
+ else {
368
+ if (this.isFirstPage())
369
+ positions.push('at-first-page');
370
+ if (this.isLastPage())
371
+ positions.push('at-last-page');
364
372
  }
365
- return '';
373
+ if (this.rightAligned)
374
+ positions.push('right-aligned');
375
+ return positions.join(' ');
366
376
  }
367
377
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: Paginator, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.caxConfig }], target: i0.ɵɵFactoryTarget.Component });
368
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: Paginator, selector: "cax-paginator", inputs: { pageLinkSize: ["pageLinkSize", "pageLinkSize", numberAttribute], style: "style", styleClass: "styleClass", alwaysShow: ["alwaysShow", "alwaysShow", booleanAttribute], dropdownAppendTo: "dropdownAppendTo", templateLeft: "templateLeft", templateRight: "templateRight", appendTo: "appendTo", dropdownScrollHeight: "dropdownScrollHeight", currentPageReportTemplate: "currentPageReportTemplate", showCurrentPageReport: ["showCurrentPageReport", "showCurrentPageReport", booleanAttribute], showFirstLastIcon: ["showFirstLastIcon", "showFirstLastIcon", booleanAttribute], totalRecords: ["totalRecords", "totalRecords", numberAttribute], rows: ["rows", "rows", numberAttribute], rowsPerPageOptions: "rowsPerPageOptions", showJumpToPageDropdown: ["showJumpToPageDropdown", "showJumpToPageDropdown", booleanAttribute], showJumpToPageInput: ["showJumpToPageInput", "showJumpToPageInput", booleanAttribute], jumpToPageItemTemplate: "jumpToPageItemTemplate", showPageLinks: ["showPageLinks", "showPageLinks", booleanAttribute], locale: "locale", dropdownItemTemplate: "dropdownItemTemplate", first: "first" }, outputs: { onPageChange: "onPageChange" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], usesOnChanges: true, ngImport: i0, template: "<div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"['cax-paginator cax-component', getPositionClass()]\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\r\n <div class=\"cax-paginator-left-content\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\r\n <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n <span class=\"cax-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToFirst($event)\"\r\n caxRipple\r\n class=\"cax-paginator-first cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\r\n >\r\n <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"firstPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToPrev($event)\"\r\n caxRipple\r\n class=\"cax-paginator-prev cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('prevPageLabel')\"\r\n >\r\n <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"previousPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-pages\" *ngIf=\"showPageLinks\">\r\n <button\r\n type=\"button\"\r\n *ngFor=\"let pageLink of pageLinks\"\r\n class=\"cax-paginator-page cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-highlight': pageLink - 1 == getPage() }\"\r\n [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\r\n [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\r\n (click)=\"onPageLinkClick($event, pageLink - 1)\"\r\n caxRipple\r\n >\r\n {{ getLocalization(pageLink) }}\r\n </button>\r\n </span>\r\n <cax-dropdown\r\n [options]=\"pageItems\"\r\n [ngModel]=\"getPage()\"\r\n *ngIf=\"showJumpToPageDropdown\"\r\n [disabled]=\"empty()\"\r\n [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\r\n styleClass=\"cax-paginator-page-options\"\r\n (onChange)=\"onPageDropdownChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n >\r\n <ng-template caxTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\r\n <ng-container *ngIf=\"jumpToPageItemTemplate\">\r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToNext($event)\"\r\n caxRipple\r\n class=\"cax-paginator-next cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('nextPageLabel')\"\r\n >\r\n <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"nextPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToLast($event)\"\r\n caxRipple\r\n class=\"cax-paginator-last cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\r\n >\r\n <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"lastPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-page-label\" *ngIf=\"showJumpToPageInput\">Go to page</span>\r\n <cax-inputNumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"cax-paginator-page-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></cax-inputNumber>\r\n <cax-dropdown\r\n [options]=\"rowsPerPageItems\"\r\n [(ngModel)]=\"rows\"\r\n *ngIf=\"rowsPerPageOptions\"\r\n styleClass=\"cax-paginator-rpp-options\"\r\n [disabled]=\"empty()\"\r\n (onChange)=\"onRppChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\r\n >\r\n <ng-container *ngIf=\"dropdownItemTemplate\"> \r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <div class=\"cax-paginator-right-content\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\r\n <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n</div>", styles: ["@layer cax{.cax-paginator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.cax-paginator-left-content{margin-right:auto}.cax-paginator-right-content{margin-left:auto}.cax-paginator-page,.cax-paginator-next,.cax-paginator-last,.cax-paginator-first,.cax-paginator-prev,.cax-paginator-current{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.cax-paginator-element:focus{z-index:1;position:relative}}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i3.Dropdown, selector: "cax-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "autoShowPanelOnPrintableCharacterKeyDown", "labelText", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i1.CaxTemplate, selector: "[caxTemplate]", inputs: ["type", "caxTemplate"] }, { kind: "component", type: i4.InputNumber, selector: "cax-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.Ripple, selector: "[caxRipple]" }, { kind: "component", type: i7.AngleDoubleLeftIcon, selector: "AngleDoubleLeftIcon" }, { kind: "component", type: i8.AngleDoubleRightIcon, selector: "AngleDoubleRightIcon" }, { kind: "component", type: i9.AngleLeftIcon, selector: "AngleLeftIcon" }, { kind: "component", type: i10.AngleRightIcon, selector: "AngleRightIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
378
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: Paginator, selector: "cax-paginator", inputs: { pageLinkSize: ["pageLinkSize", "pageLinkSize", numberAttribute], style: "style", styleClass: "styleClass", alwaysShow: ["alwaysShow", "alwaysShow", booleanAttribute], dropdownAppendTo: "dropdownAppendTo", templateLeft: "templateLeft", templateRight: "templateRight", appendTo: "appendTo", dropdownScrollHeight: "dropdownScrollHeight", currentPageReportTemplate: "currentPageReportTemplate", showCurrentPageReport: ["showCurrentPageReport", "showCurrentPageReport", booleanAttribute], showFirstLastIcon: ["showFirstLastIcon", "showFirstLastIcon", booleanAttribute], totalRecords: ["totalRecords", "totalRecords", numberAttribute], rows: ["rows", "rows", numberAttribute], rowsPerPageOptions: "rowsPerPageOptions", showJumpToPageDropdown: ["showJumpToPageDropdown", "showJumpToPageDropdown", booleanAttribute], showJumpToPageInput: ["showJumpToPageInput", "showJumpToPageInput", booleanAttribute], jumpToPageItemTemplate: "jumpToPageItemTemplate", showPageLinks: ["showPageLinks", "showPageLinks", booleanAttribute], locale: "locale", dropdownItemTemplate: "dropdownItemTemplate", first: "first", rightAligned: ["rightAligned", "rightAligned", booleanAttribute] }, outputs: { onPageChange: "onPageChange" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], usesOnChanges: true, ngImport: i0, template: "<div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"['cax-paginator cax-component', getPositionClass()]\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\r\n <div class=\"cax-paginator-left-content\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\r\n <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n <span class=\"cax-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToFirst($event)\"\r\n caxRipple\r\n class=\"cax-paginator-first cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\r\n >\r\n <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"firstPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToPrev($event)\"\r\n caxRipple\r\n class=\"cax-paginator-prev cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('prevPageLabel')\"\r\n >\r\n <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"previousPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-pages\" *ngIf=\"showPageLinks\">\r\n <button\r\n type=\"button\"\r\n *ngFor=\"let pageLink of pageLinks\"\r\n class=\"cax-paginator-page cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-highlight': pageLink - 1 == getPage() }\"\r\n [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\r\n [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\r\n (click)=\"onPageLinkClick($event, pageLink - 1)\"\r\n caxRipple\r\n >\r\n {{ getLocalization(pageLink) }}\r\n </button>\r\n </span>\r\n <cax-dropdown\r\n [options]=\"pageItems\"\r\n [ngModel]=\"getPage()\"\r\n *ngIf=\"showJumpToPageDropdown\"\r\n [disabled]=\"empty()\"\r\n [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\r\n styleClass=\"cax-paginator-page-options\"\r\n (onChange)=\"onPageDropdownChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n >\r\n <ng-template caxTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\r\n <ng-container *ngIf=\"jumpToPageItemTemplate\">\r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToNext($event)\"\r\n caxRipple\r\n class=\"cax-paginator-next cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('nextPageLabel')\"\r\n >\r\n <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"nextPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToLast($event)\"\r\n caxRipple\r\n class=\"cax-paginator-last cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\r\n >\r\n <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"lastPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-page-label\" *ngIf=\"showJumpToPageInput\">Go to page</span>\r\n <cax-inputNumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"cax-paginator-page-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></cax-inputNumber>\r\n <cax-dropdown\r\n [options]=\"rowsPerPageItems\"\r\n [(ngModel)]=\"rows\"\r\n *ngIf=\"rowsPerPageOptions\"\r\n styleClass=\"cax-paginator-rpp-options\"\r\n [disabled]=\"empty()\"\r\n (onChange)=\"onRppChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\r\n >\r\n <ng-container *ngIf=\"dropdownItemTemplate\"> \r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <div class=\"cax-paginator-right-content\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\r\n <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n</div>", styles: ["@layer cax{.cax-paginator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.cax-paginator.right-aligned{justify-content:flex-end}.cax-paginator-left-content{margin-right:auto}.cax-paginator-right-content{margin-left:auto}.cax-paginator-page,.cax-paginator-next,.cax-paginator-last,.cax-paginator-first,.cax-paginator-prev,.cax-paginator-current{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.cax-paginator-element:focus{z-index:1;position:relative}}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i3.Dropdown, selector: "cax-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "autoShowPanelOnPrintableCharacterKeyDown", "labelText", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i1.CaxTemplate, selector: "[caxTemplate]", inputs: ["type", "caxTemplate"] }, { kind: "component", type: i4.InputNumber, selector: "cax-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.Ripple, selector: "[caxRipple]" }, { kind: "component", type: i7.AngleDoubleLeftIcon, selector: "AngleDoubleLeftIcon" }, { kind: "component", type: i8.AngleDoubleRightIcon, selector: "AngleDoubleRightIcon" }, { kind: "component", type: i9.AngleLeftIcon, selector: "AngleLeftIcon" }, { kind: "component", type: i10.AngleRightIcon, selector: "AngleRightIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
369
379
  }
370
380
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: Paginator, decorators: [{
371
381
  type: Component,
372
382
  args: [{ selector: 'cax-paginator', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
373
383
  class: 'cax-element'
374
- }, template: "<div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"['cax-paginator cax-component', getPositionClass()]\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\r\n <div class=\"cax-paginator-left-content\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\r\n <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n <span class=\"cax-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToFirst($event)\"\r\n caxRipple\r\n class=\"cax-paginator-first cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\r\n >\r\n <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"firstPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToPrev($event)\"\r\n caxRipple\r\n class=\"cax-paginator-prev cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('prevPageLabel')\"\r\n >\r\n <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"previousPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-pages\" *ngIf=\"showPageLinks\">\r\n <button\r\n type=\"button\"\r\n *ngFor=\"let pageLink of pageLinks\"\r\n class=\"cax-paginator-page cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-highlight': pageLink - 1 == getPage() }\"\r\n [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\r\n [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\r\n (click)=\"onPageLinkClick($event, pageLink - 1)\"\r\n caxRipple\r\n >\r\n {{ getLocalization(pageLink) }}\r\n </button>\r\n </span>\r\n <cax-dropdown\r\n [options]=\"pageItems\"\r\n [ngModel]=\"getPage()\"\r\n *ngIf=\"showJumpToPageDropdown\"\r\n [disabled]=\"empty()\"\r\n [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\r\n styleClass=\"cax-paginator-page-options\"\r\n (onChange)=\"onPageDropdownChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n >\r\n <ng-template caxTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\r\n <ng-container *ngIf=\"jumpToPageItemTemplate\">\r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToNext($event)\"\r\n caxRipple\r\n class=\"cax-paginator-next cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('nextPageLabel')\"\r\n >\r\n <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"nextPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToLast($event)\"\r\n caxRipple\r\n class=\"cax-paginator-last cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\r\n >\r\n <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"lastPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-page-label\" *ngIf=\"showJumpToPageInput\">Go to page</span>\r\n <cax-inputNumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"cax-paginator-page-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></cax-inputNumber>\r\n <cax-dropdown\r\n [options]=\"rowsPerPageItems\"\r\n [(ngModel)]=\"rows\"\r\n *ngIf=\"rowsPerPageOptions\"\r\n styleClass=\"cax-paginator-rpp-options\"\r\n [disabled]=\"empty()\"\r\n (onChange)=\"onRppChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\r\n >\r\n <ng-container *ngIf=\"dropdownItemTemplate\"> \r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <div class=\"cax-paginator-right-content\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\r\n <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n</div>", styles: ["@layer cax{.cax-paginator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.cax-paginator-left-content{margin-right:auto}.cax-paginator-right-content{margin-left:auto}.cax-paginator-page,.cax-paginator-next,.cax-paginator-last,.cax-paginator-first,.cax-paginator-prev,.cax-paginator-current{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.cax-paginator-element:focus{z-index:1;position:relative}}\n"] }]
384
+ }, template: "<div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"['cax-paginator cax-component', getPositionClass()]\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\r\n <div class=\"cax-paginator-left-content\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\r\n <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n <span class=\"cax-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToFirst($event)\"\r\n caxRipple\r\n class=\"cax-paginator-first cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\r\n >\r\n <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"firstPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToPrev($event)\"\r\n caxRipple\r\n class=\"cax-paginator-prev cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('prevPageLabel')\"\r\n >\r\n <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"previousPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-pages\" *ngIf=\"showPageLinks\">\r\n <button\r\n type=\"button\"\r\n *ngFor=\"let pageLink of pageLinks\"\r\n class=\"cax-paginator-page cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-highlight': pageLink - 1 == getPage() }\"\r\n [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\r\n [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\r\n (click)=\"onPageLinkClick($event, pageLink - 1)\"\r\n caxRipple\r\n >\r\n {{ getLocalization(pageLink) }}\r\n </button>\r\n </span>\r\n <cax-dropdown\r\n [options]=\"pageItems\"\r\n [ngModel]=\"getPage()\"\r\n *ngIf=\"showJumpToPageDropdown\"\r\n [disabled]=\"empty()\"\r\n [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\r\n styleClass=\"cax-paginator-page-options\"\r\n (onChange)=\"onPageDropdownChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n >\r\n <ng-template caxTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\r\n <ng-container *ngIf=\"jumpToPageItemTemplate\">\r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToNext($event)\"\r\n caxRipple\r\n class=\"cax-paginator-next cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('nextPageLabel')\"\r\n >\r\n <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"nextPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToLast($event)\"\r\n caxRipple\r\n class=\"cax-paginator-last cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\r\n >\r\n <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"lastPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-page-label\" *ngIf=\"showJumpToPageInput\">Go to page</span>\r\n <cax-inputNumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"cax-paginator-page-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></cax-inputNumber>\r\n <cax-dropdown\r\n [options]=\"rowsPerPageItems\"\r\n [(ngModel)]=\"rows\"\r\n *ngIf=\"rowsPerPageOptions\"\r\n styleClass=\"cax-paginator-rpp-options\"\r\n [disabled]=\"empty()\"\r\n (onChange)=\"onRppChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\r\n >\r\n <ng-container *ngIf=\"dropdownItemTemplate\"> \r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <div class=\"cax-paginator-right-content\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\r\n <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n</div>", styles: ["@layer cax{.cax-paginator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.cax-paginator.right-aligned{justify-content:flex-end}.cax-paginator-left-content{margin-right:auto}.cax-paginator-right-content{margin-left:auto}.cax-paginator-page,.cax-paginator-next,.cax-paginator-last,.cax-paginator-first,.cax-paginator-prev,.cax-paginator-current{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;-webkit-user-select:none;user-select:none;overflow:hidden;position:relative}.cax-paginator-element:focus{z-index:1;position:relative}}\n"] }]
375
385
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.caxConfig }], propDecorators: { pageLinkSize: [{
376
386
  type: Input,
377
387
  args: [{ transform: numberAttribute }]
@@ -430,6 +440,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
430
440
  }], templates: [{
431
441
  type: ContentChildren,
432
442
  args: [CaxTemplate]
443
+ }], rightAligned: [{
444
+ type: Input,
445
+ args: [{ transform: booleanAttribute }]
433
446
  }] } });
434
447
 
435
448
  class PaginatorModule {
@@ -1 +1 @@
1
- {"version":3,"file":"cax-design-system-paginator.mjs","sources":["../../src/app/components/paginator/paginator.ts","../../src/app/components/paginator/paginator.html","../../src/app/components/paginator/paginator.module.ts","../../src/app/components/paginator/cax-design-system-paginator.ts"],"sourcesContent":["import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Input,\n NgModule,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { Aria, caxConfig, CaxTemplate, SelectItem, SharedModule } from 'cax-design-system/api';\nimport { DropdownChangeEvent } from 'cax-design-system/dropdown';\nimport { Nullable } from 'cax-design-system/ts-helpers';\nimport { PaginatorState } from './paginator.interface';\n\n/**\n * Paginator is a generic component to display content in paged format.\n * @group Components\n */\n@Component({\n selector: 'cax-paginator',\n templateUrl: './paginator.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./paginator.scss'],\n host: {\n class: 'cax-element'\n }\n})\nexport class Paginator implements OnInit, AfterContentInit, OnChanges {\n /**\n * Number of page links to display.\n * @group Props\n */\n @Input({ transform: numberAttribute }) pageLinkSize: number = 5;\n\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n\n /**\n * Whether to show it even there is only one page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) alwaysShow: boolean = true;\n\n /**\n * Target element to attach the dropdown overlay, valid values are \"body\" or a local ng-template variable of another element.\n * @group Props\n */\n @Input() dropdownAppendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n\n /**\n * Template instance to inject into the left side of the paginator.\n * @param {PaginatorState} context - Paginator state.\n * @group Props\n */\n @Input() templateLeft: TemplateRef<PaginatorState> | undefined;\n\n /**\n * Template instance to inject into the right side of the paginator.\n * @param {PaginatorState} context - Paginator state.\n * @group Props\n */\n @Input() templateRight: TemplateRef<PaginatorState> | undefined;\n\n /**\n * Target element to attach the dropdown overlay\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n\n /**\n * Dropdown height of the viewport in pixels\n * @group Props\n */\n @Input() dropdownScrollHeight: string = '200px';\n\n /**\n * Template of the current page report element. Available placeholders are {currentPage},{totalPages},{rows},{first},{last} and {totalRecords}\n * @group Props\n */\n @Input() currentPageReportTemplate: string = '{currentPage} of {totalPages}';\n\n /**\n * Whether to display current page report.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showCurrentPageReport: boolean | undefined;\n\n /**\n * When enabled, icons are displayed on paginator to go first and last page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showFirstLastIcon: boolean = true;\n\n /**\n * Number of total records.\n * @group Props\n */\n @Input({ transform: numberAttribute }) totalRecords: number = 0;\n\n /**\n * Data count to display per page.\n * @group Props\n */\n @Input({ transform: numberAttribute }) rows: number = 0;\n\n /**\n * Array of integer/object values to display inside rows per page dropdown.\n * @group Props\n */\n @Input() rowsPerPageOptions: any[] | undefined;\n\n /**\n * Whether to display a dropdown to navigate to any page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showJumpToPageDropdown: boolean | undefined;\n\n /**\n * Whether to display an input to navigate to any page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showJumpToPageInput: boolean | undefined;\n\n /**\n * Template instance to inject into the jump to page dropdown item.\n * @param {Object} context - item instance.\n * @group Props\n */\n @Input() jumpToPageItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n /**\n * Whether to show page links.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showPageLinks: boolean = true;\n\n /**\n * Locale to be used in formatting.\n * @group Props\n */\n @Input() locale: string | undefined;\n\n /**\n * Template instance to inject into the rows per page dropdown item.\n * @param {Object} context - item instance.\n * @group Props\n */\n @Input() dropdownItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n /**\n * Zero-relative number of the first row to be displayed.\n * @group Props\n */\n @Input() get first(): number {\n return this._first;\n }\n set first(val: number) {\n this._first = val;\n }\n\n /**\n * Callback to invoke when page changes, the event object contains information about the new state.\n * @param {PaginatorState} event - Paginator state.\n * @group Emits\n */\n @Output() onPageChange: EventEmitter<PaginatorState> = new EventEmitter<PaginatorState>();\n\n @ContentChildren(CaxTemplate) templates: Nullable<QueryList<any>>;\n\n dropdownIconTemplate: Nullable<TemplateRef<any>>;\n firstPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n previousPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n lastPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n nextPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n\n pageLinks: number[] | undefined;\n pageItems: SelectItem[] | undefined;\n rowsPerPageItems: SelectItem[] | undefined;\n paginatorState: any;\n\n _first: number = 0;\n _page: number = 0;\n\n constructor(\n private cd: ChangeDetectorRef,\n private config: caxConfig\n ) {}\n\n ngOnInit() {\n this.updatePaginatorState();\n }\n\n getAriaLabel(labelType: keyof Aria): string | undefined {\n return this.config.translation.aria ? this.config.translation.aria[labelType] : undefined;\n }\n\n getPageAriaLabel(value: number): string | undefined {\n return this.config.translation.aria ? this.config.translation.aria.pageLabel.replace(/{page}/g, `${value}`) : undefined;\n }\n\n getLocalization(digit: number): string {\n const numerals = [...new Intl.NumberFormat(this.locale, { useGrouping: false }).format(9876543210)].reverse();\n const index = new Map(numerals.map((d, i) => [i, d]));\n if (digit > 9) {\n const numbers = String(digit).split('');\n return numbers.map((number) => index.get(Number(number))).join('');\n } else {\n return index.get(digit);\n }\n }\n\n ngAfterContentInit(): void {\n (this.templates as QueryList<CaxTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'dropdownicon':\n this.dropdownIconTemplate = item.template;\n break;\n case 'firstpagelinkicon':\n this.firstPageLinkIconTemplate = item.template;\n break;\n case 'previouspagelinkicon':\n this.previousPageLinkIconTemplate = item.template;\n break;\n case 'lastpagelinkicon':\n this.lastPageLinkIconTemplate = item.template;\n break;\n case 'nextpagelinkicon':\n this.nextPageLinkIconTemplate = item.template;\n break;\n }\n });\n }\n\n ngOnChanges(simpleChange: SimpleChanges): void {\n if (simpleChange.totalRecords) {\n this.updatePageLinks();\n this.updatePaginatorState();\n this.updateFirst();\n this.updateRowsPerPageOptions();\n }\n\n if (simpleChange.first) {\n this._first = simpleChange.first.currentValue;\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n\n if (simpleChange.rows) {\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n\n if (simpleChange.rowsPerPageOptions) {\n this.updateRowsPerPageOptions();\n }\n\n if (simpleChange.pageLinkSize) {\n this.updatePageLinks();\n }\n }\n\n updateRowsPerPageOptions(): void {\n if (this.rowsPerPageOptions) {\n this.rowsPerPageItems = [];\n for (let opt of this.rowsPerPageOptions) {\n if (typeof opt == 'object' && opt['showAll']) {\n this.rowsPerPageItems.unshift({ label: opt['showAll'], value: this.totalRecords });\n } else {\n this.rowsPerPageItems.push({ label: String(this.getLocalization(opt)), value: opt });\n }\n }\n }\n }\n\n isFirstPage(): boolean {\n return this.getPage() === 0;\n }\n\n isLastPage(): boolean {\n return this.getPage() === this.getPageCount() - 1;\n }\n\n getPageCount(): number {\n return Math.ceil(this.totalRecords / this.rows);\n }\n\n calculatePageLinkBoundaries(): [number, number] {\n let numberOfPages = this.getPageCount(),\n visiblePages = Math.min(this.pageLinkSize, numberOfPages);\n\n //calculate range, keep current in middle if necessary\n let start = Math.max(0, Math.ceil(this.getPage() - visiblePages / 2)),\n end = Math.min(numberOfPages - 1, start + visiblePages - 1);\n\n //check when approaching to last page\n var delta = this.pageLinkSize - (end - start + 1);\n start = Math.max(0, start - delta);\n\n return [start, end];\n }\n\n updatePageLinks(): void {\n this.pageLinks = [];\n let boundaries = this.calculatePageLinkBoundaries(),\n start = boundaries[0],\n end = boundaries[1];\n\n for (let i = start; i <= end; i++) {\n this.pageLinks.push(i + 1);\n }\n\n if (this.showJumpToPageDropdown) {\n this.pageItems = [];\n for (let i = 0; i < this.getPageCount(); i++) {\n this.pageItems.push({ label: String(i + 1), value: i });\n }\n }\n }\n\n changePage(p: number): void {\n var pc = this.getPageCount();\n\n if (p >= 0 && p < pc) {\n this._first = this.rows * p;\n var state = {\n page: p,\n first: this.first,\n rows: this.rows,\n pageCount: pc\n };\n this.updatePageLinks();\n\n this.onPageChange.emit(state);\n this.updatePaginatorState();\n }\n }\n\n updateFirst(): void {\n const page = this.getPage();\n if (page > 0 && this.totalRecords && this.first >= this.totalRecords) {\n Promise.resolve(null).then(() => this.changePage(page - 1));\n }\n }\n\n getPage(): number {\n return Math.floor(this.first / this.rows);\n }\n\n changePageToFirst(event: Event): void {\n if (!this.isFirstPage()) {\n this.changePage(0);\n }\n\n event.preventDefault();\n }\n\n changePageToPrev(event: Event): void {\n this.changePage(this.getPage() - 1);\n event.preventDefault();\n }\n\n changePageToNext(event: Event): void {\n this.changePage(this.getPage() + 1);\n event.preventDefault();\n }\n\n changePageToLast(event: Event): void {\n if (!this.isLastPage()) {\n this.changePage(this.getPageCount() - 1);\n }\n\n event.preventDefault();\n }\n\n onPageLinkClick(event: Event, page: number): void {\n this.changePage(page);\n event.preventDefault();\n }\n\n onRppChange(event: Event): void {\n this.changePage(this.getPage());\n }\n\n onPageDropdownChange(event: DropdownChangeEvent): void {\n this.changePage(event.value);\n }\n\n updatePaginatorState(): void {\n this.paginatorState = {\n page: this.getPage(),\n pageCount: this.getPageCount(),\n rows: this.rows,\n first: this.first,\n totalRecords: this.totalRecords\n };\n }\n\n empty(): boolean {\n return this.getPageCount() === 0;\n }\n\n currentPage(): number {\n return this.getPageCount() > 0 ? this.getPage() + 1 : 0;\n }\n\n get currentPageReport(): string {\n return this.currentPageReportTemplate\n .replace('{currentPage}', String(this.currentPage()))\n .replace('{totalPages}', String(this.getPageCount()))\n .replace('{first}', String(this.totalRecords > 0 ? this._first + 1 : 0))\n .replace('{last}', String(Math.min(this._first + this.rows, this.totalRecords)))\n .replace('{rows}', String(this.rows))\n .replace('{totalRecords}', String(this.totalRecords));\n }\n getPositionClass(): string {\n if (this.isFirstPage()) {\n return 'at-first-page';\n } else if (this.isLastPage()) {\n return 'at-last-page';\n }\n return '';\n }\n}\n","<div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"['cax-paginator cax-component', getPositionClass()]\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\r\n <div class=\"cax-paginator-left-content\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\r\n <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n <span class=\"cax-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToFirst($event)\"\r\n caxRipple\r\n class=\"cax-paginator-first cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\r\n >\r\n <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"firstPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToPrev($event)\"\r\n caxRipple\r\n class=\"cax-paginator-prev cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('prevPageLabel')\"\r\n >\r\n <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"previousPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-pages\" *ngIf=\"showPageLinks\">\r\n <button\r\n type=\"button\"\r\n *ngFor=\"let pageLink of pageLinks\"\r\n class=\"cax-paginator-page cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-highlight': pageLink - 1 == getPage() }\"\r\n [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\r\n [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\r\n (click)=\"onPageLinkClick($event, pageLink - 1)\"\r\n caxRipple\r\n >\r\n {{ getLocalization(pageLink) }}\r\n </button>\r\n </span>\r\n <cax-dropdown\r\n [options]=\"pageItems\"\r\n [ngModel]=\"getPage()\"\r\n *ngIf=\"showJumpToPageDropdown\"\r\n [disabled]=\"empty()\"\r\n [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\r\n styleClass=\"cax-paginator-page-options\"\r\n (onChange)=\"onPageDropdownChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n >\r\n <ng-template caxTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\r\n <ng-container *ngIf=\"jumpToPageItemTemplate\">\r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToNext($event)\"\r\n caxRipple\r\n class=\"cax-paginator-next cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('nextPageLabel')\"\r\n >\r\n <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"nextPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToLast($event)\"\r\n caxRipple\r\n class=\"cax-paginator-last cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\r\n >\r\n <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"lastPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-page-label\" *ngIf=\"showJumpToPageInput\">Go to page</span>\r\n <cax-inputNumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"cax-paginator-page-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></cax-inputNumber>\r\n <cax-dropdown\r\n [options]=\"rowsPerPageItems\"\r\n [(ngModel)]=\"rows\"\r\n *ngIf=\"rowsPerPageOptions\"\r\n styleClass=\"cax-paginator-rpp-options\"\r\n [disabled]=\"empty()\"\r\n (onChange)=\"onRppChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\r\n >\r\n <ng-container *ngIf=\"dropdownItemTemplate\"> \r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <div class=\"cax-paginator-right-content\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\r\n <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { DropdownModule } from 'cax-design-system/dropdown';\nimport { InputNumberModule } from 'cax-design-system/inputnumber';\nimport { SharedModule } from 'cax-design-system/api';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { AngleDoubleLeftIcon } from 'cax-design-system/icons/angledoubleleft';\nimport { AngleDoubleRightIcon } from 'cax-design-system/icons/angledoubleright';\nimport { AngleLeftIcon } from 'cax-design-system/icons/angleleft';\nimport { AngleRightIcon } from 'cax-design-system/icons/angleright';\n\nimport { Paginator } from './paginator';\n\n@NgModule({\n imports: [CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleLeftIcon, AngleRightIcon],\n exports: [Paginator, DropdownModule, InputNumberModule, FormsModule, SharedModule],\n declarations: [Paginator]\n})\nexport class PaginatorModule {}\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":"cax-design-system-paginator.mjs","sources":["../../src/app/components/paginator/paginator.ts","../../src/app/components/paginator/paginator.html","../../src/app/components/paginator/paginator.module.ts","../../src/app/components/paginator/cax-design-system-paginator.ts"],"sourcesContent":["import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Input,\n NgModule,\n OnChanges,\n OnInit,\n Output,\n QueryList,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { Aria, caxConfig, CaxTemplate, SelectItem, SharedModule } from 'cax-design-system/api';\nimport { DropdownChangeEvent } from 'cax-design-system/dropdown';\nimport { Nullable } from 'cax-design-system/ts-helpers';\nimport { PaginatorState } from './paginator.interface';\n\n/**\n * Paginator is a generic component to display content in paged format.\n * @group Components\n */\n@Component({\n selector: 'cax-paginator',\n templateUrl: './paginator.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./paginator.scss'],\n host: {\n class: 'cax-element'\n }\n})\nexport class Paginator implements OnInit, AfterContentInit, OnChanges {\n /**\n * Number of page links to display.\n * @group Props\n */\n @Input({ transform: numberAttribute }) pageLinkSize: number = 5;\n\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n\n /**\n * Whether to show it even there is only one page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) alwaysShow: boolean = true;\n\n /**\n * Target element to attach the dropdown overlay, valid values are \"body\" or a local ng-template variable of another element.\n * @group Props\n */\n @Input() dropdownAppendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n\n /**\n * Template instance to inject into the left side of the paginator.\n * @param {PaginatorState} context - Paginator state.\n * @group Props\n */\n @Input() templateLeft: TemplateRef<PaginatorState> | undefined;\n\n /**\n * Template instance to inject into the right side of the paginator.\n * @param {PaginatorState} context - Paginator state.\n * @group Props\n */\n @Input() templateRight: TemplateRef<PaginatorState> | undefined;\n\n /**\n * Target element to attach the dropdown overlay\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n\n /**\n * Dropdown height of the viewport in pixels\n * @group Props\n */\n @Input() dropdownScrollHeight: string = '200px';\n\n /**\n * Template of the current page report element. Available placeholders are {currentPage},{totalPages},{rows},{first},{last} and {totalRecords}\n * @group Props\n */\n @Input() currentPageReportTemplate: string = '{currentPage} of {totalPages}';\n\n /**\n * Whether to display current page report.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showCurrentPageReport: boolean | undefined;\n\n /**\n * When enabled, icons are displayed on paginator to go first and last page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showFirstLastIcon: boolean = true;\n\n /**\n * Number of total records.\n * @group Props\n */\n @Input({ transform: numberAttribute }) totalRecords: number = 0;\n\n /**\n * Data count to display per page.\n * @group Props\n */\n @Input({ transform: numberAttribute }) rows: number = 0;\n\n /**\n * Array of integer/object values to display inside rows per page dropdown.\n * @group Props\n */\n @Input() rowsPerPageOptions: any[] | undefined;\n\n /**\n * Whether to display a dropdown to navigate to any page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showJumpToPageDropdown: boolean | undefined;\n\n /**\n * Whether to display an input to navigate to any page.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showJumpToPageInput: boolean | undefined;\n\n /**\n * Template instance to inject into the jump to page dropdown item.\n * @param {Object} context - item instance.\n * @group Props\n */\n @Input() jumpToPageItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n /**\n * Whether to show page links.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showPageLinks: boolean = true;\n\n /**\n * Locale to be used in formatting.\n * @group Props\n */\n @Input() locale: string | undefined;\n\n /**\n * Template instance to inject into the rows per page dropdown item.\n * @param {Object} context - item instance.\n * @group Props\n */\n @Input() dropdownItemTemplate: TemplateRef<{ $implicit: any }> | undefined;\n\n /**\n * Zero-relative number of the first row to be displayed.\n * @group Props\n */\n @Input() get first(): number {\n return this._first;\n }\n set first(val: number) {\n this._first = val;\n }\n\n /**\n * Callback to invoke when page changes, the event object contains information about the new state.\n * @param {PaginatorState} event - Paginator state.\n * @group Emits\n */\n @Output() onPageChange: EventEmitter<PaginatorState> = new EventEmitter<PaginatorState>();\n\n @ContentChildren(CaxTemplate) templates: Nullable<QueryList<any>>;\n\n dropdownIconTemplate: Nullable<TemplateRef<any>>;\n firstPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n previousPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n lastPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n nextPageLinkIconTemplate: Nullable<TemplateRef<any>>;\n\n pageLinks: number[] | undefined;\n pageItems: SelectItem[] | undefined;\n rowsPerPageItems: SelectItem[] | undefined;\n paginatorState: any;\n\n _first: number = 0;\n _page: number = 0;\n\n constructor(\n private cd: ChangeDetectorRef,\n private config: caxConfig\n ) {}\n\n ngOnInit() {\n this.updatePaginatorState();\n }\n\n getAriaLabel(labelType: keyof Aria): string | undefined {\n return this.config.translation.aria ? this.config.translation.aria[labelType] : undefined;\n }\n\n getPageAriaLabel(value: number): string | undefined {\n return this.config.translation.aria ? this.config.translation.aria.pageLabel.replace(/{page}/g, `${value}`) : undefined;\n }\n\n getLocalization(digit: number): string {\n const numerals = [...new Intl.NumberFormat(this.locale, { useGrouping: false }).format(9876543210)].reverse();\n const index = new Map(numerals.map((d, i) => [i, d]));\n if (digit > 9) {\n const numbers = String(digit).split('');\n return numbers.map((number) => index.get(Number(number))).join('');\n } else {\n return index.get(digit);\n }\n }\n\n ngAfterContentInit(): void {\n (this.templates as QueryList<CaxTemplate>).forEach((item) => {\n switch (item.getType()) {\n case 'dropdownicon':\n this.dropdownIconTemplate = item.template;\n break;\n case 'firstpagelinkicon':\n this.firstPageLinkIconTemplate = item.template;\n break;\n case 'previouspagelinkicon':\n this.previousPageLinkIconTemplate = item.template;\n break;\n case 'lastpagelinkicon':\n this.lastPageLinkIconTemplate = item.template;\n break;\n case 'nextpagelinkicon':\n this.nextPageLinkIconTemplate = item.template;\n break;\n }\n });\n }\n\n ngOnChanges(simpleChange: SimpleChanges): void {\n if (simpleChange.totalRecords) {\n this.updatePageLinks();\n this.updatePaginatorState();\n this.updateFirst();\n this.updateRowsPerPageOptions();\n }\n\n if (simpleChange.first) {\n this._first = simpleChange.first.currentValue;\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n\n if (simpleChange.rows) {\n this.updatePageLinks();\n this.updatePaginatorState();\n }\n\n if (simpleChange.rowsPerPageOptions) {\n this.updateRowsPerPageOptions();\n }\n\n if (simpleChange.pageLinkSize) {\n this.updatePageLinks();\n }\n }\n\n updateRowsPerPageOptions(): void {\n if (this.rowsPerPageOptions) {\n this.rowsPerPageItems = [];\n for (let opt of this.rowsPerPageOptions) {\n if (typeof opt == 'object' && opt['showAll']) {\n this.rowsPerPageItems.unshift({ label: opt['showAll'], value: this.totalRecords });\n } else {\n this.rowsPerPageItems.push({ label: String(this.getLocalization(opt)), value: opt });\n }\n }\n }\n }\n\n isFirstPage(): boolean {\n return this.getPage() === 0;\n }\n\n isLastPage(): boolean {\n return this.getPage() === this.getPageCount() - 1;\n }\n\n getPageCount(): number {\n return Math.ceil(this.totalRecords / this.rows);\n }\n\n calculatePageLinkBoundaries(): [number, number] {\n let numberOfPages = this.getPageCount(),\n visiblePages = Math.min(this.pageLinkSize, numberOfPages);\n\n //calculate range, keep current in middle if necessary\n let start = Math.max(0, Math.ceil(this.getPage() - visiblePages / 2)),\n end = Math.min(numberOfPages - 1, start + visiblePages - 1);\n\n //check when approaching to last page\n var delta = this.pageLinkSize - (end - start + 1);\n start = Math.max(0, start - delta);\n\n return [start, end];\n }\n\n updatePageLinks(): void {\n this.pageLinks = [];\n let boundaries = this.calculatePageLinkBoundaries(),\n start = boundaries[0],\n end = boundaries[1];\n\n for (let i = start; i <= end; i++) {\n this.pageLinks.push(i + 1);\n }\n\n if (this.showJumpToPageDropdown) {\n this.pageItems = [];\n for (let i = 0; i < this.getPageCount(); i++) {\n this.pageItems.push({ label: String(i + 1), value: i });\n }\n }\n }\n\n changePage(p: number): void {\n var pc = this.getPageCount();\n\n if (p >= 0 && p < pc) {\n this._first = this.rows * p;\n var state = {\n page: p,\n first: this.first,\n rows: this.rows,\n pageCount: pc\n };\n this.updatePageLinks();\n\n this.onPageChange.emit(state);\n this.updatePaginatorState();\n }\n }\n\n updateFirst(): void {\n const page = this.getPage();\n if (page > 0 && this.totalRecords && this.first >= this.totalRecords) {\n Promise.resolve(null).then(() => this.changePage(page - 1));\n }\n }\n\n getPage(): number {\n return Math.floor(this.first / this.rows);\n }\n\n changePageToFirst(event: Event): void {\n if (!this.isFirstPage()) {\n this.changePage(0);\n }\n\n event.preventDefault();\n }\n\n changePageToPrev(event: Event): void {\n this.changePage(this.getPage() - 1);\n event.preventDefault();\n }\n\n changePageToNext(event: Event): void {\n this.changePage(this.getPage() + 1);\n event.preventDefault();\n }\n\n changePageToLast(event: Event): void {\n if (!this.isLastPage()) {\n this.changePage(this.getPageCount() - 1);\n }\n\n event.preventDefault();\n }\n\n onPageLinkClick(event: Event, page: number): void {\n this.changePage(page);\n event.preventDefault();\n }\n\n onRppChange(event: Event): void {\n this.changePage(this.getPage());\n }\n\n onPageDropdownChange(event: DropdownChangeEvent): void {\n this.changePage(event.value);\n }\n\n updatePaginatorState(): void {\n this.paginatorState = {\n page: this.getPage(),\n pageCount: this.getPageCount(),\n rows: this.rows,\n first: this.first,\n totalRecords: this.totalRecords\n };\n }\n\n empty(): boolean {\n return this.getPageCount() === 0;\n }\n\n currentPage(): number {\n return this.getPageCount() > 0 ? this.getPage() + 1 : 0;\n }\n\n get currentPageReport(): string {\n return this.currentPageReportTemplate\n .replace('{currentPage}', String(this.currentPage()))\n .replace('{totalPages}', String(this.getPageCount()))\n .replace('{first}', String(this.totalRecords > 0 ? this._first + 1 : 0))\n .replace('{last}', String(Math.min(this._first + this.rows, this.totalRecords)))\n .replace('{rows}', String(this.rows))\n .replace('{totalRecords}', String(this.totalRecords));\n }\n @Input({ transform: booleanAttribute }) rightAligned: boolean = false;\n isSinglePage(): boolean {\n return this.getPageCount() <= 1;\n }\n\n getPositionClass(): string {\n let positions = [];\n if (this.isSinglePage()) {\n positions.push('single-page');\n } else {\n if (this.isFirstPage()) positions.push('at-first-page');\n if (this.isLastPage()) positions.push('at-last-page');\n }\n if (this.rightAligned) positions.push('right-aligned');\n return positions.join(' ');\n }\n}\n","<div [class]=\"styleClass\" [ngStyle]=\"style\" [ngClass]=\"['cax-paginator cax-component', getPositionClass()]\" *ngIf=\"alwaysShow ? true : pageLinks && pageLinks.length > 1\" [attr.data-pc-section]=\"'paginator'\" [attr.data-pc-section]=\"'root'\">\r\n <div class=\"cax-paginator-left-content\" *ngIf=\"templateLeft\" [attr.data-pc-section]=\"'start'\">\r\n <ng-container *ngTemplateOutlet=\"templateLeft; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n <span class=\"cax-paginator-current\" *ngIf=\"showCurrentPageReport\">{{ currentPageReport }}</span>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToFirst($event)\"\r\n caxRipple\r\n class=\"cax-paginator-first cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('firstPageLabel')\"\r\n >\r\n <AngleDoubleLeftIcon *ngIf=\"!firstPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"firstPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"firstPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isFirstPage() || empty()\"\r\n (click)=\"changePageToPrev($event)\"\r\n caxRipple\r\n class=\"cax-paginator-prev cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isFirstPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('prevPageLabel')\"\r\n >\r\n <AngleLeftIcon *ngIf=\"!previousPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"previousPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"previousPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-pages\" *ngIf=\"showPageLinks\">\r\n <button\r\n type=\"button\"\r\n *ngFor=\"let pageLink of pageLinks\"\r\n class=\"cax-paginator-page cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-highlight': pageLink - 1 == getPage() }\"\r\n [attr.aria-label]=\"getPageAriaLabel(pageLink)\"\r\n [attr.aria-current]=\"pageLink - 1 == getPage() ? 'page' : undefined\"\r\n (click)=\"onPageLinkClick($event, pageLink - 1)\"\r\n caxRipple\r\n >\r\n {{ getLocalization(pageLink) }}\r\n </button>\r\n </span>\r\n <cax-dropdown\r\n [options]=\"pageItems\"\r\n [ngModel]=\"getPage()\"\r\n *ngIf=\"showJumpToPageDropdown\"\r\n [disabled]=\"empty()\"\r\n [attr.aria-label]=\"getAriaLabel('jumpToPageDropdownLabel')\"\r\n styleClass=\"cax-paginator-page-options\"\r\n (onChange)=\"onPageDropdownChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n >\r\n <ng-template caxTemplate=\"selectedItem\">{{ currentPageReport }}</ng-template>\r\n <ng-container *ngIf=\"jumpToPageItemTemplate\">\r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"jumpToPageItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <button\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToNext($event)\"\r\n caxRipple\r\n class=\"cax-paginator-next cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('nextPageLabel')\"\r\n >\r\n <AngleRightIcon *ngIf=\"!nextPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"nextPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"nextPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <button\r\n *ngIf=\"showFirstLastIcon\"\r\n type=\"button\"\r\n [disabled]=\"isLastPage() || empty()\"\r\n (click)=\"changePageToLast($event)\"\r\n caxRipple\r\n class=\"cax-paginator-last cax-paginator-element cax-link\"\r\n [ngClass]=\"{ 'cax-disabled': isLastPage() || empty() }\"\r\n [attr.aria-label]=\"getAriaLabel('lastPageLabel')\"\r\n >\r\n <AngleDoubleRightIcon *ngIf=\"!lastPageLinkIconTemplate\" [styleClass]=\"'cax-paginator-icon'\" />\r\n <span class=\"cax-paginator-icon\" *ngIf=\"lastPageLinkIconTemplate\">\r\n <ng-template *ngTemplateOutlet=\"lastPageLinkIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n <span class=\"cax-paginator-page-label\" *ngIf=\"showJumpToPageInput\">Go to page</span>\r\n <cax-inputNumber *ngIf=\"showJumpToPageInput\" [ngModel]=\"currentPage()\" class=\"cax-paginator-page-input\" [disabled]=\"empty()\" (ngModelChange)=\"changePage($event - 1)\"></cax-inputNumber>\r\n <cax-dropdown\r\n [options]=\"rowsPerPageItems\"\r\n [(ngModel)]=\"rows\"\r\n *ngIf=\"rowsPerPageOptions\"\r\n styleClass=\"cax-paginator-rpp-options\"\r\n [disabled]=\"empty()\"\r\n (onChange)=\"onRppChange($event)\"\r\n [appendTo]=\"dropdownAppendTo\"\r\n [scrollHeight]=\"dropdownScrollHeight\"\r\n [ariaLabel]=\"getAriaLabel('rowsPerPageLabel')\"\r\n >\r\n <ng-container *ngIf=\"dropdownItemTemplate\"> \r\n <ng-template let-item caxTemplate=\"item\">\r\n <ng-container *ngTemplateOutlet=\"dropdownItemTemplate; context: { $implicit: item }\"> </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template caxTemplate=\"dropdownicon\" *ngIf=\"dropdownIconTemplate\">\r\n <ng-container *ngTemplateOutlet=\"dropdownIconTemplate\"></ng-container>\r\n </ng-template>\r\n </cax-dropdown>\r\n <div class=\"cax-paginator-right-content\" *ngIf=\"templateRight\" [attr.data-pc-section]=\"'end'\">\r\n <ng-container *ngTemplateOutlet=\"templateRight; context: { $implicit: paginatorState }\"></ng-container>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { DropdownModule } from 'cax-design-system/dropdown';\nimport { InputNumberModule } from 'cax-design-system/inputnumber';\nimport { SharedModule } from 'cax-design-system/api';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { AngleDoubleLeftIcon } from 'cax-design-system/icons/angledoubleleft';\nimport { AngleDoubleRightIcon } from 'cax-design-system/icons/angledoubleright';\nimport { AngleLeftIcon } from 'cax-design-system/icons/angleleft';\nimport { AngleRightIcon } from 'cax-design-system/icons/angleright';\n\nimport { Paginator } from './paginator';\n\n@NgModule({\n imports: [CommonModule, DropdownModule, InputNumberModule, FormsModule, SharedModule, RippleModule, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleLeftIcon, AngleRightIcon],\n exports: [Paginator, DropdownModule, InputNumberModule, FormsModule, SharedModule],\n declarations: [Paginator]\n})\nexport class PaginatorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -58,13 +58,13 @@ class ProgressBar {
58
58
  });
59
59
  }
60
60
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ProgressBar, deps: [], target: i0.ɵɵFactoryTarget.Component });
61
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: ProgressBar, selector: "cax-progressBar", inputs: { value: ["value", "value", numberAttribute], showValue: ["showValue", "showValue", booleanAttribute], styleClass: "styleClass", style: "style", unit: "unit", mode: "mode", color: "color" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], ngImport: i0, template: "<div\r\n role=\"progressbar\"\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [attr.aria-valuemin]=\"0\"\r\n [attr.aria-valuenow]=\"value\"\r\n [attr.aria-valuemax]=\"100\"\r\n [attr.data-pc-name]=\"'progressbar'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n [ngClass]=\"{\r\n 'cax-progressbar cax-component': mode === 'determinate' && showValue,\r\n 'cax-progressbar-parent-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate': mode === 'determinate' && showValue,\r\n 'cax-progressbar-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate-no-value ': mode === 'determinate' && !showValue\r\n }\"\r\n >\r\n <div\r\n\r\n *ngIf=\"mode === 'determinate' && showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n {{ value }}{{ unit }}\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mode === 'indeterminate'\" class=\"cax-progressbar-indeterminate-container\" [attr.data-pc-section]=\"'container'\">\r\n <div\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n ></div>\r\n </div>\r\n <div\r\n *ngIf=\"mode === 'determinate' && !showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate-style\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n", styles: ["@layer cax{.cax-progressbar{position:relative;overflow:hidden}.cax-progressbar-determinate .cax-progressbar-value{height:100%;width:0%;position:absolute;display:none;border:0 none;display:flex;align-items:center;justify-content:flex-end;overflow:hidden}.cax-progressbar-determinate .cax-progressbar-label{display:inline-flex}.cax-progressbar-determinate .cax-progressbar-value-animate{transition:width 1s ease-in-out}.cax-progressbar-value-animate-style{transition:width 1s ease;height:100%}.cax-progressbar-determinate-no-value .cax-progressbar-value-animate{transition:width 2s ease-in-out}.cax-progressbar-value{border-radius:8px 0 0 8px}.cax-progressbar-indeterminate .cax-progressbar-value:before{content:\"\";position:absolute;background-color:inherit;top:0;left:0;bottom:0;will-change:left,right;-webkit-animation:cax-progressbar-indeterminate-anim 2.1s cubic-bezier(.65,.815,.735,.395) infinite;animation:cax-progressbar-indeterminate-anim 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.cax-progressbar-indeterminate .cax-progressbar-value:after{content:\"\";position:absolute;background-color:inherit;top:0;left:0;bottom:0;will-change:left,right;-webkit-animation:cax-progressbar-indeterminate-anim-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation:cax-progressbar-indeterminate-anim-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;-webkit-animation-delay:1.15s;animation-delay:1.15s}}@-webkit-keyframes cax-progressbar-indeterminate-anim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@keyframes cax-progressbar-indeterminate-anim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@-webkit-keyframes cax-progressbar-indeterminate-anim-short{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}@keyframes cax-progressbar-indeterminate-anim-short{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
61
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: ProgressBar, selector: "cax-progressBar", inputs: { value: ["value", "value", numberAttribute], showValue: ["showValue", "showValue", booleanAttribute], styleClass: "styleClass", style: "style", unit: "unit", mode: "mode", color: "color" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], ngImport: i0, template: "<div\r\n role=\"progressbar\"\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [attr.aria-valuemin]=\"0\"\r\n [attr.aria-valuenow]=\"value\"\r\n [attr.aria-valuemax]=\"100\"\r\n [attr.data-pc-name]=\"'progressbar'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n [ngClass]=\"{\r\n 'cax-progressbar cax-component': mode === 'determinate' && showValue,\r\n 'cax-progressbar-parent-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate': mode === 'determinate' && showValue,\r\n 'cax-progressbar-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate-no-value ': mode === 'determinate' && !showValue\r\n }\"\r\n >\r\n <div\r\n\r\n *ngIf=\"mode === 'determinate' && showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n {{ value }}{{ unit }}\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mode === 'indeterminate'\" class=\"cax-progressbar-indeterminate-container\" [attr.data-pc-section]=\"'container'\">\r\n <div\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n ></div>\r\n </div>\r\n <div\r\n *ngIf=\"mode === 'determinate' && !showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate-style\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n", styles: ["@layer cax{.cax-progressbar{position:relative;overflow:hidden}.cax-progressbar-determinate .cax-progressbar-label{display:inline-flex}.cax-progressbar-determinate .cax-progressbar-value-animate{transition:width 1s ease-in-out}.cax-progressbar-value-animate-style{transition:width 1s ease;height:100%}.cax-progressbar-determinate-no-value .cax-progressbar-value-animate{transition:width 2s ease-in-out}.cax-progressbar-indeterminate .cax-progressbar-value:before{content:\"\";position:absolute;background-color:inherit;top:0;left:0;bottom:0;will-change:left,right;-webkit-animation:cax-progressbar-indeterminate-anim 2.1s cubic-bezier(.65,.815,.735,.395) infinite;animation:cax-progressbar-indeterminate-anim 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.cax-progressbar-indeterminate .cax-progressbar-value:after{content:\"\";position:absolute;background-color:inherit;top:0;left:0;bottom:0;will-change:left,right;-webkit-animation:cax-progressbar-indeterminate-anim-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation:cax-progressbar-indeterminate-anim-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;-webkit-animation-delay:1.15s;animation-delay:1.15s}}@-webkit-keyframes cax-progressbar-indeterminate-anim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@keyframes cax-progressbar-indeterminate-anim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@-webkit-keyframes cax-progressbar-indeterminate-anim-short{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}@keyframes cax-progressbar-indeterminate-anim-short{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
62
62
  }
63
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ProgressBar, decorators: [{
64
64
  type: Component,
65
65
  args: [{ selector: 'cax-progressBar', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
66
66
  class: 'cax-element'
67
- }, template: "<div\r\n role=\"progressbar\"\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [attr.aria-valuemin]=\"0\"\r\n [attr.aria-valuenow]=\"value\"\r\n [attr.aria-valuemax]=\"100\"\r\n [attr.data-pc-name]=\"'progressbar'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n [ngClass]=\"{\r\n 'cax-progressbar cax-component': mode === 'determinate' && showValue,\r\n 'cax-progressbar-parent-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate': mode === 'determinate' && showValue,\r\n 'cax-progressbar-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate-no-value ': mode === 'determinate' && !showValue\r\n }\"\r\n >\r\n <div\r\n\r\n *ngIf=\"mode === 'determinate' && showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n {{ value }}{{ unit }}\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mode === 'indeterminate'\" class=\"cax-progressbar-indeterminate-container\" [attr.data-pc-section]=\"'container'\">\r\n <div\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n ></div>\r\n </div>\r\n <div\r\n *ngIf=\"mode === 'determinate' && !showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate-style\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n", styles: ["@layer cax{.cax-progressbar{position:relative;overflow:hidden}.cax-progressbar-determinate .cax-progressbar-value{height:100%;width:0%;position:absolute;display:none;border:0 none;display:flex;align-items:center;justify-content:flex-end;overflow:hidden}.cax-progressbar-determinate .cax-progressbar-label{display:inline-flex}.cax-progressbar-determinate .cax-progressbar-value-animate{transition:width 1s ease-in-out}.cax-progressbar-value-animate-style{transition:width 1s ease;height:100%}.cax-progressbar-determinate-no-value .cax-progressbar-value-animate{transition:width 2s ease-in-out}.cax-progressbar-value{border-radius:8px 0 0 8px}.cax-progressbar-indeterminate .cax-progressbar-value:before{content:\"\";position:absolute;background-color:inherit;top:0;left:0;bottom:0;will-change:left,right;-webkit-animation:cax-progressbar-indeterminate-anim 2.1s cubic-bezier(.65,.815,.735,.395) infinite;animation:cax-progressbar-indeterminate-anim 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.cax-progressbar-indeterminate .cax-progressbar-value:after{content:\"\";position:absolute;background-color:inherit;top:0;left:0;bottom:0;will-change:left,right;-webkit-animation:cax-progressbar-indeterminate-anim-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation:cax-progressbar-indeterminate-anim-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;-webkit-animation-delay:1.15s;animation-delay:1.15s}}@-webkit-keyframes cax-progressbar-indeterminate-anim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@keyframes cax-progressbar-indeterminate-anim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@-webkit-keyframes cax-progressbar-indeterminate-anim-short{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}@keyframes cax-progressbar-indeterminate-anim-short{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}\n"] }]
67
+ }, template: "<div\r\n role=\"progressbar\"\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [attr.aria-valuemin]=\"0\"\r\n [attr.aria-valuenow]=\"value\"\r\n [attr.aria-valuemax]=\"100\"\r\n [attr.data-pc-name]=\"'progressbar'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n [ngClass]=\"{\r\n 'cax-progressbar cax-component': mode === 'determinate' && showValue,\r\n 'cax-progressbar-parent-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate': mode === 'determinate' && showValue,\r\n 'cax-progressbar-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate-no-value ': mode === 'determinate' && !showValue\r\n }\"\r\n >\r\n <div\r\n\r\n *ngIf=\"mode === 'determinate' && showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n {{ value }}{{ unit }}\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mode === 'indeterminate'\" class=\"cax-progressbar-indeterminate-container\" [attr.data-pc-section]=\"'container'\">\r\n <div\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n ></div>\r\n </div>\r\n <div\r\n *ngIf=\"mode === 'determinate' && !showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate-style\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n", styles: ["@layer cax{.cax-progressbar{position:relative;overflow:hidden}.cax-progressbar-determinate .cax-progressbar-label{display:inline-flex}.cax-progressbar-determinate .cax-progressbar-value-animate{transition:width 1s ease-in-out}.cax-progressbar-value-animate-style{transition:width 1s ease;height:100%}.cax-progressbar-determinate-no-value .cax-progressbar-value-animate{transition:width 2s ease-in-out}.cax-progressbar-indeterminate .cax-progressbar-value:before{content:\"\";position:absolute;background-color:inherit;top:0;left:0;bottom:0;will-change:left,right;-webkit-animation:cax-progressbar-indeterminate-anim 2.1s cubic-bezier(.65,.815,.735,.395) infinite;animation:cax-progressbar-indeterminate-anim 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.cax-progressbar-indeterminate .cax-progressbar-value:after{content:\"\";position:absolute;background-color:inherit;top:0;left:0;bottom:0;will-change:left,right;-webkit-animation:cax-progressbar-indeterminate-anim-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation:cax-progressbar-indeterminate-anim-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;-webkit-animation-delay:1.15s;animation-delay:1.15s}}@-webkit-keyframes cax-progressbar-indeterminate-anim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@keyframes cax-progressbar-indeterminate-anim{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@-webkit-keyframes cax-progressbar-indeterminate-anim-short{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}@keyframes cax-progressbar-indeterminate-anim-short{0%{left:-200%;right:100%}60%{left:107%;right:-8%}to{left:107%;right:-8%}}\n"] }]
68
68
  }], propDecorators: { value: [{
69
69
  type: Input,
70
70
  args: [{ transform: numberAttribute }]
@@ -1 +1 @@
1
- {"version":3,"file":"cax-design-system-progressbar.mjs","sources":["../../src/app/components/progressbar/progressbar.ts","../../src/app/components/progressbar/progressbar.html","../../src/app/components/progressbar/progressbar.module.ts","../../src/app/components/progressbar/cax-design-system-progressbar.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, TemplateRef, ContentChildren, Input, NgModule, ViewEncapsulation, booleanAttribute, numberAttribute } from '@angular/core';\nimport { CaxTemplate } from 'cax-design-system/api';\nimport { QueryList } from '@angular/core';\n/**\n * ProgressBar is a process status indicator.\n * @group Components\n */\n@Component({\n selector: 'cax-progressBar',\n templateUrl: './progressbar.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./progressbar.scss'],\n host: {\n class: 'cax-element'\n }\n})\nexport class ProgressBar {\n /**\n * Current value of the progress.\n * @group Props\n */\n @Input({ transform: numberAttribute }) value: number | undefined;\n /**\n * Whether to display the progress bar value.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showValue: boolean = true;\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Unit sign appended to the value.\n * @group Props\n */\n @Input() unit: string = '%';\n /**\n * Defines the mode of the progress\n * @group Props\n */\n @Input() mode: string = 'determinate';\n /**\n * Color for the background of the progress.\n * @group Props\n */\n @Input() color: string | undefined;\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n\n contentTemplate: TemplateRef<any> | undefined;\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n default:\n this.contentTemplate = item.template;\n }\n });\n }\n}\n","<div\r\n role=\"progressbar\"\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [attr.aria-valuemin]=\"0\"\r\n [attr.aria-valuenow]=\"value\"\r\n [attr.aria-valuemax]=\"100\"\r\n [attr.data-pc-name]=\"'progressbar'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n [ngClass]=\"{\r\n 'cax-progressbar cax-component': mode === 'determinate' && showValue,\r\n 'cax-progressbar-parent-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate': mode === 'determinate' && showValue,\r\n 'cax-progressbar-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate-no-value ': mode === 'determinate' && !showValue\r\n }\"\r\n >\r\n <div\r\n\r\n *ngIf=\"mode === 'determinate' && showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n {{ value }}{{ unit }}\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mode === 'indeterminate'\" class=\"cax-progressbar-indeterminate-container\" [attr.data-pc-section]=\"'container'\">\r\n <div\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n ></div>\r\n </div>\r\n <div\r\n *ngIf=\"mode === 'determinate' && !showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate-style\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ProgressBar } from './progressbar';\n\n@NgModule({\n imports: [CommonModule],\n exports: [ProgressBar],\n declarations: [ProgressBar]\n})\nexport class ProgressBarModule {}\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":"cax-design-system-progressbar.mjs","sources":["../../src/app/components/progressbar/progressbar.ts","../../src/app/components/progressbar/progressbar.html","../../src/app/components/progressbar/progressbar.module.ts","../../src/app/components/progressbar/cax-design-system-progressbar.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, TemplateRef, ContentChildren, Input, NgModule, ViewEncapsulation, booleanAttribute, numberAttribute } from '@angular/core';\nimport { CaxTemplate } from 'cax-design-system/api';\nimport { QueryList } from '@angular/core';\n/**\n * ProgressBar is a process status indicator.\n * @group Components\n */\n@Component({\n selector: 'cax-progressBar',\n templateUrl: './progressbar.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./progressbar.scss'],\n host: {\n class: 'cax-element'\n }\n})\nexport class ProgressBar {\n /**\n * Current value of the progress.\n * @group Props\n */\n @Input({ transform: numberAttribute }) value: number | undefined;\n /**\n * Whether to display the progress bar value.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showValue: boolean = true;\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Unit sign appended to the value.\n * @group Props\n */\n @Input() unit: string = '%';\n /**\n * Defines the mode of the progress\n * @group Props\n */\n @Input() mode: string = 'determinate';\n /**\n * Color for the background of the progress.\n * @group Props\n */\n @Input() color: string | undefined;\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n\n contentTemplate: TemplateRef<any> | undefined;\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n default:\n this.contentTemplate = item.template;\n }\n });\n }\n}\n","<div\r\n role=\"progressbar\"\r\n [class]=\"styleClass\"\r\n [ngStyle]=\"style\"\r\n [attr.aria-valuemin]=\"0\"\r\n [attr.aria-valuenow]=\"value\"\r\n [attr.aria-valuemax]=\"100\"\r\n [attr.data-pc-name]=\"'progressbar'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n [ngClass]=\"{\r\n 'cax-progressbar cax-component': mode === 'determinate' && showValue,\r\n 'cax-progressbar-parent-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate': mode === 'determinate' && showValue,\r\n 'cax-progressbar-indeterminate': mode === 'indeterminate',\r\n 'cax-progressbar-determinate-no-value ': mode === 'determinate' && !showValue\r\n }\"\r\n >\r\n <div\r\n\r\n *ngIf=\"mode === 'determinate' && showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n {{ value }}{{ unit }}\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"mode === 'indeterminate'\" class=\"cax-progressbar-indeterminate-container\" [attr.data-pc-section]=\"'container'\">\r\n <div\r\n class=\"cax-progressbar-value cax-progressbar-value-animate\"\r\n [ngStyle]=\"{\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n ></div>\r\n </div>\r\n <div\r\n *ngIf=\"mode === 'determinate' && !showValue\"\r\n class=\"cax-progressbar-value cax-progressbar-value-animate-style\"\r\n [ngStyle]=\"{\r\n width: value + '%',\r\n display: 'flex',\r\n background: color\r\n }\"\r\n [attr.data-pc-section]=\"'value'\"\r\n >\r\n <div class=\"cax-progressbar-label\">\r\n <div\r\n *ngIf=\"showValue && !contentTemplate\"\r\n [ngStyle]=\"{\r\n display: value != null && value !== 0 ? 'flex' : 'none'\r\n }\"\r\n [attr.data-pc-section]=\"'label'\"\r\n >\r\n\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate; context: { $implicit: value }\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ProgressBar } from './progressbar';\n\n@NgModule({\n imports: [CommonModule],\n exports: [ProgressBar],\n declarations: [ProgressBar]\n})\nexport class ProgressBarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ class ProgressSpinner {
15
15
  styleClass;
16
16
  strokeColor;
17
17
  backgroundStrokeColor;
18
- size = 'm';
18
+ size = 'md';
19
19
  ngOnChanges(changes) {
20
20
  if (changes['size']) {
21
21
  this.updateStrokeWidthBasedOnSize();
@@ -25,14 +25,14 @@ class ProgressSpinner {
25
25
  }
26
26
  }
27
27
  updateStrokeWidthBasedOnSize() {
28
- if (this.size === 's') {
28
+ if (this.size === 'sm') {
29
29
  this.strokeWidth = 4;
30
30
  }
31
- else if (this.size === 'm') {
31
+ else if (this.size === 'md') {
32
32
  this.strokeWidth = 5;
33
33
  }
34
- else if (this.size === 'l') {
35
- this.strokeWidth = 7;
34
+ else if (this.size === 'lg') {
35
+ this.strokeWidth = 5;
36
36
  }
37
37
  }
38
38
  updateBackgroundStrokeColor() {
@@ -45,18 +45,18 @@ class ProgressSpinner {
45
45
  }
46
46
  get stroke() {
47
47
  if (this.strokeColor === 'primary') {
48
- return '#0B3FDA';
48
+ return getComputedStyle(document.documentElement).getPropertyValue('--primary-500').trim() || '#0C4AF3';
49
49
  }
50
50
  else if (this.strokeColor === 'secondary') {
51
- return '#FFFFFF';
51
+ return getComputedStyle(document.documentElement).getPropertyValue('--white-100').trim() || '#FFFFFF';
52
52
  }
53
53
  }
54
54
  get backgroundStroke() {
55
55
  if (this.backgroundStrokeColor === 'primary') {
56
- return '#86A3F9';
56
+ return getComputedStyle(document.documentElement).getPropertyValue('--primary-200').trim() || '#0B3FDA';
57
57
  }
58
58
  else if (this.backgroundStrokeColor === 'secondary') {
59
- return '#B7BBC8';
59
+ return getComputedStyle(document.documentElement).getPropertyValue('--neutral-300').trim() || '#A9AFBC';
60
60
  }
61
61
  }
62
62
  /**
@@ -85,13 +85,13 @@ class ProgressSpinner {
85
85
  */
86
86
  ariaLabel;
87
87
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ProgressSpinner, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: ProgressSpinner, selector: "cax-progressSpinner", inputs: { styleClass: "styleClass", strokeColor: "strokeColor", backgroundStrokeColor: "backgroundStrokeColor", size: "size", style: "style", strokeWidth: "strokeWidth", fill: "fill", animationDuration: "animationDuration", ariaLabel: "ariaLabel" }, host: { classAttribute: "cax-element" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cax-progress-spinner\" [ngStyle]=\"style\" [ngClass]=\"['cax-progress-spinner-size-' + size]\" role=\"progressbar\" [attr.aria-label]=\"ariaLabel\" [attr.aria-busy]=\"true\" [attr.data-pc-name]=\"'progressspinner'\" [attr.data-pc-section]=\"'root'\">\r\n <svg class=\"cax-progress-spinner-svg\" viewBox=\"25 25 50 50\" [style.animation-duration]=\"animationDuration\" [attr.data-pc-section]=\"'root'\">\r\n <circle\r\n class=\"cax-progress-spinner-bg\"\r\n cx=\"50\"\r\n cy=\"50\"\r\n r=\"20\"\r\n [attr.stroke-width]=\"strokeWidth\"\r\n [attr.stroke]=\"backgroundStroke\"\r\n fill=\"none\"\r\n ></circle>\r\n <circle class=\"cax-progress-spinner-circle \" cx=\"50\" cy=\"50\" r=\"20\" [attr.fill]=\"fill\" [attr.stroke-width]=\"strokeWidth\" stroke-miterlimit=\"10\" [attr.stroke]=\"backgroundStrokeColor\" [attr.stroke]=\"stroke\" [ngStyle]=\"{ stroke: stroke }\" />\r\n </svg>\r\n</div>\r\n", styles: ["@layer cax{.cax-progress-spinner{position:relative;margin:0 auto;width:100px;height:100px;display:inline-block}.cax-progress-spinner:before{content:\"\";display:block;padding-top:100%}.cax-progress-spinner-svg{animation:cax-progress-spinner-rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;inset:0;margin:auto}.cax-progress-spinner-circle{stroke-dasharray:89,200;stroke-dashoffset:0;animation:cax-progress-spinner-dash 1.5s ease-in-out infinite,cax-progress-spinner-color 6s ease-in-out infinite;stroke-linecap:round}.cax-progress-spinner-circle{stroke:transparent}.cax-progress-spinner-size-s{width:25.46px;height:25.46px}.cax-progress-spinner-size-m{width:38.18px;height:38.18px}.cax-progress-spinner-size-l{width:50.91px;height:50.91px}}@keyframes cax-progress-spinner-rotate{to{transform:rotate(360deg)}}@keyframes cax-progress-spinner-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
88
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: ProgressSpinner, selector: "cax-progressSpinner", inputs: { styleClass: "styleClass", strokeColor: "strokeColor", backgroundStrokeColor: "backgroundStrokeColor", size: "size", style: "style", strokeWidth: "strokeWidth", fill: "fill", animationDuration: "animationDuration", ariaLabel: "ariaLabel" }, host: { classAttribute: "cax-element" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"cax-progress-spinner\" [ngStyle]=\"style\" [ngClass]=\"['cax-progress-spinner-size-' + size]\" role=\"progressbar\" [attr.aria-label]=\"ariaLabel\" [attr.aria-busy]=\"true\" [attr.data-pc-name]=\"'progressspinner'\" [attr.data-pc-section]=\"'root'\">\r\n <svg class=\"cax-progress-spinner-svg\" viewBox=\"25 25 50 50\" [style.animation-duration]=\"animationDuration\" [attr.data-pc-section]=\"'root'\">\r\n <circle\r\n class=\"cax-progress-spinner-bg\"\r\n cx=\"50\"\r\n cy=\"50\"\r\n r=\"20\"\r\n [attr.stroke-width]=\"strokeWidth\"\r\n [attr.stroke]=\"backgroundStroke\"\r\n fill=\"none\"\r\n ></circle>\r\n <circle class=\"cax-progress-spinner-circle \" cx=\"50\" cy=\"50\" r=\"20\" [attr.fill]=\"fill\" [attr.stroke-width]=\"strokeWidth\" stroke-miterlimit=\"10\" [attr.stroke]=\"backgroundStrokeColor\" [attr.stroke]=\"stroke\" [ngStyle]=\"{ stroke: stroke }\" />\r\n </svg>\r\n</div>\r\n", styles: ["@layer cax{.cax-progress-spinner{position:relative;margin:0 auto;width:100px;height:100px;display:inline-block}.cax-progress-spinner:before{content:\"\";display:block;padding-top:100%}.cax-progress-spinner-svg{animation:cax-progress-spinner-rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;inset:0;margin:auto}.cax-progress-spinner-circle{stroke-dasharray:89,200;stroke-dashoffset:0;animation:cax-progress-spinner-dash 1.5s ease-in-out infinite,cax-progress-spinner-color 6s ease-in-out infinite;stroke-linecap:round}.cax-progress-spinner-circle{stroke:transparent}.cax-progress-spinner-size-sm{width:25px;height:25px}.cax-progress-spinner-size-md{width:36px;height:36px}.cax-progress-spinner-size-lg{width:50px;height:50px}}@keyframes cax-progress-spinner-rotate{to{transform:rotate(360deg)}}@keyframes cax-progress-spinner-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
89
89
  }
90
90
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ProgressSpinner, decorators: [{
91
91
  type: Component,
92
92
  args: [{ selector: 'cax-progressSpinner', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
93
93
  class: 'cax-element'
94
- }, template: "<div class=\"cax-progress-spinner\" [ngStyle]=\"style\" [ngClass]=\"['cax-progress-spinner-size-' + size]\" role=\"progressbar\" [attr.aria-label]=\"ariaLabel\" [attr.aria-busy]=\"true\" [attr.data-pc-name]=\"'progressspinner'\" [attr.data-pc-section]=\"'root'\">\r\n <svg class=\"cax-progress-spinner-svg\" viewBox=\"25 25 50 50\" [style.animation-duration]=\"animationDuration\" [attr.data-pc-section]=\"'root'\">\r\n <circle\r\n class=\"cax-progress-spinner-bg\"\r\n cx=\"50\"\r\n cy=\"50\"\r\n r=\"20\"\r\n [attr.stroke-width]=\"strokeWidth\"\r\n [attr.stroke]=\"backgroundStroke\"\r\n fill=\"none\"\r\n ></circle>\r\n <circle class=\"cax-progress-spinner-circle \" cx=\"50\" cy=\"50\" r=\"20\" [attr.fill]=\"fill\" [attr.stroke-width]=\"strokeWidth\" stroke-miterlimit=\"10\" [attr.stroke]=\"backgroundStrokeColor\" [attr.stroke]=\"stroke\" [ngStyle]=\"{ stroke: stroke }\" />\r\n </svg>\r\n</div>\r\n", styles: ["@layer cax{.cax-progress-spinner{position:relative;margin:0 auto;width:100px;height:100px;display:inline-block}.cax-progress-spinner:before{content:\"\";display:block;padding-top:100%}.cax-progress-spinner-svg{animation:cax-progress-spinner-rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;inset:0;margin:auto}.cax-progress-spinner-circle{stroke-dasharray:89,200;stroke-dashoffset:0;animation:cax-progress-spinner-dash 1.5s ease-in-out infinite,cax-progress-spinner-color 6s ease-in-out infinite;stroke-linecap:round}.cax-progress-spinner-circle{stroke:transparent}.cax-progress-spinner-size-s{width:25.46px;height:25.46px}.cax-progress-spinner-size-m{width:38.18px;height:38.18px}.cax-progress-spinner-size-l{width:50.91px;height:50.91px}}@keyframes cax-progress-spinner-rotate{to{transform:rotate(360deg)}}@keyframes cax-progress-spinner-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}\n"] }]
94
+ }, template: "<div class=\"cax-progress-spinner\" [ngStyle]=\"style\" [ngClass]=\"['cax-progress-spinner-size-' + size]\" role=\"progressbar\" [attr.aria-label]=\"ariaLabel\" [attr.aria-busy]=\"true\" [attr.data-pc-name]=\"'progressspinner'\" [attr.data-pc-section]=\"'root'\">\r\n <svg class=\"cax-progress-spinner-svg\" viewBox=\"25 25 50 50\" [style.animation-duration]=\"animationDuration\" [attr.data-pc-section]=\"'root'\">\r\n <circle\r\n class=\"cax-progress-spinner-bg\"\r\n cx=\"50\"\r\n cy=\"50\"\r\n r=\"20\"\r\n [attr.stroke-width]=\"strokeWidth\"\r\n [attr.stroke]=\"backgroundStroke\"\r\n fill=\"none\"\r\n ></circle>\r\n <circle class=\"cax-progress-spinner-circle \" cx=\"50\" cy=\"50\" r=\"20\" [attr.fill]=\"fill\" [attr.stroke-width]=\"strokeWidth\" stroke-miterlimit=\"10\" [attr.stroke]=\"backgroundStrokeColor\" [attr.stroke]=\"stroke\" [ngStyle]=\"{ stroke: stroke }\" />\r\n </svg>\r\n</div>\r\n", styles: ["@layer cax{.cax-progress-spinner{position:relative;margin:0 auto;width:100px;height:100px;display:inline-block}.cax-progress-spinner:before{content:\"\";display:block;padding-top:100%}.cax-progress-spinner-svg{animation:cax-progress-spinner-rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;inset:0;margin:auto}.cax-progress-spinner-circle{stroke-dasharray:89,200;stroke-dashoffset:0;animation:cax-progress-spinner-dash 1.5s ease-in-out infinite,cax-progress-spinner-color 6s ease-in-out infinite;stroke-linecap:round}.cax-progress-spinner-circle{stroke:transparent}.cax-progress-spinner-size-sm{width:25px;height:25px}.cax-progress-spinner-size-md{width:36px;height:36px}.cax-progress-spinner-size-lg{width:50px;height:50px}}@keyframes cax-progress-spinner-rotate{to{transform:rotate(360deg)}}@keyframes cax-progress-spinner-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}\n"] }]
95
95
  }], propDecorators: { styleClass: [{
96
96
  type: Input
97
97
  }], strokeColor: [{