diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 00000000..7a73a41b
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,2 @@
+{
+}
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 19815ce5..c3676c50 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1042,6 +1042,30 @@
"to-fast-properties": "^2.0.0"
}
},
+ "@fortawesome/fontawesome-common-types": {
+ "version": "0.2.35",
+ "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.35.tgz",
+ "integrity": "sha512-IHUfxSEDS9dDGqYwIW7wTN6tn/O8E0n5PcAHz9cAaBoZw6UpG20IG/YM3NNLaGPwPqgjBAFjIURzqoQs3rrtuw==",
+ "dev": true
+ },
+ "@fortawesome/free-brands-svg-icons": {
+ "version": "5.15.3",
+ "resolved": "https://registry.npmjs.org/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-5.15.3.tgz",
+ "integrity": "sha512-1hirPcbjj72ZJtFvdnXGPbAbpn3Ox6mH3g5STbANFp3vGSiE5u5ingAKV06mK6ZVqNYxUPlh4DlTnaIvLtF2kw==",
+ "dev": true,
+ "requires": {
+ "@fortawesome/fontawesome-common-types": "^0.2.35"
+ }
+ },
+ "@fortawesome/free-regular-svg-icons": {
+ "version": "5.15.3",
+ "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-5.15.3.tgz",
+ "integrity": "sha512-q4/p8Xehy9qiVTdDWHL4Z+o5PCLRChePGZRTXkl+/Z7erDVL8VcZUuqzJjs6gUz6czss4VIPBRdCz6wP37/zMQ==",
+ "dev": true,
+ "requires": {
+ "@fortawesome/fontawesome-common-types": "^0.2.35"
+ }
+ },
"@fullhuman/postcss-purgecss": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/@fullhuman/postcss-purgecss/-/postcss-purgecss-3.1.3.tgz",
@@ -2844,6 +2868,15 @@
"integrity": "sha512-r+n8UJkDqoQm1b+3tA3Lh6mHXKpcfOSOuEuIo5gE2W9wQYi64RYX/qE6CZBDDsP/H4M+N426JwY7XGH4xASvGQ==",
"dev": true
},
+ "svelte-awesome": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/svelte-awesome/-/svelte-awesome-2.3.1.tgz",
+ "integrity": "sha512-n+6u0hMTUHvDR+pBbVghEr7TxA1lLoTE3ZuySteDChNGxpW1GMjN2cm6sZ1yr+868HOzoSS529YG02YuwFpxbw==",
+ "dev": true,
+ "requires": {
+ "svelte": "^3.15.0"
+ }
+ },
"svelte-preprocess": {
"version": "4.6.1",
"resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.6.1.tgz",
diff --git a/package.json b/package.json
index 3f0a8a0a..a406af1e 100644
--- a/package.json
+++ b/package.json
@@ -21,6 +21,8 @@
"@babel/plugin-transform-runtime": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/runtime": "^7.0.0",
+ "@fortawesome/free-brands-svg-icons": "^5.15.3",
+ "@fortawesome/free-regular-svg-icons": "^5.15.3",
"@rollup/plugin-babel": "^5.0.0",
"@rollup/plugin-commonjs": "^14.0.0",
"@rollup/plugin-node-resolve": "^8.0.0",
@@ -34,6 +36,7 @@
"rollup-plugin-terser": "^7.0.0",
"sapper": "^0.28.0",
"svelte": "^3.17.3",
+ "svelte-awesome": "^2.3.1",
"svelte-preprocess": "^4.3.0",
"tailwindcss": "^2.1.2",
"typescript": "^4.1.3"
diff --git a/src/components/Course/components/CourseNav.svelte b/src/components/Course/components/CourseNav.svelte
index ba64ddfd..b24aa033 100644
--- a/src/components/Course/components/CourseNav.svelte
+++ b/src/components/Course/components/CourseNav.svelte
@@ -7,7 +7,6 @@
function handleMainGroupClick(href) {
return () => {
- console.log("goto", href);
goto(href);
};
}
@@ -36,60 +35,13 @@
];
-
-
+
+
diff --git a/src/components/Course/components/HomeTask.svelte b/src/components/Course/components/HomeTask.svelte
index 6913aa0b..b887b438 100644
--- a/src/components/Course/components/HomeTask.svelte
+++ b/src/components/Course/components/HomeTask.svelte
@@ -2,12 +2,7 @@
import PageNav from "../../PageNav/index.svelte";
-
-
+
+
diff --git a/src/components/Course/components/Lecture/Readme.svelte b/src/components/Course/components/Lecture/Readme.svelte
index 7c404a8f..0e34a6f1 100644
--- a/src/components/Course/components/Lecture/Readme.svelte
+++ b/src/components/Course/components/Lecture/Readme.svelte
@@ -12,9 +12,8 @@
title="Lecture"
src="https://docs.google.com/presentation/d/e/2PACX-1vTi_ATSrNBL-FMP7oDSi2DtXU7L8yzL0KAocNc-k7EqXaMM-oCbnbVmQjHYP0QKAw3r-QZayNfx5EpM/embed?start=false&loop=false&delayms=3000"
frameborder="0"
- width="960"
+ width="100%"
height="569"
allowfullscreen="true"
mozallowfullscreen="true"
- webkitallowfullscreen="true"
-/>
+ webkitallowfullscreen="true" />
diff --git a/src/components/Course/components/Lecture/index.svelte b/src/components/Course/components/Lecture/index.svelte
index 152c6a66..9fa39379 100644
--- a/src/components/Course/components/Lecture/index.svelte
+++ b/src/components/Course/components/Lecture/index.svelte
@@ -44,8 +44,6 @@
diff --git a/src/components/Course/components/People.svelte b/src/components/Course/components/People.svelte
index 5571393d..be4335cc 100644
--- a/src/components/Course/components/People.svelte
+++ b/src/components/Course/components/People.svelte
@@ -1,13 +1,74 @@
-
-
+
+
+
+
+ {#each teachers as teacher}
+
+ {/each}
+
-
+
+
+
+ {#each students as student}
+
+ {/each}
+
+
diff --git a/src/components/Course/components/Scoreboard.svelte b/src/components/Course/components/Scoreboard.svelte
index 28d1078a..9ee4f9ba 100644
--- a/src/components/Course/components/Scoreboard.svelte
+++ b/src/components/Course/components/Scoreboard.svelte
@@ -2,12 +2,7 @@
import PageNav from "../../PageNav/index.svelte";
-
-
+
+
diff --git a/src/components/Course/components/TimeTable.svelte b/src/components/Course/components/TimeTable.svelte
index 80b30a0b..5f17b105 100644
--- a/src/components/Course/components/TimeTable.svelte
+++ b/src/components/Course/components/TimeTable.svelte
@@ -2,12 +2,7 @@
import PageNav from "../../PageNav/index.svelte";
-
-
+
+
diff --git a/src/components/Course/index.svelte b/src/components/Course/index.svelte
index 258c7b37..024ba6bb 100644
--- a/src/components/Course/index.svelte
+++ b/src/components/Course/index.svelte
@@ -15,24 +15,15 @@
`;
-
-
-
-
- {@html marked(readme, {
- breaks: true,
- gfm: true,
- })}
-
-
-
+
+
+
+
+ {@html marked(readme, { breaks: true, gfm: true })}
+
diff --git a/src/components/IconButton/index.svelte b/src/components/IconButton/index.svelte
new file mode 100644
index 00000000..ede325de
--- /dev/null
+++ b/src/components/IconButton/index.svelte
@@ -0,0 +1,6 @@
+
+
+
+
+
diff --git a/src/components/LeftNav/index.svelte b/src/components/LeftNav/index.svelte
index a01c2bff..1da622a2 100644
--- a/src/components/LeftNav/index.svelte
+++ b/src/components/LeftNav/index.svelte
@@ -10,81 +10,16 @@
$: navClass = ["discussion"].includes(segment) ? "hide" : "";
-
-
-
-
+
+
+
+
diff --git a/src/components/PageNav/index.svelte b/src/components/PageNav/index.svelte
index dc295d2b..d8bc5ac6 100644
--- a/src/components/PageNav/index.svelte
+++ b/src/components/PageNav/index.svelte
@@ -4,13 +4,14 @@
export let navItems = [];
export let addButtonHref;
export let addButtonLabel;
+ export let disableSticky = false;
let dynamicRootClass = "";
$: dynamicRootClass =
Array.isArray(navItems) && navItems.length > 4 ? "bring-down" : "";
-