refactored drag functionality into a new store