Donald Trump says agreement approved by US, Iran, Israel, others, cancels strike