@pierre/diffs 1.2.10 → 1.2.12

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 (545) hide show
  1. package/README.md +15 -15
  2. package/dist/components/CodeView.d.ts +10 -11
  3. package/dist/components/CodeView.d.ts.map +1 -1
  4. package/dist/components/CodeView.js +13 -14
  5. package/dist/components/CodeView.js.map +1 -1
  6. package/dist/components/File.d.ts +1 -4
  7. package/dist/components/File.d.ts.map +1 -1
  8. package/dist/components/File.js +19 -12
  9. package/dist/components/File.js.map +1 -1
  10. package/dist/components/FileDiff.d.ts +11 -14
  11. package/dist/components/FileDiff.d.ts.map +1 -1
  12. package/dist/components/FileDiff.js +16 -14
  13. package/dist/components/FileDiff.js.map +1 -1
  14. package/dist/components/FileStream.d.ts +0 -1
  15. package/dist/components/FileStream.d.ts.map +1 -1
  16. package/dist/components/FileStream.js +8 -6
  17. package/dist/components/FileStream.js.map +1 -1
  18. package/dist/components/UnresolvedFile.d.ts +2 -2
  19. package/dist/components/UnresolvedFile.d.ts.map +1 -1
  20. package/dist/components/UnresolvedFile.js +7 -5
  21. package/dist/components/UnresolvedFile.js.map +1 -1
  22. package/dist/components/VirtualizedFile.d.ts +6 -3
  23. package/dist/components/VirtualizedFile.d.ts.map +1 -1
  24. package/dist/components/VirtualizedFile.js +97 -35
  25. package/dist/components/VirtualizedFile.js.map +1 -1
  26. package/dist/components/VirtualizedFileDiff.d.ts +9 -5
  27. package/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
  28. package/dist/components/VirtualizedFileDiff.js +91 -30
  29. package/dist/components/VirtualizedFileDiff.js.map +1 -1
  30. package/dist/components/Virtualizer.d.ts +1 -1
  31. package/dist/components/Virtualizer.d.ts.map +1 -1
  32. package/dist/components/Virtualizer.js +23 -24
  33. package/dist/components/Virtualizer.js.map +1 -1
  34. package/dist/components/VirtulizerDevelopment.d.ts.map +1 -1
  35. package/dist/components/web-components.d.ts.map +1 -1
  36. package/dist/components/web-components.js +2 -3
  37. package/dist/components/web-components.js.map +1 -1
  38. package/dist/constants.d.ts +1 -1
  39. package/dist/constants.d.ts.map +1 -1
  40. package/dist/constants.js +1 -1
  41. package/dist/constants.js.map +1 -1
  42. package/dist/highlighter/languages/areLanguagesAttached.d.ts.map +1 -1
  43. package/dist/highlighter/languages/areLanguagesAttached.js +1 -2
  44. package/dist/highlighter/languages/areLanguagesAttached.js.map +1 -1
  45. package/dist/highlighter/languages/attachResolvedLanguages.d.ts +0 -2
  46. package/dist/highlighter/languages/attachResolvedLanguages.d.ts.map +1 -1
  47. package/dist/highlighter/languages/attachResolvedLanguages.js +1 -2
  48. package/dist/highlighter/languages/attachResolvedLanguages.js.map +1 -1
  49. package/dist/highlighter/languages/cleanUpResolvedLanguages.d.ts.map +1 -1
  50. package/dist/highlighter/languages/cleanUpResolvedLanguages.js +1 -2
  51. package/dist/highlighter/languages/cleanUpResolvedLanguages.js.map +1 -1
  52. package/dist/highlighter/languages/constants.d.ts +0 -1
  53. package/dist/highlighter/languages/constants.d.ts.map +1 -1
  54. package/dist/highlighter/languages/constants.js +1 -1
  55. package/dist/highlighter/languages/constants.js.map +1 -1
  56. package/dist/highlighter/languages/getResolvedLanguages.d.ts +0 -2
  57. package/dist/highlighter/languages/getResolvedLanguages.d.ts.map +1 -1
  58. package/dist/highlighter/languages/getResolvedLanguages.js +1 -2
  59. package/dist/highlighter/languages/getResolvedLanguages.js.map +1 -1
  60. package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts +0 -2
  61. package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts.map +1 -1
  62. package/dist/highlighter/languages/getResolvedOrResolveLanguage.js +1 -2
  63. package/dist/highlighter/languages/getResolvedOrResolveLanguage.js.map +1 -1
  64. package/dist/highlighter/languages/hasResolvedLanguages.d.ts.map +1 -1
  65. package/dist/highlighter/languages/hasResolvedLanguages.js +1 -2
  66. package/dist/highlighter/languages/hasResolvedLanguages.js.map +1 -1
  67. package/dist/highlighter/languages/registerCustomLanguage.d.ts +0 -1
  68. package/dist/highlighter/languages/registerCustomLanguage.d.ts.map +1 -1
  69. package/dist/highlighter/languages/registerCustomLanguage.js +1 -2
  70. package/dist/highlighter/languages/registerCustomLanguage.js.map +1 -1
  71. package/dist/highlighter/languages/resolveLanguage.d.ts +0 -2
  72. package/dist/highlighter/languages/resolveLanguage.d.ts.map +1 -1
  73. package/dist/highlighter/languages/resolveLanguage.js +4 -5
  74. package/dist/highlighter/languages/resolveLanguage.js.map +1 -1
  75. package/dist/highlighter/languages/resolveLanguages.d.ts +0 -2
  76. package/dist/highlighter/languages/resolveLanguages.d.ts.map +1 -1
  77. package/dist/highlighter/languages/resolveLanguages.js +1 -2
  78. package/dist/highlighter/languages/resolveLanguages.js.map +1 -1
  79. package/dist/highlighter/shared_highlighter.d.ts.map +1 -1
  80. package/dist/highlighter/shared_highlighter.js +3 -4
  81. package/dist/highlighter/shared_highlighter.js.map +1 -1
  82. package/dist/highlighter/themes/areThemesAttached.d.ts.map +1 -1
  83. package/dist/highlighter/themes/areThemesAttached.js +1 -2
  84. package/dist/highlighter/themes/areThemesAttached.js.map +1 -1
  85. package/dist/highlighter/themes/attachResolvedThemes.d.ts.map +1 -1
  86. package/dist/highlighter/themes/attachResolvedThemes.js +1 -2
  87. package/dist/highlighter/themes/attachResolvedThemes.js.map +1 -1
  88. package/dist/highlighter/themes/cleanUpResolvedThemes.d.ts.map +1 -1
  89. package/dist/highlighter/themes/cleanUpResolvedThemes.js +1 -2
  90. package/dist/highlighter/themes/cleanUpResolvedThemes.js.map +1 -1
  91. package/dist/highlighter/themes/constants.d.ts.map +1 -1
  92. package/dist/highlighter/themes/constants.js +1 -1
  93. package/dist/highlighter/themes/constants.js.map +1 -1
  94. package/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts.map +1 -1
  95. package/dist/highlighter/themes/getResolvedOrResolveTheme.js +1 -2
  96. package/dist/highlighter/themes/getResolvedOrResolveTheme.js.map +1 -1
  97. package/dist/highlighter/themes/getResolvedThemes.d.ts.map +1 -1
  98. package/dist/highlighter/themes/getResolvedThemes.js +1 -2
  99. package/dist/highlighter/themes/getResolvedThemes.js.map +1 -1
  100. package/dist/highlighter/themes/hasResolvedThemes.d.ts.map +1 -1
  101. package/dist/highlighter/themes/hasResolvedThemes.js +1 -2
  102. package/dist/highlighter/themes/hasResolvedThemes.js.map +1 -1
  103. package/dist/highlighter/themes/registerCustomCSSVariableTheme.d.ts.map +1 -1
  104. package/dist/highlighter/themes/registerCustomCSSVariableTheme.js +1 -2
  105. package/dist/highlighter/themes/registerCustomCSSVariableTheme.js.map +1 -1
  106. package/dist/highlighter/themes/registerCustomTheme.d.ts.map +1 -1
  107. package/dist/highlighter/themes/registerCustomTheme.js +1 -2
  108. package/dist/highlighter/themes/registerCustomTheme.js.map +1 -1
  109. package/dist/highlighter/themes/resolveTheme.d.ts.map +1 -1
  110. package/dist/highlighter/themes/resolveTheme.js +1 -2
  111. package/dist/highlighter/themes/resolveTheme.js.map +1 -1
  112. package/dist/highlighter/themes/resolveThemes.d.ts.map +1 -1
  113. package/dist/highlighter/themes/resolveThemes.js +1 -2
  114. package/dist/highlighter/themes/resolveThemes.js.map +1 -1
  115. package/dist/highlighter/themes/themeResolution.d.ts.map +1 -1
  116. package/dist/highlighter/themes/themeResolution.js +1 -2
  117. package/dist/highlighter/themes/themeResolution.js.map +1 -1
  118. package/dist/highlighter/themes/themeResolver.d.ts +2 -2
  119. package/dist/highlighter/themes/themeResolver.d.ts.map +1 -1
  120. package/dist/highlighter/themes/themeResolver.js +1 -2
  121. package/dist/highlighter/themes/themeResolver.js.map +1 -1
  122. package/dist/index.d.ts +9 -9
  123. package/dist/index.js +1 -2
  124. package/dist/managers/InteractionManager.d.ts.map +1 -1
  125. package/dist/managers/InteractionManager.js +4 -4
  126. package/dist/managers/InteractionManager.js.map +1 -1
  127. package/dist/managers/ResizeManager.d.ts.map +1 -1
  128. package/dist/managers/ResizeManager.js +2 -2
  129. package/dist/managers/ResizeManager.js.map +1 -1
  130. package/dist/managers/ScrollSyncManager.d.ts.map +1 -1
  131. package/dist/managers/ScrollSyncManager.js +1 -1
  132. package/dist/managers/ScrollSyncManager.js.map +1 -1
  133. package/dist/managers/UniversalRenderingManager.d.ts.map +1 -1
  134. package/dist/managers/UniversalRenderingManager.js +2 -2
  135. package/dist/managers/UniversalRenderingManager.js.map +1 -1
  136. package/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts +228 -0
  137. package/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts.map +1 -0
  138. package/dist/node_modules/.pnpm/@types_unist@3.0.3/node_modules/@types/unist/index.d.ts +84 -0
  139. package/dist/node_modules/.pnpm/@types_unist@3.0.3/node_modules/@types/unist/index.d.ts.map +1 -0
  140. package/dist/react/CodeView.d.ts +0 -1
  141. package/dist/react/CodeView.d.ts.map +1 -1
  142. package/dist/react/CodeView.js +9 -12
  143. package/dist/react/CodeView.js.map +1 -1
  144. package/dist/react/File.d.ts.map +1 -1
  145. package/dist/react/File.js +2 -5
  146. package/dist/react/File.js.map +1 -1
  147. package/dist/react/FileDiff.d.ts.map +1 -1
  148. package/dist/react/FileDiff.js +2 -5
  149. package/dist/react/FileDiff.js.map +1 -1
  150. package/dist/react/MultiFileDiff.d.ts.map +1 -1
  151. package/dist/react/MultiFileDiff.js +2 -5
  152. package/dist/react/MultiFileDiff.js.map +1 -1
  153. package/dist/react/PatchDiff.d.ts.map +1 -1
  154. package/dist/react/PatchDiff.js +2 -5
  155. package/dist/react/PatchDiff.js.map +1 -1
  156. package/dist/react/UnresolvedFile.d.ts +1 -1
  157. package/dist/react/UnresolvedFile.d.ts.map +1 -1
  158. package/dist/react/UnresolvedFile.js +2 -5
  159. package/dist/react/UnresolvedFile.js.map +1 -1
  160. package/dist/react/Virtualizer.d.ts.map +1 -1
  161. package/dist/react/Virtualizer.js +2 -5
  162. package/dist/react/Virtualizer.js.map +1 -1
  163. package/dist/react/WorkerPoolContext.d.ts +0 -1
  164. package/dist/react/WorkerPoolContext.d.ts.map +1 -1
  165. package/dist/react/WorkerPoolContext.js +2 -5
  166. package/dist/react/WorkerPoolContext.js.map +1 -1
  167. package/dist/react/constants.d.ts.map +1 -1
  168. package/dist/react/constants.js +1 -1
  169. package/dist/react/constants.js.map +1 -1
  170. package/dist/react/index.d.ts +1 -1
  171. package/dist/react/index.js +1 -2
  172. package/dist/react/jsx.d.ts +0 -2
  173. package/dist/react/jsx.d.ts.map +1 -1
  174. package/dist/react/types.d.ts.map +1 -1
  175. package/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
  176. package/dist/react/utils/renderDiffChildren.js +4 -5
  177. package/dist/react/utils/renderDiffChildren.js.map +1 -1
  178. package/dist/react/utils/renderFileChildren.d.ts.map +1 -1
  179. package/dist/react/utils/renderFileChildren.js +4 -5
  180. package/dist/react/utils/renderFileChildren.js.map +1 -1
  181. package/dist/react/utils/templateRender.d.ts.map +1 -1
  182. package/dist/react/utils/templateRender.js +1 -2
  183. package/dist/react/utils/templateRender.js.map +1 -1
  184. package/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
  185. package/dist/react/utils/useFileDiffInstance.js +1 -2
  186. package/dist/react/utils/useFileDiffInstance.js.map +1 -1
  187. package/dist/react/utils/useFileInstance.d.ts.map +1 -1
  188. package/dist/react/utils/useFileInstance.js +1 -2
  189. package/dist/react/utils/useFileInstance.js.map +1 -1
  190. package/dist/react/utils/useStableCallback.d.ts.map +1 -1
  191. package/dist/react/utils/useStableCallback.js +1 -2
  192. package/dist/react/utils/useStableCallback.js.map +1 -1
  193. package/dist/react/utils/useUnresolvedFileInstance.d.ts.map +1 -1
  194. package/dist/react/utils/useUnresolvedFileInstance.js +10 -11
  195. package/dist/react/utils/useUnresolvedFileInstance.js.map +1 -1
  196. package/dist/renderers/DiffHunksRenderer.d.ts +4 -4
  197. package/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
  198. package/dist/renderers/DiffHunksRenderer.js +66 -16
  199. package/dist/renderers/DiffHunksRenderer.js.map +1 -1
  200. package/dist/renderers/FileRenderer.d.ts +1 -3
  201. package/dist/renderers/FileRenderer.d.ts.map +1 -1
  202. package/dist/renderers/FileRenderer.js +22 -8
  203. package/dist/renderers/FileRenderer.js.map +1 -1
  204. package/dist/renderers/UnresolvedFileHunksRenderer.d.ts +1 -2
  205. package/dist/renderers/UnresolvedFileHunksRenderer.d.ts.map +1 -1
  206. package/dist/renderers/UnresolvedFileHunksRenderer.js +1 -2
  207. package/dist/renderers/UnresolvedFileHunksRenderer.js.map +1 -1
  208. package/dist/shiki-stream/index.js +1 -2
  209. package/dist/shiki-stream/stream.d.ts +0 -1
  210. package/dist/shiki-stream/stream.d.ts.map +1 -1
  211. package/dist/shiki-stream/stream.js +1 -2
  212. package/dist/shiki-stream/stream.js.map +1 -1
  213. package/dist/shiki-stream/tokenizer.d.ts.map +1 -1
  214. package/dist/shiki-stream/tokenizer.js +1 -1
  215. package/dist/shiki-stream/tokenizer.js.map +1 -1
  216. package/dist/shiki-stream/types.d.ts +0 -1
  217. package/dist/shiki-stream/types.d.ts.map +1 -1
  218. package/dist/sprite.d.ts.map +1 -1
  219. package/dist/sprite.js +1 -1
  220. package/dist/ssr/FileDiffReact.d.ts.map +1 -1
  221. package/dist/ssr/FileDiffReact.js +4 -7
  222. package/dist/ssr/FileDiffReact.js.map +1 -1
  223. package/dist/ssr/index.d.ts +1 -1
  224. package/dist/ssr/index.js +1 -2
  225. package/dist/ssr/preloadDiffs.d.ts +1 -1
  226. package/dist/ssr/preloadDiffs.d.ts.map +1 -1
  227. package/dist/ssr/preloadDiffs.js +1 -2
  228. package/dist/ssr/preloadDiffs.js.map +1 -1
  229. package/dist/ssr/preloadFile.d.ts.map +1 -1
  230. package/dist/ssr/preloadFile.js +1 -2
  231. package/dist/ssr/preloadFile.js.map +1 -1
  232. package/dist/ssr/preloadPatchFile.d.ts.map +1 -1
  233. package/dist/ssr/preloadPatchFile.js +2 -3
  234. package/dist/ssr/preloadPatchFile.js.map +1 -1
  235. package/dist/ssr/renderHTML.d.ts +1 -1
  236. package/dist/ssr/renderHTML.d.ts.map +1 -1
  237. package/dist/ssr/renderHTML.js +1 -2
  238. package/dist/ssr/renderHTML.js.map +1 -1
  239. package/dist/string-import.d.ts +4 -0
  240. package/dist/string-import.d.ts.map +1 -1
  241. package/dist/style.js +3 -3
  242. package/dist/style.js.map +1 -1
  243. package/dist/types.d.ts +9 -1
  244. package/dist/types.d.ts.map +1 -1
  245. package/dist/utils/areDiffLineAnnotationsEqual.d.ts.map +1 -1
  246. package/dist/utils/areDiffLineAnnotationsEqual.js +1 -1
  247. package/dist/utils/areDiffLineAnnotationsEqual.js.map +1 -1
  248. package/dist/utils/areDiffRenderOptionsEqual.d.ts.map +1 -1
  249. package/dist/utils/areDiffRenderOptionsEqual.js +1 -2
  250. package/dist/utils/areDiffRenderOptionsEqual.js.map +1 -1
  251. package/dist/utils/areDiffTargetsEqual.d.ts.map +1 -1
  252. package/dist/utils/areDiffTargetsEqual.js +1 -1
  253. package/dist/utils/areDiffTargetsEqual.js.map +1 -1
  254. package/dist/utils/areFileRenderOptionsEqual.d.ts.map +1 -1
  255. package/dist/utils/areFileRenderOptionsEqual.js +1 -2
  256. package/dist/utils/areFileRenderOptionsEqual.js.map +1 -1
  257. package/dist/utils/areFilesEqual.d.ts.map +1 -1
  258. package/dist/utils/areFilesEqual.js +1 -1
  259. package/dist/utils/areFilesEqual.js.map +1 -1
  260. package/dist/utils/areHunkDataEqual.d.ts.map +1 -1
  261. package/dist/utils/areHunkDataEqual.js +1 -1
  262. package/dist/utils/areHunkDataEqual.js.map +1 -1
  263. package/dist/utils/areLineAnnotationsEqual.d.ts.map +1 -1
  264. package/dist/utils/areLineAnnotationsEqual.js +1 -1
  265. package/dist/utils/areLineAnnotationsEqual.js.map +1 -1
  266. package/dist/utils/areManagedSnapshotsEqual.d.ts.map +1 -1
  267. package/dist/utils/areManagedSnapshotsEqual.js +1 -1
  268. package/dist/utils/areManagedSnapshotsEqual.js.map +1 -1
  269. package/dist/utils/areMergeConflictActionsEqual.d.ts.map +1 -1
  270. package/dist/utils/areMergeConflictActionsEqual.js +1 -1
  271. package/dist/utils/areMergeConflictActionsEqual.js.map +1 -1
  272. package/dist/utils/areObjectsEqual.d.ts.map +1 -1
  273. package/dist/utils/areObjectsEqual.js +1 -1
  274. package/dist/utils/areObjectsEqual.js.map +1 -1
  275. package/dist/utils/areOptionsEqual.d.ts +0 -2
  276. package/dist/utils/areOptionsEqual.d.ts.map +1 -1
  277. package/dist/utils/areOptionsEqual.js +1 -2
  278. package/dist/utils/areOptionsEqual.js.map +1 -1
  279. package/dist/utils/arePrePropertiesEqual.d.ts.map +1 -1
  280. package/dist/utils/arePrePropertiesEqual.js +1 -1
  281. package/dist/utils/arePrePropertiesEqual.js.map +1 -1
  282. package/dist/utils/areRenderRangesEqual.d.ts.map +1 -1
  283. package/dist/utils/areRenderRangesEqual.js +1 -1
  284. package/dist/utils/areRenderRangesEqual.js.map +1 -1
  285. package/dist/utils/areSelectionPointsEqual.d.ts.map +1 -1
  286. package/dist/utils/areSelectionPointsEqual.js +1 -1
  287. package/dist/utils/areSelectionPointsEqual.js.map +1 -1
  288. package/dist/utils/areSelectionsEqual.d.ts.map +1 -1
  289. package/dist/utils/areSelectionsEqual.js +1 -1
  290. package/dist/utils/areSelectionsEqual.js.map +1 -1
  291. package/dist/utils/areThemesEqual.d.ts.map +1 -1
  292. package/dist/utils/areThemesEqual.js +1 -1
  293. package/dist/utils/areThemesEqual.js.map +1 -1
  294. package/dist/utils/areVirtualWindowSpecsEqual.d.ts.map +1 -1
  295. package/dist/utils/areVirtualWindowSpecsEqual.js +1 -1
  296. package/dist/utils/areVirtualWindowSpecsEqual.js.map +1 -1
  297. package/dist/utils/areWorkerStatsEqual.d.ts +0 -2
  298. package/dist/utils/areWorkerStatsEqual.d.ts.map +1 -1
  299. package/dist/utils/areWorkerStatsEqual.js +1 -1
  300. package/dist/utils/areWorkerStatsEqual.js.map +1 -1
  301. package/dist/utils/cleanLastNewline.d.ts.map +1 -1
  302. package/dist/utils/cleanLastNewline.js +1 -1
  303. package/dist/utils/cleanLastNewline.js.map +1 -1
  304. package/dist/utils/computeEstimatedDiffHeights.d.ts.map +1 -1
  305. package/dist/utils/computeEstimatedDiffHeights.js +1 -2
  306. package/dist/utils/computeEstimatedDiffHeights.js.map +1 -1
  307. package/dist/utils/computeVirtualFileMetrics.d.ts.map +1 -1
  308. package/dist/utils/computeVirtualFileMetrics.js +1 -2
  309. package/dist/utils/computeVirtualFileMetrics.js.map +1 -1
  310. package/dist/utils/createAnnotationElement.d.ts +1 -1
  311. package/dist/utils/createAnnotationElement.d.ts.map +1 -1
  312. package/dist/utils/createAnnotationElement.js +1 -2
  313. package/dist/utils/createAnnotationElement.js.map +1 -1
  314. package/dist/utils/createAnnotationWrapperNode.d.ts.map +1 -1
  315. package/dist/utils/createAnnotationWrapperNode.js +1 -1
  316. package/dist/utils/createAnnotationWrapperNode.js.map +1 -1
  317. package/dist/utils/createContentColumn.d.ts +1 -1
  318. package/dist/utils/createContentColumn.d.ts.map +1 -1
  319. package/dist/utils/createContentColumn.js +1 -2
  320. package/dist/utils/createContentColumn.js.map +1 -1
  321. package/dist/utils/createEmptyRowBuffer.d.ts +1 -1
  322. package/dist/utils/createEmptyRowBuffer.d.ts.map +1 -1
  323. package/dist/utils/createEmptyRowBuffer.js +1 -2
  324. package/dist/utils/createEmptyRowBuffer.js.map +1 -1
  325. package/dist/utils/createFileHeaderElement.d.ts +1 -1
  326. package/dist/utils/createFileHeaderElement.d.ts.map +1 -1
  327. package/dist/utils/createFileHeaderElement.js +1 -2
  328. package/dist/utils/createFileHeaderElement.js.map +1 -1
  329. package/dist/utils/createGutterUtilityContentNode.d.ts.map +1 -1
  330. package/dist/utils/createGutterUtilityContentNode.js +1 -1
  331. package/dist/utils/createGutterUtilityContentNode.js.map +1 -1
  332. package/dist/utils/createGutterUtilityElement.d.ts +1 -1
  333. package/dist/utils/createGutterUtilityElement.d.ts.map +1 -1
  334. package/dist/utils/createGutterUtilityElement.js +1 -2
  335. package/dist/utils/createGutterUtilityElement.js.map +1 -1
  336. package/dist/utils/createNoNewlineElement.d.ts +1 -1
  337. package/dist/utils/createNoNewlineElement.d.ts.map +1 -1
  338. package/dist/utils/createNoNewlineElement.js +1 -2
  339. package/dist/utils/createNoNewlineElement.js.map +1 -1
  340. package/dist/utils/createPreElement.d.ts +1 -1
  341. package/dist/utils/createPreElement.d.ts.map +1 -1
  342. package/dist/utils/createPreElement.js +1 -3
  343. package/dist/utils/createPreElement.js.map +1 -1
  344. package/dist/utils/createRowNodes.d.ts.map +1 -1
  345. package/dist/utils/createRowNodes.js +1 -1
  346. package/dist/utils/createRowNodes.js.map +1 -1
  347. package/dist/utils/createSeparator.d.ts +1 -1
  348. package/dist/utils/createSeparator.d.ts.map +1 -1
  349. package/dist/utils/createSeparator.js +1 -2
  350. package/dist/utils/createSeparator.js.map +1 -1
  351. package/dist/utils/createSpanNodeFromToken.d.ts.map +1 -1
  352. package/dist/utils/createSpanNodeFromToken.js +1 -2
  353. package/dist/utils/createSpanNodeFromToken.js.map +1 -1
  354. package/dist/utils/createStyleElement.d.ts +1 -1
  355. package/dist/utils/createStyleElement.d.ts.map +1 -1
  356. package/dist/utils/createStyleElement.js +1 -2
  357. package/dist/utils/createStyleElement.js.map +1 -1
  358. package/dist/utils/createTransformerWithState.d.ts.map +1 -1
  359. package/dist/utils/createTransformerWithState.js +1 -2
  360. package/dist/utils/createTransformerWithState.js.map +1 -1
  361. package/dist/utils/createUnsafeCSSStyleNode.d.ts.map +1 -1
  362. package/dist/utils/createUnsafeCSSStyleNode.js +1 -2
  363. package/dist/utils/createUnsafeCSSStyleNode.js.map +1 -1
  364. package/dist/utils/createWindowFromScrollPosition.d.ts.map +1 -1
  365. package/dist/utils/createWindowFromScrollPosition.js +5 -5
  366. package/dist/utils/createWindowFromScrollPosition.js.map +1 -1
  367. package/dist/utils/cssWrappers.d.ts.map +1 -1
  368. package/dist/utils/cssWrappers.js +2 -3
  369. package/dist/utils/cssWrappers.js.map +1 -1
  370. package/dist/utils/detachString.d.ts.map +1 -1
  371. package/dist/utils/detachString.js +1 -1
  372. package/dist/utils/detachString.js.map +1 -1
  373. package/dist/utils/diffAcceptRejectHunk.d.ts.map +1 -1
  374. package/dist/utils/diffAcceptRejectHunk.js +1 -2
  375. package/dist/utils/diffAcceptRejectHunk.js.map +1 -1
  376. package/dist/utils/formatCSSVariablePrefix.d.ts.map +1 -1
  377. package/dist/utils/formatCSSVariablePrefix.js +1 -1
  378. package/dist/utils/formatCSSVariablePrefix.js.map +1 -1
  379. package/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -1
  380. package/dist/utils/getDiffHunksRendererOptions.js +1 -1
  381. package/dist/utils/getDiffHunksRendererOptions.js.map +1 -1
  382. package/dist/utils/getFileRendererOptions.d.ts.map +1 -1
  383. package/dist/utils/getFileRendererOptions.js +1 -1
  384. package/dist/utils/getFileRendererOptions.js.map +1 -1
  385. package/dist/utils/getFiletypeFromFileName.d.ts.map +1 -1
  386. package/dist/utils/getFiletypeFromFileName.js +1 -1
  387. package/dist/utils/getFiletypeFromFileName.js.map +1 -1
  388. package/dist/utils/getHighlighterOptions.d.ts.map +1 -1
  389. package/dist/utils/getHighlighterOptions.js +1 -2
  390. package/dist/utils/getHighlighterOptions.js.map +1 -1
  391. package/dist/utils/getHighlighterThemeStyles.d.ts.map +1 -1
  392. package/dist/utils/getHighlighterThemeStyles.js +1 -2
  393. package/dist/utils/getHighlighterThemeStyles.js.map +1 -1
  394. package/dist/utils/getHunkSeparatorSlotName.d.ts.map +1 -1
  395. package/dist/utils/getHunkSeparatorSlotName.js +1 -1
  396. package/dist/utils/getHunkSeparatorSlotName.js.map +1 -1
  397. package/dist/utils/getIconForType.d.ts.map +1 -1
  398. package/dist/utils/getIconForType.js +1 -1
  399. package/dist/utils/getIconForType.js.map +1 -1
  400. package/dist/utils/getLineAnnotationName.d.ts.map +1 -1
  401. package/dist/utils/getLineAnnotationName.js +1 -1
  402. package/dist/utils/getLineAnnotationName.js.map +1 -1
  403. package/dist/utils/getLineEndingType.d.ts.map +1 -1
  404. package/dist/utils/getLineEndingType.js +1 -1
  405. package/dist/utils/getLineEndingType.js.map +1 -1
  406. package/dist/utils/getLineNodes.d.ts +1 -1
  407. package/dist/utils/getLineNodes.d.ts.map +1 -1
  408. package/dist/utils/getLineNodes.js +1 -1
  409. package/dist/utils/getLineNodes.js.map +1 -1
  410. package/dist/utils/getMergeConflictActionSlotName.d.ts.map +1 -1
  411. package/dist/utils/getMergeConflictActionSlotName.js +1 -1
  412. package/dist/utils/getMergeConflictActionSlotName.js.map +1 -1
  413. package/dist/utils/getMergeConflictLineTypes.d.ts.map +1 -1
  414. package/dist/utils/getMergeConflictLineTypes.js +1 -2
  415. package/dist/utils/getMergeConflictLineTypes.js.map +1 -1
  416. package/dist/utils/getOrCreateCodeNode.d.ts.map +1 -1
  417. package/dist/utils/getOrCreateCodeNode.js +1 -1
  418. package/dist/utils/getOrCreateCodeNode.js.map +1 -1
  419. package/dist/utils/getSingularPatch.d.ts.map +1 -1
  420. package/dist/utils/getSingularPatch.js +1 -2
  421. package/dist/utils/getSingularPatch.js.map +1 -1
  422. package/dist/utils/getThemes.d.ts.map +1 -1
  423. package/dist/utils/getThemes.js +1 -2
  424. package/dist/utils/getThemes.js.map +1 -1
  425. package/dist/utils/getTotalLineCountFromHunks.d.ts.map +1 -1
  426. package/dist/utils/getTotalLineCountFromHunks.js +1 -1
  427. package/dist/utils/getTotalLineCountFromHunks.js.map +1 -1
  428. package/dist/utils/hast_utils.d.ts +1 -1
  429. package/dist/utils/hast_utils.d.ts.map +1 -1
  430. package/dist/utils/hast_utils.js +1 -1
  431. package/dist/utils/hast_utils.js.map +1 -1
  432. package/dist/utils/hostTheme.d.ts.map +1 -1
  433. package/dist/utils/hostTheme.js +1 -2
  434. package/dist/utils/hostTheme.js.map +1 -1
  435. package/dist/utils/includesFileAnnotations.d.ts +17 -0
  436. package/dist/utils/includesFileAnnotations.d.ts.map +1 -0
  437. package/dist/utils/includesFileAnnotations.js +19 -0
  438. package/dist/utils/includesFileAnnotations.js.map +1 -0
  439. package/dist/utils/isDefaultRenderRange.d.ts.map +1 -1
  440. package/dist/utils/isDefaultRenderRange.js +1 -1
  441. package/dist/utils/isDefaultRenderRange.js.map +1 -1
  442. package/dist/utils/isDiffPlainText.d.ts.map +1 -1
  443. package/dist/utils/isDiffPlainText.js +1 -2
  444. package/dist/utils/isDiffPlainText.js.map +1 -1
  445. package/dist/utils/isFilePlainText.d.ts.map +1 -1
  446. package/dist/utils/isFilePlainText.js +1 -2
  447. package/dist/utils/isFilePlainText.js.map +1 -1
  448. package/dist/utils/isStyleNode.d.ts.map +1 -1
  449. package/dist/utils/isStyleNode.js +1 -1
  450. package/dist/utils/isStyleNode.js.map +1 -1
  451. package/dist/utils/isWorkerContext.d.ts.map +1 -1
  452. package/dist/utils/isWorkerContext.js +1 -1
  453. package/dist/utils/isWorkerContext.js.map +1 -1
  454. package/dist/utils/iterateOverDiff.d.ts.map +1 -1
  455. package/dist/utils/iterateOverDiff.js +44 -45
  456. package/dist/utils/iterateOverDiff.js.map +1 -1
  457. package/dist/utils/iterateOverFile.d.ts.map +1 -1
  458. package/dist/utils/iterateOverFile.js +1 -1
  459. package/dist/utils/iterateOverFile.js.map +1 -1
  460. package/dist/utils/normalizeDiffResolution.d.ts.map +1 -1
  461. package/dist/utils/normalizeDiffResolution.js +1 -1
  462. package/dist/utils/normalizeDiffResolution.js.map +1 -1
  463. package/dist/utils/parseDiffDecorations.d.ts.map +1 -1
  464. package/dist/utils/parseDiffDecorations.js +1 -2
  465. package/dist/utils/parseDiffDecorations.js.map +1 -1
  466. package/dist/utils/parseDiffFromFile.d.ts +0 -1
  467. package/dist/utils/parseDiffFromFile.d.ts.map +1 -1
  468. package/dist/utils/parseDiffFromFile.js +1 -2
  469. package/dist/utils/parseDiffFromFile.js.map +1 -1
  470. package/dist/utils/parseLineType.d.ts.map +1 -1
  471. package/dist/utils/parseLineType.js +1 -1
  472. package/dist/utils/parseLineType.js.map +1 -1
  473. package/dist/utils/parseMergeConflictDiffFromFile.d.ts.map +1 -1
  474. package/dist/utils/parseMergeConflictDiffFromFile.js +5 -5
  475. package/dist/utils/parseMergeConflictDiffFromFile.js.map +1 -1
  476. package/dist/utils/parsePatchFiles.d.ts.map +1 -1
  477. package/dist/utils/parsePatchFiles.js +6 -7
  478. package/dist/utils/parsePatchFiles.js.map +1 -1
  479. package/dist/utils/prefersReducedMotion.d.ts.map +1 -1
  480. package/dist/utils/prefersReducedMotion.js +1 -1
  481. package/dist/utils/prefersReducedMotion.js.map +1 -1
  482. package/dist/utils/prerenderHTMLIfNecessary.d.ts.map +1 -1
  483. package/dist/utils/prerenderHTMLIfNecessary.js +1 -1
  484. package/dist/utils/prerenderHTMLIfNecessary.js.map +1 -1
  485. package/dist/utils/processLine.d.ts +1 -1
  486. package/dist/utils/processLine.d.ts.map +1 -1
  487. package/dist/utils/processLine.js +1 -2
  488. package/dist/utils/processLine.js.map +1 -1
  489. package/dist/utils/renderDiffWithHighlighter.d.ts.map +1 -1
  490. package/dist/utils/renderDiffWithHighlighter.js +8 -7
  491. package/dist/utils/renderDiffWithHighlighter.js.map +1 -1
  492. package/dist/utils/renderFileWithHighlighter.d.ts.map +1 -1
  493. package/dist/utils/renderFileWithHighlighter.js +5 -4
  494. package/dist/utils/renderFileWithHighlighter.js.map +1 -1
  495. package/dist/utils/resolveConflict.d.ts.map +1 -1
  496. package/dist/utils/resolveConflict.js +1 -2
  497. package/dist/utils/resolveConflict.js.map +1 -1
  498. package/dist/utils/resolveRegion.d.ts.map +1 -1
  499. package/dist/utils/resolveRegion.js +1 -1
  500. package/dist/utils/resolveRegion.js.map +1 -1
  501. package/dist/utils/roundToDevicePixel.d.ts.map +1 -1
  502. package/dist/utils/roundToDevicePixel.js +1 -1
  503. package/dist/utils/roundToDevicePixel.js.map +1 -1
  504. package/dist/utils/scrollbarGutter.d.ts.map +1 -1
  505. package/dist/utils/scrollbarGutter.js +1 -2
  506. package/dist/utils/scrollbarGutter.js.map +1 -1
  507. package/dist/utils/setLanguageOverride.d.ts.map +1 -1
  508. package/dist/utils/setLanguageOverride.js +1 -1
  509. package/dist/utils/setLanguageOverride.js.map +1 -1
  510. package/dist/utils/setWrapperNodeProps.d.ts.map +1 -1
  511. package/dist/utils/setWrapperNodeProps.js +1 -2
  512. package/dist/utils/setWrapperNodeProps.js.map +1 -1
  513. package/dist/utils/shouldUseTokenTransformer.d.ts.map +1 -1
  514. package/dist/utils/shouldUseTokenTransformer.js +1 -1
  515. package/dist/utils/shouldUseTokenTransformer.js.map +1 -1
  516. package/dist/utils/splitFileContents.d.ts.map +1 -1
  517. package/dist/utils/splitFileContents.js +1 -2
  518. package/dist/utils/splitFileContents.js.map +1 -1
  519. package/dist/utils/trimPatchContext.d.ts.map +1 -1
  520. package/dist/utils/trimPatchContext.js +1 -2
  521. package/dist/utils/trimPatchContext.js.map +1 -1
  522. package/dist/utils/virtualDiffLayout.d.ts.map +1 -1
  523. package/dist/utils/virtualDiffLayout.js +1 -2
  524. package/dist/utils/virtualDiffLayout.js.map +1 -1
  525. package/dist/utils/wrapTokenFragments.d.ts +1 -1
  526. package/dist/utils/wrapTokenFragments.d.ts.map +1 -1
  527. package/dist/utils/wrapTokenFragments.js +1 -2
  528. package/dist/utils/wrapTokenFragments.js.map +1 -1
  529. package/dist/worker/WorkerPoolManager.d.ts.map +1 -1
  530. package/dist/worker/WorkerPoolManager.js +5 -5
  531. package/dist/worker/WorkerPoolManager.js.map +1 -1
  532. package/dist/worker/getOrCreateWorkerPoolSingleton.d.ts.map +1 -1
  533. package/dist/worker/getOrCreateWorkerPoolSingleton.js +1 -2
  534. package/dist/worker/getOrCreateWorkerPoolSingleton.js.map +1 -1
  535. package/dist/worker/index.js +1 -2
  536. package/dist/worker/types.d.ts.map +1 -1
  537. package/dist/worker/wasm-B9ZqxnKj.js +8 -0
  538. package/dist/worker/wasm-B9ZqxnKj.js.map +1 -0
  539. package/dist/worker/worker-portable.js +2769 -6370
  540. package/dist/worker/worker-portable.js.map +1 -1
  541. package/dist/worker/worker.js +97 -128
  542. package/dist/worker/worker.js.map +1 -1
  543. package/package.json +15 -19
  544. package/dist/worker/wasm-qE0LgnY3.js +0 -10
  545. package/dist/worker/wasm-qE0LgnY3.js.map +0 -1
