primeng 17.14.1 → 17.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/autocomplete/autocomplete.d.ts +7 -1
- package/badge/badge.d.ts +2 -2
- package/card/card.d.ts +5 -2
- package/checkbox/checkbox.d.ts +3 -2
- package/dom/domhandler.d.ts +2 -2
- package/dropdown/dropdown.interface.d.ts +1 -1
- package/esm2022/api/filterservice.mjs +6 -1
- package/esm2022/autocomplete/autocomplete.mjs +16 -5
- package/esm2022/badge/badge.mjs +3 -3
- package/esm2022/card/card.mjs +11 -5
- package/esm2022/checkbox/checkbox.mjs +16 -7
- package/esm2022/colorpicker/colorpicker.mjs +2 -1
- package/esm2022/confirmpopup/confirmpopup.mjs +2 -2
- package/esm2022/dialog/dialog.mjs +2 -2
- package/esm2022/divider/divider.mjs +2 -2
- package/esm2022/dom/domhandler.mjs +5 -3
- package/esm2022/dropdown/dropdown.interface.mjs +1 -1
- package/esm2022/dropdown/dropdown.mjs +2 -1
- package/esm2022/editor/editor.mjs +2 -4
- package/esm2022/fileupload/fileupload.mjs +6 -6
- package/esm2022/keyfilter/keyfilter.mjs +14 -13
- package/esm2022/menubar/menubar.mjs +1 -4
- package/esm2022/multiselect/multiselect.interface.mjs +1 -1
- package/esm2022/multiselect/multiselect.mjs +74 -16
- package/esm2022/overlaypanel/overlaypanel.mjs +2 -2
- package/esm2022/speeddial/speeddial.mjs +6 -8
- package/esm2022/stepper/stepper.mjs +1 -9
- package/esm2022/table/columnfilter.interface.mjs +1 -1
- package/esm2022/table/table.mjs +57 -16
- package/esm2022/tree/tree.mjs +105 -103
- package/esm2022/treeselect/treeselect.mjs +5 -5
- package/fesm2022/primeng-api.mjs +5 -0
- package/fesm2022/primeng-api.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +15 -4
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-badge.mjs +2 -2
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs +10 -4
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-checkbox.mjs +15 -6
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-colorpicker.mjs +1 -0
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +1 -1
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +1 -1
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +2 -2
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs +4 -2
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dropdown.mjs +1 -0
- package/fesm2022/primeng-dropdown.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +1 -3
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +5 -5
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-keyfilter.mjs +13 -12
- package/fesm2022/primeng-keyfilter.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +0 -3
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +73 -15
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-overlaypanel.mjs +1 -1
- package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs +5 -7
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +0 -8
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +56 -15
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +104 -102
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +4 -4
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fileupload/fileupload.d.ts +9 -10
- package/keyfilter/keyfilter.d.ts +1 -1
- package/multiselect/multiselect.d.ts +9 -2
- package/multiselect/multiselect.interface.d.ts +28 -0
- package/package.json +53 -53
- package/resources/components/divider/divider.css +1 -1
- package/resources/components/speeddial/speeddial.css +8 -0
- package/stepper/stepper.d.ts +0 -8
- package/table/columnfilter.interface.d.ts +213 -1
- package/table/table.d.ts +9 -5
- package/treeselect/treeselect.d.ts +2 -2
@@ -22,6 +22,7 @@ import { TimesIcon } from 'primeng/icons/times';
|
|
22
22
|
import { ChevronDownIcon } from 'primeng/icons/chevrondown';
|
23
23
|
import * as i7 from 'primeng/autofocus';
|
24
24
|
import { AutoFocusModule } from 'primeng/autofocus';
|
25
|
+
import { MinusIcon } from 'primeng/icons/minus';
|
25
26
|
|
26
27
|
const MULTISELECT_VALUE_ACCESSOR = {
|
27
28
|
provide: NG_VALUE_ACCESSOR,
|
@@ -40,6 +41,7 @@ class MultiSelectItem {
|
|
40
41
|
ariaSetSize;
|
41
42
|
template;
|
42
43
|
checkIconTemplate;
|
44
|
+
itemCheckboxIconTemplate;
|
43
45
|
onClick = new EventEmitter();
|
44
46
|
onMouseEnter = new EventEmitter();
|
45
47
|
onOptionClick(event) {
|
@@ -58,7 +60,7 @@ class MultiSelectItem {
|
|
58
60
|
});
|
59
61
|
}
|
60
62
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MultiSelectItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
61
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.3.1", type: MultiSelectItem, selector: "p-multiSelectItem", inputs: { id: "id", option: "option", selected: ["selected", "selected", booleanAttribute], label: "label", disabled: ["disabled", "disabled", booleanAttribute], itemSize: ["itemSize", "itemSize", numberAttribute], focused: ["focused", "focused", booleanAttribute], ariaPosInset: "ariaPosInset", ariaSetSize: "ariaSetSize", template: "template", checkIconTemplate: "checkIconTemplate" }, outputs: { onClick: "onClick", onMouseEnter: "onMouseEnter" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
|
63
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.3.1", type: MultiSelectItem, selector: "p-multiSelectItem", inputs: { id: "id", option: "option", selected: ["selected", "selected", booleanAttribute], label: "label", disabled: ["disabled", "disabled", booleanAttribute], itemSize: ["itemSize", "itemSize", numberAttribute], focused: ["focused", "focused", booleanAttribute], ariaPosInset: "ariaPosInset", ariaSetSize: "ariaSetSize", template: "template", checkIconTemplate: "checkIconTemplate", itemCheckboxIconTemplate: "itemCheckboxIconTemplate" }, outputs: { onClick: "onClick", onMouseEnter: "onMouseEnter" }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
|
62
64
|
<li
|
63
65
|
pRipple
|
64
66
|
role="option"
|
@@ -80,9 +82,10 @@ class MultiSelectItem {
|
|
80
82
|
<div class="p-checkbox p-component">
|
81
83
|
<div class="p-checkbox-box" [ngClass]="{ 'p-highlight': selected }">
|
82
84
|
<ng-container *ngIf="selected">
|
83
|
-
<CheckIcon *ngIf="!checkIconTemplate" [styleClass]="'p-checkbox-icon'" [attr.aria-hidden]="true" />
|
85
|
+
<CheckIcon *ngIf="!checkIconTemplate || !itemCheckboxIconTemplate" [styleClass]="'p-checkbox-icon'" [attr.aria-hidden]="true" />
|
84
86
|
<span *ngIf="checkIconTemplate" class="p-checkbox-icon" [attr.aria-hidden]="true">
|
85
|
-
<ng-template *ngTemplateOutlet="checkIconTemplate"></ng-template>
|
87
|
+
<ng-template *ngTemplateOutlet="checkIconTemplate && !itemCheckboxIconTemplate"></ng-template>
|
88
|
+
<ng-template *ngTemplateOutlet="itemCheckboxIconTemplate; context: { $implicit: selected }"></ng-template>
|
86
89
|
</span>
|
87
90
|
</ng-container>
|
88
91
|
</div>
|
@@ -118,9 +121,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
118
121
|
<div class="p-checkbox p-component">
|
119
122
|
<div class="p-checkbox-box" [ngClass]="{ 'p-highlight': selected }">
|
120
123
|
<ng-container *ngIf="selected">
|
121
|
-
<CheckIcon *ngIf="!checkIconTemplate" [styleClass]="'p-checkbox-icon'" [attr.aria-hidden]="true" />
|
124
|
+
<CheckIcon *ngIf="!checkIconTemplate || !itemCheckboxIconTemplate" [styleClass]="'p-checkbox-icon'" [attr.aria-hidden]="true" />
|
122
125
|
<span *ngIf="checkIconTemplate" class="p-checkbox-icon" [attr.aria-hidden]="true">
|
123
|
-
<ng-template *ngTemplateOutlet="checkIconTemplate"></ng-template>
|
126
|
+
<ng-template *ngTemplateOutlet="checkIconTemplate && !itemCheckboxIconTemplate"></ng-template>
|
127
|
+
<ng-template *ngTemplateOutlet="itemCheckboxIconTemplate; context: { $implicit: selected }"></ng-template>
|
124
128
|
</span>
|
125
129
|
</ng-container>
|
126
130
|
</div>
|
@@ -160,6 +164,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
160
164
|
type: Input
|
161
165
|
}], checkIconTemplate: [{
|
162
166
|
type: Input
|
167
|
+
}], itemCheckboxIconTemplate: [{
|
168
|
+
type: Input
|
163
169
|
}], onClick: [{
|
164
170
|
type: Output
|
165
171
|
}], onMouseEnter: [{
|
@@ -670,6 +676,7 @@ class MultiSelect {
|
|
670
676
|
_placeholder = signal(undefined);
|
671
677
|
_itemSize;
|
672
678
|
_selectionLimit;
|
679
|
+
_disableTooltip = false;
|
673
680
|
value;
|
674
681
|
_filteredOptions;
|
675
682
|
onModelChange = () => { };
|
@@ -692,6 +699,8 @@ class MultiSelect {
|
|
692
699
|
closeIconTemplate;
|
693
700
|
clearIconTemplate;
|
694
701
|
dropdownIconTemplate;
|
702
|
+
itemCheckboxIconTemplate;
|
703
|
+
headerCheckboxIconTemplate;
|
695
704
|
headerCheckboxFocus;
|
696
705
|
filterOptions;
|
697
706
|
preventModelTouched;
|
@@ -881,6 +890,10 @@ class MultiSelect {
|
|
881
890
|
break;
|
882
891
|
case 'checkicon':
|
883
892
|
this.checkIconTemplate = item.template;
|
893
|
+
console.warn('checkicon is deprecated and will removed in v18. Use itemcheckboxicon or headercheckboxicon templates instead.');
|
894
|
+
break;
|
895
|
+
case 'headercheckboxicon':
|
896
|
+
this.headerCheckboxIconTemplate = item.template;
|
884
897
|
break;
|
885
898
|
case 'filtericon':
|
886
899
|
this.filterIconTemplate = item.template;
|
@@ -897,6 +910,9 @@ class MultiSelect {
|
|
897
910
|
case 'dropdownicon':
|
898
911
|
this.dropdownIconTemplate = item.template;
|
899
912
|
break;
|
913
|
+
case 'itemcheckboxicon':
|
914
|
+
this.itemCheckboxIconTemplate = item.template;
|
915
|
+
break;
|
900
916
|
default:
|
901
917
|
this.itemTemplate = item.template;
|
902
918
|
break;
|
@@ -1417,6 +1433,10 @@ class MultiSelect {
|
|
1417
1433
|
});
|
1418
1434
|
}
|
1419
1435
|
}
|
1436
|
+
if (this.partialSelected()) {
|
1437
|
+
this.selectedOptions = null;
|
1438
|
+
this.cd.markForCheck();
|
1439
|
+
}
|
1420
1440
|
this.onChange.emit({ originalEvent: event, value: this.value });
|
1421
1441
|
DomHandler.focus(this.headerCheckboxViewChild?.nativeElement);
|
1422
1442
|
this.headerCheckboxFocus = true;
|
@@ -1467,6 +1487,9 @@ class MultiSelect {
|
|
1467
1487
|
allSelected() {
|
1468
1488
|
return this.selectAll !== null ? this.selectAll : ObjectUtils.isNotEmpty(this.visibleOptions()) && this.visibleOptions().every((option) => this.isOptionGroup(option) || this.isOptionDisabled(option) || this.isSelected(option));
|
1469
1489
|
}
|
1490
|
+
partialSelected() {
|
1491
|
+
return this.selectedOptions && this.selectedOptions.length > 0 && this.selectedOptions.length < this.options.length;
|
1492
|
+
}
|
1470
1493
|
/**
|
1471
1494
|
* Displays the panel.
|
1472
1495
|
* @group Method
|
@@ -1546,8 +1569,13 @@ class MultiSelect {
|
|
1546
1569
|
this.updateModel(null, event);
|
1547
1570
|
this.selectedOptions = null;
|
1548
1571
|
this.onClear.emit();
|
1572
|
+
this._disableTooltip = true;
|
1549
1573
|
event.stopPropagation();
|
1550
1574
|
}
|
1575
|
+
labelContainerMouseLeave() {
|
1576
|
+
if (this._disableTooltip)
|
1577
|
+
this._disableTooltip = false;
|
1578
|
+
}
|
1551
1579
|
removeOption(optionValue, event) {
|
1552
1580
|
let value = this.modelValue().filter((val) => !ObjectUtils.equals(val, optionValue, this.equalityKey()));
|
1553
1581
|
this.updateModel(value, event);
|
@@ -1683,7 +1711,15 @@ class MultiSelect {
|
|
1683
1711
|
[autofocus]="autofocus"
|
1684
1712
|
/>
|
1685
1713
|
</div>
|
1686
|
-
<div
|
1714
|
+
<div
|
1715
|
+
class="p-multiselect-label-container"
|
1716
|
+
[pTooltip]="tooltip"
|
1717
|
+
(mouseleave)="labelContainerMouseLeave()"
|
1718
|
+
[tooltipDisabled]="_disableTooltip"
|
1719
|
+
[tooltipPosition]="tooltipPosition"
|
1720
|
+
[positionStyle]="tooltipPositionStyle"
|
1721
|
+
[tooltipStyleClass]="tooltipStyleClass"
|
1722
|
+
>
|
1687
1723
|
<div [ngClass]="labelClass">
|
1688
1724
|
<ng-container *ngIf="!selectedItemsTemplate">
|
1689
1725
|
<ng-container *ngIf="display === 'comma'">{{ label() || 'empty' }}</ng-container>
|
@@ -1776,11 +1812,17 @@ class MultiSelect {
|
|
1776
1812
|
[attr.aria-checked]="allSelected()"
|
1777
1813
|
[ngClass]="{ 'p-highlight': allSelected(), 'p-focus': headerCheckboxFocus, 'p-disabled': disabled || toggleAllDisabled }"
|
1778
1814
|
>
|
1779
|
-
<ng-container *ngIf="allSelected()">
|
1780
|
-
<
|
1815
|
+
<ng-container *ngIf="allSelected() || partialSelected()">
|
1816
|
+
<ng-container *ngIf="!checkIconTemplate && !headerCheckboxIconTemplate">
|
1817
|
+
<CheckIcon [styleClass]="'p-checkbox-icon'" *ngIf="allSelected()" [attr.aria-hidden]="true" />
|
1818
|
+
</ng-container>
|
1819
|
+
|
1781
1820
|
<span *ngIf="checkIconTemplate" class="p-checkbox-icon" [attr.aria-hidden]="true">
|
1782
1821
|
<ng-template *ngTemplateOutlet="checkIconTemplate; context: { $implicit: allSelected() }"></ng-template>
|
1783
1822
|
</span>
|
1823
|
+
<span *ngIf="headerCheckboxIconTemplate" class="p-checkbox-icon" [attr.aria-hidden]="true">
|
1824
|
+
<ng-template *ngTemplateOutlet="headerCheckboxIconTemplate; context: { $implicit: allSelected(), partialSelected: partialSelected() }"></ng-template>
|
1825
|
+
</span>
|
1784
1826
|
</ng-container>
|
1785
1827
|
</div>
|
1786
1828
|
</div>
|
@@ -1862,6 +1904,7 @@ class MultiSelect {
|
|
1862
1904
|
[disabled]="isOptionDisabled(option)"
|
1863
1905
|
[template]="itemTemplate"
|
1864
1906
|
[checkIconTemplate]="checkIconTemplate"
|
1907
|
+
[itemCheckboxIconTemplate]="itemCheckboxIconTemplate"
|
1865
1908
|
[itemSize]="scrollerOptions.itemSize"
|
1866
1909
|
[focused]="focusedOptionIndex() === getOptionIndex(i, scrollerOptions)"
|
1867
1910
|
[ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
|
@@ -1905,7 +1948,7 @@ class MultiSelect {
|
|
1905
1948
|
</ng-template>
|
1906
1949
|
</p-overlay>
|
1907
1950
|
</div>
|
1908
|
-
`, isInline: true, styles: ["@layer primeng{.p-multiselect{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-multiselect-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-multiselect-label-container{overflow:hidden;flex:1 1 auto;cursor:pointer;display:flex}.p-multiselect-label{display:block;white-space:nowrap;cursor:pointer;overflow:hidden;text-overflow:ellipsis}.p-multiselect-label-empty{overflow:hidden;visibility:hidden}.p-multiselect-token{cursor:default;display:inline-flex;align-items:center;flex:0 0 auto}.p-multiselect-token-icon{cursor:pointer}.p-multiselect-token-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100px}.p-multiselect-items-wrapper{overflow:auto}.p-multiselect-items{margin:0;padding:0;list-style-type:none}.p-multiselect-item{cursor:pointer;display:flex;align-items:center;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-multiselect-header{display:flex;align-items:center;justify-content:space-between}.p-multiselect-filter-container{position:relative;flex:1 1 auto}.p-multiselect-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-multiselect-filter-container .p-inputtext{width:100%}.p-multiselect-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;position:relative}.p-fluid .p-multiselect{display:flex}.p-multiselect-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-multiselect-clearable{position:relative}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => i1.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgStyle), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(() => i4.Overlay), selector: "p-overlay", inputs: ["visible", "mode", "style", "styleClass", "contentStyle", "contentStyleClass", "target", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "listener", "responsive", "options"], outputs: ["visibleChange", "onBeforeShow", "onShow", "onBeforeHide", "onHide", "onAnimationStart", "onAnimationDone"] }, { kind: "directive", type: i0.forwardRef(() => i3.PrimeTemplate), selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i5.Tooltip), selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i0.forwardRef(() => i2.Ripple), selector: "[pRipple]" }, { kind: "component", type: i0.forwardRef(() => i6.Scroller), selector: "p-scroller", 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: "directive", type: i0.forwardRef(() => i7.AutoFocus), selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i0.forwardRef(() => CheckIcon), selector: "CheckIcon" }, { kind: "component", type: i0.forwardRef(() => SearchIcon), selector: "SearchIcon" }, { kind: "component", type: i0.forwardRef(() => TimesCircleIcon), selector: "TimesCircleIcon" }, { kind: "component", type: i0.forwardRef(() => TimesIcon), selector: "TimesIcon" }, { kind: "component", type: i0.forwardRef(() => ChevronDownIcon), selector: "ChevronDownIcon" }, { kind: "component", type: i0.forwardRef(() => MultiSelectItem), selector: "p-multiSelectItem", inputs: ["id", "option", "selected", "label", "disabled", "itemSize", "focused", "ariaPosInset", "ariaSetSize", "template", "checkIconTemplate"], outputs: ["onClick", "onMouseEnter"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
1951
|
+
`, isInline: true, styles: ["@layer primeng{.p-multiselect{display:inline-flex;cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.p-multiselect-trigger{display:flex;align-items:center;justify-content:center;flex-shrink:0}.p-multiselect-label-container{overflow:hidden;flex:1 1 auto;cursor:pointer;display:flex}.p-multiselect-label{display:block;white-space:nowrap;cursor:pointer;overflow:hidden;text-overflow:ellipsis}.p-multiselect-label-empty{overflow:hidden;visibility:hidden}.p-multiselect-token{cursor:default;display:inline-flex;align-items:center;flex:0 0 auto}.p-multiselect-token-icon{cursor:pointer}.p-multiselect-token-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100px}.p-multiselect-items-wrapper{overflow:auto}.p-multiselect-items{margin:0;padding:0;list-style-type:none}.p-multiselect-item{cursor:pointer;display:flex;align-items:center;font-weight:400;white-space:nowrap;position:relative;overflow:hidden}.p-multiselect-header{display:flex;align-items:center;justify-content:space-between}.p-multiselect-filter-container{position:relative;flex:1 1 auto}.p-multiselect-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-multiselect-filter-container .p-inputtext{width:100%}.p-multiselect-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;position:relative}.p-fluid .p-multiselect{display:flex}.p-multiselect-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-multiselect-clearable{position:relative}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => i1.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgStyle), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(() => i4.Overlay), selector: "p-overlay", inputs: ["visible", "mode", "style", "styleClass", "contentStyle", "contentStyleClass", "target", "appendTo", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "listener", "responsive", "options"], outputs: ["visibleChange", "onBeforeShow", "onShow", "onBeforeHide", "onHide", "onAnimationStart", "onAnimationDone"] }, { kind: "directive", type: i0.forwardRef(() => i3.PrimeTemplate), selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i5.Tooltip), selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i0.forwardRef(() => i2.Ripple), selector: "[pRipple]" }, { kind: "component", type: i0.forwardRef(() => i6.Scroller), selector: "p-scroller", 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: "directive", type: i0.forwardRef(() => i7.AutoFocus), selector: "[pAutoFocus]", inputs: ["autofocus"] }, { kind: "component", type: i0.forwardRef(() => CheckIcon), selector: "CheckIcon" }, { kind: "component", type: i0.forwardRef(() => SearchIcon), selector: "SearchIcon" }, { kind: "component", type: i0.forwardRef(() => TimesCircleIcon), selector: "TimesCircleIcon" }, { kind: "component", type: i0.forwardRef(() => TimesIcon), selector: "TimesIcon" }, { kind: "component", type: i0.forwardRef(() => ChevronDownIcon), selector: "ChevronDownIcon" }, { kind: "component", type: i0.forwardRef(() => MultiSelectItem), selector: "p-multiSelectItem", inputs: ["id", "option", "selected", "label", "disabled", "itemSize", "focused", "ariaPosInset", "ariaSetSize", "template", "checkIconTemplate", "itemCheckboxIconTemplate"], outputs: ["onClick", "onMouseEnter"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
1909
1952
|
}
|
1910
1953
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MultiSelect, decorators: [{
|
1911
1954
|
type: Component,
|
@@ -1935,7 +1978,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
1935
1978
|
[autofocus]="autofocus"
|
1936
1979
|
/>
|
1937
1980
|
</div>
|
1938
|
-
<div
|
1981
|
+
<div
|
1982
|
+
class="p-multiselect-label-container"
|
1983
|
+
[pTooltip]="tooltip"
|
1984
|
+
(mouseleave)="labelContainerMouseLeave()"
|
1985
|
+
[tooltipDisabled]="_disableTooltip"
|
1986
|
+
[tooltipPosition]="tooltipPosition"
|
1987
|
+
[positionStyle]="tooltipPositionStyle"
|
1988
|
+
[tooltipStyleClass]="tooltipStyleClass"
|
1989
|
+
>
|
1939
1990
|
<div [ngClass]="labelClass">
|
1940
1991
|
<ng-container *ngIf="!selectedItemsTemplate">
|
1941
1992
|
<ng-container *ngIf="display === 'comma'">{{ label() || 'empty' }}</ng-container>
|
@@ -2028,11 +2079,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
2028
2079
|
[attr.aria-checked]="allSelected()"
|
2029
2080
|
[ngClass]="{ 'p-highlight': allSelected(), 'p-focus': headerCheckboxFocus, 'p-disabled': disabled || toggleAllDisabled }"
|
2030
2081
|
>
|
2031
|
-
<ng-container *ngIf="allSelected()">
|
2032
|
-
<
|
2082
|
+
<ng-container *ngIf="allSelected() || partialSelected()">
|
2083
|
+
<ng-container *ngIf="!checkIconTemplate && !headerCheckboxIconTemplate">
|
2084
|
+
<CheckIcon [styleClass]="'p-checkbox-icon'" *ngIf="allSelected()" [attr.aria-hidden]="true" />
|
2085
|
+
</ng-container>
|
2086
|
+
|
2033
2087
|
<span *ngIf="checkIconTemplate" class="p-checkbox-icon" [attr.aria-hidden]="true">
|
2034
2088
|
<ng-template *ngTemplateOutlet="checkIconTemplate; context: { $implicit: allSelected() }"></ng-template>
|
2035
2089
|
</span>
|
2090
|
+
<span *ngIf="headerCheckboxIconTemplate" class="p-checkbox-icon" [attr.aria-hidden]="true">
|
2091
|
+
<ng-template *ngTemplateOutlet="headerCheckboxIconTemplate; context: { $implicit: allSelected(), partialSelected: partialSelected() }"></ng-template>
|
2092
|
+
</span>
|
2036
2093
|
</ng-container>
|
2037
2094
|
</div>
|
2038
2095
|
</div>
|
@@ -2114,6 +2171,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
2114
2171
|
[disabled]="isOptionDisabled(option)"
|
2115
2172
|
[template]="itemTemplate"
|
2116
2173
|
[checkIconTemplate]="checkIconTemplate"
|
2174
|
+
[itemCheckboxIconTemplate]="itemCheckboxIconTemplate"
|
2117
2175
|
[itemSize]="scrollerOptions.itemSize"
|
2118
2176
|
[focused]="focusedOptionIndex() === getOptionIndex(i, scrollerOptions)"
|
2119
2177
|
[ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
|
@@ -2374,13 +2432,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
|
|
2374
2432
|
}] } });
|
2375
2433
|
class MultiSelectModule {
|
2376
2434
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MultiSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
2377
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: MultiSelectModule, declarations: [MultiSelect, MultiSelectItem], imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, CheckIcon, SearchIcon, TimesCircleIcon, TimesIcon, ChevronDownIcon, CheckIcon], exports: [MultiSelect, OverlayModule, SharedModule, ScrollerModule] });
|
2378
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MultiSelectModule, imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, CheckIcon, SearchIcon, TimesCircleIcon, TimesIcon, ChevronDownIcon, CheckIcon, OverlayModule, SharedModule, ScrollerModule] });
|
2435
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: MultiSelectModule, declarations: [MultiSelect, MultiSelectItem], imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, CheckIcon, SearchIcon, TimesCircleIcon, TimesIcon, ChevronDownIcon, CheckIcon, MinusIcon], exports: [MultiSelect, OverlayModule, SharedModule, ScrollerModule] });
|
2436
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MultiSelectModule, imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, CheckIcon, SearchIcon, TimesCircleIcon, TimesIcon, ChevronDownIcon, CheckIcon, MinusIcon, OverlayModule, SharedModule, ScrollerModule] });
|
2379
2437
|
}
|
2380
2438
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MultiSelectModule, decorators: [{
|
2381
2439
|
type: NgModule,
|
2382
2440
|
args: [{
|
2383
|
-
imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, CheckIcon, SearchIcon, TimesCircleIcon, TimesIcon, ChevronDownIcon, CheckIcon],
|
2441
|
+
imports: [CommonModule, OverlayModule, SharedModule, TooltipModule, RippleModule, ScrollerModule, AutoFocusModule, CheckIcon, SearchIcon, TimesCircleIcon, TimesIcon, ChevronDownIcon, CheckIcon, MinusIcon],
|
2384
2442
|
exports: [MultiSelect, OverlayModule, SharedModule, ScrollerModule],
|
2385
2443
|
declarations: [MultiSelect, MultiSelectItem]
|
2386
2444
|
}]
|