Server IP : 172.67.214.6 / Your IP : 216.73.216.73 Web Server : LiteSpeed System : Linux premium900.web-hosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 User : redwjova ( 1790) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/redwjova/near.llc/wp-content/plugins/extendify/src/Library/hooks/ |
Upload File : |
import { PATTERNS_HOST } from '@constants'; import useSWRInfinite from 'swr/infinite'; const fetcher = (url) => fetch(url).then((res) => res.json()); export const usePatterns = (incomingParams) => { const params = { siteType: undefined, category: undefined, wpVersion: window.extSharedData.wpVersion, lang: window.extSharedData.wpLanguage || null, showLocalizedCopy: window.extSharedData.showLocalizedCopy || null, ...incomingParams, }; const getKey = (pageIndex, previousPageData) => { if (!params.category) return null; if (previousPageData && !previousPageData.length) return null; const urlParams = new URLSearchParams({ page: pageIndex + 1 }); Object.entries(params) .filter(([, value]) => value !== undefined) .forEach(([key, value]) => { urlParams.append(key, value); }); return `${PATTERNS_HOST}/api/patterns?${urlParams.toString()}`; }; const { data, error, isLoading, isValidating, mutate, size, setSize } = useSWRInfinite(getKey, fetcher, { initialSize: 2, revalidateFirstPage: false, revalidateIfStale: false, revalidateOnFocus: false, revalidateOnReconnect: false, }); return { data, error, isLoading, isValidating, mutate, size, setSize, }; };