diff --git a/astro.config.mjs b/astro.config.ts
similarity index 60%
rename from astro.config.mjs
rename to astro.config.ts
index fbecfd9..91286e4 100644
--- a/astro.config.mjs
+++ b/astro.config.ts
@@ -1,28 +1,42 @@
-// @ts-check
import { defineConfig } from "astro/config";
import sitemap from "@astrojs/sitemap";
import { remarkReadingTime } from "./remark-reading-time.mjs";
-
import tailwindcss from "@tailwindcss/vite";
+import expressiveCode from "astro-expressive-code";
// https://astro.build/config
export default defineConfig({
site: "https://isabelroses.com",
- integrations: [sitemap()],
+ integrations: [
+ sitemap(),
+ expressiveCode({
+ themes: [
+ "github-light",
+ "github-dark-high-contrast",
+ "catppuccin-latte",
+ "catppuccin-mocha",
+ "catppuccin-macchiato",
+ "catppuccin-frappe",
+ ],
+ customizeTheme: (theme) => {
+ const newName = {
+ "github-light": "light",
+ "github-dark-high-contrast": "dark",
+ "catppuccin-latte": "catppuccin_latte",
+ "catppuccin-mocha": "catppuccin_mocha",
+ "catppuccin-macchiato": "catppuccin_macchiato",
+ "catppuccin-frappe": "catppuccin_frappe",
+ }[theme.name] || theme.name;
+
+ theme.name = newName;
+ return theme;
+ },
+ // useDarkModeMediaQuery: true,
+ }),
+ ],
markdown: {
remarkPlugins: [remarkReadingTime],
- shikiConfig: {
- themes: {
- light: "github-light",
- dark: "github-dark-high-contrast",
- catppuccin_latte: "catppuccin-latte",
- catppuccin_mocha: "catppuccin-mocha",
- catppuccin_macchiato: "catppuccin-macchiato",
- catppuccin_frappe: "catppuccin-frappe",
- },
- defaultColor: "dark",
- },
},
redirects: {
diff --git a/nix/default.nix b/nix/default.nix
index 8b40c81..c4a4e5f 100644
--- a/nix/default.nix
+++ b/nix/default.nix
@@ -25,7 +25,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
pnpmDeps = pnpm.fetchDeps {
inherit (finalAttrs) pname version src;
- hash = "sha256-6eChQG5P+eZONqhHyMr6TpVqSbYrKKbSfiAoUzDqLKo=";
+ hash = "sha256-/Th5oN4KTz6ev0eQqmHRdO2HZGN+xfYrt1jOnFkFYTY=";
};
dontUseJustInstall = true;
diff --git a/package.json b/package.json
index 3b68aba..421f520 100644
--- a/package.json
+++ b/package.json
@@ -9,10 +9,11 @@
"astro": "astro"
},
"dependencies": {
- "@astrojs/sitemap": "^3.3.0",
+ "@astrojs/sitemap": "^3.3.1",
"@tailwindcss/typography": "^0.5.16",
"@tailwindcss/vite": "^4.1.4",
- "astro": "^5.7.4",
+ "astro": "^5.7.5",
+ "astro-expressive-code": "^0.41.2",
"feed": "^4.2.2",
"markdown-it": "^14.1.0",
"mdast-util-to-string": "^4.0.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index fdcdb87..a0a3dbe 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -9,8 +9,8 @@ importers:
.:
dependencies:
'@astrojs/sitemap':
- specifier: ^3.3.0
- version: 3.3.0
+ specifier: ^3.3.1
+ version: 3.3.1
'@tailwindcss/typography':
specifier: ^0.5.16
version: 0.5.16(tailwindcss@4.1.4)
@@ -18,8 +18,11 @@ importers:
specifier: ^4.1.4
version: 4.1.4(vite@6.3.2(jiti@2.4.2)(lightningcss@1.29.2)(sass@1.86.3))
astro:
- specifier: ^5.7.4
- version: 5.7.4(jiti@2.4.2)(lightningcss@1.29.2)(rollup@4.40.0)(sass@1.86.3)(typescript@5.8.3)
+ specifier: ^5.7.5
+ version: 5.7.5(jiti@2.4.2)(lightningcss@1.29.2)(rollup@4.40.0)(sass@1.86.3)(typescript@5.8.3)
+ astro-expressive-code:
+ specifier: ^0.41.2
+ version: 0.41.2(astro@5.7.5(jiti@2.4.2)(lightningcss@1.29.2)(rollup@4.40.0)(sass@1.86.3)(typescript@5.8.3))
feed:
specifier: ^4.2.2
version: 4.2.2
@@ -54,11 +57,11 @@ packages:
resolution: {integrity: sha512-GilTHKGCW6HMq7y3BUv9Ac7GMe/MO9gi9GW62GzKtth0SwukCu/qp2wLiGpEujhY+VVhaG9v7kv/5vFzvf4NYw==}
engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0}
- '@astrojs/sitemap@3.3.0':
- resolution: {integrity: sha512-nYE4lKQtk+Kbrw/w0G0TTgT724co0jUsU4tPlHY9au5HmTBKbwiCLwO/15b1/y13aZ4Kr9ZbMeMHlXuwn0ty4Q==}
+ '@astrojs/sitemap@3.3.1':
+ resolution: {integrity: sha512-GRnDUCTviBSNfXJ0Jmur+1/C+z3g36jy79VyYggfe1uNyEYSTcmAfTTCmbytrRvJRNyJJnSfB/77Gnm9PiXRRg==}
- '@astrojs/telemetry@3.2.0':
- resolution: {integrity: sha512-wxhSKRfKugLwLlr4OFfcqovk+LIFtKwLyGPqMsv+9/ibqqnW3Gv7tBhtKEb0gAyUAC4G9BTVQeQahqnQAhd6IQ==}
+ '@astrojs/telemetry@3.2.1':
+ resolution: {integrity: sha512-SSVM820Jqc6wjsn7qYfV9qfeQvePtVc1nSofhyap7l0/iakUKywj3hfy3UJAOV4sGV4Q/u450RD4AaCaFvNPlg==}
engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0}
'@babel/helper-string-parser@7.25.9':
@@ -81,159 +84,175 @@ packages:
'@capsizecss/unpack@2.4.0':
resolution: {integrity: sha512-GrSU71meACqcmIUxPYOJvGKF0yryjN/L1aCuE9DViCTJI7bfkjgYDPD1zbNDcINJwSSP6UaBZY9GAbYDO7re0Q==}
+ '@ctrl/tinycolor@4.1.0':
+ resolution: {integrity: sha512-WyOx8cJQ+FQus4Mm4uPIZA64gbk3Wxh0so5Lcii0aJifqwoVOlfFtorjLE0Hen4OYyHZMXDWqMmaQemBhgxFRQ==}
+ engines: {node: '>=14'}
+
'@emnapi/runtime@1.4.3':
resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==}
- '@esbuild/aix-ppc64@0.25.2':
- resolution: {integrity: sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==}
+ '@esbuild/aix-ppc64@0.25.3':
+ resolution: {integrity: sha512-W8bFfPA8DowP8l//sxjJLSLkD8iEjMc7cBVyP+u4cEv9sM7mdUCkgsj+t0n/BWPFtv7WWCN5Yzj0N6FJNUUqBQ==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [aix]
- '@esbuild/android-arm64@0.25.2':
- resolution: {integrity: sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==}
+ '@esbuild/android-arm64@0.25.3':
+ resolution: {integrity: sha512-XelR6MzjlZuBM4f5z2IQHK6LkK34Cvv6Rj2EntER3lwCBFdg6h2lKbtRjpTTsdEjD/WSe1q8UyPBXP1x3i/wYQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [android]
- '@esbuild/android-arm@0.25.2':
- resolution: {integrity: sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==}
+ '@esbuild/android-arm@0.25.3':
+ resolution: {integrity: sha512-PuwVXbnP87Tcff5I9ngV0lmiSu40xw1At6i3GsU77U7cjDDB4s0X2cyFuBiDa1SBk9DnvWwnGvVaGBqoFWPb7A==}
engines: {node: '>=18'}
cpu: [arm]
os: [android]
- '@esbuild/android-x64@0.25.2':
- resolution: {integrity: sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==}
+ '@esbuild/android-x64@0.25.3':
+ resolution: {integrity: sha512-ogtTpYHT/g1GWS/zKM0cc/tIebFjm1F9Aw1boQ2Y0eUQ+J89d0jFY//s9ei9jVIlkYi8AfOjiixcLJSGNSOAdQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [android]
- '@esbuild/darwin-arm64@0.25.2':
- resolution: {integrity: sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==}
+ '@esbuild/darwin-arm64@0.25.3':
+ resolution: {integrity: sha512-eESK5yfPNTqpAmDfFWNsOhmIOaQA59tAcF/EfYvo5/QWQCzXn5iUSOnqt3ra3UdzBv073ykTtmeLJZGt3HhA+w==}
engines: {node: '>=18'}
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-x64@0.25.2':
- resolution: {integrity: sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==}
+ '@esbuild/darwin-x64@0.25.3':
+ resolution: {integrity: sha512-Kd8glo7sIZtwOLcPbW0yLpKmBNWMANZhrC1r6K++uDR2zyzb6AeOYtI6udbtabmQpFaxJ8uduXMAo1gs5ozz8A==}
engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
- '@esbuild/freebsd-arm64@0.25.2':
- resolution: {integrity: sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==}
+ '@esbuild/freebsd-arm64@0.25.3':
+ resolution: {integrity: sha512-EJiyS70BYybOBpJth3M0KLOus0n+RRMKTYzhYhFeMwp7e/RaajXvP+BWlmEXNk6uk+KAu46j/kaQzr6au+JcIw==}
engines: {node: '>=18'}
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.25.2':
- resolution: {integrity: sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==}
+ '@esbuild/freebsd-x64@0.25.3':
+ resolution: {integrity: sha512-Q+wSjaLpGxYf7zC0kL0nDlhsfuFkoN+EXrx2KSB33RhinWzejOd6AvgmP5JbkgXKmjhmpfgKZq24pneodYqE8Q==}
engines: {node: '>=18'}
cpu: [x64]
os: [freebsd]
- '@esbuild/linux-arm64@0.25.2':
- resolution: {integrity: sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==}
+ '@esbuild/linux-arm64@0.25.3':
+ resolution: {integrity: sha512-xCUgnNYhRD5bb1C1nqrDV1PfkwgbswTTBRbAd8aH5PhYzikdf/ddtsYyMXFfGSsb/6t6QaPSzxtbfAZr9uox4A==}
engines: {node: '>=18'}
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm@0.25.2':
- resolution: {integrity: sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==}
+ '@esbuild/linux-arm@0.25.3':
+ resolution: {integrity: sha512-dUOVmAUzuHy2ZOKIHIKHCm58HKzFqd+puLaS424h6I85GlSDRZIA5ycBixb3mFgM0Jdh+ZOSB6KptX30DD8YOQ==}
engines: {node: '>=18'}
cpu: [arm]
os: [linux]
- '@esbuild/linux-ia32@0.25.2':
- resolution: {integrity: sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==}
+ '@esbuild/linux-ia32@0.25.3':
+ resolution: {integrity: sha512-yplPOpczHOO4jTYKmuYuANI3WhvIPSVANGcNUeMlxH4twz/TeXuzEP41tGKNGWJjuMhotpGabeFYGAOU2ummBw==}
engines: {node: '>=18'}
cpu: [ia32]
os: [linux]
- '@esbuild/linux-loong64@0.25.2':
- resolution: {integrity: sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==}
+ '@esbuild/linux-loong64@0.25.3':
+ resolution: {integrity: sha512-P4BLP5/fjyihmXCELRGrLd793q/lBtKMQl8ARGpDxgzgIKJDRJ/u4r1A/HgpBpKpKZelGct2PGI4T+axcedf6g==}
engines: {node: '>=18'}
cpu: [loong64]
os: [linux]
- '@esbuild/linux-mips64el@0.25.2':
- resolution: {integrity: sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==}
+ '@esbuild/linux-mips64el@0.25.3':
+ resolution: {integrity: sha512-eRAOV2ODpu6P5divMEMa26RRqb2yUoYsuQQOuFUexUoQndm4MdpXXDBbUoKIc0iPa4aCO7gIhtnYomkn2x+bag==}
engines: {node: '>=18'}
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-ppc64@0.25.2':
- resolution: {integrity: sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==}
+ '@esbuild/linux-ppc64@0.25.3':
+ resolution: {integrity: sha512-ZC4jV2p7VbzTlnl8nZKLcBkfzIf4Yad1SJM4ZMKYnJqZFD4rTI+pBG65u8ev4jk3/MPwY9DvGn50wi3uhdaghg==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-riscv64@0.25.2':
- resolution: {integrity: sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==}
+ '@esbuild/linux-riscv64@0.25.3':
+ resolution: {integrity: sha512-LDDODcFzNtECTrUUbVCs6j9/bDVqy7DDRsuIXJg6so+mFksgwG7ZVnTruYi5V+z3eE5y+BJZw7VvUadkbfg7QA==}
engines: {node: '>=18'}
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-s390x@0.25.2':
- resolution: {integrity: sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==}
+ '@esbuild/linux-s390x@0.25.3':
+ resolution: {integrity: sha512-s+w/NOY2k0yC2p9SLen+ymflgcpRkvwwa02fqmAwhBRI3SC12uiS10edHHXlVWwfAagYSY5UpmT/zISXPMW3tQ==}
engines: {node: '>=18'}
cpu: [s390x]
os: [linux]
- '@esbuild/linux-x64@0.25.2':
- resolution: {integrity: sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==}
+ '@esbuild/linux-x64@0.25.3':
+ resolution: {integrity: sha512-nQHDz4pXjSDC6UfOE1Fw9Q8d6GCAd9KdvMZpfVGWSJztYCarRgSDfOVBY5xwhQXseiyxapkiSJi/5/ja8mRFFA==}
engines: {node: '>=18'}
cpu: [x64]
os: [linux]
- '@esbuild/netbsd-arm64@0.25.2':
- resolution: {integrity: sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==}
+ '@esbuild/netbsd-arm64@0.25.3':
+ resolution: {integrity: sha512-1QaLtOWq0mzK6tzzp0jRN3eccmN3hezey7mhLnzC6oNlJoUJz4nym5ZD7mDnS/LZQgkrhEbEiTn515lPeLpgWA==}
engines: {node: '>=18'}
cpu: [arm64]
os: [netbsd]
- '@esbuild/netbsd-x64@0.25.2':
- resolution: {integrity: sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==}
+ '@esbuild/netbsd-x64@0.25.3':
+ resolution: {integrity: sha512-i5Hm68HXHdgv8wkrt+10Bc50zM0/eonPb/a/OFVfB6Qvpiirco5gBA5bz7S2SHuU+Y4LWn/zehzNX14Sp4r27g==}
engines: {node: '>=18'}
cpu: [x64]
os: [netbsd]
- '@esbuild/openbsd-arm64@0.25.2':
- resolution: {integrity: sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==}
+ '@esbuild/openbsd-arm64@0.25.3':
+ resolution: {integrity: sha512-zGAVApJEYTbOC6H/3QBr2mq3upG/LBEXr85/pTtKiv2IXcgKV0RT0QA/hSXZqSvLEpXeIxah7LczB4lkiYhTAQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
- '@esbuild/openbsd-x64@0.25.2':
- resolution: {integrity: sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==}
+ '@esbuild/openbsd-x64@0.25.3':
+ resolution: {integrity: sha512-fpqctI45NnCIDKBH5AXQBsD0NDPbEFczK98hk/aa6HJxbl+UtLkJV2+Bvy5hLSLk3LHmqt0NTkKNso1A9y1a4w==}
engines: {node: '>=18'}
cpu: [x64]
os: [openbsd]
- '@esbuild/sunos-x64@0.25.2':
- resolution: {integrity: sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==}
+ '@esbuild/sunos-x64@0.25.3':
+ resolution: {integrity: sha512-ROJhm7d8bk9dMCUZjkS8fgzsPAZEjtRJqCAmVgB0gMrvG7hfmPmz9k1rwO4jSiblFjYmNvbECL9uhaPzONMfgA==}
engines: {node: '>=18'}
cpu: [x64]
os: [sunos]
- '@esbuild/win32-arm64@0.25.2':
- resolution: {integrity: sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==}
+ '@esbuild/win32-arm64@0.25.3':
+ resolution: {integrity: sha512-YWcow8peiHpNBiIXHwaswPnAXLsLVygFwCB3A7Bh5jRkIBFWHGmNQ48AlX4xDvQNoMZlPYzjVOQDYEzWCqufMQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [win32]
- '@esbuild/win32-ia32@0.25.2':
- resolution: {integrity: sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==}
+ '@esbuild/win32-ia32@0.25.3':
+ resolution: {integrity: sha512-qspTZOIGoXVS4DpNqUYUs9UxVb04khS1Degaw/MnfMe7goQ3lTfQ13Vw4qY/Nj0979BGvMRpAYbs/BAxEvU8ew==}
engines: {node: '>=18'}
cpu: [ia32]
os: [win32]
- '@esbuild/win32-x64@0.25.2':
- resolution: {integrity: sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==}
+ '@esbuild/win32-x64@0.25.3':
+ resolution: {integrity: sha512-ICgUR+kPimx0vvRzf+N/7L7tVSQeE3BYY+NhHRHXS1kBuPO7z2+7ea2HbhDyZdTephgvNvKrlDDKUexuCVBVvg==}
engines: {node: '>=18'}
cpu: [x64]
os: [win32]
+ '@expressive-code/core@0.41.2':
+ resolution: {integrity: sha512-AJW5Tp9czbLqKMzwudL9Rv4js9afXBxkSGLmCNPq1iRgAYcx9NkTPJiSNCesjKRWoVC328AdSu6fqrD22zDgDg==}
+
+ '@expressive-code/plugin-frames@0.41.2':
+ resolution: {integrity: sha512-pfy0hkJI4nbaONjmksFDcuHmIuyPTFmi1JpABe4q2ajskiJtfBf+WDAL2pg595R9JNoPrrH5+aT9lbkx2noicw==}
+
+ '@expressive-code/plugin-shiki@0.41.2':
+ resolution: {integrity: sha512-xD4zwqAkDccXqye+235BH5bN038jYiSMLfUrCOmMlzxPDGWdxJDk5z4uUB/aLfivEF2tXyO2zyaarL3Oqht0fQ==}
+
+ '@expressive-code/plugin-text-markers@0.41.2':
+ resolution: {integrity: sha512-JFWBz2qYxxJOJkkWf96LpeolbnOqJY95TvwYc0hXIHf9oSWV0h0SY268w/5N3EtQaD9KktzDE+VIVwb9jdb3nw==}
+
'@img/sharp-darwin-arm64@0.33.5':
resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -536,23 +555,23 @@ packages:
cpu: [x64]
os: [win32]
- '@shikijs/core@3.2.2':
- resolution: {integrity: sha512-yvlSKVMLjddAGBa2Yu+vUZxuu3sClOWW1AG+UtJkvejYuGM5BVL35s6Ijiwb75O9QdEx6IkMxinHZSi8ZyrBaA==}
+ '@shikijs/core@3.3.0':
+ resolution: {integrity: sha512-CovkFL2WVaHk6PCrwv6ctlmD4SS1qtIfN8yEyDXDYWh4ONvomdM9MaFw20qHuqJOcb8/xrkqoWQRJ//X10phOQ==}
- '@shikijs/engine-javascript@3.2.2':
- resolution: {integrity: sha512-tlDKfhWpF4jKLUyVAnmL+ggIC+0VyteNsUpBzh1iwWLZu4i+PelIRr0TNur6pRRo5UZIv3ss/PLMuwahg9S2hg==}
+ '@shikijs/engine-javascript@3.3.0':
+ resolution: {integrity: sha512-XlhnFGv0glq7pfsoN0KyBCz9FJU678LZdQ2LqlIdAj6JKsg5xpYKay3DkazXWExp3DTJJK9rMOuGzU2911pg7Q==}
- '@shikijs/engine-oniguruma@3.2.2':
- resolution: {integrity: sha512-vyXRnWVCSvokwbaUD/8uPn6Gqsf5Hv7XwcW4AgiU4Z2qwy19sdr6VGzMdheKKN58tJOOe5MIKiNb901bgcUXYQ==}
+ '@shikijs/engine-oniguruma@3.3.0':
+ resolution: {integrity: sha512-l0vIw+GxeNU7uGnsu6B+Crpeqf+WTQ2Va71cHb5ZYWEVEPdfYwY5kXwYqRJwHrxz9WH+pjSpXQz+TJgAsrkA5A==}
- '@shikijs/langs@3.2.2':
- resolution: {integrity: sha512-NY0Urg2dV9ETt3JIOWoMPuoDNwte3geLZ4M1nrPHbkDS8dWMpKcEwlqiEIGqtwZNmt5gKyWpR26ln2Bg2ecPgw==}
+ '@shikijs/langs@3.3.0':
+ resolution: {integrity: sha512-zt6Kf/7XpBQKSI9eqku+arLkAcDQ3NHJO6zFjiChI8w0Oz6Jjjay7pToottjQGjSDCFk++R85643WbyINcuL+g==}
- '@shikijs/themes@3.2.2':
- resolution: {integrity: sha512-Zuq4lgAxVKkb0FFdhHSdDkALuRpsj1so1JdihjKNQfgM78EHxV2JhO10qPsMrm01FkE3mDRTdF68wfmsqjt6HA==}
+ '@shikijs/themes@3.3.0':
+ resolution: {integrity: sha512-tXeCvLXBnqq34B0YZUEaAD1lD4lmN6TOHAhnHacj4Owh7Ptb/rf5XCDeROZt2rEOk5yuka3OOW2zLqClV7/SOg==}
- '@shikijs/types@3.2.2':
- resolution: {integrity: sha512-a5TiHk7EH5Lso8sHcLHbVNNhWKP0Wi3yVnXnu73g86n3WoDgEra7n3KszyeCGuyoagspQ2fzvy4cpSc8pKhb0A==}
+ '@shikijs/types@3.3.0':
+ resolution: {integrity: sha512-KPCGnHG6k06QG/2pnYGbFtFvpVJmC3uIpXrAiPrawETifujPBv0Se2oUxm5qYgjCvGJS9InKvjytOdN+bGuX+Q==}
'@shikijs/vscode-textmate@10.0.2':
resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==}
@@ -722,8 +741,13 @@ packages:
array-iterate@2.0.1:
resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==}
- astro@5.7.4:
- resolution: {integrity: sha512-h+pndGOyoYbsBd0YvP7bL3gotUSlyltp8OLpcYg062w0n5c96wJ9xt/RmwwXzGbdcUjWFtw0c5z4zCA92NDmlA==}
+ astro-expressive-code@0.41.2:
+ resolution: {integrity: sha512-HN0jWTnhr7mIV/2e6uu4PPRNNo/k4UEgTLZqbp3MrHU+caCARveG2yZxaZVBmxyiVdYqW5Pd3u3n2zjnshixbw==}
+ peerDependencies:
+ astro: ^4.0.0-beta || ^5.0.0-beta || ^3.3.0
+
+ astro@5.7.5:
+ resolution: {integrity: sha512-c59YuYiXyWWnUMOBlDczrjqKzF0dJQP20EP9vqDggcyKm//tEt9iJHNwoYq4r3UeO9UJCwlGK8FwaGTAwwF3IA==}
engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'}
hasBin: true
@@ -740,9 +764,15 @@ packages:
base64-js@1.5.1:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+ bcp-47-match@2.0.3:
+ resolution: {integrity: sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ==}
+
blob-to-buffer@1.2.9:
resolution: {integrity: sha512-BF033y5fN6OCofD3vgHmNtwZWRcq9NLyyxyILx9hfMy1sXYy4ojFl765hJ2lP0YaN2fuxPaLO2Vzzoxy0FLFFA==}
+ boolbase@1.0.0:
+ resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
+
boxen@8.0.1:
resolution: {integrity: sha512-F3PH5k5juxom4xktynS7MoFY+NUWH5LC4CnH11YB8NPew+HLpmBLCybSAEyb2F+4pRXhuhWqFesoQd6DAyc2hw==}
engines: {node: '>=18'}
@@ -827,6 +857,9 @@ packages:
crossws@0.3.4:
resolution: {integrity: sha512-uj0O1ETYX1Bh6uSgktfPvwDiPYGQ3aI4qVsaC/LWpkIzGj1nUYm5FK3K+t11oOlpN01lGbprFCH4wBlKdJjVgw==}
+ css-selector-parser@3.1.2:
+ resolution: {integrity: sha512-WfUcL99xWDs7b3eZPoRszWVfbNo8ErCF15PTvVROjkShGlAfjIkG6hlfj/sl6/rfo5Q9x9ryJ3VqVnAZDA+gcw==}
+
css-tree@3.1.0:
resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==}
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
@@ -867,8 +900,8 @@ packages:
engines: {node: '>=0.10'}
hasBin: true
- detect-libc@2.0.3:
- resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==}
+ detect-libc@2.0.4:
+ resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==}
engines: {node: '>=8'}
deterministic-object-hash@2.0.2:
@@ -888,6 +921,10 @@ packages:
resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==}
engines: {node: '>=0.3.1'}
+ direction@2.0.1:
+ resolution: {integrity: sha512-9S6m9Sukh1cZNknO1CWAr2QAWsbKLafQiyM5gZ7VgXHeuaoUwffKN4q6NC4A/Mf9iiPlOXQEKW/Mv/mh9/3YFA==}
+ hasBin: true
+
dlv@1.1.3:
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
@@ -925,11 +962,15 @@ packages:
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
engines: {node: '>=0.12'}
- es-module-lexer@1.6.0:
- resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==}
+ entities@6.0.0:
+ resolution: {integrity: sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==}
+ engines: {node: '>=0.12'}
- esbuild@0.25.2:
- resolution: {integrity: sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==}
+ es-module-lexer@1.7.0:
+ resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==}
+
+ esbuild@0.25.3:
+ resolution: {integrity: sha512-qKA6Pvai73+M2FtftpNKRxJ78GIjmFXFxd/1DVBqGo/qNhLSfv+G12n9pNoWdytJC8U00TrViOwpjT0zgqQS8Q==}
engines: {node: '>=18'}
hasBin: true
@@ -950,14 +991,17 @@ packages:
eventemitter3@5.0.1:
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
+ expressive-code@0.41.2:
+ resolution: {integrity: sha512-aLZiZaqorRtNExtGpUjK9zFH9aTpWeoTXMyLo4b4IcuXfPqtLPPxhRm/QlPb8QqIcMMXnSiGRHSFpQfX0m7HJw==}
+
extend@3.0.2:
resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
- fdir@6.4.3:
- resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==}
+ fdir@6.4.4:
+ resolution: {integrity: sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==}
peerDependencies:
picomatch: ^3 || ^4
peerDependenciesMeta:
@@ -1003,6 +1047,9 @@ packages:
hast-util-from-parse5@8.0.3:
resolution: {integrity: sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==}
+ hast-util-has-property@3.0.0:
+ resolution: {integrity: sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==}
+
hast-util-is-element@3.0.0:
resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==}
@@ -1012,12 +1059,18 @@ packages:
hast-util-raw@9.1.0:
resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==}
+ hast-util-select@6.0.4:
+ resolution: {integrity: sha512-RqGS1ZgI0MwxLaKLDxjprynNzINEkRHY2i8ln4DDjgv9ZhcYVIHN9rlpiYsqtFwrgpYU361SyWDQcGNIBVu3lw==}
+
hast-util-to-html@9.0.5:
resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==}
hast-util-to-parse5@8.0.0:
resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==}
+ hast-util-to-string@3.0.1:
+ resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==}
+
hast-util-to-text@4.0.2:
resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==}
@@ -1374,6 +1427,9 @@ packages:
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
engines: {node: '>=0.10.0'}
+ nth-check@2.1.1:
+ resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
+
ofetch@1.4.1:
resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==}
@@ -1410,8 +1466,8 @@ packages:
parse-srcset@1.0.2:
resolution: {integrity: sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==}
- parse5@7.2.1:
- resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==}
+ parse5@7.3.0:
+ resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==}
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@@ -1424,10 +1480,20 @@ packages:
resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
engines: {node: '>=12'}
+ postcss-nested@6.2.0:
+ resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
+ engines: {node: '>=12.0'}
+ peerDependencies:
+ postcss: ^8.2.14
+
postcss-selector-parser@6.0.10:
resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==}
engines: {node: '>=4'}
+ postcss-selector-parser@6.1.2:
+ resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
+ engines: {node: '>=4'}
+
postcss@8.5.3:
resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==}
engines: {node: ^10 || ^12 || >=14}
@@ -1469,6 +1535,9 @@ packages:
regex@6.0.1:
resolution: {integrity: sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==}
+ rehype-expressive-code@0.41.2:
+ resolution: {integrity: sha512-vHYfWO9WxAw6kHHctddOt+P4266BtyT1mrOIuxJD+1ELuvuJAa5uBIhYt0OVMyOhlvf57hzWOXJkHnMhpaHyxw==}
+
rehype-parse@9.0.1:
resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==}
@@ -1537,8 +1606,8 @@ packages:
resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- shiki@3.2.2:
- resolution: {integrity: sha512-0qWBkM2t/0NXPRcVgtLhtHv6Ak3Q5yI4K/ggMqcgLRKm4+pCs3namgZlhlat/7u2CuqNtlShNs9lENOG6n7UaQ==}
+ shiki@3.3.0:
+ resolution: {integrity: sha512-j0Z1tG5vlOFGW8JVj0Cpuatzvshes7VJy5ncDmmMaYcmnGW0Js1N81TOW98ivTFNZfKRn9uwEg/aIm638o368g==}
simple-swizzle@0.2.2:
resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==}
@@ -1597,8 +1666,8 @@ packages:
tinyexec@0.3.2:
resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
- tinyglobby@0.2.12:
- resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==}
+ tinyglobby@0.2.13:
+ resolution: {integrity: sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==}
engines: {node: '>=12.0.0'}
to-regex-range@5.0.1:
@@ -1842,8 +1911,8 @@ packages:
resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==}
engines: {node: '>=12.20'}
- yocto-spinner@0.2.1:
- resolution: {integrity: sha512-lHHxjh0bXaLgdJy3cNnVb/F9myx3CkhrvSOEVTkaUgNMXnYFa2xYPVhtGnqhh3jErY2gParBOHallCbc7NrlZQ==}
+ yocto-spinner@0.2.2:
+ resolution: {integrity: sha512-21rPcM3e4vCpOXThiFRByX8amU5By1R0wNS8Oex+DP3YgC8xdU0vEJ/K8cbPLiIJVosSSysgcFof6s6MSD5/Vw==}
engines: {node: '>=18.19'}
yoctocolors@2.1.1:
@@ -1889,7 +1958,7 @@ snapshots:
remark-parse: 11.0.0
remark-rehype: 11.1.2
remark-smartypants: 3.0.2
- shiki: 3.2.2
+ shiki: 3.3.0
smol-toml: 1.3.3
unified: 11.0.5
unist-util-remove-position: 5.0.0
@@ -1903,13 +1972,13 @@ snapshots:
dependencies:
prismjs: 1.30.0
- '@astrojs/sitemap@3.3.0':
+ '@astrojs/sitemap@3.3.1':
dependencies:
sitemap: 8.0.0
stream-replace-string: 2.0.0
zod: 3.24.3
- '@astrojs/telemetry@3.2.0':
+ '@astrojs/telemetry@3.2.1':
dependencies:
ci-info: 4.2.0
debug: 4.4.0
@@ -1942,86 +2011,113 @@ snapshots:
transitivePeerDependencies:
- encoding
+ '@ctrl/tinycolor@4.1.0': {}
+
'@emnapi/runtime@1.4.3':
dependencies:
tslib: 2.8.1
optional: true
- '@esbuild/aix-ppc64@0.25.2':
+ '@esbuild/aix-ppc64@0.25.3':
optional: true
- '@esbuild/android-arm64@0.25.2':
+ '@esbuild/android-arm64@0.25.3':
optional: true
- '@esbuild/android-arm@0.25.2':
+ '@esbuild/android-arm@0.25.3':
optional: true
- '@esbuild/android-x64@0.25.2':
+ '@esbuild/android-x64@0.25.3':
optional: true
- '@esbuild/darwin-arm64@0.25.2':
+ '@esbuild/darwin-arm64@0.25.3':
optional: true
- '@esbuild/darwin-x64@0.25.2':
+ '@esbuild/darwin-x64@0.25.3':
optional: true
- '@esbuild/freebsd-arm64@0.25.2':
+ '@esbuild/freebsd-arm64@0.25.3':
optional: true
- '@esbuild/freebsd-x64@0.25.2':
+ '@esbuild/freebsd-x64@0.25.3':
optional: true
- '@esbuild/linux-arm64@0.25.2':
+ '@esbuild/linux-arm64@0.25.3':
optional: true
- '@esbuild/linux-arm@0.25.2':
+ '@esbuild/linux-arm@0.25.3':
optional: true
- '@esbuild/linux-ia32@0.25.2':
+ '@esbuild/linux-ia32@0.25.3':
optional: true
- '@esbuild/linux-loong64@0.25.2':
+ '@esbuild/linux-loong64@0.25.3':
optional: true
- '@esbuild/linux-mips64el@0.25.2':
+ '@esbuild/linux-mips64el@0.25.3':
optional: true
- '@esbuild/linux-ppc64@0.25.2':
+ '@esbuild/linux-ppc64@0.25.3':
optional: true
- '@esbuild/linux-riscv64@0.25.2':
+ '@esbuild/linux-riscv64@0.25.3':
optional: true
- '@esbuild/linux-s390x@0.25.2':
+ '@esbuild/linux-s390x@0.25.3':
optional: true
- '@esbuild/linux-x64@0.25.2':
+ '@esbuild/linux-x64@0.25.3':
optional: true
- '@esbuild/netbsd-arm64@0.25.2':
+ '@esbuild/netbsd-arm64@0.25.3':
optional: true
- '@esbuild/netbsd-x64@0.25.2':
+ '@esbuild/netbsd-x64@0.25.3':
optional: true
- '@esbuild/openbsd-arm64@0.25.2':
+ '@esbuild/openbsd-arm64@0.25.3':
optional: true
- '@esbuild/openbsd-x64@0.25.2':
+ '@esbuild/openbsd-x64@0.25.3':
optional: true
- '@esbuild/sunos-x64@0.25.2':
+ '@esbuild/sunos-x64@0.25.3':
optional: true
- '@esbuild/win32-arm64@0.25.2':
+ '@esbuild/win32-arm64@0.25.3':
optional: true
- '@esbuild/win32-ia32@0.25.2':
+ '@esbuild/win32-ia32@0.25.3':
optional: true
- '@esbuild/win32-x64@0.25.2':
+ '@esbuild/win32-x64@0.25.3':
optional: true
+ '@expressive-code/core@0.41.2':
+ dependencies:
+ '@ctrl/tinycolor': 4.1.0
+ hast-util-select: 6.0.4
+ hast-util-to-html: 9.0.5
+ hast-util-to-text: 4.0.2
+ hastscript: 9.0.1
+ postcss: 8.5.3
+ postcss-nested: 6.2.0(postcss@8.5.3)
+ unist-util-visit: 5.0.0
+ unist-util-visit-parents: 6.0.1
+
+ '@expressive-code/plugin-frames@0.41.2':
+ dependencies:
+ '@expressive-code/core': 0.41.2
+
+ '@expressive-code/plugin-shiki@0.41.2':
+ dependencies:
+ '@expressive-code/core': 0.41.2
+ shiki: 3.3.0
+
+ '@expressive-code/plugin-text-markers@0.41.2':
+ dependencies:
+ '@expressive-code/core': 0.41.2
+
'@img/sharp-darwin-arm64@0.33.5':
optionalDependencies:
'@img/sharp-libvips-darwin-arm64': 1.0.4
@@ -2230,33 +2326,33 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.40.0':
optional: true
- '@shikijs/core@3.2.2':
+ '@shikijs/core@3.3.0':
dependencies:
- '@shikijs/types': 3.2.2
+ '@shikijs/types': 3.3.0
'@shikijs/vscode-textmate': 10.0.2
'@types/hast': 3.0.4
hast-util-to-html: 9.0.5
- '@shikijs/engine-javascript@3.2.2':
+ '@shikijs/engine-javascript@3.3.0':
dependencies:
- '@shikijs/types': 3.2.2
+ '@shikijs/types': 3.3.0
'@shikijs/vscode-textmate': 10.0.2
oniguruma-to-es: 4.2.0
- '@shikijs/engine-oniguruma@3.2.2':
+ '@shikijs/engine-oniguruma@3.3.0':
dependencies:
- '@shikijs/types': 3.2.2
+ '@shikijs/types': 3.3.0
'@shikijs/vscode-textmate': 10.0.2
- '@shikijs/langs@3.2.2':
+ '@shikijs/langs@3.3.0':
dependencies:
- '@shikijs/types': 3.2.2
+ '@shikijs/types': 3.3.0
- '@shikijs/themes@3.2.2':
+ '@shikijs/themes@3.3.0':
dependencies:
- '@shikijs/types': 3.2.2
+ '@shikijs/types': 3.3.0
- '@shikijs/types@3.2.2':
+ '@shikijs/types@3.3.0':
dependencies:
'@shikijs/vscode-textmate': 10.0.2
'@types/hast': 3.0.4
@@ -2395,12 +2491,17 @@ snapshots:
array-iterate@2.0.1: {}
- astro@5.7.4(jiti@2.4.2)(lightningcss@1.29.2)(rollup@4.40.0)(sass@1.86.3)(typescript@5.8.3):
+ astro-expressive-code@0.41.2(astro@5.7.5(jiti@2.4.2)(lightningcss@1.29.2)(rollup@4.40.0)(sass@1.86.3)(typescript@5.8.3)):
+ dependencies:
+ astro: 5.7.5(jiti@2.4.2)(lightningcss@1.29.2)(rollup@4.40.0)(sass@1.86.3)(typescript@5.8.3)
+ rehype-expressive-code: 0.41.2
+
+ astro@5.7.5(jiti@2.4.2)(lightningcss@1.29.2)(rollup@4.40.0)(sass@1.86.3)(typescript@5.8.3):
dependencies:
'@astrojs/compiler': 2.11.0
'@astrojs/internal-helpers': 0.6.1
'@astrojs/markdown-remark': 6.3.1
- '@astrojs/telemetry': 3.2.0
+ '@astrojs/telemetry': 3.2.1
'@capsizecss/unpack': 2.4.0
'@oslojs/encoding': 1.1.0
'@rollup/pluginutils': 5.1.4(rollup@4.40.0)
@@ -2419,8 +2520,8 @@ snapshots:
diff: 5.2.0
dlv: 1.1.3
dset: 3.1.4
- es-module-lexer: 1.6.0
- esbuild: 0.25.2
+ es-module-lexer: 1.7.0
+ esbuild: 0.25.3
estree-walker: 3.0.3
flattie: 1.1.1
github-slugger: 2.0.0
@@ -2439,9 +2540,9 @@ snapshots:
prompts: 2.4.2
rehype: 13.0.2
semver: 7.7.1
- shiki: 3.2.2
+ shiki: 3.3.0
tinyexec: 0.3.2
- tinyglobby: 0.2.12
+ tinyglobby: 0.2.13
tsconfck: 3.1.5(typescript@5.8.3)
ultrahtml: 1.6.0
unifont: 0.2.0
@@ -2452,7 +2553,7 @@ snapshots:
vitefu: 1.0.6(vite@6.3.2(jiti@2.4.2)(lightningcss@1.29.2)(sass@1.86.3))
xxhash-wasm: 1.1.0
yargs-parser: 21.1.1
- yocto-spinner: 0.2.1
+ yocto-spinner: 0.2.2
zod: 3.24.3
zod-to-json-schema: 3.24.5(zod@3.24.3)
zod-to-ts: 1.2.0(typescript@5.8.3)(zod@3.24.3)
@@ -2501,8 +2602,12 @@ snapshots:
base64-js@1.5.1: {}
+ bcp-47-match@2.0.3: {}
+
blob-to-buffer@1.2.9: {}
+ boolbase@1.0.0: {}
+
boxen@8.0.1:
dependencies:
ansi-align: 3.0.1
@@ -2585,6 +2690,8 @@ snapshots:
dependencies:
uncrypto: 0.1.3
+ css-selector-parser@3.1.2: {}
+
css-tree@3.1.0:
dependencies:
mdn-data: 2.12.2
@@ -2611,7 +2718,7 @@ snapshots:
detect-libc@1.0.3:
optional: true
- detect-libc@2.0.3: {}
+ detect-libc@2.0.4: {}
deterministic-object-hash@2.0.2:
dependencies:
@@ -2627,6 +2734,8 @@ snapshots:
diff@5.2.0: {}
+ direction@2.0.1: {}
+
dlv@1.1.3: {}
dom-serializer@2.0.0:
@@ -2662,35 +2771,37 @@ snapshots:
entities@4.5.0: {}
- es-module-lexer@1.6.0: {}
+ entities@6.0.0: {}
+
+ es-module-lexer@1.7.0: {}
- esbuild@0.25.2:
+ esbuild@0.25.3:
optionalDependencies:
- '@esbuild/aix-ppc64': 0.25.2
- '@esbuild/android-arm': 0.25.2
- '@esbuild/android-arm64': 0.25.2
- '@esbuild/android-x64': 0.25.2
- '@esbuild/darwin-arm64': 0.25.2
- '@esbuild/darwin-x64': 0.25.2
- '@esbuild/freebsd-arm64': 0.25.2
- '@esbuild/freebsd-x64': 0.25.2
- '@esbuild/linux-arm': 0.25.2
- '@esbuild/linux-arm64': 0.25.2
- '@esbuild/linux-ia32': 0.25.2
- '@esbuild/linux-loong64': 0.25.2
- '@esbuild/linux-mips64el': 0.25.2
- '@esbuild/linux-ppc64': 0.25.2
- '@esbuild/linux-riscv64': 0.25.2
- '@esbuild/linux-s390x': 0.25.2
- '@esbuild/linux-x64': 0.25.2
- '@esbuild/netbsd-arm64': 0.25.2
- '@esbuild/netbsd-x64': 0.25.2
- '@esbuild/openbsd-arm64': 0.25.2
- '@esbuild/openbsd-x64': 0.25.2
- '@esbuild/sunos-x64': 0.25.2
- '@esbuild/win32-arm64': 0.25.2
- '@esbuild/win32-ia32': 0.25.2
- '@esbuild/win32-x64': 0.25.2
+ '@esbuild/aix-ppc64': 0.25.3
+ '@esbuild/android-arm': 0.25.3
+ '@esbuild/android-arm64': 0.25.3
+ '@esbuild/android-x64': 0.25.3
+ '@esbuild/darwin-arm64': 0.25.3
+ '@esbuild/darwin-x64': 0.25.3
+ '@esbuild/freebsd-arm64': 0.25.3
+ '@esbuild/freebsd-x64': 0.25.3
+ '@esbuild/linux-arm': 0.25.3
+ '@esbuild/linux-arm64': 0.25.3
+ '@esbuild/linux-ia32': 0.25.3
+ '@esbuild/linux-loong64': 0.25.3
+ '@esbuild/linux-mips64el': 0.25.3
+ '@esbuild/linux-ppc64': 0.25.3
+ '@esbuild/linux-riscv64': 0.25.3
+ '@esbuild/linux-s390x': 0.25.3
+ '@esbuild/linux-x64': 0.25.3
+ '@esbuild/netbsd-arm64': 0.25.3
+ '@esbuild/netbsd-x64': 0.25.3
+ '@esbuild/openbsd-arm64': 0.25.3
+ '@esbuild/openbsd-x64': 0.25.3
+ '@esbuild/sunos-x64': 0.25.3
+ '@esbuild/win32-arm64': 0.25.3
+ '@esbuild/win32-ia32': 0.25.3
+ '@esbuild/win32-x64': 0.25.3
escape-string-regexp@4.0.0: {}
@@ -2704,11 +2815,18 @@ snapshots:
eventemitter3@5.0.1: {}
+ expressive-code@0.41.2:
+ dependencies:
+ '@expressive-code/core': 0.41.2
+ '@expressive-code/plugin-frames': 0.41.2
+ '@expressive-code/plugin-shiki': 0.41.2
+ '@expressive-code/plugin-text-markers': 0.41.2
+
extend@3.0.2: {}
fast-deep-equal@3.1.3: {}
- fdir@6.4.3(picomatch@4.0.2):
+ fdir@6.4.4(picomatch@4.0.2):
optionalDependencies:
picomatch: 4.0.2
@@ -2761,7 +2879,7 @@ snapshots:
'@types/hast': 3.0.4
devlop: 1.1.0
hast-util-from-parse5: 8.0.3
- parse5: 7.2.1
+ parse5: 7.3.0
vfile: 6.0.3
vfile-message: 4.0.2
@@ -2776,6 +2894,10 @@ snapshots:
vfile-location: 5.0.3
web-namespaces: 2.0.1
+ hast-util-has-property@3.0.0:
+ dependencies:
+ '@types/hast': 3.0.4
+
hast-util-is-element@3.0.0:
dependencies:
'@types/hast': 3.0.4
@@ -2793,13 +2915,31 @@ snapshots:
hast-util-to-parse5: 8.0.0
html-void-elements: 3.0.0
mdast-util-to-hast: 13.2.0
- parse5: 7.2.1
+ parse5: 7.3.0
unist-util-position: 5.0.0
unist-util-visit: 5.0.0
vfile: 6.0.3
web-namespaces: 2.0.1
zwitch: 2.0.4
+ hast-util-select@6.0.4:
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/unist': 3.0.3
+ bcp-47-match: 2.0.3
+ comma-separated-tokens: 2.0.3
+ css-selector-parser: 3.1.2
+ devlop: 1.1.0
+ direction: 2.0.1
+ hast-util-has-property: 3.0.0
+ hast-util-to-string: 3.0.1
+ hast-util-whitespace: 3.0.0
+ nth-check: 2.1.1
+ property-information: 7.0.0
+ space-separated-tokens: 2.0.2
+ unist-util-visit: 5.0.0
+ zwitch: 2.0.4
+
hast-util-to-html@9.0.5:
dependencies:
'@types/hast': 3.0.4
@@ -2824,6 +2964,10 @@ snapshots:
web-namespaces: 2.0.1
zwitch: 2.0.4
+ hast-util-to-string@3.0.1:
+ dependencies:
+ '@types/hast': 3.0.4
+
hast-util-to-text@4.0.2:
dependencies:
'@types/hast': 3.0.4
@@ -2935,7 +3079,7 @@ snapshots:
lightningcss@1.29.2:
dependencies:
- detect-libc: 2.0.3
+ detect-libc: 2.0.4
optionalDependencies:
lightningcss-darwin-arm64: 1.29.2
lightningcss-darwin-x64: 1.29.2
@@ -3329,6 +3473,10 @@ snapshots:
normalize-path@3.0.0: {}
+ nth-check@2.1.1:
+ dependencies:
+ boolbase: 1.0.0
+
ofetch@1.4.1:
dependencies:
destr: 2.0.5
@@ -3372,9 +3520,9 @@ snapshots:
parse-srcset@1.0.2: {}
- parse5@7.2.1:
+ parse5@7.3.0:
dependencies:
- entities: 4.5.0
+ entities: 6.0.0
picocolors@1.1.1: {}
@@ -3382,11 +3530,21 @@ snapshots:
picomatch@4.0.2: {}
+ postcss-nested@6.2.0(postcss@8.5.3):
+ dependencies:
+ postcss: 8.5.3
+ postcss-selector-parser: 6.1.2
+
postcss-selector-parser@6.0.10:
dependencies:
cssesc: 3.0.0
util-deprecate: 1.0.2
+ postcss-selector-parser@6.1.2:
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+
postcss@8.5.3:
dependencies:
nanoid: 3.3.11
@@ -3422,6 +3580,10 @@ snapshots:
dependencies:
regex-utilities: 2.3.0
+ rehype-expressive-code@0.41.2:
+ dependencies:
+ expressive-code: 0.41.2
+
rehype-parse@9.0.1:
dependencies:
'@types/hast': 3.0.4
@@ -3566,7 +3728,7 @@ snapshots:
sharp@0.33.5:
dependencies:
color: 4.2.3
- detect-libc: 2.0.3
+ detect-libc: 2.0.4
semver: 7.7.1
optionalDependencies:
'@img/sharp-darwin-arm64': 0.33.5
@@ -3590,14 +3752,14 @@ snapshots:
'@img/sharp-win32-x64': 0.33.5
optional: true
- shiki@3.2.2:
+ shiki@3.3.0:
dependencies:
- '@shikijs/core': 3.2.2
- '@shikijs/engine-javascript': 3.2.2
- '@shikijs/engine-oniguruma': 3.2.2
- '@shikijs/langs': 3.2.2
- '@shikijs/themes': 3.2.2
- '@shikijs/types': 3.2.2
+ '@shikijs/core': 3.3.0
+ '@shikijs/engine-javascript': 3.3.0
+ '@shikijs/engine-oniguruma': 3.3.0
+ '@shikijs/langs': 3.3.0
+ '@shikijs/themes': 3.3.0
+ '@shikijs/types': 3.3.0
'@shikijs/vscode-textmate': 10.0.2
'@types/hast': 3.0.4
@@ -3656,9 +3818,9 @@ snapshots:
tinyexec@0.3.2: {}
- tinyglobby@0.2.12:
+ tinyglobby@0.2.13:
dependencies:
- fdir: 6.4.3(picomatch@4.0.2)
+ fdir: 6.4.4(picomatch@4.0.2)
picomatch: 4.0.2
to-regex-range@5.0.1:
@@ -3787,12 +3949,12 @@ snapshots:
vite@6.3.2(jiti@2.4.2)(lightningcss@1.29.2)(sass@1.86.3):
dependencies:
- esbuild: 0.25.2
- fdir: 6.4.3(picomatch@4.0.2)
+ esbuild: 0.25.3
+ fdir: 6.4.4(picomatch@4.0.2)
picomatch: 4.0.2
postcss: 8.5.3
rollup: 4.40.0
- tinyglobby: 0.2.12
+ tinyglobby: 0.2.13
optionalDependencies:
fsevents: 2.3.3
jiti: 2.4.2
@@ -3834,7 +3996,7 @@ snapshots:
yocto-queue@1.2.1: {}
- yocto-spinner@0.2.1:
+ yocto-spinner@0.2.2:
dependencies:
yoctocolors: 2.1.1
diff --git a/src/components/BaseHead.astro b/src/components/BaseHead.astro
index f38480b..5ad492d 100644
--- a/src/components/BaseHead.astro
+++ b/src/components/BaseHead.astro
@@ -62,45 +62,36 @@ const { title, description, image } = Astro.props;
{ image && ( ) }
-
+
diff --git a/src/styles/global.css b/src/styles/global.css
index dcb17c3..953e77d 100644
--- a/src/styles/global.css
+++ b/src/styles/global.css
@@ -113,16 +113,6 @@
--color-yellow: #df8e1d;
--color-purple: #8839ef;
--color-red: #d20f39;
-
- .astro-code,
- .astro-code span {
- color: var(--shiki-light) !important;
- background-color: var(--shiki-light-bg) !important;
- /* Optional, if you also want font styles */
- font-style: var(--shiki-light-font-style) !important;
- font-weight: var(--shiki-light-font-weight) !important;
- text-decoration: var(--shiki-light-text-decoration) !important;
- }
}
[data-theme="catppuccin_mocha"] {
@@ -140,16 +130,6 @@
--color-yellow: #f9e2af;
--color-purple: #cba6f7;
--color-red: #f38ba8;
-
- .astro-code,
- .astro-code span {
- color: var(--shiki-catppuccin_mocha_dark) !important;
- background-color: var(--shiki-catppuccin_mocha-bg) !important;
- /* Optional, if you also want font styles */
- font-style: var(--shiki-catppuccin_mocha-font-style) !important;
- font-weight: var(--shiki-catppuccin_mocha-font-weight) !important;
- text-decoration: var(--shiki-catppuccin_mocha-text-decoration) !important;
- }
}
[data-theme="catppuccin_macchiato"] {
@@ -167,18 +147,6 @@
--color-yellow: #eed49f;
--color-purple: #c6a0f6;
--color-red: #ed8796;
-
- .astro-code,
- .astro-code span {
- color: var(--shiki-catppuccin_macchiato) !important;
- background-color: var(--shiki-catppuccin_macchiato-bg) !important;
- /* Optional, if you also want font styles */
- font-style: var(--shiki-catppuccin_macchiato-font-style) !important;
- font-weight: var(--shiki-catppuccin_macchiato-font-weight) !important;
- text-decoration: var(
- --shiki-catppuccin_macchiato-text-decoration
- ) !important;
- }
}
[data-theme="catppuccin_frappe"] {
@@ -196,18 +164,6 @@
--color-yellow: #e5c890;
--color-purple: #ca9ee6;
--color-red: #e78284;
-
- .astro-code,
- .astro-code span {
- color: var(--shiki-catppuccin_frappe) !important;
- background-color: var(--shiki-catppuccin_frappe-bg) !important;
- /* Optional, if you also want font styles */
- font-style: var(--shiki-catppuccin_frappe-font-style) !important;
- font-weight: var(--shiki-catppuccin_frappe-font-weight) !important;
- text-decoration: var(
- --shiki-catppuccin_frappe-text-decoration
- ) !important;
- }
}
[data-theme="catppuccin_latte"] {
@@ -225,16 +181,6 @@
--color-yellow: #df8e1d;
--color-purple: #8839ef;
--color-red: #d20f39;
-
- .astro-code,
- .astro-code span {
- color: var(--shiki-catppuccin_latte) !important;
- background-color: var(--shiki-catppuccin_latte-bg) !important;
- /* Optional, if you also want font styles */
- font-style: var(--shiki-catppuccin_latte-font-style) !important;
- font-weight: var(--shiki-catppuccin_latte-font-weight) !important;
- text-decoration: var(--shiki-catppuccin_latte-text-decoration) !important;
- }
}
[data-theme="evergarden"] {