Novak Djokovic moves a step closer to his first Monte Carlo Masters title since 2015 by beating Australian Alex de Minaur to reach the semi-finals.