UNPKG

react-shiki

Version:

Syntax highlighter component for react using shiki

59 lines (57 loc) 1.51 kB
import { createShikiHighlighterComponent, isInlineCode, rehypeInlineCodeProperty, useShikiHighlighter } from "./chunk-SCXX26KJ.js"; // src/bundles/web.ts import { getSingletonHighlighter } from "shiki/bundle/web"; import { createOnigurumaEngine } from "shiki/engine/oniguruma"; async function createWebHighlighter(langsToLoad, themesToLoad, engine) { try { return await getSingletonHighlighter({ langs: [langsToLoad], themes: themesToLoad, engine: engine ?? createOnigurumaEngine(import("shiki/wasm")) }); } catch (error) { if (error instanceof Error && error.message.includes("Language")) { return await getSingletonHighlighter({ langs: ["plaintext"], themes: themesToLoad, engine: engine ?? createOnigurumaEngine(import("shiki/wasm")) }); } throw error; } } // src/web.ts import { createJavaScriptRegexEngine, createJavaScriptRawEngine } from "shiki/engine/javascript"; var useShikiHighlighter2 = (code, lang, themeInput, options = {}) => { return useShikiHighlighter( code, lang, themeInput, options, createWebHighlighter ); }; var ShikiHighlighter = createShikiHighlighterComponent( useShikiHighlighter2 ); var web_default = ShikiHighlighter; export { ShikiHighlighter, createJavaScriptRawEngine, createJavaScriptRegexEngine, web_default as default, isInlineCode, rehypeInlineCodeProperty, useShikiHighlighter2 as useShikiHighlighter }; //# sourceMappingURL=web.js.map