@plumile/ui 0.1.146 → 0.1.150
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/lib/esm/admin/theme/adminSurface.css.js +0 -2
- package/lib/esm/atomic/atoms/textarea/textarea.css.js +2 -0
- package/lib/esm/atomic/molecules/markdown/components/MarkdownCodeCopyButton.js +19 -35
- package/lib/esm/atomic/molecules/markdown/components/MarkdownCodeCopyButton.js.map +1 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownEmphasis.css.js +0 -1
- package/lib/esm/atomic/molecules/markdown/components/MarkdownSubscript.css.js +1 -0
- package/lib/esm/backoffice/atoms/copyable_text/CopyableText.js +22 -42
- package/lib/esm/backoffice/atoms/copyable_text/CopyableText.js.map +1 -1
- package/lib/esm/backoffice/molecules/backoffice_json_viewer/BackofficeJsonViewer.js +2 -1
- package/lib/esm/backoffice/molecules/backoffice_json_viewer/BackofficeJsonViewer.js.map +1 -1
- package/lib/esm/backoffice/shared/copyWithExecCommand.js +1 -14
- package/lib/esm/hooks/useClipboardCopy.js +31 -0
- package/lib/esm/hooks/useClipboardCopy.js.map +1 -0
- package/lib/esm/index.js +223 -221
- package/lib/esm/node_modules/@shikijs/core/dist/index.js +99 -96
- package/lib/esm/node_modules/@shikijs/core/dist/index.js.map +1 -1
- package/lib/esm/node_modules/@shikijs/core/node_modules/@shikijs/types/dist/index.js.map +1 -1
- package/lib/esm/node_modules/@shikijs/primitive/dist/index.js +91 -85
- package/lib/esm/node_modules/@shikijs/primitive/dist/index.js.map +1 -1
- package/lib/esm/node_modules/@shikijs/primitive/node_modules/@shikijs/types/dist/index.js.map +1 -1
- package/lib/esm/node_modules/@vitest/runner/dist/chunk-artifact.js.map +1 -1
- package/lib/esm/node_modules/cytoscape/dist/cytoscape.esm.js +1 -1
- package/lib/esm/node_modules/cytoscape/dist/cytoscape.esm.js.map +1 -1
- package/lib/esm/node_modules/react-shiki/dist/index.js +1 -1
- package/lib/esm/node_modules/shiki/dist/bundle-full.js +1 -1
- package/lib/esm/node_modules/shiki/dist/bundle-full.js.map +1 -1
- package/lib/esm/node_modules/shiki/dist/{chunk-CtajNgzt.js → chunk-D1SwGrFN.js} +2 -2
- package/lib/esm/node_modules/shiki/dist/chunk-D1SwGrFN.js.map +1 -0
- package/lib/esm/node_modules/shiki/dist/engine-oniguruma.js +1 -1
- package/lib/esm/node_modules/shiki/dist/engine-oniguruma.js.map +1 -1
- package/lib/esm/node_modules/shiki/dist/{langs-bundle-full-DfKZStlK.js → langs-bundle-full-YTHnHqaM.js} +2 -2
- package/lib/esm/node_modules/shiki/dist/{langs-bundle-full-DfKZStlK.js.map → langs-bundle-full-YTHnHqaM.js.map} +1 -1
- package/lib/esm/node_modules/shiki/dist/themes.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/engine-oniguruma/dist/index.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/apex.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/apex.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/c3.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/c3.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/csharp.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/csharp.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/hack.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/hack.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/julia.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/julia.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/just.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/just.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/latex.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/latex.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/luau.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/luau.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/php.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/php.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/sql.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/langs/dist/sql.js.map +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/themes/dist/vesper.js +1 -1
- package/lib/esm/node_modules/shiki/node_modules/@shikijs/themes/dist/vesper.js.map +1 -1
- package/lib/esm/shared/clipboard.js +55 -0
- package/lib/esm/shared/clipboard.js.map +1 -0
- package/lib/types/atomic/molecules/markdown/components/MarkdownCodeCopyButton.d.ts.map +1 -1
- package/lib/types/backoffice/atoms/copyable_text/CopyableText.d.ts.map +1 -1
- package/lib/types/backoffice/shared/copyWithExecCommand.d.ts +1 -1
- package/lib/types/backoffice/shared/copyWithExecCommand.d.ts.map +1 -1
- package/lib/types/hooks/useClipboardCopy.d.ts +9 -0
- package/lib/types/hooks/useClipboardCopy.d.ts.map +1 -0
- package/lib/types/index.d.ts +2 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/shared/clipboard.d.ts +9 -0
- package/lib/types/shared/clipboard.d.ts.map +1 -0
- package/package.json +4 -4
- package/lib/esm/backoffice/shared/copyWithExecCommand.js.map +0 -1
- package/lib/esm/node_modules/shiki/dist/chunk-CtajNgzt.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../../../node_modules/@shikijs/primitive/dist/index.mjs"],"sourcesContent":["import { ShikiError } from \"@shikijs/types\";\nimport { EncodedTokenMetadata, INITIAL, Registry as Registry$1, Theme } from \"@shikijs/vscode-textmate\";\n\nexport * from \"@shikijs/types\"\n\n//#region src/utils/colors.ts\nfunction resolveColorReplacements(theme, options) {\n\tconst replacements = typeof theme === \"string\" ? {} : { ...theme.colorReplacements };\n\tconst themeName = typeof theme === \"string\" ? theme : theme.name;\n\tfor (const [key, value] of Object.entries(options?.colorReplacements || {})) if (typeof value === \"string\") replacements[key] = value;\n\telse if (key === themeName) Object.assign(replacements, value);\n\treturn replacements;\n}\nfunction applyColorReplacements(color, replacements) {\n\tif (!color) return color;\n\treturn replacements?.[color?.toLowerCase()] || color;\n}\n\n//#endregion\n//#region src/utils/general.ts\nfunction toArray(x) {\n\treturn Array.isArray(x) ? x : [x];\n}\n/**\n* Normalize a getter to a promise.\n*/\nasync function normalizeGetter(p) {\n\treturn Promise.resolve(typeof p === \"function\" ? p() : p).then((r) => r.default || r);\n}\n/**\n* Check if the language is plaintext that is ignored by Shiki.\n*\n* Hard-coded plain text languages: `plaintext`, `txt`, `text`, `plain`.\n*/\nfunction isPlainLang(lang) {\n\treturn !lang || [\n\t\t\"plaintext\",\n\t\t\"txt\",\n\t\t\"text\",\n\t\t\"plain\"\n\t].includes(lang);\n}\n/**\n* Check if the language is specially handled or bypassed by Shiki.\n*\n* Hard-coded languages: `ansi` and plaintexts like `plaintext`, `txt`, `text`, `plain`.\n*/\nfunction isSpecialLang(lang) {\n\treturn lang === \"ansi\" || isPlainLang(lang);\n}\n/**\n* Check if the theme is specially handled or bypassed by Shiki.\n*\n* Hard-coded themes: `none`.\n*/\nfunction isNoneTheme(theme) {\n\treturn theme === \"none\";\n}\n/**\n* Check if the theme is specially handled or bypassed by Shiki.\n*\n* Hard-coded themes: `none`.\n*/\nfunction isSpecialTheme(theme) {\n\treturn isNoneTheme(theme);\n}\n\n//#endregion\n//#region src/utils/strings.ts\n/**\n* Split a string into lines, each line preserves the line ending.\n*\n* @param code - The code string to split into lines\n* @param preserveEnding - Whether to preserve line endings in the result\n* @returns Array of tuples containing [line content, offset index]\n*\n* @example\n* ```ts\n* splitLines('hello\\nworld', false)\n* // => [['hello', 0], ['world', 6]]\n*\n* splitLines('hello\\nworld', true)\n* // => [['hello\\n', 0], ['world', 6]]\n* ```\n*/\nfunction splitLines(code, preserveEnding = false) {\n\tif (code.length === 0) return [[\"\", 0]];\n\tconst parts = code.split(/(\\r?\\n)/g);\n\tlet index = 0;\n\tconst lines = [];\n\tfor (let i = 0; i < parts.length; i += 2) {\n\t\tconst line = preserveEnding ? parts[i] + (parts[i + 1] || \"\") : parts[i];\n\t\tlines.push([line, index]);\n\t\tindex += parts[i].length;\n\t\tindex += parts[i + 1]?.length || 0;\n\t}\n\treturn lines;\n}\n\n//#endregion\n//#region src/textmate/normalize-theme.ts\n/**\n* https://github.com/microsoft/vscode/blob/f7f05dee53fb33fe023db2e06e30a89d3094488f/src/vs/platform/theme/common/colorRegistry.ts#L258-L268\n*/\nconst VSCODE_FALLBACK_EDITOR_FG = {\n\tlight: \"#333333\",\n\tdark: \"#bbbbbb\"\n};\nconst VSCODE_FALLBACK_EDITOR_BG = {\n\tlight: \"#fffffe\",\n\tdark: \"#1e1e1e\"\n};\nconst RESOLVED_KEY = \"__shiki_resolved\";\n/**\n* Normalize a textmate theme to shiki theme\n*/\nfunction normalizeTheme(rawTheme) {\n\tif (rawTheme?.[RESOLVED_KEY]) return rawTheme;\n\tconst theme = { ...rawTheme };\n\tif (theme.tokenColors && !theme.settings) {\n\t\ttheme.settings = theme.tokenColors;\n\t\tdelete theme.tokenColors;\n\t}\n\ttheme.type ||= \"dark\";\n\ttheme.colorReplacements = { ...theme.colorReplacements };\n\ttheme.settings ||= [];\n\tlet { bg, fg } = theme;\n\tif (!bg || !fg) {\n\t\t/**\n\t\t* First try:\n\t\t* Theme might contain a global `tokenColor` without `name` or `scope`\n\t\t* Used as default value for foreground/background\n\t\t*/\n\t\tconst globalSetting = theme.settings ? theme.settings.find((s) => !s.name && !s.scope) : void 0;\n\t\tif (globalSetting?.settings?.foreground) fg = globalSetting.settings.foreground;\n\t\tif (globalSetting?.settings?.background) bg = globalSetting.settings.background;\n\t\t/**\n\t\t* Second try:\n\t\t* If there's no global `tokenColor` without `name` or `scope`\n\t\t* Use `editor.foreground` and `editor.background`\n\t\t*/\n\t\tif (!fg && theme?.colors?.[\"editor.foreground\"]) fg = theme.colors[\"editor.foreground\"];\n\t\tif (!bg && theme?.colors?.[\"editor.background\"]) bg = theme.colors[\"editor.background\"];\n\t\t/**\n\t\t* Last try:\n\t\t* If there's no fg/bg color specified in theme, use default\n\t\t*/\n\t\tif (!fg) fg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_FG.light : VSCODE_FALLBACK_EDITOR_FG.dark;\n\t\tif (!bg) bg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_BG.light : VSCODE_FALLBACK_EDITOR_BG.dark;\n\t\ttheme.fg = fg;\n\t\ttheme.bg = bg;\n\t}\n\tif (!(theme.settings[0] && theme.settings[0].settings && !theme.settings[0].scope)) theme.settings.unshift({ settings: {\n\t\tforeground: theme.fg,\n\t\tbackground: theme.bg\n\t} });\n\tlet replacementCount = 0;\n\tconst replacementMap = /* @__PURE__ */ new Map();\n\tfunction getReplacementColor(value) {\n\t\tif (replacementMap.has(value)) return replacementMap.get(value);\n\t\treplacementCount += 1;\n\t\tconst hex = `#${replacementCount.toString(16).padStart(8, \"0\").toLowerCase()}`;\n\t\tif (theme.colorReplacements?.[`#${hex}`]) return getReplacementColor(value);\n\t\treplacementMap.set(value, hex);\n\t\treturn hex;\n\t}\n\ttheme.settings = theme.settings.map((setting) => {\n\t\tconst replaceFg = setting.settings?.foreground && !setting.settings.foreground.startsWith(\"#\");\n\t\tconst replaceBg = setting.settings?.background && !setting.settings.background.startsWith(\"#\");\n\t\tif (!replaceFg && !replaceBg) return setting;\n\t\tconst clone = {\n\t\t\t...setting,\n\t\t\tsettings: { ...setting.settings }\n\t\t};\n\t\tif (replaceFg) {\n\t\t\tconst replacement = getReplacementColor(setting.settings.foreground);\n\t\t\ttheme.colorReplacements[replacement] = setting.settings.foreground;\n\t\t\tclone.settings.foreground = replacement;\n\t\t}\n\t\tif (replaceBg) {\n\t\t\tconst replacement = getReplacementColor(setting.settings.background);\n\t\t\ttheme.colorReplacements[replacement] = setting.settings.background;\n\t\t\tclone.settings.background = replacement;\n\t\t}\n\t\treturn clone;\n\t});\n\tfor (const key of Object.keys(theme.colors || {})) if (key === \"editor.foreground\" || key === \"editor.background\" || key.startsWith(\"terminal.ansi\")) {\n\t\tif (!theme.colors[key]?.startsWith(\"#\")) {\n\t\t\tconst replacement = getReplacementColor(theme.colors[key]);\n\t\t\ttheme.colorReplacements[replacement] = theme.colors[key];\n\t\t\ttheme.colors[key] = replacement;\n\t\t}\n\t}\n\tObject.defineProperty(theme, RESOLVED_KEY, {\n\t\tenumerable: false,\n\t\twritable: false,\n\t\tvalue: true\n\t});\n\treturn theme;\n}\n\n//#endregion\n//#region src/textmate/getters-resolve.ts\n/**\n* Resolve\n*/\nasync function resolveLangs(langs) {\n\treturn Array.from(new Set((await Promise.all(langs.filter((l) => !isSpecialLang(l)).map(async (lang) => await normalizeGetter(lang).then((r) => Array.isArray(r) ? r : [r])))).flat()));\n}\nasync function resolveThemes(themes) {\n\treturn (await Promise.all(themes.map(async (theme) => isSpecialTheme(theme) ? null : normalizeTheme(await normalizeGetter(theme))))).filter((i) => !!i);\n}\n\n//#endregion\n//#region src/utils/alias.ts\nfunction resolveLangAlias(name, alias) {\n\tif (!alias) return name;\n\tif (alias[name]) {\n\t\tconst resolved = new Set([name]);\n\t\twhile (alias[name]) {\n\t\t\tname = alias[name];\n\t\t\tif (resolved.has(name)) throw new ShikiError(`Circular alias \\`${Array.from(resolved).join(\" -> \")} -> ${name}\\``);\n\t\t\tresolved.add(name);\n\t\t}\n\t}\n\treturn name;\n}\n\n//#endregion\n//#region src/textmate/registry.ts\nvar Registry = class extends Registry$1 {\n\t_resolvedThemes = /* @__PURE__ */ new Map();\n\t_resolvedGrammars = /* @__PURE__ */ new Map();\n\t_langMap = /* @__PURE__ */ new Map();\n\t_langGraph = /* @__PURE__ */ new Map();\n\t_textmateThemeCache = /* @__PURE__ */ new WeakMap();\n\t_loadedThemesCache = null;\n\t_loadedLanguagesCache = null;\n\tconstructor(_resolver, _themes, _langs, _alias = {}) {\n\t\tsuper(_resolver);\n\t\tthis._resolver = _resolver;\n\t\tthis._themes = _themes;\n\t\tthis._langs = _langs;\n\t\tthis._alias = _alias;\n\t\tthis._themes.map((t) => this.loadTheme(t));\n\t\tthis.loadLanguages(this._langs);\n\t}\n\tgetTheme(theme) {\n\t\tif (typeof theme === \"string\") return this._resolvedThemes.get(theme);\n\t\telse return this.loadTheme(theme);\n\t}\n\tloadTheme(theme) {\n\t\tconst _theme = normalizeTheme(theme);\n\t\tif (_theme.name) {\n\t\t\tthis._resolvedThemes.set(_theme.name, _theme);\n\t\t\tthis._loadedThemesCache = null;\n\t\t}\n\t\treturn _theme;\n\t}\n\tgetLoadedThemes() {\n\t\tif (!this._loadedThemesCache) this._loadedThemesCache = [...this._resolvedThemes.keys()];\n\t\treturn this._loadedThemesCache;\n\t}\n\tsetTheme(theme) {\n\t\tlet textmateTheme = this._textmateThemeCache.get(theme);\n\t\tif (!textmateTheme) {\n\t\t\ttextmateTheme = Theme.createFromRawTheme(theme);\n\t\t\tthis._textmateThemeCache.set(theme, textmateTheme);\n\t\t}\n\t\tthis._syncRegistry.setTheme(textmateTheme);\n\t}\n\tgetGrammar(name) {\n\t\tname = resolveLangAlias(name, this._alias);\n\t\treturn this._resolvedGrammars.get(name);\n\t}\n\tloadLanguage(lang) {\n\t\tif (this.getGrammar(lang.name)) return;\n\t\tconst embeddedLazilyBy = new Set([...this._langMap.values()].filter((i) => i.embeddedLangsLazy?.includes(lang.name)));\n\t\tthis._resolver.addLanguage(lang);\n\t\tconst grammarConfig = {\n\t\t\tbalancedBracketSelectors: lang.balancedBracketSelectors || [\"*\"],\n\t\t\tunbalancedBracketSelectors: lang.unbalancedBracketSelectors || []\n\t\t};\n\t\tthis._syncRegistry._rawGrammars.set(lang.scopeName, lang);\n\t\tconst g = this.loadGrammarWithConfiguration(lang.scopeName, 1, grammarConfig);\n\t\tg.name = lang.name;\n\t\tthis._resolvedGrammars.set(lang.name, g);\n\t\tif (lang.aliases) lang.aliases.forEach((alias) => {\n\t\t\tthis._alias[alias] = lang.name;\n\t\t});\n\t\tthis._loadedLanguagesCache = null;\n\t\tif (embeddedLazilyBy.size) for (const e of embeddedLazilyBy) {\n\t\t\tthis._resolvedGrammars.delete(e.name);\n\t\t\tthis._loadedLanguagesCache = null;\n\t\t\tthis._syncRegistry?._injectionGrammars?.delete(e.scopeName);\n\t\t\tthis._syncRegistry?._grammars?.delete(e.scopeName);\n\t\t\tthis.loadLanguage(this._langMap.get(e.name));\n\t\t}\n\t}\n\tdispose() {\n\t\tsuper.dispose();\n\t\tthis._resolvedThemes.clear();\n\t\tthis._resolvedGrammars.clear();\n\t\tthis._langMap.clear();\n\t\tthis._langGraph.clear();\n\t\tthis._loadedThemesCache = null;\n\t}\n\tloadLanguages(langs) {\n\t\tfor (const lang of langs) this.resolveEmbeddedLanguages(lang);\n\t\tconst langsGraphArray = Array.from(this._langGraph.entries());\n\t\tconst missingLangs = langsGraphArray.filter(([_, lang]) => !lang);\n\t\tif (missingLangs.length) {\n\t\t\tconst dependents = langsGraphArray.filter(([_, lang]) => {\n\t\t\t\tif (!lang) return false;\n\t\t\t\treturn (lang.embeddedLanguages || lang.embeddedLangs)?.some((l) => missingLangs.map(([name]) => name).includes(l));\n\t\t\t}).filter((lang) => !missingLangs.includes(lang));\n\t\t\tthrow new ShikiError(`Missing languages ${missingLangs.map(([name]) => `\\`${name}\\``).join(\", \")}, required by ${dependents.map(([name]) => `\\`${name}\\``).join(\", \")}`);\n\t\t}\n\t\tfor (const [_, lang] of langsGraphArray) this._resolver.addLanguage(lang);\n\t\tfor (const [_, lang] of langsGraphArray) this.loadLanguage(lang);\n\t}\n\tgetLoadedLanguages() {\n\t\tif (!this._loadedLanguagesCache) this._loadedLanguagesCache = [...new Set([...this._resolvedGrammars.keys(), ...Object.keys(this._alias)])];\n\t\treturn this._loadedLanguagesCache;\n\t}\n\tresolveEmbeddedLanguages(lang) {\n\t\tthis._langMap.set(lang.name, lang);\n\t\tthis._langGraph.set(lang.name, lang);\n\t\tconst embedded = lang.embeddedLanguages ?? lang.embeddedLangs;\n\t\tif (embedded) for (const embeddedLang of embedded) this._langGraph.set(embeddedLang, this._langMap.get(embeddedLang));\n\t}\n};\n\n//#endregion\n//#region src/textmate/resolver.ts\nvar Resolver = class {\n\t_langs = /* @__PURE__ */ new Map();\n\t_scopeToLang = /* @__PURE__ */ new Map();\n\t_injections = /* @__PURE__ */ new Map();\n\t_onigLib;\n\tconstructor(engine, langs) {\n\t\tthis._onigLib = {\n\t\t\tcreateOnigScanner: (patterns) => engine.createScanner(patterns),\n\t\t\tcreateOnigString: (s) => engine.createString(s)\n\t\t};\n\t\tlangs.forEach((i) => this.addLanguage(i));\n\t}\n\tget onigLib() {\n\t\treturn this._onigLib;\n\t}\n\tgetLangRegistration(langIdOrAlias) {\n\t\treturn this._langs.get(langIdOrAlias);\n\t}\n\tloadGrammar(scopeName) {\n\t\treturn this._scopeToLang.get(scopeName);\n\t}\n\taddLanguage(l) {\n\t\tthis._langs.set(l.name, l);\n\t\tif (l.aliases) l.aliases.forEach((a) => {\n\t\t\tthis._langs.set(a, l);\n\t\t});\n\t\tthis._scopeToLang.set(l.scopeName, l);\n\t\tif (l.injectTo) l.injectTo.forEach((i) => {\n\t\t\tif (!this._injections.get(i)) this._injections.set(i, []);\n\t\t\tthis._injections.get(i).push(l.scopeName);\n\t\t});\n\t}\n\tgetInjections(scopeName) {\n\t\tconst scopeParts = scopeName.split(\".\");\n\t\tlet injections = [];\n\t\tfor (let i = 1; i <= scopeParts.length; i++) {\n\t\t\tconst subScopeName = scopeParts.slice(0, i).join(\".\");\n\t\t\tinjections = [...injections, ...this._injections.get(subScopeName) || []];\n\t\t}\n\t\treturn injections;\n\t}\n};\n\n//#endregion\n//#region src/constructors/primitive.ts\nlet instancesCount = 0;\n/**\n* Get the minimal shiki primitive instance.\n*\n* Requires to provide the engine and all themes and languages upfront.\n*/\nfunction createShikiPrimitive(options) {\n\tinstancesCount += 1;\n\tif (options.warnings !== false && instancesCount >= 10 && instancesCount % 10 === 0) console.warn(`[Shiki] ${instancesCount} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \\`highlighter.dispose()\\` to release unused instances.`);\n\tlet isDisposed = false;\n\tif (!options.engine) throw new ShikiError(\"`engine` option is required for synchronous mode\");\n\tconst langs = (options.langs || []).flat(1);\n\tconst themes = (options.themes || []).flat(1).map(normalizeTheme);\n\tconst _registry = new Registry(new Resolver(options.engine, langs), themes, langs, options.langAlias);\n\tlet _lastTheme;\n\tfunction resolveLangAlias$1(name) {\n\t\treturn resolveLangAlias(name, options.langAlias);\n\t}\n\tfunction getLanguage(name) {\n\t\tensureNotDisposed();\n\t\tconst _lang = _registry.getGrammar(typeof name === \"string\" ? name : name.name);\n\t\tif (!_lang) throw new ShikiError(`Language \\`${name}\\` not found, you may need to load it first`);\n\t\treturn _lang;\n\t}\n\tfunction getTheme(name) {\n\t\tif (name === \"none\") return {\n\t\t\tbg: \"\",\n\t\t\tfg: \"\",\n\t\t\tname: \"none\",\n\t\t\tsettings: [],\n\t\t\ttype: \"dark\"\n\t\t};\n\t\tensureNotDisposed();\n\t\tconst _theme = _registry.getTheme(name);\n\t\tif (!_theme) throw new ShikiError(`Theme \\`${name}\\` not found, you may need to load it first`);\n\t\treturn _theme;\n\t}\n\tfunction setTheme(name) {\n\t\tensureNotDisposed();\n\t\tconst theme = getTheme(name);\n\t\tif (_lastTheme !== name) {\n\t\t\t_registry.setTheme(theme);\n\t\t\t_lastTheme = name;\n\t\t}\n\t\treturn {\n\t\t\ttheme,\n\t\t\tcolorMap: _registry.getColorMap()\n\t\t};\n\t}\n\tfunction getLoadedThemes() {\n\t\tensureNotDisposed();\n\t\treturn _registry.getLoadedThemes();\n\t}\n\tfunction getLoadedLanguages() {\n\t\tensureNotDisposed();\n\t\treturn _registry.getLoadedLanguages();\n\t}\n\tfunction loadLanguageSync(...langs) {\n\t\tensureNotDisposed();\n\t\t_registry.loadLanguages(langs.flat(1));\n\t}\n\tasync function loadLanguage(...langs) {\n\t\treturn loadLanguageSync(await resolveLangs(langs));\n\t}\n\tfunction loadThemeSync(...themes) {\n\t\tensureNotDisposed();\n\t\tfor (const theme of themes.flat(1)) _registry.loadTheme(theme);\n\t}\n\tasync function loadTheme(...themes) {\n\t\tensureNotDisposed();\n\t\treturn loadThemeSync(await resolveThemes(themes));\n\t}\n\tfunction ensureNotDisposed() {\n\t\tif (isDisposed) throw new ShikiError(\"Shiki instance has been disposed\");\n\t}\n\tfunction dispose() {\n\t\tif (isDisposed) return;\n\t\tisDisposed = true;\n\t\t_registry.dispose();\n\t\tinstancesCount -= 1;\n\t}\n\treturn {\n\t\tsetTheme,\n\t\tgetTheme,\n\t\tgetLanguage,\n\t\tgetLoadedThemes,\n\t\tgetLoadedLanguages,\n\t\tresolveLangAlias: resolveLangAlias$1,\n\t\tloadLanguage,\n\t\tloadLanguageSync,\n\t\tloadTheme,\n\t\tloadThemeSync,\n\t\tdispose,\n\t\t[Symbol.dispose]: dispose\n\t};\n}\n/**\n* @deprecated Use `createShikiPrimitive` instead.\n*/\nconst createShikiInternalSync = createShikiPrimitive;\n\n//#endregion\n//#region src/constructors/async.ts\n/**\n* Get the minimal shiki primitive instance.\n*/\nasync function createShikiPrimitiveAsync(options) {\n\tif (!options.engine) console.warn(\"`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.\");\n\tconst [themes, langs, engine] = await Promise.all([\n\t\tresolveThemes(options.themes || []),\n\t\tresolveLangs(options.langs || []),\n\t\toptions.engine\n\t]);\n\treturn createShikiPrimitive({\n\t\t...options,\n\t\tthemes,\n\t\tlangs,\n\t\tengine\n\t});\n}\n/**\n* @deprecated Use `createShikiPrimitiveAsync` instead.\n*/\nconst createShikiInternal = createShikiPrimitiveAsync;\n\n//#endregion\n//#region src/textmate/grammar-state.ts\nconst _grammarStateMap = /* @__PURE__ */ new WeakMap();\nfunction setLastGrammarStateToMap(keys, state) {\n\t_grammarStateMap.set(keys, state);\n}\nfunction getLastGrammarStateFromMap(keys) {\n\treturn _grammarStateMap.get(keys);\n}\n/**\n* GrammarState is a special reference object that holds the state of a grammar.\n*\n* It's used to highlight code snippets that are part of the target language.\n*/\nvar GrammarState = class GrammarState {\n\t/**\n\t* Theme to Stack mapping\n\t*/\n\t_stacks = {};\n\tlang;\n\tget themes() {\n\t\treturn Object.keys(this._stacks);\n\t}\n\tget theme() {\n\t\treturn this.themes[0];\n\t}\n\tget _stack() {\n\t\treturn this._stacks[this.theme];\n\t}\n\t/**\n\t* Static method to create a initial grammar state.\n\t*/\n\tstatic initial(lang, themes) {\n\t\treturn new GrammarState(Object.fromEntries(toArray(themes).map((theme) => [theme, INITIAL])), lang);\n\t}\n\tconstructor(...args) {\n\t\tif (args.length === 2) {\n\t\t\tconst [stacksMap, lang] = args;\n\t\t\tthis.lang = lang;\n\t\t\tthis._stacks = stacksMap;\n\t\t} else {\n\t\t\tconst [stack, lang, theme] = args;\n\t\t\tthis.lang = lang;\n\t\t\tthis._stacks = { [theme]: stack };\n\t\t}\n\t}\n\t/**\n\t* Get the internal stack object.\n\t* @internal\n\t*/\n\tgetInternalStack(theme = this.theme) {\n\t\treturn this._stacks[theme];\n\t}\n\tgetScopes(theme = this.theme) {\n\t\treturn getScopes(this._stacks[theme]);\n\t}\n\ttoJSON() {\n\t\treturn {\n\t\t\tlang: this.lang,\n\t\t\ttheme: this.theme,\n\t\t\tthemes: this.themes,\n\t\t\tscopes: this.getScopes()\n\t\t};\n\t}\n};\nfunction getScopes(stack) {\n\tconst scopes = [];\n\tconst visited = /* @__PURE__ */ new Set();\n\tfunction pushScope(stack) {\n\t\tif (visited.has(stack)) return;\n\t\tvisited.add(stack);\n\t\tconst name = stack?.nameScopesList?.scopeName;\n\t\tif (name) scopes.push(name);\n\t\tif (stack.parent) pushScope(stack.parent);\n\t}\n\tpushScope(stack);\n\treturn scopes;\n}\nfunction getGrammarStack(state, theme) {\n\tif (!(state instanceof GrammarState)) throw new ShikiError(\"Invalid grammar state\");\n\treturn state.getInternalStack(theme);\n}\n\n//#endregion\n//#region src/highlight/code-to-tokens-base.ts\n/**\n* Code to tokens, with a simple theme.\n*/\nfunction codeToTokensBase(primitive, code, options = {}) {\n\tconst { theme: themeName = primitive.getLoadedThemes()[0] } = options;\n\tif (isPlainLang(primitive.resolveLangAlias(options.lang || \"text\")) || isNoneTheme(themeName)) return splitLines(code).map((line) => [{\n\t\tcontent: line[0],\n\t\toffset: line[1]\n\t}]);\n\tconst { theme, colorMap } = primitive.setTheme(themeName);\n\tconst _grammar = primitive.getLanguage(options.lang || \"text\");\n\tif (options.grammarState) {\n\t\tif (options.grammarState.lang !== _grammar.name) throw new ShikiError(`Grammar state language \"${options.grammarState.lang}\" does not match highlight language \"${_grammar.name}\"`);\n\t\tif (!options.grammarState.themes.includes(theme.name)) throw new ShikiError(`Grammar state themes \"${options.grammarState.themes}\" do not contain highlight theme \"${theme.name}\"`);\n\t}\n\treturn tokenizeWithTheme(code, _grammar, theme, colorMap, options);\n}\nfunction getLastGrammarState(...args) {\n\tif (args.length === 2) return getLastGrammarStateFromMap(args[1]);\n\tconst [primitive, code, options = {}] = args;\n\tconst { lang = \"text\", theme: themeName = primitive.getLoadedThemes()[0] } = options;\n\tif (isPlainLang(lang) || isNoneTheme(themeName)) throw new ShikiError(\"Plain language does not have grammar state\");\n\tif (lang === \"ansi\") throw new ShikiError(\"ANSI language does not have grammar state\");\n\tconst { theme, colorMap } = primitive.setTheme(themeName);\n\tconst _grammar = primitive.getLanguage(lang);\n\treturn new GrammarState(_tokenizeWithTheme(code, _grammar, theme, colorMap, options).stateStack, _grammar.name, theme.name);\n}\nfunction tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n\tconst result = _tokenizeWithTheme(code, grammar, theme, colorMap, options);\n\tconst grammarState = new GrammarState(result.stateStack, grammar.name, theme.name);\n\tsetLastGrammarStateToMap(result.tokens, grammarState);\n\treturn result.tokens;\n}\nfunction _tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n\tconst colorReplacements = resolveColorReplacements(theme, options);\n\tconst { tokenizeMaxLineLength = 0, tokenizeTimeLimit = 500 } = options;\n\tconst lines = splitLines(code);\n\tlet stateStack = options.grammarState ? getGrammarStack(options.grammarState, theme.name) ?? INITIAL : options.grammarContextCode != null ? _tokenizeWithTheme(options.grammarContextCode, grammar, theme, colorMap, {\n\t\t...options,\n\t\tgrammarState: void 0,\n\t\tgrammarContextCode: void 0\n\t}).stateStack : INITIAL;\n\tlet actual = [];\n\tconst final = [];\n\tfor (let i = 0, len = lines.length; i < len; i++) {\n\t\tconst [line, lineOffset] = lines[i];\n\t\tif (line === \"\") {\n\t\t\tactual = [];\n\t\t\tfinal.push([]);\n\t\t\tcontinue;\n\t\t}\n\t\tif (tokenizeMaxLineLength > 0 && line.length >= tokenizeMaxLineLength) {\n\t\t\tactual = [];\n\t\t\tfinal.push([{\n\t\t\t\tcontent: line,\n\t\t\t\toffset: lineOffset,\n\t\t\t\tcolor: \"\",\n\t\t\t\tfontStyle: 0\n\t\t\t}]);\n\t\t\tcontinue;\n\t\t}\n\t\tlet resultWithScopes;\n\t\tlet tokensWithScopes;\n\t\tlet tokensWithScopesIndex;\n\t\tif (options.includeExplanation) {\n\t\t\tresultWithScopes = grammar.tokenizeLine(line, stateStack, tokenizeTimeLimit);\n\t\t\ttokensWithScopes = resultWithScopes.tokens;\n\t\t\ttokensWithScopesIndex = 0;\n\t\t}\n\t\tconst result = grammar.tokenizeLine2(line, stateStack, tokenizeTimeLimit);\n\t\tconst tokensLength = result.tokens.length / 2;\n\t\tfor (let j = 0; j < tokensLength; j++) {\n\t\t\tconst startIndex = result.tokens[2 * j];\n\t\t\tconst nextStartIndex = j + 1 < tokensLength ? result.tokens[2 * j + 2] : line.length;\n\t\t\tif (startIndex === nextStartIndex) continue;\n\t\t\tconst metadata = result.tokens[2 * j + 1];\n\t\t\tconst color = applyColorReplacements(colorMap[EncodedTokenMetadata.getForeground(metadata)], colorReplacements);\n\t\t\tconst fontStyle = EncodedTokenMetadata.getFontStyle(metadata);\n\t\t\tconst token = {\n\t\t\t\tcontent: line.substring(startIndex, nextStartIndex),\n\t\t\t\toffset: lineOffset + startIndex,\n\t\t\t\tcolor,\n\t\t\t\tfontStyle\n\t\t\t};\n\t\t\tif (options.includeExplanation) {\n\t\t\t\tconst themeSettingsSelectors = [];\n\t\t\t\tif (options.includeExplanation !== \"scopeName\") for (const setting of theme.settings) {\n\t\t\t\t\tlet selectors;\n\t\t\t\t\tswitch (typeof setting.scope) {\n\t\t\t\t\t\tcase \"string\":\n\t\t\t\t\t\t\tselectors = setting.scope.split(/,/).map((scope) => scope.trim());\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"object\":\n\t\t\t\t\t\t\tselectors = setting.scope;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault: continue;\n\t\t\t\t\t}\n\t\t\t\t\tthemeSettingsSelectors.push({\n\t\t\t\t\t\tsettings: setting,\n\t\t\t\t\t\tselectors: selectors.map((selector) => selector.split(/ /))\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\ttoken.explanation = [];\n\t\t\t\tlet offset = 0;\n\t\t\t\twhile (startIndex + offset < nextStartIndex) {\n\t\t\t\t\tconst tokenWithScopes = tokensWithScopes[tokensWithScopesIndex];\n\t\t\t\t\tconst tokenWithScopesText = line.substring(tokenWithScopes.startIndex, tokenWithScopes.endIndex);\n\t\t\t\t\toffset += tokenWithScopesText.length;\n\t\t\t\t\ttoken.explanation.push({\n\t\t\t\t\t\tcontent: tokenWithScopesText,\n\t\t\t\t\t\tscopes: options.includeExplanation === \"scopeName\" ? explainThemeScopesNameOnly(tokenWithScopes.scopes) : explainThemeScopesFull(themeSettingsSelectors, tokenWithScopes.scopes)\n\t\t\t\t\t});\n\t\t\t\t\ttokensWithScopesIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\tactual.push(token);\n\t\t}\n\t\tfinal.push(actual);\n\t\tactual = [];\n\t\tstateStack = result.ruleStack;\n\t}\n\treturn {\n\t\ttokens: final,\n\t\tstateStack\n\t};\n}\nfunction explainThemeScopesNameOnly(scopes) {\n\treturn scopes.map((scope) => ({ scopeName: scope }));\n}\nfunction explainThemeScopesFull(themeSelectors, scopes) {\n\tconst result = [];\n\tfor (let i = 0, len = scopes.length; i < len; i++) {\n\t\tconst scope = scopes[i];\n\t\tresult[i] = {\n\t\t\tscopeName: scope,\n\t\t\tthemeMatches: explainThemeScope(themeSelectors, scope, scopes.slice(0, i))\n\t\t};\n\t}\n\treturn result;\n}\nfunction matchesOne(selector, scope) {\n\treturn selector === scope || scope.substring(0, selector.length) === selector && scope[selector.length] === \".\";\n}\nfunction matches(selectors, scope, parentScopes) {\n\tif (!matchesOne(selectors[selectors.length - 1], scope)) return false;\n\tlet selectorParentIndex = selectors.length - 2;\n\tlet parentIndex = parentScopes.length - 1;\n\twhile (selectorParentIndex >= 0 && parentIndex >= 0) {\n\t\tif (matchesOne(selectors[selectorParentIndex], parentScopes[parentIndex])) selectorParentIndex -= 1;\n\t\tparentIndex -= 1;\n\t}\n\tif (selectorParentIndex === -1) return true;\n\treturn false;\n}\nfunction explainThemeScope(themeSettingsSelectors, scope, parentScopes) {\n\tconst result = [];\n\tfor (const { selectors, settings } of themeSettingsSelectors) for (const selectorPieces of selectors) if (matches(selectorPieces, scope, parentScopes)) {\n\t\tresult.push(settings);\n\t\tbreak;\n\t}\n\treturn result;\n}\n\n//#endregion\n//#region src/highlight/code-to-tokens-themes.ts\n/**\n* Get tokens with multiple themes\n*/\nfunction codeToTokensWithThemes(primitive, code, options, codeToTokensBaseFn = codeToTokensBase) {\n\tconst themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({\n\t\tcolor: i[0],\n\t\ttheme: i[1]\n\t}));\n\tconst themedTokens = themes.map((t) => {\n\t\tconst tokens = codeToTokensBaseFn(primitive, code, {\n\t\t\t...options,\n\t\t\ttheme: t.theme\n\t\t});\n\t\treturn {\n\t\t\ttokens,\n\t\t\tstate: getLastGrammarStateFromMap(tokens),\n\t\t\ttheme: typeof t.theme === \"string\" ? t.theme : t.theme.name\n\t\t};\n\t});\n\tconst tokens = alignThemesTokenization(...themedTokens.map((i) => i.tokens));\n\tconst mergedTokens = tokens[0].map((line, lineIdx) => line.map((_token, tokenIdx) => {\n\t\tconst mergedToken = {\n\t\t\tcontent: _token.content,\n\t\t\tvariants: {},\n\t\t\toffset: _token.offset\n\t\t};\n\t\tif (\"includeExplanation\" in options && options.includeExplanation) mergedToken.explanation = _token.explanation;\n\t\ttokens.forEach((t, themeIdx) => {\n\t\t\tconst { content: _, explanation: __, offset: ___, ...styles } = t[lineIdx][tokenIdx];\n\t\t\tmergedToken.variants[themes[themeIdx].color] = styles;\n\t\t});\n\t\treturn mergedToken;\n\t}));\n\tconst mergedGrammarState = themedTokens[0].state ? new GrammarState(Object.fromEntries(themedTokens.map((s) => [s.theme, s.state?.getInternalStack(s.theme)])), themedTokens[0].state.lang) : void 0;\n\tif (mergedGrammarState) setLastGrammarStateToMap(mergedTokens, mergedGrammarState);\n\treturn mergedTokens;\n}\n/**\n* Break tokens from multiple themes into same tokenization.\n*\n* For example, given two themes that tokenize `console.log(\"hello\")` as:\n*\n* - `console . log (\" hello \")` (6 tokens)\n* - `console .log ( \"hello\" )` (5 tokens)\n*\n* This function will return:\n*\n* - `console . log ( \" hello \" )` (8 tokens)\n* - `console . log ( \" hello \" )` (8 tokens)\n*/\nfunction alignThemesTokenization(...themes) {\n\tconst outThemes = themes.map(() => []);\n\tconst count = themes.length;\n\tfor (let i = 0; i < themes[0].length; i++) {\n\t\tconst lines = themes.map((t) => t[i]);\n\t\tconst outLines = outThemes.map(() => []);\n\t\toutThemes.forEach((t, i) => t.push(outLines[i]));\n\t\tconst indexes = lines.map(() => 0);\n\t\tconst current = lines.map((l) => l[0]);\n\t\twhile (current.every((t) => t)) {\n\t\t\tconst minLength = Math.min(...current.map((t) => t.content.length));\n\t\t\tfor (let n = 0; n < count; n++) {\n\t\t\t\tconst token = current[n];\n\t\t\t\tif (token.content.length === minLength) {\n\t\t\t\t\toutLines[n].push(token);\n\t\t\t\t\tindexes[n] += 1;\n\t\t\t\t\tcurrent[n] = lines[n][indexes[n]];\n\t\t\t\t} else {\n\t\t\t\t\toutLines[n].push({\n\t\t\t\t\t\t...token,\n\t\t\t\t\t\tcontent: token.content.slice(0, minLength)\n\t\t\t\t\t});\n\t\t\t\t\tcurrent[n] = {\n\t\t\t\t\t\t...token,\n\t\t\t\t\t\tcontent: token.content.slice(minLength),\n\t\t\t\t\t\toffset: token.offset + minLength\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn outThemes;\n}\n\n//#endregion\nexport { GrammarState, Registry, Resolver, alignThemesTokenization, applyColorReplacements, codeToTokensBase, codeToTokensWithThemes, createShikiInternal, createShikiInternalSync, createShikiPrimitive, createShikiPrimitiveAsync, getGrammarStack, getLastGrammarState, getLastGrammarStateFromMap, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, normalizeGetter, normalizeTheme, resolveColorReplacements, resolveLangAlias, resolveLangs, resolveThemes, setLastGrammarStateToMap, splitLines, toArray, tokenizeWithTheme };"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../../../node_modules/@shikijs/primitive/dist/index.mjs"],"sourcesContent":["import { ShikiError } from \"@shikijs/types\";\nimport { EncodedTokenMetadata, INITIAL, Registry as Registry$1, Theme } from \"@shikijs/vscode-textmate\";\nexport * from \"@shikijs/types\";\n//#region src/utils/colors.ts\nfunction resolveColorReplacements(theme, options) {\n\tconst replacements = typeof theme === \"string\" ? {} : { ...theme.colorReplacements };\n\tconst themeName = typeof theme === \"string\" ? theme : theme.name;\n\tfor (const [key, value] of Object.entries(options?.colorReplacements || {})) if (typeof value === \"string\") replacements[key] = value;\n\telse if (key === themeName) Object.assign(replacements, value);\n\treturn replacements;\n}\nfunction applyColorReplacements(color, replacements) {\n\tif (!color) return color;\n\treturn replacements?.[color?.toLowerCase()] || color;\n}\n//#endregion\n//#region src/utils/general.ts\nfunction toArray(x) {\n\treturn Array.isArray(x) ? x : [x];\n}\n/**\n* Normalize a getter to a promise.\n*/\nasync function normalizeGetter(p) {\n\treturn Promise.resolve(typeof p === \"function\" ? p() : p).then((r) => r.default || r);\n}\n/**\n* Check if the language is plaintext that is ignored by Shiki.\n*\n* Hard-coded plain text languages: `plaintext`, `txt`, `text`, `plain`.\n*/\nfunction isPlainLang(lang) {\n\treturn !lang || [\n\t\t\"plaintext\",\n\t\t\"txt\",\n\t\t\"text\",\n\t\t\"plain\"\n\t].includes(lang);\n}\n/**\n* Check if the language is specially handled or bypassed by Shiki.\n*\n* Hard-coded languages: `ansi` and plaintexts like `plaintext`, `txt`, `text`, `plain`.\n*/\nfunction isSpecialLang(lang) {\n\treturn lang === \"ansi\" || isPlainLang(lang);\n}\n/**\n* Check if the theme is specially handled or bypassed by Shiki.\n*\n* Hard-coded themes: `none`.\n*/\nfunction isNoneTheme(theme) {\n\treturn theme === \"none\";\n}\n/**\n* Check if the theme is specially handled or bypassed by Shiki.\n*\n* Hard-coded themes: `none`.\n*/\nfunction isSpecialTheme(theme) {\n\treturn isNoneTheme(theme);\n}\n//#endregion\n//#region src/utils/strings.ts\n/**\n* Split a string into lines, each line preserves the line ending.\n*\n* @param code - The code string to split into lines\n* @param preserveEnding - Whether to preserve line endings in the result\n* @returns Array of tuples containing [line content, offset index]\n*\n* @example\n* ```ts\n* splitLines('hello\\nworld', false)\n* // => [['hello', 0], ['world', 6]]\n*\n* splitLines('hello\\nworld', true)\n* // => [['hello\\n', 0], ['world', 6]]\n* ```\n*/\nconst RE_NEWLINE = /(\\r?\\n)/g;\nfunction splitLines(code, preserveEnding = false) {\n\tif (code.length === 0) return [[\"\", 0]];\n\tconst parts = code.split(RE_NEWLINE);\n\tlet index = 0;\n\tconst lines = [];\n\tfor (let i = 0; i < parts.length; i += 2) {\n\t\tconst line = preserveEnding ? parts[i] + (parts[i + 1] || \"\") : parts[i];\n\t\tlines.push([line, index]);\n\t\tindex += parts[i].length;\n\t\tindex += parts[i + 1]?.length || 0;\n\t}\n\treturn lines;\n}\n//#endregion\n//#region src/textmate/normalize-theme.ts\n/**\n* https://github.com/microsoft/vscode/blob/f7f05dee53fb33fe023db2e06e30a89d3094488f/src/vs/platform/theme/common/colorRegistry.ts#L258-L268\n*/\nconst VSCODE_FALLBACK_EDITOR_FG = {\n\tlight: \"#333333\",\n\tdark: \"#bbbbbb\"\n};\nconst VSCODE_FALLBACK_EDITOR_BG = {\n\tlight: \"#fffffe\",\n\tdark: \"#1e1e1e\"\n};\nconst RESOLVED_KEY = \"__shiki_resolved\";\n/**\n* Normalize a textmate theme to shiki theme\n*/\nfunction normalizeTheme(rawTheme) {\n\tif (rawTheme?.[RESOLVED_KEY]) return rawTheme;\n\tconst theme = { ...rawTheme };\n\tif (theme.tokenColors && !theme.settings) {\n\t\ttheme.settings = theme.tokenColors;\n\t\tdelete theme.tokenColors;\n\t}\n\ttheme.type ||= \"dark\";\n\ttheme.colorReplacements = { ...theme.colorReplacements };\n\ttheme.settings ||= [];\n\tlet { bg, fg } = theme;\n\tif (!bg || !fg) {\n\t\t/**\n\t\t* First try:\n\t\t* Theme might contain a global `tokenColor` without `name` or `scope`\n\t\t* Used as default value for foreground/background\n\t\t*/\n\t\tconst globalSetting = theme.settings ? theme.settings.find((s) => !s.name && !s.scope) : void 0;\n\t\tif (globalSetting?.settings?.foreground) fg = globalSetting.settings.foreground;\n\t\tif (globalSetting?.settings?.background) bg = globalSetting.settings.background;\n\t\t/**\n\t\t* Second try:\n\t\t* If there's no global `tokenColor` without `name` or `scope`\n\t\t* Use `editor.foreground` and `editor.background`\n\t\t*/\n\t\tif (!fg && theme?.colors?.[\"editor.foreground\"]) fg = theme.colors[\"editor.foreground\"];\n\t\tif (!bg && theme?.colors?.[\"editor.background\"]) bg = theme.colors[\"editor.background\"];\n\t\t/**\n\t\t* Last try:\n\t\t* If there's no fg/bg color specified in theme, use default\n\t\t*/\n\t\tif (!fg) fg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_FG.light : VSCODE_FALLBACK_EDITOR_FG.dark;\n\t\tif (!bg) bg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_BG.light : VSCODE_FALLBACK_EDITOR_BG.dark;\n\t\ttheme.fg = fg;\n\t\ttheme.bg = bg;\n\t}\n\tif (!(theme.settings[0] && theme.settings[0].settings && !theme.settings[0].scope)) theme.settings.unshift({ settings: {\n\t\tforeground: theme.fg,\n\t\tbackground: theme.bg\n\t} });\n\tlet replacementCount = 0;\n\tconst replacementMap = /* @__PURE__ */ new Map();\n\tfunction getReplacementColor(value) {\n\t\tif (replacementMap.has(value)) return replacementMap.get(value);\n\t\treplacementCount += 1;\n\t\tconst hex = `#${replacementCount.toString(16).padStart(8, \"0\").toLowerCase()}`;\n\t\tif (theme.colorReplacements?.[`#${hex}`]) return getReplacementColor(value);\n\t\treplacementMap.set(value, hex);\n\t\treturn hex;\n\t}\n\ttheme.settings = theme.settings.map((setting) => {\n\t\tconst replaceFg = setting.settings?.foreground && !setting.settings.foreground.startsWith(\"#\");\n\t\tconst replaceBg = setting.settings?.background && !setting.settings.background.startsWith(\"#\");\n\t\tif (!replaceFg && !replaceBg) return setting;\n\t\tconst clone = {\n\t\t\t...setting,\n\t\t\tsettings: { ...setting.settings }\n\t\t};\n\t\tif (replaceFg) {\n\t\t\tconst replacement = getReplacementColor(setting.settings.foreground);\n\t\t\ttheme.colorReplacements[replacement] = setting.settings.foreground;\n\t\t\tclone.settings.foreground = replacement;\n\t\t}\n\t\tif (replaceBg) {\n\t\t\tconst replacement = getReplacementColor(setting.settings.background);\n\t\t\ttheme.colorReplacements[replacement] = setting.settings.background;\n\t\t\tclone.settings.background = replacement;\n\t\t}\n\t\treturn clone;\n\t});\n\tfor (const key of Object.keys(theme.colors || {})) if (key === \"editor.foreground\" || key === \"editor.background\" || key.startsWith(\"terminal.ansi\")) {\n\t\tif (!theme.colors[key]?.startsWith(\"#\")) {\n\t\t\tconst replacement = getReplacementColor(theme.colors[key]);\n\t\t\ttheme.colorReplacements[replacement] = theme.colors[key];\n\t\t\ttheme.colors[key] = replacement;\n\t\t}\n\t}\n\tObject.defineProperty(theme, RESOLVED_KEY, {\n\t\tenumerable: false,\n\t\twritable: false,\n\t\tvalue: true\n\t});\n\treturn theme;\n}\n//#endregion\n//#region src/textmate/getters-resolve.ts\n/**\n* Resolve\n*/\nasync function resolveLangs(langs) {\n\treturn [...new Set((await Promise.all(langs.filter((l) => !isSpecialLang(l)).map(async (lang) => await normalizeGetter(lang).then((r) => Array.isArray(r) ? r : [r])))).flat())];\n}\nasync function resolveThemes(themes) {\n\treturn (await Promise.all(themes.map(async (theme) => isSpecialTheme(theme) ? null : normalizeTheme(await normalizeGetter(theme))))).filter((i) => !!i);\n}\n//#endregion\n//#region src/utils/alias.ts\nfunction resolveLangAlias(name, alias) {\n\tif (!alias) return name;\n\tif (alias[name]) {\n\t\tconst resolved = new Set([name]);\n\t\twhile (alias[name]) {\n\t\t\tname = alias[name];\n\t\t\tif (resolved.has(name)) throw new ShikiError(`Circular alias \\`${[...resolved].join(\" -> \")} -> ${name}\\``);\n\t\t\tresolved.add(name);\n\t\t}\n\t}\n\treturn name;\n}\n//#endregion\n//#region src/textmate/registry.ts\nvar Registry = class extends Registry$1 {\n\t_resolver;\n\t_themes;\n\t_langs;\n\t_alias;\n\t_resolvedThemes = /* @__PURE__ */ new Map();\n\t_resolvedGrammars = /* @__PURE__ */ new Map();\n\t_langMap = /* @__PURE__ */ new Map();\n\t_langGraph = /* @__PURE__ */ new Map();\n\t_textmateThemeCache = /* @__PURE__ */ new WeakMap();\n\t_loadedThemesCache = null;\n\t_loadedLanguagesCache = null;\n\tconstructor(_resolver, _themes, _langs, _alias = {}) {\n\t\tsuper(_resolver);\n\t\tthis._resolver = _resolver;\n\t\tthis._themes = _themes;\n\t\tthis._langs = _langs;\n\t\tthis._alias = _alias;\n\t\tthis._themes.map((t) => this.loadTheme(t));\n\t\tthis.loadLanguages(this._langs);\n\t}\n\tgetTheme(theme) {\n\t\tif (typeof theme === \"string\") return this._resolvedThemes.get(theme);\n\t\telse return this.loadTheme(theme);\n\t}\n\tloadTheme(theme) {\n\t\tconst _theme = normalizeTheme(theme);\n\t\tif (_theme.name) {\n\t\t\tthis._resolvedThemes.set(_theme.name, _theme);\n\t\t\tthis._loadedThemesCache = null;\n\t\t}\n\t\treturn _theme;\n\t}\n\tgetLoadedThemes() {\n\t\tif (!this._loadedThemesCache) this._loadedThemesCache = [...this._resolvedThemes.keys()];\n\t\treturn this._loadedThemesCache;\n\t}\n\tsetTheme(theme) {\n\t\tlet textmateTheme = this._textmateThemeCache.get(theme);\n\t\tif (!textmateTheme) {\n\t\t\ttextmateTheme = Theme.createFromRawTheme(theme);\n\t\t\tthis._textmateThemeCache.set(theme, textmateTheme);\n\t\t}\n\t\tthis._syncRegistry.setTheme(textmateTheme);\n\t}\n\tgetGrammar(name) {\n\t\tname = resolveLangAlias(name, this._alias);\n\t\treturn this._resolvedGrammars.get(name);\n\t}\n\tloadLanguage(lang) {\n\t\tif (this.getGrammar(lang.name)) return;\n\t\tconst embeddedLazilyBy = new Set([...this._langMap.values()].filter((i) => i.embeddedLangsLazy?.includes(lang.name)));\n\t\tthis._resolver.addLanguage(lang);\n\t\tconst grammarConfig = {\n\t\t\tbalancedBracketSelectors: lang.balancedBracketSelectors || [\"*\"],\n\t\t\tunbalancedBracketSelectors: lang.unbalancedBracketSelectors || []\n\t\t};\n\t\tthis._syncRegistry._rawGrammars.set(lang.scopeName, lang);\n\t\tconst g = this.loadGrammarWithConfiguration(lang.scopeName, 1, grammarConfig);\n\t\tg.name = lang.name;\n\t\tthis._resolvedGrammars.set(lang.name, g);\n\t\tif (lang.aliases) lang.aliases.forEach((alias) => {\n\t\t\tthis._alias[alias] = lang.name;\n\t\t});\n\t\tthis._loadedLanguagesCache = null;\n\t\tif (embeddedLazilyBy.size) for (const e of embeddedLazilyBy) {\n\t\t\tthis._resolvedGrammars.delete(e.name);\n\t\t\tthis._loadedLanguagesCache = null;\n\t\t\tthis._syncRegistry?._injectionGrammars?.delete(e.scopeName);\n\t\t\tthis._syncRegistry?._grammars?.delete(e.scopeName);\n\t\t\tthis.loadLanguage(this._langMap.get(e.name));\n\t\t}\n\t}\n\tdispose() {\n\t\tsuper.dispose();\n\t\tthis._resolvedThemes.clear();\n\t\tthis._resolvedGrammars.clear();\n\t\tthis._langMap.clear();\n\t\tthis._langGraph.clear();\n\t\tthis._loadedThemesCache = null;\n\t}\n\tloadLanguages(langs) {\n\t\tfor (const lang of langs) this.resolveEmbeddedLanguages(lang);\n\t\tconst langsGraphArray = [...this._langGraph.entries()];\n\t\tconst missingLangs = langsGraphArray.filter(([_, lang]) => !lang);\n\t\tif (missingLangs.length) {\n\t\t\tconst dependents = langsGraphArray.filter(([_, lang]) => {\n\t\t\t\tif (!lang) return false;\n\t\t\t\treturn (lang.embeddedLanguages || lang.embeddedLangs)?.some((l) => missingLangs.map(([name]) => name).includes(l));\n\t\t\t}).filter((lang) => !missingLangs.includes(lang));\n\t\t\tthrow new ShikiError(`Missing languages ${missingLangs.map(([name]) => `\\`${name}\\``).join(\", \")}, required by ${dependents.map(([name]) => `\\`${name}\\``).join(\", \")}`);\n\t\t}\n\t\tfor (const [_, lang] of langsGraphArray) this._resolver.addLanguage(lang);\n\t\tfor (const [_, lang] of langsGraphArray) this.loadLanguage(lang);\n\t}\n\tgetLoadedLanguages() {\n\t\tif (!this._loadedLanguagesCache) this._loadedLanguagesCache = [...new Set([...this._resolvedGrammars.keys(), ...Object.keys(this._alias)])];\n\t\treturn this._loadedLanguagesCache;\n\t}\n\tresolveEmbeddedLanguages(lang) {\n\t\tthis._langMap.set(lang.name, lang);\n\t\tthis._langGraph.set(lang.name, lang);\n\t\tconst embedded = lang.embeddedLanguages ?? lang.embeddedLangs;\n\t\tif (embedded) for (const embeddedLang of embedded) this._langGraph.set(embeddedLang, this._langMap.get(embeddedLang));\n\t}\n};\n//#endregion\n//#region src/textmate/resolver.ts\nvar Resolver = class {\n\t_langs = /* @__PURE__ */ new Map();\n\t_scopeToLang = /* @__PURE__ */ new Map();\n\t_injections = /* @__PURE__ */ new Map();\n\t_onigLib;\n\tconstructor(engine, langs) {\n\t\tthis._onigLib = {\n\t\t\tcreateOnigScanner: (patterns) => engine.createScanner(patterns),\n\t\t\tcreateOnigString: (s) => engine.createString(s)\n\t\t};\n\t\tlangs.forEach((i) => this.addLanguage(i));\n\t}\n\tget onigLib() {\n\t\treturn this._onigLib;\n\t}\n\tgetLangRegistration(langIdOrAlias) {\n\t\treturn this._langs.get(langIdOrAlias);\n\t}\n\tloadGrammar(scopeName) {\n\t\treturn this._scopeToLang.get(scopeName);\n\t}\n\taddLanguage(l) {\n\t\tthis._langs.set(l.name, l);\n\t\tif (l.aliases) l.aliases.forEach((a) => {\n\t\t\tthis._langs.set(a, l);\n\t\t});\n\t\tthis._scopeToLang.set(l.scopeName, l);\n\t\tif (l.injectTo) l.injectTo.forEach((i) => {\n\t\t\tif (!this._injections.get(i)) this._injections.set(i, []);\n\t\t\tthis._injections.get(i).push(l.scopeName);\n\t\t});\n\t}\n\tgetInjections(scopeName) {\n\t\tconst scopeParts = scopeName.split(\".\");\n\t\tlet injections = [];\n\t\tfor (let i = 1; i <= scopeParts.length; i++) {\n\t\t\tconst subScopeName = scopeParts.slice(0, i).join(\".\");\n\t\t\tinjections = [...injections, ...this._injections.get(subScopeName) || []];\n\t\t}\n\t\treturn injections;\n\t}\n};\n//#endregion\n//#region src/constructors/primitive.ts\nlet instancesCount = 0;\n/**\n* Get the minimal shiki primitive instance.\n*\n* Requires to provide the engine and all themes and languages upfront.\n*/\nfunction createShikiPrimitive(options) {\n\tinstancesCount += 1;\n\tif (options.warnings !== false && instancesCount >= 10 && instancesCount % 10 === 0) console.warn(`[Shiki] ${instancesCount} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \\`highlighter.dispose()\\` to release unused instances.`);\n\tlet isDisposed = false;\n\tif (!options.engine) throw new ShikiError(\"`engine` option is required for synchronous mode\");\n\tconst langs = (options.langs || []).flat(1);\n\tconst themes = (options.themes || []).flat(1).map(normalizeTheme);\n\tconst _registry = new Registry(new Resolver(options.engine, langs), themes, langs, options.langAlias);\n\tlet _lastTheme;\n\tfunction resolveLangAlias$1(name) {\n\t\treturn resolveLangAlias(name, options.langAlias);\n\t}\n\tfunction getLanguage(name) {\n\t\tensureNotDisposed();\n\t\tconst _lang = _registry.getGrammar(typeof name === \"string\" ? name : name.name);\n\t\tif (!_lang) throw new ShikiError(`Language \\`${name}\\` not found, you may need to load it first`);\n\t\treturn _lang;\n\t}\n\tfunction getTheme(name) {\n\t\tif (name === \"none\") return {\n\t\t\tbg: \"\",\n\t\t\tfg: \"\",\n\t\t\tname: \"none\",\n\t\t\tsettings: [],\n\t\t\ttype: \"dark\"\n\t\t};\n\t\tensureNotDisposed();\n\t\tconst _theme = _registry.getTheme(name);\n\t\tif (!_theme) throw new ShikiError(`Theme \\`${name}\\` not found, you may need to load it first`);\n\t\treturn _theme;\n\t}\n\tfunction setTheme(name) {\n\t\tensureNotDisposed();\n\t\tconst theme = getTheme(name);\n\t\tif (_lastTheme !== name) {\n\t\t\t_registry.setTheme(theme);\n\t\t\t_lastTheme = name;\n\t\t}\n\t\treturn {\n\t\t\ttheme,\n\t\t\tcolorMap: _registry.getColorMap()\n\t\t};\n\t}\n\tfunction getLoadedThemes() {\n\t\tensureNotDisposed();\n\t\treturn _registry.getLoadedThemes();\n\t}\n\tfunction getLoadedLanguages() {\n\t\tensureNotDisposed();\n\t\treturn _registry.getLoadedLanguages();\n\t}\n\tfunction loadLanguageSync(...langs) {\n\t\tensureNotDisposed();\n\t\t_registry.loadLanguages(langs.flat(1));\n\t}\n\tasync function loadLanguage(...langs) {\n\t\treturn loadLanguageSync(await resolveLangs(langs));\n\t}\n\tfunction loadThemeSync(...themes) {\n\t\tensureNotDisposed();\n\t\tfor (const theme of themes.flat(1)) _registry.loadTheme(theme);\n\t}\n\tasync function loadTheme(...themes) {\n\t\tensureNotDisposed();\n\t\treturn loadThemeSync(await resolveThemes(themes));\n\t}\n\tfunction ensureNotDisposed() {\n\t\tif (isDisposed) throw new ShikiError(\"Shiki instance has been disposed\");\n\t}\n\tfunction dispose() {\n\t\tif (isDisposed) return;\n\t\tisDisposed = true;\n\t\t_registry.dispose();\n\t\tinstancesCount -= 1;\n\t}\n\treturn {\n\t\tsetTheme,\n\t\tgetTheme,\n\t\tgetLanguage,\n\t\tgetLoadedThemes,\n\t\tgetLoadedLanguages,\n\t\tresolveLangAlias: resolveLangAlias$1,\n\t\tloadLanguage,\n\t\tloadLanguageSync,\n\t\tloadTheme,\n\t\tloadThemeSync,\n\t\tdispose,\n\t\t[Symbol.dispose]: dispose\n\t};\n}\n/**\n* @deprecated Use `createShikiPrimitive` instead.\n*/\nconst createShikiInternalSync = createShikiPrimitive;\n//#endregion\n//#region src/constructors/async.ts\n/**\n* Get the minimal shiki primitive instance.\n*/\nasync function createShikiPrimitiveAsync(options) {\n\tif (!options.engine) console.warn(\"`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.\");\n\tconst [themes, langs, engine] = await Promise.all([\n\t\tresolveThemes(options.themes || []),\n\t\tresolveLangs(options.langs || []),\n\t\toptions.engine\n\t]);\n\treturn createShikiPrimitive({\n\t\t...options,\n\t\tthemes,\n\t\tlangs,\n\t\tengine\n\t});\n}\n/**\n* @deprecated Use `createShikiPrimitiveAsync` instead.\n*/\nconst createShikiInternal = createShikiPrimitiveAsync;\n//#endregion\n//#region src/textmate/grammar-state.ts\nconst _grammarStateMap = /* @__PURE__ */ new WeakMap();\nfunction setLastGrammarStateToMap(keys, state) {\n\t_grammarStateMap.set(keys, state);\n}\nfunction getLastGrammarStateFromMap(keys) {\n\treturn _grammarStateMap.get(keys);\n}\n/**\n* GrammarState is a special reference object that holds the state of a grammar.\n*\n* It's used to highlight code snippets that are part of the target language.\n*/\nvar GrammarState = class GrammarState {\n\t/**\n\t* Theme to Stack mapping\n\t*/\n\t_stacks = {};\n\tlang;\n\tget themes() {\n\t\treturn Object.keys(this._stacks);\n\t}\n\tget theme() {\n\t\treturn this.themes[0];\n\t}\n\tget _stack() {\n\t\treturn this._stacks[this.theme];\n\t}\n\t/**\n\t* Static method to create a initial grammar state.\n\t*/\n\tstatic initial(lang, themes) {\n\t\treturn new GrammarState(Object.fromEntries(toArray(themes).map((theme) => [theme, INITIAL])), lang);\n\t}\n\tconstructor(...args) {\n\t\tif (args.length === 2) {\n\t\t\tconst [stacksMap, lang] = args;\n\t\t\tthis.lang = lang;\n\t\t\tthis._stacks = stacksMap;\n\t\t} else {\n\t\t\tconst [stack, lang, theme] = args;\n\t\t\tthis.lang = lang;\n\t\t\tthis._stacks = { [theme]: stack };\n\t\t}\n\t}\n\t/**\n\t* Get the internal stack object.\n\t* @internal\n\t*/\n\tgetInternalStack(theme = this.theme) {\n\t\treturn this._stacks[theme];\n\t}\n\tgetScopes(theme = this.theme) {\n\t\treturn getScopes(this._stacks[theme]);\n\t}\n\ttoJSON() {\n\t\treturn {\n\t\t\tlang: this.lang,\n\t\t\ttheme: this.theme,\n\t\t\tthemes: this.themes,\n\t\t\tscopes: this.getScopes()\n\t\t};\n\t}\n};\nfunction getScopes(stack) {\n\tconst scopes = [];\n\tconst visited = /* @__PURE__ */ new Set();\n\tfunction pushScope(stack) {\n\t\tif (visited.has(stack)) return;\n\t\tvisited.add(stack);\n\t\tconst name = stack?.nameScopesList?.scopeName;\n\t\tif (name) scopes.push(name);\n\t\tif (stack.parent) pushScope(stack.parent);\n\t}\n\tpushScope(stack);\n\treturn scopes;\n}\nfunction getGrammarStack(state, theme) {\n\tif (!(state instanceof GrammarState)) throw new ShikiError(\"Invalid grammar state\");\n\treturn state.getInternalStack(theme);\n}\n//#endregion\n//#region src/highlight/code-to-tokens-base.ts\nconst RE_COMMA = /,/;\nconst RE_SPACE = / /;\n/**\n* Code to tokens, with a simple theme.\n*/\nfunction codeToTokensBase(primitive, code, options = {}) {\n\tconst { theme: themeName = primitive.getLoadedThemes()[0] } = options;\n\tif (isPlainLang(primitive.resolveLangAlias(options.lang || \"text\")) || isNoneTheme(themeName)) return splitLines(code).map((line) => [{\n\t\tcontent: line[0],\n\t\toffset: line[1]\n\t}]);\n\tconst { theme, colorMap } = primitive.setTheme(themeName);\n\tconst _grammar = primitive.getLanguage(options.lang || \"text\");\n\tif (options.grammarState) {\n\t\tif (options.grammarState.lang !== _grammar.name) throw new ShikiError(`Grammar state language \"${options.grammarState.lang}\" does not match highlight language \"${_grammar.name}\"`);\n\t\tif (!options.grammarState.themes.includes(theme.name)) throw new ShikiError(`Grammar state themes \"${options.grammarState.themes}\" do not contain highlight theme \"${theme.name}\"`);\n\t}\n\treturn tokenizeWithTheme(code, _grammar, theme, colorMap, options);\n}\nfunction getLastGrammarState(...args) {\n\tif (args.length === 2) return getLastGrammarStateFromMap(args[1]);\n\tconst [primitive, code, options = {}] = args;\n\tconst { lang = \"text\", theme: themeName = primitive.getLoadedThemes()[0] } = options;\n\tif (isPlainLang(lang) || isNoneTheme(themeName)) throw new ShikiError(\"Plain language does not have grammar state\");\n\tif (lang === \"ansi\") throw new ShikiError(\"ANSI language does not have grammar state\");\n\tconst { theme, colorMap } = primitive.setTheme(themeName);\n\tconst _grammar = primitive.getLanguage(lang);\n\treturn new GrammarState(_tokenizeWithTheme(code, _grammar, theme, colorMap, options).stateStack, _grammar.name, theme.name);\n}\nfunction tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n\tconst result = _tokenizeWithTheme(code, grammar, theme, colorMap, options);\n\tconst grammarState = new GrammarState(result.stateStack, grammar.name, theme.name);\n\tsetLastGrammarStateToMap(result.tokens, grammarState);\n\treturn result.tokens;\n}\nfunction _tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n\tconst colorReplacements = resolveColorReplacements(theme, options);\n\tconst { tokenizeMaxLineLength = 0, tokenizeTimeLimit = 500 } = options;\n\tconst lines = splitLines(code);\n\tlet stateStack = options.grammarState ? getGrammarStack(options.grammarState, theme.name) ?? INITIAL : options.grammarContextCode != null ? _tokenizeWithTheme(options.grammarContextCode, grammar, theme, colorMap, {\n\t\t...options,\n\t\tgrammarState: void 0,\n\t\tgrammarContextCode: void 0\n\t}).stateStack : INITIAL;\n\tlet actual = [];\n\tconst final = [];\n\tfor (let i = 0, len = lines.length; i < len; i++) {\n\t\tconst [line, lineOffset] = lines[i];\n\t\tif (line === \"\") {\n\t\t\tactual = [];\n\t\t\tfinal.push([]);\n\t\t\tcontinue;\n\t\t}\n\t\tif (tokenizeMaxLineLength > 0 && line.length >= tokenizeMaxLineLength) {\n\t\t\tactual = [];\n\t\t\tfinal.push([{\n\t\t\t\tcontent: line,\n\t\t\t\toffset: lineOffset,\n\t\t\t\tcolor: \"\",\n\t\t\t\tfontStyle: 0\n\t\t\t}]);\n\t\t\tcontinue;\n\t\t}\n\t\tlet resultWithScopes;\n\t\tlet tokensWithScopes;\n\t\tlet tokensWithScopesIndex;\n\t\tif (options.includeExplanation) {\n\t\t\tresultWithScopes = grammar.tokenizeLine(line, stateStack, tokenizeTimeLimit);\n\t\t\ttokensWithScopes = resultWithScopes.tokens;\n\t\t\ttokensWithScopesIndex = 0;\n\t\t}\n\t\tconst result = grammar.tokenizeLine2(line, stateStack, tokenizeTimeLimit);\n\t\tconst tokensLength = result.tokens.length / 2;\n\t\tfor (let j = 0; j < tokensLength; j++) {\n\t\t\tconst startIndex = result.tokens[2 * j];\n\t\t\tconst nextStartIndex = j + 1 < tokensLength ? result.tokens[2 * j + 2] : line.length;\n\t\t\tif (startIndex === nextStartIndex) continue;\n\t\t\tconst metadata = result.tokens[2 * j + 1];\n\t\t\tconst color = applyColorReplacements(colorMap[EncodedTokenMetadata.getForeground(metadata)], colorReplacements);\n\t\t\tconst fontStyle = EncodedTokenMetadata.getFontStyle(metadata);\n\t\t\tconst token = {\n\t\t\t\tcontent: line.substring(startIndex, nextStartIndex),\n\t\t\t\toffset: lineOffset + startIndex,\n\t\t\t\tcolor,\n\t\t\t\tfontStyle\n\t\t\t};\n\t\t\tif (options.includeExplanation) {\n\t\t\t\tconst themeSettingsSelectors = [];\n\t\t\t\tif (options.includeExplanation !== \"scopeName\") for (const setting of theme.settings) {\n\t\t\t\t\tlet selectors;\n\t\t\t\t\tswitch (typeof setting.scope) {\n\t\t\t\t\t\tcase \"string\":\n\t\t\t\t\t\t\tselectors = setting.scope.split(RE_COMMA).map((scope) => scope.trim());\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"object\":\n\t\t\t\t\t\t\tselectors = setting.scope;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault: continue;\n\t\t\t\t\t}\n\t\t\t\t\tthemeSettingsSelectors.push({\n\t\t\t\t\t\tsettings: setting,\n\t\t\t\t\t\tselectors: selectors.map((selector) => selector.split(RE_SPACE))\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\ttoken.explanation = [];\n\t\t\t\tlet offset = 0;\n\t\t\t\twhile (startIndex + offset < nextStartIndex) {\n\t\t\t\t\tconst tokenWithScopes = tokensWithScopes[tokensWithScopesIndex];\n\t\t\t\t\tconst tokenWithScopesText = line.substring(tokenWithScopes.startIndex, tokenWithScopes.endIndex);\n\t\t\t\t\toffset += tokenWithScopesText.length;\n\t\t\t\t\ttoken.explanation.push({\n\t\t\t\t\t\tcontent: tokenWithScopesText,\n\t\t\t\t\t\tscopes: options.includeExplanation === \"scopeName\" ? explainThemeScopesNameOnly(tokenWithScopes.scopes) : explainThemeScopesFull(themeSettingsSelectors, tokenWithScopes.scopes)\n\t\t\t\t\t});\n\t\t\t\t\ttokensWithScopesIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\tactual.push(token);\n\t\t}\n\t\tfinal.push(actual);\n\t\tactual = [];\n\t\tstateStack = result.ruleStack;\n\t}\n\treturn {\n\t\ttokens: final,\n\t\tstateStack\n\t};\n}\nfunction explainThemeScopesNameOnly(scopes) {\n\treturn scopes.map((scope) => ({ scopeName: scope }));\n}\nfunction explainThemeScopesFull(themeSelectors, scopes) {\n\tconst result = [];\n\tfor (let i = 0, len = scopes.length; i < len; i++) {\n\t\tconst scope = scopes[i];\n\t\tresult[i] = {\n\t\t\tscopeName: scope,\n\t\t\tthemeMatches: explainThemeScope(themeSelectors, scope, scopes.slice(0, i))\n\t\t};\n\t}\n\treturn result;\n}\nfunction matchesOne(selector, scope) {\n\treturn selector === scope || scope.substring(0, selector.length) === selector && scope[selector.length] === \".\";\n}\nfunction matches(selectors, scope, parentScopes) {\n\tif (!matchesOne(selectors.at(-1), scope)) return false;\n\tlet selectorParentIndex = selectors.length - 2;\n\tlet parentIndex = parentScopes.length - 1;\n\twhile (selectorParentIndex >= 0 && parentIndex >= 0) {\n\t\tif (matchesOne(selectors[selectorParentIndex], parentScopes[parentIndex])) selectorParentIndex -= 1;\n\t\tparentIndex -= 1;\n\t}\n\tif (selectorParentIndex === -1) return true;\n\treturn false;\n}\nfunction explainThemeScope(themeSettingsSelectors, scope, parentScopes) {\n\tconst result = [];\n\tfor (const { selectors, settings } of themeSettingsSelectors) for (const selectorPieces of selectors) if (matches(selectorPieces, scope, parentScopes)) {\n\t\tresult.push(settings);\n\t\tbreak;\n\t}\n\treturn result;\n}\n//#endregion\n//#region src/highlight/code-to-tokens-themes.ts\n/**\n* Get tokens with multiple themes\n*/\nfunction codeToTokensWithThemes(primitive, code, options, codeToTokensBaseFn = codeToTokensBase) {\n\tconst themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({\n\t\tcolor: i[0],\n\t\ttheme: i[1]\n\t}));\n\tconst themedTokens = themes.map((t) => {\n\t\tconst tokens = codeToTokensBaseFn(primitive, code, {\n\t\t\t...options,\n\t\t\ttheme: t.theme\n\t\t});\n\t\treturn {\n\t\t\ttokens,\n\t\t\tstate: getLastGrammarStateFromMap(tokens),\n\t\t\ttheme: typeof t.theme === \"string\" ? t.theme : t.theme.name\n\t\t};\n\t});\n\tconst tokens = alignThemesTokenization(...themedTokens.map((i) => i.tokens));\n\tconst mergedTokens = tokens[0].map((line, lineIdx) => line.map((_token, tokenIdx) => {\n\t\tconst mergedToken = {\n\t\t\tcontent: _token.content,\n\t\t\tvariants: {},\n\t\t\toffset: _token.offset\n\t\t};\n\t\tif (\"includeExplanation\" in options && options.includeExplanation) mergedToken.explanation = _token.explanation;\n\t\ttokens.forEach((t, themeIdx) => {\n\t\t\tconst { content: _, explanation: __, offset: ___, ...styles } = t[lineIdx][tokenIdx];\n\t\t\tmergedToken.variants[themes[themeIdx].color] = styles;\n\t\t});\n\t\treturn mergedToken;\n\t}));\n\tconst mergedGrammarState = themedTokens[0].state ? new GrammarState(Object.fromEntries(themedTokens.map((s) => [s.theme, s.state?.getInternalStack(s.theme)])), themedTokens[0].state.lang) : void 0;\n\tif (mergedGrammarState) setLastGrammarStateToMap(mergedTokens, mergedGrammarState);\n\treturn mergedTokens;\n}\n/**\n* Break tokens from multiple themes into same tokenization.\n*\n* For example, given two themes that tokenize `console.log(\"hello\")` as:\n*\n* - `console . log (\" hello \")` (6 tokens)\n* - `console .log ( \"hello\" )` (5 tokens)\n*\n* This function will return:\n*\n* - `console . log ( \" hello \" )` (8 tokens)\n* - `console . log ( \" hello \" )` (8 tokens)\n*/\nfunction alignThemesTokenization(...themes) {\n\tconst outThemes = themes.map(() => []);\n\tconst count = themes.length;\n\tfor (let i = 0; i < themes[0].length; i++) {\n\t\tconst lines = themes.map((t) => t[i]);\n\t\tconst outLines = outThemes.map(() => []);\n\t\toutThemes.forEach((t, i) => t.push(outLines[i]));\n\t\tconst indexes = lines.map(() => 0);\n\t\tconst current = lines.map((l) => l[0]);\n\t\twhile (current.every((t) => t)) {\n\t\t\tconst minLength = Math.min(...current.map((t) => t.content.length));\n\t\t\tfor (let n = 0; n < count; n++) {\n\t\t\t\tconst token = current[n];\n\t\t\t\tif (token.content.length === minLength) {\n\t\t\t\t\toutLines[n].push(token);\n\t\t\t\t\tindexes[n] += 1;\n\t\t\t\t\tcurrent[n] = lines[n][indexes[n]];\n\t\t\t\t} else {\n\t\t\t\t\toutLines[n].push({\n\t\t\t\t\t\t...token,\n\t\t\t\t\t\tcontent: token.content.slice(0, minLength)\n\t\t\t\t\t});\n\t\t\t\t\tcurrent[n] = {\n\t\t\t\t\t\t...token,\n\t\t\t\t\t\tcontent: token.content.slice(minLength),\n\t\t\t\t\t\toffset: token.offset + minLength\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn outThemes;\n}\n//#endregion\nexport { GrammarState, Registry, Resolver, alignThemesTokenization, applyColorReplacements, codeToTokensBase, codeToTokensWithThemes, createShikiInternal, createShikiInternalSync, createShikiPrimitive, createShikiPrimitiveAsync, getGrammarStack, getLastGrammarState, getLastGrammarStateFromMap, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, normalizeGetter, normalizeTheme, resolveColorReplacements, resolveLangAlias, resolveLangs, resolveThemes, setLastGrammarStateToMap, splitLines, toArray, tokenizeWithTheme };\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
package/lib/esm/node_modules/@shikijs/primitive/node_modules/@shikijs/types/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../../../../../../node_modules/@shikijs/primitive/node_modules/@shikijs/types/dist/index.mjs"],"sourcesContent":["//#region src/error.ts\nvar ShikiError = class extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = \"ShikiError\";\n\t}\n};\n
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../../../../../../../node_modules/@shikijs/primitive/node_modules/@shikijs/types/dist/index.mjs"],"sourcesContent":["//#region src/error.ts\nvar ShikiError = class extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = \"ShikiError\";\n\t}\n};\n//#endregion\nexport { ShikiError };\n"],"x_google_ignoreList":[0],"mappings":";AACA,IAAI,IAAa,cAAc,MAAM;CACpC,YAAY,GAAS;EAEpB,AADA,MAAM,CAAO,GACb,KAAK,OAAO;CACb;AACD"}
|