UNPKG

@rustedcompiler/frappe-hooks

Version:

Reusable HTTP hooks for React and Frappe

38 lines 1.3 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.initializeClient = initializeClient; exports.getFrappeClient = getFrappeClient; exports.isFrappeClientInitialized = isFrappeClientInitialized; const axios_1 = __importDefault(require("axios")); let axiosInstance = null; let isInitialized = false; function initializeClient(config, force = false) { if (isInitialized && !force) { return axiosInstance; } const { baseURL, token } = config; axiosInstance = axios_1.default.create({ baseURL: baseURL.replace(/\/$/, ''), timeout: 10000, headers: { 'Content-Type': 'application/json', ...(token && { Authorization: `token ${token}` }), }, withCredentials: true }); isInitialized = true; return axiosInstance; } function getFrappeClient() { if (!axiosInstance) { throw new Error('HTTP client not initialized. Call initializeHttpClient() first.'); } return axiosInstance; } function isFrappeClientInitialized() { return isInitialized && axiosInstance !== null; } //# sourceMappingURL=frappe-instance.js.map