This commit is contained in:
2025-10-18 01:46:46 +03:00
commit 9baa68258e
74 changed files with 29125 additions and 0 deletions

View File

@ -0,0 +1,23 @@
import { ReactNode } from 'react';
import { ModalsProvider } from '@mantine/modals';
import MarketplaceFormModal from '@/pages/marketplaces/modals/MarketplaceFormModal/MarketplaceFormModal';
type Props = {
children: ReactNode;
};
const modals = {
marketplaceForm: MarketplaceFormModal,
};
declare module '@mantine/modals' {
export interface MantineModalsOverride {
modals: typeof modals;
}
}
const MantineModalsProvider = ({ children }: Props) => {
return (
<ModalsProvider labels={{ cancel: 'Отменить', confirm: 'Подтвердить' }} modals={modals}>
{children}
</ModalsProvider>
);
};
export default MantineModalsProvider;

View File

@ -0,0 +1,34 @@
"use client";
import { ReactNode, useState } from "react";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
type Props = {
children: ReactNode;
};
export function ReactQueryProvider({ children }: Props) {
const [queryClient] = useState(
() =>
new QueryClient({
defaultOptions: {
queries: {
staleTime: 5 * 60 * 1000, // 5 minutes
gcTime: 10 * 60 * 1000, // 10 minutes
retry: 1,
refetchOnWindowFocus: false,
refetchOnMount: false,
},
mutations: {
retry: 1,
},
},
})
);
return (
<QueryClientProvider client={queryClient}>
{children}
</QueryClientProvider>
);
}