Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 2625 | Rev 2628 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
2611 stevensc 1
import React, { lazy, Suspense } from 'react'
2617 stevensc 2
import { Routes, Route } from 'react-router-dom'
2611 stevensc 3
 
4
import AuthRoute from './auth-routes'
5
import PrivateRoutes from './private-routes'
6
import Spinner from '@app/components/UI/Spinner'
7
 
2626 stevensc 8
/* Layouts */
2620 stevensc 9
const HabitsLayout = lazy(() => import('@app/layouts/habits/habits-layout'))
10
const AuthLayout = lazy(() => import('@app/layouts/auth/auth-layout'))
11
 
2626 stevensc 12
/* Pages */
2620 stevensc 13
const AuthPages = lazy(() => import('@app/pages/auth/auth-pages'))
2611 stevensc 14
const AbuseReportPage = lazy(() =>
15
  import('@app/pages/abuse-report/abuse-repor-page')
16
)
17
const AbuseReportViewPage = lazy(() =>
18
  import('@app/pages/abuse-report/abuse-report-view-page')
19
)
20
const ShorterPostPage = lazy(() =>
21
  import('@app/pages/shorter/shorter-post-page')
22
)
23
const InmailPage = lazy(() => import('@app/pages/inmail/InmailPage'))
24
const TermsAndConditionsPage = lazy(() =>
25
  import('pages/terms-and-conditions/TermsAndConditionsPage')
26
)
27
const PrivacyPolicyPage = lazy(() =>
28
  import('pages/privacy-policy/PrivacyPolicy')
29
)
30
const CookiesPage = lazy(() => import('pages/cookies/CookiesPage'))
31
const ProfessionalismPolicy = lazy(() =>
32
  import('pages/professionalism-policy/ProfessionalismPolicy')
33
)
34
 
35
const MicroLearningPage = lazy(() => import('pages/micro-learning/HomePage'))
36
const AccountSettingsPage = lazy(() =>
37
  import('pages/account-settings/AccountSettings')
38
)
39
const DashboardPage = lazy(() => import('pages/dashboard/DashboardPage'))
40
const MyConnectionsPage = lazy(() =>
41
  import('pages/connections/MyConnectionsPage')
42
)
43
const InvitationsReceivedPage = lazy(() =>
44
  import('pages/connections/InvitationsReceivedPage')
45
)
46
const InvitationsSendPage = lazy(() =>
47
  import('pages/connections/InvitationsSendPage')
48
)
49
const PeopleYouMayKnowPage = lazy(() =>
50
  import('pages/connections/PeopleYouMayKnowPage')
51
)
52
const PeopleBlockedPage = lazy(() =>
53
  import('pages/connections/PeopleBlockedPage')
54
)
55
const MyProfilesPage = lazy(() => import('pages/profiles/MyProfilesPage'))
56
const PeopleViewedMyProfilePage = lazy(() =>
57
  import('pages/profiles/PeopleViewedMyProfilePage')
58
)
59
const SavedJobsPage = lazy(() => import('pages/jobs/SavedJobsPage'))
60
const AppliedJobsPage = lazy(() => import('pages/jobs/AppliedJobsPage'))
61
const GroupsRequestsSendPage = lazy(() =>
62
  import('pages/groups/GroupsRequestsSendPage')
63
)
64
const GroupsRequestsReceivedPage = lazy(() =>
65
  import('pages/groups/GroupsRequestsReceivedPage')
66
)
67
const JoinedGroupsPage = lazy(() => import('pages/groups/JoinedGroupsPage'))
68
const MyGroupsPage = lazy(() => import('pages/groups/MyGroupsPage'))
69
const MyCompanies = lazy(() => import('pages/company/MyCompaniesPage'))
70
const FollowingCompaniesPage = lazy(() =>
71
  import('pages/company/FollowingCompaniesPage')
72
)
73
const CompaniesWhenIWorkPage = lazy(() =>
74
  import('pages/company/CompaniesWhenIWorkPage')
75
)
76
const CompanyRequestSendPage = lazy(() =>
77
  import('pages/company/CompanyRequestSendPage')
78
)
79
const CompanyInvitationsReceivedPage = lazy(() =>
80
  import('pages/company/CompanyInvitationsReceivedPage')
81
)
82
const ProfileViewPage = lazy(() => import('pages/profiles/ProfileViewPage'))
83
const ProfileEditPage = lazy(() => import('pages/profiles/ProfileEditPage'))
84
const CompanyViewPage = lazy(() => import('pages/company/CompanyViewPage'))
85
const GroupViewPage = lazy(() => import('pages/groups/GroupViewPage'))
86
const GroupEditPage = lazy(() => import('pages/groups/GroupEditPage'))
87
 
88
const MarketPlacePage = lazy(() => import('pages/marketplace/MarketplacePage'))
89
const NotificationsPage = lazy(() =>
90
  import('pages/notifications/NotificationsPage')
91
)
92
const SearchPage = lazy(() => import('pages/search/SearchPage'))
93
const KnowledgeAreaPage = lazy(() =>
94
  import('pages/knowledge-area/KnowledgeAreaPage')
95
)
96
const KnowledgeViewPage = lazy(() =>
97
  import('pages/knowledge-area/KnowledgeViewPage')
98
)
99
const PostViewPage = lazy(() => import('pages/posts/PostViewPage'))
100
const MyCoachPage = lazy(() => import('pages/my-coach/MyCoachPage'))
101
const MyCoachViewPage = lazy(() => import('pages/my-coach/MyCoachViewPage'))
102
const JobViewPage = lazy(() => import('pages/jobs/JobView'))
103
const CalendarPage = lazy(() => import('pages/calendar/CalendarPage'))
104
const ImpersonatePage = lazy(() => import('pages/impersonate/InpersonatePage'))
2620 stevensc 105
const HabitsPages = lazy(() => import('@app/pages/habits/HabitsPages'))
2611 stevensc 106
 
