Note: this one may require being split into smaller tasks — I haven't gone all the way to the bottom of the rabbit hole on this one. Step one is figuring out what will be required in service of the goal, and creating additional tasks if required.
Goal:
- Port Liferay.TogglerInteraction from AUI to vanilla JS in liferay-frontend-js-web
- Deprecate "liferay-toggler-interaction" and the related "liferay-toggler-key-filter" AUI modules, defined here:
Steps:
- Confirm that sole usage site is: https://github.com/liferay/liferay-portal/blob/master/modules/apps/product-navigation/product-navigation-taglib/src/main/resources/META-INF/resources/control_menu/js/product_navigation_control_menu_add_application.js
- Analyze what TogglerInteraction actually does and plot a course for its replacement: a key determination to make will be to figure out whether we can really do this as a separate step from porting the product navigation menu from its current implementation as an AUI component.
Notes:
- liferay-toggler-interaction depends on a few AUI modules: event-key, the already mentioned liferay-toggler-filter-key (of which it is the sole user), and node-focusmanager — will need to explore what each of those does and figure out whether we need to create additional tasks as prerequisites to this task to make the equivalent functionality available without AUI.
- liferay-toggler-filter-key depends on aui-events-base