UNPKG

clientnode

Version:

upgrade to object orientated rock solid plugins

1 lines 1.78 kB
"use strict";if("undefined"!=typeof module&&null!==module&&"undefined"!==eval("typeof require")&&null!==eval("require")&&"main"in eval("require")&&"undefined"!==eval("typeof require.main")&&null!==eval("require.main")){var ORIGINAL_MAIN_MODULE=module;module!==eval("require.main")&&"paths"in module&&"paths"in eval("require.main")&&"undefined"!=typeof __dirname&&null!==__dirname&&(module.paths=eval("require.main.paths").concat(module.paths.filter((function(path){return eval("require.main.paths").includes(path)}))))}if(null==window)var window="undefined"==typeof global||null===global?{}:global;!function(e,r){if("object"==typeof exports&&"object"==typeof module)module.exports=r();else if("function"==typeof define&&define.amd)define([],r);else{var n=r();for(var u in n)("object"==typeof exports?exports:e)[u]=n[u]}}(this,(function(){return function(){var e={d:function(r,n){for(var u in n)e.o(n,u)&&!e.o(r,u)&&Object.defineProperty(r,u,{enumerable:!0,get:n[u]})},o:function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},r={};e.r(r),e.d(r,{Semaphore:function(){return n}});var n=function(){function e(e){void 0===e&&(e=2),this.queue=[],this.numberOfResources=void 0,this.numberOfFreeResources=void 0,this.numberOfResources=e,this.numberOfFreeResources=e}var r=e.prototype;return r.acquire=function(){var e=this;return new Promise((function(r){e.numberOfFreeResources<=0?e.queue.push(r):(e.numberOfFreeResources-=1,r(e.numberOfFreeResources))}))},r.release=function(){var e=this.queue.pop();void 0===e?this.numberOfFreeResources+=1:e(this.numberOfFreeResources)},e}();return r.default=n,r}()}));