refactor b-menu for dynamicaly build