primereact 10.5.1 → 10.5.2
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/api/api.cjs.js +94 -92
- package/api/api.cjs.min.js +1 -1
- package/api/api.d.ts +229 -11
- package/api/api.esm.js +94 -92
- package/api/api.esm.min.js +1 -1
- package/api/api.js +94 -92
- package/api/api.min.js +1 -1
- package/autocomplete/autocomplete.cjs.js +89 -45
- package/autocomplete/autocomplete.cjs.min.js +1 -1
- package/autocomplete/autocomplete.d.ts +6 -1
- package/autocomplete/autocomplete.esm.js +89 -45
- package/autocomplete/autocomplete.esm.min.js +1 -1
- package/autocomplete/autocomplete.js +89 -45
- package/autocomplete/autocomplete.min.js +1 -1
- package/blockui/blockui.cjs.js +13 -13
- package/blockui/blockui.cjs.min.js +1 -1
- package/blockui/blockui.esm.js +13 -13
- package/blockui/blockui.esm.min.js +1 -1
- package/blockui/blockui.js +13 -13
- package/blockui/blockui.min.js +1 -1
- package/calendar/calendar.cjs.js +30 -11
- package/calendar/calendar.cjs.min.js +1 -1
- package/calendar/calendar.d.ts +9 -0
- package/calendar/calendar.esm.js +30 -11
- package/calendar/calendar.esm.min.js +1 -1
- package/calendar/calendar.js +30 -11
- package/calendar/calendar.min.js +1 -1
- package/carousel/carousel.cjs.js +17 -15
- package/carousel/carousel.cjs.min.js +1 -1
- package/carousel/carousel.esm.js +4 -2
- package/carousel/carousel.esm.min.js +1 -1
- package/carousel/carousel.js +17 -15
- package/carousel/carousel.min.js +1 -1
- package/cascadeselect/cascadeselect.cjs.js +28 -14
- package/cascadeselect/cascadeselect.cjs.min.js +1 -1
- package/cascadeselect/cascadeselect.d.ts +5 -0
- package/cascadeselect/cascadeselect.esm.js +28 -14
- package/cascadeselect/cascadeselect.esm.min.js +1 -1
- package/cascadeselect/cascadeselect.js +28 -14
- package/cascadeselect/cascadeselect.min.js +1 -1
- package/checkbox/checkbox.cjs.js +70 -153
- package/checkbox/checkbox.cjs.min.js +1 -1
- package/checkbox/checkbox.d.ts +10 -34
- package/checkbox/checkbox.esm.js +70 -153
- package/checkbox/checkbox.esm.min.js +1 -1
- package/checkbox/checkbox.js +70 -153
- package/checkbox/checkbox.min.js +1 -1
- package/chips/chips.cjs.js +23 -9
- package/chips/chips.cjs.min.js +1 -1
- package/chips/chips.d.ts +6 -1
- package/chips/chips.esm.js +23 -9
- package/chips/chips.esm.min.js +1 -1
- package/chips/chips.js +23 -9
- package/chips/chips.min.js +1 -1
- package/colorpicker/colorpicker.cjs.js +3 -2
- package/colorpicker/colorpicker.cjs.min.js +1 -1
- package/colorpicker/colorpicker.esm.js +2 -1
- package/colorpicker/colorpicker.esm.min.js +1 -1
- package/colorpicker/colorpicker.js +3 -2
- package/colorpicker/colorpicker.min.js +1 -1
- package/componentbase/componentbase.cjs.js +4 -6
- package/componentbase/componentbase.cjs.min.js +1 -1
- package/componentbase/componentbase.esm.js +5 -7
- package/componentbase/componentbase.esm.min.js +1 -1
- package/componentbase/componentbase.js +4 -6
- package/componentbase/componentbase.min.js +1 -1
- package/confirmdialog/confirmdialog.cjs.js +1 -0
- package/confirmdialog/confirmdialog.cjs.min.js +1 -1
- package/confirmdialog/confirmdialog.esm.js +1 -0
- package/confirmdialog/confirmdialog.esm.min.js +1 -1
- package/confirmdialog/confirmdialog.js +1 -0
- package/confirmdialog/confirmdialog.min.js +1 -1
- package/confirmpopup/confirmpopup.cjs.js +5 -5
- package/confirmpopup/confirmpopup.cjs.min.js +1 -1
- package/confirmpopup/confirmpopup.esm.js +5 -5
- package/confirmpopup/confirmpopup.esm.min.js +1 -1
- package/confirmpopup/confirmpopup.js +5 -5
- package/confirmpopup/confirmpopup.min.js +1 -1
- package/core/core.js +639 -603
- package/core/core.min.js +13 -13
- package/datatable/datatable.cjs.js +128 -110
- package/datatable/datatable.cjs.min.js +1 -1
- package/datatable/datatable.d.ts +1 -1
- package/datatable/datatable.esm.js +128 -110
- package/datatable/datatable.esm.min.js +1 -1
- package/datatable/datatable.js +128 -110
- package/datatable/datatable.min.js +1 -1
- package/dataview/dataview.cjs.js +16 -13
- package/dataview/dataview.cjs.min.js +1 -1
- package/dataview/dataview.esm.js +4 -1
- package/dataview/dataview.esm.min.js +1 -1
- package/dataview/dataview.js +17 -15
- package/dataview/dataview.min.js +1 -1
- package/dialog/dialog.cjs.js +6 -6
- package/dialog/dialog.cjs.min.js +1 -1
- package/dialog/dialog.esm.js +6 -6
- package/dialog/dialog.esm.min.js +1 -1
- package/dialog/dialog.js +6 -6
- package/dialog/dialog.min.js +1 -1
- package/dropdown/dropdown.cjs.js +98 -29
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.d.ts +41 -0
- package/dropdown/dropdown.esm.js +98 -29
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +98 -31
- package/dropdown/dropdown.min.js +1 -1
- package/editor/editor.cjs.js +125 -54
- package/editor/editor.cjs.min.js +1 -1
- package/editor/editor.esm.js +125 -54
- package/editor/editor.esm.min.js +1 -1
- package/editor/editor.js +125 -54
- package/editor/editor.min.js +1 -1
- package/galleria/galleria.cjs.js +22 -19
- package/galleria/galleria.cjs.min.js +1 -1
- package/galleria/galleria.esm.js +4 -1
- package/galleria/galleria.esm.min.js +1 -1
- package/galleria/galleria.js +23 -20
- package/galleria/galleria.min.js +1 -1
- package/hooks/hooks.cjs.js +115 -72
- package/hooks/hooks.cjs.min.js +1 -1
- package/hooks/hooks.esm.js +116 -73
- package/hooks/hooks.esm.min.js +1 -1
- package/hooks/hooks.js +115 -72
- package/hooks/hooks.min.js +1 -1
- package/image/image.cjs.js +11 -9
- package/image/image.cjs.min.js +1 -1
- package/image/image.esm.js +11 -9
- package/image/image.esm.min.js +1 -1
- package/image/image.js +11 -9
- package/image/image.min.js +1 -1
- package/inputnumber/inputnumber.cjs.js +20 -36
- package/inputnumber/inputnumber.cjs.min.js +1 -1
- package/inputnumber/inputnumber.d.ts +5 -5
- package/inputnumber/inputnumber.esm.js +20 -36
- package/inputnumber/inputnumber.esm.min.js +1 -1
- package/inputnumber/inputnumber.js +20 -36
- package/inputnumber/inputnumber.min.js +1 -1
- package/inputswitch/inputswitch.cjs.js +18 -93
- package/inputswitch/inputswitch.cjs.min.js +1 -1
- package/inputswitch/inputswitch.d.ts +9 -20
- package/inputswitch/inputswitch.esm.js +18 -93
- package/inputswitch/inputswitch.esm.min.js +1 -1
- package/inputswitch/inputswitch.js +18 -93
- package/inputswitch/inputswitch.min.js +1 -1
- package/inputtext/inputtext.cjs.js +5 -3
- package/inputtext/inputtext.cjs.min.js +1 -1
- package/inputtext/inputtext.d.ts +5 -0
- package/inputtext/inputtext.esm.js +5 -3
- package/inputtext/inputtext.esm.min.js +1 -1
- package/inputtext/inputtext.js +5 -3
- package/inputtext/inputtext.min.js +1 -1
- package/inputtextarea/inputtextarea.cjs.js +3 -1
- package/inputtextarea/inputtextarea.cjs.min.js +1 -1
- package/inputtextarea/inputtextarea.d.ts +5 -0
- package/inputtextarea/inputtextarea.esm.js +3 -1
- package/inputtextarea/inputtextarea.esm.min.js +1 -1
- package/inputtextarea/inputtextarea.js +3 -1
- package/inputtextarea/inputtextarea.min.js +1 -1
- package/listbox/listbox.cjs.js +14 -10
- package/listbox/listbox.cjs.min.js +1 -1
- package/listbox/listbox.d.ts +15 -0
- package/listbox/listbox.esm.js +15 -11
- package/listbox/listbox.esm.min.js +1 -1
- package/listbox/listbox.js +14 -10
- package/listbox/listbox.min.js +1 -1
- package/mention/mention.cjs.js +3 -1
- package/mention/mention.cjs.min.js +1 -1
- package/mention/mention.esm.js +3 -1
- package/mention/mention.esm.min.js +1 -1
- package/mention/mention.js +3 -1
- package/mention/mention.min.js +1 -1
- package/menu/menu.cjs.js +3 -2
- package/menu/menu.cjs.min.js +1 -1
- package/menu/menu.esm.js +3 -2
- package/menu/menu.esm.min.js +1 -1
- package/menu/menu.js +3 -2
- package/menu/menu.min.js +1 -1
- package/menubar/menubar.cjs.js +1 -1
- package/menubar/menubar.cjs.min.js +1 -1
- package/menubar/menubar.esm.js +1 -1
- package/menubar/menubar.esm.min.js +1 -1
- package/menubar/menubar.js +1 -1
- package/menubar/menubar.min.js +1 -1
- package/message/message.cjs.js +2 -8
- package/message/message.cjs.min.js +1 -1
- package/message/message.d.ts +1 -1
- package/message/message.esm.js +2 -8
- package/message/message.esm.min.js +1 -1
- package/message/message.js +2 -8
- package/message/message.min.js +1 -1
- package/messages/messages.cjs.js +1 -1
- package/messages/messages.cjs.min.js +1 -1
- package/messages/messages.d.ts +1 -1
- package/messages/messages.esm.js +1 -1
- package/messages/messages.esm.min.js +1 -1
- package/messages/messages.js +1 -1
- package/messages/messages.min.js +1 -1
- package/metergroup/metergroup.cjs.js +237 -0
- package/metergroup/metergroup.cjs.min.js +1 -0
- package/metergroup/metergroup.d.ts +183 -0
- package/metergroup/metergroup.esm.js +233 -0
- package/metergroup/metergroup.esm.min.js +1 -0
- package/metergroup/metergroup.js +236 -0
- package/metergroup/metergroup.min.js +1 -0
- package/multiselect/multiselect.cjs.js +94 -123
- package/multiselect/multiselect.cjs.min.js +1 -1
- package/multiselect/multiselect.d.ts +25 -1
- package/multiselect/multiselect.esm.js +94 -123
- package/multiselect/multiselect.esm.min.js +1 -1
- package/multiselect/multiselect.js +94 -123
- package/multiselect/multiselect.min.js +1 -1
- package/multistatecheckbox/multistatecheckbox.cjs.js +1 -1
- package/multistatecheckbox/multistatecheckbox.cjs.min.js +1 -1
- package/multistatecheckbox/multistatecheckbox.esm.js +1 -1
- package/multistatecheckbox/multistatecheckbox.esm.min.js +1 -1
- package/multistatecheckbox/multistatecheckbox.js +1 -1
- package/multistatecheckbox/multistatecheckbox.min.js +1 -1
- package/orderlist/orderlist.cjs.js +35 -11
- package/orderlist/orderlist.cjs.min.js +1 -1
- package/orderlist/orderlist.d.ts +5 -0
- package/orderlist/orderlist.esm.js +35 -11
- package/orderlist/orderlist.esm.min.js +1 -1
- package/orderlist/orderlist.js +35 -11
- package/orderlist/orderlist.min.js +1 -1
- package/overlaypanel/overlaypanel.cjs.js +3 -2
- package/overlaypanel/overlaypanel.cjs.min.js +1 -1
- package/overlaypanel/overlaypanel.esm.js +3 -2
- package/overlaypanel/overlaypanel.esm.min.js +1 -1
- package/overlaypanel/overlaypanel.js +3 -2
- package/overlaypanel/overlaypanel.min.js +1 -1
- package/package.json +1 -1
- package/paginator/paginator.cjs.js +125 -108
- package/paginator/paginator.cjs.min.js +1 -1
- package/paginator/paginator.d.ts +88 -0
- package/paginator/paginator.esm.js +125 -108
- package/paginator/paginator.esm.min.js +1 -1
- package/paginator/paginator.js +125 -108
- package/paginator/paginator.min.js +1 -1
- package/panelmenu/panelmenu.cjs.js +13 -5
- package/panelmenu/panelmenu.cjs.min.js +1 -1
- package/panelmenu/panelmenu.esm.js +13 -5
- package/panelmenu/panelmenu.esm.min.js +1 -1
- package/panelmenu/panelmenu.js +13 -5
- package/panelmenu/panelmenu.min.js +1 -1
- package/passthrough/index.d.ts +12 -0
- package/passthrough/tailwind/index.cjs.js +268 -172
- package/passthrough/tailwind/index.cjs.min.js +1 -1
- package/passthrough/tailwind/index.esm.js +268 -172
- package/passthrough/tailwind/index.esm.min.js +1 -1
- package/passthrough/tailwind/index.js +268 -172
- package/passthrough/tailwind/index.min.js +1 -1
- package/password/password.cjs.js +70 -39
- package/password/password.cjs.min.js +1 -1
- package/password/password.d.ts +5 -0
- package/password/password.esm.js +72 -41
- package/password/password.esm.min.js +1 -1
- package/password/password.js +70 -39
- package/password/password.min.js +1 -1
- package/picklist/picklist.cjs.js +126 -101
- package/picklist/picklist.cjs.min.js +1 -1
- package/picklist/picklist.d.ts +5 -0
- package/picklist/picklist.esm.js +126 -101
- package/picklist/picklist.esm.min.js +1 -1
- package/picklist/picklist.js +126 -101
- package/picklist/picklist.min.js +1 -1
- package/primereact.all.cjs.js +1774 -1431
- package/primereact.all.cjs.min.js +1 -1
- package/primereact.all.esm.js +1775 -1431
- package/primereact.all.esm.min.js +1 -1
- package/primereact.all.js +1774 -1431
- package/primereact.all.min.js +1 -1
- package/radiobutton/radiobutton.cjs.js +67 -142
- package/radiobutton/radiobutton.cjs.min.js +1 -1
- package/radiobutton/radiobutton.d.ts +17 -35
- package/radiobutton/radiobutton.esm.js +68 -143
- package/radiobutton/radiobutton.esm.min.js +1 -1
- package/radiobutton/radiobutton.js +67 -142
- package/radiobutton/radiobutton.min.js +1 -1
- package/resources/themes/arya-blue/theme.css +344 -67
- package/resources/themes/arya-green/theme.css +344 -67
- package/resources/themes/arya-orange/theme.css +344 -67
- package/resources/themes/bootstrap4-dark-blue/theme.css +389 -64
- package/resources/themes/bootstrap4-light-blue/theme.css +389 -64
- package/resources/themes/fluent-light/theme.css +341 -64
- package/resources/themes/lara-dark-amber/theme.css +470 -67
- package/resources/themes/lara-dark-blue/theme.css +470 -67
- package/resources/themes/lara-dark-cyan/theme.css +470 -67
- package/resources/themes/lara-dark-green/theme.css +470 -67
- package/resources/themes/lara-dark-indigo/theme.css +470 -67
- package/resources/themes/lara-dark-pink/theme.css +470 -67
- package/resources/themes/lara-dark-teal/theme.css +470 -67
- package/resources/themes/lara-light-amber/theme.css +470 -67
- package/resources/themes/lara-light-blue/theme.css +470 -67
- package/resources/themes/lara-light-cyan/theme.css +470 -67
- package/resources/themes/lara-light-green/theme.css +470 -67
- package/resources/themes/lara-light-indigo/theme.css +470 -67
- package/resources/themes/lara-light-pink/theme.css +470 -67
- package/resources/themes/lara-light-teal/theme.css +470 -67
- package/resources/themes/luna-amber/theme.css +344 -67
- package/resources/themes/luna-blue/theme.css +344 -67
- package/resources/themes/luna-green/theme.css +344 -67
- package/resources/themes/luna-pink/theme.css +344 -67
- package/resources/themes/md-dark-deeppurple/theme.css +995 -289
- package/resources/themes/md-dark-indigo/theme.css +684 -232
- package/resources/themes/md-light-deeppurple/theme.css +868 -162
- package/resources/themes/md-light-indigo/theme.css +566 -101
- package/resources/themes/mdc-dark-deeppurple/theme.css +995 -289
- package/resources/themes/mdc-dark-indigo/theme.css +697 -232
- package/resources/themes/mdc-light-deeppurple/theme.css +868 -162
- package/resources/themes/mdc-light-indigo/theme.css +566 -101
- package/resources/themes/mira/theme.css +344 -67
- package/resources/themes/nano/theme.css +344 -67
- package/resources/themes/nova/theme.css +344 -67
- package/resources/themes/nova-accent/theme.css +344 -67
- package/resources/themes/nova-alt/theme.css +344 -67
- package/resources/themes/rhea/theme.css +343 -66
- package/resources/themes/saga-blue/theme.css +344 -67
- package/resources/themes/saga-green/theme.css +344 -67
- package/resources/themes/saga-orange/theme.css +344 -67
- package/resources/themes/soho-dark/theme.css +413 -88
- package/resources/themes/soho-light/theme.css +392 -67
- package/resources/themes/tailwind-light/theme.css +344 -67
- package/resources/themes/vela-blue/theme.css +344 -67
- package/resources/themes/vela-green/theme.css +344 -67
- package/resources/themes/vela-orange/theme.css +344 -67
- package/resources/themes/viva-dark/theme.css +392 -67
- package/resources/themes/viva-light/theme.css +392 -67
- package/selectbutton/selectbutton.cjs.js +12 -4
- package/selectbutton/selectbutton.cjs.min.js +1 -1
- package/selectbutton/selectbutton.d.ts +5 -0
- package/selectbutton/selectbutton.esm.js +12 -4
- package/selectbutton/selectbutton.esm.min.js +1 -1
- package/selectbutton/selectbutton.js +13 -5
- package/selectbutton/selectbutton.min.js +1 -1
- package/sidebar/sidebar.cjs.js +4 -3
- package/sidebar/sidebar.cjs.min.js +1 -1
- package/sidebar/sidebar.d.ts +4 -4
- package/sidebar/sidebar.esm.js +4 -3
- package/sidebar/sidebar.esm.min.js +1 -1
- package/sidebar/sidebar.js +4 -3
- package/sidebar/sidebar.min.js +1 -1
- package/slidemenu/slidemenu.cjs.js +3 -2
- package/slidemenu/slidemenu.cjs.min.js +1 -1
- package/slidemenu/slidemenu.esm.js +3 -2
- package/slidemenu/slidemenu.esm.min.js +1 -1
- package/slidemenu/slidemenu.js +3 -2
- package/slidemenu/slidemenu.min.js +1 -1
- package/slider/slider.cjs.js +18 -2
- package/slider/slider.cjs.min.js +1 -1
- package/slider/slider.esm.js +18 -2
- package/slider/slider.esm.min.js +1 -1
- package/slider/slider.js +18 -2
- package/slider/slider.min.js +1 -1
- package/splitbutton/splitbutton.d.ts +2 -2
- package/splitter/splitter.cjs.js +7 -7
- package/splitter/splitter.cjs.min.js +1 -1
- package/splitter/splitter.d.ts +5 -5
- package/splitter/splitter.esm.js +7 -7
- package/splitter/splitter.esm.min.js +1 -1
- package/splitter/splitter.js +7 -7
- package/splitter/splitter.min.js +1 -1
- package/styleclass/styleclass.cjs.js +21 -1
- package/styleclass/styleclass.cjs.min.js +1 -1
- package/styleclass/styleclass.d.ts +10 -0
- package/styleclass/styleclass.esm.js +21 -1
- package/styleclass/styleclass.esm.min.js +1 -1
- package/styleclass/styleclass.js +22 -2
- package/styleclass/styleclass.min.js +1 -1
- package/tabmenu/tabmenu.cjs.js +1 -1
- package/tabmenu/tabmenu.cjs.min.js +1 -1
- package/tabmenu/tabmenu.esm.js +1 -1
- package/tabmenu/tabmenu.esm.min.js +1 -1
- package/tabmenu/tabmenu.js +1 -1
- package/tabmenu/tabmenu.min.js +1 -1
- package/toast/toast.cjs.js +93 -92
- package/toast/toast.cjs.min.js +1 -1
- package/toast/toast.d.ts +1 -1
- package/toast/toast.esm.js +93 -92
- package/toast/toast.esm.min.js +1 -1
- package/toast/toast.js +93 -92
- package/toast/toast.min.js +1 -1
- package/togglebutton/togglebutton.cjs.js +54 -92
- package/togglebutton/togglebutton.cjs.min.js +1 -1
- package/togglebutton/togglebutton.d.ts +24 -0
- package/togglebutton/togglebutton.esm.js +53 -91
- package/togglebutton/togglebutton.esm.min.js +1 -1
- package/togglebutton/togglebutton.js +54 -92
- package/togglebutton/togglebutton.min.js +1 -1
- package/tooltip/tooltip.d.ts +3 -3
- package/tooltip/tooltipoptions.d.ts +5 -0
- package/tree/tree.cjs.js +20 -8
- package/tree/tree.cjs.min.js +1 -1
- package/tree/tree.esm.js +20 -8
- package/tree/tree.esm.min.js +1 -1
- package/tree/tree.js +20 -8
- package/tree/tree.min.js +1 -1
- package/treeselect/treeselect.cjs.js +2 -0
- package/treeselect/treeselect.cjs.min.js +1 -1
- package/treeselect/treeselect.d.ts +5 -0
- package/treeselect/treeselect.esm.js +2 -0
- package/treeselect/treeselect.esm.min.js +1 -1
- package/treeselect/treeselect.js +2 -0
- package/treeselect/treeselect.min.js +1 -1
- package/treetable/treetable.cjs.js +17 -14
- package/treetable/treetable.cjs.min.js +1 -1
- package/treetable/treetable.esm.js +17 -14
- package/treetable/treetable.esm.min.js +1 -1
- package/treetable/treetable.js +17 -14
- package/treetable/treetable.min.js +1 -1
- package/tristatecheckbox/tristatecheckbox.cjs.js +33 -90
- package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
- package/tristatecheckbox/tristatecheckbox.d.ts +12 -13
- package/tristatecheckbox/tristatecheckbox.esm.js +34 -91
- package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
- package/tristatecheckbox/tristatecheckbox.js +33 -90
- package/tristatecheckbox/tristatecheckbox.min.js +1 -1
- package/utils/utils.cjs.js +64 -72
- package/utils/utils.cjs.min.js +1 -1
- package/utils/utils.d.ts +11 -2
- package/utils/utils.esm.js +65 -72
- package/utils/utils.esm.min.js +1 -1
- package/utils/utils.js +64 -72
- package/utils/utils.min.js +1 -1
- package/virtualscroller/virtualscroller.cjs.js +17 -15
- package/virtualscroller/virtualscroller.cjs.min.js +1 -1
- package/virtualscroller/virtualscroller.esm.js +14 -12
- package/virtualscroller/virtualscroller.esm.min.js +1 -1
- package/virtualscroller/virtualscroller.js +17 -15
- package/virtualscroller/virtualscroller.min.js +1 -1
- package/web-types.json +455 -39
package/dropdown/dropdown.esm.js
CHANGED
|
@@ -14,6 +14,8 @@ import { SearchIcon } from 'primereact/icons/search';
|
|
|
14
14
|
import { Portal } from 'primereact/portal';
|
|
15
15
|
import { VirtualScroller } from 'primereact/virtualscroller';
|
|
16
16
|
import { Ripple } from 'primereact/ripple';
|
|
17
|
+
import { CheckIcon } from 'primereact/icons/check';
|
|
18
|
+
import { IconBase } from 'primereact/iconbase';
|
|
17
19
|
|
|
18
20
|
function _extends() {
|
|
19
21
|
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
@@ -133,6 +135,7 @@ var classes = {
|
|
|
133
135
|
overlayVisibleState = _ref.overlayVisibleState;
|
|
134
136
|
return classNames('p-dropdown p-component p-inputwrapper', {
|
|
135
137
|
'p-disabled': props.disabled,
|
|
138
|
+
'p-invalid': props.invalid,
|
|
136
139
|
'p-focus': focusedState,
|
|
137
140
|
'p-dropdown-clearable': props.showClear && !props.disabled,
|
|
138
141
|
'p-inputwrapper-filled': ObjectUtils.isNotEmpty(props.value),
|
|
@@ -155,6 +158,7 @@ var classes = {
|
|
|
155
158
|
'p-dropdown-item-empty': !optionGroupLabel || optionGroupLabel.length === 0
|
|
156
159
|
});
|
|
157
160
|
},
|
|
161
|
+
itemGroupLabel: 'p-dropdown-item-group-label',
|
|
158
162
|
dropdownIcon: 'p-dropdown-trigger-icon p-clickable',
|
|
159
163
|
loadingIcon: 'p-dropdown-trigger-icon p-clickable',
|
|
160
164
|
clearIcon: 'p-dropdown-clear-icon p-clickable',
|
|
@@ -183,14 +187,18 @@ var classes = {
|
|
|
183
187
|
disabled = _ref7.disabled,
|
|
184
188
|
label = _ref7.label,
|
|
185
189
|
index = _ref7.index,
|
|
186
|
-
focusedOptionIndex = _ref7.focusedOptionIndex
|
|
190
|
+
focusedOptionIndex = _ref7.focusedOptionIndex,
|
|
191
|
+
highlightOnSelect = _ref7.highlightOnSelect;
|
|
187
192
|
return classNames('p-dropdown-item', {
|
|
188
|
-
'p-highlight': selected,
|
|
193
|
+
'p-highlight': selected && highlightOnSelect,
|
|
189
194
|
'p-disabled': disabled,
|
|
190
195
|
'p-focus': index === focusedOptionIndex,
|
|
191
196
|
'p-dropdown-item-empty': !label || label.length === 0
|
|
192
197
|
});
|
|
193
198
|
},
|
|
199
|
+
itemLabel: 'p-dropdown-item-label',
|
|
200
|
+
checkIcon: 'p-dropdown-check-icon',
|
|
201
|
+
blankIcon: 'p-dropdown-blank-icon',
|
|
194
202
|
wrapper: 'p-dropdown-items-wrapper',
|
|
195
203
|
header: 'p-dropdown-header',
|
|
196
204
|
footer: 'p-dropdown-footer',
|
|
@@ -225,6 +233,8 @@ var DropdownBase = ComponentBase.extend({
|
|
|
225
233
|
dropdownIcon: null,
|
|
226
234
|
editable: false,
|
|
227
235
|
emptyFilterMessage: null,
|
|
236
|
+
highlightOnSelect: true,
|
|
237
|
+
checkmark: false,
|
|
228
238
|
emptyMessage: null,
|
|
229
239
|
filter: false,
|
|
230
240
|
filterBy: null,
|
|
@@ -239,6 +249,7 @@ var DropdownBase = ComponentBase.extend({
|
|
|
239
249
|
id: null,
|
|
240
250
|
inputId: null,
|
|
241
251
|
inputRef: null,
|
|
252
|
+
invalid: false,
|
|
242
253
|
itemTemplate: null,
|
|
243
254
|
loading: false,
|
|
244
255
|
loadingIcon: null,
|
|
@@ -287,6 +298,24 @@ var DropdownBase = ComponentBase.extend({
|
|
|
287
298
|
}
|
|
288
299
|
});
|
|
289
300
|
|
|
301
|
+
var BlankIcon = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inProps, ref) {
|
|
302
|
+
var pti = IconBase.getPTI(inProps);
|
|
303
|
+
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
304
|
+
ref: ref,
|
|
305
|
+
width: "14",
|
|
306
|
+
height: "14",
|
|
307
|
+
viewBox: "0 0 14 14",
|
|
308
|
+
fill: "none",
|
|
309
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
310
|
+
}, pti), /*#__PURE__*/React.createElement("rect", {
|
|
311
|
+
width: "1",
|
|
312
|
+
height: "1",
|
|
313
|
+
fill: "currentColor",
|
|
314
|
+
fillOpacity: "0"
|
|
315
|
+
}));
|
|
316
|
+
}));
|
|
317
|
+
BlankIcon.displayName = 'BlankIcon';
|
|
318
|
+
|
|
290
319
|
var DropdownItem = /*#__PURE__*/React.memo(function (props) {
|
|
291
320
|
var mergeProps = useMergeProps();
|
|
292
321
|
var ptm = props.ptm,
|
|
@@ -296,7 +325,9 @@ var DropdownItem = /*#__PURE__*/React.memo(function (props) {
|
|
|
296
325
|
option = props.option,
|
|
297
326
|
label = props.label,
|
|
298
327
|
index = props.index,
|
|
299
|
-
focusedOptionIndex = props.focusedOptionIndex
|
|
328
|
+
focusedOptionIndex = props.focusedOptionIndex,
|
|
329
|
+
checkmark = props.checkmark,
|
|
330
|
+
highlightOnSelect = props.highlightOnSelect;
|
|
300
331
|
var getPTOptions = function getPTOptions(key) {
|
|
301
332
|
return ptm(key, {
|
|
302
333
|
context: {
|
|
@@ -322,7 +353,8 @@ var DropdownItem = /*#__PURE__*/React.memo(function (props) {
|
|
|
322
353
|
disabled: disabled,
|
|
323
354
|
label: label,
|
|
324
355
|
index: index,
|
|
325
|
-
focusedOptionIndex: focusedOptionIndex
|
|
356
|
+
focusedOptionIndex: focusedOptionIndex,
|
|
357
|
+
highlightOnSelect: highlightOnSelect
|
|
326
358
|
})),
|
|
327
359
|
style: props.style,
|
|
328
360
|
onClick: function onClick(e) {
|
|
@@ -334,7 +366,23 @@ var DropdownItem = /*#__PURE__*/React.memo(function (props) {
|
|
|
334
366
|
'data-p-focused': focusedOptionIndex === index,
|
|
335
367
|
'data-p-disabled': disabled
|
|
336
368
|
}, getPTOptions('item'));
|
|
337
|
-
|
|
369
|
+
var itemGroupLabelProps = mergeProps({
|
|
370
|
+
className: cx('itemLabel')
|
|
371
|
+
}, getPTOptions('itemLabel'));
|
|
372
|
+
var iconRenderer = function iconRenderer() {
|
|
373
|
+
if (selected) {
|
|
374
|
+
var checkIconProps = mergeProps({
|
|
375
|
+
className: cx('checkIcon')
|
|
376
|
+
}, getPTOptions('checIcon'));
|
|
377
|
+
return /*#__PURE__*/React.createElement(CheckIcon, checkIconProps);
|
|
378
|
+
} else {
|
|
379
|
+
var blankIconProps = mergeProps({
|
|
380
|
+
className: cx('blankIcon')
|
|
381
|
+
}, getPTOptions('blankIcon'));
|
|
382
|
+
return /*#__PURE__*/React.createElement(BlankIcon, blankIconProps);
|
|
383
|
+
}
|
|
384
|
+
};
|
|
385
|
+
return /*#__PURE__*/React.createElement("li", itemProps, checkmark && iconRenderer(), /*#__PURE__*/React.createElement("span", itemGroupLabelProps, content), /*#__PURE__*/React.createElement(Ripple, null));
|
|
338
386
|
});
|
|
339
387
|
DropdownItem.displayName = 'DropdownItem';
|
|
340
388
|
|
|
@@ -410,10 +458,12 @@ var DropdownPanel = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(funct
|
|
|
410
458
|
style: style,
|
|
411
459
|
template: props.itemTemplate,
|
|
412
460
|
selected: props.isSelected(option),
|
|
461
|
+
highlightOnSelect: props.highlightOnSelect,
|
|
413
462
|
disabled: disabled,
|
|
414
463
|
onClick: props.onOptionClick,
|
|
415
464
|
ptm: ptm,
|
|
416
|
-
cx: cx
|
|
465
|
+
cx: cx,
|
|
466
|
+
checkmark: props.checkmark
|
|
417
467
|
});
|
|
418
468
|
});
|
|
419
469
|
};
|
|
@@ -442,9 +492,12 @@ var DropdownPanel = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(funct
|
|
|
442
492
|
style: style,
|
|
443
493
|
'data-p-highlight': props.selected
|
|
444
494
|
}, getPTOptions('itemGroup'));
|
|
495
|
+
var itemGroupLabelProps = mergeProps({
|
|
496
|
+
className: cx('itemGroupLabel')
|
|
497
|
+
}, getPTOptions('itemGroupLabel'));
|
|
445
498
|
return /*#__PURE__*/React.createElement(React.Fragment, {
|
|
446
499
|
key: key
|
|
447
|
-
}, /*#__PURE__*/React.createElement("li", itemGroupProps, groupContent), groupChildrenContent);
|
|
500
|
+
}, /*#__PURE__*/React.createElement("li", itemGroupProps, /*#__PURE__*/React.createElement("span", itemGroupLabelProps, groupContent)), groupChildrenContent);
|
|
448
501
|
} else {
|
|
449
502
|
var optionLabel = props.getOptionLabel(option);
|
|
450
503
|
var optionKey = index + '_' + props.getOptionRenderKey(option);
|
|
@@ -458,10 +511,12 @@ var DropdownPanel = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(funct
|
|
|
458
511
|
style: style,
|
|
459
512
|
template: props.itemTemplate,
|
|
460
513
|
selected: props.isSelected(option),
|
|
514
|
+
highlightOnSelect: props.highlightOnSelect,
|
|
461
515
|
disabled: disabled,
|
|
462
516
|
onClick: props.onOptionClick,
|
|
463
517
|
ptm: ptm,
|
|
464
|
-
cx: cx
|
|
518
|
+
cx: cx,
|
|
519
|
+
checkmark: props.checkmark
|
|
465
520
|
});
|
|
466
521
|
}
|
|
467
522
|
};
|
|
@@ -646,20 +701,17 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
646
701
|
setFilterState = _React$useState2[1];
|
|
647
702
|
var _React$useState3 = React.useState(false),
|
|
648
703
|
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
var _React$useState5 = React.useState(
|
|
704
|
+
focusedState = _React$useState4[0],
|
|
705
|
+
setFocusedState = _React$useState4[1];
|
|
706
|
+
var _React$useState5 = React.useState(-1),
|
|
652
707
|
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
var _React$useState7 = React.useState(
|
|
708
|
+
focusedOptionIndex = _React$useState6[0],
|
|
709
|
+
setFocusedOptionIndex = _React$useState6[1];
|
|
710
|
+
var _React$useState7 = React.useState(false),
|
|
656
711
|
_React$useState8 = _slicedToArray(_React$useState7, 2),
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
var
|
|
660
|
-
_React$useState10 = _slicedToArray(_React$useState9, 2),
|
|
661
|
-
overlayVisibleState = _React$useState10[0],
|
|
662
|
-
setOverlayVisibleState = _React$useState10[1];
|
|
712
|
+
overlayVisibleState = _React$useState8[0],
|
|
713
|
+
setOverlayVisibleState = _React$useState8[1];
|
|
714
|
+
var clickedRef = React.useRef(false);
|
|
663
715
|
var elementRef = React.useRef(null);
|
|
664
716
|
var overlayRef = React.useRef(null);
|
|
665
717
|
var firstHiddenFocusableElementOnOverlay = React.useRef(null);
|
|
@@ -760,7 +812,7 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
760
812
|
DomHandler.focus(focusInputRef.current);
|
|
761
813
|
overlayVisibleState ? hide() : show();
|
|
762
814
|
}
|
|
763
|
-
|
|
815
|
+
clickedRef.current = true;
|
|
764
816
|
};
|
|
765
817
|
var onInputFocus = function onInputFocus(event) {
|
|
766
818
|
if (props.showOnFocus && !overlayVisibleState) {
|
|
@@ -858,12 +910,12 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
858
910
|
break;
|
|
859
911
|
default:
|
|
860
912
|
if (!metaKey && ObjectUtils.isPrintableCharacter(event.key)) {
|
|
861
|
-
!overlayVisibleState && show();
|
|
913
|
+
!overlayVisibleState && !props.editable && show();
|
|
862
914
|
!props.editable && searchOptions(event, event.key);
|
|
863
915
|
}
|
|
864
916
|
break;
|
|
865
917
|
}
|
|
866
|
-
|
|
918
|
+
clickedRef.current = false;
|
|
867
919
|
};
|
|
868
920
|
var onFilterInputKeyDown = function onFilterInputKeyDown(event) {
|
|
869
921
|
switch (event.code) {
|
|
@@ -984,7 +1036,7 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
984
1036
|
show();
|
|
985
1037
|
props.editable && changeFocusedOptionIndex(event, findSelectedOptionIndex());
|
|
986
1038
|
} else {
|
|
987
|
-
var optionIndex = focusedOptionIndex !== -1 ? findNextOptionIndex(focusedOptionIndex) :
|
|
1039
|
+
var optionIndex = focusedOptionIndex !== -1 ? findNextOptionIndex(focusedOptionIndex) : clickedRef.current ? findFirstOptionIndex() : findFirstFocusedOptionIndex();
|
|
988
1040
|
changeFocusedOptionIndex(event, optionIndex);
|
|
989
1041
|
}
|
|
990
1042
|
event.preventDefault();
|
|
@@ -998,7 +1050,7 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
998
1050
|
state.overlayVisible && hide();
|
|
999
1051
|
event.preventDefault();
|
|
1000
1052
|
} else {
|
|
1001
|
-
var optionIndex = focusedOptionIndex !== -1 ? findPrevOptionIndex(focusedOptionIndex) :
|
|
1053
|
+
var optionIndex = focusedOptionIndex !== -1 ? findPrevOptionIndex(focusedOptionIndex) : clickedRef.current ? findLastOptionIndex() : findLastFocusedOptionIndex();
|
|
1002
1054
|
changeFocusedOptionIndex(event, optionIndex);
|
|
1003
1055
|
!overlayVisibleState && show();
|
|
1004
1056
|
event.preventDefault();
|
|
@@ -1079,11 +1131,10 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1079
1131
|
}
|
|
1080
1132
|
};
|
|
1081
1133
|
var onEditableInputChange = function onEditableInputChange(event) {
|
|
1082
|
-
!overlayVisibleState && show();
|
|
1083
1134
|
var searchIndex = null;
|
|
1084
1135
|
if (event.target.value) {
|
|
1085
1136
|
searchIndex = visibleOptions.findIndex(function (item) {
|
|
1086
|
-
return item.
|
|
1137
|
+
return getOptionLabel(item).toLocaleLowerCase().startsWith(event.target.value.toLocaleLowerCase());
|
|
1087
1138
|
});
|
|
1088
1139
|
}
|
|
1089
1140
|
setFocusedOptionIndex(searchIndex);
|
|
@@ -1164,7 +1215,9 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1164
1215
|
var selectItem = function selectItem(event) {
|
|
1165
1216
|
if (selectedOption !== event.option) {
|
|
1166
1217
|
updateEditableLabel(event.option);
|
|
1218
|
+
setFocusedOptionIndex(-1);
|
|
1167
1219
|
var optionValue = getOptionValue(event.option);
|
|
1220
|
+
var selectedOptionIndex = findOptionIndexInList(event.option, visibleOptions);
|
|
1168
1221
|
if (props.onChange) {
|
|
1169
1222
|
props.onChange({
|
|
1170
1223
|
originalEvent: event.originalEvent,
|
|
@@ -1182,6 +1235,7 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1182
1235
|
}
|
|
1183
1236
|
});
|
|
1184
1237
|
}
|
|
1238
|
+
changeFocusedOptionIndex(event.originalEvent, selectedOptionIndex);
|
|
1185
1239
|
}
|
|
1186
1240
|
};
|
|
1187
1241
|
var getSelectedOptionIndex = function getSelectedOptionIndex(options) {
|
|
@@ -1221,10 +1275,10 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1221
1275
|
};
|
|
1222
1276
|
var hide = function hide() {
|
|
1223
1277
|
setOverlayVisibleState(false);
|
|
1224
|
-
|
|
1278
|
+
clickedRef.current = false;
|
|
1225
1279
|
};
|
|
1226
1280
|
var onFocus = function onFocus() {
|
|
1227
|
-
if (props.editable) {
|
|
1281
|
+
if (props.editable && !overlayVisibleState && clickedRef.current === false) {
|
|
1228
1282
|
DomHandler.focus(inputRef.current);
|
|
1229
1283
|
}
|
|
1230
1284
|
};
|
|
@@ -1268,6 +1322,11 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1268
1322
|
var updateEditableLabel = function updateEditableLabel(option) {
|
|
1269
1323
|
if (inputRef.current) {
|
|
1270
1324
|
inputRef.current.value = option ? getOptionLabel(option) : props.value || '';
|
|
1325
|
+
|
|
1326
|
+
// #1413 NVDA screenreader
|
|
1327
|
+
if (focusInputRef.current) {
|
|
1328
|
+
focusInputRef.current.value = inputRef.current.value;
|
|
1329
|
+
}
|
|
1271
1330
|
}
|
|
1272
1331
|
};
|
|
1273
1332
|
var getOptionLabel = function getOptionLabel(option) {
|
|
@@ -1302,6 +1361,11 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1302
1361
|
var label = selectedOption ? getOptionLabel(selectedOption) : null;
|
|
1303
1362
|
var value = label || props.value || '';
|
|
1304
1363
|
inputRef.current.value = value;
|
|
1364
|
+
|
|
1365
|
+
// #1413 NVDA screenreader
|
|
1366
|
+
if (focusInputRef.current) {
|
|
1367
|
+
focusInputRef.current.value = value;
|
|
1368
|
+
}
|
|
1305
1369
|
}
|
|
1306
1370
|
};
|
|
1307
1371
|
var getSelectedOption = function getSelectedOption() {
|
|
@@ -1397,12 +1461,17 @@ var Dropdown = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (
|
|
|
1397
1461
|
return /*#__PURE__*/React.createElement("div", hiddenSelectedMessageProps, /*#__PURE__*/React.createElement("select", selectProps, /*#__PURE__*/React.createElement("option", optionProps, option.label)));
|
|
1398
1462
|
};
|
|
1399
1463
|
var createKeyboardHelper = function createKeyboardHelper() {
|
|
1464
|
+
var value = ObjectUtils.isNotEmpty(selectedOption) ? getOptionLabel(selectedOption) : null;
|
|
1465
|
+
if (props.editable) {
|
|
1466
|
+
value = value || props.value || '';
|
|
1467
|
+
}
|
|
1400
1468
|
var hiddenSelectedMessageProps = mergeProps({
|
|
1401
1469
|
className: 'p-hidden-accessible'
|
|
1402
1470
|
}, ptm('hiddenSelectedMessage'));
|
|
1403
1471
|
var inputProps = mergeProps(_objectSpread({
|
|
1404
1472
|
ref: focusInputRef,
|
|
1405
1473
|
id: props.inputId,
|
|
1474
|
+
defaultValue: value,
|
|
1406
1475
|
type: 'text',
|
|
1407
1476
|
readOnly: true,
|
|
1408
1477
|
'aria-haspopup': 'listbox',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as e from"react";import t,{PrimeReactContext as n,localeOption as r,FilterService as o}from"primereact/api";import{ComponentBase as l,useHandleStyle as i}from"primereact/componentbase";import{useMergeProps as a,useOverlayListener as u,useMountEffect as c,useUpdateEffect as p,useUnmountEffect as s}from"primereact/hooks";import{ChevronDownIcon as d}from"primereact/icons/chevrondown";import{SpinnerIcon as f}from"primereact/icons/spinner";import{TimesIcon as m}from"primereact/icons/times";import{OverlayService as v}from"primereact/overlayservice";import{Tooltip as b}from"primereact/tooltip";import{classNames as g,ObjectUtils as y,DomHandler as h,IconUtils as w,ZIndexUtils as E}from"primereact/utils";import{CSSTransition as O}from"primereact/csstransition";import{SearchIcon as I}from"primereact/icons/search";import{Portal as x}from"primereact/portal";import{VirtualScroller as S}from"primereact/virtualscroller";import{Ripple as F}from"primereact/ripple";function C(){return C=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},C.apply(this,arguments)}function D(e){return D="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},D(e)}function L(e,t){if("object"!==D(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==D(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function N(e){var t=L(e,"string");return"symbol"===D(t)?t:String(t)}function k(e,t,n){return(t=N(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P(e){if(Array.isArray(e))return e}function R(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,i,a=[],u=!0,c=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=l.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){c=!0,o=e}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw o}}return a}}function T(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function j(e,t){if(e){if("string"==typeof e)return T(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?T(e,t):void 0}}function M(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function A(e,t){return P(e)||R(e,t)||j(e,t)||M()}var G=l.extend({defaultProps:{__TYPE:"Dropdown",__parentMetadata:null,appendTo:null,ariaLabel:null,ariaLabelledBy:null,autoFocus:!1,children:void 0,className:null,clearIcon:null,dataKey:null,disabled:!1,dropdownIcon:null,editable:!1,emptyFilterMessage:null,emptyMessage:null,filter:!1,filterBy:null,filterClearIcon:null,filterIcon:null,filterInputAutoFocus:!0,filterLocale:void 0,filterMatchMode:"contains",filterPlaceholder:null,filterTemplate:null,focusInputRef:null,id:null,inputId:null,inputRef:null,itemTemplate:null,loading:!1,loadingIcon:null,maxLength:null,name:null,onBlur:null,onChange:null,onContextMenu:null,onFilter:null,onFocus:null,onHide:null,onMouseDown:null,onShow:null,optionDisabled:null,optionGroupChildren:"items",selectOnFocus:!1,autoOptionFocus:!1,optionGroupLabel:null,optionGroupTemplate:null,optionLabel:null,optionValue:null,options:null,panelClassName:null,panelFooterTemplate:null,panelStyle:null,placeholder:null,required:!1,resetFilterOnHide:!1,scrollHeight:"200px",showClear:!1,showFilterClear:!1,showOnFocus:!1,style:null,tabIndex:null,tooltip:null,tooltipOptions:null,transitionOptions:null,value:null,valueTemplate:null,virtualScrollerOptions:null},css:{classes:{root:function(e){var t=e.props,n=e.focusedState,r=e.overlayVisibleState;return g("p-dropdown p-component p-inputwrapper",{"p-disabled":t.disabled,"p-focus":n,"p-dropdown-clearable":t.showClear&&!t.disabled,"p-inputwrapper-filled":y.isNotEmpty(t.value),"p-inputwrapper-focus":n||r})},input:function(e){var t=e.props,n=e.label;return t.editable?"p-dropdown-label p-inputtext":g("p-dropdown-label p-inputtext",{"p-placeholder":null===n&&t.placeholder,"p-dropdown-label-empty":null===n&&!t.placeholder})},trigger:"p-dropdown-trigger",emptyMessage:"p-dropdown-empty-message",itemGroup:function(e){var t=e.optionGroupLabel;return g("p-dropdown-item-group",{"p-dropdown-item-empty":!t||0===t.length})},dropdownIcon:"p-dropdown-trigger-icon p-clickable",loadingIcon:"p-dropdown-trigger-icon p-clickable",clearIcon:"p-dropdown-clear-icon p-clickable",filterIcon:"p-dropdown-filter-icon",filterClearIcon:"p-dropdown-filter-clear-icon",filterContainer:function(e){return g("p-dropdown-filter-container",{"p-dropdown-clearable-filter":!!e.clearIcon})},filterInput:"p-dropdown-filter p-inputtext p-component",list:function(e){return"p-dropdown-items"},panel:function(e){var n=e.context;return g("p-dropdown-panel p-component",{"p-input-filled":n&&"filled"===n.inputStyle||"filled"===t.inputStyle,"p-ripple-disabled":n&&!1===n.ripple||!1===t.ripple})},item:function(e){var t=e.label;return g("p-dropdown-item",{"p-highlight":e.selected,"p-disabled":e.disabled,"p-focus":e.index===e.focusedOptionIndex,"p-dropdown-item-empty":!t||0===t.length})},wrapper:"p-dropdown-items-wrapper",header:"p-dropdown-header",footer:"p-dropdown-footer",transition:"p-connected-overlay"},styles:"\n@layer primereact {\n .p-dropdown {\n display: inline-flex;\n cursor: pointer;\n position: relative;\n user-select: none;\n }\n \n .p-dropdown-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n }\n \n .p-dropdown-label {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n flex: 1 1 auto;\n width: 1%;\n text-overflow: ellipsis;\n cursor: pointer;\n }\n \n .p-dropdown-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n \n input.p-dropdown-label {\n cursor: default;\n }\n \n .p-dropdown .p-dropdown-panel {\n min-width: 100%;\n }\n \n .p-dropdown-panel {\n position: absolute;\n top: 0;\n left: 0;\n }\n \n .p-dropdown-items-wrapper {\n overflow: auto;\n }\n \n .p-dropdown-item {\n cursor: pointer;\n font-weight: normal;\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n }\n \n .p-dropdown-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n \n .p-dropdown-filter {\n width: 100%;\n }\n \n .p-dropdown-filter-container {\n position: relative;\n }\n \n .p-dropdown-clear-icon,\n .p-dropdown-filter-icon,\n .p-dropdown-filter-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-fluid .p-dropdown {\n display: flex;\n }\n \n .p-fluid .p-dropdown .p-dropdown-label {\n width: 1%;\n }\n}\n",inlineStyles:{wrapper:function(e){return{maxHeight:e.props.scrollHeight||"auto"}},panel:function(e){}}}}),K=e.memo((function(t){var n=a(),r=t.ptm,o=t.cx,l=t.selected,i=t.disabled,u=t.option,c=t.label,p=t.index,s=t.focusedOptionIndex,d=t.template?y.getJSXElement(t.template,t.option):t.label,f=n({role:"option",key:t.label,className:g(u.className,o("item",{selected:l,disabled:i,label:c,index:p,focusedOptionIndex:s})),style:t.style,onClick:function(e){return n=e,void(t.onClick&&t.onClick({originalEvent:n,option:u}));var n},"aria-label":c,"aria-selected":l,"data-p-highlight":l,"data-p-focused":s===p,"data-p-disabled":i},r("item",{context:{selected:l,disabled:i}}));return e.createElement("li",f,d,e.createElement(F,null))}));function V(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function H(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?V(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):V(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}K.displayName="DropdownItem";var J=e.memo(e.forwardRef((function(t,o){var l=a(),i=t.ptm,u=t.cx,c=t.sx,p=e.useContext(n);e.useRef(null);var s,d,f,v,b,E=e.useRef(null),F=!(t.visibleOptions&&t.visibleOptions.length)&&t.hasFilter,D={filter:function(e){return P(e)},reset:function(){return t.resetFilter()}},L=function(e,n){return i(e,H({hostName:t.hostName},n))},N=function(){t.onEnter((function(){if(t.virtualScrollerRef.current){var e=t.getSelectedOptionIndex();-1!==e&&setTimeout((function(){return t.virtualScrollerRef.current.scrollToIndex(e)}),0)}}))},k=function(){t.onEntered((function(){t.filter&&t.filterInputAutoFocus&&h.focus(E.current,!1)}))},P=function(e){t.virtualScrollerRef.current&&t.virtualScrollerRef.current.scrollToIndex(0),t.onFilterInputChange&&t.onFilterInputChange(e)},R=function(){if(t.panelFooterTemplate){var n=y.getJSXElement(t.panelFooterTemplate,t,t.onOverlayHide),r=l({className:u("footer")},L("footer"));return e.createElement("div",r,n)}return null},T=function(n,r){return t.getOptionGroupChildren(n).map((function(n,o){var l=t.getOptionLabel(n),a=o+"_"+t.getOptionRenderKey(n),c=t.isOptionDisabled(n);return e.createElement(K,{key:a,index:o,focusedOptionIndex:t.focusedOptionIndex,label:l,option:n,style:r,template:t.itemTemplate,selected:t.isSelected(n),disabled:c,onClick:t.onOptionClick,ptm:i,cx:u})}))},j=function(n,o){var i=y.getJSXElement(n,t)||r(o?"emptyFilterMessage":"emptyMessage"),a=l({className:u("emptyMessage")},L("emptyMessage"));return e.createElement("li",a,i)},M=function(n,r){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a={height:o.props?o.props.itemSize:void 0};if(a=H(H({},a),n.style),t.optionGroupLabel){var c=t.optionGroupLabel,p=t.optionGroupTemplate?y.getJSXElement(t.optionGroupTemplate,n,r):t.getOptionGroupLabel(n),s=T(n,a),d=r+"_"+t.getOptionGroupRenderKey(n),f=l({className:u("itemGroup",{optionGroupLabel:c}),style:a,"data-p-highlight":t.selected},L("itemGroup"));return e.createElement(e.Fragment,{key:d},e.createElement("li",f,p),s)}var m=t.getOptionLabel(n),v=r+"_"+t.getOptionRenderKey(n),b=t.isOptionDisabled(n);return e.createElement(K,{key:v,label:m,index:r,focusedOptionIndex:t.focusedOptionIndex,option:n,style:a,template:t.itemTemplate,selected:t.isSelected(n),disabled:b,onClick:t.onOptionClick,ptm:i,cx:u})},A=function(){if(t.showFilterClear&&t.filterValue){var n=r("clear"),o=l({className:u("filterClearIcon"),"aria-label":n,onClick:function(){return t.onFilterClearIconClick((function(){return h.focus(E.current)}))}},L("filterClearIcon"));return w.getJSXIcon(t.filterClearIcon||e.createElement(m,o),H({},o),{props:t})}return null},G=function(){if(t.filter){var n=A(),r=l({className:u("filterIcon")},L("filterIcon")),o=w.getJSXIcon(t.filterIcon||e.createElement(I,r),H({},r),{props:t}),i=l({className:u("filterContainer",{clearIcon:n})},L("filterContainer")),a=l({ref:E,type:"text",autoComplete:"off",className:u("filterInput"),placeholder:t.filterPlaceholder,onKeyDown:t.onFilterInputKeyDown,onChange:function(e){return P(e)},value:t.filterValue},L("filterInput")),c=e.createElement("div",i,e.createElement("input",a),n,o);if(t.filterTemplate){var p={className:g("p-dropdown-filter-container",{"p-dropdown-clearable-filter":!!n}),element:c,filterOptions:D,filterInputKeyDown:t.onFilterInputKeyDown,filterInputChange:P,filterIconClassName:"p-dropdown-filter-icon",clearIcon:n,props:t};c=y.getJSXElement(t.filterTemplate,p)}var s=l({className:u("header")},L("header"));return e.createElement("div",s,c)}return null},V=function(){if(t.virtualScrollerOptions){var n=H(H({},t.virtualScrollerOptions),{style:H(H({},t.virtualScrollerOptions.style),{height:t.scrollHeight}),className:g("p-dropdown-items-wrapper",t.virtualScrollerOptions.className),items:t.visibleOptions,autoSize:!0,onLazyLoad:function(e){return t.virtualScrollerOptions.onLazyLoad(H(H({},e),{filter:t.filterValue}))},itemTemplate:function(e,t){return e&&M(e,t.index,t)},contentTemplate:function(n){var r=F?j(t.hasFilter?t.emptyFilterMessage:t.emptyMessage):n.children,o=l({ref:n.contentRef,style:n.style,className:g(n.className,u("list",{virtualScrollerProps:t.virtualScrollerOptions})),role:"listbox"},L("list"));return e.createElement("ul",o,r)}});return e.createElement(S,C({ref:t.virtualScrollerRef},n,{pt:i("virtualScroller")}))}var r=y.isNotEmpty(t.visibleOptions)?t.visibleOptions.map(M):t.hasFilter?j(t.emptyFilterMessage,!0):j(t.emptyMessage),o=l({className:u("wrapper"),style:c("wrapper")},L("wrapper")),a=l({className:u("list"),role:"listbox"},L("list"));return e.createElement("div",o,e.createElement("ul",a,r))},J=(s=G(),d=V(),f=R(),v=l({className:g(t.panelClassName,u("panel",{context:p})),style:c("panel"),onClick:t.onClick},L("panel")),b=l({classNames:u("transition"),in:t.in,timeout:{enter:120,exit:100},options:t.transitionOptions,unmountOnExit:!0,onEnter:N,onEntered:k,onExit:t.onExit,onExited:t.onExited},L("transition")),e.createElement(O,C({nodeRef:o},b),e.createElement("div",C({ref:o},v),t.firstFocusableElement,s,d,f,t.lastFocusableElement)));return e.createElement(x,{element:J,appendTo:t.appendTo})})));function X(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=B(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,i=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){a=!0,l=e},f:function(){try{i||null==n.return||n.return()}finally{if(a)throw l}}}}function B(e,t){if(e){if("string"==typeof e)return _(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_(e,t):void 0}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function U(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function q(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?U(Object(n),!0).forEach((function(t){k(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):U(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}J.displayName="DropdownPanel";var z=e.memo(e.forwardRef((function(r,l){var O=a(),I=e.useContext(n),x=G.getProps(r,I),S=A(e.useState(""),2),F=S[0],L=S[1],N=A(e.useState(!1),2),P=N[0],R=N[1],T=A(e.useState(!1),2),j=T[0],M=T[1],K=A(e.useState(-1),2),V=K[0],H=K[1],B=A(e.useState(!1),2),_=B[0],U=B[1],z=e.useRef(null),W=e.useRef(null),Z=e.useRef(null),$=e.useRef(null),Y=e.useRef(x.inputRef),Q=e.useRef(x.focusInputRef),ee=e.useRef(null),te=e.useRef(null),ne=e.useRef(null);e.useRef(null);var re=x.virtualScrollerOptions&&x.virtualScrollerOptions.lazy,oe=y.isNotEmpty(F),le=x.appendTo||I&&I.appendTo||t.appendTo,ie=G.setMetaData(q(q({props:x},x.__parentMetadata),{},{state:{filter:F,focused:j,overlayVisible:_}})),ae=ie.ptm,ue=ie.cx,ce=ie.sx;i(G.css.styles,ie.isUnstyled,{name:"dropdown"});var pe=A(u({target:z,overlay:W,listener:function(e,t){t.valid&&("outside"===t.type?!fe(e)&&Ze():Ze())},when:_}),2),se=pe[0],de=pe[1],fe=function(e){return h.isAttributeEquals(e.target,"data-pc-section","clearicon")||h.isAttributeEquals(e.target.parentElement||e.target,"data-pc-section","filterclearicon")},me=function(e){x.showOnFocus&&!_&&We(),M(!0),x.onFocus&&x.onFocus(e)},ve=function(e){M(!1),x.onBlur&&setTimeout((function(){var t=Y.current?Y.current.value:void 0;x.onBlur({originalEvent:e.originalEvent,value:t,stopPropagation:function(){e.originalEvent.stopPropagation()},preventDefault:function(){e.originalEvent.preventDefault()},target:{name:x.name,id:x.id,value:t}})}),200)},be=function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=et(t);Be({originalEvent:e,option:r}),n&&Ze()},ge=function(e){if(x.disabled||h.isAndroid())e.preventDefault();else{var t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":De(e);break;case"ArrowUp":Le(e);break;case"ArrowLeft":case"ArrowRight":Ne(e,x.editable);break;case"Home":ke(e);break;case"End":Pe(e);break;case"PageDown":Te(e);break;case"PageUp":Re(e);break;case"Space":je(e,x.editable);break;case"NumpadEnter":case"Enter":Me(e);break;case"Escape":Ae(e);break;case"Tab":Ge(e);break;case"Backspace":Ke(e,x.editable);break;case"ShiftLeft":case"ShiftRight":break;default:!t&&y.isPrintableCharacter(e.key)&&(!_&&We(),!x.editable&&xe(e,e.key))}R(!1)}},ye=function(e){var t;return he(e)&&(null===(t=Qe(e))||void 0===t?void 0:t.toLocaleLowerCase(x.filterLocale).startsWith(ne.current.toLocaleLowerCase(x.filterLocale)))},he=function(e){return y.isNotEmpty(e)&&!(nt(e)||tt(e))},we=function(){return y.isNotEmpty(x.value)},Ee=function(e){return he(e)&&ze(e)},Oe=function(){return we?dt.findIndex((function(e){return Ee(e)})):-1},Ie=function(){var e=Oe();return e<0?Se():e},xe=function(e,t){ne.current=(ne.current||"")+t;var n=-1,r=!1;return y.isNotEmpty(ne.current)&&(-1!==(n=-1!==V?-1===(n=dt.slice(V).findIndex((function(e){return ye(e)})))?dt.slice(0,V).findIndex((function(e){return ye(e)})):n+V:dt.findIndex((function(e){return ye(e)})))&&(r=!0),-1===n&&-1===V&&(n=Ie()),-1!==n&&Ce(e,n)),te.current&&clearTimeout(te.current),te.current=setTimeout((function(){ne.current="",te.current=null}),500),r},Se=function(){return dt.findIndex((function(e){return he(e)}))},Fe=function(){return y.findLastIndex(dt,(function(e){return he(e)}))},Ce=function(e,t){V!==t&&(H(t),x.selectOnFocus&&be(e,dt[t],!1))},De=function(e){if(_){var t=-1!==V?(r=(n=V)<dt.length-1?dt.slice(n+1).findIndex((function(e){return he(e)})):-1)>-1?r+n+1:n:P?Se():Ie();Ce(e,t)}else We(),x.editable&&Ce(e,Oe());var n,r;e.preventDefault()},Le=function(e){var t,n,r;if(e.altKey&&!(arguments.length>1&&void 0!==arguments[1]&&arguments[1]))-1!==V&&be(e,dt[V]),state.overlayVisible&&Ze(),e.preventDefault();else{var o=-1!==V?(r=(n=V)>0?y.findLastIndex(dt.slice(0,n),(function(e){return he(e)})):-1)>-1?r:n:P?Fe():(t=Oe())<0?Fe():t;Ce(e,o),!_&&We(),e.preventDefault()}},Ne=function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]&&H(-1)},ke=function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]?(e.currentTarget.setSelectionRange(0,0),H(-1)):(Ce(e,Se()),!_&&We()),e.preventDefault()},Pe=function(e){if(arguments.length>1&&void 0!==arguments[1]&&arguments[1]){var t=e.currentTarget,n=t.value.length;t.setSelectionRange(n,n),H(-1)}else Ce(e,Fe()),!_&&We();e.preventDefault()},Re=function(e){e.preventDefault()},Te=function(e){e.preventDefault()},je=function(e){!(arguments.length>1&&void 0!==arguments[1]&&arguments[1])&&Me(e)},Me=function(e){_?(-1!==V&&be(e,dt[V]),Ze()):(H(-1),De(e)),e.preventDefault()},Ae=function(e){_&&Ze(),e.preventDefault()},Ge=function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]||(!_||h.getFocusableElements(W.current,':not([data-p-hidden-focusable="true"])').length>0?(-1!==V&&be(e,dt[V]),_&&Ze()):(h.focus(Z.current),e.preventDefault()))},Ke=function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]&&!_&&We()},Ve=function(e){!_&&We();var t=null;e.target.value&&(t=dt.findIndex((function(t){return t.name.toLocaleLowerCase().startsWith(e.target.value.toLocaleLowerCase())}))),H(t),x.onChange&&x.onChange({originalEvent:e.originalEvent,value:e.target.value,stopPropagation:function(){e.originalEvent.stopPropagation()},preventDefault:function(){e.originalEvent.preventDefault()},target:{name:x.name,id:x.id,value:e.target.value}})},He=function(e){M(!0),Ze(),x.onFocus&&x.onFocus(e)},Je=function(e){L(""),x.onFilter&&x.onFilter({filter:""}),e&&e()},Xe=function(e){x.onChange&&x.onChange({originalEvent:e,value:void 0,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{name:x.name,id:x.id,value:void 0}}),x.filter&&Je(),Ye()},Be=function(e){if(ft!==e.option){Ye(e.option);var t=et(e.option);x.onChange&&x.onChange({originalEvent:e.originalEvent,value:t,stopPropagation:function(){e.originalEvent.stopPropagation()},preventDefault:function(){e.originalEvent.preventDefault()},target:{name:x.name,id:x.id,value:t}})}},_e=function(e){if(e=e||dt,null!=x.value&&e){if(!x.optionGroupLabel)return qe(x.value,e);for(var t=0;t<e.length;t++){var n=qe(x.value,rt(e[t]));if(-1!==n)return{group:t,option:n}}}return-1},Ue=function(){return x.optionValue?null:x.dataKey},qe=function(e,t){var n=Ue();return t.findIndex((function(t){return y.equals(e,et(t),n)}))},ze=function(e){return y.equals(x.value,et(e),Ue())},We=function(){H(-1!==V?V:x.autoOptionFocus?Ie():x.editable?-1:Oe()),U(!0)},Ze=function(){U(!1),R(!1)},$e=function(){h.alignOverlay(W.current,Y.current.parentElement,x.appendTo||I&&I.appendTo||t.appendTo)},Ye=function(e){Y.current&&(Y.current.value=e?Qe(e):x.value||"")},Qe=function(e){return x.optionLabel?y.resolveFieldData(e,x.optionLabel):e&&void 0!==e.label?e.label:e},et=function(e){return x.optionValue?y.resolveFieldData(e,x.optionValue):e&&void 0!==e.value?e.value:e},tt=function(e){return x.optionGroupLabel&&e.optionGroup&&e.group},nt=function(e){return x.optionDisabled?y.isFunction(x.optionDisabled)?x.optionDisabled(e):y.resolveFieldData(e,x.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},rt=function(e){return y.resolveFieldData(e,x.optionGroupChildren)},ot=function(){if(x.editable&&Y.current){var e=ft?Qe(ft):null;Y.current.value=e||x.value||""}};e.useImperativeHandle(l,(function(){return{props:x,show:We,hide:Ze,clear:Xe,focus:function(){return h.focus(Q.current)},getElement:function(){return z.current},getOverlay:function(){return W.current},getInput:function(){return Y.current},getFocusInput:function(){return Q.current},getVirtualScroller:function(){return ee.current}}})),e.useEffect((function(){y.combinedRefs(Y,x.inputRef),y.combinedRefs(Q,x.focusInputRef)}),[Y,x.inputRef,Q,x.focusInputRef]),c((function(){x.autoFocus&&h.focus(Q.current,x.autoFocus),$e()})),p((function(){var e;_&&x.value&&(e=h.findSingle(W.current,'li[data-p-highlight="true"]'))&&e.scrollIntoView&&e.scrollIntoView({block:"nearest",inline:"nearest"})}),[_,x.value]),p((function(){_&&F&&x.filter&&$e()}),[_,F,x.filter]),p((function(){!F||x.options&&0!==x.options.length||L(""),ot(),Y.current&&(Y.current.selectedIndex=1)})),s((function(){E.clear(W.current)}));var lt,it,at,ut,ct,pt,st,dt=function(){if(oe&&!re){var e=F.trim().toLocaleLowerCase(x.filterLocale),t=x.filterBy?x.filterBy.split(","):[x.optionLabel||"label"];if(x.optionGroupLabel){var n,r=[],l=X(x.options);try{for(l.s();!(n=l.n()).done;){var i=n.value,a=o.filter(rt(i),t,e,x.filterMatchMode,x.filterLocale);a&&a.length&&r.push(q(q({},i),k({},"".concat(x.optionGroupChildren),a)))}}catch(e){l.e(e)}finally{l.f()}return r}return o.filter(x.options,t,e,x.filterMatchMode,x.filterLocale)}return x.options}(),ft=-1!==(lt=_e(x.options))?x.optionGroupLabel?rt(x.options[lt.group])[lt.option]:x.options[lt]:null,mt=y.isNotEmpty(x.tooltip),vt=G.getOtherProps(x),bt=y.reduceKeys(vt,h.ARIA_PROPS),gt=function(){var t={value:"",label:x.placeholder};if(ft){var n=et(ft);t={value:"object"===D(n)?x.options.findIndex((function(e){return e===n})):n,label:Qe(ft)}}var r=O({className:"p-hidden-accessible p-dropdown-hidden-select"},ae("hiddenSelectedMessage")),o=O({ref:Y,required:x.required,defaultValue:t.value,name:x.name,tabIndex:-1,"aria-hidden":"true"},ae("select")),l=O({value:t.value},ae("option"));return e.createElement("div",r,e.createElement("select",o,e.createElement("option",l,t.label)))}(),yt=(it=O({className:"p-hidden-accessible"},ae("hiddenSelectedMessage")),at=O(q({ref:Q,id:x.inputId,type:"text",readOnly:!0,"aria-haspopup":"listbox",onFocus:me,onBlur:ve,onKeyDown:ge,disabled:x.disabled,tabIndex:x.disabled?-1:x.tabIndex||0},bt),ae("input")),e.createElement("div",it,e.createElement("input",at))),ht=function(){var t=y.isNotEmpty(ft)?Qe(ft):null;if(x.editable){var n=O(q({ref:Y,type:"text",defaultValue:t||x.value||"",className:ue("input",{label:t}),disabled:x.disabled,placeholder:x.placeholder,maxLength:x.maxLength,onInput:Ve,onFocus:He,onKeyDown:ge,onBlur:ve,tabIndex:x.disabled?-1:x.tabIndex||0,"aria-haspopup":"listbox"},bt),ae("input"));return e.createElement("input",n)}var r=x.valueTemplate?y.getJSXElement(x.valueTemplate,ft,x):t||x.placeholder||"empty",o=O({ref:Y,className:ue("input",{label:t}),tabIndex:"-1"},ae("input"));return e.createElement("span",o,r)}(),wt=x.loading?(ut=O({className:ue("loadingIcon"),"data-pr-overlay-visible":_},ae("loadingIcon")),ct=w.getJSXIcon(x.loadingIcon||e.createElement(f,{spin:!0}),q({},ut),{props:x}),pt=x.placeholder||x.ariaLabel,st=O({className:ue("trigger"),role:"button","aria-haspopup":"listbox","aria-expanded":_,"aria-label":pt},ae("trigger")),e.createElement("div",st,ct)):function(){var t=O({className:ue("dropdownIcon"),"data-pr-overlay-visible":_},ae("dropdownIcon")),n=w.getJSXIcon(x.dropdownIcon||e.createElement(d,t),q({},t),{props:x}),r=x.placeholder||x.ariaLabel,o=O({className:ue("trigger"),role:"button","aria-haspopup":"listbox","aria-expanded":_,"aria-label":r},ae("trigger"));return e.createElement("div",o,n)}(),Et=function(){if(null!=x.value&&x.showClear&&!x.disabled){var t=O({className:ue("clearIcon"),onPointerUp:Xe},ae("clearIcon"));return w.getJSXIcon(x.clearIcon||e.createElement(m,t),q({},t),{props:x})}return null}(),Ot=O({id:x.id,ref:z,className:g(x.className,ue("root",{focusedState:j,overlayVisibleState:_})),style:x.style,onClick:function(e){return t=e,void(x.disabled||x.loading||(x.onClick&&x.onClick(t),t.defaultPrevented||fe(t)||"INPUT"===t.target.tagName||(W.current&&W.current&&W.current.contains(t.target)||(h.focus(Q.current),_?Ze():We()),R(!0))));var t},onMouseDown:x.onMouseDown,onContextMenu:x.onContextMenu,onFocus:function(){x.editable&&h.focus(Y.current)},"data-p-disabled":x.disabled,"data-p-focus":j},vt,ae("root")),It=O({ref:Z,role:"presentation","aria-hidden":"true",className:"p-hidden-accessible p-hidden-focusable",tabIndex:"0",onFocus:function(e){var t=e.relatedTarget===Q.current?h.getFirstFocusableElement(W.current,':not([data-p-hidden-focusable="true"])'):Q.current;h.focus(t)},"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0},ae("hiddenFirstFocusableEl")),xt=O({ref:$,role:"presentation","aria-hidden":"true",className:"p-hidden-accessible p-hidden-focusable",tabIndex:"0",onFocus:function(e){var t=e.relatedTarget===Q.current?h.getLastFocusableElement(W.current,':not([data-p-hidden-focusable="true"])'):Q.current;h.focus(t)},"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0},ae("hiddenLastFocusableEl"));return e.createElement(e.Fragment,null,e.createElement("div",Ot,yt,gt,ht,Et,wt,e.createElement(J,C({hostName:"Dropdown",ref:W,visibleOptions:dt,virtualScrollerRef:ee},x,{appendTo:le,cx:ue,filterValue:F,focusedOptionIndex:V,getOptionGroupChildren:rt,getOptionGroupLabel:function(e){return y.resolveFieldData(e,x.optionGroupLabel)},getOptionGroupRenderKey:function(e){return y.resolveFieldData(e,x.optionGroupLabel)},getOptionLabel:Qe,getOptionRenderKey:function(e){return x.dataKey?y.resolveFieldData(e,x.dataKey):Qe(e)},getSelectedOptionIndex:_e,hasFilter:oe,in:_,isOptionDisabled:nt,isSelected:ze,onClick:function(e){v.emit("overlay-click",{originalEvent:e,target:z.current})},onEnter:function(e){E.set("overlay",W.current,I&&I.autoZIndex||t.autoZIndex,I&&I.zIndex.overlay||t.zIndex.overlay),h.addStyles(W.current,{position:"absolute",top:"0",left:"0"}),$e(),e&&e()},onEntered:function(e){e&&e(),se(),x.onShow&&x.onShow()},onExit:function(){de()},onExited:function(){x.filter&&x.resetFilterOnHide&&Je(),E.clear(W.current),x.onHide&&x.onHide()},onFilterClearIconClick:function(e){Je(e)},onFilterInputChange:function(e){var t=e.target.value;L(t),x.onFilter&&x.onFilter({originalEvent:e,filter:t})},onFilterInputKeyDown:function(e){switch(e.code){case"ArrowDown":De(e);break;case"ArrowUp":Le(e);break;case"ArrowLeft":case"ArrowRight":Ne(e,!0);break;case"Escape":case"Enter":Me(e),e.preventDefault()}},onOptionClick:function(e){e.option.disabled||(Be(e),h.focus(Q.current)),Ze()},ptm:ae,resetFilter:Je,setFocusedOptionIndex:H,firstFocusableElement:e.createElement("span",It),lastFocusableElement:e.createElement("span",xt),sx:ce}))),mt&&e.createElement(b,C({target:z,content:x.tooltip,pt:ae("tooltip")},x.tooltipOptions)))})));z.displayName="Dropdown";export{z as Dropdown};
|
|
1
|
+
import*as e from"react";import t,{PrimeReactContext as n,localeOption as r,FilterService as o}from"primereact/api";import{ComponentBase as l,useHandleStyle as i}from"primereact/componentbase";import{useMergeProps as a,useOverlayListener as u,useMountEffect as c,useUpdateEffect as p,useUnmountEffect as s}from"primereact/hooks";import{ChevronDownIcon as d}from"primereact/icons/chevrondown";import{SpinnerIcon as f}from"primereact/icons/spinner";import{TimesIcon as m}from"primereact/icons/times";import{OverlayService as v}from"primereact/overlayservice";import{Tooltip as b}from"primereact/tooltip";import{classNames as g,ObjectUtils as h,DomHandler as y,IconUtils as w,ZIndexUtils as E}from"primereact/utils";import{CSSTransition as O}from"primereact/csstransition";import{SearchIcon as I}from"primereact/icons/search";import{Portal as x}from"primereact/portal";import{VirtualScroller as S}from"primereact/virtualscroller";import{Ripple as F}from"primereact/ripple";import{CheckIcon as k}from"primereact/icons/check";import{IconBase as C}from"primereact/iconbase";function D(){return D=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},D.apply(this,arguments)}function L(e){return L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},L(e)}function N(e,t){if("object"!==L(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==L(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function R(e){var t=N(e,"string");return"symbol"===L(t)?t:String(t)}function P(e,t,n){return(t=R(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function T(e){if(Array.isArray(e))return e}function j(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,i,a=[],u=!0,c=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=l.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){c=!0,o=e}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw o}}return a}}function G(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function M(e,t){if(e){if("string"==typeof e)return G(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?G(e,t):void 0}}function A(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function K(e,t){return T(e)||j(e,t)||M(e,t)||A()}var V=l.extend({defaultProps:{__TYPE:"Dropdown",__parentMetadata:null,appendTo:null,ariaLabel:null,ariaLabelledBy:null,autoFocus:!1,children:void 0,className:null,clearIcon:null,dataKey:null,disabled:!1,dropdownIcon:null,editable:!1,emptyFilterMessage:null,highlightOnSelect:!0,checkmark:!1,emptyMessage:null,filter:!1,filterBy:null,filterClearIcon:null,filterIcon:null,filterInputAutoFocus:!0,filterLocale:void 0,filterMatchMode:"contains",filterPlaceholder:null,filterTemplate:null,focusInputRef:null,id:null,inputId:null,inputRef:null,invalid:!1,itemTemplate:null,loading:!1,loadingIcon:null,maxLength:null,name:null,onBlur:null,onChange:null,onContextMenu:null,onFilter:null,onFocus:null,onHide:null,onMouseDown:null,onShow:null,optionDisabled:null,optionGroupChildren:"items",selectOnFocus:!1,autoOptionFocus:!1,optionGroupLabel:null,optionGroupTemplate:null,optionLabel:null,optionValue:null,options:null,panelClassName:null,panelFooterTemplate:null,panelStyle:null,placeholder:null,required:!1,resetFilterOnHide:!1,scrollHeight:"200px",showClear:!1,showFilterClear:!1,showOnFocus:!1,style:null,tabIndex:null,tooltip:null,tooltipOptions:null,transitionOptions:null,value:null,valueTemplate:null,virtualScrollerOptions:null},css:{classes:{root:function(e){var t=e.props,n=e.focusedState,r=e.overlayVisibleState;return g("p-dropdown p-component p-inputwrapper",{"p-disabled":t.disabled,"p-invalid":t.invalid,"p-focus":n,"p-dropdown-clearable":t.showClear&&!t.disabled,"p-inputwrapper-filled":h.isNotEmpty(t.value),"p-inputwrapper-focus":n||r})},input:function(e){var t=e.props,n=e.label;return t.editable?"p-dropdown-label p-inputtext":g("p-dropdown-label p-inputtext",{"p-placeholder":null===n&&t.placeholder,"p-dropdown-label-empty":null===n&&!t.placeholder})},trigger:"p-dropdown-trigger",emptyMessage:"p-dropdown-empty-message",itemGroup:function(e){var t=e.optionGroupLabel;return g("p-dropdown-item-group",{"p-dropdown-item-empty":!t||0===t.length})},itemGroupLabel:"p-dropdown-item-group-label",dropdownIcon:"p-dropdown-trigger-icon p-clickable",loadingIcon:"p-dropdown-trigger-icon p-clickable",clearIcon:"p-dropdown-clear-icon p-clickable",filterIcon:"p-dropdown-filter-icon",filterClearIcon:"p-dropdown-filter-clear-icon",filterContainer:function(e){return g("p-dropdown-filter-container",{"p-dropdown-clearable-filter":!!e.clearIcon})},filterInput:"p-dropdown-filter p-inputtext p-component",list:function(e){return"p-dropdown-items"},panel:function(e){var n=e.context;return g("p-dropdown-panel p-component",{"p-input-filled":n&&"filled"===n.inputStyle||"filled"===t.inputStyle,"p-ripple-disabled":n&&!1===n.ripple||!1===t.ripple})},item:function(e){var t=e.label;return g("p-dropdown-item",{"p-highlight":e.selected&&e.highlightOnSelect,"p-disabled":e.disabled,"p-focus":e.index===e.focusedOptionIndex,"p-dropdown-item-empty":!t||0===t.length})},itemLabel:"p-dropdown-item-label",checkIcon:"p-dropdown-check-icon",blankIcon:"p-dropdown-blank-icon",wrapper:"p-dropdown-items-wrapper",header:"p-dropdown-header",footer:"p-dropdown-footer",transition:"p-connected-overlay"},styles:"\n@layer primereact {\n .p-dropdown {\n display: inline-flex;\n cursor: pointer;\n position: relative;\n user-select: none;\n }\n \n .p-dropdown-trigger {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n }\n \n .p-dropdown-label {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n flex: 1 1 auto;\n width: 1%;\n text-overflow: ellipsis;\n cursor: pointer;\n }\n \n .p-dropdown-label-empty {\n overflow: hidden;\n visibility: hidden;\n }\n \n input.p-dropdown-label {\n cursor: default;\n }\n \n .p-dropdown .p-dropdown-panel {\n min-width: 100%;\n }\n \n .p-dropdown-panel {\n position: absolute;\n top: 0;\n left: 0;\n }\n \n .p-dropdown-items-wrapper {\n overflow: auto;\n }\n \n .p-dropdown-item {\n cursor: pointer;\n font-weight: normal;\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n }\n \n .p-dropdown-items {\n margin: 0;\n padding: 0;\n list-style-type: none;\n }\n \n .p-dropdown-filter {\n width: 100%;\n }\n \n .p-dropdown-filter-container {\n position: relative;\n }\n \n .p-dropdown-clear-icon,\n .p-dropdown-filter-icon,\n .p-dropdown-filter-clear-icon {\n position: absolute;\n top: 50%;\n margin-top: -.5rem;\n }\n \n .p-fluid .p-dropdown {\n display: flex;\n }\n \n .p-fluid .p-dropdown .p-dropdown-label {\n width: 1%;\n }\n}\n",inlineStyles:{wrapper:function(e){return{maxHeight:e.props.scrollHeight||"auto"}},panel:function(e){}}}}),B=e.memo(e.forwardRef((function(t,n){var r=C.getPTI(t);return e.createElement("svg",D({ref:n,width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},r),e.createElement("rect",{width:"1",height:"1",fill:"currentColor",fillOpacity:"0"}))})));B.displayName="BlankIcon";var H=e.memo((function(t){var n=a(),r=t.ptm,o=t.cx,l=t.selected,i=t.disabled,u=t.option,c=t.label,p=t.index,s=t.focusedOptionIndex,d=t.checkmark,f=t.highlightOnSelect,m=function(e){return r(e,{context:{selected:l,disabled:i}})},v=t.template?h.getJSXElement(t.template,t.option):t.label,b=n({role:"option",key:t.label,className:g(u.className,o("item",{selected:l,disabled:i,label:c,index:p,focusedOptionIndex:s,highlightOnSelect:f})),style:t.style,onClick:function(e){return n=e,void(t.onClick&&t.onClick({originalEvent:n,option:u}));var n},"aria-label":c,"aria-selected":l,"data-p-highlight":l,"data-p-focused":s===p,"data-p-disabled":i},m("item")),y=n({className:o("itemLabel")},m("itemLabel"));return e.createElement("li",b,d&&function(){if(l){var t=n({className:o("checkIcon")},m("checIcon"));return e.createElement(k,t)}var r=n({className:o("blankIcon")},m("blankIcon"));return e.createElement(B,r)}(),e.createElement("span",y,v),e.createElement(F,null))}));function J(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function X(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?J(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}H.displayName="DropdownItem";var _=e.memo(e.forwardRef((function(t,o){var l=a(),i=t.ptm,u=t.cx,c=t.sx,p=e.useContext(n);e.useRef(null);var s,d,f,v,b,E=e.useRef(null),F=!(t.visibleOptions&&t.visibleOptions.length)&&t.hasFilter,k={filter:function(e){return R(e)},reset:function(){return t.resetFilter()}},C=function(e,n){return i(e,X({hostName:t.hostName},n))},L=function(){t.onEnter((function(){if(t.virtualScrollerRef.current){var e=t.getSelectedOptionIndex();-1!==e&&setTimeout((function(){return t.virtualScrollerRef.current.scrollToIndex(e)}),0)}}))},N=function(){t.onEntered((function(){t.filter&&t.filterInputAutoFocus&&y.focus(E.current,!1)}))},R=function(e){t.virtualScrollerRef.current&&t.virtualScrollerRef.current.scrollToIndex(0),t.onFilterInputChange&&t.onFilterInputChange(e)},P=function(){if(t.panelFooterTemplate){var n=h.getJSXElement(t.panelFooterTemplate,t,t.onOverlayHide),r=l({className:u("footer")},C("footer"));return e.createElement("div",r,n)}return null},T=function(n,r){return t.getOptionGroupChildren(n).map((function(n,o){var l=t.getOptionLabel(n),a=o+"_"+t.getOptionRenderKey(n),c=t.isOptionDisabled(n);return e.createElement(H,{key:a,index:o,focusedOptionIndex:t.focusedOptionIndex,label:l,option:n,style:r,template:t.itemTemplate,selected:t.isSelected(n),highlightOnSelect:t.highlightOnSelect,disabled:c,onClick:t.onOptionClick,ptm:i,cx:u,checkmark:t.checkmark})}))},j=function(n,o){var i=h.getJSXElement(n,t)||r(o?"emptyFilterMessage":"emptyMessage"),a=l({className:u("emptyMessage")},C("emptyMessage"));return e.createElement("li",a,i)},G=function(n,r){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a={height:o.props?o.props.itemSize:void 0};if(a=X(X({},a),n.style),t.optionGroupLabel){var c=t.optionGroupLabel,p=t.optionGroupTemplate?h.getJSXElement(t.optionGroupTemplate,n,r):t.getOptionGroupLabel(n),s=T(n,a),d=r+"_"+t.getOptionGroupRenderKey(n),f=l({className:u("itemGroup",{optionGroupLabel:c}),style:a,"data-p-highlight":t.selected},C("itemGroup")),m=l({className:u("itemGroupLabel")},C("itemGroupLabel"));return e.createElement(e.Fragment,{key:d},e.createElement("li",f,e.createElement("span",m,p)),s)}var v=t.getOptionLabel(n),b=r+"_"+t.getOptionRenderKey(n),g=t.isOptionDisabled(n);return e.createElement(H,{key:b,label:v,index:r,focusedOptionIndex:t.focusedOptionIndex,option:n,style:a,template:t.itemTemplate,selected:t.isSelected(n),highlightOnSelect:t.highlightOnSelect,disabled:g,onClick:t.onOptionClick,ptm:i,cx:u,checkmark:t.checkmark})},M=function(){if(t.showFilterClear&&t.filterValue){var n=r("clear"),o=l({className:u("filterClearIcon"),"aria-label":n,onClick:function(){return t.onFilterClearIconClick((function(){return y.focus(E.current)}))}},C("filterClearIcon"));return w.getJSXIcon(t.filterClearIcon||e.createElement(m,o),X({},o),{props:t})}return null},A=function(){if(t.filter){var n=M(),r=l({className:u("filterIcon")},C("filterIcon")),o=w.getJSXIcon(t.filterIcon||e.createElement(I,r),X({},r),{props:t}),i=l({className:u("filterContainer",{clearIcon:n})},C("filterContainer")),a=l({ref:E,type:"text",autoComplete:"off",className:u("filterInput"),placeholder:t.filterPlaceholder,onKeyDown:t.onFilterInputKeyDown,onChange:function(e){return R(e)},value:t.filterValue},C("filterInput")),c=e.createElement("div",i,e.createElement("input",a),n,o);if(t.filterTemplate){var p={className:g("p-dropdown-filter-container",{"p-dropdown-clearable-filter":!!n}),element:c,filterOptions:k,filterInputKeyDown:t.onFilterInputKeyDown,filterInputChange:R,filterIconClassName:"p-dropdown-filter-icon",clearIcon:n,props:t};c=h.getJSXElement(t.filterTemplate,p)}var s=l({className:u("header")},C("header"));return e.createElement("div",s,c)}return null},K=function(){if(t.virtualScrollerOptions){var n=X(X({},t.virtualScrollerOptions),{style:X(X({},t.virtualScrollerOptions.style),{height:t.scrollHeight}),className:g("p-dropdown-items-wrapper",t.virtualScrollerOptions.className),items:t.visibleOptions,autoSize:!0,onLazyLoad:function(e){return t.virtualScrollerOptions.onLazyLoad(X(X({},e),{filter:t.filterValue}))},itemTemplate:function(e,t){return e&&G(e,t.index,t)},contentTemplate:function(n){var r=F?j(t.hasFilter?t.emptyFilterMessage:t.emptyMessage):n.children,o=l({ref:n.contentRef,style:n.style,className:g(n.className,u("list",{virtualScrollerProps:t.virtualScrollerOptions})),role:"listbox"},C("list"));return e.createElement("ul",o,r)}});return e.createElement(S,D({ref:t.virtualScrollerRef},n,{pt:i("virtualScroller")}))}var r=h.isNotEmpty(t.visibleOptions)?t.visibleOptions.map(G):t.hasFilter?j(t.emptyFilterMessage,!0):j(t.emptyMessage),o=l({className:u("wrapper"),style:c("wrapper")},C("wrapper")),a=l({className:u("list"),role:"listbox"},C("list"));return e.createElement("div",o,e.createElement("ul",a,r))},V=(s=A(),d=K(),f=P(),v=l({className:g(t.panelClassName,u("panel",{context:p})),style:c("panel"),onClick:t.onClick},C("panel")),b=l({classNames:u("transition"),in:t.in,timeout:{enter:120,exit:100},options:t.transitionOptions,unmountOnExit:!0,onEnter:L,onEntered:N,onExit:t.onExit,onExited:t.onExited},C("transition")),e.createElement(O,D({nodeRef:o},b),e.createElement("div",D({ref:o},v),t.firstFocusableElement,s,d,f,t.lastFocusableElement)));return e.createElement(x,{element:V,appendTo:t.appendTo})})));function U(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=q(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,i=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){a=!0,l=e},f:function(){try{i||null==n.return||n.return()}finally{if(a)throw l}}}}function q(e,t){if(e){if("string"==typeof e)return z(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?z(e,t):void 0}}function z(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function W(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Z(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?W(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):W(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}_.displayName="DropdownPanel";var $=e.memo(e.forwardRef((function(r,l){var O=a(),I=e.useContext(n),x=V.getProps(r,I),S=K(e.useState(""),2),F=S[0],k=S[1],C=K(e.useState(!1),2),N=C[0],R=C[1],T=K(e.useState(-1),2),j=T[0],G=T[1],M=K(e.useState(!1),2),A=M[0],B=M[1],H=e.useRef(!1),J=e.useRef(null),X=e.useRef(null),q=e.useRef(null),z=e.useRef(null),W=e.useRef(x.inputRef),$=e.useRef(x.focusInputRef),Y=e.useRef(null),Q=e.useRef(null),ee=e.useRef(null);e.useRef(null);var te=x.virtualScrollerOptions&&x.virtualScrollerOptions.lazy,ne=h.isNotEmpty(F),re=x.appendTo||I&&I.appendTo||t.appendTo,oe=V.setMetaData(Z(Z({props:x},x.__parentMetadata),{},{state:{filter:F,focused:N,overlayVisible:A}})),le=oe.ptm,ie=oe.cx,ae=oe.sx;i(V.css.styles,oe.isUnstyled,{name:"dropdown"});var ue=K(u({target:J,overlay:X,listener:function(e,t){t.valid&&("outside"===t.type?!se(e)&&ze():ze())},when:A}),2),ce=ue[0],pe=ue[1],se=function(e){return y.isAttributeEquals(e.target,"data-pc-section","clearicon")||y.isAttributeEquals(e.target.parentElement||e.target,"data-pc-section","filterclearicon")},de=function(e){x.showOnFocus&&!A&&qe(),R(!0),x.onFocus&&x.onFocus(e)},fe=function(e){R(!1),x.onBlur&&setTimeout((function(){var t=W.current?W.current.value:void 0;x.onBlur({originalEvent:e.originalEvent,value:t,stopPropagation:function(){e.originalEvent.stopPropagation()},preventDefault:function(){e.originalEvent.preventDefault()},target:{name:x.name,id:x.id,value:t}})}),200)},me=function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=Ye(t);He({originalEvent:e,option:r}),n&&ze()},ve=function(e){if(x.disabled||y.isAndroid())e.preventDefault();else{var t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":Fe(e);break;case"ArrowUp":ke(e);break;case"ArrowLeft":case"ArrowRight":Ce(e,x.editable);break;case"Home":De(e);break;case"End":Le(e);break;case"PageDown":Re(e);break;case"PageUp":Ne(e);break;case"Space":Pe(e,x.editable);break;case"NumpadEnter":case"Enter":Te(e);break;case"Escape":je(e);break;case"Tab":Ge(e);break;case"Backspace":Me(e,x.editable);break;case"ShiftLeft":case"ShiftRight":break;default:!t&&h.isPrintableCharacter(e.key)&&(!A&&!x.editable&&qe(),!x.editable&&Oe(e,e.key))}H.current=!1}},be=function(e){var t;return ge(e)&&(null===(t=$e(e))||void 0===t?void 0:t.toLocaleLowerCase(x.filterLocale).startsWith(ee.current.toLocaleLowerCase(x.filterLocale)))},ge=function(e){return h.isNotEmpty(e)&&!(et(e)||Qe(e))},he=function(){return h.isNotEmpty(x.value)},ye=function(e){return ge(e)&&Ue(e)},we=function(){return he?ut.findIndex((function(e){return ye(e)})):-1},Ee=function(){var e=we();return e<0?Ie():e},Oe=function(e,t){ee.current=(ee.current||"")+t;var n=-1,r=!1;return h.isNotEmpty(ee.current)&&(-1!==(n=-1!==j?-1===(n=ut.slice(j).findIndex((function(e){return be(e)})))?ut.slice(0,j).findIndex((function(e){return be(e)})):n+j:ut.findIndex((function(e){return be(e)})))&&(r=!0),-1===n&&-1===j&&(n=Ee()),-1!==n&&Se(e,n)),Q.current&&clearTimeout(Q.current),Q.current=setTimeout((function(){ee.current="",Q.current=null}),500),r},Ie=function(){return ut.findIndex((function(e){return ge(e)}))},xe=function(){return h.findLastIndex(ut,(function(e){return ge(e)}))},Se=function(e,t){j!==t&&(G(t),x.selectOnFocus&&me(e,ut[t],!1))},Fe=function(e){if(A){var t=-1!==j?(r=(n=j)<ut.length-1?ut.slice(n+1).findIndex((function(e){return ge(e)})):-1)>-1?r+n+1:n:H.current?Ie():Ee();Se(e,t)}else qe(),x.editable&&Se(e,we());var n,r;e.preventDefault()},ke=function(e){var t,n,r;if(e.altKey&&!(arguments.length>1&&void 0!==arguments[1]&&arguments[1]))-1!==j&&me(e,ut[j]),state.overlayVisible&&ze(),e.preventDefault();else{var o=-1!==j?(r=(n=j)>0?h.findLastIndex(ut.slice(0,n),(function(e){return ge(e)})):-1)>-1?r:n:H.current?xe():(t=we())<0?xe():t;Se(e,o),!A&&qe(),e.preventDefault()}},Ce=function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]&&G(-1)},De=function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]?(e.currentTarget.setSelectionRange(0,0),G(-1)):(Se(e,Ie()),!A&&qe()),e.preventDefault()},Le=function(e){if(arguments.length>1&&void 0!==arguments[1]&&arguments[1]){var t=e.currentTarget,n=t.value.length;t.setSelectionRange(n,n),G(-1)}else Se(e,xe()),!A&&qe();e.preventDefault()},Ne=function(e){e.preventDefault()},Re=function(e){e.preventDefault()},Pe=function(e){!(arguments.length>1&&void 0!==arguments[1]&&arguments[1])&&Te(e)},Te=function(e){A?(-1!==j&&me(e,ut[j]),ze()):(G(-1),Fe(e)),e.preventDefault()},je=function(e){A&&ze(),e.preventDefault()},Ge=function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]||(!A||y.getFocusableElements(X.current,':not([data-p-hidden-focusable="true"])').length>0?(-1!==j&&me(e,ut[j]),A&&ze()):(y.focus(q.current),e.preventDefault()))},Me=function(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]&&!A&&qe()},Ae=function(e){var t=null;e.target.value&&(t=ut.findIndex((function(t){return $e(t).toLocaleLowerCase().startsWith(e.target.value.toLocaleLowerCase())}))),G(t),x.onChange&&x.onChange({originalEvent:e.originalEvent,value:e.target.value,stopPropagation:function(){e.originalEvent.stopPropagation()},preventDefault:function(){e.originalEvent.preventDefault()},target:{name:x.name,id:x.id,value:e.target.value}})},Ke=function(e){R(!0),ze(),x.onFocus&&x.onFocus(e)},Ve=function(e){k(""),x.onFilter&&x.onFilter({filter:""}),e&&e()},Be=function(e){x.onChange&&x.onChange({originalEvent:e,value:void 0,stopPropagation:function(){e.stopPropagation()},preventDefault:function(){e.preventDefault()},target:{name:x.name,id:x.id,value:void 0}}),x.filter&&Ve(),Ze()},He=function(e){if(ct!==e.option){Ze(e.option),G(-1);var t=Ye(e.option),n=_e(e.option,ut);x.onChange&&x.onChange({originalEvent:e.originalEvent,value:t,stopPropagation:function(){e.originalEvent.stopPropagation()},preventDefault:function(){e.originalEvent.preventDefault()},target:{name:x.name,id:x.id,value:t}}),Se(e.originalEvent,n)}},Je=function(e){if(e=e||ut,null!=x.value&&e){if(!x.optionGroupLabel)return _e(x.value,e);for(var t=0;t<e.length;t++){var n=_e(x.value,tt(e[t]));if(-1!==n)return{group:t,option:n}}}return-1},Xe=function(){return x.optionValue?null:x.dataKey},_e=function(e,t){var n=Xe();return t.findIndex((function(t){return h.equals(e,Ye(t),n)}))},Ue=function(e){return h.equals(x.value,Ye(e),Xe())},qe=function(){G(-1!==j?j:x.autoOptionFocus?Ee():x.editable?-1:we()),B(!0)},ze=function(){B(!1),H.current=!1},We=function(){y.alignOverlay(X.current,W.current.parentElement,x.appendTo||I&&I.appendTo||t.appendTo)},Ze=function(e){W.current&&(W.current.value=e?$e(e):x.value||"",$.current&&($.current.value=W.current.value))},$e=function(e){return x.optionLabel?h.resolveFieldData(e,x.optionLabel):e&&void 0!==e.label?e.label:e},Ye=function(e){return x.optionValue?h.resolveFieldData(e,x.optionValue):e&&void 0!==e.value?e.value:e},Qe=function(e){return x.optionGroupLabel&&e.optionGroup&&e.group},et=function(e){return x.optionDisabled?h.isFunction(x.optionDisabled)?x.optionDisabled(e):h.resolveFieldData(e,x.optionDisabled):!(!e||void 0===e.disabled)&&e.disabled},tt=function(e){return h.resolveFieldData(e,x.optionGroupChildren)},nt=function(){if(x.editable&&W.current){var e=(ct?$e(ct):null)||x.value||"";W.current.value=e,$.current&&($.current.value=e)}};e.useImperativeHandle(l,(function(){return{props:x,show:qe,hide:ze,clear:Be,focus:function(){return y.focus($.current)},getElement:function(){return J.current},getOverlay:function(){return X.current},getInput:function(){return W.current},getFocusInput:function(){return $.current},getVirtualScroller:function(){return Y.current}}})),e.useEffect((function(){h.combinedRefs(W,x.inputRef),h.combinedRefs($,x.focusInputRef)}),[W,x.inputRef,$,x.focusInputRef]),c((function(){x.autoFocus&&y.focus($.current,x.autoFocus),We()})),p((function(){var e;A&&x.value&&(e=y.findSingle(X.current,'li[data-p-highlight="true"]'))&&e.scrollIntoView&&e.scrollIntoView({block:"nearest",inline:"nearest"})}),[A,x.value]),p((function(){A&&F&&x.filter&&We()}),[A,F,x.filter]),p((function(){!F||x.options&&0!==x.options.length||k(""),nt(),W.current&&(W.current.selectedIndex=1)})),s((function(){E.clear(X.current)}));var rt,ot,lt,it,at,ut=function(){if(ne&&!te){var e=F.trim().toLocaleLowerCase(x.filterLocale),t=x.filterBy?x.filterBy.split(","):[x.optionLabel||"label"];if(x.optionGroupLabel){var n,r=[],l=U(x.options);try{for(l.s();!(n=l.n()).done;){var i=n.value,a=o.filter(tt(i),t,e,x.filterMatchMode,x.filterLocale);a&&a.length&&r.push(Z(Z({},i),P({},"".concat(x.optionGroupChildren),a)))}}catch(e){l.e(e)}finally{l.f()}return r}return o.filter(x.options,t,e,x.filterMatchMode,x.filterLocale)}return x.options}(),ct=-1!==(rt=Je(x.options))?x.optionGroupLabel?tt(x.options[rt.group])[rt.option]:x.options[rt]:null,pt=h.isNotEmpty(x.tooltip),st=V.getOtherProps(x),dt=h.reduceKeys(st,y.ARIA_PROPS),ft=function(){var t={value:"",label:x.placeholder};if(ct){var n=Ye(ct);t={value:"object"===L(n)?x.options.findIndex((function(e){return e===n})):n,label:$e(ct)}}var r=O({className:"p-hidden-accessible p-dropdown-hidden-select"},le("hiddenSelectedMessage")),o=O({ref:W,required:x.required,defaultValue:t.value,name:x.name,tabIndex:-1,"aria-hidden":"true"},le("select")),l=O({value:t.value},le("option"));return e.createElement("div",r,e.createElement("select",o,e.createElement("option",l,t.label)))}(),mt=function(){var t=h.isNotEmpty(ct)?$e(ct):null;x.editable&&(t=t||x.value||"");var n=O({className:"p-hidden-accessible"},le("hiddenSelectedMessage")),r=O(Z({ref:$,id:x.inputId,defaultValue:t,type:"text",readOnly:!0,"aria-haspopup":"listbox",onFocus:de,onBlur:fe,onKeyDown:ve,disabled:x.disabled,tabIndex:x.disabled?-1:x.tabIndex||0},dt),le("input"));return e.createElement("div",n,e.createElement("input",r))}(),vt=function(){var t=h.isNotEmpty(ct)?$e(ct):null;if(x.editable){var n=O(Z({ref:W,type:"text",defaultValue:t||x.value||"",className:ie("input",{label:t}),disabled:x.disabled,placeholder:x.placeholder,maxLength:x.maxLength,onInput:Ae,onFocus:Ke,onKeyDown:ve,onBlur:fe,tabIndex:x.disabled?-1:x.tabIndex||0,"aria-haspopup":"listbox"},dt),le("input"));return e.createElement("input",n)}var r=x.valueTemplate?h.getJSXElement(x.valueTemplate,ct,x):t||x.placeholder||"empty",o=O({ref:W,className:ie("input",{label:t}),tabIndex:"-1"},le("input"));return e.createElement("span",o,r)}(),bt=x.loading?(ot=O({className:ie("loadingIcon"),"data-pr-overlay-visible":A},le("loadingIcon")),lt=w.getJSXIcon(x.loadingIcon||e.createElement(f,{spin:!0}),Z({},ot),{props:x}),it=x.placeholder||x.ariaLabel,at=O({className:ie("trigger"),role:"button","aria-haspopup":"listbox","aria-expanded":A,"aria-label":it},le("trigger")),e.createElement("div",at,lt)):function(){var t=O({className:ie("dropdownIcon"),"data-pr-overlay-visible":A},le("dropdownIcon")),n=w.getJSXIcon(x.dropdownIcon||e.createElement(d,t),Z({},t),{props:x}),r=x.placeholder||x.ariaLabel,o=O({className:ie("trigger"),role:"button","aria-haspopup":"listbox","aria-expanded":A,"aria-label":r},le("trigger"));return e.createElement("div",o,n)}(),gt=function(){if(null!=x.value&&x.showClear&&!x.disabled){var t=O({className:ie("clearIcon"),onPointerUp:Be},le("clearIcon"));return w.getJSXIcon(x.clearIcon||e.createElement(m,t),Z({},t),{props:x})}return null}(),ht=O({id:x.id,ref:J,className:g(x.className,ie("root",{focusedState:N,overlayVisibleState:A})),style:x.style,onClick:function(e){return t=e,void(x.disabled||x.loading||(x.onClick&&x.onClick(t),t.defaultPrevented||se(t)||"INPUT"===t.target.tagName||(X.current&&X.current&&X.current.contains(t.target)||(y.focus($.current),A?ze():qe()),H.current=!0)));var t},onMouseDown:x.onMouseDown,onContextMenu:x.onContextMenu,onFocus:function(){x.editable&&!A&&!1===H.current&&y.focus(W.current)},"data-p-disabled":x.disabled,"data-p-focus":N},st,le("root")),yt=O({ref:q,role:"presentation","aria-hidden":"true",className:"p-hidden-accessible p-hidden-focusable",tabIndex:"0",onFocus:function(e){var t=e.relatedTarget===$.current?y.getFirstFocusableElement(X.current,':not([data-p-hidden-focusable="true"])'):$.current;y.focus(t)},"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0},le("hiddenFirstFocusableEl")),wt=O({ref:z,role:"presentation","aria-hidden":"true",className:"p-hidden-accessible p-hidden-focusable",tabIndex:"0",onFocus:function(e){var t=e.relatedTarget===$.current?y.getLastFocusableElement(X.current,':not([data-p-hidden-focusable="true"])'):$.current;y.focus(t)},"data-p-hidden-accessible":!0,"data-p-hidden-focusable":!0},le("hiddenLastFocusableEl"));return e.createElement(e.Fragment,null,e.createElement("div",ht,mt,ft,vt,gt,bt,e.createElement(_,D({hostName:"Dropdown",ref:X,visibleOptions:ut,virtualScrollerRef:Y},x,{appendTo:re,cx:ie,filterValue:F,focusedOptionIndex:j,getOptionGroupChildren:tt,getOptionGroupLabel:function(e){return h.resolveFieldData(e,x.optionGroupLabel)},getOptionGroupRenderKey:function(e){return h.resolveFieldData(e,x.optionGroupLabel)},getOptionLabel:$e,getOptionRenderKey:function(e){return x.dataKey?h.resolveFieldData(e,x.dataKey):$e(e)},getSelectedOptionIndex:Je,hasFilter:ne,in:A,isOptionDisabled:et,isSelected:Ue,onClick:function(e){v.emit("overlay-click",{originalEvent:e,target:J.current})},onEnter:function(e){E.set("overlay",X.current,I&&I.autoZIndex||t.autoZIndex,I&&I.zIndex.overlay||t.zIndex.overlay),y.addStyles(X.current,{position:"absolute",top:"0",left:"0"}),We(),e&&e()},onEntered:function(e){e&&e(),ce(),x.onShow&&x.onShow()},onExit:function(){pe()},onExited:function(){x.filter&&x.resetFilterOnHide&&Ve(),E.clear(X.current),x.onHide&&x.onHide()},onFilterClearIconClick:function(e){Ve(e)},onFilterInputChange:function(e){var t=e.target.value;k(t),x.onFilter&&x.onFilter({originalEvent:e,filter:t})},onFilterInputKeyDown:function(e){switch(e.code){case"ArrowDown":Fe(e);break;case"ArrowUp":ke(e);break;case"ArrowLeft":case"ArrowRight":Ce(e,!0);break;case"Escape":case"Enter":Te(e),e.preventDefault()}},onOptionClick:function(e){e.option.disabled||(He(e),y.focus($.current)),ze()},ptm:le,resetFilter:Ve,setFocusedOptionIndex:G,firstFocusableElement:e.createElement("span",yt),lastFocusableElement:e.createElement("span",wt),sx:ae}))),pt&&e.createElement(b,D({target:J,content:x.tooltip,pt:le("tooltip")},x.tooltipOptions)))})));$.displayName="Dropdown";export{$ as Dropdown};
|