<pike96>Browser Extension</pike96>

Decorator

expirable-synchronized (A JS decorator to safely make function atomic)

I wrote a decorator to solve the concurrency problem of promises and published to npm. Waiting for you to take a look and try!