primeng 17.0.0 → 17.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/autocomplete/autocomplete.d.ts +3 -2
  2. package/calendar/calendar.d.ts +4 -2
  3. package/calendar/calendar.interface.d.ts +12 -0
  4. package/cascadeselect/cascadeselect.d.ts +1 -1
  5. package/confirmdialog/confirmdialog.d.ts +1 -0
  6. package/confirmdialog/confirmdialog.interface.d.ts +9 -1
  7. package/confirmpopup/confirmpopup.d.ts +2 -0
  8. package/confirmpopup/confirmpopup.interface.d.ts +12 -0
  9. package/dialog/dialog.d.ts +7 -1
  10. package/dynamicdialog/dialogservice.d.ts +6 -0
  11. package/dynamicdialog/dynamicdialog-config.d.ts +41 -0
  12. package/dynamicdialog/dynamicdialog.d.ts +13 -0
  13. package/esm2022/autocomplete/autocomplete.mjs +13 -6
  14. package/esm2022/avatar/avatar.mjs +3 -3
  15. package/esm2022/calendar/calendar.interface.mjs +1 -1
  16. package/esm2022/calendar/calendar.mjs +47 -8
  17. package/esm2022/cascadeselect/cascadeselect.mjs +2 -2
  18. package/esm2022/confirmdialog/confirmdialog.interface.mjs +1 -1
  19. package/esm2022/confirmdialog/confirmdialog.mjs +139 -125
  20. package/esm2022/confirmpopup/confirmpopup.interface.mjs +1 -1
  21. package/esm2022/confirmpopup/confirmpopup.mjs +93 -65
  22. package/esm2022/dialog/dialog.mjs +123 -98
  23. package/esm2022/dropdown/dropdown.mjs +3 -2
  24. package/esm2022/dynamicdialog/dialogservice.mjs +9 -1
  25. package/esm2022/dynamicdialog/dynamicdialog-config.mjs +11 -1
  26. package/esm2022/dynamicdialog/dynamicdialog.mjs +109 -30
  27. package/esm2022/fileupload/fileupload.mjs +4 -4
  28. package/esm2022/inputswitch/inputswitch.mjs +2 -2
  29. package/esm2022/listbox/listbox.mjs +5 -5
  30. package/esm2022/menu/menu.mjs +11 -14
  31. package/esm2022/multiselect/multiselect.mjs +15 -22
  32. package/esm2022/overlaypanel/overlaypanel.mjs +28 -8
  33. package/esm2022/panelmenu/panelmenu.mjs +41 -17
  34. package/esm2022/picklist/picklist.mjs +7 -5
  35. package/esm2022/progressbar/progressbar.mjs +29 -6
  36. package/esm2022/scroller/scroller.mjs +3 -3
  37. package/esm2022/sidebar/sidebar.interface.mjs +1 -1
  38. package/esm2022/sidebar/sidebar.mjs +69 -55
  39. package/esm2022/table/table.mjs +6 -6
  40. package/esm2022/tieredmenu/tieredmenu.interface.mjs +1 -1
  41. package/esm2022/tieredmenu/tieredmenu.mjs +3 -3
  42. package/esm2022/toast/toast.interface.mjs +1 -1
  43. package/esm2022/toast/toast.mjs +84 -65
  44. package/esm2022/togglebutton/togglebutton.interface.mjs +1 -1
  45. package/esm2022/togglebutton/togglebutton.mjs +34 -8
  46. package/fesm2022/primeng-autocomplete.mjs +12 -5
  47. package/fesm2022/primeng-autocomplete.mjs.map +1 -1
  48. package/fesm2022/primeng-avatar.mjs +2 -2
  49. package/fesm2022/primeng-avatar.mjs.map +1 -1
  50. package/fesm2022/primeng-calendar.mjs +46 -7
  51. package/fesm2022/primeng-calendar.mjs.map +1 -1
  52. package/fesm2022/primeng-cascadeselect.mjs +1 -1
  53. package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
  54. package/fesm2022/primeng-confirmdialog.mjs +138 -124
  55. package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
  56. package/fesm2022/primeng-confirmpopup.mjs +92 -64
  57. package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
  58. package/fesm2022/primeng-dialog.mjs +122 -97
  59. package/fesm2022/primeng-dialog.mjs.map +1 -1
  60. package/fesm2022/primeng-dropdown.mjs +2 -1
  61. package/fesm2022/primeng-dropdown.mjs.map +1 -1
  62. package/fesm2022/primeng-dynamicdialog.mjs +126 -29
  63. package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
  64. package/fesm2022/primeng-fileupload.mjs +3 -3
  65. package/fesm2022/primeng-fileupload.mjs.map +1 -1
  66. package/fesm2022/primeng-inputswitch.mjs +2 -2
  67. package/fesm2022/primeng-inputswitch.mjs.map +1 -1
  68. package/fesm2022/primeng-listbox.mjs +4 -4
  69. package/fesm2022/primeng-listbox.mjs.map +1 -1
  70. package/fesm2022/primeng-menu.mjs +10 -13
  71. package/fesm2022/primeng-menu.mjs.map +1 -1
  72. package/fesm2022/primeng-multiselect.mjs +14 -21
  73. package/fesm2022/primeng-multiselect.mjs.map +1 -1
  74. package/fesm2022/primeng-overlaypanel.mjs +27 -7
  75. package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
  76. package/fesm2022/primeng-panelmenu.mjs +40 -16
  77. package/fesm2022/primeng-panelmenu.mjs.map +1 -1
  78. package/fesm2022/primeng-picklist.mjs +6 -4
  79. package/fesm2022/primeng-picklist.mjs.map +1 -1
  80. package/fesm2022/primeng-progressbar.mjs +28 -5
  81. package/fesm2022/primeng-progressbar.mjs.map +1 -1
  82. package/fesm2022/primeng-scroller.mjs +2 -2
  83. package/fesm2022/primeng-scroller.mjs.map +1 -1
  84. package/fesm2022/primeng-sidebar.mjs +68 -54
  85. package/fesm2022/primeng-sidebar.mjs.map +1 -1
  86. package/fesm2022/primeng-table.mjs +5 -5
  87. package/fesm2022/primeng-table.mjs.map +1 -1
  88. package/fesm2022/primeng-tieredmenu.mjs +2 -2
  89. package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
  90. package/fesm2022/primeng-toast.mjs +83 -64
  91. package/fesm2022/primeng-toast.mjs.map +1 -1
  92. package/fesm2022/primeng-togglebutton.mjs +33 -7
  93. package/fesm2022/primeng-togglebutton.mjs.map +1 -1
  94. package/fileupload/fileupload.d.ts +3 -3
  95. package/menu/menu.d.ts +2 -3
  96. package/multiselect/multiselect.d.ts +1 -4
  97. package/overlaypanel/overlaypanel.d.ts +12 -2
  98. package/package.json +256 -256
  99. package/panelmenu/panelmenu.d.ts +11 -6
  100. package/progressbar/progressbar.d.ts +7 -1
  101. package/resources/components/inputswitch/inputswitch.css +1 -0
  102. package/resources/themes/arya-blue/theme.css +9 -1
  103. package/resources/themes/arya-green/theme.css +9 -1
  104. package/resources/themes/arya-orange/theme.css +9 -1
  105. package/resources/themes/arya-purple/theme.css +9 -1
  106. package/resources/themes/bootstrap4-dark-blue/theme.css +9 -1
  107. package/resources/themes/bootstrap4-dark-purple/theme.css +9 -1
  108. package/resources/themes/bootstrap4-light-blue/theme.css +9 -1
  109. package/resources/themes/bootstrap4-light-purple/theme.css +9 -1
  110. package/resources/themes/fluent-light/theme.css +9 -1
  111. package/resources/themes/lara-dark-blue/theme.css +9 -1
  112. package/resources/themes/lara-dark-indigo/theme.css +9 -1
  113. package/resources/themes/lara-dark-purple/theme.css +9 -1
  114. package/resources/themes/lara-dark-teal/theme.css +9 -1
  115. package/resources/themes/lara-light-blue/theme.css +9 -1
  116. package/resources/themes/lara-light-indigo/theme.css +9 -1
  117. package/resources/themes/lara-light-purple/theme.css +9 -1
  118. package/resources/themes/lara-light-teal/theme.css +9 -1
  119. package/resources/themes/luna-amber/theme.css +9 -1
  120. package/resources/themes/luna-blue/theme.css +9 -1
  121. package/resources/themes/luna-green/theme.css +9 -1
  122. package/resources/themes/luna-pink/theme.css +9 -1
  123. package/resources/themes/md-dark-deeppurple/theme.css +9 -1
  124. package/resources/themes/md-dark-indigo/theme.css +9 -1
  125. package/resources/themes/md-light-deeppurple/theme.css +9 -1
  126. package/resources/themes/md-light-indigo/theme.css +9 -1
  127. package/resources/themes/mdc-dark-deeppurple/theme.css +9 -1
  128. package/resources/themes/mdc-dark-indigo/theme.css +9 -1
  129. package/resources/themes/mdc-light-deeppurple/theme.css +9 -1
  130. package/resources/themes/mdc-light-indigo/theme.css +9 -1
  131. package/resources/themes/mira/theme.css +9 -1
  132. package/resources/themes/nano/theme.css +9 -1
  133. package/resources/themes/nova/theme.css +9 -1
  134. package/resources/themes/nova-accent/theme.css +9 -1
  135. package/resources/themes/nova-alt/theme.css +9 -1
  136. package/resources/themes/rhea/theme.css +9 -1
  137. package/resources/themes/saga-blue/theme.css +9 -1
  138. package/resources/themes/saga-green/theme.css +9 -1
  139. package/resources/themes/saga-orange/theme.css +9 -1
  140. package/resources/themes/saga-purple/theme.css +9 -1
  141. package/resources/themes/soho-dark/theme.css +9 -1
  142. package/resources/themes/soho-light/theme.css +9 -1
  143. package/resources/themes/tailwind-light/theme.css +9 -1
  144. package/resources/themes/vela-blue/theme.css +9 -1
  145. package/resources/themes/vela-green/theme.css +9 -1
  146. package/resources/themes/vela-orange/theme.css +9 -1
  147. package/resources/themes/vela-purple/theme.css +9 -1
  148. package/resources/themes/viva-dark/theme.css +9 -1
  149. package/resources/themes/viva-light/theme.css +9 -1
  150. package/sidebar/sidebar.d.ts +1 -0
  151. package/sidebar/sidebar.interface.d.ts +4 -0
  152. package/tieredmenu/tieredmenu.interface.d.ts +16 -0
  153. package/toast/toast.d.ts +3 -1
  154. package/toast/toast.interface.d.ts +11 -0
  155. package/togglebutton/togglebutton.d.ts +9 -3
  156. package/togglebutton/togglebutton.interface.d.ts +19 -0
  157. package/resources/components/tristatecheckbox/tristatecheckbox.css +0 -5
