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 PrimeReact, { PrimeReactContext } from 'primereact/api';
|
|
4
4
|
import { ComponentBase, useHandleStyle } from 'primereact/componentbase';
|
|
5
5
|
import { CSSTransition } from 'primereact/csstransition';
|
|
6
|
-
import {
|
|
6
|
+
import { useUpdateEffect, useMatchMedia, useEventListener, useResizeListener, useMountEffect, useUnmountEffect } from 'primereact/hooks';
|
|
7
7
|
import { OverlayService } from 'primereact/overlayservice';
|
|
8
8
|
import { Portal } from 'primereact/portal';
|
|
9
|
-
import { classNames, mergeProps, DomHandler,
|
|
9
|
+
import { classNames, mergeProps, DomHandler, ObjectUtils, IconUtils, UniqueComponentId, ZIndexUtils } from 'primereact/utils';
|
|
10
10
|
import { AngleRightIcon } from 'primereact/icons/angleright';
|
|
11
11
|
import { Ripple } from 'primereact/ripple';
|
|
12
12
|
|
|
@@ -25,6 +25,47 @@ function _extends() {
|
|
|
25
25
|
return _extends.apply(this, arguments);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
+
function _typeof(o) {
|
|
29
|
+
"@babel/helpers - typeof";
|
|
30
|
+
|
|
31
|
+
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
|
|
32
|
+
return typeof o;
|
|
33
|
+
} : function (o) {
|
|
34
|
+
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
|
|
35
|
+
}, _typeof(o);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function _toPrimitive(input, hint) {
|
|
39
|
+
if (_typeof(input) !== "object" || input === null) return input;
|
|
40
|
+
var prim = input[Symbol.toPrimitive];
|
|
41
|
+
if (prim !== undefined) {
|
|
42
|
+
var res = prim.call(input, hint || "default");
|
|
43
|
+
if (_typeof(res) !== "object") return res;
|
|
44
|
+
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
45
|
+
}
|
|
46
|
+
return (hint === "string" ? String : Number)(input);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
function _toPropertyKey(arg) {
|
|
50
|
+
var key = _toPrimitive(arg, "string");
|
|
51
|
+
return _typeof(key) === "symbol" ? key : String(key);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
function _defineProperty(obj, key, value) {
|
|
55
|
+
key = _toPropertyKey(key);
|
|
56
|
+
if (key in obj) {
|
|
57
|
+
Object.defineProperty(obj, key, {
|
|
58
|
+
value: value,
|
|
59
|
+
enumerable: true,
|
|
60
|
+
configurable: true,
|
|
61
|
+
writable: true
|
|
62
|
+
});
|
|
63
|
+
} else {
|
|
64
|
+
obj[key] = value;
|
|
65
|
+
}
|
|
66
|
+
return obj;
|
|
67
|
+
}
|
|
68
|
+
|
|
28
69
|
function _arrayWithHoles(arr) {
|
|
29
70
|
if (Array.isArray(arr)) return arr;
|
|
30
71
|
}
|
|
@@ -90,49 +131,39 @@ var classes = {
|
|
|
90
131
|
'p-ripple-disabled': context && context.ripple === false || PrimeReact.ripple === false
|
|
91
132
|
}, props.className);
|
|
92
133
|
},
|
|
93
|
-
separator: 'p-
|
|
134
|
+
separator: 'p-menuitem-separator',
|
|
94
135
|
icon: function icon(_ref2) {
|
|
95
136
|
var _icon = _ref2._icon;
|
|
96
137
|
return classNames('p-menuitem-icon', _icon);
|
|
97
138
|
},
|
|
139
|
+
content: 'p-menuitem-content',
|
|
98
140
|
label: 'p-menuitem-text',
|
|
99
141
|
submenuIcon: 'p-submenu-icon',
|
|
100
|
-
action:
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
menuitem: function menuitem(_ref4) {
|
|
107
|
-
var _className = _ref4._className,
|
|
108
|
-
active = _ref4.active;
|
|
142
|
+
action: 'p-menuitem-link',
|
|
143
|
+
menuitem: function menuitem(_ref3) {
|
|
144
|
+
var _className = _ref3._className,
|
|
145
|
+
active = _ref3.active,
|
|
146
|
+
focused = _ref3.focused,
|
|
147
|
+
disabled = _ref3.disabled;
|
|
109
148
|
return classNames('p-menuitem', {
|
|
110
|
-
'p-menuitem-active': active
|
|
149
|
+
'p-menuitem-active p-highlight': active,
|
|
150
|
+
'p-focus': focused,
|
|
151
|
+
'p-disabled': disabled
|
|
111
152
|
}, _className);
|
|
112
153
|
},
|
|
113
|
-
menu:
|
|
114
|
-
|
|
115
|
-
return classNames({
|
|
116
|
-
'p-submenu-list': !props.root
|
|
117
|
-
});
|
|
118
|
-
},
|
|
119
|
-
submenu: function submenu(_ref6) {
|
|
120
|
-
var props = _ref6.subProps;
|
|
121
|
-
return classNames({
|
|
122
|
-
'p-submenu-list': !props.root
|
|
123
|
-
});
|
|
124
|
-
},
|
|
154
|
+
menu: 'p-tieredmenu-root-list',
|
|
155
|
+
submenu: 'p-submenu-list',
|
|
125
156
|
transition: 'p-connected-overlay'
|
|
126
157
|
};
|
|
127
158
|
var inlineStyles = {
|
|
128
|
-
submenu: function submenu(
|
|
129
|
-
var props =
|
|
159
|
+
submenu: function submenu(_ref4) {
|
|
160
|
+
var props = _ref4.subProps;
|
|
130
161
|
return {
|
|
131
162
|
display: !props.root && props.parentActive ? 'block' : 'none'
|
|
132
163
|
};
|
|
133
164
|
}
|
|
134
165
|
};
|
|
135
|
-
var styles = "\n@layer primereact {\n .p-tieredmenu-overlay {\n position: absolute;\n }\n
|
|
166
|
+
var styles = "\n@layer primereact {\n .p-tieredmenu-overlay {\n position: absolute;\n }\n\n .p-tieredmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n .p-tieredmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n }\n\n .p-tieredmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n }\n\n .p-tieredmenu .p-menuitem-text {\n line-height: 1;\n }\n\n .p-tieredmenu .p-menuitem {\n position: relative;\n }\n\n .p-tieredmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n }\n\n .p-tieredmenu .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n }\n\n .p-tieredmenu .p-menuitem-active > .p-submenu-list-flipped {\n left: -100%;\n }\n}\n";
|
|
136
167
|
var TieredMenuBase = ComponentBase.extend({
|
|
137
168
|
defaultProps: {
|
|
138
169
|
__TYPE: 'TieredMenu',
|
|
@@ -148,6 +179,8 @@ var TieredMenuBase = ComponentBase.extend({
|
|
|
148
179
|
appendTo: null,
|
|
149
180
|
transitionOptions: null,
|
|
150
181
|
onShow: null,
|
|
182
|
+
onFocus: null,
|
|
183
|
+
onBlur: null,
|
|
151
184
|
onHide: null,
|
|
152
185
|
submenuIcon: null,
|
|
153
186
|
children: undefined
|
|
@@ -159,54 +192,9 @@ var TieredMenuBase = ComponentBase.extend({
|
|
|
159
192
|
}
|
|
160
193
|
});
|
|
161
194
|
|
|
162
|
-
function
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
|
|
166
|
-
return typeof o;
|
|
167
|
-
} : function (o) {
|
|
168
|
-
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
|
|
169
|
-
}, _typeof(o);
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
function _toPrimitive(input, hint) {
|
|
173
|
-
if (_typeof(input) !== "object" || input === null) return input;
|
|
174
|
-
var prim = input[Symbol.toPrimitive];
|
|
175
|
-
if (prim !== undefined) {
|
|
176
|
-
var res = prim.call(input, hint || "default");
|
|
177
|
-
if (_typeof(res) !== "object") return res;
|
|
178
|
-
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
179
|
-
}
|
|
180
|
-
return (hint === "string" ? String : Number)(input);
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
function _toPropertyKey(arg) {
|
|
184
|
-
var key = _toPrimitive(arg, "string");
|
|
185
|
-
return _typeof(key) === "symbol" ? key : String(key);
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
function _defineProperty(obj, key, value) {
|
|
189
|
-
key = _toPropertyKey(key);
|
|
190
|
-
if (key in obj) {
|
|
191
|
-
Object.defineProperty(obj, key, {
|
|
192
|
-
value: value,
|
|
193
|
-
enumerable: true,
|
|
194
|
-
configurable: true,
|
|
195
|
-
writable: true
|
|
196
|
-
});
|
|
197
|
-
} else {
|
|
198
|
-
obj[key] = value;
|
|
199
|
-
}
|
|
200
|
-
return obj;
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
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; }
|
|
204
|
-
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; }
|
|
205
|
-
var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
206
|
-
var _React$useState = React.useState(null),
|
|
207
|
-
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
208
|
-
activeItemState = _React$useState2[0],
|
|
209
|
-
setActiveItemState = _React$useState2[1];
|
|
195
|
+
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; }
|
|
196
|
+
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; }
|
|
197
|
+
var TieredMenuSub = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
210
198
|
var elementRef = React.useRef(null);
|
|
211
199
|
var ptm = props.ptm,
|
|
212
200
|
cx = props.cx,
|
|
@@ -215,27 +203,10 @@ var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
215
203
|
return ptm(key, {
|
|
216
204
|
hostName: props.hostName,
|
|
217
205
|
context: {
|
|
218
|
-
active:
|
|
206
|
+
active: isItemActive(item)
|
|
219
207
|
}
|
|
220
208
|
});
|
|
221
209
|
};
|
|
222
|
-
var _useEventListener = useEventListener({
|
|
223
|
-
type: 'click',
|
|
224
|
-
listener: function listener(event) {
|
|
225
|
-
if (!props.isMobileMode && elementRef.current && !elementRef.current.contains(event.target)) {
|
|
226
|
-
setActiveItemState(null);
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
}),
|
|
230
|
-
_useEventListener2 = _slicedToArray(_useEventListener, 1),
|
|
231
|
-
bindDocumentClickListener = _useEventListener2[0];
|
|
232
|
-
var _useResizeListener = useResizeListener({
|
|
233
|
-
listener: function listener() {
|
|
234
|
-
!props.isMobileMode && setActiveItemState(null);
|
|
235
|
-
}
|
|
236
|
-
}),
|
|
237
|
-
_useResizeListener2 = _slicedToArray(_useResizeListener, 1),
|
|
238
|
-
bindDocumentResizeListener = _useResizeListener2[0];
|
|
239
210
|
var position = function position() {
|
|
240
211
|
if (elementRef.current) {
|
|
241
212
|
var parentItem = elementRef.current.parentElement;
|
|
@@ -254,21 +225,9 @@ var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
254
225
|
}
|
|
255
226
|
}
|
|
256
227
|
};
|
|
257
|
-
var
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
return;
|
|
261
|
-
}
|
|
262
|
-
if (props.root) {
|
|
263
|
-
if (activeItemState || props.popup) {
|
|
264
|
-
setActiveItemState(item);
|
|
265
|
-
}
|
|
266
|
-
} else {
|
|
267
|
-
setActiveItemState(item);
|
|
268
|
-
}
|
|
269
|
-
};
|
|
270
|
-
var onItemClick = function onItemClick(event, item) {
|
|
271
|
-
if (item.disabled) {
|
|
228
|
+
var onItemClick = function onItemClick(event, processedItem) {
|
|
229
|
+
var item = processedItem.item;
|
|
230
|
+
if (isItemDisabled(processedItem)) {
|
|
272
231
|
event.preventDefault();
|
|
273
232
|
return;
|
|
274
233
|
}
|
|
@@ -281,82 +240,62 @@ var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
281
240
|
item: item
|
|
282
241
|
});
|
|
283
242
|
}
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
}
|
|
289
|
-
if (!item.items) {
|
|
290
|
-
onLeafClick(event);
|
|
291
|
-
}
|
|
243
|
+
props.onItemClick && props.onItemClick({
|
|
244
|
+
originalEvent: event,
|
|
245
|
+
processedItem: processedItem
|
|
246
|
+
});
|
|
292
247
|
};
|
|
293
|
-
var
|
|
294
|
-
|
|
295
|
-
switch (event.which) {
|
|
296
|
-
//down
|
|
297
|
-
case 40:
|
|
298
|
-
var nextItem = findNextItem(listItem);
|
|
299
|
-
nextItem && nextItem.children[0].focus();
|
|
300
|
-
event.preventDefault();
|
|
301
|
-
break;
|
|
302
|
-
|
|
303
|
-
//up
|
|
304
|
-
case 38:
|
|
305
|
-
var prevItem = findPrevItem(listItem);
|
|
306
|
-
prevItem && prevItem.children[0].focus();
|
|
307
|
-
event.preventDefault();
|
|
308
|
-
break;
|
|
309
|
-
|
|
310
|
-
//right
|
|
311
|
-
case 39:
|
|
312
|
-
if (item.items) {
|
|
313
|
-
setActiveItemState(item);
|
|
314
|
-
setTimeout(function () {
|
|
315
|
-
listItem.children[1].children[0].children[0].focus();
|
|
316
|
-
}, 50);
|
|
317
|
-
}
|
|
318
|
-
event.preventDefault();
|
|
319
|
-
break;
|
|
320
|
-
}
|
|
321
|
-
props.onKeyDown && props.onKeyDown(event, listItem);
|
|
248
|
+
var getItemId = function getItemId(processedItem) {
|
|
249
|
+
return "".concat(props.menuId, "_").concat(processedItem.key);
|
|
322
250
|
};
|
|
323
|
-
var
|
|
324
|
-
|
|
325
|
-
if (event.which === 37) {
|
|
326
|
-
setActiveItemState(null);
|
|
327
|
-
childListItem.parentElement.previousElementSibling.focus();
|
|
328
|
-
}
|
|
251
|
+
var getItemProp = function getItemProp(processedItem, name, params) {
|
|
252
|
+
return processedItem && processedItem.item ? ObjectUtils.getItemValue(processedItem.item[name], params) : undefined;
|
|
329
253
|
};
|
|
330
|
-
var
|
|
331
|
-
|
|
332
|
-
|
|
254
|
+
var isItemActive = function isItemActive(processedItem) {
|
|
255
|
+
return props.activeItemPath.some(function (path) {
|
|
256
|
+
return path.key === processedItem.key;
|
|
257
|
+
});
|
|
333
258
|
};
|
|
334
|
-
var
|
|
335
|
-
|
|
336
|
-
return prevItem ? DomHandler.hasClass(prevItem, 'p-disabled') || !DomHandler.hasClass(prevItem, 'p-menuitem') ? findPrevItem(prevItem) : prevItem : null;
|
|
259
|
+
var isItemVisible = function isItemVisible(processedItem) {
|
|
260
|
+
return getItemProp(processedItem, 'visible') !== false;
|
|
337
261
|
};
|
|
338
|
-
var
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
262
|
+
var isItemDisabled = function isItemDisabled(processedItem) {
|
|
263
|
+
return getItemProp(processedItem, 'disabled');
|
|
264
|
+
};
|
|
265
|
+
var isItemFocused = function isItemFocused(processedItem) {
|
|
266
|
+
return props.focusedItemId === getItemId(processedItem);
|
|
267
|
+
};
|
|
268
|
+
var isItemGroup = function isItemGroup(processedItem) {
|
|
269
|
+
return ObjectUtils.isNotEmpty(processedItem.items);
|
|
270
|
+
};
|
|
271
|
+
var onItemMouseEnter = function onItemMouseEnter(event, processedItem) {
|
|
272
|
+
props.onItemMouseEnter && props.onItemMouseEnter({
|
|
273
|
+
originalEvent: event,
|
|
274
|
+
processedItem: processedItem
|
|
275
|
+
});
|
|
276
|
+
};
|
|
277
|
+
var getAriaSetSize = function getAriaSetSize() {
|
|
278
|
+
return props.model.filter(function (processedItem) {
|
|
279
|
+
return isItemVisible(processedItem) && !getItemProp(processedItem, 'separator');
|
|
280
|
+
}).length;
|
|
281
|
+
};
|
|
282
|
+
var getAriaPosInset = function getAriaPosInset(index) {
|
|
283
|
+
return index - props.model.slice(0, index).filter(function (processedItem) {
|
|
284
|
+
return isItemVisible(processedItem) && getItemProp(processedItem, 'separator');
|
|
285
|
+
}).length + 1;
|
|
344
286
|
};
|
|
345
|
-
useMountEffect(function () {
|
|
346
|
-
bindDocumentClickListener();
|
|
347
|
-
bindDocumentResizeListener();
|
|
348
|
-
});
|
|
349
287
|
useUpdateEffect(function () {
|
|
350
|
-
if (!props.parentActive) {
|
|
351
|
-
setActiveItemState(null);
|
|
352
|
-
}
|
|
353
288
|
if (!props.root && props.parentActive && !props.isMobileMode) {
|
|
354
289
|
position();
|
|
355
290
|
}
|
|
356
291
|
}, [props.parentActive]);
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
292
|
+
React.useImperativeHandle(ref, function () {
|
|
293
|
+
return {
|
|
294
|
+
getElement: function getElement() {
|
|
295
|
+
return elementRef.current;
|
|
296
|
+
}
|
|
297
|
+
};
|
|
298
|
+
});
|
|
360
299
|
var createSeparator = function createSeparator(index) {
|
|
361
300
|
var key = 'separator_' + index;
|
|
362
301
|
var separatorProps = mergeProps({
|
|
@@ -368,18 +307,22 @@ var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
368
307
|
}));
|
|
369
308
|
return /*#__PURE__*/React.createElement("li", separatorProps);
|
|
370
309
|
};
|
|
371
|
-
var createSubmenu = function createSubmenu(
|
|
372
|
-
if (
|
|
310
|
+
var createSubmenu = function createSubmenu(processedItem, index) {
|
|
311
|
+
if (isItemGroup(processedItem)) {
|
|
373
312
|
return /*#__PURE__*/React.createElement(TieredMenuSub, {
|
|
374
313
|
id: props.id + '_' + index,
|
|
375
314
|
menuProps: props.menuProps,
|
|
376
|
-
model:
|
|
377
|
-
|
|
315
|
+
model: processedItem.items,
|
|
316
|
+
menuId: props.menuId,
|
|
317
|
+
ariaLabelledby: getItemId(item),
|
|
318
|
+
focusedItemId: props.focusedItemId,
|
|
319
|
+
activeItemPath: props.activeItemPath,
|
|
320
|
+
level: props.level + 1,
|
|
321
|
+
onItemClick: props.onItemClick,
|
|
378
322
|
popup: props.popup,
|
|
379
|
-
|
|
380
|
-
parentActive:
|
|
323
|
+
onItemMouseEnter: props.onItemMouseEnter,
|
|
324
|
+
parentActive: isItemActive(processedItem),
|
|
381
325
|
isMobileMode: props.isMobileMode,
|
|
382
|
-
onItemToggle: props.onItemToggle,
|
|
383
326
|
submenuIcon: props.submenuIcon,
|
|
384
327
|
ptm: props.ptm,
|
|
385
328
|
cx: cx,
|
|
@@ -388,71 +331,53 @@ var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
388
331
|
}
|
|
389
332
|
return null;
|
|
390
333
|
};
|
|
391
|
-
var createMenuItem = function createMenuItem(
|
|
392
|
-
if (
|
|
334
|
+
var createMenuItem = function createMenuItem(processedItem, index) {
|
|
335
|
+
if (isItemVisible(processedItem) === false) {
|
|
393
336
|
return null;
|
|
394
337
|
}
|
|
395
|
-
var
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
var
|
|
406
|
-
var active = activeItemState === item;
|
|
407
|
-
var linkClassName = classNames('p-menuitem-link', {
|
|
408
|
-
'p-disabled': disabled
|
|
409
|
-
});
|
|
338
|
+
var item = processedItem.item;
|
|
339
|
+
var style = getItemProp(processedItem, 'style');
|
|
340
|
+
var _icon = getItemProp(processedItem, 'icon');
|
|
341
|
+
var target = getItemProp(processedItem, 'target');
|
|
342
|
+
var url = getItemProp(processedItem, 'url');
|
|
343
|
+
var key = getItemId(processedItem);
|
|
344
|
+
var focused = isItemFocused(processedItem);
|
|
345
|
+
var active = isItemActive(processedItem);
|
|
346
|
+
var disabled = isItemDisabled(processedItem);
|
|
347
|
+
var grouped = isItemGroup(processedItem);
|
|
348
|
+
var linkClassName = classNames('p-menuitem-link');
|
|
410
349
|
var iconClassName = classNames('p-menuitem-icon', _icon);
|
|
411
350
|
var iconProps = mergeProps({
|
|
412
|
-
className:
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
}, getPTOptions(item, 'icon'));
|
|
416
|
-
var icon = IconUtils.getJSXIcon(_icon, _objectSpread({}, iconProps), {
|
|
351
|
+
className: classNames(item.icon, 'p-menuitem-icon', 'icon')
|
|
352
|
+
}, getPTOptions(processedItem, 'icon'));
|
|
353
|
+
var icon = IconUtils.getJSXIcon(_icon, _objectSpread$1({}, iconProps), {
|
|
417
354
|
props: props.menuProps
|
|
418
355
|
});
|
|
419
356
|
var labelProps = mergeProps({
|
|
420
357
|
className: cx('label')
|
|
421
|
-
}, getPTOptions(
|
|
422
|
-
var label =
|
|
358
|
+
}, getPTOptions(processedItem, 'label'));
|
|
359
|
+
var label = item.label && /*#__PURE__*/React.createElement("span", labelProps, item.label);
|
|
423
360
|
var submenuIconClassName = 'p-submenu-icon';
|
|
424
361
|
var submenuIconProps = mergeProps({
|
|
425
362
|
className: cx('submenuIcon')
|
|
426
|
-
}, getPTOptions(
|
|
427
|
-
var submenuIcon =
|
|
363
|
+
}, getPTOptions(processedItem, 'submenuIcon'));
|
|
364
|
+
var submenuIcon = grouped && IconUtils.getJSXIcon(props.submenuIcon || /*#__PURE__*/React.createElement(AngleRightIcon, submenuIconProps), _objectSpread$1({}, submenuIconProps), {
|
|
428
365
|
props: props.menuProps
|
|
429
366
|
});
|
|
430
|
-
var submenu = createSubmenu(
|
|
367
|
+
var submenu = createSubmenu(processedItem, index);
|
|
431
368
|
var actionProps = mergeProps({
|
|
432
369
|
href: url || '#',
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
role: 'menuitem',
|
|
438
|
-
'aria-haspopup': items != null,
|
|
439
|
-
onClick: function onClick(event) {
|
|
440
|
-
return onItemClick(event, item);
|
|
370
|
+
'aria-hidden': true,
|
|
371
|
+
tabIndex: '-1',
|
|
372
|
+
onFocus: function onFocus(event) {
|
|
373
|
+
return event.stopPropagation();
|
|
441
374
|
},
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
'aria-disabled': disabled
|
|
446
|
-
}, getPTOptions(item, 'action'));
|
|
375
|
+
className: cx('action'),
|
|
376
|
+
target: target
|
|
377
|
+
}, getPTOptions(processedItem, 'action'));
|
|
447
378
|
var content = /*#__PURE__*/React.createElement("a", actionProps, icon, label, submenuIcon, /*#__PURE__*/React.createElement(Ripple, null));
|
|
448
|
-
if (template) {
|
|
379
|
+
if (item.template) {
|
|
449
380
|
var defaultContentOptions = {
|
|
450
|
-
onClick: function onClick(event) {
|
|
451
|
-
return onItemClick(event, item);
|
|
452
|
-
},
|
|
453
|
-
onKeyDown: function onKeyDown(event) {
|
|
454
|
-
return onItemKeyDown(event, item);
|
|
455
|
-
},
|
|
456
381
|
className: linkClassName,
|
|
457
382
|
labelClassName: 'p-menuitem-text',
|
|
458
383
|
iconClassName: iconClassName,
|
|
@@ -462,25 +387,46 @@ var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
462
387
|
active: active,
|
|
463
388
|
disabled: disabled
|
|
464
389
|
};
|
|
465
|
-
content = ObjectUtils.getJSXElement(template, item, defaultContentOptions);
|
|
390
|
+
content = ObjectUtils.getJSXElement(item.template, item, defaultContentOptions);
|
|
466
391
|
}
|
|
392
|
+
var contentProps = mergeProps({
|
|
393
|
+
onClick: function onClick(event) {
|
|
394
|
+
return onItemClick(event, processedItem);
|
|
395
|
+
},
|
|
396
|
+
onMouseEnter: function onMouseEnter(event) {
|
|
397
|
+
return onItemMouseEnter(event, processedItem);
|
|
398
|
+
},
|
|
399
|
+
className: cx('content')
|
|
400
|
+
}, getPTOptions(processedItem, 'content'));
|
|
467
401
|
var menuitemProps = mergeProps({
|
|
468
402
|
key: key,
|
|
469
403
|
id: key,
|
|
404
|
+
'aria-label': item.label,
|
|
405
|
+
'aria-disabled': disabled,
|
|
406
|
+
'aria-expanded': grouped ? active : undefined,
|
|
407
|
+
'aria-haspopup': grouped && !url ? 'menu' : undefined,
|
|
408
|
+
'aria-level': props.level + 1,
|
|
409
|
+
'aria-setsize': getAriaSetSize(),
|
|
410
|
+
'aria-posinset': getAriaPosInset(index),
|
|
411
|
+
'data-p-highlight': active,
|
|
412
|
+
'data-p-disabled': disabled,
|
|
413
|
+
'data-p-visited': focused,
|
|
470
414
|
className: cx('menuitem', {
|
|
471
|
-
|
|
472
|
-
active: active
|
|
415
|
+
className: item.className,
|
|
416
|
+
active: active,
|
|
417
|
+
focused: focused,
|
|
418
|
+
disabled: disabled
|
|
473
419
|
}),
|
|
474
420
|
style: style,
|
|
475
421
|
onMouseEnter: function onMouseEnter(event) {
|
|
476
422
|
return onItemMouseEnter(event, item);
|
|
477
423
|
},
|
|
478
|
-
role: '
|
|
479
|
-
}, getPTOptions(
|
|
480
|
-
return /*#__PURE__*/React.createElement("li", menuitemProps, content, submenu);
|
|
424
|
+
role: 'menuitem'
|
|
425
|
+
}, getPTOptions(processedItem, 'menuitem'));
|
|
426
|
+
return /*#__PURE__*/React.createElement("li", menuitemProps, /*#__PURE__*/React.createElement("div", contentProps, content), submenu);
|
|
481
427
|
};
|
|
482
|
-
var createItem = function createItem(
|
|
483
|
-
return
|
|
428
|
+
var createItem = function createItem(processedItem, index) {
|
|
429
|
+
return getItemProp(processedItem, 'separator') ? createSeparator(index) : createMenuItem(processedItem, index);
|
|
484
430
|
};
|
|
485
431
|
var createMenu = function createMenu() {
|
|
486
432
|
return props.model ? props.model.map(createItem) : null;
|
|
@@ -489,6 +435,11 @@ var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
489
435
|
var ptKey = props.root ? 'menu' : 'submenu';
|
|
490
436
|
var menuProps = mergeProps({
|
|
491
437
|
ref: elementRef,
|
|
438
|
+
id: props.id,
|
|
439
|
+
tabIndex: props.tabIndex,
|
|
440
|
+
onFocus: props.onFocus,
|
|
441
|
+
onBlur: props.onBlur,
|
|
442
|
+
onKeyDown: props.onKeyDown,
|
|
492
443
|
className: cx(ptKey, {
|
|
493
444
|
subProps: props
|
|
494
445
|
}),
|
|
@@ -496,14 +447,19 @@ var TieredMenuSub = /*#__PURE__*/React.memo(function (props) {
|
|
|
496
447
|
subProps: props
|
|
497
448
|
}),
|
|
498
449
|
role: props.root ? 'menubar' : 'menu',
|
|
499
|
-
'aria-
|
|
450
|
+
'aria-label': props.ariaLabel,
|
|
451
|
+
'aria-labelledby': props.ariaLabelledby,
|
|
452
|
+
'aria-orientation': props.ariaOrientation,
|
|
453
|
+
'aria-activedescendant': props.focusedItemId
|
|
500
454
|
}, ptm(ptKey, {
|
|
501
455
|
hostName: props.hostName
|
|
502
456
|
}));
|
|
503
457
|
return /*#__PURE__*/React.createElement("ul", menuProps, submenu);
|
|
504
|
-
});
|
|
458
|
+
}));
|
|
505
459
|
TieredMenuSub.displayName = 'TieredMenuSub';
|
|
506
460
|
|
|
461
|
+
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; }
|
|
462
|
+
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; }
|
|
507
463
|
var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function (inProps, ref) {
|
|
508
464
|
var context = React.useContext(PrimeReactContext);
|
|
509
465
|
var props = TieredMenuBase.getProps(inProps, context);
|
|
@@ -515,10 +471,46 @@ var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
515
471
|
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
516
472
|
visibleState = _React$useState4[0],
|
|
517
473
|
setVisibleState = _React$useState4[1];
|
|
518
|
-
var _React$useState5 = React.useState(
|
|
474
|
+
var _React$useState5 = React.useState([]),
|
|
519
475
|
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
520
|
-
|
|
521
|
-
|
|
476
|
+
activeItemPath = _React$useState6[0],
|
|
477
|
+
setActiveItemPath = _React$useState6[1];
|
|
478
|
+
var _React$useState7 = React.useState(false),
|
|
479
|
+
_React$useState8 = _slicedToArray(_React$useState7, 2),
|
|
480
|
+
focused = _React$useState8[0],
|
|
481
|
+
setFocused = _React$useState8[1];
|
|
482
|
+
var _React$useState9 = React.useState(null),
|
|
483
|
+
_React$useState10 = _slicedToArray(_React$useState9, 2),
|
|
484
|
+
focusedItemId = _React$useState10[0],
|
|
485
|
+
setFocusedItemId = _React$useState10[1];
|
|
486
|
+
var _React$useState11 = React.useState({
|
|
487
|
+
index: -1,
|
|
488
|
+
level: 0,
|
|
489
|
+
parentKey: ''
|
|
490
|
+
}),
|
|
491
|
+
_React$useState12 = _slicedToArray(_React$useState11, 2),
|
|
492
|
+
focusedItemInfo = _React$useState12[0],
|
|
493
|
+
setFocusedItemInfo = _React$useState12[1];
|
|
494
|
+
var _React$useState13 = React.useState(false),
|
|
495
|
+
_React$useState14 = _slicedToArray(_React$useState13, 2),
|
|
496
|
+
dirty = _React$useState14[0],
|
|
497
|
+
setDirty = _React$useState14[1];
|
|
498
|
+
var _React$useState15 = React.useState([]),
|
|
499
|
+
_React$useState16 = _slicedToArray(_React$useState15, 2),
|
|
500
|
+
processedItems = _React$useState16[0],
|
|
501
|
+
setProcessedItems = _React$useState16[1];
|
|
502
|
+
var _React$useState17 = React.useState([]),
|
|
503
|
+
_React$useState18 = _slicedToArray(_React$useState17, 2),
|
|
504
|
+
visibleItems = _React$useState18[0],
|
|
505
|
+
setVisibleItems = _React$useState18[1];
|
|
506
|
+
var _React$useState19 = React.useState(false),
|
|
507
|
+
_React$useState20 = _slicedToArray(_React$useState19, 2),
|
|
508
|
+
focusTrigger = _React$useState20[0],
|
|
509
|
+
setFocusTrigger = _React$useState20[1];
|
|
510
|
+
var _React$useState21 = React.useState(null),
|
|
511
|
+
_React$useState22 = _slicedToArray(_React$useState21, 2),
|
|
512
|
+
attributeSelectorState = _React$useState22[0],
|
|
513
|
+
setAttributeSelectorState = _React$useState22[1];
|
|
522
514
|
var _TieredMenuBase$setMe = TieredMenuBase.setMetaData({
|
|
523
515
|
props: props,
|
|
524
516
|
state: {
|
|
@@ -534,22 +526,35 @@ var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
534
526
|
useHandleStyle(TieredMenuBase.css.styles, isUnstyled, {
|
|
535
527
|
name: 'tieredmenu'
|
|
536
528
|
});
|
|
529
|
+
var containerRef = React.useRef(null);
|
|
537
530
|
var menuRef = React.useRef(null);
|
|
538
531
|
var targetRef = React.useRef(null);
|
|
532
|
+
var relatedTarget = React.useRef(null);
|
|
539
533
|
var styleElementRef = React.useRef(null);
|
|
534
|
+
var searchValue = React.useRef(null);
|
|
535
|
+
var searchTimeout = React.useRef(null);
|
|
540
536
|
var isMobileMode = useMatchMedia("screen and (max-width: ".concat(props.breakpoint, ")"), !!props.breakpoint);
|
|
541
|
-
var
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
var
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
537
|
+
var _useEventListener = useEventListener({
|
|
538
|
+
type: 'click',
|
|
539
|
+
listener: function listener(event) {
|
|
540
|
+
var isOutsideContainer = containerRef.current && !containerRef.current.contains(event.target);
|
|
541
|
+
var isOutsideTarget = props.popup ? !(targetRef.current && (targetRef.current === event.target || targetRef.current.contains(event.target))) : true;
|
|
542
|
+
if (isOutsideContainer && isOutsideTarget) {
|
|
543
|
+
hide(event, !props.popup);
|
|
544
|
+
}
|
|
545
|
+
}
|
|
549
546
|
}),
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
547
|
+
_useEventListener2 = _slicedToArray(_useEventListener, 2),
|
|
548
|
+
bindDocumentClickListener = _useEventListener2[0],
|
|
549
|
+
unbindDocumentClickListener = _useEventListener2[1];
|
|
550
|
+
var _useResizeListener = useResizeListener({
|
|
551
|
+
listener: function listener() {
|
|
552
|
+
!isMobileMode && hide(event, true);
|
|
553
|
+
}
|
|
554
|
+
}),
|
|
555
|
+
_useResizeListener2 = _slicedToArray(_useResizeListener, 2),
|
|
556
|
+
bindDocumentResizeListener = _useResizeListener2[0],
|
|
557
|
+
unbindDocumentResizeListener = _useResizeListener2[1];
|
|
553
558
|
var onPanelClick = function onPanelClick(event) {
|
|
554
559
|
if (props.popup) {
|
|
555
560
|
OverlayService.emit('overlay-click', {
|
|
@@ -564,25 +569,436 @@ var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
564
569
|
}
|
|
565
570
|
};
|
|
566
571
|
var show = function show(event) {
|
|
567
|
-
targetRef.current = event.currentTarget;
|
|
568
|
-
setVisibleState(true);
|
|
569
|
-
props.onShow && props.onShow(event);
|
|
570
|
-
};
|
|
571
|
-
var hide = function hide(event) {
|
|
572
572
|
if (props.popup) {
|
|
573
573
|
targetRef.current = event.currentTarget;
|
|
574
|
+
setVisibleState(true);
|
|
575
|
+
props.onShow && props.onShow(event);
|
|
576
|
+
relatedTarget.current = event.relatedTarget || null;
|
|
577
|
+
}
|
|
578
|
+
setFocusedItemInfo({
|
|
579
|
+
index: findFirstFocusedItemIndex(),
|
|
580
|
+
level: 0,
|
|
581
|
+
parentKey: ''
|
|
582
|
+
});
|
|
583
|
+
};
|
|
584
|
+
var hide = function hide(event, isFocus) {
|
|
585
|
+
if (props.popup) {
|
|
574
586
|
setVisibleState(false);
|
|
575
587
|
props.onHide && props.onHide(event);
|
|
576
588
|
}
|
|
589
|
+
var menuElement = getMenuElement();
|
|
590
|
+
setActiveItemPath([]);
|
|
591
|
+
setFocusedItemInfo({
|
|
592
|
+
index: -1,
|
|
593
|
+
level: 0,
|
|
594
|
+
parentKey: ''
|
|
595
|
+
});
|
|
596
|
+
isFocus && DomHandler.focus(relatedTarget.current || targetRef.current || menuElement);
|
|
597
|
+
setDirty(false);
|
|
598
|
+
};
|
|
599
|
+
var onFocus = function onFocus(event) {
|
|
600
|
+
setFocused(true);
|
|
601
|
+
setFocusedItemInfo(focusedItemInfo.index !== -1 ? focusedItemInfo : {
|
|
602
|
+
index: findFirstFocusedItemIndex(),
|
|
603
|
+
level: 0,
|
|
604
|
+
parentKey: ''
|
|
605
|
+
});
|
|
606
|
+
props.onFocus && props.onFocus(event);
|
|
607
|
+
};
|
|
608
|
+
var onBlur = function onBlur(event) {
|
|
609
|
+
setFocused(false);
|
|
610
|
+
setFocusedItemInfo({
|
|
611
|
+
index: -1,
|
|
612
|
+
level: 0,
|
|
613
|
+
parentKey: ''
|
|
614
|
+
});
|
|
615
|
+
searchValue.current = '';
|
|
616
|
+
setDirty(false);
|
|
617
|
+
props.onBlur && props.onBlur(event);
|
|
618
|
+
};
|
|
619
|
+
var onKeyDown = function onKeyDown(event) {
|
|
620
|
+
var metaKey = event.metaKey || event.ctrlKey;
|
|
621
|
+
switch (event.code) {
|
|
622
|
+
case 'ArrowDown':
|
|
623
|
+
onArrowDownKey(event);
|
|
624
|
+
break;
|
|
625
|
+
case 'ArrowUp':
|
|
626
|
+
onArrowUpKey(event);
|
|
627
|
+
break;
|
|
628
|
+
case 'ArrowLeft':
|
|
629
|
+
onArrowLeftKey(event);
|
|
630
|
+
break;
|
|
631
|
+
case 'ArrowRight':
|
|
632
|
+
onArrowRightKey(event);
|
|
633
|
+
break;
|
|
634
|
+
case 'Home':
|
|
635
|
+
onHomeKey(event);
|
|
636
|
+
break;
|
|
637
|
+
case 'End':
|
|
638
|
+
onEndKey(event);
|
|
639
|
+
break;
|
|
640
|
+
case 'Space':
|
|
641
|
+
onSpaceKey(event);
|
|
642
|
+
break;
|
|
643
|
+
case 'Enter':
|
|
644
|
+
onEnterKey(event);
|
|
645
|
+
break;
|
|
646
|
+
case 'Escape':
|
|
647
|
+
props.popup && DomHandler.focus(targetRef.current);
|
|
648
|
+
onEscapeKey(event);
|
|
649
|
+
break;
|
|
650
|
+
case 'Tab':
|
|
651
|
+
onTabKey(event);
|
|
652
|
+
break;
|
|
653
|
+
case 'PageDown':
|
|
654
|
+
case 'PageUp':
|
|
655
|
+
case 'Backspace':
|
|
656
|
+
case 'ShiftLeft':
|
|
657
|
+
case 'ShiftRight':
|
|
658
|
+
//NOOP
|
|
659
|
+
break;
|
|
660
|
+
default:
|
|
661
|
+
if (!metaKey && ObjectUtils.isPrintableCharacter(event.key)) {
|
|
662
|
+
searchItems(event.key);
|
|
663
|
+
}
|
|
664
|
+
break;
|
|
665
|
+
}
|
|
577
666
|
};
|
|
578
|
-
var
|
|
579
|
-
|
|
580
|
-
|
|
667
|
+
var onItemChange = function onItemChange(event) {
|
|
668
|
+
var processedItem = event.processedItem,
|
|
669
|
+
isFocus = event.isFocus;
|
|
670
|
+
if (ObjectUtils.isEmpty(processedItem)) return;
|
|
671
|
+
var index = processedItem.index,
|
|
672
|
+
key = processedItem.key,
|
|
673
|
+
level = processedItem.level,
|
|
674
|
+
parentKey = processedItem.parentKey,
|
|
675
|
+
items = processedItem.items;
|
|
676
|
+
var grouped = ObjectUtils.isNotEmpty(items);
|
|
677
|
+
var _activeItemPath = activeItemPath.filter(function (p) {
|
|
678
|
+
return p.parentKey !== parentKey && p.parentKey !== key;
|
|
679
|
+
});
|
|
680
|
+
if (grouped) {
|
|
681
|
+
_activeItemPath.push(processedItem);
|
|
581
682
|
}
|
|
683
|
+
setFocusedItemInfo({
|
|
684
|
+
index: index,
|
|
685
|
+
level: level,
|
|
686
|
+
parentKey: parentKey
|
|
687
|
+
});
|
|
688
|
+
setActiveItemPath(_activeItemPath);
|
|
689
|
+
grouped && setDirty(true);
|
|
690
|
+
isFocus && DomHandler.focus(getMenuElement());
|
|
691
|
+
};
|
|
692
|
+
var onItemClick = function onItemClick(event) {
|
|
693
|
+
var originalEvent = event.originalEvent,
|
|
694
|
+
processedItem = event.processedItem;
|
|
695
|
+
if (isItemDisabled(processedItem) || props.isMobileMode) {
|
|
696
|
+
return;
|
|
697
|
+
}
|
|
698
|
+
var grouped = isProccessedItemGroup(processedItem);
|
|
699
|
+
var root = ObjectUtils.isEmpty(processedItem.parent);
|
|
700
|
+
var selected = isSelected(processedItem);
|
|
701
|
+
var menuElement = getMenuElement();
|
|
702
|
+
if (selected) {
|
|
703
|
+
var index = processedItem.index,
|
|
704
|
+
key = processedItem.key,
|
|
705
|
+
level = processedItem.level,
|
|
706
|
+
parentKey = processedItem.parentKey;
|
|
707
|
+
setActiveItemPath(activeItemPath.filter(function (p) {
|
|
708
|
+
return key !== p.key && key.startsWith(p.key);
|
|
709
|
+
}));
|
|
710
|
+
setFocusedItemInfo({
|
|
711
|
+
index: index,
|
|
712
|
+
level: level,
|
|
713
|
+
parentKey: parentKey
|
|
714
|
+
});
|
|
715
|
+
if (!grouped) {
|
|
716
|
+
setDirty(!root);
|
|
717
|
+
}
|
|
718
|
+
setTimeout(function () {
|
|
719
|
+
DomHandler.focus(menuElement);
|
|
720
|
+
if (grouped) {
|
|
721
|
+
setDirty(true);
|
|
722
|
+
}
|
|
723
|
+
}, 0);
|
|
724
|
+
} else {
|
|
725
|
+
if (grouped) {
|
|
726
|
+
DomHandler.focus(menuElement);
|
|
727
|
+
onItemChange(event);
|
|
728
|
+
} else {
|
|
729
|
+
var rootProcessedItem = root ? processedItem : activeItemPath.find(function (p) {
|
|
730
|
+
return p.parentKey === '';
|
|
731
|
+
});
|
|
732
|
+
var rootProcessedItemIndex = rootProcessedItem ? rootProcessedItem.index : -1;
|
|
733
|
+
hide(originalEvent, true);
|
|
734
|
+
setFocusedItemInfo({
|
|
735
|
+
index: rootProcessedItemIndex,
|
|
736
|
+
parentKey: rootProcessedItem ? rootProcessedItem.parentKey : ''
|
|
737
|
+
});
|
|
738
|
+
}
|
|
739
|
+
}
|
|
740
|
+
};
|
|
741
|
+
var onItemMouseEnter = function onItemMouseEnter(event) {
|
|
742
|
+
var originalEvent = event.originalEvent,
|
|
743
|
+
processedItem = event.processedItem;
|
|
744
|
+
if (isItemDisabled(processedItem) || props.isMobileMode) {
|
|
745
|
+
originalEvent.preventDefault();
|
|
746
|
+
return;
|
|
747
|
+
}
|
|
748
|
+
if (dirty && !props.popup) {
|
|
749
|
+
onItemChange(event);
|
|
750
|
+
}
|
|
751
|
+
};
|
|
752
|
+
var onArrowDownKey = function onArrowDownKey(event) {
|
|
753
|
+
var itemIndex = focusedItemInfo.index !== -1 ? findNextItemIndex(focusedItemInfo.index) : findFirstFocusedItemIndex();
|
|
754
|
+
changeFocusedItemIndex(itemIndex);
|
|
755
|
+
event.preventDefault();
|
|
756
|
+
};
|
|
757
|
+
var onArrowUpKey = function onArrowUpKey(event) {
|
|
758
|
+
if (event.altKey) {
|
|
759
|
+
if (props.popup) {
|
|
760
|
+
DomHandler.focus(targetRef.current);
|
|
761
|
+
}
|
|
762
|
+
if (focusedItemInfo.index !== -1) {
|
|
763
|
+
var processedItem = visibleItems[focusedItemInfo.index];
|
|
764
|
+
var grouped = isProccessedItemGroup(processedItem);
|
|
765
|
+
!grouped && onItemChange({
|
|
766
|
+
originalEvent: event,
|
|
767
|
+
processedItem: processedItem
|
|
768
|
+
});
|
|
769
|
+
}
|
|
770
|
+
props.popup && hide(event, true);
|
|
771
|
+
event.preventDefault();
|
|
772
|
+
} else {
|
|
773
|
+
var itemIndex = focusedItemInfo.index !== -1 ? findPrevItemIndex(focusedItemInfo.index) : findLastFocusedItemIndex();
|
|
774
|
+
changeFocusedItemIndex(itemIndex);
|
|
775
|
+
event.preventDefault();
|
|
776
|
+
}
|
|
777
|
+
};
|
|
778
|
+
var onArrowLeftKey = function onArrowLeftKey(event) {
|
|
779
|
+
var processedItem = visibleItems[focusedItemInfo.index];
|
|
780
|
+
var parentItem = activeItemPath.find(function (p) {
|
|
781
|
+
return p.key === processedItem.parentKey;
|
|
782
|
+
});
|
|
783
|
+
var root = ObjectUtils.isEmpty(processedItem.parent);
|
|
784
|
+
if (!root) {
|
|
785
|
+
setFocusedItemInfo({
|
|
786
|
+
index: -1,
|
|
787
|
+
parentKey: parentItem ? parentItem.parentKey : ''
|
|
788
|
+
});
|
|
789
|
+
searchValue.current = '';
|
|
790
|
+
setTimeout(function () {
|
|
791
|
+
return setFocusTrigger(true);
|
|
792
|
+
}, 0);
|
|
793
|
+
}
|
|
794
|
+
setActiveItemPath(activeItemPath.filter(function (p) {
|
|
795
|
+
return p.parentKey !== focusedItemInfo.parentKey;
|
|
796
|
+
}));
|
|
797
|
+
event.preventDefault();
|
|
798
|
+
};
|
|
799
|
+
var onArrowRightKey = function onArrowRightKey(event) {
|
|
800
|
+
var processedItem = visibleItems[focusedItemInfo.index];
|
|
801
|
+
var grouped = isProccessedItemGroup(processedItem);
|
|
802
|
+
if (grouped) {
|
|
803
|
+
onItemChange({
|
|
804
|
+
originalEvent: event,
|
|
805
|
+
processedItem: processedItem
|
|
806
|
+
});
|
|
807
|
+
setFocusedItemInfo({
|
|
808
|
+
index: -1,
|
|
809
|
+
parentKey: processedItem.key
|
|
810
|
+
});
|
|
811
|
+
searchValue.current = '';
|
|
812
|
+
setTimeout(function () {
|
|
813
|
+
return setFocusTrigger(true);
|
|
814
|
+
}, 0);
|
|
815
|
+
}
|
|
816
|
+
event.preventDefault();
|
|
817
|
+
};
|
|
818
|
+
var onHomeKey = function onHomeKey(event) {
|
|
819
|
+
changeFocusedItemIndex(findFirstItemIndex());
|
|
820
|
+
event.preventDefault();
|
|
821
|
+
};
|
|
822
|
+
var onEndKey = function onEndKey(event) {
|
|
823
|
+
changeFocusedItemIndex(findLastItemIndex());
|
|
824
|
+
event.preventDefault();
|
|
825
|
+
};
|
|
826
|
+
var onEnterKey = function onEnterKey(event) {
|
|
827
|
+
if (focusedItemInfo.index !== -1) {
|
|
828
|
+
var _element = DomHandler.findSingle(getMenuElement(), "li[id=\"".concat("".concat(focusedItemId), "\"]"));
|
|
829
|
+
var anchorElement = _element && DomHandler.findSingle(_element, '[data-pc-section="action"]');
|
|
830
|
+
props.popup && DomHandler.focus(targetRef.current);
|
|
831
|
+
anchorElement ? anchorElement.click() : _element && _element.click();
|
|
832
|
+
}
|
|
833
|
+
event.preventDefault();
|
|
834
|
+
};
|
|
835
|
+
var onSpaceKey = function onSpaceKey(event) {
|
|
836
|
+
onEnterKey(event);
|
|
837
|
+
};
|
|
838
|
+
var onEscapeKey = function onEscapeKey(event) {
|
|
839
|
+
hide(event, true);
|
|
840
|
+
!props.popup && setFocusedItemInfo(_objectSpread(_objectSpread({}, focusedItemInfo), {}, {
|
|
841
|
+
index: findFirstFocusedItemIndex()
|
|
842
|
+
}));
|
|
843
|
+
event.preventDefault();
|
|
844
|
+
};
|
|
845
|
+
var onTabKey = function onTabKey(event) {
|
|
846
|
+
if (focusedItemInfo.index !== -1) {
|
|
847
|
+
var processedItem = visibleItems[focusedItemInfo.index];
|
|
848
|
+
var grouped = isProccessedItemGroup(processedItem);
|
|
849
|
+
!grouped && onItemChange({
|
|
850
|
+
originalEvent: event,
|
|
851
|
+
processedItem: processedItem
|
|
852
|
+
});
|
|
853
|
+
}
|
|
854
|
+
hide(event);
|
|
855
|
+
};
|
|
856
|
+
var getMenuElement = function getMenuElement() {
|
|
857
|
+
return menuRef.current.getElement() || null;
|
|
858
|
+
};
|
|
859
|
+
var getItemProp = function getItemProp(item, name) {
|
|
860
|
+
return item ? ObjectUtils.getItemValue(item[name]) : undefined;
|
|
861
|
+
};
|
|
862
|
+
var getItemLabel = function getItemLabel(item) {
|
|
863
|
+
return getItemProp(item, 'label');
|
|
864
|
+
};
|
|
865
|
+
var isItemDisabled = function isItemDisabled(item) {
|
|
866
|
+
return getItemProp(item, 'disabled');
|
|
867
|
+
};
|
|
868
|
+
var isItemSeparator = function isItemSeparator(item) {
|
|
869
|
+
return getItemProp(item, 'separator');
|
|
870
|
+
};
|
|
871
|
+
var getProccessedItemLabel = function getProccessedItemLabel(processedItem) {
|
|
872
|
+
return processedItem ? getItemLabel(processedItem.item) : undefined;
|
|
873
|
+
};
|
|
874
|
+
var isProccessedItemGroup = function isProccessedItemGroup(processedItem) {
|
|
875
|
+
return processedItem && ObjectUtils.isNotEmpty(processedItem.items);
|
|
876
|
+
};
|
|
877
|
+
var isItemMatched = function isItemMatched(processedItem) {
|
|
878
|
+
return isValidItem(processedItem) && getProccessedItemLabel(processedItem).toLocaleLowerCase().startsWith(searchValue.current.toLocaleLowerCase());
|
|
879
|
+
};
|
|
880
|
+
var isValidItem = function isValidItem(processedItem) {
|
|
881
|
+
return !!processedItem && !isItemDisabled(processedItem.item) && !isItemSeparator(processedItem.item);
|
|
882
|
+
};
|
|
883
|
+
var isValidSelectedItem = function isValidSelectedItem(processedItem) {
|
|
884
|
+
return isValidItem(processedItem) && isSelected(processedItem);
|
|
885
|
+
};
|
|
886
|
+
var isSelected = function isSelected(processedItem) {
|
|
887
|
+
return activeItemPath.some(function (p) {
|
|
888
|
+
return p.key === processedItem.key;
|
|
889
|
+
});
|
|
890
|
+
};
|
|
891
|
+
var findFirstItemIndex = function findFirstItemIndex() {
|
|
892
|
+
return visibleItems.findIndex(function (processedItem) {
|
|
893
|
+
return isValidItem(processedItem);
|
|
894
|
+
});
|
|
895
|
+
};
|
|
896
|
+
var findLastItemIndex = function findLastItemIndex() {
|
|
897
|
+
return ObjectUtils.findLastIndex(visibleItems, function (processedItem) {
|
|
898
|
+
return isValidItem(processedItem);
|
|
899
|
+
});
|
|
900
|
+
};
|
|
901
|
+
var findNextItemIndex = function findNextItemIndex(index) {
|
|
902
|
+
var matchedItemIndex = index < visibleItems.length - 1 ? visibleItems.slice(index + 1).findIndex(function (processedItem) {
|
|
903
|
+
return isValidItem(processedItem);
|
|
904
|
+
}) : -1;
|
|
905
|
+
return matchedItemIndex > -1 ? matchedItemIndex + index + 1 : index;
|
|
906
|
+
};
|
|
907
|
+
var findPrevItemIndex = function findPrevItemIndex(index) {
|
|
908
|
+
var matchedItemIndex = index > 0 ? ObjectUtils.findLastIndex(visibleItems.slice(0, index), function (processedItem) {
|
|
909
|
+
return isValidItem(processedItem);
|
|
910
|
+
}) : -1;
|
|
911
|
+
return matchedItemIndex > -1 ? matchedItemIndex : index;
|
|
912
|
+
};
|
|
913
|
+
var findSelectedItemIndex = function findSelectedItemIndex() {
|
|
914
|
+
return visibleItems.findIndex(function (processedItem) {
|
|
915
|
+
return isValidSelectedItem(processedItem);
|
|
916
|
+
});
|
|
917
|
+
};
|
|
918
|
+
var findFirstFocusedItemIndex = function findFirstFocusedItemIndex() {
|
|
919
|
+
var selectedIndex = findSelectedItemIndex();
|
|
920
|
+
return selectedIndex < 0 ? findFirstItemIndex() : selectedIndex;
|
|
921
|
+
};
|
|
922
|
+
var findLastFocusedItemIndex = function findLastFocusedItemIndex() {
|
|
923
|
+
var selectedIndex = findSelectedItemIndex();
|
|
924
|
+
return selectedIndex < 0 ? findLastItemIndex() : selectedIndex;
|
|
925
|
+
};
|
|
926
|
+
var searchItems = function searchItems(_char) {
|
|
927
|
+
searchValue.current = (searchValue.current || '') + _char;
|
|
928
|
+
var itemIndex = -1;
|
|
929
|
+
var matched = false;
|
|
930
|
+
if (focusedItemInfo.index !== -1) {
|
|
931
|
+
itemIndex = visibleItems.slice(focusedItemInfo.index).findIndex(function (processedItem) {
|
|
932
|
+
return isItemMatched(processedItem);
|
|
933
|
+
});
|
|
934
|
+
itemIndex = itemIndex === -1 ? visibleItems.slice(0, focusedItemInfo.index).findIndex(function (processedItem) {
|
|
935
|
+
return isItemMatched(processedItem);
|
|
936
|
+
}) : itemIndex + focusedItemInfo.index;
|
|
937
|
+
} else {
|
|
938
|
+
itemIndex = visibleItems.findIndex(function (processedItem) {
|
|
939
|
+
return isItemMatched(processedItem);
|
|
940
|
+
});
|
|
941
|
+
}
|
|
942
|
+
if (itemIndex !== -1) {
|
|
943
|
+
matched = true;
|
|
944
|
+
}
|
|
945
|
+
if (itemIndex === -1 && focusedItemInfo.index === -1) {
|
|
946
|
+
itemIndex = findFirstFocusedItemIndex();
|
|
947
|
+
}
|
|
948
|
+
if (itemIndex !== -1) {
|
|
949
|
+
changeFocusedItemIndex(itemIndex);
|
|
950
|
+
}
|
|
951
|
+
if (searchTimeout.current) {
|
|
952
|
+
clearTimeout(searchTimeout);
|
|
953
|
+
}
|
|
954
|
+
searchTimeout.current = setTimeout(function () {
|
|
955
|
+
searchValue.current = '';
|
|
956
|
+
searchTimeout.current = null;
|
|
957
|
+
}, 500);
|
|
958
|
+
return matched;
|
|
959
|
+
};
|
|
960
|
+
var changeFocusedItemIndex = function changeFocusedItemIndex(index) {
|
|
961
|
+
if (focusedItemInfo.index !== index) {
|
|
962
|
+
setFocusedItemInfo(_objectSpread(_objectSpread({}, focusedItemInfo), {}, {
|
|
963
|
+
index: index
|
|
964
|
+
}));
|
|
965
|
+
scrollInView();
|
|
966
|
+
}
|
|
967
|
+
};
|
|
968
|
+
var scrollInView = function scrollInView() {
|
|
969
|
+
var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
|
|
970
|
+
var id = index !== -1 ? "".concat(idState, "_").concat(index) : focusedItemId;
|
|
971
|
+
var element = DomHandler.findSingle(getMenuElement(), "li[id=\"".concat(id, "\"]"));
|
|
972
|
+
if (element) {
|
|
973
|
+
element.scrollIntoView && element.scrollIntoView({
|
|
974
|
+
block: 'nearest',
|
|
975
|
+
inline: 'start'
|
|
976
|
+
});
|
|
977
|
+
}
|
|
978
|
+
};
|
|
979
|
+
var createProcessedItems = function createProcessedItems(items) {
|
|
980
|
+
var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
981
|
+
var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
982
|
+
var parentKey = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
|
|
983
|
+
var processedItems = [];
|
|
984
|
+
items && items.forEach(function (item, index) {
|
|
985
|
+
var key = (parentKey !== '' ? parentKey + '_' : '') + index;
|
|
986
|
+
var newItem = {
|
|
987
|
+
item: item,
|
|
988
|
+
index: index,
|
|
989
|
+
level: level,
|
|
990
|
+
key: key,
|
|
991
|
+
parent: parent,
|
|
992
|
+
parentKey: parentKey
|
|
993
|
+
};
|
|
994
|
+
newItem['items'] = createProcessedItems(item.items, level + 1, newItem, key);
|
|
995
|
+
processedItems.push(newItem);
|
|
996
|
+
});
|
|
997
|
+
return processedItems;
|
|
582
998
|
};
|
|
583
999
|
var createStyle = function createStyle() {
|
|
584
1000
|
if (!styleElementRef.current) {
|
|
585
|
-
styleElementRef.current = DomHandler.createInlineStyle(context && context.nonce || PrimeReact.nonce);
|
|
1001
|
+
styleElementRef.current = DomHandler.createInlineStyle(context && context.nonce || PrimeReact.nonce, context && context.styleContainer);
|
|
586
1002
|
var selector = "".concat(attributeSelectorState);
|
|
587
1003
|
var innerHTML = "\n@media screen and (max-width: ".concat(props.breakpoint, ") {\n .p-tieredmenu[").concat(selector, "] > ul {\n max-height: ").concat(props.scrollHeight, ";\n overflow: ").concat(props.scrollHeight ? 'auto' : '', ";\n }\n\n .p-tieredmenu[").concat(selector, "] .p-submenu-list {\n position: relative;\n }\n\n .p-tieredmenu[").concat(selector, "] .p-menuitem-active > .p-submenu-list {\n left: 0;\n box-shadow: none;\n border-radius: 0;\n padding: 0 0 0 calc(var(--inline-spacing) * 2); /* @todo */\n }\n\n .p-tieredmenu[").concat(selector, "] .p-menuitem-active > .p-menuitem-link > .p-submenu-icon {\n transform: rotate(-180deg);\n }\n\n .p-tieredmenu[").concat(selector, "] .p-submenu-icon:before {\n content: \"\\e930\";\n }\n\n ").concat(!props.popup ? ".p-tieredmenu[".concat(selector, "] { width: 100%; }") : '', "\n}\n");
|
|
588
1004
|
styleElementRef.current.innerHTML = innerHTML;
|
|
@@ -591,30 +1007,41 @@ var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
591
1007
|
var destroyStyle = function destroyStyle() {
|
|
592
1008
|
styleElementRef.current = DomHandler.removeInlineStyle(styleElementRef.current);
|
|
593
1009
|
};
|
|
1010
|
+
var alignOverlay = function alignOverlay() {
|
|
1011
|
+
DomHandler.absolutePosition(containerRef.current, targetRef.current);
|
|
1012
|
+
var targetWidth = DomHandler.getOuterWidth(targetRef.current);
|
|
1013
|
+
if (targetWidth > DomHandler.getOuterWidth(containerRef.current)) {
|
|
1014
|
+
containerRef.current.style.minWidth = DomHandler.getOuterWidth(targetRef.current) + 'px';
|
|
1015
|
+
}
|
|
1016
|
+
};
|
|
594
1017
|
var onEnter = function onEnter() {
|
|
595
1018
|
if (props.autoZIndex) {
|
|
596
|
-
ZIndexUtils.set('menu',
|
|
1019
|
+
ZIndexUtils.set('menu', containerRef.current, context && context.autoZIndex || PrimeReact.autoZIndex, props.baseZIndex || context && context.zIndex['menu'] || PrimeReact.zIndex['menu']);
|
|
597
1020
|
}
|
|
598
|
-
DomHandler.addStyles(
|
|
1021
|
+
DomHandler.addStyles(containerRef.current, {
|
|
599
1022
|
position: 'absolute',
|
|
600
1023
|
top: '0',
|
|
601
1024
|
left: '0'
|
|
602
1025
|
});
|
|
603
|
-
|
|
1026
|
+
alignOverlay();
|
|
1027
|
+
DomHandler.focus(menuRef.current.getElement());
|
|
1028
|
+
scrollInView();
|
|
604
1029
|
if (attributeSelectorState && props.breakpoint) {
|
|
605
|
-
|
|
1030
|
+
containerRef.current.setAttribute(attributeSelectorState, '');
|
|
606
1031
|
createStyle();
|
|
607
1032
|
}
|
|
608
1033
|
};
|
|
609
1034
|
var onEntered = function onEntered() {
|
|
610
|
-
|
|
1035
|
+
bindDocumentClickListener();
|
|
1036
|
+
bindDocumentResizeListener();
|
|
611
1037
|
};
|
|
612
1038
|
var onExit = function onExit() {
|
|
613
1039
|
targetRef.current = null;
|
|
614
|
-
|
|
1040
|
+
unbindDocumentClickListener();
|
|
1041
|
+
unbindDocumentResizeListener();
|
|
615
1042
|
};
|
|
616
1043
|
var onExited = function onExited() {
|
|
617
|
-
ZIndexUtils.clear(
|
|
1044
|
+
ZIndexUtils.clear(containerRef.current);
|
|
618
1045
|
destroyStyle();
|
|
619
1046
|
};
|
|
620
1047
|
useMountEffect(function () {
|
|
@@ -625,8 +1052,45 @@ var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
625
1052
|
}
|
|
626
1053
|
});
|
|
627
1054
|
useUpdateEffect(function () {
|
|
628
|
-
|
|
629
|
-
|
|
1055
|
+
var itemsToProcess = props.model || [];
|
|
1056
|
+
var processed = createProcessedItems(itemsToProcess);
|
|
1057
|
+
setProcessedItems(processed);
|
|
1058
|
+
}, props.model);
|
|
1059
|
+
useUpdateEffect(function () {
|
|
1060
|
+
var processedItem = activeItemPath.find(function (p) {
|
|
1061
|
+
return p.key === focusedItemInfo.parentKey;
|
|
1062
|
+
});
|
|
1063
|
+
var processed = processedItem ? processedItem.items : processedItems;
|
|
1064
|
+
setVisibleItems(processed);
|
|
1065
|
+
}, [activeItemPath, focusedItemInfo, processedItems]);
|
|
1066
|
+
useUpdateEffect(function () {
|
|
1067
|
+
var focusedId = focusedItemInfo.index !== -1 ? "".concat(idState).concat(ObjectUtils.isNotEmpty(focusedItemInfo.parentKey) ? '_' + focusedItemInfo.parentKey : '', "_").concat(focusedItemInfo.index) : null;
|
|
1068
|
+
setFocusedItemId(focusedId);
|
|
1069
|
+
}, [focusedItemInfo]);
|
|
1070
|
+
useUpdateEffect(function () {
|
|
1071
|
+
if (!props.popup) {
|
|
1072
|
+
if (ObjectUtils.isNotEmpty(activeItemPath)) {
|
|
1073
|
+
bindDocumentClickListener();
|
|
1074
|
+
bindDocumentResizeListener();
|
|
1075
|
+
} else {
|
|
1076
|
+
unbindDocumentClickListener();
|
|
1077
|
+
unbindDocumentResizeListener();
|
|
1078
|
+
}
|
|
1079
|
+
}
|
|
1080
|
+
}, [activeItemPath]);
|
|
1081
|
+
useUpdateEffect(function () {
|
|
1082
|
+
if (focusTrigger) {
|
|
1083
|
+
var itemIndex = focusedItemInfo.index !== -1 ? findNextItemIndex(focusedItemInfo.index) : findFirstFocusedItemIndex();
|
|
1084
|
+
changeFocusedItemIndex(itemIndex);
|
|
1085
|
+
setActiveItemPath(activeItemPath.filter(function (p) {
|
|
1086
|
+
return p.parentKey !== focusedItemInfo.parentKey;
|
|
1087
|
+
}));
|
|
1088
|
+
setFocusTrigger(false);
|
|
1089
|
+
}
|
|
1090
|
+
}, [focusTrigger]);
|
|
1091
|
+
useUpdateEffect(function () {
|
|
1092
|
+
if (attributeSelectorState && containerRef.current) {
|
|
1093
|
+
containerRef.current.setAttribute(attributeSelectorState, '');
|
|
630
1094
|
createStyle();
|
|
631
1095
|
}
|
|
632
1096
|
return function () {
|
|
@@ -634,7 +1098,7 @@ var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
634
1098
|
};
|
|
635
1099
|
}, [attributeSelectorState, props.breakpoint]);
|
|
636
1100
|
useUnmountEffect(function () {
|
|
637
|
-
ZIndexUtils.clear(
|
|
1101
|
+
ZIndexUtils.clear(containerRef.current);
|
|
638
1102
|
});
|
|
639
1103
|
React.useImperativeHandle(ref, function () {
|
|
640
1104
|
return {
|
|
@@ -643,13 +1107,13 @@ var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
643
1107
|
show: show,
|
|
644
1108
|
hide: hide,
|
|
645
1109
|
getElement: function getElement() {
|
|
646
|
-
return
|
|
1110
|
+
return containerRef.current;
|
|
647
1111
|
}
|
|
648
1112
|
};
|
|
649
1113
|
});
|
|
650
1114
|
var createElement = function createElement() {
|
|
651
1115
|
var rootProps = mergeProps({
|
|
652
|
-
ref:
|
|
1116
|
+
ref: containerRef,
|
|
653
1117
|
id: props.id,
|
|
654
1118
|
className: cx('root'),
|
|
655
1119
|
style: props.style,
|
|
@@ -670,17 +1134,31 @@ var TieredMenu = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function
|
|
|
670
1134
|
onExited: onExited
|
|
671
1135
|
}, ptm('transition'));
|
|
672
1136
|
return /*#__PURE__*/React.createElement(CSSTransition, _extends({
|
|
673
|
-
nodeRef:
|
|
1137
|
+
nodeRef: containerRef
|
|
674
1138
|
}, transitionProps), /*#__PURE__*/React.createElement("div", rootProps, /*#__PURE__*/React.createElement(TieredMenuSub, {
|
|
675
|
-
id: idState,
|
|
1139
|
+
id: idState + '_list',
|
|
1140
|
+
ref: menuRef,
|
|
676
1141
|
hostName: "TieredMenu",
|
|
677
1142
|
menuProps: props,
|
|
678
|
-
|
|
1143
|
+
tabIndex: 0,
|
|
1144
|
+
model: processedItems,
|
|
1145
|
+
ariaLabel: props.ariaLabel,
|
|
1146
|
+
ariaLabelledBy: props.ariaLabelledBy,
|
|
1147
|
+
ariaOrientation: "vertical",
|
|
1148
|
+
ariaActiveDescendant: focused ? focusedItemId : undefined,
|
|
1149
|
+
menuId: idState,
|
|
1150
|
+
level: 0,
|
|
1151
|
+
focusedItemId: focusedItemId,
|
|
1152
|
+
activeItemPath: activeItemPath,
|
|
1153
|
+
onFocus: onFocus,
|
|
1154
|
+
onBlur: onBlur,
|
|
1155
|
+
onKeyDown: onKeyDown,
|
|
1156
|
+
onItemClick: onItemClick,
|
|
1157
|
+
onItemMouseEnter: onItemMouseEnter,
|
|
679
1158
|
root: true,
|
|
680
1159
|
popup: props.popup,
|
|
681
1160
|
onHide: hide,
|
|
682
1161
|
isMobileMode: isMobileMode,
|
|
683
|
-
onItemToggle: onItemToggle,
|
|
684
1162
|
submenuIcon: props.submenuIcon,
|
|
685
1163
|
ptm: ptm,
|
|
686
1164
|
cx: cx,
|