PATH:
home
/
bkunreyz
/
ezdatarecovery.net
/
wp-content
/
plugins
/
extendify
/
src
/
AutoLaunch
/
fetchers
import { getThemeVariation } from '@auto-launch/fetchers/get-variation'; import { getStyleShape, styleShape } from '@auto-launch/fetchers/shape'; import { failWithFallback, fetchWithTimeout, retryTwice, setStatus, } from '@auto-launch/functions/helpers'; import { updateOption } from '@auto-launch/functions/wp'; import { AI_HOST } from '@constants'; import { digest } from '@shared/api/digest'; import { reqDataBasics } from '@shared/lib/data'; import { __ } from '@wordpress/i18n'; import { z } from 'zod'; const fallback = { siteStyle: {} }; const url = `${AI_HOST}/api/styles`; const method = 'POST'; const headers = { 'Content-Type': 'application/json' }; // variation gets merged in after fetch const shapeLocal = z.array(styleShape.omit({ variation: true })); export const handleSiteStyle = async ({ siteProfile }) => { // translators: this is for a action log UI. Keep it short setStatus(__('Picking the perfect design', 'extendify-local')); const body = JSON.stringify({ ...reqDataBasics, siteProfile, count: 1 }); const response = await retryTwice(() => fetchWithTimeout(url, { method, headers, body }, 20_000), ).catch((error) => { return { ok: false, statusText: error.message, status: 0 }; }); if (!response?.ok) { digest({ error: { message: response.statusText, name: 'FetchError', status: response.status, }, details: { source: 'auto-launch', caller: 'handleSiteStyle' }, }); return fallback; } return failWithFallback( async () => { const data = await response.json(); const style = shapeLocal.parse(data)[0]; const variation = await getThemeVariation( { slug: style.colorPalette, fonts: style.fonts, }, { fallback: true }, ); const siteStyle = { ...style, variation }; await updateOption('extendify_site_style', siteStyle); // Set animation default await updateOption('extendify_animation_settings', { type: style.animation ?? 'fade', speed: 'medium', }); return getStyleShape.parse({ siteStyle }); }, fallback, { caller: 'handleSiteStyle' }, ); };
[-] get-images.js
[edit]
[-] get-logo.js
[edit]
[-] get-home.js
[edit]
[-] get-strings.js
[edit]
[-] get-variation.js
[edit]
[-] get-style.js
[edit]
[-] get-pages.js
[edit]
[+]
..
[-] shape.js
[edit]
[-] get-design-build.js
[edit]
[-] get-profile.js
[edit]
[-] get-plugins.js
[edit]