@po-ui/ng-templates 19.32.0 → 19.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Directive, Input, Output, inject, Injectable, Component, ViewChild, NgModule, ChangeDetectorRef, ChangeDetectionStrategy, ViewContainerRef, ViewEncapsulation, ContentChildren, ContentChild, IterableDiffers } from '@angular/core';
2
+ import { EventEmitter, Directive, Input, Output, inject, Injectable, Component, ViewChild, NgModule, ChangeDetectorRef, ChangeDetectionStrategy, ViewContainerRef, ViewEncapsulation, ContentChildren, ContentChild, HostBinding, IterableDiffers } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule, DatePipe } from '@angular/common';
5
5
  import * as i2 from '@angular/forms';
@@ -1003,11 +1003,11 @@ class PoModalPasswordRecoveryErrorMessageComponent {
1003
1003
  /** Texto exibido na mensagem de erro. */
1004
1004
  text;
1005
1005
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoModalPasswordRecoveryErrorMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1006
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.7", type: PoModalPasswordRecoveryErrorMessageComponent, isStandalone: false, selector: "po-modal-password-recovery-error-message", inputs: { text: ["p-text", "text"] }, ngImport: i0, template: "<div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-container-error-text\">{{ text }}</span>\n</div>\n", dependencies: [{ kind: "component", type: i3.PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }] });
1006
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.7", type: PoModalPasswordRecoveryErrorMessageComponent, isStandalone: false, selector: "po-modal-password-recovery-error-message", inputs: { text: ["p-text", "text"] }, ngImport: i0, template: "<div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-error-message\">{{ text }}</span>\n</div>\n", dependencies: [{ kind: "component", type: i3.PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }] });
1007
1007
  }
