-
My audio-context-singleton was not very complex, but it seemed more complex than it needed to be. I couldn't remember why it had any async code at all.
It's because of close, which returns a promise. But in all of my usage of this module, I've never had to create a second context, and so don't really need the module to close the first one for me.
So, I've dropped the closing stuff, and now the module is as simple as I think it should be. If I do have to close a context, I'll just do it myself.