From c0b07f06af38dd0ea4ebbe958978ea4955635cb5 Mon Sep 17 00:00:00 2001 From: Neo Date: Tue, 31 Mar 2026 13:38:29 +0700 Subject: [PATCH] Andal LND - Remove footer slots from course authoring pages, custom branding --- package-lock.json | 392 ++++++++---------- src/CourseAuthoringPage.tsx | 2 - src/accessibility-page/AccessibilityPage.tsx | 2 - src/course-rerun/index.jsx | 2 - .../LibraryAuthoringPage.tsx | 2 - .../collections/LibraryCollectionPage.tsx | 2 - .../CreateLegacyLibrary.tsx | 2 - .../create-library/CreateLibrary.tsx | 2 - src/studio-home/StudioHome.tsx | 2 - src/taxonomy/TaxonomyLayout.tsx | 2 - 10 files changed, 174 insertions(+), 236 deletions(-) diff --git a/package-lock.json b/package-lock.json index c084c3c91..dfb4c463a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5157,48 +5157,200 @@ } }, "node_modules/@openedx-plugins/course-app-calculator": { - "resolved": "plugins/course-apps/calculator", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/calculator", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "prop-types": "*", + "react": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-dates": { - "resolved": "plugins/course-apps/dates", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/dates", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "prop-types": "*", + "react": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-edxnotes": { - "resolved": "plugins/course-apps/edxnotes", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/edxnotes", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "prop-types": "*", + "react": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-learning_assistant": { - "resolved": "plugins/course-apps/learning_assistant", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/learning_assistant", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "prop-types": "*", + "react": "*", + "yup": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-live": { - "resolved": "plugins/course-apps/live", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/live", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "@reduxjs/toolkit": "*", + "lodash": "*", + "prop-types": "*", + "react": "*", + "react-redux": "*", + "react-router-dom": "*", + "yup": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-ora_settings": { - "resolved": "plugins/course-apps/ora_settings", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/ora_settings", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "prop-types": "*", + "react": "*", + "react-redux": "*", + "yup": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-proctoring": { - "resolved": "plugins/course-apps/proctoring", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/proctoring", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "classnames": "*", + "email-validator": "*", + "moment": "*", + "prop-types": "*", + "react": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-progress": { - "resolved": "plugins/course-apps/progress", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/progress", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "prop-types": "*", + "react": "*", + "yup": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-teams": { - "resolved": "plugins/course-apps/teams", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/teams", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "formik": "*", + "prop-types": "*", + "react": "*", + "uuid": "*", + "yup": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-wiki": { - "resolved": "plugins/course-apps/wiki", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/wiki", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "prop-types": "*", + "react": "*", + "yup": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx-plugins/course-app-xpert_unit_summary": { - "resolved": "plugins/course-apps/xpert_unit_summary", - "link": true + "version": "0.1.0", + "resolved": "file:plugins/course-apps/xpert_unit_summary", + "peerDependencies": { + "@edx/frontend-app-authoring": "*", + "@edx/frontend-platform": "*", + "@openedx/paragon": "*", + "formik": "*", + "prop-types": "*", + "react": "*", + "react-redux": "*", + "react-router-dom": "*", + "yup": "*" + }, + "peerDependenciesMeta": { + "@edx/frontend-app-authoring": { + "optional": true + } + } }, "node_modules/@openedx/frontend-build": { "version": "14.6.2", @@ -24704,202 +24856,6 @@ "engines": { "node": ">=10" } - }, - "plugins/course-apps/calculator": { - "name": "@openedx-plugins/course-app-calculator", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "prop-types": "*", - "react": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/dates": { - "name": "@openedx-plugins/course-app-dates", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "prop-types": "*", - "react": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/edxnotes": { - "name": "@openedx-plugins/course-app-edxnotes", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "prop-types": "*", - "react": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/learning_assistant": { - "name": "@openedx-plugins/course-app-learning_assistant", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "prop-types": "*", - "react": "*", - "yup": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/live": { - "name": "@openedx-plugins/course-app-live", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "@reduxjs/toolkit": "*", - "lodash": "*", - "prop-types": "*", - "react": "*", - "react-redux": "*", - "react-router-dom": "*", - "yup": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/ora_settings": { - "name": "@openedx-plugins/course-app-ora_settings", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "prop-types": "*", - "react": "*", - "react-redux": "*", - "yup": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/proctoring": { - "name": "@openedx-plugins/course-app-proctoring", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "classnames": "*", - "email-validator": "*", - "moment": "*", - "prop-types": "*", - "react": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/progress": { - "name": "@openedx-plugins/course-app-progress", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "prop-types": "*", - "react": "*", - "yup": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/teams": { - "name": "@openedx-plugins/course-app-teams", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "formik": "*", - "prop-types": "*", - "react": "*", - "uuid": "*", - "yup": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/wiki": { - "name": "@openedx-plugins/course-app-wiki", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "prop-types": "*", - "react": "*", - "yup": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } - }, - "plugins/course-apps/xpert_unit_summary": { - "name": "@openedx-plugins/course-app-xpert_unit_summary", - "version": "0.1.0", - "peerDependencies": { - "@edx/frontend-app-authoring": "*", - "@edx/frontend-platform": "*", - "@openedx/paragon": "*", - "formik": "*", - "prop-types": "*", - "react": "*", - "react-redux": "*", - "react-router-dom": "*", - "yup": "*" - }, - "peerDependenciesMeta": { - "@edx/frontend-app-authoring": { - "optional": true - } - } } } } diff --git a/src/CourseAuthoringPage.tsx b/src/CourseAuthoringPage.tsx index e8b328d48..39b127468 100644 --- a/src/CourseAuthoringPage.tsx +++ b/src/CourseAuthoringPage.tsx @@ -4,7 +4,6 @@ import { useDispatch, useSelector } from 'react-redux'; import { useLocation, } from 'react-router-dom'; -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import Header from './header'; import NotFoundAlert from './generic/NotFoundAlert'; import PermissionDeniedAlert from './generic/PermissionDeniedAlert'; @@ -64,7 +63,6 @@ const CourseAuthoringPage = ({ children }: Props) => { ) )} {children} - {!inProgress && !isEditor && } ); }; diff --git a/src/accessibility-page/AccessibilityPage.tsx b/src/accessibility-page/AccessibilityPage.tsx index 48c4dd855..650aaa943 100644 --- a/src/accessibility-page/AccessibilityPage.tsx +++ b/src/accessibility-page/AccessibilityPage.tsx @@ -2,7 +2,6 @@ import { useIntl } from '@edx/frontend-platform/i18n'; import { getExternalLinkUrl } from '@edx/frontend-platform'; import { Helmet } from 'react-helmet'; import { Container } from '@openedx/paragon'; -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import Header from '../header'; import messages from './messages'; @@ -32,7 +31,6 @@ const AccessibilityPage = () => { /> - ); }; diff --git a/src/course-rerun/index.jsx b/src/course-rerun/index.jsx index 88a3f3b06..a6782e3fa 100644 --- a/src/course-rerun/index.jsx +++ b/src/course-rerun/index.jsx @@ -7,7 +7,6 @@ import { ActionRow, Button, } from '@openedx/paragon'; -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import { useNavigate, useParams } from 'react-router-dom'; @@ -89,7 +88,6 @@ const CourseRerun = () => { isQueryPending={savingStatus === RequestStatus.PENDING} /> - ); }; diff --git a/src/library-authoring/LibraryAuthoringPage.tsx b/src/library-authoring/LibraryAuthoringPage.tsx index ffbbdbc29..d820aba89 100644 --- a/src/library-authoring/LibraryAuthoringPage.tsx +++ b/src/library-authoring/LibraryAuthoringPage.tsx @@ -7,7 +7,6 @@ import { } from 'react'; import { Helmet } from 'react-helmet'; import classNames from 'classnames'; -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import { useIntl } from '@edx/frontend-platform/i18n'; import { Alert, @@ -400,7 +399,6 @@ const LibraryAuthoringPage = ({ - {!componentPickerMode && } {!!sidebarItemInfo?.type && (
diff --git a/src/library-authoring/collections/LibraryCollectionPage.tsx b/src/library-authoring/collections/LibraryCollectionPage.tsx index 017d32e2b..334403e32 100644 --- a/src/library-authoring/collections/LibraryCollectionPage.tsx +++ b/src/library-authoring/collections/LibraryCollectionPage.tsx @@ -1,4 +1,3 @@ -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import { useIntl } from '@edx/frontend-platform/i18n'; import { ActionRow, @@ -228,7 +227,6 @@ const LibraryCollectionPage = () => { - {!componentPickerMode && }
{!!sidebarItemInfo?.type && (
diff --git a/src/library-authoring/create-legacy-library/CreateLegacyLibrary.tsx b/src/library-authoring/create-legacy-library/CreateLegacyLibrary.tsx index 4a60d7e35..b7069be2c 100644 --- a/src/library-authoring/create-legacy-library/CreateLegacyLibrary.tsx +++ b/src/library-authoring/create-legacy-library/CreateLegacyLibrary.tsx @@ -1,4 +1,3 @@ -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import { getConfig } from '@edx/frontend-platform'; import { useIntl } from '@edx/frontend-platform/i18n'; import { @@ -200,7 +199,6 @@ export const CreateLegacyLibrary = ({ {isError && ()} - {!showInModal && ()} ); }; diff --git a/src/library-authoring/create-library/CreateLibrary.tsx b/src/library-authoring/create-library/CreateLibrary.tsx index c9d67de91..7927623f6 100644 --- a/src/library-authoring/create-library/CreateLibrary.tsx +++ b/src/library-authoring/create-library/CreateLibrary.tsx @@ -1,4 +1,3 @@ -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import { useIntl } from '@edx/frontend-platform/i18n'; import { ActionRow, @@ -394,7 +393,6 @@ export const CreateLibrary = ({ {isError && ()} - {!showInModal && ()} ); }; diff --git a/src/studio-home/StudioHome.tsx b/src/studio-home/StudioHome.tsx index fd82a5ba6..85766a427 100644 --- a/src/studio-home/StudioHome.tsx +++ b/src/studio-home/StudioHome.tsx @@ -9,7 +9,6 @@ import { } from '@openedx/paragon'; import { Add as AddIcon, Error } from '@openedx/paragon/icons'; import { useIntl } from '@edx/frontend-platform/i18n'; -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import { useLocation, useNavigate } from 'react-router-dom'; import Loading from '../generic/Loading'; @@ -183,7 +182,6 @@ const StudioHome = () => { isQueryPending={anyQueryIsPending} />
- ); }; diff --git a/src/taxonomy/TaxonomyLayout.tsx b/src/taxonomy/TaxonomyLayout.tsx index f22822328..edb2a025b 100644 --- a/src/taxonomy/TaxonomyLayout.tsx +++ b/src/taxonomy/TaxonomyLayout.tsx @@ -1,5 +1,4 @@ import { useMemo, useState } from 'react'; -import { StudioFooterSlot } from '@edx/frontend-component-footer'; import { Outlet, ScrollRestoration } from 'react-router-dom'; import { Toast } from '@openedx/paragon'; @@ -28,7 +27,6 @@ export const TaxonomyLayout = () => { /> )} - {toastMessage && (