Novak Djokovic could be barred from competing in the French Open after politicians gave final approval to a strict new law blocking unvaccinated people from most public spaces.