feat(js): remove unused elements
feat(js): use underscore as factory
feat(js): use underscore as factory