Promise implementation for movement component