@openedx/frontend-app-instructor-dashboard 1.0.0-alpha.42 → 1.0.0-alpha.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/routes.d.ts CHANGED
@@ -1,6 +1,8 @@
1
+ import { authenticatedLoader } from '@openedx/frontend-base';
1
2
  declare const routes: {
2
3
  id: string;
3
4
  path: string;
5
+ loader: typeof authenticatedLoader;
4
6
  handle: {
5
7
  roles: string[];
6
8
  };
package/dist/routes.js CHANGED
@@ -22,6 +22,7 @@ import SpecialExamsPage from './specialExams/SpecialExamsPage';
22
22
  import PageNotFound from './components/PageNotFound';
23
23
  import { useWidgetProps } from './slots/SlotUtils';
24
24
  import { instructorDashboardRole } from './constants';
25
+ import { authenticatedLoader } from '@openedx/frontend-base';
25
26
  const defaultTabs = [
26
27
  { tabId: 'course_info', content: _jsx(CourseInfoPage, {}) },
27
28
  { tabId: 'enrollments', content: _jsx(EnrollmentsPage, {}) },
@@ -48,6 +49,7 @@ const routes = [
48
49
  {
49
50
  id: 'org.openedx.frontend.route.instructorDashboard.main',
50
51
  path: 'instructor-dashboard/:courseId',
52
+ loader: authenticatedLoader,
51
53
  handle: {
52
54
  roles: [instructorDashboardRole]
53
55
  },
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useParams, Navigate } from 'react-router-dom';\nimport CohortsPage from '@src/cohorts/CohortsPage';\nimport CourseInfoPage from '@src/courseInfo/CourseInfoPage';\nimport CertificatesPage from '@src/certificates/CertificatesPage';\nimport CourseTeamPage from '@src/courseTeam/CourseTeamPage';\nimport DataDownloadsPage from '@src/dataDownloads/DataDownloadsPage';\nimport DateExtensionsPage from '@src/dateExtensions/DateExtensionsPage';\nimport EnrollmentsPage from '@src/enrollments/EnrollmentsPage';\nimport GradingPage from '@src/grading/GradingPage';\nimport OpenResponsesPage from '@src/openResponses/OpenResponsesPage';\nimport SpecialExamsPage from '@src/specialExams/SpecialExamsPage';\nimport PageNotFound from '@src/components/PageNotFound';\nimport { useWidgetProps } from './slots/SlotUtils';\nimport { instructorDashboardRole } from './constants';\n\ninterface InstructorRouteProps {\n tabId: string,\n content: React.ReactNode,\n}\n\nconst defaultTabs: InstructorRouteProps[] = [\n { tabId: 'course_info', content: <CourseInfoPage /> },\n { tabId: 'enrollments', content: <EnrollmentsPage /> },\n { tabId: 'course_team', content: <CourseTeamPage /> },\n { tabId: 'cohorts', content: <CohortsPage /> },\n { tabId: 'date_extensions', content: <DateExtensionsPage /> },\n { tabId: 'grading', content: <GradingPage /> },\n { tabId: 'data_downloads', content: <DataDownloadsPage /> },\n { tabId: 'special_exams', content: <SpecialExamsPage /> },\n { tabId: 'certificates', content: <CertificatesPage /> },\n { tabId: 'open_responses', content: <OpenResponsesPage /> },\n];\n\nconst TabContent = () => {\n const { tabId } = useParams<{ tabId: string }>();\n const routeWidgets = useWidgetProps('org.openedx.frontend.slot.instructorDashboard.routes.v1') as InstructorRouteProps[];\n\n const tabRoutes = [\n ...defaultTabs.filter(\n defaultTab => !routeWidgets.some(slotTab => slotTab.tabId === defaultTab.tabId)\n ),\n ...routeWidgets\n ];\n\n const foundTab = tabRoutes.find(tab => tab.tabId === tabId);\n\n return foundTab ? foundTab.content : <PageNotFound />;\n};\n\nconst routes = [\n {\n id: 'org.openedx.frontend.route.instructorDashboard.main',\n path: 'instructor-dashboard/:courseId',\n handle: {\n roles: [instructorDashboardRole]\n },\n async lazy() {\n const module = await import(/* webpackChunkName: \"instructor-dashboard-main\" */ './Main');\n return { Component: module.default };\n },\n children: [\n {\n index: true,\n element: <Navigate to=\"course_info\" replace />\n },\n {\n path: ':tabId',\n element: <TabContent />\n },\n ]\n }\n];\n\nexport default routes;\n"]}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useParams, Navigate } from 'react-router-dom';\nimport CohortsPage from '@src/cohorts/CohortsPage';\nimport CourseInfoPage from '@src/courseInfo/CourseInfoPage';\nimport CertificatesPage from '@src/certificates/CertificatesPage';\nimport CourseTeamPage from '@src/courseTeam/CourseTeamPage';\nimport DataDownloadsPage from '@src/dataDownloads/DataDownloadsPage';\nimport DateExtensionsPage from '@src/dateExtensions/DateExtensionsPage';\nimport EnrollmentsPage from '@src/enrollments/EnrollmentsPage';\nimport GradingPage from '@src/grading/GradingPage';\nimport OpenResponsesPage from '@src/openResponses/OpenResponsesPage';\nimport SpecialExamsPage from '@src/specialExams/SpecialExamsPage';\nimport PageNotFound from '@src/components/PageNotFound';\nimport { useWidgetProps } from './slots/SlotUtils';\nimport { instructorDashboardRole } from './constants';\nimport { authenticatedLoader } from '@openedx/frontend-base';\n\ninterface InstructorRouteProps {\n tabId: string,\n content: React.ReactNode,\n}\n\nconst defaultTabs: InstructorRouteProps[] = [\n { tabId: 'course_info', content: <CourseInfoPage /> },\n { tabId: 'enrollments', content: <EnrollmentsPage /> },\n { tabId: 'course_team', content: <CourseTeamPage /> },\n { tabId: 'cohorts', content: <CohortsPage /> },\n { tabId: 'date_extensions', content: <DateExtensionsPage /> },\n { tabId: 'grading', content: <GradingPage /> },\n { tabId: 'data_downloads', content: <DataDownloadsPage /> },\n { tabId: 'special_exams', content: <SpecialExamsPage /> },\n { tabId: 'certificates', content: <CertificatesPage /> },\n { tabId: 'open_responses', content: <OpenResponsesPage /> },\n];\n\nconst TabContent = () => {\n const { tabId } = useParams<{ tabId: string }>();\n const routeWidgets = useWidgetProps('org.openedx.frontend.slot.instructorDashboard.routes.v1') as InstructorRouteProps[];\n\n const tabRoutes = [\n ...defaultTabs.filter(\n defaultTab => !routeWidgets.some(slotTab => slotTab.tabId === defaultTab.tabId)\n ),\n ...routeWidgets\n ];\n\n const foundTab = tabRoutes.find(tab => tab.tabId === tabId);\n\n return foundTab ? foundTab.content : <PageNotFound />;\n};\n\nconst routes = [\n {\n id: 'org.openedx.frontend.route.instructorDashboard.main',\n path: 'instructor-dashboard/:courseId',\n loader: authenticatedLoader,\n handle: {\n roles: [instructorDashboardRole]\n },\n async lazy() {\n const module = await import(/* webpackChunkName: \"instructor-dashboard-main\" */ './Main');\n return { Component: module.default };\n },\n children: [\n {\n index: true,\n element: <Navigate to=\"course_info\" replace />\n },\n {\n path: ':tabId',\n element: <TabContent />\n },\n ]\n }\n];\n\nexport default routes;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openedx/frontend-app-instructor-dashboard",
3
- "version": "1.0.0-alpha.42",
3
+ "version": "1.0.0-alpha.43",
4
4
  "description": "The Open edX Instructor Dashboard",
5
5
  "repository": {
6
6
  "type": "git",