diff --git a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignment.tsx b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignment.tsx
index ac7e7a5..ef35643 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignment.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignment.tsx
@@ -21,6 +21,7 @@ import { useAuthoritativeUpdates } from "@/app/course/[courseName]/utils/useAuth
import EditAssignmentHeader from "./EditAssignmentHeader";
import { Spinner } from "@/components/Spinner";
import { getAssignmentHelpString } from "./getAssignmentHelpString";
+import { EditLayout } from "@/components/EditLayout";
export default function EditAssignment({
moduleName,
@@ -95,7 +96,7 @@ export default function EditAssignment({
}
}
setError("");
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (e: any) {
setError(e.toString());
}
@@ -120,47 +121,53 @@ export default function EditAssignment({
]);
return (
-
-
-
- {showHelp && (
-
- {getAssignmentHelpString(settings)}
-
- )}
-
-
-
-
-
{error && error}
-
-
-
-
- {imageUpdateIsPending && (
-
- images being uploaded to canvas
-
- )}
-
-
-
-
+
+ }
+ Body={
+ <>
+ {showHelp && (
+
+ {getAssignmentHelpString(settings)}
+
+ )}
+
+
-
-
-
-
- setShowHelp((h) => !h)}
- />
-
-
-
+
+
{error && error}
+
+
+
+
+ {imageUpdateIsPending && (
+
+ images being uploaded to canvas
+
+ )}
+
+
+
+
+
+
+ >
+ }
+ Footer={
+
+
+ setShowHelp((h) => !h)}
+ />
+
+
+ }
+ />
);
}
diff --git a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignmentHeader.tsx b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignmentHeader.tsx
index 200f01c..2ea5cb2 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignmentHeader.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/EditAssignmentHeader.tsx
@@ -13,14 +13,14 @@ export default function EditAssignmentHeader({
const { courseName } = useCourseContext();
return (
-
+
{courseName}
-
{assignmentName}
+
{assignmentName}
);
}
diff --git a/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/EditPage.tsx b/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/EditPage.tsx
index f41fc13..9bb6b80 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/EditPage.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/page/[pageName]/EditPage.tsx
@@ -14,6 +14,7 @@ import { useRouter } from "next/navigation";
import { useCourseContext } from "@/app/course/[courseName]/context/courseContext";
import { useAuthoritativeUpdates } from "@/app/course/[courseName]/utils/useAuthoritativeUpdates";
import EditPageHeader from "./EditPageHeader";
+import { EditLayout } from "@/components/EditLayout";
export default function EditPage({
moduleName,
@@ -67,17 +68,6 @@ export default function EditPage({
previousPageName: pageName,
courseName,
});
- // .then(() => {
- // if (updatedPage.name !== pageName)
- // router.replace(
- // getModuleItemUrl(
- // courseName,
- // moduleName,
- // "page",
- // updatedPage.name
- // )
- // );
- // });
} else {
console.log(
"client not authoritative, updating client with server page"
@@ -109,25 +99,31 @@ export default function EditPage({
]);
return (
-
-
-
-
-
-
-
-
{error && error}
-
- {settings.canvasId && (
-
-
-
- )}
-
- );
+ }
+ Footer={
+ <>
+ {settings.canvasId && (
+
+
+
+ )}
+ >
+ }
+ />
+ )
}
diff --git a/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/EditQuiz.tsx b/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/EditQuiz.tsx
index 5a98876..d4c9baa 100644
--- a/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/EditQuiz.tsx
+++ b/src/app/course/[courseName]/modules/[moduleName]/quiz/[quizName]/EditQuiz.tsx
@@ -17,6 +17,7 @@ import { extractLabelValue } from "@/models/local/assignment/utils/markdownUtils
import EditQuizHeader from "./EditQuizHeader";
import { LocalCourseSettings } from "@/models/local/localCourseSettings";
import { useLocalCourseSettingsQuery } from "@/hooks/localCourse/localCoursesHooks";
+import { EditLayout } from "@/components/EditLayout";
const helpString = (settings: LocalCourseSettings) => {
const groupNames = settings.assignmentGroups.map((g) => g.name).join("\n- ");
@@ -148,31 +149,35 @@ export default function EditQuiz({
]);
return (
-
-
-
- {showHelp && (
-
- {helpString(settings)}
-
- )}
-
-
-
-
-
-
-
- setShowHelp((h) => !h)}
- />
-
-
-
+
}
+ Body={
+ <>
+ {showHelp && (
+
+ {helpString(settings)}
+
+ )}
+
+
+
+
+ >
+ }
+ Footer={
+
+
+ setShowHelp((h) => !h)}
+ />
+
+
+ }
+ />
);
}
diff --git a/src/app/course/[courseName]/page.tsx b/src/app/course/[courseName]/page.tsx
index 9c1aaa4..35eb9bd 100644
--- a/src/app/course/[courseName]/page.tsx
+++ b/src/app/course/[courseName]/page.tsx
@@ -11,7 +11,7 @@ export default async function CoursePage() {
-
+
diff --git a/src/app/globals.css b/src/app/globals.css
index 8792228..8431c64 100644
--- a/src/app/globals.css
+++ b/src/app/globals.css
@@ -83,6 +83,7 @@ p {
button,
.btn {
@apply font-bold py-1 px-3 rounded transition-all duration-200;
+ @apply cursor-pointer;
}
.btn-thin {
@@ -91,11 +92,12 @@ button,
button:not(.unstyled):not(.btn-danger),
.btn:not(.unstyled):not(.btn-danger) {
- @apply bg-blue-900 hover:bg-blue-700 text-blue-50;
+ @apply bg-blue-900/80 hover:bg-blue-800/80 text-blue-50;
+ @apply cursor-pointer;
}
.btn-danger {
- @apply bg-red-800 hover:bg-red-900 text-red-100;
+ @apply bg-red-800/60 hover:bg-red-900 text-red-100;
}
.btn-outline {
diff --git a/src/app/layout.tsx b/src/app/layout.tsx
index 4d9b072..bd2cdf6 100644
--- a/src/app/layout.tsx
+++ b/src/app/layout.tsx
@@ -26,7 +26,7 @@ export default async function RootLayout({
-
+
diff --git a/src/components/EditLayout.tsx b/src/components/EditLayout.tsx
new file mode 100644
index 0000000..3808a95
--- /dev/null
+++ b/src/components/EditLayout.tsx
@@ -0,0 +1,17 @@
+import { FC, ReactNode } from "react";
+
+export const EditLayout: FC<{
+ Header: ReactNode;
+ Body: ReactNode;
+ Footer: ReactNode;
+}> = ({ Header, Body, Footer }) => {
+ return (
+
+ {Header}
+
+ {Body}
+
+ {Footer}
+
+ );
+};
diff --git a/src/components/editor/MonacoEditor.css b/src/components/editor/MonacoEditor.css
index b7bd7f9..6252a83 100644
--- a/src/components/editor/MonacoEditor.css
+++ b/src/components/editor/MonacoEditor.css
@@ -5,8 +5,9 @@
/* monaco editor */
.monaco-editor-background,
.monaco-editor .margin {
- background-color: #020617 !important;
- /* background-color: #18181b !important; */
+ /* background-color: #020617 !important; */
+ background-color: #030712 !important;
+ /* background-color: #101828 !important; */
}
.monaco-editor {
position: absolute !important;