@@ -259,6 +259,9 @@ class ConfirmDialog {
259
259
  case 'accepticon':
260
260
  this.acceptIconTemplate = item.template;
261
261
  break;
262
+ case 'headless':
263
+ this.headlessTemplate = item.template;
264
+ break;
262
265
  }
263
266
  });
264
267
  }
@@ -268,6 +271,7 @@ class ConfirmDialog {
268
271
  acceptIconTemplate;
269
272
  messageTemplate;
270
273
  iconTemplate;
274
+ headlessTemplate;
271
275
  confirmation;
272
276
  _visible;
273
277
  _style;
@@ -577,71 +581,76 @@ class ConfirmDialog {
577
581
  [attr.aria-labelledby]="getAriaLabelledBy()"
578
582
  [attr.aria-modal]="true"
579
583
  >
580
- <div class="p-dialog-header" *ngIf="headerTemplate">
581
- <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
582
- </div>
583
- <div class="p-dialog-header" *ngIf="!headerTemplate">
584
- <span class="p-dialog-title" [id]="getAriaLabelledBy()" *ngIf="option('header')">{{ option('header') }}</span>
585
- <div class="p-dialog-header-icons">
586
- <button *ngIf="closable" type="button" role="button" [attr.aria-label]="closeAriaLabel" [ngClass]="{ 'p-dialog-header-icon p-dialog-header-close p-link': true }" (click)="close($event)" (keydown.enter)="close($event)">
587
- <TimesIcon />
588
- </button>
584
+ <ng-container *ngIf="headlessTemplate; else notHeadless">
585
+ <ng-container *ngTemplateOutlet="headlessTemplate; context: { $implicit: confirmation }"></ng-container>
586
+ </ng-container>
587
+ <ng-template #notHeadless>
588
+ <div class="p-dialog-header" *ngIf="headerTemplate">
589
+ <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
589
590
  </div>
590
- </div>
591
- <div #content class="p-dialog-content">
592
- <i [ngClass]="'p-confirm-dialog-icon'" [class]="option('icon')" *ngIf="!iconTemplate && option('icon')"></i>
593
- <ng-container *ngIf="iconTemplate">
594
- <ng-template *ngTemplateOutlet="iconTemplate"></ng-template>
595
- </ng-container>
596
- <span class="p-confirm-dialog-message" *ngIf="!messageTemplate" [innerHTML]="option('message')"></span>
597
- <ng-container *ngIf="messageTemplate">
598
- <ng-template *ngTemplateOutlet="messageTemplate"></ng-template>
599
- </ng-container>
600
- </div>
601
- <div class="p-dialog-footer" *ngIf="footer || footerTemplate">
602
- <ng-content select="p-footer"></ng-content>
603
- <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
604
- </div>
605
- <div class="p-dialog-footer" *ngIf="!footer && !footerTemplate">
606
- <button
607
- type="button"
608
- pRipple
609
- pButton
610
- [label]="rejectButtonLabel"
611
- (click)="reject()"
612
- [ngClass]="'p-confirm-dialog-reject'"
613
- [class]="option('rejectButtonStyleClass')"
614
- *ngIf="option('rejectVisible')"
615
- [attr.aria-label]="rejectAriaLabel"
616
- >
617
- <ng-container *ngIf="!rejectIconTemplate">
618
- <i *ngIf="option('rejectIcon')" [class]="option('rejectIcon')"></i>
619
- <TimesIcon *ngIf="!option('rejectIcon')" [styleClass]="'p-button-icon-left'" />
591
+ <div class="p-dialog-header" *ngIf="!headerTemplate">
592
+ <span class="p-dialog-title" [id]="getAriaLabelledBy()" *ngIf="option('header')">{{ option('header') }}</span>
593
+ <div class="p-dialog-header-icons">
594
+ <button *ngIf="closable" type="button" role="button" [attr.aria-label]="closeAriaLabel" [ngClass]="{ 'p-dialog-header-icon p-dialog-header-close p-link': true }" (click)="close($event)" (keydown.enter)="close($event)">
595
+ <TimesIcon />
596
+ </button>
597
+ </div>
598
+ </div>
599
+ <div #content class="p-dialog-content">
600
+ <i [ngClass]="'p-confirm-dialog-icon'" [class]="option('icon')" *ngIf="!iconTemplate && option('icon')"></i>
601
+ <ng-container *ngIf="iconTemplate">
602
+ <ng-template *ngTemplateOutlet="iconTemplate"></ng-template>
620
603
  </ng-container>
621
- <span *ngIf="rejectIconTemplate" class="p-button-icon-left">
622
- <ng-template *ngTemplateOutlet="rejectIconTemplate"></ng-template>
623
- </span>
624
- </button>
625
- <button
626
- type="button"
627
- pRipple
628
- pButton
629
- [label]="acceptButtonLabel"
630
- (click)="accept()"
631
- [ngClass]="'p-confirm-dialog-accept'"
632
- [class]="option('acceptButtonStyleClass')"
633
- *ngIf="option('acceptVisible')"
634
- [attr.aria-label]="acceptAriaLabel"
635
- >
636
- <ng-container *ngIf="!acceptIconTemplate">
637
- <i *ngIf="option('acceptIcon')" [class]="option('acceptIcon')"></i>
638
- <CheckIcon *ngIf="!option('acceptIcon')" [styleClass]="'p-button-icon-left'" />
604
+ <span class="p-confirm-dialog-message" *ngIf="!messageTemplate" [innerHTML]="option('message')"></span>
605
+ <ng-container *ngIf="messageTemplate">
606
+ <ng-template *ngTemplateOutlet="messageTemplate; context: { $implicit: confirmation }"></ng-template>
639
607
  </ng-container>
640
- <span *ngIf="acceptIconTemplate" class="p-button-icon-left">
641
- <ng-template *ngTemplateOutlet="acceptIconTemplate"></ng-template>
642
- </span>
643
- </button>
644
- </div>
608
+ </div>
609
+ <div class="p-dialog-footer" *ngIf="footer || footerTemplate">
610
+ <ng-content select="p-footer"></ng-content>
611
+ <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
612
+ </div>
613
+ <div class="p-dialog-footer" *ngIf="!footer && !footerTemplate">
614
+ <button
615
+ type="button"
616
+ pRipple
617
+ pButton
618
+ [label]="rejectButtonLabel"
619
+ (click)="reject()"
620
+ [ngClass]="'p-confirm-dialog-reject'"
621
+ [class]="option('rejectButtonStyleClass')"
622
+ *ngIf="option('rejectVisible')"
623
+ [attr.aria-label]="rejectAriaLabel"
624
+ >
625
+ <ng-container *ngIf="!rejectIconTemplate">
626
+ <i *ngIf="option('rejectIcon')" [class]="option('rejectIcon')"></i>
627
+ <TimesIcon *ngIf="!option('rejectIcon')" [styleClass]="'p-button-icon-left'" />
628
+ </ng-container>
629
+ <span *ngIf="rejectIconTemplate" class="p-button-icon-left">
630
+ <ng-template *ngTemplateOutlet="rejectIconTemplate"></ng-template>
631
+ </span>
632
+ </button>
633
+ <button
634
+ type="button"
635
+ pRipple
636
+ pButton
637
+ [label]="acceptButtonLabel"
638
+ (click)="accept()"
639
+ [ngClass]="'p-confirm-dialog-accept'"
640
+ [class]="option('acceptButtonStyleClass')"
641
+ *ngIf="option('acceptVisible')"
642
+ [attr.aria-label]="acceptAriaLabel"
643
+ >
644
+ <ng-container *ngIf="!acceptIconTemplate">
645
+ <i *ngIf="option('acceptIcon')" [class]="option('acceptIcon')"></i>
646
+ <CheckIcon *ngIf="!option('acceptIcon')" [styleClass]="'p-button-icon-left'" />
647
+ </ng-container>
648
+ <span *ngIf="acceptIconTemplate" class="p-button-icon-left">
649
+ <ng-template *ngTemplateOutlet="acceptIconTemplate"></ng-template>
650
+ </span>
651
+ </button>
652
+ </div>
653
+ </ng-template>
645
654
  </div>
646
655
  </div>
647
656
  `, isInline: true, styles: ["@layer primeng{.p-dialog-mask{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;pointer-events:none}.p-dialog-mask.p-component-overlay{pointer-events:auto}.p-dialog{display:flex;flex-direction:column;pointer-events:auto;max-height:90%;transform:scale(1);position:relative}.p-dialog-content{overflow-y:auto;flex-grow:1}.p-dialog-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.p-dialog-draggable .p-dialog-header{cursor:move}.p-dialog-footer{flex-shrink:0}.p-dialog .p-dialog-header-icons{display:flex;align-items:center}.p-dialog .p-dialog-header-icon{display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-fluid .p-dialog-footer .p-button{width:auto}.p-dialog-top .p-dialog,.p-dialog-bottom .p-dialog,.p-dialog-left .p-dialog,.p-dialog-right .p-dialog,.p-dialog-top-left .p-dialog,.p-dialog-top-right .p-dialog,.p-dialog-bottom-left .p-dialog,.p-dialog-bottom-right .p-dialog{margin:.75rem;transform:translateZ(0)}.p-dialog-maximized{transition:none;transform:none;width:100vw!important;height:100vh!important;top:0!important;left:0!important;max-height:100%;height:100%}.p-dialog-maximized .p-dialog-content{flex-grow:1}.p-dialog-left{justify-content:flex-start}.p-dialog-right{justify-content:flex-end}.p-dialog-top{align-items:flex-start}.p-dialog-top-left{justify-content:flex-start;align-items:flex-start}.p-dialog-top-right{justify-content:flex-end;align-items:flex-start}.p-dialog-bottom{align-items:flex-end}.p-dialog-bottom-left{justify-content:flex-start;align-items:flex-end}.p-dialog-bottom-right{justify-content:flex-end;align-items:flex-end}.p-dialog .p-resizable-handle{position:absolute;font-size:.1px;display:block;cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.p-confirm-dialog .p-dialog-content{display:flex;align-items:center}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => i2.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i2.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i2.NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(() => i2.NgStyle), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i0.forwardRef(() => i3.ButtonDirective), selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i0.forwardRef(() => i4.Ripple), selector: "[pRipple]" }, { kind: "component", type: i0.forwardRef(() => TimesIcon), selector: "TimesIcon" }, { kind: "component", type: i0.forwardRef(() => CheckIcon), selector: "CheckIcon" }], animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
@@ -662,71 +671,76 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImpor
662
671
  [attr.aria-labelledby]="getAriaLabelledBy()"
663
672
  [attr.aria-modal]="true"
664
673
  >
665
- <div class="p-dialog-header" *ngIf="headerTemplate">
666
- <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
667
- </div>
668
- <div class="p-dialog-header" *ngIf="!headerTemplate">
669
- <span class="p-dialog-title" [id]="getAriaLabelledBy()" *ngIf="option('header')">{{ option('header') }}</span>
670
- <div class="p-dialog-header-icons">
671
- <button *ngIf="closable" type="button" role="button" [attr.aria-label]="closeAriaLabel" [ngClass]="{ 'p-dialog-header-icon p-dialog-header-close p-link': true }" (click)="close($event)" (keydown.enter)="close($event)">
672
- <TimesIcon />
673
- </button>
674
+ <ng-container *ngIf="headlessTemplate; else notHeadless">
675
+ <ng-container *ngTemplateOutlet="headlessTemplate; context: { $implicit: confirmation }"></ng-container>
676
+ </ng-container>
677
+ <ng-template #notHeadless>
678
+ <div class="p-dialog-header" *ngIf="headerTemplate">
679
+ <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
680
+ </div>
681
+ <div class="p-dialog-header" *ngIf="!headerTemplate">
682
+ <span class="p-dialog-title" [id]="getAriaLabelledBy()" *ngIf="option('header')">{{ option('header') }}</span>
683
+ <div class="p-dialog-header-icons">
684
+ <button *ngIf="closable" type="button" role="button" [attr.aria-label]="closeAriaLabel" [ngClass]="{ 'p-dialog-header-icon p-dialog-header-close p-link': true }" (click)="close($event)" (keydown.enter)="close($event)">
685
+ <TimesIcon />
686
+ </button>
687
+ </div>
674
688
  </div>
675
- </div>
676
- <div #content class="p-dialog-content">
677
- <i [ngClass]="'p-confirm-dialog-icon'" [class]="option('icon')" *ngIf="!iconTemplate && option('icon')"></i>
678
- <ng-container *ngIf="iconTemplate">
679
- <ng-template *ngTemplateOutlet="iconTemplate"></ng-template>
680
- </ng-container>
681
- <span class="p-confirm-dialog-message" *ngIf="!messageTemplate" [innerHTML]="option('message')"></span>
682
- <ng-container *ngIf="messageTemplate">
683
- <ng-template *ngTemplateOutlet="messageTemplate"></ng-template>
684
- </ng-container>
685
- </div>
686
- <div class="p-dialog-footer" *ngIf="footer || footerTemplate">
687
- <ng-content select="p-footer"></ng-content>
688
- <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
689
- </div>
690
- <div class="p-dialog-footer" *ngIf="!footer && !footerTemplate">
691
- <button
692
- type="button"
693
- pRipple
694
- pButton
695
- [label]="rejectButtonLabel"
696
- (click)="reject()"
697
- [ngClass]="'p-confirm-dialog-reject'"
698
- [class]="option('rejectButtonStyleClass')"
699
- *ngIf="option('rejectVisible')"
700
- [attr.aria-label]="rejectAriaLabel"
701
- >
702
- <ng-container *ngIf="!rejectIconTemplate">
703
- <i *ngIf="option('rejectIcon')" [class]="option('rejectIcon')"></i>
704
- <TimesIcon *ngIf="!option('rejectIcon')" [styleClass]="'p-button-icon-left'" />
689
+ <div #content class="p-dialog-content">
690
+ <i [ngClass]="'p-confirm-dialog-icon'" [class]="option('icon')" *ngIf="!iconTemplate && option('icon')"></i>
691
+ <ng-container *ngIf="iconTemplate">
692
+ <ng-template *ngTemplateOutlet="iconTemplate"></ng-template>
705
693
  </ng-container>
706
- <span *ngIf="rejectIconTemplate" class="p-button-icon-left">
707
- <ng-template *ngTemplateOutlet="rejectIconTemplate"></ng-template>
708
- </span>
709
- </button>
710
- <button
711
- type="button"
712
- pRipple
713
- pButton
714
- [label]="acceptButtonLabel"
715
- (click)="accept()"
716
- [ngClass]="'p-confirm-dialog-accept'"
717
- [class]="option('acceptButtonStyleClass')"
718
- *ngIf="option('acceptVisible')"
719
- [attr.aria-label]="acceptAriaLabel"
720
- >
721
- <ng-container *ngIf="!acceptIconTemplate">
722
- <i *ngIf="option('acceptIcon')" [class]="option('acceptIcon')"></i>
723
- <CheckIcon *ngIf="!option('acceptIcon')" [styleClass]="'p-button-icon-left'" />
694
+ <span class="p-confirm-dialog-message" *ngIf="!messageTemplate" [innerHTML]="option('message')"></span>
695
+ <ng-container *ngIf="messageTemplate">
696
+ <ng-template *ngTemplateOutlet="messageTemplate; context: { $implicit: confirmation }"></ng-template>
724
697
  </ng-container>
725
- <span *ngIf="acceptIconTemplate" class="p-button-icon-left">
726
- <ng-template *ngTemplateOutlet="acceptIconTemplate"></ng-template>
727
- </span>
728
- </button>
729
- </div>
698
+ </div>
699
+ <div class="p-dialog-footer" *ngIf="footer || footerTemplate">
700
+ <ng-content select="p-footer"></ng-content>
701
+ <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>
702
+ </div>
703
+ <div class="p-dialog-footer" *ngIf="!footer && !footerTemplate">
704
+ <button
705
+ type="button"
706
+ pRipple
707
+ pButton
708
+ [label]="rejectButtonLabel"
709
+ (click)="reject()"
710
+ [ngClass]="'p-confirm-dialog-reject'"
711
+ [class]="option('rejectButtonStyleClass')"
712
+ *ngIf="option('rejectVisible')"
713
+ [attr.aria-label]="rejectAriaLabel"
714
+ >
715
+ <ng-container *ngIf="!rejectIconTemplate">
716
+ <i *ngIf="option('rejectIcon')" [class]="option('rejectIcon')"></i>
717
+ <TimesIcon *ngIf="!option('rejectIcon')" [styleClass]="'p-button-icon-left'" />
718
+ </ng-container>
719
+ <span *ngIf="rejectIconTemplate" class="p-button-icon-left">
720
+ <ng-template *ngTemplateOutlet="rejectIconTemplate"></ng-template>
721
+ </span>
722
+ </button>
723
+ <button
724
+ type="button"
725
+ pRipple
726
+ pButton
727
+ [label]="acceptButtonLabel"
728
+ (click)="accept()"
729
+ [ngClass]="'p-confirm-dialog-accept'"
730
+ [class]="option('acceptButtonStyleClass')"
731
+ *ngIf="option('acceptVisible')"
732
+ [attr.aria-label]="acceptAriaLabel"
733
+ >
734
+ <ng-container *ngIf="!acceptIconTemplate">
735
+ <i *ngIf="option('acceptIcon')" [class]="option('acceptIcon')"></i>
736
+ <CheckIcon *ngIf="!option('acceptIcon')" [styleClass]="'p-button-icon-left'" />
737
+ </ng-container>
738
+ <span *ngIf="acceptIconTemplate" class="p-button-icon-left">
739
+ <ng-template *ngTemplateOutlet="acceptIconTemplate"></ng-template>
740
+ </span>
741
+ </button>
742
+ </div>
743
+ </ng-template>
730
744
  </div>
731
745
  </div>
732
746
  `, animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-confirmdialog.mjs","sources":["../../src/app/components/confirmdialog/confirmdialog.ts","../../src/app/components/confirmdialog/primeng-confirmdialog.ts"],"sourcesContent":["import { AnimationEvent, animate, animation, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule, DOCUMENT } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n NgModule,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n ViewRef\n} from '@angular/core';\nimport { ConfirmEventType, Confirmation, ConfirmationService, Footer, PrimeNGConfig, PrimeTemplate, SharedModule, TranslationKeys } from 'primeng/api';\nimport { ButtonModule } from 'primeng/button';\nimport { DomHandler } from 'primeng/dom';\nimport { CheckIcon } from 'primeng/icons/check';\nimport { TimesIcon } from 'primeng/icons/times';\nimport { RippleModule } from 'primeng/ripple';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { UniqueComponentId, ZIndexUtils } from 'primeng/utils';\nimport { Subscription } from 'rxjs';\n\nconst showAnimation = animation([style({ transform: '{{transform}}', opacity: 0 }), animate('{{transition}}', style({ transform: 'none', opacity: 1 }))]);\n\nconst hideAnimation = animation([animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))]);\n/**\n * ConfirmDialog uses a Dialog UI that is integrated with the Confirmation API.\n * @group Components\n */\n@Component({\n selector: 'p-confirmDialog',\n template: `\n <div [class]=\"maskStyleClass\" [ngClass]=\"getMaskClass()\" *ngIf=\"maskVisible\">\n <div\n [ngClass]=\"{ 'p-dialog p-confirm-dialog p-component': true, 'p-dialog-rtl': rtl }\"\n [ngStyle]=\"style\"\n [class]=\"styleClass\"\n [@animation]=\"{ value: 'visible', params: { transform: transformOptions, transition: transitionOptions } }\"\n (@animation.start)=\"onAnimationStart($event)\"\n (@animation.done)=\"onAnimationEnd($event)\"\n role=\"alertdialog\"\n *ngIf=\"visible\"\n [attr.aria-labelledby]=\"getAriaLabelledBy()\"\n [attr.aria-modal]=\"true\"\n >\n <div class=\"p-dialog-header\" *ngIf=\"headerTemplate\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n <div class=\"p-dialog-header\" *ngIf=\"!headerTemplate\">\n <span class=\"p-dialog-title\" [id]=\"getAriaLabelledBy()\" *ngIf=\"option('header')\">{{ option('header') }}</span>\n <div class=\"p-dialog-header-icons\">\n <button *ngIf=\"closable\" type=\"button\" role=\"button\" [attr.aria-label]=\"closeAriaLabel\" [ngClass]=\"{ 'p-dialog-header-icon p-dialog-header-close p-link': true }\" (click)=\"close($event)\" (keydown.enter)=\"close($event)\">\n <TimesIcon />\n </button>\n </div>\n </div>\n <div #content class=\"p-dialog-content\">\n <i [ngClass]=\"'p-confirm-dialog-icon'\" [class]=\"option('icon')\" *ngIf=\"!iconTemplate && option('icon')\"></i>\n <ng-container *ngIf=\"iconTemplate\">\n <ng-template *ngTemplateOutlet=\"iconTemplate\"></ng-template>\n </ng-container>\n <span class=\"p-confirm-dialog-message\" *ngIf=\"!messageTemplate\" [innerHTML]=\"option('message')\"></span>\n <ng-container *ngIf=\"messageTemplate\">\n <ng-template *ngTemplateOutlet=\"messageTemplate\"></ng-template>\n </ng-container>\n </div>\n <div class=\"p-dialog-footer\" *ngIf=\"footer || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n <div class=\"p-dialog-footer\" *ngIf=\"!footer && !footerTemplate\">\n <button\n type=\"button\"\n pRipple\n pButton\n [label]=\"rejectButtonLabel\"\n (click)=\"reject()\"\n [ngClass]=\"'p-confirm-dialog-reject'\"\n [class]=\"option('rejectButtonStyleClass')\"\n *ngIf=\"option('rejectVisible')\"\n [attr.aria-label]=\"rejectAriaLabel\"\n >\n <ng-container *ngIf=\"!rejectIconTemplate\">\n <i *ngIf=\"option('rejectIcon')\" [class]=\"option('rejectIcon')\"></i>\n <TimesIcon *ngIf=\"!option('rejectIcon')\" [styleClass]=\"'p-button-icon-left'\" />\n </ng-container>\n <span *ngIf=\"rejectIconTemplate\" class=\"p-button-icon-left\">\n <ng-template *ngTemplateOutlet=\"rejectIconTemplate\"></ng-template>\n </span>\n </button>\n <button\n type=\"button\"\n pRipple\n pButton\n [label]=\"acceptButtonLabel\"\n (click)=\"accept()\"\n [ngClass]=\"'p-confirm-dialog-accept'\"\n [class]=\"option('acceptButtonStyleClass')\"\n *ngIf=\"option('acceptVisible')\"\n [attr.aria-label]=\"acceptAriaLabel\"\n >\n <ng-container *ngIf=\"!acceptIconTemplate\">\n <i *ngIf=\"option('acceptIcon')\" [class]=\"option('acceptIcon')\"></i>\n <CheckIcon *ngIf=\"!option('acceptIcon')\" [styleClass]=\"'p-button-icon-left'\" />\n </ng-container>\n <span *ngIf=\"acceptIconTemplate\" class=\"p-button-icon-left\">\n <ng-template *ngTemplateOutlet=\"acceptIconTemplate\"></ng-template>\n </span>\n </button>\n </div>\n </div>\n </div>\n `,\n animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['../dialog/dialog.css'],\n host: {\n class: 'p-element'\n }\n})\nexport class ConfirmDialog implements AfterContentInit, OnInit, OnDestroy {\n /**\n * Title text of the dialog.\n * @group Props\n */\n @Input() header: string | undefined;\n /**\n * Icon to display next to message.\n * @group Props\n */\n @Input() icon: string | undefined;\n /**\n * Message of the confirmation.\n * @group Props\n */\n @Input() message: string | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() get style(): { [klass: string]: any } | null | undefined {\n return this._style;\n }\n set style(value: { [klass: string]: any } | null | undefined) {\n this._style = value;\n this.cd.markForCheck();\n }\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Specify the CSS class(es) for styling the mask element\n * @group Props\n */\n @Input() maskStyleClass: string | undefined;\n /**\n * Icon of the accept button.\n * @group Props\n */\n @Input() acceptIcon: string | undefined;\n /**\n * Label of the accept button.\n * @group Props\n */\n @Input() acceptLabel: string | undefined;\n /**\n * Defines a string that labels the close button for accessibility.\n * @group Props\n */\n @Input() closeAriaLabel: string | undefined;\n /**\n * Defines a string that labels the accept button for accessibility.\n * @group Props\n */\n @Input() acceptAriaLabel: string | undefined;\n /**\n * Visibility of the accept button.\n * @group Props\n */\n @Input() acceptVisible: boolean = true;\n /**\n * Icon of the reject button.\n * @group Props\n */\n @Input() rejectIcon: string | undefined;\n /**\n * Label of the reject button.\n * @group Props\n */\n @Input() rejectLabel: string | undefined;\n /**\n * Defines a string that labels the reject button for accessibility.\n * @group Props\n */\n @Input() rejectAriaLabel: string | undefined;\n /**\n * Visibility of the reject button.\n * @group Props\n */\n @Input() rejectVisible: boolean = true;\n /**\n * Style class of the accept button.\n * @group Props\n */\n @Input() acceptButtonStyleClass: string | undefined;\n /**\n * Style class of the reject button.\n * @group Props\n */\n @Input() rejectButtonStyleClass: string | undefined;\n /**\n * Specifies if pressing escape key should hide the dialog.\n * @group Props\n */\n @Input() closeOnEscape: boolean = true;\n /**\n * Specifies if clicking the modal background should hide the dialog.\n * @group Props\n */\n @Input() dismissableMask: boolean | undefined;\n /**\n * Determines whether scrolling behavior should be blocked within the component.\n * @group Props\n */\n @Input() blockScroll: boolean = true;\n /**\n * When enabled dialog is displayed in RTL direction.\n * @group Props\n */\n @Input() rtl: boolean = false;\n /**\n * Adds a close icon to the header to hide the dialog.\n * @group Props\n */\n @Input() closable: boolean = true;\n /**\n * Target element to attach the dialog, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Optional key to match the key of confirm object, necessary to use when component tree has multiple confirm dialogs.\n * @group Props\n */\n @Input() key: string | undefined;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input() autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input() baseZIndex: number = 0;\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '150ms cubic-bezier(0, 0, 0.2, 1)';\n /**\n * When enabled, can only focus on elements inside the confirm dialog.\n * @group Props\n */\n @Input() focusTrap: boolean = true;\n /**\n * Element to receive the focus when the dialog gets visible.\n * @group Props\n */\n @Input() defaultFocus: 'accept' | 'reject' | 'close' | 'none' = 'accept';\n /**\n * Object literal to define widths per screen size.\n * @group Props\n */\n @Input() breakpoints: any;\n /**\n * Current visible state as a boolean.\n * @group Props\n */\n @Input() get visible(): any {\n return this._visible;\n }\n set visible(value: any) {\n this._visible = value;\n\n if (this._visible && !this.maskVisible) {\n this.maskVisible = true;\n }\n\n this.cd.markForCheck();\n }\n /**\n * Allows getting the position of the component.\n * @group Props\n */\n @Input() get position(): string {\n return this._position;\n }\n set position(value: string) {\n this._position = value;\n\n switch (value) {\n case 'top-left':\n case 'bottom-left':\n case 'left':\n this.transformOptions = 'translate3d(-100%, 0px, 0px)';\n break;\n case 'top-right':\n case 'bottom-right':\n case 'right':\n this.transformOptions = 'translate3d(100%, 0px, 0px)';\n break;\n case 'bottom':\n this.transformOptions = 'translate3d(0px, 100%, 0px)';\n break;\n case 'top':\n this.transformOptions = 'translate3d(0px, -100%, 0px)';\n break;\n default:\n this.transformOptions = 'scale(0.7)';\n break;\n }\n }\n\n /**\n * Callback to invoke when dialog is hidden.\n * @param {ConfirmEventType} enum - Custom confirm event.\n * @group Emits\n */\n @Output() onHide: EventEmitter<ConfirmEventType> = new EventEmitter<ConfirmEventType>();\n\n @ContentChild(Footer) footer: Nullable<TemplateRef<any>>;\n\n @ViewChild('content') contentViewChild: Nullable<ElementRef>;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n case 'message':\n this.messageTemplate = item.template;\n break;\n\n case 'icon':\n this.iconTemplate = item.template;\n break;\n\n case 'rejecticon':\n this.rejectIconTemplate = item.template;\n break;\n\n case 'accepticon':\n this.acceptIconTemplate = item.template;\n break;\n }\n });\n }\n\n headerTemplate: Nullable<TemplateRef<any>>;\n\n footerTemplate: Nullable<TemplateRef<any>>;\n\n rejectIconTemplate: Nullable<TemplateRef<any>>;\n\n acceptIconTemplate: Nullable<TemplateRef<any>>;\n\n messageTemplate: Nullable<TemplateRef<any>>;\n\n iconTemplate: Nullable<TemplateRef<any>>;\n\n confirmation: Nullable<Confirmation>;\n\n _visible: boolean | undefined;\n\n _style: { [klass: string]: any } | null | undefined;\n\n maskVisible: boolean | undefined;\n\n documentEscapeListener: any;\n\n container: Nullable<HTMLDivElement>;\n\n wrapper: Nullable<HTMLElement>;\n\n contentContainer: Nullable<HTMLDivElement>;\n\n subscription: Subscription;\n\n maskClickListener: Function | null | undefined;\n\n preWidth: number | undefined;\n\n _position: string = 'center';\n\n transformOptions: any = 'scale(0.7)';\n\n styleElement: any;\n\n id = UniqueComponentId();\n\n confirmationOptions: Nullable<Confirmation>;\n\n translationSubscription: Subscription | undefined;\n\n constructor(public el: ElementRef, public renderer: Renderer2, private confirmationService: ConfirmationService, public zone: NgZone, private cd: ChangeDetectorRef, public config: PrimeNGConfig, @Inject(DOCUMENT) private document: Document) {\n this.subscription = this.confirmationService.requireConfirmation$.subscribe((confirmation) => {\n if (!confirmation) {\n this.hide();\n return;\n }\n\n if (confirmation.key === this.key) {\n this.confirmation = confirmation;\n this.confirmationOptions = {\n message: this.confirmation.message || this.message,\n icon: this.confirmation.icon || this.icon,\n header: this.confirmation.header || this.header,\n rejectVisible: this.confirmation.rejectVisible == null ? this.rejectVisible : this.confirmation.rejectVisible,\n acceptVisible: this.confirmation.acceptVisible == null ? this.acceptVisible : this.confirmation.acceptVisible,\n acceptLabel: this.confirmation.acceptLabel || this.acceptLabel,\n rejectLabel: this.confirmation.rejectLabel || this.rejectLabel,\n acceptIcon: this.confirmation.acceptIcon || this.acceptIcon,\n rejectIcon: this.confirmation.rejectIcon || this.rejectIcon,\n acceptButtonStyleClass: this.confirmation.acceptButtonStyleClass || this.acceptButtonStyleClass,\n rejectButtonStyleClass: this.confirmation.rejectButtonStyleClass || this.rejectButtonStyleClass,\n defaultFocus: this.confirmation.defaultFocus || this.defaultFocus,\n blockScroll: this.confirmation.blockScroll === false || this.confirmation.blockScroll === true ? this.confirmation.blockScroll : this.blockScroll,\n closeOnEscape: this.confirmation.closeOnEscape === false || this.confirmation.closeOnEscape === true ? this.confirmation.closeOnEscape : this.closeOnEscape,\n dismissableMask: this.confirmation.dismissableMask === false || this.confirmation.dismissableMask === true ? this.confirmation.dismissableMask : this.dismissableMask\n };\n\n if (this.confirmation.accept) {\n this.confirmation.acceptEvent = new EventEmitter();\n this.confirmation.acceptEvent.subscribe(this.confirmation.accept);\n }\n\n if (this.confirmation.reject) {\n this.confirmation.rejectEvent = new EventEmitter();\n this.confirmation.rejectEvent.subscribe(this.confirmation.reject);\n }\n\n this.visible = true;\n }\n });\n }\n\n ngOnInit() {\n if (this.breakpoints) {\n this.createStyle();\n }\n\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n if (this.visible) {\n this.cd.markForCheck();\n }\n });\n }\n\n getAriaLabelledBy() {\n return this.header !== null ? UniqueComponentId() + '_header' : null;\n }\n\n option(name: string) {\n const source: { [key: string]: any } = this.confirmationOptions || this;\n if (source.hasOwnProperty(name)) {\n return source[name];\n }\n return undefined;\n }\n\n onAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.container = event.element;\n this.wrapper = this.container?.parentElement;\n this.contentContainer = DomHandler.findSingle(this.container, '.p-dialog-content');\n this.container?.setAttribute(this.id, '');\n this.appendContainer();\n this.moveOnTop();\n this.bindGlobalListeners();\n this.enableModality();\n\n const element = this.getElementToFocus();\n if (element) {\n element.focus();\n }\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n this.onOverlayHide();\n break;\n }\n }\n\n getElementToFocus() {\n switch (this.option('defaultFocus')) {\n case 'accept':\n return DomHandler.findSingle(this.container, '.p-confirm-dialog-accept');\n\n case 'reject':\n return DomHandler.findSingle(this.container, '.p-confirm-dialog-reject');\n\n case 'close':\n return DomHandler.findSingle(this.container, '.p-dialog-header-close');\n\n case 'none':\n return null;\n\n //backward compatibility\n default:\n return DomHandler.findSingle(this.container, '.p-confirm-dialog-accept');\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.document.body.appendChild(this.wrapper as HTMLElement);\n else DomHandler.appendChild(this.wrapper, this.appendTo);\n }\n }\n\n restoreAppend() {\n if (this.wrapper && this.appendTo) {\n this.el.nativeElement.appendChild(this.wrapper);\n }\n }\n\n enableModality() {\n if (this.option('blockScroll')) {\n DomHandler.addClass(this.document.body, 'p-overflow-hidden');\n }\n\n if (this.option('dismissableMask')) {\n this.maskClickListener = this.renderer.listen(this.wrapper, 'mousedown', (event: any) => {\n if (this.wrapper && this.wrapper.isSameNode(event.target)) {\n this.close(event);\n }\n });\n }\n }\n\n disableModality() {\n this.maskVisible = false;\n\n if (this.option('blockScroll')) {\n DomHandler.removeClass(this.document.body, 'p-overflow-hidden');\n }\n\n if (this.dismissableMask) {\n this.unbindMaskClickListener();\n }\n\n if (this.container && !(this.cd as ViewRef)['destroyed']) {\n this.cd.detectChanges();\n }\n }\n\n createStyle() {\n if (!this.styleElement) {\n this.styleElement = this.document.createElement('style');\n this.styleElement.type = 'text/css';\n this.document.head.appendChild(this.styleElement);\n let innerHTML = '';\n for (let breakpoint in this.breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-dialog[${this.id}] {\n width: ${this.breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n this.styleElement.innerHTML = innerHTML;\n }\n }\n\n close(event: Event) {\n if (this.confirmation?.rejectEvent) {\n this.confirmation.rejectEvent.emit(ConfirmEventType.CANCEL);\n }\n\n this.hide(ConfirmEventType.CANCEL);\n event.preventDefault();\n }\n\n hide(type?: ConfirmEventType) {\n this.onHide.emit(type);\n this.visible = false;\n this.confirmation = null;\n this.confirmationOptions = null;\n }\n\n moveOnTop() {\n if (this.autoZIndex) {\n ZIndexUtils.set('modal', this.container, this.baseZIndex + this.config.zIndex.modal);\n (<HTMLElement>this.wrapper).style.zIndex = String(parseInt((<HTMLDivElement>this.container).style.zIndex, 10) - 1);\n }\n }\n\n getMaskClass() {\n let maskClass: { [key: string]: boolean } = { 'p-dialog-mask p-component-overlay': true, 'p-dialog-mask-scrollblocker': this.blockScroll };\n maskClass[this.getPositionClass().toString()] = true;\n return maskClass;\n }\n\n getPositionClass() {\n const positions = ['left', 'right', 'top', 'top-left', 'top-right', 'bottom', 'bottom-left', 'bottom-right'];\n const pos = positions.find((item) => item === this.position);\n\n return pos ? `p-dialog-${pos}` : '';\n }\n\n bindGlobalListeners() {\n if ((this.option('closeOnEscape') && this.closable) || (this.focusTrap && !this.documentEscapeListener)) {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : 'document';\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27 && this.option('closeOnEscape') && this.closable) {\n if (parseInt((this.container as HTMLDivElement).style.zIndex) === ZIndexUtils.get(this.container) && this.visible) {\n this.close(event);\n }\n }\n\n if (event.which === 9 && this.focusTrap) {\n event.preventDefault();\n\n let focusableElements = DomHandler.getFocusableElements(this.container as HTMLDivElement);\n\n if (focusableElements && focusableElements.length > 0) {\n if (!focusableElements[0].ownerDocument.activeElement) {\n focusableElements[0].focus();\n } else {\n let focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0) focusableElements[focusableElements.length - 1].focus();\n else focusableElements[focusedIndex - 1].focus();\n } else {\n if (focusedIndex == -1 || focusedIndex === focusableElements.length - 1) focusableElements[0].focus();\n else focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n });\n }\n }\n\n unbindGlobalListeners() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n onOverlayHide() {\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n\n this.disableModality();\n this.unbindGlobalListeners();\n this.container = null;\n }\n\n destroyStyle() {\n if (this.styleElement) {\n this.document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n }\n\n ngOnDestroy() {\n this.restoreAppend();\n this.onOverlayHide();\n this.subscription.unsubscribe();\n\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n\n this.destroyStyle();\n }\n\n accept() {\n if (this.confirmation && this.confirmation.acceptEvent) {\n this.confirmation.acceptEvent.emit();\n }\n\n this.hide(ConfirmEventType.ACCEPT);\n }\n\n reject() {\n if (this.confirmation && this.confirmation.rejectEvent) {\n this.confirmation.rejectEvent.emit(ConfirmEventType.REJECT);\n }\n\n this.hide(ConfirmEventType.REJECT);\n }\n\n get acceptButtonLabel(): string {\n return this.option('acceptLabel') || this.config.getTranslation(TranslationKeys.ACCEPT);\n }\n\n get rejectButtonLabel(): string {\n return this.option('rejectLabel') || this.config.getTranslation(TranslationKeys.REJECT);\n }\n}\n\n@NgModule({\n imports: [CommonModule, ButtonModule, RippleModule, TimesIcon, CheckIcon],\n exports: [ConfirmDialog, ButtonModule, SharedModule],\n declarations: [ConfirmDialog]\n})\nexport class ConfirmDialogModule {}\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":"primeng-confirmdialog.mjs","sources":["../../src/app/components/confirmdialog/confirmdialog.ts","../../src/app/components/confirmdialog/primeng-confirmdialog.ts"],"sourcesContent":["import { AnimationEvent, animate, animation, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule, DOCUMENT } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n NgModule,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n ViewRef\n} from '@angular/core';\nimport { ConfirmEventType, Confirmation, ConfirmationService, Footer, PrimeNGConfig, PrimeTemplate, SharedModule, TranslationKeys } from 'primeng/api';\nimport { ButtonModule } from 'primeng/button';\nimport { DomHandler } from 'primeng/dom';\nimport { CheckIcon } from 'primeng/icons/check';\nimport { TimesIcon } from 'primeng/icons/times';\nimport { RippleModule } from 'primeng/ripple';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { UniqueComponentId, ZIndexUtils } from 'primeng/utils';\nimport { Subscription } from 'rxjs';\n\nconst showAnimation = animation([style({ transform: '{{transform}}', opacity: 0 }), animate('{{transition}}', style({ transform: 'none', opacity: 1 }))]);\n\nconst hideAnimation = animation([animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))]);\n/**\n * ConfirmDialog uses a Dialog UI that is integrated with the Confirmation API.\n * @group Components\n */\n@Component({\n selector: 'p-confirmDialog',\n template: `\n <div [class]=\"maskStyleClass\" [ngClass]=\"getMaskClass()\" *ngIf=\"maskVisible\">\n <div\n [ngClass]=\"{ 'p-dialog p-confirm-dialog p-component': true, 'p-dialog-rtl': rtl }\"\n [ngStyle]=\"style\"\n [class]=\"styleClass\"\n [@animation]=\"{ value: 'visible', params: { transform: transformOptions, transition: transitionOptions } }\"\n (@animation.start)=\"onAnimationStart($event)\"\n (@animation.done)=\"onAnimationEnd($event)\"\n role=\"alertdialog\"\n *ngIf=\"visible\"\n [attr.aria-labelledby]=\"getAriaLabelledBy()\"\n [attr.aria-modal]=\"true\"\n >\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\n <ng-container *ngTemplateOutlet=\"headlessTemplate; context: { $implicit: confirmation }\"></ng-container>\n </ng-container>\n <ng-template #notHeadless>\n <div class=\"p-dialog-header\" *ngIf=\"headerTemplate\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n <div class=\"p-dialog-header\" *ngIf=\"!headerTemplate\">\n <span class=\"p-dialog-title\" [id]=\"getAriaLabelledBy()\" *ngIf=\"option('header')\">{{ option('header') }}</span>\n <div class=\"p-dialog-header-icons\">\n <button *ngIf=\"closable\" type=\"button\" role=\"button\" [attr.aria-label]=\"closeAriaLabel\" [ngClass]=\"{ 'p-dialog-header-icon p-dialog-header-close p-link': true }\" (click)=\"close($event)\" (keydown.enter)=\"close($event)\">\n <TimesIcon />\n </button>\n </div>\n </div>\n <div #content class=\"p-dialog-content\">\n <i [ngClass]=\"'p-confirm-dialog-icon'\" [class]=\"option('icon')\" *ngIf=\"!iconTemplate && option('icon')\"></i>\n <ng-container *ngIf=\"iconTemplate\">\n <ng-template *ngTemplateOutlet=\"iconTemplate\"></ng-template>\n </ng-container>\n <span class=\"p-confirm-dialog-message\" *ngIf=\"!messageTemplate\" [innerHTML]=\"option('message')\"></span>\n <ng-container *ngIf=\"messageTemplate\">\n <ng-template *ngTemplateOutlet=\"messageTemplate; context: { $implicit: confirmation }\"></ng-template>\n </ng-container>\n </div>\n <div class=\"p-dialog-footer\" *ngIf=\"footer || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n <div class=\"p-dialog-footer\" *ngIf=\"!footer && !footerTemplate\">\n <button\n type=\"button\"\n pRipple\n pButton\n [label]=\"rejectButtonLabel\"\n (click)=\"reject()\"\n [ngClass]=\"'p-confirm-dialog-reject'\"\n [class]=\"option('rejectButtonStyleClass')\"\n *ngIf=\"option('rejectVisible')\"\n [attr.aria-label]=\"rejectAriaLabel\"\n >\n <ng-container *ngIf=\"!rejectIconTemplate\">\n <i *ngIf=\"option('rejectIcon')\" [class]=\"option('rejectIcon')\"></i>\n <TimesIcon *ngIf=\"!option('rejectIcon')\" [styleClass]=\"'p-button-icon-left'\" />\n </ng-container>\n <span *ngIf=\"rejectIconTemplate\" class=\"p-button-icon-left\">\n <ng-template *ngTemplateOutlet=\"rejectIconTemplate\"></ng-template>\n </span>\n </button>\n <button\n type=\"button\"\n pRipple\n pButton\n [label]=\"acceptButtonLabel\"\n (click)=\"accept()\"\n [ngClass]=\"'p-confirm-dialog-accept'\"\n [class]=\"option('acceptButtonStyleClass')\"\n *ngIf=\"option('acceptVisible')\"\n [attr.aria-label]=\"acceptAriaLabel\"\n >\n <ng-container *ngIf=\"!acceptIconTemplate\">\n <i *ngIf=\"option('acceptIcon')\" [class]=\"option('acceptIcon')\"></i>\n <CheckIcon *ngIf=\"!option('acceptIcon')\" [styleClass]=\"'p-button-icon-left'\" />\n </ng-container>\n <span *ngIf=\"acceptIconTemplate\" class=\"p-button-icon-left\">\n <ng-template *ngTemplateOutlet=\"acceptIconTemplate\"></ng-template>\n </span>\n </button>\n </div>\n </ng-template>\n </div>\n </div>\n `,\n animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['../dialog/dialog.css'],\n host: {\n class: 'p-element'\n }\n})\nexport class ConfirmDialog implements AfterContentInit, OnInit, OnDestroy {\n /**\n * Title text of the dialog.\n * @group Props\n */\n @Input() header: string | undefined;\n /**\n * Icon to display next to message.\n * @group Props\n */\n @Input() icon: string | undefined;\n /**\n * Message of the confirmation.\n * @group Props\n */\n @Input() message: string | undefined;\n /**\n * Inline style of the element.\n * @group Props\n */\n @Input() get style(): { [klass: string]: any } | null | undefined {\n return this._style;\n }\n set style(value: { [klass: string]: any } | null | undefined) {\n this._style = value;\n this.cd.markForCheck();\n }\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Specify the CSS class(es) for styling the mask element\n * @group Props\n */\n @Input() maskStyleClass: string | undefined;\n /**\n * Icon of the accept button.\n * @group Props\n */\n @Input() acceptIcon: string | undefined;\n /**\n * Label of the accept button.\n * @group Props\n */\n @Input() acceptLabel: string | undefined;\n /**\n * Defines a string that labels the close button for accessibility.\n * @group Props\n */\n @Input() closeAriaLabel: string | undefined;\n /**\n * Defines a string that labels the accept button for accessibility.\n * @group Props\n */\n @Input() acceptAriaLabel: string | undefined;\n /**\n * Visibility of the accept button.\n * @group Props\n */\n @Input() acceptVisible: boolean = true;\n /**\n * Icon of the reject button.\n * @group Props\n */\n @Input() rejectIcon: string | undefined;\n /**\n * Label of the reject button.\n * @group Props\n */\n @Input() rejectLabel: string | undefined;\n /**\n * Defines a string that labels the reject button for accessibility.\n * @group Props\n */\n @Input() rejectAriaLabel: string | undefined;\n /**\n * Visibility of the reject button.\n * @group Props\n */\n @Input() rejectVisible: boolean = true;\n /**\n * Style class of the accept button.\n * @group Props\n */\n @Input() acceptButtonStyleClass: string | undefined;\n /**\n * Style class of the reject button.\n * @group Props\n */\n @Input() rejectButtonStyleClass: string | undefined;\n /**\n * Specifies if pressing escape key should hide the dialog.\n * @group Props\n */\n @Input() closeOnEscape: boolean = true;\n /**\n * Specifies if clicking the modal background should hide the dialog.\n * @group Props\n */\n @Input() dismissableMask: boolean | undefined;\n /**\n * Determines whether scrolling behavior should be blocked within the component.\n * @group Props\n */\n @Input() blockScroll: boolean = true;\n /**\n * When enabled dialog is displayed in RTL direction.\n * @group Props\n */\n @Input() rtl: boolean = false;\n /**\n * Adds a close icon to the header to hide the dialog.\n * @group Props\n */\n @Input() closable: boolean = true;\n /**\n * Target element to attach the dialog, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Optional key to match the key of confirm object, necessary to use when component tree has multiple confirm dialogs.\n * @group Props\n */\n @Input() key: string | undefined;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input() autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input() baseZIndex: number = 0;\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '150ms cubic-bezier(0, 0, 0.2, 1)';\n /**\n * When enabled, can only focus on elements inside the confirm dialog.\n * @group Props\n */\n @Input() focusTrap: boolean = true;\n /**\n * Element to receive the focus when the dialog gets visible.\n * @group Props\n */\n @Input() defaultFocus: 'accept' | 'reject' | 'close' | 'none' = 'accept';\n /**\n * Object literal to define widths per screen size.\n * @group Props\n */\n @Input() breakpoints: any;\n /**\n * Current visible state as a boolean.\n * @group Props\n */\n @Input() get visible(): any {\n return this._visible;\n }\n set visible(value: any) {\n this._visible = value;\n\n if (this._visible && !this.maskVisible) {\n this.maskVisible = true;\n }\n\n this.cd.markForCheck();\n }\n /**\n * Allows getting the position of the component.\n * @group Props\n */\n @Input() get position(): string {\n return this._position;\n }\n set position(value: string) {\n this._position = value;\n\n switch (value) {\n case 'top-left':\n case 'bottom-left':\n case 'left':\n this.transformOptions = 'translate3d(-100%, 0px, 0px)';\n break;\n case 'top-right':\n case 'bottom-right':\n case 'right':\n this.transformOptions = 'translate3d(100%, 0px, 0px)';\n break;\n case 'bottom':\n this.transformOptions = 'translate3d(0px, 100%, 0px)';\n break;\n case 'top':\n this.transformOptions = 'translate3d(0px, -100%, 0px)';\n break;\n default:\n this.transformOptions = 'scale(0.7)';\n break;\n }\n }\n\n /**\n * Callback to invoke when dialog is hidden.\n * @param {ConfirmEventType} enum - Custom confirm event.\n * @group Emits\n */\n @Output() onHide: EventEmitter<ConfirmEventType> = new EventEmitter<ConfirmEventType>();\n\n @ContentChild(Footer) footer: Nullable<TemplateRef<any>>;\n\n @ViewChild('content') contentViewChild: Nullable<ElementRef>;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n case 'message':\n this.messageTemplate = item.template;\n break;\n\n case 'icon':\n this.iconTemplate = item.template;\n break;\n\n case 'rejecticon':\n this.rejectIconTemplate = item.template;\n break;\n\n case 'accepticon':\n this.acceptIconTemplate = item.template;\n break;\n\n case 'headless':\n this.headlessTemplate = item.template;\n break;\n }\n });\n }\n\n headerTemplate: Nullable<TemplateRef<any>>;\n\n footerTemplate: Nullable<TemplateRef<any>>;\n\n rejectIconTemplate: Nullable<TemplateRef<any>>;\n\n acceptIconTemplate: Nullable<TemplateRef<any>>;\n\n messageTemplate: Nullable<TemplateRef<any>>;\n\n iconTemplate: Nullable<TemplateRef<any>>;\n\n headlessTemplate: Nullable<TemplateRef<any>>;\n\n confirmation: Nullable<Confirmation>;\n\n _visible: boolean | undefined;\n\n _style: { [klass: string]: any } | null | undefined;\n\n maskVisible: boolean | undefined;\n\n documentEscapeListener: any;\n\n container: Nullable<HTMLDivElement>;\n\n wrapper: Nullable<HTMLElement>;\n\n contentContainer: Nullable<HTMLDivElement>;\n\n subscription: Subscription;\n\n maskClickListener: Function | null | undefined;\n\n preWidth: number | undefined;\n\n _position: string = 'center';\n\n transformOptions: any = 'scale(0.7)';\n\n styleElement: any;\n\n id = UniqueComponentId();\n\n confirmationOptions: Nullable<Confirmation>;\n\n translationSubscription: Subscription | undefined;\n\n constructor(public el: ElementRef, public renderer: Renderer2, private confirmationService: ConfirmationService, public zone: NgZone, private cd: ChangeDetectorRef, public config: PrimeNGConfig, @Inject(DOCUMENT) private document: Document) {\n this.subscription = this.confirmationService.requireConfirmation$.subscribe((confirmation) => {\n if (!confirmation) {\n this.hide();\n return;\n }\n\n if (confirmation.key === this.key) {\n this.confirmation = confirmation;\n this.confirmationOptions = {\n message: this.confirmation.message || this.message,\n icon: this.confirmation.icon || this.icon,\n header: this.confirmation.header || this.header,\n rejectVisible: this.confirmation.rejectVisible == null ? this.rejectVisible : this.confirmation.rejectVisible,\n acceptVisible: this.confirmation.acceptVisible == null ? this.acceptVisible : this.confirmation.acceptVisible,\n acceptLabel: this.confirmation.acceptLabel || this.acceptLabel,\n rejectLabel: this.confirmation.rejectLabel || this.rejectLabel,\n acceptIcon: this.confirmation.acceptIcon || this.acceptIcon,\n rejectIcon: this.confirmation.rejectIcon || this.rejectIcon,\n acceptButtonStyleClass: this.confirmation.acceptButtonStyleClass || this.acceptButtonStyleClass,\n rejectButtonStyleClass: this.confirmation.rejectButtonStyleClass || this.rejectButtonStyleClass,\n defaultFocus: this.confirmation.defaultFocus || this.defaultFocus,\n blockScroll: this.confirmation.blockScroll === false || this.confirmation.blockScroll === true ? this.confirmation.blockScroll : this.blockScroll,\n closeOnEscape: this.confirmation.closeOnEscape === false || this.confirmation.closeOnEscape === true ? this.confirmation.closeOnEscape : this.closeOnEscape,\n dismissableMask: this.confirmation.dismissableMask === false || this.confirmation.dismissableMask === true ? this.confirmation.dismissableMask : this.dismissableMask\n };\n\n if (this.confirmation.accept) {\n this.confirmation.acceptEvent = new EventEmitter();\n this.confirmation.acceptEvent.subscribe(this.confirmation.accept);\n }\n\n if (this.confirmation.reject) {\n this.confirmation.rejectEvent = new EventEmitter();\n this.confirmation.rejectEvent.subscribe(this.confirmation.reject);\n }\n\n this.visible = true;\n }\n });\n }\n\n ngOnInit() {\n if (this.breakpoints) {\n this.createStyle();\n }\n\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n if (this.visible) {\n this.cd.markForCheck();\n }\n });\n }\n\n getAriaLabelledBy() {\n return this.header !== null ? UniqueComponentId() + '_header' : null;\n }\n\n option(name: string) {\n const source: { [key: string]: any } = this.confirmationOptions || this;\n if (source.hasOwnProperty(name)) {\n return source[name];\n }\n return undefined;\n }\n\n onAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.container = event.element;\n this.wrapper = this.container?.parentElement;\n this.contentContainer = DomHandler.findSingle(this.container, '.p-dialog-content');\n this.container?.setAttribute(this.id, '');\n this.appendContainer();\n this.moveOnTop();\n this.bindGlobalListeners();\n this.enableModality();\n\n const element = this.getElementToFocus();\n if (element) {\n element.focus();\n }\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n this.onOverlayHide();\n break;\n }\n }\n\n getElementToFocus() {\n switch (this.option('defaultFocus')) {\n case 'accept':\n return DomHandler.findSingle(this.container, '.p-confirm-dialog-accept');\n\n case 'reject':\n return DomHandler.findSingle(this.container, '.p-confirm-dialog-reject');\n\n case 'close':\n return DomHandler.findSingle(this.container, '.p-dialog-header-close');\n\n case 'none':\n return null;\n\n //backward compatibility\n default:\n return DomHandler.findSingle(this.container, '.p-confirm-dialog-accept');\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.document.body.appendChild(this.wrapper as HTMLElement);\n else DomHandler.appendChild(this.wrapper, this.appendTo);\n }\n }\n\n restoreAppend() {\n if (this.wrapper && this.appendTo) {\n this.el.nativeElement.appendChild(this.wrapper);\n }\n }\n\n enableModality() {\n if (this.option('blockScroll')) {\n DomHandler.addClass(this.document.body, 'p-overflow-hidden');\n }\n\n if (this.option('dismissableMask')) {\n this.maskClickListener = this.renderer.listen(this.wrapper, 'mousedown', (event: any) => {\n if (this.wrapper && this.wrapper.isSameNode(event.target)) {\n this.close(event);\n }\n });\n }\n }\n\n disableModality() {\n this.maskVisible = false;\n\n if (this.option('blockScroll')) {\n DomHandler.removeClass(this.document.body, 'p-overflow-hidden');\n }\n\n if (this.dismissableMask) {\n this.unbindMaskClickListener();\n }\n\n if (this.container && !(this.cd as ViewRef)['destroyed']) {\n this.cd.detectChanges();\n }\n }\n\n createStyle() {\n if (!this.styleElement) {\n this.styleElement = this.document.createElement('style');\n this.styleElement.type = 'text/css';\n this.document.head.appendChild(this.styleElement);\n let innerHTML = '';\n for (let breakpoint in this.breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-dialog[${this.id}] {\n width: ${this.breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n this.styleElement.innerHTML = innerHTML;\n }\n }\n\n close(event: Event) {\n if (this.confirmation?.rejectEvent) {\n this.confirmation.rejectEvent.emit(ConfirmEventType.CANCEL);\n }\n\n this.hide(ConfirmEventType.CANCEL);\n event.preventDefault();\n }\n\n hide(type?: ConfirmEventType) {\n this.onHide.emit(type);\n this.visible = false;\n this.confirmation = null;\n this.confirmationOptions = null;\n }\n\n moveOnTop() {\n if (this.autoZIndex) {\n ZIndexUtils.set('modal', this.container, this.baseZIndex + this.config.zIndex.modal);\n (<HTMLElement>this.wrapper).style.zIndex = String(parseInt((<HTMLDivElement>this.container).style.zIndex, 10) - 1);\n }\n }\n\n getMaskClass() {\n let maskClass: { [key: string]: boolean } = { 'p-dialog-mask p-component-overlay': true, 'p-dialog-mask-scrollblocker': this.blockScroll };\n maskClass[this.getPositionClass().toString()] = true;\n return maskClass;\n }\n\n getPositionClass() {\n const positions = ['left', 'right', 'top', 'top-left', 'top-right', 'bottom', 'bottom-left', 'bottom-right'];\n const pos = positions.find((item) => item === this.position);\n\n return pos ? `p-dialog-${pos}` : '';\n }\n\n bindGlobalListeners() {\n if ((this.option('closeOnEscape') && this.closable) || (this.focusTrap && !this.documentEscapeListener)) {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : 'document';\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27 && this.option('closeOnEscape') && this.closable) {\n if (parseInt((this.container as HTMLDivElement).style.zIndex) === ZIndexUtils.get(this.container) && this.visible) {\n this.close(event);\n }\n }\n\n if (event.which === 9 && this.focusTrap) {\n event.preventDefault();\n\n let focusableElements = DomHandler.getFocusableElements(this.container as HTMLDivElement);\n\n if (focusableElements && focusableElements.length > 0) {\n if (!focusableElements[0].ownerDocument.activeElement) {\n focusableElements[0].focus();\n } else {\n let focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0) focusableElements[focusableElements.length - 1].focus();\n else focusableElements[focusedIndex - 1].focus();\n } else {\n if (focusedIndex == -1 || focusedIndex === focusableElements.length - 1) focusableElements[0].focus();\n else focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n });\n }\n }\n\n unbindGlobalListeners() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n onOverlayHide() {\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n\n this.disableModality();\n this.unbindGlobalListeners();\n this.container = null;\n }\n\n destroyStyle() {\n if (this.styleElement) {\n this.document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n }\n\n ngOnDestroy() {\n this.restoreAppend();\n this.onOverlayHide();\n this.subscription.unsubscribe();\n\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n\n this.destroyStyle();\n }\n\n accept() {\n if (this.confirmation && this.confirmation.acceptEvent) {\n this.confirmation.acceptEvent.emit();\n }\n\n this.hide(ConfirmEventType.ACCEPT);\n }\n\n reject() {\n if (this.confirmation && this.confirmation.rejectEvent) {\n this.confirmation.rejectEvent.emit(ConfirmEventType.REJECT);\n }\n\n this.hide(ConfirmEventType.REJECT);\n }\n\n get acceptButtonLabel(): string {\n return this.option('acceptLabel') || this.config.getTranslation(TranslationKeys.ACCEPT);\n }\n\n get rejectButtonLabel(): string {\n return this.option('rejectLabel') || this.config.getTranslation(TranslationKeys.REJECT);\n }\n}\n\n@NgModule({\n imports: [CommonModule, ButtonModule, RippleModule, TimesIcon, CheckIcon],\n exports: [ConfirmDialog, ButtonModule, SharedModule],\n declarations: [ConfirmDialog]\n})\nexport class ConfirmDialogModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}