primeng 22.1.4 → 22.1.5
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/LICENSE.md +2 -0
- package/fesm2022/primeng-accordion.mjs +23 -23
- package/fesm2022/primeng-animateonscroll.mjs +7 -7
- package/fesm2022/primeng-api.mjs +31 -31
- package/fesm2022/primeng-autocomplete.mjs +54 -30
- 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 +14 -14
- package/fesm2022/primeng-base.mjs +3 -3
- package/fesm2022/primeng-basecomponent.mjs +6 -6
- package/fesm2022/primeng-baseeditableholder.mjs +3 -3
- package/fesm2022/primeng-baseinput.mjs +3 -3
- package/fesm2022/primeng-basemodelholder.mjs +3 -3
- package/fesm2022/primeng-bind.mjs +7 -7
- package/fesm2022/primeng-blockui.mjs +10 -10
- package/fesm2022/primeng-breadcrumb.mjs +14 -14
- package/fesm2022/primeng-button.mjs +19 -19
- package/fesm2022/primeng-buttongroup.mjs +14 -14
- package/fesm2022/primeng-card.mjs +10 -10
- package/fesm2022/primeng-carousel.mjs +31 -31
- package/fesm2022/primeng-cascadeselect.mjs +13 -13
- package/fesm2022/primeng-chart.mjs +10 -10
- package/fesm2022/primeng-checkbox.mjs +10 -10
- package/fesm2022/primeng-chip.mjs +10 -10
- package/fesm2022/primeng-classnames.mjs +7 -7
- package/fesm2022/primeng-colorpicker.mjs +10 -10
- package/fesm2022/primeng-commandmenu.mjs +10 -10
- package/fesm2022/primeng-compare.mjs +19 -19
- package/fesm2022/primeng-config.mjs +7 -7
- package/fesm2022/primeng-confirmdialog.mjs +10 -10
- package/fesm2022/primeng-confirmpopup.mjs +10 -10
- package/fesm2022/primeng-contextmenu.mjs +13 -13
- package/fesm2022/primeng-dataview.mjs +10 -10
- package/fesm2022/primeng-datepicker.mjs +13 -11
- 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 +14 -14
- package/fesm2022/primeng-dynamicdialog.mjs +16 -16
- package/fesm2022/primeng-editor.mjs +10 -10
- package/fesm2022/primeng-fieldset.mjs +10 -10
- package/fesm2022/primeng-fileupload.mjs +13 -13
- 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-gallery.mjs +75 -73
- 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-filterfill.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 +10 -10
- package/fesm2022/primeng-image.mjs +10 -10
- package/fesm2022/primeng-imagecompare.mjs +10 -10
- package/fesm2022/primeng-inplace.mjs +16 -16
- package/fesm2022/primeng-inputcolor.mjs +43 -43
- package/fesm2022/primeng-inputgroup.mjs +14 -14
- package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
- package/fesm2022/primeng-inputicon.mjs +10 -10
- package/fesm2022/primeng-inputmask.mjs +13 -13
- package/fesm2022/primeng-inputnumber.mjs +10 -10
- package/fesm2022/primeng-inputotp.mjs +10 -10
- package/fesm2022/primeng-inputpassword.mjs +10 -10
- package/fesm2022/primeng-inputtags.mjs +22 -18
- package/fesm2022/primeng-inputtext.mjs +10 -10
- package/fesm2022/primeng-isolation.mjs +9 -9
- package/fesm2022/primeng-keyfilter.mjs +7 -7
- package/fesm2022/primeng-knob.mjs +10 -10
- package/fesm2022/primeng-label.mjs +10 -10
- package/fesm2022/primeng-listbox.mjs +46 -34
- package/fesm2022/primeng-megamenu.mjs +13 -13
- package/fesm2022/primeng-menu.mjs +30 -24
- package/fesm2022/primeng-menubar.mjs +20 -20
- package/fesm2022/primeng-message.mjs +12 -10
- package/fesm2022/primeng-metergroup.mjs +13 -13
- package/fesm2022/primeng-motion.mjs +13 -13
- package/fesm2022/primeng-multiselect.mjs +61 -29
- package/fesm2022/primeng-orderlist.mjs +12 -10
- package/fesm2022/primeng-organizationchart.mjs +129 -31
- package/fesm2022/primeng-overlay.mjs +10 -10
- package/fesm2022/primeng-overlaybadge.mjs +10 -10
- package/fesm2022/primeng-paginator.mjs +16 -12
- package/fesm2022/primeng-panel.mjs +10 -10
- package/fesm2022/primeng-panelmenu.mjs +36 -28
- package/fesm2022/primeng-password.mjs +20 -20
- package/fesm2022/primeng-picklist.mjs +14 -10
- package/fesm2022/primeng-popover.mjs +10 -10
- 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 +14 -14
- package/fesm2022/primeng-scrollarea.mjs +25 -25
- package/fesm2022/primeng-scroller.mjs +16 -12
- package/fesm2022/primeng-scrollpanel.mjs +14 -14
- package/fesm2022/primeng-scrolltop.mjs +10 -10
- package/fesm2022/primeng-select.mjs +66 -36
- package/fesm2022/primeng-selectbutton.mjs +12 -10
- package/fesm2022/primeng-sidebar.mjs +83 -83
- package/fesm2022/primeng-skeleton.mjs +10 -10
- package/fesm2022/primeng-slider.mjs +10 -10
- package/fesm2022/primeng-speeddial.mjs +10 -10
- package/fesm2022/primeng-splitbutton.mjs +10 -10
- package/fesm2022/primeng-splitter.mjs +13 -13
- package/fesm2022/primeng-stepper.mjs +47 -47
- package/fesm2022/primeng-steps.mjs +10 -10
- package/fesm2022/primeng-styleclass.mjs +7 -7
- package/fesm2022/primeng-table.mjs +191 -105
- package/fesm2022/primeng-tabs.mjs +50 -34
- package/fesm2022/primeng-tag.mjs +10 -10
- package/fesm2022/primeng-terminal.mjs +15 -15
- package/fesm2022/primeng-textarea.mjs +10 -10
- package/fesm2022/primeng-tieredmenu.mjs +13 -13
- package/fesm2022/primeng-timeline.mjs +24 -18
- package/fesm2022/primeng-toast.mjs +13 -13
- package/fesm2022/primeng-togglebutton.mjs +14 -14
- package/fesm2022/primeng-toggleswitch.mjs +10 -10
- package/fesm2022/primeng-toolbar.mjs +10 -10
- package/fesm2022/primeng-tooltip.mjs +94 -80
- package/fesm2022/primeng-tree.mjs +131 -33
- package/fesm2022/primeng-treeselect.mjs +10 -10
- package/fesm2022/primeng-treetable.mjs +84 -62
- package/fesm2022/primeng-useid.mjs +3 -3
- package/fesm2022/primeng-usestyle.mjs +6 -6
- package/package.json +20 -20
- package/types/primeng-api.d.ts +7 -2
- package/types/primeng-motion.d.ts +0 -15
- package/types/primeng-scroller.d.ts +1 -0
- package/types/primeng-select.d.ts +3 -2
- package/types/primeng-stepper.d.ts +0 -95
- package/types/primeng-table.d.ts +2 -0
- package/types/primeng-tabs.d.ts +3 -76
- package/types/primeng-tooltip.d.ts +18 -7
- package/types/primeng-types-select.d.ts +4 -0
- package/types/primeng-utils.d.ts +0 -1
- package/types/primeng.d.ts +1 -2
|
@@ -6,7 +6,7 @@ import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
|
6
6
|
import { ChevronDown } from "@primeicons/angular/chevron-down";
|
|
7
7
|
import { Search } from "@primeicons/angular/search";
|
|
8
8
|
import { Times } from "@primeicons/angular/times";
|
|
9
|
-
import { deepEquals, equals, findLastIndex, findSingle, focus, getFirstFocusableElement, getFocusableElements, getLastFocusableElement, isEmpty, isNotEmpty, isPrintableCharacter, isScalar, resolveFieldData, scrollInView } from "@primeuix/utils";
|
|
9
|
+
import { deepEquals, equals, findLastIndex, findSingle, focus, getFirstFocusableElement, getFocusableElements, getLastFocusableElement, isEmpty, isNotEmpty, isObject, isPrintableCharacter, isScalar, resolveFieldData, scrollInView } from "@primeuix/utils";
|
|
10
10
|
import { FilterService, SharedModule, TranslationKeys } from "primeng/api";
|
|
11
11
|
import { AutoFocus } from "primeng/autofocus";
|
|
12
12
|
import { BaseComponent, PARENT_INSTANCE } from "primeng/basecomponent";
|
|
@@ -71,7 +71,7 @@ var SelectStyle = class SelectStyle extends BaseStyle {
|
|
|
71
71
|
classes = classes;
|
|
72
72
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
73
73
|
minVersion: "12.0.0",
|
|
74
|
-
version: "22.2.
|
|
74
|
+
version: "22.2.5",
|
|
75
75
|
ngImport: i0,
|
|
76
76
|
type: SelectStyle,
|
|
77
77
|
deps: null,
|
|
@@ -79,14 +79,14 @@ var SelectStyle = class SelectStyle extends BaseStyle {
|
|
|
79
79
|
});
|
|
80
80
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
81
81
|
minVersion: "12.0.0",
|
|
82
|
-
version: "22.2.
|
|
82
|
+
version: "22.2.5",
|
|
83
83
|
ngImport: i0,
|
|
84
84
|
type: SelectStyle
|
|
85
85
|
});
|
|
86
86
|
};
|
|
87
87
|
i0.ɵɵngDeclareClassMetadata({
|
|
88
88
|
minVersion: "12.0.0",
|
|
89
|
-
version: "22.2.
|
|
89
|
+
version: "22.2.5",
|
|
90
90
|
ngImport: i0,
|
|
91
91
|
type: SelectStyle,
|
|
92
92
|
decorators: [{ type: Injectable }]
|
|
@@ -164,7 +164,7 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
164
164
|
}
|
|
165
165
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
166
166
|
minVersion: "12.0.0",
|
|
167
|
-
version: "22.2.
|
|
167
|
+
version: "22.2.5",
|
|
168
168
|
ngImport: i0,
|
|
169
169
|
type: SelectItem,
|
|
170
170
|
deps: null,
|
|
@@ -172,7 +172,7 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
172
172
|
});
|
|
173
173
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
174
174
|
minVersion: "17.0.0",
|
|
175
|
-
version: "22.2.
|
|
175
|
+
version: "22.2.5",
|
|
176
176
|
type: SelectItem,
|
|
177
177
|
isStandalone: true,
|
|
178
178
|
selector: "p-select-item",
|
|
@@ -350,7 +350,7 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
350
350
|
};
|
|
351
351
|
i0.ɵɵngDeclareClassMetadata({
|
|
352
352
|
minVersion: "12.0.0",
|
|
353
|
-
version: "22.2.
|
|
353
|
+
version: "22.2.5",
|
|
354
354
|
ngImport: i0,
|
|
355
355
|
type: SelectItem,
|
|
356
356
|
decorators: [{
|
|
@@ -739,7 +739,8 @@ var Select = class Select extends BaseInput {
|
|
|
739
739
|
emptyFilterMessageText = computed(() => this.emptyFilterMessage() || this.translation()?.emptySearchMessage || this.translation()?.emptyFilterMessage || "", ...ngDevMode ? [{ debugName: "emptyFilterMessageText" }] : /* istanbul ignore next */ []);
|
|
740
740
|
filterResultMessageText = computed(() => {
|
|
741
741
|
const count = this.visibleOptions()?.filter((option) => !this.isOptionGroup(option)).length ?? 0;
|
|
742
|
-
|
|
742
|
+
if (count) return this.filterMessageText().replaceAll("{0}", String(count));
|
|
743
|
+
return this._filterValue() ? this.emptyFilterMessageText() : this.emptyMessageLabel() || this.emptyFilterMessageText();
|
|
743
744
|
}, ...ngDevMode ? [{ debugName: "filterResultMessageText" }] : /* istanbul ignore next */ []);
|
|
744
745
|
selectionMessageText = computed(() => this.selectionMessage() || this.translation()?.selectionMessage || "", ...ngDevMode ? [{ debugName: "selectionMessageText" }] : /* istanbul ignore next */ []);
|
|
745
746
|
emptySelectionMessageText = computed(() => this.emptySelectionMessage() || this.translation()?.emptySelectionMessage || "", ...ngDevMode ? [{ debugName: "emptySelectionMessageText" }] : /* istanbul ignore next */ []);
|
|
@@ -788,9 +789,16 @@ var Select = class Select extends BaseInput {
|
|
|
788
789
|
const currentValue = this.modelValue();
|
|
789
790
|
if (!Array.isArray(currentValue) || currentValue.length === 0) return this.placeholder() || "p-emptylabel";
|
|
790
791
|
const options = this.getAllVisibleAndNonVisibleOptions();
|
|
792
|
+
const optionsByValue = /* @__PURE__ */ new Map();
|
|
793
|
+
options.forEach((option) => {
|
|
794
|
+
if (this.isOptionGroup(option)) return;
|
|
795
|
+
const value = this.getOptionValue(option);
|
|
796
|
+
if (!optionsByValue.has(value)) optionsByValue.set(value, option);
|
|
797
|
+
});
|
|
791
798
|
return currentValue.map((val) => {
|
|
792
|
-
const opt = options.find((o) => !this.isOptionGroup(o) && equals(val, this.getOptionValue(o), this.equalityKey()));
|
|
793
|
-
|
|
799
|
+
const opt = optionsByValue.get(val) ?? options.find((o) => !this.isOptionGroup(o) && equals(val, this.getOptionValue(o), this.equalityKey()));
|
|
800
|
+
if (opt) return this.getOptionLabel(opt);
|
|
801
|
+
return isObject(val) ? this.getOptionLabel(val) : String(val);
|
|
794
802
|
}).filter(Boolean).join(", ");
|
|
795
803
|
}
|
|
796
804
|
const options = this.getAllVisibleAndNonVisibleOptions();
|
|
@@ -807,8 +815,7 @@ var Select = class Select extends BaseInput {
|
|
|
807
815
|
$ariaMultiselectable = computed(() => this.multiple() || void 0, ...ngDevMode ? [{ debugName: "$ariaMultiselectable" }] : /* istanbul ignore next */ []);
|
|
808
816
|
$ariaReadonly = computed(() => this.readonly() || void 0, ...ngDevMode ? [{ debugName: "$ariaReadonly" }] : /* istanbul ignore next */ []);
|
|
809
817
|
$placeholder = computed(() => {
|
|
810
|
-
|
|
811
|
-
return modelVal === void 0 || modelVal === null ? this.placeholder() : void 0;
|
|
818
|
+
return (this.modelValue() ?? "") === "" ? this.placeholder() : void 0;
|
|
812
819
|
}, ...ngDevMode ? [{ debugName: "$placeholder" }] : /* istanbul ignore next */ []);
|
|
813
820
|
$required = computed(() => this.required() ? "" : void 0, ...ngDevMode ? [{ debugName: "$required" }] : /* istanbul ignore next */ []);
|
|
814
821
|
$readonly = computed(() => this.readonly() ? "" : void 0, ...ngDevMode ? [{ debugName: "$readonly" }] : /* istanbul ignore next */ []);
|
|
@@ -834,7 +841,14 @@ var Select = class Select extends BaseInput {
|
|
|
834
841
|
$implicit: this.visibleOptions(),
|
|
835
842
|
options: {}
|
|
836
843
|
}), ...ngDevMode ? [{ debugName: "defaultBuildInItemsContext" }] : /* istanbul ignore next */ []);
|
|
837
|
-
ariaSetSize = computed(() => this.visibleOptions().
|
|
844
|
+
ariaSetSize = computed(() => this.visibleOptions().length - this.groupIndexes().length, ...ngDevMode ? [{ debugName: "ariaSetSize" }] : /* istanbul ignore next */ []);
|
|
845
|
+
groupIndexes = computed(() => {
|
|
846
|
+
const indexes = [];
|
|
847
|
+
this.visibleOptions().forEach((option, index) => {
|
|
848
|
+
if (this.isOptionGroup(option)) indexes.push(index);
|
|
849
|
+
});
|
|
850
|
+
return indexes;
|
|
851
|
+
}, ...ngDevMode ? [{ debugName: "groupIndexes" }] : /* istanbul ignore next */ []);
|
|
838
852
|
containerDataP = computed(() => this.cn({
|
|
839
853
|
invalid: this.invalid(),
|
|
840
854
|
disabled: this.$disabled(),
|
|
@@ -860,10 +874,11 @@ var Select = class Select extends BaseInput {
|
|
|
860
874
|
const visibleOptions = this.visibleOptions();
|
|
861
875
|
if (visibleOptions && isNotEmpty(visibleOptions)) {
|
|
862
876
|
const selectedOptionIndex = this.findSelectedOptionIndex();
|
|
863
|
-
if (selectedOptionIndex !== -1 || modelValue === void 0 || typeof modelValue === "string" && modelValue.length === 0 || this.isModelValueNotSet()
|
|
877
|
+
if (selectedOptionIndex !== -1 || modelValue === void 0 || typeof modelValue === "string" && modelValue.length === 0 || this.isModelValueNotSet()) this.selectedOption.set(visibleOptions[selectedOptionIndex]);
|
|
864
878
|
else {
|
|
865
879
|
const disabledSelectedIndex = visibleOptions.findIndex((option) => this.isSelected(option));
|
|
866
880
|
if (disabledSelectedIndex !== -1) this.selectedOption.set(visibleOptions[disabledSelectedIndex]);
|
|
881
|
+
else if (this.editable()) this.selectedOption.set(this.getAllVisibleAndNonVisibleOptions().find((option) => this.isSelected(option)));
|
|
867
882
|
}
|
|
868
883
|
}
|
|
869
884
|
if (isEmpty(visibleOptions) && (modelValue === void 0 || this.isModelValueNotSet()) && isNotEmpty(this.selectedOption())) this.selectedOption.set(null);
|
|
@@ -978,7 +993,8 @@ var Select = class Select extends BaseInput {
|
|
|
978
993
|
this.focusedOptionIndex.set(this.findSelectedOptionIndex());
|
|
979
994
|
if (preventChange === false) this.onChange.emit({
|
|
980
995
|
originalEvent: event,
|
|
981
|
-
value
|
|
996
|
+
value,
|
|
997
|
+
option
|
|
982
998
|
});
|
|
983
999
|
}
|
|
984
1000
|
if (isHide) this.hide(true);
|
|
@@ -1019,7 +1035,12 @@ var Select = class Select extends BaseInput {
|
|
|
1019
1035
|
if (this.editable()) this.updateEditableLabel();
|
|
1020
1036
|
}
|
|
1021
1037
|
updateEditableLabel() {
|
|
1022
|
-
if (this.editableInputViewChild())
|
|
1038
|
+
if (this.editableInputViewChild()) {
|
|
1039
|
+
const modelValue = this.modelValue();
|
|
1040
|
+
const optionLabel = this.getOptionLabel(this.selectedOption());
|
|
1041
|
+
const valueLabel = this.getValueLabel(modelValue);
|
|
1042
|
+
this.editableInputViewChild().nativeElement.value = optionLabel || valueLabel || (isObject(modelValue) ? "" : modelValue) || "";
|
|
1043
|
+
}
|
|
1023
1044
|
}
|
|
1024
1045
|
clearEditableLabel() {
|
|
1025
1046
|
if (this.editableInputViewChild()) this.editableInputViewChild().nativeElement.value = "";
|
|
@@ -1064,7 +1085,7 @@ var Select = class Select extends BaseInput {
|
|
|
1064
1085
|
return this.optionGroupChildren() !== void 0 && this.optionGroupChildren() !== null ? resolveFieldData(optionGroup, this.optionGroupChildren()) : optionGroup.items;
|
|
1065
1086
|
}
|
|
1066
1087
|
getAriaPosInset(index) {
|
|
1067
|
-
return
|
|
1088
|
+
return index - this.groupIndexes().filter((groupIndex) => groupIndex < index).length + 1;
|
|
1068
1089
|
}
|
|
1069
1090
|
resetFilter() {
|
|
1070
1091
|
this._filterValue.set(null);
|
|
@@ -1089,10 +1110,14 @@ var Select = class Select extends BaseInput {
|
|
|
1089
1110
|
this.searchValue = "";
|
|
1090
1111
|
if (!this.searchOptions(event, value, false)) this.focusedOptionIndex.set(-1);
|
|
1091
1112
|
this.updateModel(value || null, event);
|
|
1113
|
+
const selectedIndex = this.findSelectedOptionIndex();
|
|
1114
|
+
const option = selectedIndex !== -1 ? this.visibleOptions()[selectedIndex] : null;
|
|
1115
|
+
clearTimeout(this.changeTimeout);
|
|
1092
1116
|
this.changeTimeout = setTimeout(() => {
|
|
1093
1117
|
this.onChange.emit({
|
|
1094
1118
|
originalEvent: event,
|
|
1095
|
-
value
|
|
1119
|
+
value,
|
|
1120
|
+
option
|
|
1096
1121
|
});
|
|
1097
1122
|
}, 1);
|
|
1098
1123
|
if (!this.overlayVisible() && isNotEmpty(value)) this.show();
|
|
@@ -1476,10 +1501,10 @@ var Select = class Select extends BaseInput {
|
|
|
1476
1501
|
return matched;
|
|
1477
1502
|
}
|
|
1478
1503
|
isOptionExactMatched(option) {
|
|
1479
|
-
return this.isValidOption(option) && this.getOptionLabel(option)
|
|
1504
|
+
return this.isValidOption(option) && this.getOptionLabel(option)?.toString().toLocaleLowerCase(this.filterLocale()) === (this.searchValue ?? "").toLocaleLowerCase(this.filterLocale());
|
|
1480
1505
|
}
|
|
1481
1506
|
isOptionMatched(option) {
|
|
1482
|
-
return this.isValidOption(option) && this.getOptionLabel(option)
|
|
1507
|
+
return this.isValidOption(option) && this.getOptionLabel(option)?.toString().toLocaleLowerCase(this.filterLocale()).startsWith((this.searchValue ?? "").toLocaleLowerCase(this.filterLocale()));
|
|
1483
1508
|
}
|
|
1484
1509
|
onFilterInputChange(event) {
|
|
1485
1510
|
let value = event.target.value;
|
|
@@ -1524,7 +1549,8 @@ var Select = class Select extends BaseInput {
|
|
|
1524
1549
|
this.onModelTouched();
|
|
1525
1550
|
this.onChange.emit({
|
|
1526
1551
|
originalEvent: event,
|
|
1527
|
-
value: this.value
|
|
1552
|
+
value: this.value,
|
|
1553
|
+
option: null
|
|
1528
1554
|
});
|
|
1529
1555
|
this.onClear.emit(event);
|
|
1530
1556
|
this.resetFilter();
|
|
@@ -1537,7 +1563,7 @@ var Select = class Select extends BaseInput {
|
|
|
1537
1563
|
}
|
|
1538
1564
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1539
1565
|
minVersion: "12.0.0",
|
|
1540
|
-
version: "22.2.
|
|
1566
|
+
version: "22.2.5",
|
|
1541
1567
|
ngImport: i0,
|
|
1542
1568
|
type: Select,
|
|
1543
1569
|
deps: [],
|
|
@@ -1545,7 +1571,7 @@ var Select = class Select extends BaseInput {
|
|
|
1545
1571
|
});
|
|
1546
1572
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
1547
1573
|
minVersion: "17.0.0",
|
|
1548
|
-
version: "22.2.
|
|
1574
|
+
version: "22.2.5",
|
|
1549
1575
|
type: Select,
|
|
1550
1576
|
isStandalone: true,
|
|
1551
1577
|
selector: "p-select",
|
|
@@ -2178,7 +2204,7 @@ var Select = class Select extends BaseInput {
|
|
|
2178
2204
|
[attr.aria-haspopup]="'listbox'"
|
|
2179
2205
|
[attr.aria-expanded]="$ariaExpanded"
|
|
2180
2206
|
[attr.aria-controls]="$ariaControls()"
|
|
2181
|
-
[attr.placeholder]="
|
|
2207
|
+
[attr.placeholder]="placeholder()"
|
|
2182
2208
|
[attr.aria-label]="ariaLabel()"
|
|
2183
2209
|
[attr.aria-labelledby]="ariaLabelledBy()"
|
|
2184
2210
|
(input)="onEditableInput($event)"
|
|
@@ -2334,6 +2360,8 @@ var Select = class Select extends BaseInput {
|
|
|
2334
2360
|
}
|
|
2335
2361
|
|
|
2336
2362
|
<ng-template #buildInItems let-items let-scrollerOptions="options">
|
|
2363
|
+
@let itemTemplateRef = itemTemplate();
|
|
2364
|
+
@let groupTemplateRef = groupTemplate();
|
|
2337
2365
|
<ul
|
|
2338
2366
|
#items
|
|
2339
2367
|
[attr.id]="$id() + '_list'"
|
|
@@ -2347,10 +2375,10 @@ var Select = class Select extends BaseInput {
|
|
|
2347
2375
|
@for (option of items; track trackOption(option, i); let i = $index) {
|
|
2348
2376
|
@if (isOptionGroup(option)) {
|
|
2349
2377
|
<li [class]="cx('optionGroup')" [attr.id]="$id() + '_' + getOptionIndex(i, scrollerOptions)" [style]="getItemSizeStyle(scrollerOptions)" role="presentation" [pBind]="ptm('optionGroup')">
|
|
2350
|
-
@if (!
|
|
2378
|
+
@if (!groupTemplateRef) {
|
|
2351
2379
|
<span [class]="cx('optionGroupLabel')" [pBind]="ptm('optionGroupLabel')">{{ getOptionGroupLabel(option.optionGroup) }}</span>
|
|
2352
2380
|
}
|
|
2353
|
-
<ng-container *ngTemplateOutlet="
|
|
2381
|
+
<ng-container *ngTemplateOutlet="groupTemplateRef; context: getGroupContext(option.optionGroup)"></ng-container>
|
|
2354
2382
|
</li>
|
|
2355
2383
|
} @else {
|
|
2356
2384
|
<p-select-item
|
|
@@ -2360,7 +2388,7 @@ var Select = class Select extends BaseInput {
|
|
|
2360
2388
|
[selected]="isSelected(option)"
|
|
2361
2389
|
[label]="getOptionLabel(option)"
|
|
2362
2390
|
[disabled]="isOptionDisabled(option)"
|
|
2363
|
-
[template]="
|
|
2391
|
+
[template]="itemTemplateRef"
|
|
2364
2392
|
[focused]="isOptionFocused(i, scrollerOptions)"
|
|
2365
2393
|
[ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
|
|
2366
2394
|
[ariaSetSize]="ariaSetSize()"
|
|
@@ -2620,7 +2648,7 @@ var Select = class Select extends BaseInput {
|
|
|
2620
2648
|
};
|
|
2621
2649
|
i0.ɵɵngDeclareClassMetadata({
|
|
2622
2650
|
minVersion: "12.0.0",
|
|
2623
|
-
version: "22.2.
|
|
2651
|
+
version: "22.2.5",
|
|
2624
2652
|
ngImport: i0,
|
|
2625
2653
|
type: Select,
|
|
2626
2654
|
decorators: [{
|
|
@@ -2696,7 +2724,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2696
2724
|
[attr.aria-haspopup]="'listbox'"
|
|
2697
2725
|
[attr.aria-expanded]="$ariaExpanded"
|
|
2698
2726
|
[attr.aria-controls]="$ariaControls()"
|
|
2699
|
-
[attr.placeholder]="
|
|
2727
|
+
[attr.placeholder]="placeholder()"
|
|
2700
2728
|
[attr.aria-label]="ariaLabel()"
|
|
2701
2729
|
[attr.aria-labelledby]="ariaLabelledBy()"
|
|
2702
2730
|
(input)="onEditableInput($event)"
|
|
@@ -2852,6 +2880,8 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2852
2880
|
}
|
|
2853
2881
|
|
|
2854
2882
|
<ng-template #buildInItems let-items let-scrollerOptions="options">
|
|
2883
|
+
@let itemTemplateRef = itemTemplate();
|
|
2884
|
+
@let groupTemplateRef = groupTemplate();
|
|
2855
2885
|
<ul
|
|
2856
2886
|
#items
|
|
2857
2887
|
[attr.id]="$id() + '_list'"
|
|
@@ -2865,10 +2895,10 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2865
2895
|
@for (option of items; track trackOption(option, i); let i = $index) {
|
|
2866
2896
|
@if (isOptionGroup(option)) {
|
|
2867
2897
|
<li [class]="cx('optionGroup')" [attr.id]="$id() + '_' + getOptionIndex(i, scrollerOptions)" [style]="getItemSizeStyle(scrollerOptions)" role="presentation" [pBind]="ptm('optionGroup')">
|
|
2868
|
-
@if (!
|
|
2898
|
+
@if (!groupTemplateRef) {
|
|
2869
2899
|
<span [class]="cx('optionGroupLabel')" [pBind]="ptm('optionGroupLabel')">{{ getOptionGroupLabel(option.optionGroup) }}</span>
|
|
2870
2900
|
}
|
|
2871
|
-
<ng-container *ngTemplateOutlet="
|
|
2901
|
+
<ng-container *ngTemplateOutlet="groupTemplateRef; context: getGroupContext(option.optionGroup)"></ng-container>
|
|
2872
2902
|
</li>
|
|
2873
2903
|
} @else {
|
|
2874
2904
|
<p-select-item
|
|
@@ -2878,7 +2908,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2878
2908
|
[selected]="isSelected(option)"
|
|
2879
2909
|
[label]="getOptionLabel(option)"
|
|
2880
2910
|
[disabled]="isOptionDisabled(option)"
|
|
2881
|
-
[template]="
|
|
2911
|
+
[template]="itemTemplateRef"
|
|
2882
2912
|
[focused]="isOptionFocused(i, scrollerOptions)"
|
|
2883
2913
|
[ariaPosInset]="getAriaPosInset(getOptionIndex(i, scrollerOptions))"
|
|
2884
2914
|
[ariaSetSize]="ariaSetSize()"
|
|
@@ -3583,7 +3613,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
3583
3613
|
var SelectModule = class SelectModule {
|
|
3584
3614
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
3585
3615
|
minVersion: "12.0.0",
|
|
3586
|
-
version: "22.2.
|
|
3616
|
+
version: "22.2.5",
|
|
3587
3617
|
ngImport: i0,
|
|
3588
3618
|
type: SelectModule,
|
|
3589
3619
|
deps: [],
|
|
@@ -3591,7 +3621,7 @@ var SelectModule = class SelectModule {
|
|
|
3591
3621
|
});
|
|
3592
3622
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
3593
3623
|
minVersion: "14.0.0",
|
|
3594
|
-
version: "22.2.
|
|
3624
|
+
version: "22.2.5",
|
|
3595
3625
|
ngImport: i0,
|
|
3596
3626
|
type: SelectModule,
|
|
3597
3627
|
imports: [Select, SharedModule],
|
|
@@ -3599,7 +3629,7 @@ var SelectModule = class SelectModule {
|
|
|
3599
3629
|
});
|
|
3600
3630
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
3601
3631
|
minVersion: "12.0.0",
|
|
3602
|
-
version: "22.2.
|
|
3632
|
+
version: "22.2.5",
|
|
3603
3633
|
ngImport: i0,
|
|
3604
3634
|
type: SelectModule,
|
|
3605
3635
|
imports: [
|
|
@@ -3611,7 +3641,7 @@ var SelectModule = class SelectModule {
|
|
|
3611
3641
|
};
|
|
3612
3642
|
i0.ɵɵngDeclareClassMetadata({
|
|
3613
3643
|
minVersion: "12.0.0",
|
|
3614
|
-
version: "22.2.
|
|
3644
|
+
version: "22.2.5",
|
|
3615
3645
|
ngImport: i0,
|
|
3616
3646
|
type: SelectModule,
|
|
3617
3647
|
decorators: [{
|
|
@@ -23,7 +23,7 @@ var SelectButtonStyle = class SelectButtonStyle extends BaseStyle {
|
|
|
23
23
|
classes = classes;
|
|
24
24
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
25
25
|
minVersion: "12.0.0",
|
|
26
|
-
version: "22.2.
|
|
26
|
+
version: "22.2.5",
|
|
27
27
|
ngImport: i0,
|
|
28
28
|
type: SelectButtonStyle,
|
|
29
29
|
deps: null,
|
|
@@ -31,14 +31,14 @@ var SelectButtonStyle = class SelectButtonStyle extends BaseStyle {
|
|
|
31
31
|
});
|
|
32
32
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
33
33
|
minVersion: "12.0.0",
|
|
34
|
-
version: "22.2.
|
|
34
|
+
version: "22.2.5",
|
|
35
35
|
ngImport: i0,
|
|
36
36
|
type: SelectButtonStyle
|
|
37
37
|
});
|
|
38
38
|
};
|
|
39
39
|
i0.ɵɵngDeclareClassMetadata({
|
|
40
40
|
minVersion: "12.0.0",
|
|
41
|
-
version: "22.2.
|
|
41
|
+
version: "22.2.5",
|
|
42
42
|
ngImport: i0,
|
|
43
43
|
type: SelectButtonStyle,
|
|
44
44
|
decorators: [{ type: Injectable }]
|
|
@@ -204,7 +204,7 @@ var SelectButton = class SelectButton extends BaseEditableHolder {
|
|
|
204
204
|
}
|
|
205
205
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
206
206
|
minVersion: "12.0.0",
|
|
207
|
-
version: "22.2.
|
|
207
|
+
version: "22.2.5",
|
|
208
208
|
ngImport: i0,
|
|
209
209
|
type: SelectButton,
|
|
210
210
|
deps: null,
|
|
@@ -212,7 +212,7 @@ var SelectButton = class SelectButton extends BaseEditableHolder {
|
|
|
212
212
|
});
|
|
213
213
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
214
214
|
minVersion: "17.0.0",
|
|
215
|
-
version: "22.2.
|
|
215
|
+
version: "22.2.5",
|
|
216
216
|
type: SelectButton,
|
|
217
217
|
isStandalone: true,
|
|
218
218
|
selector: "p-selectbutton, p-select-button",
|
|
@@ -353,6 +353,7 @@ var SelectButton = class SelectButton extends BaseEditableHolder {
|
|
|
353
353
|
[autofocus]="autofocus()"
|
|
354
354
|
[class]="styleClass()"
|
|
355
355
|
[ngModel]="isSelected(option)"
|
|
356
|
+
[ngModelOptions]="{ standalone: true }"
|
|
356
357
|
[onLabel]="getOptionLabel(option)"
|
|
357
358
|
[offLabel]="getOptionLabel(option)"
|
|
358
359
|
[ariaLabel]="getOptionLabel(option)"
|
|
@@ -442,7 +443,7 @@ var SelectButton = class SelectButton extends BaseEditableHolder {
|
|
|
442
443
|
};
|
|
443
444
|
i0.ɵɵngDeclareClassMetadata({
|
|
444
445
|
minVersion: "12.0.0",
|
|
445
|
-
version: "22.2.
|
|
446
|
+
version: "22.2.5",
|
|
446
447
|
ngImport: i0,
|
|
447
448
|
type: SelectButton,
|
|
448
449
|
decorators: [{
|
|
@@ -463,6 +464,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
463
464
|
[autofocus]="autofocus()"
|
|
464
465
|
[class]="styleClass()"
|
|
465
466
|
[ngModel]="isSelected(option)"
|
|
467
|
+
[ngModelOptions]="{ standalone: true }"
|
|
466
468
|
[onLabel]="getOptionLabel(option)"
|
|
467
469
|
[offLabel]="getOptionLabel(option)"
|
|
468
470
|
[ariaLabel]="getOptionLabel(option)"
|
|
@@ -638,7 +640,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
638
640
|
var SelectButtonModule = class SelectButtonModule {
|
|
639
641
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
640
642
|
minVersion: "12.0.0",
|
|
641
|
-
version: "22.2.
|
|
643
|
+
version: "22.2.5",
|
|
642
644
|
ngImport: i0,
|
|
643
645
|
type: SelectButtonModule,
|
|
644
646
|
deps: [],
|
|
@@ -646,7 +648,7 @@ var SelectButtonModule = class SelectButtonModule {
|
|
|
646
648
|
});
|
|
647
649
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
648
650
|
minVersion: "14.0.0",
|
|
649
|
-
version: "22.2.
|
|
651
|
+
version: "22.2.5",
|
|
650
652
|
ngImport: i0,
|
|
651
653
|
type: SelectButtonModule,
|
|
652
654
|
imports: [SelectButton, SharedModule],
|
|
@@ -654,7 +656,7 @@ var SelectButtonModule = class SelectButtonModule {
|
|
|
654
656
|
});
|
|
655
657
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
656
658
|
minVersion: "12.0.0",
|
|
657
|
-
version: "22.2.
|
|
659
|
+
version: "22.2.5",
|
|
658
660
|
ngImport: i0,
|
|
659
661
|
type: SelectButtonModule,
|
|
660
662
|
imports: [
|
|
@@ -666,7 +668,7 @@ var SelectButtonModule = class SelectButtonModule {
|
|
|
666
668
|
};
|
|
667
669
|
i0.ɵɵngDeclareClassMetadata({
|
|
668
670
|
minVersion: "12.0.0",
|
|
669
|
-
version: "22.2.
|
|
671
|
+
version: "22.2.5",
|
|
670
672
|
ngImport: i0,
|
|
671
673
|
type: SelectButtonModule,
|
|
672
674
|
decorators: [{
|