@atme-lab/ui-kit 0.1.23 → 0.1.24

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.
Files changed (245) hide show
  1. package/dist/components/primitives/Term/Term.d.ts +1 -2
  2. package/dist/index.cjs10.js +1 -1
  3. package/dist/index.cjs11.js +1 -1
  4. package/dist/index.cjs12.js +1 -1
  5. package/dist/index.cjs13.js +1 -1
  6. package/dist/index.cjs14.js +1 -1
  7. package/dist/index.cjs15.js +1 -1
  8. package/dist/index.cjs16.js +1 -1
  9. package/dist/index.cjs18.js +1 -1
  10. package/dist/index.cjs19.js +1 -1
  11. package/dist/index.cjs20.js +1 -1
  12. package/dist/index.cjs21.js +1 -1
  13. package/dist/index.cjs22.js +1 -1
  14. package/dist/index.cjs23.js +1 -1
  15. package/dist/index.cjs24.js +1 -1
  16. package/dist/index.cjs24.js.map +1 -1
  17. package/dist/index.cjs25.js +1 -1
  18. package/dist/index.cjs27.js +1 -1
  19. package/dist/index.cjs28.js +1 -1
  20. package/dist/index.cjs29.js +1 -1
  21. package/dist/index.cjs30.js +1 -1
  22. package/dist/index.cjs31.js +1 -1
  23. package/dist/index.cjs387.js +1 -1
  24. package/dist/index.cjs41.js +1 -1
  25. package/dist/index.cjs413.js +1 -1
  26. package/dist/index.cjs414.js +1 -1
  27. package/dist/index.cjs415.js +1 -1
  28. package/dist/index.cjs416.js +1 -1
  29. package/dist/index.cjs42.js +1 -1
  30. package/dist/index.cjs430.js +1 -1
  31. package/dist/index.cjs432.js +1 -1
  32. package/dist/index.cjs435.js +1 -1
  33. package/dist/index.cjs44.js +1 -1
  34. package/dist/index.cjs445.js +6 -1
  35. package/dist/index.cjs445.js.map +1 -1
  36. package/dist/index.cjs446.js +6 -1
  37. package/dist/index.cjs446.js.map +1 -1
  38. package/dist/index.cjs447.js +6 -1
  39. package/dist/index.cjs447.js.map +1 -1
  40. package/dist/index.cjs448.js +6 -1
  41. package/dist/index.cjs448.js.map +1 -1
  42. package/dist/index.cjs449.js +1 -1
  43. package/dist/index.cjs449.js.map +1 -1
  44. package/dist/index.cjs45.js +1 -1
  45. package/dist/index.cjs450.js +1 -1
  46. package/dist/index.cjs450.js.map +1 -1
  47. package/dist/index.cjs451.js +1 -6
  48. package/dist/index.cjs451.js.map +1 -1
  49. package/dist/index.cjs452.js +1 -6
  50. package/dist/index.cjs452.js.map +1 -1
  51. package/dist/index.cjs453.js +1 -6
  52. package/dist/index.cjs453.js.map +1 -1
  53. package/dist/index.cjs454.js +1 -6
  54. package/dist/index.cjs454.js.map +1 -1
  55. package/dist/index.cjs46.js +1 -1
  56. package/dist/index.cjs46.js.map +1 -1
  57. package/dist/index.cjs47.js +1 -1
  58. package/dist/index.cjs48.js +1 -1
  59. package/dist/index.cjs49.js +1 -1
  60. package/dist/index.cjs50.js +1 -1
  61. package/dist/index.cjs51.js +1 -1
  62. package/dist/index.cjs51.js.map +1 -1
  63. package/dist/index.cjs52.js +1 -1
  64. package/dist/index.cjs53.js +1 -1
  65. package/dist/index.cjs54.js +1 -1
  66. package/dist/index.cjs54.js.map +1 -1
  67. package/dist/index.cjs55.js +1 -1
  68. package/dist/index.cjs56.js +1 -1
  69. package/dist/index.cjs56.js.map +1 -1
  70. package/dist/index.cjs57.js +1 -1
  71. package/dist/index.cjs57.js.map +1 -1
  72. package/dist/index.cjs58.js +1 -1
  73. package/dist/index.cjs59.js +1 -1
  74. package/dist/index.cjs59.js.map +1 -1
  75. package/dist/index.cjs60.js +1 -1
  76. package/dist/index.cjs61.js +1 -1
  77. package/dist/index.cjs61.js.map +1 -1
  78. package/dist/index.cjs62.js +1 -1
  79. package/dist/index.cjs62.js.map +1 -1
  80. package/dist/index.cjs63.js +1 -1
  81. package/dist/index.cjs64.js +1 -1
  82. package/dist/index.cjs64.js.map +1 -1
  83. package/dist/index.cjs65.js +1 -1
  84. package/dist/index.cjs65.js.map +1 -1
  85. package/dist/index.cjs66.js +1 -1
  86. package/dist/index.cjs66.js.map +1 -1
  87. package/dist/index.cjs67.js +1 -1
  88. package/dist/index.cjs67.js.map +1 -1
  89. package/dist/index.cjs69.js +1 -1
  90. package/dist/index.cjs70.js +1 -1
  91. package/dist/index.cjs71.js +1 -1
  92. package/dist/index.cjs72.js +1 -1
  93. package/dist/index.cjs74.js +1 -1
  94. package/dist/index.cjs75.js +1 -1
  95. package/dist/index.cjs76.js +1 -1
  96. package/dist/index.cjs76.js.map +1 -1
  97. package/dist/index.cjs77.js +1 -1
  98. package/dist/index.cjs77.js.map +1 -1
  99. package/dist/index.cjs80.js +1 -1
  100. package/dist/index.cjs80.js.map +1 -1
  101. package/dist/index.cjs81.js +1 -1
  102. package/dist/index.cjs81.js.map +1 -1
  103. package/dist/index.cjs82.js +1 -2
  104. package/dist/index.cjs82.js.map +1 -1
  105. package/dist/index.cjs83.js +2 -1
  106. package/dist/index.cjs83.js.map +1 -1
  107. package/dist/index.cjs84.js +1 -1
  108. package/dist/index.cjs84.js.map +1 -1
  109. package/dist/index.cjs85.js +1 -1
  110. package/dist/index.cjs85.js.map +1 -1
  111. package/dist/index.cjs86.js +1 -1
  112. package/dist/index.cjs86.js.map +1 -1
  113. package/dist/index.cjs9.js +1 -1
  114. package/dist/index.esm10.js +2 -2
  115. package/dist/index.esm11.js +1 -1
  116. package/dist/index.esm12.js +3 -3
  117. package/dist/index.esm13.js +1 -1
  118. package/dist/index.esm14.js +1 -1
  119. package/dist/index.esm15.js +1 -1
  120. package/dist/index.esm16.js +1 -1
  121. package/dist/index.esm18.js +1 -1
  122. package/dist/index.esm19.js +1 -1
  123. package/dist/index.esm20.js +1 -1
  124. package/dist/index.esm21.js +2 -2
  125. package/dist/index.esm22.js +2 -2
  126. package/dist/index.esm23.js +1 -1
  127. package/dist/index.esm24.js +8 -69
  128. package/dist/index.esm24.js.map +1 -1
  129. package/dist/index.esm25.js +2 -2
  130. package/dist/index.esm27.js +1 -1
  131. package/dist/index.esm28.js +1 -1
  132. package/dist/index.esm29.js +2 -2
  133. package/dist/index.esm30.js +1 -1
  134. package/dist/index.esm31.js +3 -3
  135. package/dist/index.esm387.js +1 -1
  136. package/dist/index.esm41.js +1 -1
  137. package/dist/index.esm413.js +1 -1
  138. package/dist/index.esm414.js +1 -1
  139. package/dist/index.esm415.js +1 -1
  140. package/dist/index.esm416.js +1 -1
  141. package/dist/index.esm42.js +1 -1
  142. package/dist/index.esm430.js +1 -1
  143. package/dist/index.esm432.js +6 -6
  144. package/dist/index.esm435.js +1 -1
  145. package/dist/index.esm44.js +32 -40
  146. package/dist/index.esm44.js.map +1 -1
  147. package/dist/index.esm445.js +21 -6
  148. package/dist/index.esm445.js.map +1 -1
  149. package/dist/index.esm446.js +9 -10
  150. package/dist/index.esm446.js.map +1 -1
  151. package/dist/index.esm447.js +38 -7
  152. package/dist/index.esm447.js.map +1 -1
  153. package/dist/index.esm448.js +18 -4
  154. package/dist/index.esm448.js.map +1 -1
  155. package/dist/index.esm449.js +5 -84
  156. package/dist/index.esm449.js.map +1 -1
  157. package/dist/index.esm45.js +11 -47
  158. package/dist/index.esm450.js +9 -37
  159. package/dist/index.esm450.js.map +1 -1
  160. package/dist/index.esm451.js +7 -21
  161. package/dist/index.esm451.js.map +1 -1
  162. package/dist/index.esm452.js +4 -9
  163. package/dist/index.esm452.js.map +1 -1
  164. package/dist/index.esm453.js +85 -38
  165. package/dist/index.esm453.js.map +1 -1
  166. package/dist/index.esm454.js +38 -18
  167. package/dist/index.esm454.js.map +1 -1
  168. package/dist/index.esm46.js +30 -11
  169. package/dist/index.esm46.js.map +1 -1
  170. package/dist/index.esm47.js +27 -40
  171. package/dist/index.esm47.js.map +1 -1
  172. package/dist/index.esm48.js +5 -4
  173. package/dist/index.esm48.js.map +1 -1
  174. package/dist/index.esm49.js +2 -6
  175. package/dist/index.esm49.js.map +1 -1
  176. package/dist/index.esm50.js +2 -9
  177. package/dist/index.esm50.js.map +1 -1
  178. package/dist/index.esm51.js +65 -28
  179. package/dist/index.esm51.js.map +1 -1
  180. package/dist/index.esm52.js +29 -2
  181. package/dist/index.esm52.js.map +1 -1
  182. package/dist/index.esm53.js +9 -2
  183. package/dist/index.esm53.js.map +1 -1
  184. package/dist/index.esm54.js +5 -88
  185. package/dist/index.esm54.js.map +1 -1
  186. package/dist/index.esm55.js +47 -35
  187. package/dist/index.esm55.js.map +1 -1
  188. package/dist/index.esm56.js +11 -127
  189. package/dist/index.esm56.js.map +1 -1
  190. package/dist/index.esm57.js +88 -29
  191. package/dist/index.esm57.js.map +1 -1
  192. package/dist/index.esm58.js +34 -64
  193. package/dist/index.esm58.js.map +1 -1
  194. package/dist/index.esm59.js +127 -41
  195. package/dist/index.esm59.js.map +1 -1
  196. package/dist/index.esm60.js +8 -10
  197. package/dist/index.esm60.js.map +1 -1
  198. package/dist/index.esm61.js +28 -17
  199. package/dist/index.esm61.js.map +1 -1
  200. package/dist/index.esm62.js +41 -16
  201. package/dist/index.esm62.js.map +1 -1
  202. package/dist/index.esm63.js +6 -15
  203. package/dist/index.esm63.js.map +1 -1
  204. package/dist/index.esm64.js +8 -96
  205. package/dist/index.esm64.js.map +1 -1
  206. package/dist/index.esm65.js +7 -7
  207. package/dist/index.esm65.js.map +1 -1
  208. package/dist/index.esm66.js +16 -9
  209. package/dist/index.esm66.js.map +1 -1
  210. package/dist/index.esm67.js +97 -7
  211. package/dist/index.esm67.js.map +1 -1
  212. package/dist/index.esm69.js +42 -39
  213. package/dist/index.esm69.js.map +1 -1
  214. package/dist/index.esm70.js +40 -32
  215. package/dist/index.esm70.js.map +1 -1
  216. package/dist/index.esm71.js +36 -8
  217. package/dist/index.esm71.js.map +1 -1
  218. package/dist/index.esm72.js +39 -32
  219. package/dist/index.esm72.js.map +1 -1
  220. package/dist/index.esm74.js +6 -36
  221. package/dist/index.esm74.js.map +1 -1
  222. package/dist/index.esm75.js +8 -10
  223. package/dist/index.esm75.js.map +1 -1
  224. package/dist/index.esm76.js +17 -30
  225. package/dist/index.esm76.js.map +1 -1
  226. package/dist/index.esm77.js +16 -9
  227. package/dist/index.esm77.js.map +1 -1
  228. package/dist/index.esm80.js +4 -55
  229. package/dist/index.esm80.js.map +1 -1
  230. package/dist/index.esm81.js +55 -257
  231. package/dist/index.esm81.js.map +1 -1
  232. package/dist/index.esm82.js +208 -1637
  233. package/dist/index.esm82.js.map +1 -1
  234. package/dist/index.esm83.js +1685 -1413
  235. package/dist/index.esm83.js.map +1 -1
  236. package/dist/index.esm84.js +1286 -260
  237. package/dist/index.esm84.js.map +1 -1
  238. package/dist/index.esm85.js +387 -5
  239. package/dist/index.esm85.js.map +1 -1
  240. package/dist/index.esm86.js +5 -3
  241. package/dist/index.esm86.js.map +1 -1
  242. package/dist/index.esm9.js +1 -1
  243. package/dist/styles.css +1 -1
  244. package/dist/ui-kit.css +1 -1
  245. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs82.js","sources":["../node_modules/.pnpm/@shikijs+core@3.22.0/node_modules/@shikijs/core/dist/index.mjs"],"sourcesContent":["import { ShikiError as ShikiError$1 } from '@shikijs/types';\nexport * from '@shikijs/types';\nimport { FontStyle, INITIAL, EncodedTokenMetadata, Registry as Registry$1, Theme } from '@shikijs/vscode-textmate';\nimport { toHtml } from 'hast-util-to-html';\n\nfunction resolveColorReplacements(theme, options) {\n const replacements = typeof theme === \"string\" ? {} : { ...theme.colorReplacements };\n const themeName = typeof theme === \"string\" ? theme : theme.name;\n for (const [key, value] of Object.entries(options?.colorReplacements || {})) {\n if (typeof value === \"string\")\n replacements[key] = value;\n else if (key === themeName)\n Object.assign(replacements, value);\n }\n return replacements;\n}\nfunction applyColorReplacements(color, replacements) {\n if (!color)\n return color;\n return replacements?.[color?.toLowerCase()] || color;\n}\n\nfunction toArray(x) {\n return Array.isArray(x) ? x : [x];\n}\nasync function normalizeGetter(p) {\n return Promise.resolve(typeof p === \"function\" ? p() : p).then((r) => r.default || r);\n}\nfunction isPlainLang(lang) {\n return !lang || [\"plaintext\", \"txt\", \"text\", \"plain\"].includes(lang);\n}\nfunction isSpecialLang(lang) {\n return lang === \"ansi\" || isPlainLang(lang);\n}\nfunction isNoneTheme(theme) {\n return theme === \"none\";\n}\nfunction isSpecialTheme(theme) {\n return isNoneTheme(theme);\n}\n\nfunction addClassToHast(node, className) {\n if (!className)\n return node;\n node.properties ||= {};\n node.properties.class ||= [];\n if (typeof node.properties.class === \"string\")\n node.properties.class = node.properties.class.split(/\\s+/g);\n if (!Array.isArray(node.properties.class))\n node.properties.class = [];\n const targets = Array.isArray(className) ? className : className.split(/\\s+/g);\n for (const c of targets) {\n if (c && !node.properties.class.includes(c))\n node.properties.class.push(c);\n }\n return node;\n}\n\nfunction splitLines(code, preserveEnding = false) {\n if (code.length === 0) {\n return [[\"\", 0]];\n }\n const parts = code.split(/(\\r?\\n)/g);\n let index = 0;\n const lines = [];\n for (let i = 0; i < parts.length; i += 2) {\n const line = preserveEnding ? parts[i] + (parts[i + 1] || \"\") : parts[i];\n lines.push([line, index]);\n index += parts[i].length;\n index += parts[i + 1]?.length || 0;\n }\n return lines;\n}\nfunction createPositionConverter(code) {\n const lines = splitLines(code, true).map(([line]) => line);\n function indexToPos(index) {\n if (index === code.length) {\n return {\n line: lines.length - 1,\n character: lines[lines.length - 1].length\n };\n }\n let character = index;\n let line = 0;\n for (const lineText of lines) {\n if (character < lineText.length)\n break;\n character -= lineText.length;\n line++;\n }\n return { line, character };\n }\n function posToIndex(line, character) {\n let index = 0;\n for (let i = 0; i < line; i++)\n index += lines[i].length;\n index += character;\n return index;\n }\n return {\n lines,\n indexToPos,\n posToIndex\n };\n}\nfunction guessEmbeddedLanguages(code, _lang, highlighter) {\n const langs = /* @__PURE__ */ new Set();\n for (const match of code.matchAll(/:?lang=[\"']([^\"']+)[\"']/g)) {\n const lang = match[1].toLowerCase().trim();\n if (lang)\n langs.add(lang);\n }\n for (const match of code.matchAll(/(?:```|~~~)([\\w-]+)/g)) {\n const lang = match[1].toLowerCase().trim();\n if (lang)\n langs.add(lang);\n }\n for (const match of code.matchAll(/\\\\begin\\{([\\w-]+)\\}/g)) {\n const lang = match[1].toLowerCase().trim();\n if (lang)\n langs.add(lang);\n }\n for (const match of code.matchAll(/<script\\s+(?:type|lang)=[\"']([^\"']+)[\"']/gi)) {\n const fullType = match[1].toLowerCase().trim();\n const lang = fullType.includes(\"/\") ? fullType.split(\"/\").pop() : fullType;\n if (lang)\n langs.add(lang);\n }\n if (!highlighter)\n return Array.from(langs);\n const bundle = highlighter.getBundledLanguages();\n return Array.from(langs).filter((l) => l && bundle[l]);\n}\n\nconst DEFAULT_COLOR_LIGHT_DARK = \"light-dark()\";\nconst COLOR_KEYS = [\"color\", \"background-color\"];\n\nfunction splitToken(token, offsets) {\n let lastOffset = 0;\n const tokens = [];\n for (const offset of offsets) {\n if (offset > lastOffset) {\n tokens.push({\n ...token,\n content: token.content.slice(lastOffset, offset),\n offset: token.offset + lastOffset\n });\n }\n lastOffset = offset;\n }\n if (lastOffset < token.content.length) {\n tokens.push({\n ...token,\n content: token.content.slice(lastOffset),\n offset: token.offset + lastOffset\n });\n }\n return tokens;\n}\nfunction splitTokens(tokens, breakpoints) {\n const sorted = Array.from(breakpoints instanceof Set ? breakpoints : new Set(breakpoints)).sort((a, b) => a - b);\n if (!sorted.length)\n return tokens;\n return tokens.map((line) => {\n return line.flatMap((token) => {\n const breakpointsInToken = sorted.filter((i) => token.offset < i && i < token.offset + token.content.length).map((i) => i - token.offset).sort((a, b) => a - b);\n if (!breakpointsInToken.length)\n return token;\n return splitToken(token, breakpointsInToken);\n });\n });\n}\nfunction flatTokenVariants(merged, variantsOrder, cssVariablePrefix, defaultColor, colorsRendering = \"css-vars\") {\n const token = {\n content: merged.content,\n explanation: merged.explanation,\n offset: merged.offset\n };\n const styles = variantsOrder.map((t) => getTokenStyleObject(merged.variants[t]));\n const styleKeys = new Set(styles.flatMap((t) => Object.keys(t)));\n const mergedStyles = {};\n const varKey = (idx, key) => {\n const keyName = key === \"color\" ? \"\" : key === \"background-color\" ? \"-bg\" : `-${key}`;\n return cssVariablePrefix + variantsOrder[idx] + (key === \"color\" ? \"\" : keyName);\n };\n styles.forEach((cur, idx) => {\n for (const key of styleKeys) {\n const value = cur[key] || \"inherit\";\n if (idx === 0 && defaultColor && COLOR_KEYS.includes(key)) {\n if (defaultColor === DEFAULT_COLOR_LIGHT_DARK && styles.length > 1) {\n const lightIndex = variantsOrder.findIndex((t) => t === \"light\");\n const darkIndex = variantsOrder.findIndex((t) => t === \"dark\");\n if (lightIndex === -1 || darkIndex === -1)\n throw new ShikiError$1('When using `defaultColor: \"light-dark()\"`, you must provide both `light` and `dark` themes');\n const lightValue = styles[lightIndex][key] || \"inherit\";\n const darkValue = styles[darkIndex][key] || \"inherit\";\n mergedStyles[key] = `light-dark(${lightValue}, ${darkValue})`;\n if (colorsRendering === \"css-vars\")\n mergedStyles[varKey(idx, key)] = value;\n } else {\n mergedStyles[key] = value;\n }\n } else {\n if (colorsRendering === \"css-vars\")\n mergedStyles[varKey(idx, key)] = value;\n }\n }\n });\n token.htmlStyle = mergedStyles;\n return token;\n}\nfunction getTokenStyleObject(token) {\n const styles = {};\n if (token.color)\n styles.color = token.color;\n if (token.bgColor)\n styles[\"background-color\"] = token.bgColor;\n if (token.fontStyle) {\n if (token.fontStyle & FontStyle.Italic)\n styles[\"font-style\"] = \"italic\";\n if (token.fontStyle & FontStyle.Bold)\n styles[\"font-weight\"] = \"bold\";\n const decorations = [];\n if (token.fontStyle & FontStyle.Underline)\n decorations.push(\"underline\");\n if (token.fontStyle & FontStyle.Strikethrough)\n decorations.push(\"line-through\");\n if (decorations.length)\n styles[\"text-decoration\"] = decorations.join(\" \");\n }\n return styles;\n}\nfunction stringifyTokenStyle(token) {\n if (typeof token === \"string\")\n return token;\n return Object.entries(token).map(([key, value]) => `${key}:${value}`).join(\";\");\n}\n\nconst _grammarStateMap = /* @__PURE__ */ new WeakMap();\nfunction setLastGrammarStateToMap(keys, state) {\n _grammarStateMap.set(keys, state);\n}\nfunction getLastGrammarStateFromMap(keys) {\n return _grammarStateMap.get(keys);\n}\nclass GrammarState {\n /**\n * Theme to Stack mapping\n */\n _stacks = {};\n lang;\n get themes() {\n return Object.keys(this._stacks);\n }\n get theme() {\n return this.themes[0];\n }\n get _stack() {\n return this._stacks[this.theme];\n }\n /**\n * Static method to create a initial grammar state.\n */\n static initial(lang, themes) {\n return new GrammarState(\n Object.fromEntries(toArray(themes).map((theme) => [theme, INITIAL])),\n lang\n );\n }\n constructor(...args) {\n if (args.length === 2) {\n const [stacksMap, lang] = args;\n this.lang = lang;\n this._stacks = stacksMap;\n } else {\n const [stack, lang, theme] = args;\n this.lang = lang;\n this._stacks = { [theme]: stack };\n }\n }\n /**\n * Get the internal stack object.\n * @internal\n */\n getInternalStack(theme = this.theme) {\n return this._stacks[theme];\n }\n getScopes(theme = this.theme) {\n return getScopes(this._stacks[theme]);\n }\n toJSON() {\n return {\n lang: this.lang,\n theme: this.theme,\n themes: this.themes,\n scopes: this.getScopes()\n };\n }\n}\nfunction getScopes(stack) {\n const scopes = [];\n const visited = /* @__PURE__ */ new Set();\n function pushScope(stack2) {\n if (visited.has(stack2))\n return;\n visited.add(stack2);\n const name = stack2?.nameScopesList?.scopeName;\n if (name)\n scopes.push(name);\n if (stack2.parent)\n pushScope(stack2.parent);\n }\n pushScope(stack);\n return scopes;\n}\nfunction getGrammarStack(state, theme) {\n if (!(state instanceof GrammarState))\n throw new ShikiError$1(\"Invalid grammar state\");\n return state.getInternalStack(theme);\n}\n\nfunction transformerDecorations() {\n const map = /* @__PURE__ */ new WeakMap();\n function getContext(shiki) {\n if (!map.has(shiki.meta)) {\n let normalizePosition = function(p) {\n if (typeof p === \"number\") {\n if (p < 0 || p > shiki.source.length)\n throw new ShikiError$1(`Invalid decoration offset: ${p}. Code length: ${shiki.source.length}`);\n return {\n ...converter.indexToPos(p),\n offset: p\n };\n } else {\n const line = converter.lines[p.line];\n if (line === void 0)\n throw new ShikiError$1(`Invalid decoration position ${JSON.stringify(p)}. Lines length: ${converter.lines.length}`);\n let character = p.character;\n if (character < 0)\n character = line.length + character;\n if (character < 0 || character > line.length)\n throw new ShikiError$1(`Invalid decoration position ${JSON.stringify(p)}. Line ${p.line} length: ${line.length}`);\n return {\n ...p,\n character,\n offset: converter.posToIndex(p.line, character)\n };\n }\n };\n const converter = createPositionConverter(shiki.source);\n const decorations = (shiki.options.decorations || []).map((d) => ({\n ...d,\n start: normalizePosition(d.start),\n end: normalizePosition(d.end)\n }));\n verifyIntersections(decorations);\n map.set(shiki.meta, {\n decorations,\n converter,\n source: shiki.source\n });\n }\n return map.get(shiki.meta);\n }\n return {\n name: \"shiki:decorations\",\n tokens(tokens) {\n if (!this.options.decorations?.length)\n return;\n const ctx = getContext(this);\n const breakpoints = ctx.decorations.flatMap((d) => [d.start.offset, d.end.offset]);\n const splitted = splitTokens(tokens, breakpoints);\n return splitted;\n },\n code(codeEl) {\n if (!this.options.decorations?.length)\n return;\n const ctx = getContext(this);\n const lines = Array.from(codeEl.children).filter((i) => i.type === \"element\" && i.tagName === \"span\");\n if (lines.length !== ctx.converter.lines.length)\n throw new ShikiError$1(`Number of lines in code element (${lines.length}) does not match the number of lines in the source (${ctx.converter.lines.length}). Failed to apply decorations.`);\n function applyLineSection(line, start, end, decoration) {\n const lineEl = lines[line];\n let text = \"\";\n let startIndex = -1;\n let endIndex = -1;\n if (start === 0)\n startIndex = 0;\n if (end === 0)\n endIndex = 0;\n if (end === Number.POSITIVE_INFINITY)\n endIndex = lineEl.children.length;\n if (startIndex === -1 || endIndex === -1) {\n for (let i = 0; i < lineEl.children.length; i++) {\n text += stringify(lineEl.children[i]);\n if (startIndex === -1 && text.length === start)\n startIndex = i + 1;\n if (endIndex === -1 && text.length === end)\n endIndex = i + 1;\n }\n }\n if (startIndex === -1)\n throw new ShikiError$1(`Failed to find start index for decoration ${JSON.stringify(decoration.start)}`);\n if (endIndex === -1)\n throw new ShikiError$1(`Failed to find end index for decoration ${JSON.stringify(decoration.end)}`);\n const children = lineEl.children.slice(startIndex, endIndex);\n if (!decoration.alwaysWrap && children.length === lineEl.children.length) {\n applyDecoration(lineEl, decoration, \"line\");\n } else if (!decoration.alwaysWrap && children.length === 1 && children[0].type === \"element\") {\n applyDecoration(children[0], decoration, \"token\");\n } else {\n const wrapper = {\n type: \"element\",\n tagName: \"span\",\n properties: {},\n children\n };\n applyDecoration(wrapper, decoration, \"wrapper\");\n lineEl.children.splice(startIndex, children.length, wrapper);\n }\n }\n function applyLine(line, decoration) {\n lines[line] = applyDecoration(lines[line], decoration, \"line\");\n }\n function applyDecoration(el, decoration, type) {\n const properties = decoration.properties || {};\n const transform = decoration.transform || ((i) => i);\n el.tagName = decoration.tagName || \"span\";\n el.properties = {\n ...el.properties,\n ...properties,\n class: el.properties.class\n };\n if (decoration.properties?.class)\n addClassToHast(el, decoration.properties.class);\n el = transform(el, type) || el;\n return el;\n }\n const lineApplies = [];\n const sorted = ctx.decorations.sort((a, b) => b.start.offset - a.start.offset || a.end.offset - b.end.offset);\n for (const decoration of sorted) {\n const { start, end } = decoration;\n if (start.line === end.line) {\n applyLineSection(start.line, start.character, end.character, decoration);\n } else if (start.line < end.line) {\n applyLineSection(start.line, start.character, Number.POSITIVE_INFINITY, decoration);\n for (let i = start.line + 1; i < end.line; i++)\n lineApplies.unshift(() => applyLine(i, decoration));\n applyLineSection(end.line, 0, end.character, decoration);\n }\n }\n lineApplies.forEach((i) => i());\n }\n };\n}\nfunction verifyIntersections(items) {\n for (let i = 0; i < items.length; i++) {\n const foo = items[i];\n if (foo.start.offset > foo.end.offset)\n throw new ShikiError$1(`Invalid decoration range: ${JSON.stringify(foo.start)} - ${JSON.stringify(foo.end)}`);\n for (let j = i + 1; j < items.length; j++) {\n const bar = items[j];\n const isFooHasBarStart = foo.start.offset <= bar.start.offset && bar.start.offset < foo.end.offset;\n const isFooHasBarEnd = foo.start.offset < bar.end.offset && bar.end.offset <= foo.end.offset;\n const isBarHasFooStart = bar.start.offset <= foo.start.offset && foo.start.offset < bar.end.offset;\n const isBarHasFooEnd = bar.start.offset < foo.end.offset && foo.end.offset <= bar.end.offset;\n if (isFooHasBarStart || isFooHasBarEnd || isBarHasFooStart || isBarHasFooEnd) {\n if (isFooHasBarStart && isFooHasBarEnd)\n continue;\n if (isBarHasFooStart && isBarHasFooEnd)\n continue;\n if (isBarHasFooStart && foo.start.offset === foo.end.offset)\n continue;\n if (isFooHasBarEnd && bar.start.offset === bar.end.offset)\n continue;\n throw new ShikiError$1(`Decorations ${JSON.stringify(foo.start)} and ${JSON.stringify(bar.start)} intersect.`);\n }\n }\n }\n}\nfunction stringify(el) {\n if (el.type === \"text\")\n return el.value;\n if (el.type === \"element\")\n return el.children.map(stringify).join(\"\");\n return \"\";\n}\n\nconst builtInTransformers = [\n /* @__PURE__ */ transformerDecorations()\n];\nfunction getTransformers(options) {\n const transformers = sortTransformersByEnforcement(options.transformers || []);\n return [\n ...transformers.pre,\n ...transformers.normal,\n ...transformers.post,\n ...builtInTransformers\n ];\n}\nfunction sortTransformersByEnforcement(transformers) {\n const pre = [];\n const post = [];\n const normal = [];\n for (const transformer of transformers) {\n switch (transformer.enforce) {\n case \"pre\":\n pre.push(transformer);\n break;\n case \"post\":\n post.push(transformer);\n break;\n default:\n normal.push(transformer);\n }\n }\n return { pre, post, normal };\n}\n\n// src/colors.ts\nvar namedColors = [\n \"black\",\n \"red\",\n \"green\",\n \"yellow\",\n \"blue\",\n \"magenta\",\n \"cyan\",\n \"white\",\n \"brightBlack\",\n \"brightRed\",\n \"brightGreen\",\n \"brightYellow\",\n \"brightBlue\",\n \"brightMagenta\",\n \"brightCyan\",\n \"brightWhite\"\n];\n\n// src/decorations.ts\nvar decorations = {\n 1: \"bold\",\n 2: \"dim\",\n 3: \"italic\",\n 4: \"underline\",\n 7: \"reverse\",\n 8: \"hidden\",\n 9: \"strikethrough\"\n};\n\n// src/parser.ts\nfunction findSequence(value, position) {\n const nextEscape = value.indexOf(\"\\x1B\", position);\n if (nextEscape !== -1) {\n if (value[nextEscape + 1] === \"[\") {\n const nextClose = value.indexOf(\"m\", nextEscape);\n if (nextClose !== -1) {\n return {\n sequence: value.substring(nextEscape + 2, nextClose).split(\";\"),\n startPosition: nextEscape,\n position: nextClose + 1\n };\n }\n }\n }\n return {\n position: value.length\n };\n}\nfunction parseColor(sequence) {\n const colorMode = sequence.shift();\n if (colorMode === \"2\") {\n const rgb = sequence.splice(0, 3).map((x) => Number.parseInt(x));\n if (rgb.length !== 3 || rgb.some((x) => Number.isNaN(x)))\n return;\n return {\n type: \"rgb\",\n rgb\n };\n } else if (colorMode === \"5\") {\n const index = sequence.shift();\n if (index) {\n return { type: \"table\", index: Number(index) };\n }\n }\n}\nfunction parseSequence(sequence) {\n const commands = [];\n while (sequence.length > 0) {\n const code = sequence.shift();\n if (!code)\n continue;\n const codeInt = Number.parseInt(code);\n if (Number.isNaN(codeInt))\n continue;\n if (codeInt === 0) {\n commands.push({ type: \"resetAll\" });\n } else if (codeInt <= 9) {\n const decoration = decorations[codeInt];\n if (decoration) {\n commands.push({\n type: \"setDecoration\",\n value: decorations[codeInt]\n });\n }\n } else if (codeInt <= 29) {\n const decoration = decorations[codeInt - 20];\n if (decoration) {\n commands.push({\n type: \"resetDecoration\",\n value: decoration\n });\n if (decoration === \"dim\") {\n commands.push({\n type: \"resetDecoration\",\n value: \"bold\"\n });\n }\n }\n } else if (codeInt <= 37) {\n commands.push({\n type: \"setForegroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 30] }\n });\n } else if (codeInt === 38) {\n const color = parseColor(sequence);\n if (color) {\n commands.push({\n type: \"setForegroundColor\",\n value: color\n });\n }\n } else if (codeInt === 39) {\n commands.push({\n type: \"resetForegroundColor\"\n });\n } else if (codeInt <= 47) {\n commands.push({\n type: \"setBackgroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 40] }\n });\n } else if (codeInt === 48) {\n const color = parseColor(sequence);\n if (color) {\n commands.push({\n type: \"setBackgroundColor\",\n value: color\n });\n }\n } else if (codeInt === 49) {\n commands.push({\n type: \"resetBackgroundColor\"\n });\n } else if (codeInt === 53) {\n commands.push({\n type: \"setDecoration\",\n value: \"overline\"\n });\n } else if (codeInt === 55) {\n commands.push({\n type: \"resetDecoration\",\n value: \"overline\"\n });\n } else if (codeInt >= 90 && codeInt <= 97) {\n commands.push({\n type: \"setForegroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 90 + 8] }\n });\n } else if (codeInt >= 100 && codeInt <= 107) {\n commands.push({\n type: \"setBackgroundColor\",\n value: { type: \"named\", name: namedColors[codeInt - 100 + 8] }\n });\n }\n }\n return commands;\n}\nfunction createAnsiSequenceParser() {\n let foreground = null;\n let background = null;\n let decorations2 = /* @__PURE__ */ new Set();\n return {\n parse(value) {\n const tokens = [];\n let position = 0;\n do {\n const findResult = findSequence(value, position);\n const text = findResult.sequence ? value.substring(position, findResult.startPosition) : value.substring(position);\n if (text.length > 0) {\n tokens.push({\n value: text,\n foreground,\n background,\n decorations: new Set(decorations2)\n });\n }\n if (findResult.sequence) {\n const commands = parseSequence(findResult.sequence);\n for (const styleToken of commands) {\n if (styleToken.type === \"resetAll\") {\n foreground = null;\n background = null;\n decorations2.clear();\n } else if (styleToken.type === \"resetForegroundColor\") {\n foreground = null;\n } else if (styleToken.type === \"resetBackgroundColor\") {\n background = null;\n } else if (styleToken.type === \"resetDecoration\") {\n decorations2.delete(styleToken.value);\n }\n }\n for (const styleToken of commands) {\n if (styleToken.type === \"setForegroundColor\") {\n foreground = styleToken.value;\n } else if (styleToken.type === \"setBackgroundColor\") {\n background = styleToken.value;\n } else if (styleToken.type === \"setDecoration\") {\n decorations2.add(styleToken.value);\n }\n }\n }\n position = findResult.position;\n } while (position < value.length);\n return tokens;\n }\n };\n}\n\n// src/palette.ts\nvar defaultNamedColorsMap = {\n black: \"#000000\",\n red: \"#bb0000\",\n green: \"#00bb00\",\n yellow: \"#bbbb00\",\n blue: \"#0000bb\",\n magenta: \"#ff00ff\",\n cyan: \"#00bbbb\",\n white: \"#eeeeee\",\n brightBlack: \"#555555\",\n brightRed: \"#ff5555\",\n brightGreen: \"#00ff00\",\n brightYellow: \"#ffff55\",\n brightBlue: \"#5555ff\",\n brightMagenta: \"#ff55ff\",\n brightCyan: \"#55ffff\",\n brightWhite: \"#ffffff\"\n};\nfunction createColorPalette(namedColorsMap = defaultNamedColorsMap) {\n function namedColor(name) {\n return namedColorsMap[name];\n }\n function rgbColor(rgb) {\n return `#${rgb.map((x) => Math.max(0, Math.min(x, 255)).toString(16).padStart(2, \"0\")).join(\"\")}`;\n }\n let colorTable;\n function getColorTable() {\n if (colorTable) {\n return colorTable;\n }\n colorTable = [];\n for (let i = 0; i < namedColors.length; i++) {\n colorTable.push(namedColor(namedColors[i]));\n }\n let levels = [0, 95, 135, 175, 215, 255];\n for (let r = 0; r < 6; r++) {\n for (let g = 0; g < 6; g++) {\n for (let b = 0; b < 6; b++) {\n colorTable.push(rgbColor([levels[r], levels[g], levels[b]]));\n }\n }\n }\n let level = 8;\n for (let i = 0; i < 24; i++, level += 10) {\n colorTable.push(rgbColor([level, level, level]));\n }\n return colorTable;\n }\n function tableColor(index) {\n return getColorTable()[index];\n }\n function value(color) {\n switch (color.type) {\n case \"named\":\n return namedColor(color.name);\n case \"rgb\":\n return rgbColor(color.rgb);\n case \"table\":\n return tableColor(color.index);\n }\n }\n return {\n value\n };\n}\n\nconst defaultAnsiColors = {\n black: \"#000000\",\n red: \"#cd3131\",\n green: \"#0DBC79\",\n yellow: \"#E5E510\",\n blue: \"#2472C8\",\n magenta: \"#BC3FBC\",\n cyan: \"#11A8CD\",\n white: \"#E5E5E5\",\n brightBlack: \"#666666\",\n brightRed: \"#F14C4C\",\n brightGreen: \"#23D18B\",\n brightYellow: \"#F5F543\",\n brightBlue: \"#3B8EEA\",\n brightMagenta: \"#D670D6\",\n brightCyan: \"#29B8DB\",\n brightWhite: \"#FFFFFF\"\n};\nfunction tokenizeAnsiWithTheme(theme, fileContents, options) {\n const colorReplacements = resolveColorReplacements(theme, options);\n const lines = splitLines(fileContents);\n const ansiPalette = Object.fromEntries(\n namedColors.map((name) => {\n const key = `terminal.ansi${name[0].toUpperCase()}${name.substring(1)}`;\n const themeColor = theme.colors?.[key];\n return [name, themeColor || defaultAnsiColors[name]];\n })\n );\n const colorPalette = createColorPalette(ansiPalette);\n const parser = createAnsiSequenceParser();\n return lines.map(\n (line) => parser.parse(line[0]).map((token) => {\n let color;\n let bgColor;\n if (token.decorations.has(\"reverse\")) {\n color = token.background ? colorPalette.value(token.background) : theme.bg;\n bgColor = token.foreground ? colorPalette.value(token.foreground) : theme.fg;\n } else {\n color = token.foreground ? colorPalette.value(token.foreground) : theme.fg;\n bgColor = token.background ? colorPalette.value(token.background) : void 0;\n }\n color = applyColorReplacements(color, colorReplacements);\n bgColor = applyColorReplacements(bgColor, colorReplacements);\n if (token.decorations.has(\"dim\"))\n color = dimColor(color);\n let fontStyle = FontStyle.None;\n if (token.decorations.has(\"bold\"))\n fontStyle |= FontStyle.Bold;\n if (token.decorations.has(\"italic\"))\n fontStyle |= FontStyle.Italic;\n if (token.decorations.has(\"underline\"))\n fontStyle |= FontStyle.Underline;\n if (token.decorations.has(\"strikethrough\"))\n fontStyle |= FontStyle.Strikethrough;\n return {\n content: token.value,\n offset: line[1],\n // TODO: more accurate offset? might need to fork ansi-sequence-parser\n color,\n bgColor,\n fontStyle\n };\n })\n );\n}\nfunction dimColor(color) {\n const hexMatch = color.match(/#([0-9a-f]{3,8})/i);\n if (hexMatch) {\n const hex = hexMatch[1];\n if (hex.length === 8) {\n const alpha = Math.round(Number.parseInt(hex.slice(6, 8), 16) / 2).toString(16).padStart(2, \"0\");\n return `#${hex.slice(0, 6)}${alpha}`;\n } else if (hex.length === 6) {\n return `#${hex}80`;\n } else if (hex.length === 4) {\n const r = hex[0];\n const g = hex[1];\n const b = hex[2];\n const a = hex[3];\n const alpha = Math.round(Number.parseInt(`${a}${a}`, 16) / 2).toString(16).padStart(2, \"0\");\n return `#${r}${r}${g}${g}${b}${b}${alpha}`;\n } else if (hex.length === 3) {\n const r = hex[0];\n const g = hex[1];\n const b = hex[2];\n return `#${r}${r}${g}${g}${b}${b}80`;\n }\n }\n const cssVarMatch = color.match(/var\\((--[\\w-]+-ansi-[\\w-]+)\\)/);\n if (cssVarMatch)\n return `var(${cssVarMatch[1]}-dim)`;\n return color;\n}\n\nfunction codeToTokensBase(internal, code, options = {}) {\n const {\n theme: themeName = internal.getLoadedThemes()[0]\n } = options;\n const lang = internal.resolveLangAlias(options.lang || \"text\");\n if (isPlainLang(lang) || isNoneTheme(themeName))\n return splitLines(code).map((line) => [{ content: line[0], offset: line[1] }]);\n const { theme, colorMap } = internal.setTheme(themeName);\n if (lang === \"ansi\")\n return tokenizeAnsiWithTheme(theme, code, options);\n const _grammar = internal.getLanguage(options.lang || \"text\");\n if (options.grammarState) {\n if (options.grammarState.lang !== _grammar.name) {\n throw new ShikiError$1(`Grammar state language \"${options.grammarState.lang}\" does not match highlight language \"${_grammar.name}\"`);\n }\n if (!options.grammarState.themes.includes(theme.name)) {\n throw new ShikiError$1(`Grammar state themes \"${options.grammarState.themes}\" do not contain highlight theme \"${theme.name}\"`);\n }\n }\n return tokenizeWithTheme(code, _grammar, theme, colorMap, options);\n}\nfunction getLastGrammarState(...args) {\n if (args.length === 2) {\n return getLastGrammarStateFromMap(args[1]);\n }\n const [internal, code, options = {}] = args;\n const {\n lang = \"text\",\n theme: themeName = internal.getLoadedThemes()[0]\n } = options;\n if (isPlainLang(lang) || isNoneTheme(themeName))\n throw new ShikiError$1(\"Plain language does not have grammar state\");\n if (lang === \"ansi\")\n throw new ShikiError$1(\"ANSI language does not have grammar state\");\n const { theme, colorMap } = internal.setTheme(themeName);\n const _grammar = internal.getLanguage(lang);\n return new GrammarState(\n _tokenizeWithTheme(code, _grammar, theme, colorMap, options).stateStack,\n _grammar.name,\n theme.name\n );\n}\nfunction tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n const result = _tokenizeWithTheme(code, grammar, theme, colorMap, options);\n const grammarState = new GrammarState(\n result.stateStack,\n grammar.name,\n theme.name\n );\n setLastGrammarStateToMap(result.tokens, grammarState);\n return result.tokens;\n}\nfunction _tokenizeWithTheme(code, grammar, theme, colorMap, options) {\n const colorReplacements = resolveColorReplacements(theme, options);\n const {\n tokenizeMaxLineLength = 0,\n tokenizeTimeLimit = 500\n } = options;\n const lines = splitLines(code);\n let stateStack = options.grammarState ? getGrammarStack(options.grammarState, theme.name) ?? INITIAL : options.grammarContextCode != null ? _tokenizeWithTheme(\n options.grammarContextCode,\n grammar,\n theme,\n colorMap,\n {\n ...options,\n grammarState: void 0,\n grammarContextCode: void 0\n }\n ).stateStack : INITIAL;\n let actual = [];\n const final = [];\n for (let i = 0, len = lines.length; i < len; i++) {\n const [line, lineOffset] = lines[i];\n if (line === \"\") {\n actual = [];\n final.push([]);\n continue;\n }\n if (tokenizeMaxLineLength > 0 && line.length >= tokenizeMaxLineLength) {\n actual = [];\n final.push([{\n content: line,\n offset: lineOffset,\n color: \"\",\n fontStyle: 0\n }]);\n continue;\n }\n let resultWithScopes;\n let tokensWithScopes;\n let tokensWithScopesIndex;\n if (options.includeExplanation) {\n resultWithScopes = grammar.tokenizeLine(line, stateStack, tokenizeTimeLimit);\n tokensWithScopes = resultWithScopes.tokens;\n tokensWithScopesIndex = 0;\n }\n const result = grammar.tokenizeLine2(line, stateStack, tokenizeTimeLimit);\n const tokensLength = result.tokens.length / 2;\n for (let j = 0; j < tokensLength; j++) {\n const startIndex = result.tokens[2 * j];\n const nextStartIndex = j + 1 < tokensLength ? result.tokens[2 * j + 2] : line.length;\n if (startIndex === nextStartIndex)\n continue;\n const metadata = result.tokens[2 * j + 1];\n const color = applyColorReplacements(\n colorMap[EncodedTokenMetadata.getForeground(metadata)],\n colorReplacements\n );\n const fontStyle = EncodedTokenMetadata.getFontStyle(metadata);\n const token = {\n content: line.substring(startIndex, nextStartIndex),\n offset: lineOffset + startIndex,\n color,\n fontStyle\n };\n if (options.includeExplanation) {\n const themeSettingsSelectors = [];\n if (options.includeExplanation !== \"scopeName\") {\n for (const setting of theme.settings) {\n let selectors;\n switch (typeof setting.scope) {\n case \"string\":\n selectors = setting.scope.split(/,/).map((scope) => scope.trim());\n break;\n case \"object\":\n selectors = setting.scope;\n break;\n default:\n continue;\n }\n themeSettingsSelectors.push({\n settings: setting,\n selectors: selectors.map((selector) => selector.split(/ /))\n });\n }\n }\n token.explanation = [];\n let offset = 0;\n while (startIndex + offset < nextStartIndex) {\n const tokenWithScopes = tokensWithScopes[tokensWithScopesIndex];\n const tokenWithScopesText = line.substring(\n tokenWithScopes.startIndex,\n tokenWithScopes.endIndex\n );\n offset += tokenWithScopesText.length;\n token.explanation.push({\n content: tokenWithScopesText,\n scopes: options.includeExplanation === \"scopeName\" ? explainThemeScopesNameOnly(\n tokenWithScopes.scopes\n ) : explainThemeScopesFull(\n themeSettingsSelectors,\n tokenWithScopes.scopes\n )\n });\n tokensWithScopesIndex += 1;\n }\n }\n actual.push(token);\n }\n final.push(actual);\n actual = [];\n stateStack = result.ruleStack;\n }\n return {\n tokens: final,\n stateStack\n };\n}\nfunction explainThemeScopesNameOnly(scopes) {\n return scopes.map((scope) => ({ scopeName: scope }));\n}\nfunction explainThemeScopesFull(themeSelectors, scopes) {\n const result = [];\n for (let i = 0, len = scopes.length; i < len; i++) {\n const scope = scopes[i];\n result[i] = {\n scopeName: scope,\n themeMatches: explainThemeScope(themeSelectors, scope, scopes.slice(0, i))\n };\n }\n return result;\n}\nfunction matchesOne(selector, scope) {\n return selector === scope || scope.substring(0, selector.length) === selector && scope[selector.length] === \".\";\n}\nfunction matches(selectors, scope, parentScopes) {\n if (!matchesOne(selectors[selectors.length - 1], scope))\n return false;\n let selectorParentIndex = selectors.length - 2;\n let parentIndex = parentScopes.length - 1;\n while (selectorParentIndex >= 0 && parentIndex >= 0) {\n if (matchesOne(selectors[selectorParentIndex], parentScopes[parentIndex]))\n selectorParentIndex -= 1;\n parentIndex -= 1;\n }\n if (selectorParentIndex === -1)\n return true;\n return false;\n}\nfunction explainThemeScope(themeSettingsSelectors, scope, parentScopes) {\n const result = [];\n for (const { selectors, settings } of themeSettingsSelectors) {\n for (const selectorPieces of selectors) {\n if (matches(selectorPieces, scope, parentScopes)) {\n result.push(settings);\n break;\n }\n }\n }\n return result;\n}\n\nfunction codeToTokensWithThemes(internal, code, options) {\n const themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] }));\n const themedTokens = themes.map((t) => {\n const tokens2 = codeToTokensBase(internal, code, {\n ...options,\n theme: t.theme\n });\n const state = getLastGrammarStateFromMap(tokens2);\n const theme = typeof t.theme === \"string\" ? t.theme : t.theme.name;\n return {\n tokens: tokens2,\n state,\n theme\n };\n });\n const tokens = syncThemesTokenization(\n ...themedTokens.map((i) => i.tokens)\n );\n const mergedTokens = tokens[0].map(\n (line, lineIdx) => line.map((_token, tokenIdx) => {\n const mergedToken = {\n content: _token.content,\n variants: {},\n offset: _token.offset\n };\n if (\"includeExplanation\" in options && options.includeExplanation) {\n mergedToken.explanation = _token.explanation;\n }\n tokens.forEach((t, themeIdx) => {\n const {\n content: _,\n explanation: __,\n offset: ___,\n ...styles\n } = t[lineIdx][tokenIdx];\n mergedToken.variants[themes[themeIdx].color] = styles;\n });\n return mergedToken;\n })\n );\n const mergedGrammarState = themedTokens[0].state ? new GrammarState(\n Object.fromEntries(themedTokens.map((s) => [s.theme, s.state?.getInternalStack(s.theme)])),\n themedTokens[0].state.lang\n ) : void 0;\n if (mergedGrammarState)\n setLastGrammarStateToMap(mergedTokens, mergedGrammarState);\n return mergedTokens;\n}\nfunction syncThemesTokenization(...themes) {\n const outThemes = themes.map(() => []);\n const count = themes.length;\n for (let i = 0; i < themes[0].length; i++) {\n const lines = themes.map((t) => t[i]);\n const outLines = outThemes.map(() => []);\n outThemes.forEach((t, i2) => t.push(outLines[i2]));\n const indexes = lines.map(() => 0);\n const current = lines.map((l) => l[0]);\n while (current.every((t) => t)) {\n const minLength = Math.min(...current.map((t) => t.content.length));\n for (let n = 0; n < count; n++) {\n const token = current[n];\n if (token.content.length === minLength) {\n outLines[n].push(token);\n indexes[n] += 1;\n current[n] = lines[n][indexes[n]];\n } else {\n outLines[n].push({\n ...token,\n content: token.content.slice(0, minLength)\n });\n current[n] = {\n ...token,\n content: token.content.slice(minLength),\n offset: token.offset + minLength\n };\n }\n }\n }\n }\n return outThemes;\n}\n\nfunction codeToTokens(internal, code, options) {\n let bg;\n let fg;\n let tokens;\n let themeName;\n let rootStyle;\n let grammarState;\n if (\"themes\" in options) {\n const {\n defaultColor = \"light\",\n cssVariablePrefix = \"--shiki-\",\n colorsRendering = \"css-vars\"\n } = options;\n const themes = Object.entries(options.themes).filter((i) => i[1]).map((i) => ({ color: i[0], theme: i[1] })).sort((a, b) => a.color === defaultColor ? -1 : b.color === defaultColor ? 1 : 0);\n if (themes.length === 0)\n throw new ShikiError$1(\"`themes` option must not be empty\");\n const themeTokens = codeToTokensWithThemes(\n internal,\n code,\n options\n );\n grammarState = getLastGrammarStateFromMap(themeTokens);\n if (defaultColor && DEFAULT_COLOR_LIGHT_DARK !== defaultColor && !themes.find((t) => t.color === defaultColor))\n throw new ShikiError$1(`\\`themes\\` option must contain the defaultColor key \\`${defaultColor}\\``);\n const themeRegs = themes.map((t) => internal.getTheme(t.theme));\n const themesOrder = themes.map((t) => t.color);\n tokens = themeTokens.map((line) => line.map((token) => flatTokenVariants(token, themesOrder, cssVariablePrefix, defaultColor, colorsRendering)));\n if (grammarState)\n setLastGrammarStateToMap(tokens, grammarState);\n const themeColorReplacements = themes.map((t) => resolveColorReplacements(t.theme, options));\n fg = mapThemeColors(themes, themeRegs, themeColorReplacements, cssVariablePrefix, defaultColor, \"fg\", colorsRendering);\n bg = mapThemeColors(themes, themeRegs, themeColorReplacements, cssVariablePrefix, defaultColor, \"bg\", colorsRendering);\n themeName = `shiki-themes ${themeRegs.map((t) => t.name).join(\" \")}`;\n rootStyle = defaultColor ? void 0 : [fg, bg].join(\";\");\n } else if (\"theme\" in options) {\n const colorReplacements = resolveColorReplacements(options.theme, options);\n tokens = codeToTokensBase(\n internal,\n code,\n options\n );\n const _theme = internal.getTheme(options.theme);\n bg = applyColorReplacements(_theme.bg, colorReplacements);\n fg = applyColorReplacements(_theme.fg, colorReplacements);\n themeName = _theme.name;\n grammarState = getLastGrammarStateFromMap(tokens);\n } else {\n throw new ShikiError$1(\"Invalid options, either `theme` or `themes` must be provided\");\n }\n return {\n tokens,\n fg,\n bg,\n themeName,\n rootStyle,\n grammarState\n };\n}\nfunction mapThemeColors(themes, themeRegs, themeColorReplacements, cssVariablePrefix, defaultColor, property, colorsRendering) {\n return themes.map((t, idx) => {\n const value = applyColorReplacements(themeRegs[idx][property], themeColorReplacements[idx]) || \"inherit\";\n const cssVar = `${cssVariablePrefix + t.color}${property === \"bg\" ? \"-bg\" : \"\"}:${value}`;\n if (idx === 0 && defaultColor) {\n if (defaultColor === DEFAULT_COLOR_LIGHT_DARK && themes.length > 1) {\n const lightIndex = themes.findIndex((t2) => t2.color === \"light\");\n const darkIndex = themes.findIndex((t2) => t2.color === \"dark\");\n if (lightIndex === -1 || darkIndex === -1)\n throw new ShikiError$1('When using `defaultColor: \"light-dark()\"`, you must provide both `light` and `dark` themes');\n const lightValue = applyColorReplacements(themeRegs[lightIndex][property], themeColorReplacements[lightIndex]) || \"inherit\";\n const darkValue = applyColorReplacements(themeRegs[darkIndex][property], themeColorReplacements[darkIndex]) || \"inherit\";\n return `light-dark(${lightValue}, ${darkValue});${cssVar}`;\n }\n return value;\n }\n if (colorsRendering === \"css-vars\") {\n return cssVar;\n }\n return null;\n }).filter((i) => !!i).join(\";\");\n}\n\nfunction codeToHast(internal, code, options, transformerContext = {\n meta: {},\n options,\n codeToHast: (_code, _options) => codeToHast(internal, _code, _options),\n codeToTokens: (_code, _options) => codeToTokens(internal, _code, _options)\n}) {\n let input = code;\n for (const transformer of getTransformers(options))\n input = transformer.preprocess?.call(transformerContext, input, options) || input;\n let {\n tokens,\n fg,\n bg,\n themeName,\n rootStyle,\n grammarState\n } = codeToTokens(internal, input, options);\n const {\n mergeWhitespaces = true,\n mergeSameStyleTokens = false\n } = options;\n if (mergeWhitespaces === true)\n tokens = mergeWhitespaceTokens(tokens);\n else if (mergeWhitespaces === \"never\")\n tokens = splitWhitespaceTokens(tokens);\n if (mergeSameStyleTokens) {\n tokens = mergeAdjacentStyledTokens(tokens);\n }\n const contextSource = {\n ...transformerContext,\n get source() {\n return input;\n }\n };\n for (const transformer of getTransformers(options))\n tokens = transformer.tokens?.call(contextSource, tokens) || tokens;\n return tokensToHast(\n tokens,\n {\n ...options,\n fg,\n bg,\n themeName,\n rootStyle: options.rootStyle === false ? false : options.rootStyle ?? rootStyle\n },\n contextSource,\n grammarState\n );\n}\nfunction tokensToHast(tokens, options, transformerContext, grammarState = getLastGrammarStateFromMap(tokens)) {\n const transformers = getTransformers(options);\n const lines = [];\n const root = {\n type: \"root\",\n children: []\n };\n const {\n structure = \"classic\",\n tabindex = \"0\"\n } = options;\n const properties = {\n class: `shiki ${options.themeName || \"\"}`\n };\n if (options.rootStyle !== false) {\n if (options.rootStyle != null)\n properties.style = options.rootStyle;\n else\n properties.style = `background-color:${options.bg};color:${options.fg}`;\n }\n if (tabindex !== false && tabindex != null)\n properties.tabindex = tabindex.toString();\n for (const [key, value] of Object.entries(options.meta || {})) {\n if (!key.startsWith(\"_\"))\n properties[key] = value;\n }\n let preNode = {\n type: \"element\",\n tagName: \"pre\",\n properties,\n children: [],\n data: options.data\n };\n let codeNode = {\n type: \"element\",\n tagName: \"code\",\n properties: {},\n children: lines\n };\n const lineNodes = [];\n const context = {\n ...transformerContext,\n structure,\n addClassToHast,\n get source() {\n return transformerContext.source;\n },\n get tokens() {\n return tokens;\n },\n get options() {\n return options;\n },\n get root() {\n return root;\n },\n get pre() {\n return preNode;\n },\n get code() {\n return codeNode;\n },\n get lines() {\n return lineNodes;\n }\n };\n tokens.forEach((line, idx) => {\n if (idx) {\n if (structure === \"inline\")\n root.children.push({ type: \"element\", tagName: \"br\", properties: {}, children: [] });\n else if (structure === \"classic\")\n lines.push({ type: \"text\", value: \"\\n\" });\n }\n let lineNode = {\n type: \"element\",\n tagName: \"span\",\n properties: { class: \"line\" },\n children: []\n };\n let col = 0;\n for (const token of line) {\n let tokenNode = {\n type: \"element\",\n tagName: \"span\",\n properties: {\n ...token.htmlAttrs\n },\n children: [{ type: \"text\", value: token.content }]\n };\n const style = stringifyTokenStyle(token.htmlStyle || getTokenStyleObject(token));\n if (style)\n tokenNode.properties.style = style;\n for (const transformer of transformers)\n tokenNode = transformer?.span?.call(context, tokenNode, idx + 1, col, lineNode, token) || tokenNode;\n if (structure === \"inline\")\n root.children.push(tokenNode);\n else if (structure === \"classic\")\n lineNode.children.push(tokenNode);\n col += token.content.length;\n }\n if (structure === \"classic\") {\n for (const transformer of transformers)\n lineNode = transformer?.line?.call(context, lineNode, idx + 1) || lineNode;\n lineNodes.push(lineNode);\n lines.push(lineNode);\n } else if (structure === \"inline\") {\n lineNodes.push(lineNode);\n }\n });\n if (structure === \"classic\") {\n for (const transformer of transformers)\n codeNode = transformer?.code?.call(context, codeNode) || codeNode;\n preNode.children.push(codeNode);\n for (const transformer of transformers)\n preNode = transformer?.pre?.call(context, preNode) || preNode;\n root.children.push(preNode);\n } else if (structure === \"inline\") {\n const syntheticLines = [];\n let currentLine = {\n type: \"element\",\n tagName: \"span\",\n properties: { class: \"line\" },\n children: []\n };\n for (const child of root.children) {\n if (child.type === \"element\" && child.tagName === \"br\") {\n syntheticLines.push(currentLine);\n currentLine = {\n type: \"element\",\n tagName: \"span\",\n properties: { class: \"line\" },\n children: []\n };\n } else if (child.type === \"element\" || child.type === \"text\") {\n currentLine.children.push(child);\n }\n }\n syntheticLines.push(currentLine);\n const syntheticCode = {\n type: \"element\",\n tagName: \"code\",\n properties: {},\n children: syntheticLines\n };\n let transformedCode = syntheticCode;\n for (const transformer of transformers)\n transformedCode = transformer?.code?.call(context, transformedCode) || transformedCode;\n root.children = [];\n for (let i = 0; i < transformedCode.children.length; i++) {\n if (i > 0)\n root.children.push({ type: \"element\", tagName: \"br\", properties: {}, children: [] });\n const line = transformedCode.children[i];\n if (line.type === \"element\")\n root.children.push(...line.children);\n }\n }\n let result = root;\n for (const transformer of transformers)\n result = transformer?.root?.call(context, result) || result;\n if (grammarState)\n setLastGrammarStateToMap(result, grammarState);\n return result;\n}\nfunction mergeWhitespaceTokens(tokens) {\n return tokens.map((line) => {\n const newLine = [];\n let carryOnContent = \"\";\n let firstOffset;\n line.forEach((token, idx) => {\n const isDecorated = token.fontStyle && (token.fontStyle & FontStyle.Underline || token.fontStyle & FontStyle.Strikethrough);\n const couldMerge = !isDecorated;\n if (couldMerge && token.content.match(/^\\s+$/) && line[idx + 1]) {\n if (firstOffset === void 0)\n firstOffset = token.offset;\n carryOnContent += token.content;\n } else {\n if (carryOnContent) {\n if (couldMerge) {\n newLine.push({\n ...token,\n offset: firstOffset,\n content: carryOnContent + token.content\n });\n } else {\n newLine.push(\n {\n content: carryOnContent,\n offset: firstOffset\n },\n token\n );\n }\n firstOffset = void 0;\n carryOnContent = \"\";\n } else {\n newLine.push(token);\n }\n }\n });\n return newLine;\n });\n}\nfunction splitWhitespaceTokens(tokens) {\n return tokens.map((line) => {\n return line.flatMap((token) => {\n if (token.content.match(/^\\s+$/))\n return token;\n const match = token.content.match(/^(\\s*)(.*?)(\\s*)$/);\n if (!match)\n return token;\n const [, leading, content, trailing] = match;\n if (!leading && !trailing)\n return token;\n const expanded = [{\n ...token,\n offset: token.offset + leading.length,\n content\n }];\n if (leading) {\n expanded.unshift({\n content: leading,\n offset: token.offset\n });\n }\n if (trailing) {\n expanded.push({\n content: trailing,\n offset: token.offset + leading.length + content.length\n });\n }\n return expanded;\n });\n });\n}\nfunction mergeAdjacentStyledTokens(tokens) {\n return tokens.map((line) => {\n const newLine = [];\n for (const token of line) {\n if (newLine.length === 0) {\n newLine.push({ ...token });\n continue;\n }\n const prevToken = newLine[newLine.length - 1];\n const prevStyle = stringifyTokenStyle(prevToken.htmlStyle || getTokenStyleObject(prevToken));\n const currentStyle = stringifyTokenStyle(token.htmlStyle || getTokenStyleObject(token));\n const isPrevDecorated = prevToken.fontStyle && (prevToken.fontStyle & FontStyle.Underline || prevToken.fontStyle & FontStyle.Strikethrough);\n const isDecorated = token.fontStyle && (token.fontStyle & FontStyle.Underline || token.fontStyle & FontStyle.Strikethrough);\n if (!isPrevDecorated && !isDecorated && prevStyle === currentStyle) {\n prevToken.content += token.content;\n } else {\n newLine.push({ ...token });\n }\n }\n return newLine;\n });\n}\n\nconst hastToHtml = toHtml;\nfunction codeToHtml(internal, code, options) {\n const context = {\n meta: {},\n options,\n codeToHast: (_code, _options) => codeToHast(internal, _code, _options),\n codeToTokens: (_code, _options) => codeToTokens(internal, _code, _options)\n };\n let result = hastToHtml(codeToHast(internal, code, options, context));\n for (const transformer of getTransformers(options))\n result = transformer.postprocess?.call(context, result, options) || result;\n return result;\n}\n\nconst VSCODE_FALLBACK_EDITOR_FG = { light: \"#333333\", dark: \"#bbbbbb\" };\nconst VSCODE_FALLBACK_EDITOR_BG = { light: \"#fffffe\", dark: \"#1e1e1e\" };\nconst RESOLVED_KEY = \"__shiki_resolved\";\nfunction normalizeTheme(rawTheme) {\n if (rawTheme?.[RESOLVED_KEY])\n return rawTheme;\n const theme = {\n ...rawTheme\n };\n if (theme.tokenColors && !theme.settings) {\n theme.settings = theme.tokenColors;\n delete theme.tokenColors;\n }\n theme.type ||= \"dark\";\n theme.colorReplacements = { ...theme.colorReplacements };\n theme.settings ||= [];\n let { bg, fg } = theme;\n if (!bg || !fg) {\n const globalSetting = theme.settings ? theme.settings.find((s) => !s.name && !s.scope) : void 0;\n if (globalSetting?.settings?.foreground)\n fg = globalSetting.settings.foreground;\n if (globalSetting?.settings?.background)\n bg = globalSetting.settings.background;\n if (!fg && theme?.colors?.[\"editor.foreground\"])\n fg = theme.colors[\"editor.foreground\"];\n if (!bg && theme?.colors?.[\"editor.background\"])\n bg = theme.colors[\"editor.background\"];\n if (!fg)\n fg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_FG.light : VSCODE_FALLBACK_EDITOR_FG.dark;\n if (!bg)\n bg = theme.type === \"light\" ? VSCODE_FALLBACK_EDITOR_BG.light : VSCODE_FALLBACK_EDITOR_BG.dark;\n theme.fg = fg;\n theme.bg = bg;\n }\n if (!(theme.settings[0] && theme.settings[0].settings && !theme.settings[0].scope)) {\n theme.settings.unshift({\n settings: {\n foreground: theme.fg,\n background: theme.bg\n }\n });\n }\n let replacementCount = 0;\n const replacementMap = /* @__PURE__ */ new Map();\n function getReplacementColor(value) {\n if (replacementMap.has(value))\n return replacementMap.get(value);\n replacementCount += 1;\n const hex = `#${replacementCount.toString(16).padStart(8, \"0\").toLowerCase()}`;\n if (theme.colorReplacements?.[`#${hex}`])\n return getReplacementColor(value);\n replacementMap.set(value, hex);\n return hex;\n }\n theme.settings = theme.settings.map((setting) => {\n const replaceFg = setting.settings?.foreground && !setting.settings.foreground.startsWith(\"#\");\n const replaceBg = setting.settings?.background && !setting.settings.background.startsWith(\"#\");\n if (!replaceFg && !replaceBg)\n return setting;\n const clone = {\n ...setting,\n settings: {\n ...setting.settings\n }\n };\n if (replaceFg) {\n const replacement = getReplacementColor(setting.settings.foreground);\n theme.colorReplacements[replacement] = setting.settings.foreground;\n clone.settings.foreground = replacement;\n }\n if (replaceBg) {\n const replacement = getReplacementColor(setting.settings.background);\n theme.colorReplacements[replacement] = setting.settings.background;\n clone.settings.background = replacement;\n }\n return clone;\n });\n for (const key of Object.keys(theme.colors || {})) {\n if (key === \"editor.foreground\" || key === \"editor.background\" || key.startsWith(\"terminal.ansi\")) {\n if (!theme.colors[key]?.startsWith(\"#\")) {\n const replacement = getReplacementColor(theme.colors[key]);\n theme.colorReplacements[replacement] = theme.colors[key];\n theme.colors[key] = replacement;\n }\n }\n }\n Object.defineProperty(theme, RESOLVED_KEY, {\n enumerable: false,\n writable: false,\n value: true\n });\n return theme;\n}\n\nasync function resolveLangs(langs) {\n return Array.from(new Set((await Promise.all(\n langs.filter((l) => !isSpecialLang(l)).map(async (lang) => await normalizeGetter(lang).then((r) => Array.isArray(r) ? r : [r]))\n )).flat()));\n}\nasync function resolveThemes(themes) {\n const resolved = await Promise.all(\n themes.map(\n async (theme) => isSpecialTheme(theme) ? null : normalizeTheme(await normalizeGetter(theme))\n )\n );\n return resolved.filter((i) => !!i);\n}\n\nlet _emitDeprecation = 3;\nlet _emitError = false;\nfunction enableDeprecationWarnings(emitDeprecation = true, emitError = false) {\n _emitDeprecation = emitDeprecation;\n _emitError = emitError;\n}\nfunction warnDeprecated(message, version = 3) {\n if (!_emitDeprecation)\n return;\n if (typeof _emitDeprecation === \"number\" && version > _emitDeprecation)\n return;\n if (_emitError) {\n throw new Error(`[SHIKI DEPRECATE]: ${message}`);\n } else {\n console.trace(`[SHIKI DEPRECATE]: ${message}`);\n }\n}\n\nclass ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nfunction resolveLangAlias(name, alias) {\n if (!alias)\n return name;\n if (alias[name]) {\n const resolved = /* @__PURE__ */ new Set([name]);\n while (alias[name]) {\n name = alias[name];\n if (resolved.has(name))\n throw new ShikiError(`Circular alias \\`${Array.from(resolved).join(\" -> \")} -> ${name}\\``);\n resolved.add(name);\n }\n }\n return name;\n}\n\nclass Registry extends Registry$1 {\n constructor(_resolver, _themes, _langs, _alias = {}) {\n super(_resolver);\n this._resolver = _resolver;\n this._themes = _themes;\n this._langs = _langs;\n this._alias = _alias;\n this._themes.map((t) => this.loadTheme(t));\n this.loadLanguages(this._langs);\n }\n _resolvedThemes = /* @__PURE__ */ new Map();\n _resolvedGrammars = /* @__PURE__ */ new Map();\n _langMap = /* @__PURE__ */ new Map();\n _langGraph = /* @__PURE__ */ new Map();\n _textmateThemeCache = /* @__PURE__ */ new WeakMap();\n _loadedThemesCache = null;\n _loadedLanguagesCache = null;\n getTheme(theme) {\n if (typeof theme === \"string\")\n return this._resolvedThemes.get(theme);\n else\n return this.loadTheme(theme);\n }\n loadTheme(theme) {\n const _theme = normalizeTheme(theme);\n if (_theme.name) {\n this._resolvedThemes.set(_theme.name, _theme);\n this._loadedThemesCache = null;\n }\n return _theme;\n }\n getLoadedThemes() {\n if (!this._loadedThemesCache)\n this._loadedThemesCache = [...this._resolvedThemes.keys()];\n return this._loadedThemesCache;\n }\n // Override and re-implement this method to cache the textmate themes as `TextMateTheme.createFromRawTheme`\n // is expensive. Themes can switch often especially for dual-theme support.\n //\n // The parent class also accepts `colorMap` as the second parameter, but since we don't use that,\n // we omit here so it's easier to cache the themes.\n setTheme(theme) {\n let textmateTheme = this._textmateThemeCache.get(theme);\n if (!textmateTheme) {\n textmateTheme = Theme.createFromRawTheme(theme);\n this._textmateThemeCache.set(theme, textmateTheme);\n }\n this._syncRegistry.setTheme(textmateTheme);\n }\n getGrammar(name) {\n name = resolveLangAlias(name, this._alias);\n return this._resolvedGrammars.get(name);\n }\n loadLanguage(lang) {\n if (this.getGrammar(lang.name))\n return;\n const embeddedLazilyBy = new Set(\n [...this._langMap.values()].filter((i) => i.embeddedLangsLazy?.includes(lang.name))\n );\n this._resolver.addLanguage(lang);\n const grammarConfig = {\n balancedBracketSelectors: lang.balancedBracketSelectors || [\"*\"],\n unbalancedBracketSelectors: lang.unbalancedBracketSelectors || []\n };\n this._syncRegistry._rawGrammars.set(lang.scopeName, lang);\n const g = this.loadGrammarWithConfiguration(lang.scopeName, 1, grammarConfig);\n g.name = lang.name;\n this._resolvedGrammars.set(lang.name, g);\n if (lang.aliases) {\n lang.aliases.forEach((alias) => {\n this._alias[alias] = lang.name;\n });\n }\n this._loadedLanguagesCache = null;\n if (embeddedLazilyBy.size) {\n for (const e of embeddedLazilyBy) {\n this._resolvedGrammars.delete(e.name);\n this._loadedLanguagesCache = null;\n this._syncRegistry?._injectionGrammars?.delete(e.scopeName);\n this._syncRegistry?._grammars?.delete(e.scopeName);\n this.loadLanguage(this._langMap.get(e.name));\n }\n }\n }\n dispose() {\n super.dispose();\n this._resolvedThemes.clear();\n this._resolvedGrammars.clear();\n this._langMap.clear();\n this._langGraph.clear();\n this._loadedThemesCache = null;\n }\n loadLanguages(langs) {\n for (const lang of langs)\n this.resolveEmbeddedLanguages(lang);\n const langsGraphArray = Array.from(this._langGraph.entries());\n const missingLangs = langsGraphArray.filter(([_, lang]) => !lang);\n if (missingLangs.length) {\n const dependents = langsGraphArray.filter(([_, lang]) => {\n if (!lang)\n return false;\n const embedded = lang.embeddedLanguages || lang.embeddedLangs;\n return embedded?.some((l) => missingLangs.map(([name]) => name).includes(l));\n }).filter((lang) => !missingLangs.includes(lang));\n throw new ShikiError(`Missing languages ${missingLangs.map(([name]) => `\\`${name}\\``).join(\", \")}, required by ${dependents.map(([name]) => `\\`${name}\\``).join(\", \")}`);\n }\n for (const [_, lang] of langsGraphArray)\n this._resolver.addLanguage(lang);\n for (const [_, lang] of langsGraphArray)\n this.loadLanguage(lang);\n }\n getLoadedLanguages() {\n if (!this._loadedLanguagesCache) {\n this._loadedLanguagesCache = [\n .../* @__PURE__ */ new Set([...this._resolvedGrammars.keys(), ...Object.keys(this._alias)])\n ];\n }\n return this._loadedLanguagesCache;\n }\n resolveEmbeddedLanguages(lang) {\n this._langMap.set(lang.name, lang);\n this._langGraph.set(lang.name, lang);\n const embedded = lang.embeddedLanguages ?? lang.embeddedLangs;\n if (embedded) {\n for (const embeddedLang of embedded)\n this._langGraph.set(embeddedLang, this._langMap.get(embeddedLang));\n }\n }\n}\n\nclass Resolver {\n _langs = /* @__PURE__ */ new Map();\n _scopeToLang = /* @__PURE__ */ new Map();\n _injections = /* @__PURE__ */ new Map();\n _onigLib;\n constructor(engine, langs) {\n this._onigLib = {\n createOnigScanner: (patterns) => engine.createScanner(patterns),\n createOnigString: (s) => engine.createString(s)\n };\n langs.forEach((i) => this.addLanguage(i));\n }\n get onigLib() {\n return this._onigLib;\n }\n getLangRegistration(langIdOrAlias) {\n return this._langs.get(langIdOrAlias);\n }\n loadGrammar(scopeName) {\n return this._scopeToLang.get(scopeName);\n }\n addLanguage(l) {\n this._langs.set(l.name, l);\n if (l.aliases) {\n l.aliases.forEach((a) => {\n this._langs.set(a, l);\n });\n }\n this._scopeToLang.set(l.scopeName, l);\n if (l.injectTo) {\n l.injectTo.forEach((i) => {\n if (!this._injections.get(i))\n this._injections.set(i, []);\n this._injections.get(i).push(l.scopeName);\n });\n }\n }\n getInjections(scopeName) {\n const scopeParts = scopeName.split(\".\");\n let injections = [];\n for (let i = 1; i <= scopeParts.length; i++) {\n const subScopeName = scopeParts.slice(0, i).join(\".\");\n injections = [...injections, ...this._injections.get(subScopeName) || []];\n }\n return injections;\n }\n}\n\nlet instancesCount = 0;\nfunction createShikiInternalSync(options) {\n instancesCount += 1;\n if (options.warnings !== false && instancesCount >= 10 && instancesCount % 10 === 0)\n 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 let isDisposed = false;\n if (!options.engine)\n throw new ShikiError(\"`engine` option is required for synchronous mode\");\n const langs = (options.langs || []).flat(1);\n const themes = (options.themes || []).flat(1).map(normalizeTheme);\n const resolver = new Resolver(options.engine, langs);\n const _registry = new Registry(resolver, themes, langs, options.langAlias);\n let _lastTheme;\n function resolveLangAlias$1(name) {\n return resolveLangAlias(name, options.langAlias);\n }\n function getLanguage(name) {\n ensureNotDisposed();\n const _lang = _registry.getGrammar(typeof name === \"string\" ? name : name.name);\n if (!_lang)\n throw new ShikiError(`Language \\`${name}\\` not found, you may need to load it first`);\n return _lang;\n }\n function getTheme(name) {\n if (name === \"none\")\n return { bg: \"\", fg: \"\", name: \"none\", settings: [], type: \"dark\" };\n ensureNotDisposed();\n const _theme = _registry.getTheme(name);\n if (!_theme)\n throw new ShikiError(`Theme \\`${name}\\` not found, you may need to load it first`);\n return _theme;\n }\n function setTheme(name) {\n ensureNotDisposed();\n const theme = getTheme(name);\n if (_lastTheme !== name) {\n _registry.setTheme(theme);\n _lastTheme = name;\n }\n const colorMap = _registry.getColorMap();\n return {\n theme,\n colorMap\n };\n }\n function getLoadedThemes() {\n ensureNotDisposed();\n return _registry.getLoadedThemes();\n }\n function getLoadedLanguages() {\n ensureNotDisposed();\n return _registry.getLoadedLanguages();\n }\n function loadLanguageSync(...langs2) {\n ensureNotDisposed();\n _registry.loadLanguages(langs2.flat(1));\n }\n async function loadLanguage(...langs2) {\n return loadLanguageSync(await resolveLangs(langs2));\n }\n function loadThemeSync(...themes2) {\n ensureNotDisposed();\n for (const theme of themes2.flat(1)) {\n _registry.loadTheme(theme);\n }\n }\n async function loadTheme(...themes2) {\n ensureNotDisposed();\n return loadThemeSync(await resolveThemes(themes2));\n }\n function ensureNotDisposed() {\n if (isDisposed)\n throw new ShikiError(\"Shiki instance has been disposed\");\n }\n function dispose() {\n if (isDisposed)\n return;\n isDisposed = true;\n _registry.dispose();\n instancesCount -= 1;\n }\n return {\n setTheme,\n getTheme,\n getLanguage,\n getLoadedThemes,\n getLoadedLanguages,\n resolveLangAlias: resolveLangAlias$1,\n loadLanguage,\n loadLanguageSync,\n loadTheme,\n loadThemeSync,\n dispose,\n [Symbol.dispose]: dispose\n };\n}\n\nasync function createShikiInternal(options) {\n if (!options.engine) {\n warnDeprecated(\"`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.\");\n }\n const [\n themes,\n langs,\n engine\n ] = await Promise.all([\n resolveThemes(options.themes || []),\n resolveLangs(options.langs || []),\n options.engine\n ]);\n return createShikiInternalSync({\n ...options,\n themes,\n langs,\n engine\n });\n}\n\nasync function createHighlighterCore(options) {\n const internal = await createShikiInternal(options);\n return {\n getLastGrammarState: (...args) => getLastGrammarState(internal, ...args),\n codeToTokensBase: (code, options2) => codeToTokensBase(internal, code, options2),\n codeToTokensWithThemes: (code, options2) => codeToTokensWithThemes(internal, code, options2),\n codeToTokens: (code, options2) => codeToTokens(internal, code, options2),\n codeToHast: (code, options2) => codeToHast(internal, code, options2),\n codeToHtml: (code, options2) => codeToHtml(internal, code, options2),\n getBundledLanguages: () => ({}),\n getBundledThemes: () => ({}),\n ...internal,\n getInternalContext: () => internal\n };\n}\nfunction createHighlighterCoreSync(options) {\n const internal = createShikiInternalSync(options);\n return {\n getLastGrammarState: (...args) => getLastGrammarState(internal, ...args),\n codeToTokensBase: (code, options2) => codeToTokensBase(internal, code, options2),\n codeToTokensWithThemes: (code, options2) => codeToTokensWithThemes(internal, code, options2),\n codeToTokens: (code, options2) => codeToTokens(internal, code, options2),\n codeToHast: (code, options2) => codeToHast(internal, code, options2),\n codeToHtml: (code, options2) => codeToHtml(internal, code, options2),\n getBundledLanguages: () => ({}),\n getBundledThemes: () => ({}),\n ...internal,\n getInternalContext: () => internal\n };\n}\nfunction makeSingletonHighlighterCore(createHighlighter) {\n let _shiki;\n async function getSingletonHighlighterCore2(options) {\n if (!_shiki) {\n _shiki = createHighlighter({\n ...options,\n themes: options.themes || [],\n langs: options.langs || []\n });\n return _shiki;\n } else {\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n }\n }\n return getSingletonHighlighterCore2;\n}\nconst getSingletonHighlighterCore = /* @__PURE__ */ makeSingletonHighlighterCore(createHighlighterCore);\n\nfunction createBundledHighlighter(options) {\n const bundledLanguages = options.langs;\n const bundledThemes = options.themes;\n const engine = options.engine;\n async function createHighlighter(options2) {\n function resolveLang(lang) {\n if (typeof lang === \"string\") {\n lang = options2.langAlias?.[lang] || lang;\n if (isSpecialLang(lang))\n return [];\n const bundle = bundledLanguages[lang];\n if (!bundle)\n throw new ShikiError$1(`Language \\`${lang}\\` is not included in this bundle. You may want to load it from external source.`);\n return bundle;\n }\n return lang;\n }\n function resolveTheme(theme) {\n if (isSpecialTheme(theme))\n return \"none\";\n if (typeof theme === \"string\") {\n const bundle = bundledThemes[theme];\n if (!bundle)\n throw new ShikiError$1(`Theme \\`${theme}\\` is not included in this bundle. You may want to load it from external source.`);\n return bundle;\n }\n return theme;\n }\n const _themes = (options2.themes ?? []).map((i) => resolveTheme(i));\n const langs = (options2.langs ?? []).map((i) => resolveLang(i));\n const core = await createHighlighterCore({\n engine: options2.engine ?? engine(),\n ...options2,\n themes: _themes,\n langs\n });\n return {\n ...core,\n loadLanguage(...langs2) {\n return core.loadLanguage(...langs2.map(resolveLang));\n },\n loadTheme(...themes) {\n return core.loadTheme(...themes.map(resolveTheme));\n },\n getBundledLanguages() {\n return bundledLanguages;\n },\n getBundledThemes() {\n return bundledThemes;\n }\n };\n }\n return createHighlighter;\n}\nfunction makeSingletonHighlighter(createHighlighter) {\n let _shiki;\n async function getSingletonHighlighter(options = {}) {\n if (!_shiki) {\n _shiki = createHighlighter({\n ...options,\n themes: [],\n langs: []\n });\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n } else {\n const s = await _shiki;\n await Promise.all([\n s.loadTheme(...options.themes || []),\n s.loadLanguage(...options.langs || [])\n ]);\n return s;\n }\n }\n return getSingletonHighlighter;\n}\nfunction createSingletonShorthands(createHighlighter, config) {\n const getSingletonHighlighter = makeSingletonHighlighter(createHighlighter);\n async function get(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: \"theme\" in options ? [options.theme] : Object.values(options.themes)\n });\n const langs = await config?.guessEmbeddedLanguages?.(code, options.lang, shiki);\n if (langs) {\n await shiki.loadLanguage(...langs);\n }\n return shiki;\n }\n return {\n getSingletonHighlighter(options) {\n return getSingletonHighlighter(options);\n },\n async codeToHtml(code, options) {\n const shiki = await get(code, options);\n return shiki.codeToHtml(code, options);\n },\n async codeToHast(code, options) {\n const shiki = await get(code, options);\n return shiki.codeToHast(code, options);\n },\n async codeToTokens(code, options) {\n const shiki = await get(code, options);\n return shiki.codeToTokens(code, options);\n },\n async codeToTokensBase(code, options) {\n const shiki = await get(code, options);\n return shiki.codeToTokensBase(code, options);\n },\n async codeToTokensWithThemes(code, options) {\n const shiki = await get(code, options);\n return shiki.codeToTokensWithThemes(code, options);\n },\n async getLastGrammarState(code, options) {\n const shiki = await getSingletonHighlighter({\n langs: [options.lang],\n themes: [options.theme]\n });\n return shiki.getLastGrammarState(code, options);\n }\n };\n}\nconst createdBundledHighlighter = createBundledHighlighter;\n\nfunction createCssVariablesTheme(options = {}) {\n const {\n name = \"css-variables\",\n variablePrefix = \"--shiki-\",\n fontStyle = true\n } = options;\n const variable = (name2) => {\n if (options.variableDefaults?.[name2])\n return `var(${variablePrefix}${name2}, ${options.variableDefaults[name2]})`;\n return `var(${variablePrefix}${name2})`;\n };\n const theme = {\n name,\n type: \"dark\",\n colors: {\n \"editor.foreground\": variable(\"foreground\"),\n \"editor.background\": variable(\"background\"),\n \"terminal.ansiBlack\": variable(\"ansi-black\"),\n \"terminal.ansiRed\": variable(\"ansi-red\"),\n \"terminal.ansiGreen\": variable(\"ansi-green\"),\n \"terminal.ansiYellow\": variable(\"ansi-yellow\"),\n \"terminal.ansiBlue\": variable(\"ansi-blue\"),\n \"terminal.ansiMagenta\": variable(\"ansi-magenta\"),\n \"terminal.ansiCyan\": variable(\"ansi-cyan\"),\n \"terminal.ansiWhite\": variable(\"ansi-white\"),\n \"terminal.ansiBrightBlack\": variable(\"ansi-bright-black\"),\n \"terminal.ansiBrightRed\": variable(\"ansi-bright-red\"),\n \"terminal.ansiBrightGreen\": variable(\"ansi-bright-green\"),\n \"terminal.ansiBrightYellow\": variable(\"ansi-bright-yellow\"),\n \"terminal.ansiBrightBlue\": variable(\"ansi-bright-blue\"),\n \"terminal.ansiBrightMagenta\": variable(\"ansi-bright-magenta\"),\n \"terminal.ansiBrightCyan\": variable(\"ansi-bright-cyan\"),\n \"terminal.ansiBrightWhite\": variable(\"ansi-bright-white\")\n },\n tokenColors: [\n {\n scope: [\n \"keyword.operator.accessor\",\n \"meta.group.braces.round.function.arguments\",\n \"meta.template.expression\",\n \"markup.fenced_code meta.embedded.block\"\n ],\n settings: {\n foreground: variable(\"foreground\")\n }\n },\n {\n scope: \"emphasis\",\n settings: {\n fontStyle: \"italic\"\n }\n },\n {\n scope: [\"strong\", \"markup.heading.markdown\", \"markup.bold.markdown\"],\n settings: {\n fontStyle: \"bold\"\n }\n },\n {\n scope: [\"markup.italic.markdown\"],\n settings: {\n fontStyle: \"italic\"\n }\n },\n {\n scope: \"meta.link.inline.markdown\",\n settings: {\n fontStyle: \"underline\",\n foreground: variable(\"token-link\")\n }\n },\n {\n scope: [\"string\", \"markup.fenced_code\", \"markup.inline\"],\n settings: {\n foreground: variable(\"token-string\")\n }\n },\n {\n scope: [\"comment\", \"string.quoted.docstring.multi\"],\n settings: {\n foreground: variable(\"token-comment\")\n }\n },\n {\n scope: [\n \"constant.numeric\",\n \"constant.language\",\n \"constant.other.placeholder\",\n \"constant.character.format.placeholder\",\n \"variable.language.this\",\n \"variable.other.object\",\n \"variable.other.class\",\n \"variable.other.constant\",\n \"meta.property-name\",\n \"meta.property-value\",\n \"support\"\n ],\n settings: {\n foreground: variable(\"token-constant\")\n }\n },\n {\n scope: [\n \"keyword\",\n \"storage.modifier\",\n \"storage.type\",\n \"storage.control.clojure\",\n \"entity.name.function.clojure\",\n \"entity.name.tag.yaml\",\n \"support.function.node\",\n \"support.type.property-name.json\",\n \"punctuation.separator.key-value\",\n \"punctuation.definition.template-expression\"\n ],\n settings: {\n foreground: variable(\"token-keyword\")\n }\n },\n {\n scope: \"variable.parameter.function\",\n settings: {\n foreground: variable(\"token-parameter\")\n }\n },\n {\n scope: [\n \"support.function\",\n \"entity.name.type\",\n \"entity.other.inherited-class\",\n \"meta.function-call\",\n \"meta.instance.constructor\",\n \"entity.other.attribute-name\",\n \"entity.name.function\",\n \"constant.keyword.clojure\"\n ],\n settings: {\n foreground: variable(\"token-function\")\n }\n },\n {\n scope: [\n \"entity.name.tag\",\n \"string.quoted\",\n \"string.regexp\",\n \"string.interpolated\",\n \"string.template\",\n \"string.unquoted.plain.out.yaml\",\n \"keyword.other.template\"\n ],\n settings: {\n foreground: variable(\"token-string-expression\")\n }\n },\n {\n scope: [\n \"punctuation.definition.arguments\",\n \"punctuation.definition.dict\",\n \"punctuation.separator\",\n \"meta.function-call.arguments\"\n ],\n settings: {\n foreground: variable(\"token-punctuation\")\n }\n },\n {\n // [Custom] Markdown links\n scope: [\n \"markup.underline.link\",\n \"punctuation.definition.metadata.markdown\"\n ],\n settings: {\n foreground: variable(\"token-link\")\n }\n },\n {\n // [Custom] Markdown list\n scope: [\"beginning.punctuation.definition.list.markdown\"],\n settings: {\n foreground: variable(\"token-string\")\n }\n },\n {\n // [Custom] Markdown punctuation definition brackets\n scope: [\n \"punctuation.definition.string.begin.markdown\",\n \"punctuation.definition.string.end.markdown\",\n \"string.other.link.title.markdown\",\n \"string.other.link.description.markdown\"\n ],\n settings: {\n foreground: variable(\"token-keyword\")\n }\n },\n {\n // [Custom] Diff\n scope: [\n \"markup.inserted\",\n \"meta.diff.header.to-file\",\n \"punctuation.definition.inserted\"\n ],\n settings: {\n foreground: variable(\"token-inserted\")\n }\n },\n {\n scope: [\n \"markup.deleted\",\n \"meta.diff.header.from-file\",\n \"punctuation.definition.deleted\"\n ],\n settings: {\n foreground: variable(\"token-deleted\")\n }\n },\n {\n scope: [\n \"markup.changed\",\n \"punctuation.definition.changed\"\n ],\n settings: {\n foreground: variable(\"token-changed\")\n }\n }\n ]\n };\n if (!fontStyle) {\n theme.tokenColors = theme.tokenColors?.map((tokenColor) => {\n if (tokenColor.settings?.fontStyle)\n delete tokenColor.settings.fontStyle;\n return tokenColor;\n });\n }\n return theme;\n}\n\nexport { addClassToHast, applyColorReplacements, codeToHast, codeToHtml, codeToTokens, codeToTokensBase, codeToTokensWithThemes, createBundledHighlighter, createCssVariablesTheme, createHighlighterCore, createHighlighterCoreSync, createPositionConverter, createShikiInternal, createShikiInternalSync, createSingletonShorthands, createdBundledHighlighter, enableDeprecationWarnings, flatTokenVariants, getSingletonHighlighterCore, getTokenStyleObject, guessEmbeddedLanguages, hastToHtml, isNoneTheme, isPlainLang, isSpecialLang, isSpecialTheme, makeSingletonHighlighter, makeSingletonHighlighterCore, normalizeGetter, normalizeTheme, resolveColorReplacements, splitLines, splitToken, splitTokens, stringifyTokenStyle, toArray, tokenizeAnsiWithTheme, tokenizeWithTheme, tokensToHast, transformerDecorations, warnDeprecated };\n"],"names":["resolveColorReplacements","theme","options","replacements","themeName","key","value","applyColorReplacements","color","toArray","x","normalizeGetter","p","r","isPlainLang","lang","isSpecialLang","isNoneTheme","isSpecialTheme","addClassToHast","node","className","_a","targets","c","splitLines","code","preserveEnding","parts","index","lines","i","line","createPositionConverter","indexToPos","character","lineText","posToIndex","guessEmbeddedLanguages","_lang","highlighter","langs","match","fullType","bundle","l","DEFAULT_COLOR_LIGHT_DARK","COLOR_KEYS","splitToken","token","offsets","lastOffset","tokens","offset","splitTokens","breakpoints","sorted","a","b","breakpointsInToken","flatTokenVariants","merged","variantsOrder","cssVariablePrefix","defaultColor","colorsRendering","styles","t","getTokenStyleObject","styleKeys","mergedStyles","varKey","idx","keyName","cur","lightIndex","darkIndex","ShikiError$1","lightValue","darkValue","FontStyle","decorations","stringifyTokenStyle","_grammarStateMap","setLastGrammarStateToMap","keys","state","getLastGrammarStateFromMap","GrammarState","args","__publicField","stacksMap","stack","themes","INITIAL","getScopes","scopes","visited","pushScope","stack2","name","getGrammarStack","transformerDecorations","map","getContext","shiki","normalizePosition","converter","d","verifyIntersections","codeEl","ctx","applyLineSection","start","end","decoration","lineEl","text","startIndex","endIndex","stringify","children","applyDecoration","wrapper","applyLine","el","type","properties","transform","lineApplies","items","foo","j","bar","isFooHasBarStart","isFooHasBarEnd","isBarHasFooStart","isBarHasFooEnd","builtInTransformers","getTransformers","transformers","sortTransformersByEnforcement","pre","post","normal","transformer","namedColors","findSequence","position","nextEscape","nextClose","parseColor","sequence","colorMode","rgb","parseSequence","commands","codeInt","createAnsiSequenceParser","foreground","background","decorations2","findResult","styleToken","defaultNamedColorsMap","createColorPalette","namedColorsMap","namedColor","rgbColor","colorTable","getColorTable","levels","g","level","tableColor","defaultAnsiColors","tokenizeAnsiWithTheme","fileContents","colorReplacements","ansiPalette","themeColor","colorPalette","parser","bgColor","dimColor","fontStyle","hexMatch","hex","alpha","cssVarMatch","codeToTokensBase","internal","colorMap","_grammar","tokenizeWithTheme","getLastGrammarState","_tokenizeWithTheme","grammar","result","grammarState","tokenizeMaxLineLength","tokenizeTimeLimit","stateStack","actual","final","len","lineOffset","resultWithScopes","tokensWithScopes","tokensWithScopesIndex","tokensLength","nextStartIndex","metadata","EncodedTokenMetadata","themeSettingsSelectors","setting","selectors","scope","selector","tokenWithScopes","tokenWithScopesText","explainThemeScopesNameOnly","explainThemeScopesFull","themeSelectors","explainThemeScope","matchesOne","matches","parentScopes","selectorParentIndex","parentIndex","settings","selectorPieces","codeToTokensWithThemes","themedTokens","tokens2","syncThemesTokenization","mergedTokens","lineIdx","_token","tokenIdx","mergedToken","themeIdx","_","__","___","mergedGrammarState","s","outThemes","count","outLines","i2","indexes","current","minLength","n","codeToTokens","bg","fg","rootStyle","themeTokens","themeRegs","themesOrder","themeColorReplacements","mapThemeColors","_theme","property","cssVar","t2","codeToHast","transformerContext","_code","_options","input","mergeWhitespaces","mergeSameStyleTokens","mergeWhitespaceTokens","splitWhitespaceTokens","mergeAdjacentStyledTokens","contextSource","_b","tokensToHast","root","structure","tabindex","preNode","codeNode","lineNodes","context","lineNode","col","tokenNode","style","syntheticLines","currentLine","child","transformedCode","_c","_d","newLine","carryOnContent","firstOffset","couldMerge","leading","content","trailing","expanded","prevToken","prevStyle","currentStyle","isPrevDecorated","isDecorated","hastToHtml","toHtml","codeToHtml","VSCODE_FALLBACK_EDITOR_FG","VSCODE_FALLBACK_EDITOR_BG","RESOLVED_KEY","normalizeTheme","rawTheme","globalSetting","replacementCount","replacementMap","getReplacementColor","replaceFg","replaceBg","clone","replacement","_e","resolveLangs","resolveThemes","_emitDeprecation","warnDeprecated","message","version","ShikiError","resolveLangAlias","alias","resolved","Registry","Registry$1","_resolver","_themes","_langs","_alias","textmateTheme","Theme","embeddedLazilyBy","grammarConfig","e","langsGraphArray","missingLangs","dependents","embedded","embeddedLang","Resolver","engine","patterns","langIdOrAlias","scopeName","scopeParts","injections","subScopeName","instancesCount","createShikiInternalSync","isDisposed","resolver","_registry","_lastTheme","resolveLangAlias$1","getLanguage","ensureNotDisposed","getTheme","setTheme","getLoadedThemes","getLoadedLanguages","loadLanguageSync","langs2","loadLanguage","loadThemeSync","themes2","loadTheme","dispose","createShikiInternal","createHighlighterCore","options2","createBundledHighlighter","bundledLanguages","bundledThemes","createHighlighter","resolveLang","resolveTheme","core","makeSingletonHighlighter","_shiki","getSingletonHighlighter","createSingletonShorthands","config","get"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs82.js","sources":["../node_modules/.pnpm/@shikijs+engine-oniguruma@3.22.0/node_modules/@shikijs/engine-oniguruma/dist/index.mjs"],"sourcesContent":["class ShikiError extends Error {\n constructor(message) {\n super(message);\n this.name = \"ShikiError\";\n }\n}\n\nfunction getHeapMax() {\n return 2147483648;\n}\nfunction _emscripten_get_now() {\n return typeof performance !== \"undefined\" ? performance.now() : Date.now();\n}\nconst alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;\nasync function main(init) {\n let wasmMemory;\n let buffer;\n const binding = {};\n function updateGlobalBufferAndViews(buf) {\n buffer = buf;\n binding.HEAPU8 = new Uint8Array(buf);\n binding.HEAPU32 = new Uint32Array(buf);\n }\n function _emscripten_memcpy_big(dest, src, num) {\n binding.HEAPU8.copyWithin(dest, src, src + num);\n }\n function emscripten_realloc_buffer(size) {\n try {\n wasmMemory.grow(size - buffer.byteLength + 65535 >>> 16);\n updateGlobalBufferAndViews(wasmMemory.buffer);\n return 1;\n } catch {\n }\n }\n function _emscripten_resize_heap(requestedSize) {\n const oldSize = binding.HEAPU8.length;\n requestedSize = requestedSize >>> 0;\n const maxHeapSize = getHeapMax();\n if (requestedSize > maxHeapSize)\n return false;\n for (let cutDown = 1; cutDown <= 4; cutDown *= 2) {\n let overGrownHeapSize = oldSize * (1 + 0.2 / cutDown);\n overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);\n const newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));\n const replacement = emscripten_realloc_buffer(newSize);\n if (replacement)\n return true;\n }\n return false;\n }\n const UTF8Decoder = typeof TextDecoder != \"undefined\" ? new TextDecoder(\"utf8\") : void 0;\n function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead = 1024) {\n const endIdx = idx + maxBytesToRead;\n let endPtr = idx;\n while (heapOrArray[endPtr] && !(endPtr >= endIdx)) ++endPtr;\n if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {\n return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));\n }\n let str = \"\";\n while (idx < endPtr) {\n let u0 = heapOrArray[idx++];\n if (!(u0 & 128)) {\n str += String.fromCharCode(u0);\n continue;\n }\n const u1 = heapOrArray[idx++] & 63;\n if ((u0 & 224) === 192) {\n str += String.fromCharCode((u0 & 31) << 6 | u1);\n continue;\n }\n const u2 = heapOrArray[idx++] & 63;\n if ((u0 & 240) === 224) {\n u0 = (u0 & 15) << 12 | u1 << 6 | u2;\n } else {\n u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;\n }\n if (u0 < 65536) {\n str += String.fromCharCode(u0);\n } else {\n const ch = u0 - 65536;\n str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);\n }\n }\n return str;\n }\n function UTF8ToString(ptr, maxBytesToRead) {\n return ptr ? UTF8ArrayToString(binding.HEAPU8, ptr, maxBytesToRead) : \"\";\n }\n const asmLibraryArg = {\n emscripten_get_now: _emscripten_get_now,\n emscripten_memcpy_big: _emscripten_memcpy_big,\n emscripten_resize_heap: _emscripten_resize_heap,\n fd_write: () => 0\n };\n async function createWasm() {\n const info = {\n env: asmLibraryArg,\n wasi_snapshot_preview1: asmLibraryArg\n };\n const exports$1 = await init(info);\n wasmMemory = exports$1.memory;\n updateGlobalBufferAndViews(wasmMemory.buffer);\n Object.assign(binding, exports$1);\n binding.UTF8ToString = UTF8ToString;\n }\n await createWasm();\n return binding;\n}\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nlet onigBinding = null;\nfunction throwLastOnigError(onigBinding2) {\n throw new ShikiError(onigBinding2.UTF8ToString(onigBinding2.getLastOnigError()));\n}\nclass UtfString {\n constructor(str) {\n __publicField(this, \"utf16Length\");\n __publicField(this, \"utf8Length\");\n __publicField(this, \"utf16Value\");\n __publicField(this, \"utf8Value\");\n __publicField(this, \"utf16OffsetToUtf8\");\n __publicField(this, \"utf8OffsetToUtf16\");\n const utf16Length = str.length;\n const utf8Length = UtfString._utf8ByteLength(str);\n const computeIndicesMapping = utf8Length !== utf16Length;\n const utf16OffsetToUtf8 = computeIndicesMapping ? new Uint32Array(utf16Length + 1) : null;\n if (computeIndicesMapping)\n utf16OffsetToUtf8[utf16Length] = utf8Length;\n const utf8OffsetToUtf16 = computeIndicesMapping ? new Uint32Array(utf8Length + 1) : null;\n if (computeIndicesMapping)\n utf8OffsetToUtf16[utf8Length] = utf16Length;\n const utf8Value = new Uint8Array(utf8Length);\n let i8 = 0;\n for (let i16 = 0; i16 < utf16Length; i16++) {\n const charCode = str.charCodeAt(i16);\n let codePoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 55296 && charCode <= 56319) {\n if (i16 + 1 < utf16Length) {\n const nextCharCode = str.charCodeAt(i16 + 1);\n if (nextCharCode >= 56320 && nextCharCode <= 57343) {\n codePoint = (charCode - 55296 << 10) + 65536 | nextCharCode - 56320;\n wasSurrogatePair = true;\n }\n }\n }\n if (computeIndicesMapping) {\n utf16OffsetToUtf8[i16] = i8;\n if (wasSurrogatePair)\n utf16OffsetToUtf8[i16 + 1] = i8;\n if (codePoint <= 127) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n } else if (codePoint <= 2047) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n } else if (codePoint <= 65535) {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n } else {\n utf8OffsetToUtf16[i8 + 0] = i16;\n utf8OffsetToUtf16[i8 + 1] = i16;\n utf8OffsetToUtf16[i8 + 2] = i16;\n utf8OffsetToUtf16[i8 + 3] = i16;\n }\n }\n if (codePoint <= 127) {\n utf8Value[i8++] = codePoint;\n } else if (codePoint <= 2047) {\n utf8Value[i8++] = 192 | (codePoint & 1984) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n } else if (codePoint <= 65535) {\n utf8Value[i8++] = 224 | (codePoint & 61440) >>> 12;\n utf8Value[i8++] = 128 | (codePoint & 4032) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n } else {\n utf8Value[i8++] = 240 | (codePoint & 1835008) >>> 18;\n utf8Value[i8++] = 128 | (codePoint & 258048) >>> 12;\n utf8Value[i8++] = 128 | (codePoint & 4032) >>> 6;\n utf8Value[i8++] = 128 | (codePoint & 63) >>> 0;\n }\n if (wasSurrogatePair)\n i16++;\n }\n this.utf16Length = utf16Length;\n this.utf8Length = utf8Length;\n this.utf16Value = str;\n this.utf8Value = utf8Value;\n this.utf16OffsetToUtf8 = utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utf8OffsetToUtf16;\n }\n static _utf8ByteLength(str) {\n let result = 0;\n for (let i = 0, len = str.length; i < len; i++) {\n const charCode = str.charCodeAt(i);\n let codepoint = charCode;\n let wasSurrogatePair = false;\n if (charCode >= 55296 && charCode <= 56319) {\n if (i + 1 < len) {\n const nextCharCode = str.charCodeAt(i + 1);\n if (nextCharCode >= 56320 && nextCharCode <= 57343) {\n codepoint = (charCode - 55296 << 10) + 65536 | nextCharCode - 56320;\n wasSurrogatePair = true;\n }\n }\n }\n if (codepoint <= 127)\n result += 1;\n else if (codepoint <= 2047)\n result += 2;\n else if (codepoint <= 65535)\n result += 3;\n else\n result += 4;\n if (wasSurrogatePair)\n i++;\n }\n return result;\n }\n createString(onigBinding2) {\n const result = onigBinding2.omalloc(this.utf8Length);\n onigBinding2.HEAPU8.set(this.utf8Value, result);\n return result;\n }\n}\nconst _OnigString = class _OnigString {\n constructor(str) {\n __publicField(this, \"id\", ++_OnigString.LAST_ID);\n __publicField(this, \"_onigBinding\");\n __publicField(this, \"content\");\n __publicField(this, \"utf16Length\");\n __publicField(this, \"utf8Length\");\n __publicField(this, \"utf16OffsetToUtf8\");\n __publicField(this, \"utf8OffsetToUtf16\");\n __publicField(this, \"ptr\");\n if (!onigBinding)\n throw new ShikiError(\"Must invoke loadWasm first.\");\n this._onigBinding = onigBinding;\n this.content = str;\n const utfString = new UtfString(str);\n this.utf16Length = utfString.utf16Length;\n this.utf8Length = utfString.utf8Length;\n this.utf16OffsetToUtf8 = utfString.utf16OffsetToUtf8;\n this.utf8OffsetToUtf16 = utfString.utf8OffsetToUtf16;\n if (this.utf8Length < 1e4 && !_OnigString._sharedPtrInUse) {\n if (!_OnigString._sharedPtr)\n _OnigString._sharedPtr = onigBinding.omalloc(1e4);\n _OnigString._sharedPtrInUse = true;\n onigBinding.HEAPU8.set(utfString.utf8Value, _OnigString._sharedPtr);\n this.ptr = _OnigString._sharedPtr;\n } else {\n this.ptr = utfString.createString(onigBinding);\n }\n }\n convertUtf8OffsetToUtf16(utf8Offset) {\n if (this.utf8OffsetToUtf16) {\n if (utf8Offset < 0)\n return 0;\n if (utf8Offset > this.utf8Length)\n return this.utf16Length;\n return this.utf8OffsetToUtf16[utf8Offset];\n }\n return utf8Offset;\n }\n convertUtf16OffsetToUtf8(utf16Offset) {\n if (this.utf16OffsetToUtf8) {\n if (utf16Offset < 0)\n return 0;\n if (utf16Offset > this.utf16Length)\n return this.utf8Length;\n return this.utf16OffsetToUtf8[utf16Offset];\n }\n return utf16Offset;\n }\n dispose() {\n if (this.ptr === _OnigString._sharedPtr)\n _OnigString._sharedPtrInUse = false;\n else\n this._onigBinding.ofree(this.ptr);\n }\n};\n__publicField(_OnigString, \"LAST_ID\", 0);\n__publicField(_OnigString, \"_sharedPtr\", 0);\n// a pointer to a string of 10000 bytes\n__publicField(_OnigString, \"_sharedPtrInUse\", false);\nlet OnigString = _OnigString;\nclass OnigScanner {\n constructor(patterns) {\n __publicField(this, \"_onigBinding\");\n __publicField(this, \"_ptr\");\n if (!onigBinding)\n throw new ShikiError(\"Must invoke loadWasm first.\");\n const strPtrsArr = [];\n const strLenArr = [];\n for (let i = 0, len = patterns.length; i < len; i++) {\n const utfString = new UtfString(patterns[i]);\n strPtrsArr[i] = utfString.createString(onigBinding);\n strLenArr[i] = utfString.utf8Length;\n }\n const strPtrsPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strPtrsArr, strPtrsPtr / 4);\n const strLenPtr = onigBinding.omalloc(4 * patterns.length);\n onigBinding.HEAPU32.set(strLenArr, strLenPtr / 4);\n const scannerPtr = onigBinding.createOnigScanner(strPtrsPtr, strLenPtr, patterns.length);\n for (let i = 0, len = patterns.length; i < len; i++)\n onigBinding.ofree(strPtrsArr[i]);\n onigBinding.ofree(strLenPtr);\n onigBinding.ofree(strPtrsPtr);\n if (scannerPtr === 0)\n throwLastOnigError(onigBinding);\n this._onigBinding = onigBinding;\n this._ptr = scannerPtr;\n }\n dispose() {\n this._onigBinding.freeOnigScanner(this._ptr);\n }\n findNextMatchSync(string, startPosition, arg) {\n let options = 0 /* None */;\n if (typeof arg === \"number\") {\n options = arg;\n }\n if (typeof string === \"string\") {\n string = new OnigString(string);\n const result = this._findNextMatchSync(string, startPosition, false, options);\n string.dispose();\n return result;\n }\n return this._findNextMatchSync(string, startPosition, false, options);\n }\n _findNextMatchSync(string, startPosition, debugCall, options) {\n const onigBinding2 = this._onigBinding;\n const resultPtr = onigBinding2.findNextOnigScannerMatch(this._ptr, string.id, string.ptr, string.utf8Length, string.convertUtf16OffsetToUtf8(startPosition), options);\n if (resultPtr === 0) {\n return null;\n }\n const HEAPU32 = onigBinding2.HEAPU32;\n let offset = resultPtr / 4;\n const index = HEAPU32[offset++];\n const count = HEAPU32[offset++];\n const captureIndices = [];\n for (let i = 0; i < count; i++) {\n const beg = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n const end = string.convertUtf8OffsetToUtf16(HEAPU32[offset++]);\n captureIndices[i] = {\n start: beg,\n end,\n length: end - beg\n };\n }\n return {\n index,\n captureIndices\n };\n }\n}\nfunction isInstantiatorOptionsObject(dataOrOptions) {\n return typeof dataOrOptions.instantiator === \"function\";\n}\nfunction isInstantiatorModule(dataOrOptions) {\n return typeof dataOrOptions.default === \"function\";\n}\nfunction isDataOptionsObject(dataOrOptions) {\n return typeof dataOrOptions.data !== \"undefined\";\n}\nfunction isResponse(dataOrOptions) {\n return typeof Response !== \"undefined\" && dataOrOptions instanceof Response;\n}\nfunction isArrayBuffer(data) {\n return typeof ArrayBuffer !== \"undefined\" && (data instanceof ArrayBuffer || ArrayBuffer.isView(data)) || typeof Buffer !== \"undefined\" && Buffer.isBuffer?.(data) || typeof SharedArrayBuffer !== \"undefined\" && data instanceof SharedArrayBuffer || typeof Uint32Array !== \"undefined\" && data instanceof Uint32Array;\n}\nlet initPromise;\nfunction loadWasm(options) {\n if (initPromise)\n return initPromise;\n async function _load() {\n onigBinding = await main(async (info) => {\n let instance = options;\n instance = await instance;\n if (typeof instance === \"function\")\n instance = await instance(info);\n if (typeof instance === \"function\")\n instance = await instance(info);\n if (isInstantiatorOptionsObject(instance)) {\n instance = await instance.instantiator(info);\n } else if (isInstantiatorModule(instance)) {\n instance = await instance.default(info);\n } else {\n if (isDataOptionsObject(instance))\n instance = instance.data;\n if (isResponse(instance)) {\n if (typeof WebAssembly.instantiateStreaming === \"function\")\n instance = await _makeResponseStreamingLoader(instance)(info);\n else\n instance = await _makeResponseNonStreamingLoader(instance)(info);\n } else if (isArrayBuffer(instance)) {\n instance = await _makeArrayBufferLoader(instance)(info);\n } else if (instance instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance)(info);\n } else if (\"default\" in instance && instance.default instanceof WebAssembly.Module) {\n instance = await _makeArrayBufferLoader(instance.default)(info);\n }\n }\n if (\"instance\" in instance)\n instance = instance.instance;\n if (\"exports\" in instance)\n instance = instance.exports;\n return instance;\n });\n }\n initPromise = _load();\n return initPromise;\n}\nfunction _makeArrayBufferLoader(data) {\n return (importObject) => WebAssembly.instantiate(data, importObject);\n}\nfunction _makeResponseStreamingLoader(data) {\n return (importObject) => WebAssembly.instantiateStreaming(data, importObject);\n}\nfunction _makeResponseNonStreamingLoader(data) {\n return async (importObject) => {\n const arrayBuffer = await data.arrayBuffer();\n return WebAssembly.instantiate(arrayBuffer, importObject);\n };\n}\n\nlet _defaultWasmLoader;\nfunction setDefaultWasmLoader(_loader) {\n _defaultWasmLoader = _loader;\n}\nfunction getDefaultWasmLoader() {\n return _defaultWasmLoader;\n}\nasync function createOnigurumaEngine(options) {\n if (options)\n await loadWasm(options);\n return {\n createScanner(patterns) {\n return new OnigScanner(patterns.map((p) => typeof p === \"string\" ? p : p.source));\n },\n createString(s) {\n return new OnigString(s);\n }\n };\n}\n\nexport { createOnigurumaEngine, getDefaultWasmLoader, loadWasm, setDefaultWasmLoader };\n"],"names":["ShikiError","message","getHeapMax","_emscripten_get_now","alignUp","x","multiple","main","init","wasmMemory","buffer","binding","updateGlobalBufferAndViews","buf","_emscripten_memcpy_big","dest","src","num","emscripten_realloc_buffer","size","_emscripten_resize_heap","requestedSize","oldSize","maxHeapSize","cutDown","overGrownHeapSize","newSize","UTF8Decoder","UTF8ArrayToString","heapOrArray","idx","maxBytesToRead","endIdx","endPtr","str","u0","u1","u2","ch","UTF8ToString","ptr","asmLibraryArg","createWasm","exports$1","__defProp","__defNormalProp","obj","key","value","__publicField","onigBinding","throwLastOnigError","onigBinding2","UtfString","utf16Length","utf8Length","computeIndicesMapping","utf16OffsetToUtf8","utf8OffsetToUtf16","utf8Value","i8","i16","charCode","codePoint","wasSurrogatePair","nextCharCode","result","i","len","codepoint","_OnigString","utfString","utf8Offset","utf16Offset","OnigString","OnigScanner","patterns","strPtrsArr","strLenArr","strPtrsPtr","strLenPtr","scannerPtr","string","startPosition","arg","options","debugCall","resultPtr","HEAPU32","offset","index","count","captureIndices","beg","end","isInstantiatorOptionsObject","dataOrOptions","isInstantiatorModule","isDataOptionsObject","isResponse","isArrayBuffer","data","_a","initPromise","loadWasm","_load","info","instance","_makeResponseStreamingLoader","_makeResponseNonStreamingLoader","_makeArrayBufferLoader","importObject","arrayBuffer","createOnigurumaEngine","p","s"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +1,3 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=r=>Object.freeze(Object.defineProperty({__proto__:null,default:r},Symbol.toStringTag,{value:"Module"})),i=[{id:"abap",name:"ABAP",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs91.js"))))},{id:"actionscript-3",name:"ActionScript",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs92.js"))))},{id:"ada",name:"Ada",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs93.js"))))},{id:"angular-html",name:"Angular HTML",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs94.js"))))},{id:"angular-ts",name:"Angular TypeScript",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs95.js"))))},{id:"apache",name:"Apache Conf",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs96.js"))))},{id:"apex",name:"Apex",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs97.js"))))},{id:"apl",name:"APL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs98.js"))))},{id:"applescript",name:"AppleScript",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs99.js"))))},{id:"ara",name:"Ara",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs100.js"))))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs101.js"))))},{id:"asm",name:"Assembly",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs102.js"))))},{id:"astro",name:"Astro",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs103.js"))))},{id:"awk",name:"AWK",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs104.js"))))},{id:"ballerina",name:"Ballerina",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs105.js"))))},{id:"bat",name:"Batch File",aliases:["batch"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs106.js"))))},{id:"beancount",name:"Beancount",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs107.js"))))},{id:"berry",name:"Berry",aliases:["be"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs108.js"))))},{id:"bibtex",name:"BibTeX",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs109.js"))))},{id:"bicep",name:"Bicep",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs110.js"))))},{id:"blade",name:"Blade",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs111.js"))))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs112.js"))))},{id:"c",name:"C",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs113.js"))))},{id:"c3",name:"C3",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs114.js"))))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs115.js"))))},{id:"cairo",name:"Cairo",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs116.js"))))},{id:"clarity",name:"Clarity",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs117.js"))))},{id:"clojure",name:"Clojure",aliases:["clj"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs118.js"))))},{id:"cmake",name:"CMake",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs119.js"))))},{id:"cobol",name:"COBOL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs120.js"))))},{id:"codeowners",name:"CODEOWNERS",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs121.js"))))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs122.js"))))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs123.js"))))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs124.js"))))},{id:"coq",name:"Coq",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs125.js"))))},{id:"cpp",name:"C++",aliases:["c++"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs126.js"))))},{id:"crystal",name:"Crystal",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs127.js"))))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs128.js"))))},{id:"css",name:"CSS",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs129.js"))))},{id:"csv",name:"CSV",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs130.js"))))},{id:"cue",name:"CUE",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs131.js"))))},{id:"cypher",name:"Cypher",aliases:["cql"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs132.js"))))},{id:"d",name:"D",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs133.js"))))},{id:"dart",name:"Dart",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs134.js"))))},{id:"dax",name:"DAX",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs135.js"))))},{id:"desktop",name:"Desktop",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs136.js"))))},{id:"diff",name:"Diff",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs137.js"))))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs138.js"))))},{id:"dotenv",name:"dotEnv",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs139.js"))))},{id:"dream-maker",name:"Dream Maker",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs140.js"))))},{id:"edge",name:"Edge",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs141.js"))))},{id:"elixir",name:"Elixir",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs142.js"))))},{id:"elm",name:"Elm",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs143.js"))))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs144.js"))))},{id:"erb",name:"ERB",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs145.js"))))},{id:"erlang",name:"Erlang",aliases:["erl"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs146.js"))))},{id:"fennel",name:"Fennel",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs147.js"))))},{id:"fish",name:"Fish",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs148.js"))))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs149.js"))))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs150.js"))))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs151.js"))))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs152.js"))))},{id:"gdresource",name:"GDResource",aliases:["tscn","tres"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs153.js"))))},{id:"gdscript",name:"GDScript",aliases:["gd"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs154.js"))))},{id:"gdshader",name:"GDShader",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs155.js"))))},{id:"genie",name:"Genie",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs156.js"))))},{id:"gherkin",name:"Gherkin",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs157.js"))))},{id:"git-commit",name:"Git Commit Message",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs158.js"))))},{id:"git-rebase",name:"Git Rebase Message",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs159.js"))))},{id:"gleam",name:"Gleam",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs160.js"))))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs161.js"))))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs162.js"))))},{id:"glsl",name:"GLSL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs163.js"))))},{id:"gn",name:"GN",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs164.js"))))},{id:"gnuplot",name:"Gnuplot",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs165.js"))))},{id:"go",name:"Go",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs166.js"))))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs167.js"))))},{id:"groovy",name:"Groovy",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs168.js"))))},{id:"hack",name:"Hack",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs169.js"))))},{id:"haml",name:"Ruby Haml",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs170.js"))))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs171.js"))))},{id:"haskell",name:"Haskell",aliases:["hs"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs172.js"))))},{id:"haxe",name:"Haxe",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs173.js"))))},{id:"hcl",name:"HashiCorp HCL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs174.js"))))},{id:"hjson",name:"Hjson",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs175.js"))))},{id:"hlsl",name:"HLSL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs176.js"))))},{id:"html",name:"HTML",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs177.js"))))},{id:"html-derivative",name:"HTML (Derivative)",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs178.js"))))},{id:"http",name:"HTTP",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs179.js"))))},{id:"hurl",name:"Hurl",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs180.js"))))},{id:"hxml",name:"HXML",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs181.js"))))},{id:"hy",name:"Hy",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs182.js"))))},{id:"imba",name:"Imba",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs183.js"))))},{id:"ini",name:"INI",aliases:["properties"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs184.js"))))},{id:"java",name:"Java",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs185.js"))))},{id:"javascript",name:"JavaScript",aliases:["js","cjs","mjs"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs186.js"))))},{id:"jinja",name:"Jinja",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs187.js"))))},{id:"jison",name:"Jison",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs188.js"))))},{id:"json",name:"JSON",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs189.js"))))},{id:"json5",name:"JSON5",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs190.js"))))},{id:"jsonc",name:"JSON with Comments",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs191.js"))))},{id:"jsonl",name:"JSON Lines",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs192.js"))))},{id:"jsonnet",name:"Jsonnet",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs193.js"))))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs194.js"))))},{id:"jsx",name:"JSX",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs195.js"))))},{id:"julia",name:"Julia",aliases:["jl"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs196.js"))))},{id:"kdl",name:"KDL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs197.js"))))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs198.js"))))},{id:"kusto",name:"Kusto",aliases:["kql"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs199.js"))))},{id:"latex",name:"LaTeX",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs200.js"))))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs201.js"))))},{id:"less",name:"Less",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs202.js"))))},{id:"liquid",name:"Liquid",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs203.js"))))},{id:"llvm",name:"LLVM IR",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs204.js"))))},{id:"log",name:"Log file",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs205.js"))))},{id:"logo",name:"Logo",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs206.js"))))},{id:"lua",name:"Lua",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs207.js"))))},{id:"luau",name:"Luau",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs208.js"))))},{id:"make",name:"Makefile",aliases:["makefile"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs209.js"))))},{id:"markdown",name:"Markdown",aliases:["md"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs210.js"))))},{id:"marko",name:"Marko",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs211.js"))))},{id:"matlab",name:"MATLAB",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs212.js"))))},{id:"mdc",name:"MDC",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs213.js"))))},{id:"mdx",name:"MDX",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs214.js"))))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs215.js"))))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs216.js"))))},{id:"mojo",name:"Mojo",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs217.js"))))},{id:"moonbit",name:"MoonBit",aliases:["mbt","mbti"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs218.js"))))},{id:"move",name:"Move",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs219.js"))))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs220.js"))))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs221.js"))))},{id:"nginx",name:"Nginx",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs222.js"))))},{id:"nim",name:"Nim",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs223.js"))))},{id:"nix",name:"Nix",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs224.js"))))},{id:"nushell",name:"nushell",aliases:["nu"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs225.js"))))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs226.js"))))},{id:"objective-cpp",name:"Objective-C++",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs227.js"))))},{id:"ocaml",name:"OCaml",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs228.js"))))},{id:"odin",name:"Odin",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs229.js"))))},{id:"openscad",name:"OpenSCAD",aliases:["scad"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs230.js"))))},{id:"pascal",name:"Pascal",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs231.js"))))},{id:"perl",name:"Perl",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs232.js"))))},{id:"php",name:"PHP",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs233.js"))))},{id:"pkl",name:"Pkl",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs234.js"))))},{id:"plsql",name:"PL/SQL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs235.js"))))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs236.js"))))},{id:"polar",name:"Polar",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs237.js"))))},{id:"postcss",name:"PostCSS",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs238.js"))))},{id:"powerquery",name:"PowerQuery",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs239.js"))))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs240.js"))))},{id:"prisma",name:"Prisma",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs241.js"))))},{id:"prolog",name:"Prolog",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs242.js"))))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs243.js"))))},{id:"pug",name:"Pug",aliases:["jade"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs244.js"))))},{id:"puppet",name:"Puppet",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs245.js"))))},{id:"purescript",name:"PureScript",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs246.js"))))},{id:"python",name:"Python",aliases:["py"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs247.js"))))},{id:"qml",name:"QML",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs248.js"))))},{id:"qmldir",name:"QML Directory",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs249.js"))))},{id:"qss",name:"Qt Style Sheets",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs250.js"))))},{id:"r",name:"R",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs251.js"))))},{id:"racket",name:"Racket",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs252.js"))))},{id:"raku",name:"Raku",aliases:["perl6"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs253.js"))))},{id:"razor",name:"ASP.NET Razor",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs254.js"))))},{id:"reg",name:"Windows Registry Script",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs255.js"))))},{id:"regexp",name:"RegExp",aliases:["regex"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs256.js"))))},{id:"rel",name:"Rel",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs257.js"))))},{id:"riscv",name:"RISC-V",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs258.js"))))},{id:"ron",name:"RON",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs259.js"))))},{id:"rosmsg",name:"ROS Interface",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs260.js"))))},{id:"rst",name:"reStructuredText",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs261.js"))))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs262.js"))))},{id:"rust",name:"Rust",aliases:["rs"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs263.js"))))},{id:"sas",name:"SAS",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs264.js"))))},{id:"sass",name:"Sass",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs265.js"))))},{id:"scala",name:"Scala",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs266.js"))))},{id:"scheme",name:"Scheme",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs267.js"))))},{id:"scss",name:"SCSS",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs268.js"))))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs269.js"))))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs270.js"))))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs271.js"))))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs272.js"))))},{id:"smalltalk",name:"Smalltalk",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs273.js"))))},{id:"solidity",name:"Solidity",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs274.js"))))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs275.js"))))},{id:"sparql",name:"SPARQL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs276.js"))))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs277.js"))))},{id:"sql",name:"SQL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs278.js"))))},{id:"ssh-config",name:"SSH Config",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs279.js"))))},{id:"stata",name:"Stata",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs280.js"))))},{id:"stylus",name:"Stylus",aliases:["styl"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs281.js"))))},{id:"surrealql",name:"SurrealQL",aliases:["surql"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs282.js"))))},{id:"svelte",name:"Svelte",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs283.js"))))},{id:"swift",name:"Swift",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs284.js"))))},{id:"system-verilog",name:"SystemVerilog",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs285.js"))))},{id:"systemd",name:"Systemd Units",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs286.js"))))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs287.js"))))},{id:"tasl",name:"Tasl",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs288.js"))))},{id:"tcl",name:"Tcl",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs289.js"))))},{id:"templ",name:"Templ",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs290.js"))))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs291.js"))))},{id:"tex",name:"TeX",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs292.js"))))},{id:"toml",name:"TOML",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs293.js"))))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs294.js"))))},{id:"tsv",name:"TSV",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs295.js"))))},{id:"tsx",name:"TSX",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs296.js"))))},{id:"turtle",name:"Turtle",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs297.js"))))},{id:"twig",name:"Twig",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs298.js"))))},{id:"typescript",name:"TypeScript",aliases:["ts","cts","mts"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs299.js"))))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs300.js"))))},{id:"typst",name:"Typst",aliases:["typ"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs301.js"))))},{id:"v",name:"V",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs302.js"))))},{id:"vala",name:"Vala",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs303.js"))))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs304.js"))))},{id:"verilog",name:"Verilog",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs305.js"))))},{id:"vhdl",name:"VHDL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs306.js"))))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs307.js"))))},{id:"vue",name:"Vue",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs308.js"))))},{id:"vue-html",name:"Vue HTML",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs309.js"))))},{id:"vue-vine",name:"Vue Vine",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs310.js"))))},{id:"vyper",name:"Vyper",aliases:["vy"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs311.js"))))},{id:"wasm",name:"WebAssembly",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs312.js"))))},{id:"wenyan",name:"Wenyan",aliases:["文言"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs313.js"))))},{id:"wgsl",name:"WGSL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs314.js"))))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs315.js"))))},{id:"wit",name:"WebAssembly Interface Types",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs316.js"))))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs317.js"))))},{id:"xml",name:"XML",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs318.js"))))},{id:"xsl",name:"XSL",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs319.js"))))},{id:"yaml",name:"YAML",aliases:["yml"],import:(()=>Promise.resolve().then(()=>e(require("./index.cjs320.js"))))},{id:"zenscript",name:"ZenScript",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs321.js"))))},{id:"zig",name:"Zig",import:(()=>Promise.resolve().then(()=>e(require("./index.cjs322.js"))))}],s=Object.fromEntries(i.map(r=>[r.id,r.import])),m=Object.fromEntries(i.flatMap(r=>{var o;return((o=r.aliases)==null?void 0:o.map(t=>[t,r.import]))||[]})),a={...s,...m};exports.bundledLanguages=a;exports.bundledLanguagesAlias=m;exports.bundledLanguagesBase=s;exports.bundledLanguagesInfo=i;
1
+ "use client";"use strict";var Me=Object.defineProperty;var Oe=(n,t,e)=>t in n?Me(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e;var v=(n,t,e)=>Oe(n,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const L=require("./index.cjs86.js"),k=require("./index.cjs89.js"),je=require("./index.cjs90.js");function H(n,t){const e=typeof n=="string"?{}:{...n.colorReplacements},r=typeof n=="string"?n:n.name;for(const[s,o]of Object.entries((t==null?void 0:t.colorReplacements)||{}))typeof o=="string"?e[s]=o:s===r&&Object.assign(e,o);return e}function $(n,t){return n&&((t==null?void 0:t[n==null?void 0:n.toLowerCase()])||n)}function de(n){return Array.isArray(n)?n:[n]}async function ee(n){return Promise.resolve(typeof n=="function"?n():n).then(t=>t.default||t)}function Y(n){return!n||["plaintext","txt","text","plain"].includes(n)}function te(n){return n==="ansi"||Y(n)}function q(n){return n==="none"}function ne(n){return q(n)}function re(n,t){var r;if(!t)return n;n.properties||(n.properties={}),(r=n.properties).class||(r.class=[]),typeof n.properties.class=="string"&&(n.properties.class=n.properties.class.split(/\s+/g)),Array.isArray(n.properties.class)||(n.properties.class=[]);const e=Array.isArray(t)?t:t.split(/\s+/g);for(const s of e)s&&!n.properties.class.includes(s)&&n.properties.class.push(s);return n}function z(n,t=!1){var o;if(n.length===0)return[["",0]];const e=n.split(/(\r?\n)/g);let r=0;const s=[];for(let a=0;a<e.length;a+=2){const i=t?e[a]+(e[a+1]||""):e[a];s.push([i,r]),r+=e[a].length,r+=((o=e[a+1])==null?void 0:o.length)||0}return s}function me(n){const t=z(n,!0).map(([s])=>s);function e(s){if(s===n.length)return{line:t.length-1,character:t[t.length-1].length};let o=s,a=0;for(const i of t){if(o<i.length)break;o-=i.length,a++}return{line:a,character:o}}function r(s,o){let a=0;for(let i=0;i<s;i++)a+=t[i].length;return a+=o,a}return{lines:t,indexToPos:e,posToIndex:r}}function Ge(n,t,e){const r=new Set;for(const o of n.matchAll(/:?lang=["']([^"']+)["']/g)){const a=o[1].toLowerCase().trim();a&&r.add(a)}for(const o of n.matchAll(/(?:```|~~~)([\w-]+)/g)){const a=o[1].toLowerCase().trim();a&&r.add(a)}for(const o of n.matchAll(/\\begin\{([\w-]+)\}/g)){const a=o[1].toLowerCase().trim();a&&r.add(a)}for(const o of n.matchAll(/<script\s+(?:type|lang)=["']([^"']+)["']/gi)){const a=o[1].toLowerCase().trim(),i=a.includes("/")?a.split("/").pop():a;i&&r.add(i)}if(!e)return Array.from(r);const s=e.getBundledLanguages();return Array.from(r).filter(o=>o&&s[o])}const se="light-dark()",He=["color","background-color"];function pe(n,t){let e=0;const r=[];for(const s of t)s>e&&r.push({...n,content:n.content.slice(e,s),offset:n.offset+e}),e=s;return e<n.content.length&&r.push({...n,content:n.content.slice(e),offset:n.offset+e}),r}function ye(n,t){const e=Array.from(t instanceof Set?t:new Set(t)).sort((r,s)=>r-s);return e.length?n.map(r=>r.flatMap(s=>{const o=e.filter(a=>s.offset<a&&a<s.offset+s.content.length).map(a=>a-s.offset).sort((a,i)=>a-i);return o.length?pe(s,o):s})):n}function Se(n,t,e,r,s="css-vars"){const o={content:n.content,explanation:n.explanation,offset:n.offset},a=t.map(u=>R(n.variants[u])),i=new Set(a.flatMap(u=>Object.keys(u))),l={},c=(u,f)=>{const h=f==="color"?"":f==="background-color"?"-bg":`-${f}`;return e+t[u]+(f==="color"?"":h)};return a.forEach((u,f)=>{for(const h of i){const d=u[h]||"inherit";if(f===0&&r&&He.includes(h))if(r===se&&a.length>1){const m=t.findIndex(S=>S==="light"),y=t.findIndex(S=>S==="dark");if(m===-1||y===-1)throw new L.ShikiError('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');const T=a[m][h]||"inherit",p=a[y][h]||"inherit";l[h]=`light-dark(${T}, ${p})`,s==="css-vars"&&(l[c(f,h)]=d)}else l[h]=d;else s==="css-vars"&&(l[c(f,h)]=d)}}),o.htmlStyle=l,o}function R(n){const t={};if(n.color&&(t.color=n.color),n.bgColor&&(t["background-color"]=n.bgColor),n.fontStyle){n.fontStyle&k.FontStyle.Italic&&(t["font-style"]="italic"),n.fontStyle&k.FontStyle.Bold&&(t["font-weight"]="bold");const e=[];n.fontStyle&k.FontStyle.Underline&&e.push("underline"),n.fontStyle&k.FontStyle.Strikethrough&&e.push("line-through"),e.length&&(t["text-decoration"]=e.join(" "))}return t}function V(n){return typeof n=="string"?n:Object.entries(n).map(([t,e])=>`${t}:${e}`).join(";")}const be=new WeakMap;function K(n,t){be.set(n,t)}function D(n){return be.get(n)}class j{constructor(...t){v(this,"_stacks",{});v(this,"lang");if(t.length===2){const[e,r]=t;this.lang=r,this._stacks=e}else{const[e,r,s]=t;this.lang=r,this._stacks={[s]:e}}}get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,e){return new j(Object.fromEntries(de(e).map(r=>[r,k.INITIAL])),t)}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return Re(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}}function Re(n){const t=[],e=new Set;function r(s){var a;if(e.has(s))return;e.add(s);const o=(a=s==null?void 0:s.nameScopesList)==null?void 0:a.scopeName;o&&t.push(o),s.parent&&r(s.parent)}return r(n),t}function De(n,t){if(!(n instanceof j))throw new L.ShikiError("Invalid grammar state");return n.getInternalStack(t)}function Te(){const n=new WeakMap;function t(e){if(!n.has(e.meta)){let r=function(a){if(typeof a=="number"){if(a<0||a>e.source.length)throw new L.ShikiError(`Invalid decoration offset: ${a}. Code length: ${e.source.length}`);return{...s.indexToPos(a),offset:a}}else{const i=s.lines[a.line];if(i===void 0)throw new L.ShikiError(`Invalid decoration position ${JSON.stringify(a)}. Lines length: ${s.lines.length}`);let l=a.character;if(l<0&&(l=i.length+l),l<0||l>i.length)throw new L.ShikiError(`Invalid decoration position ${JSON.stringify(a)}. Line ${a.line} length: ${i.length}`);return{...a,character:l,offset:s.posToIndex(a.line,l)}}};const s=me(e.source),o=(e.options.decorations||[]).map(a=>({...a,start:r(a.start),end:r(a.end)}));We(o),n.set(e.meta,{decorations:o,converter:s,source:e.source})}return n.get(e.meta)}return{name:"shiki:decorations",tokens(e){var a;if(!((a=this.options.decorations)!=null&&a.length))return;const s=t(this).decorations.flatMap(i=>[i.start.offset,i.end.offset]);return ye(e,s)},code(e){var u;if(!((u=this.options.decorations)!=null&&u.length))return;const r=t(this),s=Array.from(e.children).filter(f=>f.type==="element"&&f.tagName==="span");if(s.length!==r.converter.lines.length)throw new L.ShikiError(`Number of lines in code element (${s.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function o(f,h,d,m){const y=s[f];let T="",p=-1,S=-1;if(h===0&&(p=0),d===0&&(S=0),d===Number.POSITIVE_INFINITY&&(S=y.children.length),p===-1||S===-1)for(let b=0;b<y.children.length;b++)T+=ke(y.children[b]),p===-1&&T.length===h&&(p=b+1),S===-1&&T.length===d&&(S=b+1);if(p===-1)throw new L.ShikiError(`Failed to find start index for decoration ${JSON.stringify(m.start)}`);if(S===-1)throw new L.ShikiError(`Failed to find end index for decoration ${JSON.stringify(m.end)}`);const g=y.children.slice(p,S);if(!m.alwaysWrap&&g.length===y.children.length)i(y,m,"line");else if(!m.alwaysWrap&&g.length===1&&g[0].type==="element")i(g[0],m,"token");else{const b={type:"element",tagName:"span",properties:{},children:g};i(b,m,"wrapper"),y.children.splice(p,g.length,b)}}function a(f,h){s[f]=i(s[f],h,"line")}function i(f,h,d){var T;const m=h.properties||{},y=h.transform||(p=>p);return f.tagName=h.tagName||"span",f.properties={...f.properties,...m,class:f.properties.class},(T=h.properties)!=null&&T.class&&re(f,h.properties.class),f=y(f,d)||f,f}const l=[],c=r.decorations.sort((f,h)=>h.start.offset-f.start.offset||f.end.offset-h.end.offset);for(const f of c){const{start:h,end:d}=f;if(h.line===d.line)o(h.line,h.character,d.character,f);else if(h.line<d.line){o(h.line,h.character,Number.POSITIVE_INFINITY,f);for(let m=h.line+1;m<d.line;m++)l.unshift(()=>a(m,f));o(d.line,0,d.character,f)}}l.forEach(f=>f())}}}function We(n){for(let t=0;t<n.length;t++){const e=n[t];if(e.start.offset>e.end.offset)throw new L.ShikiError(`Invalid decoration range: ${JSON.stringify(e.start)} - ${JSON.stringify(e.end)}`);for(let r=t+1;r<n.length;r++){const s=n[r],o=e.start.offset<=s.start.offset&&s.start.offset<e.end.offset,a=e.start.offset<s.end.offset&&s.end.offset<=e.end.offset,i=s.start.offset<=e.start.offset&&e.start.offset<s.end.offset,l=s.start.offset<e.end.offset&&e.end.offset<=s.end.offset;if(o||a||i||l){if(o&&a||i&&l||i&&e.start.offset===e.end.offset||a&&s.start.offset===s.end.offset)continue;throw new L.ShikiError(`Decorations ${JSON.stringify(e.start)} and ${JSON.stringify(s.start)} intersect.`)}}}}function ke(n){return n.type==="text"?n.value:n.type==="element"?n.children.map(ke).join(""):""}const Pe=[Te()];function J(n){const t=ze(n.transformers||[]);return[...t.pre,...t.normal,...t.post,...Pe]}function ze(n){const t=[],e=[],r=[];for(const s of n)switch(s.enforce){case"pre":t.push(s);break;case"post":e.push(s);break;default:r.push(s)}return{pre:t,post:e,normal:r}}var A=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],Z={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function Ve(n,t){const e=n.indexOf("\x1B",t);if(e!==-1&&n[e+1]==="["){const r=n.indexOf("m",e);if(r!==-1)return{sequence:n.substring(e+2,r).split(";"),startPosition:e,position:r+1}}return{position:n.length}}function le(n){const t=n.shift();if(t==="2"){const e=n.splice(0,3).map(r=>Number.parseInt(r));return e.length!==3||e.some(r=>Number.isNaN(r))?void 0:{type:"rgb",rgb:e}}else if(t==="5"){const e=n.shift();if(e)return{type:"table",index:Number(e)}}}function Je(n){const t=[];for(;n.length>0;){const e=n.shift();if(!e)continue;const r=Number.parseInt(e);if(!Number.isNaN(r))if(r===0)t.push({type:"resetAll"});else if(r<=9)Z[r]&&t.push({type:"setDecoration",value:Z[r]});else if(r<=29){const s=Z[r-20];s&&(t.push({type:"resetDecoration",value:s}),s==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(r<=37)t.push({type:"setForegroundColor",value:{type:"named",name:A[r-30]}});else if(r===38){const s=le(n);s&&t.push({type:"setForegroundColor",value:s})}else if(r===39)t.push({type:"resetForegroundColor"});else if(r<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:A[r-40]}});else if(r===48){const s=le(n);s&&t.push({type:"setBackgroundColor",value:s})}else r===49?t.push({type:"resetBackgroundColor"}):r===53?t.push({type:"setDecoration",value:"overline"}):r===55?t.push({type:"resetDecoration",value:"overline"}):r>=90&&r<=97?t.push({type:"setForegroundColor",value:{type:"named",name:A[r-90+8]}}):r>=100&&r<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:A[r-100+8]}})}return t}function Ye(){let n=null,t=null,e=new Set;return{parse(r){const s=[];let o=0;do{const a=Ve(r,o),i=a.sequence?r.substring(o,a.startPosition):r.substring(o);if(i.length>0&&s.push({value:i,foreground:n,background:t,decorations:new Set(e)}),a.sequence){const l=Je(a.sequence);for(const c of l)c.type==="resetAll"?(n=null,t=null,e.clear()):c.type==="resetForegroundColor"?n=null:c.type==="resetBackgroundColor"?t=null:c.type==="resetDecoration"&&e.delete(c.value);for(const c of l)c.type==="setForegroundColor"?n=c.value:c.type==="setBackgroundColor"?t=c.value:c.type==="setDecoration"&&e.add(c.value)}o=a.position}while(o<r.length);return s}}}var qe={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function Ke(n=qe){function t(i){return n[i]}function e(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let r;function s(){if(r)return r;r=[];for(let c=0;c<A.length;c++)r.push(t(A[c]));let i=[0,95,135,175,215,255];for(let c=0;c<6;c++)for(let u=0;u<6;u++)for(let f=0;f<6;f++)r.push(e([i[c],i[u],i[f]]));let l=8;for(let c=0;c<24;c++,l+=10)r.push(e([l,l,l]));return r}function o(i){return s()[i]}function a(i){switch(i.type){case"named":return t(i.name);case"rgb":return e(i.rgb);case"table":return o(i.index)}}return{value:a}}const Ue={black:"#000000",red:"#cd3131",green:"#0DBC79",yellow:"#E5E510",blue:"#2472C8",magenta:"#BC3FBC",cyan:"#11A8CD",white:"#E5E5E5",brightBlack:"#666666",brightRed:"#F14C4C",brightGreen:"#23D18B",brightYellow:"#F5F543",brightBlue:"#3B8EEA",brightMagenta:"#D670D6",brightCyan:"#29B8DB",brightWhite:"#FFFFFF"};function we(n,t,e){const r=H(n,e),s=z(t),o=Object.fromEntries(A.map(l=>{var f;const c=`terminal.ansi${l[0].toUpperCase()}${l.substring(1)}`,u=(f=n.colors)==null?void 0:f[c];return[l,u||Ue[l]]})),a=Ke(o),i=Ye();return s.map(l=>i.parse(l[0]).map(c=>{let u,f;c.decorations.has("reverse")?(u=c.background?a.value(c.background):n.bg,f=c.foreground?a.value(c.foreground):n.fg):(u=c.foreground?a.value(c.foreground):n.fg,f=c.background?a.value(c.background):void 0),u=$(u,r),f=$(f,r),c.decorations.has("dim")&&(u=Qe(u));let h=k.FontStyle.None;return c.decorations.has("bold")&&(h|=k.FontStyle.Bold),c.decorations.has("italic")&&(h|=k.FontStyle.Italic),c.decorations.has("underline")&&(h|=k.FontStyle.Underline),c.decorations.has("strikethrough")&&(h|=k.FontStyle.Strikethrough),{content:c.value,offset:l[1],color:u,bgColor:f,fontStyle:h}}))}function Qe(n){const t=n.match(/#([0-9a-f]{3,8})/i);if(t){const r=t[1];if(r.length===8){const s=Math.round(Number.parseInt(r.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${r.slice(0,6)}${s}`}else{if(r.length===6)return`#${r}80`;if(r.length===4){const s=r[0],o=r[1],a=r[2],i=r[3],l=Math.round(Number.parseInt(`${i}${i}`,16)/2).toString(16).padStart(2,"0");return`#${s}${s}${o}${o}${a}${a}${l}`}else if(r.length===3){const s=r[0],o=r[1],a=r[2];return`#${s}${s}${o}${o}${a}${a}80`}}}const e=n.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return e?`var(${e[1]}-dim)`:n}function U(n,t,e={}){const{theme:r=n.getLoadedThemes()[0]}=e,s=n.resolveLangAlias(e.lang||"text");if(Y(s)||q(r))return z(t).map(l=>[{content:l[0],offset:l[1]}]);const{theme:o,colorMap:a}=n.setTheme(r);if(s==="ansi")return we(o,t,e);const i=n.getLanguage(e.lang||"text");if(e.grammarState){if(e.grammarState.lang!==i.name)throw new L.ShikiError(`Grammar state language "${e.grammarState.lang}" does not match highlight language "${i.name}"`);if(!e.grammarState.themes.includes(o.name))throw new L.ShikiError(`Grammar state themes "${e.grammarState.themes}" do not contain highlight theme "${o.name}"`)}return Le(t,i,o,a,e)}function Xe(...n){if(n.length===2)return D(n[1]);const[t,e,r={}]=n,{lang:s="text",theme:o=t.getLoadedThemes()[0]}=r;if(Y(s)||q(o))throw new L.ShikiError("Plain language does not have grammar state");if(s==="ansi")throw new L.ShikiError("ANSI language does not have grammar state");const{theme:a,colorMap:i}=t.setTheme(o),l=t.getLanguage(s);return new j(oe(e,l,a,i,r).stateStack,l.name,a.name)}function Le(n,t,e,r,s){const o=oe(n,t,e,r,s),a=new j(o.stateStack,t.name,e.name);return K(o.tokens,a),o.tokens}function oe(n,t,e,r,s){const o=H(e,s),{tokenizeMaxLineLength:a=0,tokenizeTimeLimit:i=500}=s,l=z(n);let c=s.grammarState?De(s.grammarState,e.name)??k.INITIAL:s.grammarContextCode!=null?oe(s.grammarContextCode,t,e,r,{...s,grammarState:void 0,grammarContextCode:void 0}).stateStack:k.INITIAL,u=[];const f=[];for(let h=0,d=l.length;h<d;h++){const[m,y]=l[h];if(m===""){u=[],f.push([]);continue}if(a>0&&m.length>=a){u=[],f.push([{content:m,offset:y,color:"",fontStyle:0}]);continue}let T,p,S;s.includeExplanation&&(T=t.tokenizeLine(m,c,i),p=T.tokens,S=0);const g=t.tokenizeLine2(m,c,i),b=g.tokens.length/2;for(let _=0;_<b;_++){const C=g.tokens[2*_],w=_+1<b?g.tokens[2*_+2]:m.length;if(C===w)continue;const N=g.tokens[2*_+1],x=$(r[k.EncodedTokenMetadata.getForeground(N)],o),I=k.EncodedTokenMetadata.getFontStyle(N),F={content:m.substring(C,w),offset:y+C,color:x,fontStyle:I};if(s.includeExplanation){const B=[];if(s.includeExplanation!=="scopeName")for(const E of e.settings){let M;switch(typeof E.scope){case"string":M=E.scope.split(/,/).map(X=>X.trim());break;case"object":M=E.scope;break;default:continue}B.push({settings:E,selectors:M.map(X=>X.split(/ /))})}F.explanation=[];let ie=0;for(;C+ie<w;){const E=p[S],M=m.substring(E.startIndex,E.endIndex);ie+=M.length,F.explanation.push({content:M,scopes:s.includeExplanation==="scopeName"?Ze(E.scopes):et(B,E.scopes)}),S+=1}}u.push(F)}f.push(u),u=[],c=g.ruleStack}return{tokens:f,stateStack:c}}function Ze(n){return n.map(t=>({scopeName:t}))}function et(n,t){const e=[];for(let r=0,s=t.length;r<s;r++){const o=t[r];e[r]={scopeName:o,themeMatches:nt(n,o,t.slice(0,r))}}return e}function ce(n,t){return n===t||t.substring(0,n.length)===n&&t[n.length]==="."}function tt(n,t,e){if(!ce(n[n.length-1],t))return!1;let r=n.length-2,s=e.length-1;for(;r>=0&&s>=0;)ce(n[r],e[s])&&(r-=1),s-=1;return r===-1}function nt(n,t,e){const r=[];for(const{selectors:s,settings:o}of n)for(const a of s)if(tt(a,t,e)){r.push(o);break}return r}function ae(n,t,e){const r=Object.entries(e.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),s=r.map(l=>{const c=U(n,t,{...e,theme:l.theme}),u=D(c),f=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:c,state:u,theme:f}}),o=rt(...s.map(l=>l.tokens)),a=o[0].map((l,c)=>l.map((u,f)=>{const h={content:u.content,variants:{},offset:u.offset};return"includeExplanation"in e&&e.includeExplanation&&(h.explanation=u.explanation),o.forEach((d,m)=>{const{content:y,explanation:T,offset:p,...S}=d[c][f];h.variants[r[m].color]=S}),h})),i=s[0].state?new j(Object.fromEntries(s.map(l=>{var c;return[l.theme,(c=l.state)==null?void 0:c.getInternalStack(l.theme)]})),s[0].state.lang):void 0;return i&&K(a,i),a}function rt(...n){const t=n.map(()=>[]),e=n.length;for(let r=0;r<n[0].length;r++){const s=n.map(l=>l[r]),o=t.map(()=>[]);t.forEach((l,c)=>l.push(o[c]));const a=s.map(()=>0),i=s.map(l=>l[0]);for(;i.every(l=>l);){const l=Math.min(...i.map(c=>c.content.length));for(let c=0;c<e;c++){const u=i[c];u.content.length===l?(o[c].push(u),a[c]+=1,i[c]=s[c][a[c]]):(o[c].push({...u,content:u.content.slice(0,l)}),i[c]={...u,content:u.content.slice(l),offset:u.offset+l})}}}return t}function W(n,t,e){let r,s,o,a,i,l;if("themes"in e){const{defaultColor:c="light",cssVariablePrefix:u="--shiki-",colorsRendering:f="css-vars"}=e,h=Object.entries(e.themes).filter(p=>p[1]).map(p=>({color:p[0],theme:p[1]})).sort((p,S)=>p.color===c?-1:S.color===c?1:0);if(h.length===0)throw new L.ShikiError("`themes` option must not be empty");const d=ae(n,t,e);if(l=D(d),c&&se!==c&&!h.find(p=>p.color===c))throw new L.ShikiError(`\`themes\` option must contain the defaultColor key \`${c}\``);const m=h.map(p=>n.getTheme(p.theme)),y=h.map(p=>p.color);o=d.map(p=>p.map(S=>Se(S,y,u,c,f))),l&&K(o,l);const T=h.map(p=>H(p.theme,e));s=fe(h,m,T,u,c,"fg",f),r=fe(h,m,T,u,c,"bg",f),a=`shiki-themes ${m.map(p=>p.name).join(" ")}`,i=c?void 0:[s,r].join(";")}else if("theme"in e){const c=H(e.theme,e);o=U(n,t,e);const u=n.getTheme(e.theme);r=$(u.bg,c),s=$(u.fg,c),a=u.name,l=D(o)}else throw new L.ShikiError("Invalid options, either `theme` or `themes` must be provided");return{tokens:o,fg:s,bg:r,themeName:a,rootStyle:i,grammarState:l}}function fe(n,t,e,r,s,o,a){return n.map((i,l)=>{const c=$(t[l][o],e[l])||"inherit",u=`${r+i.color}${o==="bg"?"-bg":""}:${c}`;if(l===0&&s){if(s===se&&n.length>1){const f=n.findIndex(y=>y.color==="light"),h=n.findIndex(y=>y.color==="dark");if(f===-1||h===-1)throw new L.ShikiError('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');const d=$(t[f][o],e[f])||"inherit",m=$(t[h][o],e[h])||"inherit";return`light-dark(${d}, ${m});${u}`}return c}return a==="css-vars"?u:null}).filter(i=>!!i).join(";")}function P(n,t,e,r={meta:{},options:e,codeToHast:(s,o)=>P(n,s,o),codeToTokens:(s,o)=>W(n,s,o)}){var m,y;let s=t;for(const T of J(e))s=((m=T.preprocess)==null?void 0:m.call(r,s,e))||s;let{tokens:o,fg:a,bg:i,themeName:l,rootStyle:c,grammarState:u}=W(n,s,e);const{mergeWhitespaces:f=!0,mergeSameStyleTokens:h=!1}=e;f===!0?o=st(o):f==="never"&&(o=ot(o)),h&&(o=at(o));const d={...r,get source(){return s}};for(const T of J(e))o=((y=T.tokens)==null?void 0:y.call(d,o))||o;return _e(o,{...e,fg:a,bg:i,themeName:l,rootStyle:e.rootStyle===!1?!1:e.rootStyle??c},d,u)}function _e(n,t,e,r=D(n)){var y,T,p,S;const s=J(t),o=[],a={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t,c={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?c.style=t.rootStyle:c.style=`background-color:${t.bg};color:${t.fg}`),l!==!1&&l!=null&&(c.tabindex=l.toString());for(const[g,b]of Object.entries(t.meta||{}))g.startsWith("_")||(c[g]=b);let u={type:"element",tagName:"pre",properties:c,children:[],data:t.data},f={type:"element",tagName:"code",properties:{},children:o};const h=[],d={...e,structure:i,addClassToHast:re,get source(){return e.source},get tokens(){return n},get options(){return t},get root(){return a},get pre(){return u},get code(){return f},get lines(){return h}};if(n.forEach((g,b)=>{var w,N;b&&(i==="inline"?a.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&o.push({type:"text",value:`
2
+ `}));let _={type:"element",tagName:"span",properties:{class:"line"},children:[]},C=0;for(const x of g){let I={type:"element",tagName:"span",properties:{...x.htmlAttrs},children:[{type:"text",value:x.content}]};const F=V(x.htmlStyle||R(x));F&&(I.properties.style=F);for(const B of s)I=((w=B==null?void 0:B.span)==null?void 0:w.call(d,I,b+1,C,_,x))||I;i==="inline"?a.children.push(I):i==="classic"&&_.children.push(I),C+=x.content.length}if(i==="classic"){for(const x of s)_=((N=x==null?void 0:x.line)==null?void 0:N.call(d,_,b+1))||_;h.push(_),o.push(_)}else i==="inline"&&h.push(_)}),i==="classic"){for(const g of s)f=((y=g==null?void 0:g.code)==null?void 0:y.call(d,f))||f;u.children.push(f);for(const g of s)u=((T=g==null?void 0:g.pre)==null?void 0:T.call(d,u))||u;a.children.push(u)}else if(i==="inline"){const g=[];let b={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(const w of a.children)w.type==="element"&&w.tagName==="br"?(g.push(b),b={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(w.type==="element"||w.type==="text")&&b.children.push(w);g.push(b);let C={type:"element",tagName:"code",properties:{},children:g};for(const w of s)C=((p=w==null?void 0:w.code)==null?void 0:p.call(d,C))||C;a.children=[];for(let w=0;w<C.children.length;w++){w>0&&a.children.push({type:"element",tagName:"br",properties:{},children:[]});const N=C.children[w];N.type==="element"&&a.children.push(...N.children)}}let m=a;for(const g of s)m=((S=g==null?void 0:g.root)==null?void 0:S.call(d,m))||m;return r&&K(m,r),m}function st(n){return n.map(t=>{const e=[];let r="",s;return t.forEach((o,a)=>{const l=!(o.fontStyle&&(o.fontStyle&k.FontStyle.Underline||o.fontStyle&k.FontStyle.Strikethrough));l&&o.content.match(/^\s+$/)&&t[a+1]?(s===void 0&&(s=o.offset),r+=o.content):r?(l?e.push({...o,offset:s,content:r+o.content}):e.push({content:r,offset:s},o),s=void 0,r=""):e.push(o)}),e})}function ot(n){return n.map(t=>t.flatMap(e=>{if(e.content.match(/^\s+$/))return e;const r=e.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return e;const[,s,o,a]=r;if(!s&&!a)return e;const i=[{...e,offset:e.offset+s.length,content:o}];return s&&i.unshift({content:s,offset:e.offset}),a&&i.push({content:a,offset:e.offset+s.length+o.length}),i}))}function at(n){return n.map(t=>{const e=[];for(const r of t){if(e.length===0){e.push({...r});continue}const s=e[e.length-1],o=V(s.htmlStyle||R(s)),a=V(r.htmlStyle||R(r)),i=s.fontStyle&&(s.fontStyle&k.FontStyle.Underline||s.fontStyle&k.FontStyle.Strikethrough),l=r.fontStyle&&(r.fontStyle&k.FontStyle.Underline||r.fontStyle&k.FontStyle.Strikethrough);!i&&!l&&o===a?s.content+=r.content:e.push({...r})}return e})}const ve=je.toHtml;function Ce(n,t,e){var o;const r={meta:{},options:e,codeToHast:(a,i)=>P(n,a,i),codeToTokens:(a,i)=>W(n,a,i)};let s=ve(P(n,t,e,r));for(const a of J(e))s=((o=a.postprocess)==null?void 0:o.call(r,s,e))||s;return s}const he={light:"#333333",dark:"#bbbbbb"},ue={light:"#fffffe",dark:"#1e1e1e"},ge="__shiki_resolved";function Q(n){var i,l,c,u,f;if(n!=null&&n[ge])return n;const t={...n};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||(t.type="dark"),t.colorReplacements={...t.colorReplacements},t.settings||(t.settings=[]);let{bg:e,fg:r}=t;if(!e||!r){const h=t.settings?t.settings.find(d=>!d.name&&!d.scope):void 0;(i=h==null?void 0:h.settings)!=null&&i.foreground&&(r=h.settings.foreground),(l=h==null?void 0:h.settings)!=null&&l.background&&(e=h.settings.background),!r&&((c=t==null?void 0:t.colors)!=null&&c["editor.foreground"])&&(r=t.colors["editor.foreground"]),!e&&((u=t==null?void 0:t.colors)!=null&&u["editor.background"])&&(e=t.colors["editor.background"]),r||(r=t.type==="light"?he.light:he.dark),e||(e=t.type==="light"?ue.light:ue.dark),t.fg=r,t.bg=e}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let s=0;const o=new Map;function a(h){var m;if(o.has(h))return o.get(h);s+=1;const d=`#${s.toString(16).padStart(8,"0").toLowerCase()}`;return(m=t.colorReplacements)!=null&&m[`#${d}`]?a(h):(o.set(h,d),d)}t.settings=t.settings.map(h=>{var T,p;const d=((T=h.settings)==null?void 0:T.foreground)&&!h.settings.foreground.startsWith("#"),m=((p=h.settings)==null?void 0:p.background)&&!h.settings.background.startsWith("#");if(!d&&!m)return h;const y={...h,settings:{...h.settings}};if(d){const S=a(h.settings.foreground);t.colorReplacements[S]=h.settings.foreground,y.settings.foreground=S}if(m){const S=a(h.settings.background);t.colorReplacements[S]=h.settings.background,y.settings.background=S}return y});for(const h of Object.keys(t.colors||{}))if((h==="editor.foreground"||h==="editor.background"||h.startsWith("terminal.ansi"))&&!((f=t.colors[h])!=null&&f.startsWith("#"))){const d=a(t.colors[h]);t.colorReplacements[d]=t.colors[h],t.colors[h]=d}return Object.defineProperty(t,ge,{enumerable:!1,writable:!1,value:!0}),t}async function xe(n){return Array.from(new Set((await Promise.all(n.filter(t=>!te(t)).map(async t=>await ee(t).then(e=>Array.isArray(e)?e:[e])))).flat()))}async function Ee(n){return(await Promise.all(n.map(async e=>ne(e)?null:Q(await ee(e))))).filter(e=>!!e)}let it=3;function $e(n,t=3){t>it||console.trace(`[SHIKI DEPRECATE]: ${n}`)}class O extends Error{constructor(t){super(t),this.name="ShikiError"}}function Ne(n,t){if(!t)return n;if(t[n]){const e=new Set([n]);for(;t[n];){if(n=t[n],e.has(n))throw new O(`Circular alias \`${Array.from(e).join(" -> ")} -> ${n}\``);e.add(n)}}return n}class lt extends k.Registry{constructor(e,r,s,o={}){super(e);v(this,"_resolvedThemes",new Map);v(this,"_resolvedGrammars",new Map);v(this,"_langMap",new Map);v(this,"_langGraph",new Map);v(this,"_textmateThemeCache",new WeakMap);v(this,"_loadedThemesCache",null);v(this,"_loadedLanguagesCache",null);this._resolver=e,this._themes=r,this._langs=s,this._alias=o,this._themes.map(a=>this.loadTheme(a)),this.loadLanguages(this._langs)}getTheme(e){return typeof e=="string"?this._resolvedThemes.get(e):this.loadTheme(e)}loadTheme(e){const r=Q(e);return r.name&&(this._resolvedThemes.set(r.name,r),this._loadedThemesCache=null),r}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(e){let r=this._textmateThemeCache.get(e);r||(r=k.Theme.createFromRawTheme(e),this._textmateThemeCache.set(e,r)),this._syncRegistry.setTheme(r)}getGrammar(e){return e=Ne(e,this._alias),this._resolvedGrammars.get(e)}loadLanguage(e){var a,i,l,c;if(this.getGrammar(e.name))return;const r=new Set([...this._langMap.values()].filter(u=>{var f;return(f=u.embeddedLangsLazy)==null?void 0:f.includes(e.name)}));this._resolver.addLanguage(e);const s={balancedBracketSelectors:e.balancedBracketSelectors||["*"],unbalancedBracketSelectors:e.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(e.scopeName,e);const o=this.loadGrammarWithConfiguration(e.scopeName,1,s);if(o.name=e.name,this._resolvedGrammars.set(e.name,o),e.aliases&&e.aliases.forEach(u=>{this._alias[u]=e.name}),this._loadedLanguagesCache=null,r.size)for(const u of r)this._resolvedGrammars.delete(u.name),this._loadedLanguagesCache=null,(i=(a=this._syncRegistry)==null?void 0:a._injectionGrammars)==null||i.delete(u.scopeName),(c=(l=this._syncRegistry)==null?void 0:l._grammars)==null||c.delete(u.scopeName),this.loadLanguage(this._langMap.get(u.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(e){for(const o of e)this.resolveEmbeddedLanguages(o);const r=Array.from(this._langGraph.entries()),s=r.filter(([o,a])=>!a);if(s.length){const o=r.filter(([a,i])=>{if(!i)return!1;const l=i.embeddedLanguages||i.embeddedLangs;return l==null?void 0:l.some(c=>s.map(([u])=>u).includes(c))}).filter(a=>!s.includes(a));throw new O(`Missing languages ${s.map(([a])=>`\`${a}\``).join(", ")}, required by ${o.map(([a])=>`\`${a}\``).join(", ")}`)}for(const[o,a]of r)this._resolver.addLanguage(a);for(const[o,a]of r)this.loadLanguage(a)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(e){this._langMap.set(e.name,e),this._langGraph.set(e.name,e);const r=e.embeddedLanguages??e.embeddedLangs;if(r)for(const s of r)this._langGraph.set(s,this._langMap.get(s))}}class ct{constructor(t,e){v(this,"_langs",new Map);v(this,"_scopeToLang",new Map);v(this,"_injections",new Map);v(this,"_onigLib");this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},e.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(e=>{this._langs.set(e,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(e=>{this._injections.get(e)||this._injections.set(e,[]),this._injections.get(e).push(t.scopeName)})}getInjections(t){const e=t.split(".");let r=[];for(let s=1;s<=e.length;s++){const o=e.slice(0,s).join(".");r=[...r,...this._injections.get(o)||[]]}return r}}let G=0;function Ie(n){G+=1,n.warnings!==!1&&G>=10&&G%10===0&&console.warn(`[Shiki] ${G} 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.`);let t=!1;if(!n.engine)throw new O("`engine` option is required for synchronous mode");const e=(n.langs||[]).flat(1),r=(n.themes||[]).flat(1).map(Q),s=new ct(n.engine,e),o=new lt(s,r,e,n.langAlias);let a;function i(g){return Ne(g,n.langAlias)}function l(g){p();const b=o.getGrammar(typeof g=="string"?g:g.name);if(!b)throw new O(`Language \`${g}\` not found, you may need to load it first`);return b}function c(g){if(g==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};p();const b=o.getTheme(g);if(!b)throw new O(`Theme \`${g}\` not found, you may need to load it first`);return b}function u(g){p();const b=c(g);a!==g&&(o.setTheme(b),a=g);const _=o.getColorMap();return{theme:b,colorMap:_}}function f(){return p(),o.getLoadedThemes()}function h(){return p(),o.getLoadedLanguages()}function d(...g){p(),o.loadLanguages(g.flat(1))}async function m(...g){return d(await xe(g))}function y(...g){p();for(const b of g.flat(1))o.loadTheme(b)}async function T(...g){return p(),y(await Ee(g))}function p(){if(t)throw new O("Shiki instance has been disposed")}function S(){t||(t=!0,o.dispose(),G-=1)}return{setTheme:u,getTheme:c,getLanguage:l,getLoadedThemes:f,getLoadedLanguages:h,resolveLangAlias:i,loadLanguage:m,loadLanguageSync:d,loadTheme:T,loadThemeSync:y,dispose:S,[Symbol.dispose]:S}}async function Ae(n){n.engine||$e("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");const[t,e,r]=await Promise.all([Ee(n.themes||[]),xe(n.langs||[]),n.engine]);return Ie({...n,themes:t,langs:e,engine:r})}async function Fe(n){const t=await Ae(n);return{getLastGrammarState:(...e)=>Xe(t,...e),codeToTokensBase:(e,r)=>U(t,e,r),codeToTokensWithThemes:(e,r)=>ae(t,e,r),codeToTokens:(e,r)=>W(t,e,r),codeToHast:(e,r)=>P(t,e,r),codeToHtml:(e,r)=>Ce(t,e,r),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function ft(n){const t=n.langs,e=n.themes,r=n.engine;async function s(o){function a(f){var h;if(typeof f=="string"){if(f=((h=o.langAlias)==null?void 0:h[f])||f,te(f))return[];const d=t[f];if(!d)throw new L.ShikiError(`Language \`${f}\` is not included in this bundle. You may want to load it from external source.`);return d}return f}function i(f){if(ne(f))return"none";if(typeof f=="string"){const h=e[f];if(!h)throw new L.ShikiError(`Theme \`${f}\` is not included in this bundle. You may want to load it from external source.`);return h}return f}const l=(o.themes??[]).map(f=>i(f)),c=(o.langs??[]).map(f=>a(f)),u=await Fe({engine:o.engine??r(),...o,themes:l,langs:c});return{...u,loadLanguage(...f){return u.loadLanguage(...f.map(a))},loadTheme(...f){return u.loadTheme(...f.map(i))},getBundledLanguages(){return t},getBundledThemes(){return e}}}return s}function Be(n){let t;async function e(r={}){if(t){const s=await t;return await Promise.all([s.loadTheme(...r.themes||[]),s.loadLanguage(...r.langs||[])]),s}else{t=n({...r,themes:[],langs:[]});const s=await t;return await Promise.all([s.loadTheme(...r.themes||[]),s.loadLanguage(...r.langs||[])]),s}}return e}function ht(n,t){const e=Be(n);async function r(s,o){var l;const a=await e({langs:[o.lang],themes:"theme"in o?[o.theme]:Object.values(o.themes)}),i=await((l=t==null?void 0:t.guessEmbeddedLanguages)==null?void 0:l.call(t,s,o.lang,a));return i&&await a.loadLanguage(...i),a}return{getSingletonHighlighter(s){return e(s)},async codeToHtml(s,o){return(await r(s,o)).codeToHtml(s,o)},async codeToHast(s,o){return(await r(s,o)).codeToHast(s,o)},async codeToTokens(s,o){return(await r(s,o)).codeToTokens(s,o)},async codeToTokensBase(s,o){return(await r(s,o)).codeToTokensBase(s,o)},async codeToTokensWithThemes(s,o){return(await r(s,o)).codeToTokensWithThemes(s,o)},async getLastGrammarState(s,o){return(await e({langs:[o.lang],themes:[o.theme]})).getLastGrammarState(s,o)}}}exports.ShikiError=L.ShikiError;exports.addClassToHast=re;exports.applyColorReplacements=$;exports.codeToHast=P;exports.codeToHtml=Ce;exports.codeToTokens=W;exports.codeToTokensBase=U;exports.codeToTokensWithThemes=ae;exports.createBundledHighlighter=ft;exports.createHighlighterCore=Fe;exports.createPositionConverter=me;exports.createShikiInternal=Ae;exports.createShikiInternalSync=Ie;exports.createSingletonShorthands=ht;exports.flatTokenVariants=Se;exports.getTokenStyleObject=R;exports.guessEmbeddedLanguages=Ge;exports.hastToHtml=ve;exports.isNoneTheme=q;exports.isPlainLang=Y;exports.isSpecialLang=te;exports.isSpecialTheme=ne;exports.makeSingletonHighlighter=Be;exports.normalizeGetter=ee;exports.normalizeTheme=Q;exports.resolveColorReplacements=H;exports.splitLines=z;exports.splitToken=pe;exports.splitTokens=ye;exports.stringifyTokenStyle=V;exports.toArray=de;exports.tokenizeAnsiWithTheme=we;exports.tokenizeWithTheme=Le;exports.tokensToHast=_e;exports.transformerDecorations=Te;exports.warnDeprecated=$e;
2
3
  //# sourceMappingURL=index.cjs83.js.map