From 03d732846eb2c456b64db0bcd36a0be9f19ebe6e Mon Sep 17 00:00:00 2001 From: Muhammad Faraz Maqsood Date: Tue, 22 Apr 2025 22:18:28 +0500 Subject: [PATCH] fix: TypeError r is not function for custom pages - fix TypeError r is not a function for custom pages by replacing injectIntl with useIntl() hook. - fix import for textbooks app --- src/CourseAuthoringRoutes.jsx | 2 +- src/custom-pages/CustomPageCard.jsx | 9 +++------ src/custom-pages/CustomPages.jsx | 9 +++------ 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/src/CourseAuthoringRoutes.jsx b/src/CourseAuthoringRoutes.jsx index b60c4be58..39808ab8a 100644 --- a/src/CourseAuthoringRoutes.jsx +++ b/src/CourseAuthoringRoutes.jsx @@ -4,7 +4,7 @@ import { } from 'react-router-dom'; import { getConfig } from '@edx/frontend-platform'; import { PageWrap } from '@edx/frontend-platform/react'; -import { Textbooks } from 'CourseAuthoring/textbooks'; +import { Textbooks } from './textbooks'; import CourseAuthoringPage from './CourseAuthoringPage'; import { PagesAndResources } from './pages-and-resources'; import EditorContainer from './editors/EditorContainer'; diff --git a/src/custom-pages/CustomPageCard.jsx b/src/custom-pages/CustomPageCard.jsx index 1d5319efb..1ea18f015 100644 --- a/src/custom-pages/CustomPageCard.jsx +++ b/src/custom-pages/CustomPageCard.jsx @@ -1,6 +1,6 @@ import React, { useContext } from 'react'; import PropTypes from 'prop-types'; -import { intlShape, injectIntl } from '@edx/frontend-platform/i18n'; +import { useIntl } from '@edx/frontend-platform/i18n'; import { ActionRow, IconButtonWithTooltip, @@ -27,9 +27,8 @@ const CustomPageCard = ({ dispatch, deletePageStatus, setCurrentPage, - // injected - intl, }) => { + const intl = useIntl(); const [isDeleteConfirmationOpen, openDeleteConfirmation, closeDeleteConfirmation] = useToggle(false); const { path: customPagesPath } = useContext(CustomPagesContext); const navigate = useNavigate(); @@ -129,8 +128,6 @@ CustomPageCard.propTypes = { dispatch: PropTypes.func.isRequired, deletePageStatus: PropTypes.string.isRequired, setCurrentPage: PropTypes.func.isRequired, - // injected - intl: intlShape.isRequired, }; -export default injectIntl(CustomPageCard); +export default CustomPageCard; diff --git a/src/custom-pages/CustomPages.jsx b/src/custom-pages/CustomPages.jsx index d2c5e7e31..d6abcc1d2 100644 --- a/src/custom-pages/CustomPages.jsx +++ b/src/custom-pages/CustomPages.jsx @@ -5,7 +5,7 @@ import { } from 'react-router-dom'; import { useDispatch, useSelector } from 'react-redux'; import { AppContext, PageWrap } from '@edx/frontend-platform/react'; -import { injectIntl, FormattedMessage, intlShape } from '@edx/frontend-platform/i18n'; +import { useIntl, FormattedMessage } from '@edx/frontend-platform/i18n'; import { ActionRow, Breadcrumb, @@ -45,9 +45,8 @@ import { getPagePath } from '../utils'; const CustomPages = ({ courseId, - // injected - intl, }) => { + const intl = useIntl(); const navigate = useNavigate(); const dispatch = useDispatch(); const [orderedPages, setOrderedPages] = useState([]); @@ -278,8 +277,6 @@ const CustomPages = ({ CustomPages.propTypes = { courseId: PropTypes.string.isRequired, - // injected - intl: intlShape.isRequired, }; -export default injectIntl(CustomPages); +export default CustomPages;