import React from 'react';
import { AppConfigProvider } from '@theorchard/suite-frontend';
import { BrowserRouter } from 'react-router-dom';
import Footer from 'src/components/footer';
import IdentityProvider from 'src/components/identity-provider';
import type { FeatureFlagDictionary } from '@orchard/frontend-identity';
import type { SuiteAppConfig } from '@theorchard/suite-frontend';
import type { WorkstationUser } from 'src/types';

interface Props {
    config: SuiteAppConfig;
    featureFlags?: FeatureFlagDictionary;
    user?: WorkstationUser;
}

const AppFooterComponent: React.FC<Props> = ({
    config,
    featureFlags,
    user,
}) => (
    <AppConfigProvider config={config}>
        <IdentityProvider featureFlags={featureFlags} user={user}>
            <BrowserRouter forceRefresh>
                <Footer />
            </BrowserRouter>
        </IdentityProvider>
    </AppConfigProvider>
);

export default AppFooterComponent;
