From df80e3e6a33b05a7e14bc9039839d029f92a74f6 Mon Sep 17 00:00:00 2001 From: Paul Kniaz Date: Thu, 17 Jul 2025 20:58:27 -0400 Subject: [PATCH 01/10] Fix: improve contrast for 'function' keyword (#D73A49) --- src/components/Nav/styles.module.scss | 4 ++++ .../tutorials/en/layered-rendering-with-framebuffers.mdx | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/components/Nav/styles.module.scss b/src/components/Nav/styles.module.scss index 3d201ed7d8..33c7cf5c79 100644 --- a/src/components/Nav/styles.module.scss +++ b/src/components/Nav/styles.module.scss @@ -287,3 +287,7 @@ margin-top: 10px; } +/* Force 'function' keyword to have better contrast */ +code span[style*="#D73A49"] { + color: #000 !important; +} diff --git a/src/content/tutorials/en/layered-rendering-with-framebuffers.mdx b/src/content/tutorials/en/layered-rendering-with-framebuffers.mdx index 604a787311..c0300a4efb 100644 --- a/src/content/tutorials/en/layered-rendering-with-framebuffers.mdx +++ b/src/content/tutorials/en/layered-rendering-with-framebuffers.mdx @@ -191,7 +191,11 @@ function draw() { By default, `p5.Framebuffer`s are not drawn to the screen. The main canvas is the only thing shown at the end of `draw()`. To make the contents of a `p5.Framebuffer` visible, it has to be stamped upon the main canvas. This is typically done with a call to `image(yourFramebuffer, x, y, width, height)`. Similar to the main canvas, a `p5.Framebuffer` only gets cleared when you ask it to be cleared, so you can stamp it on the main canvas as many times as you want, like in the example below. - + `${begin('header')} ${end('header')} From 5b8c6e8d17e6266c04318218e21d0bfdc0003a66 Mon Sep 17 00:00:00 2001 From: paul_kniaz Date: Tue, 7 Oct 2025 22:06:51 -0400 Subject: [PATCH 02/10] Upgrade Shiki and switch to GitHub Light High Contrast theme for code blocks --- src/components/AnnotatedCode/index.astro | 5 ++++- src/components/CodeEmbed/index.jsx | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/components/AnnotatedCode/index.astro b/src/components/AnnotatedCode/index.astro index e50525db17..e185d13361 100644 --- a/src/components/AnnotatedCode/index.astro +++ b/src/components/AnnotatedCode/index.astro @@ -52,9 +52,12 @@ const code = rows.map((row) => row.code).join(''); // Convert it to HTML with style tags const html = await codeToHtml(code, { lang: props.lang || 'javascript', - theme: props.theme || 'github-light', + theme: props.theme || 'github-light-high-contrast', }) +console.log("Shiki theme in use:", props.theme || 'github-light-high-contrast'); +console.log(html.slice(0, 300)); + // Turn it into a DOM tree we can query const parsed = new JSDOM(html) const dom = parsed.window.document diff --git a/src/components/CodeEmbed/index.jsx b/src/components/CodeEmbed/index.jsx index d0b39fe557..c5374aecac 100644 --- a/src/components/CodeEmbed/index.jsx +++ b/src/components/CodeEmbed/index.jsx @@ -8,6 +8,8 @@ import { CodeFrame } from "./frame"; import { CopyCodeButton } from "../CopyCodeButton"; import CircleButton from "../CircleButton"; import { Icon } from "../Icon"; +import { githubLightHighContrast } from '@uiw/codemirror-theme-github'; + /* * A more featured code embed component that uses CodeMirror * @@ -123,7 +125,7 @@ export const CodeEmbed = (props) => {
Date: Mon, 13 Oct 2025 19:50:56 -0400 Subject: [PATCH 03/10] Switch CodeMirror theme to githubLight --- src/components/CodeEmbed/index.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/CodeEmbed/index.jsx b/src/components/CodeEmbed/index.jsx index c5374aecac..3493e5b886 100644 --- a/src/components/CodeEmbed/index.jsx +++ b/src/components/CodeEmbed/index.jsx @@ -8,7 +8,7 @@ import { CodeFrame } from "./frame"; import { CopyCodeButton } from "../CopyCodeButton"; import CircleButton from "../CircleButton"; import { Icon } from "../Icon"; -import { githubLightHighContrast } from '@uiw/codemirror-theme-github'; +import { githubLight} from '@uiw/codemirror-theme-github'; /* * A more featured code embed component that uses CodeMirror @@ -125,7 +125,7 @@ export const CodeEmbed = (props) => {
Date: Thu, 23 Oct 2025 08:32:05 -0400 Subject: [PATCH 04/10] Fix: use ESM import for githubLight theme in CodeEmbed (builds cleanly under Astro/Vite) --- src/components/CodeEmbed/index.jsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/CodeEmbed/index.jsx b/src/components/CodeEmbed/index.jsx index 3493e5b886..ba1d35da34 100644 --- a/src/components/CodeEmbed/index.jsx +++ b/src/components/CodeEmbed/index.jsx @@ -8,7 +8,8 @@ import { CodeFrame } from "./frame"; import { CopyCodeButton } from "../CopyCodeButton"; import CircleButton from "../CircleButton"; import { Icon } from "../Icon"; -import { githubLight} from '@uiw/codemirror-theme-github'; +import { githubLight } from '@uiw/codemirror-theme-github'; + /* * A more featured code embed component that uses CodeMirror From 6304853e9e430661576482827ea63e6738587716 Mon Sep 17 00:00:00 2001 From: paul_kniaz Date: Thu, 23 Oct 2025 13:59:03 -0400 Subject: [PATCH 05/10] update global scss --- src/components/AnnotatedCode/index.astro | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/components/AnnotatedCode/index.astro b/src/components/AnnotatedCode/index.astro index e185d13361..3829cf7c89 100644 --- a/src/components/AnnotatedCode/index.astro +++ b/src/components/AnnotatedCode/index.astro @@ -1,5 +1,8 @@ --- import { codeToHtml } from 'shiki'; +import "/Users/paulkniaz/p5.js-website/styles/global.scss"; + + import { JSDOM } from 'jsdom'; const { props } = Astro; From b4edf24b20a8ff29e7c47b6b139753153f8339db Mon Sep 17 00:00:00 2001 From: paul_kniaz Date: Thu, 23 Oct 2025 14:04:59 -0400 Subject: [PATCH 06/10] switch to relative path --- src/components/AnnotatedCode/index.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/AnnotatedCode/index.astro b/src/components/AnnotatedCode/index.astro index 3829cf7c89..a3f1165327 100644 --- a/src/components/AnnotatedCode/index.astro +++ b/src/components/AnnotatedCode/index.astro @@ -1,6 +1,6 @@ --- import { codeToHtml } from 'shiki'; -import "/Users/paulkniaz/p5.js-website/styles/global.scss"; +import "../../../styles/global.scss"; import { JSDOM } from 'jsdom'; From 236bc2f1776bbd41c83c26f628fa61b45076d5f6 Mon Sep 17 00:00:00 2001 From: coseeian Date: Tue, 3 Feb 2026 15:35:10 +0800 Subject: [PATCH 07/10] chore: revert previous changes --- src/components/AnnotatedCode/index.astro | 8 +------- src/components/CodeEmbed/index.jsx | 5 +---- src/components/Nav/styles.module.scss | 4 ---- .../tutorials/en/layered-rendering-with-framebuffers.mdx | 6 +----- 4 files changed, 3 insertions(+), 20 deletions(-) diff --git a/src/components/AnnotatedCode/index.astro b/src/components/AnnotatedCode/index.astro index a3f1165327..e50525db17 100644 --- a/src/components/AnnotatedCode/index.astro +++ b/src/components/AnnotatedCode/index.astro @@ -1,8 +1,5 @@ --- import { codeToHtml } from 'shiki'; -import "../../../styles/global.scss"; - - import { JSDOM } from 'jsdom'; const { props } = Astro; @@ -55,12 +52,9 @@ const code = rows.map((row) => row.code).join(''); // Convert it to HTML with style tags const html = await codeToHtml(code, { lang: props.lang || 'javascript', - theme: props.theme || 'github-light-high-contrast', + theme: props.theme || 'github-light', }) -console.log("Shiki theme in use:", props.theme || 'github-light-high-contrast'); -console.log(html.slice(0, 300)); - // Turn it into a DOM tree we can query const parsed = new JSDOM(html) const dom = parsed.window.document diff --git a/src/components/CodeEmbed/index.jsx b/src/components/CodeEmbed/index.jsx index ba1d35da34..d0b39fe557 100644 --- a/src/components/CodeEmbed/index.jsx +++ b/src/components/CodeEmbed/index.jsx @@ -8,9 +8,6 @@ import { CodeFrame } from "./frame"; import { CopyCodeButton } from "../CopyCodeButton"; import CircleButton from "../CircleButton"; import { Icon } from "../Icon"; -import { githubLight } from '@uiw/codemirror-theme-github'; - - /* * A more featured code embed component that uses CodeMirror * @@ -126,7 +123,7 @@ export const CodeEmbed = (props) => {
+ `${begin('header')} ${end('header')} From f7a0e1d386f69580ff44b48e2e37d7af3b46a759 Mon Sep 17 00:00:00 2001 From: coseeian Date: Tue, 3 Feb 2026 14:21:19 +0800 Subject: [PATCH 08/10] feat: code block use github-light-high-contrast theme --- astro.config.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/astro.config.mjs b/astro.config.mjs index 2339b774db..0ea3e5d1d4 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -81,7 +81,7 @@ export default defineConfig({ }, markdown: { shikiConfig: { - theme: 'github-light', + theme: 'github-light-high-contrast', }, }, }); From ff1d24a573acafc80884f495df7683e06abab592 Mon Sep 17 00:00:00 2001 From: coseeian Date: Tue, 3 Feb 2026 15:13:26 +0800 Subject: [PATCH 09/10] feat: AnnotatedCode use github-light-high-contrast theme --- src/components/AnnotatedCode/index.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/AnnotatedCode/index.astro b/src/components/AnnotatedCode/index.astro index e50525db17..95477f8051 100644 --- a/src/components/AnnotatedCode/index.astro +++ b/src/components/AnnotatedCode/index.astro @@ -52,7 +52,7 @@ const code = rows.map((row) => row.code).join(''); // Convert it to HTML with style tags const html = await codeToHtml(code, { lang: props.lang || 'javascript', - theme: props.theme || 'github-light', + theme: props.theme || 'github-light-high-contrast', }) // Turn it into a DOM tree we can query From 1ab4315146f5133bfa52d841b25d8f1a2ca21622 Mon Sep 17 00:00:00 2001 From: coseeian Date: Tue, 3 Feb 2026 15:22:09 +0800 Subject: [PATCH 10/10] chore: bump shiki to latest --- package-lock.json | 336 +++++++--------------------------------------- package.json | 2 +- 2 files changed, 53 insertions(+), 285 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4167ca354c..e676b8dd28 100644 --- a/package-lock.json +++ b/package-lock.json @@ -70,7 +70,7 @@ "remark-mdx": "^3.0.1", "sass": "^1.72.0", "sharp": "^0.33.5", - "shiki": "^1.1.7", + "shiki": "^3.22.0", "simple-git": "^3.22.0", "strip-markdown": "^6.0.0", "svgo": "^3.3.2", @@ -244,112 +244,6 @@ "vfile": "^6.0.3" } }, - "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/core": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.20.0.tgz", - "integrity": "sha512-f2ED7HYV4JEk827mtMDwe/yQ25pRiXZmtHjWF8uzZKuKiEsJR7Ce1nuQ+HhV9FzDcbIo4ObBCD9GPTzNuy9S1g==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0", - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.5" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/engine-javascript": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.20.0.tgz", - "integrity": "sha512-OFx8fHAZuk7I42Z9YAdZ95To6jDePQ9Rnfbw9uSRTSbBhYBp1kEOKv/3jOimcj3VRUKusDYM6DswLauwfhboLg==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0", - "@shikijs/vscode-textmate": "^10.0.2", - "oniguruma-to-es": "^4.3.4" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/engine-oniguruma": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.20.0.tgz", - "integrity": "sha512-Yx3gy7xLzM0ZOjqoxciHjA7dAt5tyzJE3L4uQoM83agahy+PlW244XJSrmJRSBvGYELDhYXPacD4R/cauV5bzQ==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0", - "@shikijs/vscode-textmate": "^10.0.2" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/langs": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.20.0.tgz", - "integrity": "sha512-le+bssCxcSHrygCWuOrYJHvjus6zhQ2K7q/0mgjiffRbkhM4o1EWu2m+29l0yEsHDbWaWPNnDUTRVVBvBBeKaA==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/themes": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.20.0.tgz", - "integrity": "sha512-U1NSU7Sl26Q7ErRvJUouArxfM2euWqq1xaSrbqMu2iqa+tSp0D1Yah8216sDYbdDHw4C8b75UpE65eWorm2erQ==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/@shikijs/types": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.20.0.tgz", - "integrity": "sha512-lhYAATn10nkZcBQ0BlzSbJA3wcmL5MXUUF8d2Zzon6saZDlToKaiRX60n2+ZaHJCmXEcZRWNzn+k9vplr8Jhsw==", - "license": "MIT", - "dependencies": { - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/oniguruma-to-es": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.4.tgz", - "integrity": "sha512-3VhUGN3w2eYxnTzHn+ikMI+fp/96KoRSVK9/kMTcFqj1NRDh2IhQCKvYxDnWePKRXY/AqH+Fuiyb7VHSzBjHfA==", - "license": "MIT", - "dependencies": { - "oniguruma-parser": "^0.12.1", - "regex": "^6.0.1", - "regex-recursion": "^6.0.2" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/regex/-/regex-6.1.0.tgz", - "integrity": "sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==", - "license": "MIT", - "dependencies": { - "regex-utilities": "^2.3.0" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/regex-recursion": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", - "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", - "license": "MIT", - "dependencies": { - "regex-utilities": "^2.3.0" - } - }, - "node_modules/@astrojs/markdown-remark/node_modules/shiki": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.20.0.tgz", - "integrity": "sha512-kgCOlsnyWb+p0WU+01RjkCH+eBVsjL1jOwUYWv0YDWkM2/A46+LDKVs5yZCUXjJG6bj4ndFoAg5iLIIue6dulg==", - "license": "MIT", - "dependencies": { - "@shikijs/core": "3.20.0", - "@shikijs/engine-javascript": "3.20.0", - "@shikijs/engine-oniguruma": "3.20.0", - "@shikijs/langs": "3.20.0", - "@shikijs/themes": "3.20.0", - "@shikijs/types": "3.20.0", - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4" - } - }, "node_modules/@astrojs/mdx": { "version": "4.3.13", "resolved": "https://registry.npmjs.org/@astrojs/mdx/-/mdx-4.3.13.tgz", @@ -3307,71 +3201,63 @@ ] }, "node_modules/@shikijs/core": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.29.2.tgz", - "integrity": "sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==", - "dev": true, + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.22.0.tgz", + "integrity": "sha512-iAlTtSDDbJiRpvgL5ugKEATDtHdUVkqgHDm/gbD2ZS9c88mx7G1zSYjjOxp5Qa0eaW0MAQosFRmJSk354PRoQA==", "license": "MIT", "dependencies": { - "@shikijs/engine-javascript": "1.29.2", - "@shikijs/engine-oniguruma": "1.29.2", - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", + "@shikijs/types": "3.22.0", + "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.4" + "hast-util-to-html": "^9.0.5" } }, "node_modules/@shikijs/engine-javascript": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.29.2.tgz", - "integrity": "sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==", - "dev": true, + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.22.0.tgz", + "integrity": "sha512-jdKhfgW9CRtj3Tor0L7+yPwdG3CgP7W+ZEqSsojrMzCjD1e0IxIbwUMDDpYlVBlC08TACg4puwFGkZfLS+56Tw==", "license": "MIT", "dependencies": { - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", - "oniguruma-to-es": "^2.2.0" + "@shikijs/types": "3.22.0", + "@shikijs/vscode-textmate": "^10.0.2", + "oniguruma-to-es": "^4.3.4" } }, "node_modules/@shikijs/engine-oniguruma": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz", - "integrity": "sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==", - "dev": true, + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.22.0.tgz", + "integrity": "sha512-DyXsOG0vGtNtl7ygvabHd7Mt5EY8gCNqR9Y7Lpbbd/PbJvgWrqaKzH1JW6H6qFkuUa8aCxoiYVv8/YfFljiQxA==", "license": "MIT", "dependencies": { - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1" + "@shikijs/types": "3.22.0", + "@shikijs/vscode-textmate": "^10.0.2" } }, "node_modules/@shikijs/langs": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.2.tgz", - "integrity": "sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==", - "dev": true, + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.22.0.tgz", + "integrity": "sha512-x/42TfhWmp6H00T6uwVrdTJGKgNdFbrEdhaDwSR5fd5zhQ1Q46bHq9EO61SCEWJR0HY7z2HNDMaBZp8JRmKiIA==", "license": "MIT", "dependencies": { - "@shikijs/types": "1.29.2" + "@shikijs/types": "3.22.0" } }, "node_modules/@shikijs/themes": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.2.tgz", - "integrity": "sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==", - "dev": true, + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.22.0.tgz", + "integrity": "sha512-o+tlOKqsr6FE4+mYJG08tfCFDS+3CG20HbldXeVoyP+cYSUxDhrFf3GPjE60U55iOkkjbpY2uC3It/eeja35/g==", "license": "MIT", "dependencies": { - "@shikijs/types": "1.29.2" + "@shikijs/types": "3.22.0" } }, "node_modules/@shikijs/types": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.29.2.tgz", - "integrity": "sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==", - "dev": true, + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.22.0.tgz", + "integrity": "sha512-491iAekgKDBFE67z70Ok5a8KBMsQ2IJwOWw3us/7ffQkIBCyOQfm/aNwVMBUriP02QshIfgHCBSIYAl3u2eWjg==", "license": "MIT", "dependencies": { - "@shikijs/vscode-textmate": "^10.0.1", + "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, @@ -5180,67 +5066,6 @@ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", "license": "MIT" }, - "node_modules/astro/node_modules/@shikijs/core": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-3.20.0.tgz", - "integrity": "sha512-f2ED7HYV4JEk827mtMDwe/yQ25pRiXZmtHjWF8uzZKuKiEsJR7Ce1nuQ+HhV9FzDcbIo4ObBCD9GPTzNuy9S1g==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0", - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.5" - } - }, - "node_modules/astro/node_modules/@shikijs/engine-javascript": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-3.20.0.tgz", - "integrity": "sha512-OFx8fHAZuk7I42Z9YAdZ95To6jDePQ9Rnfbw9uSRTSbBhYBp1kEOKv/3jOimcj3VRUKusDYM6DswLauwfhboLg==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0", - "@shikijs/vscode-textmate": "^10.0.2", - "oniguruma-to-es": "^4.3.4" - } - }, - "node_modules/astro/node_modules/@shikijs/engine-oniguruma": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.20.0.tgz", - "integrity": "sha512-Yx3gy7xLzM0ZOjqoxciHjA7dAt5tyzJE3L4uQoM83agahy+PlW244XJSrmJRSBvGYELDhYXPacD4R/cauV5bzQ==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0", - "@shikijs/vscode-textmate": "^10.0.2" - } - }, - "node_modules/astro/node_modules/@shikijs/langs": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.20.0.tgz", - "integrity": "sha512-le+bssCxcSHrygCWuOrYJHvjus6zhQ2K7q/0mgjiffRbkhM4o1EWu2m+29l0yEsHDbWaWPNnDUTRVVBvBBeKaA==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0" - } - }, - "node_modules/astro/node_modules/@shikijs/themes": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.20.0.tgz", - "integrity": "sha512-U1NSU7Sl26Q7ErRvJUouArxfM2euWqq1xaSrbqMu2iqa+tSp0D1Yah8216sDYbdDHw4C8b75UpE65eWorm2erQ==", - "license": "MIT", - "dependencies": { - "@shikijs/types": "3.20.0" - } - }, - "node_modules/astro/node_modules/@shikijs/types": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.20.0.tgz", - "integrity": "sha512-lhYAATn10nkZcBQ0BlzSbJA3wcmL5MXUUF8d2Zzon6saZDlToKaiRX60n2+ZaHJCmXEcZRWNzn+k9vplr8Jhsw==", - "license": "MIT", - "dependencies": { - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4" - } - }, "node_modules/astro/node_modules/aria-query": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", @@ -5285,17 +5110,6 @@ "license": "MIT", "optional": true }, - "node_modules/astro/node_modules/oniguruma-to-es": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.4.tgz", - "integrity": "sha512-3VhUGN3w2eYxnTzHn+ikMI+fp/96KoRSVK9/kMTcFqj1NRDh2IhQCKvYxDnWePKRXY/AqH+Fuiyb7VHSzBjHfA==", - "license": "MIT", - "dependencies": { - "oniguruma-parser": "^0.12.1", - "regex": "^6.0.1", - "regex-recursion": "^6.0.2" - } - }, "node_modules/astro/node_modules/picomatch": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", @@ -5308,24 +5122,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/astro/node_modules/regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/regex/-/regex-6.1.0.tgz", - "integrity": "sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==", - "license": "MIT", - "dependencies": { - "regex-utilities": "^2.3.0" - } - }, - "node_modules/astro/node_modules/regex-recursion": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", - "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", - "license": "MIT", - "dependencies": { - "regex-utilities": "^2.3.0" - } - }, "node_modules/astro/node_modules/semver": { "version": "7.7.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", @@ -5362,22 +5158,6 @@ "url": "https://opencollective.com/libvips" } }, - "node_modules/astro/node_modules/shiki": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.20.0.tgz", - "integrity": "sha512-kgCOlsnyWb+p0WU+01RjkCH+eBVsjL1jOwUYWv0YDWkM2/A46+LDKVs5yZCUXjJG6bj4ndFoAg5iLIIue6dulg==", - "license": "MIT", - "dependencies": { - "@shikijs/core": "3.20.0", - "@shikijs/engine-javascript": "3.20.0", - "@shikijs/engine-oniguruma": "3.20.0", - "@shikijs/langs": "3.20.0", - "@shikijs/themes": "3.20.0", - "@shikijs/types": "3.20.0", - "@shikijs/vscode-textmate": "^10.0.2", - "@types/hast": "^3.0.4" - } - }, "node_modules/astro/node_modules/svgo": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/svgo/-/svgo-4.0.0.tgz", @@ -9002,13 +8782,6 @@ "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", "license": "MIT" }, - "node_modules/emoji-regex-xs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz", - "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==", - "dev": true, - "license": "MIT" - }, "node_modules/encodeurl": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", @@ -15555,15 +15328,14 @@ "license": "MIT" }, "node_modules/oniguruma-to-es": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-2.3.0.tgz", - "integrity": "sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==", - "dev": true, + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-4.3.4.tgz", + "integrity": "sha512-3VhUGN3w2eYxnTzHn+ikMI+fp/96KoRSVK9/kMTcFqj1NRDh2IhQCKvYxDnWePKRXY/AqH+Fuiyb7VHSzBjHfA==", "license": "MIT", "dependencies": { - "emoji-regex-xs": "^1.0.0", - "regex": "^5.1.1", - "regex-recursion": "^5.1.1" + "oniguruma-parser": "^0.12.1", + "regex": "^6.0.1", + "regex-recursion": "^6.0.2" } }, "node_modules/optionator": { @@ -17616,23 +17388,20 @@ } }, "node_modules/regex": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex/-/regex-5.1.1.tgz", - "integrity": "sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==", - "dev": true, + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/regex/-/regex-6.1.0.tgz", + "integrity": "sha512-6VwtthbV4o/7+OaAF9I5L5V3llLEsoPyq9P1JVXkedTP33c7MfCG0/5NOPcSJn0TzXcG9YUrR0gQSWioew3LDg==", "license": "MIT", "dependencies": { "regex-utilities": "^2.3.0" } }, "node_modules/regex-recursion": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.1.1.tgz", - "integrity": "sha512-ae7SBCbzVNrIjgSbh7wMznPcQel1DNlDtzensnFxpiNpXt1U2ju/bHugH422r+4LAVS1FpW1YCwilmnNsjum9w==", - "dev": true, + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-6.0.2.tgz", + "integrity": "sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==", "license": "MIT", "dependencies": { - "regex": "^5.1.1", "regex-utilities": "^2.3.0" } }, @@ -19324,19 +19093,18 @@ } }, "node_modules/shiki": { - "version": "1.29.2", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.29.2.tgz", - "integrity": "sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==", - "dev": true, + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-3.22.0.tgz", + "integrity": "sha512-LBnhsoYEe0Eou4e1VgJACes+O6S6QC0w71fCSp5Oya79inkwkm15gQ1UF6VtQ8j/taMDh79hAB49WUk8ALQW3g==", "license": "MIT", "dependencies": { - "@shikijs/core": "1.29.2", - "@shikijs/engine-javascript": "1.29.2", - "@shikijs/engine-oniguruma": "1.29.2", - "@shikijs/langs": "1.29.2", - "@shikijs/themes": "1.29.2", - "@shikijs/types": "1.29.2", - "@shikijs/vscode-textmate": "^10.0.1", + "@shikijs/core": "3.22.0", + "@shikijs/engine-javascript": "3.22.0", + "@shikijs/engine-oniguruma": "3.22.0", + "@shikijs/langs": "3.22.0", + "@shikijs/themes": "3.22.0", + "@shikijs/types": "3.22.0", + "@shikijs/vscode-textmate": "^10.0.2", "@types/hast": "^3.0.4" } }, diff --git a/package.json b/package.json index a3c59a2929..d8af8816e3 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,7 @@ "remark-mdx": "^3.0.1", "sass": "^1.72.0", "sharp": "^0.33.5", - "shiki": "^1.1.7", + "shiki": "^3.22.0", "simple-git": "^3.22.0", "strip-markdown": "^6.0.0", "svgo": "^3.3.2",