107
export default function AppRoutes() {
108
  return (
2617 stevensc 109
    <Suspense fallback={<Spinner />}>
110
      <Routes>
111
        {/* Public routes */}
112
        <Route path='/shorter/:id' element={<ShorterPostPage />} />
113
        <Route
114
          path='/terms-and-conditions'
115
          element={<TermsAndConditionsPage />}
116
        />
117
        <Route path='/privacy-policy' element={<PrivacyPolicyPage />} />
118
        <Route
119
          path='/professionalism-policy'
120
          element={<ProfessionalismPolicy />}
121
        />
122
        <Route path='/cookies' element={<CookiesPage />} />
123
 
124
        {/* Authentication routes */}
125
        <Route path='/' element={<AuthRoute />}>
2620 stevensc 126
          <Route index element={<AuthLayout />}>
2626 stevensc 127
            <AuthPages />
2620 stevensc 128
          </Route>
2617 stevensc 129
        </Route>
130
 
131
        {/* Private routes */}
132
        <Route element={<PrivateRoutes />}>
2625 stevensc 133
          <Route path='/habits/*' element={<HabitsLayout />}></Route>
2611 stevensc 134
          <Route
2617 stevensc 135
            path='/abuse-report/view/:id'
136
            element={<AbuseReportViewPage />}
2611 stevensc 137
          />
2617 stevensc 138
          <Route path='/abuse-report' element={<AbuseReportPage />} />
139
          <Route path='/microlearning' element={<MicroLearningPage />} />
140
          <Route path='/account-settings' element={<AccountSettingsPage />} />
141
          <Route path='/dashboard/feed/:id' element={<DashboardPage />} />
142
          <Route path='/dashboard' element={<DashboardPage />} />
143
          <Route path='/connection'>
144
            <Route path='my-connections' element={<MyConnectionsPage />} />
145
            <Route path='invitations-sent' element={<InvitationsSendPage />} />
2611 stevensc 146
            <Route
2617 stevensc 147
              path='invitations-received'
148
              element={<InvitationsReceivedPage />}
2611 stevensc 149
            />
150
            <Route
2617 stevensc 151
              path='people-you-may-know'
152
              element={<PeopleYouMayKnowPage />}
2611 stevensc 153
            />
2617 stevensc 154
            <Route path='people-blocked' element={<PeopleBlockedPage />} />
2611 stevensc 155
          </Route>
2617 stevensc 156
          <Route path='/profile/my-profiles' element={<MyProfilesPage />} />
157
          <Route
158
            path='/profile/people-viewed-profile'
159
            element={<PeopleViewedMyProfilePage />}
160
          />
161
          <Route path='/profile/view/:uuid' element={<ProfileViewPage />} />
162
          <Route
163
            path='/profile/my-profiles/edit/:uuid'
164
            element={<ProfileEditPage />}
165
          />
166
          <Route path='/job/saved-jobs' element={<SavedJobsPage />} />
167
          <Route path='/job/applied-jobs' element={<AppliedJobsPage />} />\
168
          <Route
169
            path='/group/requests-sent'
170
            element={<GroupsRequestsSendPage />}
171
          />
172
          <Route
173
            path='/group/invitations-received'
174
            element={<GroupsRequestsReceivedPage />}
175
          />
176
          <Route path='/group/joined-groups' element={<JoinedGroupsPage />} />
177
          <Route path='/group/my-groups' element={<MyGroupsPage />} />
178
          <Route path='/group/view/:uuid' element={<GroupViewPage />} />
179
          <Route
180
            path='/group/my-groups/edit/:uuid'
181
            element={<GroupEditPage />}
182
          />
183
          <Route path='/company/my-companies' element={<MyCompanies />} />
184
          <Route
185
            path='/company/following-companies'
186
            element={<FollowingCompaniesPage />}
187
          />
188
          <Route
189
            path='/company/i-work-with'
190
            element={<CompaniesWhenIWorkPage />}
191
          />
192
          <Route
193
            path='/company/requests-sent'
194
            element={<CompanyRequestSendPage />}
195
          />
196
          <Route
197
            path='/company/requests-sent'
198
            element={<CompanyRequestSendPage />}
199
          />
200
          <Route
201
            path='/company/invitations-received'
202
            element={<CompanyInvitationsReceivedPage />}
203
          />
204
          <Route path='/company/view/:uuid' element={<CompanyViewPage />} />
205
          <Route path='/marketplace' element={<MarketPlacePage />} />
206
          <Route path='/notifications' element={<NotificationsPage />} />
207
          <Route path='/search/entity/:category' element={<SearchPage />} />
208
          <Route
209
            path='/knowledge-area/view/:uuid'
210
            element={<KnowledgeViewPage />}
211
          />
212
          <Route path='/knowledge-area' element={<KnowledgeAreaPage />} />
213
          <Route path='/job/view/:uuid' element={<JobViewPage />} />
214
          <Route path='/post/:uuid' element={<PostViewPage />} />
215
          <Route path='/calendar' element={<CalendarPage />} />
216
          <Route
217
            path='/my-coach/questions/view/:uuid'
218
            element={<MyCoachViewPage />}
219
          />
220
          <Route exact path='/my-coach' element={<MyCoachPage />} />
221
          <Route path='/signin/impersonate' element={<ImpersonatePage />} />
222
          <Route exact path='/inmail' element={<InmailPage />} />
223
        </Route>
224
      </Routes>
225
    </Suspense>
2611 stevensc 226
  )
227
}