aboutsummaryrefslogtreecommitdiffstats
path: root/src/layouts
diff options
context:
space:
mode:
author2022-01-25 13:58:30 +0530
committer2022-01-25 13:58:30 +0530
commit3bd08521ac2fe0458598e5ddec385d6e516a3db6 (patch)
tree2a5ccf2ea8ad81a13d1e524eac49a803e042a8ff /src/layouts
parentfixed error in css and manifest.njk (diff)
downloadsudomsg-3bd08521ac2fe0458598e5ddec385d6e516a3db6.tar
sudomsg-3bd08521ac2fe0458598e5ddec385d6e516a3db6.tar.gz
sudomsg-3bd08521ac2fe0458598e5ddec385d6e516a3db6.tar.bz2
sudomsg-3bd08521ac2fe0458598e5ddec385d6e516a3db6.tar.lz
sudomsg-3bd08521ac2fe0458598e5ddec385d6e516a3db6.tar.xz
sudomsg-3bd08521ac2fe0458598e5ddec385d6e516a3db6.tar.zst
sudomsg-3bd08521ac2fe0458598e5ddec385d6e516a3db6.zip
change to 11ty.js for non markdown templates
Signed-off-by: Marc Pervaz Boocha <mboocha@sudomsg.xyz> Please enter the commit message for your changes. Lines starting with '#' will be ignored, and an empty message aborts the commit. On branch main Your branch is up to date with 'origin/main'. Changes to be committed: modified: .eleventy.js modified: .eslintrc.js new file: assets/index.css new file: assets/index.js new file: assets/mandle.png new file: assets/sw.js renamed: favicon.ico -> favicon/icon.ico modified: package-lock.json modified: package.json modified: src/about.md deleted: src/assets/atom.njk deleted: src/assets/error.md deleted: src/assets/index.css deleted: src/assets/index.mjs deleted: src/assets/json.njk deleted: src/assets/manifest.njk deleted: src/assets/prism.css deleted: src/assets/robot.njk deleted: src/assets/sitemap.njk deleted: src/assets/sw.mjs new file: src/blog.11ty.js deleted: src/blog.njk modified: src/data/env.js deleted: src/data/err.js modified: src/data/metadata.js deleted: src/data/navigator.js new file: src/gen/atom.11ty.js new file: src/gen/error.11ty.js renamed: src/assets/assets.11tydata.js -> src/gen/gen.11tydata.js new file: src/gen/json.11ty.js new file: src/gen/manifest.11ty.js new file: src/gen/metadata.11ty.js new file: src/gen/robot.11ty.js new file: src/gen/sitemap.11ty.js modified: src/index.md new file: src/layouts/base.11ty.js deleted: src/layouts/base.njk new file: src/layouts/page.11ty.js new file: src/layouts/post.11ty.js deleted: src/layouts/post.njk modified: src/post/post.11tydata.js
Diffstat (limited to 'src/layouts')
-rw-r--r--src/layouts/base.11ty.js51
-rw-r--r--src/layouts/base.njk46
-rw-r--r--src/layouts/page.11ty.js14
-rw-r--r--src/layouts/post.11ty.js17
-rw-r--r--src/layouts/post.njk12
5 files changed, 82 insertions, 58 deletions
diff --git a/src/layouts/base.11ty.js b/src/layouts/base.11ty.js
new file mode 100644
index 0000000..a42b15f
--- /dev/null
+++ b/src/layouts/base.11ty.js
@@ -0,0 +1,51 @@
+const {oneLine} = require("common-tags")
+
+module.exports = class {
+ render(data) {
+ return oneLine`<!DOCTYPE html>
+ <html lang="${data.metadata.language}">
+ <head>
+ <meta charset="utf-8">
+ <meta property="og:locale content=en_GB">
+ <title property="og:title">${data.title || data.metadata.title}</title>
+ <meta property="og:site_name" content="${data.metadata.title}">
+ <meta name="author" content="${data.metadata.author.name}">
+ <meta name="description" property="og:description content="${data.description || data.metadata.description}">
+ <meta property="og:type" content="website">
+ ${data.keywords ? `<meta name="keywords" contents="${data.keywords.join()}>`: ""}
+ <meta name="generator" contents="Eleventy v${data.pkg.dependencies["@11ty/eleventy"].replace("^", "")}">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="twitter:card" content="summary">
+ <meta property=og:url content="${new URL(data.page.url, data.metadata.url)}">
+ <link rel="canonical" href="${new URL(data.page.url, data.metadata.url)}">
+ <link rel="alternate" href="${data.metadata.feed.atom}" type="application/atom+xml" title="${data.metadata.title}">
+ <link rel="alternate" href="${data.metadata.feed.json}" type="application/feed+json" title="${data.metadata.title}">
+ <meta property="og:image" content="/favicon/1024.png">
+ <link rel="icon" href="/favicon.ico" sizes="any">
+ <link rel="icon" href="/favicon/icon.svg" type="image/svg+xml">
+ <link rel="apple-touch-icon" href="/favicon/192.png">
+ <link rel="manifest" href="/app.webmanifest">
+ <link rel="stylesheet" href="/assets/index.css">
+ <link rel="stylesheet" href="/vendor/prism.css">
+ <script type="module" src="/assets/index.js" defer></script>
+ </head>
+ <body>
+ <header>
+ <nav>
+ <a href="#" id="nav-toogle">Sudomsg</a>
+ <a class="navlinks" href="/" >Home</a>
+ <a class="navlinks" href="/blog/">Blog</a>
+ <a class="navlinks" href="/about/">About</a>
+ </nav>
+ </header>
+ <main>
+ ${data.content}
+ </main>
+ <footer>
+ Subscribe: <a href="${data.metadata.feed.atom}">RSS</a>
+ <a href="${data.metadata.feed.json}">JSON</a>
+ </footer>
+ </body>
+ </html>`;
+ }
+};
diff --git a/src/layouts/base.njk b/src/layouts/base.njk
deleted file mode 100644
index 20b1100..0000000
--- a/src/layouts/base.njk
+++ /dev/null
@@ -1,46 +0,0 @@
-<!DOCTYPE html>
-<html lang="en-GB">
- <head>
- <meta charset="utf-8"/>
- <meta property="og:locale" content="en_GB"/>
- <title>{{ title or metadata.title }}</title>
- <meta property="og:title" content="{{ title or metadata.title }}"/>
- <meta property="og:site_name" content="{{ metadata.title }}"/>
- <meta name="author" content="{{ metadata.author.name }}"/>
- <meta name="description" content="{{ description or metadata.description }}"/>
- <meta property="og:description" content="{{ description or metadata.description }}"/>
- <meta name="keywords" contents="{{ keywords }}"/>
- <meta name="generator" contents="eleventy"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <meta name="twitter:card" content="summary"/>
- <meta property="og:url" content="{{ page.url | url | absoluteUrl(metadata.url) }}"/>
- <link rel="canonical" href="{{ page.url | url | absoluteUrl(metadata.url) }}"/>
- <link rel="alternate" href="{{ metadata.feed.atom | url }}" type="application/atom+xml" title="{{ metadata.title }}"/>
- <link rel="alternate" href="{ metadata.feed.json | url }" type="application/feed+json" title="{{ metadata.title }}"/>
- <link rel="icon" href="{{ '/favicon.ico' | url }}" sizes="any"/>
- <link rel="icon" href="{{ '/favicon/icon.svg' | url }}" type="image/svg+xml"/>
- <link rel="apple-touch-icon" href="{{ '/favicon/192.png' | url }}"/>
- <link rel="manifest" href="{{ '/app.webmanifest' | url }}" crossorigin="use-credentials"/>
- <meta name="theme-color" content="{{ metadat.theme }}"/>
- <link as="style" href="{{ '/index.css' | url }}" rel="stylesheet"/>
- {% if syntaxhighlight %}<link as="style" href="{{ '/prism.css' | url }}" rel="stylesheet"/>{% endif %}
- <script type="module" src="{{ '/index.js' | url }}"></script>
- </head>
- <body>
- <header>
- <nav>
- <a href="#" id="nav-toogle">Sudomsg</a>
- {% for nav in navigator %}
- <a class="navlinks" href="{{ nav.url | url }}">{{ nav.title }}</a>
- {% endfor %}
- </nav>
- </header>
- <main>
- {{ content | safe }}
- </main>
- <footer>
- Subscribe: <a href="{{ metadata.feed.atom | url }}" >RSS</a>
- <a href="{{ metadata.feed.json | url }}" >JSON</a>
- </footer>
- </body>
-</html> \ No newline at end of file
diff --git a/src/layouts/page.11ty.js b/src/layouts/page.11ty.js
new file mode 100644
index 0000000..53b0bd8
--- /dev/null
+++ b/src/layouts/page.11ty.js
@@ -0,0 +1,14 @@
+module.exports = class {
+ data() {
+ return {
+ layout: "base",
+ };
+ }
+
+ render(data) {
+ return `<article>
+ <h1>${data.title}</h1>
+ ${data.content}
+ </article>`;
+ }
+};
diff --git a/src/layouts/post.11ty.js b/src/layouts/post.11ty.js
new file mode 100644
index 0000000..2cd725d
--- /dev/null
+++ b/src/layouts/post.11ty.js
@@ -0,0 +1,17 @@
+module.exports = class {
+ data() {
+ return {
+ layout: "page",
+ tags: [
+ "posts"
+ ]
+ };
+ }
+
+ render(data) {
+ return `<small>
+ <time datetime="${data.page.date.toISOString()}">${data.page.date.toDateString()}</time> - <a rel=author href="${data.metadata.author.url}">${data.metadata.author.name}</a>
+ </small>
+ ${data.content}`;
+ }
+};
diff --git a/src/layouts/post.njk b/src/layouts/post.njk
deleted file mode 100644
index f8a4aee..0000000
--- a/src/layouts/post.njk
+++ /dev/null
@@ -1,12 +0,0 @@
----
-layout: base.njk
-tags:
- - posts
----
-<article>
- <h1>{{ title }}</h1>
- <small>
- <time datetime="{{ date | datefmt }}">{{ date | datefmt }}</time> - <a href="{{ metadata.author.url }}">{{ metadata.author.name }}</a>
- </small>
- {{ content | safe }}
-</article> \ No newline at end of file