From bb28674c1b30f0f726e475e6f3cd1b2e36007a47 Mon Sep 17 00:00:00 2001
From: Bilal Qamar <59555732+BilalQamar95@users.noreply.github.com>
Date: Fri, 5 Aug 2022 16:34:19 +0500
Subject: [PATCH] refactor: resolved eslint issues
---
.../bulk-email-context/BulkEmailProvider.jsx | 1 +
.../bulk-email-recipient/index.js | 1 +
.../bulk-email-tool/bulk-email-form/index.js | 1 +
.../test/BulkEmailForm.test.jsx | 1 +
.../BulkEmailHistoryTable.jsx | 6 +--
.../BulkEmailPendingTasksAlert.jsx | 38 +++++++++----------
.../index.js | 1 +
src/components/bulk-email-tool/index.js | 1 +
.../task-alert-modal/TaskAlertModal.jsx | 2 +-
.../bulk-email-tool/task-alert-modal/index.js | 1 +
.../bulk-email-tool/text-editor/index.js | 1 +
.../page-container/PageContainer.jsx | 2 +-
src/utils/useMobileResponsive.js | 8 ++--
13 files changed, 35 insertions(+), 29 deletions(-)
diff --git a/src/components/bulk-email-tool/bulk-email-context/BulkEmailProvider.jsx b/src/components/bulk-email-tool/bulk-email-context/BulkEmailProvider.jsx
index c932485..2531878 100644
--- a/src/components/bulk-email-tool/bulk-email-context/BulkEmailProvider.jsx
+++ b/src/components/bulk-email-tool/bulk-email-context/BulkEmailProvider.jsx
@@ -17,6 +17,7 @@ export default function BulkEmailProvider({ children }) {
combineReducers({ editor, scheduledEmailsTable }),
initialState,
);
+ // eslint-disable-next-line react/jsx-no-constructed-context-values
return {children};
}
diff --git a/src/components/bulk-email-tool/bulk-email-form/bulk-email-recipient/index.js b/src/components/bulk-email-tool/bulk-email-form/bulk-email-recipient/index.js
index 5e4e62f..788c581 100644
--- a/src/components/bulk-email-tool/bulk-email-form/bulk-email-recipient/index.js
+++ b/src/components/bulk-email-tool/bulk-email-form/bulk-email-recipient/index.js
@@ -1 +1,2 @@
+// eslint-disable-next-line no-restricted-exports
export { default } from './BulkEmailRecipient';
diff --git a/src/components/bulk-email-tool/bulk-email-form/index.js b/src/components/bulk-email-tool/bulk-email-form/index.js
index 4cef79c..e91ac61 100644
--- a/src/components/bulk-email-tool/bulk-email-form/index.js
+++ b/src/components/bulk-email-tool/bulk-email-form/index.js
@@ -1 +1,2 @@
+// eslint-disable-next-line no-restricted-exports
export { default } from './BulkEmailForm';
diff --git a/src/components/bulk-email-tool/bulk-email-form/test/BulkEmailForm.test.jsx b/src/components/bulk-email-tool/bulk-email-form/test/BulkEmailForm.test.jsx
index b7a2903..c9f68eb 100644
--- a/src/components/bulk-email-tool/bulk-email-form/test/BulkEmailForm.test.jsx
+++ b/src/components/bulk-email-tool/bulk-email-form/test/BulkEmailForm.test.jsx
@@ -32,6 +32,7 @@ function renderBulkEmailForm() {
function renderBulkEmailFormContext(value) {
return (
+ // eslint-disable-next-line react/jsx-no-constructed-context-values
diff --git a/src/components/bulk-email-tool/bulk-email-task-manager/BulkEmailHistoryTable.jsx b/src/components/bulk-email-tool/bulk-email-task-manager/BulkEmailHistoryTable.jsx
index 7f7e8e4..527f927 100644
--- a/src/components/bulk-email-tool/bulk-email-task-manager/BulkEmailHistoryTable.jsx
+++ b/src/components/bulk-email-tool/bulk-email-task-manager/BulkEmailHistoryTable.jsx
@@ -71,12 +71,12 @@ export default function BulkEmailTaskManagerTable(props) {
BulkEmailTaskManagerTable.propTypes = {
errorRetrievingData: PropTypes.bool.isRequired,
- tableData: PropTypes.arrayOf(PropTypes.object),
+ tableData: PropTypes.arrayOf(PropTypes.shape({})),
tableDescription: PropTypes.string,
alertWarningMessage: PropTypes.string.isRequired,
alertErrorMessage: PropTypes.string.isRequired,
- columns: PropTypes.arrayOf(PropTypes.object).isRequired,
- additionalColumns: PropTypes.arrayOf(PropTypes.object),
+ columns: PropTypes.arrayOf(PropTypes.shape({})).isRequired,
+ additionalColumns: PropTypes.arrayOf(PropTypes.shape({})),
};
BulkEmailTaskManagerTable.defaultProps = {
diff --git a/src/components/bulk-email-tool/bulk-email-task-manager/BulkEmailPendingTasksAlert.jsx b/src/components/bulk-email-tool/bulk-email-task-manager/BulkEmailPendingTasksAlert.jsx
index e75d8d7..6321777 100644
--- a/src/components/bulk-email-tool/bulk-email-task-manager/BulkEmailPendingTasksAlert.jsx
+++ b/src/components/bulk-email-tool/bulk-email-task-manager/BulkEmailPendingTasksAlert.jsx
@@ -7,27 +7,25 @@ import { FormattedMessage } from '@edx/frontend-platform/i18n';
export default function BulkEmailPendingTasksAlert() {
return (
- <>
-
+
+
+
-
-
-
-
-
- >
+
+
+
);
}
diff --git a/src/components/bulk-email-tool/bulk-email-task-manager/bulk-email-scheduled-emails-table/index.js b/src/components/bulk-email-tool/bulk-email-task-manager/bulk-email-scheduled-emails-table/index.js
index 68017cc..dca55b9 100644
--- a/src/components/bulk-email-tool/bulk-email-task-manager/bulk-email-scheduled-emails-table/index.js
+++ b/src/components/bulk-email-tool/bulk-email-task-manager/bulk-email-scheduled-emails-table/index.js
@@ -1 +1,2 @@
+// eslint-disable-next-line no-restricted-exports
export { default } from './BulkEmailScheduledEmailsTable';
diff --git a/src/components/bulk-email-tool/index.js b/src/components/bulk-email-tool/index.js
index d146d12..6a9b5ed 100644
--- a/src/components/bulk-email-tool/index.js
+++ b/src/components/bulk-email-tool/index.js
@@ -1 +1,2 @@
+// eslint-disable-next-line no-restricted-exports
export { default } from './BulkEmailTool';
diff --git a/src/components/bulk-email-tool/task-alert-modal/TaskAlertModal.jsx b/src/components/bulk-email-tool/task-alert-modal/TaskAlertModal.jsx
index 72598ac..cbb8ac1 100644
--- a/src/components/bulk-email-tool/task-alert-modal/TaskAlertModal.jsx
+++ b/src/components/bulk-email-tool/task-alert-modal/TaskAlertModal.jsx
@@ -40,7 +40,7 @@ function TaskAlertModal(props) {
// causing strange click event target issues in safari. To solve this, we want to
// wrap the string in a fragment instead of a span, so that the whole button considered
// a "button" target, and not a "span inside a button"
- msg => <>{msg}>
+ msg => msg
}
diff --git a/src/components/bulk-email-tool/task-alert-modal/index.js b/src/components/bulk-email-tool/task-alert-modal/index.js
index d3465a4..ba6d207 100644
--- a/src/components/bulk-email-tool/task-alert-modal/index.js
+++ b/src/components/bulk-email-tool/task-alert-modal/index.js
@@ -1 +1,2 @@
+// eslint-disable-next-line no-restricted-exports
export { default } from './TaskAlertModal';
diff --git a/src/components/bulk-email-tool/text-editor/index.js b/src/components/bulk-email-tool/text-editor/index.js
index 0f49036..368b3ea 100644
--- a/src/components/bulk-email-tool/text-editor/index.js
+++ b/src/components/bulk-email-tool/text-editor/index.js
@@ -1 +1,2 @@
+// eslint-disable-next-line no-restricted-exports
export { default } from './TextEditor';
diff --git a/src/components/page-container/PageContainer.jsx b/src/components/page-container/PageContainer.jsx
index bb44656..826ff0e 100644
--- a/src/components/page-container/PageContainer.jsx
+++ b/src/components/page-container/PageContainer.jsx
@@ -53,7 +53,7 @@ export default function PageContainer(props) {
});
}
fetchCourseMetadata();
- }, []);
+ }, [courseId]);
if (courseMetadata) {
return (
diff --git a/src/utils/useMobileResponsive.js b/src/utils/useMobileResponsive.js
index 44df6dc..57b8747 100644
--- a/src/utils/useMobileResponsive.js
+++ b/src/utils/useMobileResponsive.js
@@ -1,4 +1,4 @@
-import { useState, useEffect } from 'react';
+import { useState, useEffect, useCallback } from 'react';
// NOTE: These are the breakpoints used in Bootstrap v4.0.0 as seen in
// the documentation (https://getbootstrap.com/docs/4.0/layout/overview/#responsive-breakpoints)
@@ -29,14 +29,14 @@ const breakpoints = {
*/
export default function useMobileResponsive(breakpoint) {
const [isMobileWindow, setIsMobileWindow] = useState();
- const checkForMobile = () => {
+ const checkForMobile = useCallback(() => {
setIsMobileWindow(window.matchMedia(`(max-width: ${breakpoint || breakpoints.small.maxWidth}px)`).matches);
- };
+ }, [breakpoint]);
useEffect(() => {
checkForMobile();
window.addEventListener('resize', checkForMobile);
// return this function here to clean up the event listener
return () => window.removeEventListener('resize', checkForMobile);
- }, []);
+ }, [checkForMobile]);
return isMobileWindow;
}