import React, { useState, useEffect } from 'react';
import { Helmet } from 'react-helmet';
import PropTypes from 'prop-types';
import { config } from 'utils';
import Loader from 'components/Loader/index.jsx';
import PrimaryLayout from './PrimaryLayout.jsx';

const BasicLayout = ({ route: { routes } }) => {
  const [fullScreen, setFullScreen] = useState(true);
  const [spinning, setSpinning] = useState(true);
  useEffect(() => {
    const vice = setTimeout(() => {
      setFullScreen(false);
      setSpinning(false);
    });
    return () => clearTimeout(vice);
  }, []);
  return (
    <>
      <Helmet>
        <title>{config.siteName}</title>
      </Helmet>
      {/* 加载全局loding获取用户权限时有用 */}
      <Loader fullScreen={fullScreen} spinning={spinning} />
      <PrimaryLayout>{routes}</PrimaryLayout>
    </>
  );
};

BasicLayout.propTypes = {
  loading: PropTypes.object,
};

export default BasicLayout;
