index.tsx 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import { Route, Switch } from 'react-router-dom'
  2. import { DataShareServiceViz as Viz } from 'containers/Viz/Loadable'
  3. import { DataShareServiceWidget as Widget, Workbench } from 'containers/Widget/Loadable'
  4. import { Sidebar } from './Loadable'
  5. import AuthorizedRoute from 'containers/Main/AuthorizedRoute'
  6. import { View, ViewEditor } from 'containers/View/Loadable'
  7. import { Source } from 'containers/Source/Loadable'
  8. import { Schedule, ScheduleEditor } from 'containers/Schedule/Loadable'
  9. import { Project } from 'containers/Projects/Loadable'
  10. import React from 'react'
  11. import { Dashboard } from '../Dashboard/Loadable'
  12. export default function DataShareService() {
  13. return (
  14. <Project>
  15. <Switch>
  16. <Route
  17. path='/project/:projectId/dataShareService/portal/:portalId'
  18. component={Dashboard}
  19. />
  20. <Route
  21. path='/project/:projectId/dataShareService/display/:displayId'
  22. component={Viz}
  23. />
  24. <Route
  25. exact
  26. path='/project/:projectId/dataShareService/widget/:widgetId?'
  27. component={Workbench}
  28. />
  29. <Route
  30. exact
  31. path='/project/:projectId/dataShareService/view/:viewId?'
  32. component={ViewEditor}
  33. />
  34. <Route
  35. exact
  36. path='/project/:projectId/dataShareService/schedule/:scheduleId?'
  37. component={ScheduleEditor}
  38. />
  39. <Sidebar>
  40. <Switch>
  41. <AuthorizedRoute
  42. permission='vizPermission'
  43. path='/project/:projectId/dataShareService/vizs'
  44. component={Viz}
  45. />
  46. <AuthorizedRoute
  47. permission='widgetPermission'
  48. path='/project/:projectId/dataShareService/widgets'
  49. component={Widget}
  50. />
  51. <AuthorizedRoute
  52. exact
  53. permission='viewPermission'
  54. path='/project/:projectId/dataShareService/views'
  55. component={View}
  56. />
  57. <AuthorizedRoute
  58. permission='sourcePermission'
  59. path='/project/:projectId/dataShareService/sources'
  60. component={Source}
  61. />
  62. <AuthorizedRoute
  63. permission='schedulePermission'
  64. path='/project/:projectId/dataShareService/schedules'
  65. component={Schedule}
  66. />
  67. </Switch>
  68. </Sidebar>
  69. </Switch>
  70. </Project>
  71. )
  72. }