feat: enable TS strict mode (#168)

* feat: enable TS strict mode

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: colors bug with default

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: text type errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors - add definite assignment assertion

* fix: strict TS errors - add definite assignment assertion

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix(ESLint): error on no-explicit-any

* fix: type annotations for any types

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors (and remove packages)

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* fix: strict TS errors

* feat: enable React.StrictMode

* fix: strict TS errors (done!)

* fix: build error

* fix: replace no-explicit-any assertions

* refactor: cleanup

* refactor: more cleanup

* style: prettier

---------

Co-authored-by: Lukas Zenick <lukas@utexas.edu>
Co-authored-by: Razboy20 <razboy20@gmail.com>
This commit is contained in:
doprz
2024-03-21 13:19:40 -05:00
committed by GitHub
parent 0c76052478
commit efed1c0edb
61 changed files with 562 additions and 1309 deletions

View File

@@ -12,7 +12,7 @@ import styles from './TableRow.module.scss';
interface Props {
isSelected: boolean;
row: ScrapedRow;
onClick: (...args: any[]) => any;
onClick: (...args: unknown[]) => unknown;
activeSchedule?: UserSchedule;
}
@@ -29,7 +29,7 @@ export default function TableRow({ row, isSelected, activeSchedule, onClick }: P
const { element, course } = row;
useEffect(() => {
element.classList.add(styles.row);
element.classList.add(styles.row!);
element.classList.add('group');
const portalContainer = document.createElement('td');
// portalContainer.style.textAlign = 'right';
@@ -39,12 +39,12 @@ export default function TableRow({ row, isSelected, activeSchedule, onClick }: P
return () => {
portalContainer.remove();
element.classList.remove(styles.row);
element.classList.remove(styles.row!);
};
}, [element]);
useEffect(() => {
element.classList[isSelected ? 'add' : 'remove'](styles.selectedRow);
element.classList[isSelected ? 'add' : 'remove'](styles.selectedRow!);
}, [isSelected, element.classList]);
useEffect(() => {
@@ -52,10 +52,10 @@ export default function TableRow({ row, isSelected, activeSchedule, onClick }: P
const isInSchedule = activeSchedule.containsCourse(course);
element.classList[isInSchedule ? 'add' : 'remove'](styles.inActiveSchedule);
element.classList[isInSchedule ? 'add' : 'remove'](styles.inActiveSchedule!);
return () => {
element.classList.remove(styles.inActiveSchedule);
element.classList.remove(styles.inActiveSchedule!);
};
}, [activeSchedule, course, element.classList]);
@@ -72,11 +72,11 @@ export default function TableRow({ row, isSelected, activeSchedule, onClick }: P
}
}
element.classList[conflicts.length ? 'add' : 'remove'](styles.isConflict);
element.classList[conflicts.length ? 'add' : 'remove'](styles.isConflict!);
setConflicts(conflicts);
return () => {
element.classList.remove(styles.isConflict);
element.classList.remove(styles.isConflict!);
setConflicts([]);
};
}, [activeSchedule, course, element.classList]);