Iran's supreme leader has vowed to "seek revenge" against Israel for the killing of Hamas' top political leader, Ismail Haniyeh.