-
+const Policies = () => {
+ // see SECTIONS doc below to understand what is going on here
+ const intro = SECTIONS.introduction;
+ const htsu = SECTIONS.howToSignUp;
+ const guides = SECTIONS.guidelines;
+ const comms = SECTIONS.communications;
+ const aff = SECTIONS.affinitySections;
+ const forUnit = SECTIONS.csmForUnit;
+ const faq = SECTIONS.faq;
+ return (
+
+
+
-
+
-
-
{htsu.title}
-
- {htsu.body.p1_1}
- {htsu.body.p1_a.text}
- {htsu.body.p1_2}
- {htsu.body.p1_b}
-
-
{htsu.body.p2}
-
+
+
{htsu.title}
+
+ {htsu.body.p1_1}
+ {htsu.body.p1_a.text}
+ {htsu.body.p1_2}
+ {htsu.body.p1_b}
+
+
{htsu.body.p2}
+
-
+
-
-
{guides.title}
-
- -
- {guides.body.i1_1}
- {guides.body.i1_b}
-
- - {guides.body.i2}
- -
- {guides.body.i3_1}
- {guides.body.i3_b}
- {guides.body.i3_2}
-
- -
- {guides.body.i4_1}
- {guides.body.i4_b}
- {guides.body.i4_2}
- {guides.body.i4_b2}
-
- - {guides.body.i5}
-
-
+
+
{guides.title}
+
+ -
+ {guides.body.i1_1}
+ {guides.body.i1_b}
+
+ - {guides.body.i2}
+ -
+ {guides.body.i3_1}
+ {guides.body.i3_b}
+ {guides.body.i3_2}
+
+ -
+ {guides.body.i4_1}
+ {guides.body.i4_b}
+ {guides.body.i4_2}
+ {guides.body.i4_b2}
+
+ - {guides.body.i5}
+
+
-
+
-
+
-
+
-
-
{aff.title}
-
{aff.body.p1}
-
- -
- {aff.body.i1_b}
- {aff.body.i1_2}
-
- -
- {aff.body.i2_b}
- {aff.body.i2_2}
-
- -
- {aff.body.i3_b}
- {aff.body.i3_2}
-
-
- {aff.body.p2}
-
+
+
{aff.title}
+
{aff.body.p1}
+
+ -
+ {aff.body.i1_b}
+ {aff.body.i1_2}
+
+ -
+ {aff.body.i2_b}
+ {aff.body.i2_2}
+
+ -
+ {aff.body.i3_b}
+ {aff.body.i3_2}
+
+
+ {aff.body.p2}
+
-
+
-
-
{forUnit.title}
-
- {forUnit.body.p1_1}
- {forUnit.body.p1_b}
- {forUnit.body.p1_2}
- {forUnit.body.p1_b2}
-
-
- {forUnit.body.p2_1}
- {forUnit.body.p2_b}
- {forUnit.body.p2_2}
-
-
- {forUnit.body.p3_1}
- {forUnit.body.p3_b}
- {forUnit.body.p3_2}
-
-
- {forUnit.body.p4_1}
- {forUnit.body.p4_b}
- {forUnit.body.p4_2}
-
-
{forUnit.body.p5}
-
{forUnit.body.p6}
-
- - {forUnit.body.li2_1}
- -
- {forUnit.body.li2_2.bullet}
-
-
- -
- {forUnit.body.li2_3.bullet}
-
- -
- {forUnit.body.li2_3.subbull_b}
- {forUnit.body.li2_3.subbull_2}
-
-
-
-
-
+
+
{forUnit.title}
+
+ {forUnit.body.p1_1}
+ {forUnit.body.p1_b}
+ {forUnit.body.p1_2}
+ {forUnit.body.p1_b2}
+
+
+ {forUnit.body.p2_1}
+ {forUnit.body.p2_b}
+ {forUnit.body.p2_2}
+
+
+ {forUnit.body.p3_1}
+ {forUnit.body.p3_b}
+ {forUnit.body.p3_2}
+
+
+ {forUnit.body.p4_1}
+ {forUnit.body.p4_b}
+ {forUnit.body.p4_2}
+
+
{forUnit.body.p5}
+
{forUnit.body.p6}
+
+ - {forUnit.body.li2_1}
+ -
+ {forUnit.body.li2_2.bullet}
+
+
+ -
+ {forUnit.body.li2_3.bullet}
+
+ -
+ {forUnit.body.li2_3.subbull_b}
+ {forUnit.body.li2_3.subbull_2}
+
+
+
+
+
-
+
-
-
{faq.title}
-
- {" "}
- {faq.body.p1_b} {" "}
-
-
{faq.body.p2}
-
- {" "}
- {faq.body.p3_b} {" "}
-
-
{faq.body.p4}
-
- {" "}
- {faq.body.p5_b} {" "}
-
-
{faq.body.p6}
-
- {" "}
- {faq.body.p7_b} {" "}
-
-
{faq.body.p8}
-
- - {faq.body.li1}
- - {faq.body.li2}
-
-
- {faq.body.p9_1}
- {faq.body.p9_b}
- {faq.body.p9_2}
-
-
- - {faq.body.li3}
- - {faq.body.li4}
-
-
{faq.body.p10}
-
+
+
{faq.title}
+
+ {" "}
+ {faq.body.p1_b} {" "}
+
+
{faq.body.p2}
+
+ {" "}
+ {faq.body.p3_b} {" "}
+
+
{faq.body.p4}
+
+ {" "}
+ {faq.body.p5_b} {" "}
+
+
{faq.body.p6}
+
+ {" "}
+ {faq.body.p7_b} {" "}
+
+
{faq.body.p8}
+
+ - {faq.body.li1}
+ - {faq.body.li2}
+
+
+ {faq.body.p9_1}
+ {faq.body.p9_b}
+ {faq.body.p9_2}
+
+
+ - {faq.body.li3}
+ - {faq.body.li4}
+
+
{faq.body.p10}
- );
- }
-}
+
+ );
+};
+export default Policies;
diff --git a/csm_web/frontend/src/components/course/Course.tsx b/csm_web/frontend/src/components/course/Course.tsx
index 29e936d4..a46a3f14 100644
--- a/csm_web/frontend/src/components/course/Course.tsx
+++ b/csm_web/frontend/src/components/course/Course.tsx
@@ -1,21 +1,19 @@
import { DateTime } from "luxon";
import React, { useState } from "react";
import { useParams } from "react-router-dom";
+import { DEFAULT_LONG_LOCALE_OPTIONS } from "../../utils/datetime";
import { useCourseSections } from "../../utils/queries/courses";
import { Course as CourseType } from "../../utils/types";
import LoadingSpinner from "../LoadingSpinner";
import { CreateSectionModal } from "./CreateSectionModal";
import { DataExportModal } from "./DataExportModal";
import { SectionCard } from "./SectionCard";
-import { WhitelistModal } from "./WhitelistModal";
import { SettingsModal } from "./SettingsModal";
-import { DEFAULT_LONG_LOCALE_OPTIONS } from "../../utils/datetime";
+import { WhitelistModal } from "./WhitelistModal";
-// Images
import PencilIcon from "../../../static/frontend/img/pencil.svg";
import PlusIcon from "../../../static/frontend/img/plus.svg";
-// Styles
import "../../css/course.scss";
const DAY_OF_WEEK_ABREVIATIONS: { [day: string]: string } = Object.freeze({
diff --git a/csm_web/frontend/src/components/course/CreateSectionModal.tsx b/csm_web/frontend/src/components/course/CreateSectionModal.tsx
index cc614ec3..e058f326 100644
--- a/csm_web/frontend/src/components/course/CreateSectionModal.tsx
+++ b/csm_web/frontend/src/components/course/CreateSectionModal.tsx
@@ -1,5 +1,6 @@
import React, { useState } from "react";
-import { dayOfWeekToEnglishString, DAYS_OF_WEEK } from "../../utils/datetime";
+
+import { DAYS_OF_WEEK } from "../../utils/datetime";
import { useUserEmails } from "../../utils/queries/base";
import { useSectionCreateMutation } from "../../utils/queries/sections";
import { Spacetime } from "../../utils/types";
diff --git a/csm_web/frontend/src/components/course/DataExportModal.tsx b/csm_web/frontend/src/components/course/DataExportModal.tsx
index 29679e09..924686fe 100644
--- a/csm_web/frontend/src/components/course/DataExportModal.tsx
+++ b/csm_web/frontend/src/components/course/DataExportModal.tsx
@@ -1,4 +1,5 @@
import React, { useEffect, useMemo, useState } from "react";
+
import { normalizeEndpoint } from "../../utils/api";
import { useCourses } from "../../utils/queries/courses";
import LoadingSpinner from "../LoadingSpinner";
diff --git a/csm_web/frontend/src/components/course/SectionCard.tsx b/csm_web/frontend/src/components/course/SectionCard.tsx
index 49d28323..e7dfc7c2 100644
--- a/csm_web/frontend/src/components/course/SectionCard.tsx
+++ b/csm_web/frontend/src/components/course/SectionCard.tsx
@@ -1,6 +1,7 @@
import React, { useState } from "react";
import { Link, Navigate } from "react-router-dom";
+import { formatSpacetimeInterval } from "../../utils/datetime";
import { EnrollUserMutationResponse, useEnrollUserMutation } from "../../utils/queries/sections";
import { Mentor, Spacetime } from "../../utils/types";
import Modal, { ModalCloser } from "../Modal";
@@ -11,7 +12,6 @@ import GroupIcon from "../../../static/frontend/img/group.svg";
import LocationIcon from "../../../static/frontend/img/location.svg";
import UserIcon from "../../../static/frontend/img/user.svg";
import XCircle from "../../../static/frontend/img/x_circle.svg";
-import { formatSpacetimeInterval } from "../../utils/datetime";
interface SectionCardProps {
id: number;
diff --git a/csm_web/frontend/src/components/course/SettingsModal.tsx b/csm_web/frontend/src/components/course/SettingsModal.tsx
index 3e298fb6..9b699882 100644
--- a/csm_web/frontend/src/components/course/SettingsModal.tsx
+++ b/csm_web/frontend/src/components/course/SettingsModal.tsx
@@ -1,14 +1,12 @@
import React, { useEffect, useState } from "react";
-import LoadingSpinner from "../LoadingSpinner";
import { useCourses, useCourseSettingsMutation } from "../../utils/queries/courses";
-import { Tooltip } from "../Tooltip";
+import LoadingSpinner from "../LoadingSpinner";
import Modal from "../Modal";
+import { Tooltip } from "../Tooltip";
-// Images
import InfoIcon from "../../../static/frontend/img/info.svg";
-// Styles
import "../../css/course-settings.scss";
interface SettingsModalProps {
diff --git a/csm_web/frontend/src/components/course/WhitelistModal.tsx b/csm_web/frontend/src/components/course/WhitelistModal.tsx
index 7ffd597e..047a5a5a 100644
--- a/csm_web/frontend/src/components/course/WhitelistModal.tsx
+++ b/csm_web/frontend/src/components/course/WhitelistModal.tsx
@@ -1,4 +1,5 @@
import React, { useEffect, useRef, useState } from "react";
+
import {
useCourseAddWhitelistMutation,
useCourseDeleteWhitelistMutation,
@@ -9,13 +10,11 @@ import LoadingSpinner from "../LoadingSpinner";
import Modal from "../Modal";
import { SearchBar } from "../SearchBar";
-// Images
import CheckCircleIcon from "../../../static/frontend/img/check_circle.svg";
import ExclamationCircleIcon from "../../../static/frontend/img/exclamation-circle.svg";
import UndoIcon from "../../../static/frontend/img/undo.svg";
import XIcon from "../../../static/frontend/img/x.svg";
-// Styles
import "../../css/whitelist_modal.scss";
interface WhitelistModalProps {
diff --git a/csm_web/frontend/src/components/enrollment_automation/EnrollmentMatcher.tsx b/csm_web/frontend/src/components/enrollment_automation/EnrollmentMatcher.tsx
index 02d1bff2..14212046 100644
--- a/csm_web/frontend/src/components/enrollment_automation/EnrollmentMatcher.tsx
+++ b/csm_web/frontend/src/components/enrollment_automation/EnrollmentMatcher.tsx
@@ -1,14 +1,13 @@
import React, { useEffect, useState } from "react";
import { Navigate, NavLink, Route, Routes, useParams } from "react-router-dom";
+
import { useProfiles } from "../../utils/queries/base";
import { useMatcherActiveCourses } from "../../utils/queries/matcher";
-import { Profile } from "../../utils/types";
-
+import { Profile, Role } from "../../utils/types";
import { emptyRoles, Roles } from "../../utils/user";
-import { CoordinatorMatcherForm } from "./coordinator/CoordinatorMatcherForm";
import { MentorSectionPreferences } from "./MentorSectionPreferences";
+import { CoordinatorMatcherForm } from "./coordinator/CoordinatorMatcherForm";
-// Styles
import "../../css/enrollment_matcher.scss";
export interface MatcherProfile {
@@ -24,7 +23,7 @@ export function EnrollmentMatcher(): JSX.Element {
const [mentorProfileMap, setMentorProfileMap] = useState