Server IP : 162.213.251.212 / Your IP : 18.116.88.16 [ Web Server : LiteSpeed System : Linux business55.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : allssztx ( 535) PHP Version : 8.1.31 Disable Function : NONE Domains : 1 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/allssztx/bestvalleywater.com/wp-content/plugins/extendify/src/Launch/lib/ |
Upload File : |
import { sleep } from '@shared/lib/utils'; const MAX_RETRIES = 2; const RETRY_DELAY = 1000; // 1 second in milliseconds export const fetchFontFaceFile = async (url) => { for (let attempt = 0; attempt <= MAX_RETRIES; attempt++) { try { // Add delay if this is not the first attempt if (attempt > 0) await sleep(RETRY_DELAY); const response = await fetch(url); if (!response.ok) { throw new Error('Failed to fetch font file.'); } const blob = await response.blob(); const filename = url.split('/').pop(); return new File([blob], filename, { type: blob.type, }); } catch (_) { if (attempt <= MAX_RETRIES) continue; console.error( `Failed to fetch font file after ${MAX_RETRIES + 1} attempts.`, ); return; } } }; export function makeFontFamilyFormData({ name, slug, fontFamily }) { const formData = new FormData(); const fontFamilySettings = { name, slug, fontFamily }; formData.append('font_family_settings', JSON.stringify(fontFamilySettings)); return formData; } export function makeFontFaceFormData({ fontFamilySlug, fontFamily, fontStyle, fontWeight, fontDisplay, src = [], file = [], }) { const formData = new FormData(); const fontFaceSettings = { fontFamily, fontStyle, fontWeight, fontDisplay, src: Array.isArray(src) ? src : [src], }; const files = Array.isArray(file) ? file : [file]; // Add each font file to the form data. files.forEach((file) => { const fileId = `${fontFamilySlug}-${fontWeight}-${fontStyle}`; formData.append(fileId, file, file.name); // Use the file ids as src for WP to match and upload the files. if (!src?.length) { fontFaceSettings.src.push(fileId); } else { fontFaceSettings.src = [fileId]; } }); formData.append('font_face_settings', JSON.stringify(fontFaceSettings)); return formData; }