Split wishlist code into new component