diff --git a/packages/astro-utils/package.json b/packages/astro-utils/package.json index 8a7b2ed075a..4984ea66775 100644 --- a/packages/astro-utils/package.json +++ b/packages/astro-utils/package.json @@ -24,14 +24,14 @@ }, "devDependencies": { "@types/react": "~19.2.2", - "astro": "^5.5.6" + "astro": "^5.16.4" }, "peerDependencies": { - "astro": "^5.5.6" + "astro": "^5.16.4" }, "dependencies": { "@astrojs/check": "^0.9.4", - "@astrojs/starlight": "^0.36.1", + "@astrojs/starlight": "^0.37.0", "@expressive-code/core": "^0.41.2", "@typespec/playground": "workspace:^", "astro-expressive-code": "^0.41.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d38e971f4e6..ef10d70c8e8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -147,8 +147,8 @@ importers: specifier: ^0.9.4 version: 0.9.5(prettier-plugin-astro@0.14.1)(prettier@3.6.2)(typescript@5.9.3) '@astrojs/starlight': - specifier: ^0.36.1 - version: 0.36.2(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) + specifier: ^0.37.0 + version: 0.37.0(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) '@expressive-code/core': specifier: ^0.41.2 version: 0.41.3 @@ -157,7 +157,7 @@ importers: version: link:../playground astro-expressive-code: specifier: ^0.41.2 - version: 0.41.3(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) + version: 0.41.3(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) pathe: specifier: ^2.0.3 version: 2.0.3 @@ -172,8 +172,8 @@ importers: specifier: ~19.2.2 version: 19.2.6 astro: - specifier: ^5.5.6 - version: 5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) + specifier: ^5.16.4 + version: 5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) packages/best-practices: devDependencies: @@ -2507,16 +2507,16 @@ importers: specifier: ^0.9.4 version: 0.9.5(prettier-plugin-astro@0.14.1)(prettier@3.6.2)(typescript@5.9.3) '@astrojs/react': - specifier: ^4.2.1 + specifier: ^4.4.2 version: 4.4.2(@types/node@24.10.1)(@types/react-dom@19.2.3(@types/react@19.2.6))(@types/react@19.2.6)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tsx@4.20.6)(yaml@2.8.1) '@astrojs/starlight': - specifier: ^0.36.1 - version: 0.36.2(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) + specifier: ^0.37.0 + version: 0.37.0(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) '@docsearch/css': - specifier: ^4.1.0 + specifier: ^4.3.2 version: 4.3.2 '@docsearch/js': - specifier: ^4.1.0 + specifier: ^4.3.2 version: 4.3.2 '@expressive-code/core': specifier: ^0.41.2 @@ -2534,11 +2534,11 @@ importers: specifier: workspace:^ version: link:../packages/playground astro: - specifier: ^5.5.6 - version: 5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) + specifier: ^5.16.4 + version: 5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) astro-rehype-relative-markdown-links: specifier: ^0.18.1 - version: 0.18.1(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) + version: 0.18.1(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) clsx: specifier: ^2.1.1 version: 2.1.1 @@ -2635,7 +2635,7 @@ importers: version: link:../packages/xml astro-expressive-code: specifier: ^0.41.2 - version: 0.41.3(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) + version: 0.41.3(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) rehype-mermaid: specifier: ^3.0.0 version: 3.0.0(playwright@1.56.1) @@ -2797,8 +2797,8 @@ packages: '@astrojs/sitemap@3.6.0': resolution: {integrity: sha512-4aHkvcOZBWJigRmMIAJwRQXBS+ayoP5z40OklTXYXhUDhwusz+DyDl+nSshY6y9DvkVEavwNcFO8FD81iGhXjg==} - '@astrojs/starlight@0.36.2': - resolution: {integrity: sha512-QR8NfO7+7DR13kBikhQwAj3IAoptLLNs9DkyKko2M2l3PrqpcpVUnw1JBJ0msGDIwE6tBbua2UeBND48mkh03w==} + '@astrojs/starlight@0.37.0': + resolution: {integrity: sha512-1AlaEjYYRO+5o6P5maPUBQZr6Q3wtuhMQTmsDQExI07wJVwe7EC2wGhXnFo+jpCjwHv/Bdg33PQheY4UhMj01g==} peerDependencies: astro: ^5.5.0 @@ -4439,89 +4439,105 @@ packages: resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} cpu: [arm64] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-arm@1.2.4': resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} cpu: [arm] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-ppc64@1.2.4': resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} cpu: [ppc64] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-riscv64@1.2.4': resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} cpu: [riscv64] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-s390x@1.2.4': resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} cpu: [s390x] os: [linux] + libc: [glibc] '@img/sharp-libvips-linux-x64@1.2.4': resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} cpu: [x64] os: [linux] + libc: [glibc] '@img/sharp-libvips-linuxmusl-arm64@1.2.4': resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} cpu: [arm64] os: [linux] + libc: [musl] '@img/sharp-libvips-linuxmusl-x64@1.2.4': resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} cpu: [x64] os: [linux] + libc: [musl] '@img/sharp-linux-arm64@0.34.5': resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] + libc: [glibc] '@img/sharp-linux-arm@0.34.5': resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm] os: [linux] + libc: [glibc] '@img/sharp-linux-ppc64@0.34.5': resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [ppc64] os: [linux] + libc: [glibc] '@img/sharp-linux-riscv64@0.34.5': resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [riscv64] os: [linux] + libc: [glibc] '@img/sharp-linux-s390x@0.34.5': resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [s390x] os: [linux] + libc: [glibc] '@img/sharp-linux-x64@0.34.5': resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] + libc: [glibc] '@img/sharp-linuxmusl-arm64@0.34.5': resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] + libc: [musl] '@img/sharp-linuxmusl-x64@0.34.5': resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] + libc: [musl] '@img/sharp-wasm32@0.34.5': resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} @@ -5554,24 +5570,28 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] + libc: [glibc] '@reflink/reflink-linux-arm64-musl@0.1.19': resolution: {integrity: sha512-37iO/Dp6m5DDaC2sf3zPtx/hl9FV3Xze4xoYidrxxS9bgP3S8ALroxRK6xBG/1TtfXKTvolvp+IjrUU6ujIGmA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + libc: [musl] '@reflink/reflink-linux-x64-gnu@0.1.19': resolution: {integrity: sha512-jbI8jvuYCaA3MVUdu8vLoLAFqC+iNMpiSuLbxlAgg7x3K5bsS8nOpTRnkLF7vISJ+rVR8W+7ThXlXlUQ93ulkw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + libc: [glibc] '@reflink/reflink-linux-x64-musl@0.1.19': resolution: {integrity: sha512-e9FBWDe+lv7QKAwtKOt6A2W/fyy/aEEfr0g6j/hWzvQcrzHCsz07BNQYlNOjTfeytrtLU7k449H1PI95jA4OjQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + libc: [musl] '@reflink/reflink-win32-arm64-msvc@0.1.19': resolution: {integrity: sha512-09PxnVIQcd+UOn4WAW73WU6PXL7DwGS6wPlkMhMg2zlHHG65F3vHepOw06HFCq+N42qkaNAc8AKIabWvtk6cIQ==} @@ -5664,61 +5684,73 @@ packages: resolution: {integrity: sha512-OVSQgEZDVLnTbMq5NBs6xkmz3AADByCWI4RdKSFNlDsYXdFtlxS59J+w+LippJe8KcmeSSM3ba+GlsM9+WwC1w==} cpu: [arm] os: [linux] + libc: [glibc] '@rollup/rollup-linux-arm-musleabihf@4.49.0': resolution: {integrity: sha512-ZnfSFA7fDUHNa4P3VwAcfaBLakCbYaxCk0jUnS3dTou9P95kwoOLAMlT3WmEJDBCSrOEFFV0Y1HXiwfLYJuLlA==} cpu: [arm] os: [linux] + libc: [musl] '@rollup/rollup-linux-arm64-gnu@4.49.0': resolution: {integrity: sha512-Z81u+gfrobVK2iV7GqZCBfEB1y6+I61AH466lNK+xy1jfqFLiQ9Qv716WUM5fxFrYxwC7ziVdZRU9qvGHkYIJg==} cpu: [arm64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-arm64-musl@4.49.0': resolution: {integrity: sha512-zoAwS0KCXSnTp9NH/h9aamBAIve0DXeYpll85shf9NJ0URjSTzzS+Z9evmolN+ICfD3v8skKUPyk2PO0uGdFqg==} cpu: [arm64] os: [linux] + libc: [musl] '@rollup/rollup-linux-loongarch64-gnu@4.49.0': resolution: {integrity: sha512-2QyUyQQ1ZtwZGiq0nvODL+vLJBtciItC3/5cYN8ncDQcv5avrt2MbKt1XU/vFAJlLta5KujqyHdYtdag4YEjYQ==} cpu: [loong64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-ppc64-gnu@4.49.0': resolution: {integrity: sha512-k9aEmOWt+mrMuD3skjVJSSxHckJp+SiFzFG+v8JLXbc/xi9hv2icSkR3U7uQzqy+/QbbYY7iNB9eDTwrELo14g==} cpu: [ppc64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-riscv64-gnu@4.49.0': resolution: {integrity: sha512-rDKRFFIWJ/zJn6uk2IdYLc09Z7zkE5IFIOWqpuU0o6ZpHcdniAyWkwSUWE/Z25N/wNDmFHHMzin84qW7Wzkjsw==} cpu: [riscv64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-riscv64-musl@4.49.0': resolution: {integrity: sha512-FkkhIY/hYFVnOzz1WeV3S9Bd1h0hda/gRqvZCMpHWDHdiIHn6pqsY3b5eSbvGccWHMQ1uUzgZTKS4oGpykf8Tw==} cpu: [riscv64] os: [linux] + libc: [musl] '@rollup/rollup-linux-s390x-gnu@4.49.0': resolution: {integrity: sha512-gRf5c+A7QiOG3UwLyOOtyJMD31JJhMjBvpfhAitPAoqZFcOeK3Kc1Veg1z/trmt+2P6F/biT02fU19GGTS529A==} cpu: [s390x] os: [linux] + libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.40.0': resolution: {integrity: sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==} cpu: [x64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.49.0': resolution: {integrity: sha512-BR7+blScdLW1h/2hB/2oXM+dhTmpW3rQt1DeSiCP9mc2NMMkqVgjIN3DDsNpKmezffGC9R8XKVOLmBkRUcK/sA==} cpu: [x64] os: [linux] + libc: [glibc] '@rollup/rollup-linux-x64-musl@4.49.0': resolution: {integrity: sha512-hDMOAe+6nX3V5ei1I7Au3wcr9h3ktKzDvF2ne5ovX8RZiAHEtX1A5SNNk4zt1Qt77CmnbqT+upb/umzoPMWiPg==} cpu: [x64] os: [linux] + libc: [musl] '@rollup/rollup-win32-arm64-msvc@4.49.0': resolution: {integrity: sha512-wkNRzfiIGaElC9kXUT+HLx17z7D0jl+9tGYRKwd8r7cUqTL7GYAvgUY++U2hK6Ar7z5Z6IRRoWC8kQxpmM7TDA==} @@ -7178,8 +7210,8 @@ packages: peerDependencies: astro: '>=2 <6' - astro@5.16.0: - resolution: {integrity: sha512-GaDRs2Mngpw3dr2vc085GnORh98NiXxwIjg/EoQQQl/icZt3Z7s0BRsYHDZ8swkZbOA6wZsqWJdrNirl+iKcDg==} + astro@5.16.4: + resolution: {integrity: sha512-rgXI/8/tnO3Y9tfAaUyg/8beKhlIMltbiC8Q6jCoAfEidOyaue4KYKzbe0gJIb6qEdEaG3Kf3BY3EOSLkbWOLg==} engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} hasBin: true @@ -12854,8 +12886,8 @@ packages: resolution: {integrity: sha512-6NCPkv1ClwH+/BGE9QeoTIl09nuiAt0gS28nn1PvYXsGKRwM2TCbFA2QiilmehPDTXIe684k4rZI1yl3A1PCUw==} engines: {node: '>=18.12.0'} - unstorage@1.17.2: - resolution: {integrity: sha512-cKEsD6iBWJgOMJ6vW1ID/SYuqNf8oN4yqRk8OYqaVQ3nnkJXOT1PSpaMh2QfzLs78UN5kSNRD2c/mgjT8tX7+w==} + unstorage@1.17.3: + resolution: {integrity: sha512-i+JYyy0DoKmQ3FximTHbGadmIYb8JEpq7lxUjnjeB702bCPum0vzo6oy5Mfu0lpqISw7hCyMW2yj4nWC8bqJ3Q==} peerDependencies: '@azure/app-configuration': ^1.8.0 '@azure/cosmos': ^4.2.0 @@ -13851,12 +13883,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@astrojs/mdx@4.3.12(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + '@astrojs/mdx@4.3.12(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': dependencies: '@astrojs/markdown-remark': 6.3.9 '@mdx-js/mdx': 3.1.1 acorn: 8.15.0 - astro: 5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) + astro: 5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) es-module-lexer: 1.7.0 estree-util-visit: 2.0.0 hast-util-to-html: 9.0.5 @@ -13903,17 +13935,17 @@ snapshots: stream-replace-string: 2.0.0 zod: 3.25.76 - '@astrojs/starlight@0.36.2(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': + '@astrojs/starlight@0.37.0(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1))': dependencies: '@astrojs/markdown-remark': 6.3.9 - '@astrojs/mdx': 4.3.12(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) + '@astrojs/mdx': 4.3.12(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) '@astrojs/sitemap': 3.6.0 '@pagefind/default-ui': 1.4.0 '@types/hast': 3.0.4 '@types/js-yaml': 4.0.9 '@types/mdast': 4.0.4 - astro: 5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) - astro-expressive-code: 0.41.3(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) + astro: 5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) + astro-expressive-code: 0.41.3(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)) bcp-47: 2.1.0 hast-util-from-html: 2.0.3 hast-util-select: 6.0.4 @@ -13922,6 +13954,7 @@ snapshots: i18next: 23.16.8 js-yaml: 4.1.1 klona: 2.0.6 + magic-string: 0.30.21 mdast-util-directive: 3.1.0 mdast-util-to-markdown: 2.1.2 mdast-util-to-string: 4.0.0 @@ -18819,7 +18852,7 @@ snapshots: '@types/sax@1.2.7': dependencies: - '@types/node': 17.0.45 + '@types/node': 24.10.1 '@types/semver@7.7.1': {} @@ -19552,7 +19585,7 @@ snapshots: algoliasearch: 4.25.3 clipanion: 4.0.0-rc.4(typanion@3.14.0) diff: 5.2.0 - ink: 3.2.0(@types/react@19.2.6)(react@17.0.2) + ink: 3.2.0(@types/react@19.2.6)(react@18.3.1) ink-text-input: 4.0.3(ink@3.2.0(@types/react@19.2.6)(react@17.0.2))(react@17.0.2) react: 17.0.2 semver: 7.7.3 @@ -19702,7 +19735,7 @@ snapshots: '@yarnpkg/plugin-git': 3.1.3(@yarnpkg/core@4.5.0(typanion@3.14.0))(typanion@3.14.0) clipanion: 4.0.0-rc.4(typanion@3.14.0) es-toolkit: 1.42.0 - ink: 3.2.0(@types/react@19.2.6)(react@18.3.1) + ink: 3.2.0(@types/react@19.2.6)(react@17.0.2) react: 17.0.2 semver: 7.7.3 tslib: 2.8.1 @@ -20052,14 +20085,14 @@ snapshots: astring@1.9.0: {} - astro-expressive-code@0.41.3(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): + astro-expressive-code@0.41.3(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): dependencies: - astro: 5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) + astro: 5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) rehype-expressive-code: 0.41.3 - astro-rehype-relative-markdown-links@0.18.1(astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): + astro-rehype-relative-markdown-links@0.18.1(astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1)): dependencies: - astro: 5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) + astro: 5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1) catch-unknown: 2.0.0 debug: 4.4.3(supports-color@8.1.1) github-slugger: 2.0.0 @@ -20071,7 +20104,7 @@ snapshots: transitivePeerDependencies: - supports-color - astro@5.16.0(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1): + astro@5.16.4(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1)(@types/node@24.10.1)(rollup@4.49.0)(tsx@4.20.6)(typescript@5.9.3)(yaml@2.8.1): dependencies: '@astrojs/compiler': 2.13.0 '@astrojs/internal-helpers': 0.7.5 @@ -20126,7 +20159,7 @@ snapshots: ultrahtml: 1.6.0 unifont: 0.6.0 unist-util-visit: 5.0.0 - unstorage: 1.17.2(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1) + unstorage: 1.17.3(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1) vfile: 6.0.3 vite: 6.4.1(@types/node@24.10.1)(tsx@4.20.6)(yaml@2.8.1) vitefu: 1.1.1(vite@6.4.1(@types/node@24.10.1)(tsx@4.20.6)(yaml@2.8.1)) @@ -27194,7 +27227,7 @@ snapshots: picomatch: 4.0.3 webpack-virtual-modules: 0.6.2 - unstorage@1.17.2(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1): + unstorage@1.17.3(@azure/identity@4.13.0)(@azure/storage-blob@12.29.1): dependencies: anymatch: 3.1.3 chokidar: 4.0.3 diff --git a/website/astro.config.mjs b/website/astro.config.mjs index a691c046022..8bb1ec30150 100644 --- a/website/astro.config.mjs +++ b/website/astro.config.mjs @@ -51,6 +51,18 @@ export default defineConfig({ }, }, ], + social: [ + { + label: "GitHub", + icon: "github", + href: "https://github.com/microsoft/typespec", + }, + { + label: "Discord", + icon: "discord", + href: "https://aka.ms/typespec/discord", + }, + ], plugins: [], }), react(), diff --git a/website/package.json b/website/package.json index 90924191924..28784387449 100644 --- a/website/package.json +++ b/website/package.json @@ -17,16 +17,16 @@ }, "dependencies": { "@astrojs/check": "^0.9.4", - "@astrojs/react": "^4.2.1", - "@astrojs/starlight": "^0.36.1", - "@docsearch/css": "^4.1.0", - "@docsearch/js": "^4.1.0", + "@astrojs/react": "^4.4.2", + "@astrojs/starlight": "^0.37.0", + "@docsearch/css": "^4.3.2", + "@docsearch/js": "^4.3.2", "@expressive-code/core": "^0.41.2", "@fluentui/react-components": "~9.72.3", "@fluentui/react-icons": "^2.0.292", "@typespec/compiler": "workspace:^", "@typespec/playground": "workspace:^", - "astro": "^5.5.6", + "astro": "^5.16.4", "astro-rehype-relative-markdown-links": "^0.18.1", "clsx": "^2.1.1", "date-fns": "^4.1.0", diff --git a/website/src/components/asset-img.astro b/website/src/components/asset-img.astro index f264835ec2f..456b3b6f9ec 100644 --- a/website/src/components/asset-img.astro +++ b/website/src/components/asset-img.astro @@ -7,12 +7,13 @@ import type { HTMLAttributes } from "astro/types"; export interface AssetImgProps extends HTMLAttributes<"img"> { src: string; + class?: string; } -const { src, alt, ...rest } = Astro.props; +const { src, alt, class: className, ...rest } = Astro.props; --- -{alt +{alt diff --git a/website/src/components/homepage/overview-illustration.astro b/website/src/components/homepage/overview-illustration.astro index a7db55bebbf..25f770c0365 100644 --- a/website/src/components/homepage/overview-illustration.astro +++ b/website/src/components/homepage/overview-illustration.astro @@ -8,8 +8,8 @@ import { OverviewIllustrationTerminalContent } from "./overview-illustration-ter diff --git a/website/src/components/learn-more-card.astro b/website/src/components/learn-more-card.astro index 6e9ce657bea..745aac57a4f 100644 --- a/website/src/components/learn-more-card.astro +++ b/website/src/components/learn-more-card.astro @@ -1,7 +1,7 @@ --- import FluentImg from "./fluent-img.astro"; import Link from "@typespec/astro-utils/components/link.astro"; -import { NeutralText, DescriptionText, Text } from "./text/text"; +import { NeutralText, DescriptionText } from "./text/text"; import type { FluentImageName } from "./types"; export interface Props { @@ -24,6 +24,7 @@ const { image, title, description, link } = Astro.props; display: flex; gap: 12px; border: 2px solid transparent; + display: flex; } .item:hover { @@ -44,16 +45,25 @@ const { image, title, description, link } = Astro.props; .item-content { display: flex; + flex: 1; flex-direction: column; - gap: 12px; + } + + .title { + font-size: 20px; + font-weight: 600; + } + .arrow { + font-size: 24px; + color: var(--colorNeutralForeground3); } {image && } -
- {title} - {description} - Learn more → +
+ {title} + {description ?? "Learn more about supported features"}
+
diff --git a/website/src/components/light-dark-img.astro b/website/src/components/light-dark-img.astro index 8f37b1231b0..5864839305b 100644 --- a/website/src/components/light-dark-img.astro +++ b/website/src/components/light-dark-img.astro @@ -23,6 +23,6 @@ const { src } = Astro.props; }
- - + +
diff --git a/website/src/components/starlight-overrides/Header.astro b/website/src/components/starlight-overrides/Header.astro index abb7f4cd7e4..4d838b63f08 100644 --- a/website/src/components/starlight-overrides/Header.astro +++ b/website/src/components/starlight-overrides/Header.astro @@ -2,4 +2,4 @@ import BaseHeader from "@site/src/components/header/header.astro"; --- - + diff --git a/website/src/css/reset.css b/website/src/css/reset.css index a7fdd011b58..475426647cb 100644 --- a/website/src/css/reset.css +++ b/website/src/css/reset.css @@ -13,3 +13,8 @@ a { text-decoration: none; transition: color var(--ifm-transition-fast) var(--ifm-transition-timing-default); } + +/* In markdown tables starlight doesn't underline text. This ensures that only links with multiple siblings get underlined but not the whole cell being a link */ +.sl-markdown-content td a:not(:only-child) { + text-decoration: underline; +} diff --git a/website/src/pages/index.astro b/website/src/pages/index.astro index 3b4a8568a9f..f60918dc85b 100644 --- a/website/src/pages/index.astro +++ b/website/src/pages/index.astro @@ -113,12 +113,14 @@ import Button from "../components/button.astro"; "Inspired by TypeScript, TypeSpec is a minimal language that helps developers describe API shapes in a familiar way.", image: "book-pencil", link: Links.gettingStartedOpenAPI, + learnMoreText: "Learn about TypeSpec for REST APIs", }, { title: "Easy integration with your toolchain", description: "Write TypeSpec, emit to various formats and integrate with their ecosystems.", image: "document-add", + learnMoreText: "Learn about TypeSpec emitters", }, { title: "Multi-protocol support", @@ -126,6 +128,7 @@ import Button from "../components/button.astro"; "TypeSpec's standard library includes support for OpenAPI 3.0, JSON Schema 2020-12 and Protobuf.", image: "tasks", link: "/multi-protocol", + learnMoreText: "Check out multi-protocol examples", }, ]} />