UNPKG

13.6 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5Object.defineProperty(exports, "__esModule", {
6 value: true
7});
8exports["default"] = exports.ProxyStoreProvider = void 0;
9
10var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
12var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
14var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
16var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
17
18var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
20var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
21
22var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
23
24var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
25
26var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
27
28var _err = _interopRequireDefault(require("@lskjs/err"));
29
30var _axios = _interopRequireDefault(require("axios"));
31
32var _getIpv = require("../../utils/getIpv");
33
34var _ProxyProvider2 = require("../ProxyProvider");
35
36function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
37
38function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
39
40function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
41
42function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
43
44/**
45 * API docs: https://proxy-store.com/en/developers
46 */
47var ProxyStoreProvider = /*#__PURE__*/function (_ProxyProvider) {
48 (0, _inherits2["default"])(ProxyStoreProvider, _ProxyProvider);
49
50 var _super = _createSuper(ProxyStoreProvider);
51
52 function ProxyStoreProvider() {
53 var _this;
54
55 (0, _classCallCheck2["default"])(this, ProxyStoreProvider);
56
57 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
58 args[_key] = arguments[_key];
59 }
60
61 _this = _super.call.apply(_super, [this].concat(args));
62 _this.provider = 'proxystore';
63 _this.baseURL = 'https://proxy-store.com/api';
64 return _this;
65 }
66
67 (0, _createClass2["default"])(ProxyStoreProvider, [{
68 key: "createClient",
69 value: function () {
70 var _createClient = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
71 return _regenerator["default"].wrap(function _callee$(_context) {
72 while (1) {
73 switch (_context.prev = _context.next) {
74 case 0:
75 if (this.config.apiKey) {
76 _context.next = 2;
77 break;
78 }
79
80 throw new _err["default"]('!config.apiKey');
81
82 case 2:
83 return _context.abrupt("return", _axios["default"].create({
84 baseURL: "".concat(this.baseURL, "/").concat(this.config.apiKey)
85 }));
86
87 case 3:
88 case "end":
89 return _context.stop();
90 }
91 }
92 }, _callee, this);
93 }));
94
95 function createClient() {
96 return _createClient.apply(this, arguments);
97 }
98
99 return createClient;
100 }()
101 }, {
102 key: "getBalance",
103 value: function () {
104 var _getBalance = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
105 var _yield$this$client$ge, data;
106
107 return _regenerator["default"].wrap(function _callee2$(_context2) {
108 while (1) {
109 switch (_context2.prev = _context2.next) {
110 case 0:
111 _context2.next = 2;
112 return this.client.get('/getbalance');
113
114 case 2:
115 _yield$this$client$ge = _context2.sent;
116 data = _yield$this$client$ge.data;
117 return _context2.abrupt("return", {
118 currency: 'RUB',
119 value: data.balance
120 });
121
122 case 5:
123 case "end":
124 return _context2.stop();
125 }
126 }
127 }, _callee2, this);
128 }));
129
130 function getBalance() {
131 return _getBalance.apply(this, arguments);
132 }
133
134 return getBalance;
135 }()
136 }, {
137 key: "checkErr",
138 value: function () {
139 var _checkErr = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
140 var res,
141 data,
142 err,
143 _args3 = arguments;
144 return _regenerator["default"].wrap(function _callee3$(_context3) {
145 while (1) {
146 switch (_context3.prev = _context3.next) {
147 case 0:
148 res = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : {};
149 data = res.data, err = res.err;
150
151 if (!err) {
152 _context3.next = 4;
153 break;
154 }
155
156 throw new _err["default"](err);
157
158 case 4:
159 if (data) {
160 _context3.next = 6;
161 break;
162 }
163
164 throw new _err["default"]('!data', {
165 res: res
166 });
167
168 case 6:
169 if (!(data.error_id !== 404)) {
170 _context3.next = 8;
171 break;
172 }
173
174 return _context3.abrupt("return");
175
176 case 8:
177 if (!(data.status !== 'no')) {
178 _context3.next = 10;
179 break;
180 }
181
182 return _context3.abrupt("return");
183
184 case 10:
185 throw new _err["default"]({
186 code: data.error_id,
187 message: [data.error, data.message].filter(Boolean).join(': ')
188 });
189
190 case 11:
191 case "end":
192 return _context3.stop();
193 }
194 }
195 }, _callee3);
196 }));
197
198 function checkErr() {
199 return _checkErr.apply(this, arguments);
200 }
201
202 return checkErr;
203 }()
204 }, {
205 key: "fetchListRaw",
206 value: function () {
207 var _fetchListRaw = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
208 var res;
209 return _regenerator["default"].wrap(function _callee4$(_context4) {
210 while (1) {
211 switch (_context4.prev = _context4.next) {
212 case 0:
213 _context4.next = 2;
214 return this.client.get('/getproxy')["catch"](function (err) {
215 return {
216 err: err
217 };
218 });
219
220 case 2:
221 res = _context4.sent;
222 _context4.next = 5;
223 return this.checkErr(res);
224
225 case 5:
226 return _context4.abrupt("return", res.data || []);
227
228 case 6:
229 case "end":
230 return _context4.stop();
231 }
232 }
233 }, _callee4, this);
234 }));
235
236 function fetchListRaw() {
237 return _fetchListRaw.apply(this, arguments);
238 }
239
240 return fetchListRaw;
241 }()
242 }, {
243 key: "fetchList",
244 value: function () {
245 var _fetchList = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5() {
246 var _this2 = this;
247
248 var data, list;
249 return _regenerator["default"].wrap(function _callee5$(_context5) {
250 while (1) {
251 switch (_context5.prev = _context5.next) {
252 case 0:
253 _context5.next = 2;
254 return this.fetchListRaw();
255
256 case 2:
257 data = _context5.sent;
258 list = Object.values(data.list);
259 return _context5.abrupt("return", list.filter(function (item) {
260 return item.active === '1';
261 }).map(function (item) {
262 return _this2.createProxy({
263 host: item.host || item.ip,
264 // TODO: хуйня какая та
265 port: +item.port,
266 user: item.user,
267 password: item.pass,
268 type: item.type === 'socks' ? 'socks5' : item.type,
269 ip: item.ip,
270 tags: {
271 country: String(item.country).toLowerCase(),
272 ipv: (0, _getIpv.getIpv)(item.ip),
273 comment: item.comment ? String(item.comment) : undefined,
274 dateFrom: new Date(item.unixtime * 1000),
275 dateTo: new Date(item.unixtime_end * 1000)
276 }
277 });
278 }));
279
280 case 5:
281 case "end":
282 return _context5.stop();
283 }
284 }
285 }, _callee5, this);
286 }));
287
288 function fetchList() {
289 return _fetchList.apply(this, arguments);
290 }
291
292 return fetchList;
293 }()
294 }, {
295 key: "fetchOptions",
296 value: function () {
297 var _fetchOptions = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
298 var _yield$this$client$ge2, data;
299
300 return _regenerator["default"].wrap(function _callee6$(_context6) {
301 while (1) {
302 switch (_context6.prev = _context6.next) {
303 case 0:
304 _context6.next = 2;
305 return this.client.get("/getcountry");
306
307 case 2:
308 _yield$this$client$ge2 = _context6.sent;
309 data = _yield$this$client$ge2.data;
310 return _context6.abrupt("return", {
311 countries: data.list
312 });
313
314 case 5:
315 case "end":
316 return _context6.stop();
317 }
318 }
319 }, _callee6, this);
320 }));
321
322 function fetchOptions() {
323 return _fetchOptions.apply(this, arguments);
324 }
325
326 return fetchOptions;
327 }()
328 }, {
329 key: "getBuyListProps",
330 value: function getBuyListProps() {
331 // const countries = ['us', 'ru'];
332 var countries = [];
333 return countries.map(function (country) {
334 return {
335 country: country
336 };
337 });
338 }
339 }, {
340 key: "buy",
341 value: function () {
342 var _buy = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7(_ref) {
343 var options, _yield$this$client$ge3, data;
344
345 return _regenerator["default"].wrap(function _callee7$(_context7) {
346 while (1) {
347 switch (_context7.prev = _context7.next) {
348 case 0:
349 options = (0, _extends2["default"])({}, _ref);
350 _context7.next = 3;
351 return this.client.get("/buy", {
352 params: _objectSpread({
353 type: 'http',
354 count: 1,
355 period: 5,
356 category: 'tiktok'
357 }, options)
358 });
359
360 case 3:
361 _yield$this$client$ge3 = _context7.sent;
362 data = _yield$this$client$ge3.data;
363
364 if (!data.error) {
365 _context7.next = 7;
366 break;
367 }
368
369 throw new _err["default"]({
370 message: data.error
371 });
372
373 case 7:
374 return _context7.abrupt("return", {
375 data: data,
376 price: data.price
377 });
378
379 case 8:
380 case "end":
381 return _context7.stop();
382 }
383 }
384 }, _callee7, this);
385 }));
386
387 function buy(_x) {
388 return _buy.apply(this, arguments);
389 }
390
391 return buy;
392 }()
393 }]);
394 return ProxyStoreProvider;
395}(_ProxyProvider2.ProxyProvider);
396
397exports.ProxyStoreProvider = ProxyStoreProvider;
398var _default = ProxyStoreProvider;
399exports["default"] = _default;
400//# sourceMappingURL=ProxyStoreProvider.js.map
\No newline at end of file