primeng 16.7.2 → 16.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/breadcrumb/breadcrumb.interface.d.ts +2 -2
- package/calendar/calendar.d.ts +10 -1
- package/chart/chart.d.ts +11 -1
- package/chips/chips.d.ts +1 -2
- package/dropdown/dropdown.d.ts +7 -3
- package/esm2022/accordion/accordion.mjs +10 -10
- package/esm2022/animate/animate.mjs +7 -7
- package/esm2022/animateonscroll/animateonscroll.mjs +7 -7
- package/esm2022/api/confirmationservice.mjs +3 -3
- package/esm2022/api/contextmenuservice.mjs +3 -3
- package/esm2022/api/filterservice.mjs +3 -3
- package/esm2022/api/messageservice.mjs +3 -3
- package/esm2022/api/overlayservice.mjs +3 -3
- package/esm2022/api/primengconfig.mjs +3 -3
- package/esm2022/api/shared.mjs +13 -13
- package/esm2022/api/treedragdropservice.mjs +3 -3
- package/esm2022/autocomplete/autocomplete.mjs +38 -18
- package/esm2022/autofocus/autofocus.mjs +7 -7
- package/esm2022/avatar/avatar.mjs +7 -7
- package/esm2022/avatargroup/avatargroup.mjs +7 -7
- package/esm2022/badge/badge.mjs +10 -10
- package/esm2022/baseicon/baseicon.mjs +3 -3
- package/esm2022/blockui/blockui.mjs +7 -7
- package/esm2022/breadcrumb/breadcrumb.interface.mjs +1 -1
- package/esm2022/breadcrumb/breadcrumb.mjs +7 -7
- package/esm2022/button/button.mjs +10 -10
- package/esm2022/calendar/calendar.mjs +180 -34
- package/esm2022/card/card.mjs +7 -7
- package/esm2022/carousel/carousel.mjs +7 -7
- package/esm2022/cascadeselect/cascadeselect.mjs +10 -10
- package/esm2022/chart/chart.mjs +24 -10
- package/esm2022/checkbox/checkbox.mjs +7 -7
- package/esm2022/chip/chip.mjs +7 -7
- package/esm2022/chips/chips.mjs +15 -18
- package/esm2022/colorpicker/colorpicker.mjs +7 -7
- package/esm2022/confirmdialog/confirmdialog.mjs +7 -7
- package/esm2022/confirmpopup/confirmpopup.mjs +7 -7
- package/esm2022/contextmenu/contextmenu.mjs +18 -14
- package/esm2022/dataview/dataview.mjs +10 -10
- package/esm2022/defer/defer.mjs +7 -7
- package/esm2022/dialog/dialog.mjs +7 -7
- package/esm2022/divider/divider.mjs +7 -7
- package/esm2022/dock/dock.mjs +7 -7
- package/esm2022/dragdrop/dragdrop.mjs +10 -10
- package/esm2022/dropdown/dropdown.mjs +90 -51
- package/esm2022/dynamicdialog/dialogservice.mjs +3 -3
- package/esm2022/dynamicdialog/dynamicdialog.mjs +7 -7
- package/esm2022/dynamicdialog/dynamicdialogcontent.mjs +3 -3
- package/esm2022/editor/editor.mjs +7 -7
- package/esm2022/fieldset/fieldset.mjs +7 -7
- package/esm2022/fileupload/fileupload.mjs +18 -11
- package/esm2022/focustrap/focustrap.mjs +7 -7
- package/esm2022/galleria/galleria.mjs +19 -19
- package/esm2022/icons/angledoubledown/angledoubledown.mjs +3 -3
- package/esm2022/icons/angledoubleleft/angledoubleleft.mjs +3 -3
- package/esm2022/icons/angledoubleright/angledoubleright.mjs +3 -3
- package/esm2022/icons/angledoubleup/angledoubleup.mjs +3 -3
- package/esm2022/icons/angledown/angledown.mjs +3 -3
- package/esm2022/icons/angleleft/angleleft.mjs +3 -3
- package/esm2022/icons/angleright/angleright.mjs +3 -3
- package/esm2022/icons/angleup/angleup.mjs +3 -3
- package/esm2022/icons/arrowdown/arrowdown.mjs +3 -3
- package/esm2022/icons/arrowdownleft/arrowdownleft.mjs +3 -3
- package/esm2022/icons/arrowdownright/arrowdownright.mjs +3 -3
- package/esm2022/icons/arrowleft/arrowleft.mjs +3 -3
- package/esm2022/icons/arrowright/arrowright.mjs +3 -3
- package/esm2022/icons/arrowup/arrowup.mjs +3 -3
- package/esm2022/icons/ban/ban.mjs +3 -3
- package/esm2022/icons/bars/bars.mjs +3 -3
- package/esm2022/icons/calendar/calendar.mjs +3 -3
- package/esm2022/icons/caretleft/caretleft.mjs +3 -3
- package/esm2022/icons/caretright/caretright.mjs +3 -3
- package/esm2022/icons/check/check.mjs +3 -3
- package/esm2022/icons/chevrondown/chevrondown.mjs +3 -3
- package/esm2022/icons/chevronleft/chevronleft.mjs +3 -3
- package/esm2022/icons/chevronright/chevronright.mjs +3 -3
- package/esm2022/icons/chevronup/chevronup.mjs +3 -3
- package/esm2022/icons/exclamationtriangle/exclamationtriangle.mjs +3 -3
- package/esm2022/icons/eye/eye.mjs +3 -3
- package/esm2022/icons/eyeslash/eyeslash.mjs +3 -3
- package/esm2022/icons/filter/filter.mjs +3 -3
- package/esm2022/icons/filterslash/filterslash.mjs +3 -3
- package/esm2022/icons/home/home.mjs +3 -3
- package/esm2022/icons/infocircle/infocircle.mjs +3 -3
- package/esm2022/icons/minus/minus.mjs +3 -3
- package/esm2022/icons/pencil/pencil.mjs +3 -3
- package/esm2022/icons/plus/plus.mjs +3 -3
- package/esm2022/icons/refresh/refresh.mjs +3 -3
- package/esm2022/icons/search/search.mjs +3 -3
- package/esm2022/icons/searchminus/searchminus.mjs +3 -3
- package/esm2022/icons/searchplus/searchplus.mjs +3 -3
- package/esm2022/icons/sortalt/sortalt.mjs +3 -3
- package/esm2022/icons/sortamountdown/sortamountdown.mjs +3 -3
- package/esm2022/icons/sortamountupalt/sortamountupalt.mjs +3 -3
- package/esm2022/icons/spinner/spinner.mjs +3 -3
- package/esm2022/icons/star/star.mjs +3 -3
- package/esm2022/icons/starfill/starfill.mjs +3 -3
- package/esm2022/icons/thlarge/thlarge.mjs +3 -3
- package/esm2022/icons/times/times.mjs +3 -3
- package/esm2022/icons/timescircle/timescircle.mjs +3 -3
- package/esm2022/icons/trash/trash.mjs +3 -3
- package/esm2022/icons/undo/undo.mjs +3 -3
- package/esm2022/icons/upload/upload.mjs +3 -3
- package/esm2022/icons/windowmaximize/windowmaximize.mjs +3 -3
- package/esm2022/icons/windowminimize/windowminimize.mjs +3 -3
- package/esm2022/image/image.mjs +7 -7
- package/esm2022/inplace/inplace.mjs +13 -13
- package/esm2022/inputmask/inputmask.mjs +7 -7
- package/esm2022/inputnumber/inputnumber.mjs +7 -7
- package/esm2022/inputswitch/inputswitch.mjs +7 -7
- package/esm2022/inputtext/inputtext.mjs +7 -7
- package/esm2022/inputtextarea/inputtextarea.mjs +7 -7
- package/esm2022/keyfilter/keyfilter.mjs +7 -7
- package/esm2022/knob/knob.mjs +7 -7
- package/esm2022/listbox/listbox.interface.mjs +1 -1
- package/esm2022/listbox/listbox.mjs +52 -18
- package/esm2022/megamenu/megamenu.mjs +12 -14
- package/esm2022/menu/menu.mjs +13 -13
- package/esm2022/menubar/menubar.mjs +15 -15
- package/esm2022/message/message.mjs +7 -7
- package/esm2022/messages/messages.mjs +10 -10
- package/esm2022/multiselect/multiselect.interface.mjs +1 -1
- package/esm2022/multiselect/multiselect.mjs +110 -44
- package/esm2022/orderlist/orderlist.mjs +331 -103
- package/esm2022/organizationchart/organizationchart.mjs +54 -53
- package/esm2022/overlay/overlay.mjs +9 -9
- package/esm2022/overlaypanel/overlaypanel.mjs +7 -7
- package/esm2022/paginator/paginator.mjs +76 -25
- package/esm2022/panel/panel.mjs +10 -8
- package/esm2022/panelmenu/panelmenu.mjs +13 -13
- package/esm2022/password/password.mjs +13 -13
- package/esm2022/picklist/picklist.mjs +601 -135
- package/esm2022/progressbar/progressbar.mjs +7 -7
- package/esm2022/progressspinner/progressspinner.mjs +7 -7
- package/esm2022/radiobutton/radiobutton.mjs +10 -10
- package/esm2022/rating/rating.mjs +7 -7
- package/esm2022/ripple/ripple.mjs +7 -7
- package/esm2022/scroller/scroller.mjs +20 -16
- package/esm2022/scrollpanel/scrollpanel.mjs +7 -7
- package/esm2022/scrolltop/scrolltop.mjs +7 -7
- package/esm2022/selectbutton/selectbutton.mjs +7 -7
- package/esm2022/sidebar/sidebar.mjs +11 -11
- package/esm2022/skeleton/skeleton.mjs +7 -7
- package/esm2022/slidemenu/slidemenu.mjs +10 -10
- package/esm2022/slider/slider.mjs +7 -7
- package/esm2022/speeddial/speeddial.mjs +7 -7
- package/esm2022/spinner/spinner.mjs +7 -7
- package/esm2022/splitbutton/splitbutton.mjs +7 -7
- package/esm2022/splitter/splitter.mjs +10 -10
- package/esm2022/steps/steps.mjs +7 -7
- package/esm2022/styleclass/styleclass.mjs +7 -7
- package/esm2022/table/table.mjs +284 -154
- package/esm2022/tabmenu/tabmenu.mjs +7 -7
- package/esm2022/tabview/tabview.mjs +77 -32
- package/esm2022/tag/tag.mjs +7 -7
- package/esm2022/terminal/terminal.mjs +7 -7
- package/esm2022/terminal/terminalservice.mjs +3 -3
- package/esm2022/tieredmenu/tieredmenu.mjs +10 -10
- package/esm2022/timeline/timeline.mjs +25 -21
- package/esm2022/toast/toast.mjs +13 -13
- package/esm2022/togglebutton/togglebutton.mjs +7 -7
- package/esm2022/toolbar/toolbar.mjs +7 -7
- package/esm2022/tooltip/tooltip.mjs +9 -9
- package/esm2022/tree/tree.mjs +172 -92
- package/esm2022/treeselect/treeselect.mjs +134 -37
- package/esm2022/treetable/treetable.mjs +242 -128
- package/esm2022/tristatecheckbox/tristatecheckbox.mjs +7 -7
- package/esm2022/virtualscroller/virtualscroller.mjs +14 -14
- package/fesm2022/primeng-accordion.mjs +10 -10
- package/fesm2022/primeng-animate.mjs +7 -7
- package/fesm2022/primeng-animateonscroll.mjs +7 -7
- package/fesm2022/primeng-api.mjs +34 -34
- package/fesm2022/primeng-autocomplete.mjs +37 -17
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-autofocus.mjs +7 -7
- package/fesm2022/primeng-avatar.mjs +7 -7
- package/fesm2022/primeng-avatargroup.mjs +7 -7
- package/fesm2022/primeng-badge.mjs +10 -10
- package/fesm2022/primeng-baseicon.mjs +3 -3
- package/fesm2022/primeng-blockui.mjs +7 -7
- package/fesm2022/primeng-breadcrumb.mjs +7 -7
- package/fesm2022/primeng-button.mjs +10 -10
- package/fesm2022/primeng-calendar.mjs +179 -33
- package/fesm2022/primeng-calendar.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs +7 -7
- package/fesm2022/primeng-carousel.mjs +7 -7
- package/fesm2022/primeng-cascadeselect.mjs +10 -10
- package/fesm2022/primeng-chart.mjs +23 -9
- package/fesm2022/primeng-chart.mjs.map +1 -1
- package/fesm2022/primeng-checkbox.mjs +7 -7
- package/fesm2022/primeng-chip.mjs +7 -7
- package/fesm2022/primeng-chips.mjs +14 -17
- package/fesm2022/primeng-chips.mjs.map +1 -1
- package/fesm2022/primeng-colorpicker.mjs +7 -7
- package/fesm2022/primeng-confirmdialog.mjs +7 -7
- package/fesm2022/primeng-confirmpopup.mjs +7 -7
- package/fesm2022/primeng-contextmenu.mjs +17 -13
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +10 -10
- package/fesm2022/primeng-defer.mjs +7 -7
- package/fesm2022/primeng-dialog.mjs +7 -7
- package/fesm2022/primeng-divider.mjs +7 -7
- package/fesm2022/primeng-dock.mjs +7 -7
- package/fesm2022/primeng-dragdrop.mjs +10 -10
- package/fesm2022/primeng-dropdown.mjs +89 -50
- package/fesm2022/primeng-dropdown.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +13 -13
- package/fesm2022/primeng-editor.mjs +7 -7
- package/fesm2022/primeng-fieldset.mjs +7 -7
- package/fesm2022/primeng-fileupload.mjs +17 -10
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-focustrap.mjs +7 -7
- package/fesm2022/primeng-galleria.mjs +19 -19
- 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-calendar.mjs +3 -3
- package/fesm2022/primeng-icons-caretleft.mjs +3 -3
- package/fesm2022/primeng-icons-caretright.mjs +3 -3
- package/fesm2022/primeng-icons-check.mjs +3 -3
- package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
- package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
- package/fesm2022/primeng-icons-chevronright.mjs +3 -3
- package/fesm2022/primeng-icons-chevronup.mjs +3 -3
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
- package/fesm2022/primeng-icons-eye.mjs +3 -3
- package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
- package/fesm2022/primeng-icons-filter.mjs +3 -3
- package/fesm2022/primeng-icons-filterslash.mjs +3 -3
- package/fesm2022/primeng-icons-home.mjs +3 -3
- package/fesm2022/primeng-icons-infocircle.mjs +3 -3
- package/fesm2022/primeng-icons-minus.mjs +3 -3
- package/fesm2022/primeng-icons-pencil.mjs +3 -3
- package/fesm2022/primeng-icons-plus.mjs +3 -3
- package/fesm2022/primeng-icons-refresh.mjs +3 -3
- package/fesm2022/primeng-icons-search.mjs +3 -3
- package/fesm2022/primeng-icons-searchminus.mjs +3 -3
- package/fesm2022/primeng-icons-searchplus.mjs +3 -3
- package/fesm2022/primeng-icons-sortalt.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
- package/fesm2022/primeng-icons-spinner.mjs +3 -3
- package/fesm2022/primeng-icons-star.mjs +3 -3
- package/fesm2022/primeng-icons-starfill.mjs +3 -3
- package/fesm2022/primeng-icons-thlarge.mjs +3 -3
- package/fesm2022/primeng-icons-times.mjs +3 -3
- package/fesm2022/primeng-icons-timescircle.mjs +3 -3
- package/fesm2022/primeng-icons-trash.mjs +3 -3
- package/fesm2022/primeng-icons-undo.mjs +3 -3
- package/fesm2022/primeng-icons-upload.mjs +3 -3
- package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
- package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
- package/fesm2022/primeng-image.mjs +7 -7
- package/fesm2022/primeng-inplace.mjs +13 -13
- package/fesm2022/primeng-inputmask.mjs +7 -7
- package/fesm2022/primeng-inputnumber.mjs +7 -7
- package/fesm2022/primeng-inputswitch.mjs +7 -7
- package/fesm2022/primeng-inputtext.mjs +7 -7
- package/fesm2022/primeng-inputtextarea.mjs +7 -7
- package/fesm2022/primeng-keyfilter.mjs +7 -7
- package/fesm2022/primeng-knob.mjs +7 -7
- package/fesm2022/primeng-listbox.mjs +51 -17
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +11 -13
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +13 -13
- package/fesm2022/primeng-menubar.mjs +14 -14
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +7 -7
- package/fesm2022/primeng-messages.mjs +9 -9
- package/fesm2022/primeng-messages.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +109 -43
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +334 -106
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs +52 -50
- package/fesm2022/primeng-organizationchart.mjs.map +1 -1
- package/fesm2022/primeng-overlay.mjs +8 -8
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaypanel.mjs +7 -7
- package/fesm2022/primeng-paginator.mjs +79 -27
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +9 -7
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +13 -13
- package/fesm2022/primeng-password.mjs +13 -13
- package/fesm2022/primeng-picklist.mjs +604 -138
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +7 -7
- package/fesm2022/primeng-progressspinner.mjs +7 -7
- package/fesm2022/primeng-radiobutton.mjs +10 -10
- package/fesm2022/primeng-rating.mjs +7 -7
- package/fesm2022/primeng-ripple.mjs +7 -7
- package/fesm2022/primeng-scroller.mjs +19 -15
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +7 -7
- package/fesm2022/primeng-scrolltop.mjs +7 -7
- package/fesm2022/primeng-selectbutton.mjs +7 -7
- package/fesm2022/primeng-sidebar.mjs +10 -10
- package/fesm2022/primeng-sidebar.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +7 -7
- package/fesm2022/primeng-slidemenu.mjs +10 -10
- package/fesm2022/primeng-slider.mjs +7 -7
- package/fesm2022/primeng-speeddial.mjs +7 -7
- package/fesm2022/primeng-spinner.mjs +7 -7
- package/fesm2022/primeng-splitbutton.mjs +7 -7
- package/fesm2022/primeng-splitter.mjs +9 -9
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs +7 -7
- package/fesm2022/primeng-styleclass.mjs +7 -7
- package/fesm2022/primeng-table.mjs +283 -153
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabmenu.mjs +7 -7
- package/fesm2022/primeng-tabview.mjs +76 -31
- package/fesm2022/primeng-tabview.mjs.map +1 -1
- package/fesm2022/primeng-tag.mjs +7 -7
- package/fesm2022/primeng-terminal.mjs +10 -10
- package/fesm2022/primeng-tieredmenu.mjs +10 -10
- package/fesm2022/primeng-timeline.mjs +25 -21
- package/fesm2022/primeng-timeline.mjs.map +1 -1
- package/fesm2022/primeng-toast.mjs +12 -12
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +7 -7
- package/fesm2022/primeng-toolbar.mjs +7 -7
- package/fesm2022/primeng-tooltip.mjs +8 -8
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +171 -91
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +133 -36
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +241 -127
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-tristatecheckbox.mjs +7 -7
- package/fesm2022/primeng-virtualscroller.mjs +13 -13
- package/fesm2022/primeng-virtualscroller.mjs.map +1 -1
- package/listbox/listbox.d.ts +19 -2
- package/listbox/listbox.interface.d.ts +16 -1
- package/multiselect/multiselect.d.ts +31 -5
- package/multiselect/multiselect.interface.d.ts +15 -0
- package/orderlist/orderlist.d.ts +59 -7
- package/organizationchart/organizationchart.d.ts +3 -4
- package/package.json +54 -54
- package/paginator/paginator.d.ts +3 -3
- package/picklist/picklist.d.ts +64 -7
- package/resources/components/dropdown/dropdown.css +1 -7
- package/resources/components/messages/messages.css +1 -0
- package/resources/components/table/table.css +3 -3
- package/resources/components/toast/toast.css +1 -0
- package/resources/themes/arya-blue/theme.css +40 -14
- package/resources/themes/arya-green/theme.css +40 -14
- package/resources/themes/arya-orange/theme.css +40 -14
- package/resources/themes/arya-purple/theme.css +40 -14
- package/resources/themes/bootstrap4-dark-blue/theme.css +40 -14
- package/resources/themes/bootstrap4-dark-purple/theme.css +40 -14
- package/resources/themes/bootstrap4-light-blue/theme.css +40 -14
- package/resources/themes/bootstrap4-light-purple/theme.css +40 -14
- package/resources/themes/fluent-light/theme.css +40 -14
- package/resources/themes/lara-dark-blue/theme.css +40 -14
- package/resources/themes/lara-dark-indigo/theme.css +40 -14
- package/resources/themes/lara-dark-purple/theme.css +40 -14
- package/resources/themes/lara-dark-teal/theme.css +40 -14
- package/resources/themes/lara-light-blue/theme.css +40 -14
- package/resources/themes/lara-light-indigo/theme.css +40 -14
- package/resources/themes/lara-light-purple/theme.css +40 -14
- package/resources/themes/lara-light-teal/theme.css +40 -14
- package/resources/themes/luna-amber/theme.css +40 -14
- package/resources/themes/luna-blue/theme.css +40 -14
- package/resources/themes/luna-green/theme.css +40 -14
- package/resources/themes/luna-pink/theme.css +40 -14
- package/resources/themes/md-dark-deeppurple/theme.css +40 -14
- package/resources/themes/md-dark-indigo/theme.css +40 -14
- package/resources/themes/md-light-deeppurple/theme.css +40 -14
- package/resources/themes/md-light-indigo/theme.css +40 -14
- package/resources/themes/mdc-dark-deeppurple/theme.css +40 -14
- package/resources/themes/mdc-dark-indigo/theme.css +40 -14
- package/resources/themes/mdc-light-deeppurple/theme.css +40 -14
- package/resources/themes/mdc-light-indigo/theme.css +40 -14
- package/resources/themes/mira/theme.css +40 -14
- package/resources/themes/nano/theme.css +40 -14
- package/resources/themes/nova/theme.css +40 -14
- package/resources/themes/nova-accent/theme.css +40 -14
- package/resources/themes/nova-alt/theme.css +40 -14
- package/resources/themes/rhea/theme.css +40 -14
- package/resources/themes/saga-blue/theme.css +40 -14
- package/resources/themes/saga-green/theme.css +40 -14
- package/resources/themes/saga-orange/theme.css +40 -14
- package/resources/themes/saga-purple/theme.css +40 -14
- package/resources/themes/soho-dark/theme.css +40 -14
- package/resources/themes/soho-light/theme.css +40 -14
- package/resources/themes/tailwind-light/theme.css +40 -14
- package/resources/themes/vela-blue/theme.css +40 -14
- package/resources/themes/vela-green/theme.css +40 -14
- package/resources/themes/vela-orange/theme.css +40 -14
- package/resources/themes/vela-purple/theme.css +40 -14
- package/resources/themes/viva-dark/theme.css +40 -14
- package/resources/themes/viva-light/theme.css +40 -14
- package/scroller/scroller.d.ts +2 -3
- package/table/table.d.ts +20 -9
- package/tabview/tabview.d.ts +19 -2
- package/timeline/timeline.d.ts +1 -1
- package/tree/tree.d.ts +12 -1
- package/treeselect/treeselect.d.ts +14 -1
- package/treetable/treetable.d.ts +16 -2
- package/virtualscroller/virtualscroller.d.ts +1 -2
@@ -1,17 +1,14 @@
|
|
1
|
-
import * as
|
2
|
-
import {
|
1
|
+
import * as i5 from '@angular/cdk/drag-drop';
|
2
|
+
import { transferArrayItem, moveItemInArray, DragDropModule, CDK_DRAG_CONFIG } from '@angular/cdk/drag-drop';
|
3
3
|
import * as i2 from '@angular/common';
|
4
4
|
import { isPlatformBrowser, DOCUMENT, CommonModule } from '@angular/common';
|
5
|
-
import * as
|
6
|
-
import {
|
5
|
+
import * as i0 from '@angular/core';
|
6
|
+
import { EventEmitter, PLATFORM_ID, Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, Input, Output, ViewChild, ContentChildren, NgModule } from '@angular/core';
|
7
7
|
import * as i1 from 'primeng/api';
|
8
8
|
import { PrimeTemplate, SharedModule } from 'primeng/api';
|
9
|
+
import * as i3 from 'primeng/button';
|
10
|
+
import { ButtonModule } from 'primeng/button';
|
9
11
|
import { DomHandler } from 'primeng/dom';
|
10
|
-
import * as i4 from 'primeng/ripple';
|
11
|
-
import { RippleModule } from 'primeng/ripple';
|
12
|
-
import * as i5 from '@angular/cdk/drag-drop';
|
13
|
-
import { transferArrayItem, moveItemInArray, DragDropModule, CDK_DRAG_CONFIG } from '@angular/cdk/drag-drop';
|
14
|
-
import { UniqueComponentId, ObjectUtils } from 'primeng/utils';
|
15
12
|
import { AngleDoubleDownIcon } from 'primeng/icons/angledoubledown';
|
16
13
|
import { AngleDoubleLeftIcon } from 'primeng/icons/angledoubleleft';
|
17
14
|
import { AngleDoubleRightIcon } from 'primeng/icons/angledoubleright';
|
@@ -20,8 +17,11 @@ import { AngleDownIcon } from 'primeng/icons/angledown';
|
|
20
17
|
import { AngleLeftIcon } from 'primeng/icons/angleleft';
|
21
18
|
import { AngleRightIcon } from 'primeng/icons/angleright';
|
22
19
|
import { AngleUpIcon } from 'primeng/icons/angleup';
|
23
|
-
import { SearchIcon } from 'primeng/icons/search';
|
24
20
|
import { HomeIcon } from 'primeng/icons/home';
|
21
|
+
import { SearchIcon } from 'primeng/icons/search';
|
22
|
+
import * as i4 from 'primeng/ripple';
|
23
|
+
import { RippleModule } from 'primeng/ripple';
|
24
|
+
import { UniqueComponentId, ObjectUtils } from 'primeng/utils';
|
25
25
|
|
26
26
|
/**
|
27
27
|
* PickList is used to reorder items between different lists.
|
@@ -34,6 +34,7 @@ class PickList {
|
|
34
34
|
el;
|
35
35
|
cd;
|
36
36
|
filterService;
|
37
|
+
config;
|
37
38
|
/**
|
38
39
|
* An array of objects for the source list.
|
39
40
|
* @group Props
|
@@ -49,6 +50,11 @@ class PickList {
|
|
49
50
|
* @group Props
|
50
51
|
*/
|
51
52
|
sourceHeader;
|
53
|
+
/**
|
54
|
+
* Index of the element in tabbing order.
|
55
|
+
* @group Props
|
56
|
+
*/
|
57
|
+
tabindex = 0;
|
52
58
|
/**
|
53
59
|
* Defines a string that labels the move to right button for accessibility.
|
54
60
|
* @group Props
|
@@ -290,11 +296,56 @@ class PickList {
|
|
290
296
|
* @group Emits
|
291
297
|
*/
|
292
298
|
onTargetFilter = new EventEmitter();
|
299
|
+
/**
|
300
|
+
* Callback to invoke when the list is focused
|
301
|
+
* @param {Event} event - Browser event.
|
302
|
+
* @group Emits
|
303
|
+
*/
|
304
|
+
onFocus = new EventEmitter();
|
305
|
+
/**
|
306
|
+
* Callback to invoke when the list is blurred
|
307
|
+
* @param {Event} event - Browser event.
|
308
|
+
* @group Emits
|
309
|
+
*/
|
310
|
+
onBlur = new EventEmitter();
|
293
311
|
listViewSourceChild;
|
294
312
|
listViewTargetChild;
|
295
313
|
sourceFilterViewChild;
|
296
314
|
targetFilterViewChild;
|
297
315
|
templates;
|
316
|
+
get moveUpAriaLabel() {
|
317
|
+
return this.upButtonAriaLabel ? this.upButtonAriaLabel : this.config.translation.aria ? this.config.translation.aria.moveUp : undefined;
|
318
|
+
}
|
319
|
+
get moveTopAriaLabel() {
|
320
|
+
return this.topButtonAriaLabel ? this.topButtonAriaLabel : this.config.translation.aria ? this.config.translation.aria.moveTop : undefined;
|
321
|
+
}
|
322
|
+
get moveDownAriaLabel() {
|
323
|
+
return this.downButtonAriaLabel ? this.downButtonAriaLabel : this.config.translation.aria ? this.config.translation.aria.moveDown : undefined;
|
324
|
+
}
|
325
|
+
get moveBottomAriaLabel() {
|
326
|
+
return this.bottomButtonAriaLabel ? this.bottomButtonAriaLabel : this.config.translation.aria ? this.config.translation.aria.moveDown : undefined;
|
327
|
+
}
|
328
|
+
get moveToTargetAriaLabel() {
|
329
|
+
return this.rightButtonAriaLabel ? this.rightButtonAriaLabel : this.config.translation.aria ? this.config.translation.aria.moveToTarget : undefined;
|
330
|
+
}
|
331
|
+
get moveAllToTargetAriaLabel() {
|
332
|
+
return this.allRightButtonAriaLabel ? this.allRightButtonAriaLabel : this.config.translation.aria ? this.config.translation.aria.moveAllToTarget : undefined;
|
333
|
+
}
|
334
|
+
get moveToSourceAriaLabel() {
|
335
|
+
return this.allLeftButtonAriaLabel ? this.allLeftButtonAriaLabel : this.config.translation.aria ? this.config.translation.aria.moveToSource : undefined;
|
336
|
+
}
|
337
|
+
get moveAllToSourceAriaLabel() {
|
338
|
+
return this.allLeftButtonAriaLabel ? this.allLeftButtonAriaLabel : this.config.translation.aria ? this.config.translation.aria.moveAllToSource : undefined;
|
339
|
+
}
|
340
|
+
get idSource() {
|
341
|
+
return this.id + '_source';
|
342
|
+
}
|
343
|
+
get idTarget() {
|
344
|
+
return this.id + '_target';
|
345
|
+
}
|
346
|
+
get focusedOptionId() {
|
347
|
+
return this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : null;
|
348
|
+
}
|
298
349
|
_breakpoint = '960px';
|
299
350
|
itemTemplate;
|
300
351
|
moveTopIconTemplate;
|
@@ -335,14 +386,21 @@ class PickList {
|
|
335
386
|
window;
|
336
387
|
media;
|
337
388
|
viewChanged;
|
389
|
+
focusedOptionIndex = -1;
|
390
|
+
focusedOption;
|
391
|
+
focused = {
|
392
|
+
sourceList: false,
|
393
|
+
targetList: false
|
394
|
+
};
|
338
395
|
mediaChangeListener;
|
339
|
-
constructor(document, platformId, renderer, el, cd, filterService) {
|
396
|
+
constructor(document, platformId, renderer, el, cd, filterService, config) {
|
340
397
|
this.document = document;
|
341
398
|
this.platformId = platformId;
|
342
399
|
this.renderer = renderer;
|
343
400
|
this.el = el;
|
344
401
|
this.cd = cd;
|
345
402
|
this.filterService = filterService;
|
403
|
+
this.config = config;
|
346
404
|
this.window = this.document.defaultView;
|
347
405
|
}
|
348
406
|
ngOnInit() {
|
@@ -441,11 +499,13 @@ class PickList {
|
|
441
499
|
this.reorderedListElement = null;
|
442
500
|
}
|
443
501
|
}
|
444
|
-
onItemClick(event, item, selectedItems, callback) {
|
502
|
+
onItemClick(event, item, selectedItems, callback, itemId) {
|
445
503
|
if (this.disabled) {
|
446
504
|
return;
|
447
505
|
}
|
448
|
-
let index = this.
|
506
|
+
let index = this.findIndexInList(item, selectedItems);
|
507
|
+
if (itemId)
|
508
|
+
this.focusedOptionIndex = itemId;
|
449
509
|
let selected = index != -1;
|
450
510
|
let metaSelection = this.itemTouched ? false : this.metaKeySelection;
|
451
511
|
if (metaSelection) {
|
@@ -469,6 +529,10 @@ class PickList {
|
|
469
529
|
callback.emit({ originalEvent: event, items: selectedItems });
|
470
530
|
this.itemTouched = false;
|
471
531
|
}
|
532
|
+
onOptionMouseDown(index, listType) {
|
533
|
+
this.focused[listType === this.SOURCE_LIST ? 'sourceList' : 'targetList'] = true;
|
534
|
+
this.focusedOptionIndex = index;
|
535
|
+
}
|
472
536
|
onSourceItemDblClick() {
|
473
537
|
if (this.disabled) {
|
474
538
|
return;
|
@@ -719,9 +783,16 @@ class PickList {
|
|
719
783
|
}
|
720
784
|
}
|
721
785
|
isSelected(item, selectedItems) {
|
722
|
-
return this.
|
786
|
+
return this.findIndexInList(item, selectedItems) != -1;
|
723
787
|
}
|
724
|
-
|
788
|
+
itemClass(item, id, selectedItems) {
|
789
|
+
return {
|
790
|
+
'p-picklist-item': true,
|
791
|
+
'p-highlight': this.isSelected(item, selectedItems),
|
792
|
+
'p-focus': id === this.focusedOptionId
|
793
|
+
};
|
794
|
+
}
|
795
|
+
findIndexInList(item, selectedItems) {
|
725
796
|
return ObjectUtils.findIndexInList(item, selectedItems);
|
726
797
|
}
|
727
798
|
onDrop(event, listType) {
|
@@ -772,6 +843,171 @@ class PickList {
|
|
772
843
|
}
|
773
844
|
}
|
774
845
|
}
|
846
|
+
onListFocus(event, listType) {
|
847
|
+
let listElement = this.getListElement(listType);
|
848
|
+
const selectedFirstItem = DomHandler.findSingle(listElement, 'li.p-picklist-item.p-highlight') || DomHandler.findSingle(listElement, 'li.p-picklist-item');
|
849
|
+
const findIndex = ObjectUtils.findIndexInList(selectedFirstItem, listElement.children);
|
850
|
+
this.focused[listType === this.SOURCE_LIST ? 'sourceList' : 'targetList'] = true;
|
851
|
+
const index = this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : selectedFirstItem ? findIndex : -1;
|
852
|
+
this.changeFocusedOptionIndex(index, listType);
|
853
|
+
this.onFocus.emit(event);
|
854
|
+
}
|
855
|
+
onListBlur(event, listType) {
|
856
|
+
this.focused[listType === this.SOURCE_LIST ? 'sourceList' : 'targetList'] = false;
|
857
|
+
this.focusedOptionIndex = -1;
|
858
|
+
this.focusedOption = null;
|
859
|
+
this.onBlur.emit(event);
|
860
|
+
}
|
861
|
+
getListElement(listType) {
|
862
|
+
return listType === this.SOURCE_LIST ? this.listViewSourceChild?.nativeElement : this.listViewTargetChild?.nativeElement;
|
863
|
+
}
|
864
|
+
getListItems(listType) {
|
865
|
+
let listElemet = this.getListElement(listType);
|
866
|
+
return DomHandler.find(listElemet, 'li.p-picklist-item');
|
867
|
+
}
|
868
|
+
getLatestSelectedVisibleOptionIndex(visibleList, selectedItems) {
|
869
|
+
const latestSelectedItem = [...selectedItems].reverse().find((item) => visibleList.includes(item));
|
870
|
+
return latestSelectedItem !== undefined ? visibleList.indexOf(latestSelectedItem) : -1;
|
871
|
+
}
|
872
|
+
getVisibleList(listType) {
|
873
|
+
if (listType === this.SOURCE_LIST) {
|
874
|
+
return this.visibleOptionsSource && this.visibleOptionsSource.length > 0 ? this.visibleOptionsSource : this.source && this.source.length > 0 ? this.source : null;
|
875
|
+
}
|
876
|
+
return this.visibleOptionsTarget && this.visibleOptionsTarget.length > 0 ? this.visibleOptionsTarget : this.target && this.target.length > 0 ? this.target : null;
|
877
|
+
}
|
878
|
+
setSelectionList(listType, selectedItems) {
|
879
|
+
if (listType === this.SOURCE_LIST) {
|
880
|
+
this.selectedItemsSource = selectedItems;
|
881
|
+
}
|
882
|
+
else {
|
883
|
+
this.selectedItemsTarget = selectedItems;
|
884
|
+
}
|
885
|
+
}
|
886
|
+
findNextOptionIndex(index, listType) {
|
887
|
+
const items = this.getListItems(listType);
|
888
|
+
const matchedOptionIndex = [...items].findIndex((link) => link.id === index);
|
889
|
+
return matchedOptionIndex > -1 ? matchedOptionIndex + 1 : 0;
|
890
|
+
}
|
891
|
+
findPrevOptionIndex(index, listType) {
|
892
|
+
const items = this.getListItems(listType);
|
893
|
+
const matchedOptionIndex = [...items].findIndex((link) => link.id === index);
|
894
|
+
return matchedOptionIndex > -1 ? matchedOptionIndex - 1 : 0;
|
895
|
+
}
|
896
|
+
onItemKeyDown(event, selectedItems, callback, listType) {
|
897
|
+
switch (event.code) {
|
898
|
+
case 'ArrowDown':
|
899
|
+
this.onArrowDownKey(event, selectedItems, callback, listType);
|
900
|
+
break;
|
901
|
+
case 'ArrowUp':
|
902
|
+
this.onArrowUpKey(event, selectedItems, callback, listType);
|
903
|
+
break;
|
904
|
+
case 'Home':
|
905
|
+
this.onHomeKey(event, selectedItems, callback, listType);
|
906
|
+
break;
|
907
|
+
case 'End':
|
908
|
+
this.onEndKey(event, selectedItems, callback, listType);
|
909
|
+
break;
|
910
|
+
case 'Enter':
|
911
|
+
this.onEnterKey(event, selectedItems, callback);
|
912
|
+
break;
|
913
|
+
case 'Space':
|
914
|
+
this.onSpaceKey(event, selectedItems, callback, listType);
|
915
|
+
break;
|
916
|
+
case 'KeyA':
|
917
|
+
if (event.ctrlKey) {
|
918
|
+
this.setSelectionList(listType, this.getVisibleList(listType));
|
919
|
+
callback.emit({ items: selectedItems });
|
920
|
+
event.preventDefault();
|
921
|
+
}
|
922
|
+
default:
|
923
|
+
break;
|
924
|
+
}
|
925
|
+
}
|
926
|
+
getFocusedOption(index, listType) {
|
927
|
+
if (index === -1)
|
928
|
+
return null;
|
929
|
+
if (listType === this.SOURCE_LIST) {
|
930
|
+
return this.visibleOptionsSource && this.visibleOptionsSource.length ? this.visibleOptionsSource[index] : this.source && this.source.length ? this.source[index] : null;
|
931
|
+
}
|
932
|
+
return this.visibleOptionsTarget && this.visibleOptionsTarget.length ? this.visibleOptionsTarget[index] : this.target && this.target.length ? this.target[index] : null;
|
933
|
+
}
|
934
|
+
changeFocusedOptionIndex(index, listType) {
|
935
|
+
const items = this.getListItems(listType);
|
936
|
+
let order = index >= items.length ? items.length - 1 : index < 0 ? 0 : index;
|
937
|
+
this.focusedOptionIndex = items[order].getAttribute('id');
|
938
|
+
this.focusedOption = this.getFocusedOption(order, listType);
|
939
|
+
this.scrollInView(items[order].getAttribute('id'), listType);
|
940
|
+
}
|
941
|
+
scrollInView(id, listType) {
|
942
|
+
const element = DomHandler.findSingle(this.getListElement(listType), `li[id="${id}"]`);
|
943
|
+
if (element) {
|
944
|
+
element.scrollIntoView && element.scrollIntoView({ block: 'nearest', inline: 'start' });
|
945
|
+
}
|
946
|
+
}
|
947
|
+
onArrowDownKey(event, selectedItems, callback, listType) {
|
948
|
+
const optionIndex = this.findNextOptionIndex(this.focusedOptionIndex, listType);
|
949
|
+
this.changeFocusedOptionIndex(optionIndex, listType);
|
950
|
+
if (event.shiftKey) {
|
951
|
+
this.onEnterKey(event, selectedItems, callback);
|
952
|
+
}
|
953
|
+
event.preventDefault();
|
954
|
+
}
|
955
|
+
onArrowUpKey(event, selectedItems, callback, listType) {
|
956
|
+
const optionIndex = this.findPrevOptionIndex(this.focusedOptionIndex, listType);
|
957
|
+
this.changeFocusedOptionIndex(optionIndex, listType);
|
958
|
+
if (event.shiftKey) {
|
959
|
+
this.onEnterKey(event, selectedItems, callback);
|
960
|
+
}
|
961
|
+
event.preventDefault();
|
962
|
+
}
|
963
|
+
onEnterKey(event, selectedItems, callback) {
|
964
|
+
this.onItemClick(event, this.focusedOption, selectedItems, callback);
|
965
|
+
event.preventDefault();
|
966
|
+
}
|
967
|
+
onSpaceKey(event, selectedItems, callback, listType) {
|
968
|
+
event.preventDefault();
|
969
|
+
if (event.shiftKey && selectedItems && selectedItems.length > 0) {
|
970
|
+
let visibleList = this.getVisibleList(listType);
|
971
|
+
let lastSelectedIndex = this.getLatestSelectedVisibleOptionIndex(visibleList, selectedItems);
|
972
|
+
if (lastSelectedIndex !== -1) {
|
973
|
+
let focusedIndex = ObjectUtils.findIndexInList(this.focusedOption, visibleList);
|
974
|
+
selectedItems = [...visibleList.slice(Math.min(lastSelectedIndex, focusedIndex), Math.max(lastSelectedIndex, focusedIndex) + 1)];
|
975
|
+
this.setSelectionList(listType, selectedItems);
|
976
|
+
callback.emit({ items: selectedItems });
|
977
|
+
return;
|
978
|
+
}
|
979
|
+
}
|
980
|
+
this.onEnterKey(event, selectedItems, callback);
|
981
|
+
}
|
982
|
+
onHomeKey(event, selectedItems, callback, listType) {
|
983
|
+
if (event.ctrlKey && event.shiftKey) {
|
984
|
+
let visibleList = this.getVisibleList(listType);
|
985
|
+
let focusedIndex = ObjectUtils.findIndexInList(this.focusedOption, visibleList);
|
986
|
+
selectedItems = [...visibleList.slice(0, focusedIndex + 1)];
|
987
|
+
this.setSelectionList(listType, selectedItems);
|
988
|
+
callback.emit({ items: selectedItems });
|
989
|
+
}
|
990
|
+
else {
|
991
|
+
this.changeFocusedOptionIndex(0, listType);
|
992
|
+
}
|
993
|
+
event.preventDefault();
|
994
|
+
}
|
995
|
+
onEndKey(event, selectedItems, callback, listType) {
|
996
|
+
let visibleList = this.getVisibleList(listType);
|
997
|
+
let lastIndex = visibleList && visibleList.length > 0 ? visibleList.length - 1 : null;
|
998
|
+
if (lastIndex === null)
|
999
|
+
return;
|
1000
|
+
if (event.ctrlKey && event.shiftKey) {
|
1001
|
+
let focusedIndex = ObjectUtils.findIndexInList(this.focusedOption, visibleList);
|
1002
|
+
selectedItems = [...visibleList.slice(focusedIndex, lastIndex)];
|
1003
|
+
this.setSelectionList(listType, selectedItems);
|
1004
|
+
callback.emit({ items: selectedItems });
|
1005
|
+
}
|
1006
|
+
else {
|
1007
|
+
this.changeFocusedOptionIndex(lastIndex, listType);
|
1008
|
+
}
|
1009
|
+
event.preventDefault();
|
1010
|
+
}
|
775
1011
|
getDropIndexes(fromIndex, toIndex, droppedList, isTransfer, data) {
|
776
1012
|
let previousIndex, currentIndex;
|
777
1013
|
if (droppedList === this.SOURCE_LIST) {
|
@@ -883,17 +1119,17 @@ class PickList {
|
|
883
1119
|
.p-picklist[${this.id}] {
|
884
1120
|
flex-direction: column;
|
885
1121
|
}
|
886
|
-
|
1122
|
+
|
887
1123
|
.p-picklist[${this.id}] .p-picklist-buttons {
|
888
1124
|
padding: var(--content-padding);
|
889
1125
|
flex-direction: row;
|
890
1126
|
}
|
891
|
-
|
1127
|
+
|
892
1128
|
.p-picklist[${this.id}] .p-picklist-buttons .p-button {
|
893
1129
|
margin-right: var(--inline-spacing);
|
894
1130
|
margin-bottom: 0;
|
895
1131
|
}
|
896
|
-
|
1132
|
+
|
897
1133
|
.p-picklist[${this.id}] .p-picklist-buttons .p-button:last-child {
|
898
1134
|
margin-right: 0;
|
899
1135
|
}
|
@@ -935,38 +1171,74 @@ class PickList {
|
|
935
1171
|
this.destroyStyle();
|
936
1172
|
this.destroyMedia();
|
937
1173
|
}
|
938
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0
|
939
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0
|
940
|
-
<div [class]="styleClass" [ngStyle]="style" [ngClass]="{ 'p-picklist p-component': true, 'p-picklist-striped': stripedRows }" cdkDropListGroup>
|
941
|
-
<div class="p-picklist-buttons p-picklist-source-controls" *ngIf="showSourceControls">
|
942
|
-
<button
|
943
|
-
|
1174
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: PickList, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FilterService }, { token: i1.PrimeNGConfig }], target: i0.ɵɵFactoryTarget.Component });
|
1175
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: PickList, selector: "p-pickList", inputs: { source: "source", target: "target", sourceHeader: "sourceHeader", tabindex: "tabindex", rightButtonAriaLabel: "rightButtonAriaLabel", leftButtonAriaLabel: "leftButtonAriaLabel", allRightButtonAriaLabel: "allRightButtonAriaLabel", allLeftButtonAriaLabel: "allLeftButtonAriaLabel", upButtonAriaLabel: "upButtonAriaLabel", downButtonAriaLabel: "downButtonAriaLabel", topButtonAriaLabel: "topButtonAriaLabel", bottomButtonAriaLabel: "bottomButtonAriaLabel", targetHeader: "targetHeader", responsive: "responsive", filterBy: "filterBy", filterLocale: "filterLocale", trackBy: "trackBy", sourceTrackBy: "sourceTrackBy", targetTrackBy: "targetTrackBy", showSourceFilter: "showSourceFilter", showTargetFilter: "showTargetFilter", metaKeySelection: "metaKeySelection", dragdrop: "dragdrop", style: "style", styleClass: "styleClass", sourceStyle: "sourceStyle", targetStyle: "targetStyle", showSourceControls: "showSourceControls", showTargetControls: "showTargetControls", sourceFilterPlaceholder: "sourceFilterPlaceholder", targetFilterPlaceholder: "targetFilterPlaceholder", disabled: "disabled", ariaSourceFilterLabel: "ariaSourceFilterLabel", ariaTargetFilterLabel: "ariaTargetFilterLabel", filterMatchMode: "filterMatchMode", stripedRows: "stripedRows", keepSelection: "keepSelection", breakpoint: "breakpoint" }, outputs: { onMoveToSource: "onMoveToSource", onMoveAllToSource: "onMoveAllToSource", onMoveAllToTarget: "onMoveAllToTarget", onMoveToTarget: "onMoveToTarget", onSourceReorder: "onSourceReorder", onTargetReorder: "onTargetReorder", onSourceSelect: "onSourceSelect", onTargetSelect: "onTargetSelect", onSourceFilter: "onSourceFilter", onTargetFilter: "onTargetFilter", onFocus: "onFocus", onBlur: "onBlur" }, host: { classAttribute: "p-element" }, queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "listViewSourceChild", first: true, predicate: ["sourcelist"], descendants: true }, { propertyName: "listViewTargetChild", first: true, predicate: ["targetlist"], descendants: true }, { propertyName: "sourceFilterViewChild", first: true, predicate: ["sourceFilter"], descendants: true }, { propertyName: "targetFilterViewChild", first: true, predicate: ["targetFilter"], descendants: true }], ngImport: i0, template: `
|
1176
|
+
<div [class]="styleClass" [ngStyle]="style" [ngClass]="{ 'p-picklist p-component': true, 'p-picklist-striped': stripedRows }" cdkDropListGroup [attr.data-pc-name]="'picklist'" [attr.data-pc-section]="'root'">
|
1177
|
+
<div class="p-picklist-buttons p-picklist-source-controls" *ngIf="showSourceControls" [attr.data-pc-section]="'sourceControls'" [attr.data-pc-group-section]="'controls'">
|
1178
|
+
<button
|
1179
|
+
type="button"
|
1180
|
+
[attr.aria-label]="moveUpAriaLabel"
|
1181
|
+
pButton
|
1182
|
+
pRipple
|
1183
|
+
class="p-button-icon-only"
|
1184
|
+
[disabled]="sourceMoveDisabled()"
|
1185
|
+
(click)="moveUp(sourcelist, source, selectedItemsSource, onSourceReorder, SOURCE_LIST)"
|
1186
|
+
[attr.data-pc-section]="'sourceMoveUpButton'"
|
1187
|
+
>
|
1188
|
+
<AngleUpIcon *ngIf="!moveUpIconTemplate" [attr.data-pc-section]="'moveupicon'" />
|
944
1189
|
<ng-template *ngTemplateOutlet="moveUpIconTemplate"></ng-template>
|
945
1190
|
</button>
|
946
|
-
<button
|
947
|
-
|
1191
|
+
<button
|
1192
|
+
type="button"
|
1193
|
+
[attr.aria-label]="moveTopAriaLabel"
|
1194
|
+
pButton
|
1195
|
+
pRipple
|
1196
|
+
class="p-button-icon-only"
|
1197
|
+
[disabled]="sourceMoveDisabled()"
|
1198
|
+
(click)="moveTop(sourcelist, source, selectedItemsSource, onSourceReorder, SOURCE_LIST)"
|
1199
|
+
[attr.data-pc-section]="'sourceMoveTopButton'"
|
1200
|
+
>
|
1201
|
+
<AngleDoubleUpIcon *ngIf="!moveTopIconTemplate" [attr.data-pc-section]="'movetopicon'" />
|
948
1202
|
<ng-template *ngTemplateOutlet="moveTopIconTemplate"></ng-template>
|
949
1203
|
</button>
|
950
|
-
<button
|
951
|
-
|
1204
|
+
<button
|
1205
|
+
type="button"
|
1206
|
+
[attr.aria-label]="moveDownAriaLabel"
|
1207
|
+
pButton
|
1208
|
+
pRipple
|
1209
|
+
class="p-button-icon-only"
|
1210
|
+
[disabled]="sourceMoveDisabled()"
|
1211
|
+
(click)="moveDown(sourcelist, source, selectedItemsSource, onSourceReorder, SOURCE_LIST)"
|
1212
|
+
[attr.data-pc-section]="'sourceMoveDownButton'"
|
1213
|
+
>
|
1214
|
+
<AngleDownIcon *ngIf="!moveDownIconTemplate" [attr.data-pc-section]="'movedownicon'" />
|
952
1215
|
<ng-template *ngTemplateOutlet="moveDownIconTemplate"></ng-template>
|
953
1216
|
</button>
|
954
|
-
<button
|
955
|
-
|
1217
|
+
<button
|
1218
|
+
type="button"
|
1219
|
+
[attr.aria-label]="moveBottomAriaLabel"
|
1220
|
+
pButton
|
1221
|
+
pRipple
|
1222
|
+
class="p-button-icon-only"
|
1223
|
+
[disabled]="sourceMoveDisabled()"
|
1224
|
+
(click)="moveBottom(sourcelist, source, selectedItemsSource, onSourceReorder, SOURCE_LIST)"
|
1225
|
+
[attr.data-pc-section]="'sourceMoveBottomButton'"
|
1226
|
+
>
|
1227
|
+
<AngleDoubleDownIcon *ngIf="!moveBottomIconTemplate" [attr.data-pc-section]="'movebottomicon'" />
|
956
1228
|
<ng-template *ngTemplateOutlet="moveBottomIconTemplate"></ng-template>
|
957
1229
|
</button>
|
958
1230
|
</div>
|
959
|
-
<div class="p-picklist-list-wrapper p-picklist-source-wrapper">
|
960
|
-
<div class="p-picklist-header" *ngIf="sourceHeader || sourceHeaderTemplate">
|
1231
|
+
<div class="p-picklist-list-wrapper p-picklist-source-wrapper" [attr.data-pc-section]="'sourceWrapper'" [attr.data-pc-group-section]="'listWrapper'">
|
1232
|
+
<div class="p-picklist-header" *ngIf="sourceHeader || sourceHeaderTemplate" [attr.data-pc-section]="'sourceHeader'" [attr.data-pc-group-section]="'header'">
|
961
1233
|
<div class="p-picklist-title" *ngIf="!sourceHeaderTemplate">{{ sourceHeader }}</div>
|
962
1234
|
<ng-container *ngTemplateOutlet="sourceHeaderTemplate"></ng-container>
|
963
1235
|
</div>
|
964
|
-
<div class="p-picklist-filter-container" *ngIf="filterBy && showSourceFilter !== false">
|
1236
|
+
<div class="p-picklist-filter-container" *ngIf="filterBy && showSourceFilter !== false" [attr.data-pc-section]="'sourceFilterContainer'">
|
965
1237
|
<ng-container *ngIf="sourceFilterTemplate; else builtInSourceElement">
|
966
1238
|
<ng-container *ngTemplateOutlet="sourceFilterTemplate; context: { options: sourceFilterOptions }"></ng-container>
|
967
1239
|
</ng-container>
|
968
1240
|
<ng-template #builtInSourceElement>
|
969
|
-
<div class="p-picklist-filter">
|
1241
|
+
<div class="p-picklist-filter" [attr.data-pc-section]="'sourceFilter'">
|
970
1242
|
<input
|
971
1243
|
#sourceFilter
|
972
1244
|
type="text"
|
@@ -976,86 +1248,106 @@ class PickList {
|
|
976
1248
|
[disabled]="disabled"
|
977
1249
|
[attr.placeholder]="sourceFilterPlaceholder"
|
978
1250
|
[attr.aria-label]="ariaSourceFilterLabel"
|
1251
|
+
[attr.data-pc-section]="'sourceFilterInput'"
|
979
1252
|
/>
|
980
|
-
<SearchIcon *ngIf="!sourceFilterIconTemplate" [styleClass]="'p-picklist-filter-icon'" />
|
981
|
-
<span class="p-picklist-filter-icon" *ngIf="sourceFilterIconTemplate">
|
1253
|
+
<SearchIcon *ngIf="!sourceFilterIconTemplate" [styleClass]="'p-picklist-filter-icon'" [attr.data-pc-section]="'sourcefilterIcon'" />
|
1254
|
+
<span class="p-picklist-filter-icon" *ngIf="sourceFilterIconTemplate" [attr.data-pc-section]="'sourcefilterIcon'">
|
982
1255
|
<ng-template *ngTemplateOutlet="sourceFilterIconTemplate"></ng-template>
|
983
1256
|
</span>
|
984
1257
|
</div>
|
985
1258
|
</ng-template>
|
986
1259
|
</div>
|
987
1260
|
|
988
|
-
<ul
|
1261
|
+
<ul
|
1262
|
+
#sourcelist
|
1263
|
+
class="p-picklist-list p-picklist-source"
|
1264
|
+
[id]="idSource + '_list'"
|
1265
|
+
(keydown)="onItemKeyDown($event, selectedItemsSource, onSourceSelect, SOURCE_LIST)"
|
1266
|
+
(focus)="onListFocus($event, SOURCE_LIST)"
|
1267
|
+
(blur)="onListBlur($event, SOURCE_LIST)"
|
1268
|
+
cdkDropList
|
1269
|
+
[cdkDropListData]="source"
|
1270
|
+
(cdkDropListDropped)="onDrop($event, SOURCE_LIST)"
|
1271
|
+
[ngStyle]="sourceStyle"
|
1272
|
+
role="listbox"
|
1273
|
+
aria-multiselectable="true"
|
1274
|
+
[attr.aria-activedescendant]="focused['sourceList'] ? focusedOptionId : undefined"
|
1275
|
+
[attr.tabindex]="source && source.length > 0 ? tabindex : -1"
|
1276
|
+
[attr.data-pc-section]="'sourceList'"
|
1277
|
+
[attr.data-pc-group-section]="'list'"
|
1278
|
+
>
|
989
1279
|
<ng-template ngFor let-item [ngForOf]="source" [ngForTrackBy]="sourceTrackBy || trackBy" let-i="index" let-l="last">
|
990
1280
|
<li
|
991
1281
|
[ngClass]="{ 'p-picklist-item': true, 'p-highlight': isSelected(item, selectedItemsSource), 'p-disabled': disabled }"
|
992
1282
|
pRipple
|
993
1283
|
cdkDrag
|
1284
|
+
[id]="idSource + '_' + i"
|
1285
|
+
[ngClass]="itemClass(item, idSource + '_' + i, selectedItemsSource)"
|
994
1286
|
[cdkDragData]="item"
|
995
1287
|
[cdkDragDisabled]="!dragdrop"
|
996
|
-
(click)="onItemClick($event, item, selectedItemsSource, onSourceSelect)"
|
1288
|
+
(click)="onItemClick($event, item, selectedItemsSource, onSourceSelect, idSource + '_' + i)"
|
1289
|
+
(mousedown)="onOptionMouseDown(i, SOURCE_LIST)"
|
997
1290
|
(dblclick)="onSourceItemDblClick()"
|
998
1291
|
(touchend)="onItemTouchEnd()"
|
999
|
-
(keydown)="onItemKeydown($event, item, selectedItemsSource, onSourceSelect)"
|
1000
1292
|
*ngIf="isItemVisible(item, SOURCE_LIST)"
|
1001
|
-
tabindex="0"
|
1002
1293
|
role="option"
|
1294
|
+
[attr.data-pc-section]="'item'"
|
1003
1295
|
[attr.aria-selected]="isSelected(item, selectedItemsSource)"
|
1004
1296
|
>
|
1005
1297
|
<ng-container *ngTemplateOutlet="itemTemplate; context: { $implicit: item, index: i }"></ng-container>
|
1006
1298
|
</li>
|
1007
1299
|
</ng-template>
|
1008
1300
|
<ng-container *ngIf="isEmpty(SOURCE_LIST) && (emptyMessageSourceTemplate || emptyFilterMessageSourceTemplate)">
|
1009
|
-
<li class="p-picklist-empty-message" *ngIf="!filterValueSource || !emptyFilterMessageSourceTemplate">
|
1301
|
+
<li class="p-picklist-empty-message" *ngIf="!filterValueSource || !emptyFilterMessageSourceTemplate" [attr.data-pc-section]="'sourceEmptyMessage'">
|
1010
1302
|
<ng-container *ngTemplateOutlet="emptyMessageSourceTemplate"></ng-container>
|
1011
1303
|
</li>
|
1012
|
-
<li class="p-picklist-empty-message" *ngIf="filterValueSource">
|
1304
|
+
<li class="p-picklist-empty-message" *ngIf="filterValueSource" [attr.data-pc-section]="'sourceEmptyMessage'">
|
1013
1305
|
<ng-container *ngTemplateOutlet="emptyFilterMessageSourceTemplate"></ng-container>
|
1014
1306
|
</li>
|
1015
1307
|
</ng-container>
|
1016
1308
|
</ul>
|
1017
1309
|
</div>
|
1018
|
-
<div class="p-picklist-buttons p-picklist-transfer-buttons">
|
1019
|
-
<button type="button" [attr.aria-label]="
|
1310
|
+
<div class="p-picklist-buttons p-picklist-transfer-buttons" [attr.data-pc-section]="'buttons'" [attr.data-pc-group-section]="'controls'">
|
1311
|
+
<button type="button" [attr.aria-label]="moveToTargetAriaLabel" pButton pRipple class="p-button-icon-only" [disabled]="moveRightDisabled()" (click)="moveRight()" [attr.data-pc-section]="'moveToTargetButton'">
|
1020
1312
|
<ng-container *ngIf="!moveToTargetIconTemplate">
|
1021
|
-
<AngleRightIcon *ngIf="!viewChanged" />
|
1022
|
-
<AngleDownIcon *ngIf="viewChanged" />
|
1313
|
+
<AngleRightIcon *ngIf="!viewChanged" [attr.data-pc-section]="'movetotargeticon'" />
|
1314
|
+
<AngleDownIcon *ngIf="viewChanged" [attr.data-pc-section]="'movetotargeticon'" />
|
1023
1315
|
</ng-container>
|
1024
1316
|
<ng-template *ngTemplateOutlet="moveToTargetIconTemplate; context: { $implicit: viewChanged }"></ng-template>
|
1025
1317
|
</button>
|
1026
|
-
<button type="button" [attr.aria-label]="
|
1318
|
+
<button type="button" [attr.aria-label]="moveAllToTargetAriaLabel" pButton pRipple class="p-button-icon-only" [disabled]="moveAllRightDisabled()" (click)="moveAllRight()" [attr.data-pc-section]="'moveAllToTargetButton'">
|
1027
1319
|
<ng-container *ngIf="!moveAllToTargetIconTemplate">
|
1028
|
-
<AngleDoubleRightIcon *ngIf="!viewChanged" />
|
1029
|
-
<AngleDoubleDownIcon *ngIf="viewChanged" />
|
1320
|
+
<AngleDoubleRightIcon *ngIf="!viewChanged" [attr.data-pc-section]="'movealltotargeticon'" />
|
1321
|
+
<AngleDoubleDownIcon *ngIf="viewChanged" [attr.data-pc-section]="'movealltotargeticon'" />
|
1030
1322
|
</ng-container>
|
1031
1323
|
<ng-template *ngTemplateOutlet="moveAllToTargetIconTemplate; context: { $implicit: viewChanged }"></ng-template>
|
1032
1324
|
</button>
|
1033
|
-
<button type="button" [attr.aria-label]="
|
1325
|
+
<button type="button" [attr.aria-label]="moveToSourceAriaLabel" pButton pRipple class="p-button-icon-only" [disabled]="moveLeftDisabled()" (click)="moveLeft()" [attr.data-pc-section]="'moveToSourceButton'">
|
1034
1326
|
<ng-container *ngIf="!moveToSourceIconTemplate">
|
1035
|
-
<AngleLeftIcon *ngIf="!viewChanged" />
|
1036
|
-
<AngleUpIcon *ngIf="viewChanged" />
|
1327
|
+
<AngleLeftIcon *ngIf="!viewChanged" [attr.data-pc-section]="'movedownsourceticon'" />
|
1328
|
+
<AngleUpIcon *ngIf="viewChanged" [attr.data-pc-section]="'movedownsourceticon'" />
|
1037
1329
|
</ng-container>
|
1038
1330
|
<ng-template *ngTemplateOutlet="moveToSourceIconTemplate; context: { $implicit: viewChanged }"></ng-template>
|
1039
1331
|
</button>
|
1040
|
-
<button type="button" [attr.aria-label]="
|
1332
|
+
<button type="button" [attr.aria-label]="moveAllToSourceAriaLabel" pButton pRipple class="p-button-icon-only" [disabled]="moveAllLeftDisabled()" (click)="moveAllLeft()" [attr.data-pc-section]="'moveAllToSourceButton'">
|
1041
1333
|
<ng-container *ngIf="!moveAllToSourceIconTemplate">
|
1042
|
-
<AngleDoubleLeftIcon *ngIf="!viewChanged" />
|
1043
|
-
<AngleDoubleUpIcon *ngIf="viewChanged" />
|
1334
|
+
<AngleDoubleLeftIcon *ngIf="!viewChanged" [attr.data-pc-section]="'movealltosourceticon'" />
|
1335
|
+
<AngleDoubleUpIcon *ngIf="viewChanged" [attr.data-pc-section]="'movealltosourceticon'" />
|
1044
1336
|
</ng-container>
|
1045
1337
|
<ng-template *ngTemplateOutlet="moveAllToSourceIconTemplate; context: { $implicit: viewChanged }"></ng-template>
|
1046
1338
|
</button>
|
1047
1339
|
</div>
|
1048
|
-
<div class="p-picklist-list-wrapper p-picklist-target-wrapper">
|
1049
|
-
<div class="p-picklist-header" *ngIf="targetHeader || targetHeaderTemplate">
|
1340
|
+
<div class="p-picklist-list-wrapper p-picklist-target-wrapper" [attr.data-pc-section]="'targetWrapper'" [attr.data-pc-group-section]="'listwrapper'">
|
1341
|
+
<div class="p-picklist-header" *ngIf="targetHeader || targetHeaderTemplate" [attr.data-pc-section]="'targetHead'" [attr.data-pc-group-section]="'header'">
|
1050
1342
|
<div class="p-picklist-title" *ngIf="!targetHeaderTemplate">{{ targetHeader }}</div>
|
1051
1343
|
<ng-container *ngTemplateOutlet="targetHeaderTemplate"></ng-container>
|
1052
1344
|
</div>
|
1053
|
-
<div class="p-picklist-filter-container" *ngIf="filterBy && showTargetFilter !== false">
|
1345
|
+
<div class="p-picklist-filter-container" *ngIf="filterBy && showTargetFilter !== false" [attr.data-pc-section]="'targetFilterContainer'">
|
1054
1346
|
<ng-container *ngIf="targetFilterTemplate; else builtInTargetElement">
|
1055
1347
|
<ng-container *ngTemplateOutlet="targetFilterTemplate; context: { options: targetFilterOptions }"></ng-container>
|
1056
1348
|
</ng-container>
|
1057
1349
|
<ng-template #builtInTargetElement>
|
1058
|
-
<div class="p-picklist-filter">
|
1350
|
+
<div class="p-picklist-filter" [attr.data-pc-section]="'targetFilter'">
|
1059
1351
|
<input
|
1060
1352
|
#targetFilter
|
1061
1353
|
type="text"
|
@@ -1065,98 +1357,190 @@ class PickList {
|
|
1065
1357
|
[disabled]="disabled"
|
1066
1358
|
[attr.placeholder]="targetFilterPlaceholder"
|
1067
1359
|
[attr.aria-label]="ariaTargetFilterLabel"
|
1360
|
+
[attr.data-pc-section]="'targetFilterInput'"
|
1068
1361
|
/>
|
1069
|
-
<SearchIcon *ngIf="!targetFilterIconTemplate" [styleClass]="'p-picklist-filter-icon'" />
|
1070
|
-
<span class="p-picklist-filter-icon" *ngIf="targetFilterIconTemplate">
|
1362
|
+
<SearchIcon *ngIf="!targetFilterIconTemplate" [styleClass]="'p-picklist-filter-icon'" [attr.data-pc-section]="'targetfiltericon'" />
|
1363
|
+
<span class="p-picklist-filter-icon" *ngIf="targetFilterIconTemplate" [attr.data-pc-section]="'targetfiltericon'">
|
1071
1364
|
<ng-template *ngTemplateOutlet="targetFilterIconTemplate"></ng-template>
|
1072
1365
|
</span>
|
1073
1366
|
</div>
|
1074
1367
|
</ng-template>
|
1075
1368
|
</div>
|
1076
|
-
<ul
|
1369
|
+
<ul
|
1370
|
+
#targetlist
|
1371
|
+
class="p-picklist-list p-picklist-target"
|
1372
|
+
[id]="idTarget + '_list'"
|
1373
|
+
(keydown)="onItemKeyDown($event, selectedItemsTarget, onTargetSelect, TARGET_LIST)"
|
1374
|
+
(focus)="onListFocus($event, TARGET_LIST)"
|
1375
|
+
(blur)="onListBlur($event, TARGET_LIST)"
|
1376
|
+
cdkDropList
|
1377
|
+
[cdkDropListData]="target"
|
1378
|
+
(cdkDropListDropped)="onDrop($event, TARGET_LIST)"
|
1379
|
+
[ngStyle]="targetStyle"
|
1380
|
+
role="listbox"
|
1381
|
+
aria-multiselectable="true"
|
1382
|
+
[attr.aria-activedescendant]="focused['targetList'] ? focusedOptionId : undefined"
|
1383
|
+
[attr.tabindex]="target && target.length > 0 ? tabindex : -1"
|
1384
|
+
[attr.data-pc-section]="'targetList'"
|
1385
|
+
[attr.data-pc-group-section]="'list'"
|
1386
|
+
>
|
1077
1387
|
<ng-template ngFor let-item [ngForOf]="target" [ngForTrackBy]="targetTrackBy || trackBy" let-i="index" let-l="last">
|
1078
1388
|
<li
|
1079
1389
|
[ngClass]="{ 'p-picklist-item': true, 'p-highlight': isSelected(item, selectedItemsTarget), 'p-disabled': disabled }"
|
1080
1390
|
pRipple
|
1081
1391
|
cdkDrag
|
1392
|
+
[id]="idTarget + '_' + i"
|
1393
|
+
[ngClass]="itemClass(item, idTarget + '_' + i, selectedItemsTarget)"
|
1082
1394
|
[cdkDragData]="item"
|
1083
1395
|
[cdkDragDisabled]="!dragdrop"
|
1084
|
-
(click)="onItemClick($event, item, selectedItemsTarget, onTargetSelect)"
|
1396
|
+
(click)="onItemClick($event, item, selectedItemsTarget, onTargetSelect, idTarget + '_' + i)"
|
1397
|
+
(mousedown)="onOptionMouseDown(i, TARGET_LIST)"
|
1085
1398
|
(dblclick)="onTargetItemDblClick()"
|
1086
1399
|
(touchend)="onItemTouchEnd()"
|
1087
|
-
(keydown)="onItemKeydown($event, item, selectedItemsTarget, onTargetSelect)"
|
1088
1400
|
*ngIf="isItemVisible(item, TARGET_LIST)"
|
1089
|
-
tabindex="0"
|
1090
1401
|
role="option"
|
1402
|
+
[attr.data-pc-section]="'item'"
|
1091
1403
|
[attr.aria-selected]="isSelected(item, selectedItemsTarget)"
|
1092
1404
|
>
|
1093
1405
|
<ng-container *ngTemplateOutlet="itemTemplate; context: { $implicit: item, index: i }"></ng-container>
|
1094
1406
|
</li>
|
1095
1407
|
</ng-template>
|
1096
1408
|
<ng-container *ngIf="isEmpty(TARGET_LIST) && (emptyMessageTargetTemplate || emptyFilterMessageTargetTemplate)">
|
1097
|
-
<li class="p-picklist-empty-message" *ngIf="!filterValueTarget || !emptyFilterMessageTargetTemplate">
|
1409
|
+
<li class="p-picklist-empty-message" *ngIf="!filterValueTarget || !emptyFilterMessageTargetTemplate" [attr.data-pc-section]="'targetEmptyMessage'">
|
1098
1410
|
<ng-container *ngTemplateOutlet="emptyMessageTargetTemplate"></ng-container>
|
1099
1411
|
</li>
|
1100
|
-
<li class="p-picklist-empty-message" *ngIf="filterValueTarget">
|
1412
|
+
<li class="p-picklist-empty-message" *ngIf="filterValueTarget" [attr.data-pc-section]="'targetEmptyMessage'">
|
1101
1413
|
<ng-container *ngTemplateOutlet="emptyFilterMessageTargetTemplate"></ng-container>
|
1102
1414
|
</li>
|
1103
1415
|
</ng-container>
|
1104
1416
|
</ul>
|
1105
1417
|
</div>
|
1106
|
-
<div class="p-picklist-buttons p-picklist-target-controls" *ngIf="showTargetControls">
|
1107
|
-
<button
|
1108
|
-
|
1418
|
+
<div class="p-picklist-buttons p-picklist-target-controls" *ngIf="showTargetControls" [attr.data-pc-section]="'targetControls'" [attr.data-pc-group-section]="'controls'">
|
1419
|
+
<button
|
1420
|
+
type="button"
|
1421
|
+
[attr.aria-label]="moveUpAriaLabel"
|
1422
|
+
pButton
|
1423
|
+
pRipple
|
1424
|
+
class="p-button-icon-only"
|
1425
|
+
[disabled]="targetMoveDisabled()"
|
1426
|
+
(click)="moveUp(targetlist, target, selectedItemsTarget, onTargetReorder, TARGET_LIST)"
|
1427
|
+
[attr.data-pc-section]="'targetMoveUpButton'"
|
1428
|
+
>
|
1429
|
+
<AngleUpIcon *ngIf="!moveUpIconTemplate" [attr.data-pc-section]="'moveupicon'" />
|
1109
1430
|
<ng-template *ngTemplateOutlet="moveUpIconTemplate"></ng-template>
|
1110
1431
|
</button>
|
1111
|
-
<button
|
1112
|
-
|
1432
|
+
<button
|
1433
|
+
type="button"
|
1434
|
+
[attr.aria-label]="moveTopAriaLabel"
|
1435
|
+
pButton
|
1436
|
+
pRipple
|
1437
|
+
class="p-button-icon-only"
|
1438
|
+
[disabled]="targetMoveDisabled()"
|
1439
|
+
(click)="moveTop(targetlist, target, selectedItemsTarget, onTargetReorder, TARGET_LIST)"
|
1440
|
+
[attr.data-pc-section]="'targetMoveTopButton'"
|
1441
|
+
>
|
1442
|
+
<AngleDoubleUpIcon *ngIf="!moveTopIconTemplate" [attr.data-pc-section]="'movetopicon'" />
|
1113
1443
|
<ng-template *ngTemplateOutlet="moveTopIconTemplate"></ng-template>
|
1114
1444
|
</button>
|
1115
|
-
<button
|
1116
|
-
|
1445
|
+
<button
|
1446
|
+
type="button"
|
1447
|
+
[attr.aria-label]="moveDownAriaLabel"
|
1448
|
+
pButton
|
1449
|
+
pRipple
|
1450
|
+
class="p-button-icon-only"
|
1451
|
+
[disabled]="targetMoveDisabled()"
|
1452
|
+
(click)="moveDown(targetlist, target, selectedItemsTarget, onTargetReorder, TARGET_LIST)"
|
1453
|
+
[attr.data-pc-section]="'targetMoveDownButton'"
|
1454
|
+
>
|
1455
|
+
<AngleDownIcon *ngIf="!moveDownIconTemplate" [attr.data-pc-section]="'movedownicon'" />
|
1117
1456
|
<ng-template *ngTemplateOutlet="moveDownIconTemplate"></ng-template>
|
1118
1457
|
</button>
|
1119
|
-
<button
|
1120
|
-
|
1458
|
+
<button
|
1459
|
+
type="button"
|
1460
|
+
[attr.aria-label]="moveBottomAriaLabel"
|
1461
|
+
pButton
|
1462
|
+
pRipple
|
1463
|
+
class="p-button-icon-only"
|
1464
|
+
[disabled]="targetMoveDisabled()"
|
1465
|
+
(click)="moveBottom(targetlist, target, selectedItemsTarget, onTargetReorder, TARGET_LIST)"
|
1466
|
+
[attr.data-pc-section]="'targetMoveBottomButton'"
|
1467
|
+
>
|
1468
|
+
<AngleDoubleDownIcon *ngIf="!moveBottomIconTemplate" [attr.data-pc-section]="'movebottomicon'" />
|
1121
1469
|
<ng-template *ngTemplateOutlet="moveBottomIconTemplate"></ng-template>
|
1122
1470
|
</button>
|
1123
1471
|
</div>
|
1124
1472
|
</div>
|
1125
1473
|
`, isInline: true, styles: ["@layer primeng{.p-picklist{display:flex}.p-picklist-buttons{display:flex;flex-direction:column;justify-content:center}.p-picklist-list-wrapper{flex:1 1 50%}.p-picklist-list{list-style-type:none;margin:0;padding:0;overflow:auto;min-height:12rem}.p-picklist-item{display:block;cursor:pointer;overflow:hidden;position:relative}.p-picklist-item:not(.cdk-drag-disabled){cursor:move}.p-picklist-item.cdk-drag-placeholder{opacity:0}.p-picklist-item.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.p-picklist-filter{position:relative}.p-picklist-filter-icon{position:absolute;top:50%;margin-top:-.5rem}.p-picklist-filter-input{width:100%}.p-picklist-list.cdk-drop-list-dragging .p-picklist-item:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.ButtonDirective; }), selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i0.forwardRef(function () { return i4.Ripple; }), selector: "[pRipple]" }, { kind: "directive", type: i0.forwardRef(function () { return i5.CdkDropList; }), selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i0.forwardRef(function () { return i5.CdkDropListGroup; }), selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "directive", type: i0.forwardRef(function () { return i5.CdkDrag; }), selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i0.forwardRef(function () { return AngleDoubleDownIcon; }), selector: "AngleDoubleDownIcon" }, { kind: "component", type: i0.forwardRef(function () { return AngleDoubleLeftIcon; }), selector: "AngleDoubleLeftIcon" }, { kind: "component", type: i0.forwardRef(function () { return AngleDoubleRightIcon; }), selector: "AngleDoubleRightIcon" }, { kind: "component", type: i0.forwardRef(function () { return AngleDoubleUpIcon; }), selector: "AngleDoubleUpIcon" }, { kind: "component", type: i0.forwardRef(function () { return AngleDownIcon; }), selector: "AngleDownIcon" }, { kind: "component", type: i0.forwardRef(function () { return AngleLeftIcon; }), selector: "AngleLeftIcon" }, { kind: "component", type: i0.forwardRef(function () { return AngleRightIcon; }), selector: "AngleRightIcon" }, { kind: "component", type: i0.forwardRef(function () { return AngleUpIcon; }), selector: "AngleUpIcon" }, { kind: "component", type: i0.forwardRef(function () { return SearchIcon; }), selector: "SearchIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
1126
1474
|
}
|
1127
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0
|
1475
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: PickList, decorators: [{
|
1128
1476
|
type: Component,
|
1129
1477
|
args: [{ selector: 'p-pickList', template: `
|
1130
|
-
<div [class]="styleClass" [ngStyle]="style" [ngClass]="{ 'p-picklist p-component': true, 'p-picklist-striped': stripedRows }" cdkDropListGroup>
|
1131
|
-
<div class="p-picklist-buttons p-picklist-source-controls" *ngIf="showSourceControls">
|
1132
|
-
<button
|
1133
|
-
|
1478
|
+
<div [class]="styleClass" [ngStyle]="style" [ngClass]="{ 'p-picklist p-component': true, 'p-picklist-striped': stripedRows }" cdkDropListGroup [attr.data-pc-name]="'picklist'" [attr.data-pc-section]="'root'">
|
1479
|
+
<div class="p-picklist-buttons p-picklist-source-controls" *ngIf="showSourceControls" [attr.data-pc-section]="'sourceControls'" [attr.data-pc-group-section]="'controls'">
|
1480
|
+
<button
|
1481
|
+
type="button"
|
1482
|
+
[attr.aria-label]="moveUpAriaLabel"
|
1483
|
+
pButton
|
1484
|
+
pRipple
|
1485
|
+
class="p-button-icon-only"
|
1486
|
+
[disabled]="sourceMoveDisabled()"
|
1487
|
+
(click)="moveUp(sourcelist, source, selectedItemsSource, onSourceReorder, SOURCE_LIST)"
|
1488
|
+
[attr.data-pc-section]="'sourceMoveUpButton'"
|
1489
|
+
>
|
1490
|
+
<AngleUpIcon *ngIf="!moveUpIconTemplate" [attr.data-pc-section]="'moveupicon'" />
|
1134
1491
|
<ng-template *ngTemplateOutlet="moveUpIconTemplate"></ng-template>
|
1135
1492
|
</button>
|
1136
|
-
<button
|
1137
|
-
|
1493
|
+
<button
|
1494
|
+
type="button"
|
1495
|
+
[attr.aria-label]="moveTopAriaLabel"
|
1496
|
+
pButton
|
1497
|
+
pRipple
|
1498
|
+
class="p-button-icon-only"
|
1499
|
+
[disabled]="sourceMoveDisabled()"
|
1500
|
+
(click)="moveTop(sourcelist, source, selectedItemsSource, onSourceReorder, SOURCE_LIST)"
|
1501
|
+
[attr.data-pc-section]="'sourceMoveTopButton'"
|
1502
|
+
>
|
1503
|
+
<AngleDoubleUpIcon *ngIf="!moveTopIconTemplate" [attr.data-pc-section]="'movetopicon'" />
|
1138
1504
|
<ng-template *ngTemplateOutlet="moveTopIconTemplate"></ng-template>
|
1139
1505
|
</button>
|
1140
|
-
<button
|
1141
|
-
|
1506
|
+
<button
|
1507
|
+
type="button"
|
1508
|
+
[attr.aria-label]="moveDownAriaLabel"
|
1509
|
+
pButton
|
1510
|
+
pRipple
|
1511
|
+
class="p-button-icon-only"
|
1512
|
+
[disabled]="sourceMoveDisabled()"
|
1513
|
+
(click)="moveDown(sourcelist, source, selectedItemsSource, onSourceReorder, SOURCE_LIST)"
|
1514
|
+
[attr.data-pc-section]="'sourceMoveDownButton'"
|
1515
|
+
>
|
1516
|
+
<AngleDownIcon *ngIf="!moveDownIconTemplate" [attr.data-pc-section]="'movedownicon'" />
|
1142
1517
|
<ng-template *ngTemplateOutlet="moveDownIconTemplate"></ng-template>
|
1143
1518
|
</button>
|
1144
|
-
<button
|
1145
|
-
|
1519
|
+
<button
|
1520
|
+
type="button"
|
1521
|
+
[attr.aria-label]="moveBottomAriaLabel"
|
1522
|
+
pButton
|
1523
|
+
pRipple
|
1524
|
+
class="p-button-icon-only"
|
1525
|
+
[disabled]="sourceMoveDisabled()"
|
1526
|
+
(click)="moveBottom(sourcelist, source, selectedItemsSource, onSourceReorder, SOURCE_LIST)"
|
1527
|
+
[attr.data-pc-section]="'sourceMoveBottomButton'"
|
1528
|
+
>
|
1529
|
+
<AngleDoubleDownIcon *ngIf="!moveBottomIconTemplate" [attr.data-pc-section]="'movebottomicon'" />
|
1146
1530
|
<ng-template *ngTemplateOutlet="moveBottomIconTemplate"></ng-template>
|
1147
1531
|
</button>
|
1148
1532
|
</div>
|
1149
|
-
<div class="p-picklist-list-wrapper p-picklist-source-wrapper">
|
1150
|
-
<div class="p-picklist-header" *ngIf="sourceHeader || sourceHeaderTemplate">
|
1533
|
+
<div class="p-picklist-list-wrapper p-picklist-source-wrapper" [attr.data-pc-section]="'sourceWrapper'" [attr.data-pc-group-section]="'listWrapper'">
|
1534
|
+
<div class="p-picklist-header" *ngIf="sourceHeader || sourceHeaderTemplate" [attr.data-pc-section]="'sourceHeader'" [attr.data-pc-group-section]="'header'">
|
1151
1535
|
<div class="p-picklist-title" *ngIf="!sourceHeaderTemplate">{{ sourceHeader }}</div>
|
1152
1536
|
<ng-container *ngTemplateOutlet="sourceHeaderTemplate"></ng-container>
|
1153
1537
|
</div>
|
1154
|
-
<div class="p-picklist-filter-container" *ngIf="filterBy && showSourceFilter !== false">
|
1538
|
+
<div class="p-picklist-filter-container" *ngIf="filterBy && showSourceFilter !== false" [attr.data-pc-section]="'sourceFilterContainer'">
|
1155
1539
|
<ng-container *ngIf="sourceFilterTemplate; else builtInSourceElement">
|
1156
1540
|
<ng-container *ngTemplateOutlet="sourceFilterTemplate; context: { options: sourceFilterOptions }"></ng-container>
|
1157
1541
|
</ng-container>
|
1158
1542
|
<ng-template #builtInSourceElement>
|
1159
|
-
<div class="p-picklist-filter">
|
1543
|
+
<div class="p-picklist-filter" [attr.data-pc-section]="'sourceFilter'">
|
1160
1544
|
<input
|
1161
1545
|
#sourceFilter
|
1162
1546
|
type="text"
|
@@ -1166,86 +1550,106 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
1166
1550
|
[disabled]="disabled"
|
1167
1551
|
[attr.placeholder]="sourceFilterPlaceholder"
|
1168
1552
|
[attr.aria-label]="ariaSourceFilterLabel"
|
1553
|
+
[attr.data-pc-section]="'sourceFilterInput'"
|
1169
1554
|
/>
|
1170
|
-
<SearchIcon *ngIf="!sourceFilterIconTemplate" [styleClass]="'p-picklist-filter-icon'" />
|
1171
|
-
<span class="p-picklist-filter-icon" *ngIf="sourceFilterIconTemplate">
|
1555
|
+
<SearchIcon *ngIf="!sourceFilterIconTemplate" [styleClass]="'p-picklist-filter-icon'" [attr.data-pc-section]="'sourcefilterIcon'" />
|
1556
|
+
<span class="p-picklist-filter-icon" *ngIf="sourceFilterIconTemplate" [attr.data-pc-section]="'sourcefilterIcon'">
|
1172
1557
|
<ng-template *ngTemplateOutlet="sourceFilterIconTemplate"></ng-template>
|
1173
1558
|
</span>
|
1174
1559
|
</div>
|
1175
1560
|
</ng-template>
|
1176
1561
|
</div>
|
1177
1562
|
|
1178
|
-
<ul
|
1563
|
+
<ul
|
1564
|
+
#sourcelist
|
1565
|
+
class="p-picklist-list p-picklist-source"
|
1566
|
+
[id]="idSource + '_list'"
|
1567
|
+
(keydown)="onItemKeyDown($event, selectedItemsSource, onSourceSelect, SOURCE_LIST)"
|
1568
|
+
(focus)="onListFocus($event, SOURCE_LIST)"
|
1569
|
+
(blur)="onListBlur($event, SOURCE_LIST)"
|
1570
|
+
cdkDropList
|
1571
|
+
[cdkDropListData]="source"
|
1572
|
+
(cdkDropListDropped)="onDrop($event, SOURCE_LIST)"
|
1573
|
+
[ngStyle]="sourceStyle"
|
1574
|
+
role="listbox"
|
1575
|
+
aria-multiselectable="true"
|
1576
|
+
[attr.aria-activedescendant]="focused['sourceList'] ? focusedOptionId : undefined"
|
1577
|
+
[attr.tabindex]="source && source.length > 0 ? tabindex : -1"
|
1578
|
+
[attr.data-pc-section]="'sourceList'"
|
1579
|
+
[attr.data-pc-group-section]="'list'"
|
1580
|
+
>
|
1179
1581
|
<ng-template ngFor let-item [ngForOf]="source" [ngForTrackBy]="sourceTrackBy || trackBy" let-i="index" let-l="last">
|
1180
1582
|
<li
|
1181
1583
|
[ngClass]="{ 'p-picklist-item': true, 'p-highlight': isSelected(item, selectedItemsSource), 'p-disabled': disabled }"
|
1182
1584
|
pRipple
|
1183
1585
|
cdkDrag
|
1586
|
+
[id]="idSource + '_' + i"
|
1587
|
+
[ngClass]="itemClass(item, idSource + '_' + i, selectedItemsSource)"
|
1184
1588
|
[cdkDragData]="item"
|
1185
1589
|
[cdkDragDisabled]="!dragdrop"
|
1186
|
-
(click)="onItemClick($event, item, selectedItemsSource, onSourceSelect)"
|
1590
|
+
(click)="onItemClick($event, item, selectedItemsSource, onSourceSelect, idSource + '_' + i)"
|
1591
|
+
(mousedown)="onOptionMouseDown(i, SOURCE_LIST)"
|
1187
1592
|
(dblclick)="onSourceItemDblClick()"
|
1188
1593
|
(touchend)="onItemTouchEnd()"
|
1189
|
-
(keydown)="onItemKeydown($event, item, selectedItemsSource, onSourceSelect)"
|
1190
1594
|
*ngIf="isItemVisible(item, SOURCE_LIST)"
|
1191
|
-
tabindex="0"
|
1192
1595
|
role="option"
|
1596
|
+
[attr.data-pc-section]="'item'"
|
1193
1597
|
[attr.aria-selected]="isSelected(item, selectedItemsSource)"
|
1194
1598
|
>
|
1195
1599
|
<ng-container *ngTemplateOutlet="itemTemplate; context: { $implicit: item, index: i }"></ng-container>
|
1196
1600
|
</li>
|
1197
1601
|
</ng-template>
|
1198
1602
|
<ng-container *ngIf="isEmpty(SOURCE_LIST) && (emptyMessageSourceTemplate || emptyFilterMessageSourceTemplate)">
|
1199
|
-
<li class="p-picklist-empty-message" *ngIf="!filterValueSource || !emptyFilterMessageSourceTemplate">
|
1603
|
+
<li class="p-picklist-empty-message" *ngIf="!filterValueSource || !emptyFilterMessageSourceTemplate" [attr.data-pc-section]="'sourceEmptyMessage'">
|
1200
1604
|
<ng-container *ngTemplateOutlet="emptyMessageSourceTemplate"></ng-container>
|
1201
1605
|
</li>
|
1202
|
-
<li class="p-picklist-empty-message" *ngIf="filterValueSource">
|
1606
|
+
<li class="p-picklist-empty-message" *ngIf="filterValueSource" [attr.data-pc-section]="'sourceEmptyMessage'">
|
1203
1607
|
<ng-container *ngTemplateOutlet="emptyFilterMessageSourceTemplate"></ng-container>
|
1204
1608
|
</li>
|
1205
1609
|
</ng-container>
|
1206
1610
|
</ul>
|
1207
1611
|
</div>
|
1208
|
-
<div class="p-picklist-buttons p-picklist-transfer-buttons">
|
1209
|
-
<button type="button" [attr.aria-label]="
|
1612
|
+
<div class="p-picklist-buttons p-picklist-transfer-buttons" [attr.data-pc-section]="'buttons'" [attr.data-pc-group-section]="'controls'">
|
1613
|
+
<button type="button" [attr.aria-label]="moveToTargetAriaLabel" pButton pRipple class="p-button-icon-only" [disabled]="moveRightDisabled()" (click)="moveRight()" [attr.data-pc-section]="'moveToTargetButton'">
|
1210
1614
|
<ng-container *ngIf="!moveToTargetIconTemplate">
|
1211
|
-
<AngleRightIcon *ngIf="!viewChanged" />
|
1212
|
-
<AngleDownIcon *ngIf="viewChanged" />
|
1615
|
+
<AngleRightIcon *ngIf="!viewChanged" [attr.data-pc-section]="'movetotargeticon'" />
|
1616
|
+
<AngleDownIcon *ngIf="viewChanged" [attr.data-pc-section]="'movetotargeticon'" />
|
1213
1617
|
</ng-container>
|
1214
1618
|
<ng-template *ngTemplateOutlet="moveToTargetIconTemplate; context: { $implicit: viewChanged }"></ng-template>
|
1215
1619
|
</button>
|
1216
|
-
<button type="button" [attr.aria-label]="
|
1620
|
+
<button type="button" [attr.aria-label]="moveAllToTargetAriaLabel" pButton pRipple class="p-button-icon-only" [disabled]="moveAllRightDisabled()" (click)="moveAllRight()" [attr.data-pc-section]="'moveAllToTargetButton'">
|
1217
1621
|
<ng-container *ngIf="!moveAllToTargetIconTemplate">
|
1218
|
-
<AngleDoubleRightIcon *ngIf="!viewChanged" />
|
1219
|
-
<AngleDoubleDownIcon *ngIf="viewChanged" />
|
1622
|
+
<AngleDoubleRightIcon *ngIf="!viewChanged" [attr.data-pc-section]="'movealltotargeticon'" />
|
1623
|
+
<AngleDoubleDownIcon *ngIf="viewChanged" [attr.data-pc-section]="'movealltotargeticon'" />
|
1220
1624
|
</ng-container>
|
1221
1625
|
<ng-template *ngTemplateOutlet="moveAllToTargetIconTemplate; context: { $implicit: viewChanged }"></ng-template>
|
1222
1626
|
</button>
|
1223
|
-
<button type="button" [attr.aria-label]="
|
1627
|
+
<button type="button" [attr.aria-label]="moveToSourceAriaLabel" pButton pRipple class="p-button-icon-only" [disabled]="moveLeftDisabled()" (click)="moveLeft()" [attr.data-pc-section]="'moveToSourceButton'">
|
1224
1628
|
<ng-container *ngIf="!moveToSourceIconTemplate">
|
1225
|
-
<AngleLeftIcon *ngIf="!viewChanged" />
|
1226
|
-
<AngleUpIcon *ngIf="viewChanged" />
|
1629
|
+
<AngleLeftIcon *ngIf="!viewChanged" [attr.data-pc-section]="'movedownsourceticon'" />
|
1630
|
+
<AngleUpIcon *ngIf="viewChanged" [attr.data-pc-section]="'movedownsourceticon'" />
|
1227
1631
|
</ng-container>
|
1228
1632
|
<ng-template *ngTemplateOutlet="moveToSourceIconTemplate; context: { $implicit: viewChanged }"></ng-template>
|
1229
1633
|
</button>
|
1230
|
-
<button type="button" [attr.aria-label]="
|
1634
|
+
<button type="button" [attr.aria-label]="moveAllToSourceAriaLabel" pButton pRipple class="p-button-icon-only" [disabled]="moveAllLeftDisabled()" (click)="moveAllLeft()" [attr.data-pc-section]="'moveAllToSourceButton'">
|
1231
1635
|
<ng-container *ngIf="!moveAllToSourceIconTemplate">
|
1232
|
-
<AngleDoubleLeftIcon *ngIf="!viewChanged" />
|
1233
|
-
<AngleDoubleUpIcon *ngIf="viewChanged" />
|
1636
|
+
<AngleDoubleLeftIcon *ngIf="!viewChanged" [attr.data-pc-section]="'movealltosourceticon'" />
|
1637
|
+
<AngleDoubleUpIcon *ngIf="viewChanged" [attr.data-pc-section]="'movealltosourceticon'" />
|
1234
1638
|
</ng-container>
|
1235
1639
|
<ng-template *ngTemplateOutlet="moveAllToSourceIconTemplate; context: { $implicit: viewChanged }"></ng-template>
|
1236
1640
|
</button>
|
1237
1641
|
</div>
|
1238
|
-
<div class="p-picklist-list-wrapper p-picklist-target-wrapper">
|
1239
|
-
<div class="p-picklist-header" *ngIf="targetHeader || targetHeaderTemplate">
|
1642
|
+
<div class="p-picklist-list-wrapper p-picklist-target-wrapper" [attr.data-pc-section]="'targetWrapper'" [attr.data-pc-group-section]="'listwrapper'">
|
1643
|
+
<div class="p-picklist-header" *ngIf="targetHeader || targetHeaderTemplate" [attr.data-pc-section]="'targetHead'" [attr.data-pc-group-section]="'header'">
|
1240
1644
|
<div class="p-picklist-title" *ngIf="!targetHeaderTemplate">{{ targetHeader }}</div>
|
1241
1645
|
<ng-container *ngTemplateOutlet="targetHeaderTemplate"></ng-container>
|
1242
1646
|
</div>
|
1243
|
-
<div class="p-picklist-filter-container" *ngIf="filterBy && showTargetFilter !== false">
|
1647
|
+
<div class="p-picklist-filter-container" *ngIf="filterBy && showTargetFilter !== false" [attr.data-pc-section]="'targetFilterContainer'">
|
1244
1648
|
<ng-container *ngIf="targetFilterTemplate; else builtInTargetElement">
|
1245
1649
|
<ng-container *ngTemplateOutlet="targetFilterTemplate; context: { options: targetFilterOptions }"></ng-container>
|
1246
1650
|
</ng-container>
|
1247
1651
|
<ng-template #builtInTargetElement>
|
1248
|
-
<div class="p-picklist-filter">
|
1652
|
+
<div class="p-picklist-filter" [attr.data-pc-section]="'targetFilter'">
|
1249
1653
|
<input
|
1250
1654
|
#targetFilter
|
1251
1655
|
type="text"
|
@@ -1255,59 +1659,115 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
1255
1659
|
[disabled]="disabled"
|
1256
1660
|
[attr.placeholder]="targetFilterPlaceholder"
|
1257
1661
|
[attr.aria-label]="ariaTargetFilterLabel"
|
1662
|
+
[attr.data-pc-section]="'targetFilterInput'"
|
1258
1663
|
/>
|
1259
|
-
<SearchIcon *ngIf="!targetFilterIconTemplate" [styleClass]="'p-picklist-filter-icon'" />
|
1260
|
-
<span class="p-picklist-filter-icon" *ngIf="targetFilterIconTemplate">
|
1664
|
+
<SearchIcon *ngIf="!targetFilterIconTemplate" [styleClass]="'p-picklist-filter-icon'" [attr.data-pc-section]="'targetfiltericon'" />
|
1665
|
+
<span class="p-picklist-filter-icon" *ngIf="targetFilterIconTemplate" [attr.data-pc-section]="'targetfiltericon'">
|
1261
1666
|
<ng-template *ngTemplateOutlet="targetFilterIconTemplate"></ng-template>
|
1262
1667
|
</span>
|
1263
1668
|
</div>
|
1264
1669
|
</ng-template>
|
1265
1670
|
</div>
|
1266
|
-
<ul
|
1671
|
+
<ul
|
1672
|
+
#targetlist
|
1673
|
+
class="p-picklist-list p-picklist-target"
|
1674
|
+
[id]="idTarget + '_list'"
|
1675
|
+
(keydown)="onItemKeyDown($event, selectedItemsTarget, onTargetSelect, TARGET_LIST)"
|
1676
|
+
(focus)="onListFocus($event, TARGET_LIST)"
|
1677
|
+
(blur)="onListBlur($event, TARGET_LIST)"
|
1678
|
+
cdkDropList
|
1679
|
+
[cdkDropListData]="target"
|
1680
|
+
(cdkDropListDropped)="onDrop($event, TARGET_LIST)"
|
1681
|
+
[ngStyle]="targetStyle"
|
1682
|
+
role="listbox"
|
1683
|
+
aria-multiselectable="true"
|
1684
|
+
[attr.aria-activedescendant]="focused['targetList'] ? focusedOptionId : undefined"
|
1685
|
+
[attr.tabindex]="target && target.length > 0 ? tabindex : -1"
|
1686
|
+
[attr.data-pc-section]="'targetList'"
|
1687
|
+
[attr.data-pc-group-section]="'list'"
|
1688
|
+
>
|
1267
1689
|
<ng-template ngFor let-item [ngForOf]="target" [ngForTrackBy]="targetTrackBy || trackBy" let-i="index" let-l="last">
|
1268
1690
|
<li
|
1269
1691
|
[ngClass]="{ 'p-picklist-item': true, 'p-highlight': isSelected(item, selectedItemsTarget), 'p-disabled': disabled }"
|
1270
1692
|
pRipple
|
1271
1693
|
cdkDrag
|
1694
|
+
[id]="idTarget + '_' + i"
|
1695
|
+
[ngClass]="itemClass(item, idTarget + '_' + i, selectedItemsTarget)"
|
1272
1696
|
[cdkDragData]="item"
|
1273
1697
|
[cdkDragDisabled]="!dragdrop"
|
1274
|
-
(click)="onItemClick($event, item, selectedItemsTarget, onTargetSelect)"
|
1698
|
+
(click)="onItemClick($event, item, selectedItemsTarget, onTargetSelect, idTarget + '_' + i)"
|
1699
|
+
(mousedown)="onOptionMouseDown(i, TARGET_LIST)"
|
1275
1700
|
(dblclick)="onTargetItemDblClick()"
|
1276
1701
|
(touchend)="onItemTouchEnd()"
|
1277
|
-
(keydown)="onItemKeydown($event, item, selectedItemsTarget, onTargetSelect)"
|
1278
1702
|
*ngIf="isItemVisible(item, TARGET_LIST)"
|
1279
|
-
tabindex="0"
|
1280
1703
|
role="option"
|
1704
|
+
[attr.data-pc-section]="'item'"
|
1281
1705
|
[attr.aria-selected]="isSelected(item, selectedItemsTarget)"
|
1282
1706
|
>
|
1283
1707
|
<ng-container *ngTemplateOutlet="itemTemplate; context: { $implicit: item, index: i }"></ng-container>
|
1284
1708
|
</li>
|
1285
1709
|
</ng-template>
|
1286
1710
|
<ng-container *ngIf="isEmpty(TARGET_LIST) && (emptyMessageTargetTemplate || emptyFilterMessageTargetTemplate)">
|
1287
|
-
<li class="p-picklist-empty-message" *ngIf="!filterValueTarget || !emptyFilterMessageTargetTemplate">
|
1711
|
+
<li class="p-picklist-empty-message" *ngIf="!filterValueTarget || !emptyFilterMessageTargetTemplate" [attr.data-pc-section]="'targetEmptyMessage'">
|
1288
1712
|
<ng-container *ngTemplateOutlet="emptyMessageTargetTemplate"></ng-container>
|
1289
1713
|
</li>
|
1290
|
-
<li class="p-picklist-empty-message" *ngIf="filterValueTarget">
|
1714
|
+
<li class="p-picklist-empty-message" *ngIf="filterValueTarget" [attr.data-pc-section]="'targetEmptyMessage'">
|
1291
1715
|
<ng-container *ngTemplateOutlet="emptyFilterMessageTargetTemplate"></ng-container>
|
1292
1716
|
</li>
|
1293
1717
|
</ng-container>
|
1294
1718
|
</ul>
|
1295
1719
|
</div>
|
1296
|
-
<div class="p-picklist-buttons p-picklist-target-controls" *ngIf="showTargetControls">
|
1297
|
-
<button
|
1298
|
-
|
1720
|
+
<div class="p-picklist-buttons p-picklist-target-controls" *ngIf="showTargetControls" [attr.data-pc-section]="'targetControls'" [attr.data-pc-group-section]="'controls'">
|
1721
|
+
<button
|
1722
|
+
type="button"
|
1723
|
+
[attr.aria-label]="moveUpAriaLabel"
|
1724
|
+
pButton
|
1725
|
+
pRipple
|
1726
|
+
class="p-button-icon-only"
|
1727
|
+
[disabled]="targetMoveDisabled()"
|
1728
|
+
(click)="moveUp(targetlist, target, selectedItemsTarget, onTargetReorder, TARGET_LIST)"
|
1729
|
+
[attr.data-pc-section]="'targetMoveUpButton'"
|
1730
|
+
>
|
1731
|
+
<AngleUpIcon *ngIf="!moveUpIconTemplate" [attr.data-pc-section]="'moveupicon'" />
|
1299
1732
|
<ng-template *ngTemplateOutlet="moveUpIconTemplate"></ng-template>
|
1300
1733
|
</button>
|
1301
|
-
<button
|
1302
|
-
|
1734
|
+
<button
|
1735
|
+
type="button"
|
1736
|
+
[attr.aria-label]="moveTopAriaLabel"
|
1737
|
+
pButton
|
1738
|
+
pRipple
|
1739
|
+
class="p-button-icon-only"
|
1740
|
+
[disabled]="targetMoveDisabled()"
|
1741
|
+
(click)="moveTop(targetlist, target, selectedItemsTarget, onTargetReorder, TARGET_LIST)"
|
1742
|
+
[attr.data-pc-section]="'targetMoveTopButton'"
|
1743
|
+
>
|
1744
|
+
<AngleDoubleUpIcon *ngIf="!moveTopIconTemplate" [attr.data-pc-section]="'movetopicon'" />
|
1303
1745
|
<ng-template *ngTemplateOutlet="moveTopIconTemplate"></ng-template>
|
1304
1746
|
</button>
|
1305
|
-
<button
|
1306
|
-
|
1747
|
+
<button
|
1748
|
+
type="button"
|
1749
|
+
[attr.aria-label]="moveDownAriaLabel"
|
1750
|
+
pButton
|
1751
|
+
pRipple
|
1752
|
+
class="p-button-icon-only"
|
1753
|
+
[disabled]="targetMoveDisabled()"
|
1754
|
+
(click)="moveDown(targetlist, target, selectedItemsTarget, onTargetReorder, TARGET_LIST)"
|
1755
|
+
[attr.data-pc-section]="'targetMoveDownButton'"
|
1756
|
+
>
|
1757
|
+
<AngleDownIcon *ngIf="!moveDownIconTemplate" [attr.data-pc-section]="'movedownicon'" />
|
1307
1758
|
<ng-template *ngTemplateOutlet="moveDownIconTemplate"></ng-template>
|
1308
1759
|
</button>
|
1309
|
-
<button
|
1310
|
-
|
1760
|
+
<button
|
1761
|
+
type="button"
|
1762
|
+
[attr.aria-label]="moveBottomAriaLabel"
|
1763
|
+
pButton
|
1764
|
+
pRipple
|
1765
|
+
class="p-button-icon-only"
|
1766
|
+
[disabled]="targetMoveDisabled()"
|
1767
|
+
(click)="moveBottom(targetlist, target, selectedItemsTarget, onTargetReorder, TARGET_LIST)"
|
1768
|
+
[attr.data-pc-section]="'targetMoveBottomButton'"
|
1769
|
+
>
|
1770
|
+
<AngleDoubleDownIcon *ngIf="!moveBottomIconTemplate" [attr.data-pc-section]="'movebottomicon'" />
|
1311
1771
|
<ng-template *ngTemplateOutlet="moveBottomIconTemplate"></ng-template>
|
1312
1772
|
</button>
|
1313
1773
|
</div>
|
@@ -1321,12 +1781,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
1321
1781
|
}] }, { type: undefined, decorators: [{
|
1322
1782
|
type: Inject,
|
1323
1783
|
args: [PLATFORM_ID]
|
1324
|
-
}] }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.FilterService }]; }, propDecorators: { source: [{
|
1784
|
+
}] }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.FilterService }, { type: i1.PrimeNGConfig }]; }, propDecorators: { source: [{
|
1325
1785
|
type: Input
|
1326
1786
|
}], target: [{
|
1327
1787
|
type: Input
|
1328
1788
|
}], sourceHeader: [{
|
1329
1789
|
type: Input
|
1790
|
+
}], tabindex: [{
|
1791
|
+
type: Input
|
1330
1792
|
}], rightButtonAriaLabel: [{
|
1331
1793
|
type: Input
|
1332
1794
|
}], leftButtonAriaLabel: [{
|
@@ -1415,6 +1877,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
1415
1877
|
type: Output
|
1416
1878
|
}], onTargetFilter: [{
|
1417
1879
|
type: Output
|
1880
|
+
}], onFocus: [{
|
1881
|
+
type: Output
|
1882
|
+
}], onBlur: [{
|
1883
|
+
type: Output
|
1418
1884
|
}], listViewSourceChild: [{
|
1419
1885
|
type: ViewChild,
|
1420
1886
|
args: ['sourcelist']
|
@@ -1435,11 +1901,11 @@ const DragConfig = {
|
|
1435
1901
|
zIndex: 1200
|
1436
1902
|
};
|
1437
1903
|
class PickListModule {
|
1438
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0
|
1439
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0
|
1440
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0
|
1904
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: PickListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
1905
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.0", ngImport: i0, type: PickListModule, declarations: [PickList], imports: [CommonModule, ButtonModule, SharedModule, RippleModule, DragDropModule, AngleDoubleDownIcon, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleDoubleUpIcon, AngleDownIcon, AngleLeftIcon, AngleRightIcon, AngleUpIcon, SearchIcon, HomeIcon], exports: [PickList, SharedModule, DragDropModule] });
|
1906
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: PickListModule, providers: [{ provide: CDK_DRAG_CONFIG, useValue: DragConfig }], imports: [CommonModule, ButtonModule, SharedModule, RippleModule, DragDropModule, AngleDoubleDownIcon, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleDoubleUpIcon, AngleDownIcon, AngleLeftIcon, AngleRightIcon, AngleUpIcon, SearchIcon, HomeIcon, SharedModule, DragDropModule] });
|
1441
1907
|
}
|
1442
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0
|
1908
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: PickListModule, decorators: [{
|
1443
1909
|
type: NgModule,
|
1444
1910
|
args: [{
|
1445
1911
|
imports: [CommonModule, ButtonModule, SharedModule, RippleModule, DragDropModule, AngleDoubleDownIcon, AngleDoubleLeftIcon, AngleDoubleRightIcon, AngleDoubleUpIcon, AngleDownIcon, AngleLeftIcon, AngleRightIcon, AngleUpIcon, SearchIcon, HomeIcon],
|