enhance(sidenav): support promise notifications for open, close, toggle

Closes #947.
There is a little typo here: availabe -> available