@po-ui/ng-components 19.39.6 → 19.39.7

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.
@@ -2392,7 +2392,7 @@ class PoControlPositionService {
2392
2392
  * @param targetElement elemento de onde deve partir a exibição
2393
2393
  * @param customPositions posições que sobrescreve as posições padrões
2394
2394
  * @param isSetElementWidth indica se deve definir o tamanho do elemento a ser exibido, caso for verdadeiro será igual do targetElement
2395
- * @param isCornerAligned indica se o elemento filho será alinhado nos cantos do elemneto pai.
2395
+ * @param isCornerAligned indica se o elemento filho será alinhado nos cantos do elemento pai.
2396
2396
  */
2397
2397
  setElements(element, elementOffset, targetElement, customPositions, isSetElementWidth = false, isCornerAligned = false) {
2398
2398
  this.element = element instanceof ElementRef ? element.nativeElement : element;
@@ -2852,8 +2852,13 @@ class PoTooltipDirective extends PoTooltipBaseDirective {
2852
2852
  }
2853
2853
  hideTooltip() {
2854
2854
  if (this.tooltipContent) {
2855
- this.renderer.setStyle(this.tooltipContent, 'opacity', 0);
2856
- this.renderer.setStyle(this.tooltipContent, 'visibility', 'hidden');
2855
+ try {
2856
+ this.renderer.setStyle(this.tooltipContent, 'opacity', 0);
2857
+ this.renderer.setStyle(this.tooltipContent, 'visibility', 'hidden');
2858
+ }
2859
+ catch (e) {
2860
+ // Tolerate errors when DOM element is partially destroyed during teardown
2861
+ }
2857
2862
  this.isHidden = true;
2858
2863
  this.removeScrollEventListener();
2859
2864
  }
@@ -6844,6 +6849,8 @@ class PoPopoverBaseComponent {
6844
6849
  * @default `false`
6845
6850
  */
6846
6851
  appendBox = false;
6852
+ // Indica se o elemento filho será alinhado nos cantos do elemento pai.
6853
+ cornerAligned = false;
6847
6854
  /**
6848
6855
  * @description
6849
6856
  *
@@ -6890,6 +6897,8 @@ class PoPopoverBaseComponent {
6890
6897
  target;
6891
6898
  /** Título do popover. */
6892
6899
  title;
6900
+ // Define o width do popover.
6901
+ width;
6893
6902
  /** Evento disparado ao fechar o popover. */
6894
6903
  closePopover = new EventEmitter();
6895
6904
  /** Evento disparado ao abrir o popover. */
@@ -6982,7 +6991,7 @@ class PoPopoverBaseComponent {
6982
6991
  */
6983
6992
  customClasses = input(undefined, { alias: 'p-custom-classes' });
6984
6993
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopoverBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6985
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.7", type: PoPopoverBaseComponent, isStandalone: false, selector: "po-popover-base", inputs: { appendBox: { classPropertyName: "appendBox", publicName: "p-append-in-body", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, target: { classPropertyName: "target", publicName: "p-target", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "p-title", isSignal: false, isRequired: false, transformFunction: null }, hideArrow: { classPropertyName: "hideArrow", publicName: "p-hide-arrow", isSignal: false, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "p-position", isSignal: false, isRequired: false, transformFunction: null }, trigger: { classPropertyName: "trigger", publicName: "p-trigger", isSignal: false, isRequired: false, transformFunction: null }, customClasses: { classPropertyName: "customClasses", publicName: "p-custom-classes", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closePopover: "p-close", openPopover: "p-open" }, ngImport: i0, template: '', isInline: true });
6994
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.7", type: PoPopoverBaseComponent, isStandalone: false, selector: "po-popover-base", inputs: { appendBox: { classPropertyName: "appendBox", publicName: "p-append-in-body", isSignal: false, isRequired: false, transformFunction: convertToBoolean }, cornerAligned: { classPropertyName: "cornerAligned", publicName: "p-corner-aligned", isSignal: false, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "p-target", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "p-title", isSignal: false, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "p-width", isSignal: false, isRequired: false, transformFunction: null }, hideArrow: { classPropertyName: "hideArrow", publicName: "p-hide-arrow", isSignal: false, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "p-position", isSignal: false, isRequired: false, transformFunction: null }, trigger: { classPropertyName: "trigger", publicName: "p-trigger", isSignal: false, isRequired: false, transformFunction: null }, customClasses: { classPropertyName: "customClasses", publicName: "p-custom-classes", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closePopover: "p-close", openPopover: "p-open" }, ngImport: i0, template: '', isInline: true });
6986
6995
  }
6987
6996
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopoverBaseComponent, decorators: [{
6988
6997
  type: Component,
@@ -6994,12 +7003,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
6994
7003
  }], propDecorators: { appendBox: [{
6995
7004
  type: Input,
6996
7005
  args: [{ alias: 'p-append-in-body', transform: convertToBoolean }]
7006
+ }], cornerAligned: [{
7007
+ type: Input,
7008
+ args: ['p-corner-aligned']
6997
7009
  }], target: [{
6998
7010
  type: Input,
6999
7011
  args: ['p-target']
7000
7012
  }], title: [{
7001
7013
  type: Input,
7002
7014
  args: ['p-title']
7015
+ }], width: [{
7016
+ type: Input,
7017
+ args: ['p-width']
7003
7018
  }], closePopover: [{
7004
7019
  type: Output,
7005
7020
  args: ['p-close']
@@ -7047,8 +7062,10 @@ class PoPopoverComponent extends PoPopoverBaseComponent {
7047
7062
  timeoutResize;
7048
7063
  targetElement;
7049
7064
  afterViewInitWasCalled = false;
7065
+ widthPopover = undefined;
7050
7066
  keydownTargetListener;
7051
7067
  keydownPopoverListener;
7068
+ resizeObserver;
7052
7069
  eventListenerFunction;
7053
7070
  tabbableSelector = [
7054
7071
  'a[href]:not([tabindex="-1"])',
@@ -7088,10 +7105,12 @@ class PoPopoverComponent extends PoPopoverBaseComponent {
7088
7105
  this.setRendererListenInit();
7089
7106
  }
7090
7107
  ngOnDestroy() {
7108
+ this.disconnectResizeObserver();
7091
7109
  this.removeListeners();
7092
7110
  }
7093
7111
  close() {
7094
7112
  this.isHidden = true;
7113
+ this.disconnectResizeObserver();
7095
7114
  this.closePopover.emit();
7096
7115
  if (this.trigger === 'function' && this.clickoutListener) {
7097
7116
  this.clickoutListener();
@@ -7113,6 +7132,16 @@ class PoPopoverComponent extends PoPopoverBaseComponent {
7113
7132
  this.setPopoverPosition();
7114
7133
  this.setOpacity(1);
7115
7134
  this.openPopover.emit();
7135
+ this.observeContentResize();
7136
+ if (this.cornerAligned && !this.width) {
7137
+ const el = this.popoverElement.nativeElement;
7138
+ el.style.width = 'auto';
7139
+ const width = el.scrollWidth;
7140
+ this.widthPopover = width;
7141
+ requestAnimationFrame(() => {
7142
+ this.setPopoverPosition();
7143
+ });
7144
+ }
7116
7145
  this.cd.detectChanges();
7117
7146
  });
7118
7147
  if (this.trigger === 'function') {
@@ -7207,7 +7236,7 @@ class PoPopoverComponent extends PoPopoverBaseComponent {
7207
7236
  }
7208
7237
  setElementsControlPosition() {
7209
7238
  const popoverOffset = 8;
7210
- this.poControlPosition.setElements(this.popoverElement.nativeElement, popoverOffset, this.target);
7239
+ this.poControlPosition.setElements(this.popoverElement.nativeElement, popoverOffset, this.target, undefined, false, this.cornerAligned);
7211
7240
  }
7212
7241
  focusOnTarget() {
7213
7242
  const el = this.targetElement;
@@ -7312,12 +7341,32 @@ class PoPopoverComponent extends PoPopoverBaseComponent {
7312
7341
  const prev = docTabs[idx - 1] || docTabs[docTabs.length - 1];
7313
7342
  prev?.focus?.();
7314
7343
  }
7344
+ observeContentResize() {
7345
+ this.disconnectResizeObserver();
7346
+ if (!this.popoverElement?.nativeElement)
7347
+ return;
7348
+ let initialCall = true;
7349
+ this.resizeObserver = new ResizeObserver(() => {
7350
+ if (initialCall) {
7351
+ initialCall = false;
7352
+ return;
7353
+ }
7354
+ this.setElementsControlPosition();
7355
+ this.setPopoverPosition();
7356
+ this.cd.detectChanges();
7357
+ });
7358
+ this.resizeObserver.observe(this.popoverElement.nativeElement);
7359
+ }
7360
+ disconnectResizeObserver() {
7361
+ this.resizeObserver?.disconnect();
7362
+ this.resizeObserver = null;
7363
+ }
7315
7364
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopoverComponent, deps: [{ token: i0.Renderer2 }, { token: PoControlPositionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
7316
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPopoverComponent, isStandalone: false, selector: "po-popover", providers: [PoControlPositionService], viewQueries: [{ propertyName: "popoverElement", first: true, predicate: ["popoverElement"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (appendBox) {\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"target\"\n [cdkConnectedOverlayOpen]=\"true\"\n [cdkConnectedOverlayDisableClose]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"sharedPopoverContent\"></ng-container>\n </ng-template>\n} @else {\n <ng-container *ngTemplateOutlet=\"sharedPopoverContent\"></ng-container>\n}\n\n<ng-template #sharedPopoverContent>\n <div #popoverElement [hidden]=\"isHidden\" class=\"po-popover\" [ngClass]=\"customClasses()\">\n @if (!hideArrow) {\n <div class=\"po-popover-arrow po-arrow-{{ arrowDirection }}\"></div>\n }\n\n <div class=\"po-popover-content\">\n @if (title) {\n <span class=\"po-popover-title\">{{ title }}</span>\n }\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }] });
7365
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPopoverComponent, isStandalone: false, selector: "po-popover", providers: [PoControlPositionService], viewQueries: [{ propertyName: "popoverElement", first: true, predicate: ["popoverElement"], descendants: true, read: ElementRef }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (appendBox) {\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"target\"\n [cdkConnectedOverlayOpen]=\"true\"\n [cdkConnectedOverlayDisableClose]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"sharedPopoverContent\"></ng-container>\n </ng-template>\n} @else {\n <ng-container *ngTemplateOutlet=\"sharedPopoverContent\"></ng-container>\n}\n\n<ng-template #sharedPopoverContent>\n <div\n #popoverElement\n [hidden]=\"isHidden\"\n class=\"po-popover\"\n [style.width.px]=\"width ?? widthPopover\"\n [ngClass]=\"customClasses()\"\n >\n @if (!hideArrow) {\n <div class=\"po-popover-arrow po-arrow-{{ arrowDirection }}\"></div>\n }\n\n <div class=\"po-popover-content\">\n @if (title) {\n <span class=\"po-popover-title\">{{ title }}</span>\n }\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }] });
7317
7366
  }
7318
7367
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopoverComponent, decorators: [{
7319
7368
  type: Component,
7320
- args: [{ selector: 'po-popover', providers: [PoControlPositionService], standalone: false, template: "@if (appendBox) {\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"target\"\n [cdkConnectedOverlayOpen]=\"true\"\n [cdkConnectedOverlayDisableClose]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"sharedPopoverContent\"></ng-container>\n </ng-template>\n} @else {\n <ng-container *ngTemplateOutlet=\"sharedPopoverContent\"></ng-container>\n}\n\n<ng-template #sharedPopoverContent>\n <div #popoverElement [hidden]=\"isHidden\" class=\"po-popover\" [ngClass]=\"customClasses()\">\n @if (!hideArrow) {\n <div class=\"po-popover-arrow po-arrow-{{ arrowDirection }}\"></div>\n }\n\n <div class=\"po-popover-content\">\n @if (title) {\n <span class=\"po-popover-title\">{{ title }}</span>\n }\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n" }]
7369
+ args: [{ selector: 'po-popover', providers: [PoControlPositionService], standalone: false, template: "@if (appendBox) {\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"target\"\n [cdkConnectedOverlayOpen]=\"true\"\n [cdkConnectedOverlayDisableClose]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"sharedPopoverContent\"></ng-container>\n </ng-template>\n} @else {\n <ng-container *ngTemplateOutlet=\"sharedPopoverContent\"></ng-container>\n}\n\n<ng-template #sharedPopoverContent>\n <div\n #popoverElement\n [hidden]=\"isHidden\"\n class=\"po-popover\"\n [style.width.px]=\"width ?? widthPopover\"\n [ngClass]=\"customClasses()\"\n >\n @if (!hideArrow) {\n <div class=\"po-popover-arrow po-arrow-{{ arrowDirection }}\"></div>\n }\n\n <div class=\"po-popover-content\">\n @if (title) {\n <span class=\"po-popover-title\">{{ title }}</span>\n }\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n" }]
7321
7370
  }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: PoControlPositionService }, { type: i0.ChangeDetectorRef }], propDecorators: { popoverElement: [{
7322
7371
  type: ViewChild,
7323
7372
  args: ['popoverElement', { read: ElementRef, static: false }]
@@ -8802,7 +8851,7 @@ class PoPopupComponent extends PoPopupBaseComponent {
8802
8851
  }
8803
8852
  onScroll = ({ target }) => {
8804
8853
  const { showPopup, popupRef } = this;
8805
- if (showPopup && popupRef?.nativeElement && !popupRef.nativeElement.contains(target)) {
8854
+ if (showPopup && popupRef?.nativeElement && target instanceof Node && !popupRef.nativeElement.contains(target)) {
8806
8855
  this.close();
8807
8856
  }
8808
8857
  };
@@ -16977,10 +17026,10 @@ class PoDatepickerComponent extends PoDatepickerBaseComponent {
16977
17026
  if (this.readonly || $event?.target !== this.inputEl?.nativeElement) {
16978
17027
  return;
16979
17028
  }
16980
- this.objMask.keyup($event);
17029
+ this.objMask?.keyup($event);
16981
17030
  // Controla a atualização do model, verificando se a data é valida
16982
- if (this.objMask.valueToModel || this.objMask.valueToModel === '') {
16983
- if (this.objMask.valueToModel.length >= 10) {
17031
+ if (this.objMask?.valueToModel || this.objMask?.valueToModel === '') {
17032
+ if (this.objMask?.valueToModel.length >= 10) {
16984
17033
  this.controlModel(this.getDateFromString(this.inputEl.nativeElement.value));
16985
17034
  this.date = this.getDateFromString(this.inputEl.nativeElement.value);
16986
17035
  }
@@ -17111,9 +17160,9 @@ class PoDatepickerComponent extends PoDatepickerBaseComponent {
17111
17160
  this.onTouchedModel?.();
17112
17161
  const date = this.inputEl.nativeElement.value;
17113
17162
  const newDate = date ? this.getDateFromString(date) : undefined;
17114
- this.objMask.blur($event);
17163
+ this.objMask?.blur($event);
17115
17164
  this.onblur.emit();
17116
- if (this.objMask.valueToModel) {
17165
+ if (this.objMask?.valueToModel) {
17117
17166
  if (this.objMask.valueToModel.length >= 10) {
17118
17167
  this.controlModel(newDate);
17119
17168
  this.date = newDate;
@@ -17137,7 +17186,7 @@ class PoDatepickerComponent extends PoDatepickerBaseComponent {
17137
17186
  }
17138
17187
  else {
17139
17188
  // Atualiza a posição do cursor ao clicar
17140
- this.objMask.click($event);
17189
+ this.objMask?.click($event);
17141
17190
  }
17142
17191
  }
17143
17192
  onKeyDown(event) {
@@ -56980,11 +57029,11 @@ class PoHeaderToolsComponent {
56980
57029
  }
56981
57030
  }
56982
57031
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoHeaderToolsComponent, deps: [{ token: i1$1.Router }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
56983
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoHeaderToolsComponent, isStandalone: false, selector: "po-header-tools", inputs: { forceActionTools: ["p-force-actions-tools", "forceActionTools"], actionTools: ["p-actions-tools", "actionTools"], literals: ["p-literals", "literals"], headerTemplate: ["p-header-template", "headerTemplate"] }, viewQueries: [{ propertyName: "buttonActionElements", predicate: ["buttonActionElement"], descendants: true, read: ElementRef }, { propertyName: "buttonActionComponents", predicate: ["buttonActionElement"], descendants: true }, { propertyName: "poPopupActions", predicate: ["poPopupAction"], descendants: true }, { propertyName: "poPopoverActions", predicate: ["poPopoverAction"], descendants: true }], ngImport: i0, template: "<div class=\"po-header-nav-tools\">\n @if (headerTemplate) {\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n }\n @for (action of actionTools; track action?.label; let i = $index) {\n <li [class.po-header-nav-item-small]=\"i !== actionTools.length - 1\">\n <po-button\n #buttonActionElement\n [p-tooltip]=\"action?.tooltip\"\n [p-icon]=\"action?.badge ? badge : action?.icon || 'an an-dots-nine'\"\n p-kind=\"tertiary\"\n (p-click)=\"onClickAction(i)\"\n [class.po-header-selected-tool]=\"checkSelected(i)\"\n [p-aria-expanded]=\"checkSelected(i)\"\n [p-aria-label]=\"getAriaLabel(action)\"\n p-size=\"medium\"\n >\n </po-button>\n\n <ng-template #badge>\n <i class=\"po-header-badge\" [class]=\"action?.icon || 'an an-bell'\">\n <po-badge class=\"po-header-status\" [p-value]=\"action?.badge\"></po-badge>\n </i>\n </ng-template>\n\n <po-popup\n #poPopupAction\n [p-actions]=\"action?.items\"\n [p-target]=\"buttonActionElements?.get(i)\"\n [p-hide-arrow]=\"true\"\n (p-close)=\"onClosePopup(i)\"\n p-size=\"medium\"\n >\n </po-popup>\n\n @if (action?.popover) {\n <po-popover\n #poPopoverAction\n [p-target]=\"buttonActionElements?.get(i)\"\n p-position=\"bottom-left\"\n [p-hide-arrow]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"action.popover?.content\"></ng-container>\n </po-popover>\n }\n </li>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PoButtonComponent, selector: "po-button" }, { kind: "component", type: PoBadgeComponent, selector: "po-badge" }, { kind: "component", type: PoPopoverComponent, selector: "po-popover" }, { kind: "directive", type: PoTooltipDirective, selector: "[p-tooltip]" }, { kind: "component", type: PoPopupComponent, selector: "po-popup" }] });
57032
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoHeaderToolsComponent, isStandalone: false, selector: "po-header-tools", inputs: { forceActionTools: ["p-force-actions-tools", "forceActionTools"], actionTools: ["p-actions-tools", "actionTools"], literals: ["p-literals", "literals"], headerTemplate: ["p-header-template", "headerTemplate"] }, viewQueries: [{ propertyName: "buttonActionElements", predicate: ["buttonActionElement"], descendants: true, read: ElementRef }, { propertyName: "buttonActionComponents", predicate: ["buttonActionElement"], descendants: true }, { propertyName: "poPopupActions", predicate: ["poPopupAction"], descendants: true }, { propertyName: "poPopoverActions", predicate: ["poPopoverAction"], descendants: true }], ngImport: i0, template: "<div class=\"po-header-nav-tools\">\n @if (headerTemplate) {\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n }\n @for (action of actionTools; track action?.label; let i = $index) {\n <li [class.po-header-nav-item-small]=\"i !== actionTools.length - 1\">\n <po-button\n #buttonActionElement\n [p-tooltip]=\"action?.tooltip\"\n [p-icon]=\"action?.badge ? badge : action?.icon || 'an an-dots-nine'\"\n p-kind=\"tertiary\"\n (p-click)=\"onClickAction(i)\"\n [class.po-header-selected-tool]=\"checkSelected(i)\"\n [p-aria-expanded]=\"checkSelected(i)\"\n [p-aria-label]=\"getAriaLabel(action)\"\n p-size=\"medium\"\n >\n </po-button>\n\n <ng-template #badge>\n <i class=\"po-header-badge\" [class]=\"action?.icon || 'an an-bell'\">\n <po-badge class=\"po-header-status\" [p-value]=\"action?.badge\"></po-badge>\n </i>\n </ng-template>\n\n <po-popup\n #poPopupAction\n [p-actions]=\"action?.items\"\n [p-target]=\"buttonActionElements?.get(i)\"\n [p-hide-arrow]=\"true\"\n (p-close)=\"onClosePopup(i)\"\n p-size=\"medium\"\n >\n </po-popup>\n\n @if (action?.popover) {\n <po-popover\n #poPopoverAction\n p-position=\"bottom-right\"\n [p-width]=\"action.popover.width\"\n [p-target]=\"buttonActionElements?.get(i)\"\n [p-hide-arrow]=\"true\"\n [p-corner-aligned]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"action.popover?.content\"></ng-container>\n </po-popover>\n }\n </li>\n }\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PoButtonComponent, selector: "po-button" }, { kind: "component", type: PoBadgeComponent, selector: "po-badge" }, { kind: "component", type: PoPopoverComponent, selector: "po-popover" }, { kind: "directive", type: PoTooltipDirective, selector: "[p-tooltip]" }, { kind: "component", type: PoPopupComponent, selector: "po-popup" }] });
56984
57033
  }
56985
57034
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoHeaderToolsComponent, decorators: [{
56986
57035
  type: Component,
56987
- args: [{ selector: 'po-header-tools', standalone: false, template: "<div class=\"po-header-nav-tools\">\n @if (headerTemplate) {\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n }\n @for (action of actionTools; track action?.label; let i = $index) {\n <li [class.po-header-nav-item-small]=\"i !== actionTools.length - 1\">\n <po-button\n #buttonActionElement\n [p-tooltip]=\"action?.tooltip\"\n [p-icon]=\"action?.badge ? badge : action?.icon || 'an an-dots-nine'\"\n p-kind=\"tertiary\"\n (p-click)=\"onClickAction(i)\"\n [class.po-header-selected-tool]=\"checkSelected(i)\"\n [p-aria-expanded]=\"checkSelected(i)\"\n [p-aria-label]=\"getAriaLabel(action)\"\n p-size=\"medium\"\n >\n </po-button>\n\n <ng-template #badge>\n <i class=\"po-header-badge\" [class]=\"action?.icon || 'an an-bell'\">\n <po-badge class=\"po-header-status\" [p-value]=\"action?.badge\"></po-badge>\n </i>\n </ng-template>\n\n <po-popup\n #poPopupAction\n [p-actions]=\"action?.items\"\n [p-target]=\"buttonActionElements?.get(i)\"\n [p-hide-arrow]=\"true\"\n (p-close)=\"onClosePopup(i)\"\n p-size=\"medium\"\n >\n </po-popup>\n\n @if (action?.popover) {\n <po-popover\n #poPopoverAction\n [p-target]=\"buttonActionElements?.get(i)\"\n p-position=\"bottom-left\"\n [p-hide-arrow]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"action.popover?.content\"></ng-container>\n </po-popover>\n }\n </li>\n }\n</div>\n" }]
57036
+ args: [{ selector: 'po-header-tools', standalone: false, template: "<div class=\"po-header-nav-tools\">\n @if (headerTemplate) {\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n }\n @for (action of actionTools; track action?.label; let i = $index) {\n <li [class.po-header-nav-item-small]=\"i !== actionTools.length - 1\">\n <po-button\n #buttonActionElement\n [p-tooltip]=\"action?.tooltip\"\n [p-icon]=\"action?.badge ? badge : action?.icon || 'an an-dots-nine'\"\n p-kind=\"tertiary\"\n (p-click)=\"onClickAction(i)\"\n [class.po-header-selected-tool]=\"checkSelected(i)\"\n [p-aria-expanded]=\"checkSelected(i)\"\n [p-aria-label]=\"getAriaLabel(action)\"\n p-size=\"medium\"\n >\n </po-button>\n\n <ng-template #badge>\n <i class=\"po-header-badge\" [class]=\"action?.icon || 'an an-bell'\">\n <po-badge class=\"po-header-status\" [p-value]=\"action?.badge\"></po-badge>\n </i>\n </ng-template>\n\n <po-popup\n #poPopupAction\n [p-actions]=\"action?.items\"\n [p-target]=\"buttonActionElements?.get(i)\"\n [p-hide-arrow]=\"true\"\n (p-close)=\"onClosePopup(i)\"\n p-size=\"medium\"\n >\n </po-popup>\n\n @if (action?.popover) {\n <po-popover\n #poPopoverAction\n p-position=\"bottom-right\"\n [p-width]=\"action.popover.width\"\n [p-target]=\"buttonActionElements?.get(i)\"\n [p-hide-arrow]=\"true\"\n [p-corner-aligned]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"action.popover?.content\"></ng-container>\n </po-popover>\n }\n </li>\n }\n</div>\n" }]
56988
57037
  }], ctorParameters: () => [{ type: i1$1.Router }, { type: i0.ChangeDetectorRef }], propDecorators: { buttonActionElements: [{
56989
57038
  type: ViewChildren,
56990
57039
  args: ['buttonActionElement', { read: ElementRef }]
@@ -57063,11 +57112,11 @@ class PoHeaderCustomerComponent {
57063
57112
  }
57064
57113
  }
57065
57114
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoHeaderCustomerComponent, deps: [{ token: PoLanguageService }], target: i0.ɵɵFactoryTarget.Component });
57066
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoHeaderCustomerComponent, isStandalone: false, selector: "po-header-customer", inputs: { headerUser: ["p-header-user", "headerUser"] }, viewQueries: [{ propertyName: "poPopupAction", first: true, predicate: ["poPopupAction"], descendants: true }, { propertyName: "poPopoverAction", first: true, predicate: ["poPopoverAction"], descendants: true }], ngImport: i0, template: "<div class=\"po-header-nav-tools\" (click)=\"onClickUserSection()\" (keydown)=\"onKeyDownCustomer($event)\">\n <li\n #targetRef\n tabindex=\"0\"\n class=\"po-header-nav-customer-container\"\n (click)=\"onClickPopup()\"\n role=\"menu\"\n [attr.aria-label]=\"literals.labelUser\"\n >\n <div class=\"po-header-nav-customer-brand\">\n <img [src]=\"headerUser?.customerBrand\" alt=\"User\" />\n </div>\n\n <div class=\"po-header-nav-customer-divider\"></div>\n\n <div class=\"po-header-nav-customer-avatar-wrapper\">\n <div class=\"po-header-nav-customer-avatar\">\n <img [src]=\"headerUser?.avatar\" alt=\"Avatar\" />\n </div>\n @if (headerUser?.status) {\n <po-badge class=\"po-header-nav-avatar-status\" p-size=\"small\" [p-status]=\"headerUser.status\"></po-badge>\n }\n </div>\n </li>\n\n <li class=\"po-header-nav-customer-avatar-wrapper po-header-icon-small\">\n <div class=\"po-header-nav-customer-avatar\">\n <img [src]=\"headerUser?.avatar\" alt=\"Avatar\" />\n </div>\n @if (headerUser?.status) {\n <po-badge class=\"po-header-nav-avatar-status\" p-size=\"small\" [p-status]=\"headerUser.status\"></po-badge>\n }\n </li>\n</div>\n\n@if (headerUser?.items?.length) {\n <po-popup\n #poPopupAction\n [p-actions]=\"headerUser.items\"\n [p-target]=\"targetRef\"\n [p-hide-arrow]=\"true\"\n p-position=\"bottom-left\"\n p-size=\"medium\"\n >\n </po-popup>\n}\n\n@if (headerUser?.popover) {\n <po-popover #poPopoverAction [p-target]=\"targetRef\" p-position=\"bottom-left\" [p-hide-arrow]=\"true\">\n <ng-container *ngTemplateOutlet=\"headerUser.popover.content\"></ng-container>\n </po-popover>\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PoBadgeComponent, selector: "po-badge" }, { kind: "component", type: PoPopoverComponent, selector: "po-popover" }, { kind: "component", type: PoPopupComponent, selector: "po-popup" }] });
57115
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoHeaderCustomerComponent, isStandalone: false, selector: "po-header-customer", inputs: { headerUser: ["p-header-user", "headerUser"] }, viewQueries: [{ propertyName: "poPopupAction", first: true, predicate: ["poPopupAction"], descendants: true }, { propertyName: "poPopoverAction", first: true, predicate: ["poPopoverAction"], descendants: true }], ngImport: i0, template: "<div class=\"po-header-nav-tools\" (click)=\"onClickUserSection()\" (keydown)=\"onKeyDownCustomer($event)\">\n <li\n #targetRef\n tabindex=\"0\"\n class=\"po-header-nav-customer-container\"\n (click)=\"onClickPopup()\"\n role=\"menu\"\n [attr.aria-label]=\"literals.labelUser\"\n >\n <div class=\"po-header-nav-customer-brand\">\n <img [src]=\"headerUser?.customerBrand\" alt=\"User\" />\n </div>\n\n <div class=\"po-header-nav-customer-divider\"></div>\n\n <div class=\"po-header-nav-customer-avatar-wrapper\">\n <div class=\"po-header-nav-customer-avatar\">\n <img [src]=\"headerUser?.avatar\" alt=\"Avatar\" />\n </div>\n @if (headerUser?.status) {\n <po-badge class=\"po-header-nav-avatar-status\" p-size=\"small\" [p-status]=\"headerUser.status\"></po-badge>\n }\n </div>\n </li>\n\n <li class=\"po-header-nav-customer-avatar-wrapper po-header-icon-small\">\n <div class=\"po-header-nav-customer-avatar\">\n <img [src]=\"headerUser?.avatar\" alt=\"Avatar\" />\n </div>\n @if (headerUser?.status) {\n <po-badge class=\"po-header-nav-avatar-status\" p-size=\"small\" [p-status]=\"headerUser.status\"></po-badge>\n }\n </li>\n</div>\n\n@if (headerUser?.items?.length) {\n <po-popup\n #poPopupAction\n [p-actions]=\"headerUser.items\"\n [p-target]=\"targetRef\"\n [p-hide-arrow]=\"true\"\n p-position=\"bottom-left\"\n p-size=\"medium\"\n >\n </po-popup>\n}\n\n@if (headerUser?.popover) {\n <po-popover\n #poPopoverAction\n p-position=\"bottom-right\"\n [p-width]=\"headerUser.popover.width\"\n [p-target]=\"targetRef\"\n [p-hide-arrow]=\"true\"\n [p-corner-aligned]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"headerUser.popover.content\"></ng-container>\n </po-popover>\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PoBadgeComponent, selector: "po-badge" }, { kind: "component", type: PoPopoverComponent, selector: "po-popover" }, { kind: "component", type: PoPopupComponent, selector: "po-popup" }] });
57067
57116
  }
57068
57117
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoHeaderCustomerComponent, decorators: [{
57069
57118
  type: Component,
57070
- args: [{ selector: 'po-header-customer', standalone: false, template: "<div class=\"po-header-nav-tools\" (click)=\"onClickUserSection()\" (keydown)=\"onKeyDownCustomer($event)\">\n <li\n #targetRef\n tabindex=\"0\"\n class=\"po-header-nav-customer-container\"\n (click)=\"onClickPopup()\"\n role=\"menu\"\n [attr.aria-label]=\"literals.labelUser\"\n >\n <div class=\"po-header-nav-customer-brand\">\n <img [src]=\"headerUser?.customerBrand\" alt=\"User\" />\n </div>\n\n <div class=\"po-header-nav-customer-divider\"></div>\n\n <div class=\"po-header-nav-customer-avatar-wrapper\">\n <div class=\"po-header-nav-customer-avatar\">\n <img [src]=\"headerUser?.avatar\" alt=\"Avatar\" />\n </div>\n @if (headerUser?.status) {\n <po-badge class=\"po-header-nav-avatar-status\" p-size=\"small\" [p-status]=\"headerUser.status\"></po-badge>\n }\n </div>\n </li>\n\n <li class=\"po-header-nav-customer-avatar-wrapper po-header-icon-small\">\n <div class=\"po-header-nav-customer-avatar\">\n <img [src]=\"headerUser?.avatar\" alt=\"Avatar\" />\n </div>\n @if (headerUser?.status) {\n <po-badge class=\"po-header-nav-avatar-status\" p-size=\"small\" [p-status]=\"headerUser.status\"></po-badge>\n }\n </li>\n</div>\n\n@if (headerUser?.items?.length) {\n <po-popup\n #poPopupAction\n [p-actions]=\"headerUser.items\"\n [p-target]=\"targetRef\"\n [p-hide-arrow]=\"true\"\n p-position=\"bottom-left\"\n p-size=\"medium\"\n >\n </po-popup>\n}\n\n@if (headerUser?.popover) {\n <po-popover #poPopoverAction [p-target]=\"targetRef\" p-position=\"bottom-left\" [p-hide-arrow]=\"true\">\n <ng-container *ngTemplateOutlet=\"headerUser.popover.content\"></ng-container>\n </po-popover>\n}\n" }]
57119
+ args: [{ selector: 'po-header-customer', standalone: false, template: "<div class=\"po-header-nav-tools\" (click)=\"onClickUserSection()\" (keydown)=\"onKeyDownCustomer($event)\">\n <li\n #targetRef\n tabindex=\"0\"\n class=\"po-header-nav-customer-container\"\n (click)=\"onClickPopup()\"\n role=\"menu\"\n [attr.aria-label]=\"literals.labelUser\"\n >\n <div class=\"po-header-nav-customer-brand\">\n <img [src]=\"headerUser?.customerBrand\" alt=\"User\" />\n </div>\n\n <div class=\"po-header-nav-customer-divider\"></div>\n\n <div class=\"po-header-nav-customer-avatar-wrapper\">\n <div class=\"po-header-nav-customer-avatar\">\n <img [src]=\"headerUser?.avatar\" alt=\"Avatar\" />\n </div>\n @if (headerUser?.status) {\n <po-badge class=\"po-header-nav-avatar-status\" p-size=\"small\" [p-status]=\"headerUser.status\"></po-badge>\n }\n </div>\n </li>\n\n <li class=\"po-header-nav-customer-avatar-wrapper po-header-icon-small\">\n <div class=\"po-header-nav-customer-avatar\">\n <img [src]=\"headerUser?.avatar\" alt=\"Avatar\" />\n </div>\n @if (headerUser?.status) {\n <po-badge class=\"po-header-nav-avatar-status\" p-size=\"small\" [p-status]=\"headerUser.status\"></po-badge>\n }\n </li>\n</div>\n\n@if (headerUser?.items?.length) {\n <po-popup\n #poPopupAction\n [p-actions]=\"headerUser.items\"\n [p-target]=\"targetRef\"\n [p-hide-arrow]=\"true\"\n p-position=\"bottom-left\"\n p-size=\"medium\"\n >\n </po-popup>\n}\n\n@if (headerUser?.popover) {\n <po-popover\n #poPopoverAction\n p-position=\"bottom-right\"\n [p-width]=\"headerUser.popover.width\"\n [p-target]=\"targetRef\"\n [p-hide-arrow]=\"true\"\n [p-corner-aligned]=\"true\"\n >\n <ng-container *ngTemplateOutlet=\"headerUser.popover.content\"></ng-container>\n </po-popover>\n}\n" }]
57071
57120
  }], ctorParameters: () => [{ type: PoLanguageService }], propDecorators: { poPopupAction: [{
57072
57121
  type: ViewChild,
57073
57122
  args: ['poPopupAction']