From 1d9bc704e2db5134d8d021d254fc5dba546287fe Mon Sep 17 00:00:00 2001 From: Lewis Dale Date: Tue, 2 Jan 2024 12:32:41 +0000 Subject: [PATCH] Adding og-images (hopefully) --- config/plugins/index.js | 2 + config/plugins/og-image.js | 17 + package-lock.json | 1301 ++++++++++++++++++++- package.json | 3 +- src/_includes/base.njk | 3 +- src/_includes/components/ogImage.njk | 12 + src/assets/fonts/SpaceGrotesk-Regular.ttf | Bin 0 -> 86592 bytes 7 files changed, 1335 insertions(+), 3 deletions(-) create mode 100644 config/plugins/og-image.js create mode 100644 src/_includes/components/ogImage.njk create mode 100644 src/assets/fonts/SpaceGrotesk-Regular.ttf diff --git a/config/plugins/index.js b/config/plugins/index.js index fdf8fc9..812ac40 100644 --- a/config/plugins/index.js +++ b/config/plugins/index.js @@ -3,6 +3,7 @@ const markdownPlugin = require('./markdown'); const rss = require('@11ty/eleventy-plugin-rss'); const syntaxHighlight = require("@11ty/eleventy-plugin-syntaxhighlight"); const imagePlugin = require('./image'); +const ogImagePlugin = require('./og-image'); module.exports = function(eleventyConfig) { eleventyConfig.addPlugin(syntaxHighlight); @@ -10,4 +11,5 @@ module.exports = function(eleventyConfig) { eleventyConfig.addPlugin(markdownPlugin); eleventyConfig.addPlugin(imagePlugin); eleventyConfig.addPlugin(EleventyRenderPlugin); + eleventyConfig.addPlugin(ogImagePlugin); } \ No newline at end of file diff --git a/config/plugins/og-image.js b/config/plugins/og-image.js new file mode 100644 index 0000000..cf11ab2 --- /dev/null +++ b/config/plugins/og-image.js @@ -0,0 +1,17 @@ +const ogImagePlugin = require('eleventy-plugin-og-image'); +const fs = require('node:fs'); + +module.exports = function (eleventyConfig) { + eleventyConfig.addPlugin(ogImagePlugin, { + satoriOptions: { + fonts: [ + { + name: 'Space Grotesk', + data: fs.readFileSync('./src/assets/fonts/SpaceGrotesk-Regular.ttf'), + weight: 500, + style: 'normal', + }, + ], + }, + }); +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index a038f70..0aa92e3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,8 @@ "tailwindcss": "^3.2.4" }, "devDependencies": { - "@11ty/eleventy-plugin-rss": "^1.2.0" + "@11ty/eleventy-plugin-rss": "^1.2.0", + "eleventy-plugin-og-image": "^2.1.1" } }, "node_modules/@11ty/dependency-tree": { @@ -280,6 +281,374 @@ "node": ">=6.9.0" } }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.11.tgz", + "integrity": "sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.11.tgz", + "integrity": "sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.11.tgz", + "integrity": "sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.11.tgz", + "integrity": "sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.11.tgz", + "integrity": "sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.11.tgz", + "integrity": "sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.11.tgz", + "integrity": "sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.11.tgz", + "integrity": "sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.11.tgz", + "integrity": "sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.11.tgz", + "integrity": "sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.11.tgz", + "integrity": "sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.11.tgz", + "integrity": "sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.11.tgz", + "integrity": "sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.11.tgz", + "integrity": "sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.11.tgz", + "integrity": "sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.11.tgz", + "integrity": "sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.11.tgz", + "integrity": "sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.11.tgz", + "integrity": "sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.11.tgz", + "integrity": "sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.11.tgz", + "integrity": "sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.11.tgz", + "integrity": "sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.11.tgz", + "integrity": "sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.11.tgz", + "integrity": "sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@iarna/toml": { "version": "2.2.5", "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz", @@ -415,6 +784,237 @@ "node": ">=14" } }, + "node_modules/@resvg/resvg-js": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js/-/resvg-js-2.6.0.tgz", + "integrity": "sha512-Tf3YpbBKcQn991KKcw/vg7vZf98v01seSv6CVxZBbRkL/xyjnoYB6KgrFL6zskT1A4dWC/vg77KyNOW+ePaNlA==", + "dev": true, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@resvg/resvg-js-android-arm-eabi": "2.6.0", + "@resvg/resvg-js-android-arm64": "2.6.0", + "@resvg/resvg-js-darwin-arm64": "2.6.0", + "@resvg/resvg-js-darwin-x64": "2.6.0", + "@resvg/resvg-js-linux-arm-gnueabihf": "2.6.0", + "@resvg/resvg-js-linux-arm64-gnu": "2.6.0", + "@resvg/resvg-js-linux-arm64-musl": "2.6.0", + "@resvg/resvg-js-linux-x64-gnu": "2.6.0", + "@resvg/resvg-js-linux-x64-musl": "2.6.0", + "@resvg/resvg-js-win32-arm64-msvc": "2.6.0", + "@resvg/resvg-js-win32-ia32-msvc": "2.6.0", + "@resvg/resvg-js-win32-x64-msvc": "2.6.0" + } + }, + "node_modules/@resvg/resvg-js-android-arm-eabi": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-android-arm-eabi/-/resvg-js-android-arm-eabi-2.6.0.tgz", + "integrity": "sha512-lJnZ/2P5aMocrFMW7HWhVne5gH82I8xH6zsfH75MYr4+/JOaVcGCTEQ06XFohGMdYRP3v05SSPLPvTM/RHjxfA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-android-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-android-arm64/-/resvg-js-android-arm64-2.6.0.tgz", + "integrity": "sha512-N527f529bjMwYWShZYfBD60dXA4Fux+D695QsHQ93BDYZSHUoOh1CUGUyICevnTxs7VgEl98XpArmUWBZQVMfQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-darwin-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-darwin-arm64/-/resvg-js-darwin-arm64-2.6.0.tgz", + "integrity": "sha512-MabUKLVayEwlPo0mIqAmMt+qESN8LltCvv5+GLgVga1avpUrkxj/fkU1TKm8kQegutUjbP/B0QuMuUr0uhF8ew==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-darwin-x64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-darwin-x64/-/resvg-js-darwin-x64-2.6.0.tgz", + "integrity": "sha512-zrFetdnSw/suXjmyxSjfDV7i61hahv6DDG6kM7BYN2yJ3Es5+BZtqYZTcIWogPJedYKmzN1YTMWGd/3f0ubFiA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-linux-arm-gnueabihf": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-arm-gnueabihf/-/resvg-js-linux-arm-gnueabihf-2.6.0.tgz", + "integrity": "sha512-sH4gxXt7v7dGwjGyzLwn7SFGvwZG6DQqLaZ11MmzbCwd9Zosy1TnmrMJfn6TJ7RHezmQMgBPi18bl55FZ1AT4A==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-linux-arm64-gnu": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-arm64-gnu/-/resvg-js-linux-arm64-gnu-2.6.0.tgz", + "integrity": "sha512-fCyMncqCJtrlANADIduYF4IfnWQ295UKib7DAxFXQhBsM9PLDTpizr0qemZcCNadcwSVHnAIzL4tliZhCM8P6A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-linux-arm64-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-arm64-musl/-/resvg-js-linux-arm64-musl-2.6.0.tgz", + "integrity": "sha512-ouLjTgBQHQyxLht4FdMPTvuY8xzJigM9EM2Tlu0llWkN1mKyTQrvYWi6TA6XnKdzDJHy7ZLpWpjZi7F5+Pg+Vg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-linux-x64-gnu": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-x64-gnu/-/resvg-js-linux-x64-gnu-2.6.0.tgz", + "integrity": "sha512-n3zC8DWsvxC1AwxpKFclIPapDFibs5XdIRoV/mcIlxlh0vseW1F49b97F33BtJQRmlntsqqN6GMMqx8byB7B+Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-linux-x64-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-x64-musl/-/resvg-js-linux-x64-musl-2.6.0.tgz", + "integrity": "sha512-n4tasK1HOlAxdTEROgYA1aCfsEKk0UOFDNd/AQTTZlTmCbHKXPq+O8npaaKlwXquxlVK8vrkcWbksbiGqbCAcw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-win32-arm64-msvc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-win32-arm64-msvc/-/resvg-js-win32-arm64-msvc-2.6.0.tgz", + "integrity": "sha512-X2+EoBJFwDI5LDVb51Sk7ldnVLitMGr9WwU/i21i3fAeAXZb3hM16k67DeTy16OYkT2dk/RfU1tP1wG+rWbz2Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-win32-ia32-msvc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-win32-ia32-msvc/-/resvg-js-win32-ia32-msvc-2.6.0.tgz", + "integrity": "sha512-L7oevWjQoUgK5W1fCKn0euSVemhDXVhrjtwqpc7MwBKKimYeiOshO1Li1pa8bBt5PESahenhWgdB6lav9O0fEg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@resvg/resvg-js-win32-x64-msvc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-win32-x64-msvc/-/resvg-js-win32-x64-msvc-2.6.0.tgz", + "integrity": "sha512-8lJlghb+Unki5AyKgsnFbRJwkEj9r1NpwyuBG8yEJiG1W9eEGl03R3I7bsVa3haof/3J1NlWf0rzSa1G++A2iw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@shuding/opentype.js": { + "version": "1.4.0-beta.0", + "resolved": "https://registry.npmjs.org/@shuding/opentype.js/-/opentype.js-1.4.0-beta.0.tgz", + "integrity": "sha512-3NgmNyH3l/Hv6EvsWJbsvpcpUba6R8IREQ83nH83cyakCw7uM1arZKNfHwv1Wz6jgqrF/j4x5ELvR6PnK9nTcA==", + "dev": true, + "dependencies": { + "fflate": "^0.7.3", + "string.prototype.codepointat": "^0.2.1" + }, + "bin": { + "ot": "bin/ot" + }, + "engines": { + "node": ">= 8.0.0" + } + }, "node_modules/@sindresorhus/slugify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@sindresorhus/slugify/-/slugify-1.1.2.tgz", @@ -869,6 +1469,15 @@ "node": ">= 6" } }, + "node_modules/camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/caniuse-api": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", @@ -1039,6 +1648,27 @@ "node": ">= 8" } }, + "node_modules/css-background-parser": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/css-background-parser/-/css-background-parser-0.1.0.tgz", + "integrity": "sha512-2EZLisiZQ+7m4wwur/qiYJRniHX4K5Tc9w93MT3AS0WS1u5kaZ4FKXlOTBhOjc+CgEgPiGY+fX1yWD8UwpEqUA==", + "dev": true + }, + "node_modules/css-box-shadow": { + "version": "1.0.0-3", + "resolved": "https://registry.npmjs.org/css-box-shadow/-/css-box-shadow-1.0.0-3.tgz", + "integrity": "sha512-9jaqR6e7Ohds+aWwmhe6wILJ99xYQbfmK9QQB9CcMjDbTxPZjwEmUQpU91OG05Xgm8BahT5fW+svbsQGjS/zPg==", + "dev": true + }, + "node_modules/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/css-declaration-sorter": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz", @@ -1116,6 +1746,17 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "dev": true, + "dependencies": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, "node_modules/css-tree": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", @@ -1480,6 +2121,30 @@ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.286.tgz", "integrity": "sha512-Vp3CVhmYpgf4iXNKAucoQUDcCrBQX3XLBtwgFqP9BUXuucgvAV9zWp1kYU7LL9j4++s9O+12cb3wMtN4SJy6UQ==" }, + "node_modules/eleventy-plugin-og-image": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/eleventy-plugin-og-image/-/eleventy-plugin-og-image-2.1.1.tgz", + "integrity": "sha512-Huwqe9MHPNIhLz3hw1j7rKqx6qAZiM/kjI7RosO5a3ZYyNrQWRYeu22zUPcKaklznQpBKSCCCEerUuEELmvlrQ==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@11ty/eleventy-utils": "^1.0.1", + "@resvg/resvg-js": "^2.2.0", + "@sindresorhus/slugify": "^1.1.2", + "esbuild": "^0.19.2", + "node-fetch": "^2.6.8", + "satori": "^0.10.1", + "satori-html": "^0.3.2", + "sharp": "^0.32.0", + "yoga-wasm-web": "^0.3.2" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "@11ty/eleventy": ">=2.0.0-beta.1" + } + }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -1611,6 +2276,44 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/esbuild": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.11.tgz", + "integrity": "sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.19.11", + "@esbuild/android-arm": "0.19.11", + "@esbuild/android-arm64": "0.19.11", + "@esbuild/android-x64": "0.19.11", + "@esbuild/darwin-arm64": "0.19.11", + "@esbuild/darwin-x64": "0.19.11", + "@esbuild/freebsd-arm64": "0.19.11", + "@esbuild/freebsd-x64": "0.19.11", + "@esbuild/linux-arm": "0.19.11", + "@esbuild/linux-arm64": "0.19.11", + "@esbuild/linux-ia32": "0.19.11", + "@esbuild/linux-loong64": "0.19.11", + "@esbuild/linux-mips64el": "0.19.11", + "@esbuild/linux-ppc64": "0.19.11", + "@esbuild/linux-riscv64": "0.19.11", + "@esbuild/linux-s390x": "0.19.11", + "@esbuild/linux-x64": "0.19.11", + "@esbuild/netbsd-x64": "0.19.11", + "@esbuild/openbsd-x64": "0.19.11", + "@esbuild/sunos-x64": "0.19.11", + "@esbuild/win32-arm64": "0.19.11", + "@esbuild/win32-ia32": "0.19.11", + "@esbuild/win32-x64": "0.19.11" + } + }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -1704,6 +2407,12 @@ "reusify": "^1.0.4" } }, + "node_modules/fflate": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.7.4.tgz", + "integrity": "sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==", + "dev": true + }, "node_modules/filelist": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", @@ -2196,6 +2905,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/hex-rgb": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/hex-rgb/-/hex-rgb-4.3.0.tgz", + "integrity": "sha512-Ox1pJVrDCyGHMG9CFg1tmrRUMRPRsAWYc/PinY0XzJU4K7y7vjNoLKIQ7BR5UJMCxNN8EM1MNDmHWA/B3aZUuw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", @@ -2707,6 +3428,25 @@ "node": ">=10" } }, + "node_modules/linebreak": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/linebreak/-/linebreak-1.1.0.tgz", + "integrity": "sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==", + "dev": true, + "dependencies": { + "base64-js": "0.0.8", + "unicode-trie": "^2.0.0" + } + }, + "node_modules/linebreak/node_modules/base64-js": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", + "integrity": "sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/linkedom": { "version": "0.14.21", "resolved": "https://registry.npmjs.org/linkedom/-/linkedom-0.14.21.tgz", @@ -3545,6 +4285,22 @@ "node": ">=8" } }, + "node_modules/pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==", + "dev": true + }, + "node_modules/parse-css-color": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/parse-css-color/-/parse-css-color-0.2.1.tgz", + "integrity": "sha512-bwS/GGIFV3b6KS4uwpzCFj4w297Yl3uqnSgIPsoQkx7GMLROXfMnWvxfNkL0oh8HVhZA4hvJoEoEIqonfJ3BWg==", + "dev": true, + "dependencies": { + "color-name": "^1.1.4", + "hex-rgb": "^4.1.0" + } + }, "node_modules/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -4789,6 +5545,42 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/satori": { + "version": "0.10.11", + "resolved": "https://registry.npmjs.org/satori/-/satori-0.10.11.tgz", + "integrity": "sha512-yLm1xPRPZUaKcBZJ6nmezoJjHB4MqV8x7Mu0PyZUJodRWRDD27UbeMwzuY9LEGG57WYLO4CQsGPlbHWV1Ex9TQ==", + "dev": true, + "dependencies": { + "@shuding/opentype.js": "1.4.0-beta.0", + "css-background-parser": "^0.1.0", + "css-box-shadow": "1.0.0-3", + "css-to-react-native": "^3.0.0", + "emoji-regex": "^10.2.1", + "escape-html": "^1.0.3", + "linebreak": "^1.1.0", + "parse-css-color": "^0.2.1", + "postcss-value-parser": "^4.2.0", + "yoga-wasm-web": "^0.3.3" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/satori-html": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/satori-html/-/satori-html-0.3.2.tgz", + "integrity": "sha512-wjTh14iqADFKDK80e51/98MplTGfxz2RmIzh0GqShlf4a67+BooLywF17TvJPD6phO0Hxm7Mf1N5LtRYvdkYRA==", + "dev": true, + "dependencies": { + "ultrahtml": "^1.2.0" + } + }, + "node_modules/satori/node_modules/emoji-regex": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", + "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", + "dev": true + }, "node_modules/section-matter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", @@ -5111,6 +5903,12 @@ "node": ">=8" } }, + "node_modules/string.prototype.codepointat": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz", + "integrity": "sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==", + "dev": true + }, "node_modules/string.prototype.padend": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz", @@ -5402,6 +6200,12 @@ "resolved": "https://registry.npmjs.org/thenby/-/thenby-1.3.4.tgz", "integrity": "sha512-89Gi5raiWA3QZ4b2ePcEwswC3me9JIg+ToSgtE0JWeCynLnLxNr/f9G+xfo9K+Oj4AFdom8YNJjibIARTJmapQ==" }, + "node_modules/tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + "dev": true + }, "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -5477,6 +6281,12 @@ "resolved": "https://registry.npmjs.org/uhyphen/-/uhyphen-0.1.0.tgz", "integrity": "sha512-o0QVGuFg24FK765Qdd5kk0zU/U4dEsCtN/GSiwNI9i8xsSVtjIAOdTaVhLwZ1nrbWxFVMxNDDl+9fednsOMsBw==" }, + "node_modules/ultrahtml": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ultrahtml/-/ultrahtml-1.5.2.tgz", + "integrity": "sha512-qh4mBffhlkiXwDAOxvSGxhL0QEQsTbnP9BozOK3OYPEGvPvdWzvAUaXNtUSMdNsKDtuyjEbyVUPFZ52SSLhLqw==", + "dev": true + }, "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -5491,6 +6301,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/unicode-trie": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", + "integrity": "sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==", + "dev": true, + "dependencies": { + "pako": "^0.2.5", + "tiny-inflate": "^1.0.0" + } + }, "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -5738,6 +6558,12 @@ "engines": { "node": ">=12" } + }, + "node_modules/yoga-wasm-web": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/yoga-wasm-web/-/yoga-wasm-web-0.3.3.tgz", + "integrity": "sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==", + "dev": true } }, "dependencies": { @@ -5907,6 +6733,167 @@ "to-fast-properties": "^2.0.0" } }, + "@esbuild/aix-ppc64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.11.tgz", + "integrity": "sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.11.tgz", + "integrity": "sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.11.tgz", + "integrity": "sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==", + "dev": true, + "optional": true + }, + "@esbuild/android-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.11.tgz", + "integrity": "sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.11.tgz", + "integrity": "sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.11.tgz", + "integrity": "sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.11.tgz", + "integrity": "sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.11.tgz", + "integrity": "sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.11.tgz", + "integrity": "sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.11.tgz", + "integrity": "sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ia32": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.11.tgz", + "integrity": "sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-loong64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.11.tgz", + "integrity": "sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-mips64el": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.11.tgz", + "integrity": "sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ppc64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.11.tgz", + "integrity": "sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-riscv64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.11.tgz", + "integrity": "sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-s390x": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.11.tgz", + "integrity": "sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==", + "dev": true, + "optional": true + }, + "@esbuild/linux-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.11.tgz", + "integrity": "sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==", + "dev": true, + "optional": true + }, + "@esbuild/netbsd-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.11.tgz", + "integrity": "sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.11.tgz", + "integrity": "sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==", + "dev": true, + "optional": true + }, + "@esbuild/sunos-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.11.tgz", + "integrity": "sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==", + "dev": true, + "optional": true + }, + "@esbuild/win32-arm64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.11.tgz", + "integrity": "sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==", + "dev": true, + "optional": true + }, + "@esbuild/win32-ia32": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.11.tgz", + "integrity": "sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==", + "dev": true, + "optional": true + }, + "@esbuild/win32-x64": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.11.tgz", + "integrity": "sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==", + "dev": true, + "optional": true + }, "@iarna/toml": { "version": "2.2.5", "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz", @@ -5999,6 +6986,120 @@ "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", "optional": true }, + "@resvg/resvg-js": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js/-/resvg-js-2.6.0.tgz", + "integrity": "sha512-Tf3YpbBKcQn991KKcw/vg7vZf98v01seSv6CVxZBbRkL/xyjnoYB6KgrFL6zskT1A4dWC/vg77KyNOW+ePaNlA==", + "dev": true, + "requires": { + "@resvg/resvg-js-android-arm-eabi": "2.6.0", + "@resvg/resvg-js-android-arm64": "2.6.0", + "@resvg/resvg-js-darwin-arm64": "2.6.0", + "@resvg/resvg-js-darwin-x64": "2.6.0", + "@resvg/resvg-js-linux-arm-gnueabihf": "2.6.0", + "@resvg/resvg-js-linux-arm64-gnu": "2.6.0", + "@resvg/resvg-js-linux-arm64-musl": "2.6.0", + "@resvg/resvg-js-linux-x64-gnu": "2.6.0", + "@resvg/resvg-js-linux-x64-musl": "2.6.0", + "@resvg/resvg-js-win32-arm64-msvc": "2.6.0", + "@resvg/resvg-js-win32-ia32-msvc": "2.6.0", + "@resvg/resvg-js-win32-x64-msvc": "2.6.0" + } + }, + "@resvg/resvg-js-android-arm-eabi": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-android-arm-eabi/-/resvg-js-android-arm-eabi-2.6.0.tgz", + "integrity": "sha512-lJnZ/2P5aMocrFMW7HWhVne5gH82I8xH6zsfH75MYr4+/JOaVcGCTEQ06XFohGMdYRP3v05SSPLPvTM/RHjxfA==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-android-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-android-arm64/-/resvg-js-android-arm64-2.6.0.tgz", + "integrity": "sha512-N527f529bjMwYWShZYfBD60dXA4Fux+D695QsHQ93BDYZSHUoOh1CUGUyICevnTxs7VgEl98XpArmUWBZQVMfQ==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-darwin-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-darwin-arm64/-/resvg-js-darwin-arm64-2.6.0.tgz", + "integrity": "sha512-MabUKLVayEwlPo0mIqAmMt+qESN8LltCvv5+GLgVga1avpUrkxj/fkU1TKm8kQegutUjbP/B0QuMuUr0uhF8ew==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-darwin-x64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-darwin-x64/-/resvg-js-darwin-x64-2.6.0.tgz", + "integrity": "sha512-zrFetdnSw/suXjmyxSjfDV7i61hahv6DDG6kM7BYN2yJ3Es5+BZtqYZTcIWogPJedYKmzN1YTMWGd/3f0ubFiA==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-linux-arm-gnueabihf": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-arm-gnueabihf/-/resvg-js-linux-arm-gnueabihf-2.6.0.tgz", + "integrity": "sha512-sH4gxXt7v7dGwjGyzLwn7SFGvwZG6DQqLaZ11MmzbCwd9Zosy1TnmrMJfn6TJ7RHezmQMgBPi18bl55FZ1AT4A==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-linux-arm64-gnu": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-arm64-gnu/-/resvg-js-linux-arm64-gnu-2.6.0.tgz", + "integrity": "sha512-fCyMncqCJtrlANADIduYF4IfnWQ295UKib7DAxFXQhBsM9PLDTpizr0qemZcCNadcwSVHnAIzL4tliZhCM8P6A==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-linux-arm64-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-arm64-musl/-/resvg-js-linux-arm64-musl-2.6.0.tgz", + "integrity": "sha512-ouLjTgBQHQyxLht4FdMPTvuY8xzJigM9EM2Tlu0llWkN1mKyTQrvYWi6TA6XnKdzDJHy7ZLpWpjZi7F5+Pg+Vg==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-linux-x64-gnu": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-x64-gnu/-/resvg-js-linux-x64-gnu-2.6.0.tgz", + "integrity": "sha512-n3zC8DWsvxC1AwxpKFclIPapDFibs5XdIRoV/mcIlxlh0vseW1F49b97F33BtJQRmlntsqqN6GMMqx8byB7B+Q==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-linux-x64-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-linux-x64-musl/-/resvg-js-linux-x64-musl-2.6.0.tgz", + "integrity": "sha512-n4tasK1HOlAxdTEROgYA1aCfsEKk0UOFDNd/AQTTZlTmCbHKXPq+O8npaaKlwXquxlVK8vrkcWbksbiGqbCAcw==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-win32-arm64-msvc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-win32-arm64-msvc/-/resvg-js-win32-arm64-msvc-2.6.0.tgz", + "integrity": "sha512-X2+EoBJFwDI5LDVb51Sk7ldnVLitMGr9WwU/i21i3fAeAXZb3hM16k67DeTy16OYkT2dk/RfU1tP1wG+rWbz2Q==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-win32-ia32-msvc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-win32-ia32-msvc/-/resvg-js-win32-ia32-msvc-2.6.0.tgz", + "integrity": "sha512-L7oevWjQoUgK5W1fCKn0euSVemhDXVhrjtwqpc7MwBKKimYeiOshO1Li1pa8bBt5PESahenhWgdB6lav9O0fEg==", + "dev": true, + "optional": true + }, + "@resvg/resvg-js-win32-x64-msvc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@resvg/resvg-js-win32-x64-msvc/-/resvg-js-win32-x64-msvc-2.6.0.tgz", + "integrity": "sha512-8lJlghb+Unki5AyKgsnFbRJwkEj9r1NpwyuBG8yEJiG1W9eEGl03R3I7bsVa3haof/3J1NlWf0rzSa1G++A2iw==", + "dev": true, + "optional": true + }, + "@shuding/opentype.js": { + "version": "1.4.0-beta.0", + "resolved": "https://registry.npmjs.org/@shuding/opentype.js/-/opentype.js-1.4.0-beta.0.tgz", + "integrity": "sha512-3NgmNyH3l/Hv6EvsWJbsvpcpUba6R8IREQ83nH83cyakCw7uM1arZKNfHwv1Wz6jgqrF/j4x5ELvR6PnK9nTcA==", + "dev": true, + "requires": { + "fflate": "^0.7.3", + "string.prototype.codepointat": "^0.2.1" + } + }, "@sindresorhus/slugify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@sindresorhus/slugify/-/slugify-1.1.2.tgz", @@ -6305,6 +7406,12 @@ "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" }, + "camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "dev": true + }, "caniuse-api": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", @@ -6433,6 +7540,24 @@ "which": "^2.0.1" } }, + "css-background-parser": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/css-background-parser/-/css-background-parser-0.1.0.tgz", + "integrity": "sha512-2EZLisiZQ+7m4wwur/qiYJRniHX4K5Tc9w93MT3AS0WS1u5kaZ4FKXlOTBhOjc+CgEgPiGY+fX1yWD8UwpEqUA==", + "dev": true + }, + "css-box-shadow": { + "version": "1.0.0-3", + "resolved": "https://registry.npmjs.org/css-box-shadow/-/css-box-shadow-1.0.0-3.tgz", + "integrity": "sha512-9jaqR6e7Ohds+aWwmhe6wILJ99xYQbfmK9QQB9CcMjDbTxPZjwEmUQpU91OG05Xgm8BahT5fW+svbsQGjS/zPg==", + "dev": true + }, + "css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", + "dev": true + }, "css-declaration-sorter": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz", @@ -6486,6 +7611,17 @@ } } }, + "css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", + "dev": true, + "requires": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, "css-tree": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", @@ -6736,6 +7872,23 @@ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.286.tgz", "integrity": "sha512-Vp3CVhmYpgf4iXNKAucoQUDcCrBQX3XLBtwgFqP9BUXuucgvAV9zWp1kYU7LL9j4++s9O+12cb3wMtN4SJy6UQ==" }, + "eleventy-plugin-og-image": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/eleventy-plugin-og-image/-/eleventy-plugin-og-image-2.1.1.tgz", + "integrity": "sha512-Huwqe9MHPNIhLz3hw1j7rKqx6qAZiM/kjI7RosO5a3ZYyNrQWRYeu22zUPcKaklznQpBKSCCCEerUuEELmvlrQ==", + "dev": true, + "requires": { + "@11ty/eleventy-utils": "^1.0.1", + "@resvg/resvg-js": "^2.2.0", + "@sindresorhus/slugify": "^1.1.2", + "esbuild": "^0.19.2", + "node-fetch": "^2.6.8", + "satori": "^0.10.1", + "satori-html": "^0.3.2", + "sharp": "^0.32.0", + "yoga-wasm-web": "^0.3.2" + } + }, "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -6842,6 +7995,37 @@ "is-symbol": "^1.0.2" } }, + "esbuild": { + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.11.tgz", + "integrity": "sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==", + "dev": true, + "requires": { + "@esbuild/aix-ppc64": "0.19.11", + "@esbuild/android-arm": "0.19.11", + "@esbuild/android-arm64": "0.19.11", + "@esbuild/android-x64": "0.19.11", + "@esbuild/darwin-arm64": "0.19.11", + "@esbuild/darwin-x64": "0.19.11", + "@esbuild/freebsd-arm64": "0.19.11", + "@esbuild/freebsd-x64": "0.19.11", + "@esbuild/linux-arm": "0.19.11", + "@esbuild/linux-arm64": "0.19.11", + "@esbuild/linux-ia32": "0.19.11", + "@esbuild/linux-loong64": "0.19.11", + "@esbuild/linux-mips64el": "0.19.11", + "@esbuild/linux-ppc64": "0.19.11", + "@esbuild/linux-riscv64": "0.19.11", + "@esbuild/linux-s390x": "0.19.11", + "@esbuild/linux-x64": "0.19.11", + "@esbuild/netbsd-x64": "0.19.11", + "@esbuild/openbsd-x64": "0.19.11", + "@esbuild/sunos-x64": "0.19.11", + "@esbuild/win32-arm64": "0.19.11", + "@esbuild/win32-ia32": "0.19.11", + "@esbuild/win32-x64": "0.19.11" + } + }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -6910,6 +8094,12 @@ "reusify": "^1.0.4" } }, + "fflate": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.7.4.tgz", + "integrity": "sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==", + "dev": true + }, "filelist": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", @@ -7258,6 +8448,12 @@ "has-symbols": "^1.0.2" } }, + "hex-rgb": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/hex-rgb/-/hex-rgb-4.3.0.tgz", + "integrity": "sha512-Ox1pJVrDCyGHMG9CFg1tmrRUMRPRsAWYc/PinY0XzJU4K7y7vjNoLKIQ7BR5UJMCxNN8EM1MNDmHWA/B3aZUuw==", + "dev": true + }, "hosted-git-info": { "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", @@ -7602,6 +8798,24 @@ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==" }, + "linebreak": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/linebreak/-/linebreak-1.1.0.tgz", + "integrity": "sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==", + "dev": true, + "requires": { + "base64-js": "0.0.8", + "unicode-trie": "^2.0.0" + }, + "dependencies": { + "base64-js": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz", + "integrity": "sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw==", + "dev": true + } + } + }, "linkedom": { "version": "0.14.21", "resolved": "https://registry.npmjs.org/linkedom/-/linkedom-0.14.21.tgz", @@ -8209,6 +9423,22 @@ "p-finally": "^1.0.0" } }, + "pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==", + "dev": true + }, + "parse-css-color": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/parse-css-color/-/parse-css-color-0.2.1.tgz", + "integrity": "sha512-bwS/GGIFV3b6KS4uwpzCFj4w297Yl3uqnSgIPsoQkx7GMLROXfMnWvxfNkL0oh8HVhZA4hvJoEoEIqonfJ3BWg==", + "dev": true, + "requires": { + "color-name": "^1.1.4", + "hex-rgb": "^4.1.0" + } + }, "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -9039,6 +10269,41 @@ "is-regex": "^1.1.4" } }, + "satori": { + "version": "0.10.11", + "resolved": "https://registry.npmjs.org/satori/-/satori-0.10.11.tgz", + "integrity": "sha512-yLm1xPRPZUaKcBZJ6nmezoJjHB4MqV8x7Mu0PyZUJodRWRDD27UbeMwzuY9LEGG57WYLO4CQsGPlbHWV1Ex9TQ==", + "dev": true, + "requires": { + "@shuding/opentype.js": "1.4.0-beta.0", + "css-background-parser": "^0.1.0", + "css-box-shadow": "1.0.0-3", + "css-to-react-native": "^3.0.0", + "emoji-regex": "^10.2.1", + "escape-html": "^1.0.3", + "linebreak": "^1.1.0", + "parse-css-color": "^0.2.1", + "postcss-value-parser": "^4.2.0", + "yoga-wasm-web": "^0.3.3" + }, + "dependencies": { + "emoji-regex": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", + "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", + "dev": true + } + } + }, + "satori-html": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/satori-html/-/satori-html-0.3.2.tgz", + "integrity": "sha512-wjTh14iqADFKDK80e51/98MplTGfxz2RmIzh0GqShlf4a67+BooLywF17TvJPD6phO0Hxm7Mf1N5LtRYvdkYRA==", + "dev": true, + "requires": { + "ultrahtml": "^1.2.0" + } + }, "section-matter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", @@ -9272,6 +10537,12 @@ "strip-ansi": "^6.0.1" } }, + "string.prototype.codepointat": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz", + "integrity": "sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==", + "dev": true + }, "string.prototype.padend": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz", @@ -9467,6 +10738,12 @@ "resolved": "https://registry.npmjs.org/thenby/-/thenby-1.3.4.tgz", "integrity": "sha512-89Gi5raiWA3QZ4b2ePcEwswC3me9JIg+ToSgtE0JWeCynLnLxNr/f9G+xfo9K+Oj4AFdom8YNJjibIARTJmapQ==" }, + "tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + "dev": true + }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -9524,6 +10801,12 @@ "resolved": "https://registry.npmjs.org/uhyphen/-/uhyphen-0.1.0.tgz", "integrity": "sha512-o0QVGuFg24FK765Qdd5kk0zU/U4dEsCtN/GSiwNI9i8xsSVtjIAOdTaVhLwZ1nrbWxFVMxNDDl+9fednsOMsBw==" }, + "ultrahtml": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/ultrahtml/-/ultrahtml-1.5.2.tgz", + "integrity": "sha512-qh4mBffhlkiXwDAOxvSGxhL0QEQsTbnP9BozOK3OYPEGvPvdWzvAUaXNtUSMdNsKDtuyjEbyVUPFZ52SSLhLqw==", + "dev": true + }, "unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -9535,6 +10818,16 @@ "which-boxed-primitive": "^1.0.2" } }, + "unicode-trie": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-trie/-/unicode-trie-2.0.0.tgz", + "integrity": "sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==", + "dev": true, + "requires": { + "pako": "^0.2.5", + "tiny-inflate": "^1.0.0" + } + }, "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -9700,6 +10993,12 @@ "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + }, + "yoga-wasm-web": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/yoga-wasm-web/-/yoga-wasm-web-0.3.3.tgz", + "integrity": "sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==", + "dev": true } } } diff --git a/package.json b/package.json index 8cec187..670d420 100644 --- a/package.json +++ b/package.json @@ -44,6 +44,7 @@ "tailwindcss": "^3.2.4" }, "devDependencies": { - "@11ty/eleventy-plugin-rss": "^1.2.0" + "@11ty/eleventy-plugin-rss": "^1.2.0", + "eleventy-plugin-og-image": "^2.1.1" } } diff --git a/src/_includes/base.njk b/src/_includes/base.njk index 9cdc0e1..6de4900 100644 --- a/src/_includes/base.njk +++ b/src/_includes/base.njk @@ -26,7 +26,7 @@ - + @@ -35,6 +35,7 @@ + {% ogImage "./src/_includes/components/ogImage.njk", { title: pageTitle or title, subTitle: description } %}
diff --git a/src/_includes/components/ogImage.njk b/src/_includes/components/ogImage.njk new file mode 100644 index 0000000..e5e47c6 --- /dev/null +++ b/src/_includes/components/ogImage.njk @@ -0,0 +1,12 @@ +
+
+
+

{{ title }}

+

{{ subTitle }}

+
+
LD
+
+

LewisDale.dev

+
+
+
\ No newline at end of file diff --git a/src/assets/fonts/SpaceGrotesk-Regular.ttf b/src/assets/fonts/SpaceGrotesk-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..981bcf5b2cb0a1ca43dcee7577015c0bfbdf91fb GIT binary patch literal 86592 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 Sp;;r@Vp7<@IS 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 literal 0 HcmV?d00001