UNPKG

medusa-plugin-paypal

Version:
58 lines 4.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); class HttpClient { constructor(options, logger) { if (!options.clientId) { throw new Error("Required option `clientId` is missing in PayPal plugin"); } if (!options.clientSecret) { throw new Error("Required option `clientSecret` is missing in PayPal plugin"); } if (options.sandbox == undefined) { throw new Error("Required option `sandbox` is missing in PayPal plugin"); } this._opiton = options; this._logger = logger; this._baseUrl = this._opiton.sandbox ? "https://api-m.sandbox.paypal.com" : "https://api-m.paypal.com"; this.defaultHeaders = { "Content-Type": "application/json", }; } async request(endpoint, { method = "GET", body = null, headers = {} } = {}) { const url = this._baseUrl + endpoint; const config = { method, headers: { ...this.defaultHeaders, ...headers } }; if (typeof body === "string") { config.body = body; } else if (body !== null && typeof body === "object") { config.body = JSON.stringify(body); } try { const response = await fetch(url, config); const data = await response.json(); if (!response.ok) { throw { message: data?.message || response.statusText || "HTTP error", status: response.status, data, }; } return data; } catch (error) { this._logger.error(error.message); if (error instanceof TypeError) { // 网络错误 throw { message: "Network error", error }; } throw error; } } } exports.default = HttpClient; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3BheXBhbC91dGlscy9odHRwQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBR0EsTUFBTSxVQUFVO0lBTWQsWUFBWSxPQUFzQixFQUFFLE1BQWM7UUFDaEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLHdEQUF3RCxDQUFDLENBQUM7UUFDNUUsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FDYiw0REFBNEQsQ0FDN0QsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksU0FBUyxFQUFFLENBQUM7WUFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1FBQzNFLENBQUM7UUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTztZQUNsQyxDQUFDLENBQUMsa0NBQWtDO1lBQ3BDLENBQUMsQ0FBQywwQkFBMEIsQ0FBQztRQUMvQixJQUFJLENBQUMsY0FBYyxHQUFHO1lBQ3BCLGNBQWMsRUFBRSxrQkFBa0I7U0FDbkMsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTyxDQUNYLFFBQVEsRUFDUixFQUFFLE1BQU0sR0FBRyxLQUFLLEVBQUUsSUFBSSxHQUFHLElBQUksRUFBRSxPQUFPLEdBQUcsRUFBRSxLQUFVLEVBQUU7UUFFdkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDckMsTUFBTSxNQUFNLEdBQVE7WUFDbEIsTUFBTTtZQUNOLE9BQU8sRUFBRSxFQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBQyxHQUFHLE9BQU8sRUFBQztTQUM3QyxDQUFDO1FBRUYsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM3QixNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNyQixDQUFDO2FBQU0sSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3JELE1BQU0sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxDQUFDO1FBQ0QsSUFBSSxDQUFDO1lBQ0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzFDLE1BQU0sSUFBSSxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1lBRW5DLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ2pCLE1BQU07b0JBQ0osT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLElBQUksUUFBUSxDQUFDLFVBQVUsSUFBSSxZQUFZO29CQUM3RCxNQUFNLEVBQUUsUUFBUSxDQUFDLE1BQU07b0JBQ3ZCLElBQUk7aUJBQ0wsQ0FBQztZQUNKLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLElBQUksS0FBSyxZQUFZLFNBQVMsRUFBRSxDQUFDO2dCQUMvQixPQUFPO2dCQUNQLE1BQU0sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQzVDLENBQUM7WUFFRCxNQUFNLEtBQUssQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFFRCxrQkFBZSxVQUFVLENBQUMifQ==