Teenage sensation Mirra Andreeva has knocked out reigning champion Iga Swiatek to reach the final of the Indian Wells Masters.