UNPKG

anypay-ts

Version:

TypeScript библиотека для работы с платёжной системой AnyPay

48 lines (47 loc) 2.02 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.PayoutService = void 0; const crypto_1 = require("../utils/crypto"); const errorHandler_1 = require("../utils/errorHandler"); const form_data_1 = __importDefault(require("form-data")); const axios_1 = __importDefault(require("axios")); class PayoutService { constructor(apiId, apiKey) { this.apiId = apiId; this.apiKey = apiKey; } async createPayout(params) { try { const sign = (0, crypto_1.generateCreatePayoutSign)(this.apiId, params.payout_id, params.payout_type, params.amount, params.wallet, this.apiKey); const form = new form_data_1.default(); Object.entries({ ...params, sign }).forEach(([key, value]) => { if (value !== undefined && value !== null) form.append(key, value); }); const response = await axios_1.default.post(`https://anypay.io/api/create-payout/${this.apiId}`, form, { headers: form.getHeaders() }); return response.data; } catch (err) { (0, errorHandler_1.handleAxiosError)(err); } } async getPayouts(params = {}) { try { const sign = (0, crypto_1.generatePayoutsSign)(this.apiId, this.apiKey); const form = new form_data_1.default(); Object.entries({ ...params, sign }).forEach(([key, value]) => { if (value !== undefined && value !== null) form.append(key, value); }); const response = await axios_1.default.post(`https://anypay.io/api/payouts/${this.apiId}`, form, { headers: form.getHeaders() }); return response.data; } catch (err) { (0, errorHandler_1.handleAxiosError)(err); } } } exports.PayoutService = PayoutService;