{"_id":"mini-semaphore","_rev":"27-6765eea83def57031f937995cccbb8cc","name":"mini-semaphore","dist-tags":{"latest":"1.5.4"},"versions":{"1.0.0":{"name":"mini-semaphore","version":"1.0.0","keywords":["lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.0.0","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"4b04859e10cea3f9ff0fa346cb6737a5aa80cf8c","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.0.0.tgz","fileCount":35,"integrity":"sha512-pfOzse+JofHzVi5ouE8VOS1zKJSAA0B7Fs9kvxNO/xkOnXqhPelHG7fIRrbq2E7L9hiT4lakcqLlCXJiYRfvOQ==","signatures":[{"sig":"MEYCIQCkQXkQa9w2EPDPGjPTITtfULEdokFuBoiLK+V2GyAa1gIhALUgE7uQKIG8HQ2uy63XIyopdY2wNepYrQgss+4H3toJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51448,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeWpkgCRA9TVsSAnZWagAA2U0P/iJW6TfgoQRqcgJ0YXnI\npa6bzMkuk1af1MwRgZLjorO2HHLL8aqAv9zLQ1gu6eXsWLy1yS3uVDkR0KFl\noyY/G8bQc6vy9bfTvNLYO97m9ISAJdfMJW2LuEN+vtmbMpOH28N+m/EVgVTV\nayuXfJJwk63g+F6f6IGnV7LZe2XHjlb3zWmFjoznQ+biNFxNIyOFkW81iDfN\neI/L3mYec0UP6MQn+xiRFbexJKP/pOb88I7bWr2tmuihzE8g3/JyBDrdjS9A\nItz2j8ngccZ0EIdjy/ADz2pVI6lukk/LTXmRmytjuCoVDg+JGfbh1kogYuWm\nQsUPfjngi/kJnF+XORD/SlHDh6NAE8h8f/x4D6wdFOM6L9gYhoV917aSIXLC\nDun0A78vcGUF/iXtikpYJGV+9TecayiJTTSIVybC7R4OSo/OL0URDZpQgWKW\neW7BOnO21Y7x5X2V2FFzCJCrw7yCpryuKeTbSXMdJPXqNpPRt3GCkICsm3IU\neblR8xbxfBrtL3c+u4IEwhx0YzpZ4E6xCbjr+a6ryi2L6OTU4vSGC6VtWLIA\nAq28yyBMKO8WKFeF5K/M2FZHodMyRO3L+sRCq0acRGbJcxs7H0+8vVsJFsnU\nM9MJKizZvsUJldfxsr3I/gsFKlcRnyiNeuOSGBXr+XZLD6DM7Et1n/W2hE+l\n+Ao8\r\n=6o8z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.js","private":false,"scripts":{"all":"yarn clean && yarn lint && yarn dist && yarn webpack","dist":"rimraf dist/!(webpack) && yarn build && yarn build:esm && cpx ./{package.json,README.md,LICENSE} dist -v && cpx \"./build/**/*\" dist -v","lint":"eslint src/**/*.ts","test":"jest --coverage --silent=false -c=jest.config.js","build":"tsc","clean":"rimraf build/* dist/* logs/*.tsbuildinfo","webpack":"rimraf ./dist/webpack/* ./dist/umd/* && npx webpack && cpx ./dist/*.d.ts ./dist/webpack/ -v","build:esm":"tsc -p src/tsconfig.json && node ./scripts/tools -cmd rmc -basePath ./build/esm -test \"/.js$/\"","inst:clean":"rimraf yarn.lock node_modules && yarn install","update:packages":"yarn upgrade-interactive --latest"},"typings":"./index.d.ts","_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"6.13.7","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"13.9.0","_hasShrinkwrap":false,"devDependencies":{"cpx":"latest","jest":"^25.1.0","eslint":"^6.8.0","rimraf":"^3.0.2","ts-jest":"^25.2.1","webpack":"^4.41.6","ts-loader":"^6.2.1","node-fetch":"latest","typescript":"^3.8.3","@types/jest":"^25.1.3","webpack-cli":"^3.3.11","@types/webpack":"^4.41.6","rm-cstyle-cmts":"latest","@types/node-fetch":"^2.5.5","terser-webpack-plugin":"^2.3.5","@typescript-eslint/parser":"^2.21.0","@typescript-eslint/eslint-plugin":"^2.21.0","@typescript-eslint/eslint-plugin-tslint":"^2.21.0"},"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.0.0_1582995744309_0.18621166499929886","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"mini-semaphore","version":"1.1.0","keywords":["lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.1.0","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"48046771c7eaa7fe6832de4f156b50035ed5706e","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.1.0.tgz","fileCount":26,"integrity":"sha512-QTurGlkamDZU8Q0rCSENDp2MhLSRw+gTBXxriEqZVtPuwuwmq8jL/iAMcUvUSxiQwE/3573Sv9VcXCib7MVQQA==","signatures":[{"sig":"MEUCIQCRrPbBGZXjTv6cub5YLWusIZ8DEOyAZrv1mJLLrZynAwIge/aXcWD4nK/h7RDDdRXJjjGUbFNj8JoiPXGhxKSvET0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":66032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeaJLACRA9TVsSAnZWagAAflAP/RN5HkOQyXUOdv48N2gN\nXh0mXb39T00LJj3jfU6DlhD1cHaf3WE9y6mLd4TAPkr/UKLbwxIWZ3yNTtvn\nxGvYsp5Fl2Y17JH9QINTWCWy8dJnF+U0RXoU9eMr+XbK+UpFLUBMmm/UN6F6\n7zonyOYLHb2YpcjXu8P0Xj78dNMTo0zG7r3GFqf5qSF0GgcPLryPfTcLFo7d\nHQ7DB0QgQhjqeYxhijcJfe3miL/AKzumR4HFr9DJKAiyQTnSOOK8BzRNT4T7\nQCqHHvzjdRmbQFu5dYHP5pNzQt1RLM+eFlSUCHVrG6b4hYgKOTM8RJGuFI/X\nAR0wLhppMZEIum0jLhW6h4C0G30foaXR2PDQYwY+S4vbqv2cNFIpQUIpQEOP\n3WK1eep2rlS5X3zEh2CreC5kzblqJuH2G/nH4lx7gM0924fTiYXfLqSqAnLJ\nbQbTIxZb5eySXZUuSngKcXV70wZVVlLKl04OLG1lwco3e+3ADjA7RmB2QcMO\nRfVBXkx6/gjhopqD8FQnmVAYZzAZ6FfBKvLgOlzEZF5VQ9giQaNwky5k7kIc\nfOEwLGEg+LKTrlZGMPHtUMsk5xsCFxxLoTV8NZTkDvek+f+zdwM+e8JXNACN\nxXUh77jhSmhrL3PEb4djMsH5tR/P2OtuEEB8/J3NvOLeCzVk+qmFzjsouALb\nKQtG\r\n=fSq8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.js","private":false,"scripts":{"all":"yarn clean && yarn lint && yarn dist && yarn webpack && yarn copy:types","dist":"rimraf dist/!(webpack) && yarn build && yarn build:esm && cpx ./{package.json,README.md,LICENSE} dist -v && cpx \"./build/**/*.js\" dist -v","lint":"eslint src/**/*.ts","test":"jest --coverage --silent=false -c=jest.config.js","build":"tsc","clean":"rimraf build/* dist/* logs/*.tsbuildinfo","webpack":"rimraf ./dist/webpack/* ./dist/umd/* && npx webpack && cpx ./dist/*.d.ts ./dist/webpack/ -v","build:esm":"tsc -p src/tsconfig.json && node ./scripts/tools -cmd rmc -basePath ./build/esm -test \"/.js$/\"","copy:types":"cpx src/index.d.ts dist -v && cpx src/index.d.ts dist/cjs -v && cpx src/index.d.ts dist/esm -v && cpx src/index.d.ts dist/umd -v && cpx src/index.d.ts dist/webpack -v","inst:clean":"rimraf yarn.lock node_modules && yarn install","update:packages":"yarn upgrade-interactive --latest"},"typings":"./index.d.ts","_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"6.13.7","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"13.10.1","_hasShrinkwrap":false,"devDependencies":{"cpx":"latest","jest":"^25.1.0","eslint":"^6.8.0","rimraf":"^3.0.2","ts-jest":"^25.2.1","webpack":"^4.42.0","ts-loader":"^6.2.1","typescript":"^3.8.3","@types/jest":"^25.1.4","webpack-cli":"^3.3.11","@types/webpack":"^4.41.6","rm-cstyle-cmts":"latest","terser-webpack-plugin":"^2.3.5","@typescript-eslint/parser":"^2.23.0","@typescript-eslint/eslint-plugin":"^2.23.0","@typescript-eslint/eslint-plugin-tslint":"^2.23.0"},"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.1.0_1583911616229_0.44205414112571506","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"mini-semaphore","version":"1.3.0","keywords":["lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.0","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"08a597d5084313368628111466b1e0660f1c84b3","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.0.tgz","fileCount":26,"integrity":"sha512-yK7IHh0tp/bsG8knUceomS/6bes59I+/pg8Vy6E9no50WHjeKGzOT2Ef+9WonoPAUM6bHmdhwXsn55otEloQ1A==","signatures":[{"sig":"MEUCIQD0wT9q4NngRHO401RAbAuTbFZhV/bw1M0Jsnk1QQJfUAIgavl22qs/3+WEjZhlqAy6wqI9AyluUR5/bXJqhyrTlT4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":71571,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe62KfCRA9TVsSAnZWagAAo9EQAJ1R/POcHarSl97Jz1IM\neslD2VenPcH+CqGNaD4TI0bwXcFJqevwYU+5fcSNFJxHERvyFzojAcNMYh4x\nMGydTOO5JwavPvMKA0yu4a4JPirP4HiBpQPsjvv7UbWboTt0VAXyqIJm1xxt\n7f+D2t5lDs/eqyNc44Aje/jRta+guQmIJabrq1BGsPa7Vm81uoIXjWpJVzoE\ngUgF+NxwoPmvoiPQi8F+IlfEqfSFdfp0pgjIctzel8aneyPCcZZ/zBQ8aWiq\nDbEEJeHf4EFXK2YEARu/7w3aalWm7s4LQPmb6ZcNwlQJfyZUe5D4uFXI7EbZ\nweZ87Bl3mzZa2c2o0M+0t0hlMW+jRjjOf77Y1EwM8A+gRz/Mj3AWiJPv/OVM\nEEB/HHNmIJV31dmv947iGezjo3XbeoklPTiZ0HFugASl21t+a3U5encppys0\nzF9AttAEgoauKOoTca59v0yVQTf/b62+g3icsVwo7oEot9vIBCSPx7tYSwRn\nsKq95KdoxPGO5zF8GrLvcPE4QLJu3PcAFxT9kUGHj8gdS0eyOOoJppMrZAdh\nY9EVJ6rQU+rFhX4KHCAIVGO976H1NW3xrJSQI2HAv6/mxwyodq8Z0IQGhoX/\nquGVYuu6dkWvEiqdaZ2kBoBUn0rnTYtwpgMzb+BOxqtIIzbI/jmCTAIrDps+\ntYV+\r\n=ZKvx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.js","engines":{"node":">=10","yarn":"^1.22.4"},"private":false,"typings":"./index.d.ts","_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"6.14.5","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"14.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.0_1592484510648_0.49021788789769927","host":"s3://npm-registry-packages"}},"1.3.1":{"name":"mini-semaphore","version":"1.3.1","keywords":["lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.1","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"c3a9f3fc9a4a3f4105bb2c43d0eb3669950772ff","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.1.tgz","fileCount":26,"integrity":"sha512-A6JwwTnnnnMWmKZvfJvcysQUQUOEyNfrsXl86d30/zT+B44SQa/K7pJAKAYGpGZuBjSmu1c0rdNxyr6rHYlWbQ==","signatures":[{"sig":"MEUCIQDt3zODk5GY5sn0wKuoQk0mEaw2Efk90HChsmLE8DMu9QIgUJa9xQ/W0AEP4+YU49l8D9SvOR2kAU3Z8HZYpzoy0GE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":73141,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe62oLCRA9TVsSAnZWagAAdysP/iZNlX2Z98QnxJytsCXO\nFt/cZO9FIReXDEY0nyBpZku3kWySzB12EbVr+3iGUUVeLQMqGzvm4TrLQSSU\nZNqnYChHmD/942sqU0UJwcJefJvSi/A1ZWCpsbibawYXAT3kyplPre61n5Co\n4QHafYX9CvHzVPq+8C/akL3lIGH39xUt6IoNU0EGc0TjrkHIpsPnP8Bp2+6z\npjqTssNFY9/LDW53X1q2kA3f62warVQQ4pBBFyqUXsmEN4ohqIFDjdWDzSm4\ndQkBJwVA4FJgz4NgKysU4zlCPB0h8QYVMWIVNzKtmlpuNmJrVFA4nXFN5Tel\nv+t5f32nMdwF5Xm7XkAfsmxEwDiLQ2PZ9B++85mgWQH2ZiOEKJKD4eQl9yc3\n0O9eLeSo8RdR456e4uefFz4mHNEL/ahN4AukoA5pSrgNhfJQ7viqcKvI+70/\n7Gxya0tT6oaOJVCTWu6tp8VbYuCNTDPK/zPEHpyz6AFMpOrVPDCfobkaydVL\n59H7bHV8y0WwLx/LFF0XQVvFw37334QCzmQ77fQgqs3USsR5sPdSsuW1okkI\nVN+EZtlm7tYAT6Us8rcwwsSYZ0RY4mOeGjX3uErkO1xdUZZIWJhD19iKtaMy\n2nV2BR5lTdwBPDF08QaQR4f/vnyWklwarfB1dpZF8sjVE67F7qHGsg96Ods+\nTm4I\r\n=dBxC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.js","engines":{"node":">=10","yarn":"^1.22.4"},"private":false,"typings":"./index.d.ts","_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"6.14.5","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"14.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.1_1592486410760_0.8629958879174224","host":"s3://npm-registry-packages"}},"1.3.3":{"name":"mini-semaphore","version":"1.3.3","keywords":["lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.3","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"94add0906447fc64f08616ffcd182daf29454497","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.3.tgz","fileCount":26,"integrity":"sha512-0l355bcnx31yqP7IOc5RLLIYew7AzRM9w/96pBUHHiM/1ggw4hZd7rv4tYUNW/iFuzuaCLHXiCIFFXfw7LxQ5g==","signatures":[{"sig":"MEQCIFxlsf0U+iUto/QFALTfHl00ZHxwtlqVBmH2PLuZPz/cAiBbyt7nQp/AzLGgAnvRgiCHkTuM1CMRbdvswgTpI1bSQQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":72832,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe6+CNCRA9TVsSAnZWagAAtc8P/38nOWFqlN0hMfjNVydH\nSeRnblwPczxDl1so5TOr8u/Pwd/ib9TY8e34MYjYcUcEQc3AmWgGGJUBZ68p\nAlp0TuWSBqi0EvGeqw24KeOu9J7wbwJHPuHX0QMd6SiAPAIvlObdMtQ9bgye\nk8vj/bTEkXekicVuS+RKcW8O/Hz03nbH100io/eFdhP+bWZX1pUXeb1H3xss\nHtTrfFvN1iMIJ1Uuo7BzOX/litNP0cWAziEU+90bEFbVgqNur11uEYBZFeOi\nJOVpAXv1Z1nj9hPz2V5c5sNrP3d4HmrtDdcDpHdooiLFFt7wNkBwhaxnt8cX\nim3SGdkqLKZOOit9kY/CsUIReCQsqqgi7Q7Gg5me3AmSXKL+sX54j9ZAkeuO\nLF/jl5GMgXJIM0VUPFicABJvw6WDHbv7g4vtz7mzVSin8DPBjb0Wnx4HK2C9\nl5StKWkuYIRk75pWLKUzwq7ZTjP8CWF1vnLXpD0tzz82Xg+iquLA/P+wRZrh\nUYu/Fe2Co8pg1p8HWDWwEcckwPJypAqqh0LfeQE6rGozHEKpUd2Otml7zm+b\nu22ef+T7MG6yOToQUXDkRPH2nhbJ1aI52NqCioE8Z7TUxDYHacItMXfFhimT\njBzS27csp7ufBJZ9lLJ6xgSYaeKZCxcaLpqCpi7tOAotDn8gJF3rXkZYMj+L\nfSob\r\n=Hsop\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.js","engines":{"node":">=10","yarn":"^1.22.4"},"private":false,"typings":"./index.d.ts","_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"6.14.5","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"14.4.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.3_1592516748777_0.8620127777810738","host":"s3://npm-registry-packages"}},"1.3.4":{"name":"mini-semaphore","version":"1.3.4","keywords":["lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.4","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"7bc199c6d4f32bc46a2f4d7d53cf41d66e712cde","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.4.tgz","fileCount":26,"integrity":"sha512-r2BDVV++ZUCtfFRXVjYGd2hot/2ajKlfYV1qSM4LwkYGRALrOu30UCFjzBawFj6Pyvc3eNaAKwGTjWNCmvJKdg==","signatures":[{"sig":"MEUCIFnXHhixyeS+3XR5zx7KklmqR1xuiEPCzM40ZdEeQzFhAiEAzU1Zg0ZtiLEA3ai7p5WLJGnb81jMFUOWdjumJCSbuf4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":75033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiEi6dACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpNaw/+LLWzztmQuGNPgVma7m0D6s/SH1/lzKSNJ69DXblWe6Q9uQsU\r\nInuworYf5tjn0S0EXmdWVaE/JcTl/s+phabKimzVX8ijbWFK2CfMZBkrq36r\r\nSpW2EczggdsDlHThhZ+1BNqnULfjAONgpuUT/j9I43LixIxvcQMgUpz8b+Kx\r\nlZDCjDwS28q1POOWWKrYnPerity+4cEBWf3iUtwXS/S2Cxo1Pntj/Q/CBsO1\r\nvQWyflVoCppHsWVkI3vKDxkg7YozuDuveRW1Cxk+0LZBO7foXaipY2MB3KJ5\r\nesLhaAoPGOusOZrDD+UAbOoFRbcfXrREa3V9x2g5BpAjWxRhmWexlz3/A75E\r\nRjhn6/E5I5JvSAdgzC9ESROzJkXck9uDvwR0VbKv3dswrUgSpbyGDGcravJD\r\nOsh6ObbmjBfy7D/x3EEJeogpS+rAZ4YcMGTiz7LY8YIfC5kXL0GYltUdH6Yi\r\nLg5Ba3vYo3mUvz7hw2Eo9Nn91cbEpfxRQEMP9iFseLZz46VfnRS4gFlCqCZF\r\ndHAJeJTYetI6Utyz/w4Nhky+X+Avr0yYYCzlUwGaVbVZjj6suSbYzQ3CHIOd\r\nyQPrXnjtEctobF3fYx6rlUuXJfl2f8zP0vVKxpO7MExFOHNOHpOiVKp7uo9M\r\nIPTY6iWQDESk90gl+eazLYqrD3h4u+T+prM=\r\n=/7Vf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.js","engines":{"node":">=10","yarn":"^1.22.4"},"private":false,"typings":"./index.d.ts","_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"7.5.2","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"16.14.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.4_1645358749497_0.875491702735099","host":"s3://npm-registry-packages"}},"1.3.7":{"name":"mini-semaphore","version":"1.3.7","keywords":["lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.7","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"43c7c853b3c9ff4aa49f8328dd2d47ec55d05cbe","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.7.tgz","fileCount":26,"integrity":"sha512-ANUH4E/kRY1A7kk0HdkFbDddXL/4ot3grA2gYiK5cc7n5/Yx+FbZ0E5s9hs/Dq00Mk2uw4sswKS9ANrjhnGlBA==","signatures":[{"sig":"MEYCIQDMT4PLzQsZIe/VJYAwpjBsGD9Hu9uMjTa3CkxFVizjEAIhAK9VhNSrgBnW0ulnNnlHOd0I59jHbkEcgLFNf8YAMwq9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107321,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiE7B3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqvSw//SDjm8J0ooNaHS+C0gf7FTtmO6GLG3y9zczheut/fri7+XuPZ\r\nNPfY4aufiHDnUj6RrhhBv8QWYErKM1H6sFKo4I/OF2YMPPYEbmfQtzzSOMzt\r\n3BcNlaHXCT+rrBUsDqu4uW+h097kdFx/Nmeoh/EmjxcWXhtKzF7h0CBuIC5G\r\nJZFz0zxlQdeoxMSAosyA+wFAnPLxHUYOhlHmJ/72tbIo8KulpqFA4thd2Y9Y\r\nUXZ+Rp6VfLfmPiIidAwtUL3A5cpMY8dEKdkmJlQo6yJfQCVk3ykCSpHrOlv1\r\nYEqR1V5z+KGe0y2zQo24Bi9dRnu/x2IhpPpYvWJpMjV6ydg7VaZAuijR15tn\r\nW1F0KL6SRLOZCjv7cn07ojEjCHvX9AcD/8G3yhTknOhfmozJy511Hze74zqZ\r\n+WGPgfyIh5M/wpVoGHPTYhYKmJ5q1vkAOJ8WiPoMb8GIXd4nG0JkktQWUq1u\r\nKzHgpBwVMUl8SXbyZxDjRTJ7QTgx4UUXEEYbEIVnZRnmyT5+PjL3MggKWAPl\r\nsJpdZngXohkIYzU+wch1KoKdFytEEWLzPI0oTBYiU2L5x1uxLiYFikiDenD9\r\nybn5tLdQvSFBIf6cWh19t+JEuNvc6TVkBU6kBn4zwY3Gt0iJ9xtI9gqEmeOG\r\nTfddTv6kyh5+Oe/glkSJLCOixJeBiBwWklE=\r\n=5vQ7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.js","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"private":false,"typings":"./index.d.ts","_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"7.5.2","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"16.14.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.7_1645457527286_0.14917460285537576","host":"s3://npm-registry-packages"}},"1.3.9":{"name":"mini-semaphore","version":"1.3.9","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.9","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"157bf6280547203b83c55ac739f02eea54913811","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.9.tgz","fileCount":29,"integrity":"sha512-NK765E7kDETMMiDhIbbneMQceLDwkWz1Hm/L37e/LGbidgvFs6F4j+jt9pboz2wn2QXMvGXlDKG3BSxf18bdvw==","signatures":[{"sig":"MEUCIBXG6EEu1V1q2poYtqZL1gOyw4CsotL1qi6w02H4I+ZmAiEAzjhayJVtlvgG7xlGqQQMm0LPUY30ku/xLGwOEmJQKCk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":69570,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJicG9cACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqBxxAAnK2aet4chhGp6M5OQNYlq/gzF+CLphmyu9oOCHwbT6zkF2RV\r\nL9r5AsGi1NouHMzpE5GlNctlbuRAJBQ3HgjYxydLG8qnl4iNwrRaP4NR6voB\r\n8vdFjbmtYMa+QrcN2JXmCfqNIXuiIgscFVjahllkRWBdTgYO7phZQIvDY/3B\r\nBUtutH4k3pF3x72viOCKPmMrscwj/tsNcxrPhAJdUMSx1uatOnSd8VYWmFm/\r\na7j5Qy+yp5xprI6eU6gcBbIcFwm0HbKib8xNr+S8hdFw/38tAHXXkRymRVXj\r\nC8RihDvFpmt7zEwJkO/V4zxsc/zahCyuO015nv7YpfmmsC5PsEtnFtKP8pTU\r\nebNbm2/1xIIsd5OylMFBW1YvcttquB4O5PvsaDTM0LvIWY9HELaPJxcMa0dW\r\ntO1TqHBGgN/ABWfA4IUq1YLQvqKFyfU4SGbouSPRl6qfSoENrlRl2mKiaz2l\r\n94CiCh1nQuiJtg8TljMItwSYn7avXVUkYpH+Gz6vg24QJQnOgUZY9UmujLzq\r\nfg0H2ZY8H6zdqkJYFmF3BRl0ZXi/T/Mg3bSVHm0jHZTI4gI5vAHadjJo9uuH\r\nBwOsw+0e3DXtt1oemzWHDJjRbHSOMF6lFMhfSEmofoPqa3FttnaAKvnHQRtk\r\n8UDFgrK6N/X7Ru7RDhdzwT5wEh9vIWp5y7Y=\r\n=KeRz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./webpack-esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"9658500ca0b1bbbd72050a7d2c643e6364904a84","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"8.5.5","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"17.9.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.9_1651535708734_0.6241086687339286","host":"s3://npm-registry-packages"}},"1.3.10":{"name":"mini-semaphore","version":"1.3.10","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.10","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"03250ffe6074c8671dae27581649f752bbfbf634","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.10.tgz","fileCount":29,"integrity":"sha512-e9nvvMRar+fmrJ/2kTbt2JyXHgLBBswSl5XarSQYou292385rp+1um8TBEu0ih5PunGIJLfWbzx1wweLLmCxxw==","signatures":[{"sig":"MEYCIQC0uNT4S5RtUfMiCWNEVtzy0MOxERRfO1Nhg+6KhgQ6igIhALjz77LKcDFaM3qRACfYfjUcqYX1w4Io31FAC5BTWNku","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":81075,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJigM3wACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr9Vg//WLW2Cv4SRk44o13ofZoNdW4XaRsZvAieB6Ump6PSlRUbDBEA\r\nKzsh34KeAmDPl4LGDMkWtaVA5lugs1SPzbnwAvPjCcRQ3ckILi0IL7dBMMLL\r\naIHx4jEKHz5k0p4dpsUXb75E88flO9ZGKUNk8aqmR9RRN8wqmK8h8Yi/af/3\r\nkcSesdyAGFog7zRDwQL5YLYexlg9PhJ6t8erFds19cAJKjnErIrgg7EKYOwV\r\nhoWcHzxX4PMPDpn4s7j4smypdp8WzO1Bq8LPkwVzxDmTLDrWn50EwUlSVwUl\r\nZLIAWyKUDF4TnApzk9FmcHfoPMqk/T4H/NBQ6CBHAAjfs1KKMyOeNlbpPbvD\r\n1oYV5qG8vfWyk3tEEii2dwVyiC4t0hHRy6HNh0elh6dmGJ3FkOCmDmaCZJAi\r\nL+W6nuBDCZk7DNqxuGRdafM7gY/cSF+0v6jwGUYMGXydVT1KYtT5g1K/MDqj\r\nIqwUcgwSN84QLrVMm1KE+piHMvibPe5fgq7oEUUTaSHIkaflRM8XUlsts81U\r\n9djLuo+ARdcv2DI25QfOXYkwk5B1a2gggi6Pie/Ir1kj0Ma4Jh9+Y2wPlWn4\r\nT0EL2JapjeCVIODlHgn7HK2mJmEG3FhdJIEHgYuz5X9/5mxP1r7FrooNJta8\r\nBAtvyLwcclKkKaz7WE3AA0ZTZ3Cgfr2zxqI=\r\n=jrq8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"7a9bbd34f3530db9f0497d70d5e2d4cd386b29cb","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"8.8.0","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"17.9.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.10_1652608496338_0.23674660713835438","host":"s3://npm-registry-packages"}},"1.3.12":{"name":"mini-semaphore","version":"1.3.12","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.12","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"6b364e33c10bcf1cca723ad5e5b67915e8723037","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.12.tgz","fileCount":29,"integrity":"sha512-FNctxKrmojkEmr2k3yPNhwxEw8/xQ4DUO4xouA5tiIbVkA5+DHUNCQH0VD/9JFgga2BJP0tkLBoglo7ryAHmLA==","signatures":[{"sig":"MEQCIGP5vggcGBUhA2x8PcE9+TNL+2+b7lbFA4skfa/xLWuTAiBJRm645GaCaa2nEOsH2dcc35OAdFjzog4g+gUBTV4G9A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80130},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"504a7b9ddd78964d2fb1c686ee97755550915612","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.2.0","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"21.0.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.12_1698799428902_0.7508218491348131","host":"s3://npm-registry-packages"}},"1.3.13":{"name":"mini-semaphore","version":"1.3.13","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.13","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"b10d68e1f71ccf73449885968b9499297a08f3cb","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.13.tgz","fileCount":29,"integrity":"sha512-oYcGP1XxSaGq6yxycwqguDLN7HeavYT+wvdfVVj/6TeAYXQLEwwdpsKuX/k5ZPNVlbCL9d2qafIZg5prFKiq2w==","signatures":[{"sig":"MEYCIQDJcd050OYn2QQUCa5CFrw7Rx+62X4+4zMJWee+2A5iqwIhAIAUt5vhTjUy5Ln4tygjIgtJPVCEXi0IoKd56y+8XtEb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80956},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"a9dc9f8f8f458e5a314cc49b91b95d8e5a253dd4","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.2.3","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.13_1741534037701_0.7842156669660367","host":"s3://npm-registry-packages-npm-production"}},"1.3.15":{"name":"mini-semaphore","version":"1.3.15","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.15","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"122353b15a2dd253674e71a6380043758d1b93bf","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.15.tgz","fileCount":29,"integrity":"sha512-xcb9nH5l4KGzJce/xApy1fJqfyBBPdgkPYlFWguxu/4dRx63UlbrhpiYEKBdziBNipbksf9NuCBUmYXkd4/57A==","signatures":[{"sig":"MEUCIQCGVI5l9EEY9cI0E0tixq2idq1EOqqFOpQjHKR3RoyyIAIgQjwxMsUGvSv1lAeVRxcq7BlktBmno0CP9LqQxvaGC2w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80331},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"6a62dc5e192e4809b0356b20298e6c561c348592","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.15_1746884645960_0.8998465782767271","host":"s3://npm-registry-packages-npm-production"}},"1.3.16":{"name":"mini-semaphore","version":"1.3.16","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.16","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"dcfbd1beb70e7513fc82592beadcd17d95784305","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.16.tgz","fileCount":27,"integrity":"sha512-x5lBtmaZQXWwx3cqIl3f3s5hCFQb/M+GF438jlRQqzW8FCOJxB5p9+2nLgL27EEpfGkeM/EcFLaikIZH06UG0Q==","signatures":[{"sig":"MEYCIQDWUjEvwME3cm6rmXSGGDadb8JiXaBQpOBBwmeylRqC8QIhALM/ZFIj5hd3r5yvd8VcNdaEsnbvzOJnd9LksjRcK8Qx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80204},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"ec2b982e56e716561356b4e525d079cd3002f406","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.16_1746966698981_0.7242180819942508","host":"s3://npm-registry-packages-npm-production"}},"1.3.17":{"name":"mini-semaphore","version":"1.3.17","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.3.17","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"bcdfc31f4f328e8e2701791c9446556b347512cf","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.3.17.tgz","fileCount":27,"integrity":"sha512-692H4cKEGqHdGXfWZwS0Ef80IFHISlK7kF57QkArmPo7qwIwsiNP90QdjNrznDaNtWi9p3RFv2KmWSO8mqX2nQ==","signatures":[{"sig":"MEUCIQDhvJbd9XU3PgrZ1a2TAcg+cvX2tYVytuiYGFslBozuwAIgJdAsskddzlaIXDg1KV0K7WjFILgKo5wmVsEzimnaqh4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80223},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"12f3d3204a9aefde3a25bfdd351eec5a379b12b2","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.3.17_1747006065546_0.5482565225473894","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"mini-semaphore","version":"1.4.2","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.4.2","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"fcb583a286277ae422c9259d9722bcc04140193a","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.4.2.tgz","fileCount":27,"integrity":"sha512-oeHRFex2k8jPQfiskV84Ogr25/+Lg53c8eStnV1mXhrr6tFvmLyDp0oP7ILxK0nGy6PcEqKIRxL8UZdnFUWczw==","signatures":[{"sig":"MEYCIQDqaQuwuwF/s7FxY1j6FuPXkwaefMI/5fY+C7nleooG1AIhAN1m2ipkuyVm91C5v6BoMsfhcCz8rULn0OqHpE60ty0B","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":91853},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"e66a529d87562f107a11f43505bcf093c3fd7bd8","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.4.2_1747041135046_0.9182798266758103","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"mini-semaphore","version":"1.4.4","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.4.4","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"ed2a93c8ddef7de14e54b029aa745f20719ca71d","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.4.4.tgz","fileCount":27,"integrity":"sha512-V/3ZNdGjSxBsQz/+4mul5fYXedg2pZ7VB3wNTso1cuuSdS6oYivOsIxfXtZ7pxmhBqpu8+2qXafCu211xmq6+w==","signatures":[{"sig":"MEQCICIevqiqFUzpZkviOd5iakeXpf3Db0vJGl2eCibgQkmmAiBLIN/7ZfMJshvrDC+2P47akt6JA75w3OxVc3bQqY+XDQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97570},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"gitHead":"d1b8ed3dcf9e8567d56fd6e52dc237dde1c99b62","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.9.2","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.4.4_1747208491378_0.6869970307284561","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"mini-semaphore","version":"1.5.1","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.5.1","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"fe5c796950a0f4de91104e4d75dc592480e2a8d0","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.5.1.tgz","fileCount":32,"integrity":"sha512-IVF2Pmz+F1CDNCZ3bTWaf0pFvq3N4peEC4vKJZB1U5X/+NTnlhCQr4ujWcNaKIy2wlMwpUL9Pg2HnXlcK1wESg==","signatures":[{"sig":"MEQCIE6wIOrZTVmUe6DLKtxTUBGSA4YssLmFmLPhujNIKN4HAiAQKKE5hAg+1+OnolAJCzPEnt7b44x3urg5JAb6vNQS5w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107584},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"exports":{".":{"types":"./index.d.ts","import":"./esm/index.mjs","require":"./cjs/index.js"},"./umd":{"types":"./umd/index.d.ts","import":"./umd/index.js","require":"./umd/index.js"},"./class":{"import":"./esm/class.mjs","require":"./cjs/class.js"},"./deque":{"import":"./esm/deque.mjs","require":"./cjs/deque.js"},"./object":{"import":"./esm/object.mjs","require":"./cjs/object.js"},"./webpack":{"types":"./webpack/index.d.ts","import":"./webpack/index.js","require":"./webpack/index.js"},"./webpack-esm":{"types":"./webpack-esm/index.d.mts","import":"./webpack-esm/index.mjs"},"./flow-restrictor":{"import":"./esm/flow-restrictor.mjs","require":"./cjs/flow-restrictor.js"}},"gitHead":"d8f42e3d8c2339062bc6092ee0984a59e24ffc6a","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"11.6.0","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"25.2.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.5.1_1768908011121_0.3216747308354382","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"mini-semaphore","version":"1.5.2","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.5.2","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"9db0322975e9d7e56ecbe3271f838086a9c9f168","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.5.2.tgz","fileCount":32,"integrity":"sha512-p1eWBZhkGKl++3FV2fqqvojrhQOyJNtS/bprAn/E8Wtm8QCjGMQg7wp8H1JND0rXCbRn7QAfFk3DHROGrbArpw==","signatures":[{"sig":"MEYCIQDBYUn8ZjpQBPpM7DxzL7fNzMppbY/JVnoefHDCsDJolAIhAOFtXodIlgIxOMFCAdSqaV1hUE1kSMpelj7dUoaXY9jV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107731},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"exports":{".":{"types":"./index.d.ts","import":"./esm/index.mjs","require":"./cjs/index.js"},"./umd":{"types":"./umd/index.d.ts","import":"./umd/index.js","require":"./umd/index.js"},"./class":{"import":"./esm/class.mjs","require":"./cjs/class.js"},"./deque":{"import":"./esm/deque.mjs","require":"./cjs/deque.js"},"./object":{"import":"./esm/object.mjs","require":"./cjs/object.js"},"./webpack":{"types":"./webpack/index.d.ts","import":"./webpack/index.js","require":"./webpack/index.js"},"./webpack-esm":{"types":"./webpack-esm/index.d.mts","import":"./webpack-esm/index.mjs"},"./flow-restrictor":{"import":"./esm/flow-restrictor.mjs","require":"./cjs/flow-restrictor.js"}},"gitHead":"c33afc7ee87945fd392de961438a7d0a616270ea","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.2.3","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"25.6.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.5.2_1771342316351_0.34222839716783815","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"mini-semaphore","version":"1.5.3","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"author":{"name":"jeffy-g"},"license":"MIT","_id":"mini-semaphore@1.5.3","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"dist":{"shasum":"1c2afe31bedd0d77b81b50fd13de9f2abf05a9e8","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.5.3.tgz","fileCount":32,"integrity":"sha512-ceTFSYCdigfj8w4mOmVZPeJaggtBO18TqsJ9ZjXUenIPI2b00qlz0v25nLWinj9ldUYiQHjAGaccLY8tm1q37Q==","signatures":[{"sig":"MEUCIQCZx2OI7T142OCEI0LuqJjY5s9oMnW369OXIdwC1k16CQIgVPVEhbf28OweD2jHxHkykJ34z8yI8WtU9y3v8eTkLrU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107872},"main":"./cjs/index.js","types":"./index.d.ts","unpkg":"./umd/index.js","module":"./esm/index.mjs","engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"exports":{".":{"types":"./index.d.ts","import":"./esm/index.mjs","require":"./cjs/index.js"},"./umd":{"types":"./umd/index.d.ts","import":"./umd/index.js","require":"./umd/index.js"},"./class":{"import":"./esm/class.mjs","require":"./cjs/class.js"},"./deque":{"import":"./esm/deque.mjs","require":"./cjs/deque.js"},"./object":{"import":"./esm/object.mjs","require":"./cjs/object.js"},"./webpack":{"types":"./webpack/index.d.ts","import":"./webpack/index.js","require":"./webpack/index.js"},"./webpack-esm":{"types":"./webpack-esm/index.d.mts","import":"./webpack-esm/index.mjs"},"./flow-restrictor":{"import":"./esm/flow-restrictor.mjs","require":"./cjs/flow-restrictor.js"}},"gitHead":"d5937f33240933633702b28d24836bf7aab2175d","private":false,"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"repository":{"url":"git+https://github.com/jeffy-g/mini-semaphore.git","type":"git"},"_npmVersion":"10.2.3","description":"A lightweight version of Semaphore","directories":{},"sideEffects":false,"_nodeVersion":"25.6.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/mini-semaphore_1.5.3_1771347538851_0.6278227643523426","host":"s3://npm-registry-packages-npm-production"}},"1.5.4":{"name":"mini-semaphore","version":"1.5.4","description":"A lightweight version of Semaphore","private":false,"main":"./cjs/index.js","module":"./esm/index.mjs","unpkg":"./umd/index.js","sideEffects":false,"types":"./index.d.ts","exports":{".":{"types":"./index.d.ts","import":"./esm/index.mjs","require":"./cjs/index.js"},"./class":{"import":"./esm/class.mjs","require":"./cjs/class.js"},"./object":{"import":"./esm/object.mjs","require":"./cjs/object.js"},"./deque":{"import":"./esm/deque.mjs","require":"./cjs/deque.js"},"./flow-restrictor":{"import":"./esm/flow-restrictor.mjs","require":"./cjs/flow-restrictor.js"},"./umd":{"import":"./umd/index.js","require":"./umd/index.js","types":"./index.d.ts"},"./webpack":{"import":"./webpack/index.js","require":"./webpack/index.js","types":"./index.d.ts"},"./webpack-esm":{"import":"./webpack-esm/index.mjs","types":"./index.d.ts"}},"author":{"name":"jeffy-g"},"license":"MIT","bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"homepage":"https://github.com/jeffy-g/mini-semaphore#readme","repository":{"type":"git","url":"git+https://github.com/jeffy-g/mini-semaphore.git"},"engines":{"node":">=v12.22.10","yarn":"^1.22.4"},"keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"gitHead":"58219278ced155ed73f8ab37b7522641bccb5157","_id":"mini-semaphore@1.5.4","_nodeVersion":"25.6.0","_npmVersion":"11.7.0","dist":{"integrity":"sha512-H1NS2Rui8hIGYCtwDIo4+dfc/mdA79PftDDKTZEY8C0PE2taiKzMIrYoCjiMv+D0dSN6+6ro6Uii6/qF5pHB6A==","shasum":"8d9f7f7145aa137ac77dd9b49533369e611fd1c9","tarball":"https://registry.npmjs.org/mini-semaphore/-/mini-semaphore-1.5.4.tgz","fileCount":29,"unpackedSize":89042,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICNPrTuJ+Bmxi3/YshdV5Kq5gL+j7nzfjteweZtbMTH5AiEAyAUag7KoJkOQYRkjsqDve2b0XbVNEcN5zHttiOwCw3k="}]},"_npmUser":{"name":"motrohi","email":"hirotom1107@gmail.com"},"directories":{},"maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mini-semaphore_1.5.4_1771790130804_0.10421085753887982"},"_hasShrinkwrap":false}},"time":{"created":"2020-02-29T17:02:24.309Z","modified":"2026-02-22T19:55:31.045Z","1.0.0":"2020-02-29T17:02:24.466Z","1.1.0":"2020-03-11T07:26:56.474Z","1.3.0":"2020-06-18T12:48:30.775Z","1.3.1":"2020-06-18T13:20:10.948Z","1.3.3":"2020-06-18T21:45:48.879Z","1.3.4":"2022-02-20T12:05:49.655Z","1.3.7":"2022-02-21T15:32:07.406Z","1.3.9":"2022-05-02T23:55:08.848Z","1.3.10":"2022-05-15T09:54:56.457Z","1.3.11":"2023-11-01T00:42:14.773Z","1.3.12":"2023-11-01T00:43:49.188Z","1.3.13":"2025-03-09T15:27:17.898Z","1.3.15":"2025-05-10T13:44:06.182Z","1.3.16":"2025-05-11T12:31:39.189Z","1.3.17":"2025-05-11T23:27:45.757Z","1.4.1":"2025-05-12T03:21:18.295Z","1.4.2":"2025-05-12T09:12:15.217Z","1.4.3":"2025-05-14T06:22:56.046Z","1.4.4":"2025-05-14T07:41:31.555Z","1.5.1":"2026-01-20T11:20:11.265Z","1.5.2":"2026-02-17T15:31:56.477Z","1.5.3":"2026-02-17T16:58:58.985Z","1.5.4":"2026-02-22T19:55:30.944Z"},"bugs":{"url":"https://github.com/jeffy-g/mini-semaphore/issues"},"author":{"name":"jeffy-g"},"license":"MIT","homepage":"https://github.com/jeffy-g/mini-semaphore#readme","keywords":["async","lock","mutex","promise","semaphore","concurrency","javascript","typescript"],"repository":{"type":"git","url":"git+https://github.com/jeffy-g/mini-semaphore.git"},"description":"A lightweight version of Semaphore","maintainers":[{"name":"motrohi","email":"hirotom1107@gmail.com"}],"readme":"[![CircleCI](https://circleci.com/gh/jeffy-g/mini-semaphore/tree/master.svg?style=svg)](https://circleci.com/gh/jeffy-g/mini-semaphore/tree/master)\n[![codecov](https://codecov.io/gh/jeffy-g/mini-semaphore/graph/badge.svg?token=SEEIAGR8HW)](https://codecov.io/gh/jeffy-g/mini-semaphore)\n![GitHub](https://img.shields.io/github/license/jeffy-g/mini-semaphore?style=plastic)\n[![npm version](https://badge.fury.io/js/mini-semaphore.svg)](https://badge.fury.io/js/mini-semaphore)\n![node](https://img.shields.io/node/v/mini-semaphore.svg?style=plastic)\n![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/jeffy-g/mini-semaphore.svg?style=plastic)\n![npm bundle size](https://img.shields.io/bundlephobia/min/mini-semaphore?style=plastic)\n![npm](https://img.shields.io/npm/dm/mini-semaphore.svg?style=plastic)\n![GitHub commit activity](https://img.shields.io/github/commit-activity/m/jeffy-g/mini-semaphore.svg?style=plastic)\n\n# Mini Semaphore (mini-semaphore\n\nA lightweight version of `Semaphore` that limits the number of process that can simultaneously access a resource or pool of resources.  \nThis implementation can only work within one javascript runtime thead and realized by `Promise`\n\n> ## API\n\n  + [mini-semaphore API](./mini-semaphore-api.md)\n\n> ## Usage\n\n  + how to imports\n\n```ts\n// typescript\nimport {\n    ISimplifiedLock, IFlowableLock, // types\n    // NOTE: `class` and` object` both have the same interface\n    MiniSemaphore, // get implementation as class\n    create, // get implementation as object literal\n\n    restrictor // see Flow Restrictor section\n} from \"mini-semaphore\";\n\n// node\nconst {\n    MiniSemaphore,\n    create,\n    restrictor\n} = require(\"mini-semaphore\");\n```\n\n + class\n```ts\nimport { MiniSemaphore, IFlowableLock } from \"mini-semaphore\";\n\n// like Mutex \nconst ms: IFlowableLock = new MiniSemaphore(1);\n// allow multiple\nconst ms = new MiniSemaphore(10);\n```\n\n + object\n```ts\nimport { create as createSemaphore, IFlowableLock } from \"mini-semaphore\";\nconst ms: IFlowableLock = createSemaphore(10);\n```\n\n + Also, it can be read as a script element in the html page.\n   + In that case, access from `MiniSema` global variable\n\n```html\n<script src=\"https://unpkg.com/mini-semaphore@latest/umd/index.js\"></script>\n<script>\n    // class\n    const ms = new MiniSema.MiniSemaphore(10);\n    // object\n    const mso = MiniSema.create(10);\n</script>\n```\n---\n> ## Examples\n\n```javascript\n// import MiniSemaphore class\nimport { MiniSemaphore } from \"mini-semaphore\";\n\n// create `MiniSemaphore` with appropriate restrictions\n// Limit the number of simultaneous requests to fire to 7\nconst s = new MiniSemaphore(7);\n\n// example function\nasync function refreshToken(refresh_token: string) {\n    const fetchOption = {\n        method: \"post\",\n        mode: \"cors\",\n        headers: {\n            \"content-type\": \"application/x-www-form-urlencoded\",\n            host: \"login.eveonline.com\"\n        },\n        body: `grant_type=refresh_token&refresh_token=${encodeURIComponent(refresh_token)}&client_id=${CLIENT_ID}&code_verifier=${VERIFIER}`\n    } as RequestInit;\n\n    let response: Response;\n\n    //\n    // #1 When processing details are write in code\n    //\n    await s.acquire(); // If the pending exceeds the limit, wait for ...\n    // Requires a \"try catch\" block to surely execute the \"release\" method\n    try {\n        response = await fetch(\"https://login.eveonline.com/v2/oauth/token\", fetchOption);\n    } finally {\n        s.release();   // release the pending count\n    }\n    const data = await response.json() as TOAuth2AccessTokenResponse;\n    // ...\n\n    //\n    // #2 simplfied with `IFlowableLock.flow` method (automatic acquire/release)\n    //\n    response = await s.flow(async () => fetch(\"https://login.eveonline.com/v2/oauth/token\", fetchOption));\n    const data = await response.json() as TOAuth2AccessTokenResponse;\n\n    // ...\n}\n```\n\n> ## Flow Restrictor\n\n  + Utility module using `MiniSemaphore` is available\n\n```ts\n/**\n * create a semaphore for each `key`, and limit the number of shares with the value of `restriction`\n * \n * @param key number or string as tag\n * @param restriction number of process restriction\n * @param processBody the process body\n */\nexport declare function multi<T>(key: string | number, restriction: number, processBody: () => Promise<T>): Promise<T>;\n\n/**\n * synonym of `multi(key, 1, processBody)`\n * \n *  + use case\n *    * Avoid concurrent requests to the same url\n * \n * @param key number or string as tag\n * @param processBody the process body\n */\nexport declare function one<T>(key: string | number, processBody: () => Promise<T>): Promise<T>;\n```\n\n```ts\nimport { restrictor } from \"mini-semaphore\";\n\n//\n// Avoid concurrent requests to the same `id`\n//\nasync function resolve(id: string | number): Promise<TType> {\n    const data = await restrictor.one(id, async () => {\n            let d = dataCache[id];\n            if (d === void 0) {\n                dataCache[id] = d = await fetch(\n                  `https://esi.evetech.net/latest/universe/types/${id}/`)\n                ).then(res => res.json());\n            }\n            return d;\n        }\n    );\n    return data;\n}\n\n```\n\n---\n> ## Abortable Semaphore\n\nStarting from version **1.4.3**, `mini-semaphore` introduces support for abortable semaphores.  \nThis feature allows you to cancel pending tasks and notify listeners when an abort event occurs.  \nThis is particularly useful in scenarios where you need to terminate ongoing operations gracefully.\n\n### Key Features\n\n- **Abort Method**: Immediately cancels all pending tasks and restores the semaphore's capacity.\n- **Event Emission**: Emits an `abort` event to notify listeners of the cancellation.\n- **Listener Management**: Provides `onAbort` and `offAbort` methods to register and remove event listeners.\n\n### Example Usage\n\n```typescript\nimport { createWithAbort } from \"mini-semaphore\";\n\n// Create an abortable semaphore with a capacity of 3\nconst semaphore = createWithAbort(3);\n\n// Register an abort event listener\nsemaphore.onAbort((reason) => {\n    console.log(\"Abort event received:\", reason.message);\n});\n\n// Simulate tasks\nconst task = async (id: number) => {\n    try {\n        await semaphore.acquire();\n        console.log(`Task ${id} started`);\n        await new Promise((resolve) => setTimeout(resolve, 1000)); // Simulate work\n        console.log(`Task ${id} completed`);\n        semaphore.release();\n    } catch (e) {\n        console.log(`Task ${id} aborted:`, e.message);\n    }\n};\n\n// Start tasks\nconst tasks = [1, 2, 3, 4, 5].map((id) => task(id));\n\n// Abort all pending tasks after 2 seconds\nsetTimeout(() => {\n    semaphore.abort();\n}, 2000);\n\n// Wait for all tasks to settle\nPromise.allSettled(tasks).then(() => {\n    console.log(\"All tasks settled\");\n});\n```\n\n### Explanation\n\n1. **Creating an Abortable Semaphore**: Use `createWithAbort` to create a semaphore with abort capabilities.\n2. **Registering Listeners**: Use `onAbort` to listen for abort events and handle cleanup or logging.\n3. **Aborting Tasks**: Call `abort` to cancel all pending tasks. Tasks that are already running will not be interrupted but will complete normally.\n4. **Graceful Cleanup**: Use `offAbort` to remove listeners when they are no longer needed.\n\nThis feature enhances the flexibility of `mini-semaphore`, making it suitable for more complex concurrency control scenarios.\n\n---\n\n> ## Type Information for Subpath Imports\n\n`mini-semaphore` provides full `.d.ts` typings for the root entry:\n\n```ts\nimport { create, MiniSemaphore, restrictor } from \"mini-semaphore\";\n```\n\nSubpath entries (for example `mini-semaphore/class`, `mini-semaphore/object`, `mini-semaphore/deque`, and `mini-semaphore/flow-restrictor`) are  \nprimarily intended for advanced usage and are documented with JSDoc type annotations in the distributed ESM files.\n\n```js\nimport { create } from \"mini-semaphore/object\";\nimport { MiniSemaphore } from \"mini-semaphore/class\";\n```\n\n> ### Notes\n\n- Subpath imports are runtime-supported and JSDoc-typed.\n- Dedicated `.d.ts` files for subpath exports may not be provided.\n- If your TypeScript setup does not infer types from JSDoc in `node_modules`, prefer importing from the root package (`\"mini-semaphore\"`).\n\n---\n\n> ## Authors\n\n + **jeffy-g** - [jeffy-g](https://github.com/jeffy-g)\n\n\n> ### License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details\n","readmeFilename":"README.md"}