diff --git a/package-lock.json b/package-lock.json index 9482db717..e81d0a7d4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,7 @@ "@radicle/gray-matter": "4.1.0", "@stardazed/streams": "^3.1.0", "@walletconnect/client": "^1.8.0", - "@wooorm/starry-night": "^1.4.2", + "@wooorm/starry-night": "^1.5.0", "buffer": "^6.0.3", "dompurify": "^2.4.1", "ethers": "^5.7.2", @@ -1784,9 +1784,9 @@ } }, "node_modules/@wooorm/starry-night": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@wooorm/starry-night/-/starry-night-1.4.2.tgz", - "integrity": "sha512-SkhIweiThgUK+KmvZPR2VCSnA1m0awTi/jPHey71MtR+jZG6phmcc9F9b0xpvxmHFFiKqxkgD/UKSVWVua+xrw==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@wooorm/starry-night/-/starry-night-1.5.0.tgz", + "integrity": "sha512-YEkNgM8IxKwzRQgTp1nyiraB5rc4LiLpnMTrJvX5+SVs7zgVqkTx6QAZgZFqrZrqq/UCWVYBzE9+zZfxpLPTYQ==", "dependencies": { "@types/hast": "^2.0.0", "import-meta-resolve": "^2.0.0", diff --git a/package.json b/package.json index 949193f3a..ac8c68126 100644 --- a/package.json +++ b/package.json @@ -46,7 +46,7 @@ "@radicle/gray-matter": "4.1.0", "@stardazed/streams": "^3.1.0", "@walletconnect/client": "^1.8.0", - "@wooorm/starry-night": "^1.4.2", + "@wooorm/starry-night": "^1.5.0", "buffer": "^6.0.3", "dompurify": "^2.4.1", "ethers": "^5.7.2", diff --git a/src/lib/syntax.ts b/src/lib/syntax.ts index d1a984985..a13a4e281 100644 --- a/src/lib/syntax.ts +++ b/src/lib/syntax.ts @@ -1,14 +1,15 @@ import type { Root } from "@wooorm/starry-night"; import type { ElementContent } from "hast"; -import { createStarryNight, common } from "@wooorm/starry-night"; -import sourceTsx from "@wooorm/starry-night/lang/source.tsx"; -import sourceSvelte from "@wooorm/starry-night/lang/source.svelte.js"; -import sourceSolidity from "@wooorm/starry-night/lang/source.solidity.js"; -import sourceToml from "@wooorm/starry-night/lang/source.toml"; -import sourceErlang from "@wooorm/starry-night/lang/source.erlang.js"; -import sourceDockerfile from "@wooorm/starry-night/lang/source.dockerfile"; +import onigurumaWASMUrl from "vscode-oniguruma/release/onig.wasm?url"; import sourceAsciiDoc from "@wooorm/starry-night/lang/text.html.asciidoc"; +import sourceDockerfile from "@wooorm/starry-night/lang/source.dockerfile"; +import sourceErlang from "@wooorm/starry-night/lang/source.erlang.js"; +import sourceSolidity from "@wooorm/starry-night/lang/source.solidity.js"; +import sourceSvelte from "@wooorm/starry-night/lang/source.svelte.js"; +import sourceToml from "@wooorm/starry-night/lang/source.toml"; +import sourceTsx from "@wooorm/starry-night/lang/source.tsx"; +import { createStarryNight, common } from "@wooorm/starry-night"; export type MaybeHighlighted = Root | undefined; @@ -37,7 +38,9 @@ export async function highlight( grammar: string, ): Promise { if (starryNight === undefined) { - starryNight = await createStarryNight(grammars); + starryNight = await createStarryNight(grammars, { + getOnigurumaUrlFetch: () => new URL(onigurumaWASMUrl, import.meta.url), + }); } const scope = starryNight.flagToScope(grammar); return starryNight.highlight(content, scope ?? "text.raw"); diff --git a/tests/support/fixtures.ts b/tests/support/fixtures.ts index ffc6453a5..a122a5256 100644 --- a/tests/support/fixtures.ts +++ b/tests/support/fixtures.ts @@ -83,13 +83,6 @@ export const test = base.extend<{ status: 200, path: "./public/favicon.ico", }); - } else if ( - route.request().url().startsWith("https://esm.sh/vscode-oniguruma@1") - ) { - route.fulfill({ - status: 200, - path: "./tests/support/onig.wasm", - }); } else { log( `Aborted remote request: ${route.request().url()}`, diff --git a/tests/support/onig.wasm b/tests/support/onig.wasm deleted file mode 100644 index 6edbc8861..000000000 Binary files a/tests/support/onig.wasm and /dev/null differ