UNPKG

semem

Version:

Semantic Memory for Intelligent Agents

42 lines (38 loc) 1.09 kB
/** * API utilities and configuration */ // API configuration export const apiConfig = { baseUrl: '' // Empty string means same origin (default) }; /** * Fetch with timeout utility * @param {string} resource - URL to fetch * @param {object} options - Fetch options * @param {number} timeout - Timeout in milliseconds (default: 30000) * @returns {Promise<Response>} */ export async function fetchWithTimeout(resource, options = {}, timeout = 30000) { const controller = new AbortController(); const id = setTimeout(() => controller.abort(), timeout); try { const response = await fetch(resource, { ...options, signal: controller.signal }); clearTimeout(id); return response; } catch (error) { clearTimeout(id); throw error; } } /** * Show/hide loading indicator */ export function showLoading(show) { const loadingIndicator = document.getElementById('loading-indicator'); if (loadingIndicator) { loadingIndicator.style.display = show ? 'flex' : 'none'; } }