feat(selector): add initial version of selector