@po-ui/ng-components 19.33.0 → 19.35.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/po-ui-ng-components.mjs +199 -63
- package/fesm2022/po-ui-ng-components.mjs.map +1 -1
- package/lib/components/po-button/po-button-base.component.d.ts +3 -2
- package/lib/components/po-dropdown/po-dropdown-action.interface.d.ts +10 -0
- package/lib/components/po-dropdown/po-dropdown.component.d.ts +5 -0
- package/lib/components/po-listbox/interfaces/po-listbox-literals.interface.d.ts +2 -0
- package/lib/components/po-listbox/po-item-list/po-item-list-base.component.d.ts +2 -1
- package/lib/components/po-listbox/po-listbox-base.component.d.ts +9 -8
- package/lib/components/po-listbox/po-listbox.component.d.ts +14 -3
- package/lib/components/po-listbox/po-listbox.module.d.ts +3 -2
- package/lib/components/po-modal/po-modal-action.interface.d.ts +44 -0
- package/lib/components/po-page/interfaces/po-page-action.interface.d.ts +6 -5
- package/lib/components/po-popup/po-popup-action.interface.d.ts +36 -4
- package/lib/components/po-popup/po-popup-base.component.d.ts +2 -1
- package/lib/services/po-theme/helpers/types/po-theme-dark-defaults-AA.constant.d.ts +4 -0
- package/lib/services/po-theme/helpers/types/po-theme-dark-defaults.constant.d.ts +5 -0
- package/package.json +4 -4
- package/po-ui-ng-components-19.35.0-beta.1.tgz +0 -0
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-update/v14/index.js +1 -1
- package/schematics/ng-update/v15/index.js +1 -1
- package/schematics/ng-update/v16/index.js +1 -1
- package/schematics/ng-update/v17/index.js +1 -1
- package/schematics/ng-update/v18/index.js +2 -2
- package/schematics/ng-update/v19/index.js +2 -2
- package/schematics/ng-update/v2/index.js +1 -1
- package/schematics/ng-update/v3/index.js +1 -1
- package/schematics/ng-update/v4/index.js +1 -1
- package/schematics/ng-update/v5/index.js +1 -1
- package/schematics/ng-update/v6/index.js +1 -1
- package/po-ui-ng-components-19.33.0.tgz +0 -0
|
@@ -8,7 +8,7 @@ import { trigger, transition, style, animate, group, query, animateChild, state,
|
|
|
8
8
|
import { Subject, filter, fromEvent, debounceTime, Subscription, switchMap, isObservable, of, ReplaySubject, timer, throwError, Observable, map as map$1, catchError as catchError$1, startWith, delay as delay$1 } from 'rxjs';
|
|
9
9
|
import * as i1$1 from '@angular/router';
|
|
10
10
|
import { RouterModule, Router, NavigationEnd, NavigationCancel } from '@angular/router';
|
|
11
|
-
import * as
|
|
11
|
+
import * as i4 from '@angular/cdk/listbox';
|
|
12
12
|
import { CdkListboxModule } from '@angular/cdk/listbox';
|
|
13
13
|
import * as i1$2 from '@angular/forms';
|
|
14
14
|
import { NG_VALUE_ACCESSOR, FormsModule, NG_VALIDATORS, Validators, NgControl, NgForm, ControlContainer } from '@angular/forms';
|
|
@@ -4556,6 +4556,8 @@ class PoPopupBaseComponent {
|
|
|
4556
4556
|
_position = poPopupDefaultPosition;
|
|
4557
4557
|
_size = undefined;
|
|
4558
4558
|
_target;
|
|
4559
|
+
// Indica se há um listbox com subitens
|
|
4560
|
+
listboxSubitems = false;
|
|
4559
4561
|
/** Lista de ações que serão exibidas no componente. */
|
|
4560
4562
|
set actions(value) {
|
|
4561
4563
|
this._actions = Array.isArray(value) ? value : [];
|
|
@@ -4716,11 +4718,14 @@ class PoPopupBaseComponent {
|
|
|
4716
4718
|
closeEvent = new EventEmitter();
|
|
4717
4719
|
clickItem = new EventEmitter();
|
|
4718
4720
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopupBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4719
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.7", type: PoPopupBaseComponent, isStandalone: true, inputs: { actions: ["p-actions", "actions"], hideArrow: ["p-hide-arrow", "hideArrow"], isCornerAlign: ["p-is-corner-align", "isCornerAlign"], position: ["p-position", "position"], customPositions: ["p-custom-positions", "customPositions"], size: ["p-size", "size"], target: ["p-target", "target"] }, outputs: { closeEvent: "p-close", clickItem: "p-click-item" }, ngImport: i0 });
|
|
4721
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.7", type: PoPopupBaseComponent, isStandalone: true, inputs: { listboxSubitems: ["p-listbox-subitems", "listboxSubitems"], actions: ["p-actions", "actions"], hideArrow: ["p-hide-arrow", "hideArrow"], isCornerAlign: ["p-is-corner-align", "isCornerAlign"], position: ["p-position", "position"], customPositions: ["p-custom-positions", "customPositions"], size: ["p-size", "size"], target: ["p-target", "target"] }, outputs: { closeEvent: "p-close", clickItem: "p-click-item" }, ngImport: i0 });
|
|
4720
4722
|
}
|
|
4721
4723
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopupBaseComponent, decorators: [{
|
|
4722
4724
|
type: Directive
|
|
4723
|
-
}], propDecorators: {
|
|
4725
|
+
}], propDecorators: { listboxSubitems: [{
|
|
4726
|
+
type: Input,
|
|
4727
|
+
args: ['p-listbox-subitems']
|
|
4728
|
+
}], actions: [{
|
|
4724
4729
|
type: Input,
|
|
4725
4730
|
args: ['p-actions']
|
|
4726
4731
|
}], hideArrow: [{
|
|
@@ -4769,15 +4774,19 @@ var PoItemListFilterMode;
|
|
|
4769
4774
|
|
|
4770
4775
|
const poListBoxLiteralsDefault = {
|
|
4771
4776
|
en: {
|
|
4777
|
+
backToPreviousGroup: 'Go back to the previous list',
|
|
4772
4778
|
noItems: 'No items found'
|
|
4773
4779
|
},
|
|
4774
4780
|
es: {
|
|
4781
|
+
backToPreviousGroup: 'Volver a la lista anterior',
|
|
4775
4782
|
noItems: 'No se encontraron artículos'
|
|
4776
4783
|
},
|
|
4777
4784
|
pt: {
|
|
4785
|
+
backToPreviousGroup: 'Voltar para a lista anterior',
|
|
4778
4786
|
noItems: 'Nenhum item encontrado'
|
|
4779
4787
|
},
|
|
4780
4788
|
ru: {
|
|
4789
|
+
backToPreviousGroup: 'Вернуться к предыдущему списку',
|
|
4781
4790
|
noItems: 'ничего не найдено'
|
|
4782
4791
|
}
|
|
4783
4792
|
};
|
|
@@ -4791,6 +4800,7 @@ class PoListBoxBaseComponent {
|
|
|
4791
4800
|
_literals;
|
|
4792
4801
|
language = poLocaleDefault;
|
|
4793
4802
|
_size = undefined;
|
|
4803
|
+
listboxSubitems = false;
|
|
4794
4804
|
visible = false;
|
|
4795
4805
|
set type(value) {
|
|
4796
4806
|
this._type = PoItemListType[value] ?? 'action';
|
|
@@ -4825,16 +4835,6 @@ class PoListBoxBaseComponent {
|
|
|
4825
4835
|
isTabs = false;
|
|
4826
4836
|
// parâmetro que pode ser passado para o popup ao clicar em um item
|
|
4827
4837
|
param;
|
|
4828
|
-
selectItem = new EventEmitter();
|
|
4829
|
-
closeEvent = new EventEmitter();
|
|
4830
|
-
// MULTISELECT PROPERTIES
|
|
4831
|
-
//output para evento do checkbox
|
|
4832
|
-
change = new EventEmitter();
|
|
4833
|
-
//output para evento do checkbox
|
|
4834
|
-
selectCombo = new EventEmitter();
|
|
4835
|
-
//output para evento do checkbox de selecionar todos
|
|
4836
|
-
changeAll = new EventEmitter();
|
|
4837
|
-
UpdateInfiniteScroll = new EventEmitter();
|
|
4838
4838
|
//valor do checkbox de selecionar todos
|
|
4839
4839
|
checkboxAllValue;
|
|
4840
4840
|
// Propriedade que recebe a lista de opções selecionadas.
|
|
@@ -4843,8 +4843,6 @@ class PoListBoxBaseComponent {
|
|
|
4843
4843
|
selectedOption;
|
|
4844
4844
|
fieldValue = 'value';
|
|
4845
4845
|
fieldLabel = 'label';
|
|
4846
|
-
// Evento disparado a cada tecla digitada na pesquisa.
|
|
4847
|
-
changeSearch = new EventEmitter();
|
|
4848
4846
|
// Propriedade que recebe as literais definidas no componente `po-multiselect`.
|
|
4849
4847
|
literalSearch;
|
|
4850
4848
|
// Propriedade que recebe o valor de comparação de pesquisa
|
|
@@ -4883,6 +4881,18 @@ class PoListBoxBaseComponent {
|
|
|
4883
4881
|
placeholderListbox;
|
|
4884
4882
|
// Define se haverá ou não um separador entre todos os itens do listbox
|
|
4885
4883
|
separator = false;
|
|
4884
|
+
// Evento disparado a cada tecla digitada na pesquisa.
|
|
4885
|
+
changeSearch = new EventEmitter();
|
|
4886
|
+
selectItem = new EventEmitter();
|
|
4887
|
+
closeEvent = new EventEmitter();
|
|
4888
|
+
// MULTISELECT PROPERTIES
|
|
4889
|
+
//output para evento do checkbox
|
|
4890
|
+
change = new EventEmitter();
|
|
4891
|
+
//output para evento do checkbox
|
|
4892
|
+
selectCombo = new EventEmitter();
|
|
4893
|
+
//output para evento do checkbox de selecionar todos
|
|
4894
|
+
changeAll = new EventEmitter();
|
|
4895
|
+
UpdateInfiniteScroll = new EventEmitter();
|
|
4886
4896
|
// Evento disparado quando uma tab é ativada
|
|
4887
4897
|
activatedTab = new EventEmitter();
|
|
4888
4898
|
// Evento disparado no click de uma aba do tabs
|
|
@@ -4895,11 +4905,14 @@ class PoListBoxBaseComponent {
|
|
|
4895
4905
|
this.language = languageService.getShortLanguage();
|
|
4896
4906
|
}
|
|
4897
4907
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxBaseComponent, deps: [{ token: PoLanguageService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4898
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.7", type: PoListBoxBaseComponent, isStandalone: true, inputs: { visible: ["p-visible", "visible", convertToBoolean], type: ["p-type", "type"], items: ["p-items", "items"], literals: ["p-literals", "literals"], isTabs: ["p-is-tabs", "isTabs", convertToBoolean], param: ["p-param", "param"], checkboxAllValue: ["p-checkboxAllValue", "checkboxAllValue"], selectedOptions: ["p-selected-options", "selectedOptions"], selectedOption: ["p-selected-option", "selectedOption"], fieldValue: ["p-field-value", "fieldValue"], fieldLabel: ["p-field-label", "fieldLabel"], literalSearch: ["p-literal-search", "literalSearch"], fieldValueSearch: ["p-field-value-search", "fieldValueSearch"], hideSearch: ["p-hide-search", "hideSearch"], hideSelectAll: ["p-hide-select-all", "hideSelectAll"], multiselectTemplate: ["p-multiselect-template", "multiselectTemplate"], template: ["p-template", "template"], placeholderSearch: ["p-placeholder-search", "placeholderSearch"], searchValue: ["p-search-value", "searchValue"], isServerSearching: ["p-is-searching", "isServerSearching", convertToBoolean], infiniteLoading: ["p-infinite-loading", "infiniteLoading", convertToBoolean], infiniteScroll: ["p-infinite-scroll", "infiniteScroll", convertToBoolean], cache: ["p-cache", "cache", convertToBoolean], infiniteScrollDistance: ["p-infinite-scroll-distance", "infiniteScrollDistance"], filterMode: ["p-filter-mode", "filterMode"], isFiltering: ["p-filtering", "isFiltering"], shouldMarkLetters: ["p-should-mark-letter", "shouldMarkLetters"], size: ["p-size", "size"], compareCache: ["p-compare-cache", "compareCache"], comboService: ["p-combo-service", "comboService"], containerWidth: ["p-container-width", "containerWidth"], keysLabel: ["p-keys-label", "keysLabel"], footerActionListbox: ["p-footer-action-listbox", "footerActionListbox"], placeholderListbox: ["p-placeholder-listbox", "placeholderListbox"], separator: ["p-separator", "separator"] }, outputs: { selectItem: "p-select-item", closeEvent: "p-close", change: "p-change", selectCombo: "p-selectcombo-item", changeAll: "p-change-all", UpdateInfiniteScroll: "p-update-infinite-scroll",
|
|
4908
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.7", type: PoListBoxBaseComponent, isStandalone: true, inputs: { listboxSubitems: ["p-listbox-subitems", "listboxSubitems"], visible: ["p-visible", "visible", convertToBoolean], type: ["p-type", "type"], items: ["p-items", "items"], literals: ["p-literals", "literals"], isTabs: ["p-is-tabs", "isTabs", convertToBoolean], param: ["p-param", "param"], checkboxAllValue: ["p-checkboxAllValue", "checkboxAllValue"], selectedOptions: ["p-selected-options", "selectedOptions"], selectedOption: ["p-selected-option", "selectedOption"], fieldValue: ["p-field-value", "fieldValue"], fieldLabel: ["p-field-label", "fieldLabel"], literalSearch: ["p-literal-search", "literalSearch"], fieldValueSearch: ["p-field-value-search", "fieldValueSearch"], hideSearch: ["p-hide-search", "hideSearch"], hideSelectAll: ["p-hide-select-all", "hideSelectAll"], multiselectTemplate: ["p-multiselect-template", "multiselectTemplate"], template: ["p-template", "template"], placeholderSearch: ["p-placeholder-search", "placeholderSearch"], searchValue: ["p-search-value", "searchValue"], isServerSearching: ["p-is-searching", "isServerSearching", convertToBoolean], infiniteLoading: ["p-infinite-loading", "infiniteLoading", convertToBoolean], infiniteScroll: ["p-infinite-scroll", "infiniteScroll", convertToBoolean], cache: ["p-cache", "cache", convertToBoolean], infiniteScrollDistance: ["p-infinite-scroll-distance", "infiniteScrollDistance"], filterMode: ["p-filter-mode", "filterMode"], isFiltering: ["p-filtering", "isFiltering"], shouldMarkLetters: ["p-should-mark-letter", "shouldMarkLetters"], size: ["p-size", "size"], compareCache: ["p-compare-cache", "compareCache"], comboService: ["p-combo-service", "comboService"], containerWidth: ["p-container-width", "containerWidth"], keysLabel: ["p-keys-label", "keysLabel"], footerActionListbox: ["p-footer-action-listbox", "footerActionListbox"], placeholderListbox: ["p-placeholder-listbox", "placeholderListbox"], separator: ["p-separator", "separator"] }, outputs: { changeSearch: "p-change-search", selectItem: "p-select-item", closeEvent: "p-close", change: "p-change", selectCombo: "p-selectcombo-item", changeAll: "p-change-all", UpdateInfiniteScroll: "p-update-infinite-scroll", activatedTab: "p-activated-tabs", clickTab: "p-click-tabs", changeStateTabs: "p-change-state-tabs", clickItem: "p-click-item", footerActionListboxEvent: "p-footer-action-listbox-event" }, host: { properties: { "attr.p-size": "this.size" } }, ngImport: i0 });
|
|
4899
4909
|
}
|
|
4900
4910
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxBaseComponent, decorators: [{
|
|
4901
4911
|
type: Directive
|
|
4902
|
-
}], ctorParameters: () => [{ type: PoLanguageService }], propDecorators: {
|
|
4912
|
+
}], ctorParameters: () => [{ type: PoLanguageService }], propDecorators: { listboxSubitems: [{
|
|
4913
|
+
type: Input,
|
|
4914
|
+
args: ['p-listbox-subitems']
|
|
4915
|
+
}], visible: [{
|
|
4903
4916
|
type: Input,
|
|
4904
4917
|
args: [{ alias: 'p-visible', transform: convertToBoolean }]
|
|
4905
4918
|
}], type: [{
|
|
@@ -4917,24 +4930,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
4917
4930
|
}], param: [{
|
|
4918
4931
|
type: Input,
|
|
4919
4932
|
args: ['p-param']
|
|
4920
|
-
}], selectItem: [{
|
|
4921
|
-
type: Output,
|
|
4922
|
-
args: ['p-select-item']
|
|
4923
|
-
}], closeEvent: [{
|
|
4924
|
-
type: Output,
|
|
4925
|
-
args: ['p-close']
|
|
4926
|
-
}], change: [{
|
|
4927
|
-
type: Output,
|
|
4928
|
-
args: ['p-change']
|
|
4929
|
-
}], selectCombo: [{
|
|
4930
|
-
type: Output,
|
|
4931
|
-
args: ['p-selectcombo-item']
|
|
4932
|
-
}], changeAll: [{
|
|
4933
|
-
type: Output,
|
|
4934
|
-
args: ['p-change-all']
|
|
4935
|
-
}], UpdateInfiniteScroll: [{
|
|
4936
|
-
type: Output,
|
|
4937
|
-
args: ['p-update-infinite-scroll']
|
|
4938
4933
|
}], checkboxAllValue: [{
|
|
4939
4934
|
type: Input,
|
|
4940
4935
|
args: ['p-checkboxAllValue']
|
|
@@ -4950,9 +4945,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
4950
4945
|
}], fieldLabel: [{
|
|
4951
4946
|
type: Input,
|
|
4952
4947
|
args: ['p-field-label']
|
|
4953
|
-
}], changeSearch: [{
|
|
4954
|
-
type: Output,
|
|
4955
|
-
args: ['p-change-search']
|
|
4956
4948
|
}], literalSearch: [{
|
|
4957
4949
|
type: Input,
|
|
4958
4950
|
args: ['p-literal-search']
|
|
@@ -5002,6 +4994,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
5002
4994
|
type: Input,
|
|
5003
4995
|
args: ['p-should-mark-letter']
|
|
5004
4996
|
}], size: [{
|
|
4997
|
+
type: HostBinding,
|
|
4998
|
+
args: ['attr.p-size']
|
|
4999
|
+
}, {
|
|
5005
5000
|
type: Input,
|
|
5006
5001
|
args: ['p-size']
|
|
5007
5002
|
}], compareCache: [{
|
|
@@ -5025,6 +5020,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
5025
5020
|
}], separator: [{
|
|
5026
5021
|
type: Input,
|
|
5027
5022
|
args: ['p-separator']
|
|
5023
|
+
}], changeSearch: [{
|
|
5024
|
+
type: Output,
|
|
5025
|
+
args: ['p-change-search']
|
|
5026
|
+
}], selectItem: [{
|
|
5027
|
+
type: Output,
|
|
5028
|
+
args: ['p-select-item']
|
|
5029
|
+
}], closeEvent: [{
|
|
5030
|
+
type: Output,
|
|
5031
|
+
args: ['p-close']
|
|
5032
|
+
}], change: [{
|
|
5033
|
+
type: Output,
|
|
5034
|
+
args: ['p-change']
|
|
5035
|
+
}], selectCombo: [{
|
|
5036
|
+
type: Output,
|
|
5037
|
+
args: ['p-selectcombo-item']
|
|
5038
|
+
}], changeAll: [{
|
|
5039
|
+
type: Output,
|
|
5040
|
+
args: ['p-change-all']
|
|
5041
|
+
}], UpdateInfiniteScroll: [{
|
|
5042
|
+
type: Output,
|
|
5043
|
+
args: ['p-update-infinite-scroll']
|
|
5028
5044
|
}], activatedTab: [{
|
|
5029
5045
|
type: Output,
|
|
5030
5046
|
args: ['p-activated-tabs']
|
|
@@ -5522,6 +5538,8 @@ class PoItemListBaseComponent {
|
|
|
5522
5538
|
* Define um ícone que será exibido ao lado esquerdo do rótulo.
|
|
5523
5539
|
*/
|
|
5524
5540
|
icon;
|
|
5541
|
+
// Define a posição do ícone: 'left' (padrão) ou 'right'.
|
|
5542
|
+
iconPosition = 'left';
|
|
5525
5543
|
/**
|
|
5526
5544
|
* @optional
|
|
5527
5545
|
*
|
|
@@ -5567,7 +5585,7 @@ class PoItemListBaseComponent {
|
|
|
5567
5585
|
}
|
|
5568
5586
|
}
|
|
5569
5587
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoItemListBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5570
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.7", type: PoItemListBaseComponent, isStandalone: true, inputs: { type: ["p-type", "type"], visible: ["p-visible", "visible"], item: ["p-item", "item"], label: ["p-label", "label"], size: ["p-size", "size"], value: ["p-value", "value"], danger: ["p-danger", "danger", convertToBoolean], disabled: ["p-disabled", "disabled"], selected: ["p-selected", "selected", convertToBoolean], separator: ["p-separator", "separator", convertToBoolean], icon: ["p-icon", "icon"], checkboxValue: ["p-checkbox-value", "checkboxValue"], fieldValue: ["p-field-value", "fieldValue"], fieldLabel: ["p-field-label", "fieldLabel"], template: ["p-template", "template"], templateContext: ["p-template-context", "templateContext"], searchValue: ["p-search-value", "searchValue"], filterMode: ["p-filter-mode", "filterMode"], isFiltering: ["p-filtering", "isFiltering"], shouldMarkLetters: ["p-should-mark-letter", "shouldMarkLetters"], compareCache: ["p-compare-cache", "compareCache"], comboService: ["p-combo-service", "comboService"], isTabs: ["p-is-tabs", "isTabs"], tabHide: ["p-tab-hide", "tabHide"], activeTabs: ["p-active-tabs", "activeTabs"], keysLabel: ["p-keys-label", "keysLabel"] }, outputs: { clickItem: "p-click-item", checkboxItem: "p-selectcheckbox-item", comboItem: "p-selectcombo-item", tabsItem: "p-emit-item-tabs", activatedTab: "p-activated-tabs" }, host: { properties: { "attr.p-type": "this.type" } }, ngImport: i0 });
|
|
5588
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.7", type: PoItemListBaseComponent, isStandalone: true, inputs: { type: ["p-type", "type"], visible: ["p-visible", "visible"], item: ["p-item", "item"], label: ["p-label", "label"], size: ["p-size", "size"], value: ["p-value", "value"], danger: ["p-danger", "danger", convertToBoolean], disabled: ["p-disabled", "disabled"], selected: ["p-selected", "selected", convertToBoolean], separator: ["p-separator", "separator", convertToBoolean], icon: ["p-icon", "icon"], iconPosition: ["p-icon-position", "iconPosition"], checkboxValue: ["p-checkbox-value", "checkboxValue"], fieldValue: ["p-field-value", "fieldValue"], fieldLabel: ["p-field-label", "fieldLabel"], template: ["p-template", "template"], templateContext: ["p-template-context", "templateContext"], searchValue: ["p-search-value", "searchValue"], filterMode: ["p-filter-mode", "filterMode"], isFiltering: ["p-filtering", "isFiltering"], shouldMarkLetters: ["p-should-mark-letter", "shouldMarkLetters"], compareCache: ["p-compare-cache", "compareCache"], comboService: ["p-combo-service", "comboService"], isTabs: ["p-is-tabs", "isTabs"], tabHide: ["p-tab-hide", "tabHide"], activeTabs: ["p-active-tabs", "activeTabs"], keysLabel: ["p-keys-label", "keysLabel"] }, outputs: { clickItem: "p-click-item", checkboxItem: "p-selectcheckbox-item", comboItem: "p-selectcombo-item", tabsItem: "p-emit-item-tabs", activatedTab: "p-activated-tabs" }, host: { properties: { "attr.p-type": "this.type", "attr.p-size": "this.size" } }, ngImport: i0 });
|
|
5571
5589
|
}
|
|
5572
5590
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoItemListBaseComponent, decorators: [{
|
|
5573
5591
|
type: Directive
|
|
@@ -5587,6 +5605,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
5587
5605
|
type: Input,
|
|
5588
5606
|
args: ['p-label']
|
|
5589
5607
|
}], size: [{
|
|
5608
|
+
type: HostBinding,
|
|
5609
|
+
args: ['attr.p-size']
|
|
5610
|
+
}, {
|
|
5590
5611
|
type: Input,
|
|
5591
5612
|
args: ['p-size']
|
|
5592
5613
|
}], value: [{
|
|
@@ -5607,6 +5628,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
5607
5628
|
}], icon: [{
|
|
5608
5629
|
type: Input,
|
|
5609
5630
|
args: ['p-icon']
|
|
5631
|
+
}], iconPosition: [{
|
|
5632
|
+
type: Input,
|
|
5633
|
+
args: ['p-icon-position']
|
|
5610
5634
|
}], clickItem: [{
|
|
5611
5635
|
type: Output,
|
|
5612
5636
|
args: ['p-click-item']
|
|
@@ -6326,11 +6350,12 @@ class PoButtonBaseComponent {
|
|
|
6326
6350
|
* @description
|
|
6327
6351
|
* Ícone exibido ao lado esquerdo do label do botão.
|
|
6328
6352
|
*
|
|
6329
|
-
* É possível usar qualquer um dos ícones da [Biblioteca de ícones](https://po-ui.io/icons)
|
|
6353
|
+
* É possível usar qualquer um dos ícones da [Biblioteca de ícones](https://po-ui.io/icons), conforme exemplo:
|
|
6330
6354
|
* ```
|
|
6331
6355
|
* <po-button p-icon="an an-user" p-label="PO button"></po-button>
|
|
6332
6356
|
* ```
|
|
6333
|
-
* Também é possível utilizar outras fontes de ícones, por exemplo a biblioteca *Font Awesome*,
|
|
6357
|
+
* Também é possível utilizar outras fontes de ícones, por exemplo a biblioteca *Font Awesome*, desde que a biblioteca
|
|
6358
|
+
* esteja carregada no projeto:
|
|
6334
6359
|
* ```
|
|
6335
6360
|
* <po-button p-icon="fa fa-podcast" p-label="PO button"></po-button>
|
|
6336
6361
|
* ```
|
|
@@ -8031,11 +8056,11 @@ class PoItemListComponent extends PoItemListBaseComponent {
|
|
|
8031
8056
|
return value.replace(/</g, '<').replace(/>/g, '>');
|
|
8032
8057
|
}
|
|
8033
8058
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoItemListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
8034
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoItemListComponent, isStandalone: false, selector: "po-item-list", viewQueries: [{ propertyName: "itemList", first: true, predicate: ["itemList"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container (keydown)=\"onCheckboxItemEmit($event)\">\n @switch (type) {\n @default {\n <div\n #itemList\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__disabled]=\"disabled || !visible\"\n [class.po-item-list__selected]=\"(selected || activeTabs) && !disabled\"\n [class.po-item-list__hidden]=\"tabHide\"\n [attr.aria-disabled]=\"disabled || !visible\"\n [attr.aria-label]=\"label\"\n [class.po-item-list__danger]=\"danger\"\n class=\"po-item-list po-item-list__action\"\n >\n @if (icon) {\n <po-icon
|
|
8059
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoItemListComponent, isStandalone: false, selector: "po-item-list", viewQueries: [{ propertyName: "itemList", first: true, predicate: ["itemList"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container (keydown)=\"onCheckboxItemEmit($event)\">\n @switch (type) {\n @default {\n <div\n #itemList\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__disabled]=\"disabled || !visible\"\n [class.po-item-list__selected]=\"(selected || activeTabs) && !disabled\"\n [class.po-item-list__hidden]=\"tabHide\"\n [attr.aria-disabled]=\"disabled || !visible\"\n [attr.aria-label]=\"label\"\n [class.po-item-list__danger]=\"danger\"\n class=\"po-item-list po-item-list__action\"\n >\n @if (icon && iconPosition === 'left') {\n <po-icon\n class=\"po-popup-icon-item po-field-icon\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n }\n <span class=\"po-item-list-label\">{{ label }}</span>\n\n @if (icon && iconPosition === 'right') {\n <po-icon class=\"po-popup-icon-item-right po-field-icon\" [p-icon]=\"icon\"></po-icon>\n }\n </div>\n }\n @case ('option') {\n <div\n #itemList\n class=\"po-item-list po-item-list__option\"\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__selected]=\"selected && !disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-label]=\"label\"\n (click)=\"onComboItem(item, $event)\"\n >\n @if (!template) {\n @switch (keysLabel.length) {\n @case (0) {\n <span class=\"po-item-list-label\" [innerHTML]=\"getLabelFormatted(label)\"></span>\n }\n\n @case (1) {\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n }\n\n @case (2) {\n <div class=\"po-item-list-label po-item-list-label-group\">\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n <span class=\"po-item-list-sublabel\">{{ item[keysLabel[1]] }}</span>\n </div>\n }\n\n @default {\n <div class=\"po-item-list-label po-item-list-label-group\">\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n <span class=\"po-item-list-sublabel\">{{ item[keysLabel[1]] }} - {{ item[keysLabel[2]] }}</span>\n </div>\n }\n }\n }\n\n <ng-template\n [ngTemplateOutlet]=\"template?.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: templateContext }\"\n >\n </ng-template>\n </div>\n }\n @case ('check') {\n <div\n class=\"po-item-list po-item-list__check\"\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__selected]=\"selected && !disabled\"\n [class.po-item-list__disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-label]=\"label\"\n (click)=\"onCheckboxItem()\"\n (keydown)=\"onCheckboxItemEmit($event)\"\n (keyup)=\"onCheckboxItemEmit($event)\"\n >\n <po-checkbox\n [p-disabled-tabindex]=\"true\"\n [p-checkboxValue]=\"checkboxValue === null ? 'mixed' : checkboxValue\"\n [p-disabled]=\"disabled\"\n [p-size]=\"size\"\n ></po-checkbox>\n @if (!template) {\n <span class=\"po-item-list__label\">{{ label }}</span>\n }\n <ng-template\n [ngTemplateOutlet]=\"template?.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: templateContext }\"\n >\n </ng-template>\n </div>\n }\n }\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PoCheckboxComponent, selector: "po-checkbox" }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }] });
|
|
8035
8060
|
}
|
|
8036
8061
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoItemListComponent, decorators: [{
|
|
8037
8062
|
type: Component,
|
|
8038
|
-
args: [{ selector: 'po-item-list', standalone: false, template: "<ng-container (keydown)=\"onCheckboxItemEmit($event)\">\n @switch (type) {\n @default {\n <div\n #itemList\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__disabled]=\"disabled || !visible\"\n [class.po-item-list__selected]=\"(selected || activeTabs) && !disabled\"\n [class.po-item-list__hidden]=\"tabHide\"\n [attr.aria-disabled]=\"disabled || !visible\"\n [attr.aria-label]=\"label\"\n [class.po-item-list__danger]=\"danger\"\n class=\"po-item-list po-item-list__action\"\n >\n @if (icon) {\n <po-icon
|
|
8063
|
+
args: [{ selector: 'po-item-list', standalone: false, template: "<ng-container (keydown)=\"onCheckboxItemEmit($event)\">\n @switch (type) {\n @default {\n <div\n #itemList\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__disabled]=\"disabled || !visible\"\n [class.po-item-list__selected]=\"(selected || activeTabs) && !disabled\"\n [class.po-item-list__hidden]=\"tabHide\"\n [attr.aria-disabled]=\"disabled || !visible\"\n [attr.aria-label]=\"label\"\n [class.po-item-list__danger]=\"danger\"\n class=\"po-item-list po-item-list__action\"\n >\n @if (icon && iconPosition === 'left') {\n <po-icon\n class=\"po-popup-icon-item po-field-icon\"\n [class.po-field-icon-aa]=\"size === 'small'\"\n [p-icon]=\"icon\"\n ></po-icon>\n }\n <span class=\"po-item-list-label\">{{ label }}</span>\n\n @if (icon && iconPosition === 'right') {\n <po-icon class=\"po-popup-icon-item-right po-field-icon\" [p-icon]=\"icon\"></po-icon>\n }\n </div>\n }\n @case ('option') {\n <div\n #itemList\n class=\"po-item-list po-item-list__option\"\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__selected]=\"selected && !disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-label]=\"label\"\n (click)=\"onComboItem(item, $event)\"\n >\n @if (!template) {\n @switch (keysLabel.length) {\n @case (0) {\n <span class=\"po-item-list-label\" [innerHTML]=\"getLabelFormatted(label)\"></span>\n }\n\n @case (1) {\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n }\n\n @case (2) {\n <div class=\"po-item-list-label po-item-list-label-group\">\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n <span class=\"po-item-list-sublabel\">{{ item[keysLabel[1]] }}</span>\n </div>\n }\n\n @default {\n <div class=\"po-item-list-label po-item-list-label-group\">\n <span class=\"po-item-list-label\">{{ item[keysLabel[0]] }}</span>\n <span class=\"po-item-list-sublabel\">{{ item[keysLabel[1]] }} - {{ item[keysLabel[2]] }}</span>\n </div>\n }\n }\n }\n\n <ng-template\n [ngTemplateOutlet]=\"template?.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: templateContext }\"\n >\n </ng-template>\n </div>\n }\n @case ('check') {\n <div\n class=\"po-item-list po-item-list__check\"\n [class.po-item-list__separator]=\"separator\"\n [class.po-item-list__selected]=\"selected && !disabled\"\n [class.po-item-list__disabled]=\"disabled\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-label]=\"label\"\n (click)=\"onCheckboxItem()\"\n (keydown)=\"onCheckboxItemEmit($event)\"\n (keyup)=\"onCheckboxItemEmit($event)\"\n >\n <po-checkbox\n [p-disabled-tabindex]=\"true\"\n [p-checkboxValue]=\"checkboxValue === null ? 'mixed' : checkboxValue\"\n [p-disabled]=\"disabled\"\n [p-size]=\"size\"\n ></po-checkbox>\n @if (!template) {\n <span class=\"po-item-list__label\">{{ label }}</span>\n }\n <ng-template\n [ngTemplateOutlet]=\"template?.templateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: templateContext }\"\n >\n </ng-template>\n </div>\n }\n }\n</ng-container>\n" }]
|
|
8039
8064
|
}], propDecorators: { itemList: [{
|
|
8040
8065
|
type: ViewChild,
|
|
8041
8066
|
args: ['itemList', { static: true }]
|
|
@@ -8142,27 +8167,50 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
8142
8167
|
|
|
8143
8168
|
class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
8144
8169
|
element = inject(ElementRef);
|
|
8170
|
+
currentItems = [];
|
|
8171
|
+
currentGroup = null;
|
|
8172
|
+
navigationStack = [];
|
|
8145
8173
|
renderer = inject(Renderer2);
|
|
8146
8174
|
router = inject(Router);
|
|
8147
8175
|
changeDetector = inject(ChangeDetectorRef);
|
|
8148
8176
|
listbox;
|
|
8149
8177
|
listboxItemList;
|
|
8178
|
+
listboxGroupHeader;
|
|
8150
8179
|
searchElement;
|
|
8151
8180
|
popupHeaderContainer;
|
|
8181
|
+
listboxItems;
|
|
8152
8182
|
scrollEvent$;
|
|
8153
8183
|
subscriptionScrollEvent;
|
|
8154
8184
|
constructor() {
|
|
8155
8185
|
const languageService = inject(PoLanguageService);
|
|
8156
8186
|
super(languageService);
|
|
8157
8187
|
}
|
|
8188
|
+
ngOnInit() {
|
|
8189
|
+
if (this.listboxSubitems) {
|
|
8190
|
+
this.currentItems = this.items;
|
|
8191
|
+
}
|
|
8192
|
+
}
|
|
8158
8193
|
ngAfterViewInit() {
|
|
8159
8194
|
this.setListBoxMaxHeight();
|
|
8195
|
+
this.setListBoxWidth();
|
|
8160
8196
|
this.listboxItemList?.nativeElement.focus();
|
|
8197
|
+
if (this.listboxSubitems) {
|
|
8198
|
+
requestAnimationFrame(() => {
|
|
8199
|
+
const firstItem = this.listboxItems?.first.nativeElement;
|
|
8200
|
+
if (firstItem) {
|
|
8201
|
+
firstItem.focus();
|
|
8202
|
+
setTimeout(() => {
|
|
8203
|
+
firstItem.dispatchEvent(new FocusEvent('focus', { bubbles: true }));
|
|
8204
|
+
}, 0);
|
|
8205
|
+
}
|
|
8206
|
+
});
|
|
8207
|
+
}
|
|
8161
8208
|
this.changeDetector.detectChanges();
|
|
8162
8209
|
}
|
|
8163
8210
|
ngOnChanges(changes) {
|
|
8164
8211
|
if (changes?.items) {
|
|
8165
8212
|
this.setListBoxMaxHeight();
|
|
8213
|
+
this.setListBoxWidth();
|
|
8166
8214
|
}
|
|
8167
8215
|
if (this.visible && this.infiniteScroll) {
|
|
8168
8216
|
this.checkInfiniteScroll();
|
|
@@ -8173,7 +8221,55 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8173
8221
|
this.subscriptionScrollEvent.unsubscribe();
|
|
8174
8222
|
}
|
|
8175
8223
|
}
|
|
8176
|
-
|
|
8224
|
+
openGroup(group, event) {
|
|
8225
|
+
event?.stopPropagation();
|
|
8226
|
+
this.navigationStack.push({
|
|
8227
|
+
group: this.currentGroup,
|
|
8228
|
+
items: this.currentItems
|
|
8229
|
+
});
|
|
8230
|
+
this.currentGroup = group;
|
|
8231
|
+
this.currentItems = group.subItems || [];
|
|
8232
|
+
requestAnimationFrame(() => {
|
|
8233
|
+
const firstItem = this.listboxGroupHeader?.nativeElement;
|
|
8234
|
+
if (firstItem) {
|
|
8235
|
+
firstItem.focus();
|
|
8236
|
+
setTimeout(() => {
|
|
8237
|
+
firstItem.dispatchEvent(new FocusEvent('focus', { bubbles: true }));
|
|
8238
|
+
}, 0);
|
|
8239
|
+
}
|
|
8240
|
+
});
|
|
8241
|
+
}
|
|
8242
|
+
goBack(event) {
|
|
8243
|
+
event?.stopPropagation();
|
|
8244
|
+
const previous = this.navigationStack.pop();
|
|
8245
|
+
if (previous) {
|
|
8246
|
+
this.currentGroup = previous.group;
|
|
8247
|
+
this.currentItems = previous.items;
|
|
8248
|
+
}
|
|
8249
|
+
else {
|
|
8250
|
+
this.currentGroup = null;
|
|
8251
|
+
this.currentItems = this.items;
|
|
8252
|
+
}
|
|
8253
|
+
this.clickItem.emit({ goBack: true });
|
|
8254
|
+
requestAnimationFrame(() => {
|
|
8255
|
+
const firstItem = this.listboxItems?.first?.nativeElement;
|
|
8256
|
+
if (firstItem) {
|
|
8257
|
+
firstItem.focus();
|
|
8258
|
+
setTimeout(() => {
|
|
8259
|
+
firstItem.dispatchEvent(new FocusEvent('focus', { bubbles: true }));
|
|
8260
|
+
}, 0);
|
|
8261
|
+
}
|
|
8262
|
+
});
|
|
8263
|
+
}
|
|
8264
|
+
onKeydownGoBack(event) {
|
|
8265
|
+
if (event.key === 'Enter') {
|
|
8266
|
+
this.goBack(event);
|
|
8267
|
+
}
|
|
8268
|
+
if (event?.code === 'Escape' || event.code === 'Tab') {
|
|
8269
|
+
this.closeEvent.emit();
|
|
8270
|
+
}
|
|
8271
|
+
}
|
|
8272
|
+
onSelectItem(itemListAction, event) {
|
|
8177
8273
|
const isDisabled = itemListAction.hasOwnProperty('disabled') &&
|
|
8178
8274
|
itemListAction.disabled !== null &&
|
|
8179
8275
|
itemListAction.disabled !== undefined
|
|
@@ -8187,12 +8283,18 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8187
8283
|
if (this.isTabs && !itemListAction.disabled && !itemListAction.hide) {
|
|
8188
8284
|
this.onClickTabs(itemListAction);
|
|
8189
8285
|
}
|
|
8190
|
-
if (itemListAction
|
|
8286
|
+
if (itemListAction?.action && !isDisabled && isVisible) {
|
|
8191
8287
|
itemListAction.action(this.param || itemListAction);
|
|
8192
8288
|
}
|
|
8193
|
-
if (itemListAction
|
|
8289
|
+
if (itemListAction?.url && !isDisabled && isVisible) {
|
|
8194
8290
|
return this.openUrl(itemListAction.url);
|
|
8195
8291
|
}
|
|
8292
|
+
if (itemListAction?.subItems?.length) {
|
|
8293
|
+
this.openGroup(itemListAction, event);
|
|
8294
|
+
}
|
|
8295
|
+
else if (this.listboxSubitems) {
|
|
8296
|
+
this.closeEvent.emit();
|
|
8297
|
+
}
|
|
8196
8298
|
if (!isDisabled) {
|
|
8197
8299
|
this.clickItem.emit(itemListAction);
|
|
8198
8300
|
}
|
|
@@ -8203,7 +8305,7 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8203
8305
|
}
|
|
8204
8306
|
}
|
|
8205
8307
|
onKeyDown(itemListAction, event) {
|
|
8206
|
-
event
|
|
8308
|
+
event?.preventDefault();
|
|
8207
8309
|
if ((event && event.code === 'Enter') || event.code === 'Space') {
|
|
8208
8310
|
if (itemListAction.type === 'footerAction') {
|
|
8209
8311
|
this.handleFooterActionListbox();
|
|
@@ -8325,9 +8427,10 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8325
8427
|
: itemListAction[property];
|
|
8326
8428
|
}
|
|
8327
8429
|
setListBoxMaxHeight() {
|
|
8430
|
+
const dropdownMaxHeight = 400;
|
|
8328
8431
|
const itemsLength = this.items.length;
|
|
8329
8432
|
const hasPopupHeaderContainer = this.popupHeaderContainer?.nativeElement?.children?.length > 0;
|
|
8330
|
-
if (itemsLength > 6) {
|
|
8433
|
+
if (!this.listboxSubitems && itemsLength > 6) {
|
|
8331
8434
|
if (this.type === 'check' && !this.hideSearch) {
|
|
8332
8435
|
this.renderer.setStyle(this.listbox.nativeElement, 'maxHeight', `${44 * 6 - 44 / 3 + 60}px`);
|
|
8333
8436
|
}
|
|
@@ -8339,6 +8442,17 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8339
8442
|
this.renderer.setStyle(this.listbox.nativeElement, 'maxHeight', `${44 * 6 - 44 / 3}px`);
|
|
8340
8443
|
}
|
|
8341
8444
|
}
|
|
8445
|
+
if (this.listboxSubitems) {
|
|
8446
|
+
this.renderer.setStyle(this.listbox.nativeElement, 'maxHeight', `${dropdownMaxHeight}px`);
|
|
8447
|
+
}
|
|
8448
|
+
}
|
|
8449
|
+
setListBoxWidth() {
|
|
8450
|
+
const dropdownMinWidth = 240;
|
|
8451
|
+
const dropdownMaxWidth = 340;
|
|
8452
|
+
if (this.listboxSubitems && this.items) {
|
|
8453
|
+
this.renderer.setStyle(this.listbox.nativeElement, 'minWidth', `${dropdownMinWidth}px`);
|
|
8454
|
+
this.renderer.setStyle(this.listbox.nativeElement, 'maxWidth', `${dropdownMaxWidth}px`);
|
|
8455
|
+
}
|
|
8342
8456
|
}
|
|
8343
8457
|
openUrl(url) {
|
|
8344
8458
|
if (isExternalLink(url)) {
|
|
@@ -8371,23 +8485,29 @@ class PoListBoxComponent extends PoListBoxBaseComponent {
|
|
|
8371
8485
|
this.closeEvent.emit();
|
|
8372
8486
|
}
|
|
8373
8487
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8374
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoListBoxComponent, isStandalone: false, selector: "po-listbox", viewQueries: [{ propertyName: "listbox", first: true, predicate: ["listbox"], descendants: true, static: true }, { propertyName: "listboxItemList", first: true, predicate: ["listboxItemList"], descendants: true }, { propertyName: "searchElement", first: true, predicate: ["searchElement"], descendants: true }, { propertyName: "popupHeaderContainer", first: true, predicate: ["popupHeaderContainer"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\n #listbox\n class=\"po-listbox\"\n [class.po-listbox-check]=\"type === 'check' || type === 'option'\"\n [attr.data-type]=\"type\"\n [attr.p-size]=\"size\"\n [hidden]=\"visible\"\n>\n <div #popupHeaderContainer>\n <ng-content select=\"[p-popup-header-template]\"></ng-content>\n </div>\n\n @if (!hideSearch && type === 'check') {\n <po-search-list\n #searchElement\n (p-change)=\"callChangeSearch($event)\"\n [p-literals]=\"literalSearch\"\n [p-field-value]=\"fieldValueSearch\"\n [p-placeholder]=\"placeholderSearch\"\n [p-size]=\"size\"\n ></po-search-list>\n }\n\n @if (checkTemplate()) {\n <ul #listboxItemList cdkListbox [cdkListboxMultiple]=\"type === 'check'\" class=\"po-listbox-list\">\n @if (type === 'check' && items.length && !searchElement?.inputValue && !hideSelectAll) {\n <li\n cdkOption=\"selectAll\"\n [attr.aria-checked]=\"checkboxAllValue === null ? 'mixed' : checkboxAllValue\"\n class=\"po-listbox-item-type-check\"\n (click)=\"changeAll.emit()\"\n (keydown)=\"changeAllEmit($event)\"\n (keydown)=\"onSelectAllCheckboxKeyDown($event)\"\n >\n <po-item-list\n [p-selected]=\"checkboxAllValue\"\n p-type=\"check\"\n [p-label]=\"literals.selectAll\"\n p-value=\"selectAll\"\n [p-checkbox-value]=\"checkboxAllValue\"\n [p-size]=\"size\"\n >\n </po-item-list>\n </li>\n }\n @for (item of items; track item) {\n <li\n [class.po-listbox-item]=\"visible\"\n [class.po-listbox-item-type-check]=\"type === 'check'\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"\n returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false || item.options\n \"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.options) {\n <label class=\"po-combo-item-title\">\n {{ item.label }}\n </label>\n }\n @if (returnBooleanValue(item, 'visible') !== false && !item.options) {\n <po-item-list\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-checkbox-value]=\"isSelectedItem(item)\"\n [attr.data-item-list]=\"formatItemList(item)\"\n [p-label]=\"item[fieldLabel]\"\n [p-value]=\"item[fieldValue]\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n [p-active-tabs]=\"item.active\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.danger || item.type === 'danger'\"\n [p-icon]=\"item.icon\"\n [p-type]=\"type\"\n [p-item]=\"item\"\n [p-tab-hide]=\"item.hide\"\n [p-is-tabs]=\"isTabs\"\n [p-field-value]=\"fieldValue\"\n [p-field-label]=\"fieldLabel\"\n [p-template]=\"template\"\n [p-template-context]=\"item\"\n (p-selectcheckbox-item)=\"checkboxClicked($event)\"\n (p-selectcombo-item)=\"optionClicked(item)\"\n (p-emit-item-tabs)=\"onSelectTabs($event)\"\n (p-activated-tabs)=\"onActivatedTabs($event)\"\n [p-search-value]=\"searchValue\"\n [p-filter-mode]=\"filterMode\"\n [p-filtering]=\"isFiltering\"\n [p-size]=\"size\"\n [p-should-mark-letter]=\"shouldMarkLetters\"\n [p-compare-cache]=\"compareCache\"\n [p-combo-service]=\"comboService\"\n [p-keys-label]=\"keysLabel\"\n ></po-item-list>\n }\n </li>\n }\n\n @if (footerActionListbox) {\n @if (placeholderListbox) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ placeholderListbox }}</span>\n </div>\n }\n\n @if (!placeholderListbox && !items.length) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ literals.noItems }}</span>\n </div>\n }\n\n <li\n class=\"po-listbox-item\"\n (click)=\"handleFooterActionListbox()\"\n (keydown)=\"onKeyDown({ type: 'footerAction' }, $event)\"\n cdkOption=\"footerActionListbox\"\n >\n <po-item-list [p-label]=\"literals.footerActionListbox\" p-separator [p-size]=\"size\" />\n </li>\n }\n </ul>\n } @else {\n @if (!items.length && !isServerSearching && type !== 'action' && !footerActionListbox) {\n <div class=\"po-listbox-container-no-data po-text-center\">\n <span> {{ literals.noItems }}</span>\n </div>\n }\n }\n\n @if (isServerSearching && type !== 'action') {\n <div [class.po-listbox-container-loading-default]=\"!infiniteLoading\">\n <po-loading-overlay [p-size]=\"getSizeLoading()\" [p-text]=\"getTextLoading()\"></po-loading-overlay>\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: PoLoadingOverlayComponent, selector: "po-loading-overlay" }, { kind: "directive", type: i2$2.CdkListbox, selector: "[cdkListbox]", inputs: ["id", "tabindex", "cdkListboxValue", "cdkListboxMultiple", "cdkListboxDisabled", "cdkListboxUseActiveDescendant", "cdkListboxOrientation", "cdkListboxCompareWith", "cdkListboxNavigationWrapDisabled", "cdkListboxNavigatesDisabledOptions"], outputs: ["cdkListboxValueChange"], exportAs: ["cdkListbox"] }, { kind: "directive", type: i2$2.CdkOption, selector: "[cdkOption]", inputs: ["id", "cdkOption", "cdkOptionTypeaheadLabel", "cdkOptionDisabled", "tabindex"], exportAs: ["cdkOption"] }, { kind: "component", type: PoItemListComponent, selector: "po-item-list" }, { kind: "component", type: PoSearchListComponent, selector: "po-search-list", inputs: ["p-literals", "p-field-value", "p-size", "p-placeholder"], outputs: ["p-change"] }] });
|
|
8488
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoListBoxComponent, isStandalone: false, selector: "po-listbox", viewQueries: [{ propertyName: "listbox", first: true, predicate: ["listbox"], descendants: true, static: true }, { propertyName: "listboxItemList", first: true, predicate: ["listboxItemList"], descendants: true }, { propertyName: "listboxGroupHeader", first: true, predicate: ["listboxGroupHeader"], descendants: true }, { propertyName: "searchElement", first: true, predicate: ["searchElement"], descendants: true }, { propertyName: "popupHeaderContainer", first: true, predicate: ["popupHeaderContainer"], descendants: true }, { propertyName: "listboxItems", predicate: ["listboxItem"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\n #listbox\n class=\"po-listbox\"\n [class.po-listbox-check]=\"type === 'check' || type === 'option'\"\n [attr.data-type]=\"type\"\n [attr.p-size]=\"size\"\n [hidden]=\"visible\"\n>\n <div #popupHeaderContainer>\n <ng-content select=\"[p-popup-header-template]\"></ng-content>\n </div>\n\n @if (!hideSearch && type === 'check') {\n <po-search-list\n #searchElement\n (p-change)=\"callChangeSearch($event)\"\n [p-literals]=\"literalSearch\"\n [p-field-value]=\"fieldValueSearch\"\n [p-placeholder]=\"placeholderSearch\"\n [p-size]=\"size\"\n ></po-search-list>\n }\n\n @if (checkTemplate() && !listboxSubitems) {\n <ul #listboxItemList cdkListbox [cdkListboxMultiple]=\"type === 'check'\" class=\"po-listbox-list\">\n @if (type === 'check' && items.length && !searchElement?.inputValue && !hideSelectAll) {\n <li\n cdkOption=\"selectAll\"\n [attr.aria-checked]=\"checkboxAllValue === null ? 'mixed' : checkboxAllValue\"\n class=\"po-listbox-item-type-check\"\n (click)=\"changeAll.emit()\"\n (keydown)=\"changeAllEmit($event)\"\n (keydown)=\"onSelectAllCheckboxKeyDown($event)\"\n >\n <po-item-list\n [p-selected]=\"checkboxAllValue\"\n p-type=\"check\"\n [p-label]=\"literals.selectAll\"\n p-value=\"selectAll\"\n [p-checkbox-value]=\"checkboxAllValue\"\n [p-size]=\"size\"\n >\n </po-item-list>\n </li>\n }\n @for (item of items; track item) {\n <li\n [class.po-listbox-item]=\"visible\"\n [class.po-listbox-item-type-check]=\"type === 'check'\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"\n returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false || item.options\n \"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.options) {\n <label class=\"po-combo-item-title\">\n {{ item.label }}\n </label>\n }\n @if (returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-checkbox-value]=\"isSelectedItem(item)\"\n [attr.data-item-list]=\"formatItemList(item)\"\n [p-label]=\"item[fieldLabel]\"\n [p-value]=\"item[fieldValue]\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n [p-active-tabs]=\"item.active\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.danger || item.type === 'danger'\"\n [p-icon]=\"item.icon\"\n [p-type]=\"type\"\n [p-item]=\"item\"\n [p-tab-hide]=\"item.hide\"\n [p-is-tabs]=\"isTabs\"\n [p-field-value]=\"fieldValue\"\n [p-field-label]=\"fieldLabel\"\n [p-template]=\"template\"\n [p-template-context]=\"item\"\n (p-selectcheckbox-item)=\"checkboxClicked($event)\"\n (p-selectcombo-item)=\"optionClicked(item)\"\n (p-emit-item-tabs)=\"onSelectTabs($event)\"\n (p-activated-tabs)=\"onActivatedTabs($event)\"\n [p-search-value]=\"searchValue\"\n [p-filter-mode]=\"filterMode\"\n [p-filtering]=\"isFiltering\"\n [p-size]=\"size\"\n [p-should-mark-letter]=\"shouldMarkLetters\"\n [p-compare-cache]=\"compareCache\"\n [p-combo-service]=\"comboService\"\n [p-keys-label]=\"keysLabel\"\n ></po-item-list>\n }\n </li>\n }\n\n @if (footerActionListbox) {\n @if (placeholderListbox) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ placeholderListbox }}</span>\n </div>\n }\n\n @if (!placeholderListbox && !items.length) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ literals.noItems }}</span>\n </div>\n }\n\n <li\n class=\"po-listbox-item\"\n (click)=\"handleFooterActionListbox()\"\n (keydown)=\"onKeyDown({ type: 'footerAction' }, $event)\"\n cdkOption=\"footerActionListbox\"\n >\n <po-item-list [p-label]=\"literals.footerActionListbox\" p-separator [p-size]=\"size\" />\n </li>\n }\n </ul>\n } @else {\n @if (!items.length && !isServerSearching && type !== 'action' && !footerActionListbox) {\n <div class=\"po-listbox-container-no-data po-text-center\">\n <span> {{ literals.noItems }}</span>\n </div>\n }\n }\n\n @if (listboxSubitems) {\n <ul cdkListbox class=\"po-listbox-list po-listbox-dropdown\">\n @if (!currentGroup) {\n @for (item of currentItems; track item) {\n <li\n #listboxItem\n [class.po-listbox-item]=\"visible\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false\"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item, $event)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.subItems?.length) {\n <po-item-list\n [p-label]=\"item.label\"\n [p-item]=\"item\"\n [p-separator]=\"item.separator || separator\"\n [p-icon]=\"'po-icon-arrow-right'\"\n [p-icon-position]=\"'right'\"\n >\n </po-item-list>\n } @else if (!item.subItems?.length && returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-label]=\"item[fieldLabel]\"\n [p-item]=\"item\"\n [p-icon]=\"item.icon\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.type === 'danger'\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n >\n </po-item-list>\n }\n </li>\n }\n }\n\n @if (currentGroup) {\n <li\n #listboxGroupHeader\n class=\"po-listbox-group-header\"\n [cdkOption]=\"'back-option'\"\n [attr.aria-label]=\"literals?.backToPreviousGroup\"\n (click)=\"goBack($event)\"\n (keydown)=\"onKeydownGoBack($event)\"\n >\n <po-icon class=\"po-field-icon\" [p-icon]=\"'po-icon-arrow-left'\"></po-icon>\n <po-tag [p-value]=\"currentGroup.label\"></po-tag>\n </li>\n\n @for (subItem of currentItems; track subItem.label) {\n @if (subItem.subItems?.length) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n [p-label]=\"subItem.label\"\n [p-item]=\"subItem\"\n [p-separator]=\"subItem.separator || separator\"\n [p-icon]=\"'po-icon-arrow-right'\"\n [p-icon-position]=\"'right'\"\n >\n </po-item-list>\n </li>\n } @else if (!subItem.subItems?.length && returnBooleanValue(subItem, 'visible') !== false) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(subItem, 'disabled')\"\n [p-visible]=\"returnBooleanValue(subItem, 'visible')\"\n [p-label]=\"subItem[fieldLabel]\"\n [p-item]=\"subItem\"\n [p-icon]=\"subItem.icon\"\n [p-separator]=\"subItem.separator || separator\"\n [p-danger]=\"subItem.type === 'danger'\"\n [p-selected]=\"isSelectedItem(subItem) || subItem.selected\"\n >\n </po-item-list>\n </li>\n }\n }\n }\n </ul>\n }\n\n @if (isServerSearching && type !== 'action') {\n <div [class.po-listbox-container-loading-default]=\"!infiniteLoading\">\n <po-loading-overlay [p-size]=\"getSizeLoading()\" [p-text]=\"getTextLoading()\"></po-loading-overlay>\n </div>\n }\n</div>\n", dependencies: [{ kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoLoadingOverlayComponent, selector: "po-loading-overlay" }, { kind: "component", type: PoTagComponent, selector: "po-tag" }, { kind: "directive", type: i4.CdkListbox, selector: "[cdkListbox]", inputs: ["id", "tabindex", "cdkListboxValue", "cdkListboxMultiple", "cdkListboxDisabled", "cdkListboxUseActiveDescendant", "cdkListboxOrientation", "cdkListboxCompareWith", "cdkListboxNavigationWrapDisabled", "cdkListboxNavigatesDisabledOptions"], outputs: ["cdkListboxValueChange"], exportAs: ["cdkListbox"] }, { kind: "directive", type: i4.CdkOption, selector: "[cdkOption]", inputs: ["id", "cdkOption", "cdkOptionTypeaheadLabel", "cdkOptionDisabled", "tabindex"], exportAs: ["cdkOption"] }, { kind: "component", type: PoItemListComponent, selector: "po-item-list" }, { kind: "component", type: PoSearchListComponent, selector: "po-search-list", inputs: ["p-literals", "p-field-value", "p-size", "p-placeholder"], outputs: ["p-change"] }] });
|
|
8375
8489
|
}
|
|
8376
8490
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxComponent, decorators: [{
|
|
8377
8491
|
type: Component,
|
|
8378
|
-
args: [{ selector: 'po-listbox', standalone: false, template: "<div\n #listbox\n class=\"po-listbox\"\n [class.po-listbox-check]=\"type === 'check' || type === 'option'\"\n [attr.data-type]=\"type\"\n [attr.p-size]=\"size\"\n [hidden]=\"visible\"\n>\n <div #popupHeaderContainer>\n <ng-content select=\"[p-popup-header-template]\"></ng-content>\n </div>\n\n @if (!hideSearch && type === 'check') {\n <po-search-list\n #searchElement\n (p-change)=\"callChangeSearch($event)\"\n [p-literals]=\"literalSearch\"\n [p-field-value]=\"fieldValueSearch\"\n [p-placeholder]=\"placeholderSearch\"\n [p-size]=\"size\"\n ></po-search-list>\n }\n\n @if (checkTemplate()) {\n <ul #listboxItemList cdkListbox [cdkListboxMultiple]=\"type === 'check'\" class=\"po-listbox-list\">\n @if (type === 'check' && items.length && !searchElement?.inputValue && !hideSelectAll) {\n <li\n cdkOption=\"selectAll\"\n [attr.aria-checked]=\"checkboxAllValue === null ? 'mixed' : checkboxAllValue\"\n class=\"po-listbox-item-type-check\"\n (click)=\"changeAll.emit()\"\n (keydown)=\"changeAllEmit($event)\"\n (keydown)=\"onSelectAllCheckboxKeyDown($event)\"\n >\n <po-item-list\n [p-selected]=\"checkboxAllValue\"\n p-type=\"check\"\n [p-label]=\"literals.selectAll\"\n p-value=\"selectAll\"\n [p-checkbox-value]=\"checkboxAllValue\"\n [p-size]=\"size\"\n >\n </po-item-list>\n </li>\n }\n @for (item of items; track item) {\n <li\n [class.po-listbox-item]=\"visible\"\n [class.po-listbox-item-type-check]=\"type === 'check'\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"\n returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false || item.options\n \"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.options) {\n <label class=\"po-combo-item-title\">\n {{ item.label }}\n </label>\n }\n @if (returnBooleanValue(item, 'visible') !== false
|
|
8492
|
+
args: [{ selector: 'po-listbox', standalone: false, template: "<div\n #listbox\n class=\"po-listbox\"\n [class.po-listbox-check]=\"type === 'check' || type === 'option'\"\n [attr.data-type]=\"type\"\n [attr.p-size]=\"size\"\n [hidden]=\"visible\"\n>\n <div #popupHeaderContainer>\n <ng-content select=\"[p-popup-header-template]\"></ng-content>\n </div>\n\n @if (!hideSearch && type === 'check') {\n <po-search-list\n #searchElement\n (p-change)=\"callChangeSearch($event)\"\n [p-literals]=\"literalSearch\"\n [p-field-value]=\"fieldValueSearch\"\n [p-placeholder]=\"placeholderSearch\"\n [p-size]=\"size\"\n ></po-search-list>\n }\n\n @if (checkTemplate() && !listboxSubitems) {\n <ul #listboxItemList cdkListbox [cdkListboxMultiple]=\"type === 'check'\" class=\"po-listbox-list\">\n @if (type === 'check' && items.length && !searchElement?.inputValue && !hideSelectAll) {\n <li\n cdkOption=\"selectAll\"\n [attr.aria-checked]=\"checkboxAllValue === null ? 'mixed' : checkboxAllValue\"\n class=\"po-listbox-item-type-check\"\n (click)=\"changeAll.emit()\"\n (keydown)=\"changeAllEmit($event)\"\n (keydown)=\"onSelectAllCheckboxKeyDown($event)\"\n >\n <po-item-list\n [p-selected]=\"checkboxAllValue\"\n p-type=\"check\"\n [p-label]=\"literals.selectAll\"\n p-value=\"selectAll\"\n [p-checkbox-value]=\"checkboxAllValue\"\n [p-size]=\"size\"\n >\n </po-item-list>\n </li>\n }\n @for (item of items; track item) {\n <li\n [class.po-listbox-item]=\"visible\"\n [class.po-listbox-item-type-check]=\"type === 'check'\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"\n returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false || item.options\n \"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.options) {\n <label class=\"po-combo-item-title\">\n {{ item.label }}\n </label>\n }\n @if (returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-checkbox-value]=\"isSelectedItem(item)\"\n [attr.data-item-list]=\"formatItemList(item)\"\n [p-label]=\"item[fieldLabel]\"\n [p-value]=\"item[fieldValue]\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n [p-active-tabs]=\"item.active\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.danger || item.type === 'danger'\"\n [p-icon]=\"item.icon\"\n [p-type]=\"type\"\n [p-item]=\"item\"\n [p-tab-hide]=\"item.hide\"\n [p-is-tabs]=\"isTabs\"\n [p-field-value]=\"fieldValue\"\n [p-field-label]=\"fieldLabel\"\n [p-template]=\"template\"\n [p-template-context]=\"item\"\n (p-selectcheckbox-item)=\"checkboxClicked($event)\"\n (p-selectcombo-item)=\"optionClicked(item)\"\n (p-emit-item-tabs)=\"onSelectTabs($event)\"\n (p-activated-tabs)=\"onActivatedTabs($event)\"\n [p-search-value]=\"searchValue\"\n [p-filter-mode]=\"filterMode\"\n [p-filtering]=\"isFiltering\"\n [p-size]=\"size\"\n [p-should-mark-letter]=\"shouldMarkLetters\"\n [p-compare-cache]=\"compareCache\"\n [p-combo-service]=\"comboService\"\n [p-keys-label]=\"keysLabel\"\n ></po-item-list>\n }\n </li>\n }\n\n @if (footerActionListbox) {\n @if (placeholderListbox) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ placeholderListbox }}</span>\n </div>\n }\n\n @if (!placeholderListbox && !items.length) {\n <div class=\"po-item-list\" aria-hidden=\"true\">\n <span>{{ literals.noItems }}</span>\n </div>\n }\n\n <li\n class=\"po-listbox-item\"\n (click)=\"handleFooterActionListbox()\"\n (keydown)=\"onKeyDown({ type: 'footerAction' }, $event)\"\n cdkOption=\"footerActionListbox\"\n >\n <po-item-list [p-label]=\"literals.footerActionListbox\" p-separator [p-size]=\"size\" />\n </li>\n }\n </ul>\n } @else {\n @if (!items.length && !isServerSearching && type !== 'action' && !footerActionListbox) {\n <div class=\"po-listbox-container-no-data po-text-center\">\n <span> {{ literals.noItems }}</span>\n </div>\n }\n }\n\n @if (listboxSubitems) {\n <ul cdkListbox class=\"po-listbox-list po-listbox-dropdown\">\n @if (!currentGroup) {\n @for (item of currentItems; track item) {\n <li\n #listboxItem\n [class.po-listbox-item]=\"visible\"\n [cdkOption]=\"item[fieldLabel]\"\n [cdkOptionDisabled]=\"returnBooleanValue(item, 'disabled') || returnBooleanValue(item, 'visible') === false\"\n [attr.aria-selected]=\"isSelectedItem(item) || item.selected\"\n (click)=\"onSelectItem(item, $event)\"\n (keydown)=\"onKeyDown(item, $event)\"\n >\n @if (item.subItems?.length) {\n <po-item-list\n [p-label]=\"item.label\"\n [p-item]=\"item\"\n [p-separator]=\"item.separator || separator\"\n [p-icon]=\"'po-icon-arrow-right'\"\n [p-icon-position]=\"'right'\"\n >\n </po-item-list>\n } @else if (!item.subItems?.length && returnBooleanValue(item, 'visible') !== false) {\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(item, 'disabled')\"\n [p-visible]=\"returnBooleanValue(item, 'visible')\"\n [p-label]=\"item[fieldLabel]\"\n [p-item]=\"item\"\n [p-icon]=\"item.icon\"\n [p-separator]=\"item.separator || separator\"\n [p-danger]=\"item.type === 'danger'\"\n [p-selected]=\"isSelectedItem(item) || item.selected\"\n >\n </po-item-list>\n }\n </li>\n }\n }\n\n @if (currentGroup) {\n <li\n #listboxGroupHeader\n class=\"po-listbox-group-header\"\n [cdkOption]=\"'back-option'\"\n [attr.aria-label]=\"literals?.backToPreviousGroup\"\n (click)=\"goBack($event)\"\n (keydown)=\"onKeydownGoBack($event)\"\n >\n <po-icon class=\"po-field-icon\" [p-icon]=\"'po-icon-arrow-left'\"></po-icon>\n <po-tag [p-value]=\"currentGroup.label\"></po-tag>\n </li>\n\n @for (subItem of currentItems; track subItem.label) {\n @if (subItem.subItems?.length) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n [p-label]=\"subItem.label\"\n [p-item]=\"subItem\"\n [p-separator]=\"subItem.separator || separator\"\n [p-icon]=\"'po-icon-arrow-right'\"\n [p-icon-position]=\"'right'\"\n >\n </po-item-list>\n </li>\n } @else if (!subItem.subItems?.length && returnBooleanValue(subItem, 'visible') !== false) {\n <li\n [cdkOption]=\"subItem[fieldLabel]\"\n (click)=\"onSelectItem(subItem, $event)\"\n (keydown)=\"onKeyDown(subItem, $event)\"\n >\n <po-item-list\n class=\"po-listbox-item-sub\"\n [p-disabled]=\"returnBooleanValue(subItem, 'disabled')\"\n [p-visible]=\"returnBooleanValue(subItem, 'visible')\"\n [p-label]=\"subItem[fieldLabel]\"\n [p-item]=\"subItem\"\n [p-icon]=\"subItem.icon\"\n [p-separator]=\"subItem.separator || separator\"\n [p-danger]=\"subItem.type === 'danger'\"\n [p-selected]=\"isSelectedItem(subItem) || subItem.selected\"\n >\n </po-item-list>\n </li>\n }\n }\n }\n </ul>\n }\n\n @if (isServerSearching && type !== 'action') {\n <div [class.po-listbox-container-loading-default]=\"!infiniteLoading\">\n <po-loading-overlay [p-size]=\"getSizeLoading()\" [p-text]=\"getTextLoading()\"></po-loading-overlay>\n </div>\n }\n</div>\n" }]
|
|
8379
8493
|
}], ctorParameters: () => [], propDecorators: { listbox: [{
|
|
8380
8494
|
type: ViewChild,
|
|
8381
8495
|
args: ['listbox', { static: true }]
|
|
8382
8496
|
}], listboxItemList: [{
|
|
8383
8497
|
type: ViewChild,
|
|
8384
8498
|
args: ['listboxItemList', { static: false }]
|
|
8499
|
+
}], listboxGroupHeader: [{
|
|
8500
|
+
type: ViewChild,
|
|
8501
|
+
args: ['listboxGroupHeader']
|
|
8385
8502
|
}], searchElement: [{
|
|
8386
8503
|
type: ViewChild,
|
|
8387
8504
|
args: ['searchElement']
|
|
8388
8505
|
}], popupHeaderContainer: [{
|
|
8389
8506
|
type: ViewChild,
|
|
8390
8507
|
args: ['popupHeaderContainer']
|
|
8508
|
+
}], listboxItems: [{
|
|
8509
|
+
type: ViewChildren,
|
|
8510
|
+
args: ['listboxItem']
|
|
8391
8511
|
}] } });
|
|
8392
8512
|
|
|
8393
8513
|
/**
|
|
@@ -8433,11 +8553,11 @@ class PoPopupComponent extends PoPopupBaseComponent {
|
|
|
8433
8553
|
}
|
|
8434
8554
|
onActionClick(popupAction) {
|
|
8435
8555
|
const actionNoDisabled = popupAction && !this.returnBooleanValue(popupAction, 'disabled');
|
|
8436
|
-
if (popupAction
|
|
8556
|
+
if (popupAction?.action && actionNoDisabled) {
|
|
8437
8557
|
this.close();
|
|
8438
8558
|
popupAction.action(this.param || popupAction);
|
|
8439
8559
|
}
|
|
8440
|
-
if (popupAction
|
|
8560
|
+
if (popupAction?.url && actionNoDisabled) {
|
|
8441
8561
|
this.close();
|
|
8442
8562
|
return this.openUrl(popupAction.url);
|
|
8443
8563
|
}
|
|
@@ -8470,7 +8590,13 @@ class PoPopupComponent extends PoPopupBaseComponent {
|
|
|
8470
8590
|
this.showPopup && this.oldTarget === this.target ? this.close() : this.open(param);
|
|
8471
8591
|
}
|
|
8472
8592
|
onClickItem(item) {
|
|
8473
|
-
|
|
8593
|
+
if (!item.goBack) {
|
|
8594
|
+
this.clickItem.emit(item);
|
|
8595
|
+
}
|
|
8596
|
+
if (item.subItems || item.goBack) {
|
|
8597
|
+
this.changeDetector.detectChanges();
|
|
8598
|
+
this.validateInitialContent();
|
|
8599
|
+
}
|
|
8474
8600
|
}
|
|
8475
8601
|
checkAllActionIsInvisible() {
|
|
8476
8602
|
if (this.actions.every(item => item.visible === false)) {
|
|
@@ -8550,11 +8676,11 @@ class PoPopupComponent extends PoPopupBaseComponent {
|
|
|
8550
8676
|
}
|
|
8551
8677
|
}
|
|
8552
8678
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
8553
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPopupComponent, isStandalone: false, selector: "po-popup", providers: [PoControlPositionService], viewQueries: [{ propertyName: "popupRef", first: true, predicate: ["popupRef"], descendants: true, read: ElementRef }, { propertyName: "listbox", first: true, predicate: ["listbox"], descendants: true, read: ElementRef }, { propertyName: "poListBoxRef", first: true, predicate: ["poListBoxRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (showPopup && actions.length && !checkAllActionIsInvisible()) {\n <div #popupRef class=\"po-popup\">\n @if (!hideArrow) {\n <div class=\"po-popup-arrow po-arrow-{{ arrowDirection }}\"></div>\n }\n <div class=\"po-popup-container\">\n <po-listbox\n #listbox\n #poListBoxRef\n p-type=\"action\"\n [p-items]=\"actions\"\n [p-param]=\"param\"\n [p-size]=\"size\"\n (p-close)=\"close()\"\n (p-click-item)=\"onClickItem($event)\"\n >\n <ng-content p-popup-header-template select=\"[p-popup-header-template]\"></ng-content>\n </po-listbox>\n </div>\n </div>\n}\n", dependencies: [{ kind: "component", type: PoListBoxComponent, selector: "po-listbox" }] });
|
|
8679
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoPopupComponent, isStandalone: false, selector: "po-popup", providers: [PoControlPositionService], viewQueries: [{ propertyName: "popupRef", first: true, predicate: ["popupRef"], descendants: true, read: ElementRef }, { propertyName: "listbox", first: true, predicate: ["listbox"], descendants: true, read: ElementRef }, { propertyName: "poListBoxRef", first: true, predicate: ["poListBoxRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (showPopup && actions.length && !checkAllActionIsInvisible()) {\n <div #popupRef class=\"po-popup\">\n @if (!hideArrow) {\n <div class=\"po-popup-arrow po-arrow-{{ arrowDirection }}\"></div>\n }\n <div class=\"po-popup-container\">\n <po-listbox\n #listbox\n #poListBoxRef\n p-type=\"action\"\n [p-items]=\"actions\"\n [p-param]=\"param\"\n [p-size]=\"size\"\n [p-listbox-subitems]=\"listboxSubitems\"\n (p-close)=\"close()\"\n (p-click-item)=\"onClickItem($event)\"\n >\n <ng-content p-popup-header-template select=\"[p-popup-header-template]\"></ng-content>\n </po-listbox>\n </div>\n </div>\n}\n", dependencies: [{ kind: "component", type: PoListBoxComponent, selector: "po-listbox" }] });
|
|
8554
8680
|
}
|
|
8555
8681
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoPopupComponent, decorators: [{
|
|
8556
8682
|
type: Component,
|
|
8557
|
-
args: [{ selector: 'po-popup', providers: [PoControlPositionService], standalone: false, template: "@if (showPopup && actions.length && !checkAllActionIsInvisible()) {\n <div #popupRef class=\"po-popup\">\n @if (!hideArrow) {\n <div class=\"po-popup-arrow po-arrow-{{ arrowDirection }}\"></div>\n }\n <div class=\"po-popup-container\">\n <po-listbox\n #listbox\n #poListBoxRef\n p-type=\"action\"\n [p-items]=\"actions\"\n [p-param]=\"param\"\n [p-size]=\"size\"\n (p-close)=\"close()\"\n (p-click-item)=\"onClickItem($event)\"\n >\n <ng-content p-popup-header-template select=\"[p-popup-header-template]\"></ng-content>\n </po-listbox>\n </div>\n </div>\n}\n" }]
|
|
8683
|
+
args: [{ selector: 'po-popup', providers: [PoControlPositionService], standalone: false, template: "@if (showPopup && actions.length && !checkAllActionIsInvisible()) {\n <div #popupRef class=\"po-popup\">\n @if (!hideArrow) {\n <div class=\"po-popup-arrow po-arrow-{{ arrowDirection }}\"></div>\n }\n <div class=\"po-popup-container\">\n <po-listbox\n #listbox\n #poListBoxRef\n p-type=\"action\"\n [p-items]=\"actions\"\n [p-param]=\"param\"\n [p-size]=\"size\"\n [p-listbox-subitems]=\"listboxSubitems\"\n (p-close)=\"close()\"\n (p-click-item)=\"onClickItem($event)\"\n >\n <ng-content p-popup-header-template select=\"[p-popup-header-template]\"></ng-content>\n </po-listbox>\n </div>\n </div>\n}\n" }]
|
|
8558
8684
|
}], propDecorators: { popupRef: [{
|
|
8559
8685
|
type: ViewChild,
|
|
8560
8686
|
args: ['popupRef', { read: ElementRef }]
|
|
@@ -8947,15 +9073,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
8947
9073
|
|
|
8948
9074
|
class PoListBoxModule {
|
|
8949
9075
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8950
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxModule, declarations: [PoListBoxComponent, PoItemListComponent, PoSearchListComponent], imports: [CommonModule, PoCheckboxModule, PoIconModule, PoLoadingModule, CdkListboxModule], exports: [PoListBoxComponent] });
|
|
8951
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxModule, imports: [CommonModule, PoCheckboxModule, PoIconModule, PoLoadingModule, CdkListboxModule] });
|
|
9076
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxModule, declarations: [PoListBoxComponent, PoItemListComponent, PoSearchListComponent], imports: [CommonModule, PoCheckboxModule, PoIconModule, PoLoadingModule, PoTagModule, CdkListboxModule], exports: [PoListBoxComponent] });
|
|
9077
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxModule, imports: [CommonModule, PoCheckboxModule, PoIconModule, PoLoadingModule, PoTagModule, CdkListboxModule] });
|
|
8952
9078
|
}
|
|
8953
9079
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoListBoxModule, decorators: [{
|
|
8954
9080
|
type: NgModule,
|
|
8955
9081
|
args: [{
|
|
8956
9082
|
declarations: [PoListBoxComponent, PoItemListComponent, PoSearchListComponent],
|
|
8957
9083
|
exports: [PoListBoxComponent],
|
|
8958
|
-
imports: [CommonModule, PoCheckboxModule, PoIconModule, PoLoadingModule, CdkListboxModule]
|
|
9084
|
+
imports: [CommonModule, PoCheckboxModule, PoIconModule, PoLoadingModule, PoTagModule, CdkListboxModule]
|
|
8959
9085
|
}]
|
|
8960
9086
|
}] });
|
|
8961
9087
|
|
|
@@ -13205,6 +13331,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImpor
|
|
|
13205
13331
|
* <file name="sample-po-dropdown-basic/sample-po-dropdown-basic.component.ts"> </file>
|
|
13206
13332
|
* </example>
|
|
13207
13333
|
*
|
|
13334
|
+
* <example name="po-dropdown-subitems" title="PO Dropdown Subitems" >
|
|
13335
|
+
* <file name="sample-po-dropdown-subitems/sample-po-dropdown-subitems.component.html"> </file>
|
|
13336
|
+
* <file name="sample-po-dropdown-subitems/sample-po-dropdown-subitems.component.ts"> </file>
|
|
13337
|
+
* </example>
|
|
13338
|
+
*
|
|
13208
13339
|
* <example name="po-dropdown-labs" title="PO Dropdown Labs" >
|
|
13209
13340
|
* <file name="sample-po-dropdown-labs/sample-po-dropdown-labs.component.html"> </file>
|
|
13210
13341
|
* <file name="sample-po-dropdown-labs/sample-po-dropdown-labs.component.ts"> </file>
|
|
@@ -13231,7 +13362,7 @@ class PoDropdownComponent extends PoDropdownBaseComponent {
|
|
|
13231
13362
|
this.dropdownRef && !this.open && !this.disabled ? this.showDropdown() : this.hideDropdown();
|
|
13232
13363
|
}
|
|
13233
13364
|
checkClickArea(event) {
|
|
13234
|
-
return this.dropdownRef
|
|
13365
|
+
return this.dropdownRef?.nativeElement.contains(event.target);
|
|
13235
13366
|
}
|
|
13236
13367
|
hideDropdown() {
|
|
13237
13368
|
this.icon = 'ICON_ARROW_DOWN';
|
|
@@ -13281,11 +13412,11 @@ class PoDropdownComponent extends PoDropdownBaseComponent {
|
|
|
13281
13412
|
}
|
|
13282
13413
|
}
|
|
13283
13414
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
13284
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.7", type: PoDropdownComponent, isStandalone: false, selector: "po-dropdown", viewQueries: [{ propertyName: "dropdownRef", first: true, predicate: ["dropdownRef"], descendants: true, read: ElementRef, static: true }, { propertyName: "popupRef", first: true, predicate: ["popupRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n #dropdownRef\n class=\"po-dropdown\"\n [class.po-dropdown-aa]=\"size === 'small'\"\n [attr.disabled]=\"disabled\"\n tabindex=\"{{ disabled ? -1 : 0 }}\"\n (click)=\"toggleDropdown()\"\n (keydown)=\"onKeyDown($event)\"\n>\n <div\n class=\"po-dropdown-button\"\n [class.po-dropdown-button-aa]=\"size === 'small'\"\n [ngClass]=\"{ 'po-dropdown-button-disabled': disabled, 'po-dropdown-button-open': open }\"\n >\n <span>{{ label }}</span>\n <po-icon class=\"po-dropdown-icon\" [class.po-dropdown-icon-aa]=\"size === 'small'\" [p-icon]=\"icon\"></po-icon>\n </div>\n</div>\n\n<po-popup\n #popupRef\n p-hide-arrow\n p-is-corner-align\n p-position=\"bottom-left\"\n [p-actions]=\"actions\"\n [p-custom-positions]=\"['bottom-left', 'top-left']\"\n [p-size]=\"size\"\n [p-target]=\"dropdownRef\"\n>\n</po-popup>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PoPopupComponent, selector: "po-popup" }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
13415
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.7", type: PoDropdownComponent, isStandalone: false, selector: "po-dropdown", viewQueries: [{ propertyName: "dropdownRef", first: true, predicate: ["dropdownRef"], descendants: true, read: ElementRef, static: true }, { propertyName: "popupRef", first: true, predicate: ["popupRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n #dropdownRef\n class=\"po-dropdown\"\n [class.po-dropdown-aa]=\"size === 'small'\"\n [attr.disabled]=\"disabled\"\n tabindex=\"{{ disabled ? -1 : 0 }}\"\n (click)=\"toggleDropdown()\"\n (keydown)=\"onKeyDown($event)\"\n>\n <div\n class=\"po-dropdown-button\"\n [class.po-dropdown-button-aa]=\"size === 'small'\"\n [ngClass]=\"{ 'po-dropdown-button-disabled': disabled, 'po-dropdown-button-open': open }\"\n >\n <span>{{ label }}</span>\n <po-icon class=\"po-dropdown-icon\" [class.po-dropdown-icon-aa]=\"size === 'small'\" [p-icon]=\"icon\"></po-icon>\n </div>\n</div>\n\n<po-popup\n #popupRef\n p-hide-arrow\n p-is-corner-align\n p-position=\"bottom-left\"\n [p-actions]=\"actions\"\n [p-custom-positions]=\"['bottom-left', 'top-left']\"\n [p-size]=\"size\"\n [p-target]=\"dropdownRef\"\n [p-listbox-subitems]=\"true\"\n>\n</po-popup>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: PoPopupComponent, selector: "po-popup" }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
13285
13416
|
}
|
|
13286
13417
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoDropdownComponent, decorators: [{
|
|
13287
13418
|
type: Component,
|
|
13288
|
-
args: [{ selector: 'po-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div\n #dropdownRef\n class=\"po-dropdown\"\n [class.po-dropdown-aa]=\"size === 'small'\"\n [attr.disabled]=\"disabled\"\n tabindex=\"{{ disabled ? -1 : 0 }}\"\n (click)=\"toggleDropdown()\"\n (keydown)=\"onKeyDown($event)\"\n>\n <div\n class=\"po-dropdown-button\"\n [class.po-dropdown-button-aa]=\"size === 'small'\"\n [ngClass]=\"{ 'po-dropdown-button-disabled': disabled, 'po-dropdown-button-open': open }\"\n >\n <span>{{ label }}</span>\n <po-icon class=\"po-dropdown-icon\" [class.po-dropdown-icon-aa]=\"size === 'small'\" [p-icon]=\"icon\"></po-icon>\n </div>\n</div>\n\n<po-popup\n #popupRef\n p-hide-arrow\n p-is-corner-align\n p-position=\"bottom-left\"\n [p-actions]=\"actions\"\n [p-custom-positions]=\"['bottom-left', 'top-left']\"\n [p-size]=\"size\"\n [p-target]=\"dropdownRef\"\n>\n</po-popup>\n" }]
|
|
13419
|
+
args: [{ selector: 'po-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div\n #dropdownRef\n class=\"po-dropdown\"\n [class.po-dropdown-aa]=\"size === 'small'\"\n [attr.disabled]=\"disabled\"\n tabindex=\"{{ disabled ? -1 : 0 }}\"\n (click)=\"toggleDropdown()\"\n (keydown)=\"onKeyDown($event)\"\n>\n <div\n class=\"po-dropdown-button\"\n [class.po-dropdown-button-aa]=\"size === 'small'\"\n [ngClass]=\"{ 'po-dropdown-button-disabled': disabled, 'po-dropdown-button-open': open }\"\n >\n <span>{{ label }}</span>\n <po-icon class=\"po-dropdown-icon\" [class.po-dropdown-icon-aa]=\"size === 'small'\" [p-icon]=\"icon\"></po-icon>\n </div>\n</div>\n\n<po-popup\n #popupRef\n p-hide-arrow\n p-is-corner-align\n p-position=\"bottom-left\"\n [p-actions]=\"actions\"\n [p-custom-positions]=\"['bottom-left', 'top-left']\"\n [p-size]=\"size\"\n [p-target]=\"dropdownRef\"\n [p-listbox-subitems]=\"true\"\n>\n</po-popup>\n" }]
|
|
13289
13420
|
}], propDecorators: { dropdownRef: [{
|
|
13290
13421
|
type: ViewChild,
|
|
13291
13422
|
args: ['dropdownRef', { read: ElementRef, static: true }]
|
|
@@ -17395,11 +17526,11 @@ class PoModalComponent extends PoModalBaseComponent {
|
|
|
17395
17526
|
this.modalContent.nativeElement.querySelector(this.focusableElements) || this.modalContent.nativeElement;
|
|
17396
17527
|
}
|
|
17397
17528
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
17398
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoModalComponent, isStandalone: false, selector: "po-modal", queries: [{ propertyName: "modalFooter", first: true, predicate: PoModalFooterComponent, descendants: true }], viewQueries: [{ propertyName: "modalContent", first: true, predicate: ["modalContent"], descendants: true, read: ElementRef }, { propertyName: "modalContainer", first: true, predicate: ["modalContainer"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "@if (!isHidden) {\n <div #modalContainer class=\"po-modal\" tabindex=\"0\" (keydown.esc)=\"closeModalOnEscapeKey($event)\">\n <div class=\"po-modal-overlay\" (mousedown)=\"onClickOut($event)\"></div>\n <div class=\"po-modal-container po-pb-2 po-pt-2\">\n <div class=\"po-modal-vertical-align\">\n <div #modalContent class=\"po-modal-content po-modal-{{ size }}\" tabindex=\"-1\">\n <div class=\"po-modal-header\">\n <div class=\"po-modal-title po-text-ellipsis\">\n @if (icon) {\n <po-icon [p-icon]=\"icon\"></po-icon>\n }\n <div class=\"po-text-ellipsis\">\n {{ title }}\n </div>\n </div>\n @if (!hideClose) {\n <po-button\n [p-aria-label]=\"literals.close\"\n p-icon=\"ICON_CLOSE\"\n (p-click)=\"close(true)\"\n p-kind=\"tertiary\"\n [p-size]=\"componentsSize\"\n >\n </po-button>\n }\n </div>\n <div class=\"po-modal-body\">\n <ng-content></ng-content>\n </div>\n @if (modalFooter) {\n <ng-content select=\"po-modal-footer\"></ng-content>\n } @else {\n <po-modal-footer>\n <div class=\"po-modal-footer-basic\">\n @if (secondaryAction) {\n <po-button\n [p-danger]=\"getSecondaryActionButtonDanger()\"\n [p-disabled]=\"secondaryAction.disabled\"\n [p-label]=\"secondaryAction.label\"\n [p-loading]=\"secondaryAction.loading\"\n p-kind=\"secondary\"\n [p-size]=\"componentsSize\"\n (p-click)=\"secondaryAction.action()\"\n >\n </po-button>\n }\n <po-button\n class=\"po-button-modal-first-action\"\n [p-danger]=\"primaryAction.danger\"\n [p-disabled]=\"primaryAction.disabled\"\n [p-label]=\"primaryAction.label\"\n [p-loading]=\"primaryAction.loading\"\n p-kind=\"primary\"\n [p-size]=\"componentsSize\"\n (p-click)=\"primaryAction.action()\"\n >\n </po-button>\n </div>\n </po-modal-footer>\n }\n </div>\n </div>\n </div>\n </div>\n}\n", dependencies: [{ kind: "component", type: PoButtonComponent, selector: "po-button" }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoModalFooterComponent, selector: "po-modal-footer", inputs: ["p-disabled-align"] }] });
|
|
17529
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.7", type: PoModalComponent, isStandalone: false, selector: "po-modal", queries: [{ propertyName: "modalFooter", first: true, predicate: PoModalFooterComponent, descendants: true }], viewQueries: [{ propertyName: "modalContent", first: true, predicate: ["modalContent"], descendants: true, read: ElementRef }, { propertyName: "modalContainer", first: true, predicate: ["modalContainer"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "@if (!isHidden) {\n <div #modalContainer class=\"po-modal\" tabindex=\"0\" (keydown.esc)=\"closeModalOnEscapeKey($event)\">\n <div class=\"po-modal-overlay\" (mousedown)=\"onClickOut($event)\"></div>\n <div class=\"po-modal-container po-pb-2 po-pt-2\">\n <div class=\"po-modal-vertical-align\">\n <div #modalContent class=\"po-modal-content po-modal-{{ size }}\" tabindex=\"-1\">\n <div class=\"po-modal-header\">\n <div class=\"po-modal-title po-text-ellipsis\">\n @if (icon) {\n <po-icon [p-icon]=\"icon\"></po-icon>\n }\n <div class=\"po-text-ellipsis\">\n {{ title }}\n </div>\n </div>\n @if (!hideClose) {\n <po-button\n [p-aria-label]=\"literals.close\"\n p-icon=\"ICON_CLOSE\"\n (p-click)=\"close(true)\"\n p-kind=\"tertiary\"\n [p-size]=\"componentsSize\"\n >\n </po-button>\n }\n </div>\n <div class=\"po-modal-body\">\n <ng-content></ng-content>\n </div>\n @if (modalFooter) {\n <ng-content select=\"po-modal-footer\"></ng-content>\n } @else {\n <po-modal-footer>\n <div class=\"po-modal-footer-basic\">\n @if (secondaryAction) {\n <po-button\n [p-danger]=\"getSecondaryActionButtonDanger()\"\n [p-disabled]=\"secondaryAction.disabled\"\n [p-icon]=\"secondaryAction.icon\"\n [p-label]=\"secondaryAction.label\"\n [p-loading]=\"secondaryAction.loading\"\n p-kind=\"secondary\"\n [p-size]=\"componentsSize\"\n (p-click)=\"secondaryAction.action()\"\n >\n </po-button>\n }\n <po-button\n class=\"po-button-modal-first-action\"\n [p-danger]=\"primaryAction.danger\"\n [p-disabled]=\"primaryAction.disabled\"\n [p-icon]=\"primaryAction.icon\"\n [p-label]=\"primaryAction.label\"\n [p-loading]=\"primaryAction.loading\"\n p-kind=\"primary\"\n [p-size]=\"componentsSize\"\n (p-click)=\"primaryAction.action()\"\n >\n </po-button>\n </div>\n </po-modal-footer>\n }\n </div>\n </div>\n </div>\n </div>\n}\n", dependencies: [{ kind: "component", type: PoButtonComponent, selector: "po-button" }, { kind: "component", type: PoIconComponent, selector: "po-icon", inputs: ["p-icon"] }, { kind: "component", type: PoModalFooterComponent, selector: "po-modal-footer", inputs: ["p-disabled-align"] }] });
|
|
17399
17530
|
}
|
|
17400
17531
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: PoModalComponent, decorators: [{
|
|
17401
17532
|
type: Component,
|
|
17402
|
-
args: [{ selector: 'po-modal', standalone: false, template: "@if (!isHidden) {\n <div #modalContainer class=\"po-modal\" tabindex=\"0\" (keydown.esc)=\"closeModalOnEscapeKey($event)\">\n <div class=\"po-modal-overlay\" (mousedown)=\"onClickOut($event)\"></div>\n <div class=\"po-modal-container po-pb-2 po-pt-2\">\n <div class=\"po-modal-vertical-align\">\n <div #modalContent class=\"po-modal-content po-modal-{{ size }}\" tabindex=\"-1\">\n <div class=\"po-modal-header\">\n <div class=\"po-modal-title po-text-ellipsis\">\n @if (icon) {\n <po-icon [p-icon]=\"icon\"></po-icon>\n }\n <div class=\"po-text-ellipsis\">\n {{ title }}\n </div>\n </div>\n @if (!hideClose) {\n <po-button\n [p-aria-label]=\"literals.close\"\n p-icon=\"ICON_CLOSE\"\n (p-click)=\"close(true)\"\n p-kind=\"tertiary\"\n [p-size]=\"componentsSize\"\n >\n </po-button>\n }\n </div>\n <div class=\"po-modal-body\">\n <ng-content></ng-content>\n </div>\n @if (modalFooter) {\n <ng-content select=\"po-modal-footer\"></ng-content>\n } @else {\n <po-modal-footer>\n <div class=\"po-modal-footer-basic\">\n @if (secondaryAction) {\n <po-button\n [p-danger]=\"getSecondaryActionButtonDanger()\"\n [p-disabled]=\"secondaryAction.disabled\"\n [p-label]=\"secondaryAction.label\"\n [p-loading]=\"secondaryAction.loading\"\n p-kind=\"secondary\"\n [p-size]=\"componentsSize\"\n (p-click)=\"secondaryAction.action()\"\n >\n </po-button>\n }\n <po-button\n class=\"po-button-modal-first-action\"\n [p-danger]=\"primaryAction.danger\"\n [p-disabled]=\"primaryAction.disabled\"\n [p-label]=\"primaryAction.label\"\n [p-loading]=\"primaryAction.loading\"\n p-kind=\"primary\"\n [p-size]=\"componentsSize\"\n (p-click)=\"primaryAction.action()\"\n >\n </po-button>\n </div>\n </po-modal-footer>\n }\n </div>\n </div>\n </div>\n </div>\n}\n" }]
|
|
17533
|
+
args: [{ selector: 'po-modal', standalone: false, template: "@if (!isHidden) {\n <div #modalContainer class=\"po-modal\" tabindex=\"0\" (keydown.esc)=\"closeModalOnEscapeKey($event)\">\n <div class=\"po-modal-overlay\" (mousedown)=\"onClickOut($event)\"></div>\n <div class=\"po-modal-container po-pb-2 po-pt-2\">\n <div class=\"po-modal-vertical-align\">\n <div #modalContent class=\"po-modal-content po-modal-{{ size }}\" tabindex=\"-1\">\n <div class=\"po-modal-header\">\n <div class=\"po-modal-title po-text-ellipsis\">\n @if (icon) {\n <po-icon [p-icon]=\"icon\"></po-icon>\n }\n <div class=\"po-text-ellipsis\">\n {{ title }}\n </div>\n </div>\n @if (!hideClose) {\n <po-button\n [p-aria-label]=\"literals.close\"\n p-icon=\"ICON_CLOSE\"\n (p-click)=\"close(true)\"\n p-kind=\"tertiary\"\n [p-size]=\"componentsSize\"\n >\n </po-button>\n }\n </div>\n <div class=\"po-modal-body\">\n <ng-content></ng-content>\n </div>\n @if (modalFooter) {\n <ng-content select=\"po-modal-footer\"></ng-content>\n } @else {\n <po-modal-footer>\n <div class=\"po-modal-footer-basic\">\n @if (secondaryAction) {\n <po-button\n [p-danger]=\"getSecondaryActionButtonDanger()\"\n [p-disabled]=\"secondaryAction.disabled\"\n [p-icon]=\"secondaryAction.icon\"\n [p-label]=\"secondaryAction.label\"\n [p-loading]=\"secondaryAction.loading\"\n p-kind=\"secondary\"\n [p-size]=\"componentsSize\"\n (p-click)=\"secondaryAction.action()\"\n >\n </po-button>\n }\n <po-button\n class=\"po-button-modal-first-action\"\n [p-danger]=\"primaryAction.danger\"\n [p-disabled]=\"primaryAction.disabled\"\n [p-icon]=\"primaryAction.icon\"\n [p-label]=\"primaryAction.label\"\n [p-loading]=\"primaryAction.loading\"\n p-kind=\"primary\"\n [p-size]=\"componentsSize\"\n (p-click)=\"primaryAction.action()\"\n >\n </po-button>\n </div>\n </po-modal-footer>\n }\n </div>\n </div>\n </div>\n </div>\n}\n" }]
|
|
17403
17534
|
}], ctorParameters: () => [], propDecorators: { modalContent: [{
|
|
17404
17535
|
type: ViewChild,
|
|
17405
17536
|
args: ['modalContent', { read: ElementRef }]
|
|
@@ -19393,6 +19524,11 @@ const poThemeDefaultDarkValues = {
|
|
|
19393
19524
|
/** SELECT */
|
|
19394
19525
|
'po-select': {
|
|
19395
19526
|
'--color-hover': 'var(--color-action-hover);'
|
|
19527
|
+
},
|
|
19528
|
+
/** DROPDOWN */
|
|
19529
|
+
'.po-listbox-group-header .po-tag': {
|
|
19530
|
+
'color': 'var(--color-neutral-light-00);',
|
|
19531
|
+
'background-color': 'var(--color-action-default);'
|
|
19396
19532
|
}
|
|
19397
19533
|
},
|
|
19398
19534
|
onRoot: {
|