????JFIF??x?x????'
Server IP : 104.21.32.1 / Your IP : 216.73.216.145 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/tempvsty/eaabusiness.com/custom/wp-content/plugins/extendify/src/Shared/lib/ |
Upload File : |
import { pingServer } from '@shared/api/DataApi'; export const deepMerge = (target, ...sources) => { return sources.reduce((acc, source) => { if (!isObject(acc) || !isObject(source)) { return null; } const newTarget = { ...acc }; for (const key in source) { if (isObject(source[key]) && key in newTarget) { newTarget[key] = deepMerge(newTarget[key], source[key]); } else { newTarget[key] = source[key]; } } return newTarget; }, target); }; export const isObject = (value) => { return typeof value === 'object' && !Array.isArray(value) && value !== null; }; export const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms)); export const wasPluginInstalled = (activePlugins, pluginSlug) => activePlugins?.filter((p) => p.includes(pluginSlug))?.length; /** * Will ping every 1s until we get a 200 response from the server. * This is used because we were dealing with a particular issue where * servers we're very resource limited and rate limiting was common. * */ export const waitFor200Response = async () => { try { // This will error if not 200 await pingServer(); return true; } catch (error) { // Do nothing } await new Promise((resolve) => setTimeout(resolve, 1000)); return waitFor200Response(); }; export const retryOperation = async (operation, { maxAttempts = 1 }) => { for (let attempt = 1; attempt <= maxAttempts; attempt++) { try { await waitFor200Response(); await operation(); break; } catch (error) { if (attempt === maxAttempts) { throw error; } } } };