@agorapulse/ui-components 21.1.16 → 22.0.1

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 (127) hide show
  1. package/agorapulse-ui-components-22.0.1.tgz +0 -0
  2. package/fesm2022/agorapulse-ui-components-action-dropdown.mjs +26 -16
  3. package/fesm2022/agorapulse-ui-components-action-dropdown.mjs.map +1 -1
  4. package/fesm2022/agorapulse-ui-components-add-comment.mjs +3 -3
  5. package/fesm2022/agorapulse-ui-components-add-comment.mjs.map +1 -1
  6. package/fesm2022/agorapulse-ui-components-autocomplete.mjs +11 -7
  7. package/fesm2022/agorapulse-ui-components-autocomplete.mjs.map +1 -1
  8. package/fesm2022/agorapulse-ui-components-avatar-group.mjs +17 -10
  9. package/fesm2022/agorapulse-ui-components-avatar-group.mjs.map +1 -1
  10. package/fesm2022/agorapulse-ui-components-avatar.mjs +33 -18
  11. package/fesm2022/agorapulse-ui-components-avatar.mjs.map +1 -1
  12. package/fesm2022/agorapulse-ui-components-badge.mjs +3 -3
  13. package/fesm2022/agorapulse-ui-components-badge.mjs.map +1 -1
  14. package/fesm2022/agorapulse-ui-components-button.mjs +17 -10
  15. package/fesm2022/agorapulse-ui-components-button.mjs.map +1 -1
  16. package/fesm2022/agorapulse-ui-components-checkbox.mjs +3 -3
  17. package/fesm2022/agorapulse-ui-components-checkbox.mjs.map +1 -1
  18. package/fesm2022/agorapulse-ui-components-close-button.mjs +9 -6
  19. package/fesm2022/agorapulse-ui-components-close-button.mjs.map +1 -1
  20. package/fesm2022/agorapulse-ui-components-confirm-modal.mjs +3 -3
  21. package/fesm2022/agorapulse-ui-components-confirm-modal.mjs.map +1 -1
  22. package/fesm2022/agorapulse-ui-components-counter.mjs +11 -7
  23. package/fesm2022/agorapulse-ui-components-counter.mjs.map +1 -1
  24. package/fesm2022/agorapulse-ui-components-datepicker.mjs +106 -53
  25. package/fesm2022/agorapulse-ui-components-datepicker.mjs.map +1 -1
  26. package/fesm2022/agorapulse-ui-components-directives.mjs +28 -26
  27. package/fesm2022/agorapulse-ui-components-directives.mjs.map +1 -1
  28. package/fesm2022/agorapulse-ui-components-dot-stepper.mjs +3 -3
  29. package/fesm2022/agorapulse-ui-components-dot-stepper.mjs.map +1 -1
  30. package/fesm2022/agorapulse-ui-components-dropdown-base.mjs +7 -5
  31. package/fesm2022/agorapulse-ui-components-dropdown-base.mjs.map +1 -1
  32. package/fesm2022/agorapulse-ui-components-filter-chips-list.mjs +28 -17
  33. package/fesm2022/agorapulse-ui-components-filter-chips-list.mjs.map +1 -1
  34. package/fesm2022/agorapulse-ui-components-filter-dropdown.mjs +174 -99
  35. package/fesm2022/agorapulse-ui-components-filter-dropdown.mjs.map +1 -1
  36. package/fesm2022/agorapulse-ui-components-form-field.mjs +3 -3
  37. package/fesm2022/agorapulse-ui-components-form-field.mjs.map +1 -1
  38. package/fesm2022/agorapulse-ui-components-form-message.mjs +7 -5
  39. package/fesm2022/agorapulse-ui-components-form-message.mjs.map +1 -1
  40. package/fesm2022/agorapulse-ui-components-icon-button.mjs +5 -4
  41. package/fesm2022/agorapulse-ui-components-icon-button.mjs.map +1 -1
  42. package/fesm2022/agorapulse-ui-components-infobox.mjs +5 -4
  43. package/fesm2022/agorapulse-ui-components-infobox.mjs.map +1 -1
  44. package/fesm2022/agorapulse-ui-components-input-group.mjs +6 -6
  45. package/fesm2022/agorapulse-ui-components-input-group.mjs.map +1 -1
  46. package/fesm2022/agorapulse-ui-components-input-search.mjs +16 -10
  47. package/fesm2022/agorapulse-ui-components-input-search.mjs.map +1 -1
  48. package/fesm2022/agorapulse-ui-components-input.mjs +3 -3
  49. package/fesm2022/agorapulse-ui-components-input.mjs.map +1 -1
  50. package/fesm2022/agorapulse-ui-components-labels-selector.mjs +7 -5
  51. package/fesm2022/agorapulse-ui-components-labels-selector.mjs.map +1 -1
  52. package/fesm2022/agorapulse-ui-components-labels.mjs +6 -6
  53. package/fesm2022/agorapulse-ui-components-labels.mjs.map +1 -1
  54. package/fesm2022/agorapulse-ui-components-legacy-input.mjs +6 -5
  55. package/fesm2022/agorapulse-ui-components-legacy-input.mjs.map +1 -1
  56. package/fesm2022/agorapulse-ui-components-legacy-select.mjs +33 -17
  57. package/fesm2022/agorapulse-ui-components-legacy-select.mjs.map +1 -1
  58. package/fesm2022/agorapulse-ui-components-legacy-textarea.mjs +6 -5
  59. package/fesm2022/agorapulse-ui-components-legacy-textarea.mjs.map +1 -1
  60. package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs +3 -3
  61. package/fesm2022/agorapulse-ui-components-media-display-overlay.mjs.map +1 -1
  62. package/fesm2022/agorapulse-ui-components-modal.mjs +3 -3
  63. package/fesm2022/agorapulse-ui-components-modal.mjs.map +1 -1
  64. package/fesm2022/agorapulse-ui-components-nav-selector.mjs +241 -146
  65. package/fesm2022/agorapulse-ui-components-nav-selector.mjs.map +1 -1
  66. package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs +6 -6
  67. package/fesm2022/agorapulse-ui-components-neo-datepicker.mjs.map +1 -1
  68. package/fesm2022/agorapulse-ui-components-notification.mjs +3 -3
  69. package/fesm2022/agorapulse-ui-components-notification.mjs.map +1 -1
  70. package/fesm2022/agorapulse-ui-components-paginator.mjs +6 -6
  71. package/fesm2022/agorapulse-ui-components-paginator.mjs.map +1 -1
  72. package/fesm2022/agorapulse-ui-components-password-input.mjs +7 -5
  73. package/fesm2022/agorapulse-ui-components-password-input.mjs.map +1 -1
  74. package/fesm2022/agorapulse-ui-components-phone-number-input.mjs +8 -6
  75. package/fesm2022/agorapulse-ui-components-phone-number-input.mjs.map +1 -1
  76. package/fesm2022/agorapulse-ui-components-popmenu.mjs +19 -16
  77. package/fesm2022/agorapulse-ui-components-popmenu.mjs.map +1 -1
  78. package/fesm2022/agorapulse-ui-components-radio-button-card.mjs +47 -25
  79. package/fesm2022/agorapulse-ui-components-radio-button-card.mjs.map +1 -1
  80. package/fesm2022/agorapulse-ui-components-radio.mjs +6 -6
  81. package/fesm2022/agorapulse-ui-components-radio.mjs.map +1 -1
  82. package/fesm2022/agorapulse-ui-components-range-slider.mjs +8 -6
  83. package/fesm2022/agorapulse-ui-components-range-slider.mjs.map +1 -1
  84. package/fesm2022/agorapulse-ui-components-segmented-control.mjs +15 -9
  85. package/fesm2022/agorapulse-ui-components-segmented-control.mjs.map +1 -1
  86. package/fesm2022/agorapulse-ui-components-select.mjs +129 -85
  87. package/fesm2022/agorapulse-ui-components-select.mjs.map +1 -1
  88. package/fesm2022/agorapulse-ui-components-selection-dropdown.mjs +60 -33
  89. package/fesm2022/agorapulse-ui-components-selection-dropdown.mjs.map +1 -1
  90. package/fesm2022/agorapulse-ui-components-slide-toggle.mjs +8 -6
  91. package/fesm2022/agorapulse-ui-components-slide-toggle.mjs.map +1 -1
  92. package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs +10 -8
  93. package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs.map +1 -1
  94. package/fesm2022/agorapulse-ui-components-social-button.mjs +7 -5
  95. package/fesm2022/agorapulse-ui-components-social-button.mjs.map +1 -1
  96. package/fesm2022/agorapulse-ui-components-split-button.mjs +21 -12
  97. package/fesm2022/agorapulse-ui-components-split-button.mjs.map +1 -1
  98. package/fesm2022/agorapulse-ui-components-status-card.mjs +3 -3
  99. package/fesm2022/agorapulse-ui-components-status-card.mjs.map +1 -1
  100. package/fesm2022/agorapulse-ui-components-status.mjs +3 -3
  101. package/fesm2022/agorapulse-ui-components-status.mjs.map +1 -1
  102. package/fesm2022/agorapulse-ui-components-stepper.mjs +3 -3
  103. package/fesm2022/agorapulse-ui-components-stepper.mjs.map +1 -1
  104. package/fesm2022/agorapulse-ui-components-tabs.mjs +36 -21
  105. package/fesm2022/agorapulse-ui-components-tabs.mjs.map +1 -1
  106. package/fesm2022/agorapulse-ui-components-tag.mjs +9 -6
  107. package/fesm2022/agorapulse-ui-components-tag.mjs.map +1 -1
  108. package/fesm2022/agorapulse-ui-components-text-measurement.mjs +3 -3
  109. package/fesm2022/agorapulse-ui-components-text-measurement.mjs.map +1 -1
  110. package/fesm2022/agorapulse-ui-components-textarea.mjs +3 -3
  111. package/fesm2022/agorapulse-ui-components-textarea.mjs.map +1 -1
  112. package/fesm2022/agorapulse-ui-components-toggle.mjs +3 -3
  113. package/fesm2022/agorapulse-ui-components-toggle.mjs.map +1 -1
  114. package/fesm2022/agorapulse-ui-components-tooltip.mjs +56 -34
  115. package/fesm2022/agorapulse-ui-components-tooltip.mjs.map +1 -1
  116. package/fesm2022/agorapulse-ui-components.mjs +4 -4
  117. package/fesm2022/agorapulse-ui-components.mjs.map +1 -1
  118. package/package.json +11 -11
  119. package/types/agorapulse-ui-components-datepicker.d.ts +5 -1
  120. package/types/agorapulse-ui-components-filter-dropdown.d.ts +1 -1
  121. package/types/agorapulse-ui-components-password-input.d.ts +1 -0
  122. package/types/agorapulse-ui-components-phone-number-input.d.ts +1 -0
  123. package/types/agorapulse-ui-components-popmenu.d.ts +3 -3
  124. package/types/agorapulse-ui-components-range-slider.d.ts +1 -0
  125. package/types/agorapulse-ui-components-select.d.ts +5 -3
  126. package/types/agorapulse-ui-components-slide-toggle.d.ts +1 -0
  127. package/agorapulse-ui-components-21.1.16.tgz +0 -0
@@ -23,10 +23,10 @@ class DayDisabledPipe {
23
23
  (!!minDateTimestamp && day.timestamp < minDateTimestamp) ||
24
24
  (!!maxDateTimestamp && day.timestamp > maxDateTimestamp));
25
25
  }
