aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--.eleventy.js11
-rw-r--r--.eslintrc.json19
-rw-r--r--.github/dependabot.yml5
-rw-r--r--.github/workflows/build.yml12
-rw-r--r--.github/workflows/pull_requests.yml4
-rw-r--r--.gitignore4
-rw-r--r--README.md8
-rw-r--r--config.json3
-rw-r--r--gatsby-config.ts58
-rw-r--r--package-lock.json29448
-rw-r--r--package.json42
-rw-r--r--publish-badge.svg20
-rw-r--r--src/components/BlockLink.tsx17
-rw-r--r--src/components/Layout.tsx35
-rw-r--r--src/components/SEO.tsx17
-rw-r--r--src/components/index.ts4
-rw-r--r--src/config.ts23
-rw-r--r--src/hooks/SiteMetadata.ts21
-rw-r--r--src/hooks/SiteVersion.ts19
-rw-r--r--src/hooks/index.ts4
-rw-r--r--src/pages/404.njk10
-rw-r--r--src/pages/404.tsx23
-rw-r--r--src/pages/index.njk33
-rw-r--r--src/pages/index.tsx73
-rw-r--r--src/static/favicon-32x32.pngbin0 -> 3058 bytes
-rw-r--r--src/static/icons/code.svg4
-rw-r--r--src/static/icons/github.svg4
-rw-r--r--src/static/icons/icon-144x144.pngbin0 -> 42763 bytes
-rw-r--r--src/static/icons/icon-192x192.pngbin0 -> 72918 bytes
-rw-r--r--src/static/icons/icon-256x256.pngbin0 -> 122738 bytes
-rw-r--r--src/static/icons/icon-384x384.pngbin0 -> 252395 bytes
-rw-r--r--src/static/icons/icon-48x48.pngbin0 -> 6080 bytes
-rw-r--r--src/static/icons/icon-512x512.pngbin0 -> 414864 bytes
-rw-r--r--src/static/icons/icon-72x72.pngbin0 -> 11641 bytes
-rw-r--r--src/static/icons/icon-96x96.pngbin0 -> 20144 bytes
-rw-r--r--src/static/icons/mastodon.svg4
-rw-r--r--src/static/manifest.webmanifest34
-rw-r--r--src/static/static/81e0da73927123f3f6b0c9a2d0750e76/6cac9/main.webpbin0 -> 13260 bytes
-rw-r--r--src/static/static/81e0da73927123f3f6b0c9a2d0750e76/88e48/main.pngbin0 -> 43389 bytes
-rw-r--r--src/static/styles.css205
-rw-r--r--src/styles/BlockAnchor.ts21
-rw-r--r--src/styles/BlockBody.ts27
-rw-r--r--src/styles/BlockHeader.ts12
-rw-r--r--src/styles/Content.ts8
-rw-r--r--src/styles/Footer.ts13
-rw-r--r--src/styles/index.ts9
-rw-r--r--src/styles/main.css41
-rw-r--r--src/templates/layouts/page.njk37
-rw-r--r--tsconfig.json12
49 files changed, 2020 insertions, 28324 deletions
diff --git a/.eleventy.js b/.eleventy.js
new file mode 100644
index 0000000..02b8411
--- /dev/null
+++ b/.eleventy.js
@@ -0,0 +1,11 @@
+// @ts-check
+require("ts-node").register({
+ files: true,
+ compilerOptions: {
+ module: "commonjs",
+ },
+})
+
+const { default: eleventyConfig } = require("./src/config.ts")
+
+module.exports = eleventyConfig \ No newline at end of file
diff --git a/.eslintrc.json b/.eslintrc.json
index a2f2202..9189345 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -2,30 +2,17 @@
"parser": "@typescript-eslint/parser", // Specifies the ESLint parser
"extends": [
"eslint:recommended",
- "plugin:react/recommended",
"plugin:@typescript-eslint/recommended",
"plugin:prettier/recommended"
],
- "settings": {
- "react": {
- "version": "detect"
- }
- },
+ "plugins": ["@typescript-eslint"],
"env": {
- "browser": true,
+ "browser": false,
"node": true,
"es6": true
},
- "plugins": ["@typescript-eslint", "react"],
"parserOptions": {
- "ecmaFeatures": {
- "jsx": true
- },
"ecmaVersion": 2018, // Allows for the parsing of modern ECMAScript features
"sourceType": "module" // Allows for the use of imports
- },
- "rules": {
- "react/prop-types": "off", // Disable prop-types as we use TypeScript for type checking
- "@typescript-eslint/explicit-function-return-type": "off"
}
-}
+} \ No newline at end of file
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 64e8a62..73cdd92 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -10,3 +10,8 @@ updates:
schedule:
day: "saturday"
interval: "weekly"
+ - package-ecosystem: "github-actions"
+ directory: "/"
+ schedule:
+ day: "saturday"
+ interval: "weekly" \ No newline at end of file
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 295ed07..56f4d5a 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -30,9 +30,9 @@ jobs:
uses: mingjun97/file-regex-replace@v1
if: steps.filter.outputs.source == 'true'
with:
- regex: 'version: "[0-9]*",'
- replacement: 'version: "${{ steps.date.outputs.DATE_VERSION }}",'
- include: 'gatsby-config\.ts'
+ regex: '"version": "[0-9]*",'
+ replacement: '"version": "${{ steps.date.outputs.DATE_VERSION }}",'
+ include: 'config\.json'
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
@@ -42,10 +42,8 @@ jobs:
- name: Install Node.js packages
run: npm ci
- - name: Clean Gatsby cache
- run: npm run clean
- - name: Run Gatsby Build
- run: npm run build --if-present
+ - name: Run Eleventy Build
+ run: npm run build
- name: Run post-build
run: npm run post-build
- name: Commit public changes
diff --git a/.github/workflows/pull_requests.yml b/.github/workflows/pull_requests.yml
index 04cb713..90ed845 100644
--- a/.github/workflows/pull_requests.yml
+++ b/.github/workflows/pull_requests.yml
@@ -16,7 +16,7 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Check changes (prevent pushing to public/)
- uses: xalvarez/prevent-file-change-action@v1.3.1
+ uses: xalvarez/prevent-file-change-action@v1.5.1
with:
githubToken: ${{ secrets.GITHUB_TOKEN }}
pattern: public/
@@ -28,4 +28,4 @@ jobs:
- name: Install Node.js packages
run: npm ci
- name: Run linter
- run: npm run lint
+ run: npm run lint \ No newline at end of file
diff --git a/.gitignore b/.gitignore
index c77e233..700565b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,2 @@
node_modules/
-.cache/
-public/page-data/dev-404-page/
-src/gatsby-types.d.ts \ No newline at end of file
+.cache/ \ No newline at end of file
diff --git a/README.md b/README.md
index a853df7..943f0e0 100644
--- a/README.md
+++ b/README.md
@@ -1,16 +1,12 @@
# [submelon.dev](https://submelon.dev)
-[![submelon.dev build](https://github.com/kjhoerr/submelon.dev/actions/workflows/build.yml/badge.svg)](https://github.com/kjhoerr/submelon.dev/actions/workflows/build.yml) [![License: BlueOak 1.0.0](https://img.shields.io/badge/License-BlueOak_1.0.0-green.svg)](https://blueoakcouncil.org/license/1.0.0) ![Date of last publish](public/publish-badge.svg)
+[![submelon.dev build](https://github.com/kjhoerr/submelon.dev/actions/workflows/build.yml/badge.svg)](https://github.com/kjhoerr/submelon.dev/actions/workflows/build.yml) [![License: BlueOak 1.0.0](https://img.shields.io/badge/License-BlueOak_1.0.0-green.svg)](https://blueoakcouncil.org/license/1.0.0) ![Date of last publish](publish-badge.svg)
A "link-in-bio" site of sorts, with other resources available for reference.
## Description
-This is a static site generated and enabled using GatsbyJS. All sources including CSS were produced solely by the author, Kevin Hoerr.
-
-## History
-
-This was originally a purely static site (no JS/TS) that has morphed to permit use of newer technologies and integrations for the ease of updating. There are no server integrations outside of serving static assets. At present, this site does not make use of any scripting features to enable any actual front-end features. The components are built in ReactJS and compiled using the GatsbyJS framework.
+This is a static site that is not generated (anymore). All sources except for the brand icons were produced solely by the author, Kevin Hoerr.
## License
diff --git a/config.json b/config.json
new file mode 100644
index 0000000..2a59715
--- /dev/null
+++ b/config.json
@@ -0,0 +1,3 @@
+{
+ "version": "1688845858"
+} \ No newline at end of file
diff --git a/gatsby-config.ts b/gatsby-config.ts
deleted file mode 100644
index 2303e6e..0000000
--- a/gatsby-config.ts
+++ /dev/null
@@ -1,58 +0,0 @@
-module.exports = {
- siteMetadata: {
- title: "Kevin J Hoerr <kjhoerr@submelon.tech>",
- description: "The official website of Kevin Hoerr, developer of websites.",
- author: "Kevin J Hoerr",
- version: "1688845858",
- },
- graphqlTypegen: true,
- plugins: [
- "gatsby-plugin-styled-components",
- "gatsby-plugin-image",
- {
- resolve: `gatsby-plugin-manifest`,
- options: {
- name: `Kevin J Hoerr`,
- short_name: `kjhoerr`,
- start_url: `/`,
- background_color: `#e1e1e1`,
- theme_color: `#e1e1e1`,
- display: `browser`,
- icon: `src/images/favicon-70x70.png`,
- cache_busting_mode: `none`,
- },
- },
- {
- resolve: `gatsby-plugin-offline`,
- options: {
- workboxConfig: {
- globPatterns: ["**/icons*"],
- },
- },
- },
- "gatsby-plugin-sharp",
- "gatsby-transformer-sharp",
- {
- resolve: "gatsby-source-filesystem",
- options: {
- name: "images",
- path: "./src/images/",
- },
- __key: "images",
- },
- {
- resolve: "gatsby-source-filesystem",
- options: {
- name: "pages",
- path: "./src/pages/",
- },
- __key: "pages",
- },
- {
- resolve: "gatsby-plugin-html-attributes",
- options: {
- lang: "en",
- },
- },
- ],
-};
diff --git a/package-lock.json b/package-lock.json
index 35e3708..2c7b341 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,561 +1,160 @@
{
"name": "submelon.dev",
- "version": "1.0.x",
- "lockfileVersion": 2,
+ "version": "2.0.x",
+ "lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "submelon.dev",
- "version": "1.0.x",
+ "version": "2.0.x",
"license": "BlueOak-1.0.0",
- "dependencies": {
- "babel-plugin-styled-components": "^2.1.4",
- "gatsby": "5.12.12",
- "gatsby-plugin-html-attributes": "^1.0.5",
- "gatsby-plugin-image": "3.13.0",
- "gatsby-plugin-manifest": "5.13.0",
- "gatsby-plugin-offline": "^6.12.3",
- "gatsby-plugin-sharp": "5.12.3",
- "gatsby-plugin-styled-components": "6.12.0",
- "gatsby-source-filesystem": "5.13.0",
- "gatsby-transformer-sharp": "5.12.3",
- "react": "18.2.0",
- "react-dom": "18.2.0",
- "react-icons": "^4.12.0",
- "styled-components": "^6.1.1"
- },
"devDependencies": {
- "@types/node": "^20.10.5",
- "@types/react": "^18.2.40",
- "@types/react-dom": "^18.2.18",
- "@types/react-icons": "^3.0.0",
+ "@11ty/eleventy": "^2.0.1",
"@typescript-eslint/eslint-plugin": "^6.14.0",
"@typescript-eslint/parser": "^6.14.0",
"badgen-cli": "^0.2.0",
"eslint": "^8.56.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.1.1",
- "eslint-plugin-react": "^7.33.2",
- "typescript": "*"
+ "prettier": "^3.1.1",
+ "ts-node": "^10.9.2",
+ "typescript": "^5.3.3"
}
},
- "node_modules/@aashutoshrathi/word-wrap": {
- "version": "1.2.6",
- "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
- "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@ampproject/remapping": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
- "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
- "dependencies": {
- "@jridgewell/gen-mapping": "^0.1.0",
- "@jridgewell/trace-mapping": "^0.3.9"
- },
- "engines": {
- "node": ">=6.0.0"
- }
+ "node_modules/@11ty/dependency-tree": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@11ty/dependency-tree/-/dependency-tree-2.0.1.tgz",
+ "integrity": "sha512-5R+DsT9LJ9tXiSQ4y+KLFppCkQyXhzAm1AIuBWE/sbU0hSXY5pkhoqQYEcPJQFg/nglL+wD55iv2j+7O96UAvg==",
+ "dev": true
},
- "node_modules/@ardatan/relay-compiler": {
- "version": "12.0.0",
- "resolved": "https://registry.npmjs.org/@ardatan/relay-compiler/-/relay-compiler-12.0.0.tgz",
- "integrity": "sha512-9anThAaj1dQr6IGmzBMcfzOQKTa5artjuPmw8NYK/fiGEMjADbSguBY2FMDykt+QhilR3wc9VA/3yVju7JHg7Q==",
+ "node_modules/@11ty/eleventy": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@11ty/eleventy/-/eleventy-2.0.1.tgz",
+ "integrity": "sha512-t8XVUbCJByhVEa1RzO0zS2QzbL3wPY8ot1yUw9noqiSHxJWUwv6jiwm1/MZDPTYtkZH2ZHvdQIRQ5/SjG9XmLw==",
+ "dev": true,
"dependencies": {
- "@babel/core": "^7.14.0",
- "@babel/generator": "^7.14.0",
- "@babel/parser": "^7.14.0",
- "@babel/runtime": "^7.0.0",
- "@babel/traverse": "^7.14.0",
- "@babel/types": "^7.0.0",
- "babel-preset-fbjs": "^3.4.0",
- "chalk": "^4.0.0",
- "fb-watchman": "^2.0.0",
- "fbjs": "^3.0.0",
- "glob": "^7.1.1",
- "immutable": "~3.7.6",
- "invariant": "^2.2.4",
- "nullthrows": "^1.1.1",
- "relay-runtime": "12.0.0",
- "signedsource": "^1.0.0",
- "yargs": "^15.3.1"
+ "@11ty/dependency-tree": "^2.0.1",
+ "@11ty/eleventy-dev-server": "^1.0.4",
+ "@11ty/eleventy-utils": "^1.0.1",
+ "@11ty/lodash-custom": "^4.17.21",
+ "@iarna/toml": "^2.2.5",
+ "@sindresorhus/slugify": "^1.1.2",
+ "bcp-47-normalize": "^1.1.1",
+ "chokidar": "^3.5.3",
+ "cross-spawn": "^7.0.3",
+ "debug": "^4.3.4",
+ "dependency-graph": "^0.11.0",
+ "ejs": "^3.1.9",
+ "fast-glob": "^3.2.12",
+ "graceful-fs": "^4.2.11",
+ "gray-matter": "^4.0.3",
+ "hamljs": "^0.6.2",
+ "handlebars": "^4.7.7",
+ "is-glob": "^4.0.3",
+ "iso-639-1": "^2.1.15",
+ "kleur": "^4.1.5",
+ "liquidjs": "^10.7.0",
+ "luxon": "^3.3.0",
+ "markdown-it": "^13.0.1",
+ "micromatch": "^4.0.5",
+ "minimist": "^1.2.8",
+ "moo": "^0.5.2",
+ "multimatch": "^5.0.0",
+ "mustache": "^4.2.0",
+ "normalize-path": "^3.0.0",
+ "nunjucks": "^3.2.3",
+ "path-to-regexp": "^6.2.1",
+ "please-upgrade-node": "^3.2.0",
+ "posthtml": "^0.16.6",
+ "posthtml-urls": "^1.0.0",
+ "pug": "^3.0.2",
+ "recursive-copy": "^2.0.14",
+ "semver": "^7.3.8",
+ "slugify": "^1.6.6"
},
"bin": {
- "relay-compiler": "bin/relay-compiler"
- },
- "peerDependencies": {
- "graphql": "*"
- }
- },
- "node_modules/@babel/code-frame": {
- "version": "7.22.13",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz",
- "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==",
- "dependencies": {
- "@babel/highlight": "^7.22.13",
- "chalk": "^2.4.2"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/code-frame/node_modules/ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dependencies": {
- "color-convert": "^1.9.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/code-frame/node_modules/chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "dependencies": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/code-frame/node_modules/color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "dependencies": {
- "color-name": "1.1.3"
- }
- },
- "node_modules/@babel/code-frame/node_modules/color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
- },
- "node_modules/@babel/code-frame/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/@babel/code-frame/node_modules/has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/code-frame/node_modules/supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "dependencies": {
- "has-flag": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/compat-data": {
- "version": "7.23.2",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz",
- "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/core": {
- "version": "7.22.8",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.8.tgz",
- "integrity": "sha512-75+KxFB4CZqYRXjx4NlR4J7yGvKumBuZTmV4NV6v09dVXXkuYVYLT68N6HCzLvfJ+fWCxQsntNzKwwIXL4bHnw==",
- "dependencies": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.22.5",
- "@babel/generator": "^7.22.7",
- "@babel/helper-compilation-targets": "^7.22.6",
- "@babel/helper-module-transforms": "^7.22.5",
- "@babel/helpers": "^7.22.6",
- "@babel/parser": "^7.22.7",
- "@babel/template": "^7.22.5",
- "@babel/traverse": "^7.22.8",
- "@babel/types": "^7.22.5",
- "@nicolo-ribaudo/semver-v6": "^6.3.3",
- "convert-source-map": "^1.7.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.2"
+ "eleventy": "cmd.js"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=14"
},
"funding": {
"type": "opencollective",
- "url": "https://opencollective.com/babel"
- }
- },
- "node_modules/@babel/eslint-parser": {
- "version": "7.22.7",
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.7.tgz",
- "integrity": "sha512-LH6HJqjOyu/Qtp7LuSycZXK/CYXQ4ohdkliEaL1QTdtOXVdOVpTBKVxAo/+eeyt+x/2SRzB+zUPduVl+xiEvdg==",
- "dependencies": {
- "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1",
- "@nicolo-ribaudo/semver-v6": "^6.3.3",
- "eslint-visitor-keys": "^2.1.0"
- },
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || >=14.0.0"
- },
- "peerDependencies": {
- "@babel/core": ">=7.11.0",
- "eslint": "^7.5.0 || ^8.0.0"
- }
- },
- "node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
- "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@babel/generator": {
- "version": "7.23.0",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz",
- "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==",
- "dependencies": {
- "@babel/types": "^7.23.0",
- "@jridgewell/gen-mapping": "^0.3.2",
- "@jridgewell/trace-mapping": "^0.3.17",
- "jsesc": "^2.5.1"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
- "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
- "dependencies": {
- "@jridgewell/set-array": "^1.0.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@babel/helper-annotate-as-pure": {
- "version": "7.22.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz",
- "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==",
- "dependencies": {
- "@babel/types": "^7.22.5"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.22.15",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz",
- "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==",
- "dependencies": {
- "@babel/types": "^7.22.15"
- },
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/@babel/helper-compilation-targets": {
- "version": "7.22.15",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz",
- "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==",
- "dependencies": {
- "@babel/compat-data": "^7.22.9",
- "@babel/helper-validator-option": "^7.22.15",
- "browserslist": "^4.21.9",
- "lru-cache": "^5.1.1",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
+ "url": "https://opencollective.com/11ty"
}
},
- "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
- "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
- "dependencies": {
- "yallist": "^3.0.2"
- }
- },
- "node_modules/@babel/helper-compilation-targets/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@babel/helper-compilation-targets/node_modules/yallist": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
- "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
- },
- "node_modules/@babel/helper-create-class-features-plugin": {
- "version": "7.22.15",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz",
- "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==",
+ "node_modules/@11ty/eleventy-dev-server": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@11ty/eleventy-dev-server/-/eleventy-dev-server-1.0.4.tgz",
+ "integrity": "sha512-qVBmV2G1KF/0o5B/3fITlrrDHy4bONUI2YuN3/WJ3BNw4NU1d/we8XhKrlgq13nNvHoBx5czYp3LZt8qRG53Fg==",
+ "dev": true,
"dependencies": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "@babel/helper-environment-visitor": "^7.22.5",
- "@babel/helper-function-name": "^7.22.5",
- "@babel/helper-member-expression-to-functions": "^7.22.15",
- "@babel/helper-optimise-call-expression": "^7.22.5",
- "@babel/helper-replace-supers": "^7.22.9",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5",
- "@babel/helper-split-export-declaration": "^7.22.6",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
+ "@11ty/eleventy-utils": "^1.0.1",
+ "chokidar": "^3.5.3",
+ "debug": "^4.3.4",
+ "dev-ip": "^1.0.1",
+ "finalhandler": "^1.2.0",
+ "mime": "^3.0.0",
+ "minimist": "^1.2.8",
+ "morphdom": "^2.7.0",
+ "please-upgrade-node": "^3.2.0",
+ "ssri": "^8.0.1",
+ "ws": "^8.13.0"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@babel/helper-create-regexp-features-plugin": {
- "version": "7.22.15",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz",
- "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.22.5",
- "regexpu-core": "^5.3.1",
- "semver": "^6.3.1"
+ "eleventy-dev-server": "cmd.js"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@babel/helper-define-polyfill-provider": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz",
- "integrity": "sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==",
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.22.6",
- "@babel/helper-plugin-utils": "^7.22.5",
- "debug": "^4.1.1",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.14.2"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
- },
- "node_modules/@babel/helper-define-polyfill-provider/node_modules/resolve": {