diff options
author | eug-vs <eug-vs@keemail.me> | 2021-03-26 01:06:44 +0300 |
---|---|---|
committer | eug-vs <eug-vs@keemail.me> | 2021-03-26 01:06:44 +0300 |
commit | 865b41114060765308d560181f4996c0aa7a3e74 (patch) | |
tree | 578d3089e05131445b0a8b6d5e69a3a76aaf7e73 /src/lib/Service.tsx | |
parent | 91e1a3b4ccaa822097e4adfea5f51056b010fdd6 (diff) | |
download | commercel-ui-865b41114060765308d560181f4996c0aa7a3e74.tar.gz |
refactor: move Service to lib/
Diffstat (limited to 'src/lib/Service.tsx')
-rw-r--r-- | src/lib/Service.tsx | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/lib/Service.tsx b/src/lib/Service.tsx new file mode 100644 index 0000000..b527531 --- /dev/null +++ b/src/lib/Service.tsx @@ -0,0 +1,25 @@ +import React, { useContext } from 'react'; +import { Route, Switch, useRouteMatch } from 'react-router-dom'; +import _ from 'lodash'; +import ServiceList from './ServiceList'; +import ServiceItem from './ServiceItem'; +import ServiceContext from './ServiceContext'; + + +const Service: React.FC = () => { + const { path } = useRouteMatch(); + const service = useContext(ServiceContext); + + return ( + <Switch> + <Route exact path={path} component={ServiceList} /> + <Route path={`${path}/add`} component={ServiceItem} /> + {_.map(service.routes, (component, route) => ( + <Route path={`${path}/${route}`} component={component} key={route} /> + ))} + <Route path={`${path}/:id`} component={ServiceItem} /> + </Switch> + ); +}; + +export default Service; |