primeng 19.0.7 → 19.0.8

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.
@@ -84,7 +84,7 @@ export declare class AccordionHeader extends BaseComponent {
84
84
  * @group Templates
85
85
  */
86
86
  toggleicon: TemplateRef<AccordionToggleIconTemplateContext> | undefined;
87
- onClick(): void;
87
+ onClick(event?: MouseEvent | KeyboardEvent): void;
88
88
  onFocus(): void;
89
89
  onKeydown(event: KeyboardEvent): void;
90
90
  changeActiveValue(): void;
@@ -22,6 +22,7 @@ export declare class BaseComponent {
22
22
  get _name(): string;
23
23
  get componentStyle(): any;
24
24
  attrSelector: string;
25
+ private themeChangeListeners;
25
26
  _getHostInstance(instance: any): any;
26
27
  _getOptionValue(options: any, key?: string, params?: {}): any;
27
28
  ngOnInit(): void;
@@ -230,10 +230,11 @@ export declare class ConfirmDialog extends BaseComponent implements OnInit, OnDe
230
230
  getButtonStyleClass(cx: string, opt: string): string;
231
231
  getElementToFocus(): Element;
232
232
  createStyle(): void;
233
- close(event: Event): void;
233
+ close(): void;
234
234
  hide(type?: ConfirmEventType): void;
235
235
  destroyStyle(): void;
236
236
  ngOnDestroy(): void;
237
+ onVisibleChange(value: boolean): void;
237
238
  onAccept(): void;
238
239
  onReject(): void;
239
240
  get acceptButtonLabel(): string;
@@ -241,8 +241,18 @@ class AccordionHeader extends BaseComponent {
241
241
  * @group Templates
242
242
  */
243
243
  toggleicon;
244
- onClick() {
244
+ onClick(event) {
245
+ const wasActive = this.active();
245
246
  this.changeActiveValue();
247
+ const isActive = this.active();
248
+ const panels = this.pcAccordion.panelList ? this.pcAccordion.panelList.toArray() : [];
249
+ const index = panels.findIndex((panel) => panel === this.pcAccordionPanel);
250
+ if (!wasActive && isActive) {
251
+ this.pcAccordion.onOpen.emit({ originalEvent: event, index });
252
+ }
253
+ else if (wasActive && !isActive) {
254
+ this.pcAccordion.onClose.emit({ originalEvent: event, index });
255
+ }
246
256
  }
247
257
  onFocus() {
248
258
  this.pcAccordion.selectOnFocus() && this.changeActiveValue();
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-accordion.mjs","sources":["../../src/accordion/style/accordionstyle.ts","../../src/accordion/accordion.ts","../../src/accordion/primeng-accordion.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-accordionpanel {\n display: flex;\n flex-direction: column;\n border-style: solid;\n border-width: ${dt('accordion.panel.border.width')};\n border-color: ${dt('accordion.panel.border.color')};\n}\n\n.p-accordionheader {\n all: unset;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: ${dt('accordion.header.padding')};\n color: ${dt('accordion.header.color')};\n background: ${dt('accordion.header.background')};\n border-style: solid;\n border-width: ${dt('accordion.header.border.width')};\n border-color: ${dt('accordion.header.border.color')};\n font-weight: ${dt('accordion.header.font.weight')};\n border-radius: ${dt('accordion.header.border.radius')};\n transition: background ${dt('accordion.transition.duration')}; color ${dt('accordion.transition.duration')}color ${dt('accordion.transition.duration')}, outline-color ${dt('accordion.transition.duration')}, box-shadow ${dt(\n 'accordion.transition.duration'\n )};\n outline-color: transparent;\n position: relative;\n overflow: hidden;\n}\n\n.p-accordionpanel:first-child > .p-accordionheader {\n border-width: ${dt('accordion.header.first.border.width')};\n border-start-start-radius: ${dt('accordion.header.first.top.border.radius')};\n border-start-end-radius: ${dt('accordion.header.first.top.border.radius')};\n}\n\n.p-accordionpanel:last-child > .p-accordionheader {\n border-end-start-radius: ${dt('accordion.header.last.bottom.border.radius')};\n border-end-end-radius: ${dt('accordion.header.last.bottom.border.radius')};\n}\n\n.p-accordionpanel:last-child.p-accordionpanel-active > .p-accordionheader {\n border-end-start-radius: ${dt('accordion.header.last.active.bottom.border.radius')};\n border-end-end-radius:${dt('accordion.header.last.active.bottom.border.radius')};\n}\n\n.p-accordionheader-toggle-icon {\n color: ${dt('accordion.header.toggle.icon.color')};\n}\n\n.p-accordionpanel:not(.p-disabled) .p-accordionheader:focus-visible {\n box-shadow: ${dt('accordion.header.focus.ring.shadow')};\n outline: ${dt('accordion.header.focus.ring.width')} ${dt('accordion.header.focus.ring.style')} ${dt('accordion.header.focus.ring.color')};\n outline-offset: ${dt('accordion.header.focus.ring.offset')};\n}\n\n.p-accordionpanel:not(.p-accordionpanel-active):not(.p-disabled) > .p-accordionheader:hover {\n background: ${dt('accordion.header.hover.background')};\n color: ${dt('accordion.header.hover.color')}\n}\n\n.p-accordionpanel:not(.p-accordionpanel-active):not(.p-disabled) .p-accordionheader:hover .p-accordionheader-toggle-icon {\n color: ${dt('accordion.header.toggle.icon.hover.color')};\n}\n\n.p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader {\n background: ${dt('accordion.header.active.background')};\n color: ${dt('accordion.header.active.color')}\n}\n\n.p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader .p-accordionheader-toggle-icon {\n color: ${dt('accordion.header.toggle.icon.active.color')};\n}\n\n.p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader:hover {\n background: ${dt('accordion.header.active.hover.background')};\n color: ${dt('accordion.header.active.hover.color')}\n}\n\n.p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader:hover .p-accordionheader-toggle-icon {\n color: ${dt('accordion.header.toggle.icon.active.hover.color')};\n}\n\n.p-accordioncontent-content {\n border-style: solid;\n border-width: ${dt('accordion.content.border.width')};\n border-color: ${dt('accordion.content.border.color')};\n background-color: ${dt('accordion.content.background')};\n color: ${dt('accordion.content.color')};\n padding: ${dt('accordion.content.padding')}\n}\n\n/*For PrimeNG*/\n\n.p-accordion .p-accordioncontent {\n overflow: hidden;\n}\n\n.p-accordionpanel.p-accordioncontent:not(.ng-animating) {\n overflow: inherit;\n}\n\n.p-accordionheader-toggle-icon.icon-start {\n order: -1;\n}\n\n.p-accordionheader:has(.p-accordionheader-toggle-icon.icon-start) {\n justify-content: flex-start;\n gap: ${dt('accordion.header.padding')};\n}\n`;\n\nconst classes = {\n root: 'p-accordion p-component'\n};\n\n@Injectable()\nexport class AccordionStyle extends BaseStyle {\n name = 'accordion';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Accordion groups a collection of contents in tabs.\n *\n * [Live Demo](https://www.primeng.org/accordion/)\n *\n * @module accordionstyle\n *\n */\nexport enum AccordionClasses {\n /**\n * Class name of the root element\n */\n root = 'p-accordion',\n /**\n * Class name of the content wrapper\n */\n contentwrapper = 'p-accordioncontent',\n /**\n * Class name of the content\n */\n content = 'p-accordioncontent-content',\n /**\n * Class name of the header\n */\n header = 'p-accordionheader',\n /**\n * Class name of the toggle icon\n */\n toggleicon = 'p-accordionheader-toggle-icon',\n /**\n * Class name of the panel\n */\n panel = 'p-accordionpanel'\n}\n\nexport interface AccordionStyle extends BaseStyle {}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n inject,\n Input,\n input,\n InputSignalWithTransform,\n model,\n NgModule,\n numberAttribute,\n OnDestroy,\n Output,\n QueryList,\n signal,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { findSingle, focus, getAttribute, uuid } from '@primeuix/utils';\nimport { BlockableUI, Header, PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { ChevronDownIcon, ChevronUpIcon } from 'primeng/icons';\nimport { Ripple } from 'primeng/ripple';\nimport { transformToBoolean } from 'primeng/utils';\nimport { Subscription } from 'rxjs';\nimport { AccordionStyle } from './style/accordionstyle';\n\n/**\n * Custom tab open event.\n * @see {@link onOpen}\n * @group Interface\n */\nexport interface AccordionTabOpenEvent {\n /**\n * Browser event.\n */\n originalEvent: Event;\n /**\n * Opened tab index.\n */\n index: number;\n}\n\n/**\n * Custom tab close event.\n * @see {@link onClose}\n * @extends {AccordionTabOpenEvent}\n * @group Interface\n */\nexport interface AccordionTabCloseEvent extends AccordionTabOpenEvent {}\n\n/**\n * Toggle icon template context.\n * @group Interface\n */\nexport interface AccordionToggleIconTemplateContext {\n /**\n * Represents the active status of the panel.\n */\n active: boolean;\n}\n\n/**\n * AccordionPanel is a helper component for Accordion component.\n * @group Components\n */\n@Component({\n selector: 'p-accordion-panel, p-accordionpanel',\n imports: [CommonModule],\n standalone: true,\n template: `<ng-content />`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.p-accordionpanel]': 'true',\n '[class.p-accordionpanel-active]': 'active()',\n '[class.p-disabled]': 'disabled()',\n '[attr.data-pc-name]': '\"accordionpanel\"',\n '[attr.data-p-disabled]': 'disabled()',\n '[attr.data-p-active]': 'active()'\n }\n})\nexport class AccordionPanel extends BaseComponent {\n pcAccordion = inject(forwardRef(() => Accordion));\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<undefined | null | string | number | string[] | number[]>(undefined);\n /**\n * Disables the tab when enabled.\n * @defaultValue false\n * @group Props\n */\n disabled: InputSignalWithTransform<any, boolean> = input(false, { transform: (v: any) => transformToBoolean(v) });\n\n active = computed(() => (this.pcAccordion.multiple() ? this.valueEquals(this.pcAccordion.value(), this.value()) : this.pcAccordion.value() === this.value()));\n\n valueEquals(currentValue: any, value: any): boolean {\n if (Array.isArray(currentValue)) {\n return currentValue.includes(value);\n }\n return currentValue === value;\n }\n}\n/**\n * AccordionHeader is a helper component for Accordion component.\n * @group Components\n */\n@Component({\n selector: 'p-accordion-header, p-accordionheader',\n imports: [CommonModule, ChevronDownIcon, ChevronUpIcon],\n standalone: true,\n template: `\n <ng-content />\n @if (toggleicon) {\n <ng-template *ngTemplateOutlet=\"toggleicon; context: { active: active() }\"></ng-template>\n } @else {\n <ng-container *ngIf=\"active()\">\n <span *ngIf=\"pcAccordion.collapseIcon\" [class]=\"pcAccordion.collapseIcon\" [ngClass]=\"pcAccordion.iconClass\" [attr.aria-hidden]=\"true\"></span>\n <ChevronDownIcon *ngIf=\"!pcAccordion.collapseIcon\" [ngClass]=\"pcAccordion.iconClass\" [attr.aria-hidden]=\"true\" />\n </ng-container>\n <ng-container *ngIf=\"!active()\">\n <span *ngIf=\"pcAccordion.expandIcon\" [class]=\"pcAccordion.expandIcon\" [ngClass]=\"pcAccordion.iconClass\" [attr.aria-hidden]=\"true\"></span>\n <ChevronUpIcon *ngIf=\"!pcAccordion.expandIcon\" [ngClass]=\"pcAccordion.iconClass\" [attr.aria-hidden]=\"true\" />\n </ng-container>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.p-accordionheader]': 'true',\n '[attr.id]': 'id()',\n '[attr.aria-expanded]': 'active()',\n '[attr.aria-controls]': 'ariaControls()',\n '[attr.role]': '\"button\"',\n '[attr.tabindex]': '\"0\"',\n '[attr.data-p-active]': 'active()',\n '[attr.data-p-disabled]': 'disabled()',\n '[attr.data-pc-name]': '\"accordionheader\"',\n '[style.user-select]': '\"none\"'\n },\n hostDirectives: [Ripple]\n})\nexport class AccordionHeader extends BaseComponent {\n pcAccordion = inject(forwardRef(() => Accordion));\n\n pcAccordionPanel = inject(forwardRef(() => AccordionPanel));\n\n id = computed(() => `${this.pcAccordion.id()}_accordionheader_${this.pcAccordionPanel.value()}`);\n\n active = computed(() => this.pcAccordionPanel.active());\n\n disabled = computed(() => this.pcAccordionPanel.disabled());\n\n ariaControls = computed(() => `${this.pcAccordion.id()}_accordioncontent_${this.pcAccordionPanel.value()}`);\n /**\n * Toggle icon template.\n * @type {TemplateRef<AccordionToggleIconTemplateContext>} context - Context of the template\n * @example\n * ```html\n * <ng-template #toggleicon let-active=\"active\"> </ng-template>\n * ```\n * @see {@link AccordionToggleIconTemplateContext}\n * @group Templates\n */\n @ContentChild('toggleicon') toggleicon: TemplateRef<AccordionToggleIconTemplateContext> | undefined;\n\n @HostListener('click', ['$event']) onClick() {\n this.changeActiveValue();\n }\n\n @HostListener('focus', ['$event']) onFocus() {\n this.pcAccordion.selectOnFocus() && this.changeActiveValue();\n }\n\n @HostListener('keydown', ['$event']) onKeydown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowDown':\n this.arrowDownKey(event);\n break;\n case 'ArrowUp':\n this.arrowUpKey(event);\n break;\n case 'Home':\n this.onHomeKey(event);\n break;\n case 'End':\n this.onEndKey(event);\n break;\n case 'Enter':\n case 'Space':\n case 'NumpadEnter':\n this.onEnterKey(event);\n break;\n default:\n break;\n }\n }\n\n changeActiveValue() {\n this.pcAccordion.updateValue(this.pcAccordionPanel.value());\n }\n\n private findPanel(headerElement) {\n return headerElement?.closest('[data-pc-name=\"accordionpanel\"]');\n }\n\n private findHeader(panelElement) {\n return findSingle(panelElement, '[data-pc-name=\"accordionheader\"]');\n }\n\n private findNextPanel(panelElement, selfCheck = false) {\n const element = selfCheck ? panelElement : panelElement.nextElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') ? this.findNextPanel(element) : this.findHeader(element)) : null;\n }\n\n private findPrevPanel(panelElement, selfCheck = false) {\n const element = selfCheck ? panelElement : panelElement.previousElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') ? this.findPrevPanel(element) : this.findHeader(element)) : null;\n }\n\n private findFirstPanel() {\n return this.findNextPanel(this.pcAccordion.el.nativeElement.firstElementChild, true);\n }\n\n private findLastPanel() {\n return this.findPrevPanel(this.pcAccordion.el.nativeElement.lastElementChild, true);\n }\n\n private changeFocusedPanel(event, element) {\n focus(element);\n }\n\n private arrowDownKey(event: KeyboardEvent) {\n const nextPanel = this.findNextPanel(this.findPanel(event.currentTarget));\n nextPanel ? this.changeFocusedPanel(event, nextPanel) : this.onHomeKey(event);\n event.preventDefault();\n }\n\n private arrowUpKey(event: KeyboardEvent) {\n const prevPanel = this.findPrevPanel(this.findPanel(event.currentTarget));\n\n prevPanel ? this.changeFocusedPanel(event, prevPanel) : this.onEndKey(event);\n event.preventDefault();\n }\n\n private onHomeKey(event: KeyboardEvent) {\n const firstPanel = this.findFirstPanel();\n\n this.changeFocusedPanel(event, firstPanel);\n event.preventDefault();\n }\n\n private onEndKey(event: KeyboardEvent) {\n const lastPanel = this.findLastPanel();\n\n this.changeFocusedPanel(event, lastPanel);\n event.preventDefault();\n }\n\n private onEnterKey(event: KeyboardEvent) {\n this.changeActiveValue();\n event.preventDefault();\n }\n}\n\n@Component({\n selector: 'p-accordion-content, p-accordioncontent',\n imports: [CommonModule],\n standalone: true,\n template: ` <div class=\"p-accordioncontent-content\">\n <ng-content />\n </div>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.p-accordioncontent]': 'true',\n '[attr.id]': 'id()',\n '[attr.role]': '\"region\"',\n '[attr.data-pc-name]': '\"accordioncontent\"',\n '[attr.data-p-active]': 'active()',\n '[attr.aria-labelledby]': 'ariaLabelledby()',\n '[@content]': `active()\n ? { value: 'visible', params: { transitionParams: pcAccordion.transitionOptions } }\n : { value: 'hidden', params: { transitionParams: pcAccordion.transitionOptions } }`\n },\n animations: [\n trigger('content', [\n state(\n 'hidden',\n style({\n height: '0',\n visibility: 'hidden'\n })\n ),\n state(\n 'visible',\n style({\n height: '*',\n visibility: 'visible'\n })\n ),\n transition('visible <=> hidden', [animate('{{transitionParams}}')]),\n transition('void => *', animate(0))\n ])\n ]\n})\nexport class AccordionContent extends BaseComponent {\n pcAccordion = inject(forwardRef(() => Accordion));\n\n pcAccordionPanel = inject(forwardRef(() => AccordionPanel));\n\n active = computed(() => this.pcAccordionPanel.active());\n\n ariaLabelledby = computed(() => `${this.pcAccordion.id()}_accordionheader_${this.pcAccordionPanel.value()}`);\n\n id = computed(() => `${this.pcAccordion.id()}_accordioncontent_${this.pcAccordionPanel.value()}`);\n}\n\n/**\n * AccordionTab is a helper component for Accordion.\n * @deprecated Use AccordionPanel, AccordionHeader, AccordionContent instead.\n * @group Components\n */\n@Component({\n selector: 'p-accordionTab, p-accordion-tab, p-accordiontab',\n standalone: true,\n imports: [CommonModule, ChevronDownIcon, ChevronUpIcon],\n template: `\n <button\n class=\"p-accordionheader\"\n type=\"button\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"selected\"\n [attr.aria-level]=\"headerAriaLevel\"\n [class.p-disabled]=\"disabled\"\n [attr.data-p-disabled]=\"disabled\"\n [attr.data-pc-section]=\"'accordionheader'\"\n (click)=\"toggle($event)\"\n (keydown)=\"onKeydown($event)\"\n [ngClass]=\"headerStyleClass\"\n [ngStyle]=\"headerStyle\"\n [attr.tabindex]=\"disabled ? null : 0\"\n [attr.id]=\"getTabHeaderActionId(id)\"\n [attr.aria-controls]=\"getTabContentId(id)\"\n >\n @if (!headerTemplate && !_headerTemplate) {\n {{ header }}\n } @else {\n @if (headerTemplate || _headerTemplate) {\n <ng-container *ngTemplateOutlet=\"headerTemplate || _headerTemplate\"></ng-container>\n }\n @if (headerFacet) {\n <ng-content select=\"p-header\" />\n }\n }\n @if (iconTemplate || _iconTemplate) {\n <ng-template *ngTemplateOutlet=\"iconTemplate || _iconTemplate; context: { $implicit: selected }\"></ng-template>\n } @else {\n <ng-container *ngIf=\"selected\">\n <span *ngIf=\"accordion.collapseIcon\" [class]=\"accordion.collapseIcon\" [ngClass]=\"iconClass\" [attr.aria-hidden]=\"true\"></span>\n <ChevronDownIcon *ngIf=\"!accordion.collapseIcon\" [ngClass]=\"iconClass\" [attr.aria-hidden]=\"true\" />\n </ng-container>\n <ng-container *ngIf=\"!selected\">\n <span *ngIf=\"accordion.expandIcon\" [class]=\"accordion.expandIcon\" [ngClass]=\"iconClass\" [attr.aria-hidden]=\"true\"></span>\n <ChevronUpIcon *ngIf=\"!accordion.expandIcon\" [ngClass]=\"iconClass\" [attr.aria-hidden]=\"true\" />\n </ng-container>\n }\n </button>\n <div\n [attr.id]=\"getTabContentId(id)\"\n class=\"p-accordioncontent\"\n [@tabContent]=\"selected ? { value: 'visible', params: { transitionParams: transitionOptions } } : { value: 'hidden', params: { transitionParams: transitionOptions } }\"\n role=\"region\"\n [attr.aria-hidden]=\"!selected\"\n [attr.aria-labelledby]=\"getTabHeaderActionId(id)\"\n [attr.data-pc-section]=\"'toggleablecontent'\"\n >\n <div class=\"p-accordioncontent-content\" [ngClass]=\"contentStyleClass\" [ngStyle]=\"contentStyle\">\n <ng-content />\n <ng-container *ngIf=\"(contentTemplate || _contentTemplate) && (cache ? loaded : selected)\">\n <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate\"></ng-container>\n </ng-container>\n </div>\n </div>\n `,\n animations: [\n trigger('tabContent', [\n state(\n 'hidden',\n style({\n height: '0',\n visibility: 'hidden'\n })\n ),\n state(\n 'visible',\n style({\n height: '*',\n visibility: 'visible'\n })\n ),\n transition('visible <=> hidden', [animate('{{transitionParams}}')]),\n transition('void => *', animate(0))\n ])\n ],\n host: {\n '[class.p-accordionpanel]': 'true',\n '[class.p-accordionpanel-active]': 'selected',\n '[attr.data-pc-name]': '\"accordiontab\"'\n },\n providers: [AccordionStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class AccordionTab extends BaseComponent implements AfterContentInit, OnDestroy {\n @HostBinding('class') get hostClass() {\n return this.tabStyleClass;\n }\n @HostBinding('style') get hostStyle() {\n return this.tabStyle;\n }\n /**\n * Current id state as a string.\n * @group Props\n */\n @Input() id: string | undefined = uuid('pn_id_');\n /**\n * Used to define the header of the tab.\n * @group Props\n */\n @Input() header: string | undefined;\n /**\n * Inline style of the tab header.\n * @group Props\n */\n @Input() headerStyle: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the tab.\n * @group Props\n */\n @Input() tabStyle: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the tab content.\n * @group Props\n */\n @Input() contentStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the tab.\n * @group Props\n */\n @Input() tabStyleClass: string | undefined;\n /**\n * Style class of the tab header.\n * @group Props\n */\n @Input() headerStyleClass: string | undefined;\n /**\n * Style class of the tab content.\n * @group Props\n */\n @Input() contentStyleClass: string | undefined;\n /**\n * Whether the tab is disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean | undefined;\n /**\n * Whether a lazy loaded panel should avoid getting loaded again on reselection.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) cache: boolean = true;\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '400ms cubic-bezier(0.86, 0, 0.07, 1)';\n /**\n * Position of the icon.\n * @group Props\n */\n @Input() iconPos: 'end' | 'start' = 'start';\n /**\n * The value that returns the selection.\n * @group Props\n */\n @Input() get selected(): boolean {\n return this._selected;\n }\n set selected(val: boolean) {\n this._selected = val;\n\n if (!this.loaded) {\n if (this._selected && this.cache) {\n this.loaded = true;\n }\n\n this.cd.detectChanges();\n }\n }\n /**\n * The aria-level that each accordion header will have. The default value is 2 as per W3C specifications\n * @group Props\n */\n @Input({ transform: numberAttribute }) headerAriaLevel: number = 2;\n /**\n * Event triggered by changing the choice.\n * @param {boolean} value - Boolean value indicates that the option is changed.\n * @group Emits\n */\n @Output() selectedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @ContentChildren(Header) headerFacet!: QueryList<Header>;\n\n private _selected: boolean = false;\n\n get iconClass() {\n if (this.iconPos === 'end') {\n return 'p-accordionheader-toggle-icon icon-end';\n } else {\n return 'p-accordionheader-toggle-icon icon-start';\n }\n }\n /**\n * Content template for the content of the drawer.\n * @group Templates\n */\n @ContentChild('header', { descendants: false }) headerTemplate: TemplateRef<any> | undefined;\n /**\n * Template for the header icon.\n * @group Templates\n */\n @ContentChild('icon', { descendants: false }) iconTemplate: TemplateRef<any> | undefined;\n /**\n * Content template for the footer of the drawer.\n * @group Templates\n */\n @ContentChild('content', { descendants: false }) contentTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _headerTemplate: TemplateRef<any>;\n\n _iconTemplate: TemplateRef<any>;\n\n _contentTemplate: TemplateRef<any>;\n\n loaded: boolean = false;\n\n accordion = inject(forwardRef(() => Accordion)) as Accordion;\n\n _componentStyle = inject(AccordionStyle);\n\n ngOnInit() {\n super.ngOnInit();\n console.log('AccordionTab is deprecated as of v18, please use the new structure instead.');\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this._contentTemplate = item.template;\n break;\n\n case 'header':\n this._headerTemplate = item.template;\n break;\n\n case 'icon':\n this._iconTemplate = item.template;\n break;\n\n default:\n this._contentTemplate = item.template;\n break;\n }\n });\n }\n\n toggle(event?: MouseEvent | KeyboardEvent) {\n if (this.disabled) {\n return false;\n }\n\n let index = this.findTabIndex();\n\n if (this.selected) {\n this.selected = false;\n this.accordion.onClose.emit({ originalEvent: event, index: index });\n } else {\n if (!this.accordion.multiple()) {\n for (var i = 0; i < this.accordion.tabs.length; i++) {\n if (this.accordion.tabs[i].selected) {\n this.accordion.tabs[i].selected = false;\n this.accordion.tabs[i].selectedChange.emit(false);\n this.accordion.tabs[i].cd.markForCheck();\n }\n }\n }\n\n this.selected = true;\n this.loaded = true;\n this.accordion.onOpen.emit({ originalEvent: event, index: index });\n }\n\n this.selectedChange.emit(this.selected);\n this.accordion.updateActiveIndex();\n this.cd.markForCheck();\n\n event?.preventDefault();\n }\n\n findTabIndex() {\n let index = -1;\n for (var i = 0; i < this.accordion.tabs.length; i++) {\n if (this.accordion.tabs[i] == this) {\n index = i;\n break;\n }\n }\n return index;\n }\n\n onKeydown(event: KeyboardEvent) {\n switch (event.code) {\n case 'Enter':\n case 'Space':\n this.toggle(event);\n event.preventDefault();\n break;\n default:\n break;\n }\n }\n\n getTabHeaderActionId(tabId) {\n return `${tabId}_header_action`;\n }\n\n getTabContentId(tabId) {\n return `${tabId}_content`;\n }\n\n ngOnDestroy() {\n this.accordion.tabs.splice(this.findTabIndex(), 1);\n\n super.ngOnDestroy();\n }\n}\n\n/**\n * Accordion groups a collection of contents in tabs.\n * @group Components\n */\n@Component({\n selector: 'p-accordion',\n standalone: true,\n imports: [CommonModule, SharedModule],\n template: ` <ng-content /> `,\n host: {\n '[class.p-accordion]': 'true',\n '[class.p-component]': 'true'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AccordionStyle]\n})\nexport class Accordion extends BaseComponent implements BlockableUI, AfterContentInit, OnDestroy {\n @HostBinding('class') get hostClass() {\n return this.styleClass;\n }\n\n @HostBinding('style') get hostStyle() {\n return this.style;\n }\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<undefined | null | string | number | string[] | number[]>(undefined);\n /**\n * When enabled, multiple tabs can be activated at the same time.\n * @defaultValue false\n * @group Props\n */\n multiple = input(false, { transform: (v: any) => transformToBoolean(v) });\n /**\n * Inline style of the tab header and content.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Icon of a collapsed tab.\n * @group Props\n */\n @Input() expandIcon: string | undefined;\n /**\n * Icon of an expanded tab.\n * @group Props\n */\n @Input() collapseIcon: string | undefined;\n /**\n * When enabled, the focused tab is activated.\n * @defaultValue false\n * @group Props\n */\n selectOnFocus = input(false, { transform: (v: any) => transformToBoolean(v) });\n set activeIndex(val: number | number[] | null | undefined) {\n this._activeIndex = val;\n if (this.preventActiveIndexPropagation) {\n this.preventActiveIndexPropagation = false;\n return;\n }\n\n this.updateSelectionState();\n }\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '400ms cubic-bezier(0.86, 0, 0.07, 1)';\n /**\n * Returns the active index.\n * @param {number | number[]} value - New index.\n * @deprecated use native valueChange emitter of the value model.\n * @group Emits\n */\n @Output() activeIndexChange: EventEmitter<number | number[]> = new EventEmitter<number | number[]>();\n\n set headerAriaLevel(val: number) {\n if (typeof val === 'number' && val > 0) {\n this._headerAriaLevel = val;\n } else if (this._headerAriaLevel !== 2) {\n this._headerAriaLevel = 2;\n }\n }\n /**\n * Callback to invoke when an active tab is collapsed by clicking on the header.\n * @param {AccordionTabCloseEvent} event - Custom tab close event.\n * @group Emits\n */\n @Output() onClose: EventEmitter<AccordionTabCloseEvent> = new EventEmitter();\n /**\n * Callback to invoke when a tab gets expanded.\n * @param {AccordionTabOpenEvent} event - Custom tab open event.\n * @group Emits\n */\n @Output() onOpen: EventEmitter<AccordionTabOpenEvent> = new EventEmitter();\n\n id = signal(uuid('pn_id_'));\n\n @ContentChildren(AccordionTab, { descendants: true }) tabList: QueryList<AccordionTab> | undefined;\n\n tabListSubscription: Subscription | null = null;\n\n private _activeIndex: any;\n\n private _headerAriaLevel: number = 2;\n\n preventActiveIndexPropagation: boolean = false;\n\n public tabs: AccordionTab[] = [];\n\n _componentStyle = inject(AccordionStyle);\n\n /**\n * Index of the active tab or an array of indexes in multiple mode.\n * @deprecated use value property with new architecture instead.\n * @group Props\n */\n @Input() get activeIndex(): number | number[] | null | undefined {\n return this._activeIndex;\n }\n\n /**\n * The aria-level that each accordion header will have. The default value is 2 as per W3C specifications\n * @deprecated use AccoridonHeader component and bind attribute to the host.\n * @group Props\n */\n @Input() get headerAriaLevel(): number {\n return this._headerAriaLevel;\n }\n\n @HostListener('keydown', ['$event'])\n onKeydown(event) {\n switch (event.code) {\n case 'ArrowDown':\n this.onTabArrowDownKey(event);\n break;\n\n case 'ArrowUp':\n this.onTabArrowUpKey(event);\n break;\n\n case 'Home':\n if (!event.shiftKey) {\n this.onTabHomeKey(event);\n }\n break;\n\n case 'End':\n if (!event.shiftKey) {\n this.onTabEndKey(event);\n }\n break;\n }\n }\n\n onTabArrowDownKey(event) {\n const nextHeaderAction = this.findNextHeaderAction(event.target.parentElement);\n nextHeaderAction ? this.changeFocusedTab(nextHeaderAction) : this.onTabHomeKey(event);\n\n event.preventDefault();\n }\n\n onTabArrowUpKey(event) {\n const prevHeaderAction = this.findPrevHeaderAction(event.target.parentElement);\n prevHeaderAction ? this.changeFocusedTab(prevHeaderAction) : this.onTabEndKey(event);\n\n event.preventDefault();\n }\n\n onTabHomeKey(event) {\n const firstHeaderAction = this.findFirstHeaderAction();\n this.changeFocusedTab(firstHeaderAction);\n event.preventDefault();\n }\n\n changeFocusedTab(element) {\n if (element) {\n focus(element);\n\n if (this.selectOnFocus()) {\n this.tabs.forEach((tab, i) => {\n let selected = this.multiple() ? this._activeIndex.includes(i) : i === this._activeIndex;\n\n if (this.multiple()) {\n if (!this._activeIndex) {\n this._activeIndex = [];\n }\n if (tab.id == element.id) {\n tab.selected = !tab.selected;\n if (!this._activeIndex.includes(i)) {\n this._activeIndex.push(i);\n } else {\n this._activeIndex = this._activeIndex.filter((ind) => ind !== i);\n }\n }\n } else {\n if (tab.id == element.id) {\n tab.selected = !tab.selected;\n this._activeIndex = i;\n } else {\n tab.selected = false;\n }\n }\n\n tab.selectedChange.emit(selected);\n this.activeIndexChange.emit(this._activeIndex);\n tab.cd.markForCheck();\n });\n }\n }\n }\n\n findNextHeaderAction(tabElement, selfCheck = false) {\n const nextTabElement = selfCheck ? tabElement : tabElement.nextElementSibling;\n const headerElement = findSingle(nextTabElement, '[data-pc-section=\"accordionheader\"]');\n\n return headerElement ? (getAttribute(headerElement, 'data-p-disabled') ? this.findNextHeaderAction(headerElement.parentElement) : findSingle(headerElement.parentElement, '[data-pc-section=\"accordionheader\"]')) : null;\n }\n\n findPrevHeaderAction(tabElement, selfCheck = false) {\n const prevTabElement = selfCheck ? tabElement : tabElement.previousElementSibling;\n const headerElement = findSingle(prevTabElement, '[data-pc-section=\"accordionheader\"]');\n\n return headerElement ? (getAttribute(headerElement, 'data-p-disabled') ? this.findPrevHeaderAction(headerElement.parentElement) : findSingle(headerElement.parentElement, '[data-pc-section=\"accordionheader\"]')) : null;\n }\n\n findFirstHeaderAction() {\n const firstEl = this.el.nativeElement.firstElementChild;\n return this.findNextHeaderAction(firstEl, true);\n }\n\n findLastHeaderAction() {\n const lastEl = this.el.nativeElement.lastElementChild;\n return this.findPrevHeaderAction(lastEl, true);\n }\n\n onTabEndKey(event) {\n const lastHeaderAction = this.findLastHeaderAction();\n this.changeFocusedTab(lastHeaderAction);\n event.preventDefault();\n }\n\n ngAfterContentInit() {\n this.initTabs();\n\n this.tabListSubscription = (this.tabList as QueryList<AccordionTab>).changes.subscribe((_) => {\n this.initTabs();\n });\n }\n\n initTabs() {\n this.tabs = (this.tabList as QueryList<AccordionTab>).toArray();\n\n this.tabs.forEach((tab) => {\n tab.headerAriaLevel = this._headerAriaLevel;\n });\n\n this.updateSelectionState();\n this.cd.markForCheck();\n }\n\n getBlockableElement(): HTMLElement {\n return this.el.nativeElement.children[0];\n }\n\n updateSelectionState() {\n if (this.tabs && this.tabs.length && this._activeIndex != null) {\n for (let i = 0; i < this.tabs.length; i++) {\n let selected = this.multiple() ? this._activeIndex.includes(i) : i === this._activeIndex;\n let changed = selected !== this.tabs[i].selected;\n\n if (changed) {\n this.tabs[i].selected = selected;\n this.tabs[i].selectedChange.emit(selected);\n this.tabs[i].cd.markForCheck();\n }\n }\n }\n }\n\n isTabActive(index) {\n return this.multiple() ? this._activeIndex && (<number[]>this._activeIndex).includes(index) : this._activeIndex === index;\n }\n\n getTabProp(tab, name) {\n return tab.props ? tab.props[name] : undefined;\n }\n\n updateActiveIndex() {\n let index: number | number[] | null = this.multiple() ? [] : null;\n this.tabs.forEach((tab, i) => {\n if (tab.selected) {\n if (this.multiple()) {\n (index as number[]).push(i);\n } else {\n index = i;\n return;\n }\n }\n });\n this.preventActiveIndexPropagation = true;\n this._activeIndex = index;\n this.activeIndexChange.emit(index as number[] | number);\n }\n\n updateValue(value: string | number) {\n const currentValue = this.value();\n if (this.multiple()) {\n const newValue = Array.isArray(currentValue) ? [...currentValue] : [];\n const index = newValue.indexOf(value);\n\n if (index !== -1) {\n newValue.splice(index, 1);\n } else {\n newValue.push(value);\n }\n\n this.value.set(newValue as typeof this.value extends (...args: any) => infer R ? R : never);\n } else {\n if (currentValue === value) {\n this.value.set(undefined);\n } else {\n this.value.set(value);\n }\n }\n }\n\n ngOnDestroy() {\n if (this.tabListSubscription) {\n this.tabListSubscription.unsubscribe();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Accordion, AccordionTab, SharedModule, AccordionPanel, AccordionHeader, AccordionContent],\n exports: [Accordion, AccordionTab, SharedModule, AccordionPanel, AccordionHeader, AccordionContent]\n})\nexport class AccordionModule {}\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-accordion.mjs","sources":["../../src/accordion/style/accordionstyle.ts","../../src/accordion/accordion.ts","../../src/accordion/primeng-accordion.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-accordionpanel {\n display: flex;\n flex-direction: column;\n border-style: solid;\n border-width: ${dt('accordion.panel.border.width')};\n border-color: ${dt('accordion.panel.border.color')};\n}\n\n.p-accordionheader {\n all: unset;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: ${dt('accordion.header.padding')};\n color: ${dt('accordion.header.color')};\n background: ${dt('accordion.header.background')};\n border-style: solid;\n border-width: ${dt('accordion.header.border.width')};\n border-color: ${dt('accordion.header.border.color')};\n font-weight: ${dt('accordion.header.font.weight')};\n border-radius: ${dt('accordion.header.border.radius')};\n transition: background ${dt('accordion.transition.duration')}; color ${dt('accordion.transition.duration')}color ${dt('accordion.transition.duration')}, outline-color ${dt('accordion.transition.duration')}, box-shadow ${dt(\n 'accordion.transition.duration'\n )};\n outline-color: transparent;\n position: relative;\n overflow: hidden;\n}\n\n.p-accordionpanel:first-child > .p-accordionheader {\n border-width: ${dt('accordion.header.first.border.width')};\n border-start-start-radius: ${dt('accordion.header.first.top.border.radius')};\n border-start-end-radius: ${dt('accordion.header.first.top.border.radius')};\n}\n\n.p-accordionpanel:last-child > .p-accordionheader {\n border-end-start-radius: ${dt('accordion.header.last.bottom.border.radius')};\n border-end-end-radius: ${dt('accordion.header.last.bottom.border.radius')};\n}\n\n.p-accordionpanel:last-child.p-accordionpanel-active > .p-accordionheader {\n border-end-start-radius: ${dt('accordion.header.last.active.bottom.border.radius')};\n border-end-end-radius:${dt('accordion.header.last.active.bottom.border.radius')};\n}\n\n.p-accordionheader-toggle-icon {\n color: ${dt('accordion.header.toggle.icon.color')};\n}\n\n.p-accordionpanel:not(.p-disabled) .p-accordionheader:focus-visible {\n box-shadow: ${dt('accordion.header.focus.ring.shadow')};\n outline: ${dt('accordion.header.focus.ring.width')} ${dt('accordion.header.focus.ring.style')} ${dt('accordion.header.focus.ring.color')};\n outline-offset: ${dt('accordion.header.focus.ring.offset')};\n}\n\n.p-accordionpanel:not(.p-accordionpanel-active):not(.p-disabled) > .p-accordionheader:hover {\n background: ${dt('accordion.header.hover.background')};\n color: ${dt('accordion.header.hover.color')}\n}\n\n.p-accordionpanel:not(.p-accordionpanel-active):not(.p-disabled) .p-accordionheader:hover .p-accordionheader-toggle-icon {\n color: ${dt('accordion.header.toggle.icon.hover.color')};\n}\n\n.p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader {\n background: ${dt('accordion.header.active.background')};\n color: ${dt('accordion.header.active.color')}\n}\n\n.p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader .p-accordionheader-toggle-icon {\n color: ${dt('accordion.header.toggle.icon.active.color')};\n}\n\n.p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader:hover {\n background: ${dt('accordion.header.active.hover.background')};\n color: ${dt('accordion.header.active.hover.color')}\n}\n\n.p-accordionpanel:not(.p-disabled).p-accordionpanel-active > .p-accordionheader:hover .p-accordionheader-toggle-icon {\n color: ${dt('accordion.header.toggle.icon.active.hover.color')};\n}\n\n.p-accordioncontent-content {\n border-style: solid;\n border-width: ${dt('accordion.content.border.width')};\n border-color: ${dt('accordion.content.border.color')};\n background-color: ${dt('accordion.content.background')};\n color: ${dt('accordion.content.color')};\n padding: ${dt('accordion.content.padding')}\n}\n\n/*For PrimeNG*/\n\n.p-accordion .p-accordioncontent {\n overflow: hidden;\n}\n\n.p-accordionpanel.p-accordioncontent:not(.ng-animating) {\n overflow: inherit;\n}\n\n.p-accordionheader-toggle-icon.icon-start {\n order: -1;\n}\n\n.p-accordionheader:has(.p-accordionheader-toggle-icon.icon-start) {\n justify-content: flex-start;\n gap: ${dt('accordion.header.padding')};\n}\n`;\n\nconst classes = {\n root: 'p-accordion p-component'\n};\n\n@Injectable()\nexport class AccordionStyle extends BaseStyle {\n name = 'accordion';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Accordion groups a collection of contents in tabs.\n *\n * [Live Demo](https://www.primeng.org/accordion/)\n *\n * @module accordionstyle\n *\n */\nexport enum AccordionClasses {\n /**\n * Class name of the root element\n */\n root = 'p-accordion',\n /**\n * Class name of the content wrapper\n */\n contentwrapper = 'p-accordioncontent',\n /**\n * Class name of the content\n */\n content = 'p-accordioncontent-content',\n /**\n * Class name of the header\n */\n header = 'p-accordionheader',\n /**\n * Class name of the toggle icon\n */\n toggleicon = 'p-accordionheader-toggle-icon',\n /**\n * Class name of the panel\n */\n panel = 'p-accordionpanel'\n}\n\nexport interface AccordionStyle extends BaseStyle {}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n ContentChild,\n ContentChildren,\n EventEmitter,\n forwardRef,\n HostBinding,\n HostListener,\n inject,\n Input,\n input,\n InputSignalWithTransform,\n model,\n NgModule,\n numberAttribute,\n OnDestroy,\n Output,\n QueryList,\n signal,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { findSingle, focus, getAttribute, uuid } from '@primeuix/utils';\nimport { BlockableUI, Header, PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { ChevronDownIcon, ChevronUpIcon } from 'primeng/icons';\nimport { Ripple } from 'primeng/ripple';\nimport { transformToBoolean } from 'primeng/utils';\nimport { Subscription } from 'rxjs';\nimport { AccordionStyle } from './style/accordionstyle';\n\n/**\n * Custom tab open event.\n * @see {@link onOpen}\n * @group Interface\n */\nexport interface AccordionTabOpenEvent {\n /**\n * Browser event.\n */\n originalEvent: Event;\n /**\n * Opened tab index.\n */\n index: number;\n}\n\n/**\n * Custom tab close event.\n * @see {@link onClose}\n * @extends {AccordionTabOpenEvent}\n * @group Interface\n */\nexport interface AccordionTabCloseEvent extends AccordionTabOpenEvent {}\n\n/**\n * Toggle icon template context.\n * @group Interface\n */\nexport interface AccordionToggleIconTemplateContext {\n /**\n * Represents the active status of the panel.\n */\n active: boolean;\n}\n\n/**\n * AccordionPanel is a helper component for Accordion component.\n * @group Components\n */\n@Component({\n selector: 'p-accordion-panel, p-accordionpanel',\n imports: [CommonModule],\n standalone: true,\n template: `<ng-content />`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.p-accordionpanel]': 'true',\n '[class.p-accordionpanel-active]': 'active()',\n '[class.p-disabled]': 'disabled()',\n '[attr.data-pc-name]': '\"accordionpanel\"',\n '[attr.data-p-disabled]': 'disabled()',\n '[attr.data-p-active]': 'active()'\n }\n})\nexport class AccordionPanel extends BaseComponent {\n pcAccordion = inject(forwardRef(() => Accordion));\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<undefined | null | string | number | string[] | number[]>(undefined);\n /**\n * Disables the tab when enabled.\n * @defaultValue false\n * @group Props\n */\n disabled: InputSignalWithTransform<any, boolean> = input(false, { transform: (v: any) => transformToBoolean(v) });\n\n active = computed(() => (this.pcAccordion.multiple() ? this.valueEquals(this.pcAccordion.value(), this.value()) : this.pcAccordion.value() === this.value()));\n\n valueEquals(currentValue: any, value: any): boolean {\n if (Array.isArray(currentValue)) {\n return currentValue.includes(value);\n }\n return currentValue === value;\n }\n}\n/**\n * AccordionHeader is a helper component for Accordion component.\n * @group Components\n */\n@Component({\n selector: 'p-accordion-header, p-accordionheader',\n imports: [CommonModule, ChevronDownIcon, ChevronUpIcon],\n standalone: true,\n template: `\n <ng-content />\n @if (toggleicon) {\n <ng-template *ngTemplateOutlet=\"toggleicon; context: { active: active() }\"></ng-template>\n } @else {\n <ng-container *ngIf=\"active()\">\n <span *ngIf=\"pcAccordion.collapseIcon\" [class]=\"pcAccordion.collapseIcon\" [ngClass]=\"pcAccordion.iconClass\" [attr.aria-hidden]=\"true\"></span>\n <ChevronDownIcon *ngIf=\"!pcAccordion.collapseIcon\" [ngClass]=\"pcAccordion.iconClass\" [attr.aria-hidden]=\"true\" />\n </ng-container>\n <ng-container *ngIf=\"!active()\">\n <span *ngIf=\"pcAccordion.expandIcon\" [class]=\"pcAccordion.expandIcon\" [ngClass]=\"pcAccordion.iconClass\" [attr.aria-hidden]=\"true\"></span>\n <ChevronUpIcon *ngIf=\"!pcAccordion.expandIcon\" [ngClass]=\"pcAccordion.iconClass\" [attr.aria-hidden]=\"true\" />\n </ng-container>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.p-accordionheader]': 'true',\n '[attr.id]': 'id()',\n '[attr.aria-expanded]': 'active()',\n '[attr.aria-controls]': 'ariaControls()',\n '[attr.role]': '\"button\"',\n '[attr.tabindex]': '\"0\"',\n '[attr.data-p-active]': 'active()',\n '[attr.data-p-disabled]': 'disabled()',\n '[attr.data-pc-name]': '\"accordionheader\"',\n '[style.user-select]': '\"none\"'\n },\n hostDirectives: [Ripple]\n})\nexport class AccordionHeader extends BaseComponent {\n pcAccordion = inject(forwardRef(() => Accordion));\n\n pcAccordionPanel = inject(forwardRef(() => AccordionPanel));\n\n id = computed(() => `${this.pcAccordion.id()}_accordionheader_${this.pcAccordionPanel.value()}`);\n\n active = computed(() => this.pcAccordionPanel.active());\n\n disabled = computed(() => this.pcAccordionPanel.disabled());\n\n ariaControls = computed(() => `${this.pcAccordion.id()}_accordioncontent_${this.pcAccordionPanel.value()}`);\n /**\n * Toggle icon template.\n * @type {TemplateRef<AccordionToggleIconTemplateContext>} context - Context of the template\n * @example\n * ```html\n * <ng-template #toggleicon let-active=\"active\"> </ng-template>\n * ```\n * @see {@link AccordionToggleIconTemplateContext}\n * @group Templates\n */\n @ContentChild('toggleicon') toggleicon: TemplateRef<AccordionToggleIconTemplateContext> | undefined;\n\n @HostListener('click', ['$event']) onClick(event?: MouseEvent | KeyboardEvent) {\n const wasActive = this.active();\n\n this.changeActiveValue();\n\n const isActive = this.active();\n\n const panels = this.pcAccordion.panelList ? this.pcAccordion.panelList.toArray() : [];\n const index = panels.findIndex((panel) => panel === this.pcAccordionPanel);\n\n if (!wasActive && isActive) {\n this.pcAccordion.onOpen.emit({ originalEvent: event, index });\n } else if (wasActive && !isActive) {\n this.pcAccordion.onClose.emit({ originalEvent: event, index });\n }\n }\n\n @HostListener('focus', ['$event']) onFocus() {\n this.pcAccordion.selectOnFocus() && this.changeActiveValue();\n }\n\n @HostListener('keydown', ['$event']) onKeydown(event: KeyboardEvent) {\n switch (event.code) {\n case 'ArrowDown':\n this.arrowDownKey(event);\n break;\n case 'ArrowUp':\n this.arrowUpKey(event);\n break;\n case 'Home':\n this.onHomeKey(event);\n break;\n case 'End':\n this.onEndKey(event);\n break;\n case 'Enter':\n case 'Space':\n case 'NumpadEnter':\n this.onEnterKey(event);\n break;\n default:\n break;\n }\n }\n\n changeActiveValue() {\n this.pcAccordion.updateValue(this.pcAccordionPanel.value());\n }\n\n private findPanel(headerElement) {\n return headerElement?.closest('[data-pc-name=\"accordionpanel\"]');\n }\n\n private findHeader(panelElement) {\n return findSingle(panelElement, '[data-pc-name=\"accordionheader\"]');\n }\n\n private findNextPanel(panelElement, selfCheck = false) {\n const element = selfCheck ? panelElement : panelElement.nextElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') ? this.findNextPanel(element) : this.findHeader(element)) : null;\n }\n\n private findPrevPanel(panelElement, selfCheck = false) {\n const element = selfCheck ? panelElement : panelElement.previousElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') ? this.findPrevPanel(element) : this.findHeader(element)) : null;\n }\n\n private findFirstPanel() {\n return this.findNextPanel(this.pcAccordion.el.nativeElement.firstElementChild, true);\n }\n\n private findLastPanel() {\n return this.findPrevPanel(this.pcAccordion.el.nativeElement.lastElementChild, true);\n }\n\n private changeFocusedPanel(event, element) {\n focus(element);\n }\n\n private arrowDownKey(event: KeyboardEvent) {\n const nextPanel = this.findNextPanel(this.findPanel(event.currentTarget));\n nextPanel ? this.changeFocusedPanel(event, nextPanel) : this.onHomeKey(event);\n event.preventDefault();\n }\n\n private arrowUpKey(event: KeyboardEvent) {\n const prevPanel = this.findPrevPanel(this.findPanel(event.currentTarget));\n\n prevPanel ? this.changeFocusedPanel(event, prevPanel) : this.onEndKey(event);\n event.preventDefault();\n }\n\n private onHomeKey(event: KeyboardEvent) {\n const firstPanel = this.findFirstPanel();\n\n this.changeFocusedPanel(event, firstPanel);\n event.preventDefault();\n }\n\n private onEndKey(event: KeyboardEvent) {\n const lastPanel = this.findLastPanel();\n\n this.changeFocusedPanel(event, lastPanel);\n event.preventDefault();\n }\n\n private onEnterKey(event: KeyboardEvent) {\n this.changeActiveValue();\n event.preventDefault();\n }\n}\n\n@Component({\n selector: 'p-accordion-content, p-accordioncontent',\n imports: [CommonModule],\n standalone: true,\n template: ` <div class=\"p-accordioncontent-content\">\n <ng-content />\n </div>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.p-accordioncontent]': 'true',\n '[attr.id]': 'id()',\n '[attr.role]': '\"region\"',\n '[attr.data-pc-name]': '\"accordioncontent\"',\n '[attr.data-p-active]': 'active()',\n '[attr.aria-labelledby]': 'ariaLabelledby()',\n '[@content]': `active()\n ? { value: 'visible', params: { transitionParams: pcAccordion.transitionOptions } }\n : { value: 'hidden', params: { transitionParams: pcAccordion.transitionOptions } }`\n },\n animations: [\n trigger('content', [\n state(\n 'hidden',\n style({\n height: '0',\n visibility: 'hidden'\n })\n ),\n state(\n 'visible',\n style({\n height: '*',\n visibility: 'visible'\n })\n ),\n transition('visible <=> hidden', [animate('{{transitionParams}}')]),\n transition('void => *', animate(0))\n ])\n ]\n})\nexport class AccordionContent extends BaseComponent {\n pcAccordion = inject(forwardRef(() => Accordion));\n\n pcAccordionPanel = inject(forwardRef(() => AccordionPanel));\n\n active = computed(() => this.pcAccordionPanel.active());\n\n ariaLabelledby = computed(() => `${this.pcAccordion.id()}_accordionheader_${this.pcAccordionPanel.value()}`);\n\n id = computed(() => `${this.pcAccordion.id()}_accordioncontent_${this.pcAccordionPanel.value()}`);\n}\n\n/**\n * AccordionTab is a helper component for Accordion.\n * @deprecated Use AccordionPanel, AccordionHeader, AccordionContent instead.\n * @group Components\n */\n@Component({\n selector: 'p-accordionTab, p-accordion-tab, p-accordiontab',\n standalone: true,\n imports: [CommonModule, ChevronDownIcon, ChevronUpIcon],\n template: `\n <button\n class=\"p-accordionheader\"\n type=\"button\"\n [disabled]=\"disabled\"\n [attr.aria-expanded]=\"selected\"\n [attr.aria-level]=\"headerAriaLevel\"\n [class.p-disabled]=\"disabled\"\n [attr.data-p-disabled]=\"disabled\"\n [attr.data-pc-section]=\"'accordionheader'\"\n (click)=\"toggle($event)\"\n (keydown)=\"onKeydown($event)\"\n [ngClass]=\"headerStyleClass\"\n [ngStyle]=\"headerStyle\"\n [attr.tabindex]=\"disabled ? null : 0\"\n [attr.id]=\"getTabHeaderActionId(id)\"\n [attr.aria-controls]=\"getTabContentId(id)\"\n >\n @if (!headerTemplate && !_headerTemplate) {\n {{ header }}\n } @else {\n @if (headerTemplate || _headerTemplate) {\n <ng-container *ngTemplateOutlet=\"headerTemplate || _headerTemplate\"></ng-container>\n }\n @if (headerFacet) {\n <ng-content select=\"p-header\" />\n }\n }\n @if (iconTemplate || _iconTemplate) {\n <ng-template *ngTemplateOutlet=\"iconTemplate || _iconTemplate; context: { $implicit: selected }\"></ng-template>\n } @else {\n <ng-container *ngIf=\"selected\">\n <span *ngIf=\"accordion.collapseIcon\" [class]=\"accordion.collapseIcon\" [ngClass]=\"iconClass\" [attr.aria-hidden]=\"true\"></span>\n <ChevronDownIcon *ngIf=\"!accordion.collapseIcon\" [ngClass]=\"iconClass\" [attr.aria-hidden]=\"true\" />\n </ng-container>\n <ng-container *ngIf=\"!selected\">\n <span *ngIf=\"accordion.expandIcon\" [class]=\"accordion.expandIcon\" [ngClass]=\"iconClass\" [attr.aria-hidden]=\"true\"></span>\n <ChevronUpIcon *ngIf=\"!accordion.expandIcon\" [ngClass]=\"iconClass\" [attr.aria-hidden]=\"true\" />\n </ng-container>\n }\n </button>\n <div\n [attr.id]=\"getTabContentId(id)\"\n class=\"p-accordioncontent\"\n [@tabContent]=\"selected ? { value: 'visible', params: { transitionParams: transitionOptions } } : { value: 'hidden', params: { transitionParams: transitionOptions } }\"\n role=\"region\"\n [attr.aria-hidden]=\"!selected\"\n [attr.aria-labelledby]=\"getTabHeaderActionId(id)\"\n [attr.data-pc-section]=\"'toggleablecontent'\"\n >\n <div class=\"p-accordioncontent-content\" [ngClass]=\"contentStyleClass\" [ngStyle]=\"contentStyle\">\n <ng-content />\n <ng-container *ngIf=\"(contentTemplate || _contentTemplate) && (cache ? loaded : selected)\">\n <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate\"></ng-container>\n </ng-container>\n </div>\n </div>\n `,\n animations: [\n trigger('tabContent', [\n state(\n 'hidden',\n style({\n height: '0',\n visibility: 'hidden'\n })\n ),\n state(\n 'visible',\n style({\n height: '*',\n visibility: 'visible'\n })\n ),\n transition('visible <=> hidden', [animate('{{transitionParams}}')]),\n transition('void => *', animate(0))\n ])\n ],\n host: {\n '[class.p-accordionpanel]': 'true',\n '[class.p-accordionpanel-active]': 'selected',\n '[attr.data-pc-name]': '\"accordiontab\"'\n },\n providers: [AccordionStyle],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class AccordionTab extends BaseComponent implements AfterContentInit, OnDestroy {\n @HostBinding('class') get hostClass() {\n return this.tabStyleClass;\n }\n @HostBinding('style') get hostStyle() {\n return this.tabStyle;\n }\n /**\n * Current id state as a string.\n * @group Props\n */\n @Input() id: string | undefined = uuid('pn_id_');\n /**\n * Used to define the header of the tab.\n * @group Props\n */\n @Input() header: string | undefined;\n /**\n * Inline style of the tab header.\n * @group Props\n */\n @Input() headerStyle: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the tab.\n * @group Props\n */\n @Input() tabStyle: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the tab content.\n * @group Props\n */\n @Input() contentStyle: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the tab.\n * @group Props\n */\n @Input() tabStyleClass: string | undefined;\n /**\n * Style class of the tab header.\n * @group Props\n */\n @Input() headerStyleClass: string | undefined;\n /**\n * Style class of the tab content.\n * @group Props\n */\n @Input() contentStyleClass: string | undefined;\n /**\n * Whether the tab is disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean | undefined;\n /**\n * Whether a lazy loaded panel should avoid getting loaded again on reselection.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) cache: boolean = true;\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '400ms cubic-bezier(0.86, 0, 0.07, 1)';\n /**\n * Position of the icon.\n * @group Props\n */\n @Input() iconPos: 'end' | 'start' = 'start';\n /**\n * The value that returns the selection.\n * @group Props\n */\n @Input() get selected(): boolean {\n return this._selected;\n }\n set selected(val: boolean) {\n this._selected = val;\n\n if (!this.loaded) {\n if (this._selected && this.cache) {\n this.loaded = true;\n }\n\n this.cd.detectChanges();\n }\n }\n /**\n * The aria-level that each accordion header will have. The default value is 2 as per W3C specifications\n * @group Props\n */\n @Input({ transform: numberAttribute }) headerAriaLevel: number = 2;\n /**\n * Event triggered by changing the choice.\n * @param {boolean} value - Boolean value indicates that the option is changed.\n * @group Emits\n */\n @Output() selectedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @ContentChildren(Header) headerFacet!: QueryList<Header>;\n\n private _selected: boolean = false;\n\n get iconClass() {\n if (this.iconPos === 'end') {\n return 'p-accordionheader-toggle-icon icon-end';\n } else {\n return 'p-accordionheader-toggle-icon icon-start';\n }\n }\n /**\n * Content template for the content of the drawer.\n * @group Templates\n */\n @ContentChild('header', { descendants: false }) headerTemplate: TemplateRef<any> | undefined;\n /**\n * Template for the header icon.\n * @group Templates\n */\n @ContentChild('icon', { descendants: false }) iconTemplate: TemplateRef<any> | undefined;\n /**\n * Content template for the footer of the drawer.\n * @group Templates\n */\n @ContentChild('content', { descendants: false }) contentTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n _headerTemplate: TemplateRef<any>;\n\n _iconTemplate: TemplateRef<any>;\n\n _contentTemplate: TemplateRef<any>;\n\n loaded: boolean = false;\n\n accordion = inject(forwardRef(() => Accordion)) as Accordion;\n\n _componentStyle = inject(AccordionStyle);\n\n ngOnInit() {\n super.ngOnInit();\n console.log('AccordionTab is deprecated as of v18, please use the new structure instead.');\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this._contentTemplate = item.template;\n break;\n\n case 'header':\n this._headerTemplate = item.template;\n break;\n\n case 'icon':\n this._iconTemplate = item.template;\n break;\n\n default:\n this._contentTemplate = item.template;\n break;\n }\n });\n }\n\n toggle(event?: MouseEvent | KeyboardEvent) {\n if (this.disabled) {\n return false;\n }\n\n let index = this.findTabIndex();\n\n if (this.selected) {\n this.selected = false;\n this.accordion.onClose.emit({ originalEvent: event, index: index });\n } else {\n if (!this.accordion.multiple()) {\n for (var i = 0; i < this.accordion.tabs.length; i++) {\n if (this.accordion.tabs[i].selected) {\n this.accordion.tabs[i].selected = false;\n this.accordion.tabs[i].selectedChange.emit(false);\n this.accordion.tabs[i].cd.markForCheck();\n }\n }\n }\n\n this.selected = true;\n this.loaded = true;\n this.accordion.onOpen.emit({ originalEvent: event, index: index });\n }\n\n this.selectedChange.emit(this.selected);\n this.accordion.updateActiveIndex();\n this.cd.markForCheck();\n\n event?.preventDefault();\n }\n\n findTabIndex() {\n let index = -1;\n for (var i = 0; i < this.accordion.tabs.length; i++) {\n if (this.accordion.tabs[i] == this) {\n index = i;\n break;\n }\n }\n return index;\n }\n\n onKeydown(event: KeyboardEvent) {\n switch (event.code) {\n case 'Enter':\n case 'Space':\n this.toggle(event);\n event.preventDefault();\n break;\n default:\n break;\n }\n }\n\n getTabHeaderActionId(tabId) {\n return `${tabId}_header_action`;\n }\n\n getTabContentId(tabId) {\n return `${tabId}_content`;\n }\n\n ngOnDestroy() {\n this.accordion.tabs.splice(this.findTabIndex(), 1);\n\n super.ngOnDestroy();\n }\n}\n\n/**\n * Accordion groups a collection of contents in tabs.\n * @group Components\n */\n@Component({\n selector: 'p-accordion',\n standalone: true,\n imports: [CommonModule, SharedModule],\n template: ` <ng-content /> `,\n host: {\n '[class.p-accordion]': 'true',\n '[class.p-component]': 'true'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AccordionStyle]\n})\nexport class Accordion extends BaseComponent implements BlockableUI, AfterContentInit, OnDestroy {\n @HostBinding('class') get hostClass() {\n return this.styleClass;\n }\n\n @HostBinding('style') get hostStyle() {\n return this.style;\n }\n /**\n * Value of the active tab.\n * @defaultValue undefined\n * @group Props\n */\n value = model<undefined | null | string | number | string[] | number[]>(undefined);\n /**\n * When enabled, multiple tabs can be activated at the same time.\n * @defaultValue false\n * @group Props\n */\n multiple = input(false, { transform: (v: any) => transformToBoolean(v) });\n /**\n * Inline style of the tab header and content.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Class of the element.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Icon of a collapsed tab.\n * @group Props\n */\n @Input() expandIcon: string | undefined;\n /**\n * Icon of an expanded tab.\n * @group Props\n */\n @Input() collapseIcon: string | undefined;\n /**\n * When enabled, the focused tab is activated.\n * @defaultValue false\n * @group Props\n */\n selectOnFocus = input(false, { transform: (v: any) => transformToBoolean(v) });\n set activeIndex(val: number | number[] | null | undefined) {\n this._activeIndex = val;\n if (this.preventActiveIndexPropagation) {\n this.preventActiveIndexPropagation = false;\n return;\n }\n\n this.updateSelectionState();\n }\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '400ms cubic-bezier(0.86, 0, 0.07, 1)';\n /**\n * Returns the active index.\n * @param {number | number[]} value - New index.\n * @deprecated use native valueChange emitter of the value model.\n * @group Emits\n */\n @Output() activeIndexChange: EventEmitter<number | number[]> = new EventEmitter<number | number[]>();\n\n set headerAriaLevel(val: number) {\n if (typeof val === 'number' && val > 0) {\n this._headerAriaLevel = val;\n } else if (this._headerAriaLevel !== 2) {\n this._headerAriaLevel = 2;\n }\n }\n /**\n * Callback to invoke when an active tab is collapsed by clicking on the header.\n * @param {AccordionTabCloseEvent} event - Custom tab close event.\n * @group Emits\n */\n @Output() onClose: EventEmitter<AccordionTabCloseEvent> = new EventEmitter();\n /**\n * Callback to invoke when a tab gets expanded.\n * @param {AccordionTabOpenEvent} event - Custom tab open event.\n * @group Emits\n */\n @Output() onOpen: EventEmitter<AccordionTabOpenEvent> = new EventEmitter();\n\n id = signal(uuid('pn_id_'));\n\n @ContentChildren(AccordionTab, { descendants: true }) tabList: QueryList<AccordionTab> | undefined;\n\n tabListSubscription: Subscription | null = null;\n\n private _activeIndex: any;\n\n private _headerAriaLevel: number = 2;\n\n preventActiveIndexPropagation: boolean = false;\n\n public tabs: AccordionTab[] = [];\n\n _componentStyle = inject(AccordionStyle);\n\n /**\n * Index of the active tab or an array of indexes in multiple mode.\n * @deprecated use value property with new architecture instead.\n * @group Props\n */\n @Input() get activeIndex(): number | number[] | null | undefined {\n return this._activeIndex;\n }\n\n /**\n * The aria-level that each accordion header will have. The default value is 2 as per W3C specifications\n * @deprecated use AccoridonHeader component and bind attribute to the host.\n * @group Props\n */\n @Input() get headerAriaLevel(): number {\n return this._headerAriaLevel;\n }\n\n @HostListener('keydown', ['$event'])\n onKeydown(event) {\n switch (event.code) {\n case 'ArrowDown':\n this.onTabArrowDownKey(event);\n break;\n\n case 'ArrowUp':\n this.onTabArrowUpKey(event);\n break;\n\n case 'Home':\n if (!event.shiftKey) {\n this.onTabHomeKey(event);\n }\n break;\n\n case 'End':\n if (!event.shiftKey) {\n this.onTabEndKey(event);\n }\n break;\n }\n }\n\n onTabArrowDownKey(event) {\n const nextHeaderAction = this.findNextHeaderAction(event.target.parentElement);\n nextHeaderAction ? this.changeFocusedTab(nextHeaderAction) : this.onTabHomeKey(event);\n\n event.preventDefault();\n }\n\n onTabArrowUpKey(event) {\n const prevHeaderAction = this.findPrevHeaderAction(event.target.parentElement);\n prevHeaderAction ? this.changeFocusedTab(prevHeaderAction) : this.onTabEndKey(event);\n\n event.preventDefault();\n }\n\n onTabHomeKey(event) {\n const firstHeaderAction = this.findFirstHeaderAction();\n this.changeFocusedTab(firstHeaderAction);\n event.preventDefault();\n }\n\n changeFocusedTab(element) {\n if (element) {\n focus(element);\n\n if (this.selectOnFocus()) {\n this.tabs.forEach((tab, i) => {\n let selected = this.multiple() ? this._activeIndex.includes(i) : i === this._activeIndex;\n\n if (this.multiple()) {\n if (!this._activeIndex) {\n this._activeIndex = [];\n }\n if (tab.id == element.id) {\n tab.selected = !tab.selected;\n if (!this._activeIndex.includes(i)) {\n this._activeIndex.push(i);\n } else {\n this._activeIndex = this._activeIndex.filter((ind) => ind !== i);\n }\n }\n } else {\n if (tab.id == element.id) {\n tab.selected = !tab.selected;\n this._activeIndex = i;\n } else {\n tab.selected = false;\n }\n }\n\n tab.selectedChange.emit(selected);\n this.activeIndexChange.emit(this._activeIndex);\n tab.cd.markForCheck();\n });\n }\n }\n }\n\n findNextHeaderAction(tabElement, selfCheck = false) {\n const nextTabElement = selfCheck ? tabElement : tabElement.nextElementSibling;\n const headerElement = findSingle(nextTabElement, '[data-pc-section=\"accordionheader\"]');\n\n return headerElement ? (getAttribute(headerElement, 'data-p-disabled') ? this.findNextHeaderAction(headerElement.parentElement) : findSingle(headerElement.parentElement, '[data-pc-section=\"accordionheader\"]')) : null;\n }\n\n findPrevHeaderAction(tabElement, selfCheck = false) {\n const prevTabElement = selfCheck ? tabElement : tabElement.previousElementSibling;\n const headerElement = findSingle(prevTabElement, '[data-pc-section=\"accordionheader\"]');\n\n return headerElement ? (getAttribute(headerElement, 'data-p-disabled') ? this.findPrevHeaderAction(headerElement.parentElement) : findSingle(headerElement.parentElement, '[data-pc-section=\"accordionheader\"]')) : null;\n }\n\n findFirstHeaderAction() {\n const firstEl = this.el.nativeElement.firstElementChild;\n return this.findNextHeaderAction(firstEl, true);\n }\n\n findLastHeaderAction() {\n const lastEl = this.el.nativeElement.lastElementChild;\n return this.findPrevHeaderAction(lastEl, true);\n }\n\n onTabEndKey(event) {\n const lastHeaderAction = this.findLastHeaderAction();\n this.changeFocusedTab(lastHeaderAction);\n event.preventDefault();\n }\n\n ngAfterContentInit() {\n this.initTabs();\n\n this.tabListSubscription = (this.tabList as QueryList<AccordionTab>).changes.subscribe((_) => {\n this.initTabs();\n });\n }\n\n initTabs() {\n this.tabs = (this.tabList as QueryList<AccordionTab>).toArray();\n\n this.tabs.forEach((tab) => {\n tab.headerAriaLevel = this._headerAriaLevel;\n });\n\n this.updateSelectionState();\n this.cd.markForCheck();\n }\n\n getBlockableElement(): HTMLElement {\n return this.el.nativeElement.children[0];\n }\n\n updateSelectionState() {\n if (this.tabs && this.tabs.length && this._activeIndex != null) {\n for (let i = 0; i < this.tabs.length; i++) {\n let selected = this.multiple() ? this._activeIndex.includes(i) : i === this._activeIndex;\n let changed = selected !== this.tabs[i].selected;\n\n if (changed) {\n this.tabs[i].selected = selected;\n this.tabs[i].selectedChange.emit(selected);\n this.tabs[i].cd.markForCheck();\n }\n }\n }\n }\n\n isTabActive(index) {\n return this.multiple() ? this._activeIndex && (<number[]>this._activeIndex).includes(index) : this._activeIndex === index;\n }\n\n getTabProp(tab, name) {\n return tab.props ? tab.props[name] : undefined;\n }\n\n updateActiveIndex() {\n let index: number | number[] | null = this.multiple() ? [] : null;\n this.tabs.forEach((tab, i) => {\n if (tab.selected) {\n if (this.multiple()) {\n (index as number[]).push(i);\n } else {\n index = i;\n return;\n }\n }\n });\n this.preventActiveIndexPropagation = true;\n this._activeIndex = index;\n this.activeIndexChange.emit(index as number[] | number);\n }\n\n updateValue(value: string | number) {\n const currentValue = this.value();\n if (this.multiple()) {\n const newValue = Array.isArray(currentValue) ? [...currentValue] : [];\n const index = newValue.indexOf(value);\n\n if (index !== -1) {\n newValue.splice(index, 1);\n } else {\n newValue.push(value);\n }\n\n this.value.set(newValue as typeof this.value extends (...args: any) => infer R ? R : never);\n } else {\n if (currentValue === value) {\n this.value.set(undefined);\n } else {\n this.value.set(value);\n }\n }\n }\n\n ngOnDestroy() {\n if (this.tabListSubscription) {\n this.tabListSubscription.unsubscribe();\n }\n\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [Accordion, AccordionTab, SharedModule, AccordionPanel, AccordionHeader, AccordionContent],\n exports: [Accordion, AccordionTab, SharedModule, AccordionPanel, AccordionHeader, AccordionContent]\n})\nexport class AccordionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { DOCUMENT, isPlatformServer } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { Injectable, inject, PLATFORM_ID, ElementRef, Injector, ChangeDetectorRef, Renderer2, Input, Directive } from '@angular/core';
4
- import { Theme, ThemeService } from '@primeuix/styled';
4
+ import { ThemeService, Theme } from '@primeuix/styled';
5
5
  import { uuid, getKeyValue } from '@primeuix/utils';
6
6
  import { BaseStyle, Base } from 'primeng/base';
7
7
  import { PrimeNG } from 'primeng/config';
@@ -39,6 +39,7 @@ class BaseComponent {
39
39
  return this['_componentStyle'];
40
40
  }
41
41
  attrSelector = uuid('pc');
42
+ themeChangeListeners = [];
42
43
  _getHostInstance(instance) {
43
44
  if (instance) {
44
45
  return instance ? (this['hostName'] ? (instance['name'] === this['hostName'] ? instance : this._getHostInstance(instance.parentInstance)) : instance.parentInstance) : undefined;
@@ -69,6 +70,7 @@ class BaseComponent {
69
70
  }
70
71
  ngOnDestroy() {
71
72
  this._unloadScopedThemeStyles();
73
+ this.themeChangeListeners.forEach((callback) => ThemeService.off('theme:change', callback));
72
74
  }
73
75
  _loadStyles() {
74
76
  const _load = () => {
@@ -131,6 +133,7 @@ class BaseComponent {
131
133
  _themeChangeListener(callback = () => { }) {
132
134
  Base.clearLoadedStyleNames();
133
135
  ThemeService.on('theme:change', callback);
136
+ this.themeChangeListeners.push(callback);
134
137
  }
135
138
  cx(arg, rest) {
136
139
  const classes = this.parent ? this.parent.componentStyle?.classes?.[arg] : this.componentStyle?.classes?.[arg];
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-basecomponent.mjs","sources":["../../src/basecomponent/style/basecomponentstyle.ts","../../src/basecomponent/basecomponent.ts","../../src/basecomponent/primeng-basecomponent.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\n@Injectable({ providedIn: 'root' })\nexport class BaseComponentStyle extends BaseStyle {\n name = 'common';\n}\n","import { DOCUMENT, isPlatformServer } from '@angular/common';\nimport { ChangeDetectorRef, Directive, ElementRef, inject, Injector, Input, PLATFORM_ID, Renderer2, SimpleChanges } from '@angular/core';\nimport { Theme, ThemeService } from '@primeuix/styled';\nimport { getKeyValue, uuid } from '@primeuix/utils';\nimport { Base, BaseStyle } from 'primeng/base';\nimport { PrimeNG } from 'primeng/config';\nimport { BaseComponentStyle } from './style/basecomponentstyle';\n\n@Directive({ standalone: true, providers: [BaseComponentStyle, BaseStyle] })\nexport class BaseComponent {\n public document: Document = inject(DOCUMENT);\n\n public platformId: any = inject(PLATFORM_ID);\n\n public el: ElementRef = inject(ElementRef);\n\n public readonly injector: Injector = inject(Injector);\n\n public readonly cd: ChangeDetectorRef = inject(ChangeDetectorRef);\n\n public renderer: Renderer2 = inject(Renderer2);\n\n public config: PrimeNG = inject(PrimeNG);\n\n public baseComponentStyle: BaseComponentStyle = inject(BaseComponentStyle);\n\n public baseStyle: BaseStyle = inject(BaseStyle);\n\n public scopedStyleEl: any;\n\n public rootEl: any;\n\n @Input() dt: Object | undefined;\n\n get styleOptions() {\n return { nonce: this.config?.csp().nonce };\n }\n\n get _name() {\n return this.constructor.name.replace(/^_/, '').toLowerCase();\n }\n\n get componentStyle() {\n return this['_componentStyle'];\n }\n\n attrSelector = uuid('pc');\n\n _getHostInstance(instance) {\n if (instance) {\n return instance ? (this['hostName'] ? (instance['name'] === this['hostName'] ? instance : this._getHostInstance(instance.parentInstance)) : instance.parentInstance) : undefined;\n }\n }\n\n _getOptionValue(options, key = '', params = {}) {\n return getKeyValue(options, key, params);\n }\n\n ngOnInit() {\n if (this.document) {\n this._loadStyles();\n }\n }\n\n ngAfterViewInit() {\n this.rootEl = this.el?.nativeElement;\n if (this.rootEl) {\n this.rootEl?.setAttribute(this.attrSelector, '');\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (this.document && !isPlatformServer(this.platformId)) {\n const { dt } = changes;\n if (dt && dt.currentValue) {\n this._loadScopedThemeStyles(dt.currentValue);\n this._themeChangeListener(() => this._loadScopedThemeStyles(dt.currentValue));\n }\n }\n }\n\n ngOnDestroy() {\n this._unloadScopedThemeStyles();\n }\n\n _loadStyles() {\n const _load = () => {\n if (!Base.isStyleNameLoaded('base')) {\n this.baseStyle.loadGlobalCSS(this.styleOptions);\n Base.setLoadedStyleName('base');\n }\n\n this._loadThemeStyles();\n // @todo update config.theme()\n };\n\n _load();\n this._themeChangeListener(() => _load());\n }\n\n _loadCoreStyles() {\n if (!Base.isStyleNameLoaded('base') && this._name) {\n this.baseComponentStyle.loadCSS(this.styleOptions);\n this.componentStyle && this.componentStyle?.loadCSS(this.styleOptions);\n Base.setLoadedStyleName(this.componentStyle?.name);\n }\n }\n\n _loadThemeStyles() {\n // common\n if (!Theme.isStyleNameLoaded('common')) {\n const { primitive, semantic, global, style } = this.componentStyle?.getCommonTheme?.() || {};\n\n this.baseStyle.load(primitive?.css, { name: 'primitive-variables', ...this.styleOptions });\n this.baseStyle.load(semantic?.css, { name: 'semantic-variables', ...this.styleOptions });\n this.baseStyle.load(global?.css, { name: 'global-variables', ...this.styleOptions });\n this.baseStyle.loadGlobalTheme({ name: 'global-style', ...this.styleOptions }, style);\n\n Theme.setLoadedStyleName('common');\n }\n\n // component\n if (!Theme.isStyleNameLoaded(this.componentStyle?.name) && this.componentStyle?.name) {\n const { css, style } = this.componentStyle?.getComponentTheme?.() || {};\n\n this.componentStyle?.load(css, { name: `${this.componentStyle?.name}-variables`, ...this.styleOptions });\n this.componentStyle?.loadTheme({ name: `${this.componentStyle?.name}-style`, ...this.styleOptions }, style);\n\n Theme.setLoadedStyleName(this.componentStyle?.name);\n }\n\n // layer order\n if (!Theme.isStyleNameLoaded('layer-order')) {\n const layerOrder = this.componentStyle?.getLayerOrderThemeCSS?.();\n\n this.baseStyle.load(layerOrder, { name: 'layer-order', first: true, ...this.styleOptions });\n Theme.setLoadedStyleName('layer-order');\n }\n\n if (this.dt) {\n this._loadScopedThemeStyles(this.dt);\n this._themeChangeListener(() => this._loadScopedThemeStyles(this.dt));\n }\n }\n\n _loadScopedThemeStyles(preset) {\n const { css } = this.componentStyle?.getPresetTheme?.(preset, `[${this.attrSelector}]`) || {};\n const scopedStyle = this.componentStyle?.load(css, {\n name: `${this.attrSelector}-${this.componentStyle?.name}`,\n ...this.styleOptions\n });\n\n this.scopedStyleEl = scopedStyle?.el;\n }\n\n _unloadScopedThemeStyles() {\n this.scopedStyleEl?.remove();\n }\n\n _themeChangeListener(callback = () => {}) {\n Base.clearLoadedStyleNames();\n ThemeService.on('theme:change', callback);\n }\n\n cx(arg: string, rest?: string): string {\n const classes = this.parent ? this.parent.componentStyle?.classes?.[arg] : this.componentStyle?.classes?.[arg];\n\n if (typeof classes === 'function') {\n return classes({ instance: this });\n }\n\n return typeof classes === 'string' ? classes : arg;\n }\n\n sx(arg: string): string {\n const styles = this.componentStyle?.inlineStyles?.[arg];\n if (typeof styles === 'function') {\n return styles({ instance: this });\n }\n\n if (typeof styles === 'string') {\n return styles;\n } else {\n return { ...styles };\n }\n }\n\n // cx(key = '', params = {}) {\n // const classes = this.parent ? this.parent.componentStyle?.classes : this.componentStyle?.classes;\n // return this._getOptionValue(classes({ instance: this._getHostInstance(this) }), key, { ...params });\n // }\n\n get parent() {\n return this['parentInstance'];\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"primeng-basecomponent.mjs","sources":["../../src/basecomponent/style/basecomponentstyle.ts","../../src/basecomponent/basecomponent.ts","../../src/basecomponent/primeng-basecomponent.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\n@Injectable({ providedIn: 'root' })\nexport class BaseComponentStyle extends BaseStyle {\n name = 'common';\n}\n","import { DOCUMENT, isPlatformServer } from '@angular/common';\nimport { ChangeDetectorRef, Directive, ElementRef, inject, Injector, Input, PLATFORM_ID, Renderer2, SimpleChanges } from '@angular/core';\nimport { Theme, ThemeService } from '@primeuix/styled';\nimport { getKeyValue, uuid } from '@primeuix/utils';\nimport { Base, BaseStyle } from 'primeng/base';\nimport { PrimeNG } from 'primeng/config';\nimport { BaseComponentStyle } from './style/basecomponentstyle';\n\n@Directive({ standalone: true, providers: [BaseComponentStyle, BaseStyle] })\nexport class BaseComponent {\n public document: Document = inject(DOCUMENT);\n\n public platformId: any = inject(PLATFORM_ID);\n\n public el: ElementRef = inject(ElementRef);\n\n public readonly injector: Injector = inject(Injector);\n\n public readonly cd: ChangeDetectorRef = inject(ChangeDetectorRef);\n\n public renderer: Renderer2 = inject(Renderer2);\n\n public config: PrimeNG = inject(PrimeNG);\n\n public baseComponentStyle: BaseComponentStyle = inject(BaseComponentStyle);\n\n public baseStyle: BaseStyle = inject(BaseStyle);\n\n public scopedStyleEl: any;\n\n public rootEl: any;\n\n @Input() dt: Object | undefined;\n\n get styleOptions() {\n return { nonce: this.config?.csp().nonce };\n }\n\n get _name() {\n return this.constructor.name.replace(/^_/, '').toLowerCase();\n }\n\n get componentStyle() {\n return this['_componentStyle'];\n }\n\n attrSelector = uuid('pc');\n\n private themeChangeListeners: Function[] = [];\n\n _getHostInstance(instance) {\n if (instance) {\n return instance ? (this['hostName'] ? (instance['name'] === this['hostName'] ? instance : this._getHostInstance(instance.parentInstance)) : instance.parentInstance) : undefined;\n }\n }\n\n _getOptionValue(options, key = '', params = {}) {\n return getKeyValue(options, key, params);\n }\n\n ngOnInit() {\n if (this.document) {\n this._loadStyles();\n }\n }\n\n ngAfterViewInit() {\n this.rootEl = this.el?.nativeElement;\n if (this.rootEl) {\n this.rootEl?.setAttribute(this.attrSelector, '');\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (this.document && !isPlatformServer(this.platformId)) {\n const { dt } = changes;\n if (dt && dt.currentValue) {\n this._loadScopedThemeStyles(dt.currentValue);\n this._themeChangeListener(() => this._loadScopedThemeStyles(dt.currentValue));\n }\n }\n }\n\n ngOnDestroy() {\n this._unloadScopedThemeStyles();\n this.themeChangeListeners.forEach((callback) => ThemeService.off('theme:change', callback));\n }\n\n _loadStyles() {\n const _load = () => {\n if (!Base.isStyleNameLoaded('base')) {\n this.baseStyle.loadGlobalCSS(this.styleOptions);\n Base.setLoadedStyleName('base');\n }\n\n this._loadThemeStyles();\n // @todo update config.theme()\n };\n\n _load();\n this._themeChangeListener(() => _load());\n }\n\n _loadCoreStyles() {\n if (!Base.isStyleNameLoaded('base') && this._name) {\n this.baseComponentStyle.loadCSS(this.styleOptions);\n this.componentStyle && this.componentStyle?.loadCSS(this.styleOptions);\n Base.setLoadedStyleName(this.componentStyle?.name);\n }\n }\n\n _loadThemeStyles() {\n // common\n if (!Theme.isStyleNameLoaded('common')) {\n const { primitive, semantic, global, style } = this.componentStyle?.getCommonTheme?.() || {};\n\n this.baseStyle.load(primitive?.css, { name: 'primitive-variables', ...this.styleOptions });\n this.baseStyle.load(semantic?.css, { name: 'semantic-variables', ...this.styleOptions });\n this.baseStyle.load(global?.css, { name: 'global-variables', ...this.styleOptions });\n this.baseStyle.loadGlobalTheme({ name: 'global-style', ...this.styleOptions }, style);\n\n Theme.setLoadedStyleName('common');\n }\n\n // component\n if (!Theme.isStyleNameLoaded(this.componentStyle?.name) && this.componentStyle?.name) {\n const { css, style } = this.componentStyle?.getComponentTheme?.() || {};\n\n this.componentStyle?.load(css, { name: `${this.componentStyle?.name}-variables`, ...this.styleOptions });\n this.componentStyle?.loadTheme({ name: `${this.componentStyle?.name}-style`, ...this.styleOptions }, style);\n\n Theme.setLoadedStyleName(this.componentStyle?.name);\n }\n\n // layer order\n if (!Theme.isStyleNameLoaded('layer-order')) {\n const layerOrder = this.componentStyle?.getLayerOrderThemeCSS?.();\n\n this.baseStyle.load(layerOrder, { name: 'layer-order', first: true, ...this.styleOptions });\n Theme.setLoadedStyleName('layer-order');\n }\n\n if (this.dt) {\n this._loadScopedThemeStyles(this.dt);\n this._themeChangeListener(() => this._loadScopedThemeStyles(this.dt));\n }\n }\n\n _loadScopedThemeStyles(preset) {\n const { css } = this.componentStyle?.getPresetTheme?.(preset, `[${this.attrSelector}]`) || {};\n const scopedStyle = this.componentStyle?.load(css, {\n name: `${this.attrSelector}-${this.componentStyle?.name}`,\n ...this.styleOptions\n });\n\n this.scopedStyleEl = scopedStyle?.el;\n }\n\n _unloadScopedThemeStyles() {\n this.scopedStyleEl?.remove();\n }\n\n _themeChangeListener(callback = () => {}) {\n Base.clearLoadedStyleNames();\n ThemeService.on('theme:change', callback);\n this.themeChangeListeners.push(callback);\n }\n\n cx(arg: string, rest?: string): string {\n const classes = this.parent ? this.parent.componentStyle?.classes?.[arg] : this.componentStyle?.classes?.[arg];\n\n if (typeof classes === 'function') {\n return classes({ instance: this });\n }\n\n return typeof classes === 'string' ? classes : arg;\n }\n\n sx(arg: string): string {\n const styles = this.componentStyle?.inlineStyles?.[arg];\n if (typeof styles === 'function') {\n return styles({ instance: this });\n }\n\n if (typeof styles === 'string') {\n return styles;\n } else {\n return { ...styles };\n }\n }\n\n // cx(key = '', params = {}) {\n // const classes = this.parent ? this.parent.componentStyle?.classes : this.componentStyle?.classes;\n // return this._getOptionValue(classes({ instance: this._getHostInstance(this) }), key, { ...params });\n // }\n\n get parent() {\n return this['parentInstance'];\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -443,12 +443,11 @@ class ConfirmDialog extends BaseComponent {
443
443
  setAttribute(this.styleElement, 'nonce', this.config?.csp()?.nonce);
444
444
  }
445
445
  }
446
- close(event) {
446
+ close() {
447
447
  if (this.confirmation?.rejectEvent) {
448
448
  this.confirmation.rejectEvent.emit(ConfirmEventType.CANCEL);
449
449
  }
450
450
  this.hide(ConfirmEventType.CANCEL);
451
- event.preventDefault();
452
451
  }
453
452
  hide(type) {
454
453
  this.onHide.emit(type);
@@ -469,6 +468,14 @@ class ConfirmDialog extends BaseComponent {
469
468
  this.destroyStyle();
470
469
  super.ngOnDestroy();
471
470
  }
471
+ onVisibleChange(value) {
472
+ if (!value) {
473
+ this.close();
474
+ }
475
+ else {
476
+ this.visible = value;
477
+ }
478
+ }
472
479
  onAccept() {
473
480
  if (this.confirmation && this.confirmation.acceptEvent) {
474
481
  this.confirmation.acceptEvent.emit();
@@ -497,7 +504,8 @@ class ConfirmDialog extends BaseComponent {
497
504
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.7", type: ConfirmDialog, isStandalone: true, selector: "p-confirmDialog, p-confirmdialog, p-confirm-dialog", inputs: { header: "header", icon: "icon", message: "message", style: "style", styleClass: "styleClass", maskStyleClass: "maskStyleClass", acceptIcon: "acceptIcon", acceptLabel: "acceptLabel", closeAriaLabel: "closeAriaLabel", acceptAriaLabel: "acceptAriaLabel", acceptVisible: ["acceptVisible", "acceptVisible", booleanAttribute], rejectIcon: "rejectIcon", rejectLabel: "rejectLabel", rejectAriaLabel: "rejectAriaLabel", rejectVisible: ["rejectVisible", "rejectVisible", booleanAttribute], acceptButtonStyleClass: "acceptButtonStyleClass", rejectButtonStyleClass: "rejectButtonStyleClass", closeOnEscape: ["closeOnEscape", "closeOnEscape", booleanAttribute], dismissableMask: ["dismissableMask", "dismissableMask", booleanAttribute], blockScroll: ["blockScroll", "blockScroll", booleanAttribute], rtl: ["rtl", "rtl", booleanAttribute], closable: ["closable", "closable", booleanAttribute], appendTo: "appendTo", key: "key", autoZIndex: ["autoZIndex", "autoZIndex", booleanAttribute], baseZIndex: ["baseZIndex", "baseZIndex", numberAttribute], transitionOptions: "transitionOptions", focusTrap: ["focusTrap", "focusTrap", booleanAttribute], defaultFocus: "defaultFocus", breakpoints: "breakpoints", visible: "visible", position: "position" }, outputs: { onHide: "onHide" }, providers: [ConfirmDialogStyle], queries: [{ propertyName: "footer", first: true, predicate: Footer, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: ["header"] }, { propertyName: "footerTemplate", first: true, predicate: ["footer"] }, { propertyName: "rejectIconTemplate", first: true, predicate: ["rejecticon"] }, { propertyName: "acceptIconTemplate", first: true, predicate: ["accepticon"] }, { propertyName: "messageTemplate", first: true, predicate: ["message"] }, { propertyName: "iconTemplate", first: true, predicate: ["icon"] }, { propertyName: "headlessTemplate", first: true, predicate: ["headless"] }, { propertyName: "templates", predicate: PrimeTemplate }], usesInheritance: true, ngImport: i0, template: `
498
505
  <p-dialog
499
506
  #dialog
500
- [(visible)]="visible"
507
+ [visible]="visible"
508
+ (visibleChange)="onVisibleChange($event)"
501
509
  role="alertdialog"
502
510
  [closable]="option('closable')"
503
511
  [styleClass]="containerClass"
@@ -589,7 +597,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.7", ngImpor
589
597
  template: `
590
598
  <p-dialog
591
599
  #dialog
592
- [(visible)]="visible"
600
+ [visible]="visible"
601
+ (visibleChange)="onVisibleChange($event)"
593
602
  role="alertdialog"
594
603
  [closable]="option('closable')"
595
604
  [styleClass]="containerClass"