primeng 19.1.0 → 19.1.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/button/button.d.ts +1 -2
- package/cascadeselect/cascadeselect.d.ts +2 -0
- package/confirmdialog/confirmdialog.d.ts +3 -3
- package/datepicker/datepicker.d.ts +6 -2
- package/fesm2022/primeng-accordion.mjs +22 -22
- package/fesm2022/primeng-animateonscroll.mjs +7 -7
- package/fesm2022/primeng-api.mjs +31 -31
- package/fesm2022/primeng-autocomplete.mjs +31 -37
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-autofocus.mjs +7 -7
- package/fesm2022/primeng-avatar.mjs +10 -10
- package/fesm2022/primeng-avatargroup.mjs +10 -10
- package/fesm2022/primeng-badge.mjs +13 -13
- package/fesm2022/primeng-base.mjs +3 -3
- package/fesm2022/primeng-basecomponent.mjs +6 -6
- package/fesm2022/primeng-blockui.mjs +10 -10
- package/fesm2022/primeng-breadcrumb.mjs +10 -10
- package/fesm2022/primeng-button.mjs +20 -20
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs +10 -10
- package/fesm2022/primeng-calendar.mjs +10 -10
- package/fesm2022/primeng-card.mjs +10 -10
- package/fesm2022/primeng-carousel.mjs +10 -10
- package/fesm2022/primeng-cascadeselect.mjs +24 -17
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs +10 -10
- package/fesm2022/primeng-checkbox.mjs +10 -10
- package/fesm2022/primeng-chip.mjs +10 -10
- package/fesm2022/primeng-chips.mjs +10 -10
- package/fesm2022/primeng-colorpicker.mjs +10 -10
- package/fesm2022/primeng-config.mjs +9 -7
- package/fesm2022/primeng-config.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +11 -11
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +12 -12
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +14 -14
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +10 -10
- package/fesm2022/primeng-datepicker.mjs +35 -17
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-defer.mjs +7 -7
- package/fesm2022/primeng-dialog.mjs +10 -10
- package/fesm2022/primeng-divider.mjs +10 -10
- package/fesm2022/primeng-dock.mjs +10 -10
- package/fesm2022/primeng-dragdrop.mjs +10 -10
- package/fesm2022/primeng-drawer.mjs +10 -10
- package/fesm2022/primeng-dropdown.mjs +13 -13
- package/fesm2022/primeng-dynamicdialog.mjs +21 -17
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +10 -10
- package/fesm2022/primeng-fieldset.mjs +10 -10
- package/fesm2022/primeng-fileupload.mjs +15 -11
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs +10 -10
- package/fesm2022/primeng-fluid.mjs +10 -10
- package/fesm2022/primeng-focustrap.mjs +7 -7
- package/fesm2022/primeng-galleria.mjs +22 -22
- package/fesm2022/primeng-iconfield.mjs +10 -10
- package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
- package/fesm2022/primeng-icons-angledown.mjs +3 -3
- package/fesm2022/primeng-icons-angleleft.mjs +3 -3
- package/fesm2022/primeng-icons-angleright.mjs +3 -3
- package/fesm2022/primeng-icons-angleup.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
- package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
- package/fesm2022/primeng-icons-arrowright.mjs +3 -3
- package/fesm2022/primeng-icons-arrowup.mjs +3 -3
- package/fesm2022/primeng-icons-ban.mjs +3 -3
- package/fesm2022/primeng-icons-bars.mjs +3 -3
- package/fesm2022/primeng-icons-baseicon.mjs +6 -6
- package/fesm2022/primeng-icons-blank.mjs +3 -3
- package/fesm2022/primeng-icons-calendar.mjs +3 -3
- package/fesm2022/primeng-icons-caretleft.mjs +3 -3
- package/fesm2022/primeng-icons-caretright.mjs +3 -3
- package/fesm2022/primeng-icons-check.mjs +3 -3
- package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
- package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
- package/fesm2022/primeng-icons-chevronright.mjs +3 -3
- package/fesm2022/primeng-icons-chevronup.mjs +3 -3
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
- package/fesm2022/primeng-icons-eye.mjs +3 -3
- package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
- package/fesm2022/primeng-icons-filter.mjs +3 -3
- package/fesm2022/primeng-icons-filterslash.mjs +3 -3
- package/fesm2022/primeng-icons-home.mjs +3 -3
- package/fesm2022/primeng-icons-infocircle.mjs +3 -3
- package/fesm2022/primeng-icons-minus.mjs +3 -3
- package/fesm2022/primeng-icons-pencil.mjs +3 -3
- package/fesm2022/primeng-icons-plus.mjs +3 -3
- package/fesm2022/primeng-icons-refresh.mjs +3 -3
- package/fesm2022/primeng-icons-search.mjs +3 -3
- package/fesm2022/primeng-icons-searchminus.mjs +3 -3
- package/fesm2022/primeng-icons-searchplus.mjs +3 -3
- package/fesm2022/primeng-icons-sortalt.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
- package/fesm2022/primeng-icons-spinner.mjs +3 -3
- package/fesm2022/primeng-icons-star.mjs +3 -3
- package/fesm2022/primeng-icons-starfill.mjs +3 -3
- package/fesm2022/primeng-icons-thlarge.mjs +3 -3
- package/fesm2022/primeng-icons-times.mjs +3 -3
- package/fesm2022/primeng-icons-timescircle.mjs +3 -3
- package/fesm2022/primeng-icons-trash.mjs +3 -3
- package/fesm2022/primeng-icons-undo.mjs +3 -3
- package/fesm2022/primeng-icons-upload.mjs +3 -3
- package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
- package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
- package/fesm2022/primeng-iftalabel.mjs +12 -12
- package/fesm2022/primeng-iftalabel.mjs.map +1 -1
- package/fesm2022/primeng-image.mjs +10 -10
- package/fesm2022/primeng-imagecompare.mjs +10 -10
- package/fesm2022/primeng-inplace.mjs +16 -16
- package/fesm2022/primeng-inputgroup.mjs +10 -10
- package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
- package/fesm2022/primeng-inputicon.mjs +10 -10
- package/fesm2022/primeng-inputmask.mjs +11 -10
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +30 -30
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs +10 -10
- package/fesm2022/primeng-inputswitch.mjs +10 -10
- package/fesm2022/primeng-inputtext.mjs +10 -10
- package/fesm2022/primeng-inputtextarea.mjs +10 -10
- package/fesm2022/primeng-keyfilter.mjs +7 -7
- package/fesm2022/primeng-knob.mjs +10 -10
- package/fesm2022/primeng-listbox.mjs +288 -280
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +14 -14
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +17 -17
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +17 -17
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +10 -10
- package/fesm2022/primeng-messages.mjs +10 -10
- package/fesm2022/primeng-metergroup.mjs +13 -13
- package/fesm2022/primeng-multiselect.mjs +63 -54
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +10 -10
- package/fesm2022/primeng-organizationchart.mjs +13 -13
- package/fesm2022/primeng-overlay.mjs +11 -12
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs +10 -10
- package/fesm2022/primeng-overlaypanel.mjs +11 -11
- package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
- package/fesm2022/primeng-paginator.mjs +10 -10
- package/fesm2022/primeng-panel.mjs +10 -11
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +16 -16
- package/fesm2022/primeng-password.mjs +16 -16
- package/fesm2022/primeng-picklist.mjs +29 -27
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs +12 -11
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +10 -10
- package/fesm2022/primeng-progressspinner.mjs +10 -10
- package/fesm2022/primeng-radiobutton.mjs +13 -13
- package/fesm2022/primeng-rating.mjs +10 -10
- package/fesm2022/primeng-ripple.mjs +10 -10
- package/fesm2022/primeng-scroller.mjs +20 -15
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +10 -10
- package/fesm2022/primeng-scrolltop.mjs +10 -10
- package/fesm2022/primeng-select.mjs +15 -15
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +17 -14
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-sidebar.mjs +10 -10
- package/fesm2022/primeng-skeleton.mjs +10 -10
- package/fesm2022/primeng-slider.mjs +10 -10
- package/fesm2022/primeng-speeddial.mjs +11 -11
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +17 -36
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +13 -13
- package/fesm2022/primeng-stepper.mjs +28 -28
- package/fesm2022/primeng-steps.mjs +10 -10
- package/fesm2022/primeng-styleclass.mjs +7 -7
- package/fesm2022/primeng-table.mjs +135 -180
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabmenu.mjs +10 -10
- package/fesm2022/primeng-tabs.mjs +22 -22
- package/fesm2022/primeng-tabview.mjs +13 -13
- package/fesm2022/primeng-tag.mjs +10 -10
- package/fesm2022/primeng-tag.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +13 -13
- package/fesm2022/primeng-textarea.mjs +15 -11
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +20 -17
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs +10 -10
- package/fesm2022/primeng-toast.mjs +13 -13
- package/fesm2022/primeng-togglebutton.mjs +10 -10
- package/fesm2022/primeng-toggleswitch.mjs +10 -10
- package/fesm2022/primeng-toolbar.mjs +10 -10
- package/fesm2022/primeng-tooltip.mjs +10 -10
- package/fesm2022/primeng-tree.mjs +13 -13
- package/fesm2022/primeng-treeselect.mjs +10 -10
- package/fesm2022/primeng-treetable.mjs +58 -58
- package/fesm2022/primeng-usestyle.mjs +3 -3
- package/inputnumber/inputnumber.d.ts +2 -1
- package/multiselect/multiselect.d.ts +1 -1
- package/package.json +96 -96
- package/panel/panel.d.ts +0 -1
- package/picklist/picklist.d.ts +1 -1
- package/scroller/scroller.d.ts +3 -0
- package/selectbutton/selectbutton.d.ts +1 -0
- package/splitbutton/splitbutton.d.ts +4 -6
- package/table/table.d.ts +26 -35
- package/tag/tag.d.ts +1 -1
- package/textarea/textarea.d.ts +2 -1
- package/tieredmenu/tieredmenu.d.ts +1 -1
@@ -179,10 +179,10 @@ class ListBoxStyle extends BaseStyle {
|
|
179
179
|
name = 'listbox';
|
180
180
|
theme = theme;
|
181
181
|
classes = classes;
|
182
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
183
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
182
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: ListBoxStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
183
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: ListBoxStyle });
|
184
184
|
}
|
185
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
185
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: ListBoxStyle, decorators: [{
|
186
186
|
type: Injectable
|
187
187
|
}] });
|
188
188
|
/**
|
@@ -1359,8 +1359,8 @@ class Listbox extends BaseComponent {
|
|
1359
1359
|
}
|
1360
1360
|
super.ngOnDestroy();
|
1361
1361
|
}
|
1362
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
1363
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
1362
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: Listbox, deps: [{ token: i1.FilterService }], target: i0.ɵɵFactoryTarget.Component });
|
1363
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.8", type: Listbox, isStandalone: true, selector: "p-listbox, p-listBox, p-list-box", inputs: { id: "id", searchMessage: "searchMessage", emptySelectionMessage: "emptySelectionMessage", selectionMessage: "selectionMessage", autoOptionFocus: ["autoOptionFocus", "autoOptionFocus", booleanAttribute], ariaLabel: "ariaLabel", selectOnFocus: ["selectOnFocus", "selectOnFocus", booleanAttribute], searchLocale: ["searchLocale", "searchLocale", booleanAttribute], focusOnHover: ["focusOnHover", "focusOnHover", booleanAttribute], filterMessage: "filterMessage", filterFields: "filterFields", lazy: ["lazy", "lazy", booleanAttribute], virtualScroll: ["virtualScroll", "virtualScroll", booleanAttribute], virtualScrollItemSize: ["virtualScrollItemSize", "virtualScrollItemSize", numberAttribute], virtualScrollOptions: "virtualScrollOptions", scrollHeight: "scrollHeight", tabindex: ["tabindex", "tabindex", numberAttribute], multiple: ["multiple", "multiple", booleanAttribute], style: "style", styleClass: "styleClass", listStyle: "listStyle", listStyleClass: "listStyleClass", readonly: ["readonly", "readonly", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], checkbox: ["checkbox", "checkbox", booleanAttribute], filter: ["filter", "filter", booleanAttribute], filterBy: "filterBy", filterMatchMode: "filterMatchMode", filterLocale: "filterLocale", metaKeySelection: ["metaKeySelection", "metaKeySelection", booleanAttribute], dataKey: "dataKey", showToggleAll: ["showToggleAll", "showToggleAll", booleanAttribute], optionLabel: "optionLabel", optionValue: "optionValue", optionGroupChildren: "optionGroupChildren", optionGroupLabel: "optionGroupLabel", optionDisabled: "optionDisabled", ariaFilterLabel: "ariaFilterLabel", filterPlaceHolder: "filterPlaceHolder", emptyFilterMessage: "emptyFilterMessage", emptyMessage: "emptyMessage", group: ["group", "group", booleanAttribute], options: "options", filterValue: "filterValue", selectAll: "selectAll", striped: ["striped", "striped", booleanAttribute], highlightOnSelect: ["highlightOnSelect", "highlightOnSelect", booleanAttribute], checkmark: ["checkmark", "checkmark", booleanAttribute], dragdrop: ["dragdrop", "dragdrop", booleanAttribute] }, outputs: { onChange: "onChange", onClick: "onClick", onDblClick: "onDblClick", onFilter: "onFilter", onFocus: "onFocus", onBlur: "onBlur", onSelectAllChange: "onSelectAllChange", onLazyLoad: "onLazyLoad", onDrop: "onDrop" }, providers: [
|
1364
1364
|
LISTBOX_VALUE_ACCESSOR,
|
1365
1365
|
ListBoxStyle,
|
1366
1366
|
{
|
@@ -1435,145 +1435,149 @@ class Listbox extends BaseComponent {
|
|
1435
1435
|
</ng-template>
|
1436
1436
|
</div>
|
1437
1437
|
<div [ngClass]="'p-listbox-list-container'" #container [ngStyle]="listStyle" [class]="listStyleClass" [style.max-height]="virtualScroll ? 'auto' : scrollHeight || 'auto'" [attr.tabindex]="!disabled && '0'">
|
1438
|
-
|
1439
|
-
|
1440
|
-
|
1441
|
-
|
1442
|
-
|
1443
|
-
|
1444
|
-
|
1445
|
-
|
1446
|
-
|
1447
|
-
(
|
1448
|
-
|
1449
|
-
|
1450
|
-
|
1451
|
-
|
1452
|
-
|
1453
|
-
|
1454
|
-
|
1455
|
-
|
1438
|
+
@if (hasFilter() && isEmpty()) {
|
1439
|
+
<div class="p-listbox-empty-message" [cdkDropListData]="$any([])" (cdkDropListDropped)="drop($event)" cdkDropList>
|
1440
|
+
@if (!emptyFilterTemplate && !_emptyFilterTemplate && !_emptyTemplate && !emptyTemplate) {
|
1441
|
+
{{ emptyFilterMessageText }}
|
1442
|
+
} @else {
|
1443
|
+
<ng-container #emptyFilter *ngTemplateOutlet="emptyFilterTemplate || _emptyFilterTemplate || _emptyTemplate || emptyTemplate"></ng-container>
|
1444
|
+
}
|
1445
|
+
</div>
|
1446
|
+
} @else if (!hasFilter() && isEmpty()) {
|
1447
|
+
<div class="p-listbox-empty-message" [cdkDropListData]="$any([])" (cdkDropListDropped)="drop($event)" cdkDropList>
|
1448
|
+
@if (!emptyTemplate && !_emptyTemplate) {
|
1449
|
+
{{ emptyMessage }}
|
1450
|
+
} @else {
|
1451
|
+
<ng-container #empty *ngTemplateOutlet="emptyTemplate || _emptyTemplate"></ng-container>
|
1452
|
+
}
|
1453
|
+
</div>
|
1454
|
+
} @else {
|
1455
|
+
<p-scroller
|
1456
|
+
#scroller
|
1457
|
+
*ngIf="virtualScroll"
|
1458
|
+
[items]="visibleOptions()"
|
1459
|
+
[style]="{ height: scrollHeight }"
|
1460
|
+
[itemSize]="virtualScrollItemSize"
|
1461
|
+
[autoSize]="true"
|
1462
|
+
[lazy]="lazy"
|
1463
|
+
[options]="virtualScrollOptions"
|
1464
|
+
(onLazyLoad)="onLazyLoad.emit($event)"
|
1465
|
+
[tabindex]="scrollerTabIndex"
|
1466
|
+
>
|
1467
|
+
<ng-template #content let-items let-scrollerOptions="options">
|
1468
|
+
<ng-container *ngTemplateOutlet="buildInItems; context: { $implicit: items, options: scrollerOptions }"></ng-container>
|
1456
1469
|
</ng-template>
|
1457
|
-
|
1458
|
-
|
1459
|
-
|
1460
|
-
|
1461
|
-
|
1470
|
+
@if (loaderTemplate || _loaderTemplate) {
|
1471
|
+
<ng-template #loader let-scrollerOptions="options">
|
1472
|
+
<ng-container *ngTemplateOutlet="loaderTemplate || _loaderTemplate; context: { options: scrollerOptions }"></ng-container>
|
1473
|
+
</ng-template>
|
1474
|
+
}
|
1475
|
+
</p-scroller>
|
1476
|
+
<ng-container *ngIf="!virtualScroll">
|
1477
|
+
<ng-container *ngTemplateOutlet="buildInItems; context: { $implicit: visibleOptions(), options: {} }"></ng-container>
|
1478
|
+
</ng-container>
|
1462
1479
|
|
1463
|
-
|
1464
|
-
|
1465
|
-
|
1466
|
-
|
1467
|
-
|
1468
|
-
|
1469
|
-
|
1470
|
-
|
1471
|
-
|
1472
|
-
|
1473
|
-
|
1474
|
-
|
1475
|
-
|
1476
|
-
|
1477
|
-
|
1478
|
-
|
1479
|
-
|
1480
|
-
|
1481
|
-
|
1482
|
-
|
1483
|
-
|
1484
|
-
|
1485
|
-
|
1486
|
-
|
1487
|
-
|
1488
|
-
|
1489
|
-
|
1490
|
-
|
1491
|
-
|
1492
|
-
>
|
1493
|
-
<span *ngIf="!groupTemplate && !_groupTemplate">{{ getOptionGroupLabel(option.optionGroup) }}</span>
|
1494
|
-
<ng-container *ngTemplateOutlet="groupTemplate || _groupTemplate; context: { $implicit: option.optionGroup }"></ng-container>
|
1495
|
-
</li>
|
1496
|
-
</ng-container>
|
1497
|
-
<ng-container *ngIf="!isOptionGroup(option)">
|
1498
|
-
<li
|
1499
|
-
pRipple
|
1500
|
-
class="p-listbox-option"
|
1501
|
-
role="option"
|
1502
|
-
[attr.id]="id + '_' + getOptionIndex(i, scrollerOptions)"
|
1503
|
-
[ngStyle]="{ height: scrollerOptions.itemSize + 'px' }"
|
1504
|
-
[ngClass]="{
|
1505
|
-
'p-listbox-option-selected': isSelected(option) && highlightOnSelect,
|
1506
|
-
'p-focus': focusedOptionIndex() === getOptionIndex(i, scrollerOptions),
|
1507
|
-
'p-disabled': isOptionDisabled(option)
|
1508
|
-
}"
|
1509
|
-
[attr.aria-label]="getOptionLabel(option)"
|
1510
|
-
[attr.aria-selected]="isSelected(option)"
|
1511
|
-
[attr.aria-disabled]="isOptionDisabled(option)"
|
1512
|
-
[attr.aria-setsize]="ariaSetSize"
|
1513
|
-
[attr.ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
|
1514
|
-
(click)="onOptionSelect($event, option, getOptionIndex(i, scrollerOptions))"
|
1515
|
-
(dblclick)="onOptionDoubleClick($event, option)"
|
1516
|
-
(mousedown)="onOptionMouseDown($event, getOptionIndex(i, scrollerOptions))"
|
1517
|
-
(mouseenter)="onOptionMouseEnter($event, getOptionIndex(i, scrollerOptions))"
|
1518
|
-
(touchend)="onOptionTouchEnd()"
|
1519
|
-
cdkDrag
|
1520
|
-
[cdkDragData]="option"
|
1521
|
-
[cdkDragDisabled]="!dragdrop"
|
1522
|
-
>
|
1523
|
-
<p-checkbox
|
1524
|
-
*ngIf="checkbox && multiple"
|
1525
|
-
styleClass="p-listbox-option-check-icon"
|
1526
|
-
[ngModel]="isSelected(option)"
|
1527
|
-
[readonly]="true"
|
1528
|
-
[disabled]="disabled || isOptionDisabled(option)"
|
1529
|
-
[tabindex]="-1"
|
1530
|
-
[variant]="config.inputStyle() === 'filled' || config.inputVariant() === 'filled' ? 'filled' : 'outlined'"
|
1531
|
-
[binary]="true"
|
1480
|
+
<ng-template #buildInItems let-items let-scrollerOptions="options">
|
1481
|
+
<ul
|
1482
|
+
#list
|
1483
|
+
class="p-listbox-list"
|
1484
|
+
role="listbox"
|
1485
|
+
[tabindex]="-1"
|
1486
|
+
[attr.aria-multiselectable]="true"
|
1487
|
+
[ngClass]="scrollerOptions.contentStyleClass"
|
1488
|
+
[style]="scrollerOptions.contentStyle"
|
1489
|
+
[attr.aria-activedescendant]="focused ? focusedOptionId : undefined"
|
1490
|
+
[attr.aria-label]="ariaLabel"
|
1491
|
+
[attr.aria-disabled]="disabled"
|
1492
|
+
(focus)="onListFocus($event)"
|
1493
|
+
(blur)="onListBlur($event)"
|
1494
|
+
(keydown)="onListKeyDown($event)"
|
1495
|
+
cdkDropList
|
1496
|
+
[cdkDropListData]="items"
|
1497
|
+
(cdkDropListDropped)="drop($event)"
|
1498
|
+
>
|
1499
|
+
<ng-template ngFor let-option [ngForOf]="items" let-i="index">
|
1500
|
+
<ng-container *ngIf="isOptionGroup(option)">
|
1501
|
+
<li
|
1502
|
+
[attr.id]="id + '_' + getOptionIndex(i, scrollerOptions)"
|
1503
|
+
class="p-listbox-option-group"
|
1504
|
+
[ngStyle]="{ height: scrollerOptions.itemSize + 'px' }"
|
1505
|
+
role="option"
|
1506
|
+
cdkDrag
|
1507
|
+
[cdkDragData]="option"
|
1508
|
+
[cdkDragDisabled]="!dragdrop"
|
1532
1509
|
>
|
1533
|
-
<
|
1534
|
-
|
1535
|
-
|
1536
|
-
|
1537
|
-
|
1538
|
-
|
1539
|
-
|
1540
|
-
|
1541
|
-
|
1542
|
-
|
1510
|
+
<span *ngIf="!groupTemplate && !_groupTemplate">{{ getOptionGroupLabel(option.optionGroup) }}</span>
|
1511
|
+
<ng-container *ngTemplateOutlet="groupTemplate || _groupTemplate; context: { $implicit: option.optionGroup }"></ng-container>
|
1512
|
+
</li>
|
1513
|
+
</ng-container>
|
1514
|
+
<ng-container *ngIf="!isOptionGroup(option)">
|
1515
|
+
<li
|
1516
|
+
pRipple
|
1517
|
+
class="p-listbox-option"
|
1518
|
+
role="option"
|
1519
|
+
[attr.id]="id + '_' + getOptionIndex(i, scrollerOptions)"
|
1520
|
+
[ngStyle]="{ height: scrollerOptions.itemSize + 'px' }"
|
1521
|
+
[ngClass]="{
|
1522
|
+
'p-listbox-option-selected': isSelected(option) && highlightOnSelect,
|
1523
|
+
'p-focus': focusedOptionIndex() === getOptionIndex(i, scrollerOptions),
|
1524
|
+
'p-disabled': isOptionDisabled(option)
|
1525
|
+
}"
|
1526
|
+
[attr.aria-label]="getOptionLabel(option)"
|
1527
|
+
[attr.aria-selected]="isSelected(option)"
|
1528
|
+
[attr.aria-disabled]="isOptionDisabled(option)"
|
1529
|
+
[attr.aria-setsize]="ariaSetSize"
|
1530
|
+
[attr.ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
|
1531
|
+
(click)="onOptionSelect($event, option, getOptionIndex(i, scrollerOptions))"
|
1532
|
+
(dblclick)="onOptionDoubleClick($event, option)"
|
1533
|
+
(mousedown)="onOptionMouseDown($event, getOptionIndex(i, scrollerOptions))"
|
1534
|
+
(mouseenter)="onOptionMouseEnter($event, getOptionIndex(i, scrollerOptions))"
|
1535
|
+
(touchend)="onOptionTouchEnd()"
|
1536
|
+
cdkDrag
|
1537
|
+
[cdkDragData]="option"
|
1538
|
+
[cdkDragDisabled]="!dragdrop"
|
1539
|
+
>
|
1540
|
+
<p-checkbox
|
1541
|
+
*ngIf="checkbox && multiple"
|
1542
|
+
styleClass="p-listbox-option-check-icon"
|
1543
|
+
[ngModel]="isSelected(option)"
|
1544
|
+
[readonly]="true"
|
1545
|
+
[disabled]="disabled || isOptionDisabled(option)"
|
1546
|
+
[tabindex]="-1"
|
1547
|
+
[variant]="config.inputStyle() === 'filled' || config.inputVariant() === 'filled' ? 'filled' : 'outlined'"
|
1548
|
+
[binary]="true"
|
1549
|
+
>
|
1550
|
+
<ng-container *ngIf="checkIconTemplate || _checkIconTemplate">
|
1551
|
+
<ng-template #icon>
|
1552
|
+
<ng-template *ngTemplateOutlet="checkIconTemplate || _checkIconTemplate; context: { $implicit: isSelected(option) }"></ng-template>
|
1553
|
+
</ng-template>
|
1554
|
+
</ng-container>
|
1555
|
+
</p-checkbox>
|
1556
|
+
<ng-container *ngIf="checkmark">
|
1557
|
+
<ng-container *ngIf="!checkmarkTemplate && !_checkmarkTemplate">
|
1558
|
+
<BlankIcon *ngIf="!isSelected(option)" styleClass="p-listbox-option-check-icon" />
|
1559
|
+
<CheckIcon *ngIf="isSelected(option)" styleClass="p-listbox-option-check-icon" />
|
1560
|
+
</ng-container>
|
1561
|
+
<ng-container *ngTemplateOutlet="checkmarkTemplate || _checkmarkTemplate; context: { implicit: isSelected(option) }"></ng-container>
|
1543
1562
|
</ng-container>
|
1544
|
-
<
|
1545
|
-
|
1546
|
-
|
1547
|
-
|
1548
|
-
|
1549
|
-
|
1550
|
-
|
1551
|
-
|
1552
|
-
|
1553
|
-
|
1554
|
-
|
1555
|
-
|
1556
|
-
|
1557
|
-
|
1558
|
-
|
1559
|
-
|
1560
|
-
|
1561
|
-
|
1562
|
-
@if (!emptyFilterTemplate && !_emptyFilterTemplate && !_emptyTemplate && !emptyTemplate) {
|
1563
|
-
{{ emptyFilterMessageText }}
|
1564
|
-
} @else {
|
1565
|
-
<ng-container #emptyFilter *ngTemplateOutlet="emptyFilterTemplate || _emptyFilterTemplate || _emptyTemplate || emptyTemplate"></ng-container>
|
1566
|
-
}
|
1567
|
-
</li>
|
1568
|
-
<li *ngIf="!hasFilter() && isEmpty()" class="p-listbox-empty-message" role="option">
|
1569
|
-
@if (!emptyTemplate && !_emptyTemplate) {
|
1570
|
-
{{ emptyMessage }}
|
1571
|
-
} @else {
|
1572
|
-
<ng-container #empty *ngTemplateOutlet="emptyTemplate || _emptyTemplate"></ng-container>
|
1573
|
-
}
|
1574
|
-
</li>
|
1575
|
-
</ul>
|
1576
|
-
</ng-template>
|
1563
|
+
<span *ngIf="!itemTemplate && !_itemTemplate">{{ getOptionLabel(option) }}</span>
|
1564
|
+
<ng-container
|
1565
|
+
*ngTemplateOutlet="
|
1566
|
+
itemTemplate || _itemTemplate;
|
1567
|
+
context: {
|
1568
|
+
$implicit: option,
|
1569
|
+
index: getOptionIndex(i, scrollerOptions),
|
1570
|
+
selected: isSelected(option),
|
1571
|
+
disabled: isOptionDisabled(option)
|
1572
|
+
}
|
1573
|
+
"
|
1574
|
+
></ng-container>
|
1575
|
+
</li>
|
1576
|
+
</ng-container>
|
1577
|
+
</ng-template>
|
1578
|
+
</ul>
|
1579
|
+
</ng-template>
|
1580
|
+
}
|
1577
1581
|
</div>
|
1578
1582
|
<div class="p-listbox-footer" *ngIf="footerFacet || footerTemplate || _footerTemplate">
|
1579
1583
|
<ng-content select="p-footer"></ng-content>
|
@@ -1589,7 +1593,7 @@ class Listbox extends BaseComponent {
|
|
1589
1593
|
</div>
|
1590
1594
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: Ripple, selector: "[pRipple]" }, { kind: "component", type: Scroller, selector: "p-scroller, p-virtualscroller, p-virtual-scroller, p-virtualScroller", inputs: ["id", "style", "styleClass", "tabindex", "items", "itemSize", "scrollHeight", "scrollWidth", "orientation", "step", "delay", "resizeDelay", "appendOnly", "inline", "lazy", "disabled", "loaderDisabled", "columns", "showSpacer", "showLoader", "numToleratedItems", "loading", "autoSize", "trackBy", "options"], outputs: ["onLazyLoad", "onScroll", "onScrollIndexChange"] }, { kind: "component", type: InputIcon, selector: "p-inputicon, p-inputIcon", inputs: ["styleClass"] }, { kind: "component", type: SearchIcon, selector: "SearchIcon" }, { kind: "component", type: Checkbox, selector: "p-checkbox, p-checkBox, p-check-box", inputs: ["value", "name", "disabled", "binary", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "inputStyle", "styleClass", "inputClass", "indeterminate", "size", "formControl", "checkboxIcon", "readonly", "required", "autofocus", "trueValue", "falseValue", "variant"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "component", type: CheckIcon, selector: "CheckIcon" }, { kind: "component", type: IconField, selector: "p-iconfield, p-iconField, p-icon-field", inputs: ["iconPosition", "styleClass"] }, { kind: "directive", type: InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "component", type: BlankIcon, selector: "BlankIcon" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
1591
1595
|
}
|
1592
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
1596
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: Listbox, decorators: [{
|
1593
1597
|
type: Component,
|
1594
1598
|
args: [{
|
1595
1599
|
selector: 'p-listbox, p-listBox, p-list-box',
|
@@ -1661,145 +1665,149 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
1661
1665
|
</ng-template>
|
1662
1666
|
</div>
|
1663
1667
|
<div [ngClass]="'p-listbox-list-container'" #container [ngStyle]="listStyle" [class]="listStyleClass" [style.max-height]="virtualScroll ? 'auto' : scrollHeight || 'auto'" [attr.tabindex]="!disabled && '0'">
|
1664
|
-
|
1665
|
-
|
1666
|
-
|
1667
|
-
|
1668
|
-
|
1669
|
-
|
1670
|
-
|
1671
|
-
|
1672
|
-
|
1673
|
-
(
|
1674
|
-
|
1675
|
-
|
1676
|
-
|
1677
|
-
|
1678
|
-
|
1679
|
-
|
1680
|
-
|
1681
|
-
|
1668
|
+
@if (hasFilter() && isEmpty()) {
|
1669
|
+
<div class="p-listbox-empty-message" [cdkDropListData]="$any([])" (cdkDropListDropped)="drop($event)" cdkDropList>
|
1670
|
+
@if (!emptyFilterTemplate && !_emptyFilterTemplate && !_emptyTemplate && !emptyTemplate) {
|
1671
|
+
{{ emptyFilterMessageText }}
|
1672
|
+
} @else {
|
1673
|
+
<ng-container #emptyFilter *ngTemplateOutlet="emptyFilterTemplate || _emptyFilterTemplate || _emptyTemplate || emptyTemplate"></ng-container>
|
1674
|
+
}
|
1675
|
+
</div>
|
1676
|
+
} @else if (!hasFilter() && isEmpty()) {
|
1677
|
+
<div class="p-listbox-empty-message" [cdkDropListData]="$any([])" (cdkDropListDropped)="drop($event)" cdkDropList>
|
1678
|
+
@if (!emptyTemplate && !_emptyTemplate) {
|
1679
|
+
{{ emptyMessage }}
|
1680
|
+
} @else {
|
1681
|
+
<ng-container #empty *ngTemplateOutlet="emptyTemplate || _emptyTemplate"></ng-container>
|
1682
|
+
}
|
1683
|
+
</div>
|
1684
|
+
} @else {
|
1685
|
+
<p-scroller
|
1686
|
+
#scroller
|
1687
|
+
*ngIf="virtualScroll"
|
1688
|
+
[items]="visibleOptions()"
|
1689
|
+
[style]="{ height: scrollHeight }"
|
1690
|
+
[itemSize]="virtualScrollItemSize"
|
1691
|
+
[autoSize]="true"
|
1692
|
+
[lazy]="lazy"
|
1693
|
+
[options]="virtualScrollOptions"
|
1694
|
+
(onLazyLoad)="onLazyLoad.emit($event)"
|
1695
|
+
[tabindex]="scrollerTabIndex"
|
1696
|
+
>
|
1697
|
+
<ng-template #content let-items let-scrollerOptions="options">
|
1698
|
+
<ng-container *ngTemplateOutlet="buildInItems; context: { $implicit: items, options: scrollerOptions }"></ng-container>
|
1682
1699
|
</ng-template>
|
1683
|
-
|
1684
|
-
|
1685
|
-
|
1686
|
-
|
1687
|
-
|
1700
|
+
@if (loaderTemplate || _loaderTemplate) {
|
1701
|
+
<ng-template #loader let-scrollerOptions="options">
|
1702
|
+
<ng-container *ngTemplateOutlet="loaderTemplate || _loaderTemplate; context: { options: scrollerOptions }"></ng-container>
|
1703
|
+
</ng-template>
|
1704
|
+
}
|
1705
|
+
</p-scroller>
|
1706
|
+
<ng-container *ngIf="!virtualScroll">
|
1707
|
+
<ng-container *ngTemplateOutlet="buildInItems; context: { $implicit: visibleOptions(), options: {} }"></ng-container>
|
1708
|
+
</ng-container>
|
1688
1709
|
|
1689
|
-
|
1690
|
-
|
1691
|
-
|
1692
|
-
|
1693
|
-
|
1694
|
-
|
1695
|
-
|
1696
|
-
|
1697
|
-
|
1698
|
-
|
1699
|
-
|
1700
|
-
|
1701
|
-
|
1702
|
-
|
1703
|
-
|
1704
|
-
|
1705
|
-
|
1706
|
-
|
1707
|
-
|
1708
|
-
|
1709
|
-
|
1710
|
-
|
1711
|
-
|
1712
|
-
|
1713
|
-
|
1714
|
-
|
1715
|
-
|
1716
|
-
|
1717
|
-
|
1718
|
-
>
|
1719
|
-
<span *ngIf="!groupTemplate && !_groupTemplate">{{ getOptionGroupLabel(option.optionGroup) }}</span>
|
1720
|
-
<ng-container *ngTemplateOutlet="groupTemplate || _groupTemplate; context: { $implicit: option.optionGroup }"></ng-container>
|
1721
|
-
</li>
|
1722
|
-
</ng-container>
|
1723
|
-
<ng-container *ngIf="!isOptionGroup(option)">
|
1724
|
-
<li
|
1725
|
-
pRipple
|
1726
|
-
class="p-listbox-option"
|
1727
|
-
role="option"
|
1728
|
-
[attr.id]="id + '_' + getOptionIndex(i, scrollerOptions)"
|
1729
|
-
[ngStyle]="{ height: scrollerOptions.itemSize + 'px' }"
|
1730
|
-
[ngClass]="{
|
1731
|
-
'p-listbox-option-selected': isSelected(option) && highlightOnSelect,
|
1732
|
-
'p-focus': focusedOptionIndex() === getOptionIndex(i, scrollerOptions),
|
1733
|
-
'p-disabled': isOptionDisabled(option)
|
1734
|
-
}"
|
1735
|
-
[attr.aria-label]="getOptionLabel(option)"
|
1736
|
-
[attr.aria-selected]="isSelected(option)"
|
1737
|
-
[attr.aria-disabled]="isOptionDisabled(option)"
|
1738
|
-
[attr.aria-setsize]="ariaSetSize"
|
1739
|
-
[attr.ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
|
1740
|
-
(click)="onOptionSelect($event, option, getOptionIndex(i, scrollerOptions))"
|
1741
|
-
(dblclick)="onOptionDoubleClick($event, option)"
|
1742
|
-
(mousedown)="onOptionMouseDown($event, getOptionIndex(i, scrollerOptions))"
|
1743
|
-
(mouseenter)="onOptionMouseEnter($event, getOptionIndex(i, scrollerOptions))"
|
1744
|
-
(touchend)="onOptionTouchEnd()"
|
1745
|
-
cdkDrag
|
1746
|
-
[cdkDragData]="option"
|
1747
|
-
[cdkDragDisabled]="!dragdrop"
|
1748
|
-
>
|
1749
|
-
<p-checkbox
|
1750
|
-
*ngIf="checkbox && multiple"
|
1751
|
-
styleClass="p-listbox-option-check-icon"
|
1752
|
-
[ngModel]="isSelected(option)"
|
1753
|
-
[readonly]="true"
|
1754
|
-
[disabled]="disabled || isOptionDisabled(option)"
|
1755
|
-
[tabindex]="-1"
|
1756
|
-
[variant]="config.inputStyle() === 'filled' || config.inputVariant() === 'filled' ? 'filled' : 'outlined'"
|
1757
|
-
[binary]="true"
|
1710
|
+
<ng-template #buildInItems let-items let-scrollerOptions="options">
|
1711
|
+
<ul
|
1712
|
+
#list
|
1713
|
+
class="p-listbox-list"
|
1714
|
+
role="listbox"
|
1715
|
+
[tabindex]="-1"
|
1716
|
+
[attr.aria-multiselectable]="true"
|
1717
|
+
[ngClass]="scrollerOptions.contentStyleClass"
|
1718
|
+
[style]="scrollerOptions.contentStyle"
|
1719
|
+
[attr.aria-activedescendant]="focused ? focusedOptionId : undefined"
|
1720
|
+
[attr.aria-label]="ariaLabel"
|
1721
|
+
[attr.aria-disabled]="disabled"
|
1722
|
+
(focus)="onListFocus($event)"
|
1723
|
+
(blur)="onListBlur($event)"
|
1724
|
+
(keydown)="onListKeyDown($event)"
|
1725
|
+
cdkDropList
|
1726
|
+
[cdkDropListData]="items"
|
1727
|
+
(cdkDropListDropped)="drop($event)"
|
1728
|
+
>
|
1729
|
+
<ng-template ngFor let-option [ngForOf]="items" let-i="index">
|
1730
|
+
<ng-container *ngIf="isOptionGroup(option)">
|
1731
|
+
<li
|
1732
|
+
[attr.id]="id + '_' + getOptionIndex(i, scrollerOptions)"
|
1733
|
+
class="p-listbox-option-group"
|
1734
|
+
[ngStyle]="{ height: scrollerOptions.itemSize + 'px' }"
|
1735
|
+
role="option"
|
1736
|
+
cdkDrag
|
1737
|
+
[cdkDragData]="option"
|
1738
|
+
[cdkDragDisabled]="!dragdrop"
|
1758
1739
|
>
|
1759
|
-
<
|
1760
|
-
|
1761
|
-
|
1762
|
-
|
1763
|
-
|
1764
|
-
|
1765
|
-
|
1766
|
-
|
1767
|
-
|
1768
|
-
|
1740
|
+
<span *ngIf="!groupTemplate && !_groupTemplate">{{ getOptionGroupLabel(option.optionGroup) }}</span>
|
1741
|
+
<ng-container *ngTemplateOutlet="groupTemplate || _groupTemplate; context: { $implicit: option.optionGroup }"></ng-container>
|
1742
|
+
</li>
|
1743
|
+
</ng-container>
|
1744
|
+
<ng-container *ngIf="!isOptionGroup(option)">
|
1745
|
+
<li
|
1746
|
+
pRipple
|
1747
|
+
class="p-listbox-option"
|
1748
|
+
role="option"
|
1749
|
+
[attr.id]="id + '_' + getOptionIndex(i, scrollerOptions)"
|
1750
|
+
[ngStyle]="{ height: scrollerOptions.itemSize + 'px' }"
|
1751
|
+
[ngClass]="{
|
1752
|
+
'p-listbox-option-selected': isSelected(option) && highlightOnSelect,
|
1753
|
+
'p-focus': focusedOptionIndex() === getOptionIndex(i, scrollerOptions),
|
1754
|
+
'p-disabled': isOptionDisabled(option)
|
1755
|
+
}"
|
1756
|
+
[attr.aria-label]="getOptionLabel(option)"
|
1757
|
+
[attr.aria-selected]="isSelected(option)"
|
1758
|
+
[attr.aria-disabled]="isOptionDisabled(option)"
|
1759
|
+
[attr.aria-setsize]="ariaSetSize"
|
1760
|
+
[attr.ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
|
1761
|
+
(click)="onOptionSelect($event, option, getOptionIndex(i, scrollerOptions))"
|
1762
|
+
(dblclick)="onOptionDoubleClick($event, option)"
|
1763
|
+
(mousedown)="onOptionMouseDown($event, getOptionIndex(i, scrollerOptions))"
|
1764
|
+
(mouseenter)="onOptionMouseEnter($event, getOptionIndex(i, scrollerOptions))"
|
1765
|
+
(touchend)="onOptionTouchEnd()"
|
1766
|
+
cdkDrag
|
1767
|
+
[cdkDragData]="option"
|
1768
|
+
[cdkDragDisabled]="!dragdrop"
|
1769
|
+
>
|
1770
|
+
<p-checkbox
|
1771
|
+
*ngIf="checkbox && multiple"
|
1772
|
+
styleClass="p-listbox-option-check-icon"
|
1773
|
+
[ngModel]="isSelected(option)"
|
1774
|
+
[readonly]="true"
|
1775
|
+
[disabled]="disabled || isOptionDisabled(option)"
|
1776
|
+
[tabindex]="-1"
|
1777
|
+
[variant]="config.inputStyle() === 'filled' || config.inputVariant() === 'filled' ? 'filled' : 'outlined'"
|
1778
|
+
[binary]="true"
|
1779
|
+
>
|
1780
|
+
<ng-container *ngIf="checkIconTemplate || _checkIconTemplate">
|
1781
|
+
<ng-template #icon>
|
1782
|
+
<ng-template *ngTemplateOutlet="checkIconTemplate || _checkIconTemplate; context: { $implicit: isSelected(option) }"></ng-template>
|
1783
|
+
</ng-template>
|
1784
|
+
</ng-container>
|
1785
|
+
</p-checkbox>
|
1786
|
+
<ng-container *ngIf="checkmark">
|
1787
|
+
<ng-container *ngIf="!checkmarkTemplate && !_checkmarkTemplate">
|
1788
|
+
<BlankIcon *ngIf="!isSelected(option)" styleClass="p-listbox-option-check-icon" />
|
1789
|
+
<CheckIcon *ngIf="isSelected(option)" styleClass="p-listbox-option-check-icon" />
|
1790
|
+
</ng-container>
|
1791
|
+
<ng-container *ngTemplateOutlet="checkmarkTemplate || _checkmarkTemplate; context: { implicit: isSelected(option) }"></ng-container>
|
1769
1792
|
</ng-container>
|
1770
|
-
<
|
1771
|
-
|
1772
|
-
|
1773
|
-
|
1774
|
-
|
1775
|
-
|
1776
|
-
|
1777
|
-
|
1778
|
-
|
1779
|
-
|
1780
|
-
|
1781
|
-
|
1782
|
-
|
1783
|
-
|
1784
|
-
|
1785
|
-
|
1786
|
-
|
1787
|
-
|
1788
|
-
@if (!emptyFilterTemplate && !_emptyFilterTemplate && !_emptyTemplate && !emptyTemplate) {
|
1789
|
-
{{ emptyFilterMessageText }}
|
1790
|
-
} @else {
|
1791
|
-
<ng-container #emptyFilter *ngTemplateOutlet="emptyFilterTemplate || _emptyFilterTemplate || _emptyTemplate || emptyTemplate"></ng-container>
|
1792
|
-
}
|
1793
|
-
</li>
|
1794
|
-
<li *ngIf="!hasFilter() && isEmpty()" class="p-listbox-empty-message" role="option">
|
1795
|
-
@if (!emptyTemplate && !_emptyTemplate) {
|
1796
|
-
{{ emptyMessage }}
|
1797
|
-
} @else {
|
1798
|
-
<ng-container #empty *ngTemplateOutlet="emptyTemplate || _emptyTemplate"></ng-container>
|
1799
|
-
}
|
1800
|
-
</li>
|
1801
|
-
</ul>
|
1802
|
-
</ng-template>
|
1793
|
+
<span *ngIf="!itemTemplate && !_itemTemplate">{{ getOptionLabel(option) }}</span>
|
1794
|
+
<ng-container
|
1795
|
+
*ngTemplateOutlet="
|
1796
|
+
itemTemplate || _itemTemplate;
|
1797
|
+
context: {
|
1798
|
+
$implicit: option,
|
1799
|
+
index: getOptionIndex(i, scrollerOptions),
|
1800
|
+
selected: isSelected(option),
|
1801
|
+
disabled: isOptionDisabled(option)
|
1802
|
+
}
|
1803
|
+
"
|
1804
|
+
></ng-container>
|
1805
|
+
</li>
|
1806
|
+
</ng-container>
|
1807
|
+
</ng-template>
|
1808
|
+
</ul>
|
1809
|
+
</ng-template>
|
1810
|
+
}
|
1803
1811
|
</div>
|
1804
1812
|
<div class="p-listbox-footer" *ngIf="footerFacet || footerTemplate || _footerTemplate">
|
1805
1813
|
<ng-content select="p-footer"></ng-content>
|
@@ -2028,11 +2036,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.5", ngImpor
|
|
2028
2036
|
args: [PrimeTemplate]
|
2029
2037
|
}] } });
|
2030
2038
|
class ListboxModule {
|
2031
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
2032
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.
|
2033
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.
|
2039
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: ListboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
2040
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.8", ngImport: i0, type: ListboxModule, imports: [Listbox, SharedModule], exports: [Listbox, SharedModule] });
|
2041
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: ListboxModule, imports: [Listbox, SharedModule, SharedModule] });
|
2034
2042
|
}
|
2035
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
2043
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: ListboxModule, decorators: [{
|
2036
2044
|
type: NgModule,
|
2037
2045
|
args: [{
|
2038
2046
|
imports: [Listbox, SharedModule],
|