Decouple service from directive