Détail du package

@mtt/navigator.locks

aermin10MIT0.0.2

support Web Locks API work in major browsers

Web, Locks, Web Locks, polyfill

readme

web-locks

A polyfill of Web Locks API with localstorage, support the mainstream browsers usage

usage:

install this lib

npm i navigator.locks

import this lib and use it follow Web Locks API

import locks from "navigator.locks";

locks.request("my_resource", async (lock) => {
  // The lock has been acquired.
  await do_something();
  await do_something_else();
  // Now the lock will be released.
});

online demo

demo link

you could open this url in two tabs, operate the lock buttons and see the page and console

process:

  • [x] lock.request

    • [x] lock.request option -> mode
    • [x] lock.request option -> ifAvailable
    • [x] lock.request option -> steal
    • [x] lock.request option -> 1signal
  • [x] lock.query

  • [x] CI/CD

  • [x] Unit test