1008
1008
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoModalPasswordRecoveryErrorMessageComponent, decorators: [{
1009
1009
  type: Component,
1010
- args: [{ selector: 'po-modal-password-recovery-error-message', standalone: false, template: "<div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-container-error-text\">{{ text }}</span>\n</div>\n" }]
1010
+ args: [{ selector: 'po-modal-password-recovery-error-message', standalone: false, template: "<div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-error-message\">{{ text }}</span>\n</div>\n" }]
1011
1011
  }], propDecorators: { text: [{
1012
1012
  type: Input,
1013
1013
  args: ['p-text']
@@ -2932,6 +2932,20 @@ const poPageDynamicDetailLiteralsDefault = {
2932
2932
  * GET {end-point}/metadata?type=detail&version={version}
2933
2933
  * ```
2934
2934
  *
2935
+ * #### Tokens customizáveis
2936
+ *
2937
+ * > Para maiores informações, acesse o guia [Personalizando o Tema Padrão com Tokens CSS](https://po-ui.io/guides/theme-customization).
2938
+ *
2939
+ * | Propriedade | Descrição | Valor Padrão |
2940
+ * |---------------------|---------------------------------------------|---------------------------------------|
2941
+ * | **Header** | | |
2942
+ * | `--padding` | Espaçamento do header | `var(--spacing-xs) var(--spacing-md)` |
2943
+ * | `--gap` | Espaçamento entre os breadcrumbs e o título | `var(--spacing-md)` |
2944
+ * | `--gap-actions` | Espaçamento entre as ações | `var(--spacing-xs)` |
2945
+ * | `--font-family` | Família tipográfica do título | `var(--font-family-theme)` |
2946
+ * | **Content** | | |
2947
+ * | `--padding-content` | Espaçamento do conteúdo | `var(--spacing-xs) var(--spacing-sm)` |
2948
+ *
2935
2949
  * @example
2936
2950
  *
2937
2951
  * <example name="po-page-dynamic-detail-user" title="PO Page Dynamic Detail User">
@@ -3316,11 +3330,11 @@ class PoPageDynamicDetailComponent {
3316
3330
  return this.poPageCustomizationService.getCustomOptions(onLoad, originalOption, pageOptionSchema);
3317
3331
  }
3318
3332
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageDynamicDetailComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3319
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPageDynamicDetailComponent, isStandalone: false, selector: "po-page-dynamic-detail", inputs: { breadcrumb: ["p-breadcrumb", "breadcrumb"], onLoad: ["p-load", "onLoad"], title: ["p-title", "title"], serviceApi: ["p-service-api", "serviceApi"], actions: ["p-actions", "actions"], autoRouter: ["p-auto-router", "autoRouter"], componentsSize: ["p-components-size", "componentsSize"], fields: ["p-fields", "fields"] }, providers: [PoPageDynamicService, PoPageDynamicDetailActionsService], ngImport: i0, template: "<po-page-default\n [p-actions]=\"pageActions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-components-size]=\"componentsSize\"\n [p-title]=\"title\"\n>\n @if (model) {\n <po-dynamic-view [p-fields]=\"fields\" [p-value]=\"model\"> </po-dynamic-view>\n } @else {\n <po-widget>\n <po-icon p-icon=\"ICON_INFO\"></po-icon>\n <span class=\"po-font-text-large\">\n {{ literals.registerNotFound }}\n </span>\n </po-widget>\n }\n</po-page-default>\n", dependencies: [{ kind: "component", type: i3.PoDynamicViewComponent, selector: "po-dynamic-view" }, { kind: "component", type: i3.PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: i3.PoPageDefaultComponent, selector: "po-page-default" }, { kind: "component", type: i3.PoWidgetComponent, selector: "po-widget" }] });
3333
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPageDynamicDetailComponent, isStandalone: false, selector: "po-page-dynamic-detail", inputs: { breadcrumb: ["p-breadcrumb", "breadcrumb"], onLoad: ["p-load", "onLoad"], title: ["p-title", "title"], serviceApi: ["p-service-api", "serviceApi"], actions: ["p-actions", "actions"], autoRouter: ["p-auto-router", "autoRouter"], componentsSize: ["p-components-size", "componentsSize"], fields: ["p-fields", "fields"] }, providers: [PoPageDynamicService, PoPageDynamicDetailActionsService], ngImport: i0, template: "<po-page-default\n [p-actions]=\"pageActions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-components-size]=\"componentsSize\"\n [p-title]=\"title\"\n>\n @if (model) {\n <po-dynamic-view [p-components-size]=\"componentsSize\" [p-fields]=\"fields\" [p-value]=\"model\"> </po-dynamic-view>\n } @else {\n <po-widget [p-size]=\"componentsSize\">\n <po-icon p-icon=\"ICON_INFO\"></po-icon>\n <span class=\"po-font-text-large\">\n {{ literals.registerNotFound }}\n </span>\n </po-widget>\n }\n</po-page-default>\n", dependencies: [{ kind: "component", type: i3.PoDynamicViewComponent, selector: "po-dynamic-view" }, { kind: "component", type: i3.PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: i3.PoPageDefaultComponent, selector: "po-page-default" }, { kind: "component", type: i3.PoWidgetComponent, selector: "po-widget" }] });
3320
3334
  }
3321
3335
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageDynamicDetailComponent, decorators: [{
3322
3336
  type: Component,
3323
- args: [{ selector: 'po-page-dynamic-detail', providers: [PoPageDynamicService, PoPageDynamicDetailActionsService], standalone: false, template: "<po-page-default\n [p-actions]=\"pageActions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-components-size]=\"componentsSize\"\n [p-title]=\"title\"\n>\n @if (model) {\n <po-dynamic-view [p-fields]=\"fields\" [p-value]=\"model\"> </po-dynamic-view>\n } @else {\n <po-widget>\n <po-icon p-icon=\"ICON_INFO\"></po-icon>\n <span class=\"po-font-text-large\">\n {{ literals.registerNotFound }}\n </span>\n </po-widget>\n }\n</po-page-default>\n" }]
3337
+ args: [{ selector: 'po-page-dynamic-detail', providers: [PoPageDynamicService, PoPageDynamicDetailActionsService], standalone: false, template: "<po-page-default\n [p-actions]=\"pageActions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-components-size]=\"componentsSize\"\n [p-title]=\"title\"\n>\n @if (model) {\n <po-dynamic-view [p-components-size]=\"componentsSize\" [p-fields]=\"fields\" [p-value]=\"model\"> </po-dynamic-view>\n } @else {\n <po-widget [p-size]=\"componentsSize\">\n <po-icon p-icon=\"ICON_INFO\"></po-icon>\n <span class=\"po-font-text-large\">\n {{ literals.registerNotFound }}\n </span>\n </po-widget>\n }\n</po-page-default>\n" }]
3324
3338
  }], ctorParameters: () => [], propDecorators: { breadcrumb: [{
3325
3339
  type: Input,
3326
3340
  args: ['p-breadcrumb']
@@ -3581,6 +3595,18 @@ const poPageDynamicEditLiteralsDefault = {
3581
3595
  * GET {end-point}/metadata?type=edit&version={version}
3582
3596
  * ```
3583
3597
  *
3598
+ * #### Tokens customizáveis
3599
+ *
3600
+ * | Propriedade | Descrição | Valor Padrão |
3601
+ * |---------------------|---------------------------------------------|---------------------------------------|
3602
+ * | **Header** | | |
3603
+ * | `--padding` | Espaçamento do header | `var(--spacing-xs) var(--spacing-md)` |
3604
+ * | `--gap` | Espaçamento entre os breadcrumbs e o título | `var(--spacing-md)` |
3605
+ * | `--gap-actions` | Espaçamento entre as ações | `var(--spacing-xs)` |
3606
+ * | `--font-family` | Família tipográfica do título | `var(--font-family-theme)` |
3607
+ * | **Content** | | |
3608
+ * | `--padding-content` | Espaçamento do conteúdo | `var(--spacing-xs) var(--spacing-sm)` |
3609
+ *
3584
3610
  * @example
3585
3611
  *
3586
3612
  * <example name="po-page-dynamic-edit-basic" title="PO Page Dynamic Edit Basic">
@@ -3914,7 +3940,7 @@ class PoPageDynamicEditComponent {
3914
3940
  this.gridDetail.insertRow();
3915
3941
  }
3916
3942
  /**
3917
- * Método que exibe `additionalHelpTooltip` ou executa a ação definida em `additionalHelp`.
3943
+ * Método que exibe `p-helper` ou executa a ação definida em `p-helper{eventOnClick}` ou em `p-additionalHelp`.
3918
3944
  * Para isso, será necessário configurar uma tecla de atalho utilizando o evento `keydown`.
3919
3945
  *
3920
3946
  * ```
@@ -3927,7 +3953,7 @@ class PoPageDynamicEditComponent {
3927
3953
  * property: 'name',
3928
3954
  * ...
3929
3955
  * help: 'Mensagem de ajuda.',
3930
- * additionalHelpTooltip: 'Mensagem de ajuda complementar.',
3956
+ * helper: 'Mensagem de ajuda complementar com o componente po-helper implementado.',
3931
3957
  * keydown: this.onKeyDown.bind(this, 'name')
3932
3958
  * },
3933
3959
  * ]
@@ -4265,11 +4291,11 @@ class PoPageDynamicEditComponent {
4265
4291
  return !!value && typeof value === 'object' && !Array.isArray(value);
4266
4292
  }
4267
4293
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageDynamicEditComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4268
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPageDynamicEditComponent, isStandalone: false, selector: "po-page-dynamic-edit", inputs: { breadcrumb: ["p-breadcrumb", "breadcrumb"], serviceApi: ["p-service-api", "serviceApi"], title: ["p-title", "title"], onLoad: ["p-load", "onLoad"], onLoadData: ["p-load-data", "onLoadData"], actions: ["p-actions", "actions"], literals: ["p-literals", "literals"], notificationType: ["p-notification-type", "notificationType"], autoRouter: ["p-auto-router", "autoRouter"], fields: ["p-fields", "fields"], componentsSize: ["p-components-size", "componentsSize"] }, providers: [PoPageDynamicService], viewQueries: [{ propertyName: "dynamicForm", first: true, predicate: ["dynamicForm"], descendants: true }, { propertyName: "gridDetail", first: true, predicate: ["gridDetail"], descendants: true }], ngImport: i0, template: "<po-page-default\n [p-actions]=\"pageActions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-components-size]=\"componentsSize\"\n [p-title]=\"title\"\n>\n @if (model) {\n <po-dynamic-form #dynamicForm [p-components-size]=\"componentsSize\" [p-fields]=\"controlFields\" [p-value]=\"model\">\n </po-dynamic-form>\n @if (detailFields.length > 0) {\n <div class=\"po-sm-12\">\n <po-divider [p-label]=\"detailFields[0].divider\"></po-divider>\n <div class=\"po-row po-mb-2\">\n <po-button\n [p-size]=\"componentsSize\"\n [p-label]=\"literals.detailActionNew\"\n (p-click)=\"detailActionNew()\"\n ></po-button>\n </div>\n <po-grid\n #gridDetail\n [p-row-actions]=\"detailActions\"\n [p-columns]=\"detailFields[0].detail.columns\"\n [p-data]=\"model[detailFields[0].property]\"\n >\n </po-grid>\n </div>\n }\n } @else {\n <po-widget>\n <po-icon p-icon=\"ICON_INFO\"></po-icon>\n <span class=\"po-font-text-large\">\n {{ literals.registerNotFound }}\n </span>\n </po-widget>\n }\n</po-page-default>\n", dependencies: [{ kind: "component", type: i3.PoButtonComponent, selector: "po-button" }, { kind: "component", type: i3.PoDividerComponent, selector: "po-divider" }, { kind: "component", type: i3.PoDynamicFormComponent, selector: "po-dynamic-form" }, { kind: "component", type: i3.PoGridComponent, selector: "po-grid", inputs: ["p-row-actions", "p-data", "p-columns"] }, { kind: "component", type: i3.PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: i3.PoPageDefaultComponent, selector: "po-page-default" }, { kind: "component", type: i3.PoWidgetComponent, selector: "po-widget" }] });
4294
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPageDynamicEditComponent, isStandalone: false, selector: "po-page-dynamic-edit", inputs: { breadcrumb: ["p-breadcrumb", "breadcrumb"], serviceApi: ["p-service-api", "serviceApi"], title: ["p-title", "title"], onLoad: ["p-load", "onLoad"], onLoadData: ["p-load-data", "onLoadData"], actions: ["p-actions", "actions"], literals: ["p-literals", "literals"], notificationType: ["p-notification-type", "notificationType"], autoRouter: ["p-auto-router", "autoRouter"], fields: ["p-fields", "fields"], componentsSize: ["p-components-size", "componentsSize"] }, providers: [PoPageDynamicService], viewQueries: [{ propertyName: "dynamicForm", first: true, predicate: ["dynamicForm"], descendants: true }, { propertyName: "gridDetail", first: true, predicate: ["gridDetail"], descendants: true }], ngImport: i0, template: "<po-page-default\n [p-actions]=\"pageActions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-components-size]=\"componentsSize\"\n [p-title]=\"title\"\n>\n @if (model) {\n <po-dynamic-form #dynamicForm [p-components-size]=\"componentsSize\" [p-fields]=\"controlFields\" [p-value]=\"model\">\n </po-dynamic-form>\n @if (detailFields.length > 0) {\n <div class=\"po-sm-12\">\n <po-divider [p-label]=\"detailFields[0].divider\"></po-divider>\n <div class=\"po-row po-mb-2\">\n <po-button\n [p-size]=\"componentsSize\"\n [p-label]=\"literals.detailActionNew\"\n (p-click)=\"detailActionNew()\"\n ></po-button>\n </div>\n <po-grid\n #gridDetail\n [p-row-actions]=\"detailActions\"\n [p-columns]=\"detailFields[0].detail.columns\"\n [p-data]=\"model[detailFields[0].property]\"\n >\n </po-grid>\n </div>\n }\n } @else {\n <po-widget [p-size]=\"componentsSize\">\n <po-icon p-icon=\"ICON_INFO\"></po-icon>\n <span class=\"po-font-text-large\">\n {{ literals.registerNotFound }}\n </span>\n </po-widget>\n }\n</po-page-default>\n", dependencies: [{ kind: "component", type: i3.PoButtonComponent, selector: "po-button" }, { kind: "component", type: i3.PoDividerComponent, selector: "po-divider" }, { kind: "component", type: i3.PoDynamicFormComponent, selector: "po-dynamic-form" }, { kind: "component", type: i3.PoGridComponent, selector: "po-grid", inputs: ["p-row-actions", "p-data", "p-columns"] }, { kind: "component", type: i3.PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: i3.PoPageDefaultComponent, selector: "po-page-default" }, { kind: "component", type: i3.PoWidgetComponent, selector: "po-widget" }] });
4269
4295
  }
4270
4296
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageDynamicEditComponent, decorators: [{
4271
4297
  type: Component,
4272
- args: [{ selector: 'po-page-dynamic-edit', providers: [PoPageDynamicService], standalone: false, template: "<po-page-default\n [p-actions]=\"pageActions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-components-size]=\"componentsSize\"\n [p-title]=\"title\"\n>\n @if (model) {\n <po-dynamic-form #dynamicForm [p-components-size]=\"componentsSize\" [p-fields]=\"controlFields\" [p-value]=\"model\">\n </po-dynamic-form>\n @if (detailFields.length > 0) {\n <div class=\"po-sm-12\">\n <po-divider [p-label]=\"detailFields[0].divider\"></po-divider>\n <div class=\"po-row po-mb-2\">\n <po-button\n [p-size]=\"componentsSize\"\n [p-label]=\"literals.detailActionNew\"\n (p-click)=\"detailActionNew()\"\n ></po-button>\n </div>\n <po-grid\n #gridDetail\n [p-row-actions]=\"detailActions\"\n [p-columns]=\"detailFields[0].detail.columns\"\n [p-data]=\"model[detailFields[0].property]\"\n >\n </po-grid>\n </div>\n }\n } @else {\n <po-widget>\n <po-icon p-icon=\"ICON_INFO\"></po-icon>\n <span class=\"po-font-text-large\">\n {{ literals.registerNotFound }}\n </span>\n </po-widget>\n }\n</po-page-default>\n" }]
4298
+ args: [{ selector: 'po-page-dynamic-edit', providers: [PoPageDynamicService], standalone: false, template: "<po-page-default\n [p-actions]=\"pageActions\"\n [p-breadcrumb]=\"breadcrumb\"\n [p-components-size]=\"componentsSize\"\n [p-title]=\"title\"\n>\n @if (model) {\n <po-dynamic-form #dynamicForm [p-components-size]=\"componentsSize\" [p-fields]=\"controlFields\" [p-value]=\"model\">\n </po-dynamic-form>\n @if (detailFields.length > 0) {\n <div class=\"po-sm-12\">\n <po-divider [p-label]=\"detailFields[0].divider\"></po-divider>\n <div class=\"po-row po-mb-2\">\n <po-button\n [p-size]=\"componentsSize\"\n [p-label]=\"literals.detailActionNew\"\n (p-click)=\"detailActionNew()\"\n ></po-button>\n </div>\n <po-grid\n #gridDetail\n [p-row-actions]=\"detailActions\"\n [p-columns]=\"detailFields[0].detail.columns\"\n [p-data]=\"model[detailFields[0].property]\"\n >\n </po-grid>\n </div>\n }\n } @else {\n <po-widget [p-size]=\"componentsSize\">\n <po-icon p-icon=\"ICON_INFO\"></po-icon>\n <span class=\"po-font-text-large\">\n {{ literals.registerNotFound }}\n </span>\n </po-widget>\n }\n</po-page-default>\n" }]
4273
4299
  }], ctorParameters: () => [], propDecorators: { dynamicForm: [{
4274
4300
  type: ViewChild,
4275
4301
  args: ['dynamicForm']
@@ -4623,6 +4649,20 @@ const poPageDynamicSearchLiteralsDefault = {
4623
4649
  *
4624
4650
  * Componente com as ações de pesquisa já definidas, bastando que o desenvolvedor implemente apenas a chamada para as APIs
4625
4651
  * e exiba as informações.
4652
+ *
4653
+ * #### Tokens customizáveis
4654
+ *
4655
+ * > Para maiores informações, acesse o guia [Personalizando o Tema Padrão com Tokens CSS](https://po-ui.io/guides/theme-customization).
4656
+ *
4657
+ * | Propriedade | Descrição | Valor Padrão |
4658
+ * |---------------------|---------------------------------------------|---------------------------------------|
4659
+ * | **Header** | | |
4660
+ * | `--padding` | Espaçamento do header | `var(--spacing-xs) var(--spacing-md)` |
4661
+ * | `--gap` | Espaçamento entre os breadcrumbs e o título | `var(--spacing-md)` |
4662
+ * | `--gap-actions` | Espaçamento entre as ações | `var(--spacing-xs)` |
4663
+ * | `--font-family` | Família tipográfica do título | `var(--font-family-theme)` |
4664
+ * | **Content** | | |
4665
+ * | `--padding-content` | Espaçamento do conteúdo | `var(--spacing-xs) var(--spacing-sm)` |
4626
4666
  */
4627
4667
  class PoPageDynamicSearchBaseComponent {
4628
4668
  /** Nesta propriedade deve ser definido um array de objetos que implementam a interface `PoPageAction`. */
@@ -5800,6 +5840,20 @@ const PAGE_SIZE_DEFAULT = 10;
5800
5840
  * GET {end-point}/metadata?type=list&version={version}
5801
5841
  * ```
5802
5842
  *
5843
+ * #### Tokens customizáveis
5844
+ *
5845
+ * > Para maiores informações, acesse o guia [Personalizando o Tema Padrão com Tokens CSS](https://po-ui.io/guides/theme-customization).
5846
+ *
5847
+ * | Propriedade | Descrição | Valor Padrão |
5848
+ * |---------------------|---------------------------------------------|---------------------------------------|
5849
+ * | **Header** | | |
5850
+ * | `--padding` | Espaçamento do header | `var(--spacing-xs) var(--spacing-md)` |
5851
+ * | `--gap` | Espaçamento entre os breadcrumbs e o título | `var(--spacing-md)` |
5852
+ * | `--gap-actions` | Espaçamento entre as ações | `var(--spacing-xs)` |
5853
+ * | `--font-family` | Família tipográfica do título | `var(--font-family-theme)` |
5854
+ * | **Content** | | |
5855
+ * | `--padding-content` | Espaçamento do conteúdo | `var(--spacing-xs) var(--spacing-sm)` |
5856
+ *
5803
5857
  * @example
5804
5858
  *
5805
5859
  * <example name="po-page-dynamic-table-basic" title="PO Page Dynamic Table Basic">
@@ -7253,6 +7307,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
7253
7307
  * sem a necessidade de criar componentes e tratamentos dos dados.
7254
7308
  *
7255
7309
  * Veja mais sobre os padrões utilizados nas requisições no [Guia de implementação de APIs](guides/api).
7310
+ *
7311
+ * #### Tokens customizáveis
7312
+ *
7313
+ * > Para maiores informações, acesse o guia [Personalizando o Tema Padrão com Tokens CSS](https://po-ui.io/guides/theme-customization).
7314
+ *
7315
+ * | Propriedade | Descrição | Valor Padrão |
7316
+ * |---------------------|---------------------------------------------|---------------------------------------|
7317
+ * | **Header** | | |
7318
+ * | `--padding` | Espaçamento do header | `var(--spacing-xs) var(--spacing-md)` |
7319
+ * | `--gap` | Espaçamento entre os breadcrumbs e o título | `var(--spacing-md)` |
7320
+ * | `--gap-actions` | Espaçamento entre as ações | `var(--spacing-xs)` |
7321
+ * | `--font-family` | Família tipográfica do título | `var(--font-family-theme)` |
7322
+ * | **Content** | | |
7323
+ * | `--padding-content` | Espaçamento do conteúdo | `var(--spacing-xs) var(--spacing-sm)` |
7256
7324
  */
7257
7325
  class PoPageJobSchedulerBaseComponent {
7258
7326
  poPageJobSchedulerService;
@@ -8235,11 +8303,11 @@ class PoPageJobSchedulerSummaryComponent {
8235
8303
  });
8236
8304
  }
8237
8305
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageJobSchedulerSummaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8238
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPageJobSchedulerSummaryComponent, isStandalone: false, selector: "po-page-job-scheduler-summary", inputs: { componentsSize: ["p-components-size", "componentsSize"], literals: ["p-literals", "literals"], parameters: ["p-parameters", "parameters"], value: ["p-value", "value"], noParameters: ["p-no-parameters", "noParameters"], jobSchedulerSummaryTemplate: ["p-summary-template", "jobSchedulerSummaryTemplate"] }, ngImport: i0, template: "<div class=\"po-md-12\">\n @if (!noParameters) {\n <po-info [p-label]=\"literals.process\" [p-orientation]=\"infoOrientation\" [p-value]=\"value.processID\"> </po-info>\n }\n\n <po-info [p-label]=\"literals.periodicity\" [p-orientation]=\"infoOrientation\" [p-value]=\"periodicityValue\"> </po-info>\n\n @if (frequencyValue !== '') {\n <po-info [p-label]=\"literals.frequency\" [p-orientation]=\"infoOrientation\" [p-value]=\"frequencyValue\"> </po-info>\n }\n\n @if (value.periodicity !== 'single') {\n <po-info [p-label]=\"literals.execution\" [p-orientation]=\"infoOrientation\" [p-value]=\"executionValue\"> </po-info>\n }\n\n <po-info [p-label]=\"literals.recurrent\" [p-orientation]=\"infoOrientation\" [p-value]=\"recurrentValue\"> </po-info>\n\n <po-info [p-label]=\"literals.firstExecution\" [p-orientation]=\"infoOrientation\" [p-value]=\"firstExecutionValue\">\n </po-info>\n</div>\n@if (parameters && parameters.length && !jobSchedulerSummaryTemplate) {\n <po-widget class=\"po-pt-1 po-pb-1 po-md-12\" [p-title]=\"literals.parameters\">\n <po-dynamic-view [p-fields]=\"parameters\" [p-value]=\"value.executionParameter\"> </po-dynamic-view>\n </po-widget>\n}\n@if (jobSchedulerSummaryTemplate) {\n <div class=\"po-pt-1 po-pb-1 po-md-12\">\n <ng-template [ngTemplateOutlet]=\"jobSchedulerSummaryTemplate?.templateRef\"></ng-template>\n </div>\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.PoDynamicViewComponent, selector: "po-dynamic-view" }, { kind: "component", type: i3.PoInfoComponent, selector: "po-info" }, { kind: "component", type: i3.PoWidgetComponent, selector: "po-widget" }] });
8306
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPageJobSchedulerSummaryComponent, isStandalone: false, selector: "po-page-job-scheduler-summary", inputs: { componentsSize: ["p-components-size", "componentsSize"], literals: ["p-literals", "literals"], parameters: ["p-parameters", "parameters"], value: ["p-value", "value"], noParameters: ["p-no-parameters", "noParameters"], jobSchedulerSummaryTemplate: ["p-summary-template", "jobSchedulerSummaryTemplate"] }, ngImport: i0, template: "<div class=\"po-md-12\">\n @if (!noParameters) {\n <po-info\n [p-label]=\"literals.process\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"value.processID\"\n >\n </po-info>\n }\n\n <po-info\n [p-label]=\"literals.periodicity\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"periodicityValue\"\n >\n </po-info>\n\n @if (frequencyValue !== '') {\n <po-info\n [p-label]=\"literals.frequency\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"frequencyValue\"\n >\n </po-info>\n }\n\n @if (value.periodicity !== 'single') {\n <po-info\n [p-label]=\"literals.execution\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"executionValue\"\n >\n </po-info>\n }\n\n <po-info\n [p-label]=\"literals.recurrent\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"recurrentValue\"\n >\n </po-info>\n\n <po-info\n [p-label]=\"literals.firstExecution\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"firstExecutionValue\"\n >\n </po-info>\n</div>\n@if (parameters && parameters.length && !jobSchedulerSummaryTemplate) {\n <po-widget class=\"po-pt-1 po-pb-1 po-md-12\" [p-size]=\"componentsSize\" [p-title]=\"literals.parameters\">\n <po-dynamic-view [p-components-size]=\"componentsSize\" [p-fields]=\"parameters\" [p-value]=\"value.executionParameter\">\n </po-dynamic-view>\n </po-widget>\n}\n@if (jobSchedulerSummaryTemplate) {\n <div class=\"po-pt-1 po-pb-1 po-md-12\">\n <ng-template [ngTemplateOutlet]=\"jobSchedulerSummaryTemplate?.templateRef\"></ng-template>\n </div>\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.PoDynamicViewComponent, selector: "po-dynamic-view" }, { kind: "component", type: i3.PoInfoComponent, selector: "po-info" }, { kind: "component", type: i3.PoWidgetComponent, selector: "po-widget" }] });
8239
8307
  }
8240
8308
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageJobSchedulerSummaryComponent, decorators: [{
8241
8309
  type: Component,
8242
- args: [{ selector: 'po-page-job-scheduler-summary', standalone: false, template: "<div class=\"po-md-12\">\n @if (!noParameters) {\n <po-info [p-label]=\"literals.process\" [p-orientation]=\"infoOrientation\" [p-value]=\"value.processID\"> </po-info>\n }\n\n <po-info [p-label]=\"literals.periodicity\" [p-orientation]=\"infoOrientation\" [p-value]=\"periodicityValue\"> </po-info>\n\n @if (frequencyValue !== '') {\n <po-info [p-label]=\"literals.frequency\" [p-orientation]=\"infoOrientation\" [p-value]=\"frequencyValue\"> </po-info>\n }\n\n @if (value.periodicity !== 'single') {\n <po-info [p-label]=\"literals.execution\" [p-orientation]=\"infoOrientation\" [p-value]=\"executionValue\"> </po-info>\n }\n\n <po-info [p-label]=\"literals.recurrent\" [p-orientation]=\"infoOrientation\" [p-value]=\"recurrentValue\"> </po-info>\n\n <po-info [p-label]=\"literals.firstExecution\" [p-orientation]=\"infoOrientation\" [p-value]=\"firstExecutionValue\">\n </po-info>\n</div>\n@if (parameters && parameters.length && !jobSchedulerSummaryTemplate) {\n <po-widget class=\"po-pt-1 po-pb-1 po-md-12\" [p-title]=\"literals.parameters\">\n <po-dynamic-view [p-fields]=\"parameters\" [p-value]=\"value.executionParameter\"> </po-dynamic-view>\n </po-widget>\n}\n@if (jobSchedulerSummaryTemplate) {\n <div class=\"po-pt-1 po-pb-1 po-md-12\">\n <ng-template [ngTemplateOutlet]=\"jobSchedulerSummaryTemplate?.templateRef\"></ng-template>\n </div>\n}\n" }]
8310
+ args: [{ selector: 'po-page-job-scheduler-summary', standalone: false, template: "<div class=\"po-md-12\">\n @if (!noParameters) {\n <po-info\n [p-label]=\"literals.process\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"value.processID\"\n >\n </po-info>\n }\n\n <po-info\n [p-label]=\"literals.periodicity\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"periodicityValue\"\n >\n </po-info>\n\n @if (frequencyValue !== '') {\n <po-info\n [p-label]=\"literals.frequency\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"frequencyValue\"\n >\n </po-info>\n }\n\n @if (value.periodicity !== 'single') {\n <po-info\n [p-label]=\"literals.execution\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"executionValue\"\n >\n </po-info>\n }\n\n <po-info\n [p-label]=\"literals.recurrent\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"recurrentValue\"\n >\n </po-info>\n\n <po-info\n [p-label]=\"literals.firstExecution\"\n [p-orientation]=\"infoOrientation\"\n [p-size]=\"componentsSize\"\n [p-value]=\"firstExecutionValue\"\n >\n </po-info>\n</div>\n@if (parameters && parameters.length && !jobSchedulerSummaryTemplate) {\n <po-widget class=\"po-pt-1 po-pb-1 po-md-12\" [p-size]=\"componentsSize\" [p-title]=\"literals.parameters\">\n <po-dynamic-view [p-components-size]=\"componentsSize\" [p-fields]=\"parameters\" [p-value]=\"value.executionParameter\">\n </po-dynamic-view>\n </po-widget>\n}\n@if (jobSchedulerSummaryTemplate) {\n <div class=\"po-pt-1 po-pb-1 po-md-12\">\n <ng-template [ngTemplateOutlet]=\"jobSchedulerSummaryTemplate?.templateRef\"></ng-template>\n </div>\n}\n" }]
8243
8311
  }], propDecorators: { componentsSize: [{
8244
8312
  type: Input,
8245
8313
  args: ['p-components-size']
@@ -9711,7 +9779,7 @@ class PoPageLoginBaseComponent {
9711
9779
  }
9712
9780
  }
9713
9781
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageLoginBaseComponent, deps: [{ token: PoPageLoginService }, { token: i2$1.Router }, { token: i3.PoLanguageService }], target: i0.ɵɵFactoryTarget.Directive });
9714
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.7", type: PoPageLoginBaseComponent, isStandalone: true, inputs: { background: ["p-background", "background"], logo: ["p-logo", "logo"], loginPattern: ["p-login-pattern", "loginPattern"], passwordPattern: ["p-password-pattern", "passwordPattern"], secondaryLogo: ["p-secondary-logo", "secondaryLogo"], noAutocompleteLogin: ["p-no-autocomplete-login", "noAutocompleteLogin"], noAutocompletePassword: ["p-no-autocomplete-password", "noAutocompletePassword"], hideLabelStatus: ["p-hide-label-status", "hideLabelStatus", convertToBoolean], hidePasswordPeek: ["p-hide-password-peek", "hidePasswordPeek"], componentsSize: ["p-components-size", "componentsSize"], customField: ["p-custom-field", "customField"], contactEmail: ["p-contact-email", "contactEmail"], productName: ["p-product-name", "productName"], environment: ["p-environment", "environment"], exceededAttemptsWarning: ["p-exceeded-attempts-warning", "exceededAttemptsWarning"], hideRememberUser: ["p-hide-remember-user", "hideRememberUser"], literals: ["p-literals", "literals"], loading: ["p-loading", "loading"], login: ["p-login", "login"], loginErrors: ["p-login-errors", "loginErrors"], passwordErrors: ["p-password-errors", "passwordErrors"], recovery: ["p-recovery", "recovery"], registerUrl: ["p-register-url", "registerUrl"], authenticationType: ["p-authentication-type", "authenticationType"], authenticationUrl: ["p-authentication-url", "authenticationUrl"], blockedUrl: ["p-blocked-url", "blockedUrl"], support: ["p-support", "support"], languagesList: ["p-languages", "languagesList"] }, outputs: { loginChange: "p-login-change", loginSubmit: "p-login-submit", passwordChange: "p-password-change", languageChange: "p-language-change" }, ngImport: i0 });
9782
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.7", type: PoPageLoginBaseComponent, isStandalone: true, inputs: { background: ["p-background", "background"], logo: ["p-logo", "logo"], loginPattern: ["p-login-pattern", "loginPattern"], passwordPattern: ["p-password-pattern", "passwordPattern"], secondaryLogo: ["p-secondary-logo", "secondaryLogo"], noAutocompleteLogin: ["p-no-autocomplete-login", "noAutocompleteLogin"], noAutocompletePassword: ["p-no-autocomplete-password", "noAutocompletePassword"], hideLabelStatus: ["p-hide-label-status", "hideLabelStatus", convertToBoolean], hidePasswordPeek: ["p-hide-password-peek", "hidePasswordPeek"], componentsSize: ["p-components-size", "componentsSize"], customField: ["p-custom-field", "customField"], contactEmail: ["p-contact-email", "contactEmail"], productName: ["p-product-name", "productName"], environment: ["p-environment", "environment"], exceededAttemptsWarning: ["p-exceeded-attempts-warning", "exceededAttemptsWarning"], hideRememberUser: ["p-hide-remember-user", "hideRememberUser"], literals: ["p-literals", "literals"], loading: ["p-loading", "loading"], login: ["p-login", "login"], loginErrors: ["p-login-errors", "loginErrors"], passwordErrors: ["p-password-errors", "passwordErrors"], recovery: ["p-recovery", "recovery"], registerUrl: ["p-register-url", "registerUrl"], authenticationType: ["p-authentication-type", "authenticationType"], authenticationUrl: ["p-authentication-url", "authenticationUrl"], blockedUrl: ["p-blocked-url", "blockedUrl"], support: ["p-support", "support"], languagesList: ["p-languages", "languagesList"] }, outputs: { loginChange: "p-login-change", loginSubmit: "p-login-submit", passwordChange: "p-password-change", languageChange: "p-language-change" }, host: { properties: { "attr.p-components-size": "this.componentsSize" } }, ngImport: i0 });
9715
9783
  }
9716
9784
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageLoginBaseComponent, decorators: [{
9717
9785
  type: Directive
@@ -9755,6 +9823,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
9755
9823
  type: Input,
9756
9824
  args: ['p-hide-password-peek']
9757
9825
  }], componentsSize: [{
9826
+ type: HostBinding,
9827
+ args: ['attr.p-components-size']
9828
+ }, {
9758
9829
  type: Input,
9759
9830
  args: ['p-components-size']
9760
9831
  }], customField: [{
@@ -10069,11 +10140,11 @@ class PoPageLoginComponent extends PoPageLoginBaseComponent {
10069
10140
  return language?.language || this.languagesList[0].language;
10070
10141
  }
10071
10142
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10072
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPageLoginComponent, isStandalone: false, selector: "po-page-login", viewQueries: [{ propertyName: "loginForm", first: true, predicate: ["loginForm"], descendants: true, read: NgForm, static: true }, { propertyName: "pageLogin", first: true, predicate: ["pageLogin"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "<button class=\"po-page-login-support\" (click)=\"activateSupport()\" [hidden]=\"!support\">\n <po-icon p-icon=\"ICON_HELP\"></po-icon>\n {{ pageLoginLiterals?.support }}\n</button>\n\n<po-page-background\n #pageLogin\n [p-components-size]=\"componentsSize\"\n [p-show-select-language]=\"showLanguage\"\n [p-languages]=\"languagesList\"\n [p-initial-language]=\"initialSelectLanguage\"\n [p-background]=\"background\"\n [p-highlight-info]=\"pageLoginLiterals.highlightInfo\"\n [p-logo]=\"logo\"\n [p-secondary-logo]=\"secondaryLogo\"\n (p-selected-language)=\"onSelectedLanguage($event)\"\n>\n <header class=\"po-page-login-header\">\n <div class=\"po-page-login-header-product-name\">\n <h1>{{ productName }}</h1>\n </div>\n\n <div class=\"po-page-login-header-product-environment po-mb-md-4 po-mb-sm-1\">\n @if (environment) {\n <po-tag p-type=\"warning\" [p-value]=\"environment\"> </po-tag>\n }\n </div>\n <div class=\"po-page-login-header-welcome po-mb-md-4 po-mb-sm-2\">{{ pageLoginLiterals.welcome }}</div>\n </header>\n\n <form #loginForm=\"ngForm\" class=\"po-page-login-form\">\n <div class=\"po-row\">\n <div class=\"po-lg-12\">\n <div class=\"po-page-login-hint po-page-login-info-container\">\n <po-login\n class=\"po-page-login-info-field\"\n [class.po-page-login-info-field-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n name=\"login\"\n [(ngModel)]=\"login\"\n p-auto-focus\n p-required\n [p-label]=\"pageLoginLiterals.loginLabel\"\n [p-no-autocomplete]=\"noAutocompleteLogin\"\n [p-pattern]=\"loginPattern\"\n [p-placeholder]=\"pageLoginLiterals.loginPlaceholder\"\n [p-size]=\"componentsSize\"\n (click)=\"closePopover()\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n (p-change-model)=\"changeLoginModel()\"\n >\n </po-login>\n\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div\n class=\"po-page-login-info-icon-container\"\n [class.po-page-login-info-icon-container-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n >\n @if (pageLoginLiterals.loginHint) {\n <po-icon\n p-icon=\"ICON_INFO po-field-icon\"\n p-tooltip-position=\"right\"\n [p-tooltip]=\"pageLoginLiterals.loginHint\"\n >\n </po-icon>\n }\n </div>\n }\n </div>\n\n <div class=\"po-field-container-bottom po-field-container-error-container\">\n @for (error of allLoginErrors; track error) {\n <div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-container-error-text\">{{ error }}</span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"po-lg-12\">\n <div class=\"po-page-login-password-container\">\n <po-password\n class=\"po-page-login-field-size po-page-login-password-item\"\n [class.po-page-login-field-size-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n name=\"password\"\n [(ngModel)]=\"password\"\n p-required\n [p-hide-password-peek]=\"hidePasswordPeek\"\n [p-label]=\"pageLoginLiterals.passwordLabel\"\n [p-no-autocomplete]=\"noAutocompletePassword\"\n [p-pattern]=\"passwordPattern\"\n [p-placeholder]=\"pageLoginLiterals.passwordPlaceholder\"\n [p-size]=\"componentsSize\"\n (click)=\"closePopover()\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n (p-change-model)=\"changePasswordModel()\"\n >\n </po-password>\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div class=\"po-page-login-password-item po-page-login-password-popover-container\">\n @if (showExceededAttemptsWarning && exceededAttemptsWarning) {\n <po-page-login-popover\n [p-literals]=\"pageLoginLiterals\"\n [p-recovery]=\"recovery\"\n [p-remaining-attempts]=\"exceededAttemptsWarning\"\n (p-forgot-password)=\"openUrl($event)\"\n >\n </po-page-login-popover>\n }\n </div>\n }\n </div>\n <div class=\"po-field-container-bottom po-field-container-error-container\">\n @for (error of allPasswordErrors; track error) {\n <div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-container-error-text\">{{ error }}</span>\n </div>\n }\n </div>\n </div>\n\n @if (customField && customFieldType === 'input') {\n <po-input\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldInput\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-error-pattern]=\"customFieldObject.errorPattern || pageLoginLiterals.customFieldErrorPattern\"\n [p-pattern]=\"customFieldObject.pattern\"\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-size]=\"componentsSize\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n >\n </po-input>\n }\n\n @if (customField && customFieldType === 'combo') {\n <po-combo\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldCombo\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-field-value]=\"customFieldObject.fieldValue\"\n [p-filter-service]=\"customFieldObject.url\"\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-size]=\"componentsSize\"\n >\n </po-combo>\n }\n\n @if (customField && customFieldType === 'select') {\n <po-select\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldSelect\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-options]=\"customFieldObject.options\"\n [p-size]=\"componentsSize\"\n >\n </po-select>\n }\n\n <div class=\"po-lg-12\">\n @if (!hideRememberUser) {\n <div class=\"po-page-login-hint po-page-login-info-container\">\n <po-switch\n class=\"po-page-login-info-field po-lg-7 po-offset-lg-5 po-offset-xl-5\"\n name=\"rememberUser\"\n [(ngModel)]=\"rememberUser\"\n p-label-position=\"1\"\n [p-label-off]=\"pageLoginLiterals.rememberUser\"\n [p-label-on]=\"pageLoginLiterals.rememberUser\"\n [p-size]=\"componentsSize\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n [p-hide-label-status]=\"hideLabelStatus\"\n >\n </po-switch>\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div\n class=\"po-page-login-info-icon-container po-page-login-info-icon-remember-user\"\n [class.po-page-login-info-icon-container-dynamic]=\"!pageLoginLiterals.rememberUserHint\"\n >\n @if (pageLoginLiterals.rememberUserHint) {\n <po-icon\n p-icon=\"ICON_INFO po-field-icon\"\n p-tooltip-position=\"right\"\n [p-tooltip]=\"pageLoginLiterals.rememberUserHint\"\n >\n </po-icon>\n }\n </div>\n }\n </div>\n }\n </div>\n\n <po-button\n [class.po-page-login-button-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-lg-12 po-page-login-button po-page-login-field-size\"\n p-kind=\"primary\"\n [p-disabled]=\"loginForm.invalid\"\n [p-label]=\"loading ? pageLoginLiterals.submittedLabel : pageLoginLiterals.submitLabel\"\n [p-loading]=\"loading\"\n [p-size]=\"componentsSize\"\n (p-click)=\"onLoginSubmit()\"\n >\n </po-button>\n\n @if (recovery) {\n <div class=\"po-page-login-recovery-link\">\n <a class=\"po-font-text-large-bold\" (click)=\"openUrl(recovery)\">{{ pageLoginLiterals.forgotPassword }}</a>\n </div>\n }\n\n @if (registerUrl) {\n <div class=\"po-page-login-register-link\">\n <a class=\"po-font-text-large-bold\" (click)=\"openUrl(registerUrl)\">{{ pageLoginLiterals.registerUrl }}</a>\n </div>\n }\n </div>\n </form>\n</po-page-background>\n", dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: PoPageBackgroundComponent, selector: "po-page-background", inputs: ["p-background", "p-initial-language", "p-hide-logo", "p-highlight-info", "p-components-size", "p-languages", "p-logo", "p-logo-alt", "p-secondary-logo", "p-show-select-language"], outputs: ["p-selected-language"] }, { kind: "component", type: i3.PoButtonComponent, selector: "po-button" }, { kind: "component", type: i3.PoComboComponent, selector: "po-combo" }, { kind: "component", type: i3.PoInputComponent, selector: "po-input" }, { kind: "component", type: i3.PoLoginComponent, selector: "po-login", inputs: ["p-no-autocomplete"] }, { kind: "component", type: i3.PoPasswordComponent, selector: "po-password", inputs: ["p-hide-password-peek", "p-no-autocomplete"] }, { kind: "component", type: i3.PoSelectComponent, selector: "po-select", inputs: ["p-readonly", "p-placeholder", "p-options", "p-field-label", "p-field-value", "p-control-value-with-label", "p-size", "p-helper", "p-label-text-wrap"], outputs: ["p-blur", "ngModelChange"] }, { kind: "component", type: i3.PoSwitchComponent, selector: "po-switch", inputs: ["p-value", "p-format-model", "p-hide-label-status", "p-label-position", "p-label-off", "p-label-on", "p-field-error-message", "p-error-limit", "p-invalid-value", "p-size", "p-helper", "p-label-text-wrap"] }, { kind: "component", type: i3.PoTagComponent, selector: "po-tag" }, { kind: "component", type: i3.PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "directive", type: i3.PoTooltipDirective, selector: "[p-tooltip]" }, { kind: "component", type: PoPageLoginPopoverComponent, selector: "po-page-login-popover", inputs: ["p-literals", "p-recovery", "p-remaining-attempts"], outputs: ["p-forgot-password"] }] });
10143
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPageLoginComponent, isStandalone: false, selector: "po-page-login", viewQueries: [{ propertyName: "loginForm", first: true, predicate: ["loginForm"], descendants: true, read: NgForm, static: true }, { propertyName: "pageLogin", first: true, predicate: ["pageLogin"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: "<button class=\"po-page-login-support\" (click)=\"activateSupport()\" [hidden]=\"!support\">\n <po-icon p-icon=\"ICON_HELP\"></po-icon>\n {{ pageLoginLiterals?.support }}\n</button>\n\n<po-page-background\n #pageLogin\n [p-components-size]=\"componentsSize\"\n [p-show-select-language]=\"showLanguage\"\n [p-languages]=\"languagesList\"\n [p-initial-language]=\"initialSelectLanguage\"\n [p-background]=\"background\"\n [p-highlight-info]=\"pageLoginLiterals.highlightInfo\"\n [p-logo]=\"logo\"\n [p-secondary-logo]=\"secondaryLogo\"\n (p-selected-language)=\"onSelectedLanguage($event)\"\n>\n <header class=\"po-page-login-header\">\n <div class=\"po-page-login-header-product-name\">\n <h1>{{ productName }}</h1>\n </div>\n\n <div class=\"po-page-login-header-product-environment po-mb-md-4 po-mb-sm-1\">\n @if (environment) {\n <po-tag p-type=\"warning\" [p-value]=\"environment\"> </po-tag>\n }\n </div>\n <div class=\"po-page-login-header-welcome po-mb-md-4 po-mb-sm-2\">{{ pageLoginLiterals.welcome }}</div>\n </header>\n\n <form #loginForm=\"ngForm\" class=\"po-page-login-form\">\n <div class=\"po-row\">\n <div class=\"po-lg-12\">\n <div class=\"po-page-login-hint po-page-login-info-container\">\n <po-login\n class=\"po-page-login-info-field\"\n [class.po-page-login-info-field-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n name=\"login\"\n [(ngModel)]=\"login\"\n p-auto-focus\n p-required\n [p-label]=\"pageLoginLiterals.loginLabel\"\n [p-no-autocomplete]=\"noAutocompleteLogin\"\n [p-pattern]=\"loginPattern\"\n [p-placeholder]=\"pageLoginLiterals.loginPlaceholder\"\n [p-size]=\"componentsSize\"\n (click)=\"closePopover()\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n (p-change-model)=\"changeLoginModel()\"\n >\n </po-login>\n\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div\n class=\"po-page-login-info-icon-container\"\n [class.po-page-login-info-icon-container-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n >\n @if (pageLoginLiterals.loginHint) {\n <po-icon\n p-icon=\"ICON_INFO po-field-icon\"\n p-tooltip-position=\"right\"\n [p-tooltip]=\"pageLoginLiterals.loginHint\"\n >\n </po-icon>\n }\n </div>\n }\n </div>\n\n <div class=\"po-field-container-bottom po-field-container-error-container\">\n @for (error of allLoginErrors; track error) {\n <div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-error-message\">{{ error }}</span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"po-lg-12\">\n <div class=\"po-page-login-password-container\">\n <po-password\n class=\"po-page-login-field-size po-page-login-password-item\"\n [class.po-page-login-field-size-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n name=\"password\"\n [(ngModel)]=\"password\"\n p-required\n [p-hide-password-peek]=\"hidePasswordPeek\"\n [p-label]=\"pageLoginLiterals.passwordLabel\"\n [p-no-autocomplete]=\"noAutocompletePassword\"\n [p-pattern]=\"passwordPattern\"\n [p-placeholder]=\"pageLoginLiterals.passwordPlaceholder\"\n [p-size]=\"componentsSize\"\n (click)=\"closePopover()\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n (p-change-model)=\"changePasswordModel()\"\n >\n </po-password>\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div class=\"po-page-login-password-item po-page-login-password-popover-container\">\n @if (showExceededAttemptsWarning && exceededAttemptsWarning) {\n <po-page-login-popover\n [p-literals]=\"pageLoginLiterals\"\n [p-recovery]=\"recovery\"\n [p-remaining-attempts]=\"exceededAttemptsWarning\"\n (p-forgot-password)=\"openUrl($event)\"\n >\n </po-page-login-popover>\n }\n </div>\n }\n </div>\n <div class=\"po-field-container-bottom po-field-container-error-container\">\n @for (error of allPasswordErrors; track error) {\n <div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-error-message\">{{ error }}</span>\n </div>\n }\n </div>\n </div>\n\n @if (customField && customFieldType === 'input') {\n <po-input\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldInput\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-error-pattern]=\"customFieldObject.errorPattern || pageLoginLiterals.customFieldErrorPattern\"\n [p-pattern]=\"customFieldObject.pattern\"\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-size]=\"componentsSize\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n >\n </po-input>\n }\n\n @if (customField && customFieldType === 'combo') {\n <po-combo\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldCombo\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-field-value]=\"customFieldObject.fieldValue\"\n [p-filter-service]=\"customFieldObject.url\"\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-size]=\"componentsSize\"\n >\n </po-combo>\n }\n\n @if (customField && customFieldType === 'select') {\n <po-select\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldSelect\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-options]=\"customFieldObject.options\"\n [p-size]=\"componentsSize\"\n >\n </po-select>\n }\n\n <div class=\"po-lg-12\">\n @if (!hideRememberUser) {\n <div class=\"po-page-login-hint po-page-login-info-container\">\n <po-switch\n class=\"po-page-login-info-field po-lg-7 po-offset-lg-5 po-offset-xl-5\"\n name=\"rememberUser\"\n [(ngModel)]=\"rememberUser\"\n p-label-position=\"1\"\n [p-label-off]=\"pageLoginLiterals.rememberUser\"\n [p-label-on]=\"pageLoginLiterals.rememberUser\"\n [p-size]=\"componentsSize\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n [p-hide-label-status]=\"hideLabelStatus\"\n >\n </po-switch>\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div\n class=\"po-page-login-info-icon-container po-page-login-info-icon-remember-user\"\n [class.po-page-login-info-icon-container-dynamic]=\"!pageLoginLiterals.rememberUserHint\"\n >\n @if (pageLoginLiterals.rememberUserHint) {\n <po-icon\n p-icon=\"ICON_INFO po-field-icon\"\n p-tooltip-position=\"right\"\n [p-tooltip]=\"pageLoginLiterals.rememberUserHint\"\n >\n </po-icon>\n }\n </div>\n }\n </div>\n }\n </div>\n\n <po-button\n [class.po-page-login-button-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-lg-12 po-page-login-button po-page-login-field-size\"\n p-kind=\"primary\"\n [p-disabled]=\"loginForm.invalid\"\n [p-label]=\"loading ? pageLoginLiterals.submittedLabel : pageLoginLiterals.submitLabel\"\n [p-loading]=\"loading\"\n [p-size]=\"componentsSize\"\n (p-click)=\"onLoginSubmit()\"\n >\n </po-button>\n\n @if (recovery) {\n <div class=\"po-page-login-recovery-link\">\n <a class=\"po-font-text-large-bold\" (click)=\"openUrl(recovery)\">{{ pageLoginLiterals.forgotPassword }}</a>\n </div>\n }\n\n @if (registerUrl) {\n <div class=\"po-page-login-register-link\">\n <a class=\"po-font-text-large-bold\" (click)=\"openUrl(registerUrl)\">{{ pageLoginLiterals.registerUrl }}</a>\n </div>\n }\n </div>\n </form>\n</po-page-background>\n", dependencies: [{ kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: PoPageBackgroundComponent, selector: "po-page-background", inputs: ["p-background", "p-initial-language", "p-hide-logo", "p-highlight-info", "p-components-size", "p-languages", "p-logo", "p-logo-alt", "p-secondary-logo", "p-show-select-language"], outputs: ["p-selected-language"] }, { kind: "component", type: i3.PoButtonComponent, selector: "po-button" }, { kind: "component", type: i3.PoComboComponent, selector: "po-combo" }, { kind: "component", type: i3.PoInputComponent, selector: "po-input" }, { kind: "component", type: i3.PoLoginComponent, selector: "po-login", inputs: ["p-no-autocomplete"] }, { kind: "component", type: i3.PoPasswordComponent, selector: "po-password", inputs: ["p-hide-password-peek", "p-no-autocomplete"] }, { kind: "component", type: i3.PoSelectComponent, selector: "po-select", inputs: ["p-readonly", "p-placeholder", "p-options", "p-field-label", "p-field-value", "p-control-value-with-label", "p-size", "p-helper", "p-label-text-wrap"], outputs: ["p-blur", "ngModelChange"] }, { kind: "component", type: i3.PoSwitchComponent, selector: "po-switch", inputs: ["p-value", "p-format-model", "p-hide-label-status", "p-label-position", "p-label-off", "p-label-on", "p-field-error-message", "p-error-limit", "p-invalid-value", "p-size", "p-helper", "p-label-text-wrap"] }, { kind: "component", type: i3.PoTagComponent, selector: "po-tag" }, { kind: "component", type: i3.PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "directive", type: i3.PoTooltipDirective, selector: "[p-tooltip]" }, { kind: "component", type: PoPageLoginPopoverComponent, selector: "po-page-login-popover", inputs: ["p-literals", "p-recovery", "p-remaining-attempts"], outputs: ["p-forgot-password"] }] });
10073
10144
  }
10074
10145
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPageLoginComponent, decorators: [{
10075
10146
  type: Component,
10076
- args: [{ selector: 'po-page-login', standalone: false, template: "<button class=\"po-page-login-support\" (click)=\"activateSupport()\" [hidden]=\"!support\">\n <po-icon p-icon=\"ICON_HELP\"></po-icon>\n {{ pageLoginLiterals?.support }}\n</button>\n\n<po-page-background\n #pageLogin\n [p-components-size]=\"componentsSize\"\n [p-show-select-language]=\"showLanguage\"\n [p-languages]=\"languagesList\"\n [p-initial-language]=\"initialSelectLanguage\"\n [p-background]=\"background\"\n [p-highlight-info]=\"pageLoginLiterals.highlightInfo\"\n [p-logo]=\"logo\"\n [p-secondary-logo]=\"secondaryLogo\"\n (p-selected-language)=\"onSelectedLanguage($event)\"\n>\n <header class=\"po-page-login-header\">\n <div class=\"po-page-login-header-product-name\">\n <h1>{{ productName }}</h1>\n </div>\n\n <div class=\"po-page-login-header-product-environment po-mb-md-4 po-mb-sm-1\">\n @if (environment) {\n <po-tag p-type=\"warning\" [p-value]=\"environment\"> </po-tag>\n }\n </div>\n <div class=\"po-page-login-header-welcome po-mb-md-4 po-mb-sm-2\">{{ pageLoginLiterals.welcome }}</div>\n </header>\n\n <form #loginForm=\"ngForm\" class=\"po-page-login-form\">\n <div class=\"po-row\">\n <div class=\"po-lg-12\">\n <div class=\"po-page-login-hint po-page-login-info-container\">\n <po-login\n class=\"po-page-login-info-field\"\n [class.po-page-login-info-field-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n name=\"login\"\n [(ngModel)]=\"login\"\n p-auto-focus\n p-required\n [p-label]=\"pageLoginLiterals.loginLabel\"\n [p-no-autocomplete]=\"noAutocompleteLogin\"\n [p-pattern]=\"loginPattern\"\n [p-placeholder]=\"pageLoginLiterals.loginPlaceholder\"\n [p-size]=\"componentsSize\"\n (click)=\"closePopover()\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n (p-change-model)=\"changeLoginModel()\"\n >\n </po-login>\n\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div\n class=\"po-page-login-info-icon-container\"\n [class.po-page-login-info-icon-container-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n >\n @if (pageLoginLiterals.loginHint) {\n <po-icon\n p-icon=\"ICON_INFO po-field-icon\"\n p-tooltip-position=\"right\"\n [p-tooltip]=\"pageLoginLiterals.loginHint\"\n >\n </po-icon>\n }\n </div>\n }\n </div>\n\n <div class=\"po-field-container-bottom po-field-container-error-container\">\n @for (error of allLoginErrors; track error) {\n <div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-container-error-text\">{{ error }}</span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"po-lg-12\">\n <div class=\"po-page-login-password-container\">\n <po-password\n class=\"po-page-login-field-size po-page-login-password-item\"\n [class.po-page-login-field-size-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n name=\"password\"\n [(ngModel)]=\"password\"\n p-required\n [p-hide-password-peek]=\"hidePasswordPeek\"\n [p-label]=\"pageLoginLiterals.passwordLabel\"\n [p-no-autocomplete]=\"noAutocompletePassword\"\n [p-pattern]=\"passwordPattern\"\n [p-placeholder]=\"pageLoginLiterals.passwordPlaceholder\"\n [p-size]=\"componentsSize\"\n (click)=\"closePopover()\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n (p-change-model)=\"changePasswordModel()\"\n >\n </po-password>\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div class=\"po-page-login-password-item po-page-login-password-popover-container\">\n @if (showExceededAttemptsWarning && exceededAttemptsWarning) {\n <po-page-login-popover\n [p-literals]=\"pageLoginLiterals\"\n [p-recovery]=\"recovery\"\n [p-remaining-attempts]=\"exceededAttemptsWarning\"\n (p-forgot-password)=\"openUrl($event)\"\n >\n </po-page-login-popover>\n }\n </div>\n }\n </div>\n <div class=\"po-field-container-bottom po-field-container-error-container\">\n @for (error of allPasswordErrors; track error) {\n <div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-container-error-text\">{{ error }}</span>\n </div>\n }\n </div>\n </div>\n\n @if (customField && customFieldType === 'input') {\n <po-input\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldInput\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-error-pattern]=\"customFieldObject.errorPattern || pageLoginLiterals.customFieldErrorPattern\"\n [p-pattern]=\"customFieldObject.pattern\"\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-size]=\"componentsSize\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n >\n </po-input>\n }\n\n @if (customField && customFieldType === 'combo') {\n <po-combo\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldCombo\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-field-value]=\"customFieldObject.fieldValue\"\n [p-filter-service]=\"customFieldObject.url\"\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-size]=\"componentsSize\"\n >\n </po-combo>\n }\n\n @if (customField && customFieldType === 'select') {\n <po-select\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldSelect\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-options]=\"customFieldObject.options\"\n [p-size]=\"componentsSize\"\n >\n </po-select>\n }\n\n <div class=\"po-lg-12\">\n @if (!hideRememberUser) {\n <div class=\"po-page-login-hint po-page-login-info-container\">\n <po-switch\n class=\"po-page-login-info-field po-lg-7 po-offset-lg-5 po-offset-xl-5\"\n name=\"rememberUser\"\n [(ngModel)]=\"rememberUser\"\n p-label-position=\"1\"\n [p-label-off]=\"pageLoginLiterals.rememberUser\"\n [p-label-on]=\"pageLoginLiterals.rememberUser\"\n [p-size]=\"componentsSize\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n [p-hide-label-status]=\"hideLabelStatus\"\n >\n </po-switch>\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div\n class=\"po-page-login-info-icon-container po-page-login-info-icon-remember-user\"\n [class.po-page-login-info-icon-container-dynamic]=\"!pageLoginLiterals.rememberUserHint\"\n >\n @if (pageLoginLiterals.rememberUserHint) {\n <po-icon\n p-icon=\"ICON_INFO po-field-icon\"\n p-tooltip-position=\"right\"\n [p-tooltip]=\"pageLoginLiterals.rememberUserHint\"\n >\n </po-icon>\n }\n </div>\n }\n </div>\n }\n </div>\n\n <po-button\n [class.po-page-login-button-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-lg-12 po-page-login-button po-page-login-field-size\"\n p-kind=\"primary\"\n [p-disabled]=\"loginForm.invalid\"\n [p-label]=\"loading ? pageLoginLiterals.submittedLabel : pageLoginLiterals.submitLabel\"\n [p-loading]=\"loading\"\n [p-size]=\"componentsSize\"\n (p-click)=\"onLoginSubmit()\"\n >\n </po-button>\n\n @if (recovery) {\n <div class=\"po-page-login-recovery-link\">\n <a class=\"po-font-text-large-bold\" (click)=\"openUrl(recovery)\">{{ pageLoginLiterals.forgotPassword }}</a>\n </div>\n }\n\n @if (registerUrl) {\n <div class=\"po-page-login-register-link\">\n <a class=\"po-font-text-large-bold\" (click)=\"openUrl(registerUrl)\">{{ pageLoginLiterals.registerUrl }}</a>\n </div>\n }\n </div>\n </form>\n</po-page-background>\n" }]
10147
+ args: [{ selector: 'po-page-login', standalone: false, template: "<button class=\"po-page-login-support\" (click)=\"activateSupport()\" [hidden]=\"!support\">\n <po-icon p-icon=\"ICON_HELP\"></po-icon>\n {{ pageLoginLiterals?.support }}\n</button>\n\n<po-page-background\n #pageLogin\n [p-components-size]=\"componentsSize\"\n [p-show-select-language]=\"showLanguage\"\n [p-languages]=\"languagesList\"\n [p-initial-language]=\"initialSelectLanguage\"\n [p-background]=\"background\"\n [p-highlight-info]=\"pageLoginLiterals.highlightInfo\"\n [p-logo]=\"logo\"\n [p-secondary-logo]=\"secondaryLogo\"\n (p-selected-language)=\"onSelectedLanguage($event)\"\n>\n <header class=\"po-page-login-header\">\n <div class=\"po-page-login-header-product-name\">\n <h1>{{ productName }}</h1>\n </div>\n\n <div class=\"po-page-login-header-product-environment po-mb-md-4 po-mb-sm-1\">\n @if (environment) {\n <po-tag p-type=\"warning\" [p-value]=\"environment\"> </po-tag>\n }\n </div>\n <div class=\"po-page-login-header-welcome po-mb-md-4 po-mb-sm-2\">{{ pageLoginLiterals.welcome }}</div>\n </header>\n\n <form #loginForm=\"ngForm\" class=\"po-page-login-form\">\n <div class=\"po-row\">\n <div class=\"po-lg-12\">\n <div class=\"po-page-login-hint po-page-login-info-container\">\n <po-login\n class=\"po-page-login-info-field\"\n [class.po-page-login-info-field-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n name=\"login\"\n [(ngModel)]=\"login\"\n p-auto-focus\n p-required\n [p-label]=\"pageLoginLiterals.loginLabel\"\n [p-no-autocomplete]=\"noAutocompleteLogin\"\n [p-pattern]=\"loginPattern\"\n [p-placeholder]=\"pageLoginLiterals.loginPlaceholder\"\n [p-size]=\"componentsSize\"\n (click)=\"closePopover()\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n (p-change-model)=\"changeLoginModel()\"\n >\n </po-login>\n\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div\n class=\"po-page-login-info-icon-container\"\n [class.po-page-login-info-icon-container-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n >\n @if (pageLoginLiterals.loginHint) {\n <po-icon\n p-icon=\"ICON_INFO po-field-icon\"\n p-tooltip-position=\"right\"\n [p-tooltip]=\"pageLoginLiterals.loginHint\"\n >\n </po-icon>\n }\n </div>\n }\n </div>\n\n <div class=\"po-field-container-bottom po-field-container-error-container\">\n @for (error of allLoginErrors; track error) {\n <div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-error-message\">{{ error }}</span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"po-lg-12\">\n <div class=\"po-page-login-password-container\">\n <po-password\n class=\"po-page-login-field-size po-page-login-password-item\"\n [class.po-page-login-field-size-dynamic]=\"\n !pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\n \"\n name=\"password\"\n [(ngModel)]=\"password\"\n p-required\n [p-hide-password-peek]=\"hidePasswordPeek\"\n [p-label]=\"pageLoginLiterals.passwordLabel\"\n [p-no-autocomplete]=\"noAutocompletePassword\"\n [p-pattern]=\"passwordPattern\"\n [p-placeholder]=\"pageLoginLiterals.passwordPlaceholder\"\n [p-size]=\"componentsSize\"\n (click)=\"closePopover()\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n (p-change-model)=\"changePasswordModel()\"\n >\n </po-password>\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div class=\"po-page-login-password-item po-page-login-password-popover-container\">\n @if (showExceededAttemptsWarning && exceededAttemptsWarning) {\n <po-page-login-popover\n [p-literals]=\"pageLoginLiterals\"\n [p-recovery]=\"recovery\"\n [p-remaining-attempts]=\"exceededAttemptsWarning\"\n (p-forgot-password)=\"openUrl($event)\"\n >\n </po-page-login-popover>\n }\n </div>\n }\n </div>\n <div class=\"po-field-container-bottom po-field-container-error-container\">\n @for (error of allPasswordErrors; track error) {\n <div class=\"po-field-container-bottom-text-error po-field-container-error-item\">\n <po-icon p-icon=\"ICON_EXCLAMATION\"></po-icon>\n <span class=\"po-field-error-message\">{{ error }}</span>\n </div>\n }\n </div>\n </div>\n\n @if (customField && customFieldType === 'input') {\n <po-input\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldInput\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-error-pattern]=\"customFieldObject.errorPattern || pageLoginLiterals.customFieldErrorPattern\"\n [p-pattern]=\"customFieldObject.pattern\"\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-size]=\"componentsSize\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n >\n </po-input>\n }\n\n @if (customField && customFieldType === 'combo') {\n <po-combo\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldCombo\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-field-value]=\"customFieldObject.fieldValue\"\n [p-filter-service]=\"customFieldObject.url\"\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-size]=\"componentsSize\"\n >\n </po-combo>\n }\n\n @if (customField && customFieldType === 'select') {\n <po-select\n [class.po-page-login-field-size-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-page-login-field-size po-lg-12\"\n name=\"customFieldSelect\"\n [(ngModel)]=\"customFieldObject.value\"\n p-required\n [p-placeholder]=\"customFieldObject.placeholder || pageLoginLiterals.customFieldPlaceholder\"\n [p-options]=\"customFieldObject.options\"\n [p-size]=\"componentsSize\"\n >\n </po-select>\n }\n\n <div class=\"po-lg-12\">\n @if (!hideRememberUser) {\n <div class=\"po-page-login-hint po-page-login-info-container\">\n <po-switch\n class=\"po-page-login-info-field po-lg-7 po-offset-lg-5 po-offset-xl-5\"\n name=\"rememberUser\"\n [(ngModel)]=\"rememberUser\"\n p-label-position=\"1\"\n [p-label-off]=\"pageLoginLiterals.rememberUser\"\n [p-label-on]=\"pageLoginLiterals.rememberUser\"\n [p-size]=\"componentsSize\"\n (keyup.enter)=\"loginForm.valid && onLoginSubmit()\"\n [p-hide-label-status]=\"hideLabelStatus\"\n >\n </po-switch>\n @if (pageLoginLiterals.loginHint || pageLoginLiterals.rememberUserHint) {\n <div\n class=\"po-page-login-info-icon-container po-page-login-info-icon-remember-user\"\n [class.po-page-login-info-icon-container-dynamic]=\"!pageLoginLiterals.rememberUserHint\"\n >\n @if (pageLoginLiterals.rememberUserHint) {\n <po-icon\n p-icon=\"ICON_INFO po-field-icon\"\n p-tooltip-position=\"right\"\n [p-tooltip]=\"pageLoginLiterals.rememberUserHint\"\n >\n </po-icon>\n }\n </div>\n }\n </div>\n }\n </div>\n\n <po-button\n [class.po-page-login-button-dynamic]=\"!pageLoginLiterals.loginHint && !pageLoginLiterals.rememberUserHint\"\n class=\"po-lg-12 po-page-login-button po-page-login-field-size\"\n p-kind=\"primary\"\n [p-disabled]=\"loginForm.invalid\"\n [p-label]=\"loading ? pageLoginLiterals.submittedLabel : pageLoginLiterals.submitLabel\"\n [p-loading]=\"loading\"\n [p-size]=\"componentsSize\"\n (p-click)=\"onLoginSubmit()\"\n >\n </po-button>\n\n @if (recovery) {\n <div class=\"po-page-login-recovery-link\">\n <a class=\"po-font-text-large-bold\" (click)=\"openUrl(recovery)\">{{ pageLoginLiterals.forgotPassword }}</a>\n </div>\n }\n\n @if (registerUrl) {\n <div class=\"po-page-login-register-link\">\n <a class=\"po-font-text-large-bold\" (click)=\"openUrl(registerUrl)\">{{ pageLoginLiterals.registerUrl }}</a>\n </div>\n }\n </div>\n </form>\n</po-page-background>\n" }]
10077
10148
  }], ctorParameters: () => [], propDecorators: { loginForm: [{
10078
10149
  type: ViewChild,
10079
10150
  args: ['loginForm', { read: NgForm, static: true }]