WIP feat(oauth): message to native flows

`done` is optional, check for its existence before invoking it.