From 49725c14911057fbb851cae5f15505a7eb1976c0 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 24 Sep 2024 09:05:17 +0100 Subject: [PATCH 01/47] update astro to v5 --- package.json | 24 +- pnpm-lock.yaml | 1554 ++++++++++++++++++++++-------------------------- 2 files changed, 710 insertions(+), 868 deletions(-) diff --git a/package.json b/package.json index da85fa8f1..71cbc4ec9 100644 --- a/package.json +++ b/package.json @@ -15,16 +15,16 @@ "check": "astro check" }, "dependencies": { - "@astrojs/mdx": "3.1.4", + "@astrojs/mdx": "4.0.0-beta.1", "@astrojs/rss": "4.0.7", "@astrojs/sitemap": "3.1.6", - "@astrojs/tailwind": "5.1.0", - "astro": "4.14.3", - "astro-expressive-code": "^0.35.6", + "@astrojs/tailwind": "5.1.1", + "astro": "5.0.0-beta.1", + "astro-expressive-code": "^0.37.0", "astro-icon": "^1.1.1", "astro-robots-txt": "^1.0.0", "astro-webmanifest": "^1.0.0", - "cssnano": "^7.0.5", + "cssnano": "^7.0.6", "hastscript": "^9.0.0", "mdast-util-directive": "^3.0.0", "mdast-util-to-markdown": "^2.1.0", @@ -39,22 +39,22 @@ }, "devDependencies": { "@astrojs/check": "^0.9.3", - "@biomejs/biome": "^1.8.3", - "@iconify-json/mdi": "^1.1.68", - "@pagefind/default-ui": "^1.1.0", + "@biomejs/biome": "^1.9.2", + "@iconify-json/mdi": "^1.2.0", + "@pagefind/default-ui": "^1.1.1", "@resvg/resvg-js": "^2.6.2", "@tailwindcss/aspect-ratio": "^0.4.2", - "@tailwindcss/typography": "^0.5.14", + "@tailwindcss/typography": "^0.5.15", "@types/hast": "^3.0.4", "@types/mdast": "^4.0.4", "autoprefixer": "^10.4.20", - "pagefind": "^1.1.0", + "pagefind": "^1.1.1", "prettier": "^3.3.3", "prettier-plugin-astro": "0.14.1", "prettier-plugin-tailwindcss": "^0.6.6", "reading-time": "^1.5.0", "remark-unwrap-images": "^4.0.0", - "tailwindcss": "^3.4.10", - "typescript": "^5.5.4" + "tailwindcss": "^3.4.13", + "typescript": "^5.6.2" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bd521806f..da00a3ea5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: dependencies: '@astrojs/mdx': - specifier: 3.1.4 - version: 3.1.4(astro@4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4)) + specifier: 4.0.0-beta.1 + version: 4.0.0-beta.1(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2)) '@astrojs/rss': specifier: 4.0.7 version: 4.0.7 @@ -18,14 +18,14 @@ importers: specifier: 3.1.6 version: 3.1.6 '@astrojs/tailwind': - specifier: 5.1.0 - version: 5.1.0(astro@4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4))(tailwindcss@3.4.10) + specifier: 5.1.1 + version: 5.1.1(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2))(tailwindcss@3.4.13) astro: - specifier: 4.14.3 - version: 4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4) + specifier: 5.0.0-beta.1 + version: 5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2) astro-expressive-code: - specifier: ^0.35.6 - version: 0.35.6(astro@4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4)) + specifier: ^0.37.0 + version: 0.37.0(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2)) astro-icon: specifier: ^1.1.1 version: 1.1.1 @@ -36,8 +36,8 @@ importers: specifier: ^1.0.0 version: 1.0.0 cssnano: - specifier: ^7.0.5 - version: 7.0.5(postcss@8.4.41) + specifier: ^7.0.6 + version: 7.0.6(postcss@8.4.47) hastscript: specifier: ^9.0.0 version: 9.0.0 @@ -74,25 +74,25 @@ importers: devDependencies: '@astrojs/check': specifier: ^0.9.3 - version: 0.9.3(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.5.4) + version: 0.9.3(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2) '@biomejs/biome': - specifier: ^1.8.3 - version: 1.8.3 + specifier: ^1.9.2 + version: 1.9.2 '@iconify-json/mdi': - specifier: ^1.1.68 - version: 1.1.68 + specifier: ^1.2.0 + version: 1.2.0 '@pagefind/default-ui': - specifier: ^1.1.0 - version: 1.1.0 + specifier: ^1.1.1 + version: 1.1.1 '@resvg/resvg-js': specifier: ^2.6.2 version: 2.6.2 '@tailwindcss/aspect-ratio': specifier: ^0.4.2 - version: 0.4.2(tailwindcss@3.4.10) + version: 0.4.2(tailwindcss@3.4.13) '@tailwindcss/typography': - specifier: ^0.5.14 - version: 0.5.14(tailwindcss@3.4.10) + specifier: ^0.5.15 + version: 0.5.15(tailwindcss@3.4.13) '@types/hast': specifier: ^3.0.4 version: 3.0.4 @@ -101,10 +101,10 @@ importers: version: 4.0.4 autoprefixer: specifier: ^10.4.20 - version: 10.4.20(postcss@8.4.41) + version: 10.4.20(postcss@8.4.47) pagefind: - specifier: ^1.1.0 - version: 1.1.0 + specifier: ^1.1.1 + version: 1.1.1 prettier: specifier: ^3.3.3 version: 3.3.3 @@ -121,11 +121,11 @@ importers: specifier: ^4.0.0 version: 4.0.0 tailwindcss: - specifier: ^3.4.10 - version: 3.4.10 + specifier: ^3.4.13 + version: 3.4.13 typescript: - specifier: ^5.5.4 - version: 5.5.4 + specifier: ^5.6.2 + version: 5.6.2 packages: @@ -133,10 +133,6 @@ packages: resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} engines: {node: '>=10'} - '@ampproject/remapping@2.3.0': - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} - engines: {node: '>=6.0.0'} - '@antfu/install-pkg@0.4.0': resolution: {integrity: sha512-vI73C0pFA9L+5v+djh0WSLXb8qYQGH5fX8nczaFe1OTI/8Fh03JS1Mov1V7urb6P3A2cBlBqZNjJIKv54+zVRw==} @@ -170,14 +166,14 @@ packages: prettier-plugin-astro: optional: true - '@astrojs/markdown-remark@5.2.0': - resolution: {integrity: sha512-vWGM24KZXz11jR3JO+oqYU3T2qpuOi4uGivJ9SQLCAI01+vEkHC60YJMRvHPc+hwd60F7euNs1PeOEixIIiNQw==} + '@astrojs/markdown-remark@6.0.0-beta.1': + resolution: {integrity: sha512-aNl4fUDEkCNisBdHgWWOk2G1hoVBBOK6Dc5BjQg6DtIuSEmNap/xs14ukJL1LZ+xw+w10pVnhjQG7x7bQ4lrRA==} - '@astrojs/mdx@3.1.4': - resolution: {integrity: sha512-AcdcAlDpzTM5LHpur7A3NWoIqyfhH1gZNbTvvjiUlDEo7eJjIxl4gdWrb/kZZRfLBEuM8cptCB+Qk11ncQL4IA==} + '@astrojs/mdx@4.0.0-beta.1': + resolution: {integrity: sha512-uqVXVT2xVjN+oxl3mXHHOnxY9l+bjuVwnjPCO8AdoL489x69Crvg455D6akCtQR+ER+NMTscVvTv6BeFylC0tg==} engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} peerDependencies: - astro: ^4.8.0 + astro: ^5.0.0-alpha.0 '@astrojs/prism@3.1.0': resolution: {integrity: sha512-Z9IYjuXSArkAUx3N6xj6+Bnvx8OdUSHA8YoOgyepp3+zJmtVYJIl/I18GozdJVW1p5u/CNpl3Km7/gwTJK85cw==} @@ -189,10 +185,10 @@ packages: '@astrojs/sitemap@3.1.6': resolution: {integrity: sha512-1Qp2NvAzVImqA6y+LubKi1DVhve/hXXgFvB0szxiipzh7BvtuKe4oJJ9dXSqaubaTkt4nMa6dv6RCCAYeB6xaQ==} - '@astrojs/tailwind@5.1.0': - resolution: {integrity: sha512-BJoCDKuWhU9FT2qYg+fr6Nfb3qP4ShtyjXGHKA/4mHN94z7BGcmauQK23iy+YH5qWvTnhqkd6mQPQ1yTZTe9Ig==} + '@astrojs/tailwind@5.1.1': + resolution: {integrity: sha512-LwurA10uIKcGRxQP2R81RvAnBT0WPKzBntXZBF4hrAefDgM5Uumn0nsGr6tdIjSARgYz4X+Cq/Vh78t3bql3yw==} peerDependencies: - astro: ^3.0.0 || ^4.0.0 + astro: ^3.0.0 || ^4.0.0 || ^5.0.0-beta.0 tailwindcss: ^3.0.24 '@astrojs/telemetry@3.1.0': @@ -202,48 +198,6 @@ packages: '@astrojs/yaml2ts@0.2.1': resolution: {integrity: sha512-CBaNwDQJz20E5WxzQh4thLVfhB3JEEGz72wRA+oJp6fQR37QLAqXZJU0mHC+yqMOQ6oj0GfRPJrz6hjf+zm6zA==} - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.25.2': - resolution: {integrity: sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.25.2': - resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.25.0': - resolution: {integrity: sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-annotate-as-pure@7.24.7': - resolution: {integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.25.2': - resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.25.2': - resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-plugin-utils@7.24.8': - resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} - engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.24.8': resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} engines: {node: '>=6.9.0'} @@ -252,96 +206,64 @@ packages: resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.8': - resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.25.0': - resolution: {integrity: sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.25.3': - resolution: {integrity: sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==} + '@babel/parser@7.25.6': + resolution: {integrity: sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/plugin-syntax-jsx@7.24.7': - resolution: {integrity: sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx@7.25.2': - resolution: {integrity: sha512-KQsqEAVBpU82NM/B/N9j9WOdphom1SZH3R+2V7INrQUH+V9EBFwZsEJl8eBIVeQE62FxJCc70jzEZwqU7RcVqA==} + '@babel/types@7.25.6': + resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/template@7.25.0': - resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.25.3': - resolution: {integrity: sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.25.2': - resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==} - engines: {node: '>=6.9.0'} - - '@biomejs/biome@1.8.3': - resolution: {integrity: sha512-/uUV3MV+vyAczO+vKrPdOW0Iaet7UnJMU4bNMinggGJTAnBPjCoLEYcyYtYHNnUNYlv4xZMH6hVIQCAozq8d5w==} + '@biomejs/biome@1.9.2': + resolution: {integrity: sha512-4j2Gfwft8Jqp1X0qLYvK4TEy4xhTo4o6rlvJPsjPeEame8gsmbGQfOPBkw7ur+7/Z/f0HZmCZKqbMvR7vTXQYQ==} engines: {node: '>=14.21.3'} hasBin: true - '@biomejs/cli-darwin-arm64@1.8.3': - resolution: {integrity: sha512-9DYOjclFpKrH/m1Oz75SSExR8VKvNSSsLnVIqdnKexj6NwmiMlKk94Wa1kZEdv6MCOHGHgyyoV57Cw8WzL5n3A==} + '@biomejs/cli-darwin-arm64@1.9.2': + resolution: {integrity: sha512-rbs9uJHFmhqB3Td0Ro+1wmeZOHhAPTL3WHr8NtaVczUmDhXkRDWScaxicG9+vhSLj1iLrW47itiK6xiIJy6vaA==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [darwin] - '@biomejs/cli-darwin-x64@1.8.3': - resolution: {integrity: sha512-UeW44L/AtbmOF7KXLCoM+9PSgPo0IDcyEUfIoOXYeANaNXXf9mLUwV1GeF2OWjyic5zj6CnAJ9uzk2LT3v/wAw==} + '@biomejs/cli-darwin-x64@1.9.2': + resolution: {integrity: sha512-BlfULKijNaMigQ9GH9fqJVt+3JTDOSiZeWOQtG/1S1sa8Lp046JHG3wRJVOvekTPL9q/CNFW1NVG8J0JN+L1OA==} engines: {node: '>=14.21.3'} cpu: [x64] os: [darwin] - '@biomejs/cli-linux-arm64-musl@1.8.3': - resolution: {integrity: sha512-9yjUfOFN7wrYsXt/T/gEWfvVxKlnh3yBpnScw98IF+oOeCYb5/b/+K7YNqKROV2i1DlMjg9g/EcN9wvj+NkMuQ==} + '@biomejs/cli-linux-arm64-musl@1.9.2': + resolution: {integrity: sha512-ZATvbUWhNxegSALUnCKWqetTZqrK72r2RsFD19OK5jXDj/7o1hzI1KzDNG78LloZxftrwr3uI9SqCLh06shSZw==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-arm64@1.8.3': - resolution: {integrity: sha512-fed2ji8s+I/m8upWpTJGanqiJ0rnlHOK3DdxsyVLZQ8ClY6qLuPc9uehCREBifRJLl/iJyQpHIRufLDeotsPtw==} + '@biomejs/cli-linux-arm64@1.9.2': + resolution: {integrity: sha512-T8TJuSxuBDeQCQzxZu2o3OU4eyLumTofhCxxFd3+aH2AEWVMnH7Z/c3QP1lHI5RRMBP9xIJeMORqDQ5j+gVZzw==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-x64-musl@1.8.3': - resolution: {integrity: sha512-UHrGJX7PrKMKzPGoEsooKC9jXJMa28TUSMjcIlbDnIO4EAavCoVmNQaIuUSH0Ls2mpGMwUIf+aZJv657zfWWjA==} + '@biomejs/cli-linux-x64-musl@1.9.2': + resolution: {integrity: sha512-CjPM6jT1miV5pry9C7qv8YJk0FIZvZd86QRD3atvDgfgeh9WQU0k2Aoo0xUcPdTnoz0WNwRtDicHxwik63MmSg==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-linux-x64@1.8.3': - resolution: {integrity: sha512-I8G2QmuE1teISyT8ie1HXsjFRz9L1m5n83U1O6m30Kw+kPMPSKjag6QGUn+sXT8V+XWIZxFFBoTDEDZW2KPDDw==} + '@biomejs/cli-linux-x64@1.9.2': + resolution: {integrity: sha512-T0cPk3C3Jr2pVlsuQVTBqk2qPjTm8cYcTD9p/wmR9MeVqui1C/xTVfOIwd3miRODFMrJaVQ8MYSXnVIhV9jTjg==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-win32-arm64@1.8.3': - resolution: {integrity: sha512-J+Hu9WvrBevfy06eU1Na0lpc7uR9tibm9maHynLIoAjLZpQU3IW+OKHUtyL8p6/3pT2Ju5t5emReeIS2SAxhkQ==} + '@biomejs/cli-win32-arm64@1.9.2': + resolution: {integrity: sha512-2x7gSty75bNIeD23ZRPXyox6Z/V0M71ObeJtvQBhi1fgrvPdtkEuw7/0wEHg6buNCubzOFuN9WYJm6FKoUHfhg==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [win32] - '@biomejs/cli-win32-x64@1.8.3': - resolution: {integrity: sha512-/PJ59vA1pnQeKahemaQf4Nyj7IKUvGQSc3Ze1uIGi+Wvr1xF7rGobSrAAG01T/gUDG21vkDsZYM03NAmPiVkqg==} + '@biomejs/cli-win32-x64@1.9.2': + resolution: {integrity: sha512-JC3XvdYcjmu1FmAehVwVV0SebLpeNTnO2ZaMdGCSOdS7f8O9Fq14T2P1gTG1Q29Q8Dt1S03hh0IdVpIZykOL8g==} engines: {node: '>=14.21.3'} cpu: [x64] os: [win32] @@ -512,20 +434,20 @@ packages: cpu: [x64] os: [win32] - '@expressive-code/core@0.35.6': - resolution: {integrity: sha512-xGqCkmfkgT7lr/rvmfnYdDSeTdCSp1otAHgoFS6wNEeO7wGDPpxdosVqYiIcQ8CfWUABh/pGqWG90q+MV3824A==} + '@expressive-code/core@0.37.0': + resolution: {integrity: sha512-uCPAaQ//5RZeeKAN9cMyGH8YIm+h1Rldy34IWMbsCECrFVo86w+eR67jVWoQ2HNe0dSZ4XTdgJKYEScuVcy2Cw==} - '@expressive-code/plugin-frames@0.35.6': - resolution: {integrity: sha512-CqjSWjDJ3wabMJZfL9ZAzH5UAGKg7KWsf1TBzr4xvUbZvWoBtLA/TboBML0U1Ls8h/4TRCIvR4VEb8dv5+QG3w==} + '@expressive-code/plugin-frames@0.37.0': + resolution: {integrity: sha512-jqlds/LptU8+FYxD1Uiu1vULvC904TlcOote8wCgn4gdae2qmCj67G9C1b1j3MAaerblRQg4uNbUxeitRFYs6A==} - '@expressive-code/plugin-shiki@0.35.6': - resolution: {integrity: sha512-xm+hzi9BsmhkDUGuyAWIydOAWer7Cs9cj8FM0t4HXaQ+qCubprT6wJZSKUxuvFJIUsIOqk1xXFaJzGJGnWtKMg==} + '@expressive-code/plugin-shiki@0.37.0': + resolution: {integrity: sha512-0g9v7OBu3rNS7EOyam1G6+WE1siWBKteagV0917yooIFlOlcJ/pvV/nClSEwJgFdumwHK4sDj4ov4Y4p0tDn1w==} - '@expressive-code/plugin-text-markers@0.35.6': - resolution: {integrity: sha512-/k9eWVZSCs+uEKHR++22Uu6eIbHWEciVHbIuD8frT8DlqTtHYaaiwHPncO6KFWnGDz5i/gL7oyl6XmOi/E6GVg==} + '@expressive-code/plugin-text-markers@0.37.0': + resolution: {integrity: sha512-iDwB7iYga7hIyODR0wGVP2yo10H3Ncknif2diZvc/w9Mb/RvStEtCXRoqs3jgQlS3dhTGBXzTorFZx36vNy4rQ==} - '@iconify-json/mdi@1.1.68': - resolution: {integrity: sha512-7//TKCiXLU6kNWeOJRTBbisofVO7rF1sD1TZTL4/V9nqlmVNczQ5IOY0GgKOTsitkcTnX9GXgrgbjw3OI5B69w==} + '@iconify-json/mdi@1.2.0': + resolution: {integrity: sha512-E9/3l5Syg3wfuarorFodhn4s8YorxhH3U3U20LaNBNiqw1kFNIDWhF6HymuzAD35k7RH0OBasJ+ZUyFtVVV6eg==} '@iconify/tools@4.0.5': resolution: {integrity: sha512-l8KoA1lxlN/FFjlMd3vjfD7BtcX/QnFWtlBapILMlJSBgM5zhDYak/ldw/LkKG3258q/0YmXa48sO/QpxX7ptg==} @@ -681,31 +603,31 @@ packages: '@oslojs/encoding@0.4.1': resolution: {integrity: sha512-hkjo6MuIK/kQR5CrGNdAPZhS01ZCXuWDRJ187zh6qqF2+yMHZpD9fAYpX8q2bOO6Ryhl3XpCT6kUX76N8hhm4Q==} - '@pagefind/darwin-arm64@1.1.0': - resolution: {integrity: sha512-SLsXNLtSilGZjvqis8sX42fBWsWAVkcDh1oerxwqbac84HbiwxpxOC2jm8hRwcR0Z55HPZPWO77XeRix/8GwTg==} + '@pagefind/darwin-arm64@1.1.1': + resolution: {integrity: sha512-tZ9tysUmQpFs2EqWG2+E1gc+opDAhSyZSsgKmFzhnWfkK02YHZhvL5XJXEZDqYy3s1FAKhwjTg8XDxneuBlDZQ==} cpu: [arm64] os: [darwin] - '@pagefind/darwin-x64@1.1.0': - resolution: {integrity: sha512-QjQSE/L5oS1C8N8GdljGaWtjCBMgMtfrPAoiCmINTu9Y9dp0ggAyXvF8K7Qg3VyIMYJ6v8vg2PN7Z3b+AaAqUA==} + '@pagefind/darwin-x64@1.1.1': + resolution: {integrity: sha512-ChohLQ39dLwaxQv0jIQB/SavP3TM5K5ENfDTqIdzLkmfs3+JlzSDyQKcJFjTHYcCzQOZVeieeGq8PdqvLJxJxQ==} cpu: [x64] os: [darwin] - '@pagefind/default-ui@1.1.0': - resolution: {integrity: sha512-+XiAJAK++C64nQcD7s3Prdmd5S92lT05fwjOxm0L1jj80jbL+tmvcqkkFnPpoqhnicIPgcAX/Y5W0HRZnBt35w==} + '@pagefind/default-ui@1.1.1': + resolution: {integrity: sha512-ZM0zDatWDnac/VGHhQCiM7UgA4ca8jpjA+VfuTJyHJBaxGqZMQnm4WoTz9E0KFcue1Bh9kxpu7uWFZfwpZZk0A==} - '@pagefind/linux-arm64@1.1.0': - resolution: {integrity: sha512-8zjYCa2BtNEL7KnXtysPtBELCyv5DSQ4yHeK/nsEq6w4ToAMTBl0K06khqxdSGgjMSwwrxvLzq3so0LC5Q14dA==} + '@pagefind/linux-arm64@1.1.1': + resolution: {integrity: sha512-H5P6wDoCoAbdsWp0Zx0DxnLUrwTGWGLu/VI1rcN2CyFdY2EGSvPQsbGBMrseKRNuIrJDFtxHHHyjZ7UbzaM9EA==} cpu: [arm64] os: [linux] - '@pagefind/linux-x64@1.1.0': - resolution: {integrity: sha512-4lsg6VB7A6PWTwaP8oSmXV4O9H0IHX7AlwTDcfyT+YJo/sPXOVjqycD5cdBgqNLfUk8B9bkWcTDCRmJbHrKeCw==} + '@pagefind/linux-x64@1.1.1': + resolution: {integrity: sha512-yJs7tTYbL2MI3HT+ngs9E1BfUbY9M4/YzA0yEM5xBo4Xl8Yu8Qg2xZTOQ1/F6gwvMrjCUFo8EoACs6LRDhtMrQ==} cpu: [x64] os: [linux] - '@pagefind/windows-x64@1.1.0': - resolution: {integrity: sha512-OboCM76BcMKT9IoSfZuFhiqMRgTde8x4qDDvKulFmycgiJrlL5WnIqBHJLQxZq+o2KyZpoHF97iwsGAm8c32sQ==} + '@pagefind/windows-x64@1.1.1': + resolution: {integrity: sha512-b7/qPqgIl+lMzkQ8fJt51SfguB396xbIIR+VZ3YrL2tLuyifDJ1wL5mEm+ddmHxJ2Fki340paPcDan9en5OmAw==} cpu: [x64] os: [win32] @@ -803,83 +725,175 @@ packages: cpu: [arm] os: [android] + '@rollup/rollup-android-arm-eabi@4.22.4': + resolution: {integrity: sha512-Fxamp4aEZnfPOcGA8KSNEohV8hX7zVHOemC8jVBoBUHu5zpJK/Eu3uJwt6BMgy9fkvzxDaurgj96F/NiLukF2w==} + cpu: [arm] + os: [android] + '@rollup/rollup-android-arm64@4.21.0': resolution: {integrity: sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==} cpu: [arm64] os: [android] + '@rollup/rollup-android-arm64@4.22.4': + resolution: {integrity: sha512-VXoK5UMrgECLYaMuGuVTOx5kcuap1Jm8g/M83RnCHBKOqvPPmROFJGQaZhGccnsFtfXQ3XYa4/jMCJvZnbJBdA==} + cpu: [arm64] + os: [android] + '@rollup/rollup-darwin-arm64@4.21.0': resolution: {integrity: sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==} cpu: [arm64] os: [darwin] + '@rollup/rollup-darwin-arm64@4.22.4': + resolution: {integrity: sha512-xMM9ORBqu81jyMKCDP+SZDhnX2QEVQzTcC6G18KlTQEzWK8r/oNZtKuZaCcHhnsa6fEeOBionoyl5JsAbE/36Q==} + cpu: [arm64] + os: [darwin] + '@rollup/rollup-darwin-x64@4.21.0': resolution: {integrity: sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==} cpu: [x64] os: [darwin] + '@rollup/rollup-darwin-x64@4.22.4': + resolution: {integrity: sha512-aJJyYKQwbHuhTUrjWjxEvGnNNBCnmpHDvrb8JFDbeSH3m2XdHcxDd3jthAzvmoI8w/kSjd2y0udT+4okADsZIw==} + cpu: [x64] + os: [darwin] + '@rollup/rollup-linux-arm-gnueabihf@4.21.0': resolution: {integrity: sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-gnueabihf@4.22.4': + resolution: {integrity: sha512-j63YtCIRAzbO+gC2L9dWXRh5BFetsv0j0va0Wi9epXDgU/XUi5dJKo4USTttVyK7fGw2nPWK0PbAvyliz50SCQ==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.21.0': resolution: {integrity: sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==} cpu: [arm] os: [linux] + '@rollup/rollup-linux-arm-musleabihf@4.22.4': + resolution: {integrity: sha512-dJnWUgwWBX1YBRsuKKMOlXCzh2Wu1mlHzv20TpqEsfdZLb3WoJW2kIEsGwLkroYf24IrPAvOT/ZQ2OYMV6vlrg==} + cpu: [arm] + os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.21.0': resolution: {integrity: sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-gnu@4.22.4': + resolution: {integrity: sha512-AdPRoNi3NKVLolCN/Sp4F4N1d98c4SBnHMKoLuiG6RXgoZ4sllseuGioszumnPGmPM2O7qaAX/IJdeDU8f26Aw==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-arm64-musl@4.21.0': resolution: {integrity: sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==} cpu: [arm64] os: [linux] + '@rollup/rollup-linux-arm64-musl@4.22.4': + resolution: {integrity: sha512-Gl0AxBtDg8uoAn5CCqQDMqAx22Wx22pjDOjBdmG0VIWX3qUBHzYmOKh8KXHL4UpogfJ14G4wk16EQogF+v8hmA==} + cpu: [arm64] + os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': resolution: {integrity: sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==} cpu: [ppc64] os: [linux] + '@rollup/rollup-linux-powerpc64le-gnu@4.22.4': + resolution: {integrity: sha512-3aVCK9xfWW1oGQpTsYJJPF6bfpWfhbRnhdlyhak2ZiyFLDaayz0EP5j9V1RVLAAxlmWKTDfS9wyRyY3hvhPoOg==} + cpu: [ppc64] + os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.21.0': resolution: {integrity: sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==} cpu: [riscv64] os: [linux] + '@rollup/rollup-linux-riscv64-gnu@4.22.4': + resolution: {integrity: sha512-ePYIir6VYnhgv2C5Xe9u+ico4t8sZWXschR6fMgoPUK31yQu7hTEJb7bCqivHECwIClJfKgE7zYsh1qTP3WHUA==} + cpu: [riscv64] + os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.21.0': resolution: {integrity: sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==} cpu: [s390x] os: [linux] + '@rollup/rollup-linux-s390x-gnu@4.22.4': + resolution: {integrity: sha512-GqFJ9wLlbB9daxhVlrTe61vJtEY99/xB3C8e4ULVsVfflcpmR6c8UZXjtkMA6FhNONhj2eA5Tk9uAVw5orEs4Q==} + cpu: [s390x] + os: [linux] + '@rollup/rollup-linux-x64-gnu@4.21.0': resolution: {integrity: sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-gnu@4.22.4': + resolution: {integrity: sha512-87v0ol2sH9GE3cLQLNEy0K/R0pz1nvg76o8M5nhMR0+Q+BBGLnb35P0fVz4CQxHYXaAOhE8HhlkaZfsdUOlHwg==} + cpu: [x64] + os: [linux] + '@rollup/rollup-linux-x64-musl@4.21.0': resolution: {integrity: sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==} cpu: [x64] os: [linux] + '@rollup/rollup-linux-x64-musl@4.22.4': + resolution: {integrity: sha512-UV6FZMUgePDZrFjrNGIWzDo/vABebuXBhJEqrHxrGiU6HikPy0Z3LfdtciIttEUQfuDdCn8fqh7wiFJjCNwO+g==} + cpu: [x64] + os: [linux] + '@rollup/rollup-win32-arm64-msvc@4.21.0': resolution: {integrity: sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==} cpu: [arm64] os: [win32] + '@rollup/rollup-win32-arm64-msvc@4.22.4': + resolution: {integrity: sha512-BjI+NVVEGAXjGWYHz/vv0pBqfGoUH0IGZ0cICTn7kB9PyjrATSkX+8WkguNjWoj2qSr1im/+tTGRaY+4/PdcQw==} + cpu: [arm64] + os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.21.0': resolution: {integrity: sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==} cpu: [ia32] os: [win32] + '@rollup/rollup-win32-ia32-msvc@4.22.4': + resolution: {integrity: sha512-SiWG/1TuUdPvYmzmYnmd3IEifzR61Tragkbx9D3+R8mzQqDBz8v+BvZNDlkiTtI9T15KYZhP0ehn3Dld4n9J5g==} + cpu: [ia32] + os: [win32] + '@rollup/rollup-win32-x64-msvc@4.21.0': resolution: {integrity: sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==} cpu: [x64] os: [win32] - '@shikijs/core@1.14.1': - resolution: {integrity: sha512-KyHIIpKNaT20FtFPFjCQB5WVSTpLR/n+jQXhWHWVUMm9MaOaG9BGOG0MSyt7yA4+Lm+4c9rTc03tt3nYzeYSfw==} + '@rollup/rollup-win32-x64-msvc@4.22.4': + resolution: {integrity: sha512-j8pPKp53/lq9lMXN57S8cFz0MynJk8OWNuUnXct/9KCpKU7DgU3bYMJhwWmcqC0UU29p8Lr0/7KEVcaM6bf47Q==} + cpu: [x64] + os: [win32] + + '@shikijs/core@1.18.0': + resolution: {integrity: sha512-VK4BNVCd2leY62Nm2JjyxtRLkyrZT/tv104O81eyaCjHq4Adceq2uJVFJJAIof6lT1mBwZrEo2qT/T+grv3MQQ==} + + '@shikijs/engine-javascript@1.18.0': + resolution: {integrity: sha512-qoP/aO/ATNwYAUw1YMdaip/YVEstMZEgrwhePm83Ll9OeQPuxDZd48szZR8oSQNQBT8m8UlWxZv8EA3lFuyI5A==} + + '@shikijs/engine-oniguruma@1.18.0': + resolution: {integrity: sha512-B9u0ZKI/cud+TcmF8Chyh+R4V5qQVvyDOqXC2l2a4x73PBSBc6sZ0JRAX3eqyJswqir6ktwApUUGBYePdKnMJg==} + + '@shikijs/types@1.18.0': + resolution: {integrity: sha512-O9N36UEaGGrxv1yUrN2nye7gDLG5Uq0/c1LyfmxsvzNPqlHzWo9DI0A4+fhW2y3bGKuQu/fwS7EPdKJJCowcVA==} + + '@shikijs/vscode-textmate@9.2.2': + resolution: {integrity: sha512-TMp15K+GGYrWlZM8+Lnj9EaHEFmOen0WJBrfa17hF7taDOYthuPPV0GWzfd/9iMij0akS/8Yw2ikquH7uVi/fg==} '@shuding/opentype.js@1.4.0-beta.0': resolution: {integrity: sha512-3NgmNyH3l/Hv6EvsWJbsvpcpUba6R8IREQ83nH83cyakCw7uM1arZKNfHwv1Wz6jgqrF/j4x5ELvR6PnK9nTcA==} @@ -891,10 +905,10 @@ packages: peerDependencies: tailwindcss: '>=2.0.0 || >=3.0.0 || >=3.0.0-alpha.1' - '@tailwindcss/typography@0.5.14': - resolution: {integrity: sha512-ZvOCjUbsJBjL9CxQBn+VEnFpouzuKhxh2dH8xMIWHILL+HfOYtlAkWcyoon8LlzE53d2Yo6YO6pahKKNW3q1YQ==} + '@tailwindcss/typography@0.5.15': + resolution: {integrity: sha512-AqhlCXl+8grUz8uqExv5OTtgpjuVIwFTSXTrh8y9/pw6q2ek7fJ+Y8ZEVw7EB2DCcuCOtEjf9w3+J3rzts01uA==} peerDependencies: - tailwindcss: '>=3.0.0 || insiders' + tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20' '@trysound/sax@0.2.0': resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} @@ -903,18 +917,6 @@ packages: '@types/acorn@4.0.6': resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} - '@types/babel__core@7.20.5': - resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} - - '@types/babel__generator@7.6.8': - resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} - - '@types/babel__template@7.4.4': - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} - - '@types/babel__traverse@7.20.6': - resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} - '@types/cookie@0.6.0': resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} @@ -948,6 +950,9 @@ packages: '@types/node@22.4.2': resolution: {integrity: sha512-nAvM3Ey230/XzxtyDcJ+VjvlzpzoHwLsF7JaDRfoI0ytO0mVheerNmM45CtA0yOILXwXXxOrcUWH3wltX+7PSw==} + '@types/node@22.6.1': + resolution: {integrity: sha512-V48tCfcKb/e6cVUigLAaJDAILdMP0fUW6BidkPK4GpGjXcfbnoHasCZDwz3N3yVt5we2RHm4XTQCpv0KJz9zqw==} + '@types/sax@1.2.7': resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==} @@ -1016,10 +1021,6 @@ packages: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} @@ -1054,10 +1055,10 @@ packages: resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==} hasBin: true - astro-expressive-code@0.35.6: - resolution: {integrity: sha512-1U4KrvFuodaCV3z4I1bIR16SdhQlPkolGsYTtiANxPZUVv/KitGSCTjzksrkPonn1XuwVqvnwmUUVzTLWngnBA==} + astro-expressive-code@0.37.0: + resolution: {integrity: sha512-ElWiCQHVQh5+l8fvGRgctvxEw63G/KEZgRi60ApPsHK6NsexgPZENk3bnHzbCpigCgh/L9k/yJ+3zOyuhoPqhQ==} peerDependencies: - astro: ^4.0.0-beta || ^3.3.0 + astro: ^4.0.0-beta || ^5.0.0-beta || ^3.3.0 astro-icon@1.1.1: resolution: {integrity: sha512-HKBesWk2Faw/0+klLX+epQVqdTfSzZz/9+5vxXUjTJaN/HnpDf608gRPgHh7ZtwBPNJMEFoU5GLegxoDcT56OQ==} @@ -1068,8 +1069,8 @@ packages: astro-webmanifest@1.0.0: resolution: {integrity: sha512-ar8SZuFf8k2XuqAYpiaiGmzgpqVufyPx0A9d8OljPup+Sgs+1trG2bpvo7JcM+m4L3figPaYEZOy1rRawCEU0w==} - astro@4.14.3: - resolution: {integrity: sha512-+Hox1EhiS5iHy4pfZaLidpD9x7WVAcgGgjTo1JOYSQ0+a2ZA9mbLtGVEXbUeeYweviNc0ZNHMnI4r9S2e8xnXg==} + astro@5.0.0-beta.1: + resolution: {integrity: sha512-i5L+2tky+cYaLba/UX6KGe4oXGdlYfcPWCukT56FLUWLI4CsXqOL9QC/paUH7qG8jAnxdYnST/HtuyREtiYUhg==} engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} hasBin: true @@ -1176,13 +1177,12 @@ packages: caniuse-lite@1.0.30001651: resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==} + caniuse-lite@1.0.30001663: + resolution: {integrity: sha512-o9C3X27GLKbLeTYZ6HBOLU1tsAcBZsLis28wrVzddShCS16RujjHp9GDHKZqrB3meE0YjhawvMFsGb/igqiPzA==} + ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - chalk@5.3.0: resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} @@ -1225,9 +1225,9 @@ packages: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} engines: {node: '>=10'} - cli-cursor@4.0.0: - resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} cli-spinners@2.9.2: resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} @@ -1244,16 +1244,10 @@ packages: collapse-white-space@2.1.0: resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==} - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} @@ -1288,9 +1282,6 @@ packages: confbox@0.1.7: resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - cookie@0.6.0: resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} engines: {node: '>= 0.6'} @@ -1341,8 +1332,8 @@ packages: engines: {node: '>=4'} hasBin: true - cssnano-preset-default@7.0.5: - resolution: {integrity: sha512-Jbzja0xaKwc5JzxPQoc+fotKpYtWEu4wQLMQe29CM0FjjdRjA4omvbGHl2DTGgARKxSTpPssBsok+ixv8uTBqw==} + cssnano-preset-default@7.0.6: + resolution: {integrity: sha512-ZzrgYupYxEvdGGuqL+JKOY70s7+saoNlHSCK/OGn1vB2pQK8KSET8jvenzItcY+kA7NoWvfbb/YhlzuzNKjOhQ==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 @@ -1353,8 +1344,8 @@ packages: peerDependencies: postcss: ^8.4.31 - cssnano@7.0.5: - resolution: {integrity: sha512-Aq0vqBLtpTT5Yxj+hLlLfNPFuRQCDIjx5JQAhhaedQKLNDvDGeVziF24PS+S1f0Z5KCxWvw0QVI3VNHNBITxVQ==} + cssnano@7.0.6: + resolution: {integrity: sha512-54woqx8SCbp8HwvNZYn68ZFAepuouZW4lTwiMVnBErM3VkO7/Sd4oTOt3Zz3bPx3kxQ36aISppyXj2Md4lg8bw==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 @@ -1372,6 +1363,15 @@ packages: supports-color: optional: true + debug@4.3.7: + resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} @@ -1479,10 +1479,6 @@ packages: escape-html@1.0.3: resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - escape-string-regexp@5.0.0: resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} engines: {node: '>=12'} @@ -1516,16 +1512,12 @@ packages: eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} - execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} - expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} - expressive-code@0.35.6: - resolution: {integrity: sha512-+mx+TPTbMqgo0mL92Xh9QgjW0kSQIsEivMgEcOnaqKqL7qCw8Vkqc5Rg/di7ZYw4aMUSr74VTc+w8GQWu05j1g==} + expressive-code@0.37.0: + resolution: {integrity: sha512-UnfkF69UpKAa2ytyNNxBifSe723wL4DOK1dqkoK0PAYaO8mo9tXsyn/SMNMVvAkZNeJcJOttYfs957a9Uaqo6A==} extend-shallow@2.0.1: resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} @@ -1623,10 +1615,6 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} @@ -1639,10 +1627,6 @@ packages: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} engines: {node: '>=8'} - get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - github-from-package@0.0.0: resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} @@ -1661,10 +1645,6 @@ packages: resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} hasBin: true - globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} @@ -1672,10 +1652,6 @@ packages: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} @@ -1683,6 +1659,9 @@ packages: hast-util-from-html@2.0.1: resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==} + hast-util-from-html@2.0.3: + resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} + hast-util-from-parse5@8.0.1: resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} @@ -1704,8 +1683,8 @@ packages: hast-util-to-estree@3.1.0: resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==} - hast-util-to-html@9.0.1: - resolution: {integrity: sha512-hZOofyZANbyWo+9RP75xIDV/gq+OUKx+T46IlwERnKmfpwp81XBFbT9mi26ws+SJchA4RVUQwIBJpqEOBhMzEQ==} + hast-util-to-html@9.0.3: + resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} hast-util-to-jsx-runtime@2.3.0: resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} @@ -1744,10 +1723,6 @@ packages: http-cache-semantics@4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} - human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - iconv-lite@0.6.3: resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} engines: {node: '>=0.10.0'} @@ -1787,8 +1762,8 @@ packages: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} - is-core-module@2.15.0: - resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==} + is-core-module@2.15.1: + resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} engines: {node: '>= 0.4'} is-decimal@2.0.1: @@ -1838,10 +1813,6 @@ packages: is-reference@3.0.2: resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} - is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-unicode-supported@1.3.0: resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} engines: {node: '>=12'} @@ -1864,9 +1835,6 @@ packages: resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} hasBin: true - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true @@ -1875,19 +1843,9 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - json-schema-traverse@1.0.0: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - jsonc-parser@2.3.1: resolution: {integrity: sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==} @@ -1963,12 +1921,12 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - magic-string@0.30.11: resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} + magicast@0.3.5: + resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} + markdown-extensions@2.0.0: resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==} engines: {node: '>=16'} @@ -2036,9 +1994,6 @@ packages: mdn-data@2.0.30: resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} - merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} @@ -2155,6 +2110,10 @@ packages: resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} engines: {node: '>=8.6'} + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} @@ -2163,13 +2122,9 @@ packages: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} - mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - - mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} @@ -2220,6 +2175,9 @@ packages: ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + muggle-string@0.4.1: resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} @@ -2262,10 +2220,6 @@ packages: not@0.1.0: resolution: {integrity: sha512-5PDmaAsVfnWUgTUbJ3ERwn7u79Z0dYxN9ErxCpVJJqe2RK0PJ3z+iFUxuqjwtlDDegXvtWoxD/3Fzxox7tFGWA==} - npm-run-path@5.3.0: - resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} @@ -2280,16 +2234,15 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} - onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} + oniguruma-to-js@0.4.3: + resolution: {integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==} - ora@8.0.1: - resolution: {integrity: sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==} + ora@8.1.0: + resolution: {integrity: sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==} engines: {node: '>=18'} p-limit@2.3.0: @@ -2322,8 +2275,8 @@ packages: package-manager-detector@0.1.2: resolution: {integrity: sha512-iePyefLTOm2gEzbaZKSW+eBMjg+UYsQvUKxmvGXAQ987K16efBg10MxIjZs08iyX+DY2/owKY9DIdu193kX33w==} - pagefind@1.1.0: - resolution: {integrity: sha512-1nmj0/vfYcMxNEQj0YDRp6bTVv9hI7HLdPhK/vBBYlrnwjATndQvHyicj5Y7pUHrpCFZpFnLVQXIF829tpFmaw==} + pagefind@1.1.1: + resolution: {integrity: sha512-U2YR0dQN5B2fbIXrLtt/UXNS0yWSSYfePaad1KcBPTi0p+zRtsVjwmoPaMQgTks5DnHNbmDxyJUL5TGaLljK3A==} hasBin: true pako@0.2.9: @@ -2358,10 +2311,6 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} - path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} @@ -2384,6 +2333,9 @@ packages: picocolors@1.0.1: resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} + picocolors@1.1.0: + resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} + picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} @@ -2419,14 +2371,14 @@ packages: peerDependencies: postcss: ^8.4.31 - postcss-convert-values@7.0.3: - resolution: {integrity: sha512-yJhocjCs2SQer0uZ9lXTMOwDowbxvhwFVrZeS6NPEij/XXthl73ggUmfwVvJM+Vaj5gtCKJV1jiUu4IhAUkX/Q==} + postcss-convert-values@7.0.4: + resolution: {integrity: sha512-e2LSXPqEHVW6aoGbjV9RsSSNDO3A0rZLCBxN24zvxF25WknMPpX8Dm9UxxThyEbaytzggRuZxaGXqaOhxQ514Q==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 - postcss-discard-comments@7.0.2: - resolution: {integrity: sha512-/Hje9Ls1IYcB9duELO/AyDUJI6aQVY3h5Rj1ziXgaLYCTi1iVBLnjg/TS0D6NszR/kDG6I86OwLmAYe+bvJjiQ==} + postcss-discard-comments@7.0.3: + resolution: {integrity: sha512-q6fjd4WU4afNhWOA2WltHgCbkRhZPgQe7cXF74fuVB/ge4QbM9HEaOIzGSiMvM+g/cOsNAUGdf2JDzqA2F8iLA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 @@ -2473,14 +2425,14 @@ packages: ts-node: optional: true - postcss-merge-longhand@7.0.3: - resolution: {integrity: sha512-8waYomFxshdv6M9Em3QRM9MettRLDRcH2JQi2l0Z1KlYD/vhal3gbkeSES0NuACXOlZBB0V/B0AseHZaklzWOA==} + postcss-merge-longhand@7.0.4: + resolution: {integrity: sha512-zer1KoZA54Q8RVHKOY5vMke0cCdNxMP3KBfDerjH/BYHh4nCIh+1Yy0t1pAEQF18ac/4z3OFclO+ZVH8azjR4A==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 - postcss-merge-rules@7.0.3: - resolution: {integrity: sha512-2eSas2p3voPxNfdI5sQrvIkMaeUHpVc3EezgVs18hz/wRTQAC9U99tp9j3W5Jx9/L3qHkEDvizEx/LdnmumIvQ==} + postcss-merge-rules@7.0.4: + resolution: {integrity: sha512-ZsaamiMVu7uBYsIdGtKJ64PkcQt6Pcpep/uO90EpLS3dxJi6OXamIobTYcImyXGoW0Wpugh7DSD3XzxZS9JCPg==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 @@ -2503,8 +2455,8 @@ packages: peerDependencies: postcss: ^8.4.31 - postcss-minify-selectors@7.0.3: - resolution: {integrity: sha512-SxTgUQSgBk6wEqzQZKEv1xQYIp9UBju6no9q+npohzSdhuSICQdkqmD1UMKkZWItS3olJSJMDDEY9WOJ5oGJew==} + postcss-minify-selectors@7.0.4: + resolution: {integrity: sha512-JG55VADcNb4xFCf75hXkzc1rNeURhlo7ugf6JjiiKRfMsKlDzN9CXHZDyiG6x/zGchpjQS+UAgb1d4nqXqOpmA==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 @@ -2601,8 +2553,8 @@ packages: peerDependencies: postcss: ^8.4.31 - postcss-unique-selectors@7.0.2: - resolution: {integrity: sha512-CjSam+7Vf8cflJQsHrMS0P2hmy9u0+n/P001kb5eAszLmhjMqrt/i5AqQuNFihhViwDvEAezqTmXqaYXL2ugMw==} + postcss-unique-selectors@7.0.3: + resolution: {integrity: sha512-J+58u5Ic5T1QjP/LDV9g3Cx4CNOgB5vz+kM6+OxHHhFACdcDeKhBXjQmB7fnIZM12YSTvsL0Opwco83DmacW2g==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 @@ -2610,12 +2562,8 @@ packages: postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.4.39: - resolution: {integrity: sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==} - engines: {node: ^10 || ^12 || >=14} - - postcss@8.4.41: - resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==} + postcss@8.4.47: + resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} engines: {node: ^10 || ^12 || >=14} prebuild-install@7.1.2: @@ -2737,8 +2685,11 @@ packages: reading-time@1.5.0: resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} - rehype-expressive-code@0.35.6: - resolution: {integrity: sha512-pPdE+pRcRw01kxMOwHQjuRxgwlblZt5+wAc3w2aPGgmcnn57wYjn07iKO7zaznDxYVxMYVvYlnL+R3vWFQS4Gw==} + regex@4.3.2: + resolution: {integrity: sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw==} + + rehype-expressive-code@0.37.0: + resolution: {integrity: sha512-5dUjqNkhw0gB1pkkjc11jWdvQFGMYcrzCrUGx7p8TiHc5IwbrzBWXXADNEP2KrtAlUIy5yRmkkgGD5az1owq3Q==} rehype-external-links@3.0.0: resolution: {integrity: sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==} @@ -2798,9 +2749,9 @@ packages: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true - restore-cursor@4.0.0: - resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} retext-latin@4.0.0: resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==} @@ -2823,6 +2774,11 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rollup@4.22.4: + resolution: {integrity: sha512-vD8HJ5raRcWOyymsR6Z3o6+RzfEPCnVLMFJ6vRslO1jt4LO6dUo5Qnpg7y4RkZFM2DMe3WUirkI5c16onjrc6A==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} @@ -2852,10 +2808,6 @@ packages: resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} engines: {node: '>=4'} - semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - semver@7.6.3: resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} engines: {node: '>=10'} @@ -2877,11 +2829,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@1.14.1: - resolution: {integrity: sha512-FujAN40NEejeXdzPt+3sZ3F2dx1U24BY2XTY01+MG8mbxCiA2XukXdcbyMyLAHJ/1AUUnQd1tZlvIjefWWEJeA==} - - signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + shiki@1.18.0: + resolution: {integrity: sha512-8jo7tOXr96h9PBQmOHVrltnETn1honZZY76YA79MHheGQg55jBvbm9dtU+MI5pjC5NJCFuA6rvVTLVeSW5cE4A==} signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} @@ -2908,6 +2857,10 @@ packages: resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} engines: {node: '>=0.10.0'} + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + source-map@0.7.4: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} @@ -2965,10 +2918,6 @@ packages: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} - strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - strip-json-comments@2.0.1: resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} engines: {node: '>=0.10.0'} @@ -2982,8 +2931,8 @@ packages: style-to-object@1.0.6: resolution: {integrity: sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==} - stylehacks@7.0.3: - resolution: {integrity: sha512-4DqtecvI/Nd+2BCvW9YEF6lhBN5UM50IJ1R3rnEAhBwbCKf4VehRf+uqvnVArnBayjYD/WtT3g0G/HSRxWfTRg==} + stylehacks@7.0.4: + resolution: {integrity: sha512-i4zfNrGMt9SB4xRK9L83rlsFCgdGANfeDAYacO1pkqcE7cRHPdWHwnKZVz7WY17Veq/FvyYsRAU++Ga+qDFIww==} engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} peerDependencies: postcss: ^8.4.31 @@ -2996,10 +2945,6 @@ packages: suf-log@2.5.3: resolution: {integrity: sha512-KvC8OPjzdNOe+xQ4XWJV2whQA0aM1kGVczMQ8+dStAO6KfEB140JEVQ9dE76ONZ0/Ylf67ni4tILPJB41U0eow==} - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} @@ -3009,8 +2954,8 @@ packages: engines: {node: '>=14.0.0'} hasBin: true - tailwindcss@3.4.10: - resolution: {integrity: sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w==} + tailwindcss@3.4.13: + resolution: {integrity: sha512-KqjHOJKogOUt5Bs752ykCeiwvi0fKVkr5oqsFNt/8px/tA8scFPIlkygsf6jXrfCqGHz7VflA6+yytWuM+XhFw==} engines: {node: '>=14.0.0'} hasBin: true @@ -3047,6 +2992,9 @@ packages: tinyexec@0.2.0: resolution: {integrity: sha512-au8dwv4xKSDR+Fw52csDo3wcDztPdne2oM1o/7LFro4h6bdFmvyUAeAfX40pwDtzHgRFqz1XWaUqgKS2G83/ig==} + tinyexec@0.3.0: + resolution: {integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==} + to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} @@ -3064,8 +3012,8 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - tsconfck@3.1.1: - resolution: {integrity: sha512-00eoI6WY57SvZEVjm13stEVE90VkEdJAFGgpFLTsZbJyW/LwFQ7uQxJHWpZ2hzSWgCPKc9AnBnNP+0X7o3hAmQ==} + tsconfck@3.1.3: + resolution: {integrity: sha512-ulNZP1SVpRDesxeMLON/LtWM8HIgAJEIVpVVhBM6gsmvQ8+Rh+ZG7FWGvHh7Ah3pRABwVJWklWCr/BTZSv0xnQ==} engines: {node: ^18 || >=20} hasBin: true peerDependencies: @@ -3090,8 +3038,8 @@ packages: typescript-auto-import-cache@0.3.3: resolution: {integrity: sha512-ojEC7+Ci1ij9eE6hp8Jl9VUNnsEKzztktP5gtYNRMrTmfXVwA1PITYYAkpxCvvupdSYa/Re51B6KMcv1CTZEUA==} - typescript@5.5.4: - resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} + typescript@5.6.2: + resolution: {integrity: sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==} engines: {node: '>=14.17'} hasBin: true @@ -3166,8 +3114,11 @@ packages: vfile@6.0.2: resolution: {integrity: sha512-zND7NlS8rJYb/sPqkb13ZvbbUoExdbi4w3SfRrMq6R3FvnLQmmfpajJNITuuYm6AZ5uao9vy4BAos3EXBPf2rg==} - vite@5.4.2: - resolution: {integrity: sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA==} + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} + + vite@5.4.7: + resolution: {integrity: sha512-5l2zxqMEPVENgvzTuBpHer2awaetimj2BGkhBPdnwKbPNOlHsODU+oiazEZzLK7KhAnOrO+XGYJYn4ZlUhDtDQ==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -3197,8 +3148,8 @@ packages: terser: optional: true - vitefu@0.2.5: - resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} + vitefu@1.0.2: + resolution: {integrity: sha512-0/iAvbXyM3RiPPJ4lyD4w6Mjgtf4ejTK6TPvTNG3H32PLwuT0N/ZjJLiXug7ETE/LWtTeHw9WRv7uX/tIKYyKg==} peerDependencies: vite: ^3.0.0 || ^4.0.0 || ^5.0.0 peerDependenciesMeta: @@ -3360,9 +3311,6 @@ packages: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} @@ -3418,11 +3366,6 @@ snapshots: '@alloc/quick-lru@5.2.0': {} - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - '@antfu/install-pkg@0.4.0': dependencies: package-manager-detector: 0.1.2 @@ -3430,13 +3373,13 @@ snapshots: '@antfu/utils@0.7.10': {} - '@astrojs/check@0.9.3(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.5.4)': + '@astrojs/check@0.9.3(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2)': dependencies: - '@astrojs/language-server': 2.14.1(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.5.4) + '@astrojs/language-server': 2.14.1(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2) chokidar: 3.6.0 fast-glob: 3.3.2 kleur: 4.1.5 - typescript: 5.5.4 + typescript: 5.6.2 yargs: 17.7.2 transitivePeerDependencies: - prettier @@ -3448,12 +3391,12 @@ snapshots: '@astrojs/internal-helpers@0.4.1': {} - '@astrojs/language-server@2.14.1(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.5.4)': + '@astrojs/language-server@2.14.1(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2)': dependencies: '@astrojs/compiler': 2.10.3 '@astrojs/yaml2ts': 0.2.1 '@jridgewell/sourcemap-codec': 1.5.0 - '@volar/kit': 2.4.0(typescript@5.5.4) + '@volar/kit': 2.4.0(typescript@5.6.2) '@volar/language-core': 2.4.0 '@volar/language-server': 2.4.0 '@volar/language-service': 2.4.0 @@ -3475,11 +3418,11 @@ snapshots: transitivePeerDependencies: - typescript - '@astrojs/markdown-remark@5.2.0': + '@astrojs/markdown-remark@6.0.0-beta.1': dependencies: '@astrojs/prism': 3.1.0 github-slugger: 2.0.0 - hast-util-from-html: 2.0.1 + hast-util-from-html: 2.0.3 hast-util-to-text: 4.0.2 import-meta-resolve: 4.1.0 mdast-util-definitions: 6.0.0 @@ -3489,32 +3432,32 @@ snapshots: remark-parse: 11.0.0 remark-rehype: 11.1.0 remark-smartypants: 3.0.2 - shiki: 1.14.1 + shiki: 1.18.0 unified: 11.0.5 unist-util-remove-position: 5.0.0 unist-util-visit: 5.0.0 unist-util-visit-parents: 6.0.1 - vfile: 6.0.2 + vfile: 6.0.3 transitivePeerDependencies: - supports-color - '@astrojs/mdx@3.1.4(astro@4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4))': + '@astrojs/mdx@4.0.0-beta.1(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2))': dependencies: - '@astrojs/markdown-remark': 5.2.0 + '@astrojs/markdown-remark': 6.0.0-beta.1 '@mdx-js/mdx': 3.0.1 acorn: 8.12.1 - astro: 4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4) + astro: 5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2) es-module-lexer: 1.5.4 estree-util-visit: 2.0.0 gray-matter: 4.0.3 - hast-util-to-html: 9.0.1 + hast-util-to-html: 9.0.3 kleur: 4.1.5 rehype-raw: 7.0.0 remark-gfm: 4.0.0 remark-smartypants: 3.0.2 source-map: 0.7.4 unist-util-visit: 5.0.0 - vfile: 6.0.2 + vfile: 6.0.3 transitivePeerDependencies: - supports-color @@ -3533,20 +3476,20 @@ snapshots: stream-replace-string: 2.0.0 zod: 3.23.8 - '@astrojs/tailwind@5.1.0(astro@4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4))(tailwindcss@3.4.10)': + '@astrojs/tailwind@5.1.1(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2))(tailwindcss@3.4.13)': dependencies: - astro: 4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4) - autoprefixer: 10.4.20(postcss@8.4.39) - postcss: 8.4.39 - postcss-load-config: 4.0.2(postcss@8.4.39) - tailwindcss: 3.4.10 + astro: 5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2) + autoprefixer: 10.4.20(postcss@8.4.47) + postcss: 8.4.47 + postcss-load-config: 4.0.2(postcss@8.4.47) + tailwindcss: 3.4.13 transitivePeerDependencies: - ts-node '@astrojs/telemetry@3.1.0': dependencies: ci-info: 4.0.0 - debug: 4.3.6 + debug: 4.3.7 dlv: 1.1.3 dset: 3.1.3 is-docker: 3.0.0 @@ -3559,173 +3502,53 @@ snapshots: dependencies: yaml: 2.5.0 - '@babel/code-frame@7.24.7': - dependencies: - '@babel/highlight': 7.24.7 - picocolors: 1.0.1 - - '@babel/compat-data@7.25.2': {} - - '@babel/core@7.25.2': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.0 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helpers': 7.25.0 - '@babel/parser': 7.25.3 - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.3 - '@babel/types': 7.25.2 - convert-source-map: 2.0.0 - debug: 4.3.6 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/generator@7.25.0': - dependencies: - '@babel/types': 7.25.2 - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 - - '@babel/helper-annotate-as-pure@7.24.7': - dependencies: - '@babel/types': 7.25.2 - - '@babel/helper-compilation-targets@7.25.2': - dependencies: - '@babel/compat-data': 7.25.2 - '@babel/helper-validator-option': 7.24.8 - browserslist: 4.23.3 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-module-imports@7.24.7': - dependencies: - '@babel/traverse': 7.25.3 - '@babel/types': 7.25.2 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.3 - transitivePeerDependencies: - - supports-color - - '@babel/helper-plugin-utils@7.24.8': {} - - '@babel/helper-simple-access@7.24.7': - dependencies: - '@babel/traverse': 7.25.3 - '@babel/types': 7.25.2 - transitivePeerDependencies: - - supports-color - '@babel/helper-string-parser@7.24.8': {} '@babel/helper-validator-identifier@7.24.7': {} - '@babel/helper-validator-option@7.24.8': {} - - '@babel/helpers@7.25.0': - dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.2 - - '@babel/highlight@7.24.7': - dependencies: - '@babel/helper-validator-identifier': 7.24.7 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.0.1 - - '@babel/parser@7.25.3': - dependencies: - '@babel/types': 7.25.2 - - '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-react-jsx@7.25.2(@babel/core@7.25.2)': + '@babel/parser@7.25.6': dependencies: - '@babel/core': 7.25.2 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) - '@babel/types': 7.25.2 - transitivePeerDependencies: - - supports-color + '@babel/types': 7.25.6 - '@babel/template@7.25.0': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/parser': 7.25.3 - '@babel/types': 7.25.2 - - '@babel/traverse@7.25.3': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.0 - '@babel/parser': 7.25.3 - '@babel/template': 7.25.0 - '@babel/types': 7.25.2 - debug: 4.3.6 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/types@7.25.2': + '@babel/types@7.25.6': dependencies: '@babel/helper-string-parser': 7.24.8 '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 - '@biomejs/biome@1.8.3': + '@biomejs/biome@1.9.2': optionalDependencies: - '@biomejs/cli-darwin-arm64': 1.8.3 - '@biomejs/cli-darwin-x64': 1.8.3 - '@biomejs/cli-linux-arm64': 1.8.3 - '@biomejs/cli-linux-arm64-musl': 1.8.3 - '@biomejs/cli-linux-x64': 1.8.3 - '@biomejs/cli-linux-x64-musl': 1.8.3 - '@biomejs/cli-win32-arm64': 1.8.3 - '@biomejs/cli-win32-x64': 1.8.3 - - '@biomejs/cli-darwin-arm64@1.8.3': + '@biomejs/cli-darwin-arm64': 1.9.2 + '@biomejs/cli-darwin-x64': 1.9.2 + '@biomejs/cli-linux-arm64': 1.9.2 + '@biomejs/cli-linux-arm64-musl': 1.9.2 + '@biomejs/cli-linux-x64': 1.9.2 + '@biomejs/cli-linux-x64-musl': 1.9.2 + '@biomejs/cli-win32-arm64': 1.9.2 + '@biomejs/cli-win32-x64': 1.9.2 + + '@biomejs/cli-darwin-arm64@1.9.2': optional: true - '@biomejs/cli-darwin-x64@1.8.3': + '@biomejs/cli-darwin-x64@1.9.2': optional: true - '@biomejs/cli-linux-arm64-musl@1.8.3': + '@biomejs/cli-linux-arm64-musl@1.9.2': optional: true - '@biomejs/cli-linux-arm64@1.8.3': + '@biomejs/cli-linux-arm64@1.9.2': optional: true - '@biomejs/cli-linux-x64-musl@1.8.3': + '@biomejs/cli-linux-x64-musl@1.9.2': optional: true - '@biomejs/cli-linux-x64@1.8.3': + '@biomejs/cli-linux-x64@1.9.2': optional: true - '@biomejs/cli-win32-arm64@1.8.3': + '@biomejs/cli-win32-arm64@1.9.2': optional: true - '@biomejs/cli-win32-x64@1.8.3': + '@biomejs/cli-win32-x64@1.9.2': optional: true '@ctrl/tinycolor@4.1.0': {} @@ -3827,32 +3650,32 @@ snapshots: '@esbuild/win32-x64@0.21.5': optional: true - '@expressive-code/core@0.35.6': + '@expressive-code/core@0.37.0': dependencies: '@ctrl/tinycolor': 4.1.0 hast-util-select: 6.0.2 - hast-util-to-html: 9.0.1 + hast-util-to-html: 9.0.3 hast-util-to-text: 4.0.2 hastscript: 9.0.0 - postcss: 8.4.41 - postcss-nested: 6.2.0(postcss@8.4.41) + postcss: 8.4.47 + postcss-nested: 6.2.0(postcss@8.4.47) unist-util-visit: 5.0.0 unist-util-visit-parents: 6.0.1 - '@expressive-code/plugin-frames@0.35.6': + '@expressive-code/plugin-frames@0.37.0': dependencies: - '@expressive-code/core': 0.35.6 + '@expressive-code/core': 0.37.0 - '@expressive-code/plugin-shiki@0.35.6': + '@expressive-code/plugin-shiki@0.37.0': dependencies: - '@expressive-code/core': 0.35.6 - shiki: 1.14.1 + '@expressive-code/core': 0.37.0 + shiki: 1.18.0 - '@expressive-code/plugin-text-markers@0.35.6': + '@expressive-code/plugin-text-markers@0.37.0': dependencies: - '@expressive-code/core': 0.35.6 + '@expressive-code/core': 0.37.0 - '@iconify-json/mdi@1.1.68': + '@iconify-json/mdi@1.2.0': dependencies: '@iconify/types': 2.0.0 @@ -4012,7 +3835,7 @@ snapshots: unist-util-position-from-estree: 2.0.0 unist-util-stringify-position: 4.0.0 unist-util-visit: 5.0.0 - vfile: 6.0.2 + vfile: 6.0.3 transitivePeerDependencies: - supports-color @@ -4030,21 +3853,21 @@ snapshots: '@oslojs/encoding@0.4.1': {} - '@pagefind/darwin-arm64@1.1.0': + '@pagefind/darwin-arm64@1.1.1': optional: true - '@pagefind/darwin-x64@1.1.0': + '@pagefind/darwin-x64@1.1.1': optional: true - '@pagefind/default-ui@1.1.0': {} + '@pagefind/default-ui@1.1.1': {} - '@pagefind/linux-arm64@1.1.0': + '@pagefind/linux-arm64@1.1.1': optional: true - '@pagefind/linux-x64@1.1.0': + '@pagefind/linux-x64@1.1.1': optional: true - '@pagefind/windows-x64@1.1.0': + '@pagefind/windows-x64@1.1.1': optional: true '@pkgjs/parseargs@0.11.0': @@ -4101,82 +3924,153 @@ snapshots: '@resvg/resvg-js-win32-ia32-msvc': 2.6.2 '@resvg/resvg-js-win32-x64-msvc': 2.6.2 - '@rollup/pluginutils@5.1.0(rollup@4.21.0)': + '@rollup/pluginutils@5.1.0(rollup@4.22.4)': dependencies: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 optionalDependencies: - rollup: 4.21.0 + rollup: 4.22.4 '@rollup/rollup-android-arm-eabi@4.21.0': optional: true + '@rollup/rollup-android-arm-eabi@4.22.4': + optional: true + '@rollup/rollup-android-arm64@4.21.0': optional: true + '@rollup/rollup-android-arm64@4.22.4': + optional: true + '@rollup/rollup-darwin-arm64@4.21.0': optional: true + '@rollup/rollup-darwin-arm64@4.22.4': + optional: true + '@rollup/rollup-darwin-x64@4.21.0': optional: true + '@rollup/rollup-darwin-x64@4.22.4': + optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.21.0': optional: true + '@rollup/rollup-linux-arm-gnueabihf@4.22.4': + optional: true + '@rollup/rollup-linux-arm-musleabihf@4.21.0': optional: true + '@rollup/rollup-linux-arm-musleabihf@4.22.4': + optional: true + '@rollup/rollup-linux-arm64-gnu@4.21.0': optional: true + '@rollup/rollup-linux-arm64-gnu@4.22.4': + optional: true + '@rollup/rollup-linux-arm64-musl@4.21.0': optional: true + '@rollup/rollup-linux-arm64-musl@4.22.4': + optional: true + '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': optional: true + '@rollup/rollup-linux-powerpc64le-gnu@4.22.4': + optional: true + '@rollup/rollup-linux-riscv64-gnu@4.21.0': optional: true + '@rollup/rollup-linux-riscv64-gnu@4.22.4': + optional: true + '@rollup/rollup-linux-s390x-gnu@4.21.0': optional: true + '@rollup/rollup-linux-s390x-gnu@4.22.4': + optional: true + '@rollup/rollup-linux-x64-gnu@4.21.0': optional: true + '@rollup/rollup-linux-x64-gnu@4.22.4': + optional: true + '@rollup/rollup-linux-x64-musl@4.21.0': optional: true + '@rollup/rollup-linux-x64-musl@4.22.4': + optional: true + '@rollup/rollup-win32-arm64-msvc@4.21.0': optional: true + '@rollup/rollup-win32-arm64-msvc@4.22.4': + optional: true + '@rollup/rollup-win32-ia32-msvc@4.21.0': optional: true + '@rollup/rollup-win32-ia32-msvc@4.22.4': + optional: true + '@rollup/rollup-win32-x64-msvc@4.21.0': optional: true - '@shikijs/core@1.14.1': + '@rollup/rollup-win32-x64-msvc@4.22.4': + optional: true + + '@shikijs/core@1.18.0': dependencies: + '@shikijs/engine-javascript': 1.18.0 + '@shikijs/engine-oniguruma': 1.18.0 + '@shikijs/types': 1.18.0 + '@shikijs/vscode-textmate': 9.2.2 '@types/hast': 3.0.4 + hast-util-to-html: 9.0.3 + + '@shikijs/engine-javascript@1.18.0': + dependencies: + '@shikijs/types': 1.18.0 + '@shikijs/vscode-textmate': 9.2.2 + oniguruma-to-js: 0.4.3 + + '@shikijs/engine-oniguruma@1.18.0': + dependencies: + '@shikijs/types': 1.18.0 + '@shikijs/vscode-textmate': 9.2.2 + + '@shikijs/types@1.18.0': + dependencies: + '@shikijs/vscode-textmate': 9.2.2 + '@types/hast': 3.0.4 + + '@shikijs/vscode-textmate@9.2.2': {} '@shuding/opentype.js@1.4.0-beta.0': dependencies: fflate: 0.7.4 string.prototype.codepointat: 0.2.1 - '@tailwindcss/aspect-ratio@0.4.2(tailwindcss@3.4.10)': + '@tailwindcss/aspect-ratio@0.4.2(tailwindcss@3.4.13)': dependencies: - tailwindcss: 3.4.10 + tailwindcss: 3.4.13 - '@tailwindcss/typography@0.5.14(tailwindcss@3.4.10)': + '@tailwindcss/typography@0.5.15(tailwindcss@3.4.13)': dependencies: lodash.castarray: 4.4.0 lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 postcss-selector-parser: 6.0.10 - tailwindcss: 3.4.10 + tailwindcss: 3.4.13 '@trysound/sax@0.2.0': {} @@ -4184,27 +4078,6 @@ snapshots: dependencies: '@types/estree': 1.0.5 - '@types/babel__core@7.20.5': - dependencies: - '@babel/parser': 7.25.3 - '@babel/types': 7.25.2 - '@types/babel__generator': 7.6.8 - '@types/babel__template': 7.4.4 - '@types/babel__traverse': 7.20.6 - - '@types/babel__generator@7.6.8': - dependencies: - '@babel/types': 7.25.2 - - '@types/babel__template@7.4.4': - dependencies: - '@babel/parser': 7.25.3 - '@babel/types': 7.25.2 - - '@types/babel__traverse@7.20.6': - dependencies: - '@babel/types': 7.25.2 - '@types/cookie@0.6.0': {} '@types/debug@4.1.12': @@ -4239,9 +4112,14 @@ snapshots: dependencies: undici-types: 6.19.8 + '@types/node@22.6.1': + dependencies: + undici-types: 6.19.8 + optional: true + '@types/sax@1.2.7': dependencies: - '@types/node': 17.0.45 + '@types/node': 22.4.2 '@types/tar@6.1.13': dependencies: @@ -4259,12 +4137,12 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@volar/kit@2.4.0(typescript@5.5.4)': + '@volar/kit@2.4.0(typescript@5.6.2)': dependencies: '@volar/language-service': 2.4.0 '@volar/typescript': 2.4.0 typesafe-path: 0.2.2 - typescript: 5.5.4 + typescript: 5.6.2 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 @@ -4330,10 +4208,6 @@ snapshots: ansi-regex@6.0.1: {} - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 @@ -4363,10 +4237,10 @@ snapshots: astring@1.8.6: {} - astro-expressive-code@0.35.6(astro@4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4)): + astro-expressive-code@0.37.0(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2)): dependencies: - astro: 4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4) - rehype-expressive-code: 0.35.6 + astro: 5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2) + rehype-expressive-code: 0.37.0 astro-icon@1.1.1: dependencies: @@ -4388,21 +4262,15 @@ snapshots: valid-filename: 4.0.0 zod: 3.23.8 - astro@4.14.3(@types/node@22.4.2)(rollup@4.21.0)(typescript@5.5.4): + astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2): dependencies: '@astrojs/compiler': 2.10.3 '@astrojs/internal-helpers': 0.4.1 - '@astrojs/markdown-remark': 5.2.0 + '@astrojs/markdown-remark': 6.0.0-beta.1 '@astrojs/telemetry': 3.1.0 - '@babel/core': 7.25.2 - '@babel/generator': 7.25.0 - '@babel/parser': 7.25.3 - '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.25.2) - '@babel/traverse': 7.25.3 - '@babel/types': 7.25.2 + '@babel/types': 7.25.6 '@oslojs/encoding': 0.4.1 - '@rollup/pluginutils': 5.1.0(rollup@4.21.0) - '@types/babel__core': 7.20.5 + '@rollup/pluginutils': 5.1.0(rollup@4.22.4) '@types/cookie': 0.6.0 acorn: 8.12.1 aria-query: 5.3.0 @@ -4413,7 +4281,7 @@ snapshots: common-ancestor-path: 1.0.1 cookie: 0.6.0 cssesc: 3.0.0 - debug: 4.3.6 + debug: 4.3.7 deterministic-object-hash: 2.0.2 devalue: 5.0.0 diff: 5.2.0 @@ -4422,8 +4290,8 @@ snapshots: es-module-lexer: 1.5.4 esbuild: 0.21.5 estree-walker: 3.0.3 - execa: 8.0.1 fast-glob: 3.3.2 + fastq: 1.17.1 flattie: 1.1.1 github-slugger: 2.0.0 gray-matter: 4.0.3 @@ -4432,10 +4300,11 @@ snapshots: js-yaml: 4.1.0 kleur: 4.1.5 magic-string: 0.30.11 - micromatch: 4.0.7 + magicast: 0.3.5 + micromatch: 4.0.8 mrmime: 2.0.0 neotraverse: 0.6.18 - ora: 8.0.1 + ora: 8.1.0 p-limit: 6.1.0 p-queue: 8.0.1 path-to-regexp: 6.2.2 @@ -4443,20 +4312,21 @@ snapshots: prompts: 2.4.2 rehype: 13.0.1 semver: 7.6.3 - shiki: 1.14.1 + shiki: 1.18.0 string-width: 7.2.0 strip-ansi: 7.1.0 - tsconfck: 3.1.1(typescript@5.5.4) + tinyexec: 0.3.0 + tsconfck: 3.1.3(typescript@5.6.2) unist-util-visit: 5.0.0 - vfile: 6.0.2 - vite: 5.4.2(@types/node@22.4.2) - vitefu: 0.2.5(vite@5.4.2(@types/node@22.4.2)) + vfile: 6.0.3 + vite: 5.4.7(@types/node@22.6.1) + vitefu: 1.0.2(vite@5.4.7(@types/node@22.6.1)) which-pm: 3.0.0 xxhash-wasm: 1.0.2 yargs-parser: 21.1.1 zod: 3.23.8 zod-to-json-schema: 3.23.2(zod@3.23.8) - zod-to-ts: 1.2.0(typescript@5.5.4)(zod@3.23.8) + zod-to-ts: 1.2.0(typescript@5.6.2)(zod@3.23.8) optionalDependencies: sharp: 0.33.5 transitivePeerDependencies: @@ -4474,24 +4344,14 @@ snapshots: asynckit@0.4.0: {} - autoprefixer@10.4.20(postcss@8.4.39): - dependencies: - browserslist: 4.23.3 - caniuse-lite: 1.0.30001651 - fraction.js: 4.3.7 - normalize-range: 0.1.2 - picocolors: 1.0.1 - postcss: 8.4.39 - postcss-value-parser: 4.2.0 - - autoprefixer@10.4.20(postcss@8.4.41): + autoprefixer@10.4.20(postcss@8.4.47): dependencies: browserslist: 4.23.3 caniuse-lite: 1.0.30001651 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.1 - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 axios@1.7.4: @@ -4593,19 +4453,15 @@ snapshots: caniuse-api@3.0.0: dependencies: browserslist: 4.23.3 - caniuse-lite: 1.0.30001651 + caniuse-lite: 1.0.30001663 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 caniuse-lite@1.0.30001651: {} - ccount@2.0.1: {} + caniuse-lite@1.0.30001663: {} - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 + ccount@2.0.1: {} chalk@5.3.0: {} @@ -4660,9 +4516,9 @@ snapshots: cli-boxes@3.0.0: {} - cli-cursor@4.0.0: + cli-cursor@5.0.0: dependencies: - restore-cursor: 4.0.0 + restore-cursor: 5.1.0 cli-spinners@2.9.2: {} @@ -4676,16 +4532,10 @@ snapshots: collapse-white-space@2.1.0: {} - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - color-convert@2.0.1: dependencies: color-name: 1.1.4 - color-name@1.1.3: {} - color-name@1.1.4: {} color-string@1.9.1: @@ -4714,8 +4564,6 @@ snapshots: confbox@0.1.7: {} - convert-source-map@2.0.0: {} - cookie@0.6.0: {} cross-spawn@7.0.3: @@ -4730,9 +4578,9 @@ snapshots: css-color-keywords@1.0.0: {} - css-declaration-sorter@7.2.0(postcss@8.4.41): + css-declaration-sorter@7.2.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 css-select@5.1.0: dependencies: @@ -4764,49 +4612,49 @@ snapshots: cssesc@3.0.0: {} - cssnano-preset-default@7.0.5(postcss@8.4.41): + cssnano-preset-default@7.0.6(postcss@8.4.47): dependencies: browserslist: 4.23.3 - css-declaration-sorter: 7.2.0(postcss@8.4.41) - cssnano-utils: 5.0.0(postcss@8.4.41) - postcss: 8.4.41 - postcss-calc: 10.0.2(postcss@8.4.41) - postcss-colormin: 7.0.2(postcss@8.4.41) - postcss-convert-values: 7.0.3(postcss@8.4.41) - postcss-discard-comments: 7.0.2(postcss@8.4.41) - postcss-discard-duplicates: 7.0.1(postcss@8.4.41) - postcss-discard-empty: 7.0.0(postcss@8.4.41) - postcss-discard-overridden: 7.0.0(postcss@8.4.41) - postcss-merge-longhand: 7.0.3(postcss@8.4.41) - postcss-merge-rules: 7.0.3(postcss@8.4.41) - postcss-minify-font-values: 7.0.0(postcss@8.4.41) - postcss-minify-gradients: 7.0.0(postcss@8.4.41) - postcss-minify-params: 7.0.2(postcss@8.4.41) - postcss-minify-selectors: 7.0.3(postcss@8.4.41) - postcss-normalize-charset: 7.0.0(postcss@8.4.41) - postcss-normalize-display-values: 7.0.0(postcss@8.4.41) - postcss-normalize-positions: 7.0.0(postcss@8.4.41) - postcss-normalize-repeat-style: 7.0.0(postcss@8.4.41) - postcss-normalize-string: 7.0.0(postcss@8.4.41) - postcss-normalize-timing-functions: 7.0.0(postcss@8.4.41) - postcss-normalize-unicode: 7.0.2(postcss@8.4.41) - postcss-normalize-url: 7.0.0(postcss@8.4.41) - postcss-normalize-whitespace: 7.0.0(postcss@8.4.41) - postcss-ordered-values: 7.0.1(postcss@8.4.41) - postcss-reduce-initial: 7.0.2(postcss@8.4.41) - postcss-reduce-transforms: 7.0.0(postcss@8.4.41) - postcss-svgo: 7.0.1(postcss@8.4.41) - postcss-unique-selectors: 7.0.2(postcss@8.4.41) - - cssnano-utils@5.0.0(postcss@8.4.41): - dependencies: - postcss: 8.4.41 - - cssnano@7.0.5(postcss@8.4.41): - dependencies: - cssnano-preset-default: 7.0.5(postcss@8.4.41) + css-declaration-sorter: 7.2.0(postcss@8.4.47) + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 + postcss-calc: 10.0.2(postcss@8.4.47) + postcss-colormin: 7.0.2(postcss@8.4.47) + postcss-convert-values: 7.0.4(postcss@8.4.47) + postcss-discard-comments: 7.0.3(postcss@8.4.47) + postcss-discard-duplicates: 7.0.1(postcss@8.4.47) + postcss-discard-empty: 7.0.0(postcss@8.4.47) + postcss-discard-overridden: 7.0.0(postcss@8.4.47) + postcss-merge-longhand: 7.0.4(postcss@8.4.47) + postcss-merge-rules: 7.0.4(postcss@8.4.47) + postcss-minify-font-values: 7.0.0(postcss@8.4.47) + postcss-minify-gradients: 7.0.0(postcss@8.4.47) + postcss-minify-params: 7.0.2(postcss@8.4.47) + postcss-minify-selectors: 7.0.4(postcss@8.4.47) + postcss-normalize-charset: 7.0.0(postcss@8.4.47) + postcss-normalize-display-values: 7.0.0(postcss@8.4.47) + postcss-normalize-positions: 7.0.0(postcss@8.4.47) + postcss-normalize-repeat-style: 7.0.0(postcss@8.4.47) + postcss-normalize-string: 7.0.0(postcss@8.4.47) + postcss-normalize-timing-functions: 7.0.0(postcss@8.4.47) + postcss-normalize-unicode: 7.0.2(postcss@8.4.47) + postcss-normalize-url: 7.0.0(postcss@8.4.47) + postcss-normalize-whitespace: 7.0.0(postcss@8.4.47) + postcss-ordered-values: 7.0.1(postcss@8.4.47) + postcss-reduce-initial: 7.0.2(postcss@8.4.47) + postcss-reduce-transforms: 7.0.0(postcss@8.4.47) + postcss-svgo: 7.0.1(postcss@8.4.47) + postcss-unique-selectors: 7.0.3(postcss@8.4.47) + + cssnano-utils@5.0.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + + cssnano@7.0.6(postcss@8.4.47): + dependencies: + cssnano-preset-default: 7.0.6(postcss@8.4.47) lilconfig: 3.1.2 - postcss: 8.4.41 + postcss: 8.4.47 csso@5.0.5: dependencies: @@ -4816,6 +4664,10 @@ snapshots: dependencies: ms: 2.1.2 + debug@4.3.7: + dependencies: + ms: 2.1.3 + decode-named-character-reference@1.0.2: dependencies: character-entities: 2.0.2 @@ -4928,8 +4780,6 @@ snapshots: escape-html@1.0.3: {} - escape-string-regexp@1.0.5: {} - escape-string-regexp@5.0.0: {} esprima@4.0.1: {} @@ -4966,26 +4816,14 @@ snapshots: eventemitter3@5.0.1: {} - execa@8.0.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 8.0.1 - human-signals: 5.0.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.3.0 - onetime: 6.0.0 - signal-exit: 4.1.0 - strip-final-newline: 3.0.0 - expand-template@2.0.3: {} - expressive-code@0.35.6: + expressive-code@0.37.0: dependencies: - '@expressive-code/core': 0.35.6 - '@expressive-code/plugin-frames': 0.35.6 - '@expressive-code/plugin-shiki': 0.35.6 - '@expressive-code/plugin-text-markers': 0.35.6 + '@expressive-code/core': 0.37.0 + '@expressive-code/plugin-frames': 0.37.0 + '@expressive-code/plugin-shiki': 0.37.0 + '@expressive-code/plugin-text-markers': 0.37.0 extend-shallow@2.0.1: dependencies: @@ -5046,7 +4884,7 @@ snapshots: find-yarn-workspace-root2@1.2.16: dependencies: - micromatch: 4.0.7 + micromatch: 4.0.8 pkg-dir: 4.2.0 flattie@1.1.1: {} @@ -5077,8 +4915,6 @@ snapshots: function-bind@1.1.2: {} - gensync@1.0.0-beta.2: {} - get-caller-file@2.0.5: {} get-east-asian-width@1.2.0: {} @@ -5087,8 +4923,6 @@ snapshots: dependencies: pump: 3.0.0 - get-stream@8.0.1: {} - github-from-package@0.0.0: {} github-slugger@2.0.0: {} @@ -5110,8 +4944,6 @@ snapshots: package-json-from-dist: 1.0.0 path-scurry: 1.11.1 - globals@11.12.0: {} - graceful-fs@4.2.11: {} gray-matter@4.0.3: @@ -5121,8 +4953,6 @@ snapshots: section-matter: 1.0.0 strip-bom-string: 1.0.0 - has-flag@3.0.0: {} - hasown@2.0.2: dependencies: function-bind: 1.1.2 @@ -5133,7 +4963,16 @@ snapshots: devlop: 1.1.0 hast-util-from-parse5: 8.0.1 parse5: 7.1.2 - vfile: 6.0.2 + vfile: 6.0.3 + vfile-message: 4.0.2 + + hast-util-from-html@2.0.3: + dependencies: + '@types/hast': 3.0.4 + devlop: 1.1.0 + hast-util-from-parse5: 8.0.1 + parse5: 7.1.2 + vfile: 6.0.3 vfile-message: 4.0.2 hast-util-from-parse5@8.0.1: @@ -5143,7 +4982,7 @@ snapshots: devlop: 1.1.0 hastscript: 8.0.0 property-information: 6.5.0 - vfile: 6.0.2 + vfile: 6.0.3 vfile-location: 5.0.3 web-namespaces: 2.0.1 @@ -5171,7 +5010,7 @@ snapshots: parse5: 7.1.2 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 - vfile: 6.0.2 + vfile: 6.0.3 web-namespaces: 2.0.1 zwitch: 2.0.4 @@ -5215,13 +5054,12 @@ snapshots: transitivePeerDependencies: - supports-color - hast-util-to-html@9.0.1: + hast-util-to-html@9.0.3: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 ccount: 2.0.1 comma-separated-tokens: 2.0.3 - hast-util-raw: 9.0.4 hast-util-whitespace: 3.0.0 html-void-elements: 3.0.0 mdast-util-to-hast: 13.2.0 @@ -5306,8 +5144,6 @@ snapshots: http-cache-semantics@4.1.1: {} - human-signals@5.0.0: {} - iconv-lite@0.6.3: dependencies: safer-buffer: 2.1.2 @@ -5339,7 +5175,7 @@ snapshots: dependencies: binary-extensions: 2.3.0 - is-core-module@2.15.0: + is-core-module@2.15.1: dependencies: hasown: 2.0.2 @@ -5373,8 +5209,6 @@ snapshots: dependencies: '@types/estree': 1.0.5 - is-stream@3.0.0: {} - is-unicode-supported@1.3.0: {} is-unicode-supported@2.0.0: {} @@ -5393,8 +5227,6 @@ snapshots: jiti@1.21.6: {} - js-tokens@4.0.0: {} - js-yaml@3.14.1: dependencies: argparse: 1.0.10 @@ -5404,12 +5236,8 @@ snapshots: dependencies: argparse: 2.0.1 - jsesc@2.5.2: {} - json-schema-traverse@1.0.0: {} - json5@2.2.3: {} - jsonc-parser@2.3.1: {} jsonc-parser@3.3.1: {} @@ -5470,14 +5298,16 @@ snapshots: lru-cache@10.4.3: {} - lru-cache@5.1.1: - dependencies: - yallist: 3.1.1 - magic-string@0.30.11: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + magicast@0.3.5: + dependencies: + '@babel/parser': 7.25.6 + '@babel/types': 7.25.6 + source-map-js: 1.2.0 + markdown-extensions@2.0.0: {} markdown-table@3.0.3: {} @@ -5647,7 +5477,7 @@ snapshots: trim-lines: 3.0.1 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 - vfile: 6.0.2 + vfile: 6.0.3 mdast-util-to-markdown@2.1.0: dependencies: @@ -5668,8 +5498,6 @@ snapshots: mdn-data@2.0.30: {} - merge-stream@2.0.0: {} - merge2@1.4.1: {} micromark-core-commonmark@2.0.1: @@ -5951,15 +5779,18 @@ snapshots: braces: 3.0.3 picomatch: 2.3.1 + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + mime-db@1.52.0: {} mime-types@2.1.35: dependencies: mime-db: 1.52.0 - mimic-fn@2.1.0: {} - - mimic-fn@4.0.0: {} + mimic-function@5.0.1: {} mimic-response@3.1.0: {} @@ -5999,6 +5830,8 @@ snapshots: ms@2.1.2: {} + ms@2.1.3: {} + muggle-string@0.4.1: {} mz@2.7.0: @@ -6031,10 +5864,6 @@ snapshots: not@0.1.0: {} - npm-run-path@5.3.0: - dependencies: - path-key: 4.0.0 - nth-check@2.1.1: dependencies: boolbase: 1.0.0 @@ -6047,18 +5876,18 @@ snapshots: dependencies: wrappy: 1.0.2 - onetime@5.1.2: + onetime@7.0.0: dependencies: - mimic-fn: 2.1.0 + mimic-function: 5.0.1 - onetime@6.0.0: + oniguruma-to-js@0.4.3: dependencies: - mimic-fn: 4.0.0 + regex: 4.3.2 - ora@8.0.1: + ora@8.1.0: dependencies: chalk: 5.3.0 - cli-cursor: 4.0.0 + cli-cursor: 5.0.0 cli-spinners: 2.9.2 is-interactive: 2.0.0 is-unicode-supported: 2.0.0 @@ -6092,13 +5921,13 @@ snapshots: package-manager-detector@0.1.2: {} - pagefind@1.1.0: + pagefind@1.1.1: optionalDependencies: - '@pagefind/darwin-arm64': 1.1.0 - '@pagefind/darwin-x64': 1.1.0 - '@pagefind/linux-arm64': 1.1.0 - '@pagefind/linux-x64': 1.1.0 - '@pagefind/windows-x64': 1.1.0 + '@pagefind/darwin-arm64': 1.1.1 + '@pagefind/darwin-x64': 1.1.1 + '@pagefind/linux-arm64': 1.1.1 + '@pagefind/linux-x64': 1.1.1 + '@pagefind/windows-x64': 1.1.1 pako@0.2.9: {} @@ -6125,7 +5954,7 @@ snapshots: nlcst-to-string: 4.0.0 unist-util-modify-children: 4.0.0 unist-util-visit-children: 3.0.0 - vfile: 6.0.2 + vfile: 6.0.3 parse5-htmlparser2-tree-adapter@7.0.0: dependencies: @@ -6146,8 +5975,6 @@ snapshots: path-key@3.1.1: {} - path-key@4.0.0: {} - path-parse@1.0.7: {} path-scurry@1.11.1: @@ -6169,6 +5996,8 @@ snapshots: picocolors@1.0.1: {} + picocolors@1.1.0: {} + picomatch@2.3.1: {} pify@2.3.0: {} @@ -6187,173 +6016,166 @@ snapshots: mlly: 1.7.1 pathe: 1.1.2 - postcss-calc@10.0.2(postcss@8.4.41): + postcss-calc@10.0.2(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 - postcss-colormin@7.0.2(postcss@8.4.41): + postcss-colormin@7.0.2(postcss@8.4.47): dependencies: browserslist: 4.23.3 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-convert-values@7.0.3(postcss@8.4.41): + postcss-convert-values@7.0.4(postcss@8.4.47): dependencies: browserslist: 4.23.3 - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-discard-comments@7.0.2(postcss@8.4.41): + postcss-discard-comments@7.0.3(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 - postcss-discard-duplicates@7.0.1(postcss@8.4.41): + postcss-discard-duplicates@7.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 - postcss-discard-empty@7.0.0(postcss@8.4.41): + postcss-discard-empty@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 - postcss-discard-overridden@7.0.0(postcss@8.4.41): + postcss-discard-overridden@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 - postcss-import@15.1.0(postcss@8.4.41): + postcss-import@15.1.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 - postcss-js@4.0.1(postcss@8.4.41): + postcss-js@4.0.1(postcss@8.4.47): dependencies: camelcase-css: 2.0.1 - postcss: 8.4.41 + postcss: 8.4.47 - postcss-load-config@4.0.2(postcss@8.4.39): + postcss-load-config@4.0.2(postcss@8.4.47): dependencies: lilconfig: 3.1.2 yaml: 2.5.0 optionalDependencies: - postcss: 8.4.39 + postcss: 8.4.47 - postcss-load-config@4.0.2(postcss@8.4.41): + postcss-merge-longhand@7.0.4(postcss@8.4.47): dependencies: - lilconfig: 3.1.2 - yaml: 2.5.0 - optionalDependencies: - postcss: 8.4.41 - - postcss-merge-longhand@7.0.3(postcss@8.4.41): - dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - stylehacks: 7.0.3(postcss@8.4.41) + stylehacks: 7.0.4(postcss@8.4.47) - postcss-merge-rules@7.0.3(postcss@8.4.41): + postcss-merge-rules@7.0.4(postcss@8.4.47): dependencies: browserslist: 4.23.3 caniuse-api: 3.0.0 - cssnano-utils: 5.0.0(postcss@8.4.41) - postcss: 8.4.41 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-selector-parser: 6.1.2 - postcss-minify-font-values@7.0.0(postcss@8.4.41): + postcss-minify-font-values@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-minify-gradients@7.0.0(postcss@8.4.41): + postcss-minify-gradients@7.0.0(postcss@8.4.47): dependencies: colord: 2.9.3 - cssnano-utils: 5.0.0(postcss@8.4.41) - postcss: 8.4.41 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-minify-params@7.0.2(postcss@8.4.41): + postcss-minify-params@7.0.2(postcss@8.4.47): dependencies: browserslist: 4.23.3 - cssnano-utils: 5.0.0(postcss@8.4.41) - postcss: 8.4.41 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-minify-selectors@7.0.3(postcss@8.4.41): + postcss-minify-selectors@7.0.4(postcss@8.4.47): dependencies: cssesc: 3.0.0 - postcss: 8.4.41 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 - postcss-nested@6.2.0(postcss@8.4.41): + postcss-nested@6.2.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 - postcss-normalize-charset@7.0.0(postcss@8.4.41): + postcss-normalize-charset@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 - postcss-normalize-display-values@7.0.0(postcss@8.4.41): + postcss-normalize-display-values@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-positions@7.0.0(postcss@8.4.41): + postcss-normalize-positions@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-repeat-style@7.0.0(postcss@8.4.41): + postcss-normalize-repeat-style@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-string@7.0.0(postcss@8.4.41): + postcss-normalize-string@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-timing-functions@7.0.0(postcss@8.4.41): + postcss-normalize-timing-functions@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-unicode@7.0.2(postcss@8.4.41): + postcss-normalize-unicode@7.0.2(postcss@8.4.47): dependencies: browserslist: 4.23.3 - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-url@7.0.0(postcss@8.4.41): + postcss-normalize-url@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-normalize-whitespace@7.0.0(postcss@8.4.41): + postcss-normalize-whitespace@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-ordered-values@7.0.1(postcss@8.4.41): + postcss-ordered-values@7.0.1(postcss@8.4.47): dependencies: - cssnano-utils: 5.0.0(postcss@8.4.41) - postcss: 8.4.41 + cssnano-utils: 5.0.0(postcss@8.4.47) + postcss: 8.4.47 postcss-value-parser: 4.2.0 - postcss-reduce-initial@7.0.2(postcss@8.4.41): + postcss-reduce-initial@7.0.2(postcss@8.4.47): dependencies: browserslist: 4.23.3 caniuse-api: 3.0.0 - postcss: 8.4.41 + postcss: 8.4.47 - postcss-reduce-transforms@7.0.0(postcss@8.4.41): + postcss-reduce-transforms@7.0.0(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 postcss-selector-parser@6.0.10: @@ -6366,30 +6188,24 @@ snapshots: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-svgo@7.0.1(postcss@8.4.41): + postcss-svgo@7.0.1(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-value-parser: 4.2.0 svgo: 3.3.2 - postcss-unique-selectors@7.0.2(postcss@8.4.41): + postcss-unique-selectors@7.0.3(postcss@8.4.47): dependencies: - postcss: 8.4.41 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 postcss-value-parser@4.2.0: {} - postcss@8.4.39: - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.1 - source-map-js: 1.2.0 - - postcss@8.4.41: + postcss@8.4.47: dependencies: nanoid: 3.3.7 - picocolors: 1.0.1 - source-map-js: 1.2.0 + picocolors: 1.1.0 + source-map-js: 1.2.1 prebuild-install@7.1.2: dependencies: @@ -6472,9 +6288,11 @@ snapshots: reading-time@1.5.0: {} - rehype-expressive-code@0.35.6: + regex@4.3.2: {} + + rehype-expressive-code@0.37.0: dependencies: - expressive-code: 0.35.6 + expressive-code: 0.37.0 rehype-external-links@3.0.0: dependencies: @@ -6495,12 +6313,12 @@ snapshots: dependencies: '@types/hast': 3.0.4 hast-util-raw: 9.0.4 - vfile: 6.0.2 + vfile: 6.0.3 rehype-stringify@10.0.0: dependencies: '@types/hast': 3.0.4 - hast-util-to-html: 9.0.1 + hast-util-to-html: 9.0.3 unified: 11.0.5 rehype@13.0.1: @@ -6552,7 +6370,7 @@ snapshots: '@types/mdast': 4.0.4 mdast-util-to-hast: 13.2.0 unified: 11.0.5 - vfile: 6.0.2 + vfile: 6.0.3 remark-smartypants@3.0.2: dependencies: @@ -6583,14 +6401,14 @@ snapshots: resolve@1.22.8: dependencies: - is-core-module: 2.15.0 + is-core-module: 2.15.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - restore-cursor@4.0.0: + restore-cursor@5.1.0: dependencies: - onetime: 5.1.2 - signal-exit: 3.0.7 + onetime: 7.0.0 + signal-exit: 4.1.0 retext-latin@4.0.0: dependencies: @@ -6641,6 +6459,29 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.21.0 fsevents: 2.3.3 + rollup@4.22.4: + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.22.4 + '@rollup/rollup-android-arm64': 4.22.4 + '@rollup/rollup-darwin-arm64': 4.22.4 + '@rollup/rollup-darwin-x64': 4.22.4 + '@rollup/rollup-linux-arm-gnueabihf': 4.22.4 + '@rollup/rollup-linux-arm-musleabihf': 4.22.4 + '@rollup/rollup-linux-arm64-gnu': 4.22.4 + '@rollup/rollup-linux-arm64-musl': 4.22.4 + '@rollup/rollup-linux-powerpc64le-gnu': 4.22.4 + '@rollup/rollup-linux-riscv64-gnu': 4.22.4 + '@rollup/rollup-linux-s390x-gnu': 4.22.4 + '@rollup/rollup-linux-x64-gnu': 4.22.4 + '@rollup/rollup-linux-x64-musl': 4.22.4 + '@rollup/rollup-win32-arm64-msvc': 4.22.4 + '@rollup/rollup-win32-ia32-msvc': 4.22.4 + '@rollup/rollup-win32-x64-msvc': 4.22.4 + fsevents: 2.3.3 + optional: true + run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 @@ -6679,8 +6520,6 @@ snapshots: extend-shallow: 2.0.1 kind-of: 6.0.3 - semver@6.3.1: {} - semver@7.6.3: {} sharp@0.32.6: @@ -6726,13 +6565,15 @@ snapshots: shebang-regex@3.0.0: {} - shiki@1.14.1: + shiki@1.18.0: dependencies: - '@shikijs/core': 1.14.1 + '@shikijs/core': 1.18.0 + '@shikijs/engine-javascript': 1.18.0 + '@shikijs/engine-oniguruma': 1.18.0 + '@shikijs/types': 1.18.0 + '@shikijs/vscode-textmate': 9.2.2 '@types/hast': 3.0.4 - signal-exit@3.0.7: {} - signal-exit@4.1.0: {} simple-concat@1.0.1: {} @@ -6758,6 +6599,8 @@ snapshots: source-map-js@1.2.0: {} + source-map-js@1.2.1: {} + source-map@0.7.4: {} space-separated-tokens@2.0.2: {} @@ -6817,8 +6660,6 @@ snapshots: strip-bom@3.0.0: {} - strip-final-newline@3.0.0: {} - strip-json-comments@2.0.1: {} strnum@1.0.5: {} @@ -6831,10 +6672,10 @@ snapshots: dependencies: inline-style-parser: 0.2.3 - stylehacks@7.0.3(postcss@8.4.41): + stylehacks@7.0.4(postcss@8.4.47): dependencies: browserslist: 4.23.3 - postcss: 8.4.41 + postcss: 8.4.47 postcss-selector-parser: 6.1.2 sucrase@3.35.0: @@ -6851,10 +6692,6 @@ snapshots: dependencies: s.color: 0.0.15 - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - supports-preserve-symlinks-flag@1.0.0: {} svgo@3.3.2: @@ -6865,9 +6702,9 @@ snapshots: css-tree: 2.3.1 css-what: 6.1.0 csso: 5.0.5 - picocolors: 1.0.1 + picocolors: 1.1.0 - tailwindcss@3.4.10: + tailwindcss@3.4.13: dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -6879,15 +6716,15 @@ snapshots: is-glob: 4.0.3 jiti: 1.21.6 lilconfig: 2.1.0 - micromatch: 4.0.7 + micromatch: 4.0.8 normalize-path: 3.0.0 object-hash: 3.0.0 - picocolors: 1.0.1 - postcss: 8.4.41 - postcss-import: 15.1.0(postcss@8.4.41) - postcss-js: 4.0.1(postcss@8.4.41) - postcss-load-config: 4.0.2(postcss@8.4.41) - postcss-nested: 6.2.0(postcss@8.4.41) + picocolors: 1.1.0 + postcss: 8.4.47 + postcss-import: 15.1.0(postcss@8.4.47) + postcss-js: 4.0.1(postcss@8.4.47) + postcss-load-config: 4.0.2(postcss@8.4.47) + postcss-nested: 6.2.0(postcss@8.4.47) postcss-selector-parser: 6.1.2 resolve: 1.22.8 sucrase: 3.35.0 @@ -6948,6 +6785,8 @@ snapshots: tinyexec@0.2.0: {} + tinyexec@0.3.0: {} + to-fast-properties@2.0.0: {} to-regex-range@5.0.1: @@ -6960,9 +6799,9 @@ snapshots: ts-interface-checker@0.1.13: {} - tsconfck@3.1.1(typescript@5.5.4): + tsconfck@3.1.3(typescript@5.6.2): optionalDependencies: - typescript: 5.5.4 + typescript: 5.6.2 tslib@2.6.3: optional: true @@ -6979,7 +6818,7 @@ snapshots: dependencies: semver: 7.6.3 - typescript@5.5.4: {} + typescript@5.6.2: {} ufo@1.5.4: {} @@ -7065,7 +6904,7 @@ snapshots: vfile-location@5.0.3: dependencies: '@types/unist': 3.0.3 - vfile: 6.0.2 + vfile: 6.0.3 vfile-message@4.0.2: dependencies: @@ -7078,18 +6917,23 @@ snapshots: unist-util-stringify-position: 4.0.0 vfile-message: 4.0.2 - vite@5.4.2(@types/node@22.4.2): + vfile@6.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile-message: 4.0.2 + + vite@5.4.7(@types/node@22.6.1): dependencies: esbuild: 0.21.5 - postcss: 8.4.41 + postcss: 8.4.47 rollup: 4.21.0 optionalDependencies: - '@types/node': 22.4.2 + '@types/node': 22.6.1 fsevents: 2.3.3 - vitefu@0.2.5(vite@5.4.2(@types/node@22.4.2)): + vitefu@1.0.2(vite@5.4.7(@types/node@22.6.1)): optionalDependencies: - vite: 5.4.2(@types/node@22.4.2) + vite: 5.4.7(@types/node@22.6.1) volar-service-css@0.0.61(@volar/language-service@2.4.0): dependencies: @@ -7243,8 +7087,6 @@ snapshots: y18n@5.0.8: {} - yallist@3.1.1: {} - yallist@4.0.0: {} yaml-language-server@1.15.0: @@ -7291,9 +7133,9 @@ snapshots: dependencies: zod: 3.23.8 - zod-to-ts@1.2.0(typescript@5.5.4)(zod@3.23.8): + zod-to-ts@1.2.0(typescript@5.6.2)(zod@3.23.8): dependencies: - typescript: 5.5.4 + typescript: 5.6.2 zod: 3.23.8 zod@3.23.8: {} From 643f1a7c39799d5bfa32780b92807d1ee288ca77 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 24 Sep 2024 09:06:27 +0100 Subject: [PATCH 02/47] fix typescript config --- src/env.d.ts | 3 --- src/pages/index.astro | 1 - tsconfig.json | 1 + 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/env.d.ts b/src/env.d.ts index 3acc5f8d2..af7d52f5f 100644 --- a/src/env.d.ts +++ b/src/env.d.ts @@ -1,6 +1,3 @@ -/// -/// - declare module "@pagefind/default-ui" { declare class PagefindUI { constructor(arg: unknown); diff --git a/src/pages/index.astro b/src/pages/index.astro index 21302125a..700f49b62 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -68,7 +68,6 @@ const cactusTech: { desc: string; href: string; title: string }[] = [ { allPostsByDate.map((p) => (
  • - {/* @ts-ignore-next-line - issue with -> @astrojs/check@0.9.3 */}
  • )) diff --git a/tsconfig.json b/tsconfig.json index 57d810077..6e277ba9a 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -13,5 +13,6 @@ "@/site-config": ["src/site.config.ts"] } }, + "include": [".astro/types.d.ts", "**/*"], "exclude": ["node_modules", "**/node_modules/*", ".vscode", "dist"] } From 5a7953d4094c0e840886070678d69cc3cdaa9128 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 11 Oct 2024 14:39:45 +0100 Subject: [PATCH 03/47] update astro beta --- package.json | 8 +- pnpm-lock.yaml | 1630 ++++++++++++++++++++++++------------------------ 2 files changed, 814 insertions(+), 824 deletions(-) diff --git a/package.json b/package.json index 4055f0eef..3800cc444 100644 --- a/package.json +++ b/package.json @@ -15,11 +15,11 @@ "check": "astro check" }, "dependencies": { - "@astrojs/mdx": "3.1.7", - "@astrojs/rss": "4.0.7", + "@astrojs/mdx": "4.0.0-beta.2", + "@astrojs/rss": "4.0.8", "@astrojs/sitemap": "3.2.0", - "@astrojs/tailwind": "5.1.1", - "astro": "4.15.12", + "@astrojs/tailwind": "5.1.2", + "astro": "5.0.0-beta.4", "astro-expressive-code": "^0.37.0", "astro-icon": "^1.1.1", "astro-robots-txt": "^1.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index da00a3ea5..254804398 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,23 +9,23 @@ importers: .: dependencies: '@astrojs/mdx': - specifier: 4.0.0-beta.1 - version: 4.0.0-beta.1(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2)) + specifier: 4.0.0-beta.2 + version: 4.0.0-beta.2(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)) '@astrojs/rss': - specifier: 4.0.7 - version: 4.0.7 + specifier: 4.0.8 + version: 4.0.8 '@astrojs/sitemap': - specifier: 3.1.6 - version: 3.1.6 + specifier: 3.2.0 + version: 3.2.0 '@astrojs/tailwind': - specifier: 5.1.1 - version: 5.1.1(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2))(tailwindcss@3.4.13) + specifier: 5.1.2 + version: 5.1.2(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))(tailwindcss@3.4.13) astro: - specifier: 5.0.0-beta.1 - version: 5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2) + specifier: 5.0.0-beta.4 + version: 5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) astro-expressive-code: specifier: ^0.37.0 - version: 0.37.0(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2)) + version: 0.37.0(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)) astro-icon: specifier: ^1.1.1 version: 1.1.1 @@ -57,8 +57,8 @@ importers: specifier: ^3.0.0 version: 3.0.0 satori: - specifier: 0.10.14 - version: 0.10.14 + specifier: 0.11.2 + version: 0.11.2 satori-html: specifier: ^0.3.2 version: 0.3.2 @@ -73,11 +73,11 @@ importers: version: 5.0.0 devDependencies: '@astrojs/check': - specifier: ^0.9.3 - version: 0.9.3(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2) + specifier: ^0.9.4 + version: 0.9.4(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2) '@biomejs/biome': - specifier: ^1.9.2 - version: 1.9.2 + specifier: ^1.9.3 + version: 1.9.3 '@iconify-json/mdi': specifier: ^1.2.0 version: 1.2.0 @@ -87,9 +87,6 @@ importers: '@resvg/resvg-js': specifier: ^2.6.2 version: 2.6.2 - '@tailwindcss/aspect-ratio': - specifier: ^0.4.2 - version: 0.4.2(tailwindcss@3.4.13) '@tailwindcss/typography': specifier: ^0.5.15 version: 0.5.15(tailwindcss@3.4.13) @@ -112,8 +109,8 @@ importers: specifier: 0.14.1 version: 0.14.1 prettier-plugin-tailwindcss: - specifier: ^0.6.6 - version: 0.6.6(prettier-plugin-astro@0.14.1)(prettier@3.3.3) + specifier: ^0.6.8 + version: 0.6.8(prettier-plugin-astro@0.14.1)(prettier@3.3.3) reading-time: specifier: ^1.5.0 version: 1.5.0 @@ -139,8 +136,8 @@ packages: '@antfu/utils@0.7.10': resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} - '@astrojs/check@0.9.3': - resolution: {integrity: sha512-I6Dz45bMI5YRbp4yK2LKWsHH3/kkHRGdPGruGkLap6pqxhdcNh7oCgN04Ac+haDfc9ow5BYPGPmEhkwef15GQQ==} + '@astrojs/check@0.9.4': + resolution: {integrity: sha512-IOheHwCtpUfvogHHsvu0AbeRZEnjJg3MopdLddkJE70mULItS/Vh37BHcI00mcOJcH1vhD3odbpvWokpxam7xA==} hasBin: true peerDependencies: typescript: ^5.0.0 @@ -154,8 +151,8 @@ packages: '@astrojs/internal-helpers@0.4.1': resolution: {integrity: sha512-bMf9jFihO8YP940uD70SI/RDzIhUHJAolWVcO1v5PUivxGKvfLZTLTVVxEYzGYyPsA3ivdLNqMnL5VgmQySa+g==} - '@astrojs/language-server@2.14.1': - resolution: {integrity: sha512-mkKtCTPRD4dyKdAqIP0zmmPyO/ZABOqFESnaVca47Dg/sAagJnDSEsDUDzNbHFh1+9Dj1o5y4iwNsxJboGdaNg==} + '@astrojs/language-server@2.15.0': + resolution: {integrity: sha512-wJHSjGApm5X8Rg1GvkevoatZBfvaFizY4kCPvuSYgs3jGCobuY3KstJGKC1yNLsRJlDweHruP+J54iKn9vEKoA==} hasBin: true peerDependencies: prettier: ^3.0.0 @@ -166,11 +163,11 @@ packages: prettier-plugin-astro: optional: true - '@astrojs/markdown-remark@6.0.0-beta.1': - resolution: {integrity: sha512-aNl4fUDEkCNisBdHgWWOk2G1hoVBBOK6Dc5BjQg6DtIuSEmNap/xs14ukJL1LZ+xw+w10pVnhjQG7x7bQ4lrRA==} + '@astrojs/markdown-remark@6.0.0-beta.2': + resolution: {integrity: sha512-XHadnf3c+hb2A0kWBuwKA3TqBKi7bIF3bpRt49DTnE3dVlsHDPmByn0Wj3CZij1HvXL/ODmPiOJt2JGXMeivuQ==} - '@astrojs/mdx@4.0.0-beta.1': - resolution: {integrity: sha512-uqVXVT2xVjN+oxl3mXHHOnxY9l+bjuVwnjPCO8AdoL489x69Crvg455D6akCtQR+ER+NMTscVvTv6BeFylC0tg==} + '@astrojs/mdx@4.0.0-beta.2': + resolution: {integrity: sha512-h0iT7VhU7JAVMOY8ahX0urtYlwmWs2jcLEOg2tk1THGVBucn6lfXxHX078W7FR094DXCPr1xjX5J8Nkmx3M6gQ==} engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} peerDependencies: astro: ^5.0.0-alpha.0 @@ -179,14 +176,14 @@ packages: resolution: {integrity: sha512-Z9IYjuXSArkAUx3N6xj6+Bnvx8OdUSHA8YoOgyepp3+zJmtVYJIl/I18GozdJVW1p5u/CNpl3Km7/gwTJK85cw==} engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} - '@astrojs/rss@4.0.7': - resolution: {integrity: sha512-ZEG55XFB19l+DplUvBISmz04UbjDtKliRO4Y5+ERRhAMjgCVVobEBNE6ZwWG1h6orWUocy4nfPihKXDyB73x9g==} + '@astrojs/rss@4.0.8': + resolution: {integrity: sha512-63UYWS2xj00+N79JPiLeHiBBB3nHfjFlJ81T9a+UaYQ7aUZyvU0E9JdZeuONwHKKcSsvP+goPjWmoVifPToRGA==} - '@astrojs/sitemap@3.1.6': - resolution: {integrity: sha512-1Qp2NvAzVImqA6y+LubKi1DVhve/hXXgFvB0szxiipzh7BvtuKe4oJJ9dXSqaubaTkt4nMa6dv6RCCAYeB6xaQ==} + '@astrojs/sitemap@3.2.0': + resolution: {integrity: sha512-SkrOCL3Z6HxdiXreZ1+aPBWgnBMJ31EgPdcscgQeLqI2Gqk/4EKLuw9q0SqKU9MmHpcPXXtcd0odfCk4barPoA==} - '@astrojs/tailwind@5.1.1': - resolution: {integrity: sha512-LwurA10uIKcGRxQP2R81RvAnBT0WPKzBntXZBF4hrAefDgM5Uumn0nsGr6tdIjSARgYz4X+Cq/Vh78t3bql3yw==} + '@astrojs/tailwind@5.1.2': + resolution: {integrity: sha512-IvOF0W/dtHElcXvhrPR35nHmhyV3cfz1EzPitMGtU7sYy9Hci3BNK1To6FWmVuuNKPxza1IgCGetSynJZL7fOg==} peerDependencies: astro: ^3.0.0 || ^4.0.0 || ^5.0.0-beta.0 tailwindcss: ^3.0.24 @@ -198,72 +195,72 @@ packages: '@astrojs/yaml2ts@0.2.1': resolution: {integrity: sha512-CBaNwDQJz20E5WxzQh4thLVfhB3JEEGz72wRA+oJp6fQR37QLAqXZJU0mHC+yqMOQ6oj0GfRPJrz6hjf+zm6zA==} - '@babel/helper-string-parser@7.24.8': - resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} + '@babel/helper-string-parser@7.25.7': + resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.24.7': - resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} + '@babel/helper-validator-identifier@7.25.7': + resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} engines: {node: '>=6.9.0'} - '@babel/parser@7.25.6': - resolution: {integrity: sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==} + '@babel/parser@7.25.7': + resolution: {integrity: sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.25.6': - resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} + '@babel/types@7.25.7': + resolution: {integrity: sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==} engines: {node: '>=6.9.0'} - '@biomejs/biome@1.9.2': - resolution: {integrity: sha512-4j2Gfwft8Jqp1X0qLYvK4TEy4xhTo4o6rlvJPsjPeEame8gsmbGQfOPBkw7ur+7/Z/f0HZmCZKqbMvR7vTXQYQ==} + '@biomejs/biome@1.9.3': + resolution: {integrity: sha512-POjAPz0APAmX33WOQFGQrwLvlu7WLV4CFJMlB12b6ZSg+2q6fYu9kZwLCOA+x83zXfcPd1RpuWOKJW0GbBwLIQ==} engines: {node: '>=14.21.3'} hasBin: true - '@biomejs/cli-darwin-arm64@1.9.2': - resolution: {integrity: sha512-rbs9uJHFmhqB3Td0Ro+1wmeZOHhAPTL3WHr8NtaVczUmDhXkRDWScaxicG9+vhSLj1iLrW47itiK6xiIJy6vaA==} + '@biomejs/cli-darwin-arm64@1.9.3': + resolution: {integrity: sha512-QZzD2XrjJDUyIZK+aR2i5DDxCJfdwiYbUKu9GzkCUJpL78uSelAHAPy7m0GuPMVtF/Uo+OKv97W3P9nuWZangQ==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [darwin] - '@biomejs/cli-darwin-x64@1.9.2': - resolution: {integrity: sha512-BlfULKijNaMigQ9GH9fqJVt+3JTDOSiZeWOQtG/1S1sa8Lp046JHG3wRJVOvekTPL9q/CNFW1NVG8J0JN+L1OA==} + '@biomejs/cli-darwin-x64@1.9.3': + resolution: {integrity: sha512-vSCoIBJE0BN3SWDFuAY/tRavpUtNoqiceJ5PrU3xDfsLcm/U6N93JSM0M9OAiC/X7mPPfejtr6Yc9vSgWlEgVw==} engines: {node: '>=14.21.3'} cpu: [x64] os: [darwin] - '@biomejs/cli-linux-arm64-musl@1.9.2': - resolution: {integrity: sha512-ZATvbUWhNxegSALUnCKWqetTZqrK72r2RsFD19OK5jXDj/7o1hzI1KzDNG78LloZxftrwr3uI9SqCLh06shSZw==} + '@biomejs/cli-linux-arm64-musl@1.9.3': + resolution: {integrity: sha512-VBzyhaqqqwP3bAkkBrhVq50i3Uj9+RWuj+pYmXrMDgjS5+SKYGE56BwNw4l8hR3SmYbLSbEo15GcV043CDSk+Q==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-arm64@1.9.2': - resolution: {integrity: sha512-T8TJuSxuBDeQCQzxZu2o3OU4eyLumTofhCxxFd3+aH2AEWVMnH7Z/c3QP1lHI5RRMBP9xIJeMORqDQ5j+gVZzw==} + '@biomejs/cli-linux-arm64@1.9.3': + resolution: {integrity: sha512-vJkAimD2+sVviNTbaWOGqEBy31cW0ZB52KtpVIbkuma7PlfII3tsLhFa+cwbRAcRBkobBBhqZ06hXoZAN8NODQ==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-x64-musl@1.9.2': - resolution: {integrity: sha512-CjPM6jT1miV5pry9C7qv8YJk0FIZvZd86QRD3atvDgfgeh9WQU0k2Aoo0xUcPdTnoz0WNwRtDicHxwik63MmSg==} + '@biomejs/cli-linux-x64-musl@1.9.3': + resolution: {integrity: sha512-TJmnOG2+NOGM72mlczEsNki9UT+XAsMFAOo8J0me/N47EJ/vkLXxf481evfHLlxMejTY6IN8SdRSiPVLv6AHlA==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-linux-x64@1.9.2': - resolution: {integrity: sha512-T0cPk3C3Jr2pVlsuQVTBqk2qPjTm8cYcTD9p/wmR9MeVqui1C/xTVfOIwd3miRODFMrJaVQ8MYSXnVIhV9jTjg==} + '@biomejs/cli-linux-x64@1.9.3': + resolution: {integrity: sha512-x220V4c+romd26Mu1ptU+EudMXVS4xmzKxPVb9mgnfYlN4Yx9vD5NZraSx/onJnd3Gh/y8iPUdU5CDZJKg9COA==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-win32-arm64@1.9.2': - resolution: {integrity: sha512-2x7gSty75bNIeD23ZRPXyox6Z/V0M71ObeJtvQBhi1fgrvPdtkEuw7/0wEHg6buNCubzOFuN9WYJm6FKoUHfhg==} + '@biomejs/cli-win32-arm64@1.9.3': + resolution: {integrity: sha512-lg/yZis2HdQGsycUvHWSzo9kOvnGgvtrYRgoCEwPBwwAL8/6crOp3+f47tPwI/LI1dZrhSji7PNsGKGHbwyAhw==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [win32] - '@biomejs/cli-win32-x64@1.9.2': - resolution: {integrity: sha512-JC3XvdYcjmu1FmAehVwVV0SebLpeNTnO2ZaMdGCSOdS7f8O9Fq14T2P1gTG1Q29Q8Dt1S03hh0IdVpIZykOL8g==} + '@biomejs/cli-win32-x64@1.9.3': + resolution: {integrity: sha512-cQMy2zanBkVLpmmxXdK6YePzmZx0s5Z7KEnwmrW54rcXK3myCNbQa09SwGZ8i/8sLw0H9F3X7K4rxVNGU8/D4Q==} engines: {node: '>=14.21.3'} cpu: [x64] os: [win32] @@ -302,138 +299,282 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.24.0': + resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.21.5': resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.24.0': + resolution: {integrity: sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.21.5': resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] + '@esbuild/android-arm@0.24.0': + resolution: {integrity: sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.21.5': resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] + '@esbuild/android-x64@0.24.0': + resolution: {integrity: sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.21.5': resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.24.0': + resolution: {integrity: sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.21.5': resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.24.0': + resolution: {integrity: sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.21.5': resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.24.0': + resolution: {integrity: sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.24.0': + resolution: {integrity: sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.21.5': resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.24.0': + resolution: {integrity: sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.21.5': resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.24.0': + resolution: {integrity: sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.21.5': resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.24.0': + resolution: {integrity: sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.24.0': + resolution: {integrity: sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.21.5': resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.24.0': + resolution: {integrity: sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.21.5': resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.24.0': + resolution: {integrity: sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.21.5': resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.24.0': + resolution: {integrity: sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.21.5': resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.24.0': + resolution: {integrity: sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.21.5': resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.24.0': + resolution: {integrity: sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/netbsd-x64@0.21.5': resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.24.0': + resolution: {integrity: sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.24.0': + resolution: {integrity: sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.24.0': + resolution: {integrity: sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/sunos-x64@0.21.5': resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.24.0': + resolution: {integrity: sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.21.5': resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.24.0': + resolution: {integrity: sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.21.5': resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.24.0': + resolution: {integrity: sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.21.5': resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.24.0': + resolution: {integrity: sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@expressive-code/core@0.37.0': resolution: {integrity: sha512-uCPAaQ//5RZeeKAN9cMyGH8YIm+h1Rldy34IWMbsCECrFVo86w+eR67jVWoQ2HNe0dSZ4XTdgJKYEScuVcy2Cw==} @@ -600,8 +741,8 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@oslojs/encoding@0.4.1': - resolution: {integrity: sha512-hkjo6MuIK/kQR5CrGNdAPZhS01ZCXuWDRJ187zh6qqF2+yMHZpD9fAYpX8q2bOO6Ryhl3XpCT6kUX76N8hhm4Q==} + '@oslojs/encoding@1.1.0': + resolution: {integrity: sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==} '@pagefind/darwin-arm64@1.1.1': resolution: {integrity: sha512-tZ9tysUmQpFs2EqWG2+E1gc+opDAhSyZSsgKmFzhnWfkK02YHZhvL5XJXEZDqYy3s1FAKhwjTg8XDxneuBlDZQ==} @@ -711,8 +852,8 @@ packages: resolution: {integrity: sha512-xBaJish5OeGmniDj9cW5PRa/PtmuVU3ziqrbr5xJj901ZDN4TosrVaNZpEiLZAxdfnhAe7uQ7QFWfjPe9d9K2Q==} engines: {node: '>= 10'} - '@rollup/pluginutils@5.1.0': - resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} + '@rollup/pluginutils@5.1.2': + resolution: {integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -720,191 +861,106 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.21.0': - resolution: {integrity: sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA==} + '@rollup/rollup-android-arm-eabi@4.24.0': + resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm-eabi@4.22.4': - resolution: {integrity: sha512-Fxamp4aEZnfPOcGA8KSNEohV8hX7zVHOemC8jVBoBUHu5zpJK/Eu3uJwt6BMgy9fkvzxDaurgj96F/NiLukF2w==} - cpu: [arm] - os: [android] - - '@rollup/rollup-android-arm64@4.21.0': - resolution: {integrity: sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==} - cpu: [arm64] - os: [android] - - '@rollup/rollup-android-arm64@4.22.4': - resolution: {integrity: sha512-VXoK5UMrgECLYaMuGuVTOx5kcuap1Jm8g/M83RnCHBKOqvPPmROFJGQaZhGccnsFtfXQ3XYa4/jMCJvZnbJBdA==} + '@rollup/rollup-android-arm64@4.24.0': + resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.21.0': - resolution: {integrity: sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==} + '@rollup/rollup-darwin-arm64@4.24.0': + resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-arm64@4.22.4': - resolution: {integrity: sha512-xMM9ORBqu81jyMKCDP+SZDhnX2QEVQzTcC6G18KlTQEzWK8r/oNZtKuZaCcHhnsa6fEeOBionoyl5JsAbE/36Q==} - cpu: [arm64] - os: [darwin] - - '@rollup/rollup-darwin-x64@4.21.0': - resolution: {integrity: sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==} + '@rollup/rollup-darwin-x64@4.24.0': + resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-darwin-x64@4.22.4': - resolution: {integrity: sha512-aJJyYKQwbHuhTUrjWjxEvGnNNBCnmpHDvrb8JFDbeSH3m2XdHcxDd3jthAzvmoI8w/kSjd2y0udT+4okADsZIw==} - cpu: [x64] - os: [darwin] - - '@rollup/rollup-linux-arm-gnueabihf@4.21.0': - resolution: {integrity: sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==} + '@rollup/rollup-linux-arm-gnueabihf@4.24.0': + resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-gnueabihf@4.22.4': - resolution: {integrity: sha512-j63YtCIRAzbO+gC2L9dWXRh5BFetsv0j0va0Wi9epXDgU/XUi5dJKo4USTttVyK7fGw2nPWK0PbAvyliz50SCQ==} + '@rollup/rollup-linux-arm-musleabihf@4.24.0': + resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.21.0': - resolution: {integrity: sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm-musleabihf@4.22.4': - resolution: {integrity: sha512-dJnWUgwWBX1YBRsuKKMOlXCzh2Wu1mlHzv20TpqEsfdZLb3WoJW2kIEsGwLkroYf24IrPAvOT/ZQ2OYMV6vlrg==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm64-gnu@4.21.0': - resolution: {integrity: sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-arm64-gnu@4.22.4': - resolution: {integrity: sha512-AdPRoNi3NKVLolCN/Sp4F4N1d98c4SBnHMKoLuiG6RXgoZ4sllseuGioszumnPGmPM2O7qaAX/IJdeDU8f26Aw==} + '@rollup/rollup-linux-arm64-gnu@4.24.0': + resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.21.0': - resolution: {integrity: sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==} + '@rollup/rollup-linux-arm64-musl@4.24.0': + resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.22.4': - resolution: {integrity: sha512-Gl0AxBtDg8uoAn5CCqQDMqAx22Wx22pjDOjBdmG0VIWX3qUBHzYmOKh8KXHL4UpogfJ14G4wk16EQogF+v8hmA==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': - resolution: {integrity: sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==} + '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': + resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.22.4': - resolution: {integrity: sha512-3aVCK9xfWW1oGQpTsYJJPF6bfpWfhbRnhdlyhak2ZiyFLDaayz0EP5j9V1RVLAAxlmWKTDfS9wyRyY3hvhPoOg==} - cpu: [ppc64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.21.0': - resolution: {integrity: sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==} - cpu: [riscv64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.22.4': - resolution: {integrity: sha512-ePYIir6VYnhgv2C5Xe9u+ico4t8sZWXschR6fMgoPUK31yQu7hTEJb7bCqivHECwIClJfKgE7zYsh1qTP3WHUA==} + '@rollup/rollup-linux-riscv64-gnu@4.24.0': + resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.21.0': - resolution: {integrity: sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==} + '@rollup/rollup-linux-s390x-gnu@4.24.0': + resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.22.4': - resolution: {integrity: sha512-GqFJ9wLlbB9daxhVlrTe61vJtEY99/xB3C8e4ULVsVfflcpmR6c8UZXjtkMA6FhNONhj2eA5Tk9uAVw5orEs4Q==} - cpu: [s390x] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.21.0': - resolution: {integrity: sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.22.4': - resolution: {integrity: sha512-87v0ol2sH9GE3cLQLNEy0K/R0pz1nvg76o8M5nhMR0+Q+BBGLnb35P0fVz4CQxHYXaAOhE8HhlkaZfsdUOlHwg==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-linux-x64-musl@4.21.0': - resolution: {integrity: sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==} + '@rollup/rollup-linux-x64-gnu@4.24.0': + resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.22.4': - resolution: {integrity: sha512-UV6FZMUgePDZrFjrNGIWzDo/vABebuXBhJEqrHxrGiU6HikPy0Z3LfdtciIttEUQfuDdCn8fqh7wiFJjCNwO+g==} + '@rollup/rollup-linux-x64-musl@4.24.0': + resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.21.0': - resolution: {integrity: sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==} + '@rollup/rollup-win32-arm64-msvc@4.24.0': + resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-arm64-msvc@4.22.4': - resolution: {integrity: sha512-BjI+NVVEGAXjGWYHz/vv0pBqfGoUH0IGZ0cICTn7kB9PyjrATSkX+8WkguNjWoj2qSr1im/+tTGRaY+4/PdcQw==} - cpu: [arm64] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.21.0': - resolution: {integrity: sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==} - cpu: [ia32] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.22.4': - resolution: {integrity: sha512-SiWG/1TuUdPvYmzmYnmd3IEifzR61Tragkbx9D3+R8mzQqDBz8v+BvZNDlkiTtI9T15KYZhP0ehn3Dld4n9J5g==} + '@rollup/rollup-win32-ia32-msvc@4.24.0': + resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.21.0': - resolution: {integrity: sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==} + '@rollup/rollup-win32-x64-msvc@4.24.0': + resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==} cpu: [x64] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.22.4': - resolution: {integrity: sha512-j8pPKp53/lq9lMXN57S8cFz0MynJk8OWNuUnXct/9KCpKU7DgU3bYMJhwWmcqC0UU29p8Lr0/7KEVcaM6bf47Q==} - cpu: [x64] - os: [win32] - - '@shikijs/core@1.18.0': - resolution: {integrity: sha512-VK4BNVCd2leY62Nm2JjyxtRLkyrZT/tv104O81eyaCjHq4Adceq2uJVFJJAIof6lT1mBwZrEo2qT/T+grv3MQQ==} + '@shikijs/core@1.22.0': + resolution: {integrity: sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==} - '@shikijs/engine-javascript@1.18.0': - resolution: {integrity: sha512-qoP/aO/ATNwYAUw1YMdaip/YVEstMZEgrwhePm83Ll9OeQPuxDZd48szZR8oSQNQBT8m8UlWxZv8EA3lFuyI5A==} + '@shikijs/engine-javascript@1.22.0': + resolution: {integrity: sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==} - '@shikijs/engine-oniguruma@1.18.0': - resolution: {integrity: sha512-B9u0ZKI/cud+TcmF8Chyh+R4V5qQVvyDOqXC2l2a4x73PBSBc6sZ0JRAX3eqyJswqir6ktwApUUGBYePdKnMJg==} + '@shikijs/engine-oniguruma@1.22.0': + resolution: {integrity: sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==} - '@shikijs/types@1.18.0': - resolution: {integrity: sha512-O9N36UEaGGrxv1yUrN2nye7gDLG5Uq0/c1LyfmxsvzNPqlHzWo9DI0A4+fhW2y3bGKuQu/fwS7EPdKJJCowcVA==} + '@shikijs/types@1.22.0': + resolution: {integrity: sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==} - '@shikijs/vscode-textmate@9.2.2': - resolution: {integrity: sha512-TMp15K+GGYrWlZM8+Lnj9EaHEFmOen0WJBrfa17hF7taDOYthuPPV0GWzfd/9iMij0akS/8Yw2ikquH7uVi/fg==} + '@shikijs/vscode-textmate@9.3.0': + resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} '@shuding/opentype.js@1.4.0-beta.0': resolution: {integrity: sha512-3NgmNyH3l/Hv6EvsWJbsvpcpUba6R8IREQ83nH83cyakCw7uM1arZKNfHwv1Wz6jgqrF/j4x5ELvR6PnK9nTcA==} engines: {node: '>= 8.0.0'} hasBin: true - '@tailwindcss/aspect-ratio@0.4.2': - resolution: {integrity: sha512-8QPrypskfBa7QIMuKHg2TA7BqES6vhBrDLOv8Unb6FcFyd3TjKbc6lcmb9UPQHxfl24sXoJ41ux/H7qQQvfaSQ==} - peerDependencies: - tailwindcss: '>=2.0.0 || >=3.0.0 || >=3.0.0-alpha.1' - '@tailwindcss/typography@0.5.15': resolution: {integrity: sha512-AqhlCXl+8grUz8uqExv5OTtgpjuVIwFTSXTrh8y9/pw6q2ek7fJ+Y8ZEVw7EB2DCcuCOtEjf9w3+J3rzts01uA==} peerDependencies: @@ -926,8 +982,8 @@ packages: '@types/estree-jsx@1.0.5': resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} - '@types/estree@1.0.5': - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + '@types/estree@1.0.6': + resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} @@ -950,8 +1006,8 @@ packages: '@types/node@22.4.2': resolution: {integrity: sha512-nAvM3Ey230/XzxtyDcJ+VjvlzpzoHwLsF7JaDRfoI0ytO0mVheerNmM45CtA0yOILXwXXxOrcUWH3wltX+7PSw==} - '@types/node@22.6.1': - resolution: {integrity: sha512-V48tCfcKb/e6cVUigLAaJDAILdMP0fUW6BidkPK4GpGjXcfbnoHasCZDwz3N3yVt5we2RHm4XTQCpv0KJz9zqw==} + '@types/node@22.7.5': + resolution: {integrity: sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==} '@types/sax@1.2.7': resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==} @@ -971,25 +1027,25 @@ packages: '@ungap/structured-clone@1.2.0': resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - '@volar/kit@2.4.0': - resolution: {integrity: sha512-uqwtPKhrbnP+3f8hs+ltDYXLZ6Wdbs54IzkaPocasI4aBhqWLht5qXctE1MqpZU52wbH359E0u9nhxEFmyon+w==} + '@volar/kit@2.4.6': + resolution: {integrity: sha512-OaMtpmLns6IYD1nOSd0NdG/F5KzJ7Jr4B7TLeb4byPzu+ExuuRVeO56Dn1C7Frnw6bGudUQd90cpQAmxdB+RlQ==} peerDependencies: typescript: '*' - '@volar/language-core@2.4.0': - resolution: {integrity: sha512-FTla+khE+sYK0qJP+6hwPAAUwiNHVMph4RUXpxf/FIPKUP61NFrVZorml4mjFShnueR2y9/j8/vnh09YwVdH7A==} + '@volar/language-core@2.4.6': + resolution: {integrity: sha512-FxUfxaB8sCqvY46YjyAAV6c3mMIq/NWQMVvJ+uS4yxr1KzOvyg61gAuOnNvgCvO4TZ7HcLExBEsWcDu4+K4E8A==} - '@volar/language-server@2.4.0': - resolution: {integrity: sha512-rmGIjAxWekWQiGH97Mosb4juiD/hfFYNQKV5Py9r7vDOLSkbIwRhITbwHm88NJKs8P6TNc6w/PfBXN6yjKadJg==} + '@volar/language-server@2.4.6': + resolution: {integrity: sha512-ARIbMXapEUPj9UFbZqWqw/iZ+ZuxUcY+vY212+2uutZVo/jrdzhLPu2TfZd9oB9akX8XXuslinT3051DyHLLRA==} - '@volar/language-service@2.4.0': - resolution: {integrity: sha512-4P3yeQXIL68mLfS3n6P3m02IRg3GnLHUU9k/1PCHEfm5FG9bySkDOc72dbBn2vAa2BxOqm18bmmZXrsWuQ5AOw==} + '@volar/language-service@2.4.6': + resolution: {integrity: sha512-wNeEVBgBKgpP1MfMYPrgTf1K8nhOGEh3ac0+9n6ECyk2N03+j0pWCpQ2i99mRWT/POvo1PgizDmYFH8S67bZOA==} - '@volar/source-map@2.4.0': - resolution: {integrity: sha512-2ceY8/NEZvN6F44TXw2qRP6AQsvCYhV2bxaBPWxV9HqIfkbRydSksTFObCF1DBDNBfKiZTS8G/4vqV6cvjdOIQ==} + '@volar/source-map@2.4.6': + resolution: {integrity: sha512-Nsh7UW2ruK+uURIPzjJgF0YRGP5CX9nQHypA2OMqdM2FKy7rh+uv3XgPnWPw30JADbKvZ5HuBzG4gSbVDYVtiw==} - '@volar/typescript@2.4.0': - resolution: {integrity: sha512-9zx3lQWgHmVd+JRRAHUSRiEhe4TlzL7U7e6ulWXOxHH/WNYxzKwCvZD7WYWEZFdw4dHfTD9vUR0yPQO6GilCaQ==} + '@volar/typescript@2.4.6': + resolution: {integrity: sha512-NMIrA7y5OOqddL9VtngPWYmdQU03htNKFtAYidbYfWA0TOhyGVd9tfcP4TsLWQ+RBWDZCbBqsr8xzU0ZOxYTCQ==} '@vscode/emmet-helper@2.9.3': resolution: {integrity: sha512-rB39LHWWPQYYlYfpv9qCoZOVioPCftKXXqrsyqN1mTWZM6dTnONT63Db+03vgrBbHzJN45IrgS/AGxw9iiqfEw==} @@ -1017,8 +1073,8 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + ansi-regex@6.1.0: + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} engines: {node: '>=12'} ansi-styles@4.3.0: @@ -1045,14 +1101,15 @@ packages: argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - aria-query@5.3.0: - resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} array-iterate@2.0.1: resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==} - astring@1.8.6: - resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==} + astring@1.9.0: + resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==} hasBin: true astro-expressive-code@0.37.0: @@ -1069,8 +1126,8 @@ packages: astro-webmanifest@1.0.0: resolution: {integrity: sha512-ar8SZuFf8k2XuqAYpiaiGmzgpqVufyPx0A9d8OljPup+Sgs+1trG2bpvo7JcM+m4L3figPaYEZOy1rRawCEU0w==} - astro@5.0.0-beta.1: - resolution: {integrity: sha512-i5L+2tky+cYaLba/UX6KGe4oXGdlYfcPWCukT56FLUWLI4CsXqOL9QC/paUH7qG8jAnxdYnST/HtuyREtiYUhg==} + astro@5.0.0-beta.4: + resolution: {integrity: sha512-IZkFpETZxOWxuRnUnp2Lg093Ep1+fZgsqLFFHRcjdq6jjNv1fz94wE3mQZelCgtBwUg9UHokoOdMvCichMxJcw==} engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} hasBin: true @@ -1138,9 +1195,9 @@ packages: boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - boxen@7.1.1: - resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==} - engines: {node: '>=14.16'} + boxen@8.0.1: + resolution: {integrity: sha512-F3PH5k5juxom4xktynS7MoFY+NUWH5LC4CnH11YB8NPew+HLpmBLCybSAEyb2F+4pRXhuhWqFesoQd6DAyc2hw==} + engines: {node: '>=18'} brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} @@ -1154,6 +1211,11 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + browserslist@4.24.0: + resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + buffer-crc32@0.2.13: resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} @@ -1164,9 +1226,9 @@ packages: resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} engines: {node: '>= 6'} - camelcase@7.0.1: - resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} - engines: {node: '>=14.16'} + camelcase@8.0.0: + resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==} + engines: {node: '>=16'} camelize@1.0.1: resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} @@ -1177,8 +1239,8 @@ packages: caniuse-lite@1.0.30001651: resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==} - caniuse-lite@1.0.30001663: - resolution: {integrity: sha512-o9C3X27GLKbLeTYZ6HBOLU1tsAcBZsLis28wrVzddShCS16RujjHp9GDHKZqrB3meE0YjhawvMFsGb/igqiPzA==} + caniuse-lite@1.0.30001667: + resolution: {integrity: sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==} ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -1210,6 +1272,10 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} + chokidar@4.0.1: + resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==} + engines: {node: '>= 14.16.0'} + chownr@1.1.4: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} @@ -1225,14 +1291,6 @@ packages: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} engines: {node: '>=10'} - cli-cursor@5.0.0: - resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} - engines: {node: '>=18'} - - cli-spinners@2.9.2: - resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} - engines: {node: '>=6'} - cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} @@ -1282,8 +1340,8 @@ packages: confbox@0.1.7: resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} - cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} + cookie@0.7.2: + resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} engines: {node: '>= 0.6'} cross-spawn@7.0.3: @@ -1306,6 +1364,10 @@ packages: peerDependencies: postcss: ^8.0.9 + css-gradient-parser@0.0.16: + resolution: {integrity: sha512-3O5QdqgFRUbXvK1x5INf1YkBz1UKSWqrd63vWsum8MNHDBYD5urm3QtxZbKU259OrEXNM26lP/MPY3d1IGkBgA==} + engines: {node: '>=16'} + css-select@5.1.0: resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} @@ -1399,8 +1461,8 @@ packages: resolution: {integrity: sha512-KxektNH63SrbfUyDiwXqRb1rLwKt33AmMv+5Nhsw1kqZ13SJBRTgZHtGbE+hH3a1mVW1cz+4pqSWVPAtLVXTzQ==} engines: {node: '>=18'} - devalue@5.0.0: - resolution: {integrity: sha512-gO+/OMXF7488D+u3ue+G7Y4AA3ZmUnB3eHJXmBTgNHvr4ZNzl36A0ZtG+XCRNYCkYx/bFmw4qtkoFLa+wSrwAA==} + devalue@5.1.1: + resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==} devlop@1.1.0: resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} @@ -1432,8 +1494,8 @@ packages: domutils@3.1.0: resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} - dset@3.1.3: - resolution: {integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==} + dset@3.1.4: + resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==} engines: {node: '>=4'} eastasianwidth@0.2.0: @@ -1442,11 +1504,14 @@ packages: electron-to-chromium@1.5.13: resolution: {integrity: sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==} - emmet@2.4.7: - resolution: {integrity: sha512-O5O5QNqtdlnQM2bmKHtJgyChcrFMgQuulI+WdiOw2NArzprUqqxUW6bgYtKvzKgrsYpuLWalOkdhNP+1jluhCA==} + electron-to-chromium@1.5.33: + resolution: {integrity: sha512-+cYTcFB1QqD4j4LegwLfpCNxifb6dDFUAwk6RsLusCwIaZI6or2f+q8rs5tTB2YC53HhOlIbEaqHMAAC8IOIwA==} + + emmet@2.4.11: + resolution: {integrity: sha512-23QPJB3moh/U9sT4rQzGgeyyGIrcM+GH5uVYg2C6wZIxAIJq7Ng3QLT79tl8FUwDXhyq9SusfknOrofAKqvgyQ==} - emoji-regex@10.3.0: - resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} + emoji-regex@10.4.0: + resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -1472,10 +1537,19 @@ packages: engines: {node: '>=12'} hasBin: true + esbuild@0.24.0: + resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==} + engines: {node: '>=18'} + hasBin: true + escalade@3.1.2: resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} engines: {node: '>=6'} + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + escape-html@1.0.3: resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} @@ -1519,10 +1593,6 @@ packages: expressive-code@0.37.0: resolution: {integrity: sha512-UnfkF69UpKAa2ytyNNxBifSe723wL4DOK1dqkoK0PAYaO8mo9tXsyn/SMNMVvAkZNeJcJOttYfs957a9Uaqo6A==} - extend-shallow@2.0.1: - resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} - engines: {node: '>=0.10.0'} - extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -1541,11 +1611,11 @@ packages: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} - fast-uri@3.0.1: - resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} + fast-uri@3.0.2: + resolution: {integrity: sha512-GR6f0hD7XXyNJa25Tb9BuIdN0tdr+0BMi6/CJPH3wJO1JjNG3n/VsSw38AwRdKZABm8lGbPfakLRkYzx2V9row==} - fast-xml-parser@4.4.0: - resolution: {integrity: sha512-kLY3jFlwIYwBNDojclKsNAC12sfD6NwW74QB2CoNGPvtVxjliYehVunB3HYyNi+n4Tt1dAcgwYvmKF/Z18flqg==} + fast-xml-parser@4.5.0: + resolution: {integrity: sha512-/PlTQCI96+fZMAOLMZK4CWG1ItCbfZ/0jx7UIJFChPNrx7tcEgerUgWbeieCM9MfHInUDyK8DWYZ+YrywDJuTg==} hasBin: true fastq@1.17.1: @@ -1648,17 +1718,10 @@ packages: graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - gray-matter@4.0.3: - resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} - engines: {node: '>=6.0'} - hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} - hast-util-from-html@2.0.1: - resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==} - hast-util-from-html@2.0.3: resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} @@ -1692,8 +1755,8 @@ packages: hast-util-to-parse5@8.0.0: resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} - hast-util-to-string@3.0.0: - resolution: {integrity: sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==} + 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==} @@ -1742,8 +1805,8 @@ packages: inline-style-parser@0.1.1: resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} - inline-style-parser@0.2.3: - resolution: {integrity: sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==} + inline-style-parser@0.2.4: + resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==} is-absolute-url@4.0.1: resolution: {integrity: sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==} @@ -1774,10 +1837,6 @@ packages: engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} hasBin: true - is-extendable@0.1.1: - resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} - engines: {node: '>=0.10.0'} - is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -1798,10 +1857,6 @@ packages: engines: {node: '>=14.16'} hasBin: true - is-interactive@2.0.0: - resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} - engines: {node: '>=12'} - is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} @@ -1813,14 +1868,6 @@ packages: is-reference@3.0.2: resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} - is-unicode-supported@1.3.0: - resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} - engines: {node: '>=12'} - - is-unicode-supported@2.0.0: - resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==} - engines: {node: '>=18'} - is-wsl@3.1.0: resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} engines: {node: '>=16'} @@ -1852,10 +1899,6 @@ packages: jsonc-parser@3.3.1: resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==} - kind-of@6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} - kleur@3.0.3: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} @@ -1911,10 +1954,6 @@ packages: lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - log-symbols@6.0.0: - resolution: {integrity: sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==} - engines: {node: '>=18'} - longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -1964,11 +2003,11 @@ packages: mdast-util-gfm@3.0.0: resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} - mdast-util-mdx-expression@2.0.0: - resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==} + mdast-util-mdx-expression@2.0.1: + resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==} - mdast-util-mdx-jsx@3.1.2: - resolution: {integrity: sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==} + mdast-util-mdx-jsx@3.1.3: + resolution: {integrity: sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==} mdast-util-mdx@3.0.0: resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==} @@ -2028,8 +2067,8 @@ packages: micromark-extension-mdx-expression@3.0.0: resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==} - micromark-extension-mdx-jsx@3.0.0: - resolution: {integrity: sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==} + micromark-extension-mdx-jsx@3.0.1: + resolution: {integrity: sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==} micromark-extension-mdx-md@2.0.0: resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==} @@ -2046,8 +2085,8 @@ packages: micromark-factory-label@2.0.0: resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} - micromark-factory-mdx-expression@2.0.1: - resolution: {integrity: sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==} + micromark-factory-mdx-expression@2.0.2: + resolution: {integrity: sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==} micromark-factory-space@2.0.0: resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} @@ -2106,10 +2145,6 @@ packages: micromark@4.0.0: resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} - micromatch@4.0.7: - resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} - engines: {node: '>=8.6'} - micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -2122,10 +2157,6 @@ packages: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} - mimic-function@5.0.1: - resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} - engines: {node: '>=18'} - mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} @@ -2234,17 +2265,9 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - onetime@7.0.0: - resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} - engines: {node: '>=18'} - oniguruma-to-js@0.4.3: resolution: {integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==} - ora@8.1.0: - resolution: {integrity: sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==} - engines: {node: '>=18'} - p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} @@ -2269,8 +2292,8 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} - package-json-from-dist@1.0.0: - resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} package-manager-detector@0.1.2: resolution: {integrity: sha512-iePyefLTOm2gEzbaZKSW+eBMjg+UYsQvUKxmvGXAQ987K16efBg10MxIjZs08iyX+DY2/owKY9DIdu193kX33w==} @@ -2318,9 +2341,6 @@ packages: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} - path-to-regexp@6.2.2: - resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==} - pathe@1.1.2: resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} @@ -2579,8 +2599,8 @@ packages: resolution: {integrity: sha512-RiBETaaP9veVstE4vUwSIcdATj6dKmXljouXc/DDNwBSPTp8FRkLGDSGFClKsAFeeg+13SB0Z1JZvbD76bigJw==} engines: {node: ^14.15.0 || >=16.0.0} - prettier-plugin-tailwindcss@0.6.6: - resolution: {integrity: sha512-OPva5S7WAsPLEsOuOWXATi13QrCKACCiIonFgIR6V4lYv4QLp++UXVhZSzRbZxXGimkQtQT86CC6fQqTOybGng==} + prettier-plugin-tailwindcss@0.6.8: + resolution: {integrity: sha512-dGu3kdm7SXPkiW4nzeWKCl3uoImdd5CTZEJGxyypEPL37Wj0HT2pLqjrvSei1nTeuQfO4PUfjeW5cTUNRLZ4sA==} engines: {node: '>=14.21.3'} peerDependencies: '@ianvs/prettier-plugin-sort-imports': '*' @@ -2682,11 +2702,15 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} + readdirp@4.0.2: + resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} + engines: {node: '>= 14.16.0'} + reading-time@1.5.0: resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} - regex@4.3.2: - resolution: {integrity: sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw==} + regex@4.3.3: + resolution: {integrity: sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==} rehype-expressive-code@0.37.0: resolution: {integrity: sha512-5dUjqNkhw0gB1pkkjc11jWdvQFGMYcrzCrUGx7p8TiHc5IwbrzBWXXADNEP2KrtAlUIy5yRmkkgGD5az1owq3Q==} @@ -2694,17 +2718,17 @@ packages: rehype-external-links@3.0.0: resolution: {integrity: sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==} - rehype-parse@9.0.0: - resolution: {integrity: sha512-WG7nfvmWWkCR++KEkZevZb/uw41E8TsH4DsY9UxsTbIXCVGbAs4S+r8FrQ+OtH5EEQAs+5UxKC42VinkmpA1Yw==} + rehype-parse@9.0.1: + resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==} rehype-raw@7.0.0: resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} - rehype-stringify@10.0.0: - resolution: {integrity: sha512-1TX1i048LooI9QoecrXy7nGFFbFSufxVRAfc6Y9YMRAi56l+oB0zP51mLSV312uRuvVLPV1opSlJmslozR1XHQ==} + rehype-stringify@10.0.1: + resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==} - rehype@13.0.1: - resolution: {integrity: sha512-AcSLS2mItY+0fYu9xKxOu1LhUZeBZZBx8//5HKzF+0XP+eP8+6a5MXn2+DW2kfXR6Dtp1FEXMVrjyKAcvcU8vg==} + rehype@13.0.2: + resolution: {integrity: sha512-j31mdaRFrwFRUIlxGeuPXXKWQxet52RBQRvCmzl5eCefn/KGbomK5GMHNMsOJf55fgo3qw5tST5neDuarDYR2A==} remark-directive@3.0.0: resolution: {integrity: sha512-l1UyWJ6Eg1VPU7Hm/9tt0zKtReJQNOA4+iDMAxTyZNWnJnFlbS/7zhiel/rogTLQ2vMYwDzSJa4BiVNqGlqIMA==} @@ -2718,8 +2742,8 @@ packages: remark-parse@11.0.0: resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} - remark-rehype@11.1.0: - resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==} + remark-rehype@11.1.1: + resolution: {integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==} remark-smartypants@3.0.2: resolution: {integrity: sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==} @@ -2749,15 +2773,11 @@ packages: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true - restore-cursor@5.1.0: - resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} - engines: {node: '>=18'} - retext-latin@4.0.0: resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==} - retext-smartypants@6.1.0: - resolution: {integrity: sha512-LDPXg95346bqFZnDMHo0S7Rq5p64+B+N8Vz733+wPMDtwb9rCOs9LIdIEhrUOU+TAywX9St+ocQWJt8wrzivcQ==} + retext-smartypants@6.1.1: + resolution: {integrity: sha512-onsHf34i/GzgElJgtT1K2V+31yEhWs7NJboKNxXJcmVMMPxLpgxZ9iADoMdydd6j/bHic5F/aNq0CGqElEtu2g==} retext-stringify@4.0.0: resolution: {integrity: sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==} @@ -2769,13 +2789,8 @@ packages: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.21.0: - resolution: {integrity: sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - - rollup@4.22.4: - resolution: {integrity: sha512-vD8HJ5raRcWOyymsR6Z3o6+RzfEPCnVLMFJ6vRslO1jt4LO6dUo5Qnpg7y4RkZFM2DMe3WUirkI5c16onjrc6A==} + rollup@4.24.0: + resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2797,17 +2812,13 @@ packages: satori-html@0.3.2: resolution: {integrity: sha512-wjTh14iqADFKDK80e51/98MplTGfxz2RmIzh0GqShlf4a67+BooLywF17TvJPD6phO0Hxm7Mf1N5LtRYvdkYRA==} - satori@0.10.14: - resolution: {integrity: sha512-abovcqmwl97WKioxpkfuMeZmndB1TuDFY/R+FymrZyiGP+pMYomvgSzVPnbNMWHHESOPosVHGL352oFbdAnJcA==} + satori@0.11.2: + resolution: {integrity: sha512-uEPLbx89BfwzJroECvnTg8IQ+XxqkMl0apvB41mm8fmc6brzHA8bu9Etu43UoUF4ECnACPiDDFz6PfYDG0S46Q==} engines: {node: '>=16'} sax@1.4.1: resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} - section-matter@1.0.0: - resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} - engines: {node: '>=4'} - semver@7.6.3: resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} engines: {node: '>=10'} @@ -2829,8 +2840,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@1.18.0: - resolution: {integrity: sha512-8jo7tOXr96h9PBQmOHVrltnETn1honZZY76YA79MHheGQg55jBvbm9dtU+MI5pjC5NJCFuA6rvVTLVeSW5cE4A==} + shiki@1.22.0: + resolution: {integrity: sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==} signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} @@ -2848,15 +2859,11 @@ packages: sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} - sitemap@7.1.2: - resolution: {integrity: sha512-ARCqzHJ0p4gWt+j7NlU5eDlIO9+Rkr/JhPFZKKQ1l5GCus7rJH4UdrlVAh0xC/gDS/Qir2UMxqYNHtsKr2rpCw==} - engines: {node: '>=12.0.0', npm: '>=5.6.0'} + sitemap@8.0.0: + resolution: {integrity: sha512-+AbdxhM9kJsHtruUF39bwS/B0Fytw6Fr1o4ZAIAEqA6cke2xcoO2GleBw9Zw7nRzILVEgz7zBM5GiTJjie1G9A==} + engines: {node: '>=14.0.0', npm: '>=6.0.0'} hasBin: true - source-map-js@1.2.0: - resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} - engines: {node: '>=0.10.0'} - source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -2871,10 +2878,6 @@ packages: sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} - stdin-discarder@0.2.2: - resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==} - engines: {node: '>=18'} - stream-replace-string@2.0.0: resolution: {integrity: sha512-TlnjJ1C0QrmxRNrON00JvaFFlNh5TTG00APw23j74ET7gkQpTASi6/L2fuiav8pzK715HXtUeClpBTw2NPSn6w==} @@ -2910,10 +2913,6 @@ packages: resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} engines: {node: '>=12'} - strip-bom-string@1.0.0: - resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} - engines: {node: '>=0.10.0'} - strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} @@ -2928,8 +2927,8 @@ packages: style-to-object@0.4.4: resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==} - style-to-object@1.0.6: - resolution: {integrity: sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==} + style-to-object@1.0.8: + resolution: {integrity: sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==} stylehacks@7.0.4: resolution: {integrity: sha512-i4zfNrGMt9SB4xRK9L83rlsFCgdGANfeDAYacO1pkqcE7cRHPdWHwnKZVz7WY17Veq/FvyYsRAU++Ga+qDFIww==} @@ -3028,9 +3027,9 @@ packages: tunnel-agent@0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} + type-fest@4.26.1: + resolution: {integrity: sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==} + engines: {node: '>=16'} typesafe-path@0.2.2: resolution: {integrity: sha512-OJabfkAg1WLZSqJAJ0Z6Sdt3utnbzr/jh+NAHoyWHJe8CMSy79Gm085094M9nvTPy22KzTVn5Zq5mbapCI/hPA==} @@ -3098,6 +3097,12 @@ packages: peerDependencies: browserslist: '>= 4.21.0' + update-browserslist-db@1.1.1: + resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -3117,8 +3122,8 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite@5.4.7: - resolution: {integrity: sha512-5l2zxqMEPVENgvzTuBpHer2awaetimj2BGkhBPdnwKbPNOlHsODU+oiazEZzLK7KhAnOrO+XGYJYn4ZlUhDtDQ==} + vite@6.0.0-beta.2: + resolution: {integrity: sha512-TdrjEhCnVNjT3kjohFhVJQL9V3SguxMAphP2RW085QbE0Xc+lRvql9l5hTIr/mttO2jhivYXEP4xfaIRPjzqiw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -3215,11 +3220,11 @@ packages: '@volar/language-service': optional: true - vscode-css-languageservice@6.3.0: - resolution: {integrity: sha512-nU92imtkgzpCL0xikrIb8WvedV553F2BENzgz23wFuok/HLN5BeQmroMy26pUwFxV2eV8oNRmYCUv8iO7kSMhw==} + vscode-css-languageservice@6.3.1: + resolution: {integrity: sha512-1BzTBuJfwMc3A0uX4JBdJgoxp74cjj4q2mDJdp49yD/GuAq4X0k5WtK6fNcMYr+FfJ9nqgR6lpfCSZDkARJ5qQ==} - vscode-html-languageservice@5.3.0: - resolution: {integrity: sha512-C4Z3KsP5Ih+fjHpiBc5jxmvCl+4iEwvXegIrzu2F5pktbWvQaBT3YkVPk8N+QlSSMk8oCG6PKtZ/Sq2YHb5e8g==} + vscode-html-languageservice@5.3.1: + resolution: {integrity: sha512-ysUh4hFeW/WOWz/TO9gm08xigiSsV/FOAZ+DolgJfeLftna54YdmZ4A+lIn46RbdO3/Qv5QHTn1ZGqmrXQhZyA==} vscode-json-languageservice@4.1.8: resolution: {integrity: sha512-0vSpg6Xd9hfV+eZAaYN63xVVMOTmJ4GgHxXnkLCh+9RsQBkWKIghzLhW2B9ebfG+LQQg8uLtsQ2aUKjTgE+QOg==} @@ -3289,9 +3294,9 @@ packages: engines: {node: '>= 8'} hasBin: true - widest-line@4.0.1: - resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} - engines: {node: '>=12'} + widest-line@5.0.0: + resolution: {integrity: sha512-c9bZp7b5YtRj2wOe6dlj32MK+Bx/M/d+9VB2SHM1OtsUHR0aV0tdP6DWh/iMt0kWi1t5g1Iudu6hQRNd1A4PVA==} + engines: {node: '>=18'} wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} @@ -3301,6 +3306,10 @@ packages: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} + wrap-ansi@9.0.0: + resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} + engines: {node: '>=18'} + wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -3322,8 +3331,8 @@ packages: resolution: {integrity: sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==} engines: {node: '>= 14'} - yaml@2.5.0: - resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==} + yaml@2.5.1: + resolution: {integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==} engines: {node: '>= 14'} hasBin: true @@ -3342,11 +3351,19 @@ packages: resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} engines: {node: '>=12.20'} + yocto-spinner@0.1.0: + resolution: {integrity: sha512-sBra0N4uhNn5UibnOz/HJxB1a0tzZ5zXbqnDe+tfRR3BGy+BmOrzrnQCZRJI7C++JiSZaPygPeNon4QCUmMQ4g==} + engines: {node: '>=18.19'} + + yoctocolors@2.1.1: + resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==} + engines: {node: '>=18'} + yoga-wasm-web@0.3.3: resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} - zod-to-json-schema@3.23.2: - resolution: {integrity: sha512-uSt90Gzc/tUfyNqxnjlfBs8W6WSGpNBv0rVsNxP/BVSMHMKGdthPYff4xtCHYloJGM0CFxFsb3NbC0eqPhfImw==} + zod-to-json-schema@3.23.3: + resolution: {integrity: sha512-TYWChTxKQbRJp5ST22o/Irt9KC5nj7CdBKYB/AosCRdj/wxEMvv4NNaj9XVUHDOIp53ZxArGhnw5HMZziPFjog==} peerDependencies: zod: ^3.23.3 @@ -3373,11 +3390,10 @@ snapshots: '@antfu/utils@0.7.10': {} - '@astrojs/check@0.9.3(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2)': + '@astrojs/check@0.9.4(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2)': dependencies: - '@astrojs/language-server': 2.14.1(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2) - chokidar: 3.6.0 - fast-glob: 3.3.2 + '@astrojs/language-server': 2.15.0(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2) + chokidar: 4.0.1 kleur: 4.1.5 typescript: 5.6.2 yargs: 17.7.2 @@ -3391,26 +3407,25 @@ snapshots: '@astrojs/internal-helpers@0.4.1': {} - '@astrojs/language-server@2.14.1(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2)': + '@astrojs/language-server@2.15.0(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2)': dependencies: '@astrojs/compiler': 2.10.3 '@astrojs/yaml2ts': 0.2.1 '@jridgewell/sourcemap-codec': 1.5.0 - '@volar/kit': 2.4.0(typescript@5.6.2) - '@volar/language-core': 2.4.0 - '@volar/language-server': 2.4.0 - '@volar/language-service': 2.4.0 - '@volar/typescript': 2.4.0 + '@volar/kit': 2.4.6(typescript@5.6.2) + '@volar/language-core': 2.4.6 + '@volar/language-server': 2.4.6 + '@volar/language-service': 2.4.6 fast-glob: 3.3.2 muggle-string: 0.4.1 - volar-service-css: 0.0.61(@volar/language-service@2.4.0) - volar-service-emmet: 0.0.61(@volar/language-service@2.4.0) - volar-service-html: 0.0.61(@volar/language-service@2.4.0) - volar-service-prettier: 0.0.61(@volar/language-service@2.4.0)(prettier@3.3.3) - volar-service-typescript: 0.0.61(@volar/language-service@2.4.0) - volar-service-typescript-twoslash-queries: 0.0.61(@volar/language-service@2.4.0) - volar-service-yaml: 0.0.61(@volar/language-service@2.4.0) - vscode-html-languageservice: 5.3.0 + volar-service-css: 0.0.61(@volar/language-service@2.4.6) + volar-service-emmet: 0.0.61(@volar/language-service@2.4.6) + volar-service-html: 0.0.61(@volar/language-service@2.4.6) + volar-service-prettier: 0.0.61(@volar/language-service@2.4.6)(prettier@3.3.3) + volar-service-typescript: 0.0.61(@volar/language-service@2.4.6) + volar-service-typescript-twoslash-queries: 0.0.61(@volar/language-service@2.4.6) + volar-service-yaml: 0.0.61(@volar/language-service@2.4.6) + vscode-html-languageservice: 5.3.1 vscode-uri: 3.0.8 optionalDependencies: prettier: 3.3.3 @@ -3418,21 +3433,22 @@ snapshots: transitivePeerDependencies: - typescript - '@astrojs/markdown-remark@6.0.0-beta.1': + '@astrojs/markdown-remark@6.0.0-beta.2': dependencies: '@astrojs/prism': 3.1.0 github-slugger: 2.0.0 hast-util-from-html: 2.0.3 hast-util-to-text: 4.0.2 import-meta-resolve: 4.1.0 + js-yaml: 4.1.0 mdast-util-definitions: 6.0.0 rehype-raw: 7.0.0 - rehype-stringify: 10.0.0 + rehype-stringify: 10.0.1 remark-gfm: 4.0.0 remark-parse: 11.0.0 - remark-rehype: 11.1.0 + remark-rehype: 11.1.1 remark-smartypants: 3.0.2 - shiki: 1.18.0 + shiki: 1.22.0 unified: 11.0.5 unist-util-remove-position: 5.0.0 unist-util-visit: 5.0.0 @@ -3441,15 +3457,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/mdx@4.0.0-beta.1(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2))': + '@astrojs/mdx@4.0.0-beta.2(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))': dependencies: - '@astrojs/markdown-remark': 6.0.0-beta.1 + '@astrojs/markdown-remark': 6.0.0-beta.2 '@mdx-js/mdx': 3.0.1 acorn: 8.12.1 - astro: 5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2) + astro: 5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) es-module-lexer: 1.5.4 estree-util-visit: 2.0.0 - gray-matter: 4.0.3 hast-util-to-html: 9.0.3 kleur: 4.1.5 rehype-raw: 7.0.0 @@ -3465,20 +3480,20 @@ snapshots: dependencies: prismjs: 1.29.0 - '@astrojs/rss@4.0.7': + '@astrojs/rss@4.0.8': dependencies: - fast-xml-parser: 4.4.0 + fast-xml-parser: 4.5.0 kleur: 4.1.5 - '@astrojs/sitemap@3.1.6': + '@astrojs/sitemap@3.2.0': dependencies: - sitemap: 7.1.2 + sitemap: 8.0.0 stream-replace-string: 2.0.0 zod: 3.23.8 - '@astrojs/tailwind@5.1.1(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2))(tailwindcss@3.4.13)': + '@astrojs/tailwind@5.1.2(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))(tailwindcss@3.4.13)': dependencies: - astro: 5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2) + astro: 5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) autoprefixer: 10.4.20(postcss@8.4.47) postcss: 8.4.47 postcss-load-config: 4.0.2(postcss@8.4.47) @@ -3491,7 +3506,7 @@ snapshots: ci-info: 4.0.0 debug: 4.3.7 dlv: 1.1.3 - dset: 3.1.3 + dset: 3.1.4 is-docker: 3.0.0 is-wsl: 3.1.0 which-pm-runs: 1.1.0 @@ -3500,55 +3515,55 @@ snapshots: '@astrojs/yaml2ts@0.2.1': dependencies: - yaml: 2.5.0 + yaml: 2.5.1 - '@babel/helper-string-parser@7.24.8': {} + '@babel/helper-string-parser@7.25.7': {} - '@babel/helper-validator-identifier@7.24.7': {} + '@babel/helper-validator-identifier@7.25.7': {} - '@babel/parser@7.25.6': + '@babel/parser@7.25.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.25.7 - '@babel/types@7.25.6': + '@babel/types@7.25.7': dependencies: - '@babel/helper-string-parser': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 + '@babel/helper-string-parser': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 to-fast-properties: 2.0.0 - '@biomejs/biome@1.9.2': + '@biomejs/biome@1.9.3': optionalDependencies: - '@biomejs/cli-darwin-arm64': 1.9.2 - '@biomejs/cli-darwin-x64': 1.9.2 - '@biomejs/cli-linux-arm64': 1.9.2 - '@biomejs/cli-linux-arm64-musl': 1.9.2 - '@biomejs/cli-linux-x64': 1.9.2 - '@biomejs/cli-linux-x64-musl': 1.9.2 - '@biomejs/cli-win32-arm64': 1.9.2 - '@biomejs/cli-win32-x64': 1.9.2 - - '@biomejs/cli-darwin-arm64@1.9.2': + '@biomejs/cli-darwin-arm64': 1.9.3 + '@biomejs/cli-darwin-x64': 1.9.3 + '@biomejs/cli-linux-arm64': 1.9.3 + '@biomejs/cli-linux-arm64-musl': 1.9.3 + '@biomejs/cli-linux-x64': 1.9.3 + '@biomejs/cli-linux-x64-musl': 1.9.3 + '@biomejs/cli-win32-arm64': 1.9.3 + '@biomejs/cli-win32-x64': 1.9.3 + + '@biomejs/cli-darwin-arm64@1.9.3': optional: true - '@biomejs/cli-darwin-x64@1.9.2': + '@biomejs/cli-darwin-x64@1.9.3': optional: true - '@biomejs/cli-linux-arm64-musl@1.9.2': + '@biomejs/cli-linux-arm64-musl@1.9.3': optional: true - '@biomejs/cli-linux-arm64@1.9.2': + '@biomejs/cli-linux-arm64@1.9.3': optional: true - '@biomejs/cli-linux-x64-musl@1.9.2': + '@biomejs/cli-linux-x64-musl@1.9.3': optional: true - '@biomejs/cli-linux-x64@1.9.2': + '@biomejs/cli-linux-x64@1.9.3': optional: true - '@biomejs/cli-win32-arm64@1.9.2': + '@biomejs/cli-win32-arm64@1.9.3': optional: true - '@biomejs/cli-win32-x64@1.9.2': + '@biomejs/cli-win32-x64@1.9.3': optional: true '@ctrl/tinycolor@4.1.0': {} @@ -3584,72 +3599,144 @@ snapshots: '@esbuild/aix-ppc64@0.21.5': optional: true + '@esbuild/aix-ppc64@0.24.0': + optional: true + '@esbuild/android-arm64@0.21.5': optional: true + '@esbuild/android-arm64@0.24.0': + optional: true + '@esbuild/android-arm@0.21.5': optional: true + '@esbuild/android-arm@0.24.0': + optional: true + '@esbuild/android-x64@0.21.5': optional: true + '@esbuild/android-x64@0.24.0': + optional: true + '@esbuild/darwin-arm64@0.21.5': optional: true + '@esbuild/darwin-arm64@0.24.0': + optional: true + '@esbuild/darwin-x64@0.21.5': optional: true + '@esbuild/darwin-x64@0.24.0': + optional: true + '@esbuild/freebsd-arm64@0.21.5': optional: true + '@esbuild/freebsd-arm64@0.24.0': + optional: true + '@esbuild/freebsd-x64@0.21.5': optional: true + '@esbuild/freebsd-x64@0.24.0': + optional: true + '@esbuild/linux-arm64@0.21.5': optional: true + '@esbuild/linux-arm64@0.24.0': + optional: true + '@esbuild/linux-arm@0.21.5': optional: true + '@esbuild/linux-arm@0.24.0': + optional: true + '@esbuild/linux-ia32@0.21.5': optional: true + '@esbuild/linux-ia32@0.24.0': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true + '@esbuild/linux-loong64@0.24.0': + optional: true + '@esbuild/linux-mips64el@0.21.5': optional: true + '@esbuild/linux-mips64el@0.24.0': + optional: true + '@esbuild/linux-ppc64@0.21.5': optional: true + '@esbuild/linux-ppc64@0.24.0': + optional: true + '@esbuild/linux-riscv64@0.21.5': optional: true + '@esbuild/linux-riscv64@0.24.0': + optional: true + '@esbuild/linux-s390x@0.21.5': optional: true + '@esbuild/linux-s390x@0.24.0': + optional: true + '@esbuild/linux-x64@0.21.5': optional: true + '@esbuild/linux-x64@0.24.0': + optional: true + '@esbuild/netbsd-x64@0.21.5': optional: true + '@esbuild/netbsd-x64@0.24.0': + optional: true + + '@esbuild/openbsd-arm64@0.24.0': + optional: true + '@esbuild/openbsd-x64@0.21.5': optional: true + '@esbuild/openbsd-x64@0.24.0': + optional: true + '@esbuild/sunos-x64@0.21.5': optional: true + '@esbuild/sunos-x64@0.24.0': + optional: true + '@esbuild/win32-arm64@0.21.5': optional: true + '@esbuild/win32-arm64@0.24.0': + optional: true + '@esbuild/win32-ia32@0.21.5': optional: true + '@esbuild/win32-ia32@0.24.0': + optional: true + '@esbuild/win32-x64@0.21.5': optional: true + '@esbuild/win32-x64@0.24.0': + optional: true + '@expressive-code/core@0.37.0': dependencies: '@ctrl/tinycolor': 4.1.0 @@ -3669,7 +3756,7 @@ snapshots: '@expressive-code/plugin-shiki@0.37.0': dependencies: '@expressive-code/core': 0.37.0 - shiki: 1.18.0 + shiki: 1.22.0 '@expressive-code/plugin-text-markers@0.37.0': dependencies: @@ -3813,7 +3900,7 @@ snapshots: '@mdx-js/mdx@3.0.1': dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.4 '@types/mdx': 2.0.13 @@ -3829,7 +3916,7 @@ snapshots: periscopic: 3.1.0 remark-mdx: 3.0.1 remark-parse: 11.0.0 - remark-rehype: 11.1.0 + remark-rehype: 11.1.1 source-map: 0.7.4 unified: 11.0.5 unist-util-position-from-estree: 2.0.0 @@ -3851,7 +3938,7 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - '@oslojs/encoding@0.4.1': {} + '@oslojs/encoding@1.1.0': {} '@pagefind/darwin-arm64@1.1.1': optional: true @@ -3924,146 +4011,94 @@ snapshots: '@resvg/resvg-js-win32-ia32-msvc': 2.6.2 '@resvg/resvg-js-win32-x64-msvc': 2.6.2 - '@rollup/pluginutils@5.1.0(rollup@4.22.4)': + '@rollup/pluginutils@5.1.2(rollup@4.24.0)': dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 estree-walker: 2.0.2 picomatch: 2.3.1 optionalDependencies: - rollup: 4.22.4 - - '@rollup/rollup-android-arm-eabi@4.21.0': - optional: true - - '@rollup/rollup-android-arm-eabi@4.22.4': - optional: true - - '@rollup/rollup-android-arm64@4.21.0': - optional: true - - '@rollup/rollup-android-arm64@4.22.4': - optional: true - - '@rollup/rollup-darwin-arm64@4.21.0': - optional: true + rollup: 4.24.0 - '@rollup/rollup-darwin-arm64@4.22.4': + '@rollup/rollup-android-arm-eabi@4.24.0': optional: true - '@rollup/rollup-darwin-x64@4.21.0': + '@rollup/rollup-android-arm64@4.24.0': optional: true - '@rollup/rollup-darwin-x64@4.22.4': + '@rollup/rollup-darwin-arm64@4.24.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.21.0': + '@rollup/rollup-darwin-x64@4.24.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.22.4': + '@rollup/rollup-linux-arm-gnueabihf@4.24.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.21.0': + '@rollup/rollup-linux-arm-musleabihf@4.24.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.22.4': + '@rollup/rollup-linux-arm64-gnu@4.24.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.21.0': + '@rollup/rollup-linux-arm64-musl@4.24.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.22.4': + '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.21.0': + '@rollup/rollup-linux-riscv64-gnu@4.24.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.22.4': + '@rollup/rollup-linux-s390x-gnu@4.24.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': + '@rollup/rollup-linux-x64-gnu@4.24.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.22.4': + '@rollup/rollup-linux-x64-musl@4.24.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.21.0': + '@rollup/rollup-win32-arm64-msvc@4.24.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.22.4': + '@rollup/rollup-win32-ia32-msvc@4.24.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.21.0': + '@rollup/rollup-win32-x64-msvc@4.24.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.22.4': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.21.0': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.22.4': - optional: true - - '@rollup/rollup-linux-x64-musl@4.21.0': - optional: true - - '@rollup/rollup-linux-x64-musl@4.22.4': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.21.0': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.22.4': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.21.0': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.22.4': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.21.0': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.22.4': - optional: true - - '@shikijs/core@1.18.0': + '@shikijs/core@1.22.0': dependencies: - '@shikijs/engine-javascript': 1.18.0 - '@shikijs/engine-oniguruma': 1.18.0 - '@shikijs/types': 1.18.0 - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/engine-javascript': 1.22.0 + '@shikijs/engine-oniguruma': 1.22.0 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 hast-util-to-html: 9.0.3 - '@shikijs/engine-javascript@1.18.0': + '@shikijs/engine-javascript@1.22.0': dependencies: - '@shikijs/types': 1.18.0 - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 oniguruma-to-js: 0.4.3 - '@shikijs/engine-oniguruma@1.18.0': + '@shikijs/engine-oniguruma@1.22.0': dependencies: - '@shikijs/types': 1.18.0 - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 - '@shikijs/types@1.18.0': + '@shikijs/types@1.22.0': dependencies: - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 - '@shikijs/vscode-textmate@9.2.2': {} + '@shikijs/vscode-textmate@9.3.0': {} '@shuding/opentype.js@1.4.0-beta.0': dependencies: fflate: 0.7.4 string.prototype.codepointat: 0.2.1 - '@tailwindcss/aspect-ratio@0.4.2(tailwindcss@3.4.13)': - dependencies: - tailwindcss: 3.4.13 - '@tailwindcss/typography@0.5.15(tailwindcss@3.4.13)': dependencies: lodash.castarray: 4.4.0 @@ -4076,7 +4111,7 @@ snapshots: '@types/acorn@4.0.6': dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/cookie@0.6.0': {} @@ -4086,9 +4121,9 @@ snapshots: '@types/estree-jsx@1.0.5': dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 - '@types/estree@1.0.5': {} + '@types/estree@1.0.6': {} '@types/hast@3.0.4': dependencies: @@ -4112,14 +4147,13 @@ snapshots: dependencies: undici-types: 6.19.8 - '@types/node@22.6.1': + '@types/node@22.7.5': dependencies: undici-types: 6.19.8 - optional: true '@types/sax@1.2.7': dependencies: - '@types/node': 22.4.2 + '@types/node': 22.7.5 '@types/tar@6.1.13': dependencies: @@ -4132,29 +4166,29 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 22.4.2 + '@types/node': 22.7.5 optional: true '@ungap/structured-clone@1.2.0': {} - '@volar/kit@2.4.0(typescript@5.6.2)': + '@volar/kit@2.4.6(typescript@5.6.2)': dependencies: - '@volar/language-service': 2.4.0 - '@volar/typescript': 2.4.0 + '@volar/language-service': 2.4.6 + '@volar/typescript': 2.4.6 typesafe-path: 0.2.2 typescript: 5.6.2 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 - '@volar/language-core@2.4.0': + '@volar/language-core@2.4.6': dependencies: - '@volar/source-map': 2.4.0 + '@volar/source-map': 2.4.6 - '@volar/language-server@2.4.0': + '@volar/language-server@2.4.6': dependencies: - '@volar/language-core': 2.4.0 - '@volar/language-service': 2.4.0 - '@volar/typescript': 2.4.0 + '@volar/language-core': 2.4.6 + '@volar/language-service': 2.4.6 + '@volar/typescript': 2.4.6 path-browserify: 1.0.1 request-light: 0.7.0 vscode-languageserver: 9.0.1 @@ -4162,24 +4196,24 @@ snapshots: vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 - '@volar/language-service@2.4.0': + '@volar/language-service@2.4.6': dependencies: - '@volar/language-core': 2.4.0 + '@volar/language-core': 2.4.6 vscode-languageserver-protocol: 3.17.5 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 - '@volar/source-map@2.4.0': {} + '@volar/source-map@2.4.6': {} - '@volar/typescript@2.4.0': + '@volar/typescript@2.4.6': dependencies: - '@volar/language-core': 2.4.0 + '@volar/language-core': 2.4.6 path-browserify: 1.0.1 vscode-uri: 3.0.8 '@vscode/emmet-helper@2.9.3': dependencies: - emmet: 2.4.7 + emmet: 2.4.11 jsonc-parser: 2.3.1 vscode-languageserver-textdocument: 1.0.12 vscode-languageserver-types: 3.17.5 @@ -4196,7 +4230,7 @@ snapshots: ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.0.1 + fast-uri: 3.0.2 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 @@ -4206,7 +4240,7 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.0.1: {} + ansi-regex@6.1.0: {} ansi-styles@4.3.0: dependencies: @@ -4229,17 +4263,15 @@ snapshots: argparse@2.0.1: {} - aria-query@5.3.0: - dependencies: - dequal: 2.0.3 + aria-query@5.3.2: {} array-iterate@2.0.1: {} - astring@1.8.6: {} + astring@1.9.0: {} - astro-expressive-code@0.37.0(astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2)): + astro-expressive-code@0.37.0(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)): dependencies: - astro: 5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2) + astro: 5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) rehype-expressive-code: 0.37.0 astro-icon@1.1.1: @@ -4262,31 +4294,31 @@ snapshots: valid-filename: 4.0.0 zod: 3.23.8 - astro@5.0.0-beta.1(@types/node@22.6.1)(rollup@4.22.4)(typescript@5.6.2): + astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2): dependencies: '@astrojs/compiler': 2.10.3 '@astrojs/internal-helpers': 0.4.1 - '@astrojs/markdown-remark': 6.0.0-beta.1 + '@astrojs/markdown-remark': 6.0.0-beta.2 '@astrojs/telemetry': 3.1.0 - '@babel/types': 7.25.6 - '@oslojs/encoding': 0.4.1 - '@rollup/pluginutils': 5.1.0(rollup@4.22.4) + '@babel/types': 7.25.7 + '@oslojs/encoding': 1.1.0 + '@rollup/pluginutils': 5.1.2(rollup@4.24.0) '@types/cookie': 0.6.0 acorn: 8.12.1 - aria-query: 5.3.0 + aria-query: 5.3.2 axobject-query: 4.1.0 - boxen: 7.1.1 + boxen: 8.0.1 ci-info: 4.0.0 clsx: 2.1.1 common-ancestor-path: 1.0.1 - cookie: 0.6.0 + cookie: 0.7.2 cssesc: 3.0.0 debug: 4.3.7 deterministic-object-hash: 2.0.2 - devalue: 5.0.0 + devalue: 5.1.1 diff: 5.2.0 dlv: 1.1.3 - dset: 3.1.3 + dset: 3.1.4 es-module-lexer: 1.5.4 esbuild: 0.21.5 estree-walker: 3.0.3 @@ -4294,7 +4326,6 @@ snapshots: fastq: 1.17.1 flattie: 1.1.1 github-slugger: 2.0.0 - gray-matter: 4.0.3 html-escaper: 3.0.3 http-cache-semantics: 4.1.1 js-yaml: 4.1.0 @@ -4304,28 +4335,26 @@ snapshots: micromatch: 4.0.8 mrmime: 2.0.0 neotraverse: 0.6.18 - ora: 8.1.0 p-limit: 6.1.0 p-queue: 8.0.1 - path-to-regexp: 6.2.2 preferred-pm: 4.0.0 prompts: 2.4.2 - rehype: 13.0.1 + rehype: 13.0.2 semver: 7.6.3 - shiki: 1.18.0 + shiki: 1.22.0 string-width: 7.2.0 - strip-ansi: 7.1.0 tinyexec: 0.3.0 tsconfck: 3.1.3(typescript@5.6.2) unist-util-visit: 5.0.0 vfile: 6.0.3 - vite: 5.4.7(@types/node@22.6.1) - vitefu: 1.0.2(vite@5.4.7(@types/node@22.6.1)) + vite: 6.0.0-beta.2(@types/node@22.7.5) + vitefu: 1.0.2(vite@6.0.0-beta.2(@types/node@22.7.5)) which-pm: 3.0.0 xxhash-wasm: 1.0.2 yargs-parser: 21.1.1 + yocto-spinner: 0.1.0 zod: 3.23.8 - zod-to-json-schema: 3.23.2(zod@3.23.8) + zod-to-json-schema: 3.23.3(zod@3.23.8) zod-to-ts: 1.2.0(typescript@5.6.2)(zod@3.23.8) optionalDependencies: sharp: 0.33.5 @@ -4411,16 +4440,16 @@ snapshots: boolbase@1.0.0: {} - boxen@7.1.1: + boxen@8.0.1: dependencies: ansi-align: 3.0.1 - camelcase: 7.0.1 + camelcase: 8.0.0 chalk: 5.3.0 cli-boxes: 3.0.0 - string-width: 5.1.2 - type-fest: 2.19.0 - widest-line: 4.0.1 - wrap-ansi: 8.1.0 + string-width: 7.2.0 + type-fest: 4.26.1 + widest-line: 5.0.0 + wrap-ansi: 9.0.0 brace-expansion@2.0.1: dependencies: @@ -4437,6 +4466,13 @@ snapshots: node-releases: 2.0.18 update-browserslist-db: 1.1.0(browserslist@4.23.3) + browserslist@4.24.0: + dependencies: + caniuse-lite: 1.0.30001667 + electron-to-chromium: 1.5.33 + node-releases: 2.0.18 + update-browserslist-db: 1.1.1(browserslist@4.24.0) + buffer-crc32@0.2.13: {} buffer@5.7.1: @@ -4446,20 +4482,20 @@ snapshots: camelcase-css@2.0.1: {} - camelcase@7.0.1: {} + camelcase@8.0.0: {} camelize@1.0.1: {} caniuse-api@3.0.0: dependencies: - browserslist: 4.23.3 - caniuse-lite: 1.0.30001663 + browserslist: 4.24.0 + caniuse-lite: 1.0.30001667 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 caniuse-lite@1.0.30001651: {} - caniuse-lite@1.0.30001663: {} + caniuse-lite@1.0.30001667: {} ccount@2.0.1: {} @@ -4508,6 +4544,10 @@ snapshots: optionalDependencies: fsevents: 2.3.3 + chokidar@4.0.1: + dependencies: + readdirp: 4.0.2 + chownr@1.1.4: {} chownr@2.0.0: {} @@ -4516,12 +4556,6 @@ snapshots: cli-boxes@3.0.0: {} - cli-cursor@5.0.0: - dependencies: - restore-cursor: 5.1.0 - - cli-spinners@2.9.2: {} - cliui@8.0.1: dependencies: string-width: 4.2.3 @@ -4564,7 +4598,7 @@ snapshots: confbox@0.1.7: {} - cookie@0.6.0: {} + cookie@0.7.2: {} cross-spawn@7.0.3: dependencies: @@ -4582,6 +4616,8 @@ snapshots: dependencies: postcss: 8.4.47 + css-gradient-parser@0.0.16: {} + css-select@5.1.0: dependencies: boolbase: 1.0.0 @@ -4601,12 +4637,12 @@ snapshots: css-tree@2.2.1: dependencies: mdn-data: 2.0.28 - source-map-js: 1.2.0 + source-map-js: 1.2.1 css-tree@2.3.1: dependencies: mdn-data: 2.0.30 - source-map-js: 1.2.0 + source-map-js: 1.2.1 css-what@6.1.0: {} @@ -4614,7 +4650,7 @@ snapshots: cssnano-preset-default@7.0.6(postcss@8.4.47): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 css-declaration-sorter: 7.2.0(postcss@8.4.47) cssnano-utils: 5.0.0(postcss@8.4.47) postcss: 8.4.47 @@ -4688,7 +4724,7 @@ snapshots: dependencies: base-64: 1.0.0 - devalue@5.0.0: {} + devalue@5.1.1: {} devlop@1.1.0: dependencies: @@ -4720,18 +4756,20 @@ snapshots: domelementtype: 2.3.0 domhandler: 5.0.3 - dset@3.1.3: {} + dset@3.1.4: {} eastasianwidth@0.2.0: {} electron-to-chromium@1.5.13: {} - emmet@2.4.7: + electron-to-chromium@1.5.33: {} + + emmet@2.4.11: dependencies: '@emmetio/abbreviation': 2.3.3 '@emmetio/css-abbreviation': 2.1.8 - emoji-regex@10.3.0: {} + emoji-regex@10.4.0: {} emoji-regex@8.0.0: {} @@ -4776,8 +4814,37 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + esbuild@0.24.0: + optionalDependencies: + '@esbuild/aix-ppc64': 0.24.0 + '@esbuild/android-arm': 0.24.0 + '@esbuild/android-arm64': 0.24.0 + '@esbuild/android-x64': 0.24.0 + '@esbuild/darwin-arm64': 0.24.0 + '@esbuild/darwin-x64': 0.24.0 + '@esbuild/freebsd-arm64': 0.24.0 + '@esbuild/freebsd-x64': 0.24.0 + '@esbuild/linux-arm': 0.24.0 + '@esbuild/linux-arm64': 0.24.0 + '@esbuild/linux-ia32': 0.24.0 + '@esbuild/linux-loong64': 0.24.0 + '@esbuild/linux-mips64el': 0.24.0 + '@esbuild/linux-ppc64': 0.24.0 + '@esbuild/linux-riscv64': 0.24.0 + '@esbuild/linux-s390x': 0.24.0 + '@esbuild/linux-x64': 0.24.0 + '@esbuild/netbsd-x64': 0.24.0 + '@esbuild/openbsd-arm64': 0.24.0 + '@esbuild/openbsd-x64': 0.24.0 + '@esbuild/sunos-x64': 0.24.0 + '@esbuild/win32-arm64': 0.24.0 + '@esbuild/win32-ia32': 0.24.0 + '@esbuild/win32-x64': 0.24.0 + escalade@3.1.2: {} + escalade@3.2.0: {} + escape-html@1.0.3: {} escape-string-regexp@5.0.0: {} @@ -4786,7 +4853,7 @@ snapshots: estree-util-attach-comments@3.0.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 estree-util-build-jsx@3.0.1: dependencies: @@ -4800,7 +4867,7 @@ snapshots: estree-util-to-js@2.0.0: dependencies: '@types/estree-jsx': 1.0.5 - astring: 1.8.6 + astring: 1.9.0 source-map: 0.7.4 estree-util-visit@2.0.0: @@ -4812,7 +4879,7 @@ snapshots: estree-walker@3.0.3: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 eventemitter3@5.0.1: {} @@ -4825,10 +4892,6 @@ snapshots: '@expressive-code/plugin-shiki': 0.37.0 '@expressive-code/plugin-text-markers': 0.37.0 - extend-shallow@2.0.1: - dependencies: - is-extendable: 0.1.1 - extend@3.0.2: {} extract-zip@2.0.1: @@ -4851,11 +4914,11 @@ snapshots: '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.7 + micromatch: 4.0.8 - fast-uri@3.0.1: {} + fast-uri@3.0.2: {} - fast-xml-parser@4.4.0: + fast-xml-parser@4.5.0: dependencies: strnum: 1.0.5 @@ -4941,31 +5004,15 @@ snapshots: jackspeak: 3.4.3 minimatch: 9.0.5 minipass: 7.1.2 - package-json-from-dist: 1.0.0 + package-json-from-dist: 1.0.1 path-scurry: 1.11.1 graceful-fs@4.2.11: {} - gray-matter@4.0.3: - dependencies: - js-yaml: 3.14.1 - kind-of: 6.0.3 - section-matter: 1.0.0 - strip-bom-string: 1.0.0 - hasown@2.0.2: dependencies: function-bind: 1.1.2 - hast-util-from-html@2.0.1: - dependencies: - '@types/hast': 3.0.4 - devlop: 1.1.0 - hast-util-from-parse5: 8.0.1 - parse5: 7.1.2 - vfile: 6.0.3 - vfile-message: 4.0.2 - hast-util-from-html@2.0.3: dependencies: '@types/hast': 3.0.4 @@ -5024,7 +5071,7 @@ snapshots: devlop: 1.1.0 direction: 2.0.1 hast-util-has-property: 3.0.0 - hast-util-to-string: 3.0.0 + hast-util-to-string: 3.0.1 hast-util-whitespace: 3.0.0 not: 0.1.0 nth-check: 2.1.1 @@ -5035,7 +5082,7 @@ snapshots: hast-util-to-estree@3.1.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.4 comma-separated-tokens: 2.0.3 @@ -5043,8 +5090,8 @@ snapshots: estree-util-attach-comments: 3.0.0 estree-util-is-identifier-name: 3.0.0 hast-util-whitespace: 3.0.0 - mdast-util-mdx-expression: 2.0.0 - mdast-util-mdx-jsx: 3.1.2 + mdast-util-mdx-expression: 2.0.1 + mdast-util-mdx-jsx: 3.1.3 mdast-util-mdxjs-esm: 2.0.1 property-information: 6.5.0 space-separated-tokens: 2.0.2 @@ -5070,19 +5117,19 @@ snapshots: hast-util-to-jsx-runtime@2.3.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/hast': 3.0.4 '@types/unist': 3.0.3 comma-separated-tokens: 2.0.3 devlop: 1.1.0 estree-util-is-identifier-name: 3.0.0 hast-util-whitespace: 3.0.0 - mdast-util-mdx-expression: 2.0.0 - mdast-util-mdx-jsx: 3.1.2 + mdast-util-mdx-expression: 2.0.1 + mdast-util-mdx-jsx: 3.1.3 mdast-util-mdxjs-esm: 2.0.1 property-information: 6.5.0 space-separated-tokens: 2.0.2 - style-to-object: 1.0.6 + style-to-object: 1.0.8 unist-util-position: 5.0.0 vfile-message: 4.0.2 transitivePeerDependencies: @@ -5098,7 +5145,7 @@ snapshots: web-namespaces: 2.0.1 zwitch: 2.0.4 - hast-util-to-string@3.0.0: + hast-util-to-string@3.0.1: dependencies: '@types/hast': 3.0.4 @@ -5158,7 +5205,7 @@ snapshots: inline-style-parser@0.1.1: {} - inline-style-parser@0.2.3: {} + inline-style-parser@0.2.4: {} is-absolute-url@4.0.1: {} @@ -5183,8 +5230,6 @@ snapshots: is-docker@3.0.0: {} - is-extendable@0.1.1: {} - is-extglob@2.1.1: {} is-fullwidth-code-point@3.0.0: {} @@ -5199,19 +5244,13 @@ snapshots: dependencies: is-docker: 3.0.0 - is-interactive@2.0.0: {} - is-number@7.0.0: {} is-plain-obj@4.1.0: {} is-reference@3.0.2: dependencies: - '@types/estree': 1.0.5 - - is-unicode-supported@1.3.0: {} - - is-unicode-supported@2.0.0: {} + '@types/estree': 1.0.6 is-wsl@3.1.0: dependencies: @@ -5242,8 +5281,6 @@ snapshots: jsonc-parser@3.3.1: {} - kind-of@6.0.3: {} - kleur@3.0.3: {} kleur@4.1.5: {} @@ -5289,11 +5326,6 @@ snapshots: lodash@4.17.21: {} - log-symbols@6.0.0: - dependencies: - chalk: 5.3.0 - is-unicode-supported: 1.3.0 - longest-streak@3.1.0: {} lru-cache@10.4.3: {} @@ -5304,9 +5336,9 @@ snapshots: magicast@0.3.5: dependencies: - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 - source-map-js: 1.2.0 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 + source-map-js: 1.2.1 markdown-extensions@2.0.0: {} @@ -5412,7 +5444,7 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-mdx-expression@2.0.0: + mdast-util-mdx-expression@2.0.1: dependencies: '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.4 @@ -5423,7 +5455,7 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-mdx-jsx@3.1.2: + mdast-util-mdx-jsx@3.1.3: dependencies: '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.4 @@ -5435,7 +5467,6 @@ snapshots: mdast-util-to-markdown: 2.1.0 parse-entities: 4.0.1 stringify-entities: 4.0.4 - unist-util-remove-position: 5.0.0 unist-util-stringify-position: 4.0.0 vfile-message: 4.0.2 transitivePeerDependencies: @@ -5444,8 +5475,8 @@ snapshots: mdast-util-mdx@3.0.0: dependencies: mdast-util-from-markdown: 2.0.1 - mdast-util-mdx-expression: 2.0.0 - mdast-util-mdx-jsx: 3.1.2 + mdast-util-mdx-expression: 2.0.1 + mdast-util-mdx-jsx: 3.1.3 mdast-util-mdxjs-esm: 2.0.1 mdast-util-to-markdown: 2.1.0 transitivePeerDependencies: @@ -5589,24 +5620,25 @@ snapshots: micromark-extension-mdx-expression@3.0.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 - micromark-factory-mdx-expression: 2.0.1 + micromark-factory-mdx-expression: 2.0.2 micromark-factory-space: 2.0.0 micromark-util-character: 2.1.0 micromark-util-events-to-acorn: 2.0.2 micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-extension-mdx-jsx@3.0.0: + micromark-extension-mdx-jsx@3.0.1: dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 estree-util-is-identifier-name: 3.0.0 - micromark-factory-mdx-expression: 2.0.1 + micromark-factory-mdx-expression: 2.0.2 micromark-factory-space: 2.0.0 micromark-util-character: 2.1.0 + micromark-util-events-to-acorn: 2.0.2 micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 vfile-message: 4.0.2 @@ -5617,7 +5649,7 @@ snapshots: micromark-extension-mdxjs-esm@3.0.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 micromark-core-commonmark: 2.0.1 micromark-util-character: 2.1.0 @@ -5632,7 +5664,7 @@ snapshots: acorn: 8.12.1 acorn-jsx: 5.3.2(acorn@8.12.1) micromark-extension-mdx-expression: 3.0.0 - micromark-extension-mdx-jsx: 3.0.0 + micromark-extension-mdx-jsx: 3.0.1 micromark-extension-mdx-md: 2.0.0 micromark-extension-mdxjs-esm: 3.0.0 micromark-util-combine-extensions: 2.0.0 @@ -5651,10 +5683,11 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 - micromark-factory-mdx-expression@2.0.1: + micromark-factory-mdx-expression@2.0.2: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 + micromark-factory-space: 2.0.0 micromark-util-character: 2.1.0 micromark-util-events-to-acorn: 2.0.2 micromark-util-symbol: 2.0.0 @@ -5717,7 +5750,7 @@ snapshots: micromark-util-events-to-acorn@2.0.2: dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/unist': 3.0.3 devlop: 1.1.0 estree-util-visit: 2.0.0 @@ -5774,11 +5807,6 @@ snapshots: transitivePeerDependencies: - supports-color - micromatch@4.0.7: - dependencies: - braces: 3.0.3 - picomatch: 2.3.1 - micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -5790,8 +5818,6 @@ snapshots: dependencies: mime-db: 1.52.0 - mimic-function@5.0.1: {} - mimic-response@3.1.0: {} minimatch@9.0.5: @@ -5876,25 +5902,9 @@ snapshots: dependencies: wrappy: 1.0.2 - onetime@7.0.0: - dependencies: - mimic-function: 5.0.1 - oniguruma-to-js@0.4.3: dependencies: - regex: 4.3.2 - - ora@8.1.0: - dependencies: - chalk: 5.3.0 - cli-cursor: 5.0.0 - cli-spinners: 2.9.2 - is-interactive: 2.0.0 - is-unicode-supported: 2.0.0 - log-symbols: 6.0.0 - stdin-discarder: 0.2.2 - string-width: 7.2.0 - strip-ansi: 7.1.0 + regex: 4.3.3 p-limit@2.3.0: dependencies: @@ -5917,7 +5927,7 @@ snapshots: p-try@2.2.0: {} - package-json-from-dist@1.0.0: {} + package-json-from-dist@1.0.1: {} package-manager-detector@0.1.2: {} @@ -5982,15 +5992,13 @@ snapshots: lru-cache: 10.4.3 minipass: 7.1.2 - path-to-regexp@6.2.2: {} - pathe@1.1.2: {} pend@1.2.0: {} periscopic@3.1.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 estree-walker: 3.0.3 is-reference: 3.0.2 @@ -6024,7 +6032,7 @@ snapshots: postcss-colormin@7.0.2(postcss@8.4.47): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 caniuse-api: 3.0.0 colord: 2.9.3 postcss: 8.4.47 @@ -6032,7 +6040,7 @@ snapshots: postcss-convert-values@7.0.4(postcss@8.4.47): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 postcss: 8.4.47 postcss-value-parser: 4.2.0 @@ -6068,7 +6076,7 @@ snapshots: postcss-load-config@4.0.2(postcss@8.4.47): dependencies: lilconfig: 3.1.2 - yaml: 2.5.0 + yaml: 2.5.1 optionalDependencies: postcss: 8.4.47 @@ -6080,7 +6088,7 @@ snapshots: postcss-merge-rules@7.0.4(postcss@8.4.47): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 caniuse-api: 3.0.0 cssnano-utils: 5.0.0(postcss@8.4.47) postcss: 8.4.47 @@ -6100,7 +6108,7 @@ snapshots: postcss-minify-params@7.0.2(postcss@8.4.47): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 cssnano-utils: 5.0.0(postcss@8.4.47) postcss: 8.4.47 postcss-value-parser: 4.2.0 @@ -6147,7 +6155,7 @@ snapshots: postcss-normalize-unicode@7.0.2(postcss@8.4.47): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 postcss: 8.4.47 postcss-value-parser: 4.2.0 @@ -6169,7 +6177,7 @@ snapshots: postcss-reduce-initial@7.0.2(postcss@8.4.47): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 caniuse-api: 3.0.0 postcss: 8.4.47 @@ -6234,7 +6242,7 @@ snapshots: prettier: 3.3.3 sass-formatter: 0.7.9 - prettier-plugin-tailwindcss@0.6.6(prettier-plugin-astro@0.14.1)(prettier@3.3.3): + prettier-plugin-tailwindcss@0.6.8(prettier-plugin-astro@0.14.1)(prettier@3.3.3): dependencies: prettier: 3.3.3 optionalDependencies: @@ -6286,9 +6294,11 @@ snapshots: dependencies: picomatch: 2.3.1 + readdirp@4.0.2: {} + reading-time@1.5.0: {} - regex@4.3.2: {} + regex@4.3.3: {} rehype-expressive-code@0.37.0: dependencies: @@ -6303,10 +6313,10 @@ snapshots: space-separated-tokens: 2.0.2 unist-util-visit: 5.0.0 - rehype-parse@9.0.0: + rehype-parse@9.0.1: dependencies: '@types/hast': 3.0.4 - hast-util-from-html: 2.0.1 + hast-util-from-html: 2.0.3 unified: 11.0.5 rehype-raw@7.0.0: @@ -6315,17 +6325,17 @@ snapshots: hast-util-raw: 9.0.4 vfile: 6.0.3 - rehype-stringify@10.0.0: + rehype-stringify@10.0.1: dependencies: '@types/hast': 3.0.4 hast-util-to-html: 9.0.3 unified: 11.0.5 - rehype@13.0.1: + rehype@13.0.2: dependencies: '@types/hast': 3.0.4 - rehype-parse: 9.0.0 - rehype-stringify: 10.0.0 + rehype-parse: 9.0.1 + rehype-stringify: 10.0.1 unified: 11.0.5 remark-directive@3.0.0: @@ -6364,7 +6374,7 @@ snapshots: transitivePeerDependencies: - supports-color - remark-rehype@11.1.0: + remark-rehype@11.1.1: dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 @@ -6375,7 +6385,7 @@ snapshots: remark-smartypants@3.0.2: dependencies: retext: 9.0.0 - retext-smartypants: 6.1.0 + retext-smartypants: 6.1.1 unified: 11.0.5 unist-util-visit: 5.0.0 @@ -6405,18 +6415,13 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - restore-cursor@5.1.0: - dependencies: - onetime: 7.0.0 - signal-exit: 4.1.0 - retext-latin@4.0.0: dependencies: '@types/nlcst': 2.0.3 parse-latin: 7.0.0 unified: 11.0.5 - retext-smartypants@6.1.0: + retext-smartypants@6.1.1: dependencies: '@types/nlcst': 2.0.3 nlcst-to-string: 4.0.0 @@ -6437,51 +6442,28 @@ snapshots: reusify@1.0.4: {} - rollup@4.21.0: + rollup@4.24.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.21.0 - '@rollup/rollup-android-arm64': 4.21.0 - '@rollup/rollup-darwin-arm64': 4.21.0 - '@rollup/rollup-darwin-x64': 4.21.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.21.0 - '@rollup/rollup-linux-arm-musleabihf': 4.21.0 - '@rollup/rollup-linux-arm64-gnu': 4.21.0 - '@rollup/rollup-linux-arm64-musl': 4.21.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.21.0 - '@rollup/rollup-linux-riscv64-gnu': 4.21.0 - '@rollup/rollup-linux-s390x-gnu': 4.21.0 - '@rollup/rollup-linux-x64-gnu': 4.21.0 - '@rollup/rollup-linux-x64-musl': 4.21.0 - '@rollup/rollup-win32-arm64-msvc': 4.21.0 - '@rollup/rollup-win32-ia32-msvc': 4.21.0 - '@rollup/rollup-win32-x64-msvc': 4.21.0 + '@rollup/rollup-android-arm-eabi': 4.24.0 + '@rollup/rollup-android-arm64': 4.24.0 + '@rollup/rollup-darwin-arm64': 4.24.0 + '@rollup/rollup-darwin-x64': 4.24.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.24.0 + '@rollup/rollup-linux-arm-musleabihf': 4.24.0 + '@rollup/rollup-linux-arm64-gnu': 4.24.0 + '@rollup/rollup-linux-arm64-musl': 4.24.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0 + '@rollup/rollup-linux-riscv64-gnu': 4.24.0 + '@rollup/rollup-linux-s390x-gnu': 4.24.0 + '@rollup/rollup-linux-x64-gnu': 4.24.0 + '@rollup/rollup-linux-x64-musl': 4.24.0 + '@rollup/rollup-win32-arm64-msvc': 4.24.0 + '@rollup/rollup-win32-ia32-msvc': 4.24.0 + '@rollup/rollup-win32-x64-msvc': 4.24.0 fsevents: 2.3.3 - rollup@4.22.4: - dependencies: - '@types/estree': 1.0.5 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.22.4 - '@rollup/rollup-android-arm64': 4.22.4 - '@rollup/rollup-darwin-arm64': 4.22.4 - '@rollup/rollup-darwin-x64': 4.22.4 - '@rollup/rollup-linux-arm-gnueabihf': 4.22.4 - '@rollup/rollup-linux-arm-musleabihf': 4.22.4 - '@rollup/rollup-linux-arm64-gnu': 4.22.4 - '@rollup/rollup-linux-arm64-musl': 4.22.4 - '@rollup/rollup-linux-powerpc64le-gnu': 4.22.4 - '@rollup/rollup-linux-riscv64-gnu': 4.22.4 - '@rollup/rollup-linux-s390x-gnu': 4.22.4 - '@rollup/rollup-linux-x64-gnu': 4.22.4 - '@rollup/rollup-linux-x64-musl': 4.22.4 - '@rollup/rollup-win32-arm64-msvc': 4.22.4 - '@rollup/rollup-win32-ia32-msvc': 4.22.4 - '@rollup/rollup-win32-x64-msvc': 4.22.4 - fsevents: 2.3.3 - optional: true - run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 @@ -6500,13 +6482,14 @@ snapshots: dependencies: ultrahtml: 1.2.0 - satori@0.10.14: + satori@0.11.2: dependencies: '@shuding/opentype.js': 1.4.0-beta.0 css-background-parser: 0.1.0 css-box-shadow: 1.0.0-3 + css-gradient-parser: 0.0.16 css-to-react-native: 3.2.0 - emoji-regex: 10.3.0 + emoji-regex: 10.4.0 escape-html: 1.0.3 linebreak: 1.1.0 parse-css-color: 0.2.1 @@ -6515,11 +6498,6 @@ snapshots: sax@1.4.1: {} - section-matter@1.0.0: - dependencies: - extend-shallow: 2.0.1 - kind-of: 6.0.3 - semver@7.6.3: {} sharp@0.32.6: @@ -6565,13 +6543,13 @@ snapshots: shebang-regex@3.0.0: {} - shiki@1.18.0: + shiki@1.22.0: dependencies: - '@shikijs/core': 1.18.0 - '@shikijs/engine-javascript': 1.18.0 - '@shikijs/engine-oniguruma': 1.18.0 - '@shikijs/types': 1.18.0 - '@shikijs/vscode-textmate': 9.2.2 + '@shikijs/core': 1.22.0 + '@shikijs/engine-javascript': 1.22.0 + '@shikijs/engine-oniguruma': 1.22.0 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 signal-exit@4.1.0: {} @@ -6590,15 +6568,13 @@ snapshots: sisteransi@1.0.5: {} - sitemap@7.1.2: + sitemap@8.0.0: dependencies: '@types/node': 17.0.45 '@types/sax': 1.2.7 arg: 5.0.2 sax: 1.4.1 - source-map-js@1.2.0: {} - source-map-js@1.2.1: {} source-map@0.7.4: {} @@ -6607,8 +6583,6 @@ snapshots: sprintf-js@1.0.3: {} - stdin-discarder@0.2.2: {} - stream-replace-string@2.0.0: {} streamx@2.20.0: @@ -6633,7 +6607,7 @@ snapshots: string-width@7.2.0: dependencies: - emoji-regex: 10.3.0 + emoji-regex: 10.4.0 get-east-asian-width: 1.2.0 strip-ansi: 7.1.0 @@ -6654,9 +6628,7 @@ snapshots: strip-ansi@7.1.0: dependencies: - ansi-regex: 6.0.1 - - strip-bom-string@1.0.0: {} + ansi-regex: 6.1.0 strip-bom@3.0.0: {} @@ -6668,13 +6640,13 @@ snapshots: dependencies: inline-style-parser: 0.1.1 - style-to-object@1.0.6: + style-to-object@1.0.8: dependencies: - inline-style-parser: 0.2.3 + inline-style-parser: 0.2.4 stylehacks@7.0.4(postcss@8.4.47): dependencies: - browserslist: 4.23.3 + browserslist: 4.24.0 postcss: 8.4.47 postcss-selector-parser: 6.1.2 @@ -6810,7 +6782,7 @@ snapshots: dependencies: safe-buffer: 5.2.1 - type-fest@2.19.0: {} + type-fest@4.26.1: {} typesafe-path@0.2.2: {} @@ -6895,6 +6867,12 @@ snapshots: escalade: 3.1.2 picocolors: 1.0.1 + update-browserslist-db@1.1.1(browserslist@4.24.0): + dependencies: + browserslist: 4.24.0 + escalade: 3.2.0 + picocolors: 1.1.0 + util-deprecate@1.0.2: {} valid-filename@4.0.0: @@ -6922,58 +6900,58 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite@5.4.7(@types/node@22.6.1): + vite@6.0.0-beta.2(@types/node@22.7.5): dependencies: - esbuild: 0.21.5 + esbuild: 0.24.0 postcss: 8.4.47 - rollup: 4.21.0 + rollup: 4.24.0 optionalDependencies: - '@types/node': 22.6.1 + '@types/node': 22.7.5 fsevents: 2.3.3 - vitefu@1.0.2(vite@5.4.7(@types/node@22.6.1)): + vitefu@1.0.2(vite@6.0.0-beta.2(@types/node@22.7.5)): optionalDependencies: - vite: 5.4.7(@types/node@22.6.1) + vite: 6.0.0-beta.2(@types/node@22.7.5) - volar-service-css@0.0.61(@volar/language-service@2.4.0): + volar-service-css@0.0.61(@volar/language-service@2.4.6): dependencies: - vscode-css-languageservice: 6.3.0 + vscode-css-languageservice: 6.3.1 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 2.4.0 + '@volar/language-service': 2.4.6 - volar-service-emmet@0.0.61(@volar/language-service@2.4.0): + volar-service-emmet@0.0.61(@volar/language-service@2.4.6): dependencies: '@emmetio/css-parser': 0.4.0 '@emmetio/html-matcher': 1.3.0 '@vscode/emmet-helper': 2.9.3 vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 2.4.0 + '@volar/language-service': 2.4.6 - volar-service-html@0.0.61(@volar/language-service@2.4.0): + volar-service-html@0.0.61(@volar/language-service@2.4.6): dependencies: - vscode-html-languageservice: 5.3.0 + vscode-html-languageservice: 5.3.1 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 2.4.0 + '@volar/language-service': 2.4.6 - volar-service-prettier@0.0.61(@volar/language-service@2.4.0)(prettier@3.3.3): + volar-service-prettier@0.0.61(@volar/language-service@2.4.6)(prettier@3.3.3): dependencies: vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 2.4.0 + '@volar/language-service': 2.4.6 prettier: 3.3.3 - volar-service-typescript-twoslash-queries@0.0.61(@volar/language-service@2.4.0): + volar-service-typescript-twoslash-queries@0.0.61(@volar/language-service@2.4.6): dependencies: vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 2.4.0 + '@volar/language-service': 2.4.6 - volar-service-typescript@0.0.61(@volar/language-service@2.4.0): + volar-service-typescript@0.0.61(@volar/language-service@2.4.6): dependencies: path-browserify: 1.0.1 semver: 7.6.3 @@ -6982,23 +6960,23 @@ snapshots: vscode-nls: 5.2.0 vscode-uri: 3.0.8 optionalDependencies: - '@volar/language-service': 2.4.0 + '@volar/language-service': 2.4.6 - volar-service-yaml@0.0.61(@volar/language-service@2.4.0): + volar-service-yaml@0.0.61(@volar/language-service@2.4.6): dependencies: vscode-uri: 3.0.8 yaml-language-server: 1.15.0 optionalDependencies: - '@volar/language-service': 2.4.0 + '@volar/language-service': 2.4.6 - vscode-css-languageservice@6.3.0: + vscode-css-languageservice@6.3.1: dependencies: '@vscode/l10n': 0.0.18 vscode-languageserver-textdocument: 1.0.12 vscode-languageserver-types: 3.17.5 vscode-uri: 3.0.8 - vscode-html-languageservice@5.3.0: + vscode-html-languageservice@5.3.1: dependencies: '@vscode/l10n': 0.0.18 vscode-languageserver-textdocument: 1.0.12 @@ -7065,9 +7043,9 @@ snapshots: dependencies: isexe: 2.0.0 - widest-line@4.0.1: + widest-line@5.0.0: dependencies: - string-width: 5.1.2 + string-width: 7.2.0 wrap-ansi@7.0.0: dependencies: @@ -7081,6 +7059,12 @@ snapshots: string-width: 5.1.2 strip-ansi: 7.1.0 + wrap-ansi@9.0.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 7.2.0 + strip-ansi: 7.1.0 + wrappy@1.0.2: {} xxhash-wasm@1.0.2: {} @@ -7106,14 +7090,14 @@ snapshots: yaml@2.2.2: {} - yaml@2.5.0: {} + yaml@2.5.1: {} yargs-parser@21.1.1: {} yargs@17.7.2: dependencies: cliui: 8.0.1 - escalade: 3.1.2 + escalade: 3.2.0 get-caller-file: 2.0.5 require-directory: 2.1.1 string-width: 4.2.3 @@ -7127,9 +7111,15 @@ snapshots: yocto-queue@1.1.1: {} + yocto-spinner@0.1.0: + dependencies: + yoctocolors: 2.1.1 + + yoctocolors@2.1.1: {} + yoga-wasm-web@0.3.3: {} - zod-to-json-schema@3.23.2(zod@3.23.8): + zod-to-json-schema@3.23.3(zod@3.23.8): dependencies: zod: 3.23.8 From 7e5e539b1e284f555c07b567e476fb36b77f8d01 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 11 Oct 2024 14:40:13 +0100 Subject: [PATCH 04/47] add a collection loader --- src/content/config.ts | 3 ++- tsconfig.json | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/content/config.ts b/src/content/config.ts index 478f8ffcf..6c6916bb1 100644 --- a/src/content/config.ts +++ b/src/content/config.ts @@ -1,4 +1,5 @@ import { defineCollection, z } from "astro:content"; +import { glob } from "astro/loaders"; function removeDupsAndLowerCase(array: string[]) { if (!array.length) return array; @@ -8,6 +9,7 @@ function removeDupsAndLowerCase(array: string[]) { } const post = defineCollection({ + loader: glob({ pattern: "**/\[^_]*.md", base: "./src/content/post" }), schema: ({ image }) => z.object({ coverImage: z @@ -30,7 +32,6 @@ const post = defineCollection({ .optional() .transform((str) => (str ? new Date(str) : undefined)), }), - type: "content", }); export const collections = { post }; diff --git a/tsconfig.json b/tsconfig.json index 6e277ba9a..1288ac234 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -13,6 +13,6 @@ "@/site-config": ["src/site.config.ts"] } }, - "include": [".astro/types.d.ts", "**/*"], + "include": [".astro/types.d.ts", "**/*", "**/*.astro"], "exclude": ["node_modules", "**/node_modules/*", ".vscode", "dist"] } From 6c69f35890fa8955071cab0860272bd04d0b8a3f Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 11 Oct 2024 14:41:25 +0100 Subject: [PATCH 05/47] replace slug with id --- src/components/blog/PostPreview.astro | 2 +- src/pages/og-image/[...slug].png.ts | 2 +- src/pages/posts/[...slug].astro | 13 +++++++------ src/pages/rss.xml.ts | 2 +- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/components/blog/PostPreview.astro b/src/components/blog/PostPreview.astro index 49cd4593b..c10b3652c 100644 --- a/src/components/blog/PostPreview.astro +++ b/src/components/blog/PostPreview.astro @@ -16,7 +16,7 @@ const postDate = getPostSortDate(post); {post.data.draft && (Draft) } - + {post.data.title} diff --git a/src/pages/og-image/[...slug].png.ts b/src/pages/og-image/[...slug].png.ts index 7d361ebe5..8c1eb0ecc 100644 --- a/src/pages/og-image/[...slug].png.ts +++ b/src/pages/og-image/[...slug].png.ts @@ -81,7 +81,7 @@ export async function getStaticPaths() { return posts .filter(({ data }) => !data.ogImage) .map((post) => ({ - params: { slug: post.slug }, + params: { slug: post.id }, props: { pubDate: post.data.updatedDate ?? post.data.publishDate, title: post.data.title, diff --git a/src/pages/posts/[...slug].astro b/src/pages/posts/[...slug].astro index 9ccdecfe1..ca9c4911e 100644 --- a/src/pages/posts/[...slug].astro +++ b/src/pages/posts/[...slug].astro @@ -1,4 +1,5 @@ --- +import { render } from "astro:content"; import { getAllPosts } from "@/data/post"; import PostLayout from "@/layouts/BlogPost.astro"; import type { GetStaticPaths, InferGetStaticPropsType } from "astro"; @@ -6,18 +7,18 @@ import type { GetStaticPaths, InferGetStaticPropsType } from "astro"; // if you're using an adaptor in SSR mode, getStaticPaths wont work -> https://docs.astro.build/en/guides/routing/#modifying-the-slug-example-for-ssr export const getStaticPaths = (async () => { const blogEntries = await getAllPosts(); - return blogEntries.map((entry) => ({ - params: { slug: entry.slug }, - props: { entry }, + return blogEntries.map((post) => ({ + params: { slug: post.id }, + props: { post }, })); }) satisfies GetStaticPaths; type Props = InferGetStaticPropsType; -const { entry } = Astro.props; -const { Content } = await entry.render(); +const { post } = Astro.props; +const { Content } = await render(post); --- - + diff --git a/src/pages/rss.xml.ts b/src/pages/rss.xml.ts index adba4cde9..072b982ed 100644 --- a/src/pages/rss.xml.ts +++ b/src/pages/rss.xml.ts @@ -13,7 +13,7 @@ export const GET = async () => { title: post.data.title, description: post.data.description, pubDate: post.data.publishDate, - link: `posts/${post.slug}`, + link: `posts/${post.id}`, })), }); }; From 7a0a640d7656d603069d53566796220bb633359f Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 11 Oct 2024 14:41:41 +0100 Subject: [PATCH 06/47] use content collection render fn --- src/components/blog/Masthead.astro | 14 +++++++------- src/layouts/BlogPost.astro | 20 ++++++++++++-------- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/src/components/blog/Masthead.astro b/src/components/blog/Masthead.astro index fa615a015..3d6727df3 100644 --- a/src/components/blog/Masthead.astro +++ b/src/components/blog/Masthead.astro @@ -8,11 +8,9 @@ interface Props { } const { - content: { data, render }, + content: { data }, } = Astro.props; -const { remarkPluginFrontmatter } = await render(); - const dateTimeOptions: Intl.DateTimeFormatOptions = { month: "long", }; @@ -20,7 +18,7 @@ const dateTimeOptions: Intl.DateTimeFormatOptions = { { data.coverImage && ( -
    +
    {data.coverImage.alt}

    /{" "} - {remarkPluginFrontmatter.minutesRead} + {/* @ts-ignore:next-line. TODO: add reading time to collection schema? */} + {data.minutesRead}

    { data.updatedDate && ( - Updated: + Updated: + ) } @@ -80,4 +80,4 @@ const dateTimeOptions: Intl.DateTimeFormatOptions = { ))}
    ) -} \ No newline at end of file +} diff --git a/src/layouts/BlogPost.astro b/src/layouts/BlogPost.astro index 8a39b416b..c9931961c 100644 --- a/src/layouts/BlogPost.astro +++ b/src/layouts/BlogPost.astro @@ -1,5 +1,5 @@ --- -import type { CollectionEntry } from "astro:content"; +import { type CollectionEntry, render } from "astro:content"; import Masthead from "@/components/blog/Masthead.astro"; import TOC from "@/components/blog/TOC.astro"; @@ -12,16 +12,20 @@ interface Props { } const { post } = Astro.props; -const { - data: { description, ogImage, publishDate, title, updatedDate }, - slug, -} = post; -const socialImage = ogImage ?? `/og-image/${slug}.png`; +const { ogImage, title, description, updatedDate, publishDate } = post.data; +const socialImage = ogImage ?? `/og-image/${post.id}.png`; const articleDate = updatedDate?.toISOString() ?? publishDate.toISOString(); -const { headings } = await post.render(); +const { headings } = await render(post); --- - +
    {!!headings.length && }
    From 48c6093b251fee3323e3d9c6a1befa5ae4917596 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:15:45 +0100 Subject: [PATCH 07/47] remove image --- src/assets/about-astro.png | Bin 32435 -> 0 bytes src/pages/404.astro | 10 ---------- src/pages/about.astro | 12 +----------- 3 files changed, 1 insertion(+), 21 deletions(-) delete mode 100644 src/assets/about-astro.png diff --git a/src/assets/about-astro.png b/src/assets/about-astro.png deleted file mode 100644 index 9b3949a5824bba127343bb573744ebbe5a846a1e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32435 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

    j5W7HQ1dm+~c_N!G|4n3I8 z7o_Qo!HAEp)KYo@r2b7w1;4Kk52k<>;a8d7JOBVbCKV*zlMKI+I7lnpb4t?9J8O}` zWL3QbzRELsAnhsKs4By`g~43vOwK!Q?oRzL(X;BGm9zXwzg%+1D(9J0TpUbySyZvXU*ym)r9hUS^(0|%G;bMLMQnNMH` zX(3R{$hv(GyxyQz_26;94kMoejEuFMqVF7?Pay)mZS7|&pmW&r*fT1cWE@ip?|3Tk zj_n9*eFYm86*v~)_!S&7JRTh4%bT}>UpRO&xR;lp14nR*@Z|q}tO?KjUv&`R;G*r} zkp8QVA@KR~BM&Lv7|hP~mYw^pHn*S01EN`yHEzGp=M*_Y3&6k$Yl_}@f9c~ z`R`J7dtYlOeQA4VYZp&@R~I-iub{zDc>4cc$KZe0;pOAX56x=%Usv(6x3LjY^RTye b@iO;%IR|%J)q^ll3a22WDqSmS7WO{?7TY1C diff --git a/src/pages/404.astro b/src/pages/404.astro index 7da6bcc9f..d02cca32f 100644 --- a/src/pages/404.astro +++ b/src/pages/404.astro @@ -1,6 +1,4 @@ --- -import { Image } from "astro:assets"; -import aboutImg from "@/assets/about-astro.png"; import PageLayout from "@/layouts/Base.astro"; const meta = { @@ -12,12 +10,4 @@ const meta = {

    404 | Oops something went wrong

    Please use the navigation to find your way back

    -
    - A cartoon cactus looking at the 'Astro.build' logo -
    diff --git a/src/pages/about.astro b/src/pages/about.astro index be5cef5a6..e20069cc7 100644 --- a/src/pages/about.astro +++ b/src/pages/about.astro @@ -1,6 +1,4 @@ --- -import { Image } from "astro:assets"; -import aboutImg from "@/assets/about-astro.png"; import PageLayout from "@/layouts/Base.astro"; const meta = { @@ -16,16 +14,8 @@ const meta = { Hi, I’m a starter Astro. I’m particularly great for getting you started with your own blogging website.

    -
    - A cartoon cactus looking at the 'Astro.build' logo -

    Here are my some of my awesome built in features:

    -
      +
      • I'm ultra fast as I'm a static site
      • I'm fully responsive
      • I come with a light and dark mode
      • From 7e0b9178eedcf0e50d55295b28f7c69dc14f42ad Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:16:33 +0100 Subject: [PATCH 08/47] add a note collection --- src/content/config.ts | 36 +++++++++++++++++++++++------------- src/content/note/welcome.md | 9 +++++++++ 2 files changed, 32 insertions(+), 13 deletions(-) create mode 100644 src/content/note/welcome.md diff --git a/src/content/config.ts b/src/content/config.ts index 6c6916bb1..79662014b 100644 --- a/src/content/config.ts +++ b/src/content/config.ts @@ -2,31 +2,31 @@ import { defineCollection, z } from "astro:content"; import { glob } from "astro/loaders"; function removeDupsAndLowerCase(array: string[]) { - if (!array.length) return array; - const lowercaseItems = array.map((str) => str.toLowerCase()); - const distinctItems = new Set(lowercaseItems); - return Array.from(distinctItems); + return [...new Set(array.map((str) => str.toLowerCase()))]; } +const baseSchema = z.object({ + title: z.string().max(60), + description: z.string().optional(), + publishDate: z + .string() + .or(z.date()) + .transform((val) => new Date(val)), +}); + const post = defineCollection({ - loader: glob({ pattern: "**/\[^_]*.md", base: "./src/content/post" }), + loader: glob({ pattern: "**/*.md", base: "./src/content/post" }), schema: ({ image }) => - z.object({ + baseSchema.extend({ coverImage: z .object({ alt: z.string(), src: image(), }) .optional(), - description: z.string().min(50).max(160), draft: z.boolean().default(false), ogImage: z.string().optional(), - publishDate: z - .string() - .or(z.date()) - .transform((val) => new Date(val)), tags: z.array(z.string()).default([]).transform(removeDupsAndLowerCase), - title: z.string().max(60), updatedDate: z .string() .optional() @@ -34,4 +34,14 @@ const post = defineCollection({ }), }); -export const collections = { post }; +const note = defineCollection({ + loader: glob({ pattern: "**/*.md", base: "./src/content/note" }), + schema: baseSchema.extend({ + publishDate: z + .string() + .datetime({ offset: true }) // Ensures ISO 8601 format with offsets allowed (e.g. "2024-01-01T00:00:00Z" and "2024-01-01T00:00:00+02:00") + .transform((val) => new Date(val)), + }), +}); + +export const collections = { post, note }; diff --git a/src/content/note/welcome.md b/src/content/note/welcome.md new file mode 100644 index 000000000..204d8049e --- /dev/null +++ b/src/content/note/welcome.md @@ -0,0 +1,9 @@ +--- +title: Hello, Welcome +description: An introduction to using the note feature in Astro Cactus +publishDate: "2024-10-14T11:23:00Z" +--- + +Hi, Hello. This is an example note feature included with Astro Cactus. + +They're for shorter, concise "post's" that you'd like to share, they generally don't include headings, but hey, that's entirely up to you. From fbdfc2c779bc9b999f26fb4e386307cc207556e8 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:17:03 +0100 Subject: [PATCH 09/47] rm sort option config --- src/site.config.ts | 6 ++++-- src/types.ts | 1 - 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/site.config.ts b/src/site.config.ts index 09088077e..17ae4a0f6 100644 --- a/src/site.config.ts +++ b/src/site.config.ts @@ -19,8 +19,6 @@ export const siteConfig: SiteConfig = { lang: "en-GB", // Meta property, found in src/components/BaseHead.astro L:42 ogLocale: "en_GB", - // Option to sort posts by updatedDate if set to true (if property exists). Default (false) will sort by publishDate - sortPostsByUpdatedDate: false, // Used to construct the meta title property found in src/components/BaseHead.astro L:11, and webmanifest name found in astro.config.ts L:42 title: "Astro Theme Cactus", webmentions: { @@ -43,6 +41,10 @@ export const menuLinks: { path: string; title: string }[] = [ path: "/posts/", title: "Blog", }, + { + path: "/notes/", + title: "Notes", + }, ]; // https://expressive-code.com/reference/configuration/ diff --git a/src/types.ts b/src/types.ts index fb80db579..d576fa3a8 100644 --- a/src/types.ts +++ b/src/types.ts @@ -7,7 +7,6 @@ export interface SiteConfig { description: string; lang: string; ogLocale: string; - sortPostsByUpdatedDate: boolean; title: string; webmentions?: { link: string; From 224cbdf04d207bcd9f10063893733888d05a6007 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:18:22 +0100 Subject: [PATCH 10/47] update date utils and component --- src/components/FormattedDate.astro | 3 ++- src/utils/date.ts | 26 ++++++++++++++++---------- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/src/components/FormattedDate.astro b/src/components/FormattedDate.astro index 574d4ebed..aba7f4d2d 100644 --- a/src/components/FormattedDate.astro +++ b/src/components/FormattedDate.astro @@ -10,6 +10,7 @@ type Props = HTMLAttributes<"time"> & { const { date, dateTimeOptions, ...attrs } = Astro.props; const postDate = getFormattedDate(date, dateTimeOptions); +const ISO = date.toISOString(); --- - + diff --git a/src/utils/date.ts b/src/utils/date.ts index 71ac6ddaf..938f583b5 100644 --- a/src/utils/date.ts +++ b/src/utils/date.ts @@ -1,17 +1,23 @@ +import type { CollectionEntry } from "astro:content"; import { siteConfig } from "@/site-config"; -const dateFormat = new Intl.DateTimeFormat(siteConfig.date.locale, siteConfig.date.options); - export function getFormattedDate( - date: string | number | Date, + date: Date | undefined, options?: Intl.DateTimeFormatOptions, -) { - if (typeof options !== "undefined") { - return new Date(date).toLocaleDateString(siteConfig.date.locale, { - ...(siteConfig.date.options as Intl.DateTimeFormatOptions), - ...options, - }); +): string { + if (date === undefined) { + return "Invalid Date"; } - return dateFormat.format(new Date(date)); + return new Intl.DateTimeFormat(siteConfig.date.locale, { + ...(siteConfig.date.options as Intl.DateTimeFormatOptions), + ...options, + }).format(date); +} + +export function collectionDateSort( + a: CollectionEntry<"post" | "note">, + b: CollectionEntry<"post" | "note">, +) { + return b.data.publishDate.getTime() - a.data.publishDate.getTime(); } From 248aac41ccd11b119cb260a54e42c73a0c2c83fc Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:19:20 +0100 Subject: [PATCH 11/47] remove date display option --- src/components/blog/PostPreview.astro | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/components/blog/PostPreview.astro b/src/components/blog/PostPreview.astro index c10b3652c..9e5e5f55b 100644 --- a/src/components/blog/PostPreview.astro +++ b/src/components/blog/PostPreview.astro @@ -1,6 +1,5 @@ --- import type { CollectionEntry } from "astro:content"; -import { getPostSortDate } from "@/data/post"; import type { HTMLTag, Polymorphic } from "astro/types"; import FormattedDate from "../FormattedDate.astro"; @@ -10,10 +9,12 @@ type Props = Polymorphic<{ as: Tag }> & { }; const { as: Tag = "div", post, withDesc = false } = Astro.props; -const postDate = getPostSortDate(post); --- - + {post.data.draft && (Draft) } From f7e8b012da8a349425a2b8a5335f4b16eab091b0 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:19:31 +0100 Subject: [PATCH 12/47] add note snippet --- .vscode/post.code-snippets | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/.vscode/post.code-snippets b/.vscode/post.code-snippets index 6740b3d89..160c0393f 100644 --- a/.vscode/post.code-snippets +++ b/.vscode/post.code-snippets @@ -17,7 +17,7 @@ // } "Add frontmatter to an Astro Cactus Post": { "scope": "markdown,mdx", - "prefix": "frontmatter", + "prefix": "frontmatter-post", "body": [ "---", "title: ${TM_FILENAME_BASE/(.*)/${1:/capitalize}/}", @@ -30,4 +30,17 @@ ], "description": "Add frontmatter for new Markdown post", }, + "Add frontmatter to an Astro Cactus Note": { + "scope": "markdown,mdx", + "prefix": "frontmatter-note", + "body": [ + "---", + "title: ${TM_FILENAME_BASE/(.*)/${1:/capitalize}/}", + "description: 'Enter a description here (optional)'", + "publishDate: \"${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE}T${CURRENT_HOUR}:${CURRENT_MINUTE}:00Z\"", + "---", + "$2", + ], + "description": "Add frontmatter for a new Markdown note", + }, } From f6a69a019e04abfbc8baaa923f96a35f07dc7add Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:19:44 +0100 Subject: [PATCH 13/47] Create Note.astro --- src/components/note/Note.astro | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/components/note/Note.astro diff --git a/src/components/note/Note.astro b/src/components/note/Note.astro new file mode 100644 index 000000000..dfa22f5f8 --- /dev/null +++ b/src/components/note/Note.astro @@ -0,0 +1,25 @@ +--- +import { type CollectionEntry, render } from "astro:content"; +import FormattedDate from "../FormattedDate.astro"; + +interface Props { + note: CollectionEntry<"note">; +} + +const { note } = Astro.props; +const { Content } = await render(note); +--- + +
        +
        + +
        + +
        From ac23385fab303df233198fc38a1835e611721ff9 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:20:17 +0100 Subject: [PATCH 14/47] update post collection helper --- src/data/post.ts | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/src/data/post.ts b/src/data/post.ts index 5377f9c9e..26ed6ff4b 100644 --- a/src/data/post.ts +++ b/src/data/post.ts @@ -1,35 +1,18 @@ import { type CollectionEntry, getCollection } from "astro:content"; -import { siteConfig } from "@/site-config"; /** filter out draft posts based on the environment */ -export async function getAllPosts() { +export async function getAllPosts(): Promise[]> { return await getCollection("post", ({ data }) => { return import.meta.env.PROD ? !data.draft : true; }); } -/** returns the date of the post based on option in siteConfig.sortPostsByUpdatedDate */ -export function getPostSortDate(post: CollectionEntry<"post">) { - return siteConfig.sortPostsByUpdatedDate && post.data.updatedDate !== undefined - ? new Date(post.data.updatedDate) - : new Date(post.data.publishDate); -} - -/** sort post by date (by siteConfig.sortPostsByUpdatedDate), desc.*/ -export function sortMDByDate(posts: CollectionEntry<"post">[]) { - return posts.sort((a, b) => { - const aDate = getPostSortDate(a).valueOf(); - const bDate = getPostSortDate(b).valueOf(); - return bDate - aDate; - }); -} - /** groups posts by year (based on option siteConfig.sortPostsByUpdatedDate), using the year as the key * Note: This function doesn't filter draft posts, pass it the result of getAllPosts above to do so. */ export function groupPostsByYear(posts: CollectionEntry<"post">[]) { return posts.reduce[]>>((acc, post) => { - const year = getPostSortDate(post).getFullYear(); + const year = post.data.publishDate.getFullYear(); if (!acc[year]) { acc[year] = []; } From bb969288d0d609b6a1058ac6ce8b66bfb5d9a72c Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:21:13 +0100 Subject: [PATCH 15/47] fix collection sorting --- src/pages/posts/[...page].astro | 18 ++++++++++++++---- src/pages/tags/[tag]/[...page].astro | 9 +++++---- 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/pages/posts/[...page].astro b/src/pages/posts/[...page].astro index e93bc07b8..06f75a1e1 100644 --- a/src/pages/posts/[...page].astro +++ b/src/pages/posts/[...page].astro @@ -2,16 +2,20 @@ import type { CollectionEntry } from "astro:content"; import Pagination from "@/components/Paginator.astro"; import PostPreview from "@/components/blog/PostPreview.astro"; -import { getAllPosts, getUniqueTags, groupPostsByYear, sortMDByDate } from "@/data/post"; +import { getAllPosts, getUniqueTags, groupPostsByYear } from "@/data/post"; import PageLayout from "@/layouts/Base.astro"; +import { collectionDateSort } from "@/utils/date"; import type { GetStaticPaths, Page } from "astro"; +import { Icon } from "astro-icon/components"; export const getStaticPaths = (async ({ paginate }) => { const MAX_POSTS_PER_PAGE = 10; const allPosts = await getAllPosts(); - const allPostsByDate = sortMDByDate(allPosts); const uniqueTags = getUniqueTags(allPosts); - return paginate(allPostsByDate, { pageSize: MAX_POSTS_PER_PAGE, props: { uniqueTags } }); + return paginate(allPosts.sort(collectionDateSort), { + pageSize: MAX_POSTS_PER_PAGE, + props: { uniqueTags }, + }); }) satisfies GetStaticPaths; interface Props { @@ -46,7 +50,13 @@ const descYearKeys = Object.keys(groupedByYear).sort((a, b) => +b - +a); --- -

        Posts

        +

        + Posts + + RSS feed + +

        { diff --git a/src/pages/tags/[tag]/[...page].astro b/src/pages/tags/[tag]/[...page].astro index e9f2305bc..daa6e51e9 100644 --- a/src/pages/tags/[tag]/[...page].astro +++ b/src/pages/tags/[tag]/[...page].astro @@ -2,17 +2,18 @@ import type { CollectionEntry } from "astro:content"; import Pagination from "@/components/Paginator.astro"; import PostPreview from "@/components/blog/PostPreview.astro"; -import { getAllPosts, getUniqueTags, sortMDByDate } from "@/data/post"; +import { getAllPosts, getUniqueTags } from "@/data/post"; import PageLayout from "@/layouts/Base.astro"; +import { collectionDateSort } from "@/utils/date"; import type { GetStaticPaths, Page } from "astro"; export const getStaticPaths: GetStaticPaths = async ({ paginate }) => { const allPosts = await getAllPosts(); - const allPostsByDate = sortMDByDate(allPosts); - const uniqueTags = getUniqueTags(allPostsByDate); + const sortedPosts = allPosts.sort(collectionDateSort); + const uniqueTags = getUniqueTags(sortedPosts); return uniqueTags.flatMap((tag) => { - const filterPosts = allPostsByDate.filter((post) => post.data.tags.includes(tag)); + const filterPosts = sortedPosts.filter((post) => post.data.tags.includes(tag)); return paginate(filterPosts, { pageSize: 10, params: { tag }, From c1b579c234b723bfeb5a1f338cd14fef1f716e5c Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:21:45 +0100 Subject: [PATCH 16/47] re-name remark plugin property --- src/components/blog/Masthead.astro | 2 +- src/plugins/remark-reading-time.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/blog/Masthead.astro b/src/components/blog/Masthead.astro index 3d6727df3..aee578b56 100644 --- a/src/components/blog/Masthead.astro +++ b/src/components/blog/Masthead.astro @@ -37,7 +37,7 @@ const dateTimeOptions: Intl.DateTimeFormatOptions = {

        /{" "} {/* @ts-ignore:next-line. TODO: add reading time to collection schema? */} - {data.minutesRead} + {data.readingTime}

        { data.updatedDate && ( diff --git a/src/plugins/remark-reading-time.ts b/src/plugins/remark-reading-time.ts index c228ad512..843dde11b 100644 --- a/src/plugins/remark-reading-time.ts +++ b/src/plugins/remark-reading-time.ts @@ -6,6 +6,6 @@ export function remarkReadingTime() { return (tree, { data }) => { const textOnPage = mdastToString(tree); const readingTime = getReadingTime(textOnPage); - data.astro.frontmatter.minutesRead = readingTime.text; + data.astro.frontmatter.readingTime = readingTime.text; }; } From a08f0578d9b8f35c7540db5959b618a9ef10b51f Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:24:10 +0100 Subject: [PATCH 17/47] reorganise md posts --- src/content/post/markdown-elements/index.md | 4 ---- src/content/post/{ => testing}/draft-post.md | 0 src/content/post/{ => testing}/long-title.md | 0 src/content/post/{ => testing}/missing-content.md | 0 src/content/post/{ => testing}/unique-tags.md | 0 src/content/post/{webmentions/index.md => webmentions.md} | 0 6 files changed, 4 deletions(-) rename src/content/post/{ => testing}/draft-post.md (100%) rename src/content/post/{ => testing}/long-title.md (100%) rename src/content/post/{ => testing}/missing-content.md (100%) rename src/content/post/{ => testing}/unique-tags.md (100%) rename src/content/post/{webmentions/index.md => webmentions.md} (100%) diff --git a/src/content/post/markdown-elements/index.md b/src/content/post/markdown-elements/index.md index 5c7b6e2aa..63a877330 100644 --- a/src/content/post/markdown-elements/index.md +++ b/src/content/post/markdown-elements/index.md @@ -168,10 +168,6 @@ Image in the same folder: `src/content/post/markdown-elements/logo.png` ![Astro theme cactus logo](./logo.png) -Image in the aliased assets folder: `src/assets/about-astro.png` - -![A cartoon cactus looking at the Astro.build logo](@/assets/about-astro.png) - ## Links [Content from markdown-it](https://markdown-it.github.io/) diff --git a/src/content/post/draft-post.md b/src/content/post/testing/draft-post.md similarity index 100% rename from src/content/post/draft-post.md rename to src/content/post/testing/draft-post.md diff --git a/src/content/post/long-title.md b/src/content/post/testing/long-title.md similarity index 100% rename from src/content/post/long-title.md rename to src/content/post/testing/long-title.md diff --git a/src/content/post/missing-content.md b/src/content/post/testing/missing-content.md similarity index 100% rename from src/content/post/missing-content.md rename to src/content/post/testing/missing-content.md diff --git a/src/content/post/unique-tags.md b/src/content/post/testing/unique-tags.md similarity index 100% rename from src/content/post/unique-tags.md rename to src/content/post/testing/unique-tags.md diff --git a/src/content/post/webmentions/index.md b/src/content/post/webmentions.md similarity index 100% rename from src/content/post/webmentions/index.md rename to src/content/post/webmentions.md From 3a18dba1992e23067ea9d478277284aeb306e14a Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:24:34 +0100 Subject: [PATCH 18/47] replace tech with notes section --- src/pages/index.astro | 96 ++++++++++++++----------------------------- 1 file changed, 30 insertions(+), 66 deletions(-) diff --git a/src/pages/index.astro b/src/pages/index.astro index 700f49b62..02a30b0fd 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -1,55 +1,23 @@ --- +import { type CollectionEntry, getCollection } from "astro:content"; import SocialList from "@/components/SocialList.astro"; import PostPreview from "@/components/blog/PostPreview.astro"; -import { getAllPosts, sortMDByDate } from "@/data/post"; +import Note from "@/components/note/Note.astro"; +import { getAllPosts } from "@/data/post"; import PageLayout from "@/layouts/Base.astro"; +import { collectionDateSort } from "@/utils/date"; +// Posts const MAX_POSTS = 10; const allPosts = await getAllPosts(); -const allPostsByDate = sortMDByDate(allPosts).slice(0, MAX_POSTS); +const allPostsByDate = allPosts + .sort(collectionDateSort) + .slice(0, MAX_POSTS) as CollectionEntry<"post">[]; -const cactusTech: { desc: string; href: string; title: string }[] = [ - { - desc: "Build fast websites, faster.", - href: "https://astro.build", - title: "Astro", - }, - { - desc: "Rapidly build modern websites without ever leaving your HTML.", - href: "https://tailwindcss.com", - title: "Tailwind CSS", - }, - { - desc: "Simple and easy-to-use markup language.", - href: "https://www.markdownguide.org/", - title: "Markdown", - }, - { - desc: "Markdown for the component era.", - href: "https://mdxjs.com/", - title: "MDX", - }, - { - desc: "Generating png Open Graph images for blog posts.", - href: "https://github.com/vercel/satori", - title: "Satori", - }, - { - desc: "A fully static search library.", - href: "https://pagefind.app/", - title: "Pagefind", - }, - { - desc: "An easy to use Icon component for Astro.", - href: "https://github.com/natemoo-re/astro-icon#readme", - title: "Astro Icon", - }, - { - desc: "Highly customisable source code & syntax highlighter", - href: "https://expressive-code.com/", - title: "Expressive Code", - }, -]; +// Notes +const MAX_NOTES = 5; +const allNotes = await getCollection("note"); +const latestNotes = allNotes.sort(collectionDateSort).slice(0, MAX_NOTES); --- @@ -63,8 +31,8 @@ const cactusTech: { desc: string; href: string; title: string }[] = [
        -

        Posts

        -
          +

          Posts

          +
            { allPostsByDate.map((p) => (
          • @@ -74,24 +42,20 @@ const cactusTech: { desc: string; href: string; title: string }[] = [ }
        -
        -

        Technologies

        -
        - { - cactusTech.map(({ desc, href, title }) => ( -
        -
        - - - {title} - - : - -
        -
        {desc}
        -
        - )) - } -
        -
        + { + latestNotes.length > 0 && ( +
        +

        + Notes +

        +
          + {latestNotes.map((note) => ( +
        • + +
        • + ))} +
        +
        + ) + } From 16960e64402f18ccc75376989e55131e13542e85 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 13:24:48 +0100 Subject: [PATCH 19/47] add a notes page --- src/pages/notes/[...page].astro | 57 +++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 src/pages/notes/[...page].astro diff --git a/src/pages/notes/[...page].astro b/src/pages/notes/[...page].astro new file mode 100644 index 000000000..af0d776fa --- /dev/null +++ b/src/pages/notes/[...page].astro @@ -0,0 +1,57 @@ +--- +import { type CollectionEntry, getCollection } from "astro:content"; +import Pagination from "@/components/Paginator.astro"; +import Note from "@/components/note/Note.astro"; +import PageLayout from "@/layouts/Base.astro"; +import { collectionDateSort } from "@/utils/date"; +import type { GetStaticPaths, Page } from "astro"; + +export const getStaticPaths = (async ({ paginate }) => { + const MAX_NOTES_PER_PAGE = 10; + const allNotes = await getCollection("note"); + return paginate(allNotes.sort(collectionDateSort), { pageSize: MAX_NOTES_PER_PAGE }); +}) satisfies GetStaticPaths; + +interface Props { + page: Page>; + uniqueTags: string[]; +} + +const { page } = Astro.props; + +const meta = { + description: "Read my collection of notes", + title: "Notes", +}; + +const paginationProps = { + ...(page.url.prev && { + prevUrl: { + text: "← Previous Page", + url: page.url.prev, + }, + }), + ...(page.url.next && { + nextUrl: { + text: "Next Page →", + url: page.url.next, + }, + }), +}; +--- + + +
        +

        Notes

        +
          + { + page.data.map((note) => ( +
        • + +
        • + )) + } +
        + +
        +
        From 7e5734b7d0eb929328d2ab52f7a4636a009eeab6 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 15:12:52 +0100 Subject: [PATCH 20/47] add polymorphic tag and preview flag --- src/components/note/Note.astro | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/src/components/note/Note.astro b/src/components/note/Note.astro index dfa22f5f8..5c981fd3e 100644 --- a/src/components/note/Note.astro +++ b/src/components/note/Note.astro @@ -1,25 +1,43 @@ --- import { type CollectionEntry, render } from "astro:content"; +import type { HTMLTag, Polymorphic } from "astro/types"; import FormattedDate from "../FormattedDate.astro"; -interface Props { +type Props = Polymorphic<{ as: Tag }> & { note: CollectionEntry<"note">; -} + isPreview?: boolean | undefined; +}; -const { note } = Astro.props; +const { as: Tag = "div", note, isPreview = false } = Astro.props; const { Content } = await render(note); --- From 15bcf33a1e574c838df80de296ea95a5286fef9b Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 15:13:13 +0100 Subject: [PATCH 21/47] update to note api --- src/pages/index.astro | 4 ++-- src/pages/notes/[...page].astro | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/pages/index.astro b/src/pages/index.astro index 02a30b0fd..734e8c4f2 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -50,8 +50,8 @@ const latestNotes = allNotes.sort(collectionDateSort).slice(0, MAX_NOTES);
          {latestNotes.map((note) => ( -
        • - +
        • +
        • ))}
        diff --git a/src/pages/notes/[...page].astro b/src/pages/notes/[...page].astro index af0d776fa..7ef66dcd5 100644 --- a/src/pages/notes/[...page].astro +++ b/src/pages/notes/[...page].astro @@ -47,7 +47,7 @@ const paginationProps = { { page.data.map((note) => (
      • - +
      • )) } From 71ec632b8d2776145b71f0b6edc11692244c0dd9 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 15:13:26 +0100 Subject: [PATCH 22/47] add single note page --- src/pages/notes/[...slug].astro | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/pages/notes/[...slug].astro diff --git a/src/pages/notes/[...slug].astro b/src/pages/notes/[...slug].astro new file mode 100644 index 000000000..dad23f6f4 --- /dev/null +++ b/src/pages/notes/[...slug].astro @@ -0,0 +1,29 @@ +--- +import { getCollection } from "astro:content"; + +import Note from "@/components/note/Note.astro"; +import PageLayout from "@/layouts/Base.astro"; +import type { GetStaticPaths, InferGetStaticPropsType } from "astro"; + +// if you're using an adaptor in SSR mode, getStaticPaths wont work -> https://docs.astro.build/en/guides/routing/#modifying-the-slug-example-for-ssr +export const getStaticPaths = (async () => { + const allNotes = await getCollection("note"); + return allNotes.map((note) => ({ + params: { slug: note.id }, + props: { note }, + })); +}) satisfies GetStaticPaths; + +export type Props = InferGetStaticPropsType; + +const { note } = Astro.props; + +const meta = { + description: `Read about my note posted on: ${note.data.publishDate.toLocaleDateString()}`, + title: note.data.title, +}; +--- + + + + From ad42903964a2a4b6c74c2c541d322d7f1cc9b86a Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 15 Oct 2024 15:22:12 +0100 Subject: [PATCH 23/47] add notes rss feed --- src/pages/notes/[...page].astro | 8 +++++++- src/pages/notes/rss.xml.ts | 18 ++++++++++++++++++ src/pages/rss.xml.ts | 2 +- 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 src/pages/notes/rss.xml.ts diff --git a/src/pages/notes/[...page].astro b/src/pages/notes/[...page].astro index 7ef66dcd5..1badbc84b 100644 --- a/src/pages/notes/[...page].astro +++ b/src/pages/notes/[...page].astro @@ -5,6 +5,7 @@ import Note from "@/components/note/Note.astro"; import PageLayout from "@/layouts/Base.astro"; import { collectionDateSort } from "@/utils/date"; import type { GetStaticPaths, Page } from "astro"; +import { Icon } from "astro-icon/components"; export const getStaticPaths = (async ({ paginate }) => { const MAX_NOTES_PER_PAGE = 10; @@ -42,7 +43,12 @@ const paginationProps = {
        -

        Notes

        +

        + Notes + RSS feed + +

          { page.data.map((note) => ( diff --git a/src/pages/notes/rss.xml.ts b/src/pages/notes/rss.xml.ts new file mode 100644 index 000000000..572def8d7 --- /dev/null +++ b/src/pages/notes/rss.xml.ts @@ -0,0 +1,18 @@ +import { getCollection } from "astro:content"; +import { siteConfig } from "@/site-config"; +import rss from "@astrojs/rss"; + +export const GET = async () => { + const notes = await getCollection("note"); + + return rss({ + title: siteConfig.title, + description: siteConfig.description, + site: import.meta.env.SITE, + items: notes.map((note) => ({ + title: note.data.title, + pubDate: note.data.publishDate, + link: `notes/${note.id}/`, + })), + }); +}; diff --git a/src/pages/rss.xml.ts b/src/pages/rss.xml.ts index 072b982ed..fef89b649 100644 --- a/src/pages/rss.xml.ts +++ b/src/pages/rss.xml.ts @@ -13,7 +13,7 @@ export const GET = async () => { title: post.data.title, description: post.data.description, pubDate: post.data.publishDate, - link: `posts/${post.id}`, + link: `posts/${post.id}/`, })), }); }; From 51ca0a320005339b596d5122b0fa130334cbd258 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Wed, 16 Oct 2024 14:09:03 +0100 Subject: [PATCH 24/47] sort formatting issue --- .vscode/launch.json | 11 ----------- .vscode/settings.json | 3 +-- src/components/blog/Masthead.astro | 13 ++++++------- 3 files changed, 7 insertions(+), 20 deletions(-) delete mode 100644 .vscode/launch.json diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index 230708db4..000000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "version": "0.2.0", - "configurations": [ - { - "command": "./node_modules/.bin/astro dev", - "name": "Development server", - "request": "launch", - "type": "node-terminal" - } - ] -} diff --git a/.vscode/settings.json b/.vscode/settings.json index 9b36e1abc..1ef5a71e4 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,12 +5,11 @@ "[typescriptreact]": { "editor.defaultFormatter": "biomejs.biome" }, "[json]": { "editor.defaultFormatter": "biomejs.biome" }, "[jsonc]": { "editor.defaultFormatter": "biomejs.biome" }, - "[astro]": { "editor.defaultFormatter": "astro-build.astro-vscode" }, "editor.formatOnSave": true, + "prettier.documentSelectors": ["**/*.astro"], "editor.codeActionsOnSave": { "source.organizeImports": "never", "source.organizeImports.biome": "explicit", - "source.fixAll": "never", "quickfix.biome": "explicit" }, "[markdown]": { diff --git a/src/components/blog/Masthead.astro b/src/components/blog/Masthead.astro index aee578b56..1d980e4ea 100644 --- a/src/components/blog/Masthead.astro +++ b/src/components/blog/Masthead.astro @@ -33,7 +33,7 @@ const dateTimeOptions: Intl.DateTimeFormatOptions = {

          {data.title}

          -
          +

          /{" "} {/* @ts-ignore:next-line. TODO: add reading time to collection schema? */} @@ -70,12 +70,11 @@ const dateTimeOptions: Intl.DateTimeFormatOptions = { {data.tags.map((tag, i) => ( <> - {tag}{i < data.tags.length - 1 && ", "} + {/* prettier-ignore */} + + {tag} + {i < data.tags.length - 1 && ", "} + ))}

          From 5ee23388e12c601ea47aac85451abdb7f2faaab2 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Wed, 16 Oct 2024 14:09:29 +0100 Subject: [PATCH 25/47] increase font size --- src/components/blog/TOC.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/blog/TOC.astro b/src/components/blog/TOC.astro index 6226599c6..ff94df5a2 100644 --- a/src/components/blog/TOC.astro +++ b/src/components/blog/TOC.astro @@ -13,7 +13,7 @@ const toc = generateToc(headings); ---
        -

        Posts

        +

        Posts

          { allPostsByDate.map((p) => ( -
        • +
        • )) @@ -45,7 +45,7 @@ const latestNotes = allNotes.sort(collectionDateSort).slice(0, MAX_NOTES); { latestNotes.length > 0 && (
          -

          +

          Notes

            diff --git a/src/pages/notes/[...page].astro b/src/pages/notes/[...page].astro index 1badbc84b..fdc5af9de 100644 --- a/src/pages/notes/[...page].astro +++ b/src/pages/notes/[...page].astro @@ -43,8 +43,8 @@ const paginationProps = {
            -

            - Notes +

            + Notes RSS feed diff --git a/src/pages/posts/[...page].astro b/src/pages/posts/[...page].astro index 06f75a1e1..1b177bae4 100644 --- a/src/pages/posts/[...page].astro +++ b/src/pages/posts/[...page].astro @@ -50,9 +50,9 @@ const descYearKeys = Object.keys(groupedByYear).sort((a, b) => +b - +a); --- -

            +

            Posts - + RSS feed @@ -63,7 +63,7 @@ const descYearKeys = Object.keys(groupedByYear).sort((a, b) => +b - +a); descYearKeys.map((yearKey) => ( <>

            {yearKey}

            -
              +
                {groupedByYear[yearKey]?.map((p) => (
              • @@ -78,7 +78,8 @@ const descYearKeys = Object.keys(groupedByYear).sort((a, b) => +b - +a); { !!uniqueTags.length && (

            -
              +
                { page.data.map((p) => ( -
              • - +
              • +
              • )) } From 5e5c19ded9e7deb7dc83692424c1b38c6019b9f1 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Wed, 16 Oct 2024 14:12:49 +0100 Subject: [PATCH 32/47] use description if available --- src/pages/notes/[...slug].astro | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pages/notes/[...slug].astro b/src/pages/notes/[...slug].astro index dad23f6f4..2ce847dab 100644 --- a/src/pages/notes/[...slug].astro +++ b/src/pages/notes/[...slug].astro @@ -19,7 +19,9 @@ export type Props = InferGetStaticPropsType; const { note } = Astro.props; const meta = { - description: `Read about my note posted on: ${note.data.publishDate.toLocaleDateString()}`, + description: + note.data.description || + `Read about my note posted on: ${note.data.publishDate.toLocaleDateString()}`, title: note.data.title, }; --- From 453fe7b21e2677173294b28dd1906f93ea0dc34b Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Wed, 16 Oct 2024 14:30:07 +0100 Subject: [PATCH 33/47] limit no. of tags, use link colour on hover --- src/layouts/BlogPost.astro | 2 +- src/pages/posts/[...page].astro | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/layouts/BlogPost.astro b/src/layouts/BlogPost.astro index c9931961c..bf002ac15 100644 --- a/src/layouts/BlogPost.astro +++ b/src/layouts/BlogPost.astro @@ -40,7 +40,7 @@ const { headings } = await render(post);

      - + View all → From e5de1dc54ff31e75181acf7598aca6cafe3f5b52 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Wed, 16 Oct 2024 14:42:58 +0100 Subject: [PATCH 34/47] reduce background opacity --- src/components/blog/Masthead.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/blog/Masthead.astro b/src/components/blog/Masthead.astro index 1d980e4ea..3606ca8b1 100644 --- a/src/components/blog/Masthead.astro +++ b/src/components/blog/Masthead.astro @@ -41,7 +41,7 @@ const dateTimeOptions: Intl.DateTimeFormatOptions = {

      { data.updatedDate && ( - + Updated: From 36b12302a5dc1ec963a498b129eb87bc51561b15 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Mon, 21 Oct 2024 13:26:43 +0100 Subject: [PATCH 35/47] bump astro beta ver --- package.json | 6 ++-- pnpm-lock.yaml | 92 ++++++++++++++++++++++---------------------------- 2 files changed, 44 insertions(+), 54 deletions(-) diff --git a/package.json b/package.json index 3800cc444..1f3b3972f 100644 --- a/package.json +++ b/package.json @@ -16,10 +16,10 @@ }, "dependencies": { "@astrojs/mdx": "4.0.0-beta.2", - "@astrojs/rss": "4.0.8", - "@astrojs/sitemap": "3.2.0", + "@astrojs/rss": "4.0.9", + "@astrojs/sitemap": "3.2.1", "@astrojs/tailwind": "5.1.2", - "astro": "5.0.0-beta.4", + "astro": "5.0.0-beta.5", "astro-expressive-code": "^0.37.0", "astro-icon": "^1.1.1", "astro-robots-txt": "^1.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 254804398..117dc5113 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,22 +10,22 @@ importers: dependencies: '@astrojs/mdx': specifier: 4.0.0-beta.2 - version: 4.0.0-beta.2(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)) + version: 4.0.0-beta.2(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)) '@astrojs/rss': - specifier: 4.0.8 - version: 4.0.8 + specifier: 4.0.9 + version: 4.0.9 '@astrojs/sitemap': - specifier: 3.2.0 - version: 3.2.0 + specifier: 3.2.1 + version: 3.2.1 '@astrojs/tailwind': specifier: 5.1.2 - version: 5.1.2(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))(tailwindcss@3.4.13) + version: 5.1.2(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))(tailwindcss@3.4.13) astro: - specifier: 5.0.0-beta.4 - version: 5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) + specifier: 5.0.0-beta.5 + version: 5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) astro-expressive-code: specifier: ^0.37.0 - version: 0.37.0(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)) + version: 0.37.0(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)) astro-icon: specifier: ^1.1.1 version: 1.1.1 @@ -176,11 +176,11 @@ packages: resolution: {integrity: sha512-Z9IYjuXSArkAUx3N6xj6+Bnvx8OdUSHA8YoOgyepp3+zJmtVYJIl/I18GozdJVW1p5u/CNpl3Km7/gwTJK85cw==} engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} - '@astrojs/rss@4.0.8': - resolution: {integrity: sha512-63UYWS2xj00+N79JPiLeHiBBB3nHfjFlJ81T9a+UaYQ7aUZyvU0E9JdZeuONwHKKcSsvP+goPjWmoVifPToRGA==} + '@astrojs/rss@4.0.9': + resolution: {integrity: sha512-W1qeLc/WP1vMS5xXa+BnaLU0paeSeGjN8RJVAoBaOIkQuKXjIUA9hvPno89heo73in5i67g40gy70oeeHMqp6A==} - '@astrojs/sitemap@3.2.0': - resolution: {integrity: sha512-SkrOCL3Z6HxdiXreZ1+aPBWgnBMJ31EgPdcscgQeLqI2Gqk/4EKLuw9q0SqKU9MmHpcPXXtcd0odfCk4barPoA==} + '@astrojs/sitemap@3.2.1': + resolution: {integrity: sha512-uxMfO8f7pALq0ADL6Lk68UV6dNYjJ2xGUzyjjVj60JLBs5a6smtlkBYv3tQ0DzoqwS7c9n4FUx5lgv0yPo/fgA==} '@astrojs/tailwind@5.1.2': resolution: {integrity: sha512-IvOF0W/dtHElcXvhrPR35nHmhyV3cfz1EzPitMGtU7sYy9Hci3BNK1To6FWmVuuNKPxza1IgCGetSynJZL7fOg==} @@ -1003,9 +1003,6 @@ packages: '@types/node@17.0.45': resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - '@types/node@22.4.2': - resolution: {integrity: sha512-nAvM3Ey230/XzxtyDcJ+VjvlzpzoHwLsF7JaDRfoI0ytO0mVheerNmM45CtA0yOILXwXXxOrcUWH3wltX+7PSw==} - '@types/node@22.7.5': resolution: {integrity: sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==} @@ -1126,8 +1123,8 @@ packages: astro-webmanifest@1.0.0: resolution: {integrity: sha512-ar8SZuFf8k2XuqAYpiaiGmzgpqVufyPx0A9d8OljPup+Sgs+1trG2bpvo7JcM+m4L3figPaYEZOy1rRawCEU0w==} - astro@5.0.0-beta.4: - resolution: {integrity: sha512-IZkFpETZxOWxuRnUnp2Lg093Ep1+fZgsqLFFHRcjdq6jjNv1fz94wE3mQZelCgtBwUg9UHokoOdMvCichMxJcw==} + astro@5.0.0-beta.5: + resolution: {integrity: sha512-ONR2ngPbmi0CX1aCjvjLqvkcqakqYhHXTtTQAooADOxopyXS/l0WajHGsED75K4c7LMR0blDzBC9PPcfn0Oo0w==} engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} hasBin: true @@ -1960,8 +1957,8 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - magic-string@0.30.11: - resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} + magic-string@0.30.12: + resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==} magicast@0.3.5: resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} @@ -3011,8 +3008,8 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - tsconfck@3.1.3: - resolution: {integrity: sha512-ulNZP1SVpRDesxeMLON/LtWM8HIgAJEIVpVVhBM6gsmvQ8+Rh+ZG7FWGvHh7Ah3pRABwVJWklWCr/BTZSv0xnQ==} + tsconfck@3.1.4: + resolution: {integrity: sha512-kdqWFGVJqe+KGYvlSO9NIaWn9jT1Ny4oKVzAJsKii5eoE9snzTJzL4+MMVOMn+fikWGFmKEylcXL710V/kIPJQ==} engines: {node: ^18 || >=20} hasBin: true peerDependencies: @@ -3153,10 +3150,10 @@ packages: terser: optional: true - vitefu@1.0.2: - resolution: {integrity: sha512-0/iAvbXyM3RiPPJ4lyD4w6Mjgtf4ejTK6TPvTNG3H32PLwuT0N/ZjJLiXug7ETE/LWtTeHw9WRv7uX/tIKYyKg==} + vitefu@1.0.3: + resolution: {integrity: sha512-iKKfOMBHob2WxEJbqbJjHAkmYgvFDPhuqrO82om83S8RLk+17FtyMBfcyeH8GqD0ihShtkMW/zzJgiA51hCNCQ==} peerDependencies: - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0-beta.0 peerDependenciesMeta: vite: optional: true @@ -3457,12 +3454,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/mdx@4.0.0-beta.2(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))': + '@astrojs/mdx@4.0.0-beta.2(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))': dependencies: '@astrojs/markdown-remark': 6.0.0-beta.2 '@mdx-js/mdx': 3.0.1 acorn: 8.12.1 - astro: 5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) + astro: 5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) es-module-lexer: 1.5.4 estree-util-visit: 2.0.0 hast-util-to-html: 9.0.3 @@ -3480,20 +3477,20 @@ snapshots: dependencies: prismjs: 1.29.0 - '@astrojs/rss@4.0.8': + '@astrojs/rss@4.0.9': dependencies: fast-xml-parser: 4.5.0 kleur: 4.1.5 - '@astrojs/sitemap@3.2.0': + '@astrojs/sitemap@3.2.1': dependencies: sitemap: 8.0.0 stream-replace-string: 2.0.0 zod: 3.23.8 - '@astrojs/tailwind@5.1.2(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))(tailwindcss@3.4.13)': + '@astrojs/tailwind@5.1.2(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))(tailwindcss@3.4.13)': dependencies: - astro: 5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) + astro: 5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) autoprefixer: 10.4.20(postcss@8.4.47) postcss: 8.4.47 postcss-load-config: 4.0.2(postcss@8.4.47) @@ -4143,10 +4140,6 @@ snapshots: '@types/node@17.0.45': {} - '@types/node@22.4.2': - dependencies: - undici-types: 6.19.8 - '@types/node@22.7.5': dependencies: undici-types: 6.19.8 @@ -4157,7 +4150,7 @@ snapshots: '@types/tar@6.1.13': dependencies: - '@types/node': 22.4.2 + '@types/node': 22.7.5 minipass: 4.2.8 '@types/unist@2.0.11': {} @@ -4269,9 +4262,9 @@ snapshots: astring@1.9.0: {} - astro-expressive-code@0.37.0(astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)): + astro-expressive-code@0.37.0(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)): dependencies: - astro: 5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) + astro: 5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) rehype-expressive-code: 0.37.0 astro-icon@1.1.1: @@ -4294,13 +4287,12 @@ snapshots: valid-filename: 4.0.0 zod: 3.23.8 - astro@5.0.0-beta.4(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2): + astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2): dependencies: '@astrojs/compiler': 2.10.3 '@astrojs/internal-helpers': 0.4.1 '@astrojs/markdown-remark': 6.0.0-beta.2 '@astrojs/telemetry': 3.1.0 - '@babel/types': 7.25.7 '@oslojs/encoding': 1.1.0 '@rollup/pluginutils': 5.1.2(rollup@4.24.0) '@types/cookie': 0.6.0 @@ -4323,14 +4315,13 @@ snapshots: esbuild: 0.21.5 estree-walker: 3.0.3 fast-glob: 3.3.2 - fastq: 1.17.1 flattie: 1.1.1 github-slugger: 2.0.0 html-escaper: 3.0.3 http-cache-semantics: 4.1.1 js-yaml: 4.1.0 kleur: 4.1.5 - magic-string: 0.30.11 + magic-string: 0.30.12 magicast: 0.3.5 micromatch: 4.0.8 mrmime: 2.0.0 @@ -4342,13 +4333,12 @@ snapshots: rehype: 13.0.2 semver: 7.6.3 shiki: 1.22.0 - string-width: 7.2.0 tinyexec: 0.3.0 - tsconfck: 3.1.3(typescript@5.6.2) + tsconfck: 3.1.4(typescript@5.6.2) unist-util-visit: 5.0.0 vfile: 6.0.3 vite: 6.0.0-beta.2(@types/node@22.7.5) - vitefu: 1.0.2(vite@6.0.0-beta.2(@types/node@22.7.5)) + vitefu: 1.0.3(vite@6.0.0-beta.2(@types/node@22.7.5)) which-pm: 3.0.0 xxhash-wasm: 1.0.2 yargs-parser: 21.1.1 @@ -4896,7 +4886,7 @@ snapshots: extract-zip@2.0.1: dependencies: - debug: 4.3.6 + debug: 4.3.7 get-stream: 5.2.0 yauzl: 2.10.0 optionalDependencies: @@ -5330,7 +5320,7 @@ snapshots: lru-cache@10.4.3: {} - magic-string@0.30.11: + magic-string@0.30.12: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -5788,7 +5778,7 @@ snapshots: micromark@4.0.0: dependencies: '@types/debug': 4.1.12 - debug: 4.3.6 + debug: 4.3.7 decode-named-character-reference: 1.0.2 devlop: 1.1.0 micromark-core-commonmark: 2.0.1 @@ -6771,7 +6761,7 @@ snapshots: ts-interface-checker@0.1.13: {} - tsconfck@3.1.3(typescript@5.6.2): + tsconfck@3.1.4(typescript@5.6.2): optionalDependencies: typescript: 5.6.2 @@ -6865,7 +6855,7 @@ snapshots: dependencies: browserslist: 4.23.3 escalade: 3.1.2 - picocolors: 1.0.1 + picocolors: 1.1.0 update-browserslist-db@1.1.1(browserslist@4.24.0): dependencies: @@ -6909,7 +6899,7 @@ snapshots: '@types/node': 22.7.5 fsevents: 2.3.3 - vitefu@1.0.2(vite@6.0.0-beta.2(@types/node@22.7.5)): + vitefu@1.0.3(vite@6.0.0-beta.2(@types/node@22.7.5)): optionalDependencies: vite: 6.0.0-beta.2(@types/node@22.7.5) From 73e2cbe5f8f2290e7d83d9f74ceb99d524255c92 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Mon, 21 Oct 2024 15:29:42 +0100 Subject: [PATCH 36/47] add Note(s) to pagefind search results --- src/components/note/Note.astro | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/note/Note.astro b/src/components/note/Note.astro index 91ed38acc..2935eb95c 100644 --- a/src/components/note/Note.astro +++ b/src/components/note/Note.astro @@ -16,6 +16,7 @@ const { Content } = await render(note); class:list={[ isPreview && "inline-grid rounded-md bg-[rgb(240,240,240)] px-4 py-3 dark:bg-[rgb(33,35,38)]", ]} + data-pagefind-body={isPreview ? false : true} > { From 1798b0478e72af673441ed00549b45dfd47781c0 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Mon, 21 Oct 2024 15:30:01 +0100 Subject: [PATCH 37/47] Update README.md --- README.md | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 7b4842ebf..afefa3cb4 100644 --- a/README.md +++ b/README.md @@ -96,48 +96,55 @@ Replace pnpm with your choice of npm / yarn - Modify file `src/styles/global.css` with your own light and dark styles. - You can also modify the theme(s) for markdown code blocks generated by [Expressive Code](https://expressive-code.com). Astro Cactus has both a dark (dracula) and light (github-light) theme, which can be found in `src/site.config.ts`. You can find more theme(s) and options [here](https://expressive-code.com/guides/themes/#available-themes). - Edit social links in `src/components/SocialList.astro` to add/replace your media profile. Icons can be found @ [icones.js.org](https://icones.js.org/), per [Astro Icon's instructions](https://www.astroicon.dev/guides/customization/#find-an-icon-set). -- Create / edit posts for your blog within `src/content/post/` with .md/mdx file(s). See [below](#adding-posts) for more details. +- Create/edit posts & notes for your blog within `src/content/post/` & `src/content/note/` with .md/mdx file(s). See [below](#adding-posts-and-notes) for more details. - OG Image: - - If you would like to change the style of the generated image the Satori library creates, open up `src/pages/og-image/[slug].png.ts` to the markup function where you can edit the html/tailwind-classes as necessary. You can also use this [satori playground](https://og-playground.vercel.app/) to aid your design. - - If you would like to generate svg og images rather than the default .png ones, you will need to remove the @resvg/resvg-js library, and return the svg within the body of the get function from the file `src/pages/og-image/[slug].png.ts`. + - If you would like to change the style of the generated image the Satori library creates, open up `src/pages/og-image/[slug].png.ts` to the markup function where you can edit the html/tailwind-classes as necessary. You can use this [playground](https://og-playground.vercel.app/) to aid your design. - You can also create your own og images and skip satori generating it for you by adding an ogImage property in the frontmatter with a link to the asset, an example can be found in `src/content/post/social-image.md`. More info on frontmatter can be found [here](#frontmatter) - Optional: - Fonts: This theme sets the body element to the font family `font-mono`, located in the global css file `src/styles/global.css`. You can change fonts by removing the variant `font-mono`, after which TailwindCSS will default to the `font-sans` [font family stack](https://tailwindcss.com/docs/font-family). ## Updating -If you've forked the template, you can [sync the fork](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork) with your own project, remembering to not click Discard Changes as you will lose your own. +If you've forked the template, you can [sync the fork](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork) with your own project, remembering to **not** click Discard Changes as you will lose your own. If you have a template repository, you can add this template as a remote, as discussed [here](https://stackoverflow.com/questions/56577184/github-pull-changes-from-a-template-repository). -## Adding posts +## Adding posts and notes -This theme utilises [Content Collections](https://docs.astro.build/en/guides/content-collections/) to organise Markdown and/or MDX files, as well as type-checking frontmatter with a schema -> `src/content/config.ts`. +This theme utilises [Content Collections](https://docs.astro.build/en/guides/content-collections/) to organise local Markdown and MDX files, as well as type-checking frontmatter with a schema -> `src/content/config.ts`. -Adding a post is as simple as adding your .md(x) files to the `src/content/post` folder, the filename of which will be used as the slug/url. The posts included with this template are there as an example of how to structure your frontmatter. Additionally, the [Astro docs](https://docs.astro.build/en/guides/markdown-content/) has a detailed section on markdown pages. +Adding a post/note is as simple as adding your .md(x) files to the `src/content/post` and/or `src/content/note` folder, the filename of which will be used as the slug/url. The posts included with this template are there as an example of how to structure your frontmatter. Additionally, the [Astro docs](https://docs.astro.build/en/guides/markdown-content/) has a detailed section on markdown pages. -### Frontmatter +### Post Frontmatter | Property (\* required) | Description | | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | title \* | Self explanatory. Used as the text link to the post, the h1 on the posts' page, and the pages title property. Has a max length of 60 chars, set in `src/content/config.ts` | | description \* | Similar to above, used as the seo description property. Has a min length of 50 and a max length of 160 chars, set in the post schema. | | publishDate \* | Again pretty simple. To change the date format/locale, currently **en-GB**, update the date option in `src/site.config.ts`. Note you can also pass additional options to the component `` if required. | -| updatedDate | This is an optional date representing when a post has been updated, in the same format as the publishDate. Note that by providing this field, the sorting function, found in `src/utils/post.ts`, `sortMDByDate` will order by this field rather than its published date. | +| updatedDate | This is an optional date representing when a post has been updated, in the same format as the publishDate. | | tags | Tags are optional with any created post. Any new tag(s) will be shown in `yourdomain.com/posts` & `yourdomain.com/tags`, and generate the page(s) `yourdomain.com/tags/[yourTag]` | | coverImage | This is an optional object that will add a cover image to the top of a post. Include both a `src`: "_path-to-image_" and `alt`: "_image alt_". You can view an example in `src/content/post/cover-image.md`. | | ogImage | This is an optional property. An OG Image will be generated automatically for every post where this property **isn't** provided. If you would like to create your own for a specific post, include this property and a link to your image, the theme will then skip automatically generating one. | | draft | This is an optional property as it is set to false by default in the schema. By adding true, the post will be filtered out of the production build in a number of places, inc. getAllPosts() calls, og-images, rss feeds, and generated page[s]. You can view an example in `src/content/post/draft-post.md` | -### Frontmatter snippet +### Note Frontmatter -Astro Cactus includes a helpful VSCode snippet which creates a frontmatter 'stub' for a blog post, found here -> `.vscode/post.code-snippets`. Start typing the word `frontmatter` on your newly created .md(x) file to trigger it. Visual Studio Code snippets appear in IntelliSense via (⌃Space) on mac, (Ctrl+Space) on windows. +| Property (\* required) | Description | +| ---------------------- | -------------------------------------------------- | +| title \* | string, max length 60 chars. | +| description | to be used for the head meta description property. | +| publishDate \* | ISO 8601 format with offsets allowed. | + +### Frontmatter snippets + +Astro Cactus includes a helpful VSCode snippet which creates a frontmatter 'stub' for posts and note's, found here -> `.vscode/post.code-snippets`. Start typing the word `frontmatter` on your newly created .md(x) file to trigger it. Visual Studio Code snippets appear in IntelliSense via (⌃Space) on mac, (Ctrl+Space) on windows. ## Pagefind search -This integration brings a static search feature for searching blog posts. In its current form, pagefind only works once the site has been built. This theme adds a postbuild script that should be run after Astro has built the site. You can preview locally by running both build && postbuild. +This integration brings a static search feature for searching blog posts and notes. In its current form, pagefind only works once the site has been built. This theme adds a postbuild script that should be run after Astro has built the site. You can preview locally by running both build && postbuild. -Search results only includes blog posts. If you would like to include other/all your pages, remove/re-locate the attribute `data-pagefind-body` to the article tag found in `src/layouts/BlogPost.astro`. +Search results only includes pages from posts and notes. If you would like to include other/all your pages, remove/re-locate the attribute `data-pagefind-body` to the article tag found in `src/layouts/BlogPost.astro` and `src/components/note/Note.astro`. It also allows you to filter posts by tags added in the frontmatter of blog posts. If you would rather remove this, remove the data attribute `data-pagefind-filter="tag"` from the link in `src/components/blog/Masthead.astro`. From 0927111c9dd44d1cc4ccf27daafec423249afa74 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Tue, 22 Oct 2024 13:08:47 +0100 Subject: [PATCH 38/47] use webmention class markup --- .../blog/webmentions/Comments.astro | 20 +++++++++++-------- src/components/blog/webmentions/Likes.astro | 20 ++++++++++--------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/src/components/blog/webmentions/Comments.astro b/src/components/blog/webmentions/Comments.astro index 40dac4ad1..91959c4c9 100644 --- a/src/components/blog/webmentions/Comments.astro +++ b/src/components/blog/webmentions/Comments.astro @@ -29,11 +29,11 @@ const comments = mentions.filter(

        {comments.map((mention) => ( -
      • +
      • {mention.author?.photo && mention.author.photo !== "" ? ( mention.author.url && mention.author.url !== "" ? ( {mention.author?.name} -
        -

        {mention.author?.name}

        +
        -

        {mention.content?.text}

        +

        + {mention.content?.text} +

      • ))} diff --git a/src/components/blog/webmentions/Likes.astro b/src/components/blog/webmentions/Likes.astro index 7465eff5c..aa2e03da4 100644 --- a/src/components/blog/webmentions/Likes.astro +++ b/src/components/blog/webmentions/Likes.astro @@ -25,21 +25,23 @@ const likesToShow = likes {!!likesToShow.length && (
          {likesToShow.map((like) => ( -
        • +
        • - {like.author!.name} + + {like.author!.name} +
        • ))} From 3eda4c80de98002e4c0d910515c334bbce620f69 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 13:31:00 +0000 Subject: [PATCH 39/47] update astro to v5 --- package.json | 34 +- pnpm-lock.yaml | 1973 ++++++++++++++++++++++++++++-------------------- 2 files changed, 1163 insertions(+), 844 deletions(-) diff --git a/package.json b/package.json index 1f3b3972f..7c7865da6 100644 --- a/package.json +++ b/package.json @@ -15,23 +15,24 @@ "check": "astro check" }, "dependencies": { - "@astrojs/mdx": "4.0.0-beta.2", - "@astrojs/rss": "4.0.9", + "@astrojs/mdx": "4.0.1", + "@astrojs/rss": "4.0.10", "@astrojs/sitemap": "3.2.1", - "@astrojs/tailwind": "5.1.2", - "astro": "5.0.0-beta.5", - "astro-expressive-code": "^0.37.0", - "astro-icon": "^1.1.1", + "@astrojs/tailwind": "5.1.3", + "astro": "5.0.3", + "astro-expressive-code": "^0.38.3", + "astro-icon": "^1.1.4", "astro-robots-txt": "^1.0.0", "astro-webmanifest": "^1.0.0", "cssnano": "^7.0.6", "hastscript": "^9.0.0", "mdast-util-directive": "^3.0.0", - "mdast-util-to-markdown": "^2.1.0", + "mdast-util-to-markdown": "^2.1.2", "mdast-util-to-string": "^4.0.0", "rehype-external-links": "^3.0.0", + "rehype-unwrap-images": "^1.0.0", "remark-directive": "^3.0.0", - "satori": "0.11.2", + "satori": "0.12.0", "satori-html": "^0.3.2", "sharp": "^0.33.5", "unified": "^11.0.5", @@ -39,21 +40,20 @@ }, "devDependencies": { "@astrojs/check": "^0.9.4", - "@biomejs/biome": "^1.9.3", - "@iconify-json/mdi": "^1.2.0", - "@pagefind/default-ui": "^1.1.1", + "@biomejs/biome": "^1.9.4", + "@iconify-json/mdi": "^1.2.1", + "@pagefind/default-ui": "^1.2.0", "@resvg/resvg-js": "^2.6.2", "@tailwindcss/typography": "^0.5.15", "@types/hast": "^3.0.4", "@types/mdast": "^4.0.4", "autoprefixer": "^10.4.20", - "pagefind": "^1.1.1", - "prettier": "^3.3.3", + "pagefind": "^1.2.0", + "prettier": "^3.4.2", "prettier-plugin-astro": "0.14.1", - "prettier-plugin-tailwindcss": "^0.6.8", + "prettier-plugin-tailwindcss": "^0.6.9", "reading-time": "^1.5.0", - "remark-unwrap-images": "^4.0.0", - "tailwindcss": "^3.4.13", - "typescript": "^5.6.2" + "tailwindcss": "^3.4.16", + "typescript": "^5.7.2" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 117dc5113..c16451864 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,26 +9,26 @@ importers: .: dependencies: '@astrojs/mdx': - specifier: 4.0.0-beta.2 - version: 4.0.0-beta.2(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)) + specifier: 4.0.1 + version: 4.0.1(astro@5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1)) '@astrojs/rss': - specifier: 4.0.9 - version: 4.0.9 + specifier: 4.0.10 + version: 4.0.10 '@astrojs/sitemap': specifier: 3.2.1 version: 3.2.1 '@astrojs/tailwind': - specifier: 5.1.2 - version: 5.1.2(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))(tailwindcss@3.4.13) + specifier: 5.1.3 + version: 5.1.3(astro@5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1))(tailwindcss@3.4.16) astro: - specifier: 5.0.0-beta.5 - version: 5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) + specifier: 5.0.3 + version: 5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1) astro-expressive-code: - specifier: ^0.37.0 - version: 0.37.0(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)) + specifier: ^0.38.3 + version: 0.38.3(astro@5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1)) astro-icon: - specifier: ^1.1.1 - version: 1.1.1 + specifier: ^1.1.4 + version: 1.1.4 astro-robots-txt: specifier: ^1.0.0 version: 1.0.0 @@ -37,7 +37,7 @@ importers: version: 1.0.0 cssnano: specifier: ^7.0.6 - version: 7.0.6(postcss@8.4.47) + version: 7.0.6(postcss@8.4.49) hastscript: specifier: ^9.0.0 version: 9.0.0 @@ -45,20 +45,23 @@ importers: specifier: ^3.0.0 version: 3.0.0 mdast-util-to-markdown: - specifier: ^2.1.0 - version: 2.1.0 + specifier: ^2.1.2 + version: 2.1.2 mdast-util-to-string: specifier: ^4.0.0 version: 4.0.0 rehype-external-links: specifier: ^3.0.0 version: 3.0.0 + rehype-unwrap-images: + specifier: ^1.0.0 + version: 1.0.0 remark-directive: specifier: ^3.0.0 version: 3.0.0 satori: - specifier: 0.11.2 - version: 0.11.2 + specifier: 0.12.0 + version: 0.12.0 satori-html: specifier: ^0.3.2 version: 0.3.2 @@ -74,22 +77,22 @@ importers: devDependencies: '@astrojs/check': specifier: ^0.9.4 - version: 0.9.4(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2) + version: 0.9.4(prettier-plugin-astro@0.14.1)(prettier@3.4.2)(typescript@5.7.2) '@biomejs/biome': - specifier: ^1.9.3 - version: 1.9.3 + specifier: ^1.9.4 + version: 1.9.4 '@iconify-json/mdi': + specifier: ^1.2.1 + version: 1.2.1 + '@pagefind/default-ui': specifier: ^1.2.0 version: 1.2.0 - '@pagefind/default-ui': - specifier: ^1.1.1 - version: 1.1.1 '@resvg/resvg-js': specifier: ^2.6.2 version: 2.6.2 '@tailwindcss/typography': specifier: ^0.5.15 - version: 0.5.15(tailwindcss@3.4.13) + version: 0.5.15(tailwindcss@3.4.16) '@types/hast': specifier: ^3.0.4 version: 3.0.4 @@ -98,31 +101,28 @@ importers: version: 4.0.4 autoprefixer: specifier: ^10.4.20 - version: 10.4.20(postcss@8.4.47) + version: 10.4.20(postcss@8.4.49) pagefind: - specifier: ^1.1.1 - version: 1.1.1 + specifier: ^1.2.0 + version: 1.2.0 prettier: - specifier: ^3.3.3 - version: 3.3.3 + specifier: ^3.4.2 + version: 3.4.2 prettier-plugin-astro: specifier: 0.14.1 version: 0.14.1 prettier-plugin-tailwindcss: - specifier: ^0.6.8 - version: 0.6.8(prettier-plugin-astro@0.14.1)(prettier@3.3.3) + specifier: ^0.6.9 + version: 0.6.9(prettier-plugin-astro@0.14.1)(prettier@3.4.2) reading-time: specifier: ^1.5.0 version: 1.5.0 - remark-unwrap-images: - specifier: ^4.0.0 - version: 4.0.0 tailwindcss: - specifier: ^3.4.13 - version: 3.4.13 + specifier: ^3.4.16 + version: 3.4.16 typescript: - specifier: ^5.6.2 - version: 5.6.2 + specifier: ^5.7.2 + version: 5.7.2 packages: @@ -130,8 +130,8 @@ packages: resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} engines: {node: '>=10'} - '@antfu/install-pkg@0.4.0': - resolution: {integrity: sha512-vI73C0pFA9L+5v+djh0WSLXb8qYQGH5fX8nczaFe1OTI/8Fh03JS1Mov1V7urb6P3A2cBlBqZNjJIKv54+zVRw==} + '@antfu/install-pkg@0.4.1': + resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==} '@antfu/utils@0.7.10': resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} @@ -148,8 +148,8 @@ packages: '@astrojs/compiler@2.9.2': resolution: {integrity: sha512-Vpu0Ffsj8SoV+N0DFHlxxOMKHwSC9059Xy/OlG1t6uFYSoJXxkBC2WyF6igO7x10V+8uJrhOxaXr3nA90kJXow==} - '@astrojs/internal-helpers@0.4.1': - resolution: {integrity: sha512-bMf9jFihO8YP940uD70SI/RDzIhUHJAolWVcO1v5PUivxGKvfLZTLTVVxEYzGYyPsA3ivdLNqMnL5VgmQySa+g==} + '@astrojs/internal-helpers@0.4.2': + resolution: {integrity: sha512-EdDWkC3JJVcpGpqJAU/5hSk2LKXyG3mNGkzGoAuyK+xoPHbaVdSuIWoN1QTnmK3N/gGfaaAfM8gO2KDCAW7S3w==} '@astrojs/language-server@2.15.0': resolution: {integrity: sha512-wJHSjGApm5X8Rg1GvkevoatZBfvaFizY4kCPvuSYgs3jGCobuY3KstJGKC1yNLsRJlDweHruP+J54iKn9vEKoA==} @@ -163,104 +163,104 @@ packages: prettier-plugin-astro: optional: true - '@astrojs/markdown-remark@6.0.0-beta.2': - resolution: {integrity: sha512-XHadnf3c+hb2A0kWBuwKA3TqBKi7bIF3bpRt49DTnE3dVlsHDPmByn0Wj3CZij1HvXL/ODmPiOJt2JGXMeivuQ==} + '@astrojs/markdown-remark@6.0.0': + resolution: {integrity: sha512-Tabo7xM44Pz2Yf9qpdaCCgxRmtaypi2YCinqTUNefDrWUa+OyKW62OuNeCaGwNh/ys+QAd9FUWN5/3HgPWjP4Q==} - '@astrojs/mdx@4.0.0-beta.2': - resolution: {integrity: sha512-h0iT7VhU7JAVMOY8ahX0urtYlwmWs2jcLEOg2tk1THGVBucn6lfXxHX078W7FR094DXCPr1xjX5J8Nkmx3M6gQ==} - engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} + '@astrojs/mdx@4.0.1': + resolution: {integrity: sha512-ShntQtbIsMEnR29DCF9vBNxBOGU29FVRBXKdS5njYic4t4asrbxYmjFXiqqQ0ONnBNHk9P0RHFgqEy1GL/YbJg==} + engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0} peerDependencies: - astro: ^5.0.0-alpha.0 + astro: ^5.0.0 - '@astrojs/prism@3.1.0': - resolution: {integrity: sha512-Z9IYjuXSArkAUx3N6xj6+Bnvx8OdUSHA8YoOgyepp3+zJmtVYJIl/I18GozdJVW1p5u/CNpl3Km7/gwTJK85cw==} - engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} + '@astrojs/prism@3.2.0': + resolution: {integrity: sha512-GilTHKGCW6HMq7y3BUv9Ac7GMe/MO9gi9GW62GzKtth0SwukCu/qp2wLiGpEujhY+VVhaG9v7kv/5vFzvf4NYw==} + engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0} - '@astrojs/rss@4.0.9': - resolution: {integrity: sha512-W1qeLc/WP1vMS5xXa+BnaLU0paeSeGjN8RJVAoBaOIkQuKXjIUA9hvPno89heo73in5i67g40gy70oeeHMqp6A==} + '@astrojs/rss@4.0.10': + resolution: {integrity: sha512-2gFdHM763uUAySkdwPYrpi6dppOBJr9ddg5VbkKXctWze8d1JHgIBBY78zWIYs7KBJT58zxadsObVAVt55RDaw==} '@astrojs/sitemap@3.2.1': resolution: {integrity: sha512-uxMfO8f7pALq0ADL6Lk68UV6dNYjJ2xGUzyjjVj60JLBs5a6smtlkBYv3tQ0DzoqwS7c9n4FUx5lgv0yPo/fgA==} - '@astrojs/tailwind@5.1.2': - resolution: {integrity: sha512-IvOF0W/dtHElcXvhrPR35nHmhyV3cfz1EzPitMGtU7sYy9Hci3BNK1To6FWmVuuNKPxza1IgCGetSynJZL7fOg==} + '@astrojs/tailwind@5.1.3': + resolution: {integrity: sha512-XF7WhXRhqEHGvADqc0kDtF7Yv/g4wAWTaj91jBBTBaYnc4+MQLH94duFfFa4NlTkRG40VQd012eF3MhO3Kk+bg==} peerDependencies: - astro: ^3.0.0 || ^4.0.0 || ^5.0.0-beta.0 + astro: ^3.0.0 || ^4.0.0 || ^5.0.0 tailwindcss: ^3.0.24 - '@astrojs/telemetry@3.1.0': - resolution: {integrity: sha512-/ca/+D8MIKEC8/A9cSaPUqQNZm+Es/ZinRv0ZAzvu2ios7POQSsVD+VOj7/hypWNsNM3T7RpfgNq7H2TU1KEHA==} - engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} + '@astrojs/telemetry@3.2.0': + resolution: {integrity: sha512-wxhSKRfKugLwLlr4OFfcqovk+LIFtKwLyGPqMsv+9/ibqqnW3Gv7tBhtKEb0gAyUAC4G9BTVQeQahqnQAhd6IQ==} + engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0} '@astrojs/yaml2ts@0.2.1': resolution: {integrity: sha512-CBaNwDQJz20E5WxzQh4thLVfhB3JEEGz72wRA+oJp6fQR37QLAqXZJU0mHC+yqMOQ6oj0GfRPJrz6hjf+zm6zA==} - '@babel/helper-string-parser@7.25.7': - resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} + '@babel/helper-string-parser@7.25.9': + resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.25.7': - resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} + '@babel/helper-validator-identifier@7.25.9': + resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/parser@7.25.7': - resolution: {integrity: sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==} + '@babel/parser@7.26.3': + resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.25.7': - resolution: {integrity: sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==} + '@babel/types@7.26.3': + resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} - '@biomejs/biome@1.9.3': - resolution: {integrity: sha512-POjAPz0APAmX33WOQFGQrwLvlu7WLV4CFJMlB12b6ZSg+2q6fYu9kZwLCOA+x83zXfcPd1RpuWOKJW0GbBwLIQ==} + '@biomejs/biome@1.9.4': + resolution: {integrity: sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog==} engines: {node: '>=14.21.3'} hasBin: true - '@biomejs/cli-darwin-arm64@1.9.3': - resolution: {integrity: sha512-QZzD2XrjJDUyIZK+aR2i5DDxCJfdwiYbUKu9GzkCUJpL78uSelAHAPy7m0GuPMVtF/Uo+OKv97W3P9nuWZangQ==} + '@biomejs/cli-darwin-arm64@1.9.4': + resolution: {integrity: sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [darwin] - '@biomejs/cli-darwin-x64@1.9.3': - resolution: {integrity: sha512-vSCoIBJE0BN3SWDFuAY/tRavpUtNoqiceJ5PrU3xDfsLcm/U6N93JSM0M9OAiC/X7mPPfejtr6Yc9vSgWlEgVw==} + '@biomejs/cli-darwin-x64@1.9.4': + resolution: {integrity: sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg==} engines: {node: '>=14.21.3'} cpu: [x64] os: [darwin] - '@biomejs/cli-linux-arm64-musl@1.9.3': - resolution: {integrity: sha512-VBzyhaqqqwP3bAkkBrhVq50i3Uj9+RWuj+pYmXrMDgjS5+SKYGE56BwNw4l8hR3SmYbLSbEo15GcV043CDSk+Q==} + '@biomejs/cli-linux-arm64-musl@1.9.4': + resolution: {integrity: sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-arm64@1.9.3': - resolution: {integrity: sha512-vJkAimD2+sVviNTbaWOGqEBy31cW0ZB52KtpVIbkuma7PlfII3tsLhFa+cwbRAcRBkobBBhqZ06hXoZAN8NODQ==} + '@biomejs/cli-linux-arm64@1.9.4': + resolution: {integrity: sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-x64-musl@1.9.3': - resolution: {integrity: sha512-TJmnOG2+NOGM72mlczEsNki9UT+XAsMFAOo8J0me/N47EJ/vkLXxf481evfHLlxMejTY6IN8SdRSiPVLv6AHlA==} + '@biomejs/cli-linux-x64-musl@1.9.4': + resolution: {integrity: sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-linux-x64@1.9.3': - resolution: {integrity: sha512-x220V4c+romd26Mu1ptU+EudMXVS4xmzKxPVb9mgnfYlN4Yx9vD5NZraSx/onJnd3Gh/y8iPUdU5CDZJKg9COA==} + '@biomejs/cli-linux-x64@1.9.4': + resolution: {integrity: sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-win32-arm64@1.9.3': - resolution: {integrity: sha512-lg/yZis2HdQGsycUvHWSzo9kOvnGgvtrYRgoCEwPBwwAL8/6crOp3+f47tPwI/LI1dZrhSji7PNsGKGHbwyAhw==} + '@biomejs/cli-win32-arm64@1.9.4': + resolution: {integrity: sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [win32] - '@biomejs/cli-win32-x64@1.9.3': - resolution: {integrity: sha512-cQMy2zanBkVLpmmxXdK6YePzmZx0s5Z7KEnwmrW54rcXK3myCNbQa09SwGZ8i/8sLw0H9F3X7K4rxVNGU8/D4Q==} + '@biomejs/cli-win32-x64@1.9.4': + resolution: {integrity: sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA==} engines: {node: '>=14.21.3'} cpu: [x64] os: [win32] @@ -575,29 +575,29 @@ packages: cpu: [x64] os: [win32] - '@expressive-code/core@0.37.0': - resolution: {integrity: sha512-uCPAaQ//5RZeeKAN9cMyGH8YIm+h1Rldy34IWMbsCECrFVo86w+eR67jVWoQ2HNe0dSZ4XTdgJKYEScuVcy2Cw==} + '@expressive-code/core@0.38.3': + resolution: {integrity: sha512-s0/OtdRpBONwcn23O8nVwDNQqpBGKscysejkeBkwlIeHRLZWgiTVrusT5Idrdz1d8cW5wRk9iGsAIQmwDPXgJg==} - '@expressive-code/plugin-frames@0.37.0': - resolution: {integrity: sha512-jqlds/LptU8+FYxD1Uiu1vULvC904TlcOote8wCgn4gdae2qmCj67G9C1b1j3MAaerblRQg4uNbUxeitRFYs6A==} + '@expressive-code/plugin-frames@0.38.3': + resolution: {integrity: sha512-qL2oC6FplmHNQfZ8ZkTR64/wKo9x0c8uP2WDftR/ydwN/yhe1ed7ZWYb8r3dezxsls+tDokCnN4zYR594jbpvg==} - '@expressive-code/plugin-shiki@0.37.0': - resolution: {integrity: sha512-0g9v7OBu3rNS7EOyam1G6+WE1siWBKteagV0917yooIFlOlcJ/pvV/nClSEwJgFdumwHK4sDj4ov4Y4p0tDn1w==} + '@expressive-code/plugin-shiki@0.38.3': + resolution: {integrity: sha512-kqHnglZeesqG3UKrb6e9Fq5W36AZ05Y9tCREmSN2lw8LVTqENIeCIkLDdWtQ5VoHlKqwUEQFTVlRehdwoY7Gmw==} - '@expressive-code/plugin-text-markers@0.37.0': - resolution: {integrity: sha512-iDwB7iYga7hIyODR0wGVP2yo10H3Ncknif2diZvc/w9Mb/RvStEtCXRoqs3jgQlS3dhTGBXzTorFZx36vNy4rQ==} + '@expressive-code/plugin-text-markers@0.38.3': + resolution: {integrity: sha512-dPK3+BVGTbTmGQGU3Fkj3jZ3OltWUAlxetMHI6limUGCWBCucZiwoZeFM/WmqQa71GyKRzhBT+iEov6kkz2xVA==} - '@iconify-json/mdi@1.2.0': - resolution: {integrity: sha512-E9/3l5Syg3wfuarorFodhn4s8YorxhH3U3U20LaNBNiqw1kFNIDWhF6HymuzAD35k7RH0OBasJ+ZUyFtVVV6eg==} + '@iconify-json/mdi@1.2.1': + resolution: {integrity: sha512-dSkQU78gsZV6Yxnq78+LuX7jzeFC/5NAmz7O3rh558GimGFcwMVY/OtqRowIzjqJBmMmWZft7wkFV4TrwRXjlg==} - '@iconify/tools@4.0.5': - resolution: {integrity: sha512-l8KoA1lxlN/FFjlMd3vjfD7BtcX/QnFWtlBapILMlJSBgM5zhDYak/ldw/LkKG3258q/0YmXa48sO/QpxX7ptg==} + '@iconify/tools@4.0.7': + resolution: {integrity: sha512-zOJxKIfZn96ZRGGvIWzDRLD9vb2CsxjcLuM+QIdvwWbv6SWhm49gECzUnd4d2P0sq9sfodT7yCNobWK8nvavxQ==} '@iconify/types@2.0.0': resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} - '@iconify/utils@2.1.31': - resolution: {integrity: sha512-WCu65iVaFRXyGU+op12XVbDZgIov0vzMIlUokZ1WR42cU2wwYMks/pZY8v0tE72W8ShXVaprO79Jv6EjYm3Sjw==} + '@iconify/utils@2.1.33': + resolution: {integrity: sha512-jP9h6v/g0BIZx0p7XGJJVtkVnydtbgTgt9mVNcGDYwaa7UhdHdI9dvoq+gKj9sijMSJKxUPEG2JyjsgXjxL7Kw==} '@img/sharp-darwin-arm64@0.33.5': resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} @@ -726,8 +726,8 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - '@mdx-js/mdx@3.0.1': - resolution: {integrity: sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==} + '@mdx-js/mdx@3.1.0': + resolution: {integrity: sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==} '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -744,31 +744,31 @@ packages: '@oslojs/encoding@1.1.0': resolution: {integrity: sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==} - '@pagefind/darwin-arm64@1.1.1': - resolution: {integrity: sha512-tZ9tysUmQpFs2EqWG2+E1gc+opDAhSyZSsgKmFzhnWfkK02YHZhvL5XJXEZDqYy3s1FAKhwjTg8XDxneuBlDZQ==} + '@pagefind/darwin-arm64@1.2.0': + resolution: {integrity: sha512-pHnPL2rm4xbe0LqV376g84hUIsVdy4PK6o2ACveo0DSGoC40eOIwPUPftnUPUinSdDWkkySaL5FT5r9hsXk0ZQ==} cpu: [arm64] os: [darwin] - '@pagefind/darwin-x64@1.1.1': - resolution: {integrity: sha512-ChohLQ39dLwaxQv0jIQB/SavP3TM5K5ENfDTqIdzLkmfs3+JlzSDyQKcJFjTHYcCzQOZVeieeGq8PdqvLJxJxQ==} + '@pagefind/darwin-x64@1.2.0': + resolution: {integrity: sha512-q2tcnfvcRyx0GnrJoUQJ5bRpiFNtI8DZWM6a4/k8sNJxm2dbM1BnY5hUeo4MbDfpb64Qc1wRMcvBUSOaMKBjfg==} cpu: [x64] os: [darwin] - '@pagefind/default-ui@1.1.1': - resolution: {integrity: sha512-ZM0zDatWDnac/VGHhQCiM7UgA4ca8jpjA+VfuTJyHJBaxGqZMQnm4WoTz9E0KFcue1Bh9kxpu7uWFZfwpZZk0A==} + '@pagefind/default-ui@1.2.0': + resolution: {integrity: sha512-MDSbm34veKpzFP5eJMh/pcPdrOc4FZKUsbpDsbdjSLC2ZeuTjsfDBNu9MGZaNUvGKUdlKk5JozQkVO/dzdSxrQ==} - '@pagefind/linux-arm64@1.1.1': - resolution: {integrity: sha512-H5P6wDoCoAbdsWp0Zx0DxnLUrwTGWGLu/VI1rcN2CyFdY2EGSvPQsbGBMrseKRNuIrJDFtxHHHyjZ7UbzaM9EA==} + '@pagefind/linux-arm64@1.2.0': + resolution: {integrity: sha512-wVtLOlF9AUrwLovP9ZSEKOYnwIVrrxId4I2Mz02Zxm3wbUIJyx8wHf6LyEf7W7mJ6rEjW5jtavKAbngKCAaicg==} cpu: [arm64] os: [linux] - '@pagefind/linux-x64@1.1.1': - resolution: {integrity: sha512-yJs7tTYbL2MI3HT+ngs9E1BfUbY9M4/YzA0yEM5xBo4Xl8Yu8Qg2xZTOQ1/F6gwvMrjCUFo8EoACs6LRDhtMrQ==} + '@pagefind/linux-x64@1.2.0': + resolution: {integrity: sha512-Lo5aO2bA++sQTeEWzK5WKr3KU0yzVH5OnTY88apZfkgL4AVfXckH2mrOU8ouYKCLNPseIYTLFEdj0V5xjHQSwQ==} cpu: [x64] os: [linux] - '@pagefind/windows-x64@1.1.1': - resolution: {integrity: sha512-b7/qPqgIl+lMzkQ8fJt51SfguB396xbIIR+VZ3YrL2tLuyifDJ1wL5mEm+ddmHxJ2Fki340paPcDan9en5OmAw==} + '@pagefind/windows-x64@1.2.0': + resolution: {integrity: sha512-tGQcwQAb5Ndv7woc7lhH9iAdxOnTNsgCz8sEBbsASPB2A0uI8BWBmVdf2GFLQkYHqnnqYuun63sa+UOzB7Ah3g==} cpu: [x64] os: [win32] @@ -852,8 +852,8 @@ packages: resolution: {integrity: sha512-xBaJish5OeGmniDj9cW5PRa/PtmuVU3ziqrbr5xJj901ZDN4TosrVaNZpEiLZAxdfnhAe7uQ7QFWfjPe9d9K2Q==} engines: {node: '>= 10'} - '@rollup/pluginutils@5.1.2': - resolution: {integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==} + '@rollup/pluginutils@5.1.3': + resolution: {integrity: sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -861,97 +861,107 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.24.0': - resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==} + '@rollup/rollup-android-arm-eabi@4.28.0': + resolution: {integrity: sha512-wLJuPLT6grGZsy34g4N1yRfYeouklTgPhH1gWXCYspenKYD0s3cR99ZevOGw5BexMNywkbV3UkjADisozBmpPQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.24.0': - resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==} + '@rollup/rollup-android-arm64@4.28.0': + resolution: {integrity: sha512-eiNkznlo0dLmVG/6wf+Ifi/v78G4d4QxRhuUl+s8EWZpDewgk7PX3ZyECUXU0Zq/Ca+8nU8cQpNC4Xgn2gFNDA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.24.0': - resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==} + '@rollup/rollup-darwin-arm64@4.28.0': + resolution: {integrity: sha512-lmKx9yHsppblnLQZOGxdO66gT77bvdBtr/0P+TPOseowE7D9AJoBw8ZDULRasXRWf1Z86/gcOdpBrV6VDUY36Q==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.24.0': - resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==} + '@rollup/rollup-darwin-x64@4.28.0': + resolution: {integrity: sha512-8hxgfReVs7k9Js1uAIhS6zq3I+wKQETInnWQtgzt8JfGx51R1N6DRVy3F4o0lQwumbErRz52YqwjfvuwRxGv1w==} cpu: [x64] os: [darwin] - '@rollup/rollup-linux-arm-gnueabihf@4.24.0': - resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==} + '@rollup/rollup-freebsd-arm64@4.28.0': + resolution: {integrity: sha512-lA1zZB3bFx5oxu9fYud4+g1mt+lYXCoch0M0V/xhqLoGatbzVse0wlSQ1UYOWKpuSu3gyN4qEc0Dxf/DII1bhQ==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.28.0': + resolution: {integrity: sha512-aI2plavbUDjCQB/sRbeUZWX9qp12GfYkYSJOrdYTL/C5D53bsE2/nBPuoiJKoWp5SN78v2Vr8ZPnB+/VbQ2pFA==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.28.0': + resolution: {integrity: sha512-WXveUPKtfqtaNvpf0iOb0M6xC64GzUX/OowbqfiCSXTdi/jLlOmH0Ba94/OkiY2yTGTwteo4/dsHRfh5bDCZ+w==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.24.0': - resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==} + '@rollup/rollup-linux-arm-musleabihf@4.28.0': + resolution: {integrity: sha512-yLc3O2NtOQR67lI79zsSc7lk31xjwcaocvdD1twL64PK1yNaIqCeWI9L5B4MFPAVGEVjH5k1oWSGuYX1Wutxpg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.24.0': - resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==} + '@rollup/rollup-linux-arm64-gnu@4.28.0': + resolution: {integrity: sha512-+P9G9hjEpHucHRXqesY+3X9hD2wh0iNnJXX/QhS/J5vTdG6VhNYMxJ2rJkQOxRUd17u5mbMLHM7yWGZdAASfcg==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.24.0': - resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==} + '@rollup/rollup-linux-arm64-musl@4.28.0': + resolution: {integrity: sha512-1xsm2rCKSTpKzi5/ypT5wfc+4bOGa/9yI/eaOLW0oMs7qpC542APWhl4A37AENGZ6St6GBMWhCCMM6tXgTIplw==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': - resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==} + '@rollup/rollup-linux-powerpc64le-gnu@4.28.0': + resolution: {integrity: sha512-zgWxMq8neVQeXL+ouSf6S7DoNeo6EPgi1eeqHXVKQxqPy1B2NvTbaOUWPn/7CfMKL7xvhV0/+fq/Z/J69g1WAQ==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.24.0': - resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==} + '@rollup/rollup-linux-riscv64-gnu@4.28.0': + resolution: {integrity: sha512-VEdVYacLniRxbRJLNtzwGt5vwS0ycYshofI7cWAfj7Vg5asqj+pt+Q6x4n+AONSZW/kVm+5nklde0qs2EUwU2g==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.24.0': - resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==} + '@rollup/rollup-linux-s390x-gnu@4.28.0': + resolution: {integrity: sha512-LQlP5t2hcDJh8HV8RELD9/xlYtEzJkm/aWGsauvdO2ulfl3QYRjqrKW+mGAIWP5kdNCBheqqqYIGElSRCaXfpw==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.24.0': - resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==} + '@rollup/rollup-linux-x64-gnu@4.28.0': + resolution: {integrity: sha512-Nl4KIzteVEKE9BdAvYoTkW19pa7LR/RBrT6F1dJCV/3pbjwDcaOq+edkP0LXuJ9kflW/xOK414X78r+K84+msw==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.24.0': - resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==} + '@rollup/rollup-linux-x64-musl@4.28.0': + resolution: {integrity: sha512-eKpJr4vBDOi4goT75MvW+0dXcNUqisK4jvibY9vDdlgLx+yekxSm55StsHbxUsRxSTt3JEQvlr3cGDkzcSP8bw==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.24.0': - resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==} + '@rollup/rollup-win32-arm64-msvc@4.28.0': + resolution: {integrity: sha512-Vi+WR62xWGsE/Oj+mD0FNAPY2MEox3cfyG0zLpotZdehPFXwz6lypkGs5y38Jd/NVSbOD02aVad6q6QYF7i8Bg==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.24.0': - resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==} + '@rollup/rollup-win32-ia32-msvc@4.28.0': + resolution: {integrity: sha512-kN/Vpip8emMLn/eOza+4JwqDZBL6MPNpkdaEsgUtW1NYN3DZvZqSQrbKzJcTL6hd8YNmFTn7XGWMwccOcJBL0A==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.24.0': - resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==} + '@rollup/rollup-win32-x64-msvc@4.28.0': + resolution: {integrity: sha512-Bvno2/aZT6usSa7lRDL2+hMjVAGjuqaymF1ApZm31JXzniR/hvr14jpU+/z4X6Gt5BPlzosscyJZGUvguXIqeQ==} cpu: [x64] os: [win32] - '@shikijs/core@1.22.0': - resolution: {integrity: sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==} + '@shikijs/core@1.24.0': + resolution: {integrity: sha512-6pvdH0KoahMzr6689yh0QJ3rCgF4j1XsXRHNEeEN6M4xJTfQ6QPWrmHzIddotg+xPJUPEPzYzYCKzpYyhTI6Gw==} - '@shikijs/engine-javascript@1.22.0': - resolution: {integrity: sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==} + '@shikijs/engine-javascript@1.24.0': + resolution: {integrity: sha512-ZA6sCeSsF3Mnlxxr+4wGEJ9Tto4RHmfIS7ox8KIAbH0MTVUkw3roHPHZN+LlJMOHJJOVupe6tvuAzRpN8qK1vA==} - '@shikijs/engine-oniguruma@1.22.0': - resolution: {integrity: sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==} + '@shikijs/engine-oniguruma@1.24.0': + resolution: {integrity: sha512-Eua0qNOL73Y82lGA4GF5P+G2+VXX9XnuUxkiUuwcxQPH4wom+tE39kZpBFXfUuwNYxHSkrSxpB1p4kyRW0moSg==} - '@shikijs/types@1.22.0': - resolution: {integrity: sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==} + '@shikijs/types@1.24.0': + resolution: {integrity: sha512-aptbEuq1Pk88DMlCe+FzXNnBZ17LCiLIGWAeCWhoFDzia5Q5Krx3DgnULLiouSdd6+LUM39XwXGppqYE0Ghtug==} '@shikijs/vscode-textmate@9.3.0': resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} @@ -1003,6 +1013,9 @@ packages: '@types/node@17.0.45': resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} + '@types/node@22.10.1': + resolution: {integrity: sha512-qKgsUwfHZV2WCWLAnVP1JqnpE6Im6h3Y0+fYgMTasNQ7V++CBX5OT1as0g0f+OyubbFqhf6XVNIsmN4IIhEgGQ==} + '@types/node@22.7.5': resolution: {integrity: sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==} @@ -1055,8 +1068,8 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.12.1: - resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} + acorn@8.14.0: + resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} hasBin: true @@ -1109,13 +1122,13 @@ packages: resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==} hasBin: true - astro-expressive-code@0.37.0: - resolution: {integrity: sha512-ElWiCQHVQh5+l8fvGRgctvxEw63G/KEZgRi60ApPsHK6NsexgPZENk3bnHzbCpigCgh/L9k/yJ+3zOyuhoPqhQ==} + astro-expressive-code@0.38.3: + resolution: {integrity: sha512-Tvdc7RV0G92BbtyEOsfJtXU35w41CkM94fOAzxbQP67Wj5jArfserJ321FO4XA7WG9QMV0GIBmQq77NBIRDzpQ==} peerDependencies: astro: ^4.0.0-beta || ^5.0.0-beta || ^3.3.0 - astro-icon@1.1.1: - resolution: {integrity: sha512-HKBesWk2Faw/0+klLX+epQVqdTfSzZz/9+5vxXUjTJaN/HnpDf608gRPgHh7ZtwBPNJMEFoU5GLegxoDcT56OQ==} + astro-icon@1.1.4: + resolution: {integrity: sha512-sMLkQaevIQLv38WBzb/RDbsmxhg5+X+KcNmpTi9cE6MLurNWU1MPnlO87d9Vwg4HxTenKpDlYp81A3syXFW/gw==} astro-robots-txt@1.0.0: resolution: {integrity: sha512-6JQSLid4gMhoWjOm85UHLkgrw0+hHIjnJVIUqxjU2D6feKlVyYukMNYjH44ZDZBK1P8hNxd33PgWlHzCASvedA==} @@ -1123,9 +1136,9 @@ packages: astro-webmanifest@1.0.0: resolution: {integrity: sha512-ar8SZuFf8k2XuqAYpiaiGmzgpqVufyPx0A9d8OljPup+Sgs+1trG2bpvo7JcM+m4L3figPaYEZOy1rRawCEU0w==} - astro@5.0.0-beta.5: - resolution: {integrity: sha512-ONR2ngPbmi0CX1aCjvjLqvkcqakqYhHXTtTQAooADOxopyXS/l0WajHGsED75K4c7LMR0blDzBC9PPcfn0Oo0w==} - engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} + astro@5.0.3: + resolution: {integrity: sha512-qpeN+POmmfAQu/XDXaI2CxkUgQFwH9uMUVaA1reV9rybzIbOVYc3E3BU5SkiP/W4BMUFPdJtyw6+/n/0AUv6rw==} + engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} hasBin: true asynckit@0.4.0: @@ -1138,8 +1151,8 @@ packages: peerDependencies: postcss: ^8.1.0 - axios@1.7.4: - resolution: {integrity: sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==} + axios@1.7.9: + resolution: {integrity: sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==} axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} @@ -1280,8 +1293,8 @@ packages: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} - ci-info@4.0.0: - resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==} + ci-info@4.1.0: + resolution: {integrity: sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==} engines: {node: '>=8'} cli-boxes@3.0.0: @@ -1334,15 +1347,15 @@ packages: common-ancestor-path@1.0.1: resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} - confbox@0.1.7: - resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} + confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} cookie@0.7.2: resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} engines: {node: '>= 0.6'} - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} css-background-parser@0.1.0: @@ -1413,15 +1426,6 @@ packages: resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} - debug@4.3.6: - resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - debug@4.3.7: resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} engines: {node: '>=6.0'} @@ -1507,6 +1511,9 @@ packages: emmet@2.4.11: resolution: {integrity: sha512-23QPJB3moh/U9sT4rQzGgeyyGIrcM+GH5uVYg2C6wZIxAIJq7Ng3QLT79tl8FUwDXhyq9SusfknOrofAKqvgyQ==} + emoji-regex-xs@1.0.0: + resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==} + emoji-regex@10.4.0: resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} @@ -1529,6 +1536,12 @@ packages: es-module-lexer@1.5.4: resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==} + esast-util-from-estree@2.0.0: + resolution: {integrity: sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==} + + esast-util-from-js@2.0.1: + resolution: {integrity: sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==} + esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} @@ -1568,6 +1581,9 @@ packages: estree-util-is-identifier-name@3.0.0: resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + estree-util-scope@1.0.0: + resolution: {integrity: sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==} + estree-util-to-js@2.0.0: resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==} @@ -1587,8 +1603,8 @@ packages: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} - expressive-code@0.37.0: - resolution: {integrity: sha512-UnfkF69UpKAa2ytyNNxBifSe723wL4DOK1dqkoK0PAYaO8mo9tXsyn/SMNMVvAkZNeJcJOttYfs957a9Uaqo6A==} + expressive-code@0.38.3: + resolution: {integrity: sha512-COM04AiUotHCKJgWdn7NtW2lqu8OW8owAidMpkXt1qxrZ9Q2iC7+tok/1qIn2ocGnczvr9paIySgGnEwFeEQ8Q==} extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -1647,8 +1663,8 @@ packages: resolution: {integrity: sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ==} engines: {node: '>=8'} - follow-redirects@1.15.6: - resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==} + follow-redirects@1.15.9: + resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -1660,8 +1676,8 @@ packages: resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} engines: {node: '>=14'} - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + form-data@4.0.1: + resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} fraction.js@4.3.7: @@ -1686,8 +1702,8 @@ packages: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} - get-east-asian-width@1.2.0: - resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==} + get-east-asian-width@1.3.0: + resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} engines: {node: '>=18'} get-stream@5.2.0: @@ -1722,23 +1738,26 @@ packages: hast-util-from-html@2.0.3: resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==} - hast-util-from-parse5@8.0.1: - resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} + hast-util-from-parse5@8.0.2: + resolution: {integrity: sha512-SfMzfdAi/zAoZ1KkFEyyeXBn7u/ShQrfd675ZEE9M3qj+PMFX05xubzRyF76CCSJu8au9jgVxDV1+okFvgZU4A==} hast-util-has-property@3.0.0: resolution: {integrity: sha512-MNilsvEKLFpV604hwfhVStK0usFY/QmM5zX16bo7EjnAEGofr5YyI37kzopBlZJkHD4t887i+q/C8/tr5Q94cA==} + hast-util-interactive@3.0.0: + resolution: {integrity: sha512-9VFa3kP6AT40BNYcPmn3jpsG+1KPDF0rUFCrFVQDUsuUXZ3YLODm8UGV0tmYzFpcOIQXTAOi2ccS3ywlj2dQTA==} + hast-util-is-element@3.0.0: resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} hast-util-parse-selector@4.0.0: resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} - hast-util-raw@9.0.4: - resolution: {integrity: sha512-LHE65TD2YiNsHD3YuXcKPHXPLuYh/gjp12mOfU8jxSrm1f/yJpsb0F/KKljS6U9LJoP0Ux+tCe8iJ2AsPzTdgA==} + hast-util-raw@9.1.0: + resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==} - hast-util-select@6.0.2: - resolution: {integrity: sha512-hT/SD/d/Meu+iobvgkffo1QecV8WeKWxwsNMzcTJsKw1cKTQKSR/7ArJeURLNJF9HDjp9nVoORyNNJxrvBye8Q==} + hast-util-select@6.0.3: + resolution: {integrity: sha512-OVRQlQ1XuuLP8aFVLYmC2atrfWHS5UD3shonxpnyrjcCkwtvmt/+N6kYJdcY4mkMJhxp4kj2EFIxQ9kvkkt/eQ==} hast-util-to-estree@3.1.0: resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==} @@ -1746,8 +1765,8 @@ packages: hast-util-to-html@9.0.3: resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} - hast-util-to-jsx-runtime@2.3.0: - resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} + hast-util-to-jsx-runtime@2.3.2: + resolution: {integrity: sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==} hast-util-to-parse5@8.0.0: resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} @@ -1761,9 +1780,6 @@ packages: hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} - hastscript@8.0.0: - resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} - hastscript@9.0.0: resolution: {integrity: sha512-jzaLBGavEDKHrc5EfFImKN7nZKKBdSLIdGvCwDZ9TfzbF2ffXiov8CKE445L2Z1Ek2t/m4SKQ2j6Ipv7NyUolw==} @@ -1862,9 +1878,6 @@ packages: resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} engines: {node: '>=12'} - is-reference@3.0.2: - resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} - is-wsl@3.1.0: resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} engines: {node: '>=16'} @@ -1907,14 +1920,14 @@ packages: kolorist@1.8.0: resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} - lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - lilconfig@3.1.2: resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} engines: {node: '>=14'} + lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} + engines: {node: '>=14'} + linebreak@1.1.0: resolution: {integrity: sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==} @@ -1925,8 +1938,8 @@ packages: resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} engines: {node: '>=6'} - local-pkg@0.5.0: - resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} + local-pkg@0.5.1: + resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} engines: {node: '>=14'} locate-path@5.0.0: @@ -1957,8 +1970,8 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - magic-string@0.30.12: - resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==} + magic-string@0.30.14: + resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==} magicast@0.3.5: resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} @@ -1967,8 +1980,8 @@ packages: resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==} engines: {node: '>=16'} - markdown-table@3.0.3: - resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} + markdown-table@3.0.4: + resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} mdast-util-definitions@6.0.0: resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==} @@ -1982,6 +1995,9 @@ packages: mdast-util-from-markdown@2.0.1: resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==} + mdast-util-from-markdown@2.0.2: + resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} + mdast-util-gfm-autolink-literal@2.0.1: resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} @@ -2018,8 +2034,8 @@ packages: mdast-util-to-hast@13.2.0: resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} - mdast-util-to-markdown@2.1.0: - resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} mdast-util-to-string@4.0.0: resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} @@ -2037,6 +2053,9 @@ packages: micromark-core-commonmark@2.0.1: resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==} + micromark-core-commonmark@2.0.2: + resolution: {integrity: sha512-FKjQKbxd1cibWMM1P9N+H8TwlgGgSkWZMmfuVucLCHaYqeSvJ0hFeHsIa65pA2nYbes0f8LDHPMrd9X7Ujxg9w==} + micromark-extension-directive@3.0.1: resolution: {integrity: sha512-VGV2uxUzhEZmaP7NSFo2vtq7M2nUD+WfmYQD+d8i/1nHbzE+rMy9uzTvUybBbNiVbrhOZibg3gbyoARGqgDWyg==} @@ -2079,69 +2098,123 @@ packages: micromark-factory-destination@2.0.0: resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} + micromark-factory-label@2.0.0: resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} + micromark-factory-mdx-expression@2.0.2: resolution: {integrity: sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==} micromark-factory-space@2.0.0: resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} + micromark-factory-title@2.0.0: resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} + micromark-factory-whitespace@2.0.0: resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} + micromark-util-character@2.1.0: resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} + micromark-util-chunked@2.0.0: resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} - micromark-util-classify-character@2.0.0: - resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} + + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} micromark-util-combine-extensions@2.0.0: resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} + micromark-util-decode-numeric-character-reference@2.0.1: resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} - micromark-util-decode-string@2.0.0: - resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} + + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} micromark-util-encode@2.0.0: resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} + micromark-util-events-to-acorn@2.0.2: resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==} micromark-util-html-tag-name@2.0.0: resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} + micromark-util-normalize-identifier@2.0.0: resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} + micromark-util-resolve-all@2.0.0: resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} + micromark-util-sanitize-uri@2.0.0: resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} + micromark-util-subtokenize@2.0.1: resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==} + micromark-util-subtokenize@2.0.3: + resolution: {integrity: sha512-VXJJuNxYWSoYL6AJ6OQECCFGhIU2GGHMw8tahogePBrjkG8aCCas3ibkp7RnVOSTClg2is05/R7maAhF1XyQMg==} + micromark-util-symbol@2.0.0: resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} + micromark-util-types@2.0.0: resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} + micromark-util-types@2.0.1: + resolution: {integrity: sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==} + micromark@4.0.0: resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} + micromark@4.0.1: + resolution: {integrity: sha512-eBPdkcoCNvYcxQOAKAlceo5SNdzZWfF+FcSupREAzdAh9rRmE239CEQAiTwIgblwnoM8zzj35sZ5ZwvSEOF6Kw==} + micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -2193,16 +2266,13 @@ packages: engines: {node: '>=10'} hasBin: true - mlly@1.7.1: - resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==} + mlly@1.7.3: + resolution: {integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==} mrmime@2.0.0: resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} engines: {node: '>=10'} - ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -2212,8 +2282,8 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true @@ -2245,9 +2315,6 @@ packages: resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} engines: {node: '>=0.10.0'} - not@0.1.0: - resolution: {integrity: sha512-5PDmaAsVfnWUgTUbJ3ERwn7u79Z0dYxN9ErxCpVJJqe2RK0PJ3z+iFUxuqjwtlDDegXvtWoxD/3Fzxox7tFGWA==} - nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} @@ -2262,8 +2329,8 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - oniguruma-to-js@0.4.3: - resolution: {integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==} + oniguruma-to-es@0.7.0: + resolution: {integrity: sha512-HRaRh09cE0gRS3+wi2zxekB+I5L8C/gN60S+vb11eADHUaB/q4u8wGGOX3GvwvitG8ixaeycZfeoyruKQzUgNg==} p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} @@ -2281,8 +2348,8 @@ packages: resolution: {integrity: sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==} engines: {node: '>=18'} - p-timeout@6.1.2: - resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==} + p-timeout@6.1.3: + resolution: {integrity: sha512-UJUyfKbwvr/uZSV6btANfb+0t/mOhKV/KXcCUTp8FcQI+v/0d+wXqH4htrW0E4rR6WiEO/EPvUFiV9D5OI4vlw==} engines: {node: '>=14.16'} p-try@2.2.0: @@ -2292,11 +2359,11 @@ packages: package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - package-manager-detector@0.1.2: - resolution: {integrity: sha512-iePyefLTOm2gEzbaZKSW+eBMjg+UYsQvUKxmvGXAQ987K16efBg10MxIjZs08iyX+DY2/owKY9DIdu193kX33w==} + package-manager-detector@0.2.7: + resolution: {integrity: sha512-g4+387DXDKlZzHkP+9FLt8yKj8+/3tOkPv7DVTJGGRm00RkEWgqbFstX1mXJ4M0VDYhUqsTOiISqNOJnhAu3PQ==} - pagefind@1.1.1: - resolution: {integrity: sha512-U2YR0dQN5B2fbIXrLtt/UXNS0yWSSYfePaad1KcBPTi0p+zRtsVjwmoPaMQgTks5DnHNbmDxyJUL5TGaLljK3A==} + pagefind@1.2.0: + resolution: {integrity: sha512-sFVv5/x73qCp9KlLHv8/uWDv7rG1tsWcG9MuXc5YTrXIrb8c1Gshm9oc5rMLXNZILXUWai8WczqaK4jjroEzng==} hasBin: true pako@0.2.9: @@ -2311,14 +2378,14 @@ packages: parse-latin@7.0.0: resolution: {integrity: sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==} - parse5-htmlparser2-tree-adapter@7.0.0: - resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} + parse5-htmlparser2-tree-adapter@7.1.0: + resolution: {integrity: sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==} parse5-parser-stream@7.1.2: resolution: {integrity: sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==} - parse5@7.1.2: - resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + parse5@7.2.1: + resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} @@ -2344,19 +2411,20 @@ packages: pend@1.2.0: resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} - periscopic@3.1.0: - resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} - picocolors@1.0.1: resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} - picocolors@1.1.0: - resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + pify@2.3.0: resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} engines: {node: '>=0.10.0'} @@ -2373,8 +2441,8 @@ packages: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} - pkg-types@1.1.3: - resolution: {integrity: sha512-+JrgthZG6m3ckicaOB74TwQ+tBWsFl3qVQg7mN8ulwSOElJ7gBhKzj2VkCPnZ4NlF6kEquYU+RIYNVAvzd54UA==} + pkg-types@1.2.1: + resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} postcss-calc@10.0.2: resolution: {integrity: sha512-DT/Wwm6fCKgpYVI7ZEWuPJ4az8hiEHtCUeYjZXqU7Ou4QqYh1Df2yCQ7Ca6N7xqKPFkxN3fhf+u9KSoOCJNAjg==} @@ -2579,8 +2647,8 @@ packages: postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.4.47: - resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} + postcss@8.4.49: + resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} engines: {node: ^10 || ^12 || >=14} prebuild-install@7.1.2: @@ -2596,8 +2664,8 @@ packages: resolution: {integrity: sha512-RiBETaaP9veVstE4vUwSIcdATj6dKmXljouXc/DDNwBSPTp8FRkLGDSGFClKsAFeeg+13SB0Z1JZvbD76bigJw==} engines: {node: ^14.15.0 || >=16.0.0} - prettier-plugin-tailwindcss@0.6.8: - resolution: {integrity: sha512-dGu3kdm7SXPkiW4nzeWKCl3uoImdd5CTZEJGxyypEPL37Wj0HT2pLqjrvSei1nTeuQfO4PUfjeW5cTUNRLZ4sA==} + prettier-plugin-tailwindcss@0.6.9: + resolution: {integrity: sha512-r0i3uhaZAXYP0At5xGfJH876W3HHGHDp+LCRUJrs57PBeQ6mYHMwr25KH8NPX44F2yGTvdnH7OqCshlQx183Eg==} engines: {node: '>=14.21.3'} peerDependencies: '@ianvs/prettier-plugin-sort-imports': '*' @@ -2656,8 +2724,8 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - prettier@3.3.3: - resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} + prettier@3.4.2: + resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} engines: {node: '>=14'} hasBin: true @@ -2678,6 +2746,9 @@ packages: pump@3.0.0: resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} + pump@3.0.2: + resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} + queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -2706,11 +2777,29 @@ packages: reading-time@1.5.0: resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==} - regex@4.3.3: - resolution: {integrity: sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==} + recma-build-jsx@1.0.0: + resolution: {integrity: sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==} + + recma-jsx@1.0.0: + resolution: {integrity: sha512-5vwkv65qWwYxg+Atz95acp8DMu1JDSqdGkA2Of1j6rCreyFUE/gp15fC8MnGEuG1W68UKjM6x6+YTWIh7hZM/Q==} - rehype-expressive-code@0.37.0: - resolution: {integrity: sha512-5dUjqNkhw0gB1pkkjc11jWdvQFGMYcrzCrUGx7p8TiHc5IwbrzBWXXADNEP2KrtAlUIy5yRmkkgGD5az1owq3Q==} + recma-parse@1.0.0: + resolution: {integrity: sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==} + + recma-stringify@1.0.0: + resolution: {integrity: sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==} + + regex-recursion@4.3.0: + resolution: {integrity: sha512-5LcLnizwjcQ2ALfOj95MjcatxyqF5RPySx9yT+PaXu3Gox2vyAtLDjHB8NTJLtMGkvyau6nI3CfpwFCjPUIs/A==} + + regex-utilities@2.3.0: + resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==} + + regex@5.0.2: + resolution: {integrity: sha512-/pczGbKIQgfTMRV0XjABvc5RzLqQmwqxLHdQao2RTXPk+pmTXB2P0IaUHYdYyk412YLwUIkaeMd5T+RzVgTqnQ==} + + rehype-expressive-code@0.38.3: + resolution: {integrity: sha512-RYSSDkMBikoTbycZPkcWp6ELneANT4eTpND1DSRJ6nI2eVFUwTBDCvE2vO6jOOTaavwnPiydi4i/87NRyjpdOA==} rehype-external-links@3.0.0: resolution: {integrity: sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==} @@ -2721,9 +2810,15 @@ packages: rehype-raw@7.0.0: resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} + rehype-recma@1.0.0: + resolution: {integrity: sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==} + rehype-stringify@10.0.1: resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==} + rehype-unwrap-images@1.0.0: + resolution: {integrity: sha512-wzW5Mk9IlVF2UwXC5NtIZsx1aHYbV8+bLWjJnlZaaamz5QU52RppWtq1uEZJqGo8d9Y4RuDqidB6r9RFpKugIg==} + rehype@13.0.2: resolution: {integrity: sha512-j31mdaRFrwFRUIlxGeuPXXKWQxet52RBQRvCmzl5eCefn/KGbomK5GMHNMsOJf55fgo3qw5tST5neDuarDYR2A==} @@ -2733,8 +2828,8 @@ packages: remark-gfm@4.0.0: resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} - remark-mdx@3.0.1: - resolution: {integrity: sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==} + remark-mdx@3.1.0: + resolution: {integrity: sha512-Ngl/H3YXyBV9RcRNdlYsZujAmhsxwzxpDzpDEhFBVAGthS4GDgnctpDjgFl/ULx5UEDzqtW1cyBSNKqYYrqLBA==} remark-parse@11.0.0: resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} @@ -2749,9 +2844,6 @@ packages: remark-stringify@11.0.0: resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} - remark-unwrap-images@4.0.0: - resolution: {integrity: sha512-Ilr5ZhrhZSvnjemy1rRuxlTC0I/39YyWDRiE9d5vF079APcwdYYzwcZL8RGehlCtQCiik8hWMyo4Xhz2Fq0JhA==} - request-light@0.5.8: resolution: {integrity: sha512-3Zjgh+8b5fhRJBQZoy+zbVKpAQGLyka0MPgW3zruTF4dFFJ8Fqcfu9YsAvi/rvdcaTeWG3MkbZv4WKxAn/84Lg==} @@ -2773,8 +2865,8 @@ packages: retext-latin@4.0.0: resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==} - retext-smartypants@6.1.1: - resolution: {integrity: sha512-onsHf34i/GzgElJgtT1K2V+31yEhWs7NJboKNxXJcmVMMPxLpgxZ9iADoMdydd6j/bHic5F/aNq0CGqElEtu2g==} + retext-smartypants@6.2.0: + resolution: {integrity: sha512-kk0jOU7+zGv//kfjXEBjdIryL1Acl4i9XNkHxtM7Tm5lFiCog576fjNC9hjoR7LTKQ0DsPWy09JummSsH1uqfQ==} retext-stringify@4.0.0: resolution: {integrity: sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==} @@ -2786,8 +2878,8 @@ packages: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.24.0: - resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==} + rollup@4.28.0: + resolution: {integrity: sha512-G9GOrmgWHBma4YfCcX8PjH0qhXSdH8B4HDE2o4/jaxj93S4DPCIDoLcXz99eWMji4hB29UFCEd7B2gwGJDR9cQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -2809,8 +2901,8 @@ packages: satori-html@0.3.2: resolution: {integrity: sha512-wjTh14iqADFKDK80e51/98MplTGfxz2RmIzh0GqShlf4a67+BooLywF17TvJPD6phO0Hxm7Mf1N5LtRYvdkYRA==} - satori@0.11.2: - resolution: {integrity: sha512-uEPLbx89BfwzJroECvnTg8IQ+XxqkMl0apvB41mm8fmc6brzHA8bu9Etu43UoUF4ECnACPiDDFz6PfYDG0S46Q==} + satori@0.12.0: + resolution: {integrity: sha512-e0e+qQyeFwEszujN7SpWpRtZgww7Nh8lSO3bUn2spHZ5JpqEl3zJ3P14/JlWruxEwdgREs35ZnavrPrWaRVFDg==} engines: {node: '>=16'} sax@1.4.1: @@ -2837,8 +2929,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@1.22.0: - resolution: {integrity: sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==} + shiki@1.24.0: + resolution: {integrity: sha512-qIneep7QRwxRd5oiHb8jaRzH15V/S8F3saCXOdjwRLgozZJr5x2yeBhQtqkO3FSzQDwYEFAYuifg4oHjpDghrg==} signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} @@ -2950,8 +3042,8 @@ packages: engines: {node: '>=14.0.0'} hasBin: true - tailwindcss@3.4.13: - resolution: {integrity: sha512-KqjHOJKogOUt5Bs752ykCeiwvi0fKVkr5oqsFNt/8px/tA8scFPIlkygsf6jXrfCqGHz7VflA6+yytWuM+XhFw==} + tailwindcss@3.4.16: + resolution: {integrity: sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==} engines: {node: '>=14.0.0'} hasBin: true @@ -2985,15 +3077,8 @@ packages: tiny-inflate@1.0.3: resolution: {integrity: sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==} - tinyexec@0.2.0: - resolution: {integrity: sha512-au8dwv4xKSDR+Fw52csDo3wcDztPdne2oM1o/7LFro4h6bdFmvyUAeAfX40pwDtzHgRFqz1XWaUqgKS2G83/ig==} - - tinyexec@0.3.0: - resolution: {integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==} - - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} + tinyexec@0.3.1: + resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==} to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} @@ -3024,8 +3109,8 @@ packages: tunnel-agent@0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - type-fest@4.26.1: - resolution: {integrity: sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==} + type-fest@4.30.0: + resolution: {integrity: sha512-G6zXWS1dLj6eagy6sVhOMQiLtJdxQBHIA9Z6HFUNLOlr6MFOgzV8wvmidtPONfPtEUv0uZsy77XJNzTAfwPDaA==} engines: {node: '>=16'} typesafe-path@0.2.2: @@ -3034,8 +3119,8 @@ packages: typescript-auto-import-cache@0.3.3: resolution: {integrity: sha512-ojEC7+Ci1ij9eE6hp8Jl9VUNnsEKzztktP5gtYNRMrTmfXVwA1PITYYAkpxCvvupdSYa/Re51B6KMcv1CTZEUA==} - typescript@5.6.2: - resolution: {integrity: sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==} + typescript@5.7.2: + resolution: {integrity: sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==} engines: {node: '>=14.17'} hasBin: true @@ -3045,11 +3130,17 @@ packages: ultrahtml@1.2.0: resolution: {integrity: sha512-vxZM2yNvajRmCj/SknRYGNXk2tqiy6kRNvZjJLaleG3zJbSh/aNkOqD1/CVzypw8tyHyhpzYuwQgMMhUB4ZVNQ==} + ultrahtml@1.5.3: + resolution: {integrity: sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==} + undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} - undici@6.19.8: - resolution: {integrity: sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==} + undici-types@6.20.0: + resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} + + undici@6.21.0: + resolution: {integrity: sha512-BUgJXc752Kou3oOIuU1i+yZZypyZRqNPW0vqoMPl8VaoalSfeR0D8/t4iAS3yirs79SSMTxTag+ZC86uswv+Cw==} engines: {node: '>=18.17'} unicode-trie@2.0.0: @@ -3119,22 +3210,27 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite@6.0.0-beta.2: - resolution: {integrity: sha512-TdrjEhCnVNjT3kjohFhVJQL9V3SguxMAphP2RW085QbE0Xc+lRvql9l5hTIr/mttO2jhivYXEP4xfaIRPjzqiw==} - engines: {node: ^18.0.0 || >=20.0.0} + vite@6.0.3: + resolution: {integrity: sha512-Cmuo5P0ENTN6HxLSo6IHsjCLn/81Vgrp81oaiFFMRa8gGDj5xEjIcEpf2ZymZtZR8oU0P2JX5WuUp/rlXcHkAw==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 + '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: '>=1.21.0' less: '*' lightningcss: ^1.21.0 sass: '*' sass-embedded: '*' stylus: '*' sugarss: '*' - terser: ^5.4.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 peerDependenciesMeta: '@types/node': optional: true + jiti: + optional: true less: optional: true lightningcss: @@ -3149,11 +3245,15 @@ packages: optional: true terser: optional: true + tsx: + optional: true + yaml: + optional: true - vitefu@1.0.3: - resolution: {integrity: sha512-iKKfOMBHob2WxEJbqbJjHAkmYgvFDPhuqrO82om83S8RLk+17FtyMBfcyeH8GqD0ihShtkMW/zzJgiA51hCNCQ==} + vitefu@1.0.4: + resolution: {integrity: sha512-y6zEE3PQf6uu/Mt6DTJ9ih+kyJLr4XcSgHR2zUkM8SWDhuixEJxfJ6CZGMHh1Ec3vPLoEA0IHU5oWzVqw8ulow==} peerDependencies: - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0-beta.0 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 peerDependenciesMeta: vite: optional: true @@ -3310,8 +3410,8 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - xxhash-wasm@1.0.2: - resolution: {integrity: sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==} + xxhash-wasm@1.1.0: + resolution: {integrity: sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA==} y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} @@ -3333,6 +3433,11 @@ packages: engines: {node: '>= 14'} hasBin: true + yaml@2.6.1: + resolution: {integrity: sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==} + engines: {node: '>= 14'} + hasBin: true + yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} @@ -3348,8 +3453,8 @@ packages: resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} engines: {node: '>=12.20'} - yocto-spinner@0.1.0: - resolution: {integrity: sha512-sBra0N4uhNn5UibnOz/HJxB1a0tzZ5zXbqnDe+tfRR3BGy+BmOrzrnQCZRJI7C++JiSZaPygPeNon4QCUmMQ4g==} + yocto-spinner@0.1.1: + resolution: {integrity: sha512-vb6yztJdmbX9BwiR2NlKim7roGM5xFFhiTO6UstNiKBnh8NT6uFNjpXYC6DWTnLgRRyHh2nDNEM8kLHSRLw4kg==} engines: {node: '>=18.19'} yoctocolors@2.1.1: @@ -3359,8 +3464,8 @@ packages: yoga-wasm-web@0.3.3: resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} - zod-to-json-schema@3.23.3: - resolution: {integrity: sha512-TYWChTxKQbRJp5ST22o/Irt9KC5nj7CdBKYB/AosCRdj/wxEMvv4NNaj9XVUHDOIp53ZxArGhnw5HMZziPFjog==} + zod-to-json-schema@3.23.5: + resolution: {integrity: sha512-5wlSS0bXfF/BrL4jPAbz9da5hDlDptdEppYfe+x4eIJ7jioqKG9uUxOwPzqof09u/XeVdrgFu29lZi+8XNDJtA==} peerDependencies: zod: ^3.23.3 @@ -3380,19 +3485,19 @@ snapshots: '@alloc/quick-lru@5.2.0': {} - '@antfu/install-pkg@0.4.0': + '@antfu/install-pkg@0.4.1': dependencies: - package-manager-detector: 0.1.2 - tinyexec: 0.2.0 + package-manager-detector: 0.2.7 + tinyexec: 0.3.1 '@antfu/utils@0.7.10': {} - '@astrojs/check@0.9.4(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2)': + '@astrojs/check@0.9.4(prettier-plugin-astro@0.14.1)(prettier@3.4.2)(typescript@5.7.2)': dependencies: - '@astrojs/language-server': 2.15.0(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2) + '@astrojs/language-server': 2.15.0(prettier-plugin-astro@0.14.1)(prettier@3.4.2)(typescript@5.7.2) chokidar: 4.0.1 kleur: 4.1.5 - typescript: 5.6.2 + typescript: 5.7.2 yargs: 17.7.2 transitivePeerDependencies: - prettier @@ -3402,14 +3507,14 @@ snapshots: '@astrojs/compiler@2.9.2': {} - '@astrojs/internal-helpers@0.4.1': {} + '@astrojs/internal-helpers@0.4.2': {} - '@astrojs/language-server@2.15.0(prettier-plugin-astro@0.14.1)(prettier@3.3.3)(typescript@5.6.2)': + '@astrojs/language-server@2.15.0(prettier-plugin-astro@0.14.1)(prettier@3.4.2)(typescript@5.7.2)': dependencies: '@astrojs/compiler': 2.10.3 '@astrojs/yaml2ts': 0.2.1 '@jridgewell/sourcemap-codec': 1.5.0 - '@volar/kit': 2.4.6(typescript@5.6.2) + '@volar/kit': 2.4.6(typescript@5.7.2) '@volar/language-core': 2.4.6 '@volar/language-server': 2.4.6 '@volar/language-service': 2.4.6 @@ -3418,21 +3523,21 @@ snapshots: volar-service-css: 0.0.61(@volar/language-service@2.4.6) volar-service-emmet: 0.0.61(@volar/language-service@2.4.6) volar-service-html: 0.0.61(@volar/language-service@2.4.6) - volar-service-prettier: 0.0.61(@volar/language-service@2.4.6)(prettier@3.3.3) + volar-service-prettier: 0.0.61(@volar/language-service@2.4.6)(prettier@3.4.2) volar-service-typescript: 0.0.61(@volar/language-service@2.4.6) volar-service-typescript-twoslash-queries: 0.0.61(@volar/language-service@2.4.6) volar-service-yaml: 0.0.61(@volar/language-service@2.4.6) vscode-html-languageservice: 5.3.1 vscode-uri: 3.0.8 optionalDependencies: - prettier: 3.3.3 + prettier: 3.4.2 prettier-plugin-astro: 0.14.1 transitivePeerDependencies: - typescript - '@astrojs/markdown-remark@6.0.0-beta.2': + '@astrojs/markdown-remark@6.0.0': dependencies: - '@astrojs/prism': 3.1.0 + '@astrojs/prism': 3.2.0 github-slugger: 2.0.0 hast-util-from-html: 2.0.3 hast-util-to-text: 4.0.2 @@ -3445,7 +3550,7 @@ snapshots: remark-parse: 11.0.0 remark-rehype: 11.1.1 remark-smartypants: 3.0.2 - shiki: 1.22.0 + shiki: 1.24.0 unified: 11.0.5 unist-util-remove-position: 5.0.0 unist-util-visit: 5.0.0 @@ -3454,12 +3559,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/mdx@4.0.0-beta.2(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))': + '@astrojs/mdx@4.0.1(astro@5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1))': dependencies: - '@astrojs/markdown-remark': 6.0.0-beta.2 - '@mdx-js/mdx': 3.0.1 - acorn: 8.12.1 - astro: 5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) + '@astrojs/markdown-remark': 6.0.0 + '@mdx-js/mdx': 3.1.0(acorn@8.14.0) + acorn: 8.14.0 + astro: 5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1) es-module-lexer: 1.5.4 estree-util-visit: 2.0.0 hast-util-to-html: 9.0.3 @@ -3473,11 +3578,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/prism@3.1.0': + '@astrojs/prism@3.2.0': dependencies: prismjs: 1.29.0 - '@astrojs/rss@4.0.9': + '@astrojs/rss@4.0.10': dependencies: fast-xml-parser: 4.5.0 kleur: 4.1.5 @@ -3488,19 +3593,19 @@ snapshots: stream-replace-string: 2.0.0 zod: 3.23.8 - '@astrojs/tailwind@5.1.2(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2))(tailwindcss@3.4.13)': + '@astrojs/tailwind@5.1.3(astro@5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1))(tailwindcss@3.4.16)': dependencies: - astro: 5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) - autoprefixer: 10.4.20(postcss@8.4.47) - postcss: 8.4.47 - postcss-load-config: 4.0.2(postcss@8.4.47) - tailwindcss: 3.4.13 + astro: 5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1) + autoprefixer: 10.4.20(postcss@8.4.49) + postcss: 8.4.49 + postcss-load-config: 4.0.2(postcss@8.4.49) + tailwindcss: 3.4.16 transitivePeerDependencies: - ts-node - '@astrojs/telemetry@3.1.0': + '@astrojs/telemetry@3.2.0': dependencies: - ci-info: 4.0.0 + ci-info: 4.1.0 debug: 4.3.7 dlv: 1.1.3 dset: 3.1.4 @@ -3514,53 +3619,52 @@ snapshots: dependencies: yaml: 2.5.1 - '@babel/helper-string-parser@7.25.7': {} + '@babel/helper-string-parser@7.25.9': {} - '@babel/helper-validator-identifier@7.25.7': {} + '@babel/helper-validator-identifier@7.25.9': {} - '@babel/parser@7.25.7': + '@babel/parser@7.26.3': dependencies: - '@babel/types': 7.25.7 + '@babel/types': 7.26.3 - '@babel/types@7.25.7': + '@babel/types@7.26.3': dependencies: - '@babel/helper-string-parser': 7.25.7 - '@babel/helper-validator-identifier': 7.25.7 - to-fast-properties: 2.0.0 + '@babel/helper-string-parser': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 - '@biomejs/biome@1.9.3': + '@biomejs/biome@1.9.4': optionalDependencies: - '@biomejs/cli-darwin-arm64': 1.9.3 - '@biomejs/cli-darwin-x64': 1.9.3 - '@biomejs/cli-linux-arm64': 1.9.3 - '@biomejs/cli-linux-arm64-musl': 1.9.3 - '@biomejs/cli-linux-x64': 1.9.3 - '@biomejs/cli-linux-x64-musl': 1.9.3 - '@biomejs/cli-win32-arm64': 1.9.3 - '@biomejs/cli-win32-x64': 1.9.3 - - '@biomejs/cli-darwin-arm64@1.9.3': + '@biomejs/cli-darwin-arm64': 1.9.4 + '@biomejs/cli-darwin-x64': 1.9.4 + '@biomejs/cli-linux-arm64': 1.9.4 + '@biomejs/cli-linux-arm64-musl': 1.9.4 + '@biomejs/cli-linux-x64': 1.9.4 + '@biomejs/cli-linux-x64-musl': 1.9.4 + '@biomejs/cli-win32-arm64': 1.9.4 + '@biomejs/cli-win32-x64': 1.9.4 + + '@biomejs/cli-darwin-arm64@1.9.4': optional: true - '@biomejs/cli-darwin-x64@1.9.3': + '@biomejs/cli-darwin-x64@1.9.4': optional: true - '@biomejs/cli-linux-arm64-musl@1.9.3': + '@biomejs/cli-linux-arm64-musl@1.9.4': optional: true - '@biomejs/cli-linux-arm64@1.9.3': + '@biomejs/cli-linux-arm64@1.9.4': optional: true - '@biomejs/cli-linux-x64-musl@1.9.3': + '@biomejs/cli-linux-x64-musl@1.9.4': optional: true - '@biomejs/cli-linux-x64@1.9.3': + '@biomejs/cli-linux-x64@1.9.4': optional: true - '@biomejs/cli-win32-arm64@1.9.3': + '@biomejs/cli-win32-arm64@1.9.4': optional: true - '@biomejs/cli-win32-x64@1.9.3': + '@biomejs/cli-win32-x64@1.9.4': optional: true '@ctrl/tinycolor@4.1.0': {} @@ -3734,45 +3838,45 @@ snapshots: '@esbuild/win32-x64@0.24.0': optional: true - '@expressive-code/core@0.37.0': + '@expressive-code/core@0.38.3': dependencies: '@ctrl/tinycolor': 4.1.0 - hast-util-select: 6.0.2 + hast-util-select: 6.0.3 hast-util-to-html: 9.0.3 hast-util-to-text: 4.0.2 hastscript: 9.0.0 - postcss: 8.4.47 - postcss-nested: 6.2.0(postcss@8.4.47) + postcss: 8.4.49 + postcss-nested: 6.2.0(postcss@8.4.49) unist-util-visit: 5.0.0 unist-util-visit-parents: 6.0.1 - '@expressive-code/plugin-frames@0.37.0': + '@expressive-code/plugin-frames@0.38.3': dependencies: - '@expressive-code/core': 0.37.0 + '@expressive-code/core': 0.38.3 - '@expressive-code/plugin-shiki@0.37.0': + '@expressive-code/plugin-shiki@0.38.3': dependencies: - '@expressive-code/core': 0.37.0 - shiki: 1.22.0 + '@expressive-code/core': 0.38.3 + shiki: 1.24.0 - '@expressive-code/plugin-text-markers@0.37.0': + '@expressive-code/plugin-text-markers@0.38.3': dependencies: - '@expressive-code/core': 0.37.0 + '@expressive-code/core': 0.38.3 - '@iconify-json/mdi@1.2.0': + '@iconify-json/mdi@1.2.1': dependencies: '@iconify/types': 2.0.0 - '@iconify/tools@4.0.5': + '@iconify/tools@4.0.7': dependencies: '@iconify/types': 2.0.0 - '@iconify/utils': 2.1.31 + '@iconify/utils': 2.1.33 '@types/tar': 6.1.13 - axios: 1.7.4 + axios: 1.7.9 cheerio: 1.0.0 domhandler: 5.0.3 extract-zip: 2.0.1 - local-pkg: 0.5.0 + local-pkg: 0.5.1 pathe: 1.1.2 svgo: 3.3.2 tar: 6.2.1 @@ -3782,15 +3886,15 @@ snapshots: '@iconify/types@2.0.0': {} - '@iconify/utils@2.1.31': + '@iconify/utils@2.1.33': dependencies: - '@antfu/install-pkg': 0.4.0 + '@antfu/install-pkg': 0.4.1 '@antfu/utils': 0.7.10 '@iconify/types': 2.0.0 - debug: 4.3.6 + debug: 4.3.7 kolorist: 1.8.0 - local-pkg: 0.5.0 - mlly: 1.7.1 + local-pkg: 0.5.1 + mlly: 1.7.3 transitivePeerDependencies: - supports-color @@ -3895,7 +3999,7 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@mdx-js/mdx@3.0.1': + '@mdx-js/mdx@3.1.0(acorn@8.14.0)': dependencies: '@types/estree': 1.0.6 '@types/estree-jsx': 1.0.5 @@ -3903,15 +4007,16 @@ snapshots: '@types/mdx': 2.0.13 collapse-white-space: 2.1.0 devlop: 1.1.0 - estree-util-build-jsx: 3.0.1 estree-util-is-identifier-name: 3.0.0 - estree-util-to-js: 2.0.0 + estree-util-scope: 1.0.0 estree-walker: 3.0.3 - hast-util-to-estree: 3.1.0 - hast-util-to-jsx-runtime: 2.3.0 + hast-util-to-jsx-runtime: 2.3.2 markdown-extensions: 2.0.0 - periscopic: 3.1.0 - remark-mdx: 3.0.1 + recma-build-jsx: 1.0.0 + recma-jsx: 1.0.0(acorn@8.14.0) + recma-stringify: 1.0.0 + rehype-recma: 1.0.0 + remark-mdx: 3.1.0 remark-parse: 11.0.0 remark-rehype: 11.1.1 source-map: 0.7.4 @@ -3921,6 +4026,7 @@ snapshots: unist-util-visit: 5.0.0 vfile: 6.0.3 transitivePeerDependencies: + - acorn - supports-color '@nodelib/fs.scandir@2.1.5': @@ -3937,21 +4043,21 @@ snapshots: '@oslojs/encoding@1.1.0': {} - '@pagefind/darwin-arm64@1.1.1': + '@pagefind/darwin-arm64@1.2.0': optional: true - '@pagefind/darwin-x64@1.1.1': + '@pagefind/darwin-x64@1.2.0': optional: true - '@pagefind/default-ui@1.1.1': {} + '@pagefind/default-ui@1.2.0': {} - '@pagefind/linux-arm64@1.1.1': + '@pagefind/linux-arm64@1.2.0': optional: true - '@pagefind/linux-x64@1.1.1': + '@pagefind/linux-x64@1.2.0': optional: true - '@pagefind/windows-x64@1.1.1': + '@pagefind/windows-x64@1.2.0': optional: true '@pkgjs/parseargs@0.11.0': @@ -4008,83 +4114,89 @@ snapshots: '@resvg/resvg-js-win32-ia32-msvc': 2.6.2 '@resvg/resvg-js-win32-x64-msvc': 2.6.2 - '@rollup/pluginutils@5.1.2(rollup@4.24.0)': + '@rollup/pluginutils@5.1.3(rollup@4.28.0)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 - picomatch: 2.3.1 + picomatch: 4.0.2 optionalDependencies: - rollup: 4.24.0 + rollup: 4.28.0 + + '@rollup/rollup-android-arm-eabi@4.28.0': + optional: true + + '@rollup/rollup-android-arm64@4.28.0': + optional: true - '@rollup/rollup-android-arm-eabi@4.24.0': + '@rollup/rollup-darwin-arm64@4.28.0': optional: true - '@rollup/rollup-android-arm64@4.24.0': + '@rollup/rollup-darwin-x64@4.28.0': optional: true - '@rollup/rollup-darwin-arm64@4.24.0': + '@rollup/rollup-freebsd-arm64@4.28.0': optional: true - '@rollup/rollup-darwin-x64@4.24.0': + '@rollup/rollup-freebsd-x64@4.28.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.24.0': + '@rollup/rollup-linux-arm-gnueabihf@4.28.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.24.0': + '@rollup/rollup-linux-arm-musleabihf@4.28.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.24.0': + '@rollup/rollup-linux-arm64-gnu@4.28.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.24.0': + '@rollup/rollup-linux-arm64-musl@4.28.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': + '@rollup/rollup-linux-powerpc64le-gnu@4.28.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.24.0': + '@rollup/rollup-linux-riscv64-gnu@4.28.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.24.0': + '@rollup/rollup-linux-s390x-gnu@4.28.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.24.0': + '@rollup/rollup-linux-x64-gnu@4.28.0': optional: true - '@rollup/rollup-linux-x64-musl@4.24.0': + '@rollup/rollup-linux-x64-musl@4.28.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.24.0': + '@rollup/rollup-win32-arm64-msvc@4.28.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.24.0': + '@rollup/rollup-win32-ia32-msvc@4.28.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.24.0': + '@rollup/rollup-win32-x64-msvc@4.28.0': optional: true - '@shikijs/core@1.22.0': + '@shikijs/core@1.24.0': dependencies: - '@shikijs/engine-javascript': 1.22.0 - '@shikijs/engine-oniguruma': 1.22.0 - '@shikijs/types': 1.22.0 + '@shikijs/engine-javascript': 1.24.0 + '@shikijs/engine-oniguruma': 1.24.0 + '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 hast-util-to-html: 9.0.3 - '@shikijs/engine-javascript@1.22.0': + '@shikijs/engine-javascript@1.24.0': dependencies: - '@shikijs/types': 1.22.0 + '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 - oniguruma-to-js: 0.4.3 + oniguruma-to-es: 0.7.0 - '@shikijs/engine-oniguruma@1.22.0': + '@shikijs/engine-oniguruma@1.24.0': dependencies: - '@shikijs/types': 1.22.0 + '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 - '@shikijs/types@1.22.0': + '@shikijs/types@1.24.0': dependencies: '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 @@ -4096,13 +4208,13 @@ snapshots: fflate: 0.7.4 string.prototype.codepointat: 0.2.1 - '@tailwindcss/typography@0.5.15(tailwindcss@3.4.13)': + '@tailwindcss/typography@0.5.15(tailwindcss@3.4.16)': dependencies: lodash.castarray: 4.4.0 lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 postcss-selector-parser: 6.0.10 - tailwindcss: 3.4.13 + tailwindcss: 3.4.16 '@trysound/sax@0.2.0': {} @@ -4140,6 +4252,10 @@ snapshots: '@types/node@17.0.45': {} + '@types/node@22.10.1': + dependencies: + undici-types: 6.20.0 + '@types/node@22.7.5': dependencies: undici-types: 6.19.8 @@ -4150,7 +4266,7 @@ snapshots: '@types/tar@6.1.13': dependencies: - '@types/node': 22.7.5 + '@types/node': 22.10.1 minipass: 4.2.8 '@types/unist@2.0.11': {} @@ -4159,17 +4275,17 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 22.7.5 + '@types/node': 22.10.1 optional: true '@ungap/structured-clone@1.2.0': {} - '@volar/kit@2.4.6(typescript@5.6.2)': + '@volar/kit@2.4.6(typescript@5.7.2)': dependencies: '@volar/language-service': 2.4.6 '@volar/typescript': 2.4.6 typesafe-path: 0.2.2 - typescript: 5.6.2 + typescript: 5.7.2 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 @@ -4214,11 +4330,11 @@ snapshots: '@vscode/l10n@0.0.18': {} - acorn-jsx@5.3.2(acorn@8.12.1): + acorn-jsx@5.3.2(acorn@8.14.0): dependencies: - acorn: 8.12.1 + acorn: 8.14.0 - acorn@8.12.1: {} + acorn@8.14.0: {} ajv@8.17.1: dependencies: @@ -4262,16 +4378,16 @@ snapshots: astring@1.9.0: {} - astro-expressive-code@0.37.0(astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2)): + astro-expressive-code@0.38.3(astro@5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1)): dependencies: - astro: 5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2) - rehype-expressive-code: 0.37.0 + astro: 5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1) + rehype-expressive-code: 0.38.3 - astro-icon@1.1.1: + astro-icon@1.1.4: dependencies: - '@iconify/tools': 4.0.5 + '@iconify/tools': 4.0.7 '@iconify/types': 2.0.0 - '@iconify/utils': 2.1.31 + '@iconify/utils': 2.1.33 transitivePeerDependencies: - debug - supports-color @@ -4287,20 +4403,20 @@ snapshots: valid-filename: 4.0.0 zod: 3.23.8 - astro@5.0.0-beta.5(@types/node@22.7.5)(rollup@4.24.0)(typescript@5.6.2): + astro@5.0.3(@types/node@22.10.1)(jiti@1.21.6)(rollup@4.28.0)(typescript@5.7.2)(yaml@2.6.1): dependencies: '@astrojs/compiler': 2.10.3 - '@astrojs/internal-helpers': 0.4.1 - '@astrojs/markdown-remark': 6.0.0-beta.2 - '@astrojs/telemetry': 3.1.0 + '@astrojs/internal-helpers': 0.4.2 + '@astrojs/markdown-remark': 6.0.0 + '@astrojs/telemetry': 3.2.0 '@oslojs/encoding': 1.1.0 - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) + '@rollup/pluginutils': 5.1.3(rollup@4.28.0) '@types/cookie': 0.6.0 - acorn: 8.12.1 + acorn: 8.14.0 aria-query: 5.3.2 axobject-query: 4.1.0 boxen: 8.0.1 - ci-info: 4.0.0 + ci-info: 4.1.0 clsx: 2.1.1 common-ancestor-path: 1.0.1 cookie: 0.7.2 @@ -4321,7 +4437,7 @@ snapshots: http-cache-semantics: 4.1.1 js-yaml: 4.1.0 kleur: 4.1.5 - magic-string: 0.30.12 + magic-string: 0.30.14 magicast: 0.3.5 micromatch: 4.0.8 mrmime: 2.0.0 @@ -4332,24 +4448,26 @@ snapshots: prompts: 2.4.2 rehype: 13.0.2 semver: 7.6.3 - shiki: 1.22.0 - tinyexec: 0.3.0 - tsconfck: 3.1.4(typescript@5.6.2) + shiki: 1.24.0 + tinyexec: 0.3.1 + tsconfck: 3.1.4(typescript@5.7.2) + ultrahtml: 1.5.3 unist-util-visit: 5.0.0 vfile: 6.0.3 - vite: 6.0.0-beta.2(@types/node@22.7.5) - vitefu: 1.0.3(vite@6.0.0-beta.2(@types/node@22.7.5)) + vite: 6.0.3(@types/node@22.10.1)(jiti@1.21.6)(yaml@2.6.1) + vitefu: 1.0.4(vite@6.0.3(@types/node@22.10.1)(jiti@1.21.6)(yaml@2.6.1)) which-pm: 3.0.0 - xxhash-wasm: 1.0.2 + xxhash-wasm: 1.1.0 yargs-parser: 21.1.1 - yocto-spinner: 0.1.0 + yocto-spinner: 0.1.1 zod: 3.23.8 - zod-to-json-schema: 3.23.3(zod@3.23.8) - zod-to-ts: 1.2.0(typescript@5.6.2)(zod@3.23.8) + zod-to-json-schema: 3.23.5(zod@3.23.8) + zod-to-ts: 1.2.0(typescript@5.7.2)(zod@3.23.8) optionalDependencies: sharp: 0.33.5 transitivePeerDependencies: - '@types/node' + - jiti - less - lightningcss - rollup @@ -4359,24 +4477,26 @@ snapshots: - sugarss - supports-color - terser + - tsx - typescript + - yaml asynckit@0.4.0: {} - autoprefixer@10.4.20(postcss@8.4.47): + autoprefixer@10.4.20(postcss@8.4.49): dependencies: browserslist: 4.23.3 caniuse-lite: 1.0.30001651 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.1 - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - axios@1.7.4: + axios@1.7.9: dependencies: - follow-redirects: 1.15.6 - form-data: 4.0.0 + follow-redirects: 1.15.9 + form-data: 4.0.1 proxy-from-env: 1.1.0 transitivePeerDependencies: - debug @@ -4437,7 +4557,7 @@ snapshots: chalk: 5.3.0 cli-boxes: 3.0.0 string-width: 7.2.0 - type-fest: 4.26.1 + type-fest: 4.30.0 widest-line: 5.0.0 wrap-ansi: 9.0.0 @@ -4516,10 +4636,10 @@ snapshots: domutils: 3.1.0 encoding-sniffer: 0.2.0 htmlparser2: 9.1.0 - parse5: 7.1.2 - parse5-htmlparser2-tree-adapter: 7.0.0 + parse5: 7.2.1 + parse5-htmlparser2-tree-adapter: 7.1.0 parse5-parser-stream: 7.1.2 - undici: 6.19.8 + undici: 6.21.0 whatwg-mimetype: 4.0.0 chokidar@3.6.0: @@ -4542,7 +4662,7 @@ snapshots: chownr@2.0.0: {} - ci-info@4.0.0: {} + ci-info@4.1.0: {} cli-boxes@3.0.0: {} @@ -4586,11 +4706,11 @@ snapshots: common-ancestor-path@1.0.1: {} - confbox@0.1.7: {} + confbox@0.1.8: {} cookie@0.7.2: {} - cross-spawn@7.0.3: + cross-spawn@7.0.6: dependencies: path-key: 3.1.1 shebang-command: 2.0.0 @@ -4602,9 +4722,9 @@ snapshots: css-color-keywords@1.0.0: {} - css-declaration-sorter@7.2.0(postcss@8.4.47): + css-declaration-sorter@7.2.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 css-gradient-parser@0.0.16: {} @@ -4638,58 +4758,54 @@ snapshots: cssesc@3.0.0: {} - cssnano-preset-default@7.0.6(postcss@8.4.47): + cssnano-preset-default@7.0.6(postcss@8.4.49): dependencies: browserslist: 4.24.0 - css-declaration-sorter: 7.2.0(postcss@8.4.47) - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 - postcss-calc: 10.0.2(postcss@8.4.47) - postcss-colormin: 7.0.2(postcss@8.4.47) - postcss-convert-values: 7.0.4(postcss@8.4.47) - postcss-discard-comments: 7.0.3(postcss@8.4.47) - postcss-discard-duplicates: 7.0.1(postcss@8.4.47) - postcss-discard-empty: 7.0.0(postcss@8.4.47) - postcss-discard-overridden: 7.0.0(postcss@8.4.47) - postcss-merge-longhand: 7.0.4(postcss@8.4.47) - postcss-merge-rules: 7.0.4(postcss@8.4.47) - postcss-minify-font-values: 7.0.0(postcss@8.4.47) - postcss-minify-gradients: 7.0.0(postcss@8.4.47) - postcss-minify-params: 7.0.2(postcss@8.4.47) - postcss-minify-selectors: 7.0.4(postcss@8.4.47) - postcss-normalize-charset: 7.0.0(postcss@8.4.47) - postcss-normalize-display-values: 7.0.0(postcss@8.4.47) - postcss-normalize-positions: 7.0.0(postcss@8.4.47) - postcss-normalize-repeat-style: 7.0.0(postcss@8.4.47) - postcss-normalize-string: 7.0.0(postcss@8.4.47) - postcss-normalize-timing-functions: 7.0.0(postcss@8.4.47) - postcss-normalize-unicode: 7.0.2(postcss@8.4.47) - postcss-normalize-url: 7.0.0(postcss@8.4.47) - postcss-normalize-whitespace: 7.0.0(postcss@8.4.47) - postcss-ordered-values: 7.0.1(postcss@8.4.47) - postcss-reduce-initial: 7.0.2(postcss@8.4.47) - postcss-reduce-transforms: 7.0.0(postcss@8.4.47) - postcss-svgo: 7.0.1(postcss@8.4.47) - postcss-unique-selectors: 7.0.3(postcss@8.4.47) - - cssnano-utils@5.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - - cssnano@7.0.6(postcss@8.4.47): - dependencies: - cssnano-preset-default: 7.0.6(postcss@8.4.47) + css-declaration-sorter: 7.2.0(postcss@8.4.49) + cssnano-utils: 5.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-calc: 10.0.2(postcss@8.4.49) + postcss-colormin: 7.0.2(postcss@8.4.49) + postcss-convert-values: 7.0.4(postcss@8.4.49) + postcss-discard-comments: 7.0.3(postcss@8.4.49) + postcss-discard-duplicates: 7.0.1(postcss@8.4.49) + postcss-discard-empty: 7.0.0(postcss@8.4.49) + postcss-discard-overridden: 7.0.0(postcss@8.4.49) + postcss-merge-longhand: 7.0.4(postcss@8.4.49) + postcss-merge-rules: 7.0.4(postcss@8.4.49) + postcss-minify-font-values: 7.0.0(postcss@8.4.49) + postcss-minify-gradients: 7.0.0(postcss@8.4.49) + postcss-minify-params: 7.0.2(postcss@8.4.49) + postcss-minify-selectors: 7.0.4(postcss@8.4.49) + postcss-normalize-charset: 7.0.0(postcss@8.4.49) + postcss-normalize-display-values: 7.0.0(postcss@8.4.49) + postcss-normalize-positions: 7.0.0(postcss@8.4.49) + postcss-normalize-repeat-style: 7.0.0(postcss@8.4.49) + postcss-normalize-string: 7.0.0(postcss@8.4.49) + postcss-normalize-timing-functions: 7.0.0(postcss@8.4.49) + postcss-normalize-unicode: 7.0.2(postcss@8.4.49) + postcss-normalize-url: 7.0.0(postcss@8.4.49) + postcss-normalize-whitespace: 7.0.0(postcss@8.4.49) + postcss-ordered-values: 7.0.1(postcss@8.4.49) + postcss-reduce-initial: 7.0.2(postcss@8.4.49) + postcss-reduce-transforms: 7.0.0(postcss@8.4.49) + postcss-svgo: 7.0.1(postcss@8.4.49) + postcss-unique-selectors: 7.0.3(postcss@8.4.49) + + cssnano-utils@5.0.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + + cssnano@7.0.6(postcss@8.4.49): + dependencies: + cssnano-preset-default: 7.0.6(postcss@8.4.49) lilconfig: 3.1.2 - postcss: 8.4.47 + postcss: 8.4.49 csso@5.0.5: dependencies: css-tree: 2.2.1 - debug@4.3.6: - dependencies: - ms: 2.1.2 - debug@4.3.7: dependencies: ms: 2.1.3 @@ -4759,6 +4875,8 @@ snapshots: '@emmetio/abbreviation': 2.3.3 '@emmetio/css-abbreviation': 2.1.8 + emoji-regex-xs@1.0.0: {} + emoji-regex@10.4.0: {} emoji-regex@8.0.0: {} @@ -4778,6 +4896,20 @@ snapshots: es-module-lexer@1.5.4: {} + esast-util-from-estree@2.0.0: + dependencies: + '@types/estree-jsx': 1.0.5 + devlop: 1.1.0 + estree-util-visit: 2.0.0 + unist-util-position-from-estree: 2.0.0 + + esast-util-from-js@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + acorn: 8.14.0 + esast-util-from-estree: 2.0.0 + vfile-message: 4.0.2 + esbuild@0.21.5: optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 @@ -4854,6 +4986,11 @@ snapshots: estree-util-is-identifier-name@3.0.0: {} + estree-util-scope@1.0.0: + dependencies: + '@types/estree': 1.0.6 + devlop: 1.1.0 + estree-util-to-js@2.0.0: dependencies: '@types/estree-jsx': 1.0.5 @@ -4875,12 +5012,12 @@ snapshots: expand-template@2.0.3: {} - expressive-code@0.37.0: + expressive-code@0.38.3: dependencies: - '@expressive-code/core': 0.37.0 - '@expressive-code/plugin-frames': 0.37.0 - '@expressive-code/plugin-shiki': 0.37.0 - '@expressive-code/plugin-text-markers': 0.37.0 + '@expressive-code/core': 0.38.3 + '@expressive-code/plugin-frames': 0.38.3 + '@expressive-code/plugin-shiki': 0.38.3 + '@expressive-code/plugin-text-markers': 0.38.3 extend@3.0.2: {} @@ -4942,14 +5079,14 @@ snapshots: flattie@1.1.1: {} - follow-redirects@1.15.6: {} + follow-redirects@1.15.9: {} foreground-child@3.3.0: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 signal-exit: 4.1.0 - form-data@4.0.0: + form-data@4.0.1: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 @@ -4970,11 +5107,11 @@ snapshots: get-caller-file@2.0.5: {} - get-east-asian-width@1.2.0: {} + get-east-asian-width@1.3.0: {} get-stream@5.2.0: dependencies: - pump: 3.0.0 + pump: 3.0.2 github-from-package@0.0.0: {} @@ -5007,17 +5144,17 @@ snapshots: dependencies: '@types/hast': 3.0.4 devlop: 1.1.0 - hast-util-from-parse5: 8.0.1 - parse5: 7.1.2 + hast-util-from-parse5: 8.0.2 + parse5: 7.2.1 vfile: 6.0.3 vfile-message: 4.0.2 - hast-util-from-parse5@8.0.1: + hast-util-from-parse5@8.0.2: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 devlop: 1.1.0 - hastscript: 8.0.0 + hastscript: 9.0.0 property-information: 6.5.0 vfile: 6.0.3 vfile-location: 5.0.3 @@ -5027,6 +5164,11 @@ snapshots: dependencies: '@types/hast': 3.0.4 + hast-util-interactive@3.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-has-property: 3.0.0 + hast-util-is-element@3.0.0: dependencies: '@types/hast': 3.0.4 @@ -5035,23 +5177,23 @@ snapshots: dependencies: '@types/hast': 3.0.4 - hast-util-raw@9.0.4: + hast-util-raw@9.1.0: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 '@ungap/structured-clone': 1.2.0 - hast-util-from-parse5: 8.0.1 + hast-util-from-parse5: 8.0.2 hast-util-to-parse5: 8.0.0 html-void-elements: 3.0.0 mdast-util-to-hast: 13.2.0 - parse5: 7.1.2 + parse5: 7.2.1 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.2: + hast-util-select@6.0.3: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 @@ -5063,7 +5205,6 @@ snapshots: hast-util-has-property: 3.0.0 hast-util-to-string: 3.0.1 hast-util-whitespace: 3.0.0 - not: 0.1.0 nth-check: 2.1.1 property-information: 6.5.0 space-separated-tokens: 2.0.2 @@ -5105,7 +5246,7 @@ snapshots: stringify-entities: 4.0.4 zwitch: 2.0.4 - hast-util-to-jsx-runtime@2.3.0: + hast-util-to-jsx-runtime@2.3.2: dependencies: '@types/estree': 1.0.6 '@types/hast': 3.0.4 @@ -5150,14 +5291,6 @@ snapshots: dependencies: '@types/hast': 3.0.4 - hastscript@8.0.0: - dependencies: - '@types/hast': 3.0.4 - comma-separated-tokens: 2.0.3 - hast-util-parse-selector: 4.0.0 - property-information: 6.5.0 - space-separated-tokens: 2.0.2 - hastscript@9.0.0: dependencies: '@types/hast': 3.0.4 @@ -5238,10 +5371,6 @@ snapshots: is-plain-obj@4.1.0: {} - is-reference@3.0.2: - dependencies: - '@types/estree': 1.0.6 - is-wsl@3.1.0: dependencies: is-inside-container: 1.0.0 @@ -5277,10 +5406,10 @@ snapshots: kolorist@1.8.0: {} - lilconfig@2.1.0: {} - lilconfig@3.1.2: {} + lilconfig@3.1.3: {} + linebreak@1.1.0: dependencies: base64-js: 0.0.8 @@ -5295,10 +5424,10 @@ snapshots: pify: 4.0.1 strip-bom: 3.0.0 - local-pkg@0.5.0: + local-pkg@0.5.1: dependencies: - mlly: 1.7.1 - pkg-types: 1.1.3 + mlly: 1.7.3 + pkg-types: 1.2.1 locate-path@5.0.0: dependencies: @@ -5320,19 +5449,19 @@ snapshots: lru-cache@10.4.3: {} - magic-string@0.30.12: + magic-string@0.30.14: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 magicast@0.3.5: dependencies: - '@babel/parser': 7.25.7 - '@babel/types': 7.25.7 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 source-map-js: 1.2.1 markdown-extensions@2.0.0: {} - markdown-table@3.0.3: {} + markdown-table@3.0.4: {} mdast-util-definitions@6.0.0: dependencies: @@ -5346,7 +5475,7 @@ snapshots: '@types/unist': 3.0.3 devlop: 1.1.0 mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 parse-entities: 4.0.1 stringify-entities: 4.0.4 unist-util-visit-parents: 6.0.1 @@ -5369,7 +5498,7 @@ snapshots: mdast-util-to-string: 4.0.0 micromark: 4.0.0 micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-decode-string: 2.0.0 + micromark-util-decode-string: 2.0.1 micromark-util-normalize-identifier: 2.0.0 micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 @@ -5377,29 +5506,46 @@ snapshots: transitivePeerDependencies: - supports-color + mdast-util-from-markdown@2.0.2: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + mdast-util-gfm-autolink-literal@2.0.1: dependencies: '@types/mdast': 4.0.4 ccount: 2.0.1 devlop: 1.1.0 mdast-util-find-and-replace: 3.0.1 - micromark-util-character: 2.1.0 + micromark-util-character: 2.1.1 mdast-util-gfm-footnote@2.0.0: dependencies: '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - micromark-util-normalize-identifier: 2.0.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-util-normalize-identifier: 2.0.1 transitivePeerDependencies: - supports-color mdast-util-gfm-strikethrough@2.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -5407,9 +5553,9 @@ snapshots: dependencies: '@types/mdast': 4.0.4 devlop: 1.1.0 - markdown-table: 3.0.3 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + markdown-table: 3.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -5417,20 +5563,20 @@ snapshots: dependencies: '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color mdast-util-gfm@3.0.0: dependencies: - mdast-util-from-markdown: 2.0.1 + mdast-util-from-markdown: 2.0.2 mdast-util-gfm-autolink-literal: 2.0.1 mdast-util-gfm-footnote: 2.0.0 mdast-util-gfm-strikethrough: 2.0.0 mdast-util-gfm-table: 2.0.0 mdast-util-gfm-task-list-item: 2.0.0 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -5440,8 +5586,8 @@ snapshots: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -5453,8 +5599,8 @@ snapshots: '@types/unist': 3.0.3 ccount: 2.0.1 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 parse-entities: 4.0.1 stringify-entities: 4.0.4 unist-util-stringify-position: 4.0.0 @@ -5464,11 +5610,11 @@ snapshots: mdast-util-mdx@3.0.0: dependencies: - mdast-util-from-markdown: 2.0.1 + mdast-util-from-markdown: 2.0.2 mdast-util-mdx-expression: 2.0.1 mdast-util-mdx-jsx: 3.1.3 mdast-util-mdxjs-esm: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -5478,8 +5624,8 @@ snapshots: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -5494,20 +5640,21 @@ snapshots: '@types/mdast': 4.0.4 '@ungap/structured-clone': 1.2.0 devlop: 1.1.0 - micromark-util-sanitize-uri: 2.0.0 + micromark-util-sanitize-uri: 2.0.1 trim-lines: 3.0.1 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 vfile: 6.0.3 - mdast-util-to-markdown@2.1.0: + mdast-util-to-markdown@2.1.2: dependencies: '@types/mdast': 4.0.4 '@types/unist': 3.0.3 longest-streak: 3.1.0 mdast-util-phrasing: 4.1.0 mdast-util-to-string: 4.0.0 - micromark-util-decode-string: 2.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 unist-util-visit: 5.0.0 zwitch: 2.0.4 @@ -5530,9 +5677,9 @@ snapshots: micromark-factory-space: 2.0.0 micromark-factory-title: 2.0.0 micromark-factory-whitespace: 2.0.0 - micromark-util-character: 2.1.0 + micromark-util-character: 2.1.1 micromark-util-chunked: 2.0.0 - micromark-util-classify-character: 2.0.0 + micromark-util-classify-character: 2.0.1 micromark-util-html-tag-name: 2.0.0 micromark-util-normalize-identifier: 2.0.0 micromark-util-resolve-all: 2.0.0 @@ -5540,6 +5687,25 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 + micromark-core-commonmark@2.0.2: + dependencies: + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.0.3 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + micromark-extension-directive@3.0.1: dependencies: devlop: 1.1.0 @@ -5552,50 +5718,50 @@ snapshots: micromark-extension-gfm-autolink-literal@2.1.0: dependencies: - micromark-util-character: 2.1.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-footnote@2.1.0: dependencies: devlop: 1.1.0 - micromark-core-commonmark: 2.0.1 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-core-commonmark: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-strikethrough@2.1.0: dependencies: devlop: 1.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-classify-character: 2.0.0 - micromark-util-resolve-all: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-table@2.1.0: dependencies: devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-tagfilter@2.0.0: dependencies: - micromark-util-types: 2.0.0 + micromark-util-types: 2.0.1 micromark-extension-gfm-task-list-item@2.1.0: dependencies: devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm@3.0.0: dependencies: @@ -5605,19 +5771,19 @@ snapshots: micromark-extension-gfm-table: 2.1.0 micromark-extension-gfm-tagfilter: 2.0.0 micromark-extension-gfm-task-list-item: 2.1.0 - micromark-util-combine-extensions: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-mdx-expression@3.0.0: dependencies: '@types/estree': 1.0.6 devlop: 1.1.0 micromark-factory-mdx-expression: 2.0.2 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 micromark-util-events-to-acorn: 2.0.2 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-mdx-jsx@3.0.1: dependencies: @@ -5626,62 +5792,75 @@ snapshots: devlop: 1.1.0 estree-util-is-identifier-name: 3.0.0 micromark-factory-mdx-expression: 2.0.2 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 micromark-util-events-to-acorn: 2.0.2 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 vfile-message: 4.0.2 micromark-extension-mdx-md@2.0.0: dependencies: - micromark-util-types: 2.0.0 + micromark-util-types: 2.0.1 micromark-extension-mdxjs-esm@3.0.0: dependencies: '@types/estree': 1.0.6 devlop: 1.1.0 - micromark-core-commonmark: 2.0.1 - micromark-util-character: 2.1.0 + micromark-core-commonmark: 2.0.2 + micromark-util-character: 2.1.1 micromark-util-events-to-acorn: 2.0.2 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 unist-util-position-from-estree: 2.0.0 vfile-message: 4.0.2 micromark-extension-mdxjs@3.0.0: dependencies: - acorn: 8.12.1 - acorn-jsx: 5.3.2(acorn@8.12.1) + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) micromark-extension-mdx-expression: 3.0.0 micromark-extension-mdx-jsx: 3.0.1 micromark-extension-mdx-md: 2.0.0 micromark-extension-mdxjs-esm: 3.0.0 - micromark-util-combine-extensions: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.1 micromark-factory-destination@2.0.0: dependencies: - micromark-util-character: 2.1.0 + micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 + micromark-factory-destination@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + micromark-factory-label@2.0.0: dependencies: devlop: 1.1.0 - micromark-util-character: 2.1.0 + micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 + micromark-factory-label@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + micromark-factory-mdx-expression@2.0.2: dependencies: '@types/estree': 1.0.6 devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 micromark-util-events-to-acorn: 2.0.2 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 unist-util-position-from-estree: 2.0.0 vfile-message: 4.0.2 @@ -5690,13 +5869,25 @@ snapshots: micromark-util-character: 2.1.0 micromark-util-types: 2.0.0 + micromark-factory-space@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.1 + micromark-factory-title@2.0.0: dependencies: micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 + micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 + micromark-factory-title@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + micromark-factory-whitespace@2.0.0: dependencies: micromark-factory-space: 2.0.0 @@ -5704,39 +5895,66 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 + micromark-factory-whitespace@2.0.1: + dependencies: + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + micromark-util-character@2.1.0: dependencies: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 + micromark-util-character@2.1.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + micromark-util-chunked@2.0.0: dependencies: micromark-util-symbol: 2.0.0 - micromark-util-classify-character@2.0.0: + micromark-util-chunked@2.0.1: dependencies: - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + + micromark-util-classify-character@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-util-combine-extensions@2.0.0: dependencies: micromark-util-chunked: 2.0.0 micromark-util-types: 2.0.0 + micromark-util-combine-extensions@2.0.1: + dependencies: + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.1 + micromark-util-decode-numeric-character-reference@2.0.1: dependencies: micromark-util-symbol: 2.0.0 - micromark-util-decode-string@2.0.0: + micromark-util-decode-numeric-character-reference@2.0.2: + dependencies: + micromark-util-symbol: 2.0.1 + + micromark-util-decode-string@2.0.1: dependencies: decode-named-character-reference: 1.0.2 - micromark-util-character: 2.1.0 - micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-symbol: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 micromark-util-encode@2.0.0: {} + micromark-util-encode@2.0.1: {} + micromark-util-events-to-acorn@2.0.2: dependencies: '@types/acorn': 4.0.6 @@ -5744,26 +5962,42 @@ snapshots: '@types/unist': 3.0.3 devlop: 1.1.0 estree-util-visit: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 vfile-message: 4.0.2 micromark-util-html-tag-name@2.0.0: {} + micromark-util-html-tag-name@2.0.1: {} + micromark-util-normalize-identifier@2.0.0: dependencies: micromark-util-symbol: 2.0.0 + micromark-util-normalize-identifier@2.0.1: + dependencies: + micromark-util-symbol: 2.0.1 + micromark-util-resolve-all@2.0.0: dependencies: micromark-util-types: 2.0.0 + micromark-util-resolve-all@2.0.1: + dependencies: + micromark-util-types: 2.0.1 + micromark-util-sanitize-uri@2.0.0: dependencies: - micromark-util-character: 2.1.0 + micromark-util-character: 2.1.1 micromark-util-encode: 2.0.0 micromark-util-symbol: 2.0.0 + micromark-util-sanitize-uri@2.0.1: + dependencies: + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-subtokenize@2.0.1: dependencies: devlop: 1.1.0 @@ -5771,10 +6005,21 @@ snapshots: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 + micromark-util-subtokenize@2.0.3: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + micromark-util-symbol@2.0.0: {} + micromark-util-symbol@2.0.1: {} + micromark-util-types@2.0.0: {} + micromark-util-types@2.0.1: {} + micromark@4.0.0: dependencies: '@types/debug': 4.1.12 @@ -5783,7 +6028,7 @@ snapshots: devlop: 1.1.0 micromark-core-commonmark: 2.0.1 micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 + micromark-util-character: 2.1.1 micromark-util-chunked: 2.0.0 micromark-util-combine-extensions: 2.0.0 micromark-util-decode-numeric-character-reference: 2.0.1 @@ -5797,6 +6042,28 @@ snapshots: transitivePeerDependencies: - supports-color + micromark@4.0.1: + dependencies: + '@types/debug': 4.1.12 + debug: 4.3.7 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.0.3 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + transitivePeerDependencies: + - supports-color + micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -5835,17 +6102,15 @@ snapshots: mkdirp@1.0.4: {} - mlly@1.7.1: + mlly@1.7.3: dependencies: - acorn: 8.12.1 + acorn: 8.14.0 pathe: 1.1.2 - pkg-types: 1.1.3 + pkg-types: 1.2.1 ufo: 1.5.4 mrmime@2.0.0: {} - ms@2.1.2: {} - ms@2.1.3: {} muggle-string@0.4.1: {} @@ -5856,7 +6121,7 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - nanoid@3.3.7: {} + nanoid@3.3.8: {} napi-build-utils@1.0.2: {} @@ -5878,8 +6143,6 @@ snapshots: normalize-range@0.1.2: {} - not@0.1.0: {} - nth-check@2.1.1: dependencies: boolbase: 1.0.0 @@ -5892,9 +6155,11 @@ snapshots: dependencies: wrappy: 1.0.2 - oniguruma-to-js@0.4.3: + oniguruma-to-es@0.7.0: dependencies: - regex: 4.3.3 + emoji-regex-xs: 1.0.0 + regex: 5.0.2 + regex-recursion: 4.3.0 p-limit@2.3.0: dependencies: @@ -5911,23 +6176,23 @@ snapshots: p-queue@8.0.1: dependencies: eventemitter3: 5.0.1 - p-timeout: 6.1.2 + p-timeout: 6.1.3 - p-timeout@6.1.2: {} + p-timeout@6.1.3: {} p-try@2.2.0: {} package-json-from-dist@1.0.1: {} - package-manager-detector@0.1.2: {} + package-manager-detector@0.2.7: {} - pagefind@1.1.1: + pagefind@1.2.0: optionalDependencies: - '@pagefind/darwin-arm64': 1.1.1 - '@pagefind/darwin-x64': 1.1.1 - '@pagefind/linux-arm64': 1.1.1 - '@pagefind/linux-x64': 1.1.1 - '@pagefind/windows-x64': 1.1.1 + '@pagefind/darwin-arm64': 1.2.0 + '@pagefind/darwin-x64': 1.2.0 + '@pagefind/linux-arm64': 1.2.0 + '@pagefind/linux-x64': 1.2.0 + '@pagefind/windows-x64': 1.2.0 pako@0.2.9: {} @@ -5956,16 +6221,16 @@ snapshots: unist-util-visit-children: 3.0.0 vfile: 6.0.3 - parse5-htmlparser2-tree-adapter@7.0.0: + parse5-htmlparser2-tree-adapter@7.1.0: dependencies: domhandler: 5.0.3 - parse5: 7.1.2 + parse5: 7.2.1 parse5-parser-stream@7.1.2: dependencies: - parse5: 7.1.2 + parse5: 7.2.1 - parse5@7.1.2: + parse5@7.2.1: dependencies: entities: 4.5.0 @@ -5986,18 +6251,14 @@ snapshots: pend@1.2.0: {} - periscopic@3.1.0: - dependencies: - '@types/estree': 1.0.6 - estree-walker: 3.0.3 - is-reference: 3.0.2 - picocolors@1.0.1: {} - picocolors@1.1.0: {} + picocolors@1.1.1: {} picomatch@2.3.1: {} + picomatch@4.0.2: {} + pify@2.3.0: {} pify@4.0.1: {} @@ -6008,172 +6269,172 @@ snapshots: dependencies: find-up: 4.1.0 - pkg-types@1.1.3: + pkg-types@1.2.1: dependencies: - confbox: 0.1.7 - mlly: 1.7.1 + confbox: 0.1.8 + mlly: 1.7.3 pathe: 1.1.2 - postcss-calc@10.0.2(postcss@8.4.47): + postcss-calc@10.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 - postcss-colormin@7.0.2(postcss@8.4.47): + postcss-colormin@7.0.2(postcss@8.4.49): dependencies: browserslist: 4.24.0 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-convert-values@7.0.4(postcss@8.4.47): + postcss-convert-values@7.0.4(postcss@8.4.49): dependencies: browserslist: 4.24.0 - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-discard-comments@7.0.3(postcss@8.4.47): + postcss-discard-comments@7.0.3(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-discard-duplicates@7.0.1(postcss@8.4.47): + postcss-discard-duplicates@7.0.1(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 - postcss-discard-empty@7.0.0(postcss@8.4.47): + postcss-discard-empty@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 - postcss-discard-overridden@7.0.0(postcss@8.4.47): + postcss-discard-overridden@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 - postcss-import@15.1.0(postcss@8.4.47): + postcss-import@15.1.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 - postcss-js@4.0.1(postcss@8.4.47): + postcss-js@4.0.1(postcss@8.4.49): dependencies: camelcase-css: 2.0.1 - postcss: 8.4.47 + postcss: 8.4.49 - postcss-load-config@4.0.2(postcss@8.4.47): + postcss-load-config@4.0.2(postcss@8.4.49): dependencies: - lilconfig: 3.1.2 - yaml: 2.5.1 + lilconfig: 3.1.3 + yaml: 2.6.1 optionalDependencies: - postcss: 8.4.47 + postcss: 8.4.49 - postcss-merge-longhand@7.0.4(postcss@8.4.47): + postcss-merge-longhand@7.0.4(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - stylehacks: 7.0.4(postcss@8.4.47) + stylehacks: 7.0.4(postcss@8.4.49) - postcss-merge-rules@7.0.4(postcss@8.4.47): + postcss-merge-rules@7.0.4(postcss@8.4.49): dependencies: browserslist: 4.24.0 caniuse-api: 3.0.0 - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 + cssnano-utils: 5.0.0(postcss@8.4.49) + postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-minify-font-values@7.0.0(postcss@8.4.47): + postcss-minify-font-values@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-minify-gradients@7.0.0(postcss@8.4.47): + postcss-minify-gradients@7.0.0(postcss@8.4.49): dependencies: colord: 2.9.3 - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 + cssnano-utils: 5.0.0(postcss@8.4.49) + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-minify-params@7.0.2(postcss@8.4.47): + postcss-minify-params@7.0.2(postcss@8.4.49): dependencies: browserslist: 4.24.0 - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 + cssnano-utils: 5.0.0(postcss@8.4.49) + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-minify-selectors@7.0.4(postcss@8.4.47): + postcss-minify-selectors@7.0.4(postcss@8.4.49): dependencies: cssesc: 3.0.0 - postcss: 8.4.47 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-nested@6.2.0(postcss@8.4.47): + postcss-nested@6.2.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-normalize-charset@7.0.0(postcss@8.4.47): + postcss-normalize-charset@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 - postcss-normalize-display-values@7.0.0(postcss@8.4.47): + postcss-normalize-display-values@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-positions@7.0.0(postcss@8.4.47): + postcss-normalize-positions@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-repeat-style@7.0.0(postcss@8.4.47): + postcss-normalize-repeat-style@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-string@7.0.0(postcss@8.4.47): + postcss-normalize-string@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-timing-functions@7.0.0(postcss@8.4.47): + postcss-normalize-timing-functions@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-unicode@7.0.2(postcss@8.4.47): + postcss-normalize-unicode@7.0.2(postcss@8.4.49): dependencies: browserslist: 4.24.0 - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-url@7.0.0(postcss@8.4.47): + postcss-normalize-url@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-whitespace@7.0.0(postcss@8.4.47): + postcss-normalize-whitespace@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-ordered-values@7.0.1(postcss@8.4.47): + postcss-ordered-values@7.0.1(postcss@8.4.49): dependencies: - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 + cssnano-utils: 5.0.0(postcss@8.4.49) + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-reduce-initial@7.0.2(postcss@8.4.47): + postcss-reduce-initial@7.0.2(postcss@8.4.49): dependencies: browserslist: 4.24.0 caniuse-api: 3.0.0 - postcss: 8.4.47 + postcss: 8.4.49 - postcss-reduce-transforms@7.0.0(postcss@8.4.47): + postcss-reduce-transforms@7.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 postcss-selector-parser@6.0.10: @@ -6186,23 +6447,23 @@ snapshots: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-svgo@7.0.1(postcss@8.4.47): + postcss-svgo@7.0.1(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 svgo: 3.3.2 - postcss-unique-selectors@7.0.3(postcss@8.4.47): + postcss-unique-selectors@7.0.3(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 postcss-value-parser@4.2.0: {} - postcss@8.4.47: + postcss@8.4.49: dependencies: - nanoid: 3.3.7 - picocolors: 1.1.0 + nanoid: 3.3.8 + picocolors: 1.1.1 source-map-js: 1.2.1 prebuild-install@7.1.2: @@ -6229,19 +6490,19 @@ snapshots: prettier-plugin-astro@0.14.1: dependencies: '@astrojs/compiler': 2.9.2 - prettier: 3.3.3 + prettier: 3.4.2 sass-formatter: 0.7.9 - prettier-plugin-tailwindcss@0.6.8(prettier-plugin-astro@0.14.1)(prettier@3.3.3): + prettier-plugin-tailwindcss@0.6.9(prettier-plugin-astro@0.14.1)(prettier@3.4.2): dependencies: - prettier: 3.3.3 + prettier: 3.4.2 optionalDependencies: prettier-plugin-astro: 0.14.1 prettier@2.8.7: optional: true - prettier@3.3.3: {} + prettier@3.4.2: {} prismjs@1.29.0: {} @@ -6259,6 +6520,11 @@ snapshots: end-of-stream: 1.4.4 once: 1.4.0 + pump@3.0.2: + dependencies: + end-of-stream: 1.4.4 + once: 1.4.0 + queue-microtask@1.2.3: {} queue-tick@1.0.1: {} @@ -6288,11 +6554,49 @@ snapshots: reading-time@1.5.0: {} - regex@4.3.3: {} + recma-build-jsx@1.0.0: + dependencies: + '@types/estree': 1.0.6 + estree-util-build-jsx: 3.0.1 + vfile: 6.0.3 + + recma-jsx@1.0.0(acorn@8.14.0): + dependencies: + acorn-jsx: 5.3.2(acorn@8.14.0) + estree-util-to-js: 2.0.0 + recma-parse: 1.0.0 + recma-stringify: 1.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - acorn - rehype-expressive-code@0.37.0: + recma-parse@1.0.0: dependencies: - expressive-code: 0.37.0 + '@types/estree': 1.0.6 + esast-util-from-js: 2.0.1 + unified: 11.0.5 + vfile: 6.0.3 + + recma-stringify@1.0.0: + dependencies: + '@types/estree': 1.0.6 + estree-util-to-js: 2.0.0 + unified: 11.0.5 + vfile: 6.0.3 + + regex-recursion@4.3.0: + dependencies: + regex-utilities: 2.3.0 + + regex-utilities@2.3.0: {} + + regex@5.0.2: + dependencies: + regex-utilities: 2.3.0 + + rehype-expressive-code@0.38.3: + dependencies: + expressive-code: 0.38.3 rehype-external-links@3.0.0: dependencies: @@ -6312,15 +6616,30 @@ snapshots: rehype-raw@7.0.0: dependencies: '@types/hast': 3.0.4 - hast-util-raw: 9.0.4 + hast-util-raw: 9.1.0 vfile: 6.0.3 + rehype-recma@1.0.0: + dependencies: + '@types/estree': 1.0.6 + '@types/hast': 3.0.4 + hast-util-to-estree: 3.1.0 + transitivePeerDependencies: + - supports-color + rehype-stringify@10.0.1: dependencies: '@types/hast': 3.0.4 hast-util-to-html: 9.0.3 unified: 11.0.5 + rehype-unwrap-images@1.0.0: + dependencies: + '@types/hast': 3.0.4 + hast-util-interactive: 3.0.0 + hast-util-whitespace: 3.0.0 + unist-util-visit: 5.0.0 + rehype@13.0.2: dependencies: '@types/hast': 3.0.4 @@ -6348,7 +6667,7 @@ snapshots: transitivePeerDependencies: - supports-color - remark-mdx@3.0.1: + remark-mdx@3.1.0: dependencies: mdast-util-mdx: 3.0.0 micromark-extension-mdxjs: 3.0.0 @@ -6358,8 +6677,8 @@ snapshots: remark-parse@11.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.1 - micromark-util-types: 2.0.0 + mdast-util-from-markdown: 2.0.2 + micromark-util-types: 2.0.1 unified: 11.0.5 transitivePeerDependencies: - supports-color @@ -6375,22 +6694,16 @@ snapshots: remark-smartypants@3.0.2: dependencies: retext: 9.0.0 - retext-smartypants: 6.1.1 + retext-smartypants: 6.2.0 unified: 11.0.5 unist-util-visit: 5.0.0 remark-stringify@11.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 unified: 11.0.5 - remark-unwrap-images@4.0.0: - dependencies: - '@types/mdast': 4.0.4 - hast-util-whitespace: 3.0.0 - unist-util-visit: 5.0.0 - request-light@0.5.8: {} request-light@0.7.0: {} @@ -6411,7 +6724,7 @@ snapshots: parse-latin: 7.0.0 unified: 11.0.5 - retext-smartypants@6.1.1: + retext-smartypants@6.2.0: dependencies: '@types/nlcst': 2.0.3 nlcst-to-string: 4.0.0 @@ -6432,26 +6745,28 @@ snapshots: reusify@1.0.4: {} - rollup@4.24.0: + rollup@4.28.0: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.24.0 - '@rollup/rollup-android-arm64': 4.24.0 - '@rollup/rollup-darwin-arm64': 4.24.0 - '@rollup/rollup-darwin-x64': 4.24.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.24.0 - '@rollup/rollup-linux-arm-musleabihf': 4.24.0 - '@rollup/rollup-linux-arm64-gnu': 4.24.0 - '@rollup/rollup-linux-arm64-musl': 4.24.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0 - '@rollup/rollup-linux-riscv64-gnu': 4.24.0 - '@rollup/rollup-linux-s390x-gnu': 4.24.0 - '@rollup/rollup-linux-x64-gnu': 4.24.0 - '@rollup/rollup-linux-x64-musl': 4.24.0 - '@rollup/rollup-win32-arm64-msvc': 4.24.0 - '@rollup/rollup-win32-ia32-msvc': 4.24.0 - '@rollup/rollup-win32-x64-msvc': 4.24.0 + '@rollup/rollup-android-arm-eabi': 4.28.0 + '@rollup/rollup-android-arm64': 4.28.0 + '@rollup/rollup-darwin-arm64': 4.28.0 + '@rollup/rollup-darwin-x64': 4.28.0 + '@rollup/rollup-freebsd-arm64': 4.28.0 + '@rollup/rollup-freebsd-x64': 4.28.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.28.0 + '@rollup/rollup-linux-arm-musleabihf': 4.28.0 + '@rollup/rollup-linux-arm64-gnu': 4.28.0 + '@rollup/rollup-linux-arm64-musl': 4.28.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.28.0 + '@rollup/rollup-linux-riscv64-gnu': 4.28.0 + '@rollup/rollup-linux-s390x-gnu': 4.28.0 + '@rollup/rollup-linux-x64-gnu': 4.28.0 + '@rollup/rollup-linux-x64-musl': 4.28.0 + '@rollup/rollup-win32-arm64-msvc': 4.28.0 + '@rollup/rollup-win32-ia32-msvc': 4.28.0 + '@rollup/rollup-win32-x64-msvc': 4.28.0 fsevents: 2.3.3 run-parallel@1.2.0: @@ -6472,7 +6787,7 @@ snapshots: dependencies: ultrahtml: 1.2.0 - satori@0.11.2: + satori@0.12.0: dependencies: '@shuding/opentype.js': 1.4.0-beta.0 css-background-parser: 0.1.0 @@ -6533,12 +6848,12 @@ snapshots: shebang-regex@3.0.0: {} - shiki@1.22.0: + shiki@1.24.0: dependencies: - '@shikijs/core': 1.22.0 - '@shikijs/engine-javascript': 1.22.0 - '@shikijs/engine-oniguruma': 1.22.0 - '@shikijs/types': 1.22.0 + '@shikijs/core': 1.24.0 + '@shikijs/engine-javascript': 1.24.0 + '@shikijs/engine-oniguruma': 1.24.0 + '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 '@types/hast': 3.0.4 @@ -6598,7 +6913,7 @@ snapshots: string-width@7.2.0: dependencies: emoji-regex: 10.4.0 - get-east-asian-width: 1.2.0 + get-east-asian-width: 1.3.0 strip-ansi: 7.1.0 string.prototype.codepointat@0.2.1: {} @@ -6634,10 +6949,10 @@ snapshots: dependencies: inline-style-parser: 0.2.4 - stylehacks@7.0.4(postcss@8.4.47): + stylehacks@7.0.4(postcss@8.4.49): dependencies: browserslist: 4.24.0 - postcss: 8.4.47 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 sucrase@3.35.0: @@ -6664,9 +6979,9 @@ snapshots: css-tree: 2.3.1 css-what: 6.1.0 csso: 5.0.5 - picocolors: 1.1.0 + picocolors: 1.1.1 - tailwindcss@3.4.13: + tailwindcss@3.4.16: dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -6677,16 +6992,16 @@ snapshots: glob-parent: 6.0.2 is-glob: 4.0.3 jiti: 1.21.6 - lilconfig: 2.1.0 + lilconfig: 3.1.3 micromatch: 4.0.8 normalize-path: 3.0.0 object-hash: 3.0.0 - picocolors: 1.1.0 - postcss: 8.4.47 - postcss-import: 15.1.0(postcss@8.4.47) - postcss-js: 4.0.1(postcss@8.4.47) - postcss-load-config: 4.0.2(postcss@8.4.47) - postcss-nested: 6.2.0(postcss@8.4.47) + picocolors: 1.1.1 + postcss: 8.4.49 + postcss-import: 15.1.0(postcss@8.4.49) + postcss-js: 4.0.1(postcss@8.4.49) + postcss-load-config: 4.0.2(postcss@8.4.49) + postcss-nested: 6.2.0(postcss@8.4.49) postcss-selector-parser: 6.1.2 resolve: 1.22.8 sucrase: 3.35.0 @@ -6745,11 +7060,7 @@ snapshots: tiny-inflate@1.0.3: {} - tinyexec@0.2.0: {} - - tinyexec@0.3.0: {} - - to-fast-properties@2.0.0: {} + tinyexec@0.3.1: {} to-regex-range@5.0.1: dependencies: @@ -6761,9 +7072,9 @@ snapshots: ts-interface-checker@0.1.13: {} - tsconfck@3.1.4(typescript@5.6.2): + tsconfck@3.1.4(typescript@5.7.2): optionalDependencies: - typescript: 5.6.2 + typescript: 5.7.2 tslib@2.6.3: optional: true @@ -6772,7 +7083,7 @@ snapshots: dependencies: safe-buffer: 5.2.1 - type-fest@4.26.1: {} + type-fest@4.30.0: {} typesafe-path@0.2.2: {} @@ -6780,15 +7091,19 @@ snapshots: dependencies: semver: 7.6.3 - typescript@5.6.2: {} + typescript@5.7.2: {} ufo@1.5.4: {} ultrahtml@1.2.0: {} + ultrahtml@1.5.3: {} + undici-types@6.19.8: {} - undici@6.19.8: {} + undici-types@6.20.0: {} + + undici@6.21.0: {} unicode-trie@2.0.0: dependencies: @@ -6855,13 +7170,13 @@ snapshots: dependencies: browserslist: 4.23.3 escalade: 3.1.2 - picocolors: 1.1.0 + picocolors: 1.0.1 update-browserslist-db@1.1.1(browserslist@4.24.0): dependencies: browserslist: 4.24.0 escalade: 3.2.0 - picocolors: 1.1.0 + picocolors: 1.1.1 util-deprecate@1.0.2: {} @@ -6890,18 +7205,20 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite@6.0.0-beta.2(@types/node@22.7.5): + vite@6.0.3(@types/node@22.10.1)(jiti@1.21.6)(yaml@2.6.1): dependencies: esbuild: 0.24.0 - postcss: 8.4.47 - rollup: 4.24.0 + postcss: 8.4.49 + rollup: 4.28.0 optionalDependencies: - '@types/node': 22.7.5 + '@types/node': 22.10.1 fsevents: 2.3.3 + jiti: 1.21.6 + yaml: 2.6.1 - vitefu@1.0.3(vite@6.0.0-beta.2(@types/node@22.7.5)): + vitefu@1.0.4(vite@6.0.3(@types/node@22.10.1)(jiti@1.21.6)(yaml@2.6.1)): optionalDependencies: - vite: 6.0.0-beta.2(@types/node@22.7.5) + vite: 6.0.3(@types/node@22.10.1)(jiti@1.21.6)(yaml@2.6.1) volar-service-css@0.0.61(@volar/language-service@2.4.6): dependencies: @@ -6928,12 +7245,12 @@ snapshots: optionalDependencies: '@volar/language-service': 2.4.6 - volar-service-prettier@0.0.61(@volar/language-service@2.4.6)(prettier@3.3.3): + volar-service-prettier@0.0.61(@volar/language-service@2.4.6)(prettier@3.4.2): dependencies: vscode-uri: 3.0.8 optionalDependencies: '@volar/language-service': 2.4.6 - prettier: 3.3.3 + prettier: 3.4.2 volar-service-typescript-twoslash-queries@0.0.61(@volar/language-service@2.4.6): dependencies: @@ -7057,7 +7374,7 @@ snapshots: wrappy@1.0.2: {} - xxhash-wasm@1.0.2: {} + xxhash-wasm@1.1.0: {} y18n@5.0.8: {} @@ -7082,6 +7399,8 @@ snapshots: yaml@2.5.1: {} + yaml@2.6.1: {} + yargs-parser@21.1.1: {} yargs@17.7.2: @@ -7101,7 +7420,7 @@ snapshots: yocto-queue@1.1.1: {} - yocto-spinner@0.1.0: + yocto-spinner@0.1.1: dependencies: yoctocolors: 2.1.1 @@ -7109,13 +7428,13 @@ snapshots: yoga-wasm-web@0.3.3: {} - zod-to-json-schema@3.23.3(zod@3.23.8): + zod-to-json-schema@3.23.5(zod@3.23.8): dependencies: zod: 3.23.8 - zod-to-ts@1.2.0(typescript@5.6.2)(zod@3.23.8): + zod-to-ts@1.2.0(typescript@5.7.2)(zod@3.23.8): dependencies: - typescript: 5.6.2 + typescript: 5.7.2 zod: 3.23.8 zod@3.23.8: {} From 0f129ef4b2cac465440177469cde1eb2ede94c46 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 13:31:18 +0000 Subject: [PATCH 40/47] replace plugin, add env schema --- astro.config.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/astro.config.ts b/astro.config.ts index 507b2a40c..a605c87ba 100644 --- a/astro.config.ts +++ b/astro.config.ts @@ -6,18 +6,18 @@ import expressiveCode from "astro-expressive-code"; import icon from "astro-icon"; import robotsTxt from "astro-robots-txt"; import webmanifest from "astro-webmanifest"; -import { defineConfig } from "astro/config"; -import { expressiveCodeOptions } from "./src/site.config"; -import { siteConfig } from "./src/site.config"; +import { defineConfig, envField } from "astro/config"; +import { expressiveCodeOptions } from "./src/site-config"; +import { siteConfig } from "./src/site-config"; // Remark plugins import remarkDirective from "remark-directive"; /* Handle ::: directives as nodes */ -import remarkUnwrapImages from "remark-unwrap-images"; import { remarkAdmonitions } from "./src/plugins/remark-admonitions"; /* Add admonitions */ import { remarkReadingTime } from "./src/plugins/remark-reading-time"; // Rehype plugins import rehypeExternalLinks from "rehype-external-links"; +import rehypeUnwrapImages from "rehype-unwrap-images"; // https://astro.build/config export default defineConfig({ @@ -84,8 +84,9 @@ export default defineConfig({ target: "_blank", }, ], + rehypeUnwrapImages, ], - remarkPlugins: [remarkUnwrapImages, remarkReadingTime, remarkDirective, remarkAdmonitions], + remarkPlugins: [remarkReadingTime, remarkDirective, remarkAdmonitions], remarkRehype: { footnoteLabelProperties: { className: [""], @@ -102,6 +103,12 @@ export default defineConfig({ }, plugins: [rawFonts([".ttf", ".woff"])], }, + env: { + schema: { + WEBMENTION_API_KEY: envField.string({ context: "server", access: "secret" }), + WEBMENTION_URL: envField.string({ context: "client", access: "public", default: undefined }), + }, + }, }); function rawFonts(ext: string[]) { From e15fe488e99ea3754b627fd0a37ff29bab9cd21e Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 13:37:08 +0000 Subject: [PATCH 41/47] use webmention env --- .example.env | 3 ++- astro.config.ts | 4 ++-- src/components/BaseHead.astro | 6 +++--- src/pages/notes/rss.xml.ts | 2 +- src/pages/og-image/[...slug].png.ts | 2 +- src/pages/rss.xml.ts | 2 +- src/site.config.ts | 3 ++- src/types.ts | 6 +++--- src/utils/date.ts | 2 +- src/utils/webmentions.ts | 6 +++--- 10 files changed, 19 insertions(+), 17 deletions(-) diff --git a/.example.env b/.example.env index 7d0c17e25..a2df0a662 100644 --- a/.example.env +++ b/.example.env @@ -1 +1,2 @@ -WEBMENTION_API_KEY= \ No newline at end of file +WEBMENTION_API_KEY= +WEBMENTION_URL= \ No newline at end of file diff --git a/astro.config.ts b/astro.config.ts index a605c87ba..190275818 100644 --- a/astro.config.ts +++ b/astro.config.ts @@ -7,8 +7,8 @@ import icon from "astro-icon"; import robotsTxt from "astro-robots-txt"; import webmanifest from "astro-webmanifest"; import { defineConfig, envField } from "astro/config"; -import { expressiveCodeOptions } from "./src/site-config"; -import { siteConfig } from "./src/site-config"; +import { expressiveCodeOptions } from "./src/site.config"; +import { siteConfig } from "./src/site.config"; // Remark plugins import remarkDirective from "remark-directive"; /* Handle ::: directives as nodes */ diff --git a/src/components/BaseHead.astro b/src/components/BaseHead.astro index ffdcba21e..ac764c33c 100644 --- a/src/components/BaseHead.astro +++ b/src/components/BaseHead.astro @@ -1,7 +1,7 @@ --- -import { siteConfig } from "@/site-config"; +import { siteConfig } from "@/site.config"; import type { SiteMeta } from "@/types"; -import "../styles/global.css"; +import "@/styles/global.css"; type Props = SiteMeta; @@ -76,7 +76,7 @@ const socialImageURL = new URL(ogImage ? ogImage : "/social-card.png", Astro.url {/* Webmentions */} { - siteConfig.webmentions && ( + siteConfig.webmentions.link && ( <> {siteConfig.webmentions.pingback && ( diff --git a/src/pages/notes/rss.xml.ts b/src/pages/notes/rss.xml.ts index 572def8d7..0f1f945d5 100644 --- a/src/pages/notes/rss.xml.ts +++ b/src/pages/notes/rss.xml.ts @@ -1,5 +1,5 @@ import { getCollection } from "astro:content"; -import { siteConfig } from "@/site-config"; +import { siteConfig } from "@/site.config"; import rss from "@astrojs/rss"; export const GET = async () => { diff --git a/src/pages/og-image/[...slug].png.ts b/src/pages/og-image/[...slug].png.ts index 8c1eb0ecc..a4982d8fd 100644 --- a/src/pages/og-image/[...slug].png.ts +++ b/src/pages/og-image/[...slug].png.ts @@ -1,7 +1,7 @@ import RobotoMonoBold from "@/assets/roboto-mono-700.ttf"; import RobotoMono from "@/assets/roboto-mono-regular.ttf"; import { getAllPosts } from "@/data/post"; -import { siteConfig } from "@/site-config"; +import { siteConfig } from "@/site.config"; import { getFormattedDate } from "@/utils/date"; import { Resvg } from "@resvg/resvg-js"; import type { APIContext, InferGetStaticPropsType } from "astro"; diff --git a/src/pages/rss.xml.ts b/src/pages/rss.xml.ts index fef89b649..1c305af80 100644 --- a/src/pages/rss.xml.ts +++ b/src/pages/rss.xml.ts @@ -1,5 +1,5 @@ import { getAllPosts } from "@/data/post"; -import { siteConfig } from "@/site-config"; +import { siteConfig } from "@/site.config"; import rss from "@astrojs/rss"; export const GET = async () => { diff --git a/src/site.config.ts b/src/site.config.ts index 17ae4a0f6..3b843180e 100644 --- a/src/site.config.ts +++ b/src/site.config.ts @@ -23,7 +23,8 @@ export const siteConfig: SiteConfig = { title: "Astro Theme Cactus", webmentions: { // Webmention.io API endpoint. Get your own here: https://webmention.io/, and follow this blog post: https://astro-cactus.chriswilliams.dev/posts/webmentions/ - link: "https://webmention.io/astro-cactus.chriswilliams.dev/webmention", + link: process.env.WEBMENTIONS_URL, + pingback: undefined, }, }; diff --git a/src/types.ts b/src/types.ts index d576fa3a8..436406879 100644 --- a/src/types.ts +++ b/src/types.ts @@ -8,9 +8,9 @@ export interface SiteConfig { lang: string; ogLocale: string; title: string; - webmentions?: { - link: string; - pingback?: string; + webmentions: { + link?: string | undefined; + pingback?: string | undefined; }; } diff --git a/src/utils/date.ts b/src/utils/date.ts index 938f583b5..fb943a501 100644 --- a/src/utils/date.ts +++ b/src/utils/date.ts @@ -1,5 +1,5 @@ import type { CollectionEntry } from "astro:content"; -import { siteConfig } from "@/site-config"; +import { siteConfig } from "@/site.config"; export function getFormattedDate( date: Date | undefined, diff --git a/src/utils/webmentions.ts b/src/utils/webmentions.ts index ea36276af..c9f62b7fe 100644 --- a/src/utils/webmentions.ts +++ b/src/utils/webmentions.ts @@ -1,8 +1,8 @@ import * as fs from "node:fs"; +import { WEBMENTION_API_KEY } from "astro:env/server"; import type { WebmentionsCache, WebmentionsChildren, WebmentionsFeed } from "@/types"; const DOMAIN = import.meta.env.SITE; -const API_TOKEN = import.meta.env.WEBMENTION_API_KEY; const CACHE_DIR = ".data"; const filePath = `${CACHE_DIR}/webmentions.json`; const validWebmentionTypes = ["like-of", "mention-of", "in-reply-to"]; @@ -16,12 +16,12 @@ async function fetchWebmentions(timeFrom: string | null, perPage = 1000) { return null; } - if (!API_TOKEN) { + if (!WEBMENTION_API_KEY) { console.warn("No webmention api token specified in .env"); return null; } - let url = `https://webmention.io/api/mentions.jf2?domain=${hostName}&token=${API_TOKEN}&sort-dir=up&per-page=${perPage}`; + let url = `https://webmention.io/api/mentions.jf2?domain=${hostName}&token=${WEBMENTION_API_KEY}&sort-dir=up&per-page=${perPage}`; if (timeFrom) url += `&since${timeFrom}`; From 1dd3402489e4f050149f129024f37a1669592456 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 13:37:54 +0000 Subject: [PATCH 42/47] cleanup imports --- src/components/blog/Masthead.astro | 2 +- src/components/blog/PostPreview.astro | 2 +- src/components/blog/TOC.astro | 2 +- src/components/blog/webmentions/index.astro | 30 +++++++++------------ src/components/layout/Footer.astro | 2 +- src/components/layout/Header.astro | 12 ++++----- src/components/note/Note.astro | 2 +- src/layouts/Base.astro | 2 +- tsconfig.json | 10 ++----- 9 files changed, 25 insertions(+), 39 deletions(-) diff --git a/src/components/blog/Masthead.astro b/src/components/blog/Masthead.astro index 3606ca8b1..db5f8ed06 100644 --- a/src/components/blog/Masthead.astro +++ b/src/components/blog/Masthead.astro @@ -1,7 +1,7 @@ --- import { Image } from "astro:assets"; import type { CollectionEntry } from "astro:content"; -import FormattedDate from "../FormattedDate.astro"; +import FormattedDate from "@/components/FormattedDate.astro"; interface Props { content: CollectionEntry<"post">; diff --git a/src/components/blog/PostPreview.astro b/src/components/blog/PostPreview.astro index 9e5e5f55b..324f0dd23 100644 --- a/src/components/blog/PostPreview.astro +++ b/src/components/blog/PostPreview.astro @@ -1,7 +1,7 @@ --- import type { CollectionEntry } from "astro:content"; +import FormattedDate from "@/components/FormattedDate.astro"; import type { HTMLTag, Polymorphic } from "astro/types"; -import FormattedDate from "../FormattedDate.astro"; type Props = Polymorphic<{ as: Tag }> & { post: CollectionEntry<"post">; diff --git a/src/components/blog/TOC.astro b/src/components/blog/TOC.astro index ff94df5a2..b87017f7d 100644 --- a/src/components/blog/TOC.astro +++ b/src/components/blog/TOC.astro @@ -1,6 +1,6 @@ --- +import { generateToc } from "@/utils/generateToc"; import type { MarkdownHeading } from "astro"; -import { generateToc } from "src/utils/generateToc"; import TOCHeading from "./TOCHeading.astro"; interface Props { diff --git a/src/components/blog/webmentions/index.astro b/src/components/blog/webmentions/index.astro index 25c73d87c..232b4f3df 100644 --- a/src/components/blog/webmentions/index.astro +++ b/src/components/blog/webmentions/index.astro @@ -6,24 +6,18 @@ import Likes from "./Likes.astro"; const url = new URL(Astro.url.pathname, Astro.site); const webMentions = await getWebmentionsForUrl(`${url}`); + +// Return if no webmentions if (!webMentions.length) return; --- -{ - !!webMentions.length && ( - <> -
          -

          Webmentions for this post

          -
          - - -
          -

          - Responses powered by{" "} - - Webmentions - -

          - - ) -} +
          +

          Webmentions for this post

          +
          + + +
          +

          + Responses powered by{" "} + Webmentions +

          diff --git a/src/components/layout/Footer.astro b/src/components/layout/Footer.astro index 1cc41a473..c580e72ea 100644 --- a/src/components/layout/Footer.astro +++ b/src/components/layout/Footer.astro @@ -1,5 +1,5 @@ --- -import { menuLinks, siteConfig } from "@/site-config"; +import { menuLinks, siteConfig } from "@/site.config"; const year = new Date().getFullYear(); --- diff --git a/src/components/layout/Header.astro b/src/components/layout/Header.astro index 42d525882..85a1dbc47 100644 --- a/src/components/layout/Header.astro +++ b/src/components/layout/Header.astro @@ -1,15 +1,13 @@ --- -import { menuLinks } from "@/site-config"; -import Search from "../Search.astro"; -import ThemeToggle from "../ThemeToggle.astro"; - -const url = new URL(Astro.request.url); +import Search from "@/components/Search.astro"; +import ThemeToggle from "@/components/ThemeToggle.astro"; +import { menuLinks } from "@/site.config"; ---
          @@ -43,7 +41,7 @@ const url = new URL(Astro.request.url); { menuLinks.map((link) => ( = Polymorphic<{ as: Tag }> & { note: CollectionEntry<"note">; diff --git a/src/layouts/Base.astro b/src/layouts/Base.astro index 6578270f3..6efb51268 100644 --- a/src/layouts/Base.astro +++ b/src/layouts/Base.astro @@ -4,7 +4,7 @@ import SkipLink from "@/components/SkipLink.astro"; import ThemeProvider from "@/components/ThemeProvider.astro"; import Footer from "@/components/layout/Footer.astro"; import Header from "@/components/layout/Header.astro"; -import { siteConfig } from "@/site-config"; +import { siteConfig } from "@/site.config"; import type { SiteMeta } from "@/types"; interface Props { diff --git a/tsconfig.json b/tsconfig.json index 1288ac234..2ea582d6f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -4,15 +4,9 @@ "baseUrl": ".", "lib": ["es2022", "dom", "dom.iterable"], "paths": { - "@/assets/*": ["src/assets/*"], - "@/components/*": ["src/components/*"], - "@/data/*": ["src/data/*"], - "@/layouts/*": ["src/layouts/*"], - "@/utils/*": ["src/utils/*"], - "@/types": ["src/types.ts"], - "@/site-config": ["src/site.config.ts"] + "@/*": ["src/*"] } }, - "include": [".astro/types.d.ts", "**/*", "**/*.astro"], + "include": [".astro/types.d.ts", "**/*"], "exclude": ["node_modules", "**/node_modules/*", ".vscode", "dist"] } From cc40ad6dcf0dac582bfffc808b5f32e4d14902cb Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 13:38:13 +0000 Subject: [PATCH 43/47] mv collection config --- src/{content/config.ts => content.config.ts} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename src/{content/config.ts => content.config.ts} (89%) diff --git a/src/content/config.ts b/src/content.config.ts similarity index 89% rename from src/content/config.ts rename to src/content.config.ts index 5a02d0283..1c585c7b3 100644 --- a/src/content/config.ts +++ b/src/content.config.ts @@ -10,7 +10,7 @@ const baseSchema = z.object({ }); const post = defineCollection({ - loader: glob({ pattern: "**/*.md", base: "./src/content/post" }), + loader: glob({ base: "./src/content/post", pattern: "**/*.{md,mdx}" }), schema: ({ image }) => baseSchema.extend({ description: z.string(), @@ -35,7 +35,7 @@ const post = defineCollection({ }); const note = defineCollection({ - loader: glob({ pattern: "**/*.md", base: "./src/content/note" }), + loader: glob({ base: "./src/content/note", pattern: "**/*.{md,mdx}" }), schema: baseSchema.extend({ description: z.string().optional(), publishDate: z From e288c39a54dd0bac63104db30f03f7809a536099 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 13:38:24 +0000 Subject: [PATCH 44/47] update webmention post --- src/content/post/webmentions.md | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/content/post/webmentions.md b/src/content/post/webmentions.md index e17307e6d..1b11ca1f5 100644 --- a/src/content/post/webmentions.md +++ b/src/content/post/webmentions.md @@ -10,11 +10,9 @@ updatedDate: 8 April 2024 1. Add a link on your homepage to either your GitHub profile and/or email address as per [IndieLogin's](https://indielogin.com/setup) instructions. You _could_ do this via `src/components/SocialList.astro`, just be sure to include `isWebmention` to the relevant link if doing so. 2. Create an account @ [Webmention.io](https://webmention.io/) by entering your website's address. -3. Add the link feed to `siteConfig.webmentions`, found in `src/site.config.ts`. -4. Create a `.env` file, or rename the included `.example.env`, and add the key `WEBMENTION_API_KEY` and set the api key. -5. Go to [brid.gy](https://brid.gy/) and sign-in to each social account[s] you wish to link. -6. Publish and build your website, remember to add the api key, and it should now be ready to receive webmentions! -7. That's it, maybe give this post a like! +3. Add the link feed and api key to and `.env` file with the key `WEBMENTION_URL` and `WEBMENTION_API_KEY` respectively. You could rename `.env.example` found in this template. +4. Go to [brid.gy](https://brid.gy/) and sign-in to each social account[s] you wish to link. +5. Publish and build your website, remember to add the api key, and it should now be ready to receive webmentions! ## What are webmentions @@ -36,23 +34,19 @@ Firstly, you need to add a link on your site to prove ownership. If you have a l ### Sign up to Webmention.io -Next, head over to [Webmention.io](https://webmention.io/) and create an account by signing in with your domain name, e.g. `https://astro-cactus.chriswilliams.dev/`. Please note that .app TLDs don't function correctly. Once in, it will give you a couple of links for your domain to accept webmentions. Make a note of these and head over to `src/site.config.ts` and add them to `siteConfig.webmentions`. +Next, head over to [Webmention.io](https://webmention.io/) and create an account by signing in with your domain name, e.g. `https://astro-cactus.chriswilliams.dev/`. Please note that .app TLDs don't function correctly. Once in, it will give you a couple of links for your domain to accept webmentions. Make a note of these and create a `.env` file (this template include an example `.env.example` which you could rename). Add the link feed and api key with the key/values of `WEBMENTION_URL` and `WEBMENTION_API_KEY` respectively. Please try not to publish this to a repository! :::note -You don't have to include the pingback link. Maybe coincidentally, but after adding it I started to receive a higher frequency of spam in my mailbox, informing me that my website could be better. Tbh they're not wrong. I've now removed it, but it's up to you +You don't have to include the pingback link. Maybe coincidentally, but after adding it I started to receive a higher frequency of spam in my mailbox, informing me that my website could be better. Tbh they're not wrong. I've now removed it, but it's up to you. ::: -### Adding your api key - -Next is to add your api key, also from [Webmention.io](https://webmention.io/), to a `.env` file. Rename the `.example.env`, or create your own, with `WEBMENTION_API_KEY=` and then your personal key. Please try not to publish this to a repository! - ### Sign up to Brid.gy You're now going to have to use [brid.gy](https://brid.gy/). As the name suggests, it links your website to your social media accounts. For every account you want to set up (e.g. Mastodon), click on the relevant button and connect each account you want brid.gy to search. Just to note again, brid.gy currently has an issue with .app TLDs. ## Testing everything works -With everything set, it's now time to build and publish your website. **REMEMBER** to set your environment variable `WEBMENTION_API_KEY` with your host, I also forgot this part. +With everything set, it's now time to build and publish your website. **REMEMBER** to set your environment variables `WEBMENTION_API_KEY` & `WEBMENTION_URL` with your host. You can check to see if everything is working by sending a test webmention via [webmentions.rocks](https://webmention.rocks/receive/1). Log in with your domain, enter the auth code, and then the url of the page you want to test. For example, to test this page I would add `https://astro-cactus.chriswilliams.dev/posts/webmentions/`. To view it on your website, rebuild or (re)start dev mode locally, and you should see the result at the bottom of your page. From a649da29b8d9dd264149efdca2d0fe1b4cfa1083 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 13:38:38 +0000 Subject: [PATCH 45/47] Update README.md --- README.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index afefa3cb4..34d41a62e 100644 --- a/README.md +++ b/README.md @@ -26,16 +26,14 @@ Astro Cactus is a simple opinionated starter built with the Astro framework. Use ## Key Features -- Astro v4 Fast 🚀 +- Astro v5 Fast 🚀 - TailwindCSS Utility classes - Accessible, semantic HTML markup - Responsive & SEO-friendly - Dark / Light mode, using Tailwind and CSS variables -- [Astro Assets Integration](https://docs.astro.build/en/guides/assets/) for optimised images -- MD & [MDX](https://docs.astro.build/en/guides/markdown-content/#mdx-only-features) posts +- MD & [MDX](https://docs.astro.build/en/guides/markdown-content/#mdx-only-features) posts & notes - Includes [Admonitions](https://astro-cactus.chriswilliams.dev/posts/markdown-elements/admonistions/) - [Satori](https://github.com/vercel/satori) for creating open graph png images -- Pagination - [Automatic RSS feed](https://docs.astro.build/en/guides/rss) - [Webmentions](https://webmention.io/) - Auto-generated: @@ -44,7 +42,7 @@ Astro Cactus is a simple opinionated starter built with the Astro framework. Use - [web app manifest](https://github.com/alextim/astro-lib/blob/main/packages/astro-webmanifest/README.md) - [Pagefind](https://pagefind.app/) static search library integration - [Astro Icon](https://github.com/natemoo-re/astro-icon) svg icon component -- [Expressive Code](https://expressive-code.com/) source code and syntax highlighter +- [Expressive Code](https://expressive-code.com/) code blocks and syntax highlighter ## Demo 💻 @@ -86,7 +84,7 @@ Replace pnpm with your choice of npm / yarn ## Configure - Edit the config file `src/site.config.ts` for basic site meta data - - Read [this post](http://astro-cactus.chriswilliams.dev/posts/webmentions/) for adding webmentions to your site, otherwise set `siteConfig.webmentions.link` to an empty value. + - Read [this post](http://astro-cactus.chriswilliams.dev/posts/webmentions/) for adding webmentions to your site. - Update file `astro.config.ts` - **Important**: the site property with your own domain. - [astro-webmanifest options](https://github.com/alextim/astro-lib/blob/main/packages/astro-webmanifest/README.md) From d11d9f6ac17b50d2dc3964535ee21198c1e1348f Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 13:45:53 +0000 Subject: [PATCH 46/47] remove setting env type --- src/env.d.ts | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/env.d.ts b/src/env.d.ts index af7d52f5f..e1ef1df9a 100644 --- a/src/env.d.ts +++ b/src/env.d.ts @@ -3,11 +3,3 @@ declare module "@pagefind/default-ui" { constructor(arg: unknown); } } - -interface ImportMetaEnv { - readonly WEBMENTION_API_KEY: string; -} - -interface ImportMeta { - readonly env: ImportMetaEnv; -} From e95f01d3d5d43e229db249ed66eed236a482a758 Mon Sep 17 00:00:00 2001 From: Chris Williams Date: Fri, 6 Dec 2024 14:28:16 +0000 Subject: [PATCH 47/47] move pingback url to an env --- .example.env | 3 ++- README.md | 2 +- astro.config.ts | 5 +++-- src/components/BaseHead.astro | 9 ++++----- src/content/post/webmentions.md | 8 ++++---- src/site.config.ts | 5 ----- src/types.ts | 4 ---- 7 files changed, 14 insertions(+), 22 deletions(-) diff --git a/.example.env b/.example.env index a2df0a662..f8f50fa97 100644 --- a/.example.env +++ b/.example.env @@ -1,2 +1,3 @@ WEBMENTION_API_KEY= -WEBMENTION_URL= \ No newline at end of file +WEBMENTION_URL= +WEBMENTION_PINGBACK=#optional \ No newline at end of file diff --git a/README.md b/README.md index 34d41a62e..31299f4db 100644 --- a/README.md +++ b/README.md @@ -84,7 +84,6 @@ Replace pnpm with your choice of npm / yarn ## Configure - Edit the config file `src/site.config.ts` for basic site meta data - - Read [this post](http://astro-cactus.chriswilliams.dev/posts/webmentions/) for adding webmentions to your site. - Update file `astro.config.ts` - **Important**: the site property with your own domain. - [astro-webmanifest options](https://github.com/alextim/astro-lib/blob/main/packages/astro-webmanifest/README.md) @@ -95,6 +94,7 @@ Replace pnpm with your choice of npm / yarn - You can also modify the theme(s) for markdown code blocks generated by [Expressive Code](https://expressive-code.com). Astro Cactus has both a dark (dracula) and light (github-light) theme, which can be found in `src/site.config.ts`. You can find more theme(s) and options [here](https://expressive-code.com/guides/themes/#available-themes). - Edit social links in `src/components/SocialList.astro` to add/replace your media profile. Icons can be found @ [icones.js.org](https://icones.js.org/), per [Astro Icon's instructions](https://www.astroicon.dev/guides/customization/#find-an-icon-set). - Create/edit posts & notes for your blog within `src/content/post/` & `src/content/note/` with .md/mdx file(s). See [below](#adding-posts-and-notes) for more details. + - Read [this post](http://astro-cactus.chriswilliams.dev/posts/webmentions/) for adding webmentions to your site. - OG Image: - If you would like to change the style of the generated image the Satori library creates, open up `src/pages/og-image/[slug].png.ts` to the markup function where you can edit the html/tailwind-classes as necessary. You can use this [playground](https://og-playground.vercel.app/) to aid your design. - You can also create your own og images and skip satori generating it for you by adding an ogImage property in the frontmatter with a link to the asset, an example can be found in `src/content/post/social-image.md`. More info on frontmatter can be found [here](#frontmatter) diff --git a/astro.config.ts b/astro.config.ts index 190275818..9586c0910 100644 --- a/astro.config.ts +++ b/astro.config.ts @@ -105,8 +105,9 @@ export default defineConfig({ }, env: { schema: { - WEBMENTION_API_KEY: envField.string({ context: "server", access: "secret" }), - WEBMENTION_URL: envField.string({ context: "client", access: "public", default: undefined }), + WEBMENTION_API_KEY: envField.string({ context: "server", access: "secret", optional: true }), + WEBMENTION_URL: envField.string({ context: "client", access: "public", optional: true }), + WEBMENTION_PINGBACK: envField.string({ context: "client", access: "public", optional: true }), }, }, }); diff --git a/src/components/BaseHead.astro b/src/components/BaseHead.astro index ac764c33c..18924be38 100644 --- a/src/components/BaseHead.astro +++ b/src/components/BaseHead.astro @@ -1,4 +1,5 @@ --- +import { WEBMENTION_PINGBACK, WEBMENTION_URL } from "astro:env/client"; import { siteConfig } from "@/site.config"; import type { SiteMeta } from "@/types"; import "@/styles/global.css"; @@ -76,12 +77,10 @@ const socialImageURL = new URL(ogImage ? ogImage : "/social-card.png", Astro.url {/* Webmentions */} { - siteConfig.webmentions.link && ( + WEBMENTION_URL && ( <> - - {siteConfig.webmentions.pingback && ( - - )} + + {WEBMENTION_PINGBACK && } ) } diff --git a/src/content/post/webmentions.md b/src/content/post/webmentions.md index 1b11ca1f5..70168d8f7 100644 --- a/src/content/post/webmentions.md +++ b/src/content/post/webmentions.md @@ -3,14 +3,14 @@ title: "Adding Webmentions to Astro Cactus" description: "This post describes the process of adding webmentions to your own site" publishDate: "11 Oct 2023" tags: ["webmentions", "astro", "social"] -updatedDate: 8 April 2024 +updatedDate: 6 December 2024 --- ## TLDR 1. Add a link on your homepage to either your GitHub profile and/or email address as per [IndieLogin's](https://indielogin.com/setup) instructions. You _could_ do this via `src/components/SocialList.astro`, just be sure to include `isWebmention` to the relevant link if doing so. 2. Create an account @ [Webmention.io](https://webmention.io/) by entering your website's address. -3. Add the link feed and api key to and `.env` file with the key `WEBMENTION_URL` and `WEBMENTION_API_KEY` respectively. You could rename `.env.example` found in this template. +3. Add the link feed and api key to a `.env` file with the key `WEBMENTION_URL` and `WEBMENTION_API_KEY` respectively, you could rename `.env.example` found in this template. You can also add the optional `WEBMENTION_PINGBACK` link here too. 4. Go to [brid.gy](https://brid.gy/) and sign-in to each social account[s] you wish to link. 5. Publish and build your website, remember to add the api key, and it should now be ready to receive webmentions! @@ -34,10 +34,10 @@ Firstly, you need to add a link on your site to prove ownership. If you have a l ### Sign up to Webmention.io -Next, head over to [Webmention.io](https://webmention.io/) and create an account by signing in with your domain name, e.g. `https://astro-cactus.chriswilliams.dev/`. Please note that .app TLDs don't function correctly. Once in, it will give you a couple of links for your domain to accept webmentions. Make a note of these and create a `.env` file (this template include an example `.env.example` which you could rename). Add the link feed and api key with the key/values of `WEBMENTION_URL` and `WEBMENTION_API_KEY` respectively. Please try not to publish this to a repository! +Next, head over to [Webmention.io](https://webmention.io/) and create an account by signing in with your domain name, e.g. `https://astro-cactus.chriswilliams.dev/`. Please note that .app TLDs don't function correctly. Once in, it will give you a couple of links for your domain to accept webmentions. Make a note of these and create a `.env` file (this template include an example `.env.example` which you could rename). Add the link feed and api key with the key/values of `WEBMENTION_URL` and `WEBMENTION_API_KEY` respectively, and the optional `WEBMENTION_PINGBACK` url if required. Please try not to publish this to a repository! :::note -You don't have to include the pingback link. Maybe coincidentally, but after adding it I started to receive a higher frequency of spam in my mailbox, informing me that my website could be better. Tbh they're not wrong. I've now removed it, but it's up to you. +You don't have to include the pingback link. Maybe coincidentally, but after adding it I started to receive a higher frequency of spam in my mailbox, informing me that my website could be better. TBH they're not wrong. I've now removed it, but it's up to you. ::: ### Sign up to Brid.gy diff --git a/src/site.config.ts b/src/site.config.ts index 3b843180e..d1b48ccb3 100644 --- a/src/site.config.ts +++ b/src/site.config.ts @@ -21,11 +21,6 @@ export const siteConfig: SiteConfig = { ogLocale: "en_GB", // Used to construct the meta title property found in src/components/BaseHead.astro L:11, and webmanifest name found in astro.config.ts L:42 title: "Astro Theme Cactus", - webmentions: { - // Webmention.io API endpoint. Get your own here: https://webmention.io/, and follow this blog post: https://astro-cactus.chriswilliams.dev/posts/webmentions/ - link: process.env.WEBMENTIONS_URL, - pingback: undefined, - }, }; // Used to generate links in both the Header & Footer. diff --git a/src/types.ts b/src/types.ts index 436406879..88345e31c 100644 --- a/src/types.ts +++ b/src/types.ts @@ -8,10 +8,6 @@ export interface SiteConfig { lang: string; ogLocale: string; title: string; - webmentions: { - link?: string | undefined; - pingback?: string | undefined; - }; } export interface PaginationLink {