add js_source files & keep source & precommit together, so you can use both of them.