UNPKG

2.72 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../src/setProxyWorker.js"],"names":["floor","a","Math","setProxyWorker","proxies","workers","proxiesCount","length","workersValue","workersCounts","value","props","count","name","target","res","filter","proxy","includes","res2","slice","forEach"],"mappings":";;;;;;;;;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAQ,CAACC,CAAD;AAAA,SAAQA,CAAC,GAAG,CAAJ,IAASC,IAAI,CAACF,KAAL,CAAWC,CAAX,KAAiB,CAA1B,GAA8B,CAA9B,GAAkCC,IAAI,CAACF,KAAL,CAAWC,CAAX,CAA1C;AAAA,CAAd;;AAEO,SAASE,cAAT,CAAwBC,OAAxB,EAAiCC,OAAjC,EAA0C;AAC/C,MAAMC,YAAY,GAAGF,OAAO,CAACG,MAA7B;AACA,MAAMC,YAAY,GAAG,uBAAMH,OAAN,EAAe,OAAf,CAArB;AACA,MAAMI,aAAa,GAAG,qBAAIJ,OAAJ,EAAa;AAAA,QAAGK,KAAH,QAAGA,KAAH;AAAA,QAAaC,KAAb;AAAA,2CAC9BA,KAD8B;AAEjCD,MAAAA,KAAK,EAALA,KAFiC;AAGjCE,MAAAA,KAAK,EAAEZ,KAAK,CAAEU,KAAK,GAAGF,YAAT,GAAyBF,YAA1B;AAHqB;AAAA,GAAb,CAAtB,CAH+C,CAQ/C;AAEA;AACA;;AACA,2BAAQG,aAAR,EAAuB,iBAA6B;AAAA,QAA1BG,KAA0B,SAA1BA,KAA0B;AAAA,QAAnBC,IAAmB,SAAnBA,IAAmB;AAAA,QAAbC,MAAa,SAAbA,MAAa;AAClD,QAAMC,GAAG,GAAGX,OAAO,CAACY,MAAR,CAAe,UAACC,KAAD;AAAA,aAAW,CAAC,qBAAIA,KAAJ,EAAW,aAAX,CAAD,IAA8B,CAAC,qBAAIA,KAAJ,EAAW,SAAX,KAAyB,EAA1B,EAA8BC,QAA9B,CAAuCJ,MAAvC,CAAzC;AAAA,KAAf,CAAZ,CADkD,CAElD;;AACA,QAAMK,IAAI,GAAGJ,GAAG,CAACK,KAAJ,CAAU,CAAV,EAAaR,KAAb,CAAb,CAHkD,CAIlD;;AACAO,IAAAA,IAAI,CAACE,OAAL,CAAa,UAACJ,KAAD;AAAA,aAAW,qBAAIA,KAAJ,EAAW,aAAX,EAA0BJ,IAA1B,CAAX;AAAA,KAAb;AACD,GAND,EAZ+C,CAmB/C;;AACA,SAAOT,OAAP;AACD;;eAEcD,c","sourcesContent":["/* eslint-disable camelcase */\nimport forEach from 'lodash/forEach';\nimport get from 'lodash/get';\nimport map from 'lodash/map';\nimport set from 'lodash/set';\nimport sumBy from 'lodash/sumBy';\n\nconst floor = (a) => (a > 0 && Math.floor(a) <= 0 ? 1 : Math.floor(a));\n\nexport function setProxyWorker(proxies, workers) {\n const proxiesCount = proxies.length;\n const workersValue = sumBy(workers, 'value');\n const workersCounts = map(workers, ({ value, ...props }) => ({\n ...props,\n value,\n count: floor((value / workersValue) * proxiesCount),\n }));\n // const leftWorkersCount = workersValue - sumBy(workersCounts, 'count');\n\n // workersCounts[Object.keys(workersCounts)[0]] += leftWorkersCount;\n // console.log({workersCounts})\n forEach(workersCounts, ({ count, name, target }) => {\n const res = proxies.filter((proxy) => !get(proxy, 'tags.worker') && (get(proxy, 'targets') || []).includes(target));\n // console.log('res', res, { target}, proxies)\n const res2 = res.slice(0, count);\n // console.log('res2', res2)\n res2.forEach((proxy) => set(proxy, 'tags.worker', name));\n });\n // console.log('proxies', proxies)\n return proxies;\n}\n\nexport default setProxyWorker;\n"],"file":"setProxyWorker.js"}
\No newline at end of file