Refactor ng-model and add facets component API