[product-popover] Popover.js refactoring