UNPKG

23.1 kBSource Map (JSON)View Raw
1{"version":3,"file":"ProxyModule.js","names":["_module","_interopRequireDefault","require","_asyncMapValues","_find","_flatten","_max","_pick","_uniq","_uniqBy","_collectMetrics","_Proxy2","_setProxyWorker","_filterProxy","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_interopRequireWildcard","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","valueOf","e","isDebug","ProxyModule","_Module","_inherits2","_super","_this","_classCallCheck2","_len","args","Array","_key","concat","setProxyWorker","_createClass2","value","getActiveProvidersNames","_this2","res","config","providers","provider","disabled","getModules","_get2","Promise","resolve","then","items","pick","tests","_runProvidersMethod","_asyncToGenerator2","_regenerator","mark","_callee2","method","_this3","_len2","_key2","_args2","wrap","_callee2$","_context2","prev","next","module","sent","abrupt","asyncMapValues","_ref","_callee","_callee$","_context","t0","log","error","stop","_x2","runProvidersMethod","_x","_getProxyStats","_callee3","proxyList","_callee3$","_context3","getProxyStats","_x3","_getAllProxyList","_callee4","_ref2","_ref2$localhost","localhost","listOfLists","rawProxyList","_args4","_callee4$","_context4","undefined","values","map","a","list","l","slice","uniqBy","flatten","_toConsumableArray2","getAllProxyList","_fetchProxyList","_callee5","proxies","_callee5$","_context5","fetchProxyList","_getProxyTestsResults","_callee6","_callee6$","_context6","getResults","getProxyTestsResults","_runProxyTests","_callee7","_callee7$","_context7","runTests","runProxyTests","_x4","_runProxyTest","_callee8","_ref3","proxyKey","testId","force","proxy","_callee8$","_context8","find","runTest","runProxyTest","_x5","_getList","_callee9","fetchedAt","proxyStats","filteredProxyList","_args9","_callee9$","_context9","max","p","_ref4","proxyTests","test","status","testIds","t","_t$test","id","tagsList","_t$test2","tags","testTags","uniq","targets","workers","filterProxy","total","count","getList","_updateProxyList","_callee10","_callee10$","_context10","trace","debug","updateProxyList","_updateProxyTests","_callee11","_callee11$","_context11","_ref5","updateProxyTests","_buyProxies","_callee12","_callee12$","_context12","buyProxies","_metrics","_callee13","_callee13$","_context13","collectMetrics","metrics","Module","exports","_default"],"sources":["../src/ProxyModule.js"],"sourcesContent":["// import { isDev } from '@lskjs/env';\nimport Module from '@lskjs/module';\nimport asyncMapValues from '@lskjs/utils/asyncMapValues';\nimport find from 'lodash/find';\nimport flatten from 'lodash/flatten';\nimport max from 'lodash/max';\nimport pick from 'lodash/pick';\nimport uniq from 'lodash/uniq';\nimport uniqBy from 'lodash/uniqBy';\n\nimport { collectMetrics } from './collectMetrics';\nimport { Proxy } from './Proxy';\nimport { setProxyWorker } from './setProxyWorker';\nimport { filterProxy } from './utils/filterProxy';\n\n// const isDebug = isDev;\nconst isDebug = false;\nexport class ProxyModule extends Module {\n getActiveProvidersNames() {\n const res = Object.keys(\n this.config.providers || {},\n (provider) => !!this.config.providers[provider] && !this.config.providers[provider].disabled,\n );\n return res;\n }\n getModules() {\n return {\n ...super.getModules(),\n providers: [\n import('@lskjs/module/asyncModules'),\n { items: pick(this.providers, this.getActiveProvidersNames()), config: this.config.providers },\n ],\n tests: [import('./ProxyTests'), { tests: this.tests, config: this.config.tests }],\n };\n }\n async runProvidersMethod(method, ...args) {\n const providers = await this.module('providers.*');\n return asyncMapValues(providers, async (provider) => {\n try {\n const res = await provider[method](...args);\n return res;\n } catch (err) {\n this.log.error('[provider] err', provider, err);\n return null;\n }\n });\n }\n async getProxyStats(proxyList) {\n const tests = await this.module('tests');\n return tests.getProxyStats(proxyList);\n }\n async getAllProxyList({ localhost = false } = {}) {\n const res = await this.runProvidersMethod('getList');\n let listOfLists = Object.values(res).map((a) => a?.list || []);\n if (isDebug) listOfLists = listOfLists.map((l) => l.slice(0, 2));\n const rawProxyList = uniqBy(flatten(listOfLists), 'key');\n if (localhost) return [new Proxy({ provider: 'localhost' }), ...rawProxyList];\n return rawProxyList;\n }\n async fetchProxyList() {\n const res = await this.runProvidersMethod('fetchList');\n const proxies = flatten(Object.values(res).map((a) => a || []));\n return proxies;\n }\n async getProxyTestsResults() {\n const tests = await this.module('tests');\n return tests.getResults();\n }\n async runProxyTests(proxyList) {\n const tests = await this.module('tests');\n // eslint-disable-next-line no-param-reassign\n if (!proxyList) proxyList = await this.getAllProxyList({ localhost: true });\n return tests.runTests(proxyList);\n }\n async runProxyTest({ proxyKey, testId, force }) {\n const tests = await this.module('tests');\n const proxyList = await this.getAllProxyList();\n const proxy = find(proxyList, { key: proxyKey });\n return tests.runTest({ proxy, testId, force });\n }\n setProxyWorker = setProxyWorker;\n async getList(filter = {}) {\n const res = await this.runProvidersMethod('getList');\n const fetchedAt = max(Object.values(res).map((a) => a?.fetchedAt));\n let proxyList = await this.getAllProxyList();\n const proxyStats = await this.getProxyStats(proxyList);\n proxyList = proxyList.map((p) => {\n // TODO: как-то облагородить\n let proxyTests = proxyStats[p.key] || [];\n proxyTests = proxyTests.filter((test) => test.status === 'success');\n const testIds = proxyTests.map((t) => t?.test?.id);\n const tagsList = proxyTests.map((t) => t?.test?.tags);\n const testTags = uniq([].concat(...tagsList));\n // eslint-disable-next-line no-param-reassign\n p.targets = testTags;\n // eslint-disable-next-line no-param-reassign\n p.tests = testIds;\n return p;\n });\n this.setProxyWorker(proxyList, this.config.workers);\n // const testedAt = max(Object.values(proxyStats).map((p) => p.updatedAt));\n // console.log({testedAt}, Object.values(proxyStats).map((p) => p.updatedAt))\n\n const filteredProxyList = filterProxy(proxyList, filter);\n return {\n fetchedAt,\n // testedAt,\n total: proxyList.length,\n count: filteredProxyList.length,\n list: filteredProxyList,\n };\n }\n async updateProxyList() {\n // TODO: mutex\n this.log.trace('[updateProxyList] start');\n const res = await this.runProvidersMethod('update');\n this.log.debug('[updateProxyList]', res);\n }\n async updateProxyTests() {\n // TODO: mutex\n this.log.trace('[updateProxyTests] start');\n const res = await this.runProxyTests(); // All proxies\n this.log.debug(\n '[updateProxyTests]',\n res.map(({ id, status }) => `${id}: ${status}`),\n );\n }\n async buyProxies() {\n // TODO: mutex\n this.log.trace('[buyProxies] nothing');\n }\n\n async metrics() {\n return collectMetrics.call(this);\n }\n}\n\nexport default ProxyModule;\n"],"mappings":"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"}
\No newline at end of file