diff --git a/.eleventy.js b/.eleventy.js
index 4dac6e9..ab47ddd 100644
--- a/.eleventy.js
+++ b/.eleventy.js
@@ -82,6 +82,10 @@ module.exports = function(eleventyConfig) {
eleventyConfig.addTransform('link', function(str) {
return str && str.replace(/\[\[(.*?)\]\]/g, function(match, p1) {
+ //Check if it is an embedded excalidraw drawing or mathjax javascript
+ if (p1.indexOf(",") > -1) {
+ return match;
+ }
const [fileName, linkTitle] = p1.split("|");
let permalink = `/notes/${slugify(fileName)}`;
diff --git a/.env b/.env
new file mode 100644
index 0000000..23f074e
--- /dev/null
+++ b/.env
@@ -0,0 +1,2 @@
+THEME=https://raw.githubusercontent.com/colineckert/obsidian-things/main/obsidian.css
+BASE_THEME=light
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index b8b0076..f06235c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,2 @@
node_modules
dist
-**/.env*
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index dd4d9ce..8648b92 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -12,6 +12,7 @@
"@azure/storage-blob": "^12.8.0",
"@octokit/core": "^3.5.1",
"@sindresorhus/slugify": "^1.1.0",
+ "axios": "^0.26.1",
"dotenv": "^10.0.0",
"gray-matter": "^4.0.3",
"markdown-it": "^12.3.2",
@@ -603,12 +604,11 @@
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
},
"node_modules/axios": {
- "version": "0.21.4",
- "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz",
- "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==",
- "dev": true,
+ "version": "0.26.1",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz",
+ "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==",
"dependencies": {
- "follow-redirects": "^1.14.0"
+ "follow-redirects": "^1.14.8"
}
},
"node_modules/babel-walk": {
@@ -1583,7 +1583,6 @@
"version": "1.14.9",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz",
"integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==",
- "dev": true,
"funding": [
{
"type": "individual",
@@ -2467,6 +2466,15 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
+ "node_modules/localtunnel/node_modules/axios": {
+ "version": "0.21.4",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz",
+ "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==",
+ "dev": true,
+ "dependencies": {
+ "follow-redirects": "^1.14.0"
+ }
+ },
"node_modules/localtunnel/node_modules/cliui": {
"version": "7.0.4",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
@@ -5329,12 +5337,11 @@
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
},
"axios": {
- "version": "0.21.4",
- "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz",
- "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==",
- "dev": true,
+ "version": "0.26.1",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz",
+ "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==",
"requires": {
- "follow-redirects": "^1.14.0"
+ "follow-redirects": "^1.14.8"
}
},
"babel-walk": {
@@ -6130,8 +6137,7 @@
"follow-redirects": {
"version": "1.14.9",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz",
- "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==",
- "dev": true
+ "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w=="
},
"form-data": {
"version": "4.0.0",
@@ -6775,6 +6781,15 @@
"color-convert": "^2.0.1"
}
},
+ "axios": {
+ "version": "0.21.4",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz",
+ "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==",
+ "dev": true,
+ "requires": {
+ "follow-redirects": "^1.14.0"
+ }
+ },
"cliui": {
"version": "7.0.4",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
diff --git a/package.json b/package.json
index c7b8ca1..8bf1677 100644
--- a/package.json
+++ b/package.json
@@ -24,6 +24,7 @@
"@azure/storage-blob": "^12.8.0",
"@octokit/core": "^3.5.1",
"@sindresorhus/slugify": "^1.1.0",
+ "axios": "^0.26.1",
"dotenv": "^10.0.0",
"gray-matter": "^4.0.3",
"markdown-it": "^12.3.2",
diff --git a/src/site/_data/meta.js b/src/site/_data/meta.js
index a16ddb0..a5d02e1 100644
--- a/src/site/_data/meta.js
+++ b/src/site/_data/meta.js
@@ -1,13 +1,18 @@
require("dotenv").config();
-let themeStyle = "";
-if (process.env.THEME) {
- fetch(process.env.THEME).then(response => response.text()).then(text => {
- themeStyle = "";
- });
-}
-module.exports = {
- env: process.env.ELEVENTY_ENV,
- theme: process.env.THEME,
- themeStyle: themeStyle,
- baseTheme: process.env.BASE_THEME || "dark"
-};
\ No newline at end of file
+const axios = require("axios");
+
+
+module.exports = async() => {
+ let themeStyle = "";
+ if (process.env.THEME) {
+ const res = await axios.get(process.env.THEME)
+ themeStyle = ``;
+ }
+ return {
+ env: process.env.ELEVENTY_ENV,
+ theme: process.env.THEME,
+ themeStyle: themeStyle,
+ baseTheme: process.env.BASE_THEME || "dark"
+ }
+
+};
diff --git a/src/site/_includes/components/pageheader.njk b/src/site/_includes/components/pageheader.njk
index 9e6acbe..9b9eb7b 100644
--- a/src/site/_includes/components/pageheader.njk
+++ b/src/site/_includes/components/pageheader.njk
@@ -10,11 +10,18 @@
-
+
+
{%-if meta.themeStyle%}
- {{meta.themeStyle}}
+ {{meta.themeStyle | safe}}
{%endif%}
diff --git a/src/site/styles/style.scss b/src/site/styles/style.scss
index 9a68a83..1d754c7 100644
--- a/src/site/styles/style.scss
+++ b/src/site/styles/style.scss
@@ -41,12 +41,18 @@ h4 {
text-align: center;
}
-body {
- background-color: rgb(32, 31, 31);
+.theme-dark {
+ background: rgb(32, 31, 31);
color: white;
font-family: 'Roboto', sans-serif;
}
+.theme-light {
+ background: white;
+ color: black;
+ font-family: 'Roboto', sans-serif;
+}
+
a {
text-decoration: underline;
color: rgb(97, 186, 245);