@@ -382,7 +382,7 @@ function setCustomExtension(key, lang) {
382
382
  function getCustomExtensionsMap() {
383
383
  return Object.fromEntries(CUSTOM_EXTENSION_TO_FILE_FORMAT);
384
384
  }
385
-
386
385
  //#endregion
387
386
  export { EXTENSION_TO_FILE_FORMAT, getCustomExtensionsMap, getCustomExtensionsVersion, getFiletypeFromFileName, replaceCustomExtensions, setCustomExtension };
387
+
388
388
  //# sourceMappingURL=getFiletypeFromFileName.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getFiletypeFromFileName.js","names":["CUSTOM_EXTENSION_TO_FILE_FORMAT: Map<string, SupportedLanguages>","EXTENSION_TO_FILE_FORMAT: ExtensionFormatMap"],"sources":["../../src/utils/getFiletypeFromFileName.ts"],"sourcesContent":["import type { ExtensionFormatMap, SupportedLanguages } from '../types';\n\nconst CUSTOM_EXTENSION_TO_FILE_FORMAT: Map<string, SupportedLanguages> =\n new Map();\n\nlet customExtensionsVersion = 0;\n\nexport const EXTENSION_TO_FILE_FORMAT: ExtensionFormatMap = {\n '1c': '1c',\n abap: 'abap',\n as: 'actionscript-3',\n ada: 'ada',\n adb: 'ada',\n ads: 'ada',\n adoc: 'asciidoc',\n asciidoc: 'asciidoc',\n 'component.html': 'angular-html',\n 'component.ts': 'angular-ts',\n conf: 'nginx',\n htaccess: 'apache',\n cls: 'tex',\n trigger: 'apex',\n apl: 'apl',\n applescript: 'applescript',\n scpt: 'applescript',\n ara: 'ara',\n asm: 'asm',\n s: 'riscv',\n astro: 'astro',\n awk: 'awk',\n bal: 'ballerina',\n sh: 'zsh',\n bash: 'zsh',\n bat: 'cmd',\n cmd: 'cmd',\n be: 'berry',\n beancount: 'beancount',\n bib: 'bibtex',\n bicep: 'bicep',\n 'blade.php': 'blade',\n bsl: 'bsl',\n c: 'c',\n h: 'objective-cpp',\n cs: 'csharp',\n cpp: 'cpp',\n hpp: 'cpp',\n cc: 'cpp',\n cxx: 'cpp',\n hh: 'cpp',\n cdc: 'cdc',\n cairo: 'cairo',\n clar: 'clarity',\n clj: 'clojure',\n cljs: 'clojure',\n cljc: 'clojure',\n soy: 'soy',\n cmake: 'cmake',\n 'CMakeLists.txt': 'cmake',\n cob: 'cobol',\n cbl: 'cobol',\n cobol: 'cobol',\n CODEOWNERS: 'codeowners',\n ql: 'ql',\n coffee: 'coffeescript',\n lisp: 'lisp',\n cl: 'lisp',\n lsp: 'lisp',\n log: 'log',\n v: 'verilog',\n cql: 'cql',\n cr: 'crystal',\n css: 'css',\n csv: 'csv',\n cue: 'cue',\n cypher: 'cypher',\n cyp: 'cypher',\n d: 'd',\n dart: 'dart',\n dax: 'dax',\n desktop: 'desktop',\n diff: 'diff',\n patch: 'diff',\n Dockerfile: 'dockerfile',\n dockerfile: 'dockerfile',\n env: 'dotenv',\n dm: 'dream-maker',\n edge: 'edge',\n el: 'emacs-lisp',\n ex: 'elixir',\n exs: 'elixir',\n elm: 'elm',\n erb: 'erb',\n erl: 'erlang',\n hrl: 'erlang',\n f: 'fortran-fixed-form',\n for: 'fortran-fixed-form',\n fs: 'fsharp',\n fsi: 'fsharp',\n fsx: 'fsharp',\n f03: 'f03',\n f08: 'f08',\n f18: 'f18',\n f77: 'f77',\n f90: 'fortran-free-form',\n f95: 'fortran-free-form',\n fnl: 'fennel',\n fish: 'fish',\n ftl: 'ftl',\n tres: 'gdresource',\n res: 'gdresource',\n gd: 'gdscript',\n gdshader: 'gdshader',\n gs: 'genie',\n feature: 'gherkin',\n COMMIT_EDITMSG: 'git-commit',\n 'git-rebase-todo': 'git-rebase',\n gjs: 'glimmer-js',\n gleam: 'gleam',\n gts: 'glimmer-ts',\n glsl: 'glsl',\n vert: 'glsl',\n frag: 'glsl',\n shader: 'shaderlab',\n gp: 'gnuplot',\n plt: 'gnuplot',\n gnuplot: 'gnuplot',\n go: 'go',\n graphql: 'graphql',\n gql: 'graphql',\n groovy: 'groovy',\n gvy: 'groovy',\n hack: 'hack',\n haml: 'haml',\n hbs: 'handlebars',\n handlebars: 'handlebars',\n hs: 'haskell',\n lhs: 'haskell',\n hx: 'haxe',\n hcl: 'hcl',\n hjson: 'hjson',\n hlsl: 'hlsl',\n fx: 'hlsl',\n html: 'html',\n htm: 'html',\n http: 'http',\n rest: 'http',\n hxml: 'hxml',\n hy: 'hy',\n imba: 'imba',\n ini: 'ini',\n cfg: 'ini',\n jade: 'pug',\n pug: 'pug',\n java: 'java',\n js: 'javascript',\n mjs: 'javascript',\n cjs: 'javascript',\n jinja: 'jinja',\n jinja2: 'jinja',\n j2: 'jinja',\n jison: 'jison',\n jl: 'julia',\n json: 'json',\n json5: 'json5',\n jsonc: 'jsonc',\n jsonl: 'jsonl',\n jsonnet: 'jsonnet',\n libsonnet: 'jsonnet',\n jssm: 'jssm',\n jsx: 'jsx',\n kt: 'kotlin',\n kts: 'kts',\n kql: 'kusto',\n tex: 'tex',\n ltx: 'tex',\n lean: 'lean4',\n less: 'less',\n liquid: 'liquid',\n lit: 'lit',\n ll: 'llvm',\n logo: 'logo',\n lua: 'lua',\n luau: 'luau',\n Makefile: 'makefile',\n mk: 'makefile',\n makefile: 'makefile',\n md: 'markdown',\n markdown: 'markdown',\n marko: 'marko',\n m: 'wolfram',\n mat: 'matlab',\n mdc: 'mdc',\n mdx: 'mdx',\n wiki: 'wikitext',\n mediawiki: 'wikitext',\n mmd: 'mermaid',\n mermaid: 'mermaid',\n mips: 'mipsasm',\n mojo: 'mojo',\n '🔥': 'mojo',\n move: 'move',\n nar: 'narrat',\n nf: 'nextflow',\n nim: 'nim',\n nims: 'nim',\n nimble: 'nim',\n nix: 'nix',\n nu: 'nushell',\n mm: 'objective-cpp',\n ml: 'ocaml',\n mli: 'ocaml',\n mll: 'ocaml',\n mly: 'ocaml',\n pas: 'pascal',\n p: 'pascal',\n pl: 'prolog',\n pm: 'perl',\n t: 'perl',\n raku: 'raku',\n p6: 'raku',\n pl6: 'raku',\n php: 'php',\n phtml: 'php',\n pls: 'plsql',\n sql: 'sql',\n po: 'po',\n polar: 'polar',\n pcss: 'postcss',\n pot: 'pot',\n potx: 'potx',\n pq: 'powerquery',\n pqm: 'powerquery',\n ps1: 'powershell',\n psm1: 'powershell',\n psd1: 'powershell',\n prisma: 'prisma',\n pro: 'prolog',\n P: 'prolog',\n properties: 'properties',\n proto: 'protobuf',\n pp: 'puppet',\n purs: 'purescript',\n py: 'python',\n pyw: 'python',\n pyi: 'python',\n qml: 'qml',\n qmldir: 'qmldir',\n qss: 'qss',\n r: 'r',\n R: 'r',\n rkt: 'racket',\n rktl: 'racket',\n razor: 'razor',\n cshtml: 'razor',\n rb: 'ruby',\n rbw: 'ruby',\n reg: 'reg',\n regex: 'regexp',\n rel: 'rel',\n rs: 'rust',\n rst: 'rst',\n rake: 'ruby',\n gemspec: 'ruby',\n jbuilder: 'ruby',\n builder: 'ruby',\n rabl: 'ruby',\n arb: 'ruby',\n ru: 'ruby',\n podspec: 'ruby',\n Gemfile: 'ruby',\n Rakefile: 'ruby',\n Guardfile: 'ruby',\n Capfile: 'ruby',\n Berksfile: 'ruby',\n Brewfile: 'ruby',\n Vagrantfile: 'ruby',\n Thorfile: 'ruby',\n Appraisals: 'ruby',\n Dangerfile: 'ruby',\n sas: 'sas',\n sass: 'sass',\n scala: 'scala',\n sc: 'scala',\n scm: 'scheme',\n ss: 'scheme',\n sld: 'scheme',\n scss: 'scss',\n sdbl: 'sdbl',\n shadergraph: 'shader',\n st: 'smalltalk',\n sol: 'solidity',\n sparql: 'sparql',\n rq: 'sparql',\n spl: 'splunk',\n config: 'ssh-config',\n do: 'stata',\n ado: 'stata',\n dta: 'stata',\n styl: 'stylus',\n stylus: 'stylus',\n svelte: 'svelte',\n swift: 'swift',\n sv: 'system-verilog',\n svh: 'system-verilog',\n service: 'systemd',\n socket: 'systemd',\n device: 'systemd',\n timer: 'systemd',\n talon: 'talonscript',\n tasl: 'tasl',\n tcl: 'tcl',\n templ: 'templ',\n tf: 'tf',\n tfvars: 'tfvars',\n toml: 'toml',\n ts: 'typescript',\n tsp: 'typespec',\n tsv: 'tsv',\n tsx: 'tsx',\n ttl: 'turtle',\n twig: 'twig',\n typ: 'typst',\n vv: 'v',\n vala: 'vala',\n vapi: 'vala',\n vb: 'vb',\n vbs: 'vb',\n bas: 'vb',\n vh: 'verilog',\n vhd: 'vhdl',\n vhdl: 'vhdl',\n vim: 'vimscript',\n vue: 'vue',\n 'vine.ts': 'vue-vine',\n vy: 'vyper',\n wasm: 'wasm',\n wat: 'wasm',\n wy: '文言',\n wgsl: 'wgsl',\n wit: 'wit',\n wl: 'wolfram',\n nb: 'wolfram',\n xml: 'xml',\n xsl: 'xsl',\n xslt: 'xsl',\n yaml: 'yaml',\n yml: 'yml',\n zs: 'zenscript',\n zig: 'zig',\n zsh: 'zsh',\n sty: 'tex',\n};\n\nexport function getFiletypeFromFileName(fileName: string): SupportedLanguages {\n if (CUSTOM_EXTENSION_TO_FILE_FORMAT.has(fileName)) {\n return CUSTOM_EXTENSION_TO_FILE_FORMAT.get(fileName) ?? 'text';\n }\n // Handle special files without extensions first\n if (EXTENSION_TO_FILE_FORMAT[fileName] != null) {\n return EXTENSION_TO_FILE_FORMAT[fileName];\n }\n\n // Try compound extensions first (e.g., .blade.php, .component.ts)\n const compoundMatch = fileName.match(/\\.([^/\\\\]+\\.[^/\\\\]+)$/);\n if (compoundMatch != null) {\n if (CUSTOM_EXTENSION_TO_FILE_FORMAT.has(compoundMatch[1])) {\n return CUSTOM_EXTENSION_TO_FILE_FORMAT.get(compoundMatch[1]) ?? 'text';\n }\n if (EXTENSION_TO_FILE_FORMAT[compoundMatch[1]] != null) {\n return EXTENSION_TO_FILE_FORMAT[compoundMatch[1]] ?? 'text';\n }\n }\n\n // Fall back to simple extension\n const simpleMatch = fileName.match(/\\.([^.]+)$/)?.[1] ?? '';\n if (CUSTOM_EXTENSION_TO_FILE_FORMAT.has(simpleMatch)) {\n return CUSTOM_EXTENSION_TO_FILE_FORMAT.get(simpleMatch) ?? 'text';\n }\n return EXTENSION_TO_FILE_FORMAT[simpleMatch] ?? 'text';\n}\n\nexport function replaceCustomExtensions(\n version: number,\n map: ExtensionFormatMap\n): boolean {\n if (version <= customExtensionsVersion) {\n return false;\n }\n CUSTOM_EXTENSION_TO_FILE_FORMAT.clear();\n for (const key in map) {\n const lang = map[key];\n if (lang != null) {\n CUSTOM_EXTENSION_TO_FILE_FORMAT.set(key, lang);\n }\n }\n customExtensionsVersion = version;\n return true;\n}\n\nexport function getCustomExtensionsVersion(): number {\n return customExtensionsVersion;\n}\n\nexport function setCustomExtension(\n key: string,\n lang: SupportedLanguages\n): boolean {\n const existing = CUSTOM_EXTENSION_TO_FILE_FORMAT.get(key);\n if (existing === lang) {\n return false;\n }\n if (existing != null) {\n console.warn(\n `setCustomExtension: overriding custom mapping for \"${key}\" from \"${existing}\" to \"${lang}\"`\n );\n }\n CUSTOM_EXTENSION_TO_FILE_FORMAT.set(key, lang);\n customExtensionsVersion++;\n return true;\n}\n\nexport function getCustomExtensionsMap(): ExtensionFormatMap {\n return Object.fromEntries(\n CUSTOM_EXTENSION_TO_FILE_FORMAT\n ) as ExtensionFormatMap;\n}\n"],"mappings":";AAEA,MAAMA,kDACJ,IAAI,KAAK;AAEX,IAAI,0BAA0B;AAE9B,MAAaC,2BAA+C;CAC1D,MAAM;CACN,MAAM;CACN,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,UAAU;CACV,kBAAkB;CAClB,gBAAgB;CAChB,MAAM;CACN,UAAU;CACV,KAAK;CACL,SAAS;CACT,KAAK;CACL,aAAa;CACb,MAAM;CACN,KAAK;CACL,KAAK;CACL,GAAG;CACH,OAAO;CACP,KAAK;CACL,KAAK;CACL,IAAI;CACJ,MAAM;CACN,KAAK;CACL,KAAK;CACL,IAAI;CACJ,WAAW;CACX,KAAK;CACL,OAAO;CACP,aAAa;CACb,KAAK;CACL,GAAG;CACH,GAAG;CACH,IAAI;CACJ,KAAK;CACL,KAAK;CACL,IAAI;CACJ,KAAK;CACL,IAAI;CACJ,KAAK;CACL,OAAO;CACP,MAAM;CACN,KAAK;CACL,MAAM;CACN,MAAM;CACN,KAAK;CACL,OAAO;CACP,kBAAkB;CAClB,KAAK;CACL,KAAK;CACL,OAAO;CACP,YAAY;CACZ,IAAI;CACJ,QAAQ;CACR,MAAM;CACN,IAAI;CACJ,KAAK;CACL,KAAK;CACL,GAAG;CACH,KAAK;CACL,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACL,QAAQ;CACR,KAAK;CACL,GAAG;CACH,MAAM;CACN,KAAK;CACL,SAAS;CACT,MAAM;CACN,OAAO;CACP,YAAY;CACZ,YAAY;CACZ,KAAK;CACL,IAAI;CACJ,MAAM;CACN,IAAI;CACJ,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,GAAG;CACH,KAAK;CACL,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,KAAK;CACL,MAAM;CACN,KAAK;CACL,IAAI;CACJ,UAAU;CACV,IAAI;CACJ,SAAS;CACT,gBAAgB;CAChB,mBAAmB;CACnB,KAAK;CACL,OAAO;CACP,KAAK;CACL,MAAM;CACN,MAAM;CACN,MAAM;CACN,QAAQ;CACR,IAAI;CACJ,KAAK;CACL,SAAS;CACT,IAAI;CACJ,SAAS;CACT,KAAK;CACL,QAAQ;CACR,KAAK;CACL,MAAM;CACN,MAAM;CACN,KAAK;CACL,YAAY;CACZ,IAAI;CACJ,KAAK;CACL,IAAI;CACJ,KAAK;CACL,OAAO;CACP,MAAM;CACN,IAAI;CACJ,MAAM;CACN,KAAK;CACL,MAAM;CACN,MAAM;CACN,MAAM;CACN,IAAI;CACJ,MAAM;CACN,KAAK;CACL,KAAK;CACL,MAAM;CACN,KAAK;CACL,MAAM;CACN,IAAI;CACJ,KAAK;CACL,KAAK;CACL,OAAO;CACP,QAAQ;CACR,IAAI;CACJ,OAAO;CACP,IAAI;CACJ,MAAM;CACN,OAAO;CACP,OAAO;CACP,OAAO;CACP,SAAS;CACT,WAAW;CACX,MAAM;CACN,KAAK;CACL,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,MAAM;CACN,QAAQ;CACR,KAAK;CACL,IAAI;CACJ,MAAM;CACN,KAAK;CACL,MAAM;CACN,UAAU;CACV,IAAI;CACJ,UAAU;CACV,IAAI;CACJ,UAAU;CACV,OAAO;CACP,GAAG;CACH,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,WAAW;CACX,KAAK;CACL,SAAS;CACT,MAAM;CACN,MAAM;CACN,MAAM;CACN,MAAM;CACN,KAAK;CACL,IAAI;CACJ,KAAK;CACL,MAAM;CACN,QAAQ;CACR,KAAK;CACL,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,GAAG;CACH,IAAI;CACJ,IAAI;CACJ,GAAG;CACH,MAAM;CACN,IAAI;CACJ,KAAK;CACL,KAAK;CACL,OAAO;CACP,KAAK;CACL,KAAK;CACL,IAAI;CACJ,OAAO;CACP,MAAM;CACN,KAAK;CACL,MAAM;CACN,IAAI;CACJ,KAAK;CACL,KAAK;CACL,MAAM;CACN,MAAM;CACN,QAAQ;CACR,KAAK;CACL,GAAG;CACH,YAAY;CACZ,OAAO;CACP,IAAI;CACJ,MAAM;CACN,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACL,QAAQ;CACR,KAAK;CACL,GAAG;CACH,GAAG;CACH,KAAK;CACL,MAAM;CACN,OAAO;CACP,QAAQ;CACR,IAAI;CACJ,KAAK;CACL,KAAK;CACL,OAAO;CACP,KAAK;CACL,IAAI;CACJ,KAAK;CACL,MAAM;CACN,SAAS;CACT,UAAU;CACV,SAAS;CACT,MAAM;CACN,KAAK;CACL,IAAI;CACJ,SAAS;CACT,SAAS;CACT,UAAU;CACV,WAAW;CACX,SAAS;CACT,WAAW;CACX,UAAU;CACV,aAAa;CACb,UAAU;CACV,YAAY;CACZ,YAAY;CACZ,KAAK;CACL,MAAM;CACN,OAAO;CACP,IAAI;CACJ,KAAK;CACL,IAAI;CACJ,KAAK;CACL,MAAM;CACN,MAAM;CACN,aAAa;CACb,IAAI;CACJ,KAAK;CACL,QAAQ;CACR,IAAI;CACJ,KAAK;CACL,QAAQ;CACR,IAAI;CACJ,KAAK;CACL,KAAK;CACL,MAAM;CACN,QAAQ;CACR,QAAQ;CACR,OAAO;CACP,IAAI;CACJ,KAAK;CACL,SAAS;CACT,QAAQ;CACR,QAAQ;CACR,OAAO;CACP,OAAO;CACP,MAAM;CACN,KAAK;CACL,OAAO;CACP,IAAI;CACJ,QAAQ;CACR,MAAM;CACN,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAM;CACN,KAAK;CACL,IAAI;CACJ,MAAM;CACN,MAAM;CACN,IAAI;CACJ,KAAK;CACL,KAAK;CACL,IAAI;CACJ,KAAK;CACL,MAAM;CACN,KAAK;CACL,KAAK;CACL,WAAW;CACX,IAAI;CACJ,MAAM;CACN,KAAK;CACL,IAAI;CACJ,MAAM;CACN,KAAK;CACL,IAAI;CACJ,IAAI;CACJ,KAAK;CACL,KAAK;CACL,MAAM;CACN,MAAM;CACN,KAAK;CACL,IAAI;CACJ,KAAK;CACL,KAAK;CACL,KAAK;CACN;AAED,SAAgB,wBAAwB,UAAsC;AAC5E,KAAI,gCAAgC,IAAI,SAAS,CAC/C,QAAO,gCAAgC,IAAI,SAAS,IAAI;AAG1D,KAAI,yBAAyB,aAAa,KACxC,QAAO,yBAAyB;CAIlC,MAAM,gBAAgB,SAAS,MAAM,wBAAwB;AAC7D,KAAI,iBAAiB,MAAM;AACzB,MAAI,gCAAgC,IAAI,cAAc,GAAG,CACvD,QAAO,gCAAgC,IAAI,cAAc,GAAG,IAAI;AAElE,MAAI,yBAAyB,cAAc,OAAO,KAChD,QAAO,yBAAyB,cAAc,OAAO;;CAKzD,MAAM,cAAc,SAAS,MAAM,aAAa,GAAG,MAAM;AACzD,KAAI,gCAAgC,IAAI,YAAY,CAClD,QAAO,gCAAgC,IAAI,YAAY,IAAI;AAE7D,QAAO,yBAAyB,gBAAgB;;AAGlD,SAAgB,wBACd,SACA,KACS;AACT,KAAI,WAAW,wBACb,QAAO;AAET,iCAAgC,OAAO;AACvC,MAAK,MAAM,OAAO,KAAK;EACrB,MAAM,OAAO,IAAI;AACjB,MAAI,QAAQ,KACV,iCAAgC,IAAI,KAAK,KAAK;;AAGlD,2BAA0B;AAC1B,QAAO;;AAGT,SAAgB,6BAAqC;AACnD,QAAO;;AAGT,SAAgB,mBACd,KACA,MACS;CACT,MAAM,WAAW,gCAAgC,IAAI,IAAI;AACzD,KAAI,aAAa,KACf,QAAO;AAET,KAAI,YAAY,KACd,SAAQ,KACN,sDAAsD,IAAI,UAAU,SAAS,QAAQ,KAAK,GAC3F;AAEH,iCAAgC,IAAI,KAAK,KAAK;AAC9C;AACA,QAAO;;AAGT,SAAgB,yBAA6C;AAC3D,QAAO,OAAO,YACZ,gCACD"}
1
+ {"version":3,"file":"getFiletypeFromFileName.js","names":[],"sources":["../../src/utils/getFiletypeFromFileName.ts"],"sourcesContent":["import type { ExtensionFormatMap, SupportedLanguages } from '../types';\n\nconst CUSTOM_EXTENSION_TO_FILE_FORMAT: Map<string, SupportedLanguages> =\n new Map();\n\nlet customExtensionsVersion = 0;\n\nexport const EXTENSION_TO_FILE_FORMAT: ExtensionFormatMap = {\n '1c': '1c',\n abap: 'abap',\n as: 'actionscript-3',\n ada: 'ada',\n adb: 'ada',\n ads: 'ada',\n adoc: 'asciidoc',\n asciidoc: 'asciidoc',\n 'component.html': 'angular-html',\n 'component.ts': 'angular-ts',\n conf: 'nginx',\n htaccess: 'apache',\n cls: 'tex',\n trigger: 'apex',\n apl: 'apl',\n applescript: 'applescript',\n scpt: 'applescript',\n ara: 'ara',\n asm: 'asm',\n s: 'riscv',\n astro: 'astro',\n awk: 'awk',\n bal: 'ballerina',\n sh: 'zsh',\n bash: 'zsh',\n bat: 'cmd',\n cmd: 'cmd',\n be: 'berry',\n beancount: 'beancount',\n bib: 'bibtex',\n bicep: 'bicep',\n 'blade.php': 'blade',\n bsl: 'bsl',\n c: 'c',\n h: 'objective-cpp',\n cs: 'csharp',\n cpp: 'cpp',\n hpp: 'cpp',\n cc: 'cpp',\n cxx: 'cpp',\n hh: 'cpp',\n cdc: 'cdc',\n cairo: 'cairo',\n clar: 'clarity',\n clj: 'clojure',\n cljs: 'clojure',\n cljc: 'clojure',\n soy: 'soy',\n cmake: 'cmake',\n 'CMakeLists.txt': 'cmake',\n cob: 'cobol',\n cbl: 'cobol',\n cobol: 'cobol',\n CODEOWNERS: 'codeowners',\n ql: 'ql',\n coffee: 'coffeescript',\n lisp: 'lisp',\n cl: 'lisp',\n lsp: 'lisp',\n log: 'log',\n v: 'verilog',\n cql: 'cql',\n cr: 'crystal',\n css: 'css',\n csv: 'csv',\n cue: 'cue',\n cypher: 'cypher',\n cyp: 'cypher',\n d: 'd',\n dart: 'dart',\n dax: 'dax',\n desktop: 'desktop',\n diff: 'diff',\n patch: 'diff',\n Dockerfile: 'dockerfile',\n dockerfile: 'dockerfile',\n env: 'dotenv',\n dm: 'dream-maker',\n edge: 'edge',\n el: 'emacs-lisp',\n ex: 'elixir',\n exs: 'elixir',\n elm: 'elm',\n erb: 'erb',\n erl: 'erlang',\n hrl: 'erlang',\n f: 'fortran-fixed-form',\n for: 'fortran-fixed-form',\n fs: 'fsharp',\n fsi: 'fsharp',\n fsx: 'fsharp',\n f03: 'f03',\n f08: 'f08',\n f18: 'f18',\n f77: 'f77',\n f90: 'fortran-free-form',\n f95: 'fortran-free-form',\n fnl: 'fennel',\n fish: 'fish',\n ftl: 'ftl',\n tres: 'gdresource',\n res: 'gdresource',\n gd: 'gdscript',\n gdshader: 'gdshader',\n gs: 'genie',\n feature: 'gherkin',\n COMMIT_EDITMSG: 'git-commit',\n 'git-rebase-todo': 'git-rebase',\n gjs: 'glimmer-js',\n gleam: 'gleam',\n gts: 'glimmer-ts',\n glsl: 'glsl',\n vert: 'glsl',\n frag: 'glsl',\n shader: 'shaderlab',\n gp: 'gnuplot',\n plt: 'gnuplot',\n gnuplot: 'gnuplot',\n go: 'go',\n graphql: 'graphql',\n gql: 'graphql',\n groovy: 'groovy',\n gvy: 'groovy',\n hack: 'hack',\n haml: 'haml',\n hbs: 'handlebars',\n handlebars: 'handlebars',\n hs: 'haskell',\n lhs: 'haskell',\n hx: 'haxe',\n hcl: 'hcl',\n hjson: 'hjson',\n hlsl: 'hlsl',\n fx: 'hlsl',\n html: 'html',\n htm: 'html',\n http: 'http',\n rest: 'http',\n hxml: 'hxml',\n hy: 'hy',\n imba: 'imba',\n ini: 'ini',\n cfg: 'ini',\n jade: 'pug',\n pug: 'pug',\n java: 'java',\n js: 'javascript',\n mjs: 'javascript',\n cjs: 'javascript',\n jinja: 'jinja',\n jinja2: 'jinja',\n j2: 'jinja',\n jison: 'jison',\n jl: 'julia',\n json: 'json',\n json5: 'json5',\n jsonc: 'jsonc',\n jsonl: 'jsonl',\n jsonnet: 'jsonnet',\n libsonnet: 'jsonnet',\n jssm: 'jssm',\n jsx: 'jsx',\n kt: 'kotlin',\n kts: 'kts',\n kql: 'kusto',\n tex: 'tex',\n ltx: 'tex',\n lean: 'lean4',\n less: 'less',\n liquid: 'liquid',\n lit: 'lit',\n ll: 'llvm',\n logo: 'logo',\n lua: 'lua',\n luau: 'luau',\n Makefile: 'makefile',\n mk: 'makefile',\n makefile: 'makefile',\n md: 'markdown',\n markdown: 'markdown',\n marko: 'marko',\n m: 'wolfram',\n mat: 'matlab',\n mdc: 'mdc',\n mdx: 'mdx',\n wiki: 'wikitext',\n mediawiki: 'wikitext',\n mmd: 'mermaid',\n mermaid: 'mermaid',\n mips: 'mipsasm',\n mojo: 'mojo',\n '🔥': 'mojo',\n move: 'move',\n nar: 'narrat',\n nf: 'nextflow',\n nim: 'nim',\n nims: 'nim',\n nimble: 'nim',\n nix: 'nix',\n nu: 'nushell',\n mm: 'objective-cpp',\n ml: 'ocaml',\n mli: 'ocaml',\n mll: 'ocaml',\n mly: 'ocaml',\n pas: 'pascal',\n p: 'pascal',\n pl: 'prolog',\n pm: 'perl',\n t: 'perl',\n raku: 'raku',\n p6: 'raku',\n pl6: 'raku',\n php: 'php',\n phtml: 'php',\n pls: 'plsql',\n sql: 'sql',\n po: 'po',\n polar: 'polar',\n pcss: 'postcss',\n pot: 'pot',\n potx: 'potx',\n pq: 'powerquery',\n pqm: 'powerquery',\n ps1: 'powershell',\n psm1: 'powershell',\n psd1: 'powershell',\n prisma: 'prisma',\n pro: 'prolog',\n P: 'prolog',\n properties: 'properties',\n proto: 'protobuf',\n pp: 'puppet',\n purs: 'purescript',\n py: 'python',\n pyw: 'python',\n pyi: 'python',\n qml: 'qml',\n qmldir: 'qmldir',\n qss: 'qss',\n r: 'r',\n R: 'r',\n rkt: 'racket',\n rktl: 'racket',\n razor: 'razor',\n cshtml: 'razor',\n rb: 'ruby',\n rbw: 'ruby',\n reg: 'reg',\n regex: 'regexp',\n rel: 'rel',\n rs: 'rust',\n rst: 'rst',\n rake: 'ruby',\n gemspec: 'ruby',\n jbuilder: 'ruby',\n builder: 'ruby',\n rabl: 'ruby',\n arb: 'ruby',\n ru: 'ruby',\n podspec: 'ruby',\n Gemfile: 'ruby',\n Rakefile: 'ruby',\n Guardfile: 'ruby',\n Capfile: 'ruby',\n Berksfile: 'ruby',\n Brewfile: 'ruby',\n Vagrantfile: 'ruby',\n Thorfile: 'ruby',\n Appraisals: 'ruby',\n Dangerfile: 'ruby',\n sas: 'sas',\n sass: 'sass',\n scala: 'scala',\n sc: 'scala',\n scm: 'scheme',\n ss: 'scheme',\n sld: 'scheme',\n scss: 'scss',\n sdbl: 'sdbl',\n shadergraph: 'shader',\n st: 'smalltalk',\n sol: 'solidity',\n sparql: 'sparql',\n rq: 'sparql',\n spl: 'splunk',\n config: 'ssh-config',\n do: 'stata',\n ado: 'stata',\n dta: 'stata',\n styl: 'stylus',\n stylus: 'stylus',\n svelte: 'svelte',\n swift: 'swift',\n sv: 'system-verilog',\n svh: 'system-verilog',\n service: 'systemd',\n socket: 'systemd',\n device: 'systemd',\n timer: 'systemd',\n talon: 'talonscript',\n tasl: 'tasl',\n tcl: 'tcl',\n templ: 'templ',\n tf: 'tf',\n tfvars: 'tfvars',\n toml: 'toml',\n ts: 'typescript',\n tsp: 'typespec',\n tsv: 'tsv',\n tsx: 'tsx',\n ttl: 'turtle',\n twig: 'twig',\n typ: 'typst',\n vv: 'v',\n vala: 'vala',\n vapi: 'vala',\n vb: 'vb',\n vbs: 'vb',\n bas: 'vb',\n vh: 'verilog',\n vhd: 'vhdl',\n vhdl: 'vhdl',\n vim: 'vimscript',\n vue: 'vue',\n 'vine.ts': 'vue-vine',\n vy: 'vyper',\n wasm: 'wasm',\n wat: 'wasm',\n wy: '文言',\n wgsl: 'wgsl',\n wit: 'wit',\n wl: 'wolfram',\n nb: 'wolfram',\n xml: 'xml',\n xsl: 'xsl',\n xslt: 'xsl',\n yaml: 'yaml',\n yml: 'yml',\n zs: 'zenscript',\n zig: 'zig',\n zsh: 'zsh',\n sty: 'tex',\n};\n\nexport function getFiletypeFromFileName(fileName: string): SupportedLanguages {\n if (CUSTOM_EXTENSION_TO_FILE_FORMAT.has(fileName)) {\n return CUSTOM_EXTENSION_TO_FILE_FORMAT.get(fileName) ?? 'text';\n }\n // Handle special files without extensions first\n if (EXTENSION_TO_FILE_FORMAT[fileName] != null) {\n return EXTENSION_TO_FILE_FORMAT[fileName];\n }\n\n // Try compound extensions first (e.g., .blade.php, .component.ts)\n const compoundMatch = fileName.match(/\\.([^/\\\\]+\\.[^/\\\\]+)$/);\n if (compoundMatch != null) {\n if (CUSTOM_EXTENSION_TO_FILE_FORMAT.has(compoundMatch[1])) {\n return CUSTOM_EXTENSION_TO_FILE_FORMAT.get(compoundMatch[1]) ?? 'text';\n }\n if (EXTENSION_TO_FILE_FORMAT[compoundMatch[1]] != null) {\n return EXTENSION_TO_FILE_FORMAT[compoundMatch[1]] ?? 'text';\n }\n }\n\n // Fall back to simple extension\n const simpleMatch = fileName.match(/\\.([^.]+)$/)?.[1] ?? '';\n if (CUSTOM_EXTENSION_TO_FILE_FORMAT.has(simpleMatch)) {\n return CUSTOM_EXTENSION_TO_FILE_FORMAT.get(simpleMatch) ?? 'text';\n }\n return EXTENSION_TO_FILE_FORMAT[simpleMatch] ?? 'text';\n}\n\nexport function replaceCustomExtensions(\n version: number,\n map: ExtensionFormatMap\n): boolean {\n if (version <= customExtensionsVersion) {\n return false;\n }\n CUSTOM_EXTENSION_TO_FILE_FORMAT.clear();\n for (const key in map) {\n const lang = map[key];\n if (lang != null) {\n CUSTOM_EXTENSION_TO_FILE_FORMAT.set(key, lang);\n }\n }\n customExtensionsVersion = version;\n return true;\n}\n\nexport function getCustomExtensionsVersion(): number {\n return customExtensionsVersion;\n}\n\nexport function setCustomExtension(\n key: string,\n lang: SupportedLanguages\n): boolean {\n const existing = CUSTOM_EXTENSION_TO_FILE_FORMAT.get(key);\n if (existing === lang) {\n return false;\n }\n if (existing != null) {\n console.warn(\n `setCustomExtension: overriding custom mapping for \"${key}\" from \"${existing}\" to \"${lang}\"`\n );\n }\n CUSTOM_EXTENSION_TO_FILE_FORMAT.set(key, lang);\n customExtensionsVersion++;\n return true;\n}\n\nexport function getCustomExtensionsMap(): ExtensionFormatMap {\n return Object.fromEntries(\n CUSTOM_EXTENSION_TO_FILE_FORMAT\n ) as ExtensionFormatMap;\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getHighlighterOptions.d.ts","names":["DiffsThemeNames","HighlighterTypes","SupportedLanguages","ThemesType","HighlighterOptionsShape","GetHighlighterOptionsReturn","getHighlighterOptions","theme","preferredHighlighter"],"sources":["../../src/utils/getHighlighterOptions.d.ts"],"sourcesContent":["import type { DiffsThemeNames, HighlighterTypes, SupportedLanguages, ThemesType } from '../types';\ninterface HighlighterOptionsShape {\n theme?: DiffsThemeNames | ThemesType;\n preferredHighlighter?: HighlighterTypes;\n}\ninterface GetHighlighterOptionsReturn {\n langs: SupportedLanguages[];\n themes: DiffsThemeNames[];\n preferredHighlighter: HighlighterTypes;\n}\nexport declare function getHighlighterOptions(lang: SupportedLanguages | undefined, { theme, preferredHighlighter }: HighlighterOptionsShape): GetHighlighterOptionsReturn;\nexport {};\n//# sourceMappingURL=getHighlighterOptions.d.ts.map"],"mappings":";;;UACUI,uBAAAA;UACEJ,kBAAkBG;EADpBC,oBAAAA,CAAAA,EAEiBH,gBAFM;;UAIvBI,2BAAAA,CAHoBF;EACHF,KAAAA,EAGhBC,kBAHgBD,EAAAA;EAAgB,MAAA,EAI/BD,eAJ+B,EAAA;EAEjCK,oBAAAA,EAGgBJ,gBAHW;;AAEzBD,iBAGYM,qBAAAA,CAHZN,IAAAA,EAGwCE,kBAHxCF,GAAAA,SAAAA,EAAAA;EAAAA,KAAAA;EAAAA;AAAAA,CAAAA,EAGyGI,uBAHzGJ,CAAAA,EAGmIK,2BAHnIL"}
1
+ {"version":3,"file":"getHighlighterOptions.d.ts","names":[],"sources":["../../src/utils/getHighlighterOptions.ts"],"mappings":";;;UAQU,uBAAA;EACR,KAAA,GAAQ,eAAA,GAAkB,UAAA;EAC1B,oBAAA,GAAuB,gBAAA;AAAA;AAAA,UAGf,2BAAA;EACR,KAAA,EAAO,kBAAA;EACP,MAAA,EAAQ,eAAA;EACR,oBAAA,EAAsB,gBAAA;AAAA;AAAA,iBAGR,qBAAA,CACd,IAAA,EAAM,kBAAA;EACJ,KAAA;EAAO;AAAA,GAAqC,uBAAA,GAC7C,2BAAA"}
@@ -1,5 +1,4 @@
1
1
  import { getThemes } from "./getThemes.js";
2
-
3
2
  //#region src/utils/getHighlighterOptions.ts
4
3
  function getHighlighterOptions(lang, { theme, preferredHighlighter = "shiki-js" }) {
5
4
  return {
@@ -8,7 +7,7 @@ function getHighlighterOptions(lang, { theme, preferredHighlighter = "shiki-js"
8
7
  preferredHighlighter
9
8
  };
10
9
  }
11
-
12
10
  //#endregion
13
11
  export { getHighlighterOptions };
12
+
14
13
  //# sourceMappingURL=getHighlighterOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getHighlighterOptions.js","names":[],"sources":["../../src/utils/getHighlighterOptions.ts"],"sourcesContent":["import type {\n DiffsThemeNames,\n HighlighterTypes,\n SupportedLanguages,\n ThemesType,\n} from '../types';\nimport { getThemes } from './getThemes';\n\ninterface HighlighterOptionsShape {\n theme?: DiffsThemeNames | ThemesType;\n preferredHighlighter?: HighlighterTypes;\n}\n\ninterface GetHighlighterOptionsReturn {\n langs: SupportedLanguages[];\n themes: DiffsThemeNames[];\n preferredHighlighter: HighlighterTypes;\n}\n\nexport function getHighlighterOptions(\n lang: SupportedLanguages | undefined,\n { theme, preferredHighlighter = 'shiki-js' }: HighlighterOptionsShape\n): GetHighlighterOptionsReturn {\n return {\n langs: [lang ?? 'text'],\n themes: getThemes(theme),\n preferredHighlighter,\n };\n}\n"],"mappings":";;;AAmBA,SAAgB,sBACd,MACA,EAAE,OAAO,uBAAuB,cACH;AAC7B,QAAO;EACL,OAAO,CAAC,QAAQ,OAAO;EACvB,QAAQ,UAAU,MAAM;EACxB;EACD"}
1
+ {"version":3,"file":"getHighlighterOptions.js","names":[],"sources":["../../src/utils/getHighlighterOptions.ts"],"sourcesContent":["import type {\n DiffsThemeNames,\n HighlighterTypes,\n SupportedLanguages,\n ThemesType,\n} from '../types';\nimport { getThemes } from './getThemes';\n\ninterface HighlighterOptionsShape {\n theme?: DiffsThemeNames | ThemesType;\n preferredHighlighter?: HighlighterTypes;\n}\n\ninterface GetHighlighterOptionsReturn {\n langs: SupportedLanguages[];\n themes: DiffsThemeNames[];\n preferredHighlighter: HighlighterTypes;\n}\n\nexport function getHighlighterOptions(\n lang: SupportedLanguages | undefined,\n { theme, preferredHighlighter = 'shiki-js' }: HighlighterOptionsShape\n): GetHighlighterOptionsReturn {\n return {\n langs: [lang ?? 'text'],\n themes: getThemes(theme),\n preferredHighlighter,\n };\n}\n"],"mappings":";;AAmBA,SAAgB,sBACd,MACA,EAAE,OAAO,uBAAuB,cACH;CAC7B,OAAO;EACL,OAAO,CAAC,QAAQ,MAAM;EACtB,QAAQ,UAAU,KAAK;EACvB;CACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"getHighlighterThemeStyles.d.ts","names":["DiffsHighlighter","DiffsThemeNames","ThemesType","GetHighlighterThemeStylesProps","getHighlighterThemeStyles","theme","highlighter","prefix"],"sources":["../../src/utils/getHighlighterThemeStyles.d.ts"],"sourcesContent":["import type { DiffsHighlighter, DiffsThemeNames, ThemesType } from '../types';\ninterface GetHighlighterThemeStylesProps {\n theme?: DiffsThemeNames | ThemesType;\n highlighter: DiffsHighlighter;\n prefix?: string;\n}\nexport declare function getHighlighterThemeStyles({ theme, highlighter, prefix }: GetHighlighterThemeStylesProps): string;\nexport {};\n//# sourceMappingURL=getHighlighterThemeStyles.d.ts.map"],"mappings":";;;UACUG,8BAAAA;UACEF,kBAAkBC;EADpBC,WAAAA,EAEOH,gBAFPG;EACEF,MAAAA,CAAAA,EAAAA,MAAAA;;AACKD,iBAGOI,yBAAAA,CAHPJ;EAAAA,KAAAA;EAAAA,WAAAA;EAAAA;AAAAA,CAAAA,EAGiEG,8BAHjEH,CAAAA,EAAAA,MAAAA"}
1
+ {"version":3,"file":"getHighlighterThemeStyles.d.ts","names":[],"sources":["../../src/utils/getHighlighterThemeStyles.ts"],"mappings":";;;UAWU,8BAAA;EACR,KAAA,GAAQ,eAAA,GAAkB,UAAA;EAC1B,WAAA,EAAa,gBAAA;EACb,MAAA;AAAA;AAAA,iBAac,yBAAA;EACd,KAAA;EACA,WAAA;EACA;AAAA,GACC,8BAAA"}
@@ -1,7 +1,6 @@
1
1
  import { DEFAULT_THEMES } from "../constants.js";
2
2
  import { formatCSSVariablePrefix } from "./formatCSSVariablePrefix.js";
3
3
  import { normalizeThemeColors } from "@pierre/theming/color";
4
-
5
4
  //#region src/utils/getHighlighterThemeStyles.ts
6
5
  function getHighlighterThemeStyles({ theme = DEFAULT_THEMES, highlighter, prefix }) {
7
6
  let styles = "";
@@ -38,7 +37,7 @@ function getGitVariables(themeData, modePrefix) {
38
37
  if (modifiedBlue != null) styles += `${formatCSSVariablePrefix("global")}${modePrefix}modified-color:${modifiedBlue};`;
39
38
  return styles;
40
39
  }
41
-
42
40
  //#endregion
43
41
  export { getHighlighterThemeStyles };
42
+
44
43
  //# sourceMappingURL=getHighlighterThemeStyles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getHighlighterThemeStyles.js","names":[],"sources":["../../src/utils/getHighlighterThemeStyles.ts"],"sourcesContent":["import { normalizeThemeColors } from '@pierre/theming/color';\n\nimport { DEFAULT_THEMES } from '../constants';\nimport type {\n DiffsHighlighter,\n DiffsThemeNames,\n ThemeRegistrationResolved,\n ThemesType,\n} from '../types';\nimport { formatCSSVariablePrefix } from './formatCSSVariablePrefix';\n\ninterface GetHighlighterThemeStylesProps {\n theme?: DiffsThemeNames | ThemesType;\n highlighter: DiffsHighlighter;\n prefix?: string;\n}\n\n// FIXME(amadeus): We'll probably need to\n// re-think this when it comes to removing inline\n// styles\n//\n// The base foreground/background now flow through @pierre/theming's\n// normalizeThemeColors, which preserves the theme's top-level fg/bg. The git\n// colors deliberately stay on the diffs-local 2-link lookup below (see\n// getGitVariables) to keep this output byte-identical; adopting\n// normalizeThemeColors' longer git chain is a separate, independently verified\n// follow-up rather than a side effect of this migration.\nexport function getHighlighterThemeStyles({\n theme = DEFAULT_THEMES,\n highlighter,\n prefix,\n}: GetHighlighterThemeStylesProps): string {\n let styles = '';\n if (typeof theme === 'string') {\n const themeData = highlighter.getTheme(theme);\n const normalized = normalizeThemeColors(themeData);\n styles += `color:${normalized.fg};`;\n styles += `background-color:${normalized.bg};`;\n styles += `${formatCSSVariablePrefix('global')}fg:${normalized.fg};`;\n styles += `${formatCSSVariablePrefix('global')}bg:${normalized.bg};`;\n styles += getGitVariables(themeData, prefix);\n } else {\n let themeData = highlighter.getTheme(theme.dark);\n let normalized = normalizeThemeColors(themeData);\n styles += `${formatCSSVariablePrefix('global')}dark:${normalized.fg};`;\n styles += `${formatCSSVariablePrefix('global')}dark-bg:${normalized.bg};`;\n styles += getGitVariables(themeData, 'dark');\n\n themeData = highlighter.getTheme(theme.light);\n normalized = normalizeThemeColors(themeData);\n styles += `${formatCSSVariablePrefix('global')}light:${normalized.fg};`;\n styles += `${formatCSSVariablePrefix('global')}light-bg:${normalized.bg};`;\n styles += getGitVariables(themeData, 'light');\n }\n return styles;\n}\n\n// Emits the diffs git-status CSS variables (addition/deletion/modified colors)\n// for a resolved theme. This intentionally uses the diffs-local 2-link lookup\n// (gitDecoration.* → terminal.ansi*) and STOPS before the editorGutter.* tail\n// that @pierre/theming's normalizeThemeColors adds, so the emitted string stays\n// byte-identical to the pre-theming output. Adopting the gutter fallback for\n// diffs is a deliberate follow-up. A variable is omitted entirely when neither\n// source key is present, matching the previous behavior.\nfunction getGitVariables(\n themeData: ThemeRegistrationResolved,\n modePrefix?: string\n) {\n modePrefix = modePrefix != null ? `${modePrefix}-` : '';\n let styles = '';\n const additionGreen =\n themeData.colors?.['gitDecoration.addedResourceForeground'] ??\n themeData.colors?.['terminal.ansiGreen'];\n if (additionGreen != null) {\n styles += `${formatCSSVariablePrefix('global')}${modePrefix}addition-color:${additionGreen};`;\n }\n const deletionRed =\n themeData.colors?.['gitDecoration.deletedResourceForeground'] ??\n themeData.colors?.['terminal.ansiRed'];\n if (deletionRed != null) {\n styles += `${formatCSSVariablePrefix('global')}${modePrefix}deletion-color:${deletionRed};`;\n }\n const modifiedBlue =\n themeData.colors?.['gitDecoration.modifiedResourceForeground'] ??\n themeData.colors?.['terminal.ansiBlue'];\n if (modifiedBlue != null) {\n styles += `${formatCSSVariablePrefix('global')}${modePrefix}modified-color:${modifiedBlue};`;\n }\n return styles;\n}\n"],"mappings":";;;;;AA2BA,SAAgB,0BAA0B,EACxC,QAAQ,gBACR,aACA,UACyC;CACzC,IAAI,SAAS;AACb,KAAI,OAAO,UAAU,UAAU;EAC7B,MAAM,YAAY,YAAY,SAAS,MAAM;EAC7C,MAAM,aAAa,qBAAqB,UAAU;AAClD,YAAU,SAAS,WAAW,GAAG;AACjC,YAAU,oBAAoB,WAAW,GAAG;AAC5C,YAAU,GAAG,wBAAwB,SAAS,CAAC,KAAK,WAAW,GAAG;AAClE,YAAU,GAAG,wBAAwB,SAAS,CAAC,KAAK,WAAW,GAAG;AAClE,YAAU,gBAAgB,WAAW,OAAO;QACvC;EACL,IAAI,YAAY,YAAY,SAAS,MAAM,KAAK;EAChD,IAAI,aAAa,qBAAqB,UAAU;AAChD,YAAU,GAAG,wBAAwB,SAAS,CAAC,OAAO,WAAW,GAAG;AACpE,YAAU,GAAG,wBAAwB,SAAS,CAAC,UAAU,WAAW,GAAG;AACvE,YAAU,gBAAgB,WAAW,OAAO;AAE5C,cAAY,YAAY,SAAS,MAAM,MAAM;AAC7C,eAAa,qBAAqB,UAAU;AAC5C,YAAU,GAAG,wBAAwB,SAAS,CAAC,QAAQ,WAAW,GAAG;AACrE,YAAU,GAAG,wBAAwB,SAAS,CAAC,WAAW,WAAW,GAAG;AACxE,YAAU,gBAAgB,WAAW,QAAQ;;AAE/C,QAAO;;AAUT,SAAS,gBACP,WACA,YACA;AACA,cAAa,cAAc,OAAO,GAAG,WAAW,KAAK;CACrD,IAAI,SAAS;CACb,MAAM,gBACJ,UAAU,SAAS,4CACnB,UAAU,SAAS;AACrB,KAAI,iBAAiB,KACnB,WAAU,GAAG,wBAAwB,SAAS,GAAG,WAAW,iBAAiB,cAAc;CAE7F,MAAM,cACJ,UAAU,SAAS,8CACnB,UAAU,SAAS;AACrB,KAAI,eAAe,KACjB,WAAU,GAAG,wBAAwB,SAAS,GAAG,WAAW,iBAAiB,YAAY;CAE3F,MAAM,eACJ,UAAU,SAAS,+CACnB,UAAU,SAAS;AACrB,KAAI,gBAAgB,KAClB,WAAU,GAAG,wBAAwB,SAAS,GAAG,WAAW,iBAAiB,aAAa;AAE5F,QAAO"}
1
+ {"version":3,"file":"getHighlighterThemeStyles.js","names":[],"sources":["../../src/utils/getHighlighterThemeStyles.ts"],"sourcesContent":["import { normalizeThemeColors } from '@pierre/theming/color';\n\nimport { DEFAULT_THEMES } from '../constants';\nimport type {\n DiffsHighlighter,\n DiffsThemeNames,\n ThemeRegistrationResolved,\n ThemesType,\n} from '../types';\nimport { formatCSSVariablePrefix } from './formatCSSVariablePrefix';\n\ninterface GetHighlighterThemeStylesProps {\n theme?: DiffsThemeNames | ThemesType;\n highlighter: DiffsHighlighter;\n prefix?: string;\n}\n\n// FIXME(amadeus): We'll probably need to\n// re-think this when it comes to removing inline\n// styles\n//\n// The base foreground/background now flow through @pierre/theming's\n// normalizeThemeColors, which preserves the theme's top-level fg/bg. The git\n// colors deliberately stay on the diffs-local 2-link lookup below (see\n// getGitVariables) to keep this output byte-identical; adopting\n// normalizeThemeColors' longer git chain is a separate, independently verified\n// follow-up rather than a side effect of this migration.\nexport function getHighlighterThemeStyles({\n theme = DEFAULT_THEMES,\n highlighter,\n prefix,\n}: GetHighlighterThemeStylesProps): string {\n let styles = '';\n if (typeof theme === 'string') {\n const themeData = highlighter.getTheme(theme);\n const normalized = normalizeThemeColors(themeData);\n styles += `color:${normalized.fg};`;\n styles += `background-color:${normalized.bg};`;\n styles += `${formatCSSVariablePrefix('global')}fg:${normalized.fg};`;\n styles += `${formatCSSVariablePrefix('global')}bg:${normalized.bg};`;\n styles += getGitVariables(themeData, prefix);\n } else {\n let themeData = highlighter.getTheme(theme.dark);\n let normalized = normalizeThemeColors(themeData);\n styles += `${formatCSSVariablePrefix('global')}dark:${normalized.fg};`;\n styles += `${formatCSSVariablePrefix('global')}dark-bg:${normalized.bg};`;\n styles += getGitVariables(themeData, 'dark');\n\n themeData = highlighter.getTheme(theme.light);\n normalized = normalizeThemeColors(themeData);\n styles += `${formatCSSVariablePrefix('global')}light:${normalized.fg};`;\n styles += `${formatCSSVariablePrefix('global')}light-bg:${normalized.bg};`;\n styles += getGitVariables(themeData, 'light');\n }\n return styles;\n}\n\n// Emits the diffs git-status CSS variables (addition/deletion/modified colors)\n// for a resolved theme. This intentionally uses the diffs-local 2-link lookup\n// (gitDecoration.* → terminal.ansi*) and STOPS before the editorGutter.* tail\n// that @pierre/theming's normalizeThemeColors adds, so the emitted string stays\n// byte-identical to the pre-theming output. Adopting the gutter fallback for\n// diffs is a deliberate follow-up. A variable is omitted entirely when neither\n// source key is present, matching the previous behavior.\nfunction getGitVariables(\n themeData: ThemeRegistrationResolved,\n modePrefix?: string\n) {\n modePrefix = modePrefix != null ? `${modePrefix}-` : '';\n let styles = '';\n const additionGreen =\n themeData.colors?.['gitDecoration.addedResourceForeground'] ??\n themeData.colors?.['terminal.ansiGreen'];\n if (additionGreen != null) {\n styles += `${formatCSSVariablePrefix('global')}${modePrefix}addition-color:${additionGreen};`;\n }\n const deletionRed =\n themeData.colors?.['gitDecoration.deletedResourceForeground'] ??\n themeData.colors?.['terminal.ansiRed'];\n if (deletionRed != null) {\n styles += `${formatCSSVariablePrefix('global')}${modePrefix}deletion-color:${deletionRed};`;\n }\n const modifiedBlue =\n themeData.colors?.['gitDecoration.modifiedResourceForeground'] ??\n themeData.colors?.['terminal.ansiBlue'];\n if (modifiedBlue != null) {\n styles += `${formatCSSVariablePrefix('global')}${modePrefix}modified-color:${modifiedBlue};`;\n }\n return styles;\n}\n"],"mappings":";;;;AA2BA,SAAgB,0BAA0B,EACxC,QAAQ,gBACR,aACA,UACyC;CACzC,IAAI,SAAS;CACb,IAAI,OAAO,UAAU,UAAU;EAC7B,MAAM,YAAY,YAAY,SAAS,KAAK;EAC5C,MAAM,aAAa,qBAAqB,SAAS;EACjD,UAAU,SAAS,WAAW,GAAG;EACjC,UAAU,oBAAoB,WAAW,GAAG;EAC5C,UAAU,GAAG,wBAAwB,QAAQ,EAAE,KAAK,WAAW,GAAG;EAClE,UAAU,GAAG,wBAAwB,QAAQ,EAAE,KAAK,WAAW,GAAG;EAClE,UAAU,gBAAgB,WAAW,MAAM;CAC7C,OAAO;EACL,IAAI,YAAY,YAAY,SAAS,MAAM,IAAI;EAC/C,IAAI,aAAa,qBAAqB,SAAS;EAC/C,UAAU,GAAG,wBAAwB,QAAQ,EAAE,OAAO,WAAW,GAAG;EACpE,UAAU,GAAG,wBAAwB,QAAQ,EAAE,UAAU,WAAW,GAAG;EACvE,UAAU,gBAAgB,WAAW,MAAM;EAE3C,YAAY,YAAY,SAAS,MAAM,KAAK;EAC5C,aAAa,qBAAqB,SAAS;EAC3C,UAAU,GAAG,wBAAwB,QAAQ,EAAE,QAAQ,WAAW,GAAG;EACrE,UAAU,GAAG,wBAAwB,QAAQ,EAAE,WAAW,WAAW,GAAG;EACxE,UAAU,gBAAgB,WAAW,OAAO;CAC9C;CACA,OAAO;AACT;AASA,SAAS,gBACP,WACA,YACA;CACA,aAAa,cAAc,OAAO,GAAG,WAAW,KAAK;CACrD,IAAI,SAAS;CACb,MAAM,gBACJ,UAAU,SAAS,4CACnB,UAAU,SAAS;CACrB,IAAI,iBAAiB,MACnB,UAAU,GAAG,wBAAwB,QAAQ,IAAI,WAAW,iBAAiB,cAAc;CAE7F,MAAM,cACJ,UAAU,SAAS,8CACnB,UAAU,SAAS;CACrB,IAAI,eAAe,MACjB,UAAU,GAAG,wBAAwB,QAAQ,IAAI,WAAW,iBAAiB,YAAY;CAE3F,MAAM,eACJ,UAAU,SAAS,+CACnB,UAAU,SAAS;CACrB,IAAI,gBAAgB,MAClB,UAAU,GAAG,wBAAwB,QAAQ,IAAI,WAAW,iBAAiB,aAAa;CAE5F,OAAO;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"getHunkSeparatorSlotName.d.ts","names":["CodeColumnType","getHunkSeparatorSlotName"],"sources":["../../src/utils/getHunkSeparatorSlotName.d.ts"],"sourcesContent":["import type { CodeColumnType } from '../types';\nexport declare function getHunkSeparatorSlotName(type: CodeColumnType, hunkIndex: number): string;\n//# sourceMappingURL=getHunkSeparatorSlotName.d.ts.map"],"mappings":";;;iBACwBC,wBAAAA,OAA+BD"}
1
+ {"version":3,"file":"getHunkSeparatorSlotName.d.ts","names":[],"sources":["../../src/utils/getHunkSeparatorSlotName.ts"],"mappings":";;;iBAEgB,wBAAA,CACd,IAAA,EAAM,cAAc,EACpB,SAAA"}
@@ -2,7 +2,7 @@
2
2
  function getHunkSeparatorSlotName(type, hunkIndex) {
3
3
  return `hunk-separator-${type}-${hunkIndex}`;
4
4
  }
5
-
6
5
  //#endregion
7
6
  export { getHunkSeparatorSlotName };
7
+
8
8
  //# sourceMappingURL=getHunkSeparatorSlotName.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getHunkSeparatorSlotName.js","names":[],"sources":["../../src/utils/getHunkSeparatorSlotName.ts"],"sourcesContent":["import type { CodeColumnType } from '../types';\n\nexport function getHunkSeparatorSlotName(\n type: CodeColumnType,\n hunkIndex: number\n) {\n return `hunk-separator-${type}-${hunkIndex}`;\n}\n"],"mappings":";AAEA,SAAgB,yBACd,MACA,WACA;AACA,QAAO,kBAAkB,KAAK,GAAG"}
1
+ {"version":3,"file":"getHunkSeparatorSlotName.js","names":[],"sources":["../../src/utils/getHunkSeparatorSlotName.ts"],"sourcesContent":["import type { CodeColumnType } from '../types';\n\nexport function getHunkSeparatorSlotName(\n type: CodeColumnType,\n hunkIndex: number\n) {\n return `hunk-separator-${type}-${hunkIndex}`;\n}\n"],"mappings":";AAEA,SAAgB,yBACd,MACA,WACA;CACA,OAAO,kBAAkB,KAAK,GAAG;AACnC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getIconForType.d.ts","names":["SVGSpriteNames","ChangeTypes","getIconForType","Extract"],"sources":["../../src/utils/getIconForType.d.ts"],"sourcesContent":["import type { SVGSpriteNames } from '../sprite';\nimport type { ChangeTypes } from '../types';\nexport declare function getIconForType(type: ChangeTypes | 'file'): Extract<SVGSpriteNames, 'diffs-icon-file-code' | 'diffs-icon-symbol-modified' | 'diffs-icon-symbol-deleted' | 'diffs-icon-symbol-added' | 'diffs-icon-symbol-moved'>;\n//# sourceMappingURL=getIconForType.d.ts.map"],"mappings":";;;;iBAEwBE,cAAAA,OAAqBD,uBAAuBE,QAAQH"}
1
+ {"version":3,"file":"getIconForType.d.ts","names":[],"sources":["../../src/utils/getIconForType.ts"],"mappings":";;;;iBAGgB,cAAA,CACd,IAAA,EAAM,WAAA,YACL,OAAA,CACD,cAAA"}
@@ -9,7 +9,7 @@ function getIconForType(type) {
9
9
  case "rename-changed": return "diffs-icon-symbol-moved";
10
10
  }
11
11
  }
12
-
13
12
  //#endregion
14
13
  export { getIconForType };
14
+
15
15
  //# sourceMappingURL=getIconForType.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getIconForType.js","names":[],"sources":["../../src/utils/getIconForType.ts"],"sourcesContent":["import type { SVGSpriteNames } from '../sprite';\nimport type { ChangeTypes } from '../types';\n\nexport function getIconForType(\n type: ChangeTypes | 'file'\n): Extract<\n SVGSpriteNames,\n | 'diffs-icon-file-code'\n | 'diffs-icon-symbol-modified'\n | 'diffs-icon-symbol-deleted'\n | 'diffs-icon-symbol-added'\n | 'diffs-icon-symbol-moved'\n> {\n switch (type) {\n case 'file':\n return 'diffs-icon-file-code';\n case 'change':\n return 'diffs-icon-symbol-modified';\n case 'new':\n return 'diffs-icon-symbol-added';\n case 'deleted':\n return 'diffs-icon-symbol-deleted';\n case 'rename-pure':\n case 'rename-changed':\n return 'diffs-icon-symbol-moved';\n }\n}\n"],"mappings":";AAGA,SAAgB,eACd,MAQA;AACA,SAAQ,MAAR;EACE,KAAK,OACH,QAAO;EACT,KAAK,SACH,QAAO;EACT,KAAK,MACH,QAAO;EACT,KAAK,UACH,QAAO;EACT,KAAK;EACL,KAAK,iBACH,QAAO"}
1
+ {"version":3,"file":"getIconForType.js","names":[],"sources":["../../src/utils/getIconForType.ts"],"sourcesContent":["import type { SVGSpriteNames } from '../sprite';\nimport type { ChangeTypes } from '../types';\n\nexport function getIconForType(\n type: ChangeTypes | 'file'\n): Extract<\n SVGSpriteNames,\n | 'diffs-icon-file-code'\n | 'diffs-icon-symbol-modified'\n | 'diffs-icon-symbol-deleted'\n | 'diffs-icon-symbol-added'\n | 'diffs-icon-symbol-moved'\n> {\n switch (type) {\n case 'file':\n return 'diffs-icon-file-code';\n case 'change':\n return 'diffs-icon-symbol-modified';\n case 'new':\n return 'diffs-icon-symbol-added';\n case 'deleted':\n return 'diffs-icon-symbol-deleted';\n case 'rename-pure':\n case 'rename-changed':\n return 'diffs-icon-symbol-moved';\n }\n}\n"],"mappings":";AAGA,SAAgB,eACd,MAQA;CACA,QAAQ,MAAR;EACE,KAAK,QACH,OAAO;EACT,KAAK,UACH,OAAO;EACT,KAAK,OACH,OAAO;EACT,KAAK,WACH,OAAO;EACT,KAAK;EACL,KAAK,kBACH,OAAO;CACX;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"getLineAnnotationName.d.ts","names":["DiffLineAnnotation","LineAnnotation","getLineAnnotationName","T"],"sources":["../../src/utils/getLineAnnotationName.d.ts"],"sourcesContent":["import type { DiffLineAnnotation, LineAnnotation } from '../types';\nexport declare function getLineAnnotationName<T = undefined>(annotation: LineAnnotation<T> | DiffLineAnnotation<T>): string;\n//# sourceMappingURL=getLineAnnotationName.d.ts.map"],"mappings":";;;iBACwBE,iDAAiDD,eAAeE,KAAKH,mBAAmBG"}
1
+ {"version":3,"file":"getLineAnnotationName.d.ts","names":[],"sources":["../../src/utils/getLineAnnotationName.ts"],"mappings":";;;iBAEgB,qBAAA,gBACd,UAAA,EAAY,cAAA,CAAe,CAAA,IAAK,kBAAA,CAAmB,CAAA"}
@@ -2,7 +2,7 @@
2
2
  function getLineAnnotationName(annotation) {
3
3
  return `annotation-${"side" in annotation ? `${annotation.side}-` : ""}${annotation.lineNumber}`;
4
4
  }
5
-
6
5
  //#endregion
7
6
  export { getLineAnnotationName };
7
+
8
8
  //# sourceMappingURL=getLineAnnotationName.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLineAnnotationName.js","names":[],"sources":["../../src/utils/getLineAnnotationName.ts"],"sourcesContent":["import type { DiffLineAnnotation, LineAnnotation } from '../types';\n\nexport function getLineAnnotationName<T = undefined>(\n annotation: LineAnnotation<T> | DiffLineAnnotation<T>\n): string {\n return `annotation-${'side' in annotation ? `${annotation.side}-` : ''}${annotation.lineNumber}`;\n}\n"],"mappings":";AAEA,SAAgB,sBACd,YACQ;AACR,QAAO,cAAc,UAAU,aAAa,GAAG,WAAW,KAAK,KAAK,KAAK,WAAW"}
1
+ {"version":3,"file":"getLineAnnotationName.js","names":[],"sources":["../../src/utils/getLineAnnotationName.ts"],"sourcesContent":["import type { DiffLineAnnotation, LineAnnotation } from '../types';\n\nexport function getLineAnnotationName<T = undefined>(\n annotation: LineAnnotation<T> | DiffLineAnnotation<T>\n): string {\n return `annotation-${'side' in annotation ? `${annotation.side}-` : ''}${annotation.lineNumber}`;\n}\n"],"mappings":";AAEA,SAAgB,sBACd,YACQ;CACR,OAAO,cAAc,UAAU,aAAa,GAAG,WAAW,KAAK,KAAK,KAAK,WAAW;AACtF"}
@@ -1 +1 @@
1
- {"version":3,"file":"getLineEndingType.d.ts","names":["getLineEndingType"],"sources":["../../src/utils/getLineEndingType.d.ts"],"sourcesContent":["export declare function getLineEndingType(content: string): 'CRLF' | 'CR' | 'LF' | 'none';\n//# sourceMappingURL=getLineEndingType.d.ts.map"],"mappings":";iBAAwBA,iBAAAA"}
1
+ {"version":3,"file":"getLineEndingType.d.ts","names":[],"sources":["../../src/utils/getLineEndingType.ts"],"mappings":";iBAAgB,iBAAA,CACd,OAAe"}
@@ -5,7 +5,7 @@ function getLineEndingType(content) {
5
5
  if (content.includes("\n")) return "LF";
6
6
  return "none";
7
7
  }
8
-
9
8
  //#endregion
10
9
  export { getLineEndingType };
10
+
11
11
  //# sourceMappingURL=getLineEndingType.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLineEndingType.js","names":[],"sources":["../../src/utils/getLineEndingType.ts"],"sourcesContent":["export function getLineEndingType(\n content: string\n): 'CRLF' | 'CR' | 'LF' | 'none' {\n // Windows\n if (content.includes('\\r\\n')) {\n return 'CRLF';\n }\n // Old Mac\n if (content.includes('\\r')) {\n return 'CR';\n }\n // Unix/Linux/Modern Mac\n if (content.includes('\\n')) {\n return 'LF';\n }\n // No line endings found\n return 'none';\n}\n"],"mappings":";AAAA,SAAgB,kBACd,SAC+B;AAE/B,KAAI,QAAQ,SAAS,OAAO,CAC1B,QAAO;AAGT,KAAI,QAAQ,SAAS,KAAK,CACxB,QAAO;AAGT,KAAI,QAAQ,SAAS,KAAK,CACxB,QAAO;AAGT,QAAO"}
1
+ {"version":3,"file":"getLineEndingType.js","names":[],"sources":["../../src/utils/getLineEndingType.ts"],"sourcesContent":["export function getLineEndingType(\n content: string\n): 'CRLF' | 'CR' | 'LF' | 'none' {\n // Windows\n if (content.includes('\\r\\n')) {\n return 'CRLF';\n }\n // Old Mac\n if (content.includes('\\r')) {\n return 'CR';\n }\n // Unix/Linux/Modern Mac\n if (content.includes('\\n')) {\n return 'LF';\n }\n // No line endings found\n return 'none';\n}\n"],"mappings":";AAAA,SAAgB,kBACd,SAC+B;CAE/B,IAAI,QAAQ,SAAS,MAAM,GACzB,OAAO;CAGT,IAAI,QAAQ,SAAS,IAAI,GACvB,OAAO;CAGT,IAAI,QAAQ,SAAS,IAAI,GACvB,OAAO;CAGT,OAAO;AACT"}
@@ -1,4 +1,4 @@
1
- import { ElementContent, Root } from "hast";
1
+ import { ElementContent, Root } from "../node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.js";
2
2
 
3
3
  //#region src/utils/getLineNodes.d.ts
4
4
  declare function getLineNodes(nodes: Root): ElementContent[];
@@ -1 +1 @@
1
- {"version":3,"file":"getLineNodes.d.ts","names":["ElementContent","Root","getLineNodes"],"sources":["../../src/utils/getLineNodes.d.ts"],"sourcesContent":["import type { ElementContent, Root } from 'hast';\nexport declare function getLineNodes(nodes: Root): ElementContent[];\n//# sourceMappingURL=getLineNodes.d.ts.map"],"mappings":";;;iBACwBE,YAAAA,QAAoBD,OAAOD"}
1
+ {"version":3,"file":"getLineNodes.d.ts","names":[],"sources":["../../src/utils/getLineNodes.ts"],"mappings":";;;iBAEgB,YAAA,CAAa,KAAA,EAAO,IAAA,GAAO,cAAc"}
@@ -9,7 +9,7 @@ function getLineNodes(nodes) {
9
9
  console.error(nodes);
10
10
  throw new Error("getLineNodes: Unable to find children");
11
11
  }
12
-
13
12
  //#endregion
14
13
  export { getLineNodes };
14
+
15
15
  //# sourceMappingURL=getLineNodes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLineNodes.js","names":["firstChild: RootContent | Element | Root | null"],"sources":["../../src/utils/getLineNodes.ts"],"sourcesContent":["import type { ElementContent, Root, RootContent } from 'hast';\n\nexport function getLineNodes(nodes: Root): ElementContent[] {\n let firstChild: RootContent | Element | Root | null = nodes.children[0];\n while (firstChild != null) {\n if (firstChild.type === 'element' && firstChild.tagName === 'code') {\n return firstChild.children;\n }\n if ('children' in firstChild) {\n firstChild = firstChild.children[0];\n } else {\n firstChild = null;\n }\n }\n console.error(nodes);\n throw new Error('getLineNodes: Unable to find children');\n}\n"],"mappings":";AAEA,SAAgB,aAAa,OAA+B;CAC1D,IAAIA,aAAkD,MAAM,SAAS;AACrE,QAAO,cAAc,MAAM;AACzB,MAAI,WAAW,SAAS,aAAa,WAAW,YAAY,OAC1D,QAAO,WAAW;AAEpB,MAAI,cAAc,WAChB,cAAa,WAAW,SAAS;MAEjC,cAAa;;AAGjB,SAAQ,MAAM,MAAM;AACpB,OAAM,IAAI,MAAM,wCAAwC"}
1
+ {"version":3,"file":"getLineNodes.js","names":[],"sources":["../../src/utils/getLineNodes.ts"],"sourcesContent":["import type { ElementContent, Root, RootContent } from 'hast';\n\nexport function getLineNodes(nodes: Root): ElementContent[] {\n let firstChild: RootContent | Element | Root | null = nodes.children[0];\n while (firstChild != null) {\n if (firstChild.type === 'element' && firstChild.tagName === 'code') {\n return firstChild.children;\n }\n if ('children' in firstChild) {\n firstChild = firstChild.children[0];\n } else {\n firstChild = null;\n }\n }\n console.error(nodes);\n throw new Error('getLineNodes: Unable to find children');\n}\n"],"mappings":";AAEA,SAAgB,aAAa,OAA+B;CAC1D,IAAI,aAAkD,MAAM,SAAS;CACrE,OAAO,cAAc,MAAM;EACzB,IAAI,WAAW,SAAS,aAAa,WAAW,YAAY,QAC1D,OAAO,WAAW;EAEpB,IAAI,cAAc,YAChB,aAAa,WAAW,SAAS;OAEjC,aAAa;CAEjB;CACA,QAAQ,MAAM,KAAK;CACnB,MAAM,IAAI,MAAM,uCAAuC;AACzD"}
@@ -1 +1 @@
1
- {"version":3,"file":"getMergeConflictActionSlotName.d.ts","names":["MergeConflictActionSlotInput","getMergeConflictActionSlotName","hunkIndex","lineIndex","conflictIndex"],"sources":["../../src/utils/getMergeConflictActionSlotName.d.ts"],"sourcesContent":["interface MergeConflictActionSlotInput {\n hunkIndex: number;\n lineIndex: number;\n conflictIndex: number;\n}\nexport declare function getMergeConflictActionSlotName({ hunkIndex, lineIndex, conflictIndex }: MergeConflictActionSlotInput): string;\nexport {};\n//# sourceMappingURL=getMergeConflictActionSlotName.d.ts.map"],"mappings":";UAAUA,4BAAAA;EAAAA,SAAAA,EAAAA,MAAAA;EAKcC,SAAAA,EAAAA,MAAAA;EAAiCC,aAAAA,EAAAA,MAAAA;;AAAsBE,iBAAvDH,8BAAAA,CAAuDG;EAAAA,SAAAA;EAAAA,SAAAA;EAAAA;AAAAA,CAAAA,EAAiBJ,4BAAjBI,CAAAA,EAAAA,MAAAA"}
1
+ {"version":3,"file":"getMergeConflictActionSlotName.d.ts","names":[],"sources":["../../src/utils/getMergeConflictActionSlotName.ts"],"mappings":";UAAU,4BAAA;EACR,SAAA;EACA,SAAA;EACA,aAAA;AAAA;AAAA,iBAGc,8BAAA;EACd,SAAA;EACA,SAAA;EACA;AAAA,GACC,4BAAA"}
@@ -2,7 +2,7 @@
2
2
  function getMergeConflictActionSlotName({ hunkIndex, lineIndex, conflictIndex }) {
3
3
  return `merge-conflict-action-${hunkIndex}-${lineIndex}-${conflictIndex}`;
4
4
  }
5
-
6
5
  //#endregion
7
6
  export { getMergeConflictActionSlotName };
7
+
8
8
  //# sourceMappingURL=getMergeConflictActionSlotName.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getMergeConflictActionSlotName.js","names":[],"sources":["../../src/utils/getMergeConflictActionSlotName.ts"],"sourcesContent":["interface MergeConflictActionSlotInput {\n hunkIndex: number;\n lineIndex: number;\n conflictIndex: number;\n}\n\nexport function getMergeConflictActionSlotName({\n hunkIndex,\n lineIndex,\n conflictIndex,\n}: MergeConflictActionSlotInput): string {\n return `merge-conflict-action-${hunkIndex}-${lineIndex}-${conflictIndex}`;\n}\n"],"mappings":";AAMA,SAAgB,+BAA+B,EAC7C,WACA,WACA,iBACuC;AACvC,QAAO,yBAAyB,UAAU,GAAG,UAAU,GAAG"}
1
+ {"version":3,"file":"getMergeConflictActionSlotName.js","names":[],"sources":["../../src/utils/getMergeConflictActionSlotName.ts"],"sourcesContent":["interface MergeConflictActionSlotInput {\n hunkIndex: number;\n lineIndex: number;\n conflictIndex: number;\n}\n\nexport function getMergeConflictActionSlotName({\n hunkIndex,\n lineIndex,\n conflictIndex,\n}: MergeConflictActionSlotInput): string {\n return `merge-conflict-action-${hunkIndex}-${lineIndex}-${conflictIndex}`;\n}\n"],"mappings":";AAMA,SAAgB,+BAA+B,EAC7C,WACA,WACA,iBACuC;CACvC,OAAO,yBAAyB,UAAU,GAAG,UAAU,GAAG;AAC5D"}
@@ -1 +1 @@
1
- {"version":3,"file":"getMergeConflictLineTypes.d.ts","names":["MergeConflictRegion","MergeConflictLineType","MergeConflictParseResult","getMergeConflictLineTypes","getMergeConflictParseResult","getMergeConflictActionLineNumber"],"sources":["../../src/utils/getMergeConflictLineTypes.d.ts"],"sourcesContent":["import type { MergeConflictRegion } from '../types';\nexport type MergeConflictLineType = 'none' | 'marker-start' | 'marker-base' | 'marker-separator' | 'marker-end' | 'current' | 'base' | 'incoming';\nexport interface MergeConflictParseResult {\n lineTypes: MergeConflictLineType[];\n regions: MergeConflictRegion[];\n}\nexport declare function getMergeConflictLineTypes(lines: string[]): MergeConflictLineType[];\nexport declare function getMergeConflictParseResult(lines: string[]): MergeConflictParseResult;\nexport declare function getMergeConflictActionLineNumber(conflict: MergeConflictRegion): number;\n//# sourceMappingURL=getMergeConflictLineTypes.d.ts.map"],"mappings":";;;KACYC,qBAAAA;UACKC,wBAAAA;EADLD,SAAAA,EAEGA,qBAFkB,EAAA;EAChBC,OAAAA,EAEJF,mBAF4B,EAAA;AAIzC;AACwBI,iBADAD,yBAAAA,CAC8CD,KAAAA,EAAAA,MAAAA,EAAAA,CAAAA,EADFD,qBAC0B,EAAA;AACtEI,iBADAD,2BAAAA,CAC2CJ,KAAAA,EAAAA,MAAAA,EAAAA,CAAAA,EADGE,wBACgB;iBAA9DG,gCAAAA,WAA2CL"}
1
+ {"version":3,"file":"getMergeConflictLineTypes.d.ts","names":[],"sources":["../../src/utils/getMergeConflictLineTypes.ts"],"mappings":";;;KAQY,qBAAA;AAAA,UAmBK,wBAAA;EACf,SAAA,EAAW,qBAAA;EACX,OAAA,EAAS,mBAAmB;AAAA;AAAA,iBAOd,yBAAA,CACd,KAAA,aACC,qBAAqB;AAAA,iBAIR,2BAAA,CACd,KAAA,aACC,wBAAwB;AAAA,iBAIX,gCAAA,CACd,QAA6B,EAAnB,mBAAmB"}
@@ -1,5 +1,4 @@
1
1
  import { MERGE_CONFLICT_BASE_MARKER_REGEX, MERGE_CONFLICT_END_MARKER_REGEX, MERGE_CONFLICT_SEPARATOR_MARKER_REGEX, MERGE_CONFLICT_START_MARKER_REGEX } from "../constants.js";
2
-
3
2
  //#region src/utils/getMergeConflictLineTypes.ts
4
3
  function trimLineEnding(line) {
5
4
  return line.replace(/(?:\r\n|\n|\r)$/, "");
@@ -70,7 +69,7 @@ function parseMergeConflicts(lines) {
70
69
  regions
71
70
  };
72
71
  }
73
-
74
72
  //#endregion
75
73
  export { getMergeConflictActionLineNumber, getMergeConflictLineTypes, getMergeConflictParseResult };
74
+
76
75
  //# sourceMappingURL=getMergeConflictLineTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getMergeConflictLineTypes.js","names":["stack: MergeConflictFrame[]","regions: MergeConflictRegion[]"],"sources":["../../src/utils/getMergeConflictLineTypes.ts"],"sourcesContent":["import {\n MERGE_CONFLICT_BASE_MARKER_REGEX,\n MERGE_CONFLICT_END_MARKER_REGEX,\n MERGE_CONFLICT_SEPARATOR_MARKER_REGEX,\n MERGE_CONFLICT_START_MARKER_REGEX,\n} from '../constants';\nimport type { MergeConflictRegion } from '../types';\n\nexport type MergeConflictLineType =\n | 'none'\n | 'marker-start'\n | 'marker-base'\n | 'marker-separator'\n | 'marker-end'\n | 'current'\n | 'base'\n | 'incoming';\n\ntype MergeConflictStage = 'current' | 'base' | 'incoming';\n\ninterface MergeConflictFrame {\n stage: MergeConflictStage;\n startLineIndex: number;\n baseMarkerLineIndex?: number;\n separatorLineIndex?: number;\n}\n\nexport interface MergeConflictParseResult {\n lineTypes: MergeConflictLineType[];\n regions: MergeConflictRegion[];\n}\n\nfunction trimLineEnding(line: string): string {\n return line.replace(/(?:\\r\\n|\\n|\\r)$/, '');\n}\n\nexport function getMergeConflictLineTypes(\n lines: string[]\n): MergeConflictLineType[] {\n return getMergeConflictParseResult(lines).lineTypes;\n}\n\nexport function getMergeConflictParseResult(\n lines: string[]\n): MergeConflictParseResult {\n return parseMergeConflicts(lines);\n}\n\nexport function getMergeConflictActionLineNumber(\n conflict: MergeConflictRegion\n): number {\n return Math.max(1, conflict.startLineNumber - 1);\n}\n\nfunction parseMergeConflicts(lines: string[]): MergeConflictParseResult {\n const lineTypes = new Array<MergeConflictLineType>(lines.length);\n const stack: MergeConflictFrame[] = [];\n const regions: MergeConflictRegion[] = [];\n\n for (let index = 0; index < lines.length; index++) {\n const line = trimLineEnding(lines[index]);\n\n if (MERGE_CONFLICT_START_MARKER_REGEX.test(line)) {\n stack.push({ stage: 'current', startLineIndex: index });\n lineTypes[index] = 'marker-start';\n continue;\n }\n\n const frame = stack.at(-1);\n if (frame == null) {\n lineTypes[index] = 'none';\n continue;\n }\n\n if (MERGE_CONFLICT_BASE_MARKER_REGEX.test(line)) {\n frame.stage = 'base';\n frame.baseMarkerLineIndex = index;\n lineTypes[index] = 'marker-base';\n continue;\n }\n\n if (MERGE_CONFLICT_SEPARATOR_MARKER_REGEX.test(line)) {\n frame.stage = 'incoming';\n frame.separatorLineIndex = index;\n lineTypes[index] = 'marker-separator';\n continue;\n }\n\n if (MERGE_CONFLICT_END_MARKER_REGEX.test(line)) {\n const completedFrame = stack.pop();\n lineTypes[index] = 'marker-end';\n if (completedFrame?.separatorLineIndex != null) {\n const conflictIndex = regions.length;\n regions.push({\n conflictIndex,\n startLineIndex: completedFrame.startLineIndex,\n startLineNumber: completedFrame.startLineIndex + 1,\n separatorLineIndex: completedFrame.separatorLineIndex,\n separatorLineNumber: completedFrame.separatorLineIndex + 1,\n endLineIndex: index,\n endLineNumber: index + 1,\n baseMarkerLineIndex: completedFrame.baseMarkerLineIndex,\n baseMarkerLineNumber:\n completedFrame.baseMarkerLineIndex != null\n ? completedFrame.baseMarkerLineIndex + 1\n : undefined,\n });\n }\n continue;\n }\n\n lineTypes[index] = frame.stage;\n }\n\n return { lineTypes, regions };\n}\n"],"mappings":";;;AAgCA,SAAS,eAAe,MAAsB;AAC5C,QAAO,KAAK,QAAQ,mBAAmB,GAAG;;AAG5C,SAAgB,0BACd,OACyB;AACzB,QAAO,4BAA4B,MAAM,CAAC;;AAG5C,SAAgB,4BACd,OAC0B;AAC1B,QAAO,oBAAoB,MAAM;;AAGnC,SAAgB,iCACd,UACQ;AACR,QAAO,KAAK,IAAI,GAAG,SAAS,kBAAkB,EAAE;;AAGlD,SAAS,oBAAoB,OAA2C;CACtE,MAAM,YAAY,IAAI,MAA6B,MAAM,OAAO;CAChE,MAAMA,QAA8B,EAAE;CACtC,MAAMC,UAAiC,EAAE;AAEzC,MAAK,IAAI,QAAQ,GAAG,QAAQ,MAAM,QAAQ,SAAS;EACjD,MAAM,OAAO,eAAe,MAAM,OAAO;AAEzC,MAAI,kCAAkC,KAAK,KAAK,EAAE;AAChD,SAAM,KAAK;IAAE,OAAO;IAAW,gBAAgB;IAAO,CAAC;AACvD,aAAU,SAAS;AACnB;;EAGF,MAAM,QAAQ,MAAM,GAAG,GAAG;AAC1B,MAAI,SAAS,MAAM;AACjB,aAAU,SAAS;AACnB;;AAGF,MAAI,iCAAiC,KAAK,KAAK,EAAE;AAC/C,SAAM,QAAQ;AACd,SAAM,sBAAsB;AAC5B,aAAU,SAAS;AACnB;;AAGF,MAAI,sCAAsC,KAAK,KAAK,EAAE;AACpD,SAAM,QAAQ;AACd,SAAM,qBAAqB;AAC3B,aAAU,SAAS;AACnB;;AAGF,MAAI,gCAAgC,KAAK,KAAK,EAAE;GAC9C,MAAM,iBAAiB,MAAM,KAAK;AAClC,aAAU,SAAS;AACnB,OAAI,gBAAgB,sBAAsB,MAAM;IAC9C,MAAM,gBAAgB,QAAQ;AAC9B,YAAQ,KAAK;KACX;KACA,gBAAgB,eAAe;KAC/B,iBAAiB,eAAe,iBAAiB;KACjD,oBAAoB,eAAe;KACnC,qBAAqB,eAAe,qBAAqB;KACzD,cAAc;KACd,eAAe,QAAQ;KACvB,qBAAqB,eAAe;KACpC,sBACE,eAAe,uBAAuB,OAClC,eAAe,sBAAsB,IACrC;KACP,CAAC;;AAEJ;;AAGF,YAAU,SAAS,MAAM;;AAG3B,QAAO;EAAE;EAAW;EAAS"}
1
+ {"version":3,"file":"getMergeConflictLineTypes.js","names":[],"sources":["../../src/utils/getMergeConflictLineTypes.ts"],"sourcesContent":["import {\n MERGE_CONFLICT_BASE_MARKER_REGEX,\n MERGE_CONFLICT_END_MARKER_REGEX,\n MERGE_CONFLICT_SEPARATOR_MARKER_REGEX,\n MERGE_CONFLICT_START_MARKER_REGEX,\n} from '../constants';\nimport type { MergeConflictRegion } from '../types';\n\nexport type MergeConflictLineType =\n | 'none'\n | 'marker-start'\n | 'marker-base'\n | 'marker-separator'\n | 'marker-end'\n | 'current'\n | 'base'\n | 'incoming';\n\ntype MergeConflictStage = 'current' | 'base' | 'incoming';\n\ninterface MergeConflictFrame {\n stage: MergeConflictStage;\n startLineIndex: number;\n baseMarkerLineIndex?: number;\n separatorLineIndex?: number;\n}\n\nexport interface MergeConflictParseResult {\n lineTypes: MergeConflictLineType[];\n regions: MergeConflictRegion[];\n}\n\nfunction trimLineEnding(line: string): string {\n return line.replace(/(?:\\r\\n|\\n|\\r)$/, '');\n}\n\nexport function getMergeConflictLineTypes(\n lines: string[]\n): MergeConflictLineType[] {\n return getMergeConflictParseResult(lines).lineTypes;\n}\n\nexport function getMergeConflictParseResult(\n lines: string[]\n): MergeConflictParseResult {\n return parseMergeConflicts(lines);\n}\n\nexport function getMergeConflictActionLineNumber(\n conflict: MergeConflictRegion\n): number {\n return Math.max(1, conflict.startLineNumber - 1);\n}\n\nfunction parseMergeConflicts(lines: string[]): MergeConflictParseResult {\n const lineTypes = new Array<MergeConflictLineType>(lines.length);\n const stack: MergeConflictFrame[] = [];\n const regions: MergeConflictRegion[] = [];\n\n for (let index = 0; index < lines.length; index++) {\n const line = trimLineEnding(lines[index]);\n\n if (MERGE_CONFLICT_START_MARKER_REGEX.test(line)) {\n stack.push({ stage: 'current', startLineIndex: index });\n lineTypes[index] = 'marker-start';\n continue;\n }\n\n const frame = stack.at(-1);\n if (frame == null) {\n lineTypes[index] = 'none';\n continue;\n }\n\n if (MERGE_CONFLICT_BASE_MARKER_REGEX.test(line)) {\n frame.stage = 'base';\n frame.baseMarkerLineIndex = index;\n lineTypes[index] = 'marker-base';\n continue;\n }\n\n if (MERGE_CONFLICT_SEPARATOR_MARKER_REGEX.test(line)) {\n frame.stage = 'incoming';\n frame.separatorLineIndex = index;\n lineTypes[index] = 'marker-separator';\n continue;\n }\n\n if (MERGE_CONFLICT_END_MARKER_REGEX.test(line)) {\n const completedFrame = stack.pop();\n lineTypes[index] = 'marker-end';\n if (completedFrame?.separatorLineIndex != null) {\n const conflictIndex = regions.length;\n regions.push({\n conflictIndex,\n startLineIndex: completedFrame.startLineIndex,\n startLineNumber: completedFrame.startLineIndex + 1,\n separatorLineIndex: completedFrame.separatorLineIndex,\n separatorLineNumber: completedFrame.separatorLineIndex + 1,\n endLineIndex: index,\n endLineNumber: index + 1,\n baseMarkerLineIndex: completedFrame.baseMarkerLineIndex,\n baseMarkerLineNumber:\n completedFrame.baseMarkerLineIndex != null\n ? completedFrame.baseMarkerLineIndex + 1\n : undefined,\n });\n }\n continue;\n }\n\n lineTypes[index] = frame.stage;\n }\n\n return { lineTypes, regions };\n}\n"],"mappings":";;AAgCA,SAAS,eAAe,MAAsB;CAC5C,OAAO,KAAK,QAAQ,mBAAmB,EAAE;AAC3C;AAEA,SAAgB,0BACd,OACyB;CACzB,OAAO,4BAA4B,KAAK,CAAC,CAAC;AAC5C;AAEA,SAAgB,4BACd,OAC0B;CAC1B,OAAO,oBAAoB,KAAK;AAClC;AAEA,SAAgB,iCACd,UACQ;CACR,OAAO,KAAK,IAAI,GAAG,SAAS,kBAAkB,CAAC;AACjD;AAEA,SAAS,oBAAoB,OAA2C;CACtE,MAAM,YAAY,IAAI,MAA6B,MAAM,MAAM;CAC/D,MAAM,QAA8B,CAAC;CACrC,MAAM,UAAiC,CAAC;CAExC,KAAK,IAAI,QAAQ,GAAG,QAAQ,MAAM,QAAQ,SAAS;EACjD,MAAM,OAAO,eAAe,MAAM,MAAM;EAExC,IAAI,kCAAkC,KAAK,IAAI,GAAG;GAChD,MAAM,KAAK;IAAE,OAAO;IAAW,gBAAgB;GAAM,CAAC;GACtD,UAAU,SAAS;GACnB;EACF;EAEA,MAAM,QAAQ,MAAM,GAAG,EAAE;EACzB,IAAI,SAAS,MAAM;GACjB,UAAU,SAAS;GACnB;EACF;EAEA,IAAI,iCAAiC,KAAK,IAAI,GAAG;GAC/C,MAAM,QAAQ;GACd,MAAM,sBAAsB;GAC5B,UAAU,SAAS;GACnB;EACF;EAEA,IAAI,sCAAsC,KAAK,IAAI,GAAG;GACpD,MAAM,QAAQ;GACd,MAAM,qBAAqB;GAC3B,UAAU,SAAS;GACnB;EACF;EAEA,IAAI,gCAAgC,KAAK,IAAI,GAAG;GAC9C,MAAM,iBAAiB,MAAM,IAAI;GACjC,UAAU,SAAS;GACnB,IAAI,gBAAgB,sBAAsB,MAAM;IAC9C,MAAM,gBAAgB,QAAQ;IAC9B,QAAQ,KAAK;KACX;KACA,gBAAgB,eAAe;KAC/B,iBAAiB,eAAe,iBAAiB;KACjD,oBAAoB,eAAe;KACnC,qBAAqB,eAAe,qBAAqB;KACzD,cAAc;KACd,eAAe,QAAQ;KACvB,qBAAqB,eAAe;KACpC,sBACE,eAAe,uBAAuB,OAClC,eAAe,sBAAsB,IACrC,KAAA;IACR,CAAC;GACH;GACA;EACF;EAEA,UAAU,SAAS,MAAM;CAC3B;CAEA,OAAO;EAAE;EAAW;CAAQ;AAC9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"getOrCreateCodeNode.d.ts","names":["CreateCodeNodeProps","HTMLPreElement","HTMLElement","getOrCreateCodeNode","code","pre","columnType","rowSpan","containerSize"],"sources":["../../src/utils/getOrCreateCodeNode.d.ts"],"sourcesContent":["interface CreateCodeNodeProps {\n pre?: HTMLPreElement;\n code?: HTMLElement;\n columnType?: 'additions' | 'deletions' | 'unified';\n rowSpan?: number;\n containerSize?: boolean;\n}\nexport declare function getOrCreateCodeNode({ code, pre, columnType, rowSpan, containerSize }?: CreateCodeNodeProps): HTMLElement;\nexport {};\n//# sourceMappingURL=getOrCreateCodeNode.d.ts.map"],"mappings":";UAAUA,mBAAAA;EAAAA,GAAAA,CAAAA,EACAC,cADAD;EAOcG,IAAAA,CAAAA,EALbD,WAKaC;EAAsBC,UAAAA,CAAAA,EAAAA,WAAAA,GAAAA,WAAAA,GAAAA,SAAAA;EAAMC,OAAAA,CAAAA,EAAAA,MAAAA;EAAKC,aAAAA,CAAAA,EAAAA,OAAAA;;AAAqBE,iBAAtDL,mBAAAA,CAAsDK;EAAAA,IAAAA;EAAAA,GAAAA;EAAAA,UAAAA;EAAAA,OAAAA;EAAAA;AAAAA,CAAAA,CAAAA,EAAkBR,mBAAlBQ,CAAAA,EAAwCN,WAAxCM"}
1
+ {"version":3,"file":"getOrCreateCodeNode.d.ts","names":[],"sources":["../../src/utils/getOrCreateCodeNode.ts"],"mappings":";UAAU,mBAAA;EACR,GAAA,GAAM,cAAA;EACN,IAAA,GAAO,WAAW;EAClB,UAAA;EACA,OAAA;EACA,aAAA;AAAA;AAAA,iBAGc,mBAAA;EACd,IAAA;EACA,GAAA;EACA,UAAA;EACA,OAAA;EACA;AAAA,IACC,mBAAA,GAA2B,WAAA"}
@@ -12,7 +12,7 @@ function getOrCreateCodeNode({ code, pre, columnType, rowSpan, containerSize = f
12
12
  else code.removeAttribute("data-container-size");
13
13
  return code;
14
14
  }
15
-
16
15
  //#endregion
17
16
  export { getOrCreateCodeNode };
17
+
18
18
  //# sourceMappingURL=getOrCreateCodeNode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getOrCreateCodeNode.js","names":[],"sources":["../../src/utils/getOrCreateCodeNode.ts"],"sourcesContent":["interface CreateCodeNodeProps {\n pre?: HTMLPreElement;\n code?: HTMLElement;\n columnType?: 'additions' | 'deletions' | 'unified';\n rowSpan?: number;\n containerSize?: boolean;\n}\n\nexport function getOrCreateCodeNode({\n code,\n pre,\n columnType,\n rowSpan,\n containerSize = false,\n}: CreateCodeNodeProps = {}): HTMLElement {\n if (code == null) {\n code = document.createElement('code');\n code.setAttribute('data-code', '');\n if (columnType != null) {\n code.setAttribute(`data-${columnType}`, '');\n }\n pre?.appendChild(code);\n }\n if (rowSpan != null) {\n code.style.setProperty('grid-row', `span ${rowSpan}`);\n } else {\n code.style.removeProperty('grid-row');\n }\n if (containerSize) {\n code.setAttribute('data-container-size', '');\n } else {\n code.removeAttribute('data-container-size');\n }\n return code;\n}\n"],"mappings":";AAQA,SAAgB,oBAAoB,EAClC,MACA,KACA,YACA,SACA,gBAAgB,UACO,EAAE,EAAe;AACxC,KAAI,QAAQ,MAAM;AAChB,SAAO,SAAS,cAAc,OAAO;AACrC,OAAK,aAAa,aAAa,GAAG;AAClC,MAAI,cAAc,KAChB,MAAK,aAAa,QAAQ,cAAc,GAAG;AAE7C,OAAK,YAAY,KAAK;;AAExB,KAAI,WAAW,KACb,MAAK,MAAM,YAAY,YAAY,QAAQ,UAAU;KAErD,MAAK,MAAM,eAAe,WAAW;AAEvC,KAAI,cACF,MAAK,aAAa,uBAAuB,GAAG;KAE5C,MAAK,gBAAgB,sBAAsB;AAE7C,QAAO"}
1
+ {"version":3,"file":"getOrCreateCodeNode.js","names":[],"sources":["../../src/utils/getOrCreateCodeNode.ts"],"sourcesContent":["interface CreateCodeNodeProps {\n pre?: HTMLPreElement;\n code?: HTMLElement;\n columnType?: 'additions' | 'deletions' | 'unified';\n rowSpan?: number;\n containerSize?: boolean;\n}\n\nexport function getOrCreateCodeNode({\n code,\n pre,\n columnType,\n rowSpan,\n containerSize = false,\n}: CreateCodeNodeProps = {}): HTMLElement {\n if (code == null) {\n code = document.createElement('code');\n code.setAttribute('data-code', '');\n if (columnType != null) {\n code.setAttribute(`data-${columnType}`, '');\n }\n pre?.appendChild(code);\n }\n if (rowSpan != null) {\n code.style.setProperty('grid-row', `span ${rowSpan}`);\n } else {\n code.style.removeProperty('grid-row');\n }\n if (containerSize) {\n code.setAttribute('data-container-size', '');\n } else {\n code.removeAttribute('data-container-size');\n }\n return code;\n}\n"],"mappings":";AAQA,SAAgB,oBAAoB,EAClC,MACA,KACA,YACA,SACA,gBAAgB,UACO,CAAC,GAAgB;CACxC,IAAI,QAAQ,MAAM;EAChB,OAAO,SAAS,cAAc,MAAM;EACpC,KAAK,aAAa,aAAa,EAAE;EACjC,IAAI,cAAc,MAChB,KAAK,aAAa,QAAQ,cAAc,EAAE;EAE5C,KAAK,YAAY,IAAI;CACvB;CACA,IAAI,WAAW,MACb,KAAK,MAAM,YAAY,YAAY,QAAQ,SAAS;MAEpD,KAAK,MAAM,eAAe,UAAU;CAEtC,IAAI,eACF,KAAK,aAAa,uBAAuB,EAAE;MAE3C,KAAK,gBAAgB,qBAAqB;CAE5C,OAAO;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"getSingularPatch.d.ts","names":["FileDiffMetadata","getSingularPatch"],"sources":["../../src/utils/getSingularPatch.d.ts"],"sourcesContent":["import type { FileDiffMetadata } from '../types';\nexport declare function getSingularPatch(patch: string): FileDiffMetadata;\n//# sourceMappingURL=getSingularPatch.d.ts.map"],"mappings":";;;iBACwBC,gBAAAA,iBAAiCD"}
1
+ {"version":3,"file":"getSingularPatch.d.ts","names":[],"sources":["../../src/utils/getSingularPatch.ts"],"mappings":";;;iBAGgB,gBAAA,CAAiB,KAAA,WAAgB,gBAAgB"}
@@ -1,5 +1,4 @@
1
1
  import { parsePatchFiles } from "./parsePatchFiles.js";
2
-
3
2
  //#region src/utils/getSingularPatch.ts
4
3
  function getSingularPatch(patch) {
5
4
  const parsedPatches = parsePatchFiles(patch);
@@ -14,7 +13,7 @@ function getSingularPatch(patch) {
14
13
  }
15
14
  return files[0];
16
15
  }
17
-
18
16
  //#endregion
19
17
  export { getSingularPatch };
18
+
20
19
  //# sourceMappingURL=getSingularPatch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSingularPatch.js","names":[],"sources":["../../src/utils/getSingularPatch.ts"],"sourcesContent":["import type { FileDiffMetadata } from '../types';\nimport { parsePatchFiles } from './parsePatchFiles';\n\nexport function getSingularPatch(patch: string): FileDiffMetadata {\n const parsedPatches = parsePatchFiles(patch);\n if (parsedPatches.length !== 1) {\n console.error(parsedPatches);\n throw new Error(\n 'PatchDiff: Provided patch must include only 1 patch, with 1 diff'\n );\n }\n const { files } = parsedPatches[0];\n if (files.length !== 1) {\n console.error(files);\n throw new Error(\n 'FileDiff: Provided patch must contain exactly 1 file diff'\n );\n }\n return files[0];\n}\n"],"mappings":";;;AAGA,SAAgB,iBAAiB,OAAiC;CAChE,MAAM,gBAAgB,gBAAgB,MAAM;AAC5C,KAAI,cAAc,WAAW,GAAG;AAC9B,UAAQ,MAAM,cAAc;AAC5B,QAAM,IAAI,MACR,mEACD;;CAEH,MAAM,EAAE,UAAU,cAAc;AAChC,KAAI,MAAM,WAAW,GAAG;AACtB,UAAQ,MAAM,MAAM;AACpB,QAAM,IAAI,MACR,4DACD;;AAEH,QAAO,MAAM"}
1
+ {"version":3,"file":"getSingularPatch.js","names":[],"sources":["../../src/utils/getSingularPatch.ts"],"sourcesContent":["import type { FileDiffMetadata } from '../types';\nimport { parsePatchFiles } from './parsePatchFiles';\n\nexport function getSingularPatch(patch: string): FileDiffMetadata {\n const parsedPatches = parsePatchFiles(patch);\n if (parsedPatches.length !== 1) {\n console.error(parsedPatches);\n throw new Error(\n 'PatchDiff: Provided patch must include only 1 patch, with 1 diff'\n );\n }\n const { files } = parsedPatches[0];\n if (files.length !== 1) {\n console.error(files);\n throw new Error(\n 'FileDiff: Provided patch must contain exactly 1 file diff'\n );\n }\n return files[0];\n}\n"],"mappings":";;AAGA,SAAgB,iBAAiB,OAAiC;CAChE,MAAM,gBAAgB,gBAAgB,KAAK;CAC3C,IAAI,cAAc,WAAW,GAAG;EAC9B,QAAQ,MAAM,aAAa;EAC3B,MAAM,IAAI,MACR,kEACF;CACF;CACA,MAAM,EAAE,UAAU,cAAc;CAChC,IAAI,MAAM,WAAW,GAAG;EACtB,QAAQ,MAAM,KAAK;EACnB,MAAM,IAAI,MACR,2DACF;CACF;CACA,OAAO,MAAM;AACf"}
@@ -1 +1 @@
1
- {"version":3,"file":"getThemes.d.ts","names":["DiffsThemeNames","ThemesType","getThemes"],"sources":["../../src/utils/getThemes.d.ts"],"sourcesContent":["import type { DiffsThemeNames, ThemesType } from '../types';\nexport declare function getThemes(theme?: DiffsThemeNames | ThemesType): DiffsThemeNames[];\n//# sourceMappingURL=getThemes.d.ts.map"],"mappings":";;;iBACwBE,SAAAA,SAAkBF,kBAAkBC,aAAaD"}
1
+ {"version":3,"file":"getThemes.d.ts","names":[],"sources":["../../src/utils/getThemes.ts"],"mappings":";;;iBAGgB,SAAA,CACd,KAAA,GAAO,eAAA,GAAkB,UAAA,GACxB,eAAA"}
@@ -1,5 +1,4 @@
1
1
  import { DEFAULT_THEMES } from "../constants.js";
2
-
3
2
  //#region src/utils/getThemes.ts
4
3
  function getThemes(theme = DEFAULT_THEMES) {
5
4
  const themesArr = [];
@@ -10,7 +9,7 @@ function getThemes(theme = DEFAULT_THEMES) {
10
9
  }
11
10
  return themesArr;
12
11
  }
13
-
14
12
  //#endregion
15
13
  export { getThemes };
14
+
16
15
  //# sourceMappingURL=getThemes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getThemes.js","names":["themesArr: DiffsThemeNames[]"],"sources":["../../src/utils/getThemes.ts"],"sourcesContent":["import { DEFAULT_THEMES } from '../constants';\nimport type { DiffsThemeNames, ThemesType } from '../types';\n\nexport function getThemes(\n theme: DiffsThemeNames | ThemesType = DEFAULT_THEMES\n): DiffsThemeNames[] {\n const themesArr: DiffsThemeNames[] = [];\n if (typeof theme === 'string') {\n themesArr.push(theme);\n } else {\n themesArr.push(theme.dark);\n themesArr.push(theme.light);\n }\n return themesArr;\n}\n"],"mappings":";;;AAGA,SAAgB,UACd,QAAsC,gBACnB;CACnB,MAAMA,YAA+B,EAAE;AACvC,KAAI,OAAO,UAAU,SACnB,WAAU,KAAK,MAAM;MAChB;AACL,YAAU,KAAK,MAAM,KAAK;AAC1B,YAAU,KAAK,MAAM,MAAM;;AAE7B,QAAO"}
1
+ {"version":3,"file":"getThemes.js","names":[],"sources":["../../src/utils/getThemes.ts"],"sourcesContent":["import { DEFAULT_THEMES } from '../constants';\nimport type { DiffsThemeNames, ThemesType } from '../types';\n\nexport function getThemes(\n theme: DiffsThemeNames | ThemesType = DEFAULT_THEMES\n): DiffsThemeNames[] {\n const themesArr: DiffsThemeNames[] = [];\n if (typeof theme === 'string') {\n themesArr.push(theme);\n } else {\n themesArr.push(theme.dark);\n themesArr.push(theme.light);\n }\n return themesArr;\n}\n"],"mappings":";;AAGA,SAAgB,UACd,QAAsC,gBACnB;CACnB,MAAM,YAA+B,CAAC;CACtC,IAAI,OAAO,UAAU,UACnB,UAAU,KAAK,KAAK;MACf;EACL,UAAU,KAAK,MAAM,IAAI;EACzB,UAAU,KAAK,MAAM,KAAK;CAC5B;CACA,OAAO;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"getTotalLineCountFromHunks.d.ts","names":["Hunk","getTotalLineCountFromHunks"],"sources":["../../src/utils/getTotalLineCountFromHunks.d.ts"],"sourcesContent":["import type { Hunk } from '../types';\nexport declare function getTotalLineCountFromHunks(hunks: Hunk[]): number;\n//# sourceMappingURL=getTotalLineCountFromHunks.d.ts.map"],"mappings":";;;iBACwBC,0BAAAA,QAAkCD"}
1
+ {"version":3,"file":"getTotalLineCountFromHunks.d.ts","names":[],"sources":["../../src/utils/getTotalLineCountFromHunks.ts"],"mappings":";;;iBAEgB,0BAAA,CAA2B,KAAa,EAAN,IAAI"}
@@ -4,7 +4,7 @@ function getTotalLineCountFromHunks(hunks) {
4
4
  if (lastHunk == null) return 0;
5
5
  return Math.max(lastHunk.additionStart + lastHunk.additionCount, lastHunk.deletionStart + lastHunk.deletionCount);
6
6
  }
7
-
8
7
  //#endregion
9
8
  export { getTotalLineCountFromHunks };
9
+
10
10
  //# sourceMappingURL=getTotalLineCountFromHunks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTotalLineCountFromHunks.js","names":[],"sources":["../../src/utils/getTotalLineCountFromHunks.ts"],"sourcesContent":["import type { Hunk } from '../types';\n\nexport function getTotalLineCountFromHunks(hunks: Hunk[]): number {\n const lastHunk = hunks.at(-1);\n if (lastHunk == null) {\n return 0;\n }\n return Math.max(\n lastHunk.additionStart + lastHunk.additionCount,\n lastHunk.deletionStart + lastHunk.deletionCount\n );\n}\n"],"mappings":";AAEA,SAAgB,2BAA2B,OAAuB;CAChE,MAAM,WAAW,MAAM,GAAG,GAAG;AAC7B,KAAI,YAAY,KACd,QAAO;AAET,QAAO,KAAK,IACV,SAAS,gBAAgB,SAAS,eAClC,SAAS,gBAAgB,SAAS,cACnC"}
1
+ {"version":3,"file":"getTotalLineCountFromHunks.js","names":[],"sources":["../../src/utils/getTotalLineCountFromHunks.ts"],"sourcesContent":["import type { Hunk } from '../types';\n\nexport function getTotalLineCountFromHunks(hunks: Hunk[]): number {\n const lastHunk = hunks.at(-1);\n if (lastHunk == null) {\n return 0;\n }\n return Math.max(\n lastHunk.additionStart + lastHunk.additionCount,\n lastHunk.deletionStart + lastHunk.deletionCount\n );\n}\n"],"mappings":";AAEA,SAAgB,2BAA2B,OAAuB;CAChE,MAAM,WAAW,MAAM,GAAG,EAAE;CAC5B,IAAI,YAAY,MACd,OAAO;CAET,OAAO,KAAK,IACV,SAAS,gBAAgB,SAAS,eAClC,SAAS,gBAAgB,SAAS,aACpC;AACF"}
@@ -1,6 +1,6 @@
1
+ import { Element, ElementContent, Properties, Root, Text } from "../node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.js";
1
2
  import { LineTypes } from "../types.js";
2
3
  import { SVGSpriteNames } from "../sprite.js";
3
- import { Element, ElementContent, Properties, Root, Text } from "hast";
4
4
 
5
5
  //#region src/utils/hast_utils.d.ts
6
6
  declare function createTextNodeElement(value: string): Text;
@@ -1 +1 @@
1
- {"version":3,"file":"hast_utils.d.ts","names":["ElementContent","Element","HASTElement","Properties","Root","Text","SVGSpriteNames","LineTypes","createTextNodeElement","CreateHastElementProps","createHastElement","tagName","children","properties","CreateIconProps","createIconElement","name","width","height","findCodeElement","createGutterWrapper","createGutterItem","createGutterGap"],"sources":["../../src/utils/hast_utils.d.ts"],"sourcesContent":["import type { ElementContent, Element as HASTElement, Properties, Root, Text } from 'hast';\nimport type { SVGSpriteNames } from '../sprite';\nimport type { LineTypes } from '../types';\nexport declare function createTextNodeElement(value: string): Text;\ninterface CreateHastElementProps {\n tagName: 'span' | 'div' | 'button' | 'code' | 'pre' | 'slot' | 'svg' | 'use' | 'style' | 'template' | 'bdi';\n children?: ElementContent[];\n properties?: Properties;\n}\nexport declare function createHastElement({ tagName, children, properties }: CreateHastElementProps): HASTElement;\ninterface CreateIconProps {\n name: SVGSpriteNames;\n width?: number;\n height?: number;\n properties?: Properties;\n}\nexport declare function createIconElement({ name, width, height, properties }: CreateIconProps): HASTElement;\nexport declare function findCodeElement(nodes: Root | HASTElement): HASTElement | undefined;\nexport declare function createGutterWrapper(children?: ElementContent[]): HASTElement;\nexport declare function createGutterItem(lineType: LineTypes | 'buffer' | 'separator' | 'annotation', lineNumber: number, lineIndex: string, properties?: Properties): HASTElement;\nexport declare function createGutterGap(type: LineTypes | undefined, bufferType: 'annotation' | 'buffer' | 'metadata', size: number): HASTElement;\nexport {};\n//# sourceMappingURL=hast_utils.d.ts.map"],"mappings":";;;;;iBAGwBQ,qBAAAA,iBAAsCH;UACpDI,sBAAAA;EADcD,OAAAA,EAAAA,MAAAA,GAAAA,KAAAA,GAAqB,QAAA,GAAiBH,MAAI,GAAA,KAAA,GAAA,MAAA,GAAA,KAAA,GAAA,KAAA,GAAA,OAAA,GAAA,UAAA,GAAA,KAAA;EACxDI,QAAAA,CAAAA,EAEKT,cAFiB,EAAA;EAKRU,UAAAA,CAAAA,EAFPP,UAEwB;;AAAYS,iBAA7BF,iBAAAA,CAA6BE;EAAAA,OAAAA;EAAAA,QAAAA;EAAAA;AAAAA,CAAAA,EAAwBH,sBAAxBG,CAAAA,EAAiDV,OAAjDU;UAC3CE,eAAAA,CADqDD;EAAcJ,IAAAA,EAEnEH,cAFmEG;EAAyBP,KAAAA,CAAAA,EAAAA,MAAAA;EAAW,MAAA,CAAA,EAAA,MAAA;EACvGY,UAAAA,CAAAA,EAIOX,UAJQ;AAMzB;AAA4Ca,iBAApBD,iBAAAA,CAAoBC;EAAAA,IAAAA;EAAAA,KAAAA;EAAAA,MAAAA;EAAAA;AAAAA,CAAAA,EAAmCF,eAAnCE,CAAAA,EAAqDd,OAArDc;AAAMC,iBAC1BE,eAAAA,CAD0BF,KAAAA,EACHb,IADGa,GACIf,OADJe,CAAAA,EACkBf,OADlBe,GAAAA,SAAAA;AAAOC,iBAEjCE,mBAAAA,CAFiCF,QAAAA,CAAAA,EAEFlB,cAFEkB,EAAAA,CAAAA,EAEiBhB,OAFjBgB;AAAQL,iBAGzCQ,gBAAAA,CAHyCR,QAAAA,EAGdN,SAHcM,GAAAA,QAAAA,GAAAA,WAAAA,GAAAA,YAAAA,EAAAA,UAAAA,EAAAA,MAAAA,EAAAA,SAAAA,EAAAA,MAAAA,EAAAA,UAAAA,CAAAA,EAGyFV,UAHzFU,CAAAA,EAGsGX,OAHtGW;AAAcC,iBAIvDQ,eAAAA,CAJuDR,IAAAA,EAIjCP,SAJiCO,GAAAA,SAAAA,EAAAA,UAAAA,EAAAA,YAAAA,GAAAA,QAAAA,GAAAA,UAAAA,EAAAA,IAAAA,EAAAA,MAAAA,CAAAA,EAIuDZ,OAJvDY"}
1
+ {"version":3,"file":"hast_utils.d.ts","names":[],"sources":["../../src/utils/hast_utils.ts"],"mappings":";;;;;iBAYgB,qBAAA,CAAsB,KAAA,WAAgB,IAAI;AAAA,UAIhD,sBAAA;EACR,OAAA;EAYA,QAAA,GAAW,cAAA;EACX,UAAA,GAAa,UAAU;AAAA;AAAA,iBAGT,iBAAA;EACd,OAAA;EACA,QAAA;EACA;AAAA,GACC,sBAAA,GAAyB,OAAA;AAAA,UASlB,eAAA;EACR,IAAA,EAAM,cAAA;EACN,KAAA;EACA,MAAA;EACA,UAAA,GAAa,UAAU;AAAA;AAAA,iBAGT,iBAAA;EACd,IAAA;EACA,KAAA;EACA,MAAA;EACA;AAAA,GACC,eAAA,GAAkB,OAAA;AAAA,iBAaL,eAAA,CACd,KAAA,EAAO,IAAA,GAAO,OAAA,GACb,OAAA;AAAA,iBAea,mBAAA,CAAoB,QAAA,GAAW,cAAA,KAAmB,OAAW;AAAA,iBAQ7D,gBAAA,CACd,QAAA,EAAU,SAAA,0CACV,UAAA,UACA,SAAA,UACA,UAAA,GAAY,UAAA,GACX,OAAA;AAAA,iBAsBa,eAAA,CACd,IAAA,EAAM,SAAA,cACN,UAAA,wCACA,IAAA,WACC,OAAW"}
@@ -70,7 +70,7 @@ function createGutterGap(type, bufferType, size) {
70
70
  }
71
71
  });
72
72
  }
73
-
74
73
  //#endregion
75
74
  export { createGutterGap, createGutterItem, createGutterWrapper, createHastElement, createIconElement, createTextNodeElement, findCodeElement };
75
+
76
76
  //# sourceMappingURL=hast_utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hast_utils.js","names":["firstChild: RootContent | HASTElement | Root | null"],"sources":["../../src/utils/hast_utils.ts"],"sourcesContent":["import type {\n ElementContent,\n Element as HASTElement,\n Properties,\n Root,\n RootContent,\n Text,\n} from 'hast';\n\nimport type { SVGSpriteNames } from '../sprite';\nimport type { LineTypes } from '../types';\n\nexport function createTextNodeElement(value: string): Text {\n return { type: 'text', value };\n}\n\ninterface CreateHastElementProps {\n tagName:\n | 'span'\n | 'div'\n | 'button'\n | 'code'\n | 'pre'\n | 'slot'\n | 'svg'\n | 'use'\n | 'style'\n | 'template'\n | 'bdi';\n children?: ElementContent[];\n properties?: Properties;\n}\n\nexport function createHastElement({\n tagName,\n children = [],\n properties = {},\n}: CreateHastElementProps): HASTElement {\n return {\n type: 'element',\n tagName,\n properties,\n children,\n };\n}\n\ninterface CreateIconProps {\n name: SVGSpriteNames;\n width?: number;\n height?: number;\n properties?: Properties;\n}\n\nexport function createIconElement({\n name,\n width = 16,\n height = 16,\n properties,\n}: CreateIconProps): HASTElement {\n return createHastElement({\n tagName: 'svg',\n properties: { width, height, viewBox: '0 0 16 16', ...properties },\n children: [\n createHastElement({\n tagName: 'use',\n properties: { href: `#${name.replace(/^#/, '')}` },\n }),\n ],\n });\n}\n\nexport function findCodeElement(\n nodes: Root | HASTElement\n): HASTElement | undefined {\n let firstChild: RootContent | HASTElement | Root | null = nodes.children[0];\n while (firstChild != null) {\n if (firstChild.type === 'element' && firstChild.tagName === 'code') {\n return firstChild;\n }\n if ('children' in firstChild) {\n firstChild = firstChild.children[0];\n } else {\n firstChild = null;\n }\n }\n return undefined;\n}\n\nexport function createGutterWrapper(children?: ElementContent[]): HASTElement {\n return createHastElement({\n tagName: 'div',\n properties: { 'data-gutter': '' },\n children,\n });\n}\n\nexport function createGutterItem(\n lineType: LineTypes | 'buffer' | 'separator' | 'annotation',\n lineNumber: number,\n lineIndex: string,\n properties: Properties = {}\n): HASTElement {\n return createHastElement({\n tagName: 'div',\n properties: {\n 'data-line-type': lineType,\n 'data-column-number': lineNumber,\n 'data-line-index': lineIndex,\n ...properties,\n },\n children:\n lineNumber != null\n ? [\n createHastElement({\n tagName: 'span',\n properties: { 'data-line-number-content': '' },\n children: [createTextNodeElement(`${lineNumber}`)],\n }),\n ]\n : undefined,\n });\n}\n\nexport function createGutterGap(\n type: LineTypes | undefined,\n bufferType: 'annotation' | 'buffer' | 'metadata',\n size: number\n): HASTElement {\n return createHastElement({\n tagName: 'div',\n properties: {\n 'data-gutter-buffer': bufferType,\n 'data-buffer-size': size,\n 'data-line-type': bufferType === 'annotation' ? undefined : type,\n style:\n bufferType === 'annotation'\n ? `grid-row: span ${size};`\n : `grid-row: span ${size};min-height:calc(${size} * 1lh);`,\n },\n });\n}\n"],"mappings":";AAYA,SAAgB,sBAAsB,OAAqB;AACzD,QAAO;EAAE,MAAM;EAAQ;EAAO;;AAoBhC,SAAgB,kBAAkB,EAChC,SACA,WAAW,EAAE,EACb,aAAa,EAAE,IACuB;AACtC,QAAO;EACL,MAAM;EACN;EACA;EACA;EACD;;AAUH,SAAgB,kBAAkB,EAChC,MACA,QAAQ,IACR,SAAS,IACT,cAC+B;AAC/B,QAAO,kBAAkB;EACvB,SAAS;EACT,YAAY;GAAE;GAAO;GAAQ,SAAS;GAAa,GAAG;GAAY;EAClE,UAAU,CACR,kBAAkB;GAChB,SAAS;GACT,YAAY,EAAE,MAAM,IAAI,KAAK,QAAQ,MAAM,GAAG,IAAI;GACnD,CAAC,CACH;EACF,CAAC;;AAGJ,SAAgB,gBACd,OACyB;CACzB,IAAIA,aAAsD,MAAM,SAAS;AACzE,QAAO,cAAc,MAAM;AACzB,MAAI,WAAW,SAAS,aAAa,WAAW,YAAY,OAC1D,QAAO;AAET,MAAI,cAAc,WAChB,cAAa,WAAW,SAAS;MAEjC,cAAa;;;AAMnB,SAAgB,oBAAoB,UAA0C;AAC5E,QAAO,kBAAkB;EACvB,SAAS;EACT,YAAY,EAAE,eAAe,IAAI;EACjC;EACD,CAAC;;AAGJ,SAAgB,iBACd,UACA,YACA,WACA,aAAyB,EAAE,EACd;AACb,QAAO,kBAAkB;EACvB,SAAS;EACT,YAAY;GACV,kBAAkB;GAClB,sBAAsB;GACtB,mBAAmB;GACnB,GAAG;GACJ;EACD,UACE,cAAc,OACV,CACE,kBAAkB;GAChB,SAAS;GACT,YAAY,EAAE,4BAA4B,IAAI;GAC9C,UAAU,CAAC,sBAAsB,GAAG,aAAa,CAAC;GACnD,CAAC,CACH,GACD;EACP,CAAC;;AAGJ,SAAgB,gBACd,MACA,YACA,MACa;AACb,QAAO,kBAAkB;EACvB,SAAS;EACT,YAAY;GACV,sBAAsB;GACtB,oBAAoB;GACpB,kBAAkB,eAAe,eAAe,SAAY;GAC5D,OACE,eAAe,eACX,kBAAkB,KAAK,KACvB,kBAAkB,KAAK,mBAAmB,KAAK;GACtD;EACF,CAAC"}
1
+ {"version":3,"file":"hast_utils.js","names":[],"sources":["../../src/utils/hast_utils.ts"],"sourcesContent":["import type {\n ElementContent,\n Element as HASTElement,\n Properties,\n Root,\n RootContent,\n Text,\n} from 'hast';\n\nimport type { SVGSpriteNames } from '../sprite';\nimport type { LineTypes } from '../types';\n\nexport function createTextNodeElement(value: string): Text {\n return { type: 'text', value };\n}\n\ninterface CreateHastElementProps {\n tagName:\n | 'span'\n | 'div'\n | 'button'\n | 'code'\n | 'pre'\n | 'slot'\n | 'svg'\n | 'use'\n | 'style'\n | 'template'\n | 'bdi';\n children?: ElementContent[];\n properties?: Properties;\n}\n\nexport function createHastElement({\n tagName,\n children = [],\n properties = {},\n}: CreateHastElementProps): HASTElement {\n return {\n type: 'element',\n tagName,\n properties,\n children,\n };\n}\n\ninterface CreateIconProps {\n name: SVGSpriteNames;\n width?: number;\n height?: number;\n properties?: Properties;\n}\n\nexport function createIconElement({\n name,\n width = 16,\n height = 16,\n properties,\n}: CreateIconProps): HASTElement {\n return createHastElement({\n tagName: 'svg',\n properties: { width, height, viewBox: '0 0 16 16', ...properties },\n children: [\n createHastElement({\n tagName: 'use',\n properties: { href: `#${name.replace(/^#/, '')}` },\n }),\n ],\n });\n}\n\nexport function findCodeElement(\n nodes: Root | HASTElement\n): HASTElement | undefined {\n let firstChild: RootContent | HASTElement | Root | null = nodes.children[0];\n while (firstChild != null) {\n if (firstChild.type === 'element' && firstChild.tagName === 'code') {\n return firstChild;\n }\n if ('children' in firstChild) {\n firstChild = firstChild.children[0];\n } else {\n firstChild = null;\n }\n }\n return undefined;\n}\n\nexport function createGutterWrapper(children?: ElementContent[]): HASTElement {\n return createHastElement({\n tagName: 'div',\n properties: { 'data-gutter': '' },\n children,\n });\n}\n\nexport function createGutterItem(\n lineType: LineTypes | 'buffer' | 'separator' | 'annotation',\n lineNumber: number,\n lineIndex: string,\n properties: Properties = {}\n): HASTElement {\n return createHastElement({\n tagName: 'div',\n properties: {\n 'data-line-type': lineType,\n 'data-column-number': lineNumber,\n 'data-line-index': lineIndex,\n ...properties,\n },\n children:\n lineNumber != null\n ? [\n createHastElement({\n tagName: 'span',\n properties: { 'data-line-number-content': '' },\n children: [createTextNodeElement(`${lineNumber}`)],\n }),\n ]\n : undefined,\n });\n}\n\nexport function createGutterGap(\n type: LineTypes | undefined,\n bufferType: 'annotation' | 'buffer' | 'metadata',\n size: number\n): HASTElement {\n return createHastElement({\n tagName: 'div',\n properties: {\n 'data-gutter-buffer': bufferType,\n 'data-buffer-size': size,\n 'data-line-type': bufferType === 'annotation' ? undefined : type,\n style:\n bufferType === 'annotation'\n ? `grid-row: span ${size};`\n : `grid-row: span ${size};min-height:calc(${size} * 1lh);`,\n },\n });\n}\n"],"mappings":";AAYA,SAAgB,sBAAsB,OAAqB;CACzD,OAAO;EAAE,MAAM;EAAQ;CAAM;AAC/B;AAmBA,SAAgB,kBAAkB,EAChC,SACA,WAAW,CAAC,GACZ,aAAa,CAAC,KACwB;CACtC,OAAO;EACL,MAAM;EACN;EACA;EACA;CACF;AACF;AASA,SAAgB,kBAAkB,EAChC,MACA,QAAQ,IACR,SAAS,IACT,cAC+B;CAC/B,OAAO,kBAAkB;EACvB,SAAS;EACT,YAAY;GAAE;GAAO;GAAQ,SAAS;GAAa,GAAG;EAAW;EACjE,UAAU,CACR,kBAAkB;GAChB,SAAS;GACT,YAAY,EAAE,MAAM,IAAI,KAAK,QAAQ,MAAM,EAAE,IAAI;EACnD,CAAC,CACH;CACF,CAAC;AACH;AAEA,SAAgB,gBACd,OACyB;CACzB,IAAI,aAAsD,MAAM,SAAS;CACzE,OAAO,cAAc,MAAM;EACzB,IAAI,WAAW,SAAS,aAAa,WAAW,YAAY,QAC1D,OAAO;EAET,IAAI,cAAc,YAChB,aAAa,WAAW,SAAS;OAEjC,aAAa;CAEjB;AAEF;AAEA,SAAgB,oBAAoB,UAA0C;CAC5E,OAAO,kBAAkB;EACvB,SAAS;EACT,YAAY,EAAE,eAAe,GAAG;EAChC;CACF,CAAC;AACH;AAEA,SAAgB,iBACd,UACA,YACA,WACA,aAAyB,CAAC,GACb;CACb,OAAO,kBAAkB;EACvB,SAAS;EACT,YAAY;GACV,kBAAkB;GAClB,sBAAsB;GACtB,mBAAmB;GACnB,GAAG;EACL;EACA,UACE,cAAc,OACV,CACE,kBAAkB;GAChB,SAAS;GACT,YAAY,EAAE,4BAA4B,GAAG;GAC7C,UAAU,CAAC,sBAAsB,GAAG,YAAY,CAAC;EACnD,CAAC,CACH,IACA,KAAA;CACR,CAAC;AACH;AAEA,SAAgB,gBACd,MACA,YACA,MACa;CACb,OAAO,kBAAkB;EACvB,SAAS;EACT,YAAY;GACV,sBAAsB;GACtB,oBAAoB;GACpB,kBAAkB,eAAe,eAAe,KAAA,IAAY;GAC5D,OACE,eAAe,eACX,kBAAkB,KAAK,KACvB,kBAAkB,KAAK,mBAAmB,KAAK;EACvD;CACF,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"hostTheme.d.ts","names":["UpsertHostThemeStyleProps","ShadowRoot","HTMLStyleElement","upsertHostThemeStyle","shadowRoot","currentNode","themeCSS","createHostThemeStyleNode"],"sources":["../../src/utils/hostTheme.d.ts"],"sourcesContent":["interface UpsertHostThemeStyleProps {\n shadowRoot: ShadowRoot;\n currentNode: HTMLStyleElement | undefined;\n themeCSS: string;\n}\nexport declare function upsertHostThemeStyle({ shadowRoot, currentNode, themeCSS }: UpsertHostThemeStyleProps): HTMLStyleElement | undefined;\nexport declare function createHostThemeStyleNode(): HTMLStyleElement;\nexport {};\n//# sourceMappingURL=hostTheme.d.ts.map"],"mappings":";UAAUA,yBAAAA;EAAAA,UAAAA,EACMC,UADND;EAKcG,WAAAA,EAHPD,gBAG2B,GAAA,SAAA;EAAGE,QAAAA,EAAAA,MAAAA;;AAAyBE,iBAAhDH,oBAAAA,CAAgDG;EAAAA,UAAAA;EAAAA,WAAAA;EAAAA;AAAAA,CAAAA,EAAYN,yBAAZM,CAAAA,EAAwCJ,gBAAxCI,GAAAA,SAAAA;AAAYN,iBAC5DO,wBAAAA,CAAAA,CAD4DP,EAChCE,gBADgCF"}
1
+ {"version":3,"file":"hostTheme.d.ts","names":[],"sources":["../../src/utils/hostTheme.ts"],"mappings":";UAEU,yBAAA;EACR,UAAA,EAAY,UAAA;EACZ,WAAA,EAAa,gBAAgB;EAC7B,QAAA;AAAA;AAAA,iBAKc,oBAAA;EACd,UAAA;EACA,WAAA;EACA;AAAA,GACC,yBAAA,GAA4B,gBAAA;AAAA,iBAcf,wBAAA,IAA4B,gBAAgB"}