primeng 22.1.2 → 22.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/primeng-accordion.mjs +23 -24
- package/fesm2022/primeng-animateonscroll.mjs +9 -10
- package/fesm2022/primeng-api.mjs +31 -32
- package/fesm2022/primeng-autocomplete.mjs +17 -18
- package/fesm2022/primeng-autofocus.mjs +7 -8
- package/fesm2022/primeng-avatar.mjs +10 -11
- package/fesm2022/primeng-avatargroup.mjs +10 -11
- package/fesm2022/primeng-badge.mjs +10 -11
- package/fesm2022/primeng-base.mjs +47 -32
- package/fesm2022/primeng-basecomponent.mjs +125 -52
- package/fesm2022/primeng-baseeditableholder.mjs +3 -4
- package/fesm2022/primeng-baseinput.mjs +3 -4
- package/fesm2022/primeng-basemodelholder.mjs +3 -4
- package/fesm2022/primeng-bind.mjs +10 -9
- package/fesm2022/primeng-blockui.mjs +23 -24
- package/fesm2022/primeng-breadcrumb.mjs +10 -11
- package/fesm2022/primeng-button.mjs +33 -39
- package/fesm2022/primeng-buttongroup.mjs +12 -13
- package/fesm2022/primeng-card.mjs +10 -11
- package/fesm2022/primeng-carousel.mjs +47 -46
- package/fesm2022/primeng-cascadeselect.mjs +23 -24
- package/fesm2022/primeng-chart.mjs +10 -11
- package/fesm2022/primeng-checkbox.mjs +10 -11
- package/fesm2022/primeng-chip.mjs +10 -11
- package/fesm2022/primeng-classnames.mjs +7 -8
- package/fesm2022/primeng-colorpicker.mjs +10 -11
- package/fesm2022/primeng-commandmenu.mjs +12 -13
- package/fesm2022/primeng-compare.mjs +19 -20
- package/fesm2022/primeng-config.mjs +42 -19
- package/fesm2022/primeng-confirmdialog.mjs +29 -21
- package/fesm2022/primeng-confirmpopup.mjs +26 -25
- package/fesm2022/primeng-contextmenu.mjs +29 -28
- package/fesm2022/primeng-dataview.mjs +10 -11
- package/fesm2022/primeng-datepicker.mjs +141 -91
- package/fesm2022/primeng-dialog.mjs +46 -34
- package/fesm2022/primeng-divider.mjs +10 -11
- package/fesm2022/primeng-dock.mjs +12 -13
- package/fesm2022/primeng-dom.mjs +18 -6
- package/fesm2022/primeng-dragdrop.mjs +15 -14
- package/fesm2022/primeng-drawer.mjs +21 -25
- package/fesm2022/primeng-dynamicdialog.mjs +23 -22
- package/fesm2022/primeng-editor.mjs +10 -11
- package/fesm2022/primeng-fieldset.mjs +13 -17
- package/fesm2022/primeng-fileupload.mjs +24 -25
- package/fesm2022/primeng-floatlabel.mjs +10 -11
- package/fesm2022/primeng-fluid.mjs +10 -11
- package/fesm2022/primeng-focustrap.mjs +11 -12
- package/fesm2022/primeng-galleria.mjs +40 -37
- package/fesm2022/primeng-gallery.mjs +73 -74
- package/fesm2022/primeng-iconfield.mjs +10 -11
- package/fesm2022/primeng-icons-angledoubledown.mjs +3 -4
- package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -4
- package/fesm2022/primeng-icons-angledoubleright.mjs +3 -4
- package/fesm2022/primeng-icons-angledoubleup.mjs +3 -4
- package/fesm2022/primeng-icons-angledown.mjs +3 -4
- package/fesm2022/primeng-icons-angleleft.mjs +3 -4
- package/fesm2022/primeng-icons-angleright.mjs +3 -4
- package/fesm2022/primeng-icons-angleup.mjs +3 -4
- package/fesm2022/primeng-icons-arrowdown.mjs +4 -6
- package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -4
- package/fesm2022/primeng-icons-arrowdownright.mjs +3 -4
- package/fesm2022/primeng-icons-arrowleft.mjs +4 -6
- package/fesm2022/primeng-icons-arrowright.mjs +3 -4
- package/fesm2022/primeng-icons-arrowup.mjs +4 -6
- package/fesm2022/primeng-icons-ban.mjs +4 -6
- package/fesm2022/primeng-icons-bars.mjs +3 -4
- package/fesm2022/primeng-icons-baseicon.mjs +6 -7
- package/fesm2022/primeng-icons-blank.mjs +3 -4
- package/fesm2022/primeng-icons-calendar.mjs +3 -4
- package/fesm2022/primeng-icons-caretleft.mjs +3 -4
- package/fesm2022/primeng-icons-caretright.mjs +3 -4
- package/fesm2022/primeng-icons-check.mjs +3 -4
- package/fesm2022/primeng-icons-chevrondown.mjs +3 -4
- package/fesm2022/primeng-icons-chevronleft.mjs +3 -4
- package/fesm2022/primeng-icons-chevronright.mjs +3 -4
- package/fesm2022/primeng-icons-chevronup.mjs +3 -4
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +4 -6
- package/fesm2022/primeng-icons-eye.mjs +3 -4
- package/fesm2022/primeng-icons-eyeslash.mjs +4 -6
- package/fesm2022/primeng-icons-filter.mjs +4 -6
- package/fesm2022/primeng-icons-filterfill.mjs +3 -4
- package/fesm2022/primeng-icons-filterslash.mjs +4 -6
- package/fesm2022/primeng-icons-home.mjs +4 -6
- package/fesm2022/primeng-icons-infocircle.mjs +4 -6
- package/fesm2022/primeng-icons-minus.mjs +3 -4
- package/fesm2022/primeng-icons-pencil.mjs +4 -6
- package/fesm2022/primeng-icons-plus.mjs +4 -6
- package/fesm2022/primeng-icons-refresh.mjs +4 -6
- package/fesm2022/primeng-icons-search.mjs +4 -6
- package/fesm2022/primeng-icons-searchminus.mjs +4 -6
- package/fesm2022/primeng-icons-searchplus.mjs +4 -6
- package/fesm2022/primeng-icons-sortalt.mjs +4 -6
- package/fesm2022/primeng-icons-sortamountdown.mjs +4 -6
- package/fesm2022/primeng-icons-sortamountupalt.mjs +4 -6
- package/fesm2022/primeng-icons-spinner.mjs +4 -6
- package/fesm2022/primeng-icons-star.mjs +4 -6
- package/fesm2022/primeng-icons-starfill.mjs +4 -6
- package/fesm2022/primeng-icons-thlarge.mjs +4 -6
- package/fesm2022/primeng-icons-times.mjs +3 -4
- package/fesm2022/primeng-icons-timescircle.mjs +4 -6
- package/fesm2022/primeng-icons-trash.mjs +4 -6
- package/fesm2022/primeng-icons-undo.mjs +4 -6
- package/fesm2022/primeng-icons-upload.mjs +4 -6
- package/fesm2022/primeng-icons-windowmaximize.mjs +4 -6
- package/fesm2022/primeng-icons-windowminimize.mjs +4 -6
- package/fesm2022/primeng-iftalabel.mjs +10 -11
- package/fesm2022/primeng-image.mjs +34 -20
- package/fesm2022/primeng-imagecompare.mjs +10 -11
- package/fesm2022/primeng-inplace.mjs +16 -17
- package/fesm2022/primeng-inputcolor.mjs +46 -51
- package/fesm2022/primeng-inputgroup.mjs +10 -11
- package/fesm2022/primeng-inputgroupaddon.mjs +10 -11
- package/fesm2022/primeng-inputicon.mjs +10 -11
- package/fesm2022/primeng-inputmask.mjs +15 -16
- package/fesm2022/primeng-inputnumber.mjs +10 -11
- package/fesm2022/primeng-inputotp.mjs +10 -11
- package/fesm2022/primeng-inputpassword.mjs +10 -11
- package/fesm2022/primeng-inputtags.mjs +12 -13
- package/fesm2022/primeng-inputtext.mjs +10 -11
- package/fesm2022/primeng-isolation.mjs +280 -0
- package/fesm2022/primeng-keyfilter.mjs +7 -8
- package/fesm2022/primeng-knob.mjs +13 -15
- package/fesm2022/primeng-label.mjs +10 -11
- package/fesm2022/primeng-license.mjs +0 -1
- package/fesm2022/primeng-listbox.mjs +32 -29
- package/fesm2022/primeng-megamenu.mjs +30 -34
- package/fesm2022/primeng-menu.mjs +36 -43
- package/fesm2022/primeng-menubar.mjs +26 -24
- package/fesm2022/primeng-message.mjs +16 -19
- package/fesm2022/primeng-metergroup.mjs +13 -14
- package/fesm2022/primeng-motion.mjs +13 -14
- package/fesm2022/primeng-multiselect.mjs +34 -27
- package/fesm2022/primeng-orderlist.mjs +31 -23
- package/fesm2022/primeng-organizationchart.mjs +13 -14
- package/fesm2022/primeng-overlay.mjs +24 -22
- package/fesm2022/primeng-overlaybadge.mjs +10 -11
- package/fesm2022/primeng-paginator.mjs +13 -11
- package/fesm2022/primeng-panel.mjs +13 -17
- package/fesm2022/primeng-panelmenu.mjs +22 -23
- package/fesm2022/primeng-passthrough.mjs +0 -1
- package/fesm2022/primeng-password.mjs +29 -30
- package/fesm2022/primeng-picklist.mjs +28 -20
- package/fesm2022/primeng-popover.mjs +21 -21
- package/fesm2022/primeng-progressbar.mjs +10 -11
- package/fesm2022/primeng-progressspinner.mjs +10 -11
- package/fesm2022/primeng-radiobutton.mjs +13 -14
- package/fesm2022/primeng-rating.mjs +14 -16
- package/fesm2022/primeng-ripple.mjs +24 -23
- package/fesm2022/primeng-scrollarea.mjs +25 -26
- package/fesm2022/primeng-scroller.mjs +35 -18
- package/fesm2022/primeng-scrollpanel.mjs +23 -24
- package/fesm2022/primeng-scrolltop.mjs +12 -13
- package/fesm2022/primeng-select.mjs +254 -155
- package/fesm2022/primeng-selectbutton.mjs +10 -11
- package/fesm2022/primeng-sidebar.mjs +82 -84
- package/fesm2022/primeng-skeleton.mjs +10 -11
- package/fesm2022/primeng-slider.mjs +10 -11
- package/fesm2022/primeng-speeddial.mjs +20 -19
- package/fesm2022/primeng-splitbutton.mjs +11 -13
- package/fesm2022/primeng-splitter.mjs +13 -14
- package/fesm2022/primeng-stepper.mjs +47 -48
- package/fesm2022/primeng-steps.mjs +10 -11
- package/fesm2022/primeng-styleclass.mjs +10 -9
- package/fesm2022/primeng-table.mjs +193 -172
- package/fesm2022/primeng-tabs.mjs +36 -37
- package/fesm2022/primeng-tag.mjs +10 -11
- package/fesm2022/primeng-terminal.mjs +13 -14
- package/fesm2022/primeng-textarea.mjs +10 -11
- package/fesm2022/primeng-tieredmenu.mjs +26 -26
- package/fesm2022/primeng-timeline.mjs +10 -11
- package/fesm2022/primeng-toast.mjs +48 -33
- package/fesm2022/primeng-togglebutton.mjs +10 -11
- package/fesm2022/primeng-toggleswitch.mjs +10 -11
- package/fesm2022/primeng-toolbar.mjs +10 -11
- package/fesm2022/primeng-tooltip.mjs +24 -25
- package/fesm2022/primeng-tree.mjs +19 -20
- package/fesm2022/primeng-treeselect.mjs +45 -19
- package/fesm2022/primeng-treetable.mjs +93 -88
- package/fesm2022/primeng-useid.mjs +38 -0
- package/fesm2022/primeng-usestyle.mjs +265 -44
- package/fesm2022/primeng-utils.mjs +33 -2
- package/fesm2022/primeng.mjs +0 -1
- package/package.json +12 -4
- package/types/primeng-accordion.d.ts +0 -9
- package/types/primeng-animateonscroll.d.ts +2 -1
- package/types/primeng-api.d.ts +3 -1
- package/types/primeng-autocomplete.d.ts +1 -3
- package/types/primeng-base.d.ts +4 -1
- package/types/primeng-basecomponent.d.ts +36 -16
- package/types/primeng-button.d.ts +9 -12
- package/types/primeng-carousel.d.ts +3 -25
- package/types/primeng-compare.d.ts +0 -9
- package/types/primeng-config.d.ts +34 -4
- package/types/primeng-confirmdialog.d.ts +1 -0
- package/types/primeng-confirmpopup.d.ts +3 -5
- package/types/primeng-datepicker.d.ts +10 -11
- package/types/primeng-dialog.d.ts +1 -0
- package/types/primeng-dom.d.ts +6 -11
- package/types/primeng-dragdrop.d.ts +1 -0
- package/types/primeng-dynamicdialog.d.ts +3 -1
- package/types/primeng-focustrap.d.ts +1 -1
- package/types/primeng-gallery.d.ts +0 -63
- package/types/primeng-inputcolor.d.ts +0 -33
- package/types/primeng-isolation.d.ts +21 -0
- package/types/primeng-listbox.d.ts +1 -0
- package/types/primeng-megamenu.d.ts +5 -1
- package/types/primeng-menu.d.ts +6 -7
- package/types/primeng-motion.d.ts +2 -7
- package/types/primeng-multiselect.d.ts +3 -1
- package/types/primeng-orderlist.d.ts +1 -0
- package/types/primeng-picklist.d.ts +1 -0
- package/types/primeng-scrollarea.d.ts +0 -15
- package/types/primeng-scroller.d.ts +6 -4
- package/types/primeng-select.d.ts +57 -16
- package/types/primeng-sidebar.d.ts +0 -69
- package/types/primeng-splitter.d.ts +0 -3
- package/types/primeng-stepper.d.ts +2 -19
- package/types/primeng-table.d.ts +5 -78
- package/types/primeng-tabs.d.ts +2 -16
- package/types/primeng-toast.d.ts +4 -2
- package/types/primeng-treeselect.d.ts +9 -2
- package/types/primeng-treetable.d.ts +4 -92
- package/types/primeng-types-listbox.d.ts +1 -1
- package/types/primeng-types-select.d.ts +4 -0
- package/types/primeng-types-treeselect.d.ts +15 -0
- package/types/primeng-useid.d.ts +15 -0
- package/types/primeng-usestyle.d.ts +87 -7
- package/types/primeng-utils.d.ts +42 -0
- package/fesm2022/primeng-accordion.mjs.map +0 -1
- package/fesm2022/primeng-animateonscroll.mjs.map +0 -1
- package/fesm2022/primeng-api.mjs.map +0 -1
- package/fesm2022/primeng-autocomplete.mjs.map +0 -1
- package/fesm2022/primeng-autofocus.mjs.map +0 -1
- package/fesm2022/primeng-avatar.mjs.map +0 -1
- package/fesm2022/primeng-avatargroup.mjs.map +0 -1
- package/fesm2022/primeng-badge.mjs.map +0 -1
- package/fesm2022/primeng-base.mjs.map +0 -1
- package/fesm2022/primeng-basecomponent.mjs.map +0 -1
- package/fesm2022/primeng-baseeditableholder.mjs.map +0 -1
- package/fesm2022/primeng-baseinput.mjs.map +0 -1
- package/fesm2022/primeng-basemodelholder.mjs.map +0 -1
- package/fesm2022/primeng-bind.mjs.map +0 -1
- package/fesm2022/primeng-blockui.mjs.map +0 -1
- package/fesm2022/primeng-breadcrumb.mjs.map +0 -1
- package/fesm2022/primeng-button.mjs.map +0 -1
- package/fesm2022/primeng-buttongroup.mjs.map +0 -1
- package/fesm2022/primeng-card.mjs.map +0 -1
- package/fesm2022/primeng-carousel.mjs.map +0 -1
- package/fesm2022/primeng-cascadeselect.mjs.map +0 -1
- package/fesm2022/primeng-chart.mjs.map +0 -1
- package/fesm2022/primeng-checkbox.mjs.map +0 -1
- package/fesm2022/primeng-chip.mjs.map +0 -1
- package/fesm2022/primeng-classnames.mjs.map +0 -1
- package/fesm2022/primeng-colorpicker.mjs.map +0 -1
- package/fesm2022/primeng-commandmenu.mjs.map +0 -1
- package/fesm2022/primeng-compare.mjs.map +0 -1
- package/fesm2022/primeng-config.mjs.map +0 -1
- package/fesm2022/primeng-confirmdialog.mjs.map +0 -1
- package/fesm2022/primeng-confirmpopup.mjs.map +0 -1
- package/fesm2022/primeng-contextmenu.mjs.map +0 -1
- package/fesm2022/primeng-dataview.mjs.map +0 -1
- package/fesm2022/primeng-datepicker.mjs.map +0 -1
- package/fesm2022/primeng-dialog.mjs.map +0 -1
- package/fesm2022/primeng-divider.mjs.map +0 -1
- package/fesm2022/primeng-dock.mjs.map +0 -1
- package/fesm2022/primeng-dom.mjs.map +0 -1
- package/fesm2022/primeng-dragdrop.mjs.map +0 -1
- package/fesm2022/primeng-drawer.mjs.map +0 -1
- package/fesm2022/primeng-dynamicdialog.mjs.map +0 -1
- package/fesm2022/primeng-editor.mjs.map +0 -1
- package/fesm2022/primeng-fieldset.mjs.map +0 -1
- package/fesm2022/primeng-fileupload.mjs.map +0 -1
- package/fesm2022/primeng-floatlabel.mjs.map +0 -1
- package/fesm2022/primeng-fluid.mjs.map +0 -1
- package/fesm2022/primeng-focustrap.mjs.map +0 -1
- package/fesm2022/primeng-galleria.mjs.map +0 -1
- package/fesm2022/primeng-gallery.mjs.map +0 -1
- package/fesm2022/primeng-iconfield.mjs.map +0 -1
- package/fesm2022/primeng-icons-angledoubledown.mjs.map +0 -1
- package/fesm2022/primeng-icons-angledoubleleft.mjs.map +0 -1
- package/fesm2022/primeng-icons-angledoubleright.mjs.map +0 -1
- package/fesm2022/primeng-icons-angledoubleup.mjs.map +0 -1
- package/fesm2022/primeng-icons-angledown.mjs.map +0 -1
- package/fesm2022/primeng-icons-angleleft.mjs.map +0 -1
- package/fesm2022/primeng-icons-angleright.mjs.map +0 -1
- package/fesm2022/primeng-icons-angleup.mjs.map +0 -1
- package/fesm2022/primeng-icons-arrowdown.mjs.map +0 -1
- package/fesm2022/primeng-icons-arrowdownleft.mjs.map +0 -1
- package/fesm2022/primeng-icons-arrowdownright.mjs.map +0 -1
- package/fesm2022/primeng-icons-arrowleft.mjs.map +0 -1
- package/fesm2022/primeng-icons-arrowright.mjs.map +0 -1
- package/fesm2022/primeng-icons-arrowup.mjs.map +0 -1
- package/fesm2022/primeng-icons-ban.mjs.map +0 -1
- package/fesm2022/primeng-icons-bars.mjs.map +0 -1
- package/fesm2022/primeng-icons-baseicon.mjs.map +0 -1
- package/fesm2022/primeng-icons-blank.mjs.map +0 -1
- package/fesm2022/primeng-icons-calendar.mjs.map +0 -1
- package/fesm2022/primeng-icons-caretleft.mjs.map +0 -1
- package/fesm2022/primeng-icons-caretright.mjs.map +0 -1
- package/fesm2022/primeng-icons-check.mjs.map +0 -1
- package/fesm2022/primeng-icons-chevrondown.mjs.map +0 -1
- package/fesm2022/primeng-icons-chevronleft.mjs.map +0 -1
- package/fesm2022/primeng-icons-chevronright.mjs.map +0 -1
- package/fesm2022/primeng-icons-chevronup.mjs.map +0 -1
- package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +0 -1
- package/fesm2022/primeng-icons-eye.mjs.map +0 -1
- package/fesm2022/primeng-icons-eyeslash.mjs.map +0 -1
- package/fesm2022/primeng-icons-filter.mjs.map +0 -1
- package/fesm2022/primeng-icons-filterfill.mjs.map +0 -1
- package/fesm2022/primeng-icons-filterslash.mjs.map +0 -1
- package/fesm2022/primeng-icons-home.mjs.map +0 -1
- package/fesm2022/primeng-icons-infocircle.mjs.map +0 -1
- package/fesm2022/primeng-icons-minus.mjs.map +0 -1
- package/fesm2022/primeng-icons-pencil.mjs.map +0 -1
- package/fesm2022/primeng-icons-plus.mjs.map +0 -1
- package/fesm2022/primeng-icons-refresh.mjs.map +0 -1
- package/fesm2022/primeng-icons-search.mjs.map +0 -1
- package/fesm2022/primeng-icons-searchminus.mjs.map +0 -1
- package/fesm2022/primeng-icons-searchplus.mjs.map +0 -1
- package/fesm2022/primeng-icons-sortalt.mjs.map +0 -1
- package/fesm2022/primeng-icons-sortamountdown.mjs.map +0 -1
- package/fesm2022/primeng-icons-sortamountupalt.mjs.map +0 -1
- package/fesm2022/primeng-icons-spinner.mjs.map +0 -1
- package/fesm2022/primeng-icons-star.mjs.map +0 -1
- package/fesm2022/primeng-icons-starfill.mjs.map +0 -1
- package/fesm2022/primeng-icons-thlarge.mjs.map +0 -1
- package/fesm2022/primeng-icons-times.mjs.map +0 -1
- package/fesm2022/primeng-icons-timescircle.mjs.map +0 -1
- package/fesm2022/primeng-icons-trash.mjs.map +0 -1
- package/fesm2022/primeng-icons-undo.mjs.map +0 -1
- package/fesm2022/primeng-icons-upload.mjs.map +0 -1
- package/fesm2022/primeng-icons-windowmaximize.mjs.map +0 -1
- package/fesm2022/primeng-icons-windowminimize.mjs.map +0 -1
- package/fesm2022/primeng-iftalabel.mjs.map +0 -1
- package/fesm2022/primeng-image.mjs.map +0 -1
- package/fesm2022/primeng-imagecompare.mjs.map +0 -1
- package/fesm2022/primeng-inplace.mjs.map +0 -1
- package/fesm2022/primeng-inputcolor.mjs.map +0 -1
- package/fesm2022/primeng-inputgroup.mjs.map +0 -1
- package/fesm2022/primeng-inputgroupaddon.mjs.map +0 -1
- package/fesm2022/primeng-inputicon.mjs.map +0 -1
- package/fesm2022/primeng-inputmask.mjs.map +0 -1
- package/fesm2022/primeng-inputnumber.mjs.map +0 -1
- package/fesm2022/primeng-inputotp.mjs.map +0 -1
- package/fesm2022/primeng-inputpassword.mjs.map +0 -1
- package/fesm2022/primeng-inputtags.mjs.map +0 -1
- package/fesm2022/primeng-inputtext.mjs.map +0 -1
- package/fesm2022/primeng-keyfilter.mjs.map +0 -1
- package/fesm2022/primeng-knob.mjs.map +0 -1
- package/fesm2022/primeng-label.mjs.map +0 -1
- package/fesm2022/primeng-license.mjs.map +0 -1
- package/fesm2022/primeng-listbox.mjs.map +0 -1
- package/fesm2022/primeng-megamenu.mjs.map +0 -1
- package/fesm2022/primeng-menu.mjs.map +0 -1
- package/fesm2022/primeng-menubar.mjs.map +0 -1
- package/fesm2022/primeng-message.mjs.map +0 -1
- package/fesm2022/primeng-metergroup.mjs.map +0 -1
- package/fesm2022/primeng-motion.mjs.map +0 -1
- package/fesm2022/primeng-multiselect.mjs.map +0 -1
- package/fesm2022/primeng-orderlist.mjs.map +0 -1
- package/fesm2022/primeng-organizationchart.mjs.map +0 -1
- package/fesm2022/primeng-overlay.mjs.map +0 -1
- package/fesm2022/primeng-overlaybadge.mjs.map +0 -1
- package/fesm2022/primeng-paginator.mjs.map +0 -1
- package/fesm2022/primeng-panel.mjs.map +0 -1
- package/fesm2022/primeng-panelmenu.mjs.map +0 -1
- package/fesm2022/primeng-passthrough.mjs.map +0 -1
- package/fesm2022/primeng-password.mjs.map +0 -1
- package/fesm2022/primeng-picklist.mjs.map +0 -1
- package/fesm2022/primeng-popover.mjs.map +0 -1
- package/fesm2022/primeng-progressbar.mjs.map +0 -1
- package/fesm2022/primeng-progressspinner.mjs.map +0 -1
- package/fesm2022/primeng-radiobutton.mjs.map +0 -1
- package/fesm2022/primeng-rating.mjs.map +0 -1
- package/fesm2022/primeng-ripple.mjs.map +0 -1
- package/fesm2022/primeng-scrollarea.mjs.map +0 -1
- package/fesm2022/primeng-scroller.mjs.map +0 -1
- package/fesm2022/primeng-scrollpanel.mjs.map +0 -1
- package/fesm2022/primeng-scrolltop.mjs.map +0 -1
- package/fesm2022/primeng-select.mjs.map +0 -1
- package/fesm2022/primeng-selectbutton.mjs.map +0 -1
- package/fesm2022/primeng-sidebar.mjs.map +0 -1
- package/fesm2022/primeng-skeleton.mjs.map +0 -1
- package/fesm2022/primeng-slider.mjs.map +0 -1
- package/fesm2022/primeng-speeddial.mjs.map +0 -1
- package/fesm2022/primeng-splitbutton.mjs.map +0 -1
- package/fesm2022/primeng-splitter.mjs.map +0 -1
- package/fesm2022/primeng-stepper.mjs.map +0 -1
- package/fesm2022/primeng-steps.mjs.map +0 -1
- package/fesm2022/primeng-styleclass.mjs.map +0 -1
- package/fesm2022/primeng-table.mjs.map +0 -1
- package/fesm2022/primeng-tabs.mjs.map +0 -1
- package/fesm2022/primeng-tag.mjs.map +0 -1
- package/fesm2022/primeng-terminal.mjs.map +0 -1
- package/fesm2022/primeng-textarea.mjs.map +0 -1
- package/fesm2022/primeng-tieredmenu.mjs.map +0 -1
- package/fesm2022/primeng-timeline.mjs.map +0 -1
- package/fesm2022/primeng-toast.mjs.map +0 -1
- package/fesm2022/primeng-togglebutton.mjs.map +0 -1
- package/fesm2022/primeng-toggleswitch.mjs.map +0 -1
- package/fesm2022/primeng-toolbar.mjs.map +0 -1
- package/fesm2022/primeng-tooltip.mjs.map +0 -1
- package/fesm2022/primeng-tree.mjs.map +0 -1
- package/fesm2022/primeng-treeselect.mjs.map +0 -1
- package/fesm2022/primeng-treetable.mjs.map +0 -1
- package/fesm2022/primeng-usestyle.mjs.map +0 -1
- package/fesm2022/primeng-utils.mjs.map +0 -1
- package/fesm2022/primeng.mjs.map +0 -1
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import { NgTemplateOutlet, isPlatformBrowser } from "@angular/common";
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
import { ChangeDetectionStrategy, Component, Injectable, InjectionToken, NgModule, ViewEncapsulation, booleanAttribute, computed, contentChild, effect, forwardRef, inject, input, isDevMode, numberAttribute, output, signal, viewChild } from "@angular/core";
|
|
3
|
+
import { ChangeDetectionStrategy, Component, Injectable, InjectionToken, NgModule, ViewEncapsulation, afterRenderEffect, booleanAttribute, computed, contentChild, effect, forwardRef, inject, input, isDevMode, numberAttribute, output, signal, untracked, viewChild } from "@angular/core";
|
|
4
|
+
import { toSignal } from "@angular/core/rxjs-interop";
|
|
4
5
|
import { NG_VALUE_ACCESSOR } from "@angular/forms";
|
|
5
6
|
import { ChevronDown } from "@primeicons/angular/chevron-down";
|
|
6
7
|
import { Search } from "@primeicons/angular/search";
|
|
7
8
|
import { Times } from "@primeicons/angular/times";
|
|
8
|
-
import { deepEquals, equals, findLastIndex, findSingle, focus, getFirstFocusableElement, getFocusableElements, getLastFocusableElement, isEmpty, isNotEmpty, isPrintableCharacter, resolveFieldData, scrollInView
|
|
9
|
+
import { deepEquals, equals, findLastIndex, findSingle, focus, getFirstFocusableElement, getFocusableElements, getLastFocusableElement, isEmpty, isNotEmpty, isPrintableCharacter, isScalar, resolveFieldData, scrollInView } from "@primeuix/utils";
|
|
9
10
|
import { FilterService, SharedModule, TranslationKeys } from "primeng/api";
|
|
10
11
|
import { AutoFocus } from "primeng/autofocus";
|
|
11
12
|
import { BaseComponent, PARENT_INSTANCE } from "primeng/basecomponent";
|
|
12
13
|
import { BaseInput } from "primeng/baseinput";
|
|
13
14
|
import * as i1 from "primeng/bind";
|
|
14
15
|
import { Bind, BindModule } from "primeng/bind";
|
|
15
|
-
import { unblockBodyScroll } from "primeng/dom";
|
|
16
|
+
import { getShadowRoot, unblockBodyScroll } from "primeng/dom";
|
|
16
17
|
import { IconField } from "primeng/iconfield";
|
|
17
18
|
import { InputIcon } from "primeng/inputicon";
|
|
18
19
|
import { InputText } from "primeng/inputtext";
|
|
19
20
|
import { Overlay } from "primeng/overlay";
|
|
20
21
|
import { Scroller } from "primeng/scroller";
|
|
21
22
|
import { Tooltip } from "primeng/tooltip";
|
|
22
|
-
import { Check } from "@primeicons/angular/check";
|
|
23
23
|
import { Blank } from "@primeicons/angular/blank";
|
|
24
|
+
import { Check } from "@primeicons/angular/check";
|
|
24
25
|
import { Ripple } from "primeng/ripple";
|
|
25
26
|
import { style } from "@primeuix/styles/select";
|
|
26
27
|
import { BaseStyle } from "primeng/base";
|
|
@@ -40,7 +41,7 @@ const classes = {
|
|
|
40
41
|
"p-select-lg p-inputfield-lg": instance.size() === "large"
|
|
41
42
|
}],
|
|
42
43
|
label: ({ instance }) => ["p-select-label", {
|
|
43
|
-
"p-placeholder": instance.placeholder() && instance.label() === instance.placeholder(),
|
|
44
|
+
"p-placeholder": !instance.editable() && instance.placeholder() && instance.label() === instance.placeholder(),
|
|
44
45
|
"p-select-label-empty": !instance.editable() && !instance.selectedItemTemplate() && (instance.label() === void 0 || instance.label() === null || instance.label() === "p-emptylabel" || instance.label().length === 0)
|
|
45
46
|
}],
|
|
46
47
|
clearIcon: "p-select-clear-icon",
|
|
@@ -70,7 +71,7 @@ var SelectStyle = class SelectStyle extends BaseStyle {
|
|
|
70
71
|
classes = classes;
|
|
71
72
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
72
73
|
minVersion: "12.0.0",
|
|
73
|
-
version: "22.2.
|
|
74
|
+
version: "22.2.3",
|
|
74
75
|
ngImport: i0,
|
|
75
76
|
type: SelectStyle,
|
|
76
77
|
deps: null,
|
|
@@ -78,14 +79,14 @@ var SelectStyle = class SelectStyle extends BaseStyle {
|
|
|
78
79
|
});
|
|
79
80
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
80
81
|
minVersion: "12.0.0",
|
|
81
|
-
version: "22.2.
|
|
82
|
+
version: "22.2.3",
|
|
82
83
|
ngImport: i0,
|
|
83
84
|
type: SelectStyle
|
|
84
85
|
});
|
|
85
86
|
};
|
|
86
87
|
i0.ɵɵngDeclareClassMetadata({
|
|
87
88
|
minVersion: "12.0.0",
|
|
88
|
-
version: "22.2.
|
|
89
|
+
version: "22.2.3",
|
|
89
90
|
ngImport: i0,
|
|
90
91
|
type: SelectStyle,
|
|
91
92
|
decorators: [{ type: Injectable }]
|
|
@@ -132,14 +133,6 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
132
133
|
...ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {},
|
|
133
134
|
transform: booleanAttribute
|
|
134
135
|
});
|
|
135
|
-
visible = input(void 0, {
|
|
136
|
-
...ngDevMode ? { debugName: "visible" } : /* istanbul ignore next */ {},
|
|
137
|
-
transform: booleanAttribute
|
|
138
|
-
});
|
|
139
|
-
itemSize = input(void 0, {
|
|
140
|
-
...ngDevMode ? { debugName: "itemSize" } : /* istanbul ignore next */ {},
|
|
141
|
-
transform: numberAttribute
|
|
142
|
-
});
|
|
143
136
|
ariaPosInset = input(...ngDevMode ? [void 0, { debugName: "ariaPosInset" }] : /* istanbul ignore next */ []);
|
|
144
137
|
ariaSetSize = input(...ngDevMode ? [void 0, { debugName: "ariaSetSize" }] : /* istanbul ignore next */ []);
|
|
145
138
|
template = input(...ngDevMode ? [void 0, { debugName: "template" }] : /* istanbul ignore next */ []);
|
|
@@ -161,8 +154,9 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
161
154
|
this.onMouseEnter.emit(event);
|
|
162
155
|
}
|
|
163
156
|
getPTOptions() {
|
|
164
|
-
return this.$pcSelect?.
|
|
157
|
+
return this.$pcSelect?.ptm("option", { context: {
|
|
165
158
|
option: this.option(),
|
|
159
|
+
index: this.index() ?? 0,
|
|
166
160
|
selected: this.selected(),
|
|
167
161
|
focused: this.focused(),
|
|
168
162
|
disabled: this.disabled()
|
|
@@ -170,7 +164,7 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
170
164
|
}
|
|
171
165
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
172
166
|
minVersion: "12.0.0",
|
|
173
|
-
version: "22.2.
|
|
167
|
+
version: "22.2.3",
|
|
174
168
|
ngImport: i0,
|
|
175
169
|
type: SelectItem,
|
|
176
170
|
deps: null,
|
|
@@ -178,7 +172,7 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
178
172
|
});
|
|
179
173
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
180
174
|
minVersion: "17.0.0",
|
|
181
|
-
version: "22.2.
|
|
175
|
+
version: "22.2.3",
|
|
182
176
|
type: SelectItem,
|
|
183
177
|
isStandalone: true,
|
|
184
178
|
selector: "p-select-item",
|
|
@@ -225,20 +219,6 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
225
219
|
isRequired: false,
|
|
226
220
|
transformFunction: null
|
|
227
221
|
},
|
|
228
|
-
visible: {
|
|
229
|
-
classPropertyName: "visible",
|
|
230
|
-
publicName: "visible",
|
|
231
|
-
isSignal: true,
|
|
232
|
-
isRequired: false,
|
|
233
|
-
transformFunction: null
|
|
234
|
-
},
|
|
235
|
-
itemSize: {
|
|
236
|
-
classPropertyName: "itemSize",
|
|
237
|
-
publicName: "itemSize",
|
|
238
|
-
isSignal: true,
|
|
239
|
-
isRequired: false,
|
|
240
|
-
transformFunction: null
|
|
241
|
-
},
|
|
242
222
|
ariaPosInset: {
|
|
243
223
|
classPropertyName: "ariaPosInset",
|
|
244
224
|
publicName: "ariaPosInset",
|
|
@@ -300,7 +280,7 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
300
280
|
(mouseenter)="onOptionMouseEnter($event)"
|
|
301
281
|
role="option"
|
|
302
282
|
pRipple
|
|
303
|
-
[attr.aria-label]="label()"
|
|
283
|
+
[attr.aria-label]="template() ? undefined : label()"
|
|
304
284
|
[attr.aria-setsize]="ariaSetSize()"
|
|
305
285
|
[attr.aria-posinset]="ariaPosInset()"
|
|
306
286
|
[attr.aria-selected]="selected()"
|
|
@@ -370,7 +350,7 @@ var SelectItem = class SelectItem extends BaseComponent {
|
|
|
370
350
|
};
|
|
371
351
|
i0.ɵɵngDeclareClassMetadata({
|
|
372
352
|
minVersion: "12.0.0",
|
|
373
|
-
version: "22.2.
|
|
353
|
+
version: "22.2.3",
|
|
374
354
|
ngImport: i0,
|
|
375
355
|
type: SelectItem,
|
|
376
356
|
decorators: [{
|
|
@@ -394,7 +374,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
394
374
|
(mouseenter)="onOptionMouseEnter($event)"
|
|
395
375
|
role="option"
|
|
396
376
|
pRipple
|
|
397
|
-
[attr.aria-label]="label()"
|
|
377
|
+
[attr.aria-label]="template() ? undefined : label()"
|
|
398
378
|
[attr.aria-setsize]="ariaSetSize()"
|
|
399
379
|
[attr.aria-posinset]="ariaPosInset()"
|
|
400
380
|
[attr.aria-selected]="selected()"
|
|
@@ -473,22 +453,6 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
473
453
|
required: false
|
|
474
454
|
}]
|
|
475
455
|
}],
|
|
476
|
-
visible: [{
|
|
477
|
-
type: i0.Input,
|
|
478
|
-
args: [{
|
|
479
|
-
isSignal: true,
|
|
480
|
-
alias: "visible",
|
|
481
|
-
required: false
|
|
482
|
-
}]
|
|
483
|
-
}],
|
|
484
|
-
itemSize: [{
|
|
485
|
-
type: i0.Input,
|
|
486
|
-
args: [{
|
|
487
|
-
isSignal: true,
|
|
488
|
-
alias: "itemSize",
|
|
489
|
-
required: false
|
|
490
|
-
}]
|
|
491
|
-
}],
|
|
492
456
|
ariaPosInset: [{
|
|
493
457
|
type: i0.Input,
|
|
494
458
|
args: [{
|
|
@@ -557,7 +521,7 @@ var Select = class Select extends BaseInput {
|
|
|
557
521
|
bindDirectiveInstance = inject(Bind, { self: true });
|
|
558
522
|
filterService = inject(FilterService);
|
|
559
523
|
id = input(...ngDevMode ? [void 0, { debugName: "id" }] : /* istanbul ignore next */ []);
|
|
560
|
-
_internalId =
|
|
524
|
+
_internalId = this.$useId.next("pn_id_");
|
|
561
525
|
$id = computed(() => this.id() || this._internalId, ...ngDevMode ? [{ debugName: "$id" }] : /* istanbul ignore next */ []);
|
|
562
526
|
scrollHeight = input("200px", ...ngDevMode ? [{ debugName: "scrollHeight" }] : /* istanbul ignore next */ []);
|
|
563
527
|
filter = input(void 0, {
|
|
@@ -618,6 +582,9 @@ var Select = class Select extends BaseInput {
|
|
|
618
582
|
});
|
|
619
583
|
emptyFilterMessage = input("", ...ngDevMode ? [{ debugName: "emptyFilterMessage" }] : /* istanbul ignore next */ []);
|
|
620
584
|
emptyMessage = input("", ...ngDevMode ? [{ debugName: "emptyMessage" }] : /* istanbul ignore next */ []);
|
|
585
|
+
filterMessage = input(...ngDevMode ? [void 0, { debugName: "filterMessage" }] : /* istanbul ignore next */ []);
|
|
586
|
+
selectionMessage = input(...ngDevMode ? [void 0, { debugName: "selectionMessage" }] : /* istanbul ignore next */ []);
|
|
587
|
+
emptySelectionMessage = input(...ngDevMode ? [void 0, { debugName: "emptySelectionMessage" }] : /* istanbul ignore next */ []);
|
|
621
588
|
lazy = input(false, {
|
|
622
589
|
...ngDevMode ? { debugName: "lazy" } : /* istanbul ignore next */ {},
|
|
623
590
|
transform: booleanAttribute
|
|
@@ -750,29 +717,37 @@ var Select = class Select extends BaseInput {
|
|
|
750
717
|
});
|
|
751
718
|
filterOptions;
|
|
752
719
|
_filterValue = signal(null, ...ngDevMode ? [{ debugName: "_filterValue" }] : /* istanbul ignore next */ []);
|
|
753
|
-
_placeholder = signal(void 0, ...ngDevMode ? [{ debugName: "_placeholder" }] : /* istanbul ignore next */ []);
|
|
754
720
|
_options = signal(null, ...ngDevMode ? [{ debugName: "_options" }] : /* istanbul ignore next */ []);
|
|
755
721
|
value;
|
|
756
|
-
hover;
|
|
757
722
|
focused = signal(false, ...ngDevMode ? [{ debugName: "focused" }] : /* istanbul ignore next */ []);
|
|
758
723
|
overlayVisible = signal(false, ...ngDevMode ? [{ debugName: "overlayVisible" }] : /* istanbul ignore next */ []);
|
|
759
724
|
optionsChanged;
|
|
760
|
-
panel;
|
|
761
|
-
dimensionsUpdated;
|
|
762
|
-
hoveredItem;
|
|
763
725
|
selectedOptionUpdated;
|
|
764
726
|
searchValue;
|
|
765
|
-
searchIndex;
|
|
766
727
|
searchTimeout;
|
|
767
|
-
|
|
768
|
-
|
|
728
|
+
alignOverlayTimeout;
|
|
729
|
+
changeTimeout;
|
|
730
|
+
scrollToSelectedTimeout;
|
|
731
|
+
scrollInViewTimeout;
|
|
769
732
|
preventModelTouched;
|
|
770
733
|
focusedOptionIndex = signal(-1, ...ngDevMode ? [{ debugName: "focusedOptionIndex" }] : /* istanbul ignore next */ []);
|
|
771
|
-
labelId;
|
|
772
|
-
listId;
|
|
773
734
|
clicked = signal(false, ...ngDevMode ? [{ debugName: "clicked" }] : /* istanbul ignore next */ []);
|
|
774
|
-
|
|
775
|
-
|
|
735
|
+
translation = toSignal(this.config.translationObserver, { initialValue: this.config.translation });
|
|
736
|
+
emptyMessageLabel = computed(() => this.emptyMessage() || this.translation()?.emptyMessage || "", ...ngDevMode ? [{ debugName: "emptyMessageLabel" }] : /* istanbul ignore next */ []);
|
|
737
|
+
emptyFilterMessageLabel = computed(() => this.emptyFilterMessage() || this.translation()?.emptyFilterMessage || "", ...ngDevMode ? [{ debugName: "emptyFilterMessageLabel" }] : /* istanbul ignore next */ []);
|
|
738
|
+
filterMessageText = computed(() => this.filterMessage() || this.translation()?.searchMessage || "", ...ngDevMode ? [{ debugName: "filterMessageText" }] : /* istanbul ignore next */ []);
|
|
739
|
+
emptyFilterMessageText = computed(() => this.emptyFilterMessage() || this.translation()?.emptySearchMessage || this.translation()?.emptyFilterMessage || "", ...ngDevMode ? [{ debugName: "emptyFilterMessageText" }] : /* istanbul ignore next */ []);
|
|
740
|
+
filterResultMessageText = computed(() => {
|
|
741
|
+
const count = this.visibleOptions()?.filter((option) => !this.isOptionGroup(option)).length ?? 0;
|
|
742
|
+
return count ? this.filterMessageText().replaceAll("{0}", String(count)) : this.emptyFilterMessageText();
|
|
743
|
+
}, ...ngDevMode ? [{ debugName: "filterResultMessageText" }] : /* istanbul ignore next */ []);
|
|
744
|
+
selectionMessageText = computed(() => this.selectionMessage() || this.translation()?.selectionMessage || "", ...ngDevMode ? [{ debugName: "selectionMessageText" }] : /* istanbul ignore next */ []);
|
|
745
|
+
emptySelectionMessageText = computed(() => this.emptySelectionMessage() || this.translation()?.emptySelectionMessage || "", ...ngDevMode ? [{ debugName: "emptySelectionMessageText" }] : /* istanbul ignore next */ []);
|
|
746
|
+
selectedMessageText = computed(() => {
|
|
747
|
+
const value = this.modelValue();
|
|
748
|
+
const selectedCount = this.multiple() ? Array.isArray(value) ? value.length : 0 : 1;
|
|
749
|
+
return this.$filled() ? this.selectionMessageText().replaceAll("{0}", String(selectedCount)) : this.emptySelectionMessageText();
|
|
750
|
+
}, ...ngDevMode ? [{ debugName: "selectedMessageText" }] : /* istanbul ignore next */ []);
|
|
776
751
|
largeListWarned = false;
|
|
777
752
|
isVisibleClearIcon = computed(() => {
|
|
778
753
|
if (!this.showClear() || this.$disabled() || this.readonly() || this.loading()) return false;
|
|
@@ -792,8 +767,11 @@ var Select = class Select extends BaseInput {
|
|
|
792
767
|
if (this.group()) {
|
|
793
768
|
const optionGroups = this._options() || [];
|
|
794
769
|
const filtered = [];
|
|
770
|
+
const filteredSet = new Set(filteredOptions);
|
|
795
771
|
optionGroups.forEach((group) => {
|
|
796
|
-
const
|
|
772
|
+
const groupChildren = this.getOptionGroupChildren(group);
|
|
773
|
+
if (!groupChildren || !groupChildren.length) return;
|
|
774
|
+
const filteredItems = groupChildren.filter((item) => filteredSet.has(item));
|
|
797
775
|
if (filteredItems.length > 0) filtered.push({
|
|
798
776
|
...group,
|
|
799
777
|
[typeof this.optionGroupChildren() === "string" ? this.optionGroupChildren() : "items"]: [...filteredItems]
|
|
@@ -823,13 +801,14 @@ var Select = class Select extends BaseInput {
|
|
|
823
801
|
const selectedOption = options[selectedOptionIndex];
|
|
824
802
|
return this.getOptionLabel(selectedOption);
|
|
825
803
|
}
|
|
826
|
-
return this.placeholder() || "p-emptylabel";
|
|
804
|
+
return this.getValueLabel(this.modelValue()) ?? (this.placeholder() || "p-emptylabel");
|
|
827
805
|
}, ...ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []);
|
|
828
806
|
$ariaLabel = computed(() => this.ariaLabel() || (this.label() === "p-emptylabel" ? void 0 : this.label()), ...ngDevMode ? [{ debugName: "$ariaLabel" }] : /* istanbul ignore next */ []);
|
|
829
807
|
$ariaMultiselectable = computed(() => this.multiple() || void 0, ...ngDevMode ? [{ debugName: "$ariaMultiselectable" }] : /* istanbul ignore next */ []);
|
|
808
|
+
$ariaReadonly = computed(() => this.readonly() || void 0, ...ngDevMode ? [{ debugName: "$ariaReadonly" }] : /* istanbul ignore next */ []);
|
|
830
809
|
$placeholder = computed(() => {
|
|
831
810
|
const modelVal = this.modelValue();
|
|
832
|
-
return modelVal === void 0 || modelVal === null ? this.placeholder()
|
|
811
|
+
return modelVal === void 0 || modelVal === null ? this.placeholder() : void 0;
|
|
833
812
|
}, ...ngDevMode ? [{ debugName: "$placeholder" }] : /* istanbul ignore next */ []);
|
|
834
813
|
$required = computed(() => this.required() ? "" : void 0, ...ngDevMode ? [{ debugName: "$required" }] : /* istanbul ignore next */ []);
|
|
835
814
|
$readonly = computed(() => this.readonly() ? "" : void 0, ...ngDevMode ? [{ debugName: "$readonly" }] : /* istanbul ignore next */ []);
|
|
@@ -865,7 +844,7 @@ var Select = class Select extends BaseInput {
|
|
|
865
844
|
[this.size()]: this.size()
|
|
866
845
|
}), ...ngDevMode ? [{ debugName: "containerDataP" }] : /* istanbul ignore next */ []);
|
|
867
846
|
labelDataP = computed(() => this.cn({
|
|
868
|
-
placeholder: this.label() === this.placeholder(),
|
|
847
|
+
placeholder: !this.editable() && this.label() === this.placeholder(),
|
|
869
848
|
clearable: this.showClear(),
|
|
870
849
|
disabled: this.$disabled(),
|
|
871
850
|
[this.size()]: this.size(),
|
|
@@ -901,6 +880,24 @@ var Select = class Select extends BaseInput {
|
|
|
901
880
|
this.optionsChanged = true;
|
|
902
881
|
}
|
|
903
882
|
});
|
|
883
|
+
afterRenderEffect((onCleanup) => {
|
|
884
|
+
const inputId = this.inputId();
|
|
885
|
+
if (!inputId || this.editable()) return;
|
|
886
|
+
const label = (getShadowRoot(this.el.nativeElement) ?? this.document).querySelector(`label[for="${inputId}"]`);
|
|
887
|
+
if (label) onCleanup(this.renderer.listen(label, "click", () => !this.$disabled() && focus(this.focusInputViewChild()?.nativeElement)));
|
|
888
|
+
});
|
|
889
|
+
effect(() => {
|
|
890
|
+
const options = this.visibleOptions();
|
|
891
|
+
if (!this.overlayVisible()) return;
|
|
892
|
+
untracked(() => {
|
|
893
|
+
const index = this.focusedOptionIndex();
|
|
894
|
+
if (index !== -1 && this.isValidOption(options[index])) return;
|
|
895
|
+
if (index === -1 && !(this.autoOptionFocus() && !this.editable() && this._filterValue() == null)) return;
|
|
896
|
+
const next = this.autoOptionFocus() ? this.findFirstFocusedOptionIndex() : this.findSelectedOptionIndex();
|
|
897
|
+
this.focusedOptionIndex.set(next);
|
|
898
|
+
if (next !== -1) this.scrollInView(next);
|
|
899
|
+
});
|
|
900
|
+
});
|
|
904
901
|
}
|
|
905
902
|
isModelValueNotSet() {
|
|
906
903
|
return this.modelValue() === null && !this.isOptionValueEqualsModelValue(this.selectedOption());
|
|
@@ -938,7 +935,8 @@ var Select = class Select extends BaseInput {
|
|
|
938
935
|
this.bindDirectiveInstance.setAttrs(this.ptms(["host", "root"]));
|
|
939
936
|
if (this.optionsChanged && this.overlayVisible()) {
|
|
940
937
|
this.optionsChanged = false;
|
|
941
|
-
|
|
938
|
+
clearTimeout(this.alignOverlayTimeout);
|
|
939
|
+
this.alignOverlayTimeout = setTimeout(() => {
|
|
942
940
|
if (this.overlayViewChild()) this.overlayViewChild()?.alignOverlay();
|
|
943
941
|
}, 1);
|
|
944
942
|
}
|
|
@@ -1004,9 +1002,6 @@ var Select = class Select extends BaseInput {
|
|
|
1004
1002
|
this.writeModelValue(value);
|
|
1005
1003
|
this.selectedOptionUpdated = true;
|
|
1006
1004
|
}
|
|
1007
|
-
allowModelChange() {
|
|
1008
|
-
return !!this.modelValue() && !this.placeholder() && (this.modelValue() === void 0 || this.modelValue() === null) && !this.editable() && this._options() && this._options().length;
|
|
1009
|
-
}
|
|
1010
1005
|
isSelected(option) {
|
|
1011
1006
|
if (this.multiple()) {
|
|
1012
1007
|
const currentValue = this.modelValue();
|
|
@@ -1022,18 +1017,9 @@ var Select = class Select extends BaseInput {
|
|
|
1022
1017
|
onAfterViewInit() {
|
|
1023
1018
|
if (!isPlatformBrowser(this.platformId)) return;
|
|
1024
1019
|
if (this.editable()) this.updateEditableLabel();
|
|
1025
|
-
this.updatePlaceHolderForFloatingLabel();
|
|
1026
|
-
}
|
|
1027
|
-
updatePlaceHolderForFloatingLabel() {
|
|
1028
|
-
const parentElement = this.el.nativeElement.parentElement;
|
|
1029
|
-
const isInFloatingLabel = parentElement?.classList.contains("p-float-label");
|
|
1030
|
-
if (parentElement && isInFloatingLabel && !this.selectedOption()) {
|
|
1031
|
-
const label = parentElement.querySelector("label");
|
|
1032
|
-
if (label) this._placeholder.set(label.textContent);
|
|
1033
|
-
}
|
|
1034
1020
|
}
|
|
1035
1021
|
updateEditableLabel() {
|
|
1036
|
-
if (this.editableInputViewChild()) this.editableInputViewChild().nativeElement.value = this.getOptionLabel(this.selectedOption()) || this.modelValue() || "";
|
|
1022
|
+
if (this.editableInputViewChild()) this.editableInputViewChild().nativeElement.value = this.getOptionLabel(this.selectedOption()) || this.getValueLabel(this.modelValue()) || this.modelValue() || "";
|
|
1037
1023
|
}
|
|
1038
1024
|
clearEditableLabel() {
|
|
1039
1025
|
if (this.editableInputViewChild()) this.editableInputViewChild().nativeElement.value = "";
|
|
@@ -1044,6 +1030,11 @@ var Select = class Select extends BaseInput {
|
|
|
1044
1030
|
getOptionLabel(option) {
|
|
1045
1031
|
return this.optionLabel() !== void 0 && this.optionLabel() !== null ? resolveFieldData(option, this.optionLabel()) : option && option.label !== void 0 ? option.label : option;
|
|
1046
1032
|
}
|
|
1033
|
+
getValueLabel(value) {
|
|
1034
|
+
if (this.optionValue() || value == null) return null;
|
|
1035
|
+
const label = this.getOptionLabel(value);
|
|
1036
|
+
return isScalar(label) && label !== "" ? label : null;
|
|
1037
|
+
}
|
|
1047
1038
|
getOptionValue(option) {
|
|
1048
1039
|
return this.optionValue() && this.optionValue() !== null ? resolveFieldData(option, this.optionValue()) : !this.optionLabel() && option && option.value !== void 0 ? option.value : option;
|
|
1049
1040
|
}
|
|
@@ -1096,10 +1087,9 @@ var Select = class Select extends BaseInput {
|
|
|
1096
1087
|
onEditableInput(event) {
|
|
1097
1088
|
const value = event.target.value;
|
|
1098
1089
|
this.searchValue = "";
|
|
1099
|
-
if (!this.searchOptions(event, value)) this.focusedOptionIndex.set(-1);
|
|
1100
|
-
this.onModelChange(value);
|
|
1090
|
+
if (!this.searchOptions(event, value, false)) this.focusedOptionIndex.set(-1);
|
|
1101
1091
|
this.updateModel(value || null, event);
|
|
1102
|
-
setTimeout(() => {
|
|
1092
|
+
this.changeTimeout = setTimeout(() => {
|
|
1103
1093
|
this.onChange.emit({
|
|
1104
1094
|
originalEvent: event,
|
|
1105
1095
|
value
|
|
@@ -1127,9 +1117,12 @@ var Select = class Select extends BaseInput {
|
|
|
1127
1117
|
if (this._options() && this._options().length) {
|
|
1128
1118
|
if (this.virtualScroll()) {
|
|
1129
1119
|
const selectedIndex = this.modelValue() ? this.focusedOptionIndex() : -1;
|
|
1130
|
-
if (selectedIndex !== -1)
|
|
1131
|
-
this.
|
|
1132
|
-
|
|
1120
|
+
if (selectedIndex !== -1) {
|
|
1121
|
+
if (this.scrollToSelectedTimeout) clearTimeout(this.scrollToSelectedTimeout);
|
|
1122
|
+
this.scrollToSelectedTimeout = setTimeout(() => {
|
|
1123
|
+
this.scroller()?.scrollToIndex(selectedIndex);
|
|
1124
|
+
}, 10);
|
|
1125
|
+
}
|
|
1133
1126
|
} else {
|
|
1134
1127
|
let selectedListItem = findSingle(this.itemsWrapper, "[data-p-selected=\"true\"]");
|
|
1135
1128
|
if (selectedListItem) selectedListItem.scrollIntoView({
|
|
@@ -1176,6 +1169,7 @@ var Select = class Select extends BaseInput {
|
|
|
1176
1169
|
this.preventModelTouched = false;
|
|
1177
1170
|
}
|
|
1178
1171
|
onKeyDown(event, search = false) {
|
|
1172
|
+
if (event.isComposing || event.keyCode === 229) return;
|
|
1179
1173
|
if (this.$disabled() || this.readonly() || this.loading()) return;
|
|
1180
1174
|
switch (event.code) {
|
|
1181
1175
|
case "ArrowDown":
|
|
@@ -1228,7 +1222,11 @@ var Select = class Select extends BaseInput {
|
|
|
1228
1222
|
}
|
|
1229
1223
|
this.clicked.set(false);
|
|
1230
1224
|
}
|
|
1225
|
+
onFilterTemplateKeyDown(event) {
|
|
1226
|
+
if (this.filterTemplate() && event.target instanceof HTMLInputElement) this.onFilterKeyDown(event);
|
|
1227
|
+
}
|
|
1231
1228
|
onFilterKeyDown(event) {
|
|
1229
|
+
if (event.isComposing || event.keyCode === 229) return;
|
|
1232
1230
|
switch (event.code) {
|
|
1233
1231
|
case "ArrowDown":
|
|
1234
1232
|
this.onArrowDownKey(event);
|
|
@@ -1270,29 +1268,27 @@ var Select = class Select extends BaseInput {
|
|
|
1270
1268
|
event.preventDefault();
|
|
1271
1269
|
event.stopPropagation();
|
|
1272
1270
|
}
|
|
1273
|
-
changeFocusedOptionIndex(event, index) {
|
|
1271
|
+
changeFocusedOptionIndex(event, index, withSelection = true) {
|
|
1274
1272
|
if (this.focusedOptionIndex() !== index) {
|
|
1275
1273
|
this.focusedOptionIndex.set(index);
|
|
1276
1274
|
this.scrollInView();
|
|
1277
|
-
if (this.selectOnFocus() && !this.multiple()) {
|
|
1275
|
+
if (this.selectOnFocus() && withSelection && !this.multiple()) {
|
|
1278
1276
|
const option = this.visibleOptions()[index];
|
|
1279
1277
|
this.onOptionSelect(event, option, false);
|
|
1280
1278
|
}
|
|
1281
1279
|
}
|
|
1282
1280
|
}
|
|
1283
1281
|
scrollInView(index = -1) {
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
const
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
}, 0);
|
|
1295
|
-
}
|
|
1282
|
+
if (this.scrollInViewTimeout) clearTimeout(this.scrollInViewTimeout);
|
|
1283
|
+
this.scrollInViewTimeout = setTimeout(() => {
|
|
1284
|
+
const id = index !== -1 ? `${this.$id()}_${index}` : this.focusedOptionId();
|
|
1285
|
+
const element = this.itemsViewChild()?.nativeElement ? findSingle(this.itemsViewChild().nativeElement, `li[id="${id}"]`) : null;
|
|
1286
|
+
if (element) element.scrollIntoView?.({
|
|
1287
|
+
block: "nearest",
|
|
1288
|
+
inline: "nearest"
|
|
1289
|
+
});
|
|
1290
|
+
else if (!this.virtualScrollerDisabled() && this.virtualScroll()) this.scroller()?.scrollToIndex(index !== -1 ? index : this.focusedOptionIndex());
|
|
1291
|
+
}, 0);
|
|
1296
1292
|
}
|
|
1297
1293
|
hasSelectedOption() {
|
|
1298
1294
|
return this.modelValue() !== void 0;
|
|
@@ -1440,7 +1436,6 @@ var Select = class Select extends BaseInput {
|
|
|
1440
1436
|
this.onOptionSelect(event, option);
|
|
1441
1437
|
}
|
|
1442
1438
|
if (this.overlayVisible()) this.hide(this.filter());
|
|
1443
|
-
if (consumedByOverlay) event.stopPropagation();
|
|
1444
1439
|
}
|
|
1445
1440
|
}
|
|
1446
1441
|
}
|
|
@@ -1463,16 +1458,16 @@ var Select = class Select extends BaseInput {
|
|
|
1463
1458
|
searchFields() {
|
|
1464
1459
|
return this.filterBy()?.split(",") || this.filterFields() || [this.optionLabel()];
|
|
1465
1460
|
}
|
|
1466
|
-
searchOptions(event, char) {
|
|
1461
|
+
searchOptions(event, char, withSelection = true) {
|
|
1467
1462
|
this.searchValue = (this.searchValue || "") + char;
|
|
1468
|
-
let optionIndex = -1;
|
|
1469
1463
|
let matched = false;
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
this.
|
|
1475
|
-
|
|
1464
|
+
if (isNotEmpty(this.searchValue)) {
|
|
1465
|
+
let optionIndex = this.visibleOptions().findIndex((option) => this.isOptionExactMatched(option));
|
|
1466
|
+
if (optionIndex === -1) optionIndex = this.visibleOptions().findIndex((option) => this.isOptionMatched(option));
|
|
1467
|
+
if (optionIndex !== -1) matched = true;
|
|
1468
|
+
if (optionIndex === -1 && this.focusedOptionIndex() === -1) optionIndex = this.findFirstFocusedOptionIndex();
|
|
1469
|
+
if (optionIndex !== -1) this.changeFocusedOptionIndex(event, optionIndex, withSelection);
|
|
1470
|
+
}
|
|
1476
1471
|
if (this.searchTimeout) clearTimeout(this.searchTimeout);
|
|
1477
1472
|
this.searchTimeout = setTimeout(() => {
|
|
1478
1473
|
this.searchValue = "";
|
|
@@ -1480,8 +1475,11 @@ var Select = class Select extends BaseInput {
|
|
|
1480
1475
|
}, 500);
|
|
1481
1476
|
return matched;
|
|
1482
1477
|
}
|
|
1478
|
+
isOptionExactMatched(option) {
|
|
1479
|
+
return this.isValidOption(option) && this.getOptionLabel(option).toString().toLocaleLowerCase(this.filterLocale()) === (this.searchValue ?? "").toLocaleLowerCase(this.filterLocale());
|
|
1480
|
+
}
|
|
1483
1481
|
isOptionMatched(option) {
|
|
1484
|
-
return this.isValidOption(option) && this.getOptionLabel(option).toString().toLocaleLowerCase(this.filterLocale()).startsWith(this.searchValue
|
|
1482
|
+
return this.isValidOption(option) && this.getOptionLabel(option).toString().toLocaleLowerCase(this.filterLocale()).startsWith((this.searchValue ?? "").toLocaleLowerCase(this.filterLocale()));
|
|
1485
1483
|
}
|
|
1486
1484
|
onFilterInputChange(event) {
|
|
1487
1485
|
let value = event.target.value;
|
|
@@ -1492,10 +1490,26 @@ var Select = class Select extends BaseInput {
|
|
|
1492
1490
|
filter: this._filterValue()
|
|
1493
1491
|
});
|
|
1494
1492
|
if (!this.virtualScrollerDisabled()) this.scroller()?.scrollToIndex(0);
|
|
1495
|
-
|
|
1493
|
+
clearTimeout(this.alignOverlayTimeout);
|
|
1494
|
+
this.alignOverlayTimeout = setTimeout(() => {
|
|
1496
1495
|
this.overlayViewChild()?.alignOverlay();
|
|
1497
1496
|
});
|
|
1498
1497
|
}
|
|
1498
|
+
clearTimers() {
|
|
1499
|
+
clearTimeout(this.alignOverlayTimeout);
|
|
1500
|
+
clearTimeout(this.changeTimeout);
|
|
1501
|
+
clearTimeout(this.scrollToSelectedTimeout);
|
|
1502
|
+
clearTimeout(this.scrollInViewTimeout);
|
|
1503
|
+
clearTimeout(this.searchTimeout);
|
|
1504
|
+
this.alignOverlayTimeout = null;
|
|
1505
|
+
this.changeTimeout = null;
|
|
1506
|
+
this.scrollToSelectedTimeout = null;
|
|
1507
|
+
this.scrollInViewTimeout = null;
|
|
1508
|
+
this.searchTimeout = null;
|
|
1509
|
+
}
|
|
1510
|
+
onDestroy() {
|
|
1511
|
+
this.clearTimers();
|
|
1512
|
+
}
|
|
1499
1513
|
applyFocus() {
|
|
1500
1514
|
if (this.editable()) findSingle(this.el.nativeElement, "[data-pc-section=\"label\"]").focus();
|
|
1501
1515
|
else focus(this.focusInputViewChild()?.nativeElement);
|
|
@@ -1518,13 +1532,12 @@ var Select = class Select extends BaseInput {
|
|
|
1518
1532
|
writeControlValue(value, setModelValue) {
|
|
1519
1533
|
if (this.filter()) this.resetFilter();
|
|
1520
1534
|
this.value = value;
|
|
1521
|
-
if (this.allowModelChange()) this.onModelChange(value);
|
|
1522
1535
|
setModelValue(this.value);
|
|
1523
1536
|
this.updateEditableLabel();
|
|
1524
1537
|
}
|
|
1525
1538
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
1526
1539
|
minVersion: "12.0.0",
|
|
1527
|
-
version: "22.2.
|
|
1540
|
+
version: "22.2.3",
|
|
1528
1541
|
ngImport: i0,
|
|
1529
1542
|
type: Select,
|
|
1530
1543
|
deps: [],
|
|
@@ -1532,7 +1545,7 @@ var Select = class Select extends BaseInput {
|
|
|
1532
1545
|
});
|
|
1533
1546
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
1534
1547
|
minVersion: "17.0.0",
|
|
1535
|
-
version: "22.2.
|
|
1548
|
+
version: "22.2.3",
|
|
1536
1549
|
type: Select,
|
|
1537
1550
|
isStandalone: true,
|
|
1538
1551
|
selector: "p-select",
|
|
@@ -1747,6 +1760,27 @@ var Select = class Select extends BaseInput {
|
|
|
1747
1760
|
isRequired: false,
|
|
1748
1761
|
transformFunction: null
|
|
1749
1762
|
},
|
|
1763
|
+
filterMessage: {
|
|
1764
|
+
classPropertyName: "filterMessage",
|
|
1765
|
+
publicName: "filterMessage",
|
|
1766
|
+
isSignal: true,
|
|
1767
|
+
isRequired: false,
|
|
1768
|
+
transformFunction: null
|
|
1769
|
+
},
|
|
1770
|
+
selectionMessage: {
|
|
1771
|
+
classPropertyName: "selectionMessage",
|
|
1772
|
+
publicName: "selectionMessage",
|
|
1773
|
+
isSignal: true,
|
|
1774
|
+
isRequired: false,
|
|
1775
|
+
transformFunction: null
|
|
1776
|
+
},
|
|
1777
|
+
emptySelectionMessage: {
|
|
1778
|
+
classPropertyName: "emptySelectionMessage",
|
|
1779
|
+
publicName: "emptySelectionMessage",
|
|
1780
|
+
isSignal: true,
|
|
1781
|
+
isRequired: false,
|
|
1782
|
+
transformFunction: null
|
|
1783
|
+
},
|
|
1750
1784
|
lazy: {
|
|
1751
1785
|
classPropertyName: "lazy",
|
|
1752
1786
|
publicName: "lazy",
|
|
@@ -2110,7 +2144,7 @@ var Select = class Select extends BaseInput {
|
|
|
2110
2144
|
[attr.aria-labelledby]="ariaLabelledBy()"
|
|
2111
2145
|
[attr.aria-haspopup]="'listbox'"
|
|
2112
2146
|
[attr.aria-expanded]="$ariaExpanded"
|
|
2113
|
-
[attr.aria-
|
|
2147
|
+
[attr.aria-readonly]="$ariaReadonly()"
|
|
2114
2148
|
[attr.aria-controls]="$ariaControls()"
|
|
2115
2149
|
[attr.tabindex]="$tabindex()"
|
|
2116
2150
|
[pAutoFocus]="autofocus()"
|
|
@@ -2119,7 +2153,6 @@ var Select = class Select extends BaseInput {
|
|
|
2119
2153
|
(blur)="onInputBlur($event)"
|
|
2120
2154
|
(keydown)="onKeyDown($event)"
|
|
2121
2155
|
[attr.aria-required]="required()"
|
|
2122
|
-
[attr.required]="$required()"
|
|
2123
2156
|
[attr.disabled]="$disabledAttr()"
|
|
2124
2157
|
[attr.data-p]="labelDataP()"
|
|
2125
2158
|
>
|
|
@@ -2140,9 +2173,14 @@ var Select = class Select extends BaseInput {
|
|
|
2140
2173
|
[attr.id]="inputId()"
|
|
2141
2174
|
[class]="cx('label')"
|
|
2142
2175
|
[pBind]="ptm('label')"
|
|
2176
|
+
role="combobox"
|
|
2177
|
+
[attr.aria-autocomplete]="'list'"
|
|
2143
2178
|
[attr.aria-haspopup]="'listbox'"
|
|
2179
|
+
[attr.aria-expanded]="$ariaExpanded"
|
|
2180
|
+
[attr.aria-controls]="$ariaControls()"
|
|
2144
2181
|
[attr.placeholder]="$placeholder()"
|
|
2145
|
-
[attr.aria-label]="
|
|
2182
|
+
[attr.aria-label]="ariaLabel()"
|
|
2183
|
+
[attr.aria-labelledby]="ariaLabelledBy()"
|
|
2146
2184
|
(input)="onEditableInput($event)"
|
|
2147
2185
|
(keydown)="onKeyDown($event)"
|
|
2148
2186
|
[pAutoFocus]="autofocus()"
|
|
@@ -2186,12 +2224,12 @@ var Select = class Select extends BaseInput {
|
|
|
2186
2224
|
} @else {
|
|
2187
2225
|
@if (!dropdownIconTemplate()) {
|
|
2188
2226
|
@if (dropdownIcon()) {
|
|
2189
|
-
<span [class]="cn(cx('dropdownIcon'), dropdownIcon())" [pBind]="ptm('dropdownIcon')"></span>
|
|
2227
|
+
<span [class]="cn(cx('dropdownIcon'), dropdownIcon())" [pBind]="ptm('dropdownIcon')" [attr.aria-hidden]="true" [attr.data-p]="dropdownIconDataP()"></span>
|
|
2190
2228
|
} @else {
|
|
2191
|
-
<svg data-p-icon="chevron-down" [class]="cx('dropdownIcon')" [pBind]="ptm('dropdownIcon')" />
|
|
2229
|
+
<svg data-p-icon="chevron-down" [class]="cx('dropdownIcon')" [pBind]="ptm('dropdownIcon')" [attr.aria-hidden]="true" [attr.data-p]="dropdownIconDataP()" />
|
|
2192
2230
|
}
|
|
2193
2231
|
} @else {
|
|
2194
|
-
<span [class]="cx('dropdownIcon')" [pBind]="ptm('dropdownIcon')">
|
|
2232
|
+
<span [class]="cx('dropdownIcon')" [pBind]="ptm('dropdownIcon')" [attr.aria-hidden]="true">
|
|
2195
2233
|
<ng-template *ngTemplateOutlet="dropdownIconTemplate(); context: dropdownIconContext()"></ng-template>
|
|
2196
2234
|
</span>
|
|
2197
2235
|
}
|
|
@@ -2217,8 +2255,7 @@ var Select = class Select extends BaseInput {
|
|
|
2217
2255
|
<div [class]="cn(cx('overlay'), panelStyleClass())" [style]="panelStyle()" [pBind]="ptm('overlay')" [attr.data-p]="overlayDataP()">
|
|
2218
2256
|
<span
|
|
2219
2257
|
#firstHiddenFocusableEl
|
|
2220
|
-
|
|
2221
|
-
class="p-hidden-accessible p-hidden-focusable"
|
|
2258
|
+
[class]="pcn('p-hidden-accessible p-hidden-focusable')"
|
|
2222
2259
|
[attr.tabindex]="0"
|
|
2223
2260
|
(focus)="onFirstHiddenFocus($event)"
|
|
2224
2261
|
[attr.data-p-hidden-accessible]="true"
|
|
@@ -2228,7 +2265,7 @@ var Select = class Select extends BaseInput {
|
|
|
2228
2265
|
</span>
|
|
2229
2266
|
<ng-container *ngTemplateOutlet="headerTemplate(); context: { class: cx('header') }"></ng-container>
|
|
2230
2267
|
@if (filter()) {
|
|
2231
|
-
<div [class]="cx('header')" (click)="$event.stopPropagation()" [pBind]="ptm('header')">
|
|
2268
|
+
<div [class]="cx('header')" (click)="$event.stopPropagation()" (keydown)="onFilterTemplateKeyDown($event)" [pBind]="ptm('header')">
|
|
2232
2269
|
@if (filterTemplate()) {
|
|
2233
2270
|
<ng-container *ngTemplateOutlet="filterTemplate(); context: filterTemplateContext()"></ng-container>
|
|
2234
2271
|
} @else {
|
|
@@ -2264,6 +2301,9 @@ var Select = class Select extends BaseInput {
|
|
|
2264
2301
|
</p-inputicon>
|
|
2265
2302
|
</p-iconfield>
|
|
2266
2303
|
}
|
|
2304
|
+
<span role="status" aria-live="polite" [class]="pcn('p-hidden-accessible')" [pBind]="ptm('hiddenFilterResult')" [attr.data-p-hidden-accessible]="true">
|
|
2305
|
+
{{ filterResultMessageText() }}
|
|
2306
|
+
</span>
|
|
2267
2307
|
</div>
|
|
2268
2308
|
}
|
|
2269
2309
|
<div [class]="cx('listContainer')" [style.max-height]="virtualScroll() ? 'auto' : scrollHeight() || 'auto'" [pBind]="ptm('listContainer')">
|
|
@@ -2294,10 +2334,19 @@ var Select = class Select extends BaseInput {
|
|
|
2294
2334
|
}
|
|
2295
2335
|
|
|
2296
2336
|
<ng-template #buildInItems let-items let-scrollerOptions="options">
|
|
2297
|
-
<ul
|
|
2337
|
+
<ul
|
|
2338
|
+
#items
|
|
2339
|
+
[attr.id]="$id() + '_list'"
|
|
2340
|
+
[attr.aria-label]="listLabel()"
|
|
2341
|
+
[class]="cn(cx('list'), scrollerOptions.contentStyleClass)"
|
|
2342
|
+
[style]="scrollerOptions.contentStyle"
|
|
2343
|
+
role="listbox"
|
|
2344
|
+
[attr.aria-multiselectable]="$ariaMultiselectable()"
|
|
2345
|
+
[pBind]="ptm('list')"
|
|
2346
|
+
>
|
|
2298
2347
|
@for (option of items; track trackOption(option, i); let i = $index) {
|
|
2299
2348
|
@if (isOptionGroup(option)) {
|
|
2300
|
-
<li [class]="cx('optionGroup')" [attr.id]="$id() + '_' + getOptionIndex(i, scrollerOptions)" [style]="getItemSizeStyle(scrollerOptions)" role="
|
|
2349
|
+
<li [class]="cx('optionGroup')" [attr.id]="$id() + '_' + getOptionIndex(i, scrollerOptions)" [style]="getItemSizeStyle(scrollerOptions)" role="presentation" [pBind]="ptm('optionGroup')">
|
|
2301
2350
|
@if (!groupTemplate()) {
|
|
2302
2351
|
<span [class]="cx('optionGroupLabel')" [pBind]="ptm('optionGroupLabel')">{{ getOptionGroupLabel(option.optionGroup) }}</span>
|
|
2303
2352
|
}
|
|
@@ -2324,7 +2373,7 @@ var Select = class Select extends BaseInput {
|
|
|
2324
2373
|
}
|
|
2325
2374
|
}
|
|
2326
2375
|
@if (showEmptyFilterMessage()) {
|
|
2327
|
-
<li [class]="cx('emptyMessage')" [style]="getItemSizeStyle(scrollerOptions)" role="
|
|
2376
|
+
<li [class]="cx('emptyMessage')" [style]="getItemSizeStyle(scrollerOptions)" role="presentation" [pBind]="ptm('emptyMessage')">
|
|
2328
2377
|
@if (!hasEmptyTemplate()) {
|
|
2329
2378
|
{{ emptyFilterMessageLabel() }}
|
|
2330
2379
|
} @else {
|
|
@@ -2333,7 +2382,7 @@ var Select = class Select extends BaseInput {
|
|
|
2333
2382
|
</li>
|
|
2334
2383
|
}
|
|
2335
2384
|
@if (showEmptyMessage()) {
|
|
2336
|
-
<li [class]="cx('emptyMessage')" [style]="getItemSizeStyle(scrollerOptions)" role="
|
|
2385
|
+
<li [class]="cx('emptyMessage')" [style]="getItemSizeStyle(scrollerOptions)" role="presentation" [pBind]="ptm('emptyMessage')">
|
|
2337
2386
|
@if (!emptyTemplate()) {
|
|
2338
2387
|
{{ emptyMessageLabel() || emptyFilterMessageLabel() }}
|
|
2339
2388
|
} @else {
|
|
@@ -2345,10 +2394,17 @@ var Select = class Select extends BaseInput {
|
|
|
2345
2394
|
</ng-template>
|
|
2346
2395
|
</div>
|
|
2347
2396
|
<ng-container *ngTemplateOutlet="footerTemplate()"></ng-container>
|
|
2397
|
+
@if (!filter() && !_options()?.length) {
|
|
2398
|
+
<span role="status" aria-live="polite" [class]="pcn('p-hidden-accessible')" [pBind]="ptm('hiddenEmptyMessage')" [attr.data-p-hidden-accessible]="true">
|
|
2399
|
+
{{ emptyMessageLabel() }}
|
|
2400
|
+
</span>
|
|
2401
|
+
}
|
|
2402
|
+
<span role="status" aria-live="polite" [class]="pcn('p-hidden-accessible')" [pBind]="ptm('hiddenSelectedMessage')" [attr.data-p-hidden-accessible]="true">
|
|
2403
|
+
{{ selectedMessageText() }}
|
|
2404
|
+
</span>
|
|
2348
2405
|
<span
|
|
2349
2406
|
#lastHiddenFocusableEl
|
|
2350
|
-
|
|
2351
|
-
class="p-hidden-accessible p-hidden-focusable"
|
|
2407
|
+
[class]="pcn('p-hidden-accessible p-hidden-focusable')"
|
|
2352
2408
|
[pBind]="ptm('hiddenLastFocusableEl')"
|
|
2353
2409
|
[attr.tabindex]="0"
|
|
2354
2410
|
(focus)="onLastHiddenFocus($event)"
|
|
@@ -2382,8 +2438,6 @@ var Select = class Select extends BaseInput {
|
|
|
2382
2438
|
"focused",
|
|
2383
2439
|
"label",
|
|
2384
2440
|
"disabled",
|
|
2385
|
-
"visible",
|
|
2386
|
-
"itemSize",
|
|
2387
2441
|
"ariaPosInset",
|
|
2388
2442
|
"ariaSetSize",
|
|
2389
2443
|
"template",
|
|
@@ -2566,7 +2620,7 @@ var Select = class Select extends BaseInput {
|
|
|
2566
2620
|
};
|
|
2567
2621
|
i0.ɵɵngDeclareClassMetadata({
|
|
2568
2622
|
minVersion: "12.0.0",
|
|
2569
|
-
version: "22.2.
|
|
2623
|
+
version: "22.2.3",
|
|
2570
2624
|
ngImport: i0,
|
|
2571
2625
|
type: Select,
|
|
2572
2626
|
decorators: [{
|
|
@@ -2608,7 +2662,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2608
2662
|
[attr.aria-labelledby]="ariaLabelledBy()"
|
|
2609
2663
|
[attr.aria-haspopup]="'listbox'"
|
|
2610
2664
|
[attr.aria-expanded]="$ariaExpanded"
|
|
2611
|
-
[attr.aria-
|
|
2665
|
+
[attr.aria-readonly]="$ariaReadonly()"
|
|
2612
2666
|
[attr.aria-controls]="$ariaControls()"
|
|
2613
2667
|
[attr.tabindex]="$tabindex()"
|
|
2614
2668
|
[pAutoFocus]="autofocus()"
|
|
@@ -2617,7 +2671,6 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2617
2671
|
(blur)="onInputBlur($event)"
|
|
2618
2672
|
(keydown)="onKeyDown($event)"
|
|
2619
2673
|
[attr.aria-required]="required()"
|
|
2620
|
-
[attr.required]="$required()"
|
|
2621
2674
|
[attr.disabled]="$disabledAttr()"
|
|
2622
2675
|
[attr.data-p]="labelDataP()"
|
|
2623
2676
|
>
|
|
@@ -2638,9 +2691,14 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2638
2691
|
[attr.id]="inputId()"
|
|
2639
2692
|
[class]="cx('label')"
|
|
2640
2693
|
[pBind]="ptm('label')"
|
|
2694
|
+
role="combobox"
|
|
2695
|
+
[attr.aria-autocomplete]="'list'"
|
|
2641
2696
|
[attr.aria-haspopup]="'listbox'"
|
|
2697
|
+
[attr.aria-expanded]="$ariaExpanded"
|
|
2698
|
+
[attr.aria-controls]="$ariaControls()"
|
|
2642
2699
|
[attr.placeholder]="$placeholder()"
|
|
2643
|
-
[attr.aria-label]="
|
|
2700
|
+
[attr.aria-label]="ariaLabel()"
|
|
2701
|
+
[attr.aria-labelledby]="ariaLabelledBy()"
|
|
2644
2702
|
(input)="onEditableInput($event)"
|
|
2645
2703
|
(keydown)="onKeyDown($event)"
|
|
2646
2704
|
[pAutoFocus]="autofocus()"
|
|
@@ -2684,12 +2742,12 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2684
2742
|
} @else {
|
|
2685
2743
|
@if (!dropdownIconTemplate()) {
|
|
2686
2744
|
@if (dropdownIcon()) {
|
|
2687
|
-
<span [class]="cn(cx('dropdownIcon'), dropdownIcon())" [pBind]="ptm('dropdownIcon')"></span>
|
|
2745
|
+
<span [class]="cn(cx('dropdownIcon'), dropdownIcon())" [pBind]="ptm('dropdownIcon')" [attr.aria-hidden]="true" [attr.data-p]="dropdownIconDataP()"></span>
|
|
2688
2746
|
} @else {
|
|
2689
|
-
<svg data-p-icon="chevron-down" [class]="cx('dropdownIcon')" [pBind]="ptm('dropdownIcon')" />
|
|
2747
|
+
<svg data-p-icon="chevron-down" [class]="cx('dropdownIcon')" [pBind]="ptm('dropdownIcon')" [attr.aria-hidden]="true" [attr.data-p]="dropdownIconDataP()" />
|
|
2690
2748
|
}
|
|
2691
2749
|
} @else {
|
|
2692
|
-
<span [class]="cx('dropdownIcon')" [pBind]="ptm('dropdownIcon')">
|
|
2750
|
+
<span [class]="cx('dropdownIcon')" [pBind]="ptm('dropdownIcon')" [attr.aria-hidden]="true">
|
|
2693
2751
|
<ng-template *ngTemplateOutlet="dropdownIconTemplate(); context: dropdownIconContext()"></ng-template>
|
|
2694
2752
|
</span>
|
|
2695
2753
|
}
|
|
@@ -2715,8 +2773,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2715
2773
|
<div [class]="cn(cx('overlay'), panelStyleClass())" [style]="panelStyle()" [pBind]="ptm('overlay')" [attr.data-p]="overlayDataP()">
|
|
2716
2774
|
<span
|
|
2717
2775
|
#firstHiddenFocusableEl
|
|
2718
|
-
|
|
2719
|
-
class="p-hidden-accessible p-hidden-focusable"
|
|
2776
|
+
[class]="pcn('p-hidden-accessible p-hidden-focusable')"
|
|
2720
2777
|
[attr.tabindex]="0"
|
|
2721
2778
|
(focus)="onFirstHiddenFocus($event)"
|
|
2722
2779
|
[attr.data-p-hidden-accessible]="true"
|
|
@@ -2726,7 +2783,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2726
2783
|
</span>
|
|
2727
2784
|
<ng-container *ngTemplateOutlet="headerTemplate(); context: { class: cx('header') }"></ng-container>
|
|
2728
2785
|
@if (filter()) {
|
|
2729
|
-
<div [class]="cx('header')" (click)="$event.stopPropagation()" [pBind]="ptm('header')">
|
|
2786
|
+
<div [class]="cx('header')" (click)="$event.stopPropagation()" (keydown)="onFilterTemplateKeyDown($event)" [pBind]="ptm('header')">
|
|
2730
2787
|
@if (filterTemplate()) {
|
|
2731
2788
|
<ng-container *ngTemplateOutlet="filterTemplate(); context: filterTemplateContext()"></ng-container>
|
|
2732
2789
|
} @else {
|
|
@@ -2762,6 +2819,9 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2762
2819
|
</p-inputicon>
|
|
2763
2820
|
</p-iconfield>
|
|
2764
2821
|
}
|
|
2822
|
+
<span role="status" aria-live="polite" [class]="pcn('p-hidden-accessible')" [pBind]="ptm('hiddenFilterResult')" [attr.data-p-hidden-accessible]="true">
|
|
2823
|
+
{{ filterResultMessageText() }}
|
|
2824
|
+
</span>
|
|
2765
2825
|
</div>
|
|
2766
2826
|
}
|
|
2767
2827
|
<div [class]="cx('listContainer')" [style.max-height]="virtualScroll() ? 'auto' : scrollHeight() || 'auto'" [pBind]="ptm('listContainer')">
|
|
@@ -2792,10 +2852,19 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2792
2852
|
}
|
|
2793
2853
|
|
|
2794
2854
|
<ng-template #buildInItems let-items let-scrollerOptions="options">
|
|
2795
|
-
<ul
|
|
2855
|
+
<ul
|
|
2856
|
+
#items
|
|
2857
|
+
[attr.id]="$id() + '_list'"
|
|
2858
|
+
[attr.aria-label]="listLabel()"
|
|
2859
|
+
[class]="cn(cx('list'), scrollerOptions.contentStyleClass)"
|
|
2860
|
+
[style]="scrollerOptions.contentStyle"
|
|
2861
|
+
role="listbox"
|
|
2862
|
+
[attr.aria-multiselectable]="$ariaMultiselectable()"
|
|
2863
|
+
[pBind]="ptm('list')"
|
|
2864
|
+
>
|
|
2796
2865
|
@for (option of items; track trackOption(option, i); let i = $index) {
|
|
2797
2866
|
@if (isOptionGroup(option)) {
|
|
2798
|
-
<li [class]="cx('optionGroup')" [attr.id]="$id() + '_' + getOptionIndex(i, scrollerOptions)" [style]="getItemSizeStyle(scrollerOptions)" role="
|
|
2867
|
+
<li [class]="cx('optionGroup')" [attr.id]="$id() + '_' + getOptionIndex(i, scrollerOptions)" [style]="getItemSizeStyle(scrollerOptions)" role="presentation" [pBind]="ptm('optionGroup')">
|
|
2799
2868
|
@if (!groupTemplate()) {
|
|
2800
2869
|
<span [class]="cx('optionGroupLabel')" [pBind]="ptm('optionGroupLabel')">{{ getOptionGroupLabel(option.optionGroup) }}</span>
|
|
2801
2870
|
}
|
|
@@ -2822,7 +2891,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2822
2891
|
}
|
|
2823
2892
|
}
|
|
2824
2893
|
@if (showEmptyFilterMessage()) {
|
|
2825
|
-
<li [class]="cx('emptyMessage')" [style]="getItemSizeStyle(scrollerOptions)" role="
|
|
2894
|
+
<li [class]="cx('emptyMessage')" [style]="getItemSizeStyle(scrollerOptions)" role="presentation" [pBind]="ptm('emptyMessage')">
|
|
2826
2895
|
@if (!hasEmptyTemplate()) {
|
|
2827
2896
|
{{ emptyFilterMessageLabel() }}
|
|
2828
2897
|
} @else {
|
|
@@ -2831,7 +2900,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2831
2900
|
</li>
|
|
2832
2901
|
}
|
|
2833
2902
|
@if (showEmptyMessage()) {
|
|
2834
|
-
<li [class]="cx('emptyMessage')" [style]="getItemSizeStyle(scrollerOptions)" role="
|
|
2903
|
+
<li [class]="cx('emptyMessage')" [style]="getItemSizeStyle(scrollerOptions)" role="presentation" [pBind]="ptm('emptyMessage')">
|
|
2835
2904
|
@if (!emptyTemplate()) {
|
|
2836
2905
|
{{ emptyMessageLabel() || emptyFilterMessageLabel() }}
|
|
2837
2906
|
} @else {
|
|
@@ -2843,10 +2912,17 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
2843
2912
|
</ng-template>
|
|
2844
2913
|
</div>
|
|
2845
2914
|
<ng-container *ngTemplateOutlet="footerTemplate()"></ng-container>
|
|
2915
|
+
@if (!filter() && !_options()?.length) {
|
|
2916
|
+
<span role="status" aria-live="polite" [class]="pcn('p-hidden-accessible')" [pBind]="ptm('hiddenEmptyMessage')" [attr.data-p-hidden-accessible]="true">
|
|
2917
|
+
{{ emptyMessageLabel() }}
|
|
2918
|
+
</span>
|
|
2919
|
+
}
|
|
2920
|
+
<span role="status" aria-live="polite" [class]="pcn('p-hidden-accessible')" [pBind]="ptm('hiddenSelectedMessage')" [attr.data-p-hidden-accessible]="true">
|
|
2921
|
+
{{ selectedMessageText() }}
|
|
2922
|
+
</span>
|
|
2846
2923
|
<span
|
|
2847
2924
|
#lastHiddenFocusableEl
|
|
2848
|
-
|
|
2849
|
-
class="p-hidden-accessible p-hidden-focusable"
|
|
2925
|
+
[class]="pcn('p-hidden-accessible p-hidden-focusable')"
|
|
2850
2926
|
[pBind]="ptm('hiddenLastFocusableEl')"
|
|
2851
2927
|
[attr.tabindex]="0"
|
|
2852
2928
|
(focus)="onLastHiddenFocus($event)"
|
|
@@ -3122,6 +3198,30 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
3122
3198
|
required: false
|
|
3123
3199
|
}]
|
|
3124
3200
|
}],
|
|
3201
|
+
filterMessage: [{
|
|
3202
|
+
type: i0.Input,
|
|
3203
|
+
args: [{
|
|
3204
|
+
isSignal: true,
|
|
3205
|
+
alias: "filterMessage",
|
|
3206
|
+
required: false
|
|
3207
|
+
}]
|
|
3208
|
+
}],
|
|
3209
|
+
selectionMessage: [{
|
|
3210
|
+
type: i0.Input,
|
|
3211
|
+
args: [{
|
|
3212
|
+
isSignal: true,
|
|
3213
|
+
alias: "selectionMessage",
|
|
3214
|
+
required: false
|
|
3215
|
+
}]
|
|
3216
|
+
}],
|
|
3217
|
+
emptySelectionMessage: [{
|
|
3218
|
+
type: i0.Input,
|
|
3219
|
+
args: [{
|
|
3220
|
+
isSignal: true,
|
|
3221
|
+
alias: "emptySelectionMessage",
|
|
3222
|
+
required: false
|
|
3223
|
+
}]
|
|
3224
|
+
}],
|
|
3125
3225
|
lazy: [{
|
|
3126
3226
|
type: i0.Input,
|
|
3127
3227
|
args: [{
|
|
@@ -3483,7 +3583,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
3483
3583
|
var SelectModule = class SelectModule {
|
|
3484
3584
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
3485
3585
|
minVersion: "12.0.0",
|
|
3486
|
-
version: "22.2.
|
|
3586
|
+
version: "22.2.3",
|
|
3487
3587
|
ngImport: i0,
|
|
3488
3588
|
type: SelectModule,
|
|
3489
3589
|
deps: [],
|
|
@@ -3491,7 +3591,7 @@ var SelectModule = class SelectModule {
|
|
|
3491
3591
|
});
|
|
3492
3592
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
3493
3593
|
minVersion: "14.0.0",
|
|
3494
|
-
version: "22.2.
|
|
3594
|
+
version: "22.2.3",
|
|
3495
3595
|
ngImport: i0,
|
|
3496
3596
|
type: SelectModule,
|
|
3497
3597
|
imports: [Select, SharedModule],
|
|
@@ -3499,7 +3599,7 @@ var SelectModule = class SelectModule {
|
|
|
3499
3599
|
});
|
|
3500
3600
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
3501
3601
|
minVersion: "12.0.0",
|
|
3502
|
-
version: "22.2.
|
|
3602
|
+
version: "22.2.3",
|
|
3503
3603
|
ngImport: i0,
|
|
3504
3604
|
type: SelectModule,
|
|
3505
3605
|
imports: [
|
|
@@ -3511,7 +3611,7 @@ var SelectModule = class SelectModule {
|
|
|
3511
3611
|
};
|
|
3512
3612
|
i0.ɵɵngDeclareClassMetadata({
|
|
3513
3613
|
minVersion: "12.0.0",
|
|
3514
|
-
version: "22.2.
|
|
3614
|
+
version: "22.2.3",
|
|
3515
3615
|
ngImport: i0,
|
|
3516
3616
|
type: SelectModule,
|
|
3517
3617
|
decorators: [{
|
|
@@ -3524,4 +3624,3 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
3524
3624
|
});
|
|
3525
3625
|
export { SELECT_VALUE_ACCESSOR, Select, SelectClasses, SelectModule, SelectStyle };
|
|
3526
3626
|
|
|
3527
|
-
//# sourceMappingURL=primeng-select.mjs.map
|