Fixed some bugs and added contact info

This commit is contained in:
2025-01-30 20:38:38 +00:00
parent 6ba363c2c9
commit 99dba7d0c3
7 changed files with 278 additions and 229 deletions

346
package-lock.json generated
View File

@@ -8,19 +8,19 @@
"name": "www-lbfalvy-com", "name": "www-lbfalvy-com",
"version": "0.0.1", "version": "0.0.1",
"dependencies": { "dependencies": {
"@astrojs/mdx": "^4.0.7", "@astrojs/mdx": "^4.0.8",
"@astrojs/react": "^4.1.6", "@astrojs/react": "^4.2.0",
"@astrojs/rss": "^4.0.11", "@astrojs/rss": "^4.0.11",
"@astrojs/sitemap": "^3.2.1", "@astrojs/sitemap": "^3.2.1",
"@astrojs/svelte": "^7.0.4", "@astrojs/svelte": "^7.0.4",
"@js-temporal/polyfill": "^0.4.4", "@js-temporal/polyfill": "^0.4.4",
"@tailwindcss/vite": "^4.0.0", "@tailwindcss/vite": "^4.0.1",
"astro": "^5.1.9", "astro": "^5.2.1",
"rehype-autolink-headings": "^7.1.0", "rehype-autolink-headings": "^7.1.0",
"rehype-slug": "^6.0.0", "rehype-slug": "^6.0.0",
"remark-toc": "^9.0.0", "remark-toc": "^9.0.0",
"shiki": "^2.1.0", "shiki": "^2.2.0",
"svelte": "^5.19.3", "svelte": "^5.19.6",
"tailwindcss": "^4.0.0", "tailwindcss": "^4.0.0",
"typescript": "^5.7.3" "typescript": "^5.7.3"
} }
@@ -45,15 +45,15 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/@astrojs/internal-helpers": { "node_modules/@astrojs/internal-helpers": {
"version": "0.4.2", "version": "0.5.0",
"resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.4.2.tgz", "resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.5.0.tgz",
"integrity": "sha512-EdDWkC3JJVcpGpqJAU/5hSk2LKXyG3mNGkzGoAuyK+xoPHbaVdSuIWoN1QTnmK3N/gGfaaAfM8gO2KDCAW7S3w==", "integrity": "sha512-CgB5ZaZO1PFG+rbjF3HnA7G6gIBjJ070xb7bUjeu5Gqqufma+t6fpuRWMXnK2iEO3zVyX7e/xplPlqtFKy/lvw==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/@astrojs/markdown-remark": { "node_modules/@astrojs/markdown-remark": {
"version": "6.0.2", "version": "6.1.0",
"resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-6.0.2.tgz", "resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-6.1.0.tgz",
"integrity": "sha512-aAoHGVRK3rebCYbaLjyyR+3VeAuTz4q49syUxJP29Oo5yZHdy4cCAXRqLBdr9mJVlxCUUjZiF0Dau6YBf65SGg==", "integrity": "sha512-emZNNSTPGgPc3V399Cazpp5+snogjaF04ocOSQn9vy3Kw/eIC4vTQjXOrWDEoSEy+AwPDZX9bQ4wd3bxhpmGgQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@astrojs/prism": "3.2.0", "@astrojs/prism": "3.2.0",
@@ -69,7 +69,8 @@
"remark-parse": "^11.0.0", "remark-parse": "^11.0.0",
"remark-rehype": "^11.1.1", "remark-rehype": "^11.1.1",
"remark-smartypants": "^3.0.2", "remark-smartypants": "^3.0.2",
"shiki": "^1.26.2", "shiki": "^1.29.1",
"smol-toml": "^1.3.1",
"unified": "^11.0.5", "unified": "^11.0.5",
"unist-util-remove-position": "^5.0.0", "unist-util-remove-position": "^5.0.0",
"unist-util-visit": "^5.0.0", "unist-util-visit": "^5.0.0",
@@ -78,62 +79,62 @@
} }
}, },
"node_modules/@astrojs/markdown-remark/node_modules/@shikijs/core": { "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/core": {
"version": "1.29.1", "version": "1.29.2",
"resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.29.1.tgz", "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.29.2.tgz",
"integrity": "sha512-Mo1gGGkuOYjDu5H8YwzmOuly9vNr8KDVkqj9xiKhhhFS8jisAtDSEWB9hzqRHLVQgFdA310e8XRJcW4tYhRB2A==", "integrity": "sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/engine-javascript": "1.29.1", "@shikijs/engine-javascript": "1.29.2",
"@shikijs/engine-oniguruma": "1.29.1", "@shikijs/engine-oniguruma": "1.29.2",
"@shikijs/types": "1.29.1", "@shikijs/types": "1.29.2",
"@shikijs/vscode-textmate": "^10.0.1", "@shikijs/vscode-textmate": "^10.0.1",
"@types/hast": "^3.0.4", "@types/hast": "^3.0.4",
"hast-util-to-html": "^9.0.4" "hast-util-to-html": "^9.0.4"
} }
}, },
"node_modules/@astrojs/markdown-remark/node_modules/@shikijs/engine-javascript": { "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/engine-javascript": {
"version": "1.29.1", "version": "1.29.2",
"resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.29.1.tgz", "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.29.2.tgz",
"integrity": "sha512-Hpi8k9x77rCQ7F/7zxIOUruNkNidMyBnP5qAGbLFqg4kRrg1HZhkB8btib5EXbQWTtLb5gBHOdBwshk20njD7Q==", "integrity": "sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/types": "1.29.1", "@shikijs/types": "1.29.2",
"@shikijs/vscode-textmate": "^10.0.1", "@shikijs/vscode-textmate": "^10.0.1",
"oniguruma-to-es": "^2.2.0" "oniguruma-to-es": "^2.2.0"
} }
}, },
"node_modules/@astrojs/markdown-remark/node_modules/@shikijs/engine-oniguruma": { "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/engine-oniguruma": {
"version": "1.29.1", "version": "1.29.2",
"resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.1.tgz", "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz",
"integrity": "sha512-gSt2WhLNgEeLstcweQOSp+C+MhOpTsgdNXRqr3zP6M+BUBZ8Md9OU2BYwUYsALBxHza7hwaIWtFHjQ/aOOychw==", "integrity": "sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/types": "1.29.1", "@shikijs/types": "1.29.2",
"@shikijs/vscode-textmate": "^10.0.1" "@shikijs/vscode-textmate": "^10.0.1"
} }
}, },
"node_modules/@astrojs/markdown-remark/node_modules/@shikijs/langs": { "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/langs": {
"version": "1.29.1", "version": "1.29.2",
"resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.1.tgz", "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.2.tgz",
"integrity": "sha512-iERn4HlyuT044/FgrvLOaZgKVKf3PozjKjyV/RZ5GnlyYEAZFcgwHGkYboeBv2IybQG1KVS/e7VGgiAU4JY2Gw==", "integrity": "sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/types": "1.29.1" "@shikijs/types": "1.29.2"
} }
}, },
"node_modules/@astrojs/markdown-remark/node_modules/@shikijs/themes": { "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/themes": {
"version": "1.29.1", "version": "1.29.2",
"resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.1.tgz", "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.2.tgz",
"integrity": "sha512-lb11zf72Vc9uxkl+aec2oW1HVTHJ2LtgZgumb4Rr6By3y/96VmlU44bkxEb8WBWH3RUtbqAJEN0jljD9cF7H7g==", "integrity": "sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/types": "1.29.1" "@shikijs/types": "1.29.2"
} }
}, },
"node_modules/@astrojs/markdown-remark/node_modules/@shikijs/types": { "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/types": {
"version": "1.29.1", "version": "1.29.2",
"resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.29.1.tgz", "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.29.2.tgz",
"integrity": "sha512-aBqAuhYRp5vSir3Pc9+QPu9WESBOjUo03ao0IHLC4TyTioSsp/SkbAZSrIH4ghYYC1T1KTEpRSBa83bas4RnPA==", "integrity": "sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/vscode-textmate": "^10.0.1", "@shikijs/vscode-textmate": "^10.0.1",
@@ -141,28 +142,28 @@
} }
}, },
"node_modules/@astrojs/markdown-remark/node_modules/shiki": { "node_modules/@astrojs/markdown-remark/node_modules/shiki": {
"version": "1.29.1", "version": "1.29.2",
"resolved": "https://registry.npmjs.org/shiki/-/shiki-1.29.1.tgz", "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.29.2.tgz",
"integrity": "sha512-TghWKV9pJTd/N+IgAIVJtr0qZkB7FfFCUrrEJc0aRmZupo3D1OCVRknQWVRVA7AX/M0Ld7QfoAruPzr3CnUJuw==", "integrity": "sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/core": "1.29.1", "@shikijs/core": "1.29.2",
"@shikijs/engine-javascript": "1.29.1", "@shikijs/engine-javascript": "1.29.2",
"@shikijs/engine-oniguruma": "1.29.1", "@shikijs/engine-oniguruma": "1.29.2",
"@shikijs/langs": "1.29.1", "@shikijs/langs": "1.29.2",
"@shikijs/themes": "1.29.1", "@shikijs/themes": "1.29.2",
"@shikijs/types": "1.29.1", "@shikijs/types": "1.29.2",
"@shikijs/vscode-textmate": "^10.0.1", "@shikijs/vscode-textmate": "^10.0.1",
"@types/hast": "^3.0.4" "@types/hast": "^3.0.4"
} }
}, },
"node_modules/@astrojs/mdx": { "node_modules/@astrojs/mdx": {
"version": "4.0.7", "version": "4.0.8",
"resolved": "https://registry.npmjs.org/@astrojs/mdx/-/mdx-4.0.7.tgz", "resolved": "https://registry.npmjs.org/@astrojs/mdx/-/mdx-4.0.8.tgz",
"integrity": "sha512-d3PopBTbbCoX3QOmSLYXW6YCZ0dkhNaeP9/Liz9BhEekflMc9IvBjbtNFf1WCEatsl4LLGftyDisfMM3F3LGMA==", "integrity": "sha512-/aiLr2yQ55W9AbpyOgfMtFXk7g2t7XoWdC2Avps/NqxAx4aYONDLneX43D79QwgqdjFhin7o3cIPp/vVppMbaA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@astrojs/markdown-remark": "6.0.2", "@astrojs/markdown-remark": "6.1.0",
"@mdx-js/mdx": "^3.1.0", "@mdx-js/mdx": "^3.1.0",
"acorn": "^8.14.0", "acorn": "^8.14.0",
"es-module-lexer": "^1.6.0", "es-module-lexer": "^1.6.0",
@@ -196,9 +197,9 @@
} }
}, },
"node_modules/@astrojs/react": { "node_modules/@astrojs/react": {
"version": "4.1.6", "version": "4.2.0",
"resolved": "https://registry.npmjs.org/@astrojs/react/-/react-4.1.6.tgz", "resolved": "https://registry.npmjs.org/@astrojs/react/-/react-4.2.0.tgz",
"integrity": "sha512-lMBO+Va4JbLsXviagT9/ZmliwfQGmsiw4rvI4yusPZijQek3q5yfEnQor5XWNcErrkazjjNxY9BFO5f/eSfqmw==", "integrity": "sha512-2OccnYFK+mLuy9GpJqPM3BQGvvemnXNeww+nBVYFuiH04L7YIdfg4Gq0LT7v/BraiuADV5uTl9VhTDL/ZQPAhw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@vitejs/plugin-react": "^4.3.4", "@vitejs/plugin-react": "^4.3.4",
@@ -1739,62 +1740,62 @@
] ]
}, },
"node_modules/@shikijs/core": { "node_modules/@shikijs/core": {
"version": "2.1.0", "version": "2.2.0",
"resolved": "https://registry.npmjs.org/@shikijs/core/-/core-2.1.0.tgz", "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-2.2.0.tgz",
"integrity": "sha512-v795KDmvs+4oV0XD05YLzfDMe9ISBgNjtFxP4PAEv5DqyeghO1/TwDqs9ca5/E6fuO95IcAcWqR6cCX9TnqLZA==", "integrity": "sha512-U+vpKdsQDWuX3fPTCkSc8XPX9dCaS+r+qEP1XhnU30yxRFo2OxHJmY2H5rO1q+v0zB5R2vobsxEFt5uPf31CGQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/engine-javascript": "2.1.0", "@shikijs/engine-javascript": "2.2.0",
"@shikijs/engine-oniguruma": "2.1.0", "@shikijs/engine-oniguruma": "2.2.0",
"@shikijs/types": "2.1.0", "@shikijs/types": "2.2.0",
"@shikijs/vscode-textmate": "^10.0.1", "@shikijs/vscode-textmate": "^10.0.1",
"@types/hast": "^3.0.4", "@types/hast": "^3.0.4",
"hast-util-to-html": "^9.0.4" "hast-util-to-html": "^9.0.4"
} }
}, },
"node_modules/@shikijs/engine-javascript": { "node_modules/@shikijs/engine-javascript": {
"version": "2.1.0", "version": "2.2.0",
"resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-2.1.0.tgz", "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-2.2.0.tgz",
"integrity": "sha512-cgIUdAliOsoaa0rJz/z+jvhrpRd+fVAoixVFEVxUq5FA+tHgBZAIfVJSgJNVRj2hs/wZ1+4hMe82eKAThVh0nQ==", "integrity": "sha512-96SpZ4V3UVMtpSPR5QpmU395CNrQiRPszXK62m8gKR2HMA0653ruce7omS5eX6EyAyFSYHvBWtTuspiIsHpu4A==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/types": "2.1.0", "@shikijs/types": "2.2.0",
"@shikijs/vscode-textmate": "^10.0.1", "@shikijs/vscode-textmate": "^10.0.1",
"oniguruma-to-es": "^2.3.0" "oniguruma-to-es": "^2.3.0"
} }
}, },
"node_modules/@shikijs/engine-oniguruma": { "node_modules/@shikijs/engine-oniguruma": {
"version": "2.1.0", "version": "2.2.0",
"resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-2.1.0.tgz", "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-2.2.0.tgz",
"integrity": "sha512-Ujik33wEDqgqY2WpjRDUBECGcKPv3eGGkoXPujIXvokLaRmGky8NisSk8lHUGeSFxo/Cz5sgFej9sJmA9yeepg==", "integrity": "sha512-wowCKwkvPFFMXFkiKK/a2vs5uTCc0W9+O9Xcu/oqFP6VoDFe14T8u/D+Rl4dCJJSOyeynP9mxNPJ82T5JHTNCw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/types": "2.1.0", "@shikijs/types": "2.2.0",
"@shikijs/vscode-textmate": "^10.0.1" "@shikijs/vscode-textmate": "^10.0.1"
} }
}, },
"node_modules/@shikijs/langs": { "node_modules/@shikijs/langs": {
"version": "2.1.0", "version": "2.2.0",
"resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-2.1.0.tgz", "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-2.2.0.tgz",
"integrity": "sha512-Jn0gS4rPgerMDPj1ydjgFzZr5fAIoMYz4k7ZT3LJxWWBWA6lokK0pumUwVtb+MzXtlpjxOaQejLprmLbvMZyww==", "integrity": "sha512-RSWLH3bnoyG6O1kZ2msh5jOkKKp8eENwyT30n62vUtXfp5cxkF/bpWPpO+p4+GAPhL2foBWR2kOerwkKG0HXlQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/types": "2.1.0" "@shikijs/types": "2.2.0"
} }
}, },
"node_modules/@shikijs/themes": { "node_modules/@shikijs/themes": {
"version": "2.1.0", "version": "2.2.0",
"resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-2.1.0.tgz", "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-2.2.0.tgz",
"integrity": "sha512-oS2mU6+bz+8TKutsjBxBA7Z3vrQk21RCmADLpnu8cy3tZD6Rw0FKqDyXNtwX52BuIDKHxZNmRlTdG3vtcYv3NQ==", "integrity": "sha512-8Us9ZF2mV9kuh+4ySJ9MzrUDIpc2RIkRfKBZclkliW1z9a0PlGU2U7fCkItZZHpR5e4/ft5BzuO+GDqombC6Aw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/types": "2.1.0" "@shikijs/types": "2.2.0"
} }
}, },
"node_modules/@shikijs/types": { "node_modules/@shikijs/types": {
"version": "2.1.0", "version": "2.2.0",
"resolved": "https://registry.npmjs.org/@shikijs/types/-/types-2.1.0.tgz", "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-2.2.0.tgz",
"integrity": "sha512-OFOdHA6VEVbiQvepJ8yqicC6VmBrKxFFhM2EsHHrZESqLVAXOSeRDiuSYV185lIgp15TVic5vYBYNhTsk1xHLg==", "integrity": "sha512-wkZZKs80NtW5Jp/7ONI1j7EdXSatX2BKMS7I01wliDa09gJKHkZyVqlEMRka/mjT5Qk9WgAyitoCKgGgbsP/9g==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/vscode-textmate": "^10.0.1", "@shikijs/vscode-textmate": "^10.0.1",
@@ -1846,51 +1847,42 @@
} }
}, },
"node_modules/@tailwindcss/node": { "node_modules/@tailwindcss/node": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.0.1.tgz",
"integrity": "sha512-tfG2uBvo6j6kDIPmntxwXggCOZAt7SkpAXJ6pTIYirNdk5FBqh/CZZ9BZPpgcl/tNFLs6zc4yghM76sqiELG9g==", "integrity": "sha512-lc+ly6PKHqgCVl7eO8D2JlV96Lks5bmL6pdtM6UasyUHLU2zmrOqU6jfgln120IVnCh3VC8GG/ca24xVTtSokw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"enhanced-resolve": "^5.18.0", "enhanced-resolve": "^5.18.0",
"jiti": "^2.4.2", "jiti": "^2.4.2",
"tailwindcss": "4.0.0" "tailwindcss": "4.0.1"
}
},
"node_modules/@tailwindcss/node/node_modules/jiti": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz",
"integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==",
"license": "MIT",
"bin": {
"jiti": "lib/jiti-cli.mjs"
} }
}, },
"node_modules/@tailwindcss/oxide": { "node_modules/@tailwindcss/oxide": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.0.1.tgz",
"integrity": "sha512-W3FjpJgy4VV1JiL7iBYDf2n/WkeDg1Il+0Q7eWnqPyvkPPCo/Mbwc5BiaT7dfBNV6tQKAhVE34rU5xl8pSl50w==", "integrity": "sha512-3z1SpWoDeaA6K6jd92CRrGyDghOcRILEgyWVHRhaUm/tcpiazwJpU9BSG0xB7GGGnl9capojaC+zme/nKsZd/w==",
"license": "MIT", "license": "MIT",
"engines": { "engines": {
"node": ">= 10" "node": ">= 10"
}, },
"optionalDependencies": { "optionalDependencies": {
"@tailwindcss/oxide-android-arm64": "4.0.0", "@tailwindcss/oxide-android-arm64": "4.0.1",
"@tailwindcss/oxide-darwin-arm64": "4.0.0", "@tailwindcss/oxide-darwin-arm64": "4.0.1",
"@tailwindcss/oxide-darwin-x64": "4.0.0", "@tailwindcss/oxide-darwin-x64": "4.0.1",
"@tailwindcss/oxide-freebsd-x64": "4.0.0", "@tailwindcss/oxide-freebsd-x64": "4.0.1",
"@tailwindcss/oxide-linux-arm-gnueabihf": "4.0.0", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.0.1",
"@tailwindcss/oxide-linux-arm64-gnu": "4.0.0", "@tailwindcss/oxide-linux-arm64-gnu": "4.0.1",
"@tailwindcss/oxide-linux-arm64-musl": "4.0.0", "@tailwindcss/oxide-linux-arm64-musl": "4.0.1",
"@tailwindcss/oxide-linux-x64-gnu": "4.0.0", "@tailwindcss/oxide-linux-x64-gnu": "4.0.1",
"@tailwindcss/oxide-linux-x64-musl": "4.0.0", "@tailwindcss/oxide-linux-x64-musl": "4.0.1",
"@tailwindcss/oxide-win32-arm64-msvc": "4.0.0", "@tailwindcss/oxide-win32-arm64-msvc": "4.0.1",
"@tailwindcss/oxide-win32-x64-msvc": "4.0.0" "@tailwindcss/oxide-win32-x64-msvc": "4.0.1"
} }
}, },
"node_modules/@tailwindcss/oxide-android-arm64": { "node_modules/@tailwindcss/oxide-android-arm64": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.0.1.tgz",
"integrity": "sha512-EAhjU0+FIdyGPR+7MbBWubLLPtmOu+p7c2egTTFBRk/n//zYjNvVK0WhcBK5Y7oUB5mo4EjA2mCbY7dcEMWSRw==", "integrity": "sha512-eP/rI9WaAElpeiiHDqGtDqga9iDsOClXxIqdHayHsw93F24F03b60CwgGhrGF9Io/EuWIpz3TMRhPVOLhoXivw==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -1904,9 +1896,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-darwin-arm64": { "node_modules/@tailwindcss/oxide-darwin-arm64": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.0.1.tgz",
"integrity": "sha512-hdz4xnSWS11cIp+7ye+3dGHqs0X33z+BXXTtgPOguDWVa+TdXUzwxonklSzf5wlJFuot3dv5eWzhlNai0oYYQg==", "integrity": "sha512-jZVUo0kNd1IjxdCYwg4dwegDNsq7PoUx4LM814RmgY3gfJ63Y6GlpJXHOpd5FLv1igpeZox5LzRk2oz8MQoJwQ==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -1920,9 +1912,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-darwin-x64": { "node_modules/@tailwindcss/oxide-darwin-x64": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.0.1.tgz",
"integrity": "sha512-+dOUUaXTkPKKhtUI9QtVaYg+MpmLh2CN0dHohiYXaBirEyPMkjaT0zbRgzQlNnQWjCVVXPQluIEb0OMEjSTH+Q==", "integrity": "sha512-E31wHiIf4LB0aKRohrS4U6XfFSACCL9ifUFfPQ16FhcBIL4wU5rcBidvWvT9TQFGPkpE69n5dyXUcqiMrnF/Ig==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -1936,9 +1928,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-freebsd-x64": { "node_modules/@tailwindcss/oxide-freebsd-x64": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.0.1.tgz",
"integrity": "sha512-CJhGDhxnrmu4SwyC62fA+wP24MhA/TZlIhRHqg1kRuIHoGoVR2uSSm1qxTxU37tSSZj8Up0q6jsBJCAP4k7rgQ==", "integrity": "sha512-8/3ZKLMYqgAsBzTeczOKWtT4geF02g9S7cntY5gvqQZ4E0ImX724cHcZJi9k6fkE6aLbvwxxHxaShFvRxblwKQ==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -1952,9 +1944,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.0.1.tgz",
"integrity": "sha512-Wy7Av0xzXfY2ujZBcYy4+7GQm25/J1iHvlQU2CfwdDCuPWfIjYzR6kggz+uVdSJyKV2s64znchBxRE8kV4uXSA==", "integrity": "sha512-EYjbh225klQfWzy6LeIAfdjHCK+p71yLV/GjdPNW47Bfkkq05fTzIhHhCgshUvNp78EIA33iQU+ktWpW06NgHw==",
"cpu": [ "cpu": [
"arm" "arm"
], ],
@@ -1968,9 +1960,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-linux-arm64-gnu": { "node_modules/@tailwindcss/oxide-linux-arm64-gnu": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.0.1.tgz",
"integrity": "sha512-srwBo2l6pvM0swBntc1ucuhGsfFOLkqPRFQ3dWARRTfSkL1U9nAsob2MKc/n47Eva/W9pZZgMOuf7rDw8pK1Ew==", "integrity": "sha512-PrX2SwIqWNP5cYeSyQfrhbk4ffOM338T6CrEwIAGvLPoUZiklt19yknlsBme6bReSw7TSAMy+8KFdLLi5fcWNQ==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -1984,9 +1976,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-linux-arm64-musl": { "node_modules/@tailwindcss/oxide-linux-arm64-musl": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.0.1.tgz",
"integrity": "sha512-abhusswkduYWuezkBmgo0K0/erGq3M4Se5xP0fhc/0dKs0X/rJUYYCFWntHb3IGh3aVzdQ0SXJs93P76DbUqtw==", "integrity": "sha512-iuoFGhKDojtfloi5uj6MIk4kxEOGcsAk/kPbZItF9Dp7TnzVhxo2U/718tXhxGrg6jSL3ST3cQHIjA6yw3OeXw==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -2000,9 +1992,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-linux-x64-gnu": { "node_modules/@tailwindcss/oxide-linux-x64-gnu": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.0.1.tgz",
"integrity": "sha512-hGtRYIUEx377/HlU49+jvVKKwU1MDSKYSMMs0JFO2Wp7LGxk5+0j5+RBk9NFnmp/lbp32yPTgIOO5m1BmDq36A==", "integrity": "sha512-pNUrGQYyE8RK+N9yvkPmHnlKDfFbni9A3lsi37u4RoA/6Yn+zWVoegvAQMZu3w+jqnpb2A/bYJ+LumcclUZ3yg==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -2016,9 +2008,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-linux-x64-musl": { "node_modules/@tailwindcss/oxide-linux-x64-musl": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.0.1.tgz",
"integrity": "sha512-7xgQgSAThs0I14VAgmxpJnK6XFSZBxHMGoDXkLyYkEnu+8WRQMbCP93dkCUn2PIv+Q+JulRgc00PJ09uORSLXQ==", "integrity": "sha512-xSGWaDcT6SJ75su9zWXj8GYb2jM/przXwZGH96RTS7HGDIoI1tvgpls88YajG5Sx7hXaqAWCufjw5L/dlu+lzg==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -2032,9 +2024,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-win32-arm64-msvc": { "node_modules/@tailwindcss/oxide-win32-arm64-msvc": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.0.1.tgz",
"integrity": "sha512-qEcgTIPcWY5ZE7f6VxQ/JPrSFMcehzVIlZj7sGE3mVd5YWreAT+Fl1vSP8q2pjnWXn0avZG3Iw7a2hJQAm+fTQ==", "integrity": "sha512-BUNL2isUZ2yWnbplPddggJpZxsqGHPZ1RJAYpu63W4znUnKCzI4m/jiy0WpyYqqOKL9jDM5q0QdsQ9mc3aw5YQ==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@@ -2048,9 +2040,9 @@
} }
}, },
"node_modules/@tailwindcss/oxide-win32-x64-msvc": { "node_modules/@tailwindcss/oxide-win32-x64-msvc": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.0.1.tgz",
"integrity": "sha512-bqT0AY8RXb8GMDy28JtngvqaOSB2YixbLPLvUo6I6lkvvUwA6Eqh2Tj60e2Lh7O/k083f8tYiB0WEK4wmTI7Jg==", "integrity": "sha512-ZtcVu+XXOddGsPlvO5nh2fnbKmwly2C07ZB1lcYCf/b8qIWF04QY9o6vy6/+6ioLRfbp3E7H/ipFio38DZX4oQ==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@@ -2064,15 +2056,15 @@
} }
}, },
"node_modules/@tailwindcss/vite": { "node_modules/@tailwindcss/vite": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.0.0.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.0.1.tgz",
"integrity": "sha512-4uukMiU9gHui8KMPMdWic5SP1O/tmQ1NFSRNrQWmcop5evAVl/LZ6/LuWL3quEiecp2RBcRWwqJrG+mFXlRlew==", "integrity": "sha512-ZkwMBA7uR+nyrafIZI8ce3PduE0dDVFVmxmInCUPTN17Jgy6RfEPXzqtL5fz658eDDxKa5xZ+gmiTt+5AMD0pw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@tailwindcss/node": "^4.0.0", "@tailwindcss/node": "^4.0.1",
"@tailwindcss/oxide": "^4.0.0", "@tailwindcss/oxide": "^4.0.1",
"lightningcss": "^1.29.1", "lightningcss": "^1.29.1",
"tailwindcss": "4.0.0" "tailwindcss": "4.0.1"
}, },
"peerDependencies": { "peerDependencies": {
"vite": "^5.2.0 || ^6" "vite": "^5.2.0 || ^6"
@@ -2442,14 +2434,14 @@
} }
}, },
"node_modules/astro": { "node_modules/astro": {
"version": "5.1.9", "version": "5.2.1",
"resolved": "https://registry.npmjs.org/astro/-/astro-5.1.9.tgz", "resolved": "https://registry.npmjs.org/astro/-/astro-5.2.1.tgz",
"integrity": "sha512-QB3MH7Ul3gEvmHXEfvPkGpTZyyB/TBKQbm0kTHpo0BTEB7BvaY+wrcWiGEJBVDpVdEAKY9fM3zrJ0c7hZSXVlw==", "integrity": "sha512-OYR2kUo9EqX6OYZ1OmM14xP8mjFwgrk1FzIr+3K3tS0gCCKJsXtfboCUhX3lODZFIsmY/on7NPZd+2PURA0R2Q==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@astrojs/compiler": "^2.10.3", "@astrojs/compiler": "^2.10.3",
"@astrojs/internal-helpers": "0.4.2", "@astrojs/internal-helpers": "0.5.0",
"@astrojs/markdown-remark": "6.0.2", "@astrojs/markdown-remark": "6.1.0",
"@astrojs/telemetry": "3.2.0", "@astrojs/telemetry": "3.2.0",
"@oslojs/encoding": "^1.1.0", "@oslojs/encoding": "^1.1.0",
"@rollup/pluginutils": "^5.1.4", "@rollup/pluginutils": "^5.1.4",
@@ -2497,7 +2489,7 @@
"unist-util-visit": "^5.0.0", "unist-util-visit": "^5.0.0",
"unstorage": "^1.14.4", "unstorage": "^1.14.4",
"vfile": "^6.0.3", "vfile": "^6.0.3",
"vite": "^6.0.9", "vite": "^6.0.11",
"vitefu": "^1.0.5", "vitefu": "^1.0.5",
"which-pm": "^3.0.0", "which-pm": "^3.0.0",
"xxhash-wasm": "^1.1.0", "xxhash-wasm": "^1.1.0",
@@ -4058,14 +4050,12 @@
} }
}, },
"node_modules/jiti": { "node_modules/jiti": {
"version": "1.21.7", "version": "2.4.2",
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz",
"integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==",
"license": "MIT", "license": "MIT",
"optional": true,
"peer": true,
"bin": { "bin": {
"jiti": "bin/jiti.js" "jiti": "lib/jiti-cli.mjs"
} }
}, },
"node_modules/js-tokens": { "node_modules/js-tokens": {
@@ -6557,17 +6547,17 @@
} }
}, },
"node_modules/shiki": { "node_modules/shiki": {
"version": "2.1.0", "version": "2.2.0",
"resolved": "https://registry.npmjs.org/shiki/-/shiki-2.1.0.tgz", "resolved": "https://registry.npmjs.org/shiki/-/shiki-2.2.0.tgz",
"integrity": "sha512-yvKPdNGLXZv7WC4bl7JBbU3CEcUxnBanvMez8MG3gZXKpClGL4bHqFyLhTx+2zUvbjClUANs/S22HXb7aeOgmA==", "integrity": "sha512-3uoZBmc+zpd2JOEeTvKP/vK5UVDDe8YiigkT9flq+MV5Z1MKFiUXfbLIvHfqcJ+V90StDiP1ckN97z1WlhC6cQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@shikijs/core": "2.1.0", "@shikijs/core": "2.2.0",
"@shikijs/engine-javascript": "2.1.0", "@shikijs/engine-javascript": "2.2.0",
"@shikijs/engine-oniguruma": "2.1.0", "@shikijs/engine-oniguruma": "2.2.0",
"@shikijs/langs": "2.1.0", "@shikijs/langs": "2.2.0",
"@shikijs/themes": "2.1.0", "@shikijs/themes": "2.2.0",
"@shikijs/types": "2.1.0", "@shikijs/types": "2.2.0",
"@shikijs/vscode-textmate": "^10.0.1", "@shikijs/vscode-textmate": "^10.0.1",
"@types/hast": "^3.0.4" "@types/hast": "^3.0.4"
} }
@@ -6613,6 +6603,18 @@
"integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==", "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/smol-toml": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.3.1.tgz",
"integrity": "sha512-tEYNll18pPKHroYSmLLrksq233j021G0giwW7P3D24jC54pQ5W5BXMsQ/Mvw1OJCmEYDgY+lrzT+3nNUtoNfXQ==",
"license": "BSD-3-Clause",
"engines": {
"node": ">= 18"
},
"funding": {
"url": "https://github.com/sponsors/cyyynthia"
}
},
"node_modules/source-map": { "node_modules/source-map": {
"version": "0.7.4", "version": "0.7.4",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
@@ -6724,9 +6726,9 @@
} }
}, },
"node_modules/svelte": { "node_modules/svelte": {
"version": "5.19.3", "version": "5.19.6",
"resolved": "https://registry.npmjs.org/svelte/-/svelte-5.19.3.tgz", "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.19.6.tgz",
"integrity": "sha512-rb/bkYG9jq67OCWikMvaPnfOobyGn0JizVDwHpdeBtLiNXPMcoA9GTFC3BhptP7xGNquUU8J5GiS7PlGlfDAFA==", "integrity": "sha512-6ydekB3qyqUal+UhfMjmVOjRGtxysR8vuiMhi2nwuBtPJWnctVlsGspjVFB05qmR+TXI1emuqtZt81c0XiFleA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@ampproject/remapping": "^2.3.0", "@ampproject/remapping": "^2.3.0",
@@ -6763,9 +6765,9 @@
} }
}, },
"node_modules/tailwindcss": { "node_modules/tailwindcss": {
"version": "4.0.0", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.0.0.tgz", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.0.1.tgz",
"integrity": "sha512-ULRPI3A+e39T7pSaf1xoi58AqqJxVCLg8F/uM5A3FadUbnyDTgltVnXJvdkTjwCOGA6NazqHVcwPJC5h2vRYVQ==", "integrity": "sha512-UK5Biiit/e+r3i0O223bisoS5+y7ZT1PM8Ojn0MxRHzXN1VPZ2KY6Lo6fhu1dOfCfyUAlK7Lt6wSxowRabATBw==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/tapable": { "node_modules/tapable": {

View File

@@ -9,19 +9,19 @@
"astro": "astro" "astro": "astro"
}, },
"dependencies": { "dependencies": {
"@astrojs/mdx": "^4.0.7", "@astrojs/mdx": "^4.0.8",
"@astrojs/react": "^4.1.6", "@astrojs/react": "^4.2.0",
"@astrojs/rss": "^4.0.11", "@astrojs/rss": "^4.0.11",
"@astrojs/sitemap": "^3.2.1", "@astrojs/sitemap": "^3.2.1",
"@astrojs/svelte": "^7.0.4", "@astrojs/svelte": "^7.0.4",
"@js-temporal/polyfill": "^0.4.4", "@js-temporal/polyfill": "^0.4.4",
"@tailwindcss/vite": "^4.0.0", "@tailwindcss/vite": "^4.0.1",
"astro": "^5.1.9", "astro": "^5.2.1",
"rehype-autolink-headings": "^7.1.0", "rehype-autolink-headings": "^7.1.0",
"rehype-slug": "^6.0.0", "rehype-slug": "^6.0.0",
"remark-toc": "^9.0.0", "remark-toc": "^9.0.0",
"shiki": "^2.1.0", "shiki": "^2.2.0",
"svelte": "^5.19.3", "svelte": "^5.19.6",
"tailwindcss": "^4.0.0", "tailwindcss": "^4.0.0",
"typescript": "^5.7.3" "typescript": "^5.7.3"
} }

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="600" height="530" version="1.1" xmlns="http://www.w3.org/2000/svg">
<path d="m135.72 44.03c66.496 49.921 138.02 151.14 164.28 205.46 26.262-54.316 97.782-155.54 164.28-205.46 47.98-36.021 125.72-63.892 125.72 24.795 0 17.712-10.155 148.79-16.111 170.07-20.703 73.984-96.144 92.854-163.25 81.433 117.3 19.964 147.14 86.092 82.697 152.22-122.39 125.59-175.91-31.511-189.63-71.766-2.514-7.3797-3.6904-10.832-3.7077-7.8964-0.0174-2.9357-1.1937 0.51669-3.7077 7.8964-13.714 40.255-67.233 197.36-189.63 71.766-64.444-66.128-34.605-132.26 82.697-152.22-67.108 11.421-142.55-7.4491-163.25-81.433-5.9562-21.282-16.111-152.36-16.111-170.07 0-88.687 77.742-60.816 125.72-24.795z" fill="#1185fe"/>
</svg>

After

Width:  |  Height:  |  Size: 745 B

View File

@@ -1,43 +1,60 @@
--- ---
import type { CollectionEntry } from 'astro:content'; import type { CollectionEntry } from "astro:content";
import Main from './Main.astro'; import Main from "./Main.astro";
import Time from '../components/Time.svelte'; import Time from "../components/Time.svelte";
import { Image } from 'astro:assets'; import { Image } from "astro:assets";
import patreonWordmark from "../icons/PATREON_WORDMARK_1_WHITE_RGB.svg" import patreonWordmark from "../icons/PATREON_WORDMARK_1_WHITE_RGB.svg";
type Props = CollectionEntry<'blog'>['data']; type Props = CollectionEntry<"blog">["data"];
const { title, author, summary, pubDate, updatedDate, image } = Astro.props; const { title, author, summary, pubDate, updatedDate, image } = Astro.props;
--- ---
<Main title={title} description={summary} image={image}> <Main title={title} description={summary} image={image}>
<article class="m-5 mt-3"> <article class="m-5 mt-3">
<header class="lg:grid grid-cols-[auto_auto_minmax(300px,_1fr)] grid-rows-[auto_auto]"> <header
class="lg:grid grid-cols-[auto_auto_minmax(300px,_1fr)] grid-rows-[auto_auto]"
>
<h2 class="font-bold row-span-2 text-2xl m-2 mt-3">{title}</h2> <h2 class="font-bold row-span-2 text-2xl m-2 mt-3">{title}</h2>
<address class="post-meta inline-block col-start-2">{author}</address> <address class="post-meta inline-block col-start-2">{author}</address>
<Time client:load datetime={pubDate} /> <Time client:load datetime={pubDate} />
<div class="italic tracking-[3px] text-emph-fg col-start-2 col-span-2 m-2 mt-0">{summary}</div> <div
{updatedDate && <div>Amended <Time datetime={updatedDate} /></div>} class="italic tracking-[3px] text-emph-fg col-start-2 col-span-2 m-2 mt-0"
>
{summary}
</div>
{
updatedDate && (
<div>
Amended <Time datetime={updatedDate} />
</div>
)
}
</header> </header>
<hr class="mb-3"> <hr class="mb-3" />
<main class="max-w-[100ch] font-prose post-content"> <main class="max-w-[100ch] font-prose post-content">
<slot /> <slot />
</main> </main>
<footer class="mt-20"> <footer class="mt-20">
<p class="post-meta"> <p class="post-meta">
Don't fund me if you have more important expenses. I pledge to spend all the extra free time on silly experiments.
I will spend all the extra free time on silly experiments.
<br>
<a href='https://ko-fi.com/D1D4AFWZX' target='_blank'>
<img class="inline-block border-0 h-[24px]"
src='https://storage.ko-fi.com/cdn/kofi1.png?v=6'
alt='Buy Me a Coffee at ko-fi.com' />
</a>
<a href="https://patreon.com/lbfalvy?utm_medium=unknown&utm_source=join_link&utm_campaign=creatorshare_creator&utm_content=copyLink">
<Image class="inline-block border-0 h-[16px] -mx-[200px]"
src={patreonWordmark}
alt="Support me on Patreon" />
</a>
</p> </p>
<a href="https://ko-fi.com/D1D4AFWZX" target="_blank">
<img
class="inline-block border-0 h-[24px]"
src="https://storage.ko-fi.com/cdn/kofi1.png?v=6"
alt="Buy Me a Coffee at ko-fi.com"
/>
</a>
<a
href="https://patreon.com/lbfalvy?utm_medium=unknown&utm_source=join_link&utm_campaign=creatorshare_creator&utm_content=copyLink"
>
<Image
class="inline-block border-0 h-[16px] w-[90px] object-cover ml-3"
src={patreonWordmark}
alt="Support me on Patreon"
/>
</a>
</footer> </footer>
</article> </article>
</Main> </Main>

View File

@@ -1,10 +1,11 @@
--- ---
import { Image } from "astro:assets"; import { Image } from "astro:assets";
import NavLink from "../components/NavLink.astro"; import NavLink from "../components/NavLink.astro";
import Layout from "../layouts/Html.astro" import Layout from "../layouts/Html.astro";
import "../styles/global.css"; import "../styles/global.css";
import GhLogo from "../icons/github-mark-white.svg"; import GhLogo from "../icons/github-mark-white.svg";
import RssLogo from "../icons/rss.svg"; import RssLogo from "../icons/rss.svg";
import BskyLogo from "../icons/Bluesky_Logo.svg";
import { SITE_DESCRIPTION, SITE_TITLE } from "../consts"; import { SITE_DESCRIPTION, SITE_TITLE } from "../consts";
interface Props { interface Props {
@@ -18,40 +19,61 @@ const {
description = SITE_DESCRIPTION, description = SITE_DESCRIPTION,
image, image,
} = Astro.props; } = Astro.props;
--- ---
<Layout title={title} description={description} image={image}> <Layout title={title} description={description} image={image}>
<Fragment slot="head"> <Fragment slot="head">
<meta name="theme-color" content="#222" /> <meta name="theme-color" content="#222" />
<link rel="icon" type="image/png" href="https://github.com/lbfalvy.png"/> <link rel="icon" type="image/png" href="https://github.com/lbfalvy.png" />
</Fragment> </Fragment>
<div class=" <div
w-screen h-screen class="w-screen h-screen
flex flex-col flex flex-col
md:grid md:grid
md:grid-rows-[1fr_auto] md:grid-cols-[min-content_auto] md:grid-rows-[1fr_auto] md:grid-cols-[min-content_auto]"
"> >
<header class=" <header
emph-bg whitespace-nowrap md:px-3 py-2 flex flex-col class="emph-bg whitespace-nowrap md:px-3 py-2 flex flex-col
text-right text-right"
"> >
<h1 class="font-bold text-2xl m-2 mr-0 text-wrap lg:text-nowrap">Lawrence Bet…</h1> <h1 class="font-bold text-2xl m-2 mr-0 text-wrap lg:text-nowrap">
<nav class="gutter Lawrence Bet…
</h1>
<nav
class="gutter
flex md:flex-col flex md:flex-col
text-center md:text-right"> text-center md:text-right"
<NavLink href="/" zone="/blog">Blog</NavLink> >
<NavLink href="/projects">Projects</NavLink> <NavLink href="/" zone="/blog">Blog</NavLink>
<NavLink href="/about">About me</NavLink> <NavLink href="/projects">Projects</NavLink>
<NavLink href="/fortune">Fortune</NavLink> <NavLink href="/about">About me</NavLink>
</nav> <NavLink href="/fortune">Fortune</NavLink>
</header> </nav>
<main id="scroll-area" class="md:row-start-1 md:col-start-2 md:row-span-2 md:overflow-y-auto"> </header>
<main
id="scroll-area"
class="md:row-start-1 md:col-start-2 md:row-span-2 md:overflow-y-auto"
>
<slot /> <slot />
</main> </main>
<footer class="md:row-start-2 emph-bg flex justify-center gap-3 py-3"> <footer class="md:row-start-2 emph-bg flex justify-center gap-3 py-3">
<a href="https://github.com/lbfalvy"><Image height="20" width="20" src={GhLogo} alt="Github"/></a> <a href="https://github.com/lbfalvy">
<a href="/rss.xml"><Image height="20" width="20" src={RssLogo} alt="Rss"/></a> <Image height="20" width="20" src={GhLogo} alt="Github" />
</a>
<a href="/rss.xml">
<Image height="20" width="20" src={RssLogo} alt="Rss" />
</a>
<a href="https://bsky.app/profile/lbfalvy.bsky.social">
<Image height="20" width="20" src={BskyLogo} alt="BlueSky" />
</a>
<a href="https://fosstodon.org/@lbfalvy">
<img
src="https://cdn.fosstodon.org/site_uploads/files/000/000/007/48/91cda647d1c18689.png"
alt="Fosstodon"
height="20"
width="20"
/>
</a>
</footer> </footer>
</div> </div>
</Layout> </Layout>
@@ -59,9 +81,9 @@ const {
<script> <script>
const key = `scroll:${window.location.pathname}`; const key = `scroll:${window.location.pathname}`;
const scrollArea = document.getElementById("scroll-area"); const scrollArea = document.getElementById("scroll-area");
scrollArea?.addEventListener('scrollend', () => { scrollArea?.addEventListener("scrollend", () => {
sessionStorage.setItem(key, scrollArea.scrollTop.toString()) sessionStorage.setItem(key, scrollArea.scrollTop.toString());
}) });
const savedPos = sessionStorage.getItem(key); const savedPos = sessionStorage.getItem(key);
if (savedPos) scrollArea!.scrollTop = Number.parseFloat(savedPos); if (savedPos) scrollArea!.scrollTop = Number.parseFloat(savedPos);
</script> </script>

View File

@@ -100,7 +100,6 @@
color: var(--color-faint-fg); color: var(--color-faint-fg);
font-style: italic; font-style: italic;
font-weight: 500; font-weight: 500;
white-space: nowrap;
margin-left: 0.3em; margin-left: 0.3em;
} }
.summary { .summary {

View File

@@ -18,5 +18,10 @@
"other": "off" "other": "off"
} }
} }
},
"extensions": {
"recommendations": [
"bradlc.vscode-tailwindcss"
]
} }
} }