2021-03-20 03:20:48 +01:00
|
|
|
import React, { useEffect } from 'react';
|
|
|
|
import { useDispatch, useSelector } from 'react-redux';
|
|
|
|
import { Map } from 'immutable';
|
|
|
|
|
|
|
|
import { getAllDatabaseConfig, getAllFileConfig } from '../../state/actions/Config';
|
2021-03-20 14:42:15 +01:00
|
|
|
import ConfigList from '../../components/ConfigList';
|
2021-03-20 15:07:10 +01:00
|
|
|
import ActionButtons from '../../components/ActionButtons';
|
2021-03-20 00:54:18 +01:00
|
|
|
|
|
|
|
const ConfigPage = () => {
|
2021-03-20 03:20:48 +01:00
|
|
|
const dispatch = useDispatch();
|
|
|
|
const fileConfig = useSelector((state) => state.getIn(['config', 'fileConfig']), Map());
|
|
|
|
const databaseConfig = useSelector((state) => state.getIn(['config', 'databaseConfig']), Map());
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
dispatch(getAllDatabaseConfig());
|
|
|
|
dispatch(getAllFileConfig());
|
|
|
|
}, []);
|
|
|
|
|
2021-03-20 14:42:15 +01:00
|
|
|
if (fileConfig.size === 0 || databaseConfig.size === 0) {
|
2021-03-20 03:20:48 +01:00
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
return (
|
2021-03-20 14:42:15 +01:00
|
|
|
<div>
|
2021-03-20 15:07:10 +01:00
|
|
|
<ActionButtons />
|
2021-03-20 14:42:15 +01:00
|
|
|
<ConfigList fileConfig={fileConfig} databaseConfig={databaseConfig} />
|
|
|
|
</div>
|
2021-03-20 03:20:48 +01:00
|
|
|
);
|
2021-03-20 00:54:18 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
export default ConfigPage;
|