26
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: DayDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
27
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.16", ngImport: i0, type: DayDisabledPipe, isStandalone: true, name: "dayDisabled" });
26
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: DayDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
27
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.0.5", ngImport: i0, type: DayDisabledPipe, isStandalone: true, name: "dayDisabled" });
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: DayDisabledPipe, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: DayDisabledPipe, decorators: [{
30
30
  type: Pipe,
31
31
  args: [{
32
32
  name: 'dayDisabled',
@@ -221,10 +221,10 @@ class NeoDatepickerComponent {
221
221
  this.datesSelected.emit(Array.from(this.selectedDaysTimestamp).map(timestamp => dayjs(timestamp)));
222
222
  }
223
223
  }
224
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: NeoDatepickerComponent, deps: [{ token: i1.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
225
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.16", type: NeoDatepickerComponent, isStandalone: true, selector: "ap-neo-date-picker", inputs: { dayTemplate: "dayTemplate", locale: "locale", maxDate: "maxDate", minDate: "minDate", mode: "mode", selectedDates: "selectedDates", startsOn: "startsOn" }, outputs: { datesSelected: "datesSelected", nextMonth: "nextMonth", previousMonth: "previousMonth" }, providers: [DayDisabledPipe], ngImport: i0, template: "<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-left\"\n size=\"sm\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-right\"\n size=\"sm\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n @for (day of weekDays; track day) {\n <div class=\"day\">\n {{ day | slice: 0 : 2 | titlecase }}\n </div>\n }\n </div>\n <div class=\"days-container\">\n @for (day of currentMonthDates$ | async; track day) {\n @if (dayTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n }\n @if (!dayTemplate) {\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled: TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n }\n }\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host .date-picker-container{display:flex;justify-content:center;align-items:center}:host .date-picker-container .date-picker{width:248px}:host .date-picker-container .date-picker .month-navigation{display:flex;justify-content:space-between;margin-bottom:24px}:host .date-picker-container .date-picker .month-navigation button:disabled{background:transparent}:host .date-picker-container .date-picker .month-navigation button:disabled ap-symbol{color:#d6dae0!important}:host .date-picker-container .date-picker .month-navigation button:disabled:hover{background:transparent!important}:host .date-picker-container .date-picker .month-navigation .left ap-symbol{margin-right:2px}:host .date-picker-container .date-picker .month-navigation .right ap-symbol{margin-left:2px}:host .date-picker-container .date-picker .month-navigation ap-symbol{display:grid;place-content:center}:host .date-picker-container .date-picker .month-navigation button:hover{background:#f5f5f7}:host .date-picker-container .date-picker .month-navigation span{font-style:normal;font-weight:700;font-size:16px;line-height:20px;text-align:center;color:#344563;align-items:center;display:flex}:host .date-picker-container .date-picker .week-header{display:flex;justify-content:space-between;margin-bottom:8px}:host .date-picker-container .date-picker .week-header .day{width:32px;text-align:center;font-weight:700;font-size:12px;line-height:15px;color:#aeb5c1}:host .date-picker-container .date-picker .days-container{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}:host .date-picker-container .date-picker .days-container .day{font-style:normal;font-weight:400;font-size:14px;line-height:128.7%;text-align:center;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100%;position:relative}:host .date-picker-container .date-picker .days-container .day:hover{cursor:pointer}:host .date-picker-container .date-picker .days-container .day:hover:not(.disabled):not(.selected){background:#f5f5f7}:host .date-picker-container .date-picker .days-container .day.today{border:1px #178dfe solid}:host .date-picker-container .date-picker .days-container .day.selected{background:#178dfe;color:#fff!important}:host .date-picker-container .date-picker .days-container .day.selected .bubble{background:#fff!important}:host .date-picker-container .date-picker .days-container .day.disabled{color:#aeb5c1}:host .date-picker-container .date-picker .days-container .day .bubble{width:4px;height:4px;border-radius:100%;bottom:3px;position:absolute;background:#178dfe}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconButtonComponent, selector: "ap-icon-button", inputs: ["ariaLabel", "name", "color", "disabled", "menuTrigger", "symbolId", "locked", "loading", "type"], outputs: ["onClick", "onFocus", "onBlur", "menuOpened", "menuClosed"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "pipe", type: DayDisabledPipe, name: "dayDisabled" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
224
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: NeoDatepickerComponent, deps: [{ token: i1.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
225
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: NeoDatepickerComponent, isStandalone: true, selector: "ap-neo-date-picker", inputs: { dayTemplate: "dayTemplate", locale: "locale", maxDate: "maxDate", minDate: "minDate", mode: "mode", selectedDates: "selectedDates", startsOn: "startsOn" }, outputs: { datesSelected: "datesSelected", nextMonth: "nextMonth", previousMonth: "previousMonth" }, providers: [DayDisabledPipe], ngImport: i0, template: "<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-left\"\n size=\"sm\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-right\"\n size=\"sm\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n @for (day of weekDays; track day) {\n <div class=\"day\">\n {{ day | slice: 0 : 2 | titlecase }}\n </div>\n }\n </div>\n <div class=\"days-container\">\n @for (day of currentMonthDates$ | async; track day) {\n @if (dayTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n }\n @if (!dayTemplate) {\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled: TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n }\n }\n </div>\n </div>\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host .date-picker-container{display:flex;justify-content:center;align-items:center}:host .date-picker-container .date-picker{width:248px}:host .date-picker-container .date-picker .month-navigation{display:flex;justify-content:space-between;margin-bottom:24px}:host .date-picker-container .date-picker .month-navigation button:disabled{background:transparent}:host .date-picker-container .date-picker .month-navigation button:disabled ap-symbol{color:#d6dae0!important}:host .date-picker-container .date-picker .month-navigation button:disabled:hover{background:transparent!important}:host .date-picker-container .date-picker .month-navigation .left ap-symbol{margin-right:2px}:host .date-picker-container .date-picker .month-navigation .right ap-symbol{margin-left:2px}:host .date-picker-container .date-picker .month-navigation ap-symbol{display:grid;place-content:center}:host .date-picker-container .date-picker .month-navigation button:hover{background:#f5f5f7}:host .date-picker-container .date-picker .month-navigation span{font-style:normal;font-weight:700;font-size:16px;line-height:20px;text-align:center;color:#344563;align-items:center;display:flex}:host .date-picker-container .date-picker .week-header{display:flex;justify-content:space-between;margin-bottom:8px}:host .date-picker-container .date-picker .week-header .day{width:32px;text-align:center;font-weight:700;font-size:12px;line-height:15px;color:#aeb5c1}:host .date-picker-container .date-picker .days-container{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}:host .date-picker-container .date-picker .days-container .day{font-style:normal;font-weight:400;font-size:14px;line-height:128.7%;text-align:center;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:100%;position:relative}:host .date-picker-container .date-picker .days-container .day:hover{cursor:pointer}:host .date-picker-container .date-picker .days-container .day:hover:not(.disabled):not(.selected){background:#f5f5f7}:host .date-picker-container .date-picker .days-container .day.today{border:1px #178dfe solid}:host .date-picker-container .date-picker .days-container .day.selected{background:#178dfe;color:#fff!important}:host .date-picker-container .date-picker .days-container .day.selected .bubble{background:#fff!important}:host .date-picker-container .date-picker .days-container .day.disabled{color:#aeb5c1}:host .date-picker-container .date-picker .days-container .day .bubble{width:4px;height:4px;border-radius:100%;bottom:3px;position:absolute;background:#178dfe}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconButtonComponent, selector: "ap-icon-button", inputs: ["ariaLabel", "name", "color", "disabled", "menuTrigger", "symbolId", "locked", "loading", "type"], outputs: ["onClick", "onFocus", "onBlur", "menuOpened", "menuClosed"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "pipe", type: DayDisabledPipe, name: "dayDisabled" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
226
226
  }
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: NeoDatepickerComponent, decorators: [{
227
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: NeoDatepickerComponent, decorators: [{
228
228
  type: Component,
229
229
  args: [{ selector: 'ap-neo-date-picker', changeDetection: ChangeDetectionStrategy.OnPush, providers: [DayDisabledPipe], imports: [
230
230
  SymbolComponent,
@@ -1 +1 @@
1
- {"version":3,"file":"agorapulse-ui-components-neo-datepicker.mjs","sources":["../../../libs/ui-components/neo-datepicker/src/day-disabled.pipe.ts","../../../libs/ui-components/neo-datepicker/src/neo-datepicker.component.ts","../../../libs/ui-components/neo-datepicker/src/neo-datepicker.component.html","../../../libs/ui-components/neo-datepicker/src/agorapulse-ui-components-neo-datepicker.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\nimport { DayDetail } from './day-detail.model';\n\n@Pipe({\n name: 'dayDisabled',\n pure: true,\n standalone: true,\n})\nexport class DayDisabledPipe implements PipeTransform {\n transform(day: DayDetail, todayTimestamp: number, minDateTimestamp?: number, maxDateTimestamp?: number): boolean {\n return (\n day.month !== 0 ||\n (day.timestamp < todayTimestamp && !minDateTimestamp) ||\n (!!minDateTimestamp && day.timestamp < minDateTimestamp) ||\n (!!maxDateTimestamp && day.timestamp > maxDateTimestamp)\n );\n }\n}\n","import { ButtonComponent } from '@agorapulse/ui-components/button';\nimport { IconButtonComponent } from '@agorapulse/ui-components/icon-button';\nimport { SymbolComponent, SymbolRegistry, apChevronLeft, apChevronRight } from '@agorapulse/ui-symbol';\nimport { AsyncPipe, NgTemplateOutlet, SlicePipe, TitleCasePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output, TemplateRef, inject } from '@angular/core';\nimport dayjs from 'dayjs';\nimport 'dayjs/locale/de';\nimport 'dayjs/locale/en';\nimport 'dayjs/locale/es';\nimport 'dayjs/locale/fr';\nimport 'dayjs/locale/pt';\nimport localeData from 'dayjs/plugin/localeData';\nimport { injectDestroy } from 'ngxtension/inject-destroy';\nimport { BehaviorSubject, filter } from 'rxjs';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { DayDetail } from './day-detail.model';\nimport { DayDisabledPipe } from './day-disabled.pipe';\n\nexport type NeoDatePickerMode = 'single' | 'multiple';\nexport type NeoDatePickerStartsOn = 'monday' | 'sunday';\nexport type NeoDatePickerLocale = 'en' | 'es' | 'fr' | 'pt' | 'de';\n\n@Component({\n selector: 'ap-neo-date-picker',\n styleUrls: ['neo-datepicker.component.scss'],\n templateUrl: 'neo-datepicker.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [DayDisabledPipe],\n imports: [\n SymbolComponent,\n TitleCasePipe,\n ButtonComponent,\n SlicePipe,\n NgTemplateOutlet,\n DayDisabledPipe,\n AsyncPipe,\n IconButtonComponent,\n ],\n})\nexport class NeoDatepickerComponent implements OnInit {\n readonly ONE_DAY: number = 60 * 60 * 24 * 1000;\n readonly TODAY_TIMESTAMP: number = Date.now() - (Date.now() % this.ONE_DAY) + new Date().getTimezoneOffset() * 1000 * 60;\n\n @Input() dayTemplate: TemplateRef<{ day: DayDetail }> | undefined = undefined;\n @Input() locale: NeoDatePickerLocale = 'en';\n\n private _maxDate: dayjs.Dayjs | undefined;\n\n @Input() set maxDate(maxDate: dayjs.Dayjs) {\n this._maxDate = maxDate;\n this.maxDateTimestamp = maxDate.toDate().getTime();\n }\n get maxDate(): dayjs.Dayjs | undefined {\n return this._maxDate;\n }\n\n private _minDate: dayjs.Dayjs | undefined;\n @Input() set minDate(minDate: dayjs.Dayjs) {\n this._minDate = minDate;\n this.minDateTimestamp = minDate.toDate().getTime();\n }\n get minDate(): dayjs.Dayjs | undefined {\n return this._minDate;\n }\n\n previousMonthAvailable: boolean = true;\n\n private _mode: NeoDatePickerMode = 'single';\n @Input() set mode(mode: NeoDatePickerMode) {\n this._mode = mode;\n if (this._mode === 'single') {\n this._selectedDates = this._selectedDates.slice(0, 1);\n this.selectedDaysTimestamp = new Set(Array.from(this.selectedDaysTimestamp).slice(0, 1));\n }\n }\n get mode(): NeoDatePickerMode {\n return this._mode;\n }\n\n private _selectedDates: dayjs.Dayjs[] = [];\n @Input() set selectedDates(dates: dayjs.Dayjs[]) {\n if (this._mode === 'single') {\n dates = dates.slice(0, 1);\n }\n this.selectedDaysTimestamp = new Set();\n this._selectedDates = dates;\n if (this._selectedDates.length) {\n this._selectedDates.forEach(day => {\n this.selectedDaysTimestamp.add(day.toDate().getTime());\n });\n }\n }\n\n get selectedDates(): dayjs.Dayjs[] {\n return this._selectedDates;\n }\n\n @Input() startsOn: NeoDatePickerStartsOn = 'monday';\n\n @Output() datesSelected: EventEmitter<dayjs.Dayjs[]> = new EventEmitter<dayjs.Dayjs[]>();\n @Output() nextMonth: EventEmitter<void> = new EventEmitter<void>();\n @Output() previousMonth: EventEmitter<void> = new EventEmitter<void>();\n\n currentYear!: number;\n currentMonth!: number;\n currentMonthDates$: BehaviorSubject<DayDetail[]> = new BehaviorSubject<DayDetail[]>([]);\n minDateTimestamp: number | undefined = undefined;\n maxDateTimestamp: number | undefined = undefined;\n months: string[] = [];\n selectedDaysTimestamp: Set<number> = new Set();\n weekDays: string[] = [];\n\n dayDisabledPipe: DayDisabledPipe = inject(DayDisabledPipe);\n\n private destroy$ = injectDestroy();\n\n constructor(public symbolRegistry: SymbolRegistry) {\n this.symbolRegistry.registerSymbols([apChevronLeft, apChevronRight]);\n }\n\n ngOnInit(): void {\n dayjs.extend(localeData);\n const date = new Date();\n this.currentYear = date.getFullYear();\n this.currentMonth = date.getMonth();\n if (this.locale) {\n dayjs.locale(this.locale);\n }\n this.months = dayjs.months();\n this.weekDays = [...dayjs.weekdays()];\n\n if (this.startsOn === 'monday') {\n const sunday = this.weekDays.slice(0, 1);\n this.weekDays.splice(0, 1);\n this.weekDays = this.weekDays.concat(sunday);\n }\n this.currentMonthDates$.next(this.getMonthDetails(this.currentYear, this.currentMonth));\n this.currentMonthDates$\n .pipe(\n distinctUntilChanged(),\n filter(() => !!this.minDateTimestamp),\n takeUntil(this.destroy$)\n )\n .subscribe(currentMonthDates => {\n const minDateInPreviousMonth = this.minDateTimestamp\n ? new Date(this.minDateTimestamp).getMonth() < this.currentMonth\n : undefined;\n this.previousMonthAvailable =\n !currentMonthDates.some(dayDetail => dayDetail.timestamp === this.minDateTimestamp) || !!minDateInPreviousMonth;\n });\n }\n\n getDayDetails(index: number, firstDay: number, month: number, numberOfDays: number, year: number): DayDetail {\n const date = index - firstDay;\n const day = index % 7;\n let prevMonth = month - 1;\n let prevYear = year;\n if (prevMonth < 0) {\n prevMonth = 11;\n prevYear--;\n }\n const prevMonthNumberOfDays = this.getNumberOfDays(prevYear, prevMonth);\n const _date = (date < 0 ? prevMonthNumberOfDays + date : date % numberOfDays) + 1;\n const _month = date < 0 ? -1 : date >= numberOfDays ? 1 : 0;\n const newDate = new Date(year, _month + month, _date);\n const timestamp = newDate.getTime();\n const dayString = this.weekDays[day];\n return {\n date: _date,\n day,\n month: _month,\n timestamp,\n dayString,\n dayjs: dayjs(newDate),\n };\n }\n\n getNumberOfDays(year: number, month: number): number {\n return 40 - new Date(year, month, 40).getDate();\n }\n\n getMonthDetails(year: number, month: number): DayDetail[] {\n let firstDay = new Date(year, month).getDay();\n if (this.startsOn === 'monday') {\n firstDay -= 1;\n }\n // If the first day is below 0 it means the sunday is the first day of the month so we need to show the last month\n if (firstDay < 0) {\n firstDay = 6;\n }\n const numberOfDays = this.getNumberOfDays(year, month);\n const monthArray = [];\n const rows = 6;\n let currentDay = null;\n let index = 0;\n const cols = 7;\n\n for (let row = 0; row < rows; row++) {\n for (let col = 0; col < cols; col++) {\n currentDay = this.getDayDetails(index, firstDay, month, numberOfDays, year);\n monthArray.push(currentDay);\n index++;\n }\n }\n return monthArray;\n }\n\n onPreviousMonth(): void {\n if (this.previousMonthAvailable) {\n this.previousMonth.emit();\n this.currentMonth -= 1;\n if (this.currentMonth === -1) {\n this.currentMonth = 11;\n this.currentYear -= 1;\n }\n this.currentMonthDates$.next(this.getMonthDetails(this.currentYear, this.currentMonth));\n }\n }\n\n onNextMonth(): void {\n this.nextMonth.emit();\n this.currentMonth += 1;\n if (this.currentMonth === 12) {\n this.currentMonth = 0;\n this.currentYear += 1;\n }\n this.currentMonthDates$.next(this.getMonthDetails(this.currentYear, this.currentMonth));\n }\n\n onSelectDay(dayDetail: DayDetail): void {\n const dayDisabled = this.dayDisabledPipe.transform(dayDetail, this.TODAY_TIMESTAMP, this.minDateTimestamp, this.maxDateTimestamp);\n if (!dayDisabled) {\n if (this.mode === 'single') {\n this.selectedDaysTimestamp.clear();\n }\n if (this.minDate && dayDetail.dayjs.isBefore(dayjs(this.minDate))) {\n return;\n }\n if (this.maxDate && dayDetail.dayjs.isAfter(dayjs(this.maxDate))) {\n return;\n }\n if (this.selectedDaysTimestamp.has(dayDetail.timestamp)) {\n this.selectedDaysTimestamp.delete(dayDetail.timestamp);\n } else {\n this.selectedDaysTimestamp.add(dayDetail.timestamp);\n }\n this.datesSelected.emit(Array.from(this.selectedDaysTimestamp).map(timestamp => dayjs(timestamp)));\n }\n }\n}\n","<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-left\"\n size=\"sm\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-right\"\n size=\"sm\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n @for (day of weekDays; track day) {\n <div class=\"day\">\n {{ day | slice: 0 : 2 | titlecase }}\n </div>\n }\n </div>\n <div class=\"days-container\">\n @for (day of currentMonthDates$ | async; track day) {\n @if (dayTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n }\n @if (!dayTemplate) {\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled: TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n }\n }\n </div>\n </div>\n</div>\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":"agorapulse-ui-components-neo-datepicker.mjs","sources":["../../../libs/ui-components/neo-datepicker/src/day-disabled.pipe.ts","../../../libs/ui-components/neo-datepicker/src/neo-datepicker.component.ts","../../../libs/ui-components/neo-datepicker/src/neo-datepicker.component.html","../../../libs/ui-components/neo-datepicker/src/agorapulse-ui-components-neo-datepicker.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\nimport { DayDetail } from './day-detail.model';\n\n@Pipe({\n name: 'dayDisabled',\n pure: true,\n standalone: true,\n})\nexport class DayDisabledPipe implements PipeTransform {\n transform(day: DayDetail, todayTimestamp: number, minDateTimestamp?: number, maxDateTimestamp?: number): boolean {\n return (\n day.month !== 0 ||\n (day.timestamp < todayTimestamp && !minDateTimestamp) ||\n (!!minDateTimestamp && day.timestamp < minDateTimestamp) ||\n (!!maxDateTimestamp && day.timestamp > maxDateTimestamp)\n );\n }\n}\n","import { ButtonComponent } from '@agorapulse/ui-components/button';\nimport { IconButtonComponent } from '@agorapulse/ui-components/icon-button';\nimport { SymbolComponent, SymbolRegistry, apChevronLeft, apChevronRight } from '@agorapulse/ui-symbol';\nimport { AsyncPipe, NgTemplateOutlet, SlicePipe, TitleCasePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output, TemplateRef, inject } from '@angular/core';\nimport dayjs from 'dayjs';\nimport 'dayjs/locale/de';\nimport 'dayjs/locale/en';\nimport 'dayjs/locale/es';\nimport 'dayjs/locale/fr';\nimport 'dayjs/locale/pt';\nimport localeData from 'dayjs/plugin/localeData';\nimport { injectDestroy } from 'ngxtension/inject-destroy';\nimport { BehaviorSubject, filter } from 'rxjs';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { DayDetail } from './day-detail.model';\nimport { DayDisabledPipe } from './day-disabled.pipe';\n\nexport type NeoDatePickerMode = 'single' | 'multiple';\nexport type NeoDatePickerStartsOn = 'monday' | 'sunday';\nexport type NeoDatePickerLocale = 'en' | 'es' | 'fr' | 'pt' | 'de';\n\n@Component({\n selector: 'ap-neo-date-picker',\n styleUrls: ['neo-datepicker.component.scss'],\n templateUrl: 'neo-datepicker.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [DayDisabledPipe],\n imports: [\n SymbolComponent,\n TitleCasePipe,\n ButtonComponent,\n SlicePipe,\n NgTemplateOutlet,\n DayDisabledPipe,\n AsyncPipe,\n IconButtonComponent,\n ],\n})\nexport class NeoDatepickerComponent implements OnInit {\n readonly ONE_DAY: number = 60 * 60 * 24 * 1000;\n readonly TODAY_TIMESTAMP: number = Date.now() - (Date.now() % this.ONE_DAY) + new Date().getTimezoneOffset() * 1000 * 60;\n\n @Input() dayTemplate: TemplateRef<{ day: DayDetail }> | undefined = undefined;\n @Input() locale: NeoDatePickerLocale = 'en';\n\n private _maxDate: dayjs.Dayjs | undefined;\n\n @Input() set maxDate(maxDate: dayjs.Dayjs) {\n this._maxDate = maxDate;\n this.maxDateTimestamp = maxDate.toDate().getTime();\n }\n get maxDate(): dayjs.Dayjs | undefined {\n return this._maxDate;\n }\n\n private _minDate: dayjs.Dayjs | undefined;\n @Input() set minDate(minDate: dayjs.Dayjs) {\n this._minDate = minDate;\n this.minDateTimestamp = minDate.toDate().getTime();\n }\n get minDate(): dayjs.Dayjs | undefined {\n return this._minDate;\n }\n\n previousMonthAvailable: boolean = true;\n\n private _mode: NeoDatePickerMode = 'single';\n @Input() set mode(mode: NeoDatePickerMode) {\n this._mode = mode;\n if (this._mode === 'single') {\n this._selectedDates = this._selectedDates.slice(0, 1);\n this.selectedDaysTimestamp = new Set(Array.from(this.selectedDaysTimestamp).slice(0, 1));\n }\n }\n get mode(): NeoDatePickerMode {\n return this._mode;\n }\n\n private _selectedDates: dayjs.Dayjs[] = [];\n @Input() set selectedDates(dates: dayjs.Dayjs[]) {\n if (this._mode === 'single') {\n dates = dates.slice(0, 1);\n }\n this.selectedDaysTimestamp = new Set();\n this._selectedDates = dates;\n if (this._selectedDates.length) {\n this._selectedDates.forEach(day => {\n this.selectedDaysTimestamp.add(day.toDate().getTime());\n });\n }\n }\n\n get selectedDates(): dayjs.Dayjs[] {\n return this._selectedDates;\n }\n\n @Input() startsOn: NeoDatePickerStartsOn = 'monday';\n\n @Output() datesSelected: EventEmitter<dayjs.Dayjs[]> = new EventEmitter<dayjs.Dayjs[]>();\n @Output() nextMonth: EventEmitter<void> = new EventEmitter<void>();\n @Output() previousMonth: EventEmitter<void> = new EventEmitter<void>();\n\n currentYear!: number;\n currentMonth!: number;\n currentMonthDates$: BehaviorSubject<DayDetail[]> = new BehaviorSubject<DayDetail[]>([]);\n minDateTimestamp: number | undefined = undefined;\n maxDateTimestamp: number | undefined = undefined;\n months: string[] = [];\n selectedDaysTimestamp: Set<number> = new Set();\n weekDays: string[] = [];\n\n dayDisabledPipe: DayDisabledPipe = inject(DayDisabledPipe);\n\n private destroy$ = injectDestroy();\n\n constructor(public symbolRegistry: SymbolRegistry) {\n this.symbolRegistry.registerSymbols([apChevronLeft, apChevronRight]);\n }\n\n ngOnInit(): void {\n dayjs.extend(localeData);\n const date = new Date();\n this.currentYear = date.getFullYear();\n this.currentMonth = date.getMonth();\n if (this.locale) {\n dayjs.locale(this.locale);\n }\n this.months = dayjs.months();\n this.weekDays = [...dayjs.weekdays()];\n\n if (this.startsOn === 'monday') {\n const sunday = this.weekDays.slice(0, 1);\n this.weekDays.splice(0, 1);\n this.weekDays = this.weekDays.concat(sunday);\n }\n this.currentMonthDates$.next(this.getMonthDetails(this.currentYear, this.currentMonth));\n this.currentMonthDates$\n .pipe(\n distinctUntilChanged(),\n filter(() => !!this.minDateTimestamp),\n takeUntil(this.destroy$)\n )\n .subscribe(currentMonthDates => {\n const minDateInPreviousMonth = this.minDateTimestamp\n ? new Date(this.minDateTimestamp).getMonth() < this.currentMonth\n : undefined;\n this.previousMonthAvailable =\n !currentMonthDates.some(dayDetail => dayDetail.timestamp === this.minDateTimestamp) || !!minDateInPreviousMonth;\n });\n }\n\n getDayDetails(index: number, firstDay: number, month: number, numberOfDays: number, year: number): DayDetail {\n const date = index - firstDay;\n const day = index % 7;\n let prevMonth = month - 1;\n let prevYear = year;\n if (prevMonth < 0) {\n prevMonth = 11;\n prevYear--;\n }\n const prevMonthNumberOfDays = this.getNumberOfDays(prevYear, prevMonth);\n const _date = (date < 0 ? prevMonthNumberOfDays + date : date % numberOfDays) + 1;\n const _month = date < 0 ? -1 : date >= numberOfDays ? 1 : 0;\n const newDate = new Date(year, _month + month, _date);\n const timestamp = newDate.getTime();\n const dayString = this.weekDays[day];\n return {\n date: _date,\n day,\n month: _month,\n timestamp,\n dayString,\n dayjs: dayjs(newDate),\n };\n }\n\n getNumberOfDays(year: number, month: number): number {\n return 40 - new Date(year, month, 40).getDate();\n }\n\n getMonthDetails(year: number, month: number): DayDetail[] {\n let firstDay = new Date(year, month).getDay();\n if (this.startsOn === 'monday') {\n firstDay -= 1;\n }\n // If the first day is below 0 it means the sunday is the first day of the month so we need to show the last month\n if (firstDay < 0) {\n firstDay = 6;\n }\n const numberOfDays = this.getNumberOfDays(year, month);\n const monthArray = [];\n const rows = 6;\n let currentDay = null;\n let index = 0;\n const cols = 7;\n\n for (let row = 0; row < rows; row++) {\n for (let col = 0; col < cols; col++) {\n currentDay = this.getDayDetails(index, firstDay, month, numberOfDays, year);\n monthArray.push(currentDay);\n index++;\n }\n }\n return monthArray;\n }\n\n onPreviousMonth(): void {\n if (this.previousMonthAvailable) {\n this.previousMonth.emit();\n this.currentMonth -= 1;\n if (this.currentMonth === -1) {\n this.currentMonth = 11;\n this.currentYear -= 1;\n }\n this.currentMonthDates$.next(this.getMonthDetails(this.currentYear, this.currentMonth));\n }\n }\n\n onNextMonth(): void {\n this.nextMonth.emit();\n this.currentMonth += 1;\n if (this.currentMonth === 12) {\n this.currentMonth = 0;\n this.currentYear += 1;\n }\n this.currentMonthDates$.next(this.getMonthDetails(this.currentYear, this.currentMonth));\n }\n\n onSelectDay(dayDetail: DayDetail): void {\n const dayDisabled = this.dayDisabledPipe.transform(dayDetail, this.TODAY_TIMESTAMP, this.minDateTimestamp, this.maxDateTimestamp);\n if (!dayDisabled) {\n if (this.mode === 'single') {\n this.selectedDaysTimestamp.clear();\n }\n if (this.minDate && dayDetail.dayjs.isBefore(dayjs(this.minDate))) {\n return;\n }\n if (this.maxDate && dayDetail.dayjs.isAfter(dayjs(this.maxDate))) {\n return;\n }\n if (this.selectedDaysTimestamp.has(dayDetail.timestamp)) {\n this.selectedDaysTimestamp.delete(dayDetail.timestamp);\n } else {\n this.selectedDaysTimestamp.add(dayDetail.timestamp);\n }\n this.datesSelected.emit(Array.from(this.selectedDaysTimestamp).map(timestamp => dayjs(timestamp)));\n }\n }\n}\n","<div class=\"date-picker-container\">\n <div class=\"date-picker\">\n <div class=\"month-navigation\">\n <ap-icon-button\n name=\"neo-date-picker-previous-month\"\n [disabled]=\"!previousMonthAvailable\"\n (click)=\"onPreviousMonth()\">\n <ap-symbol\n symbolId=\"arrow-left\"\n size=\"sm\" />\n </ap-icon-button>\n <span>{{ months[currentMonth] | titlecase }} {{ currentYear }}</span>\n <ap-icon-button\n name=\"neo-date-picker-next-month\"\n (click)=\"onNextMonth()\">\n <ap-symbol\n symbolId=\"arrow-right\"\n size=\"sm\" />\n </ap-icon-button>\n </div>\n <div class=\"week-header\">\n @for (day of weekDays; track day) {\n <div class=\"day\">\n {{ day | slice: 0 : 2 | titlecase }}\n </div>\n }\n </div>\n <div class=\"days-container\">\n @for (day of currentMonthDates$ | async; track day) {\n @if (dayTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"dayTemplate\"\n [ngTemplateOutletContext]=\"{ day: day }\" />\n }\n @if (!dayTemplate) {\n <div\n class=\"day\"\n [class.disabled]=\"day | dayDisabled: TODAY_TIMESTAMP : minDateTimestamp : maxDateTimestamp\"\n [class.today]=\"day.timestamp === TODAY_TIMESTAMP\"\n [class.selected]=\"selectedDaysTimestamp.has(day.timestamp)\"\n (click)=\"onSelectDay(day)\">\n <span>\n {{ day.date }}\n </span>\n </div>\n }\n }\n </div>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -4,10 +4,10 @@ import { Input, ChangeDetectionStrategy, Component } from '@angular/core';
4
4
 
5
5
  class NotificationComponent {
6
6
  type = 'info';
7
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: NotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.16", type: NotificationComponent, isStandalone: true, selector: "ap-notification", inputs: { type: "type" }, ngImport: i0, template: "<div\n class=\"main\"\n [ngClass]=\"{ warning: type === 'warning', error: type === 'error', success: type === 'success' }\">\n <span class=\"border\"></span>\n <span class=\"icon\">\n <ng-content select=\"[icon]\" />\n </span>\n <ng-content select=\"[text]\" />\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host{display:block}.main{display:flex;font-size:14px;line-height:17px;align-items:center;background:#e8f4ff;color:#178dfe;padding:8px 16px 8px 8px;border-radius:4px}.main .border{align-self:stretch;border:2px solid #178dfe;border-radius:4px;margin-right:8px}.main .icon{margin-right:8px}.main.warning{background-color:#fffde9;color:#858fa1}.main.warning .border{border-color:#ffe91f}.main.error{background-color:#fde7e7;color:#e81313}.main.error .border{border-color:#e81313}.main.success{background-color:#ecf7ed;color:#45b854}.main.success .border{border-color:#45b854}.main.full-width{width:100%}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: NotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: NotificationComponent, isStandalone: true, selector: "ap-notification", inputs: { type: "type" }, ngImport: i0, template: "<div\n class=\"main\"\n [ngClass]=\"{ warning: type === 'warning', error: type === 'error', success: type === 'success' }\">\n <span class=\"border\"></span>\n <span class=\"icon\">\n <ng-content select=\"[icon]\" />\n </span>\n <ng-content select=\"[text]\" />\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host{display:block}.main{display:flex;font-size:14px;line-height:17px;align-items:center;background:#e8f4ff;color:#178dfe;padding:8px 16px 8px 8px;border-radius:4px}.main .border{align-self:stretch;border:2px solid #178dfe;border-radius:4px;margin-right:8px}.main .icon{margin-right:8px}.main.warning{background-color:#fffde9;color:#858fa1}.main.warning .border{border-color:#ffe91f}.main.error{background-color:#fde7e7;color:#e81313}.main.error .border{border-color:#e81313}.main.success{background-color:#ecf7ed;color:#45b854}.main.success .border{border-color:#45b854}.main.full-width{width:100%}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: NotificationComponent, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: NotificationComponent, decorators: [{
11
11
  type: Component,
12
12
  args: [{ selector: 'ap-notification', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgClass], template: "<div\n class=\"main\"\n [ngClass]=\"{ warning: type === 'warning', error: type === 'error', success: type === 'success' }\">\n <span class=\"border\"></span>\n <span class=\"icon\">\n <ng-content select=\"[icon]\" />\n </span>\n <ng-content select=\"[text]\" />\n</div>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}:host{display:block}.main{display:flex;font-size:14px;line-height:17px;align-items:center;background:#e8f4ff;color:#178dfe;padding:8px 16px 8px 8px;border-radius:4px}.main .border{align-self:stretch;border:2px solid #178dfe;border-radius:4px;margin-right:8px}.main .icon{margin-right:8px}.main.warning{background-color:#fffde9;color:#858fa1}.main.warning .border{border-color:#ffe91f}.main.error{background-color:#fde7e7;color:#e81313}.main.error .border{border-color:#e81313}.main.success{background-color:#ecf7ed;color:#45b854}.main.success .border{border-color:#45b854}.main.full-width{width:100%}\n"] }]
13
13
  }], propDecorators: { type: [{
@@ -1 +1 @@
1
- {"version":3,"file":"agorapulse-ui-components-notification.mjs","sources":["../../../libs/ui-components/notification/src/notification.component.ts","../../../libs/ui-components/notification/src/notification.component.html","../../../libs/ui-components/notification/src/agorapulse-ui-components-notification.ts"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'ap-notification',\n templateUrl: './notification.component.html',\n styleUrls: ['./notification.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n})\nexport class NotificationComponent {\n @Input() type: 'info' | 'warning' | 'error' | 'success' = 'info';\n}\n","<div\n class=\"main\"\n [ngClass]=\"{ warning: type === 'warning', error: type === 'error', success: type === 'success' }\">\n <span class=\"border\"></span>\n <span class=\"icon\">\n <ng-content select=\"[icon]\" />\n </span>\n <ng-content select=\"[text]\" />\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;MAUa,qBAAqB,CAAA;IACrB,IAAI,GAA6C,MAAM;wGADvD,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVlC,0SASA,EAAA,MAAA,EAAA,CAAA,0oMAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDDc,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAER,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAPjC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,mBAGV,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,OAAO,CAAC,EAAA,QAAA,EAAA,0SAAA,EAAA,MAAA,EAAA,CAAA,0oMAAA,CAAA,EAAA;;sBAGjB;;;AEXL;;AAEG;;;;"}
1
+ {"version":3,"file":"agorapulse-ui-components-notification.mjs","sources":["../../../libs/ui-components/notification/src/notification.component.ts","../../../libs/ui-components/notification/src/notification.component.html","../../../libs/ui-components/notification/src/agorapulse-ui-components-notification.ts"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'ap-notification',\n templateUrl: './notification.component.html',\n styleUrls: ['./notification.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n})\nexport class NotificationComponent {\n @Input() type: 'info' | 'warning' | 'error' | 'success' = 'info';\n}\n","<div\n class=\"main\"\n [ngClass]=\"{ warning: type === 'warning', error: type === 'error', success: type === 'success' }\">\n <span class=\"border\"></span>\n <span class=\"icon\">\n <ng-content select=\"[icon]\" />\n </span>\n <ng-content select=\"[text]\" />\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;MAUa,qBAAqB,CAAA;IACrB,IAAI,GAA6C,MAAM;uGADvD,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVlC,0SASA,EAAA,MAAA,EAAA,CAAA,0oMAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDDc,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAER,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAPjC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,mBAGV,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,OAAO,CAAC,EAAA,QAAA,EAAA,0SAAA,EAAA,MAAA,EAAA,CAAA,0oMAAA,CAAA,EAAA;;sBAGjB;;;AEXL;;AAEG;;;;"}
@@ -31,10 +31,10 @@ class PaginatorButtonComponent {
31
31
  this.button.nativeElement.click();
32
32
  }
33
33
  }
34
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: PaginatorButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
35
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.16", type: PaginatorButtonComponent, isStandalone: true, selector: "ap-paginator-button", inputs: { ariaLabel: "ariaLabel", disabled: "disabled", pageIndex: "pageIndex", selectedPageIndex: "selectedPageIndex" }, outputs: { selectPage: "selectPage" }, host: { listeners: { "window:keyup.space": "onSpaceKeyUp($event)" } }, viewQueries: [{ propertyName: "button", first: true, predicate: ["button"], descendants: true }], ngImport: i0, template: "<button\n #button\n class=\"square-button\"\n role=\"button\"\n type=\"button\"\n [id]=\"'paginator-button-' + pageIndex\"\n [class.active]=\"selectedPageIndex === pageIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n (click)=\"onClickHandle(pageIndex)\"\n (blur)=\"onBlurHandle()\"\n (focus)=\"onFocusHandle()\">\n <span>\n {{ pageIndex + 1 }}\n </span>\n</button>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.square-button{width:36px;height:36px;max-width:36px;max-height:36px;min-width:36px;min-height:36px;border-radius:var(--ref-border-radius-sm);background:transparent;display:flex;align-items:center;justify-content:center;border:none;box-sizing:border-box}.square-button:hover{cursor:pointer}.square-button:hover:not(.active){background-color:var(--ref-color-electric-blue-10)}@media(hover:hover){.square-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}.square-button:active{background-color:var(--ref-color-electric-blue-20)!important}.square-button.active{background-color:var(--ref-color-electric-blue-100)}.square-button.active span{color:var(--ref-color-white)}.square-button span{color:var(--ref-color-electric-blue-100);font-family:var(--ref-font-family);font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: PaginatorButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
35
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: PaginatorButtonComponent, isStandalone: true, selector: "ap-paginator-button", inputs: { ariaLabel: "ariaLabel", disabled: "disabled", pageIndex: "pageIndex", selectedPageIndex: "selectedPageIndex" }, outputs: { selectPage: "selectPage" }, host: { listeners: { "window:keyup.space": "onSpaceKeyUp($event)" } }, viewQueries: [{ propertyName: "button", first: true, predicate: ["button"], descendants: true }], ngImport: i0, template: "<button\n #button\n class=\"square-button\"\n role=\"button\"\n type=\"button\"\n [id]=\"'paginator-button-' + pageIndex\"\n [class.active]=\"selectedPageIndex === pageIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n (click)=\"onClickHandle(pageIndex)\"\n (blur)=\"onBlurHandle()\"\n (focus)=\"onFocusHandle()\">\n <span>\n {{ pageIndex + 1 }}\n </span>\n</button>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.square-button{width:36px;height:36px;max-width:36px;max-height:36px;min-width:36px;min-height:36px;border-radius:var(--ref-border-radius-sm);background:transparent;display:flex;align-items:center;justify-content:center;border:none;box-sizing:border-box}.square-button:hover{cursor:pointer}.square-button:hover:not(.active){background-color:var(--ref-color-electric-blue-10)}@media(hover:hover){.square-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}.square-button:active{background-color:var(--ref-color-electric-blue-20)!important}.square-button.active{background-color:var(--ref-color-electric-blue-100)}.square-button.active span{color:var(--ref-color-white)}.square-button span{color:var(--ref-color-electric-blue-100);font-family:var(--ref-font-family);font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
36
36
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: PaginatorButtonComponent, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: PaginatorButtonComponent, decorators: [{
38
38
  type: Component,
39
39
  args: [{ selector: 'ap-paginator-button', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<button\n #button\n class=\"square-button\"\n role=\"button\"\n type=\"button\"\n [id]=\"'paginator-button-' + pageIndex\"\n [class.active]=\"selectedPageIndex === pageIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n (click)=\"onClickHandle(pageIndex)\"\n (blur)=\"onBlurHandle()\"\n (focus)=\"onFocusHandle()\">\n <span>\n {{ pageIndex + 1 }}\n </span>\n</button>\n", styles: ["[color=facebook]{color:#0866ff}[bgcolor=facebook],[hcolor=facebook]:hover{background-color:#0866ff}[border=facebook]{border:1px solid #0866ff}[color=google]{color:#4e85e8}[bgcolor=google],[hcolor=google]:hover{background-color:#4e85e8}[border=google]{border:1px solid #4e85e8}[color=instagram]{color:#e1306c}[bgcolor=instagram],[hcolor=instagram]:hover{background-color:#e1306c}[border=instagram]{border:1px solid #e1306c}[color=instagrammagenta]{color:#c13584}[bgcolor=instagrammagenta],[hcolor=instagrammagenta]:hover{background-color:#c13584}[border=instagrammagenta]{border:1px solid #c13584}[color=instagramblue]{color:#5851db}[bgcolor=instagramblue],[hcolor=instagramblue]:hover{background-color:#5851db}[border=instagramblue]{border:1px solid #5851db}[color=instagrampurple]{color:#833ab4}[bgcolor=instagrampurple],[hcolor=instagrampurple]:hover{background-color:#833ab4}[border=instagrampurple]{border:1px solid #833ab4}[color=instagramorange]{color:#f56040}[bgcolor=instagramorange],[hcolor=instagramorange]:hover{background-color:#f56040}[border=instagramorange]{border:1px solid #f56040}[color=instagramyellow]{color:#ffdc80}[bgcolor=instagramyellow],[hcolor=instagramyellow]:hover{background-color:#ffdc80}[border=instagramyellow]{border:1px solid #ffdc80}[color=linkedin]{color:#2c67bc}[bgcolor=linkedin],[hcolor=linkedin]:hover{background-color:#2c67bc}[border=linkedin]{border:1px solid #2c67bc}[color=twitter]{color:#55acee}[bgcolor=twitter],[hcolor=twitter]:hover{background-color:#55acee}[border=twitter]{border:1px solid #55acee}[color=youtube]{color:red}[bgcolor=youtube],[hcolor=youtube]:hover{background-color:red}[border=youtube]{border:1px solid #ff0000}[color=reddit]{color:#ff4500}[bgcolor=reddit],[hcolor=reddit]:hover{background-color:#ff4500}[border=reddit]{border:1px solid #ff4500}[color=blood-orange]{color:#ff4d00}[bgcolor=blood-orange],[hcolor=blood-orange]:hover{background-color:#ff4d00}[border=blood-orange]{border:1px solid #ff4d00}[color=pinkish-orange]{color:#ff7b49}[bgcolor=pinkish-orange],[hcolor=pinkish-orange]:hover{background-color:#ff7b49}[border=pinkish-orange]{border:1px solid #ff7b49}[color=charcoal-grey]{color:#2a2f34}[bgcolor=charcoal-grey],[hcolor=charcoal-grey]:hover{background-color:#2a2f34}[border=charcoal-grey]{border:1px solid #2a2f34}[color=azure]{color:#00aeef}[bgcolor=azure],[hcolor=azure]:hover{background-color:#00aeef}[border=azure]{border:1px solid #00aeef}[color=light-azure]{color:#eaf5fd}[bgcolor=light-azure],[hcolor=light-azure]:hover{background-color:#eaf5fd}[border=light-azure]{border:1px solid #eaf5fd}[color=blue-grey]{color:#8d98a9}[bgcolor=blue-grey],[hcolor=blue-grey]:hover{background-color:#8d98a9}[border=blue-grey]{border:1px solid #8d98a9}[color=silver]{color:#ced0da}[bgcolor=silver],[hcolor=silver]:hover{background-color:#ced0da}[border=silver]{border:1px solid #ced0da}[color=pale-grey]{color:#dfe3e9}[bgcolor=pale-grey],[hcolor=pale-grey]:hover{background-color:#dfe3e9}[border=pale-grey]{border:1px solid #dfe3e9}[color=grey-white]{color:#f5f7f8}[bgcolor=grey-white],[hcolor=grey-white]:hover{background-color:#f5f7f8}[border=grey-white]{border:1px solid #f5f7f8}[color=cool-grey]{color:#b4bbc6}[bgcolor=cool-grey],[hcolor=cool-grey]:hover{background-color:#b4bbc6}[border=cool-grey]{border:1px solid #b4bbc6}[color=black]{color:#344563}[bgcolor=black],[hcolor=black]:hover{background-color:#344563}[border=black]{border:1px solid #344563}[color=grey-blue]{color:#68768c}[bgcolor=grey-blue],[hcolor=grey-blue]:hover{background-color:#68768c}[border=grey-blue]{border:1px solid #68768c}[color=strawberry]{color:#f4282d}[bgcolor=strawberry],[hcolor=strawberry]:hover{background-color:#f4282d}[border=strawberry]{border:1px solid #f4282d}[color=light-strawberry]{color:#f8eded}[bgcolor=light-strawberry],[hcolor=light-strawberry]:hover{background-color:#f8eded}[border=light-strawberry]{border:1px solid #f8eded}[color=white]{color:#fff}[bgcolor=white],[hcolor=white]:hover{background-color:#fff}[border=white]{border:1px solid #ffffff}[color=cool-green]{color:#33c15d}[bgcolor=cool-green],[hcolor=cool-green]:hover{background-color:#33c15d}[border=cool-green]{border:1px solid #33c15d}[color=light-green]{color:#ebfaef}[bgcolor=light-green],[hcolor=light-green]:hover{background-color:#ebfaef}[border=light-green]{border:1px solid #ebfaef}[color=transparent]{color:transparent}[bgcolor=transparent],[hcolor=transparent]:hover{background-color:transparent}[border=transparent]{border:1px solid transparent}[color=c0]{color:#a566a5}[bgcolor=c0],[hcolor=c0]:hover{background-color:#a566a5}[border=c0]{border:1px solid #a566a5}[color=c1]{color:#c7ab82}[bgcolor=c1],[hcolor=c1]:hover{background-color:#c7ab82}[border=c1]{border:1px solid #c7ab82}[color=c2]{color:#f2713c}[bgcolor=c2],[hcolor=c2]:hover{background-color:#f2713c}[border=c2]{border:1px solid #f2713c}[color=c3]{color:#ffd006}[bgcolor=c3],[hcolor=c3]:hover{background-color:#ffd006}[border=c3]{border:1px solid #ffd006}[color=c4]{color:#94c5aa}[bgcolor=c4],[hcolor=c4]:hover{background-color:#94c5aa}[border=c4]{border:1px solid #94c5aa}[color=c5]{color:#2a9d8f}[bgcolor=c5],[hcolor=c5]:hover{background-color:#2a9d8f}[border=c5]{border:1px solid #2a9d8f}[color=c6]{color:#78acd8}[bgcolor=c6],[hcolor=c6]:hover{background-color:#78acd8}[border=c6]{border:1px solid #78acd8}[color=c7]{color:#525a9e}[bgcolor=c7],[hcolor=c7]:hover{background-color:#525a9e}[border=c7]{border:1px solid #525a9e}[color=c8]{color:#6a2459}[bgcolor=c8],[hcolor=c8]:hover{background-color:#6a2459}[border=c8]{border:1px solid #6a2459}[color=c9]{color:#74729e}[bgcolor=c9],[hcolor=c9]:hover{background-color:#74729e}[border=c9]{border:1px solid #74729e}.square-button{width:36px;height:36px;max-width:36px;max-height:36px;min-width:36px;min-height:36px;border-radius:var(--ref-border-radius-sm);background:transparent;display:flex;align-items:center;justify-content:center;border:none;box-sizing:border-box}.square-button:hover{cursor:pointer}.square-button:hover:not(.active){background-color:var(--ref-color-electric-blue-10)}@media(hover:hover){.square-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}.square-button:active{background-color:var(--ref-color-electric-blue-20)!important}.square-button.active{background-color:var(--ref-color-electric-blue-100)}.square-button.active span{color:var(--ref-color-white)}.square-button span{color:var(--ref-color-electric-blue-100);font-family:var(--ref-font-family);font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm)}\n"] }]
40
40
  }], propDecorators: { button: [{
@@ -134,10 +134,10 @@ class PaginatorComponent {
134
134
  this._currentPageIndex.next(pageIndex);
135
135
  this.currentPageIndexChange.emit(pageIndex);
136
136
  }
137
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: PaginatorComponent, deps: [{ token: i1.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
138
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.16", type: PaginatorComponent, isStandalone: true, selector: "ap-paginator", inputs: { currentPageIndex: "currentPageIndex", displayGoTo: "displayGoTo", edgeSize: "edgeSize", goToLabel: "goToLabel", itemCount: "itemCount", itemCountPerPage: "itemCountPerPage", middleSize: "middleSize" }, outputs: { currentPageIndexChange: "currentPageIndexChange" }, host: { listeners: { "keydown.enter": "onEnterKeydownPressed()" } }, ngImport: i0, template: "<div class=\"item-index-overview\">\n {{ currentPageIndex * itemCountPerPage + 1 }}\n - {{ lastPageDisplayed ? itemCount : (currentPageIndex + 1) * itemCountPerPage }} of {{ itemCount }}\n</div>\n\n<div class=\"pages\">\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Previous Page button\"\n [disabled]=\"firstPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex - 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-left\" />\n </button>\n @if (pageCount > edgeSize + 1) {\n @if (currentPageIndex >= edgeSize - 1) {\n @if (currentPageIndex <= pageCount - edgeSize) {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(middleSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"currentPageIndex + i - (middleSize - 1) / 2\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n } @else {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"pageCount - edgeSize + i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n } @else {\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n } @else {\n @for (dummy of [].constructor(pageCount); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Next Page button\"\n [disabled]=\"lastPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex + 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-right\" />\n </button>\n</div>\n<div class=\"go-to\">\n @if (displayGoTo) {\n <span>{{ goToLabel }}</span>\n }\n @if (displayGoTo) {\n <input\n type=\"number\"\n [(ngModel)]=\"pageInput\" />\n }\n</div>\n", styles: ["ap-paginator{display:flex;align-items:center;gap:var(--ref-spacing-lg);width:100%;justify-content:space-between;--paginator-button-height: 36px}ap-paginator .item-index-overview{font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60);white-space:nowrap}ap-paginator .navigation-button{display:grid;place-content:center;height:var(--paginator-button-height);width:var(--paginator-button-height);min-height:var(--paginator-button-height);min-width:var(--paginator-button-height);max-height:var(--paginator-button-height);max-width:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);background:transparent;border:none}ap-paginator .navigation-button ap-symbol{color:var(--ref-color-electric-blue-100)}ap-paginator .navigation-button:disabled{pointer-events:none}ap-paginator .navigation-button:disabled ap-symbol{color:var(--ref-color-grey-40)}ap-paginator .navigation-button:not(:disabled){cursor:pointer}ap-paginator .navigation-button:hover:not(:disabled){background:var(--ref-color-electric-blue-10)}ap-paginator .navigation-button:active{background:var(--ref-color-electric-blue-20)}@media(hover:hover){ap-paginator .navigation-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}ap-paginator .pages{display:flex;justify-self:center;color:var(--ref-color-electric-blue-100);gap:var(--ref-spacing-xxxs)}ap-paginator .pages ap-paginator-button,ap-paginator .pages button.mat-flat-button{vertical-align:middle}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]){color:var(--ref-color-electric-blue-100)}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]):hover{background-color:var(--ref-color-electric-blue-10)}ap-paginator .pages .ellipsis{display:inline-block;width:var(--paginator-button-height);line-height:var(--paginator-button-height);text-align:center;vertical-align:bottom}ap-paginator .go-to{display:flex;align-items:center;gap:var(--ref-spacing-xs)}ap-paginator .go-to span{font-weight:var(--ref-font-weight-standard);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60)}ap-paginator .go-to input{box-sizing:border-box;background:var(--ref-color-white);width:48px;height:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);border:1px solid var(--ref-color-grey-20);padding:var(--ref-spacing-xs) var(--ref-spacing-sm)}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }, { kind: "component", type: PaginatorButtonComponent, selector: "ap-paginator-button", inputs: ["ariaLabel", "disabled", "pageIndex", "selectedPageIndex"], outputs: ["selectPage"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
137
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: PaginatorComponent, deps: [{ token: i1.SymbolRegistry }], target: i0.ɵɵFactoryTarget.Component });
138
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: PaginatorComponent, isStandalone: true, selector: "ap-paginator", inputs: { currentPageIndex: "currentPageIndex", displayGoTo: "displayGoTo", edgeSize: "edgeSize", goToLabel: "goToLabel", itemCount: "itemCount", itemCountPerPage: "itemCountPerPage", middleSize: "middleSize" }, outputs: { currentPageIndexChange: "currentPageIndexChange" }, host: { listeners: { "keydown.enter": "onEnterKeydownPressed()" } }, ngImport: i0, template: "<div class=\"item-index-overview\">\n {{ currentPageIndex * itemCountPerPage + 1 }}\n - {{ lastPageDisplayed ? itemCount : (currentPageIndex + 1) * itemCountPerPage }} of {{ itemCount }}\n</div>\n\n<div class=\"pages\">\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Previous Page button\"\n [disabled]=\"firstPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex - 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-left\" />\n </button>\n @if (pageCount > edgeSize + 1) {\n @if (currentPageIndex >= edgeSize - 1) {\n @if (currentPageIndex <= pageCount - edgeSize) {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(middleSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"currentPageIndex + i - (middleSize - 1) / 2\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n } @else {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"pageCount - edgeSize + i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n } @else {\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n } @else {\n @for (dummy of [].constructor(pageCount); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Next Page button\"\n [disabled]=\"lastPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex + 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-right\" />\n </button>\n</div>\n<div class=\"go-to\">\n @if (displayGoTo) {\n <span>{{ goToLabel }}</span>\n }\n @if (displayGoTo) {\n <input\n type=\"number\"\n [(ngModel)]=\"pageInput\" />\n }\n</div>\n", styles: ["ap-paginator{display:flex;align-items:center;gap:var(--ref-spacing-lg);width:100%;justify-content:space-between;--paginator-button-height: 36px}ap-paginator .item-index-overview{font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60);white-space:nowrap}ap-paginator .navigation-button{display:grid;place-content:center;height:var(--paginator-button-height);width:var(--paginator-button-height);min-height:var(--paginator-button-height);min-width:var(--paginator-button-height);max-height:var(--paginator-button-height);max-width:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);background:transparent;border:none}ap-paginator .navigation-button ap-symbol{color:var(--ref-color-electric-blue-100)}ap-paginator .navigation-button:disabled{pointer-events:none}ap-paginator .navigation-button:disabled ap-symbol{color:var(--ref-color-grey-40)}ap-paginator .navigation-button:not(:disabled){cursor:pointer}ap-paginator .navigation-button:hover:not(:disabled){background:var(--ref-color-electric-blue-10)}ap-paginator .navigation-button:active{background:var(--ref-color-electric-blue-20)}@media(hover:hover){ap-paginator .navigation-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}ap-paginator .pages{display:flex;justify-self:center;color:var(--ref-color-electric-blue-100);gap:var(--ref-spacing-xxxs)}ap-paginator .pages ap-paginator-button,ap-paginator .pages button.mat-flat-button{vertical-align:middle}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]){color:var(--ref-color-electric-blue-100)}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]):hover{background-color:var(--ref-color-electric-blue-10)}ap-paginator .pages .ellipsis{display:inline-block;width:var(--paginator-button-height);line-height:var(--paginator-button-height);text-align:center;vertical-align:bottom}ap-paginator .go-to{display:flex;align-items:center;gap:var(--ref-spacing-xs)}ap-paginator .go-to span{font-weight:var(--ref-font-weight-standard);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60)}ap-paginator .go-to input{box-sizing:border-box;background:var(--ref-color-white);width:48px;height:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);border:1px solid var(--ref-color-grey-20);padding:var(--ref-spacing-xs) var(--ref-spacing-sm)}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["symbolId", "color", "size"], outputs: ["sizeChange"] }, { kind: "component", type: PaginatorButtonComponent, selector: "ap-paginator-button", inputs: ["ariaLabel", "disabled", "pageIndex", "selectedPageIndex"], outputs: ["selectPage"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number]:not([ngNoCva])[formControlName],input[type=number]:not([ngNoCva])[formControl],input[type=number]:not([ngNoCva])[ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
139
139
  }
140
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: PaginatorComponent, decorators: [{
140
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: PaginatorComponent, decorators: [{
141
141
  type: Component,
142
142
  args: [{ selector: 'ap-paginator', changeDetection: ChangeDetectionStrategy.OnPush, imports: [SymbolComponent, PaginatorButtonComponent, ReactiveFormsModule, FormsModule], encapsulation: ViewEncapsulation.None, template: "<div class=\"item-index-overview\">\n {{ currentPageIndex * itemCountPerPage + 1 }}\n - {{ lastPageDisplayed ? itemCount : (currentPageIndex + 1) * itemCountPerPage }} of {{ itemCount }}\n</div>\n\n<div class=\"pages\">\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Previous Page button\"\n [disabled]=\"firstPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex - 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-left\" />\n </button>\n @if (pageCount > edgeSize + 1) {\n @if (currentPageIndex >= edgeSize - 1) {\n @if (currentPageIndex <= pageCount - edgeSize) {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(middleSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"currentPageIndex + i - (middleSize - 1) / 2\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n } @else {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"pageCount - edgeSize + i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n } @else {\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n } @else {\n @for (dummy of [].constructor(pageCount); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Next Page button\"\n [disabled]=\"lastPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex + 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-right\" />\n </button>\n</div>\n<div class=\"go-to\">\n @if (displayGoTo) {\n <span>{{ goToLabel }}</span>\n }\n @if (displayGoTo) {\n <input\n type=\"number\"\n [(ngModel)]=\"pageInput\" />\n }\n</div>\n", styles: ["ap-paginator{display:flex;align-items:center;gap:var(--ref-spacing-lg);width:100%;justify-content:space-between;--paginator-button-height: 36px}ap-paginator .item-index-overview{font-weight:var(--ref-font-weight-regular);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60);white-space:nowrap}ap-paginator .navigation-button{display:grid;place-content:center;height:var(--paginator-button-height);width:var(--paginator-button-height);min-height:var(--paginator-button-height);min-width:var(--paginator-button-height);max-height:var(--paginator-button-height);max-width:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);background:transparent;border:none}ap-paginator .navigation-button ap-symbol{color:var(--ref-color-electric-blue-100)}ap-paginator .navigation-button:disabled{pointer-events:none}ap-paginator .navigation-button:disabled ap-symbol{color:var(--ref-color-grey-40)}ap-paginator .navigation-button:not(:disabled){cursor:pointer}ap-paginator .navigation-button:hover:not(:disabled){background:var(--ref-color-electric-blue-10)}ap-paginator .navigation-button:active{background:var(--ref-color-electric-blue-20)}@media(hover:hover){ap-paginator .navigation-button:focus:not(.disabled):not(:active){outline:2px solid var(--ref-color-electric-blue-100);outline-offset:1px}}ap-paginator .pages{display:flex;justify-self:center;color:var(--ref-color-electric-blue-100);gap:var(--ref-spacing-xxxs)}ap-paginator .pages ap-paginator-button,ap-paginator .pages button.mat-flat-button{vertical-align:middle}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]){color:var(--ref-color-electric-blue-100)}ap-paginator .pages button.mat-flat-button:not(.mat-accent):not([disabled]):hover{background-color:var(--ref-color-electric-blue-10)}ap-paginator .pages .ellipsis{display:inline-block;width:var(--paginator-button-height);line-height:var(--paginator-button-height);text-align:center;vertical-align:bottom}ap-paginator .go-to{display:flex;align-items:center;gap:var(--ref-spacing-xs)}ap-paginator .go-to span{font-weight:var(--ref-font-weight-standard);font-size:var(--ref-font-size-sm);line-height:var(--ref-line-height-sm);color:var(--ref-color-grey-60)}ap-paginator .go-to input{box-sizing:border-box;background:var(--ref-color-white);width:48px;height:var(--paginator-button-height);border-radius:var(--ref-border-radius-sm);border:1px solid var(--ref-color-grey-20);padding:var(--ref-spacing-xs) var(--ref-spacing-sm)}\n"] }]
143
143
  }], ctorParameters: () => [{ type: i1.SymbolRegistry }], propDecorators: { currentPageIndex: [{
@@ -1 +1 @@
1
- {"version":3,"file":"agorapulse-ui-components-paginator.mjs","sources":["../../../libs/ui-components/paginator/src/paginator-button/paginator-button.component.ts","../../../libs/ui-components/paginator/src/paginator-button/paginator-button.component.html","../../../libs/ui-components/paginator/src/paginator.component.ts","../../../libs/ui-components/paginator/src/paginator.component.html","../../../libs/ui-components/paginator/src/agorapulse-ui-components-paginator.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'ap-paginator-button',\n templateUrl: './paginator-button.component.html',\n styleUrls: ['./paginator-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class PaginatorButtonComponent {\n @ViewChild('button') button!: ElementRef<HTMLButtonElement>;\n\n @Input() ariaLabel: string = '';\n @Input() disabled = false;\n @Input() pageIndex = 0;\n @Input() selectedPageIndex = 0;\n\n @Output() selectPage = new EventEmitter<number>();\n\n focused: boolean = false;\n\n onClickHandle(pageIndex: number): void {\n this.button.nativeElement.blur();\n this.selectPage.emit(pageIndex);\n }\n\n onBlurHandle() {\n this.focused = false;\n }\n\n onFocusHandle() {\n this.focused = true;\n }\n\n @HostListener('window:keyup.space', ['$event'])\n onSpaceKeyUp(event: Event) {\n if (this.focused) {\n event.preventDefault();\n console.log('this.button.nativeElement', this.button.nativeElement);\n this.button.nativeElement.click();\n }\n }\n}\n","<button\n #button\n class=\"square-button\"\n role=\"button\"\n type=\"button\"\n [id]=\"'paginator-button-' + pageIndex\"\n [class.active]=\"selectedPageIndex === pageIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n (click)=\"onClickHandle(pageIndex)\"\n (blur)=\"onBlurHandle()\"\n (focus)=\"onFocusHandle()\">\n <span>\n {{ pageIndex + 1 }}\n </span>\n</button>\n","import { SymbolComponent, SymbolRegistry, apArrowLeft, apArrowRight } from '@agorapulse/ui-symbol';\n\nimport { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, OnDestroy, Output, ViewEncapsulation } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { BehaviorSubject, Subject, combineLatest, distinctUntilChanged, takeUntil } from 'rxjs';\nimport { PaginatorButtonComponent } from './paginator-button/paginator-button.component';\n\n@Component({\n selector: 'ap-paginator',\n templateUrl: './paginator.component.html',\n styleUrls: ['./paginator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SymbolComponent, PaginatorButtonComponent, ReactiveFormsModule, FormsModule],\n encapsulation: ViewEncapsulation.None,\n})\nexport class PaginatorComponent implements OnDestroy {\n readonly DEFAULT_MIDDLE_SIZE = 3;\n readonly DEFAULT_ITEM_COUNT = 0;\n readonly DEFAULT_ITEM_COUNT_PER_PAGE = 10;\n readonly DEFAULT_CURRENT_PAGE_INDEX = 0;\n readonly DEFAULT_EDGE_SIZE = 5;\n\n @Input() set currentPageIndex(value: number) {\n this._currentPageIndex.next(value ?? this.DEFAULT_CURRENT_PAGE_INDEX);\n }\n\n get currentPageIndex(): number {\n return this._currentPageIndex.getValue();\n }\n\n @Input() displayGoTo = false;\n @Input() edgeSize: number = this.DEFAULT_EDGE_SIZE;\n @Input() goToLabel: string = 'Go to';\n @Input() set itemCount(value: number) {\n this._itemCount.next(value ?? this.DEFAULT_ITEM_COUNT);\n }\n\n get itemCount(): number {\n return this._itemCount.getValue();\n }\n @Input() set itemCountPerPage(value: number) {\n this._itemCountPerPage.next(value ?? this.DEFAULT_ITEM_COUNT_PER_PAGE);\n }\n\n get itemCountPerPage(): number {\n return this._itemCountPerPage.getValue();\n }\n\n private _middleSize!: number;\n @Input() set middleSize(value: number) {\n // make sure middle size is an odd number\n if (value && value % 2 === 0) {\n value++;\n }\n this._middleSize = value ?? this.DEFAULT_MIDDLE_SIZE;\n }\n\n get middleSize(): number {\n return this._middleSize;\n }\n\n @Output() currentPageIndexChange = new EventEmitter<number>();\n\n pageInput: string = '';\n pageCount = 0;\n firstPageDisplayed = true;\n lastPageDisplayed = true;\n private destroy$: Subject<void> = new Subject<void>();\n\n private _itemCount: BehaviorSubject<number> = new BehaviorSubject<number>(this.DEFAULT_ITEM_COUNT);\n private _itemCountPerPage: BehaviorSubject<number> = new BehaviorSubject<number>(this.DEFAULT_ITEM_COUNT_PER_PAGE);\n private _currentPageIndex: BehaviorSubject<number> = new BehaviorSubject<number>(this.DEFAULT_CURRENT_PAGE_INDEX);\n\n constructor(public symbolRegistry: SymbolRegistry) {\n this.symbolRegistry.registerSymbols([apArrowLeft, apArrowRight]);\n combineLatest([this._itemCount, this._itemCountPerPage, this._currentPageIndex])\n .pipe(\n distinctUntilChanged(\n (\n [previousItemCount, previousItemCountPerPage, previousCurrentPageIndex],\n [itemCount, itemCountPerPage, currentPageIndex]\n ) => {\n return (\n previousItemCount === itemCount &&\n previousItemCountPerPage === itemCountPerPage &&\n previousCurrentPageIndex === currentPageIndex\n );\n }\n ),\n takeUntil(this.destroy$)\n )\n .subscribe(([itemCount, itemCountPerPage, currentPageIndex]) => {\n this.pageCount = Math.ceil(itemCount / itemCountPerPage);\n // make sure page index is between min and max page index\n this._currentPageIndex.next(Math.max(0, Math.min(this.pageCount - 1, currentPageIndex)));\n this.firstPageDisplayed = this.currentPageIndex === 0;\n this.lastPageDisplayed = this.currentPageIndex === this.pageCount - 1;\n });\n }\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n @HostListener('keydown.enter')\n onEnterKeydownPressed() {\n if (this.pageInput && !isNaN(+this.pageInput) && +this.pageInput > 0 && +this.pageInput <= this.pageCount) {\n this.onSelectPage(+this.pageInput - 1);\n }\n this.pageInput = '';\n }\n\n onSelectPage(pageIndex: number): void {\n this._currentPageIndex.next(pageIndex);\n this.currentPageIndexChange.emit(pageIndex);\n }\n}\n","<div class=\"item-index-overview\">\n {{ currentPageIndex * itemCountPerPage + 1 }}\n - {{ lastPageDisplayed ? itemCount : (currentPageIndex + 1) * itemCountPerPage }} of {{ itemCount }}\n</div>\n\n<div class=\"pages\">\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Previous Page button\"\n [disabled]=\"firstPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex - 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-left\" />\n </button>\n @if (pageCount > edgeSize + 1) {\n @if (currentPageIndex >= edgeSize - 1) {\n @if (currentPageIndex <= pageCount - edgeSize) {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(middleSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"currentPageIndex + i - (middleSize - 1) / 2\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n } @else {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"pageCount - edgeSize + i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n } @else {\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n } @else {\n @for (dummy of [].constructor(pageCount); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Next Page button\"\n [disabled]=\"lastPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex + 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-right\" />\n </button>\n</div>\n<div class=\"go-to\">\n @if (displayGoTo) {\n <span>{{ goToLabel }}</span>\n }\n @if (displayGoTo) {\n <input\n type=\"number\"\n [(ngModel)]=\"pageInput\" />\n }\n</div>\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":"agorapulse-ui-components-paginator.mjs","sources":["../../../libs/ui-components/paginator/src/paginator-button/paginator-button.component.ts","../../../libs/ui-components/paginator/src/paginator-button/paginator-button.component.html","../../../libs/ui-components/paginator/src/paginator.component.ts","../../../libs/ui-components/paginator/src/paginator.component.html","../../../libs/ui-components/paginator/src/agorapulse-ui-components-paginator.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'ap-paginator-button',\n templateUrl: './paginator-button.component.html',\n styleUrls: ['./paginator-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n})\nexport class PaginatorButtonComponent {\n @ViewChild('button') button!: ElementRef<HTMLButtonElement>;\n\n @Input() ariaLabel: string = '';\n @Input() disabled = false;\n @Input() pageIndex = 0;\n @Input() selectedPageIndex = 0;\n\n @Output() selectPage = new EventEmitter<number>();\n\n focused: boolean = false;\n\n onClickHandle(pageIndex: number): void {\n this.button.nativeElement.blur();\n this.selectPage.emit(pageIndex);\n }\n\n onBlurHandle() {\n this.focused = false;\n }\n\n onFocusHandle() {\n this.focused = true;\n }\n\n @HostListener('window:keyup.space', ['$event'])\n onSpaceKeyUp(event: Event) {\n if (this.focused) {\n event.preventDefault();\n console.log('this.button.nativeElement', this.button.nativeElement);\n this.button.nativeElement.click();\n }\n }\n}\n","<button\n #button\n class=\"square-button\"\n role=\"button\"\n type=\"button\"\n [id]=\"'paginator-button-' + pageIndex\"\n [class.active]=\"selectedPageIndex === pageIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n (click)=\"onClickHandle(pageIndex)\"\n (blur)=\"onBlurHandle()\"\n (focus)=\"onFocusHandle()\">\n <span>\n {{ pageIndex + 1 }}\n </span>\n</button>\n","import { SymbolComponent, SymbolRegistry, apArrowLeft, apArrowRight } from '@agorapulse/ui-symbol';\n\nimport { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input, OnDestroy, Output, ViewEncapsulation } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { BehaviorSubject, Subject, combineLatest, distinctUntilChanged, takeUntil } from 'rxjs';\nimport { PaginatorButtonComponent } from './paginator-button/paginator-button.component';\n\n@Component({\n selector: 'ap-paginator',\n templateUrl: './paginator.component.html',\n styleUrls: ['./paginator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SymbolComponent, PaginatorButtonComponent, ReactiveFormsModule, FormsModule],\n encapsulation: ViewEncapsulation.None,\n})\nexport class PaginatorComponent implements OnDestroy {\n readonly DEFAULT_MIDDLE_SIZE = 3;\n readonly DEFAULT_ITEM_COUNT = 0;\n readonly DEFAULT_ITEM_COUNT_PER_PAGE = 10;\n readonly DEFAULT_CURRENT_PAGE_INDEX = 0;\n readonly DEFAULT_EDGE_SIZE = 5;\n\n @Input() set currentPageIndex(value: number) {\n this._currentPageIndex.next(value ?? this.DEFAULT_CURRENT_PAGE_INDEX);\n }\n\n get currentPageIndex(): number {\n return this._currentPageIndex.getValue();\n }\n\n @Input() displayGoTo = false;\n @Input() edgeSize: number = this.DEFAULT_EDGE_SIZE;\n @Input() goToLabel: string = 'Go to';\n @Input() set itemCount(value: number) {\n this._itemCount.next(value ?? this.DEFAULT_ITEM_COUNT);\n }\n\n get itemCount(): number {\n return this._itemCount.getValue();\n }\n @Input() set itemCountPerPage(value: number) {\n this._itemCountPerPage.next(value ?? this.DEFAULT_ITEM_COUNT_PER_PAGE);\n }\n\n get itemCountPerPage(): number {\n return this._itemCountPerPage.getValue();\n }\n\n private _middleSize!: number;\n @Input() set middleSize(value: number) {\n // make sure middle size is an odd number\n if (value && value % 2 === 0) {\n value++;\n }\n this._middleSize = value ?? this.DEFAULT_MIDDLE_SIZE;\n }\n\n get middleSize(): number {\n return this._middleSize;\n }\n\n @Output() currentPageIndexChange = new EventEmitter<number>();\n\n pageInput: string = '';\n pageCount = 0;\n firstPageDisplayed = true;\n lastPageDisplayed = true;\n private destroy$: Subject<void> = new Subject<void>();\n\n private _itemCount: BehaviorSubject<number> = new BehaviorSubject<number>(this.DEFAULT_ITEM_COUNT);\n private _itemCountPerPage: BehaviorSubject<number> = new BehaviorSubject<number>(this.DEFAULT_ITEM_COUNT_PER_PAGE);\n private _currentPageIndex: BehaviorSubject<number> = new BehaviorSubject<number>(this.DEFAULT_CURRENT_PAGE_INDEX);\n\n constructor(public symbolRegistry: SymbolRegistry) {\n this.symbolRegistry.registerSymbols([apArrowLeft, apArrowRight]);\n combineLatest([this._itemCount, this._itemCountPerPage, this._currentPageIndex])\n .pipe(\n distinctUntilChanged(\n (\n [previousItemCount, previousItemCountPerPage, previousCurrentPageIndex],\n [itemCount, itemCountPerPage, currentPageIndex]\n ) => {\n return (\n previousItemCount === itemCount &&\n previousItemCountPerPage === itemCountPerPage &&\n previousCurrentPageIndex === currentPageIndex\n );\n }\n ),\n takeUntil(this.destroy$)\n )\n .subscribe(([itemCount, itemCountPerPage, currentPageIndex]) => {\n this.pageCount = Math.ceil(itemCount / itemCountPerPage);\n // make sure page index is between min and max page index\n this._currentPageIndex.next(Math.max(0, Math.min(this.pageCount - 1, currentPageIndex)));\n this.firstPageDisplayed = this.currentPageIndex === 0;\n this.lastPageDisplayed = this.currentPageIndex === this.pageCount - 1;\n });\n }\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n @HostListener('keydown.enter')\n onEnterKeydownPressed() {\n if (this.pageInput && !isNaN(+this.pageInput) && +this.pageInput > 0 && +this.pageInput <= this.pageCount) {\n this.onSelectPage(+this.pageInput - 1);\n }\n this.pageInput = '';\n }\n\n onSelectPage(pageIndex: number): void {\n this._currentPageIndex.next(pageIndex);\n this.currentPageIndexChange.emit(pageIndex);\n }\n}\n","<div class=\"item-index-overview\">\n {{ currentPageIndex * itemCountPerPage + 1 }}\n - {{ lastPageDisplayed ? itemCount : (currentPageIndex + 1) * itemCountPerPage }} of {{ itemCount }}\n</div>\n\n<div class=\"pages\">\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Previous Page button\"\n [disabled]=\"firstPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex - 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-left\" />\n </button>\n @if (pageCount > edgeSize + 1) {\n @if (currentPageIndex >= edgeSize - 1) {\n @if (currentPageIndex <= pageCount - edgeSize) {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(middleSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"currentPageIndex + i - (middleSize - 1) / 2\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n } @else {\n <ap-paginator-button\n [pageIndex]=\"0\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n <span class=\"ellipsis\">...</span>\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"pageCount - edgeSize + i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n } @else {\n @for (dummy of [].constructor(edgeSize); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n <span class=\"ellipsis\">...</span>\n <ap-paginator-button\n [pageIndex]=\"pageCount - 1\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n } @else {\n @for (dummy of [].constructor(pageCount); track dummy; let i = $index) {\n <ap-paginator-button\n [pageIndex]=\"i\"\n [selectedPageIndex]=\"currentPageIndex\"\n (selectPage)=\"onSelectPage($event)\" />\n }\n }\n <button\n class=\"navigation-button\"\n ariaLabel=\"Select Next Page button\"\n [disabled]=\"lastPageDisplayed\"\n (click)=\"onSelectPage(currentPageIndex + 1)\">\n <ap-symbol size=\"sm\" symbolId=\"arrow-right\" />\n </button>\n</div>\n<div class=\"go-to\">\n @if (displayGoTo) {\n <span>{{ goToLabel }}</span>\n }\n @if (displayGoTo) {\n <input\n type=\"number\"\n [(ngModel)]=\"pageInput\" />\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;MASa,wBAAwB,CAAA;AACZ,IAAA,MAAM;IAElB,SAAS,GAAW,EAAE;IACtB,QAAQ,GAAG,KAAK;IAChB,SAAS,GAAG,CAAC;IACb,iBAAiB,GAAG,CAAC;AAEpB,IAAA,UAAU,GAAG,IAAI,YAAY,EAAU;IAEjD,OAAO,GAAY,KAAK;AAExB,IAAA,aAAa,CAAC,SAAiB,EAAA;AAC3B,QAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;IACnC;IAEA,YAAY,GAAA;AACR,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;IACxB;IAEA,aAAa,GAAA;AACT,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI;IACvB;AAGA,IAAA,YAAY,CAAC,KAAY,EAAA;AACrB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,KAAK,CAAC,cAAc,EAAE;YACtB,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;AACnE,YAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE;QACrC;IACJ;uGAhCS,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,yZCTrC,8ZAeA,EAAA,MAAA,EAAA,CAAA,+9MAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FDNa,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAPpC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,EAAA,eAAA,EAGd,uBAAuB,CAAC,MAAM,cACnC,IAAI,EAAA,QAAA,EAAA,8ZAAA,EAAA,MAAA,EAAA,CAAA,+9MAAA,CAAA,EAAA;;sBAGf,SAAS;uBAAC,QAAQ;;sBAElB;;sBACA;;sBACA;;sBACA;;sBAEA;;sBAiBA,YAAY;uBAAC,oBAAoB,EAAE,CAAC,QAAQ,CAAC;;;MEnBrC,kBAAkB,CAAA;AA0DR,IAAA,cAAA;IAzDV,mBAAmB,GAAG,CAAC;IACvB,kBAAkB,GAAG,CAAC;IACtB,2BAA2B,GAAG,EAAE;IAChC,0BAA0B,GAAG,CAAC;IAC9B,iBAAiB,GAAG,CAAC;IAE9B,IAAa,gBAAgB,CAAC,KAAa,EAAA;QACvC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,0BAA0B,CAAC;IACzE;AAEA,IAAA,IAAI,gBAAgB,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE;IAC5C;IAES,WAAW,GAAG,KAAK;AACnB,IAAA,QAAQ,GAAW,IAAI,CAAC,iBAAiB;IACzC,SAAS,GAAW,OAAO;IACpC,IAAa,SAAS,CAAC,KAAa,EAAA;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC;IAC1D;AAEA,IAAA,IAAI,SAAS,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;IACrC;IACA,IAAa,gBAAgB,CAAC,KAAa,EAAA;QACvC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,2BAA2B,CAAC;IAC1E;AAEA,IAAA,IAAI,gBAAgB,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE;IAC5C;AAEQ,IAAA,WAAW;IACnB,IAAa,UAAU,CAAC,KAAa,EAAA;;QAEjC,IAAI,KAAK,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,EAAE;AAC1B,YAAA,KAAK,EAAE;QACX;QACA,IAAI,CAAC,WAAW,GAAG,KAAK,IAAI,IAAI,CAAC,mBAAmB;IACxD;AAEA,IAAA,IAAI,UAAU,GAAA;QACV,OAAO,IAAI,CAAC,WAAW;IAC3B;AAEU,IAAA,sBAAsB,GAAG,IAAI,YAAY,EAAU;IAE7D,SAAS,GAAW,EAAE;IACtB,SAAS,GAAG,CAAC;IACb,kBAAkB,GAAG,IAAI;IACzB,iBAAiB,GAAG,IAAI;AAChB,IAAA,QAAQ,GAAkB,IAAI,OAAO,EAAQ;IAE7C,UAAU,GAA4B,IAAI,eAAe,CAAS,IAAI,CAAC,kBAAkB,CAAC;IAC1F,iBAAiB,GAA4B,IAAI,eAAe,CAAS,IAAI,CAAC,2BAA2B,CAAC;IAC1G,iBAAiB,GAA4B,IAAI,eAAe,CAAS,IAAI,CAAC,0BAA0B,CAAC;AAEjH,IAAA,WAAA,CAAmB,cAA8B,EAAA;QAA9B,IAAA,CAAA,cAAc,GAAd,cAAc;QAC7B,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAChE,QAAA,aAAa,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAAC;aAC1E,IAAI,CACD,oBAAoB,CAChB,CACI,CAAC,iBAAiB,EAAE,wBAAwB,EAAE,wBAAwB,CAAC,EACvE,CAAC,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,KAC/C;YACA,QACI,iBAAiB,KAAK,SAAS;AAC/B,gBAAA,wBAAwB,KAAK,gBAAgB;gBAC7C,wBAAwB,KAAK,gBAAgB;QAErD,CAAC,CACJ,EACD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;aAE3B,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,KAAI;YAC3D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,gBAAgB,CAAC;;YAExD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;YACxF,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,KAAK,CAAC;AACrD,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,SAAS,GAAG,CAAC;AACzE,QAAA,CAAC,CAAC;IACV;IACA,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;IAC5B;IAGA,qBAAqB,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE;YACvG,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QAC1C;AACA,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACvB;AAEA,IAAA,YAAY,CAAC,SAAiB,EAAA;AAC1B,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC;AACtC,QAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC;IAC/C;uGApGS,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECf/B,u+GAoFA,EAAA,MAAA,EAAA,CAAA,69EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDxEc,eAAe,sHAAE,wBAAwB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,mBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,wSAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,8IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAG5E,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,mBAGP,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,eAAe,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,WAAW,CAAC,EAAA,aAAA,EACvE,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,u+GAAA,EAAA,MAAA,EAAA,CAAA,69EAAA,CAAA,EAAA;;sBASpC;;sBAQA;;sBACA;;sBACA;;sBACA;;sBAOA;;sBASA;;sBAYA;;sBA2CA,YAAY;uBAAC,eAAe;;;AExGjC;;AAEG;;;;"}