primereact 10.2.1 → 10.3.1
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/accordion/accordion.cjs.js +83 -8
- package/accordion/accordion.cjs.min.js +1 -1
- package/accordion/accordion.d.ts +35 -0
- package/accordion/accordion.esm.js +85 -10
- package/accordion/accordion.esm.min.js +1 -1
- package/accordion/accordion.js +83 -8
- package/accordion/accordion.min.js +1 -1
- package/api/api.cjs.js +63 -33
- package/api/api.cjs.min.js +1 -1
- package/api/api.d.ts +24 -246
- package/api/api.esm.js +63 -33
- package/api/api.esm.min.js +1 -1
- package/api/api.js +63 -33
- package/api/api.min.js +1 -1
- package/autocomplete/autocomplete.cjs.js +3 -2
- package/autocomplete/autocomplete.cjs.min.js +1 -1
- package/autocomplete/autocomplete.d.ts +6 -1
- package/autocomplete/autocomplete.esm.js +3 -2
- package/autocomplete/autocomplete.esm.min.js +1 -1
- package/autocomplete/autocomplete.js +3 -2
- package/autocomplete/autocomplete.min.js +1 -1
- package/blockui/blockui.cjs.js +8 -5
- package/blockui/blockui.cjs.min.js +1 -1
- package/blockui/blockui.esm.js +8 -5
- package/blockui/blockui.esm.min.js +1 -1
- package/blockui/blockui.js +8 -5
- package/blockui/blockui.min.js +1 -1
- package/breadcrumb/breadcrumb.cjs.js +12 -6
- package/breadcrumb/breadcrumb.cjs.min.js +1 -1
- package/breadcrumb/breadcrumb.esm.js +12 -6
- package/breadcrumb/breadcrumb.esm.min.js +1 -1
- package/breadcrumb/breadcrumb.js +12 -6
- package/breadcrumb/breadcrumb.min.js +1 -1
- package/calendar/calendar.cjs.js +71 -37
- package/calendar/calendar.cjs.min.js +1 -1
- package/calendar/calendar.d.ts +3 -5
- package/calendar/calendar.esm.js +71 -37
- package/calendar/calendar.esm.min.js +1 -1
- package/calendar/calendar.js +71 -37
- package/calendar/calendar.min.js +1 -1
- package/carousel/carousel.cjs.js +103 -9
- package/carousel/carousel.cjs.min.js +1 -1
- package/carousel/carousel.esm.js +104 -10
- package/carousel/carousel.esm.min.js +1 -1
- package/carousel/carousel.js +103 -9
- package/carousel/carousel.min.js +1 -1
- package/cascadeselect/cascadeselect.cjs.js +64 -23
- package/cascadeselect/cascadeselect.cjs.min.js +1 -1
- package/cascadeselect/cascadeselect.d.ts +27 -4
- package/cascadeselect/cascadeselect.esm.js +65 -24
- package/cascadeselect/cascadeselect.esm.min.js +1 -1
- package/cascadeselect/cascadeselect.js +65 -25
- package/cascadeselect/cascadeselect.min.js +1 -1
- package/checkbox/checkbox.cjs.js +25 -25
- package/checkbox/checkbox.cjs.min.js +1 -1
- package/checkbox/checkbox.esm.js +25 -25
- package/checkbox/checkbox.esm.min.js +1 -1
- package/checkbox/checkbox.js +26 -26
- package/checkbox/checkbox.min.js +1 -1
- package/chip/chip.cjs.js +5 -2
- package/chip/chip.cjs.min.js +1 -1
- package/chip/chip.d.ts +17 -2
- package/chip/chip.esm.js +5 -2
- package/chip/chip.esm.min.js +1 -1
- package/chip/chip.js +5 -2
- package/chip/chip.min.js +1 -1
- package/colorpicker/colorpicker.d.ts +1 -1
- package/componentbase/componentbase.cjs.js +49 -8
- package/componentbase/componentbase.cjs.min.js +1 -1
- package/componentbase/componentbase.esm.js +50 -9
- package/componentbase/componentbase.esm.min.js +1 -1
- package/componentbase/componentbase.js +49 -8
- package/componentbase/componentbase.min.js +1 -1
- package/confirmdialog/confirmdialog.cjs.js +30 -22
- package/confirmdialog/confirmdialog.cjs.min.js +1 -1
- package/confirmdialog/confirmdialog.d.ts +19 -3
- package/confirmdialog/confirmdialog.esm.js +30 -22
- package/confirmdialog/confirmdialog.esm.min.js +1 -1
- package/confirmdialog/confirmdialog.js +30 -22
- package/confirmdialog/confirmdialog.min.js +1 -1
- package/confirmpopup/confirmpopup.cjs.js +85 -152
- package/confirmpopup/confirmpopup.cjs.min.js +1 -1
- package/confirmpopup/confirmpopup.d.ts +40 -1
- package/confirmpopup/confirmpopup.esm.js +88 -155
- package/confirmpopup/confirmpopup.esm.min.js +1 -1
- package/confirmpopup/confirmpopup.js +85 -152
- package/confirmpopup/confirmpopup.min.js +1 -1
- package/contextmenu/contextmenu.cjs.js +641 -99
- package/contextmenu/contextmenu.cjs.min.js +1 -1
- package/contextmenu/contextmenu.d.ts +23 -1
- package/contextmenu/contextmenu.esm.js +641 -99
- package/contextmenu/contextmenu.esm.min.js +1 -1
- package/contextmenu/contextmenu.js +641 -99
- package/contextmenu/contextmenu.min.js +1 -1
- package/core/core.js +1217 -484
- package/core/core.min.js +40 -40
- package/datatable/datatable.cjs.js +30 -26
- package/datatable/datatable.cjs.min.js +1 -1
- package/datatable/datatable.d.ts +5 -4
- package/datatable/datatable.esm.js +30 -26
- package/datatable/datatable.esm.min.js +1 -1
- package/datatable/datatable.js +30 -26
- package/datatable/datatable.min.js +1 -1
- package/dataview/dataview.d.ts +1 -1
- package/dialog/dialog.cjs.js +108 -151
- package/dialog/dialog.cjs.min.js +1 -1
- package/dialog/dialog.d.ts +60 -1
- package/dialog/dialog.esm.js +115 -158
- package/dialog/dialog.esm.min.js +1 -1
- package/dialog/dialog.js +109 -152
- package/dialog/dialog.min.js +1 -1
- package/divider/divider.cjs.js +1 -0
- package/divider/divider.cjs.min.js +1 -1
- package/divider/divider.esm.js +1 -0
- package/divider/divider.esm.min.js +1 -1
- package/divider/divider.js +1 -0
- package/divider/divider.min.js +1 -1
- package/dock/dock.cjs.js +169 -33
- package/dock/dock.cjs.min.js +1 -1
- package/dock/dock.d.ts +15 -0
- package/dock/dock.esm.js +170 -34
- package/dock/dock.esm.min.js +1 -1
- package/dock/dock.js +169 -33
- package/dock/dock.min.js +1 -1
- package/dropdown/dropdown.cjs.js +29 -4
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.d.ts +1 -1
- package/dropdown/dropdown.esm.js +29 -4
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +30 -6
- package/dropdown/dropdown.min.js +1 -1
- package/fieldset/fieldset.cjs.js +12 -5
- package/fieldset/fieldset.cjs.min.js +1 -1
- package/fieldset/fieldset.esm.js +12 -5
- package/fieldset/fieldset.esm.min.js +1 -1
- package/fieldset/fieldset.js +12 -5
- package/fieldset/fieldset.min.js +1 -1
- package/fileupload/fileupload.cjs.js +14 -6
- package/fileupload/fileupload.cjs.min.js +1 -1
- package/fileupload/fileupload.d.ts +17 -1
- package/fileupload/fileupload.esm.js +14 -6
- package/fileupload/fileupload.esm.min.js +1 -1
- package/fileupload/fileupload.js +14 -6
- package/fileupload/fileupload.min.js +1 -1
- package/galleria/galleria.cjs.js +223 -43
- package/galleria/galleria.cjs.min.js +1 -1
- package/galleria/galleria.esm.js +225 -45
- package/galleria/galleria.esm.min.js +1 -1
- package/galleria/galleria.js +223 -43
- package/galleria/galleria.min.js +1 -1
- package/hooks/hooks.cjs.js +219 -78
- package/hooks/hooks.cjs.min.js +1 -1
- package/hooks/hooks.d.ts +8 -4
- package/hooks/hooks.esm.js +219 -80
- package/hooks/hooks.esm.min.js +1 -1
- package/hooks/hooks.js +219 -78
- package/hooks/hooks.min.js +1 -1
- package/icons/arrowdown/index.cjs.js +13 -2
- package/icons/arrowdown/index.cjs.min.js +1 -1
- package/icons/arrowdown/index.esm.js +13 -2
- package/icons/arrowdown/index.esm.min.js +1 -1
- package/icons/arrowdown/index.js +13 -2
- package/icons/arrowdown/index.min.js +1 -1
- package/icons/arrowup/index.cjs.js +13 -2
- package/icons/arrowup/index.cjs.min.js +1 -1
- package/icons/arrowup/index.esm.js +13 -2
- package/icons/arrowup/index.esm.min.js +1 -1
- package/icons/arrowup/index.js +13 -2
- package/icons/arrowup/index.min.js +1 -1
- package/icons/ban/index.cjs.js +13 -2
- package/icons/ban/index.cjs.min.js +1 -1
- package/icons/ban/index.esm.js +13 -2
- package/icons/ban/index.esm.min.js +1 -1
- package/icons/ban/index.js +13 -2
- package/icons/ban/index.min.js +1 -1
- package/icons/download/index.cjs.js +13 -2
- package/icons/download/index.cjs.min.js +1 -1
- package/icons/download/index.esm.js +13 -2
- package/icons/download/index.esm.min.js +1 -1
- package/icons/download/index.js +13 -2
- package/icons/download/index.min.js +1 -1
- package/icons/exclamationtriangle/index.cjs.js +13 -2
- package/icons/exclamationtriangle/index.cjs.min.js +1 -1
- package/icons/exclamationtriangle/index.esm.js +13 -2
- package/icons/exclamationtriangle/index.esm.min.js +1 -1
- package/icons/exclamationtriangle/index.js +13 -2
- package/icons/exclamationtriangle/index.min.js +1 -1
- package/icons/eyeslash/index.cjs.js +13 -2
- package/icons/eyeslash/index.cjs.min.js +1 -1
- package/icons/eyeslash/index.esm.js +13 -2
- package/icons/eyeslash/index.esm.min.js +1 -1
- package/icons/eyeslash/index.js +13 -2
- package/icons/eyeslash/index.min.js +1 -1
- package/icons/filter/index.cjs.js +13 -2
- package/icons/filter/index.cjs.min.js +1 -1
- package/icons/filter/index.esm.js +13 -2
- package/icons/filter/index.esm.min.js +1 -1
- package/icons/filter/index.js +13 -2
- package/icons/filter/index.min.js +1 -1
- package/icons/filterslash/index.cjs.js +13 -2
- package/icons/filterslash/index.cjs.min.js +1 -1
- package/icons/filterslash/index.esm.js +13 -2
- package/icons/filterslash/index.esm.min.js +1 -1
- package/icons/filterslash/index.js +13 -2
- package/icons/filterslash/index.min.js +1 -1
- package/icons/infocircle/index.cjs.js +13 -2
- package/icons/infocircle/index.cjs.min.js +1 -1
- package/icons/infocircle/index.esm.js +13 -2
- package/icons/infocircle/index.esm.min.js +1 -1
- package/icons/infocircle/index.js +13 -2
- package/icons/infocircle/index.min.js +1 -1
- package/icons/pencil/index.cjs.js +13 -2
- package/icons/pencil/index.cjs.min.js +1 -1
- package/icons/pencil/index.esm.js +13 -2
- package/icons/pencil/index.esm.min.js +1 -1
- package/icons/pencil/index.js +13 -2
- package/icons/pencil/index.min.js +1 -1
- package/icons/plus/index.cjs.js +13 -2
- package/icons/plus/index.cjs.min.js +1 -1
- package/icons/plus/index.esm.js +13 -2
- package/icons/plus/index.esm.min.js +1 -1
- package/icons/plus/index.js +13 -2
- package/icons/plus/index.min.js +1 -1
- package/icons/refresh/index.cjs.js +13 -2
- package/icons/refresh/index.cjs.min.js +1 -1
- package/icons/refresh/index.esm.js +13 -2
- package/icons/refresh/index.esm.min.js +1 -1
- package/icons/refresh/index.js +13 -2
- package/icons/refresh/index.min.js +1 -1
- package/icons/search/index.cjs.js +13 -2
- package/icons/search/index.cjs.min.js +1 -1
- package/icons/search/index.esm.js +13 -2
- package/icons/search/index.esm.min.js +1 -1
- package/icons/search/index.js +13 -2
- package/icons/search/index.min.js +1 -1
- package/icons/searchminus/index.cjs.js +13 -2
- package/icons/searchminus/index.cjs.min.js +1 -1
- package/icons/searchminus/index.esm.js +13 -2
- package/icons/searchminus/index.esm.min.js +1 -1
- package/icons/searchminus/index.js +13 -2
- package/icons/searchminus/index.min.js +1 -1
- package/icons/searchplus/index.cjs.js +13 -2
- package/icons/searchplus/index.cjs.min.js +1 -1
- package/icons/searchplus/index.esm.js +13 -2
- package/icons/searchplus/index.esm.min.js +1 -1
- package/icons/searchplus/index.js +13 -2
- package/icons/searchplus/index.min.js +1 -1
- package/icons/sortalt/index.cjs.js +13 -2
- package/icons/sortalt/index.cjs.min.js +1 -1
- package/icons/sortalt/index.esm.js +13 -2
- package/icons/sortalt/index.esm.min.js +1 -1
- package/icons/sortalt/index.js +13 -2
- package/icons/sortalt/index.min.js +1 -1
- package/icons/sortamountdown/index.cjs.js +13 -2
- package/icons/sortamountdown/index.cjs.min.js +1 -1
- package/icons/sortamountdown/index.esm.js +13 -2
- package/icons/sortamountdown/index.esm.min.js +1 -1
- package/icons/sortamountdown/index.js +13 -2
- package/icons/sortamountdown/index.min.js +1 -1
- package/icons/sortamountupalt/index.cjs.js +13 -2
- package/icons/sortamountupalt/index.cjs.min.js +1 -1
- package/icons/sortamountupalt/index.esm.js +13 -2
- package/icons/sortamountupalt/index.esm.min.js +1 -1
- package/icons/sortamountupalt/index.js +13 -2
- package/icons/sortamountupalt/index.min.js +1 -1
- package/icons/spinner/index.cjs.js +13 -2
- package/icons/spinner/index.cjs.min.js +1 -1
- package/icons/spinner/index.esm.js +13 -2
- package/icons/spinner/index.esm.min.js +1 -1
- package/icons/spinner/index.js +13 -2
- package/icons/spinner/index.min.js +1 -1
- package/icons/star/index.cjs.js +13 -2
- package/icons/star/index.cjs.min.js +1 -1
- package/icons/star/index.esm.js +13 -2
- package/icons/star/index.esm.min.js +1 -1
- package/icons/star/index.js +13 -2
- package/icons/star/index.min.js +1 -1
- package/icons/starfill/index.cjs.js +13 -2
- package/icons/starfill/index.cjs.min.js +1 -1
- package/icons/starfill/index.esm.js +13 -2
- package/icons/starfill/index.esm.min.js +1 -1
- package/icons/starfill/index.js +13 -2
- package/icons/starfill/index.min.js +1 -1
- package/icons/thlarge/index.cjs.js +13 -2
- package/icons/thlarge/index.cjs.min.js +1 -1
- package/icons/thlarge/index.esm.js +13 -2
- package/icons/thlarge/index.esm.min.js +1 -1
- package/icons/thlarge/index.js +13 -2
- package/icons/thlarge/index.min.js +1 -1
- package/icons/timescircle/index.cjs.js +13 -2
- package/icons/timescircle/index.cjs.min.js +1 -1
- package/icons/timescircle/index.esm.js +13 -2
- package/icons/timescircle/index.esm.min.js +1 -1
- package/icons/timescircle/index.js +13 -2
- package/icons/timescircle/index.min.js +1 -1
- package/icons/trash/index.cjs.js +13 -2
- package/icons/trash/index.cjs.min.js +1 -1
- package/icons/trash/index.esm.js +13 -2
- package/icons/trash/index.esm.min.js +1 -1
- package/icons/trash/index.js +13 -2
- package/icons/trash/index.min.js +1 -1
- package/icons/undo/index.cjs.js +13 -2
- package/icons/undo/index.cjs.min.js +1 -1
- package/icons/undo/index.esm.js +13 -2
- package/icons/undo/index.esm.min.js +1 -1
- package/icons/undo/index.js +13 -2
- package/icons/undo/index.min.js +1 -1
- package/icons/upload/index.cjs.js +13 -2
- package/icons/upload/index.cjs.min.js +1 -1
- package/icons/upload/index.esm.js +13 -2
- package/icons/upload/index.esm.min.js +1 -1
- package/icons/upload/index.js +13 -2
- package/icons/upload/index.min.js +1 -1
- package/icons/windowmaximize/index.cjs.js +13 -2
- package/icons/windowmaximize/index.cjs.min.js +1 -1
- package/icons/windowmaximize/index.esm.js +13 -2
- package/icons/windowmaximize/index.esm.min.js +1 -1
- package/icons/windowmaximize/index.js +13 -2
- package/icons/windowmaximize/index.min.js +1 -1
- package/icons/windowminimize/index.cjs.js +13 -2
- package/icons/windowminimize/index.cjs.min.js +1 -1
- package/icons/windowminimize/index.esm.js +13 -2
- package/icons/windowminimize/index.esm.min.js +1 -1
- package/icons/windowminimize/index.js +13 -2
- package/icons/windowminimize/index.min.js +1 -1
- package/image/image.cjs.js +85 -119
- package/image/image.cjs.min.js +1 -1
- package/image/image.esm.js +87 -121
- package/image/image.esm.min.js +1 -1
- package/image/image.js +86 -120
- package/image/image.min.js +1 -1
- package/inplace/inplace.cjs.js +7 -0
- package/inplace/inplace.cjs.min.js +1 -1
- package/inplace/inplace.esm.js +7 -0
- package/inplace/inplace.esm.min.js +1 -1
- package/inplace/inplace.js +8 -2
- package/inplace/inplace.min.js +1 -1
- package/inputnumber/inputnumber.cjs.js +63 -19
- package/inputnumber/inputnumber.cjs.min.js +1 -1
- package/inputnumber/inputnumber.d.ts +7 -0
- package/inputnumber/inputnumber.esm.js +63 -19
- package/inputnumber/inputnumber.esm.min.js +1 -1
- package/inputnumber/inputnumber.js +63 -19
- package/inputnumber/inputnumber.min.js +1 -1
- package/inputswitch/inputswitch.cjs.js +3 -3
- package/inputswitch/inputswitch.cjs.min.js +1 -1
- package/inputswitch/inputswitch.esm.js +3 -3
- package/inputswitch/inputswitch.esm.min.js +1 -1
- package/inputswitch/inputswitch.js +3 -3
- package/inputswitch/inputswitch.min.js +1 -1
- package/inputtext/inputtext.cjs.js +7 -6
- package/inputtext/inputtext.cjs.min.js +1 -1
- package/inputtext/inputtext.esm.js +7 -6
- package/inputtext/inputtext.esm.min.js +1 -1
- package/inputtext/inputtext.js +7 -6
- package/inputtext/inputtext.min.js +1 -1
- package/listbox/listbox.cjs.js +14 -1
- package/listbox/listbox.cjs.min.js +1 -1
- package/listbox/listbox.d.ts +8 -3
- package/listbox/listbox.esm.js +14 -1
- package/listbox/listbox.esm.min.js +1 -1
- package/listbox/listbox.js +14 -1
- package/listbox/listbox.min.js +1 -1
- package/megamenu/megamenu.cjs.js +799 -179
- package/megamenu/megamenu.cjs.min.js +1 -1
- package/megamenu/megamenu.d.ts +14 -0
- package/megamenu/megamenu.esm.js +801 -181
- package/megamenu/megamenu.esm.min.js +1 -1
- package/megamenu/megamenu.js +799 -179
- package/megamenu/megamenu.min.js +1 -1
- package/mention/mention.cjs.js +7 -9
- package/mention/mention.cjs.min.js +1 -1
- package/mention/mention.esm.js +7 -9
- package/mention/mention.esm.min.js +1 -1
- package/mention/mention.js +7 -9
- package/mention/mention.min.js +1 -1
- package/menu/menu.cjs.js +217 -166
- package/menu/menu.cjs.min.js +1 -1
- package/menu/menu.d.ts +15 -1
- package/menu/menu.esm.js +220 -169
- package/menu/menu.esm.min.js +1 -1
- package/menu/menu.js +217 -166
- package/menu/menu.min.js +1 -1
- package/menubar/menubar.cjs.js +714 -179
- package/menubar/menubar.cjs.min.js +1 -1
- package/menubar/menubar.d.ts +18 -0
- package/menubar/menubar.esm.js +717 -182
- package/menubar/menubar.esm.min.js +1 -1
- package/menubar/menubar.js +714 -179
- package/menubar/menubar.min.js +1 -1
- package/message/message.cjs.js +2 -1
- package/message/message.cjs.min.js +1 -1
- package/message/message.esm.js +2 -1
- package/message/message.esm.min.js +1 -1
- package/message/message.js +2 -1
- package/message/message.min.js +1 -1
- package/messages/messages.cjs.js +5 -3
- package/messages/messages.cjs.min.js +1 -1
- package/messages/messages.esm.js +5 -3
- package/messages/messages.esm.min.js +1 -1
- package/messages/messages.js +5 -3
- package/messages/messages.min.js +1 -1
- package/multiselect/multiselect.cjs.js +58 -35
- package/multiselect/multiselect.cjs.min.js +1 -1
- package/multiselect/multiselect.d.ts +5 -1
- package/multiselect/multiselect.esm.js +58 -35
- package/multiselect/multiselect.esm.min.js +1 -1
- package/multiselect/multiselect.js +59 -37
- package/multiselect/multiselect.min.js +1 -1
- package/orderlist/orderlist.cjs.js +260 -105
- package/orderlist/orderlist.cjs.min.js +1 -1
- package/orderlist/orderlist.d.ts +18 -0
- package/orderlist/orderlist.esm.js +261 -106
- package/orderlist/orderlist.esm.min.js +1 -1
- package/orderlist/orderlist.js +260 -105
- package/orderlist/orderlist.min.js +1 -1
- package/organizationchart/organizationchart.cjs.js +10 -0
- package/organizationchart/organizationchart.cjs.min.js +1 -1
- package/organizationchart/organizationchart.esm.js +10 -0
- package/organizationchart/organizationchart.esm.min.js +1 -1
- package/organizationchart/organizationchart.js +10 -0
- package/organizationchart/organizationchart.min.js +1 -1
- package/overlaypanel/overlaypanel.cjs.js +9 -102
- package/overlaypanel/overlaypanel.cjs.min.js +1 -1
- package/overlaypanel/overlaypanel.d.ts +1 -1
- package/overlaypanel/overlaypanel.esm.js +11 -104
- package/overlaypanel/overlaypanel.esm.min.js +1 -1
- package/overlaypanel/overlaypanel.js +10 -103
- package/overlaypanel/overlaypanel.min.js +1 -1
- package/package.json +1 -1
- package/paginator/paginator.d.ts +2 -2
- package/panel/panel.cjs.js +22 -19
- package/panel/panel.cjs.min.js +1 -1
- package/panel/panel.esm.js +22 -19
- package/panel/panel.esm.min.js +1 -1
- package/panel/panel.js +22 -19
- package/panel/panel.min.js +1 -1
- package/panelmenu/panelmenu.cjs.js +774 -195
- package/panelmenu/panelmenu.cjs.min.js +1 -1
- package/panelmenu/panelmenu.d.ts +15 -0
- package/panelmenu/panelmenu.esm.js +775 -196
- package/panelmenu/panelmenu.esm.min.js +1 -1
- package/panelmenu/panelmenu.js +774 -195
- package/panelmenu/panelmenu.min.js +1 -1
- package/passthrough/tailwind/index.cjs.js +163 -159
- package/passthrough/tailwind/index.cjs.min.js +1 -1
- package/passthrough/tailwind/index.esm.js +163 -159
- package/passthrough/tailwind/index.esm.min.js +1 -1
- package/passthrough/tailwind/index.js +163 -159
- package/passthrough/tailwind/index.min.js +1 -1
- package/password/password.cjs.js +7 -2
- package/password/password.cjs.min.js +1 -1
- package/password/password.d.ts +1 -1
- package/password/password.esm.js +8 -3
- package/password/password.esm.min.js +1 -1
- package/password/password.js +7 -2
- package/password/password.min.js +1 -1
- package/picklist/picklist.cjs.js +709 -181
- package/picklist/picklist.cjs.min.js +1 -1
- package/picklist/picklist.d.ts +10 -0
- package/picklist/picklist.esm.js +708 -180
- package/picklist/picklist.esm.min.js +1 -1
- package/picklist/picklist.js +709 -181
- package/picklist/picklist.min.js +1 -1
- package/portal/portal.cjs.js +7 -1
- package/portal/portal.cjs.min.js +1 -1
- package/portal/portal.esm.js +7 -1
- package/portal/portal.esm.min.js +1 -1
- package/portal/portal.js +7 -1
- package/portal/portal.min.js +1 -1
- package/primereact.all.cjs.js +8352 -3145
- package/primereact.all.cjs.min.js +1 -1
- package/primereact.all.esm.js +8351 -3146
- package/primereact.all.esm.min.js +1 -1
- package/primereact.all.js +8352 -3145
- package/primereact.all.min.js +1 -1
- package/radiobutton/radiobutton.cjs.js +27 -26
- package/radiobutton/radiobutton.cjs.min.js +1 -1
- package/radiobutton/radiobutton.esm.js +27 -26
- package/radiobutton/radiobutton.esm.min.js +1 -1
- package/radiobutton/radiobutton.js +28 -27
- package/radiobutton/radiobutton.min.js +1 -1
- package/resources/themes/arya-blue/theme.css +854 -790
- package/resources/themes/arya-green/theme.css +854 -790
- package/resources/themes/arya-orange/theme.css +854 -790
- package/resources/themes/arya-purple/theme.css +854 -790
- package/resources/themes/bootstrap4-dark-blue/theme.css +678 -615
- package/resources/themes/bootstrap4-dark-purple/theme.css +678 -615
- package/resources/themes/bootstrap4-light-blue/theme.css +679 -616
- package/resources/themes/bootstrap4-light-purple/theme.css +679 -616
- package/resources/themes/fluent-light/theme.css +686 -638
- package/resources/themes/lara-dark-amber/theme.css +679 -630
- package/resources/themes/lara-dark-blue/theme.css +679 -630
- package/resources/themes/lara-dark-cyan/theme.css +679 -630
- package/resources/themes/lara-dark-green/theme.css +679 -630
- package/resources/themes/lara-dark-indigo/theme.css +679 -630
- package/resources/themes/lara-dark-pink/theme.css +679 -630
- package/resources/themes/lara-dark-purple/theme.css +679 -630
- package/resources/themes/lara-dark-teal/theme.css +679 -630
- package/resources/themes/lara-light-amber/theme.css +776 -725
- package/resources/themes/lara-light-blue/theme.css +1011 -960
- package/resources/themes/lara-light-cyan/theme.css +776 -725
- package/resources/themes/lara-light-green/theme.css +820 -769
- package/resources/themes/lara-light-indigo/theme.css +1016 -965
- package/resources/themes/lara-light-pink/theme.css +776 -725
- package/resources/themes/lara-light-purple/theme.css +1016 -965
- package/resources/themes/lara-light-teal/theme.css +776 -725
- package/resources/themes/luna-amber/theme.css +950 -887
- package/resources/themes/luna-blue/theme.css +950 -887
- package/resources/themes/luna-green/theme.css +950 -887
- package/resources/themes/luna-pink/theme.css +950 -887
- package/resources/themes/md-dark-deeppurple/theme.css +918 -950
- package/resources/themes/md-dark-indigo/theme.css +918 -950
- package/resources/themes/md-light-deeppurple/theme.css +878 -910
- package/resources/themes/md-light-indigo/theme.css +878 -910
- package/resources/themes/mdc-dark-deeppurple/theme.css +918 -950
- package/resources/themes/mdc-dark-indigo/theme.css +918 -950
- package/resources/themes/mdc-light-deeppurple/theme.css +878 -910
- package/resources/themes/mdc-light-indigo/theme.css +878 -910
- package/resources/themes/mira/theme.css +1562 -1532
- package/resources/themes/nano/theme.css +707 -641
- package/resources/themes/nova/theme.css +705 -643
- package/resources/themes/nova-accent/theme.css +701 -636
- package/resources/themes/nova-alt/theme.css +705 -643
- package/resources/themes/rhea/theme.css +876 -811
- package/resources/themes/saga-blue/theme.css +896 -832
- package/resources/themes/saga-green/theme.css +896 -832
- package/resources/themes/saga-orange/theme.css +896 -832
- package/resources/themes/saga-purple/theme.css +896 -832
- package/resources/themes/soho-dark/theme.css +701 -643
- package/resources/themes/soho-light/theme.css +690 -634
- package/resources/themes/tailwind-light/theme.css +1370 -1306
- package/resources/themes/vela-blue/theme.css +862 -798
- package/resources/themes/vela-green/theme.css +862 -798
- package/resources/themes/vela-orange/theme.css +862 -798
- package/resources/themes/vela-purple/theme.css +862 -798
- package/resources/themes/viva-dark/theme.css +655 -612
- package/resources/themes/viva-light/theme.css +737 -694
- package/ripple/ripple.cjs.js +71 -5
- package/ripple/ripple.cjs.min.js +1 -1
- package/ripple/ripple.esm.js +71 -5
- package/ripple/ripple.esm.min.js +1 -1
- package/ripple/ripple.js +71 -5
- package/ripple/ripple.min.js +1 -1
- package/scrollpanel/scrollpanel.cjs.js +183 -3
- package/scrollpanel/scrollpanel.cjs.min.js +1 -1
- package/scrollpanel/scrollpanel.esm.js +184 -4
- package/scrollpanel/scrollpanel.esm.min.js +1 -1
- package/scrollpanel/scrollpanel.js +183 -3
- package/scrollpanel/scrollpanel.min.js +1 -1
- package/sidebar/sidebar.cjs.js +62 -146
- package/sidebar/sidebar.cjs.min.js +1 -1
- package/sidebar/sidebar.d.ts +25 -3
- package/sidebar/sidebar.esm.js +65 -149
- package/sidebar/sidebar.esm.min.js +1 -1
- package/sidebar/sidebar.js +63 -147
- package/sidebar/sidebar.min.js +1 -1
- package/slidemenu/slidemenu.cjs.js +7 -100
- package/slidemenu/slidemenu.cjs.min.js +1 -1
- package/slidemenu/slidemenu.d.ts +1 -1
- package/slidemenu/slidemenu.esm.js +10 -103
- package/slidemenu/slidemenu.esm.min.js +1 -1
- package/slidemenu/slidemenu.js +7 -100
- package/slidemenu/slidemenu.min.js +1 -1
- package/speeddial/speeddial.cjs.js +275 -32
- package/speeddial/speeddial.cjs.min.js +1 -1
- package/speeddial/speeddial.esm.js +277 -34
- package/speeddial/speeddial.esm.min.js +1 -1
- package/speeddial/speeddial.js +275 -32
- package/speeddial/speeddial.min.js +1 -1
- package/splitbutton/splitbutton.cjs.js +1098 -309
- package/splitbutton/splitbutton.cjs.min.js +1 -1
- package/splitbutton/splitbutton.d.ts +5 -5
- package/splitbutton/splitbutton.esm.js +1100 -311
- package/splitbutton/splitbutton.esm.min.js +1 -1
- package/splitbutton/splitbutton.js +1096 -309
- package/splitbutton/splitbutton.min.js +1 -1
- package/splitter/splitter.cjs.js +103 -15
- package/splitter/splitter.cjs.min.js +1 -1
- package/splitter/splitter.d.ts +5 -0
- package/splitter/splitter.esm.js +103 -15
- package/splitter/splitter.esm.min.js +1 -1
- package/splitter/splitter.js +103 -15
- package/splitter/splitter.min.js +1 -1
- package/steps/steps.cjs.js +99 -13
- package/steps/steps.cjs.min.js +1 -1
- package/steps/steps.esm.js +100 -14
- package/steps/steps.esm.min.js +1 -1
- package/steps/steps.js +99 -13
- package/steps/steps.min.js +1 -1
- package/tabmenu/tabmenu.cjs.js +113 -17
- package/tabmenu/tabmenu.cjs.min.js +1 -1
- package/tabmenu/tabmenu.esm.js +113 -17
- package/tabmenu/tabmenu.esm.min.js +1 -1
- package/tabmenu/tabmenu.js +113 -17
- package/tabmenu/tabmenu.min.js +1 -1
- package/tabview/tabview.cjs.js +128 -20
- package/tabview/tabview.cjs.min.js +1 -1
- package/tabview/tabview.d.ts +35 -0
- package/tabview/tabview.esm.js +128 -20
- package/tabview/tabview.esm.min.js +1 -1
- package/tabview/tabview.js +128 -20
- package/tabview/tabview.min.js +1 -1
- package/tieredmenu/tieredmenu.cjs.js +753 -275
- package/tieredmenu/tieredmenu.cjs.min.js +1 -1
- package/tieredmenu/tieredmenu.d.ts +11 -1
- package/tieredmenu/tieredmenu.esm.js +755 -277
- package/tieredmenu/tieredmenu.esm.min.js +1 -1
- package/tieredmenu/tieredmenu.js +753 -275
- package/tieredmenu/tieredmenu.min.js +1 -1
- package/toast/toast.cjs.js +6 -1
- package/toast/toast.cjs.min.js +1 -1
- package/toast/toast.d.ts +36 -2
- package/toast/toast.esm.js +6 -1
- package/toast/toast.esm.min.js +1 -1
- package/toast/toast.js +6 -1
- package/toast/toast.min.js +1 -1
- package/togglebutton/togglebutton.cjs.js +74 -4
- package/togglebutton/togglebutton.cjs.min.js +1 -1
- package/togglebutton/togglebutton.esm.js +74 -4
- package/togglebutton/togglebutton.esm.min.js +1 -1
- package/togglebutton/togglebutton.js +75 -5
- package/togglebutton/togglebutton.min.js +1 -1
- package/tooltip/tooltip.d.ts +27 -0
- package/tooltip/tooltipoptions.d.ts +1 -1
- package/tree/tree.cjs.js +198 -88
- package/tree/tree.cjs.min.js +1 -1
- package/tree/tree.d.ts +8 -0
- package/tree/tree.esm.js +199 -89
- package/tree/tree.esm.min.js +1 -1
- package/tree/tree.js +198 -88
- package/tree/tree.min.js +1 -1
- package/treeselect/treeselect.cjs.js +185 -49
- package/treeselect/treeselect.cjs.min.js +1 -1
- package/treeselect/treeselect.d.ts +26 -1
- package/treeselect/treeselect.esm.js +186 -50
- package/treeselect/treeselect.esm.min.js +1 -1
- package/treeselect/treeselect.js +186 -51
- package/treeselect/treeselect.min.js +1 -1
- package/treetable/treetable.cjs.js +59 -53
- package/treetable/treetable.cjs.min.js +1 -1
- package/treetable/treetable.d.ts +3 -3
- package/treetable/treetable.esm.js +59 -53
- package/treetable/treetable.esm.min.js +1 -1
- package/treetable/treetable.js +59 -53
- package/treetable/treetable.min.js +1 -1
- package/utils/utils.cjs.js +19 -5
- package/utils/utils.cjs.min.js +1 -1
- package/utils/utils.d.ts +1 -1
- package/utils/utils.esm.js +19 -5
- package/utils/utils.esm.min.js +1 -1
- package/utils/utils.js +19 -5
- package/utils/utils.min.js +1 -1
- package/web-types.json +402 -33
|
@@ -3,10 +3,10 @@ import * as React from 'react';
|
|
|
3
3
|
import { PrimeReactContext } from 'primereact/api';
|
|
4
4
|
import { ComponentBase, useHandleStyle } from 'primereact/componentbase';
|
|
5
5
|
import { CSSTransition } from 'primereact/csstransition';
|
|
6
|
-
import { useMountEffect
|
|
6
|
+
import { useMountEffect } from 'primereact/hooks';
|
|
7
7
|
import { ChevronDownIcon } from 'primereact/icons/chevrondown';
|
|
8
8
|
import { ChevronRightIcon } from 'primereact/icons/chevronright';
|
|
9
|
-
import { classNames, mergeProps, IconUtils,
|
|
9
|
+
import { classNames, mergeProps, ObjectUtils, IconUtils, DomHandler, UniqueComponentId } from 'primereact/utils';
|
|
10
10
|
|
|
11
11
|
function _extends() {
|
|
12
12
|
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
@@ -64,35 +64,8 @@ function _defineProperty(obj, key, value) {
|
|
|
64
64
|
return obj;
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
function
|
|
68
|
-
|
|
69
|
-
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
|
|
70
|
-
return arr2;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
function _arrayWithoutHoles(arr) {
|
|
74
|
-
if (Array.isArray(arr)) return _arrayLikeToArray(arr);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
function _iterableToArray(iter) {
|
|
78
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
function _unsupportedIterableToArray(o, minLen) {
|
|
82
|
-
if (!o) return;
|
|
83
|
-
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
|
84
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
85
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
86
|
-
if (n === "Map" || n === "Set") return Array.from(o);
|
|
87
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
function _nonIterableSpread() {
|
|
91
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
function _toConsumableArray(arr) {
|
|
95
|
-
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
|
|
67
|
+
function _readOnlyError(name) {
|
|
68
|
+
throw new TypeError("\"" + name + "\" is read-only");
|
|
96
69
|
}
|
|
97
70
|
|
|
98
71
|
function _arrayWithHoles(arr) {
|
|
@@ -127,6 +100,21 @@ function _iterableToArrayLimit(r, l) {
|
|
|
127
100
|
}
|
|
128
101
|
}
|
|
129
102
|
|
|
103
|
+
function _arrayLikeToArray(arr, len) {
|
|
104
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
105
|
+
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
|
|
106
|
+
return arr2;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
function _unsupportedIterableToArray(o, minLen) {
|
|
110
|
+
if (!o) return;
|
|
111
|
+
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
|
112
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
113
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
114
|
+
if (n === "Map" || n === "Set") return Array.from(o);
|
|
115
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
|
116
|
+
}
|
|
117
|
+
|
|
130
118
|
function _nonIterableRest() {
|
|
131
119
|
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
132
120
|
}
|
|
@@ -135,12 +123,25 @@ function _slicedToArray(arr, i) {
|
|
|
135
123
|
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
|
|
136
124
|
}
|
|
137
125
|
|
|
126
|
+
/* eslint-disable */
|
|
127
|
+
var useUpdateEffect = function useUpdateEffect(fn, deps) {
|
|
128
|
+
var mounted = React.useRef(false);
|
|
129
|
+
return React.useEffect(function () {
|
|
130
|
+
if (!mounted.current) {
|
|
131
|
+
mounted.current = true;
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
return fn && fn();
|
|
135
|
+
}, deps);
|
|
136
|
+
};
|
|
137
|
+
/* eslint-enable */
|
|
138
|
+
|
|
138
139
|
var classes = {
|
|
139
140
|
headerIcon: function headerIcon(_ref) {
|
|
140
141
|
var item = _ref.item;
|
|
141
142
|
return classNames('p-menuitem-icon', item.icon);
|
|
142
143
|
},
|
|
143
|
-
headerSubmenuIcon: 'p-
|
|
144
|
+
headerSubmenuIcon: 'p-submenu-icon',
|
|
144
145
|
headerLabel: 'p-menuitem-text',
|
|
145
146
|
headerAction: 'p-panelmenu-header-link',
|
|
146
147
|
panel: function panel(_ref2) {
|
|
@@ -155,12 +156,13 @@ var classes = {
|
|
|
155
156
|
'p-disabled': item.disabled
|
|
156
157
|
});
|
|
157
158
|
},
|
|
159
|
+
headerContent: 'p-panelmenu-header-content',
|
|
158
160
|
menuContent: 'p-panelmenu-content',
|
|
159
161
|
root: function root(_ref4) {
|
|
160
162
|
var props = _ref4.props;
|
|
161
163
|
return classNames('p-panelmenu p-component', props.className);
|
|
162
164
|
},
|
|
163
|
-
separator: 'p-
|
|
165
|
+
separator: 'p-menuitem-separator',
|
|
164
166
|
toggleableContent: function toggleableContent(_ref5) {
|
|
165
167
|
var active = _ref5.active;
|
|
166
168
|
return classNames('p-toggleable-content', {
|
|
@@ -172,7 +174,8 @@ var classes = {
|
|
|
172
174
|
return classNames('p-menuitem-icon', item.icon);
|
|
173
175
|
},
|
|
174
176
|
label: 'p-menuitem-text',
|
|
175
|
-
submenuicon: 'p-
|
|
177
|
+
submenuicon: 'p-submenu-icon',
|
|
178
|
+
content: 'p-menuitem-content',
|
|
176
179
|
action: function action(_ref7) {
|
|
177
180
|
var item = _ref7.item;
|
|
178
181
|
return classNames('p-menuitem-link', {
|
|
@@ -180,14 +183,19 @@ var classes = {
|
|
|
180
183
|
});
|
|
181
184
|
},
|
|
182
185
|
menuitem: function menuitem(_ref8) {
|
|
183
|
-
var item = _ref8.item
|
|
184
|
-
|
|
186
|
+
var item = _ref8.item,
|
|
187
|
+
focused = _ref8.focused,
|
|
188
|
+
disabled = _ref8.disabled;
|
|
189
|
+
return classNames('p-menuitem', item.className, {
|
|
190
|
+
'p-focus': focused,
|
|
191
|
+
'p-disabled': disabled
|
|
192
|
+
});
|
|
185
193
|
},
|
|
186
|
-
menu: 'p-
|
|
194
|
+
menu: 'p-panelmenu-root-list',
|
|
187
195
|
submenu: 'p-submenu-list',
|
|
188
196
|
transition: 'p-toggleable-content'
|
|
189
197
|
};
|
|
190
|
-
var styles = "\n@layer primereact {\n .p-panelmenu .p-panelmenu-header-link {\n display: flex;\n align-items: center;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n }\n
|
|
198
|
+
var styles = "\n@layer primereact {\n .p-panelmenu .p-panelmenu-header-link {\n display: flex;\n align-items: center;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n }\n\n .p-panelmenu .p-panelmenu-header-link:focus {\n z-index: 1;\n }\n\n .p-panelmenu .p-submenu-list {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .p-panelmenu .p-menuitem-link {\n display: flex;\n align-items: center;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n text-decoration: none;\n position: relative;\n overflow: hidden;\n }\n\n .p-panelmenu .p-menuitem-text {\n line-height: 1;\n }\n}\n";
|
|
191
199
|
var PanelMenuBase = ComponentBase.extend({
|
|
192
200
|
defaultProps: {
|
|
193
201
|
__TYPE: 'PanelMenu',
|
|
@@ -195,7 +203,11 @@ var PanelMenuBase = ComponentBase.extend({
|
|
|
195
203
|
model: null,
|
|
196
204
|
style: null,
|
|
197
205
|
submenuIcon: null,
|
|
206
|
+
expandedKeys: null,
|
|
198
207
|
className: null,
|
|
208
|
+
onExpandedKeysChange: null,
|
|
209
|
+
onOpen: null,
|
|
210
|
+
onClose: null,
|
|
199
211
|
multiple: false,
|
|
200
212
|
transitionOptions: null,
|
|
201
213
|
children: undefined
|
|
@@ -208,77 +220,81 @@ var PanelMenuBase = ComponentBase.extend({
|
|
|
208
220
|
|
|
209
221
|
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
210
222
|
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
211
|
-
var PanelMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
212
|
-
var _React$useState = React.useState(null),
|
|
213
|
-
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
214
|
-
activeItemState = _React$useState2[0],
|
|
215
|
-
setActiveItemState = _React$useState2[1];
|
|
223
|
+
var PanelMenuSub = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
216
224
|
var ptm = props.ptm,
|
|
217
225
|
cx = props.cx;
|
|
226
|
+
var elementRef = React.useRef(null);
|
|
218
227
|
var _ptm = function _ptm(key, options) {
|
|
219
228
|
return ptm(key, _objectSpread$1({
|
|
220
229
|
hostName: props.hostName
|
|
221
230
|
}, options));
|
|
222
231
|
};
|
|
223
|
-
var getPTOptions = function getPTOptions(
|
|
232
|
+
var getPTOptions = function getPTOptions(processedItem, key, index) {
|
|
224
233
|
return _ptm(key, {
|
|
225
234
|
context: {
|
|
226
|
-
|
|
235
|
+
item: processedItem,
|
|
236
|
+
index: index,
|
|
237
|
+
active: isItemActive(processedItem),
|
|
238
|
+
focused: isItemFocused(processedItem),
|
|
239
|
+
disabled: isItemDisabled(processedItem)
|
|
227
240
|
}
|
|
228
241
|
});
|
|
229
242
|
};
|
|
230
|
-
var
|
|
231
|
-
|
|
232
|
-
if (props.multiple) {
|
|
233
|
-
return props.model.filter(function (item) {
|
|
234
|
-
return item.expanded;
|
|
235
|
-
});
|
|
236
|
-
} else {
|
|
237
|
-
var activeItem = null;
|
|
238
|
-
props.model.forEach(function (item) {
|
|
239
|
-
if (item.expanded) {
|
|
240
|
-
if (!activeItem) activeItem = item;else item.expanded = false;
|
|
241
|
-
}
|
|
242
|
-
});
|
|
243
|
-
return activeItem;
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
return null;
|
|
243
|
+
var getItemId = function getItemId(processedItem) {
|
|
244
|
+
return "".concat(props.panelId, "_").concat(processedItem.key);
|
|
247
245
|
};
|
|
248
|
-
var
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
246
|
+
var getItemProp = function getItemProp(processedItem, name, params) {
|
|
247
|
+
return processedItem && processedItem.item ? ObjectUtils.getItemValue(processedItem.item[name], params) : undefined;
|
|
248
|
+
};
|
|
249
|
+
var isItemActive = function isItemActive(processedItem) {
|
|
250
|
+
return props.activeItemPath.some(function (path) {
|
|
251
|
+
return path.key === processedItem.key;
|
|
252
|
+
});
|
|
253
|
+
};
|
|
254
|
+
var isItemVisible = function isItemVisible(processedItem) {
|
|
255
|
+
return getItemProp(processedItem, 'visible') !== false;
|
|
256
|
+
};
|
|
257
|
+
var isItemDisabled = function isItemDisabled(processedItem) {
|
|
258
|
+
return getItemProp(processedItem, 'disabled');
|
|
259
|
+
};
|
|
260
|
+
var isItemFocused = function isItemFocused(processedItem) {
|
|
261
|
+
return props.focusedItemId === getItemId(processedItem);
|
|
262
|
+
};
|
|
263
|
+
var isItemGroup = function isItemGroup(processedItem) {
|
|
264
|
+
return ObjectUtils.isNotEmpty(processedItem.items);
|
|
265
|
+
};
|
|
266
|
+
var onItemClick = function onItemClick(event, processedItem) {
|
|
267
|
+
if (!getItemProp(processedItem, 'url')) {
|
|
254
268
|
event.preventDefault();
|
|
255
269
|
}
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
if (active) {
|
|
265
|
-
item.expanded = false;
|
|
266
|
-
setActiveItemState(props.multiple ? activeItem.filter(function (a_item) {
|
|
267
|
-
return a_item !== item;
|
|
268
|
-
}) : null);
|
|
269
|
-
} else {
|
|
270
|
-
if (!props.multiple && activeItem) {
|
|
271
|
-
activeItem.expanded = false;
|
|
272
|
-
}
|
|
273
|
-
item.expanded = true;
|
|
274
|
-
setActiveItemState(props.multiple ? [].concat(_toConsumableArray(activeItem || []), [item]) : item);
|
|
275
|
-
}
|
|
270
|
+
getItemProp(processedItem, 'command', {
|
|
271
|
+
originalEvent: event,
|
|
272
|
+
item: processedItem.item
|
|
273
|
+
});
|
|
274
|
+
onItemToggle({
|
|
275
|
+
processedItem: processedItem,
|
|
276
|
+
expanded: !isItemActive(processedItem)
|
|
277
|
+
});
|
|
276
278
|
};
|
|
277
|
-
var
|
|
278
|
-
|
|
279
|
+
var onItemToggle = function onItemToggle(event) {
|
|
280
|
+
props.onItemToggle(event);
|
|
279
281
|
};
|
|
280
|
-
|
|
281
|
-
|
|
282
|
+
var getAriaSetSize = function getAriaSetSize() {
|
|
283
|
+
return props.model.filter(function (processedItem) {
|
|
284
|
+
return isItemVisible(processedItem) && !getItemProp(processedItem, 'separator');
|
|
285
|
+
}).length;
|
|
286
|
+
};
|
|
287
|
+
var getAriaPosInset = function getAriaPosInset(index) {
|
|
288
|
+
return index - props.model.slice(0, index).filter(function (processedItem) {
|
|
289
|
+
return isItemVisible(processedItem) && getItemProp(processedItem, 'separator');
|
|
290
|
+
}).length + 1;
|
|
291
|
+
};
|
|
292
|
+
React.useImperativeHandle(ref, function () {
|
|
293
|
+
return {
|
|
294
|
+
getElement: function getElement() {
|
|
295
|
+
return elementRef.current;
|
|
296
|
+
}
|
|
297
|
+
};
|
|
282
298
|
});
|
|
283
299
|
var createSeparator = function createSeparator(index) {
|
|
284
300
|
var key = props.id + '_sep_' + index;
|
|
@@ -290,14 +306,14 @@ var PanelMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
290
306
|
}, _ptm('separator'));
|
|
291
307
|
return /*#__PURE__*/React.createElement("li", separatorProps);
|
|
292
308
|
};
|
|
293
|
-
var createSubmenu = function createSubmenu(
|
|
309
|
+
var createSubmenu = function createSubmenu(processedItem, active) {
|
|
294
310
|
var submenuRef = /*#__PURE__*/React.createRef();
|
|
295
311
|
var toggleableContentProps = mergeProps({
|
|
296
312
|
className: cx('toggleableContent', {
|
|
297
313
|
active: active
|
|
298
314
|
})
|
|
299
315
|
}, _ptm('toggleableContent'));
|
|
300
|
-
if (
|
|
316
|
+
if (isItemVisible(processedItem) && isItemGroup(processedItem)) {
|
|
301
317
|
var transitionProps = mergeProps({
|
|
302
318
|
classNames: cx('transition'),
|
|
303
319
|
timeout: {
|
|
@@ -312,10 +328,15 @@ var PanelMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
312
328
|
}, transitionProps), /*#__PURE__*/React.createElement("div", _extends({
|
|
313
329
|
ref: submenuRef
|
|
314
330
|
}, toggleableContentProps), /*#__PURE__*/React.createElement(PanelMenuSub, {
|
|
315
|
-
id:
|
|
331
|
+
id: getItemId(processedItem) + '_list',
|
|
332
|
+
role: "group",
|
|
333
|
+
panelId: props.panelId,
|
|
334
|
+
level: props.level + 1,
|
|
335
|
+
focusedItemId: props.focusedItemId,
|
|
336
|
+
activeItemPath: props.activeItemPath,
|
|
337
|
+
onItemToggle: onItemToggle,
|
|
316
338
|
menuProps: props.menuProps,
|
|
317
|
-
model:
|
|
318
|
-
multiple: props.multiple,
|
|
339
|
+
model: processedItem.items,
|
|
319
340
|
submenuIcon: props.submenuIcon,
|
|
320
341
|
ptm: ptm,
|
|
321
342
|
cx: cx
|
|
@@ -323,12 +344,15 @@ var PanelMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
323
344
|
}
|
|
324
345
|
return null;
|
|
325
346
|
};
|
|
326
|
-
var createMenuItem = function createMenuItem(
|
|
327
|
-
|
|
347
|
+
var createMenuItem = function createMenuItem(processedItem, index) {
|
|
348
|
+
var item = processedItem.item;
|
|
349
|
+
if (isItemVisible(processedItem) === false) {
|
|
328
350
|
return null;
|
|
329
351
|
}
|
|
330
|
-
var key =
|
|
331
|
-
var active = isItemActive(
|
|
352
|
+
var key = getItemId(processedItem);
|
|
353
|
+
var active = isItemActive(processedItem);
|
|
354
|
+
var itemFocused = isItemFocused(processedItem);
|
|
355
|
+
var disabled = isItemDisabled(item);
|
|
332
356
|
var linkClassName = classNames('p-menuitem-link', {
|
|
333
357
|
'p-disabled': item.disabled
|
|
334
358
|
});
|
|
@@ -337,38 +361,35 @@ var PanelMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
337
361
|
className: cx('icon', {
|
|
338
362
|
item: item
|
|
339
363
|
})
|
|
340
|
-
}, getPTOptions(
|
|
364
|
+
}, getPTOptions(processedItem, 'icon', index));
|
|
341
365
|
var icon = IconUtils.getJSXIcon(item.icon, _objectSpread$1({}, iconProps), {
|
|
342
366
|
props: props.menuProps
|
|
343
367
|
});
|
|
344
368
|
var labelProps = mergeProps({
|
|
345
369
|
className: cx('label')
|
|
346
|
-
}, getPTOptions(
|
|
370
|
+
}, getPTOptions(processedItem, 'label', index));
|
|
347
371
|
var label = item.label && /*#__PURE__*/React.createElement("span", labelProps, item.label);
|
|
348
372
|
var submenuIconClassName = 'p-panelmenu-icon';
|
|
349
373
|
var submenuIconProps = mergeProps({
|
|
350
374
|
className: cx('submenuicon')
|
|
351
|
-
}, getPTOptions(
|
|
375
|
+
}, getPTOptions(processedItem, 'submenuicon', index));
|
|
352
376
|
var submenuIcon = item.items && IconUtils.getJSXIcon(active ? props.submenuIcon || /*#__PURE__*/React.createElement(ChevronDownIcon, submenuIconProps) : props.submenuIcon || /*#__PURE__*/React.createElement(ChevronRightIcon, submenuIconProps));
|
|
353
|
-
var submenu = createSubmenu(
|
|
377
|
+
var submenu = createSubmenu(processedItem, active);
|
|
354
378
|
var actionProps = mergeProps({
|
|
355
379
|
href: item.url || '#',
|
|
356
380
|
className: cx('action', {
|
|
357
381
|
item: item
|
|
358
382
|
}),
|
|
359
383
|
target: item.target,
|
|
360
|
-
|
|
361
|
-
return
|
|
384
|
+
onFocus: function onFocus(event) {
|
|
385
|
+
return event.stopPropagation();
|
|
362
386
|
},
|
|
363
|
-
|
|
364
|
-
'aria-
|
|
365
|
-
}, getPTOptions(
|
|
387
|
+
tabIndex: '-1',
|
|
388
|
+
'aria-hidden': true
|
|
389
|
+
}, getPTOptions(processedItem, 'action', index));
|
|
366
390
|
var content = /*#__PURE__*/React.createElement("a", actionProps, submenuIcon, icon, label);
|
|
367
391
|
if (item.template) {
|
|
368
392
|
var defaultContentOptions = {
|
|
369
|
-
onClick: function onClick(event) {
|
|
370
|
-
return onItemClick(event, item);
|
|
371
|
-
},
|
|
372
393
|
className: linkClassName,
|
|
373
394
|
labelClassName: 'p-menuitem-text',
|
|
374
395
|
iconClassName: iconClassName,
|
|
@@ -380,19 +401,34 @@ var PanelMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
380
401
|
};
|
|
381
402
|
content = ObjectUtils.getJSXElement(item.template, item, defaultContentOptions);
|
|
382
403
|
}
|
|
404
|
+
var contentProps = mergeProps({
|
|
405
|
+
onClick: function onClick(event) {
|
|
406
|
+
return onItemClick(event, processedItem);
|
|
407
|
+
},
|
|
408
|
+
className: cx('content')
|
|
409
|
+
}, getPTOptions(processedItem, 'content', index));
|
|
383
410
|
var menuitemProps = mergeProps({
|
|
384
411
|
key: key,
|
|
385
412
|
id: key,
|
|
386
413
|
className: cx('menuitem', {
|
|
387
|
-
item: item
|
|
414
|
+
item: item,
|
|
415
|
+
focused: itemFocused,
|
|
416
|
+
disabled: disabled
|
|
388
417
|
}),
|
|
389
418
|
style: item.style,
|
|
390
|
-
role: '
|
|
391
|
-
|
|
392
|
-
|
|
419
|
+
role: 'treeitem',
|
|
420
|
+
'aria-label': item.label,
|
|
421
|
+
'aria-expanded': isItemGroup(item) ? active : undefined,
|
|
422
|
+
'aria-level': props.level + 1,
|
|
423
|
+
'aria-setsize': getAriaSetSize(),
|
|
424
|
+
'aria-posinset': getAriaPosInset(index),
|
|
425
|
+
'data-p-focused': itemFocused,
|
|
426
|
+
'data-p-disabled': disabled
|
|
427
|
+
}, getPTOptions(processedItem, 'menuitem', index));
|
|
428
|
+
return /*#__PURE__*/React.createElement("li", menuitemProps, /*#__PURE__*/React.createElement("div", contentProps, content), submenu);
|
|
393
429
|
};
|
|
394
430
|
var createItem = function createItem(item, index) {
|
|
395
|
-
return item
|
|
431
|
+
return getItemProp(item, 'separator') ? createSeparator(index) : createMenuItem(item, index);
|
|
396
432
|
};
|
|
397
433
|
var createMenu = function createMenu() {
|
|
398
434
|
return props.model ? props.model.map(createItem) : null;
|
|
@@ -400,13 +436,431 @@ var PanelMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
400
436
|
var menu = createMenu();
|
|
401
437
|
var ptKey = props.root ? 'menu' : 'submenu';
|
|
402
438
|
var menuProps = mergeProps({
|
|
403
|
-
|
|
404
|
-
|
|
439
|
+
id: props.id,
|
|
440
|
+
ref: elementRef,
|
|
441
|
+
tabIndex: props.tabIndex,
|
|
442
|
+
onFocus: props.onFocus,
|
|
443
|
+
onBlur: props.onBlur,
|
|
444
|
+
onKeyDown: props.onKeyDown,
|
|
445
|
+
'aria-activedescendant': props.ariaActivedescendant,
|
|
446
|
+
role: props.role,
|
|
447
|
+
className: classNames(cx(ptKey), props.className)
|
|
405
448
|
}, ptm(ptKey));
|
|
406
449
|
return /*#__PURE__*/React.createElement("ul", menuProps, menu);
|
|
407
|
-
});
|
|
450
|
+
}));
|
|
408
451
|
PanelMenuSub.displayName = 'PanelMenuSub';
|
|
409
452
|
|
|
453
|
+
var PanelMenuList = /*#__PURE__*/React.memo(function (props) {
|
|
454
|
+
var ptm = props.ptm,
|
|
455
|
+
cx = props.cx;
|
|
456
|
+
var _React$useState = React.useState(false),
|
|
457
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
458
|
+
focused = _React$useState2[0],
|
|
459
|
+
setFocused = _React$useState2[1];
|
|
460
|
+
var _React$useState3 = React.useState(null),
|
|
461
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
462
|
+
focusedItem = _React$useState4[0],
|
|
463
|
+
setFocusedItem = _React$useState4[1];
|
|
464
|
+
var _React$useState5 = React.useState(null),
|
|
465
|
+
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
466
|
+
focusedItemId = _React$useState6[0],
|
|
467
|
+
setFocusedItemId = _React$useState6[1];
|
|
468
|
+
var _React$useState7 = React.useState(null),
|
|
469
|
+
_React$useState8 = _slicedToArray(_React$useState7, 2),
|
|
470
|
+
activeItemPath = _React$useState8[0],
|
|
471
|
+
setActiveItemPath = _React$useState8[1];
|
|
472
|
+
var _React$useState9 = React.useState(null),
|
|
473
|
+
_React$useState10 = _slicedToArray(_React$useState9, 2),
|
|
474
|
+
processedItems = _React$useState10[0],
|
|
475
|
+
setProcessedItems = _React$useState10[1];
|
|
476
|
+
var _React$useState11 = React.useState([]),
|
|
477
|
+
_React$useState12 = _slicedToArray(_React$useState11, 2),
|
|
478
|
+
visibleItems = _React$useState12[0],
|
|
479
|
+
setVisibleItems = _React$useState12[1];
|
|
480
|
+
var searchValue = React.useRef(null);
|
|
481
|
+
var searchTimeout = React.useRef(null);
|
|
482
|
+
var elementRef = React.useRef(null);
|
|
483
|
+
var getItemProp = function getItemProp(processedItem, name) {
|
|
484
|
+
return processedItem && processedItem.item ? ObjectUtils.getItemValue(processedItem.item[name]) : undefined;
|
|
485
|
+
};
|
|
486
|
+
var getItemLabel = function getItemLabel(processedItem) {
|
|
487
|
+
return getItemProp(processedItem, 'label');
|
|
488
|
+
};
|
|
489
|
+
var isItemVisible = function isItemVisible(processedItem) {
|
|
490
|
+
return getItemProp(processedItem, 'visible') !== false;
|
|
491
|
+
};
|
|
492
|
+
var isItemDisabled = function isItemDisabled(processedItem) {
|
|
493
|
+
return getItemProp(processedItem, 'disabled');
|
|
494
|
+
};
|
|
495
|
+
var isItemActive = function isItemActive(processedItem) {
|
|
496
|
+
return activeItemPath.some(function (path) {
|
|
497
|
+
return path.key === processedItem.parentKey;
|
|
498
|
+
});
|
|
499
|
+
};
|
|
500
|
+
var isItemGroup = function isItemGroup(processedItem) {
|
|
501
|
+
return ObjectUtils.isNotEmpty(processedItem.items);
|
|
502
|
+
};
|
|
503
|
+
var getListElement = function getListElement() {
|
|
504
|
+
return elementRef.current && elementRef.current.getElement();
|
|
505
|
+
};
|
|
506
|
+
var onFocus = function onFocus(event) {
|
|
507
|
+
setFocused(true);
|
|
508
|
+
var _focusedItem = focusedItem || (isElementInPanel(event, event.relatedTarget) ? findFirstItem() : findLastItem());
|
|
509
|
+
setFocusedItem(_focusedItem);
|
|
510
|
+
};
|
|
511
|
+
var onBlur = function onBlur() {
|
|
512
|
+
setFocused(false);
|
|
513
|
+
setFocusedItem(null);
|
|
514
|
+
searchValue.current = '';
|
|
515
|
+
};
|
|
516
|
+
var onKeyDown = function onKeyDown(event) {
|
|
517
|
+
var metaKey = event.metaKey || event.ctrlKey;
|
|
518
|
+
switch (event.code) {
|
|
519
|
+
case 'ArrowDown':
|
|
520
|
+
onArrowDownKey(event);
|
|
521
|
+
break;
|
|
522
|
+
case 'ArrowUp':
|
|
523
|
+
onArrowUpKey(event);
|
|
524
|
+
break;
|
|
525
|
+
case 'ArrowLeft':
|
|
526
|
+
onArrowLeftKey(event);
|
|
527
|
+
break;
|
|
528
|
+
case 'ArrowRight':
|
|
529
|
+
onArrowRightKey(event);
|
|
530
|
+
break;
|
|
531
|
+
case 'Home':
|
|
532
|
+
onHomeKey(event);
|
|
533
|
+
break;
|
|
534
|
+
case 'End':
|
|
535
|
+
onEndKey(event);
|
|
536
|
+
break;
|
|
537
|
+
case 'Space':
|
|
538
|
+
onSpaceKey(event);
|
|
539
|
+
break;
|
|
540
|
+
case 'Enter':
|
|
541
|
+
case 'NumpadEnter':
|
|
542
|
+
onEnterKey(event);
|
|
543
|
+
break;
|
|
544
|
+
case 'Escape':
|
|
545
|
+
case 'Tab':
|
|
546
|
+
case 'PageDown':
|
|
547
|
+
case 'PageUp':
|
|
548
|
+
case 'Backspace':
|
|
549
|
+
case 'ShiftLeft':
|
|
550
|
+
case 'ShiftRight':
|
|
551
|
+
//NOOP
|
|
552
|
+
break;
|
|
553
|
+
default:
|
|
554
|
+
if (!metaKey && ObjectUtils.isPrintableCharacter(event.key)) {
|
|
555
|
+
searchItems(event, event.key);
|
|
556
|
+
}
|
|
557
|
+
break;
|
|
558
|
+
}
|
|
559
|
+
};
|
|
560
|
+
var onArrowDownKey = function onArrowDownKey(event) {
|
|
561
|
+
var processedItem = ObjectUtils.isNotEmpty(focusedItem) ? findNextItem(focusedItem) : findFirstItem();
|
|
562
|
+
changeFocusedItem({
|
|
563
|
+
originalEvent: event,
|
|
564
|
+
processedItem: processedItem,
|
|
565
|
+
focusOnNext: true
|
|
566
|
+
});
|
|
567
|
+
event.preventDefault();
|
|
568
|
+
};
|
|
569
|
+
var onArrowUpKey = function onArrowUpKey(event) {
|
|
570
|
+
var processedItem = ObjectUtils.isNotEmpty(focusedItem) ? findPrevItem(focusedItem) : findLastItem();
|
|
571
|
+
changeFocusedItem({
|
|
572
|
+
originalEvent: event,
|
|
573
|
+
processedItem: processedItem,
|
|
574
|
+
selfCheck: true
|
|
575
|
+
});
|
|
576
|
+
event.preventDefault();
|
|
577
|
+
};
|
|
578
|
+
var onArrowLeftKey = function onArrowLeftKey(event) {
|
|
579
|
+
if (ObjectUtils.isNotEmpty(focusedItem)) {
|
|
580
|
+
var matched = activeItemPath.some(function (p) {
|
|
581
|
+
return p.key === focusedItem.key;
|
|
582
|
+
});
|
|
583
|
+
if (matched) {
|
|
584
|
+
setActiveItemPath(activeItemPath.filter(function (p) {
|
|
585
|
+
return p.key !== focusedItem.key;
|
|
586
|
+
}));
|
|
587
|
+
} else {
|
|
588
|
+
setFocusedItem(ObjectUtils.isNotEmpty(focusedItem.parent) ? focusedItem.parent : focusedItem);
|
|
589
|
+
}
|
|
590
|
+
event.preventDefault();
|
|
591
|
+
}
|
|
592
|
+
};
|
|
593
|
+
var onArrowRightKey = function onArrowRightKey(event) {
|
|
594
|
+
if (ObjectUtils.isNotEmpty(focusedItem)) {
|
|
595
|
+
var grouped = isItemGroup(focusedItem);
|
|
596
|
+
if (grouped) {
|
|
597
|
+
var matched = activeItemPath.some(function (p) {
|
|
598
|
+
return p.key === focusedItem.key;
|
|
599
|
+
});
|
|
600
|
+
if (matched) {
|
|
601
|
+
onArrowDownKey(event);
|
|
602
|
+
} else {
|
|
603
|
+
var _activeItemPath = activeItemPath.filter(function (p) {
|
|
604
|
+
return p.parentKey !== focusedItem.parentKey;
|
|
605
|
+
});
|
|
606
|
+
_activeItemPath.push(focusedItem);
|
|
607
|
+
setActiveItemPath(_activeItemPath);
|
|
608
|
+
}
|
|
609
|
+
}
|
|
610
|
+
event.preventDefault();
|
|
611
|
+
}
|
|
612
|
+
};
|
|
613
|
+
var onHomeKey = function onHomeKey(event) {
|
|
614
|
+
changeFocusedItem({
|
|
615
|
+
originalEvent: event,
|
|
616
|
+
processedItem: findFirstItem(),
|
|
617
|
+
allowHeaderFocus: false
|
|
618
|
+
});
|
|
619
|
+
event.preventDefault();
|
|
620
|
+
};
|
|
621
|
+
var onEndKey = function onEndKey(event) {
|
|
622
|
+
changeFocusedItem({
|
|
623
|
+
originalEvent: event,
|
|
624
|
+
processedItem: findLastItem(),
|
|
625
|
+
focusOnNext: true,
|
|
626
|
+
allowHeaderFocus: false
|
|
627
|
+
});
|
|
628
|
+
event.preventDefault();
|
|
629
|
+
};
|
|
630
|
+
var onEnterKey = function onEnterKey(event) {
|
|
631
|
+
if (ObjectUtils.isNotEmpty(focusedItem)) {
|
|
632
|
+
var element = DomHandler.findSingle(getListElement(), "li[id=\"".concat("".concat(focusedItemId), "\"]"));
|
|
633
|
+
var anchorElement = element && (DomHandler.findSingle(element, '[data-pc-section="action"]') || DomHandler.findSingle(element, 'a,button'));
|
|
634
|
+
anchorElement ? anchorElement.click() : element && element.click();
|
|
635
|
+
}
|
|
636
|
+
event.preventDefault();
|
|
637
|
+
};
|
|
638
|
+
var onSpaceKey = function onSpaceKey(event) {
|
|
639
|
+
onEnterKey(event);
|
|
640
|
+
};
|
|
641
|
+
var onItemToggle = function onItemToggle(event) {
|
|
642
|
+
var processedItem = event.processedItem,
|
|
643
|
+
expanded = event.expanded;
|
|
644
|
+
if (props.expandedKeys) {
|
|
645
|
+
props.onToggle && props.onToggle({
|
|
646
|
+
item: processedItem.item,
|
|
647
|
+
expanded: expanded
|
|
648
|
+
});
|
|
649
|
+
} else {
|
|
650
|
+
var _activeItemPath = activeItemPath.filter(function (p) {
|
|
651
|
+
return p.parentKey !== processedItem.parentKey;
|
|
652
|
+
});
|
|
653
|
+
expanded && _activeItemPath.push(processedItem);
|
|
654
|
+
setActiveItemPath(_activeItemPath);
|
|
655
|
+
}
|
|
656
|
+
DomHandler.focus(getListElement());
|
|
657
|
+
setFocusedItem(processedItem);
|
|
658
|
+
};
|
|
659
|
+
var isElementInPanel = function isElementInPanel(event, element) {
|
|
660
|
+
var panel = event.currentTarget.closest('[data-pc-section="panel"]');
|
|
661
|
+
return panel && panel.contains(element);
|
|
662
|
+
};
|
|
663
|
+
var isItemMatched = function isItemMatched(processedItem) {
|
|
664
|
+
return isValidItem(processedItem) && getItemLabel(processedItem).toLocaleLowerCase().startsWith(searchValue.current.toLocaleLowerCase());
|
|
665
|
+
};
|
|
666
|
+
var isVisibleItem = function isVisibleItem(processedItem) {
|
|
667
|
+
return !!processedItem && (processedItem.level === 0 || isItemActive(processedItem)) && isItemVisible(processedItem);
|
|
668
|
+
};
|
|
669
|
+
var isValidItem = function isValidItem(processedItem) {
|
|
670
|
+
return !!processedItem && !isItemDisabled(processedItem) && !getItemProp(processedItem, 'separator');
|
|
671
|
+
};
|
|
672
|
+
var findFirstItem = function findFirstItem() {
|
|
673
|
+
return visibleItems.find(function (processedItem) {
|
|
674
|
+
return isValidItem(processedItem);
|
|
675
|
+
});
|
|
676
|
+
};
|
|
677
|
+
var findLastItem = function findLastItem() {
|
|
678
|
+
return ObjectUtils.findLast(visibleItems, function (processedItem) {
|
|
679
|
+
return isValidItem(processedItem);
|
|
680
|
+
});
|
|
681
|
+
};
|
|
682
|
+
var findNextItem = function findNextItem(processedItem) {
|
|
683
|
+
var index = visibleItems.findIndex(function (item) {
|
|
684
|
+
return item.key === processedItem.key;
|
|
685
|
+
});
|
|
686
|
+
var matchedItem = index < visibleItems.length - 1 ? visibleItems.slice(index + 1).find(function (pItem) {
|
|
687
|
+
return isValidItem(pItem);
|
|
688
|
+
}) : undefined;
|
|
689
|
+
return matchedItem || processedItem;
|
|
690
|
+
};
|
|
691
|
+
var findPrevItem = function findPrevItem(processedItem) {
|
|
692
|
+
var index = visibleItems.findIndex(function (item) {
|
|
693
|
+
return item.key === processedItem.key;
|
|
694
|
+
});
|
|
695
|
+
var matchedItem = index > 0 ? ObjectUtils.findLast(visibleItems.slice(0, index), function (pItem) {
|
|
696
|
+
return isValidItem(pItem);
|
|
697
|
+
}) : undefined;
|
|
698
|
+
return matchedItem || processedItem;
|
|
699
|
+
};
|
|
700
|
+
var searchItems = function searchItems(event, _char) {
|
|
701
|
+
searchValue.current = (searchValue.current || '') + _char;
|
|
702
|
+
var matchedItem = null;
|
|
703
|
+
var matched = false;
|
|
704
|
+
if (ObjectUtils.isNotEmpty(focusedItem)) {
|
|
705
|
+
var focusedItemIndex = visibleItems.findIndex(function (processedItem) {
|
|
706
|
+
return processedItem.key === focusedItem.key;
|
|
707
|
+
});
|
|
708
|
+
matchedItem = visibleItems.slice(focusedItemIndex).find(function (processedItem) {
|
|
709
|
+
return isItemMatched(processedItem);
|
|
710
|
+
});
|
|
711
|
+
matchedItem = ObjectUtils.isEmpty(matchedItem) ? visibleItems.slice(0, focusedItemIndex).find(function (processedItem) {
|
|
712
|
+
return isItemMatched(processedItem);
|
|
713
|
+
}) : matchedItem;
|
|
714
|
+
} else {
|
|
715
|
+
matchedItem = visibleItems.find(function (processedItem) {
|
|
716
|
+
return isItemMatched(processedItem);
|
|
717
|
+
});
|
|
718
|
+
}
|
|
719
|
+
if (ObjectUtils.isNotEmpty(matchedItem)) {
|
|
720
|
+
matched = true;
|
|
721
|
+
}
|
|
722
|
+
if (ObjectUtils.isEmpty(matchedItem) && ObjectUtils.isEmpty(focusedItem)) {
|
|
723
|
+
matchedItem = findFirstItem();
|
|
724
|
+
}
|
|
725
|
+
if (ObjectUtils.isNotEmpty(matchedItem)) {
|
|
726
|
+
changeFocusedItem({
|
|
727
|
+
originalEvent: event,
|
|
728
|
+
processedItem: matchedItem,
|
|
729
|
+
allowHeaderFocus: false
|
|
730
|
+
});
|
|
731
|
+
}
|
|
732
|
+
if (searchTimeout) {
|
|
733
|
+
clearTimeout(searchTimeout.current);
|
|
734
|
+
}
|
|
735
|
+
searchTimeout.current = setTimeout(function () {
|
|
736
|
+
searchValue.current = '';
|
|
737
|
+
searchTimeout.currentt = null;
|
|
738
|
+
}, 500);
|
|
739
|
+
return matched;
|
|
740
|
+
};
|
|
741
|
+
var changeFocusedItem = function changeFocusedItem(event) {
|
|
742
|
+
var originalEvent = event.originalEvent,
|
|
743
|
+
processedItem = event.processedItem,
|
|
744
|
+
focusOnNext = event.focusOnNext,
|
|
745
|
+
selfCheck = event.selfCheck,
|
|
746
|
+
_event$allowHeaderFoc = event.allowHeaderFocus,
|
|
747
|
+
allowHeaderFocus = _event$allowHeaderFoc === void 0 ? true : _event$allowHeaderFoc;
|
|
748
|
+
if (ObjectUtils.isNotEmpty(focusedItem) && focusedItem.key !== processedItem.key) {
|
|
749
|
+
setFocusedItem(processedItem);
|
|
750
|
+
scrollInView();
|
|
751
|
+
} else if (allowHeaderFocus) {
|
|
752
|
+
props.onHeaderFocus && props.onHeaderFocus({
|
|
753
|
+
originalEvent: originalEvent,
|
|
754
|
+
focusOnNext: focusOnNext,
|
|
755
|
+
selfCheck: selfCheck
|
|
756
|
+
});
|
|
757
|
+
}
|
|
758
|
+
};
|
|
759
|
+
var scrollInView = function scrollInView() {
|
|
760
|
+
var element = DomHandler.findSingle(getListElement(), "li[id=\"".concat("".concat(focusedItemId), "\"]"));
|
|
761
|
+
if (element) {
|
|
762
|
+
element.scrollIntoView && element.scrollIntoView({
|
|
763
|
+
block: 'nearest',
|
|
764
|
+
inline: 'start'
|
|
765
|
+
});
|
|
766
|
+
}
|
|
767
|
+
};
|
|
768
|
+
var autoUpdateActiveItemPath = function autoUpdateActiveItemPath(expandedKeys) {
|
|
769
|
+
var _activeItemPath = Object.entries(expandedKeys || {}).reduce(function (acc, _ref) {
|
|
770
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
771
|
+
key = _ref2[0],
|
|
772
|
+
val = _ref2[1];
|
|
773
|
+
if (val) {
|
|
774
|
+
var processedItem = findProcessedItemByItemKey(key);
|
|
775
|
+
processedItem && acc.push(processedItem);
|
|
776
|
+
}
|
|
777
|
+
return acc;
|
|
778
|
+
}, []);
|
|
779
|
+
setActiveItemPath(_activeItemPath);
|
|
780
|
+
};
|
|
781
|
+
var findProcessedItemByItemKey = function findProcessedItemByItemKey(key, processed) {
|
|
782
|
+
var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
783
|
+
var _processedItems = processed ? processed : level === 0 && props.model;
|
|
784
|
+
if (!_processedItems) return null;
|
|
785
|
+
for (var i = 0; i < _processedItems.length; i++) {
|
|
786
|
+
var processedItem = _processedItems[i];
|
|
787
|
+
var processedKey = getItemProp(processedItem, 'key') || processedItem.key;
|
|
788
|
+
if (processedKey === key) return processedItem;
|
|
789
|
+
var matchedItem = findProcessedItemByItemKey(key, processedItem.items, level + 1);
|
|
790
|
+
if (matchedItem) return matchedItem;
|
|
791
|
+
}
|
|
792
|
+
};
|
|
793
|
+
var createProcessedItems = function createProcessedItems(items) {
|
|
794
|
+
var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
795
|
+
var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
796
|
+
var parentKey = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
|
|
797
|
+
var processedItems = [];
|
|
798
|
+
items && items.forEach(function (item, index) {
|
|
799
|
+
var key = item.key ? item.key : (parentKey !== '' ? parentKey + '_' : '') + index;
|
|
800
|
+
var newItem = {
|
|
801
|
+
item: item,
|
|
802
|
+
index: index,
|
|
803
|
+
level: level,
|
|
804
|
+
key: key,
|
|
805
|
+
parent: parent,
|
|
806
|
+
parentKey: parentKey
|
|
807
|
+
};
|
|
808
|
+
newItem['items'] = createProcessedItems(item.items, level + 1, newItem, key);
|
|
809
|
+
processedItems.push(newItem);
|
|
810
|
+
});
|
|
811
|
+
return processedItems;
|
|
812
|
+
};
|
|
813
|
+
var flatItems = function flatItems(processedItems) {
|
|
814
|
+
var processedFlattenItems = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
815
|
+
processedItems && processedItems.forEach(function (processedItem) {
|
|
816
|
+
if (isVisibleItem(processedItem)) {
|
|
817
|
+
processedFlattenItems.push(processedItem);
|
|
818
|
+
flatItems(processedItem.items, processedFlattenItems);
|
|
819
|
+
}
|
|
820
|
+
});
|
|
821
|
+
return processedFlattenItems;
|
|
822
|
+
};
|
|
823
|
+
useUpdateEffect(function () {
|
|
824
|
+
var processed = createProcessedItems(props.model);
|
|
825
|
+
setProcessedItems(processed);
|
|
826
|
+
}, [props.model]);
|
|
827
|
+
useUpdateEffect(function () {
|
|
828
|
+
var _visibleItems = flatItems(processedItems);
|
|
829
|
+
setVisibleItems(_visibleItems);
|
|
830
|
+
}, [processedItems, activeItemPath]);
|
|
831
|
+
useUpdateEffect(function () {
|
|
832
|
+
var _id = ObjectUtils.isNotEmpty(focusedItem) ? "".concat(props.panelId, "_").concat(focusedItem.key) : null;
|
|
833
|
+
setFocusedItemId(_id);
|
|
834
|
+
}, [props.panelId, focusedItem]);
|
|
835
|
+
useUpdateEffect(function () {
|
|
836
|
+
autoUpdateActiveItemPath(props.expandedKeys);
|
|
837
|
+
}, [props.expandedKeys]);
|
|
838
|
+
return /*#__PURE__*/React.createElement(PanelMenuSub, {
|
|
839
|
+
hostName: "PanelMenu",
|
|
840
|
+
id: props.panelId + '_list',
|
|
841
|
+
ref: elementRef,
|
|
842
|
+
role: "tree",
|
|
843
|
+
tabIndex: -1,
|
|
844
|
+
ariaActivedescendant: focused ? focusedItemId : undefined,
|
|
845
|
+
panelId: props.panelId,
|
|
846
|
+
focusedItemId: focused ? focusedItemId : undefined,
|
|
847
|
+
model: processedItems,
|
|
848
|
+
activeItemPath: activeItemPath,
|
|
849
|
+
menuProps: props.menuProps,
|
|
850
|
+
onFocus: onFocus,
|
|
851
|
+
onBlur: onBlur,
|
|
852
|
+
onKeyDown: onKeyDown,
|
|
853
|
+
onItemToggle: onItemToggle,
|
|
854
|
+
level: 0,
|
|
855
|
+
className: cx('submenu'),
|
|
856
|
+
submenuIcon: props.submenuIcon,
|
|
857
|
+
root: true,
|
|
858
|
+
ptm: ptm,
|
|
859
|
+
cx: cx
|
|
860
|
+
});
|
|
861
|
+
});
|
|
862
|
+
PanelMenuList.displayName = 'PanelMenuList';
|
|
863
|
+
|
|
410
864
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
411
865
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
412
866
|
var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inProps, ref) {
|
|
@@ -420,19 +874,20 @@ var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
420
874
|
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
421
875
|
activeItemState = _React$useState4[0],
|
|
422
876
|
setActiveItemState = _React$useState4[1];
|
|
423
|
-
var _React$useState5 = React.useState(
|
|
877
|
+
var _React$useState5 = React.useState([]),
|
|
424
878
|
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
425
|
-
|
|
426
|
-
|
|
879
|
+
activeItemsState = _React$useState6[0],
|
|
880
|
+
setActiveItemsState = _React$useState6[1];
|
|
881
|
+
var _React$useState7 = React.useState(false),
|
|
882
|
+
_React$useState8 = _slicedToArray(_React$useState7, 2);
|
|
883
|
+
_React$useState8[0];
|
|
884
|
+
var setAnimationDisabled = _React$useState8[1];
|
|
427
885
|
var elementRef = React.useRef(null);
|
|
428
|
-
var headerId = idState + '_header';
|
|
429
|
-
var contentId = idState + '_content';
|
|
430
886
|
var _PanelMenuBase$setMet = PanelMenuBase.setMetaData({
|
|
431
887
|
props: props,
|
|
432
888
|
state: {
|
|
433
889
|
id: idState,
|
|
434
|
-
activeItem: activeItemState
|
|
435
|
-
animationDisabled: animationDisabled
|
|
890
|
+
activeItem: activeItemState
|
|
436
891
|
}
|
|
437
892
|
}),
|
|
438
893
|
ptm = _PanelMenuBase$setMet.ptm,
|
|
@@ -441,24 +896,6 @@ var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
441
896
|
useHandleStyle(PanelMenuBase.css.styles, isUnstyled, {
|
|
442
897
|
name: 'panelmenu'
|
|
443
898
|
});
|
|
444
|
-
var findActiveItem = function findActiveItem() {
|
|
445
|
-
if (props.model) {
|
|
446
|
-
if (props.multiple) {
|
|
447
|
-
return props.model.filter(function (item) {
|
|
448
|
-
return item.expanded;
|
|
449
|
-
});
|
|
450
|
-
} else {
|
|
451
|
-
var activeItem = null;
|
|
452
|
-
props.model.forEach(function (item) {
|
|
453
|
-
if (item.expanded) {
|
|
454
|
-
if (!activeItem) activeItem = item;else item.expanded = false;
|
|
455
|
-
}
|
|
456
|
-
});
|
|
457
|
-
return activeItem;
|
|
458
|
-
}
|
|
459
|
-
}
|
|
460
|
-
return null;
|
|
461
|
-
};
|
|
462
899
|
var onItemClick = function onItemClick(event, item) {
|
|
463
900
|
if (item.disabled) {
|
|
464
901
|
event.preventDefault();
|
|
@@ -473,30 +910,163 @@ var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
473
910
|
item: item
|
|
474
911
|
});
|
|
475
912
|
}
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
913
|
+
changeActiveItem(event, item);
|
|
914
|
+
};
|
|
915
|
+
var getItemProp = function getItemProp(item, name) {
|
|
916
|
+
return item ? ObjectUtils.getItemValue(item[name]) : undefined;
|
|
917
|
+
};
|
|
918
|
+
var isItemActive = function isItemActive(item) {
|
|
919
|
+
return props.expandedKeys ? props.expandedKeys[getItemProp(item, 'key')] : props.multiple ? activeItemsState.some(function (subItem) {
|
|
920
|
+
return ObjectUtils.equals(item, subItem);
|
|
921
|
+
}) : ObjectUtils.equals(item, activeItemState);
|
|
922
|
+
};
|
|
923
|
+
var isItemVisible = function isItemVisible(item) {
|
|
924
|
+
return getItemProp(item, 'visible') !== false;
|
|
925
|
+
};
|
|
926
|
+
var isItemDisabled = function isItemDisabled(item) {
|
|
927
|
+
return getItemProp(item, 'disabled');
|
|
928
|
+
};
|
|
929
|
+
var isItemFocused = function isItemFocused(item) {
|
|
930
|
+
return ObjectUtils.equals(item, activeItemState);
|
|
931
|
+
};
|
|
932
|
+
var getPanelId = function getPanelId(index) {
|
|
933
|
+
return "".concat(idState, "_").concat(index);
|
|
934
|
+
};
|
|
935
|
+
var getHeaderId = function getHeaderId(index) {
|
|
936
|
+
return "".concat(getPanelId(index), "_header");
|
|
937
|
+
};
|
|
938
|
+
var getContentId = function getContentId(index) {
|
|
939
|
+
return "".concat(getPanelId(index), "_content");
|
|
940
|
+
};
|
|
941
|
+
var onHeaderKeyDown = function onHeaderKeyDown(event, item) {
|
|
942
|
+
switch (event.code) {
|
|
943
|
+
case 'ArrowDown':
|
|
944
|
+
onHeaderArrowDownKey(event);
|
|
945
|
+
break;
|
|
946
|
+
case 'ArrowUp':
|
|
947
|
+
onHeaderArrowUpKey(event);
|
|
948
|
+
break;
|
|
949
|
+
case 'Home':
|
|
950
|
+
onHeaderHomeKey(event);
|
|
951
|
+
break;
|
|
952
|
+
case 'End':
|
|
953
|
+
onHeaderEndKey(event);
|
|
954
|
+
break;
|
|
955
|
+
case 'Enter':
|
|
956
|
+
case 'NumpadEnter':
|
|
957
|
+
case 'Space':
|
|
958
|
+
onHeaderEnterKey(event, item);
|
|
959
|
+
break;
|
|
960
|
+
}
|
|
961
|
+
};
|
|
962
|
+
var onHeaderArrowDownKey = function onHeaderArrowDownKey(event) {
|
|
963
|
+
var rootList = DomHandler.getAttribute(event.currentTarget, 'data-p-highlight') === true ? DomHandler.findSingle(event.currentTarget.nextElementSibling, '[data-pc-section="menu"]') : null;
|
|
964
|
+
rootList ? DomHandler.focus(rootList) : updateFocusedHeader({
|
|
965
|
+
originalEvent: event,
|
|
966
|
+
focusOnNext: true
|
|
967
|
+
});
|
|
968
|
+
event.preventDefault();
|
|
969
|
+
};
|
|
970
|
+
var onHeaderArrowUpKey = function onHeaderArrowUpKey(event) {
|
|
971
|
+
var prevHeader = findPrevHeader(event.currentTarget.parentElement) || findLastHeader();
|
|
972
|
+
var rootList = DomHandler.getAttribute(prevHeader, 'data-p-highlight') === true ? DomHandler.findSingle(prevHeader.nextElementSibling, '[data-pc-section="menu"]') : null;
|
|
973
|
+
rootList ? DomHandler.focus(rootList) : updateFocusedHeader({
|
|
974
|
+
originalEvent: event,
|
|
975
|
+
focusOnNext: false
|
|
976
|
+
});
|
|
977
|
+
event.preventDefault();
|
|
978
|
+
};
|
|
979
|
+
var onHeaderHomeKey = function onHeaderHomeKey(event) {
|
|
980
|
+
changeFocusedHeader(event, findFirstHeader());
|
|
981
|
+
event.preventDefault();
|
|
982
|
+
};
|
|
983
|
+
var onHeaderEndKey = function onHeaderEndKey(event) {
|
|
984
|
+
changeFocusedHeader(event, findLastHeader());
|
|
985
|
+
event.preventDefault();
|
|
986
|
+
};
|
|
987
|
+
var onHeaderEnterKey = function onHeaderEnterKey(event, item) {
|
|
988
|
+
var headerAction = DomHandler.findSingle(event.currentTarget, '[data-pc-section="headeraction"]');
|
|
989
|
+
headerAction ? headerAction.click() : onItemClick(event, item);
|
|
990
|
+
event.preventDefault();
|
|
991
|
+
};
|
|
992
|
+
var findNextHeader = function findNextHeader(panelElement) {
|
|
993
|
+
var selfCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
994
|
+
var nextPanelElement = selfCheck ? panelElement : panelElement.nextElementSibling;
|
|
995
|
+
var headerElement = DomHandler.findSingle(nextPanelElement, '[data-pc-section="header"]');
|
|
996
|
+
return headerElement ? DomHandler.getAttribute(headerElement, 'data-p-disabled') ? findNextHeader(headerElement.parentElement) : headerElement : null;
|
|
997
|
+
};
|
|
998
|
+
var findPrevHeader = function findPrevHeader(panelElement) {
|
|
999
|
+
var selfCheck = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
1000
|
+
var prevPanelElement = selfCheck ? panelElement : panelElement.previousElementSibling;
|
|
1001
|
+
var headerElement = DomHandler.findSingle(prevPanelElement, '[data-pc-section="header"]');
|
|
1002
|
+
return headerElement ? DomHandler.getAttribute(headerElement, 'data-p-disabled') ? findPrevHeader(headerElement.parentElement) : headerElement : null;
|
|
1003
|
+
};
|
|
1004
|
+
var findFirstHeader = function findFirstHeader() {
|
|
1005
|
+
return findNextHeader(elementRef.current.firstElementChild, true);
|
|
1006
|
+
};
|
|
1007
|
+
var findLastHeader = function findLastHeader() {
|
|
1008
|
+
return findPrevHeader(elementRef.current.lastElementChild, true);
|
|
1009
|
+
};
|
|
1010
|
+
var updateFocusedHeader = function updateFocusedHeader(event) {
|
|
1011
|
+
var originalEvent = event.originalEvent,
|
|
1012
|
+
focusOnNext = event.focusOnNext,
|
|
1013
|
+
selfCheck = event.selfCheck;
|
|
1014
|
+
var panelElement = originalEvent.currentTarget.closest('[data-pc-section="panel"]');
|
|
1015
|
+
var header = selfCheck ? DomHandler.findSingle(panelElement, '[data-pc-section="header"]') : focusOnNext ? findNextHeader(panelElement) : findPrevHeader(panelElement);
|
|
1016
|
+
header ? changeFocusedHeader(originalEvent, header) : focusOnNext ? onHeaderHomeKey(originalEvent) : onHeaderEndKey(originalEvent);
|
|
1017
|
+
};
|
|
1018
|
+
var changeActiveItem = function changeActiveItem(event, item) {
|
|
1019
|
+
if (!isItemDisabled(item)) {
|
|
1020
|
+
var active = isItemActive(item);
|
|
1021
|
+
var isOpen = !active;
|
|
1022
|
+
var _activeItemState = activeItemState && ObjectUtils.equals(item, activeItemState) ? null : item;
|
|
1023
|
+
setActiveItemState(_activeItemState);
|
|
1024
|
+
if (props.multiple) {
|
|
1025
|
+
var activeItems = activeItemsState;
|
|
1026
|
+
if (activeItemsState.some(function (subItem) {
|
|
1027
|
+
return ObjectUtils.equals(item, subItem);
|
|
1028
|
+
})) {
|
|
1029
|
+
activeItemsState.filter(function (subItem) {
|
|
1030
|
+
return !ObjectUtils.equals(item, subItem);
|
|
1031
|
+
}), _readOnlyError("activeItems");
|
|
1032
|
+
} else {
|
|
1033
|
+
activeItems.push(item);
|
|
1034
|
+
}
|
|
1035
|
+
setActiveItemsState(activeItems);
|
|
490
1036
|
}
|
|
1037
|
+
changeExpandedKeys({
|
|
1038
|
+
item: item,
|
|
1039
|
+
expanded: !active
|
|
1040
|
+
});
|
|
1041
|
+
isOpen ? props.onOpen && props.onOpen({
|
|
1042
|
+
originalEvent: event,
|
|
1043
|
+
item: item
|
|
1044
|
+
}) : props.onClose && props.onClose({
|
|
1045
|
+
originalEvent: event,
|
|
1046
|
+
item: item
|
|
1047
|
+
});
|
|
491
1048
|
}
|
|
492
1049
|
};
|
|
493
|
-
var
|
|
494
|
-
|
|
1050
|
+
var changeExpandedKeys = function changeExpandedKeys(_ref) {
|
|
1051
|
+
var item = _ref.item,
|
|
1052
|
+
_ref$expanded = _ref.expanded,
|
|
1053
|
+
expanded = _ref$expanded === void 0 ? false : _ref$expanded;
|
|
1054
|
+
if (props.expandedKeys) {
|
|
1055
|
+
var _keys = _objectSpread({}, props.expandedKeys);
|
|
1056
|
+
if (expanded) _keys[item.key] = true;else delete _keys[item.key];
|
|
1057
|
+
props.onExpandedKeysChange && props.onExpandedKeysChange(_keys);
|
|
1058
|
+
}
|
|
495
1059
|
};
|
|
496
|
-
var
|
|
1060
|
+
var changeFocusedHeader = function changeFocusedHeader(event, element) {
|
|
1061
|
+
element && DomHandler.focus(element);
|
|
1062
|
+
};
|
|
1063
|
+
var getPTOptions = function getPTOptions(item, key, index) {
|
|
497
1064
|
return ptm(key, {
|
|
498
1065
|
context: {
|
|
499
|
-
active: isItemActive(item)
|
|
1066
|
+
active: isItemActive(item),
|
|
1067
|
+
focused: isItemFocused(item),
|
|
1068
|
+
disabled: isItemDisabled(item),
|
|
1069
|
+
index: index
|
|
500
1070
|
}
|
|
501
1071
|
});
|
|
502
1072
|
};
|
|
@@ -512,17 +1082,15 @@ var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
512
1082
|
if (!idState) {
|
|
513
1083
|
setIdState(UniqueComponentId());
|
|
514
1084
|
}
|
|
515
|
-
setActiveItemState(findActiveItem());
|
|
516
1085
|
});
|
|
517
1086
|
useUpdateEffect(function () {
|
|
518
1087
|
setAnimationDisabled(true);
|
|
519
|
-
setActiveItemState(findActiveItem());
|
|
520
1088
|
}, [props.model]);
|
|
521
1089
|
var onEnter = function onEnter() {
|
|
522
1090
|
setAnimationDisabled(false);
|
|
523
1091
|
};
|
|
524
1092
|
var createPanel = function createPanel(item, index) {
|
|
525
|
-
if (item
|
|
1093
|
+
if (!isItemVisible(item)) {
|
|
526
1094
|
return null;
|
|
527
1095
|
}
|
|
528
1096
|
var key = item.id || idState + '_' + index;
|
|
@@ -532,31 +1100,25 @@ var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
532
1100
|
className: cx('headerIcon', {
|
|
533
1101
|
item: item
|
|
534
1102
|
})
|
|
535
|
-
}, getPTOptions(item, 'headerIcon'));
|
|
1103
|
+
}, getPTOptions(item, 'headerIcon', index));
|
|
536
1104
|
var icon = IconUtils.getJSXIcon(item.icon, _objectSpread({}, headerIconProps), {
|
|
537
1105
|
props: props
|
|
538
1106
|
});
|
|
539
1107
|
var submenuIconClassName = 'p-panelmenu-icon';
|
|
540
1108
|
var headerSubmenuIconProps = mergeProps({
|
|
541
1109
|
className: cx('headerSubmenuIcon')
|
|
542
|
-
}, getPTOptions(item, 'headerSubmenuIcon'));
|
|
1110
|
+
}, getPTOptions(item, 'headerSubmenuIcon', index));
|
|
543
1111
|
var submenuIcon = item.items && IconUtils.getJSXIcon(active ? props.submenuIcon || /*#__PURE__*/React.createElement(ChevronDownIcon, headerSubmenuIconProps) : props.submenuIcon || /*#__PURE__*/React.createElement(ChevronRightIcon, headerSubmenuIconProps));
|
|
544
1112
|
var headerLabelProps = mergeProps({
|
|
545
1113
|
className: cx('headerLabel')
|
|
546
|
-
}, getPTOptions(item, 'headerLabel'));
|
|
1114
|
+
}, getPTOptions(item, 'headerLabel', index));
|
|
547
1115
|
var label = item.label && /*#__PURE__*/React.createElement("span", headerLabelProps, item.label);
|
|
548
1116
|
var menuContentRef = /*#__PURE__*/React.createRef();
|
|
549
1117
|
var headerActionProps = mergeProps({
|
|
550
1118
|
href: item.url || '#',
|
|
551
1119
|
className: cx('headerAction'),
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
},
|
|
555
|
-
'aria-expanded': active,
|
|
556
|
-
id: headerId,
|
|
557
|
-
'aria-controls': contentId,
|
|
558
|
-
'aria-disabled': item.disabled
|
|
559
|
-
}, getPTOptions(item, 'headerAction'));
|
|
1120
|
+
tabIndex: '-1'
|
|
1121
|
+
}, getPTOptions(item, 'headerAction', index));
|
|
560
1122
|
var content = /*#__PURE__*/React.createElement("a", headerActionProps, submenuIcon, icon, label);
|
|
561
1123
|
if (item.template) {
|
|
562
1124
|
var defaultContentOptions = {
|
|
@@ -580,24 +1142,42 @@ var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
580
1142
|
item: item
|
|
581
1143
|
}),
|
|
582
1144
|
style: item.style
|
|
583
|
-
}, getPTOptions(item, 'panel'));
|
|
1145
|
+
}, getPTOptions(item, 'panel', index));
|
|
584
1146
|
var headerProps = mergeProps({
|
|
1147
|
+
id: getHeaderId(index),
|
|
585
1148
|
className: cx('header', {
|
|
586
1149
|
active: active,
|
|
587
1150
|
item: item
|
|
588
1151
|
}),
|
|
1152
|
+
'aria-label': item.label,
|
|
1153
|
+
'aria-expanded': active,
|
|
1154
|
+
'aria-disabled': item.disabled,
|
|
1155
|
+
'aria-controls': getContentId(index),
|
|
1156
|
+
tabIndex: item.disabled ? null : '0',
|
|
1157
|
+
onClick: function onClick(event) {
|
|
1158
|
+
return onItemClick(event, item);
|
|
1159
|
+
},
|
|
1160
|
+
onKeyDown: function onKeyDown(event) {
|
|
1161
|
+
return onHeaderKeyDown(event, item);
|
|
1162
|
+
},
|
|
1163
|
+
'data-p-disabled': item.disabled,
|
|
1164
|
+
'data-p-highlight': active,
|
|
1165
|
+
role: 'button',
|
|
589
1166
|
style: item.style
|
|
590
|
-
}, getPTOptions(item, 'header'));
|
|
1167
|
+
}, getPTOptions(item, 'header', index));
|
|
1168
|
+
var headerContentProps = mergeProps({
|
|
1169
|
+
className: cx('headerContent')
|
|
1170
|
+
}, getPTOptions(item, 'headerContent', index));
|
|
591
1171
|
var menuContentProps = mergeProps({
|
|
592
1172
|
className: cx('menuContent')
|
|
593
|
-
}, getPTOptions(item, 'menuContent'));
|
|
1173
|
+
}, getPTOptions(item, 'menuContent', index));
|
|
594
1174
|
var toggleableContentProps = mergeProps({
|
|
595
1175
|
className: cx('toggleableContent', {
|
|
596
1176
|
active: active
|
|
597
1177
|
}),
|
|
598
1178
|
role: 'region',
|
|
599
|
-
'aria-labelledby':
|
|
600
|
-
}, getPTOptions(item, 'toggleableContent'));
|
|
1179
|
+
'aria-labelledby': getHeaderId(index)
|
|
1180
|
+
}, getPTOptions(item, 'toggleableContent', index));
|
|
601
1181
|
var transitionProps = mergeProps({
|
|
602
1182
|
classNames: cx('transition'),
|
|
603
1183
|
timeout: {
|
|
@@ -605,25 +1185,25 @@ var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
605
1185
|
exit: 450
|
|
606
1186
|
},
|
|
607
1187
|
onEnter: onEnter,
|
|
608
|
-
disabled: animationDisabled,
|
|
609
1188
|
"in": active,
|
|
610
1189
|
unmountOnExit: true,
|
|
611
1190
|
options: props.transitionOptions
|
|
612
|
-
}, getPTOptions(item, 'transition'));
|
|
613
|
-
return /*#__PURE__*/React.createElement("div", panelProps, /*#__PURE__*/React.createElement("div", headerProps, content), /*#__PURE__*/React.createElement(CSSTransition, _extends({
|
|
1191
|
+
}, getPTOptions(item, 'transition', index));
|
|
1192
|
+
return /*#__PURE__*/React.createElement("div", panelProps, /*#__PURE__*/React.createElement("div", headerProps, /*#__PURE__*/React.createElement("div", headerContentProps, content)), /*#__PURE__*/React.createElement(CSSTransition, _extends({
|
|
614
1193
|
nodeRef: menuContentRef
|
|
615
1194
|
}, transitionProps), /*#__PURE__*/React.createElement("div", _extends({
|
|
616
|
-
id:
|
|
1195
|
+
id: getContentId(index),
|
|
617
1196
|
ref: menuContentRef
|
|
618
|
-
}, toggleableContentProps), /*#__PURE__*/React.createElement("div", menuContentProps, /*#__PURE__*/React.createElement(
|
|
619
|
-
|
|
620
|
-
id: key,
|
|
1197
|
+
}, toggleableContentProps), /*#__PURE__*/React.createElement("div", menuContentProps, /*#__PURE__*/React.createElement(PanelMenuList, {
|
|
1198
|
+
panelId: getPanelId(index),
|
|
621
1199
|
menuProps: props,
|
|
1200
|
+
onToggle: changeExpandedKeys,
|
|
1201
|
+
onHeaderFocus: updateFocusedHeader,
|
|
1202
|
+
level: 0,
|
|
622
1203
|
model: item.items,
|
|
1204
|
+
expandedKeys: props.expandedKeys,
|
|
623
1205
|
className: "p-panelmenu-root-submenu",
|
|
624
|
-
multiple: props.multiple,
|
|
625
1206
|
submenuIcon: props.submenuIcon,
|
|
626
|
-
root: true,
|
|
627
1207
|
ptm: ptm,
|
|
628
1208
|
cx: cx
|
|
629
1209
|
})))));
|
|
@@ -633,13 +1213,12 @@ var PanelMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
633
1213
|
};
|
|
634
1214
|
var panels = createPanels();
|
|
635
1215
|
var rootProps = mergeProps({
|
|
1216
|
+
ref: elementRef,
|
|
636
1217
|
className: cx('root'),
|
|
1218
|
+
id: props.id,
|
|
637
1219
|
style: props.style
|
|
638
1220
|
}, PanelMenuBase.getOtherProps(props), ptm('root'));
|
|
639
|
-
return /*#__PURE__*/React.createElement("div",
|
|
640
|
-
id: props.id,
|
|
641
|
-
ref: elementRef
|
|
642
|
-
}, rootProps), panels);
|
|
1221
|
+
return /*#__PURE__*/React.createElement("div", rootProps, panels);
|
|
643
1222
|
}));
|
|
644
1223
|
PanelMenu.displayName = 'PanelMenu';
|
|
645
1224
|
|