import React from 'react';
import * as NiceModal from '@ebay/nice-modal-react';
import {ThemeProvider, ToasterComponent, ToasterProvider} from '@gravity-ui/uikit';
import type {Store} from '@reduxjs/toolkit';
import type {History} from 'history';
import {HelmetProvider} from 'react-helmet-async';
import {Provider} from 'react-redux';
import {Router} from 'react-router-dom';
import {QueryParamProvider} from 'use-query-params';
import {ReactRouter5Adapter} from 'use-query-params/adapters/react-router-5';
import {ComponentsProvider} from '../../components/ComponentsProvider/ComponentsProvider';
import {componentsRegistry as defaultComponentsRegistry} from '../../components/ComponentsProvider/componentsRegistry';
import type {ComponentsRegistry} from '../../components/ComponentsProvider/componentsRegistry';
import {SETTING_KEYS} from '../../store/reducers/settings/constants';
import {toaster} from '../../utils/createToast';
import {useSetting} from '../../utils/hooks';
import {AppTitleProvider} from './AppTitleContext';
interface ProvidersProps {
store: Store;
history: History;
componentsRegistry?: ComponentsRegistry;
children: React.ReactNode;
appTitle: string;
}
export function Providers({
store,
history,
componentsRegistry = defaultComponentsRegistry,
children,
appTitle,
}: ProvidersProps) {
return (
{children}
);
}
function Theme({children}: {children: React.ReactNode}) {
const [theme] = useSetting(SETTING_KEYS.THEME);
return {children};
}