@pierre/diffs 1.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.txt +201 -0
- package/README.md +26 -0
- package/dist/components/File.d.ts +78 -0
- package/dist/components/File.d.ts.map +1 -0
- package/dist/components/File.js +322 -0
- package/dist/components/File.js.map +1 -0
- package/dist/components/FileDiff.d.ts +90 -0
- package/dist/components/FileDiff.d.ts.map +1 -0
- package/dist/components/FileDiff.js +392 -0
- package/dist/components/FileDiff.js.map +1 -0
- package/dist/components/FileStream.d.ts +40 -0
- package/dist/components/FileStream.d.ts.map +1 -0
- package/dist/components/FileStream.js +161 -0
- package/dist/components/FileStream.js.map +1 -0
- package/dist/components/web-components.d.ts +5 -0
- package/dist/components/web-components.d.ts.map +1 -0
- package/dist/components/web-components.js +25 -0
- package/dist/components/web-components.js.map +1 -0
- package/dist/constants.d.ts +21 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +23 -0
- package/dist/constants.js.map +1 -0
- package/dist/highlighter/languages/areLanguagesAttached.d.ts +7 -0
- package/dist/highlighter/languages/areLanguagesAttached.d.ts.map +1 -0
- package/dist/highlighter/languages/areLanguagesAttached.js +11 -0
- package/dist/highlighter/languages/areLanguagesAttached.js.map +1 -0
- package/dist/highlighter/languages/attachResolvedLanguages.d.ts +9 -0
- package/dist/highlighter/languages/attachResolvedLanguages.d.ts.map +1 -0
- package/dist/highlighter/languages/attachResolvedLanguages.js +20 -0
- package/dist/highlighter/languages/attachResolvedLanguages.js.map +1 -0
- package/dist/highlighter/languages/cleanUpResolvedLanguages.d.ts +5 -0
- package/dist/highlighter/languages/cleanUpResolvedLanguages.d.ts.map +1 -0
- package/dist/highlighter/languages/cleanUpResolvedLanguages.js +11 -0
- package/dist/highlighter/languages/cleanUpResolvedLanguages.js.map +1 -0
- package/dist/highlighter/languages/constants.d.ts +11 -0
- package/dist/highlighter/languages/constants.d.ts.map +1 -0
- package/dist/highlighter/languages/constants.js +8 -0
- package/dist/highlighter/languages/constants.js.map +1 -0
- package/dist/highlighter/languages/getResolvedLanguages.d.ts +9 -0
- package/dist/highlighter/languages/getResolvedLanguages.d.ts.map +1 -0
- package/dist/highlighter/languages/getResolvedLanguages.js +16 -0
- package/dist/highlighter/languages/getResolvedLanguages.js.map +1 -0
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts +9 -0
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts.map +1 -0
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.js +11 -0
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.js.map +1 -0
- package/dist/highlighter/languages/hasResolvedLanguages.d.ts +7 -0
- package/dist/highlighter/languages/hasResolvedLanguages.d.ts.map +1 -0
- package/dist/highlighter/languages/hasResolvedLanguages.js +11 -0
- package/dist/highlighter/languages/hasResolvedLanguages.js.map +1 -0
- package/dist/highlighter/languages/resolveLanguage.d.ts +9 -0
- package/dist/highlighter/languages/resolveLanguage.d.ts.map +1 -0
- package/dist/highlighter/languages/resolveLanguage.js +30 -0
- package/dist/highlighter/languages/resolveLanguage.js.map +1 -0
- package/dist/highlighter/languages/resolveLanguages.d.ts +9 -0
- package/dist/highlighter/languages/resolveLanguages.d.ts.map +1 -0
- package/dist/highlighter/languages/resolveLanguages.js +25 -0
- package/dist/highlighter/languages/resolveLanguages.js.map +1 -0
- package/dist/highlighter/shared_highlighter.d.ts +21 -0
- package/dist/highlighter/shared_highlighter.d.ts.map +1 -0
- package/dist/highlighter/shared_highlighter.js +71 -0
- package/dist/highlighter/shared_highlighter.js.map +1 -0
- package/dist/highlighter/themes/areThemesAttached.d.ts +7 -0
- package/dist/highlighter/themes/areThemesAttached.d.ts.map +1 -0
- package/dist/highlighter/themes/areThemesAttached.js +12 -0
- package/dist/highlighter/themes/areThemesAttached.js.map +1 -0
- package/dist/highlighter/themes/attachResolvedThemes.d.ts +7 -0
- package/dist/highlighter/themes/attachResolvedThemes.d.ts.map +1 -0
- package/dist/highlighter/themes/attachResolvedThemes.js +24 -0
- package/dist/highlighter/themes/attachResolvedThemes.js.map +1 -0
- package/dist/highlighter/themes/cleanUpResolvedThemes.d.ts +5 -0
- package/dist/highlighter/themes/cleanUpResolvedThemes.d.ts.map +1 -0
- package/dist/highlighter/themes/cleanUpResolvedThemes.js +11 -0
- package/dist/highlighter/themes/cleanUpResolvedThemes.js.map +1 -0
- package/dist/highlighter/themes/constants.d.ts +11 -0
- package/dist/highlighter/themes/constants.d.ts.map +1 -0
- package/dist/highlighter/themes/constants.js +9 -0
- package/dist/highlighter/themes/constants.js.map +1 -0
- package/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts +7 -0
- package/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts.map +1 -0
- package/dist/highlighter/themes/getResolvedOrResolveTheme.js +11 -0
- package/dist/highlighter/themes/getResolvedOrResolveTheme.js.map +1 -0
- package/dist/highlighter/themes/getResolvedThemes.d.ts +7 -0
- package/dist/highlighter/themes/getResolvedThemes.d.ts.map +1 -0
- package/dist/highlighter/themes/getResolvedThemes.js +16 -0
- package/dist/highlighter/themes/getResolvedThemes.js.map +1 -0
- package/dist/highlighter/themes/hasResolvedThemes.d.ts +7 -0
- package/dist/highlighter/themes/hasResolvedThemes.d.ts.map +1 -0
- package/dist/highlighter/themes/hasResolvedThemes.js +11 -0
- package/dist/highlighter/themes/hasResolvedThemes.js.map +1 -0
- package/dist/highlighter/themes/registerCustomTheme.d.ts +7 -0
- package/dist/highlighter/themes/registerCustomTheme.d.ts.map +1 -0
- package/dist/highlighter/themes/registerCustomTheme.js +14 -0
- package/dist/highlighter/themes/registerCustomTheme.js.map +1 -0
- package/dist/highlighter/themes/resolveTheme.d.ts +7 -0
- package/dist/highlighter/themes/resolveTheme.d.ts.map +1 -0
- package/dist/highlighter/themes/resolveTheme.js +35 -0
- package/dist/highlighter/themes/resolveTheme.js.map +1 -0
- package/dist/highlighter/themes/resolveThemes.d.ts +7 -0
- package/dist/highlighter/themes/resolveThemes.d.ts.map +1 -0
- package/dist/highlighter/themes/resolveThemes.js +21 -0
- package/dist/highlighter/themes/resolveThemes.js.map +1 -0
- package/dist/index.d.ts +84 -0
- package/dist/index.js +83 -0
- package/dist/managers/LineSelectionManager.d.ts +64 -0
- package/dist/managers/LineSelectionManager.d.ts.map +1 -0
- package/dist/managers/LineSelectionManager.js +276 -0
- package/dist/managers/LineSelectionManager.js.map +1 -0
- package/dist/managers/MouseEventManager.d.ts +64 -0
- package/dist/managers/MouseEventManager.d.ts.map +1 -0
- package/dist/managers/MouseEventManager.js +244 -0
- package/dist/managers/MouseEventManager.js.map +1 -0
- package/dist/managers/ResizeManager.d.ts +11 -0
- package/dist/managers/ResizeManager.d.ts.map +1 -0
- package/dist/managers/ResizeManager.js +132 -0
- package/dist/managers/ResizeManager.js.map +1 -0
- package/dist/managers/ScrollSyncManager.d.ts +15 -0
- package/dist/managers/ScrollSyncManager.d.ts.map +1 -0
- package/dist/managers/ScrollSyncManager.js +54 -0
- package/dist/managers/ScrollSyncManager.js.map +1 -0
- package/dist/managers/UniversalRenderingManager.d.ts +6 -0
- package/dist/managers/UniversalRenderingManager.d.ts.map +1 -0
- package/dist/managers/UniversalRenderingManager.js +32 -0
- package/dist/managers/UniversalRenderingManager.js.map +1 -0
- package/dist/react/File.d.ts +19 -0
- package/dist/react/File.d.ts.map +1 -0
- package/dist/react/File.js +36 -0
- package/dist/react/File.js.map +1 -0
- package/dist/react/FileDiff.d.ts +22 -0
- package/dist/react/FileDiff.d.ts.map +1 -0
- package/dist/react/FileDiff.js +36 -0
- package/dist/react/FileDiff.js.map +1 -0
- package/dist/react/MultiFileDiff.d.ts +24 -0
- package/dist/react/MultiFileDiff.d.ts.map +1 -0
- package/dist/react/MultiFileDiff.js +38 -0
- package/dist/react/MultiFileDiff.js.map +1 -0
- package/dist/react/PatchDiff.d.ts +21 -0
- package/dist/react/PatchDiff.d.ts.map +1 -0
- package/dist/react/PatchDiff.js +42 -0
- package/dist/react/PatchDiff.js.map +1 -0
- package/dist/react/WorkerPoolContext.d.ts +20 -0
- package/dist/react/WorkerPoolContext.d.ts.map +1 -0
- package/dist/react/WorkerPoolContext.js +41 -0
- package/dist/react/WorkerPoolContext.js.map +1 -0
- package/dist/react/constants.d.ts +7 -0
- package/dist/react/constants.d.ts.map +1 -0
- package/dist/react/constants.js +11 -0
- package/dist/react/constants.js.map +1 -0
- package/dist/react/index.d.ts +17 -0
- package/dist/react/index.js +14 -0
- package/dist/react/jsx.d.ts +12 -0
- package/dist/react/jsx.d.ts.map +1 -0
- package/dist/react/types.d.ts +34 -0
- package/dist/react/types.d.ts.map +1 -0
- package/dist/react/types.js +1 -0
- package/dist/react/utils/renderDiffChildren.d.ts +29 -0
- package/dist/react/utils/renderDiffChildren.d.ts.map +1 -0
- package/dist/react/utils/renderDiffChildren.js +32 -0
- package/dist/react/utils/renderDiffChildren.js.map +1 -0
- package/dist/react/utils/renderFileChildren.d.ts +25 -0
- package/dist/react/utils/renderFileChildren.d.ts.map +1 -0
- package/dist/react/utils/renderFileChildren.js +28 -0
- package/dist/react/utils/renderFileChildren.js.map +1 -0
- package/dist/react/utils/templateRender.d.ts +7 -0
- package/dist/react/utils/templateRender.d.ts.map +1 -0
- package/dist/react/utils/templateRender.js +14 -0
- package/dist/react/utils/templateRender.js.map +1 -0
- package/dist/react/utils/useFileDiffInstance.d.ts +31 -0
- package/dist/react/utils/useFileDiffInstance.d.ts.map +1 -0
- package/dist/react/utils/useFileDiffInstance.js +54 -0
- package/dist/react/utils/useFileDiffInstance.js.map +1 -0
- package/dist/react/utils/useFileInstance.d.ts +27 -0
- package/dist/react/utils/useFileInstance.d.ts.map +1 -0
- package/dist/react/utils/useFileInstance.js +49 -0
- package/dist/react/utils/useFileInstance.js.map +1 -0
- package/dist/react/utils/useStableCallback.d.ts +5 -0
- package/dist/react/utils/useStableCallback.d.ts.map +1 -0
- package/dist/react/utils/useStableCallback.js +14 -0
- package/dist/react/utils/useStableCallback.js.map +1 -0
- package/dist/renderers/DiffHunksRenderer.d.ts +62 -0
- package/dist/renderers/DiffHunksRenderer.d.ts.map +1 -0
- package/dist/renderers/DiffHunksRenderer.js +651 -0
- package/dist/renderers/DiffHunksRenderer.js.map +1 -0
- package/dist/renderers/FileRenderer.d.ts +49 -0
- package/dist/renderers/FileRenderer.d.ts.map +1 -0
- package/dist/renderers/FileRenderer.js +239 -0
- package/dist/renderers/FileRenderer.js.map +1 -0
- package/dist/shiki-stream/index.d.ts +4 -0
- package/dist/shiki-stream/index.js +4 -0
- package/dist/shiki-stream/stream.d.ts +17 -0
- package/dist/shiki-stream/stream.d.ts.map +1 -0
- package/dist/shiki-stream/stream.js +32 -0
- package/dist/shiki-stream/stream.js.map +1 -0
- package/dist/shiki-stream/tokenizer.d.ts +24 -0
- package/dist/shiki-stream/tokenizer.d.ts.map +1 -0
- package/dist/shiki-stream/tokenizer.js +71 -0
- package/dist/shiki-stream/tokenizer.js.map +1 -0
- package/dist/shiki-stream/types.d.ts +45 -0
- package/dist/shiki-stream/types.d.ts.map +1 -0
- package/dist/shiki-stream/types.js +0 -0
- package/dist/sprite.d.ts +6 -0
- package/dist/sprite.d.ts.map +1 -0
- package/dist/sprite.js +55 -0
- package/dist/sprite.js.map +1 -0
- package/dist/ssr/FileDiffReact.d.ts +21 -0
- package/dist/ssr/FileDiffReact.d.ts.map +1 -0
- package/dist/ssr/FileDiffReact.js +53 -0
- package/dist/ssr/FileDiffReact.js.map +1 -0
- package/dist/ssr/index.d.ts +6 -0
- package/dist/ssr/index.js +6 -0
- package/dist/ssr/preloadDiffs.d.ts +72 -0
- package/dist/ssr/preloadDiffs.d.ts.map +1 -0
- package/dist/ssr/preloadDiffs.js +66 -0
- package/dist/ssr/preloadDiffs.js.map +1 -0
- package/dist/ssr/preloadFile.d.ts +23 -0
- package/dist/ssr/preloadFile.d.ts.map +1 -0
- package/dist/ssr/preloadFile.js +26 -0
- package/dist/ssr/preloadFile.js.map +1 -0
- package/dist/ssr/preloadPatchFile.d.ts +15 -0
- package/dist/ssr/preloadPatchFile.d.ts.map +1 -0
- package/dist/ssr/preloadPatchFile.js +17 -0
- package/dist/ssr/preloadPatchFile.js.map +1 -0
- package/dist/ssr/renderHTML.d.ts +7 -0
- package/dist/ssr/renderHTML.d.ts.map +1 -0
- package/dist/ssr/renderHTML.js +11 -0
- package/dist/ssr/renderHTML.js.map +1 -0
- package/dist/string-import.d.ts +6 -0
- package/dist/string-import.d.ts.map +1 -0
- package/dist/style.js +6 -0
- package/dist/style.js.map +1 -0
- package/dist/themes/pierre-dark.js +1328 -0
- package/dist/themes/pierre-dark.js.map +1 -0
- package/dist/themes/pierre-light.js +1328 -0
- package/dist/themes/pierre-light.js.map +1 -0
- package/dist/types.d.ts +238 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +0 -0
- package/dist/utils/areFilesEqual.d.ts +7 -0
- package/dist/utils/areFilesEqual.d.ts.map +1 -0
- package/dist/utils/areFilesEqual.js +8 -0
- package/dist/utils/areFilesEqual.js.map +1 -0
- package/dist/utils/areObjectsEqual.d.ts +5 -0
- package/dist/utils/areObjectsEqual.d.ts.map +1 -0
- package/dist/utils/areObjectsEqual.js +18 -0
- package/dist/utils/areObjectsEqual.js.map +1 -0
- package/dist/utils/areOptionsEqual.d.ts +9 -0
- package/dist/utils/areOptionsEqual.d.ts.map +1 -0
- package/dist/utils/areOptionsEqual.js +12 -0
- package/dist/utils/areOptionsEqual.js.map +1 -0
- package/dist/utils/areSelectionsEqual.d.ts +7 -0
- package/dist/utils/areSelectionsEqual.d.ts.map +1 -0
- package/dist/utils/areSelectionsEqual.js +8 -0
- package/dist/utils/areSelectionsEqual.js.map +1 -0
- package/dist/utils/areThemesEqual.d.ts +7 -0
- package/dist/utils/areThemesEqual.d.ts.map +1 -0
- package/dist/utils/areThemesEqual.js +9 -0
- package/dist/utils/areThemesEqual.js.map +1 -0
- package/dist/utils/cleanLastNewline.d.ts +5 -0
- package/dist/utils/cleanLastNewline.d.ts.map +1 -0
- package/dist/utils/cleanLastNewline.js +8 -0
- package/dist/utils/cleanLastNewline.js.map +1 -0
- package/dist/utils/createAnnotationElement.d.ts +8 -0
- package/dist/utils/createAnnotationElement.d.ts.map +1 -0
- package/dist/utils/createAnnotationElement.js +21 -0
- package/dist/utils/createAnnotationElement.js.map +1 -0
- package/dist/utils/createAnnotationWrapperNode.d.ts +5 -0
- package/dist/utils/createAnnotationWrapperNode.d.ts.map +1 -0
- package/dist/utils/createAnnotationWrapperNode.js +12 -0
- package/dist/utils/createAnnotationWrapperNode.js.map +1 -0
- package/dist/utils/createCodeNode.d.ts +12 -0
- package/dist/utils/createCodeNode.d.ts.map +1 -0
- package/dist/utils/createCodeNode.js +12 -0
- package/dist/utils/createCodeNode.js.map +1 -0
- package/dist/utils/createEmptyRowBuffer.d.ts +7 -0
- package/dist/utils/createEmptyRowBuffer.d.ts.map +1 -0
- package/dist/utils/createEmptyRowBuffer.js +16 -0
- package/dist/utils/createEmptyRowBuffer.js.map +1 -0
- package/dist/utils/createFileHeaderElement.d.ts +17 -0
- package/dist/utils/createFileHeaderElement.d.ts.map +1 -0
- package/dist/utils/createFileHeaderElement.js +84 -0
- package/dist/utils/createFileHeaderElement.js.map +1 -0
- package/dist/utils/createHoverContentNode.d.ts +5 -0
- package/dist/utils/createHoverContentNode.d.ts.map +1 -0
- package/dist/utils/createHoverContentNode.js +15 -0
- package/dist/utils/createHoverContentNode.js.map +1 -0
- package/dist/utils/createNoNewlineElement.d.ts +7 -0
- package/dist/utils/createNoNewlineElement.d.ts.map +1 -0
- package/dist/utils/createNoNewlineElement.js +24 -0
- package/dist/utils/createNoNewlineElement.js.map +1 -0
- package/dist/utils/createPreElement.d.ts +18 -0
- package/dist/utils/createPreElement.d.ts.map +1 -0
- package/dist/utils/createPreElement.js +28 -0
- package/dist/utils/createPreElement.js.map +1 -0
- package/dist/utils/createRowNodes.d.ts +8 -0
- package/dist/utils/createRowNodes.d.ts.map +1 -0
- package/dist/utils/createRowNodes.js +20 -0
- package/dist/utils/createRowNodes.js.map +1 -0
- package/dist/utils/createSeparator.d.ts +25 -0
- package/dist/utils/createSeparator.d.ts.map +1 -0
- package/dist/utils/createSeparator.js +69 -0
- package/dist/utils/createSeparator.js.map +1 -0
- package/dist/utils/createSpanNodeFromToken.d.ts +7 -0
- package/dist/utils/createSpanNodeFromToken.d.ts.map +1 -0
- package/dist/utils/createSpanNodeFromToken.js +13 -0
- package/dist/utils/createSpanNodeFromToken.js.map +1 -0
- package/dist/utils/createStyleElement.d.ts +7 -0
- package/dist/utils/createStyleElement.d.ts.map +1 -0
- package/dist/utils/createStyleElement.js +19 -0
- package/dist/utils/createStyleElement.js.map +1 -0
- package/dist/utils/createTransformerWithState.d.ts +13 -0
- package/dist/utils/createTransformerWithState.d.ts.map +1 -0
- package/dist/utils/createTransformerWithState.js +56 -0
- package/dist/utils/createTransformerWithState.js.map +1 -0
- package/dist/utils/createUnsafeCSSStyleNode.d.ts +5 -0
- package/dist/utils/createUnsafeCSSStyleNode.d.ts.map +1 -0
- package/dist/utils/createUnsafeCSSStyleNode.js +12 -0
- package/dist/utils/createUnsafeCSSStyleNode.js.map +1 -0
- package/dist/utils/cssWrappers.d.ts +6 -0
- package/dist/utils/cssWrappers.d.ts.map +1 -0
- package/dist/utils/cssWrappers.js +21 -0
- package/dist/utils/cssWrappers.js.map +1 -0
- package/dist/utils/diffAcceptRejectHunk.d.ts +7 -0
- package/dist/utils/diffAcceptRejectHunk.d.ts.map +1 -0
- package/dist/utils/diffAcceptRejectHunk.js +82 -0
- package/dist/utils/diffAcceptRejectHunk.js.map +1 -0
- package/dist/utils/formatCSSVariablePrefix.d.ts +5 -0
- package/dist/utils/formatCSSVariablePrefix.d.ts.map +1 -0
- package/dist/utils/formatCSSVariablePrefix.js +8 -0
- package/dist/utils/formatCSSVariablePrefix.js.map +1 -0
- package/dist/utils/getFiletypeFromFileName.d.ts +9 -0
- package/dist/utils/getFiletypeFromFileName.d.ts.map +1 -0
- package/dist/utils/getFiletypeFromFileName.js +343 -0
- package/dist/utils/getFiletypeFromFileName.js.map +1 -0
- package/dist/utils/getHighlighterOptions.d.ts +14 -0
- package/dist/utils/getHighlighterOptions.d.ts.map +1 -0
- package/dist/utils/getHighlighterOptions.js +13 -0
- package/dist/utils/getHighlighterOptions.js.map +1 -0
- package/dist/utils/getHighlighterThemeStyles.d.ts +16 -0
- package/dist/utils/getHighlighterThemeStyles.d.ts.map +1 -0
- package/dist/utils/getHighlighterThemeStyles.js +40 -0
- package/dist/utils/getHighlighterThemeStyles.js.map +1 -0
- package/dist/utils/getHunkSeparatorSlotName.d.ts +5 -0
- package/dist/utils/getHunkSeparatorSlotName.d.ts.map +1 -0
- package/dist/utils/getHunkSeparatorSlotName.js +8 -0
- package/dist/utils/getHunkSeparatorSlotName.js.map +1 -0
- package/dist/utils/getIconForType.d.ts +8 -0
- package/dist/utils/getIconForType.d.ts.map +1 -0
- package/dist/utils/getIconForType.js +15 -0
- package/dist/utils/getIconForType.js.map +1 -0
- package/dist/utils/getLineAnnotationName.d.ts +7 -0
- package/dist/utils/getLineAnnotationName.d.ts.map +1 -0
- package/dist/utils/getLineAnnotationName.js +8 -0
- package/dist/utils/getLineAnnotationName.js.map +1 -0
- package/dist/utils/getLineEndingType.d.ts +5 -0
- package/dist/utils/getLineEndingType.d.ts.map +1 -0
- package/dist/utils/getLineEndingType.js +11 -0
- package/dist/utils/getLineEndingType.js.map +1 -0
- package/dist/utils/getLineNodes.d.ts +7 -0
- package/dist/utils/getLineNodes.d.ts.map +1 -0
- package/dist/utils/getLineNodes.js +15 -0
- package/dist/utils/getLineNodes.js.map +1 -0
- package/dist/utils/getSingularPatch.d.ts +7 -0
- package/dist/utils/getSingularPatch.d.ts.map +1 -0
- package/dist/utils/getSingularPatch.js +20 -0
- package/dist/utils/getSingularPatch.js.map +1 -0
- package/dist/utils/getThemes.d.ts +7 -0
- package/dist/utils/getThemes.d.ts.map +1 -0
- package/dist/utils/getThemes.js +16 -0
- package/dist/utils/getThemes.js.map +1 -0
- package/dist/utils/getTotalLineCountFromHunks.d.ts +7 -0
- package/dist/utils/getTotalLineCountFromHunks.d.ts.map +1 -0
- package/dist/utils/getTotalLineCountFromHunks.js +10 -0
- package/dist/utils/getTotalLineCountFromHunks.js.map +1 -0
- package/dist/utils/hast_utils.d.ts +31 -0
- package/dist/utils/hast_utils.d.ts.map +1 -0
- package/dist/utils/hast_utils.js +42 -0
- package/dist/utils/hast_utils.js.map +1 -0
- package/dist/utils/isWorkerContext.d.ts +5 -0
- package/dist/utils/isWorkerContext.d.ts.map +1 -0
- package/dist/utils/isWorkerContext.js +8 -0
- package/dist/utils/isWorkerContext.js.map +1 -0
- package/dist/utils/parseDiffDecorations.d.ts +31 -0
- package/dist/utils/parseDiffDecorations.d.ts.map +1 -0
- package/dist/utils/parseDiffDecorations.js +34 -0
- package/dist/utils/parseDiffDecorations.js.map +1 -0
- package/dist/utils/parseDiffFromFile.d.ts +14 -0
- package/dist/utils/parseDiffFromFile.d.ts.map +1 -0
- package/dist/utils/parseDiffFromFile.js +23 -0
- package/dist/utils/parseDiffFromFile.js.map +1 -0
- package/dist/utils/parseLineType.d.ts +11 -0
- package/dist/utils/parseLineType.d.ts.map +1 -0
- package/dist/utils/parseLineType.js +16 -0
- package/dist/utils/parseLineType.js.map +1 -0
- package/dist/utils/parsePatchFiles.d.ts +16 -0
- package/dist/utils/parsePatchFiles.d.ts.map +1 -0
- package/dist/utils/parsePatchFiles.js +204 -0
- package/dist/utils/parsePatchFiles.js.map +1 -0
- package/dist/utils/prerenderHTMLIfNecessary.d.ts +5 -0
- package/dist/utils/prerenderHTMLIfNecessary.d.ts.map +1 -0
- package/dist/utils/prerenderHTMLIfNecessary.js +10 -0
- package/dist/utils/prerenderHTMLIfNecessary.js.map +1 -0
- package/dist/utils/processLine.d.ts +8 -0
- package/dist/utils/processLine.d.ts.map +1 -0
- package/dist/utils/processLine.js +42 -0
- package/dist/utils/processLine.js.map +1 -0
- package/dist/utils/renderDiffWithHighlighter.d.ts +7 -0
- package/dist/utils/renderDiffWithHighlighter.d.ts.map +1 -0
- package/dist/utils/renderDiffWithHighlighter.js +323 -0
- package/dist/utils/renderDiffWithHighlighter.js.map +1 -0
- package/dist/utils/renderFileWithHighlighter.d.ts +10 -0
- package/dist/utils/renderFileWithHighlighter.d.ts.map +1 -0
- package/dist/utils/renderFileWithHighlighter.js +52 -0
- package/dist/utils/renderFileWithHighlighter.js.map +1 -0
- package/dist/utils/setLanguageOverride.d.ts +7 -0
- package/dist/utils/setLanguageOverride.d.ts.map +1 -0
- package/dist/utils/setLanguageOverride.js +11 -0
- package/dist/utils/setLanguageOverride.js.map +1 -0
- package/dist/utils/setWrapperNodeProps.d.ts +20 -0
- package/dist/utils/setWrapperNodeProps.d.ts.map +1 -0
- package/dist/utils/setWrapperNodeProps.js +29 -0
- package/dist/utils/setWrapperNodeProps.js.map +1 -0
- package/dist/worker/WorkerPoolManager.d.ts +72 -0
- package/dist/worker/WorkerPoolManager.d.ts.map +1 -0
- package/dist/worker/WorkerPoolManager.js +421 -0
- package/dist/worker/WorkerPoolManager.js.map +1 -0
- package/dist/worker/getOrCreateWorkerPoolSingleton.d.ts +16 -0
- package/dist/worker/getOrCreateWorkerPoolSingleton.d.ts.map +1 -0
- package/dist/worker/getOrCreateWorkerPoolSingleton.js +20 -0
- package/dist/worker/getOrCreateWorkerPoolSingleton.js.map +1 -0
- package/dist/worker/index.d.ts +4 -0
- package/dist/worker/index.js +4 -0
- package/dist/worker/types.d.ts +140 -0
- package/dist/worker/types.d.ts.map +1 -0
- package/dist/worker/types.js +0 -0
- package/dist/worker/worker-portable.d.ts +1 -0
- package/dist/worker/worker-portable.js +14872 -0
- package/dist/worker/worker-portable.js.map +1 -0
- package/dist/worker/worker.d.ts +1 -0
- package/dist/worker/worker.js +1061 -0
- package/dist/worker/worker.js.map +1 -0
- package/package.json +76 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { findCodeElement } from "./hast_utils.js";
|
|
2
|
+
import { processLine } from "./processLine.js";
|
|
3
|
+
import { transformerStyleToClass } from "@shikijs/transformers";
|
|
4
|
+
|
|
5
|
+
//#region src/utils/createTransformerWithState.ts
|
|
6
|
+
function createTransformerWithState(useCSSClasses = false) {
|
|
7
|
+
const state = { lineInfo: {} };
|
|
8
|
+
const transformers = [{
|
|
9
|
+
line(node) {
|
|
10
|
+
delete node.properties.class;
|
|
11
|
+
return node;
|
|
12
|
+
},
|
|
13
|
+
pre(pre) {
|
|
14
|
+
const code = findCodeElement(pre);
|
|
15
|
+
const children = [];
|
|
16
|
+
if (code != null) {
|
|
17
|
+
let index = 1;
|
|
18
|
+
for (const node of code.children) {
|
|
19
|
+
if (node.type !== "element") continue;
|
|
20
|
+
children.push(processLine(node, index, state));
|
|
21
|
+
index++;
|
|
22
|
+
}
|
|
23
|
+
code.children = children;
|
|
24
|
+
}
|
|
25
|
+
return pre;
|
|
26
|
+
}
|
|
27
|
+
}];
|
|
28
|
+
if (useCSSClasses) transformers.push(tokenStyleNormalizer, toClass);
|
|
29
|
+
return {
|
|
30
|
+
state,
|
|
31
|
+
transformers,
|
|
32
|
+
toClass
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
const toClass = transformerStyleToClass({ classPrefix: "hl-" });
|
|
36
|
+
const tokenStyleNormalizer = {
|
|
37
|
+
name: "token-style-normalizer",
|
|
38
|
+
tokens(lines) {
|
|
39
|
+
for (const line of lines) for (const token of line) {
|
|
40
|
+
if (token.htmlStyle != null) continue;
|
|
41
|
+
const style = {};
|
|
42
|
+
if (token.color != null) style.color = token.color;
|
|
43
|
+
if (token.bgColor != null) style["background-color"] = token.bgColor;
|
|
44
|
+
if (token.fontStyle != null && token.fontStyle !== 0) {
|
|
45
|
+
if ((token.fontStyle & 1) !== 0) style["font-style"] = "italic";
|
|
46
|
+
if ((token.fontStyle & 2) !== 0) style["font-weight"] = "bold";
|
|
47
|
+
if ((token.fontStyle & 4) !== 0) style["text-decoration"] = "underline";
|
|
48
|
+
}
|
|
49
|
+
if (Object.keys(style).length > 0) token.htmlStyle = style;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
//#endregion
|
|
55
|
+
export { createTransformerWithState };
|
|
56
|
+
//# sourceMappingURL=createTransformerWithState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createTransformerWithState.js","names":["state: SharedRenderState","transformers: ShikiTransformer[]","children: ElementContent[]","tokenStyleNormalizer: ShikiTransformer","style: Record<string, string>"],"sources":["../../src/utils/createTransformerWithState.ts"],"sourcesContent":["import {\n type ShikiTransformerStyleToClass,\n transformerStyleToClass,\n} from '@shikijs/transformers';\nimport type { ElementContent } from 'hast';\n\nimport type { SharedRenderState, ShikiTransformer } from '../types';\nimport { findCodeElement } from './hast_utils';\nimport { processLine } from './processLine';\n\ninterface CreateTransformerWithStateReturn {\n state: SharedRenderState;\n transformers: ShikiTransformer[];\n toClass: ShikiTransformerStyleToClass;\n}\n\nexport function createTransformerWithState(\n useCSSClasses = false\n): CreateTransformerWithStateReturn {\n const state: SharedRenderState = {\n lineInfo: {},\n };\n const transformers: ShikiTransformer[] = [\n {\n line(node) {\n // Remove the default class\n delete node.properties.class;\n return node;\n },\n pre(pre) {\n const code = findCodeElement(pre);\n const children: ElementContent[] = [];\n if (code != null) {\n let index = 1;\n for (const node of code.children) {\n if (node.type !== 'element') continue;\n children.push(processLine(node, index, state));\n index++;\n }\n code.children = children;\n }\n return pre;\n },\n },\n ];\n if (useCSSClasses) {\n transformers.push(tokenStyleNormalizer, toClass);\n }\n return { state, transformers, toClass };\n}\n\nconst toClass = transformerStyleToClass({ classPrefix: 'hl-' });\n\n// Create a transformer that converts token color/fontStyle to htmlStyle\n// This needs to run BEFORE transformerStyleToClass\nconst tokenStyleNormalizer: ShikiTransformer = {\n name: 'token-style-normalizer',\n tokens(lines) {\n for (const line of lines) {\n for (const token of line) {\n // Skip if htmlStyle is already set\n if (token.htmlStyle != null) continue;\n\n const style: Record<string, string> = {};\n\n if (token.color != null) {\n style.color = token.color;\n }\n if (token.bgColor != null) {\n style['background-color'] = token.bgColor;\n }\n if (token.fontStyle != null && token.fontStyle !== 0) {\n // FontStyle is a bitmask: 1 = italic, 2 = bold, 4 = underline\n if ((token.fontStyle & 1) !== 0) {\n style['font-style'] = 'italic';\n }\n if ((token.fontStyle & 2) !== 0) {\n style['font-weight'] = 'bold';\n }\n if ((token.fontStyle & 4) !== 0) {\n style['text-decoration'] = 'underline';\n }\n }\n\n // Only set htmlStyle if we have any styles\n if (Object.keys(style).length > 0) {\n token.htmlStyle = style;\n }\n }\n }\n },\n};\n"],"mappings":";;;;;AAgBA,SAAgB,2BACd,gBAAgB,OACkB;CAClC,MAAMA,QAA2B,EAC/B,UAAU,EAAE,EACb;CACD,MAAMC,eAAmC,CACvC;EACE,KAAK,MAAM;AAET,UAAO,KAAK,WAAW;AACvB,UAAO;;EAET,IAAI,KAAK;GACP,MAAM,OAAO,gBAAgB,IAAI;GACjC,MAAMC,WAA6B,EAAE;AACrC,OAAI,QAAQ,MAAM;IAChB,IAAI,QAAQ;AACZ,SAAK,MAAM,QAAQ,KAAK,UAAU;AAChC,SAAI,KAAK,SAAS,UAAW;AAC7B,cAAS,KAAK,YAAY,MAAM,OAAO,MAAM,CAAC;AAC9C;;AAEF,SAAK,WAAW;;AAElB,UAAO;;EAEV,CACF;AACD,KAAI,cACF,cAAa,KAAK,sBAAsB,QAAQ;AAElD,QAAO;EAAE;EAAO;EAAc;EAAS;;AAGzC,MAAM,UAAU,wBAAwB,EAAE,aAAa,OAAO,CAAC;AAI/D,MAAMC,uBAAyC;CAC7C,MAAM;CACN,OAAO,OAAO;AACZ,OAAK,MAAM,QAAQ,MACjB,MAAK,MAAM,SAAS,MAAM;AAExB,OAAI,MAAM,aAAa,KAAM;GAE7B,MAAMC,QAAgC,EAAE;AAExC,OAAI,MAAM,SAAS,KACjB,OAAM,QAAQ,MAAM;AAEtB,OAAI,MAAM,WAAW,KACnB,OAAM,sBAAsB,MAAM;AAEpC,OAAI,MAAM,aAAa,QAAQ,MAAM,cAAc,GAAG;AAEpD,SAAK,MAAM,YAAY,OAAO,EAC5B,OAAM,gBAAgB;AAExB,SAAK,MAAM,YAAY,OAAO,EAC5B,OAAM,iBAAiB;AAEzB,SAAK,MAAM,YAAY,OAAO,EAC5B,OAAM,qBAAqB;;AAK/B,OAAI,OAAO,KAAK,MAAM,CAAC,SAAS,EAC9B,OAAM,YAAY;;;CAK3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createUnsafeCSSStyleNode.d.ts","names":[],"sources":["../../src/utils/createUnsafeCSSStyleNode.ts"],"sourcesContent":[],"mappings":";iBAEgB,wBAAA,CAAA,GAA4B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { UNSAFE_CSS_ATTRIBUTE } from "../constants.js";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/createUnsafeCSSStyleNode.ts
|
|
4
|
+
function createUnsafeCSSStyleNode() {
|
|
5
|
+
const node = document.createElement("style");
|
|
6
|
+
node.setAttribute(UNSAFE_CSS_ATTRIBUTE, "");
|
|
7
|
+
return node;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
//#endregion
|
|
11
|
+
export { createUnsafeCSSStyleNode };
|
|
12
|
+
//# sourceMappingURL=createUnsafeCSSStyleNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createUnsafeCSSStyleNode.js","names":[],"sources":["../../src/utils/createUnsafeCSSStyleNode.ts"],"sourcesContent":["import { UNSAFE_CSS_ATTRIBUTE } from '../constants';\n\nexport function createUnsafeCSSStyleNode(): HTMLStyleElement {\n const node = document.createElement('style');\n node.setAttribute(UNSAFE_CSS_ATTRIBUTE, '');\n return node;\n}\n"],"mappings":";;;AAEA,SAAgB,2BAA6C;CAC3D,MAAM,OAAO,SAAS,cAAc,QAAQ;AAC5C,MAAK,aAAa,sBAAsB,GAAG;AAC3C,QAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cssWrappers.d.ts","names":[],"sources":["../../src/utils/cssWrappers.ts"],"sourcesContent":[],"mappings":";iBAIgB,WAAA;AAAA,iBAQA,aAAA,CARA,SAAA,EAAA,MAAA,CAAA,EAAA,MAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import style_default from "../style.js";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/cssWrappers.ts
|
|
4
|
+
const LAYER_ORDER = `@layer base, theme, unsafe;`;
|
|
5
|
+
function wrapCoreCSS(mainCSS) {
|
|
6
|
+
return `${LAYER_ORDER}
|
|
7
|
+
${style_default}
|
|
8
|
+
@layer theme {
|
|
9
|
+
${mainCSS}
|
|
10
|
+
}`;
|
|
11
|
+
}
|
|
12
|
+
function wrapUnsafeCSS(unsafeCSS) {
|
|
13
|
+
return `${LAYER_ORDER}
|
|
14
|
+
@layer unsafe {
|
|
15
|
+
${unsafeCSS}
|
|
16
|
+
}`;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
//#endregion
|
|
20
|
+
export { wrapCoreCSS, wrapUnsafeCSS };
|
|
21
|
+
//# sourceMappingURL=cssWrappers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cssWrappers.js","names":["rawStyles"],"sources":["../../src/utils/cssWrappers.ts"],"sourcesContent":["import rawStyles from '../style.css';\n\nconst LAYER_ORDER = `@layer base, theme, unsafe;`;\n\nexport function wrapCoreCSS(mainCSS: string) {\n return `${LAYER_ORDER}\n${rawStyles}\n@layer theme {\n ${mainCSS}\n}`;\n}\n\nexport function wrapUnsafeCSS(unsafeCSS: string) {\n return `${LAYER_ORDER}\n@layer unsafe {\n ${unsafeCSS}\n}`;\n}\n"],"mappings":";;;AAEA,MAAM,cAAc;AAEpB,SAAgB,YAAY,SAAiB;AAC3C,QAAO,GAAG,YAAY;EACtBA,cAAU;;IAER,QAAQ;;;AAIZ,SAAgB,cAAc,WAAmB;AAC/C,QAAO,GAAG,YAAY;;IAEpB,UAAU"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { FileDiffMetadata } from "../types.js";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/diffAcceptRejectHunk.d.ts
|
|
4
|
+
declare function diffAcceptRejectHunk(diff: FileDiffMetadata, hunkIndex: number, type: "accept" | "reject"): FileDiffMetadata;
|
|
5
|
+
//#endregion
|
|
6
|
+
export { diffAcceptRejectHunk };
|
|
7
|
+
//# sourceMappingURL=diffAcceptRejectHunk.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diffAcceptRejectHunk.d.ts","names":[],"sources":["../../src/utils/diffAcceptRejectHunk.ts"],"sourcesContent":[],"mappings":";;;iBAEgB,oBAAA,OACR,iEAGL"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
//#region src/utils/diffAcceptRejectHunk.ts
|
|
2
|
+
function diffAcceptRejectHunk(diff, hunkIndex, type) {
|
|
3
|
+
diff = {
|
|
4
|
+
...diff,
|
|
5
|
+
hunks: [...diff.hunks],
|
|
6
|
+
oldLines: diff.oldLines != null ? [...diff.oldLines] : void 0,
|
|
7
|
+
newLines: diff.newLines != null ? [...diff.newLines] : void 0,
|
|
8
|
+
cacheKey: diff.cacheKey != null ? `${diff.cacheKey}:${type[0]}-${hunkIndex}` : void 0
|
|
9
|
+
};
|
|
10
|
+
const { newLines, oldLines } = diff;
|
|
11
|
+
if (newLines != null && oldLines != null) {
|
|
12
|
+
const hunk = diff.hunks[hunkIndex];
|
|
13
|
+
if (hunk == null) {
|
|
14
|
+
console.error({
|
|
15
|
+
diff,
|
|
16
|
+
hunkIndex
|
|
17
|
+
});
|
|
18
|
+
throw new Error(`diffResolveRejectHunk: Invalid hunk index: ${hunkIndex}`);
|
|
19
|
+
}
|
|
20
|
+
if (type === "reject") newLines.splice(hunk.additionStart - 1, hunk.additionCount, ...oldLines.slice(hunk.deletionStart - 1, hunk.deletionStart - 1 + hunk.deletionCount));
|
|
21
|
+
else oldLines.splice(hunk.deletionStart - 1, hunk.deletionCount, ...newLines.slice(hunk.additionStart - 1, hunk.additionStart - 1 + hunk.additionCount));
|
|
22
|
+
}
|
|
23
|
+
let deletionOffset = 0;
|
|
24
|
+
let additionOffset = 0;
|
|
25
|
+
let splitOffset = 0;
|
|
26
|
+
let unifiedOffset = 0;
|
|
27
|
+
for (let i = hunkIndex; i < diff.hunks.length; i++) {
|
|
28
|
+
let hunk = diff.hunks[i];
|
|
29
|
+
if (hunk == null) {
|
|
30
|
+
console.error({
|
|
31
|
+
hunk,
|
|
32
|
+
i,
|
|
33
|
+
hunkIndex,
|
|
34
|
+
diff
|
|
35
|
+
});
|
|
36
|
+
throw new Error("diffResolveRejectHunk: iterating through hunks, hunk doesnt exist...");
|
|
37
|
+
}
|
|
38
|
+
hunk = { ...hunk };
|
|
39
|
+
diff.hunks[i] = hunk;
|
|
40
|
+
if (i === hunkIndex) {
|
|
41
|
+
const newContent = {
|
|
42
|
+
type: "context",
|
|
43
|
+
lines: [],
|
|
44
|
+
noEOFCR: false
|
|
45
|
+
};
|
|
46
|
+
for (const content of hunk.hunkContent) if (content.type === "context") {
|
|
47
|
+
newContent.lines.push(...content.lines);
|
|
48
|
+
newContent.noEOFCR = content.noEOFCR;
|
|
49
|
+
} else if (type === "accept") {
|
|
50
|
+
newContent.lines.push(...content.additions);
|
|
51
|
+
newContent.noEOFCR = content.noEOFCRAdditions;
|
|
52
|
+
} else if (type === "reject") {
|
|
53
|
+
newContent.lines.push(...content.deletions);
|
|
54
|
+
newContent.noEOFCR = content.noEOFCRDeletions;
|
|
55
|
+
}
|
|
56
|
+
const lineCount = newContent.lines.length;
|
|
57
|
+
hunk.hunkContent = [newContent];
|
|
58
|
+
splitOffset = lineCount - hunk.splitLineCount;
|
|
59
|
+
hunk.splitLineCount = lineCount;
|
|
60
|
+
unifiedOffset = lineCount - hunk.unifiedLineCount;
|
|
61
|
+
hunk.unifiedLineCount = lineCount;
|
|
62
|
+
deletionOffset = lineCount - hunk.deletionCount;
|
|
63
|
+
hunk.deletionCount = lineCount;
|
|
64
|
+
hunk.deletionLines = 0;
|
|
65
|
+
additionOffset = lineCount - hunk.additionCount;
|
|
66
|
+
hunk.additionCount = lineCount;
|
|
67
|
+
hunk.additionLines = 0;
|
|
68
|
+
diff.splitLineCount += splitOffset;
|
|
69
|
+
diff.unifiedLineCount += unifiedOffset;
|
|
70
|
+
} else {
|
|
71
|
+
hunk.splitLineStart += splitOffset;
|
|
72
|
+
hunk.unifiedLineStart += unifiedOffset;
|
|
73
|
+
hunk.additionStart += additionOffset;
|
|
74
|
+
hunk.deletionStart += deletionOffset;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return diff;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
//#endregion
|
|
81
|
+
export { diffAcceptRejectHunk };
|
|
82
|
+
//# sourceMappingURL=diffAcceptRejectHunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diffAcceptRejectHunk.js","names":["newContent: ContextContent"],"sources":["../../src/utils/diffAcceptRejectHunk.ts"],"sourcesContent":["import type { ContextContent, FileDiffMetadata } from '../types';\n\nexport function diffAcceptRejectHunk(\n diff: FileDiffMetadata,\n hunkIndex: number,\n type: 'accept' | 'reject'\n): FileDiffMetadata {\n diff = {\n ...diff,\n hunks: [...diff.hunks],\n oldLines: diff.oldLines != null ? [...diff.oldLines] : undefined,\n newLines: diff.newLines != null ? [...diff.newLines] : undefined,\n // Automatically update cacheKey if it exists, since content is changing\n cacheKey:\n diff.cacheKey != null\n ? `${diff.cacheKey}:${type[0]}-${hunkIndex}`\n : undefined,\n };\n // Fix the content lines\n const { newLines, oldLines } = diff;\n if (newLines != null && oldLines != null) {\n const hunk = diff.hunks[hunkIndex];\n if (hunk == null) {\n console.error({ diff, hunkIndex });\n throw new Error(\n `diffResolveRejectHunk: Invalid hunk index: ${hunkIndex}`\n );\n }\n if (type === 'reject') {\n newLines.splice(\n hunk.additionStart - 1,\n hunk.additionCount,\n ...oldLines.slice(\n hunk.deletionStart - 1,\n hunk.deletionStart - 1 + hunk.deletionCount\n )\n );\n } else {\n oldLines.splice(\n hunk.deletionStart - 1,\n hunk.deletionCount,\n ...newLines.slice(\n hunk.additionStart - 1,\n hunk.additionStart - 1 + hunk.additionCount\n )\n );\n }\n }\n let deletionOffset = 0;\n let additionOffset = 0;\n let splitOffset = 0;\n let unifiedOffset = 0;\n for (let i = hunkIndex; i < diff.hunks.length; i++) {\n let hunk = diff.hunks[i];\n if (hunk == null) {\n console.error({ hunk, i, hunkIndex, diff });\n throw new Error(\n 'diffResolveRejectHunk: iterating through hunks, hunk doesnt exist...'\n );\n }\n hunk = { ...hunk };\n diff.hunks[i] = hunk;\n if (i === hunkIndex) {\n const newContent: ContextContent = {\n type: 'context',\n lines: [],\n noEOFCR: false,\n };\n for (const content of hunk.hunkContent) {\n if (content.type === 'context') {\n newContent.lines.push(...content.lines);\n newContent.noEOFCR = content.noEOFCR;\n } else if (type === 'accept') {\n newContent.lines.push(...content.additions);\n newContent.noEOFCR = content.noEOFCRAdditions;\n } else if (type === 'reject') {\n newContent.lines.push(...content.deletions);\n newContent.noEOFCR = content.noEOFCRDeletions;\n }\n }\n const lineCount = newContent.lines.length;\n hunk.hunkContent = [newContent];\n splitOffset = lineCount - hunk.splitLineCount;\n hunk.splitLineCount = lineCount;\n unifiedOffset = lineCount - hunk.unifiedLineCount;\n hunk.unifiedLineCount = lineCount;\n deletionOffset = lineCount - hunk.deletionCount;\n hunk.deletionCount = lineCount;\n hunk.deletionLines = 0;\n additionOffset = lineCount - hunk.additionCount;\n hunk.additionCount = lineCount;\n hunk.additionLines = 0;\n diff.splitLineCount += splitOffset;\n diff.unifiedLineCount += unifiedOffset;\n } else {\n hunk.splitLineStart += splitOffset;\n hunk.unifiedLineStart += unifiedOffset;\n hunk.additionStart += additionOffset;\n hunk.deletionStart += deletionOffset;\n }\n }\n return diff;\n}\n"],"mappings":";AAEA,SAAgB,qBACd,MACA,WACA,MACkB;AAClB,QAAO;EACL,GAAG;EACH,OAAO,CAAC,GAAG,KAAK,MAAM;EACtB,UAAU,KAAK,YAAY,OAAO,CAAC,GAAG,KAAK,SAAS,GAAG;EACvD,UAAU,KAAK,YAAY,OAAO,CAAC,GAAG,KAAK,SAAS,GAAG;EAEvD,UACE,KAAK,YAAY,OACb,GAAG,KAAK,SAAS,GAAG,KAAK,GAAG,GAAG,cAC/B;EACP;CAED,MAAM,EAAE,UAAU,aAAa;AAC/B,KAAI,YAAY,QAAQ,YAAY,MAAM;EACxC,MAAM,OAAO,KAAK,MAAM;AACxB,MAAI,QAAQ,MAAM;AAChB,WAAQ,MAAM;IAAE;IAAM;IAAW,CAAC;AAClC,SAAM,IAAI,MACR,8CAA8C,YAC/C;;AAEH,MAAI,SAAS,SACX,UAAS,OACP,KAAK,gBAAgB,GACrB,KAAK,eACL,GAAG,SAAS,MACV,KAAK,gBAAgB,GACrB,KAAK,gBAAgB,IAAI,KAAK,cAC/B,CACF;MAED,UAAS,OACP,KAAK,gBAAgB,GACrB,KAAK,eACL,GAAG,SAAS,MACV,KAAK,gBAAgB,GACrB,KAAK,gBAAgB,IAAI,KAAK,cAC/B,CACF;;CAGL,IAAI,iBAAiB;CACrB,IAAI,iBAAiB;CACrB,IAAI,cAAc;CAClB,IAAI,gBAAgB;AACpB,MAAK,IAAI,IAAI,WAAW,IAAI,KAAK,MAAM,QAAQ,KAAK;EAClD,IAAI,OAAO,KAAK,MAAM;AACtB,MAAI,QAAQ,MAAM;AAChB,WAAQ,MAAM;IAAE;IAAM;IAAG;IAAW;IAAM,CAAC;AAC3C,SAAM,IAAI,MACR,uEACD;;AAEH,SAAO,EAAE,GAAG,MAAM;AAClB,OAAK,MAAM,KAAK;AAChB,MAAI,MAAM,WAAW;GACnB,MAAMA,aAA6B;IACjC,MAAM;IACN,OAAO,EAAE;IACT,SAAS;IACV;AACD,QAAK,MAAM,WAAW,KAAK,YACzB,KAAI,QAAQ,SAAS,WAAW;AAC9B,eAAW,MAAM,KAAK,GAAG,QAAQ,MAAM;AACvC,eAAW,UAAU,QAAQ;cACpB,SAAS,UAAU;AAC5B,eAAW,MAAM,KAAK,GAAG,QAAQ,UAAU;AAC3C,eAAW,UAAU,QAAQ;cACpB,SAAS,UAAU;AAC5B,eAAW,MAAM,KAAK,GAAG,QAAQ,UAAU;AAC3C,eAAW,UAAU,QAAQ;;GAGjC,MAAM,YAAY,WAAW,MAAM;AACnC,QAAK,cAAc,CAAC,WAAW;AAC/B,iBAAc,YAAY,KAAK;AAC/B,QAAK,iBAAiB;AACtB,mBAAgB,YAAY,KAAK;AACjC,QAAK,mBAAmB;AACxB,oBAAiB,YAAY,KAAK;AAClC,QAAK,gBAAgB;AACrB,QAAK,gBAAgB;AACrB,oBAAiB,YAAY,KAAK;AAClC,QAAK,gBAAgB;AACrB,QAAK,gBAAgB;AACrB,QAAK,kBAAkB;AACvB,QAAK,oBAAoB;SACpB;AACL,QAAK,kBAAkB;AACvB,QAAK,oBAAoB;AACzB,QAAK,iBAAiB;AACtB,QAAK,iBAAiB;;;AAG1B,QAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatCSSVariablePrefix.d.ts","names":[],"sources":["../../src/utils/formatCSSVariablePrefix.ts"],"sourcesContent":[],"mappings":";iBAAgB,uBAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatCSSVariablePrefix.js","names":[],"sources":["../../src/utils/formatCSSVariablePrefix.ts"],"sourcesContent":["export function formatCSSVariablePrefix(prefix: string = 'diffs') {\n return `--${prefix}-`;\n}\n"],"mappings":";AAAA,SAAgB,wBAAwB,SAAiB,SAAS;AAChE,QAAO,KAAK,OAAO"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ExtensionFormatMap, SupportedLanguages } from "../types.js";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/getFiletypeFromFileName.d.ts
|
|
4
|
+
declare const EXTENSION_TO_FILE_FORMAT: ExtensionFormatMap;
|
|
5
|
+
declare function getFiletypeFromFileName(fileName: string): SupportedLanguages;
|
|
6
|
+
declare function extendFileFormatMap(map: ExtensionFormatMap): void;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { EXTENSION_TO_FILE_FORMAT, extendFileFormatMap, getFiletypeFromFileName };
|
|
9
|
+
//# sourceMappingURL=getFiletypeFromFileName.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFiletypeFromFileName.d.ts","names":["EXTENSION_TO_FILE_FORMAT: ExtensionFormatMap"],"sources":["../../src/utils/getFiletypeFromFileName.ts"],"sourcesContent":[],"mappings":";;;cAEaA,0BAA0B;iBA0UvB,uBAAA,oBAA2C;AA1U9CA,iBA8VG,mBAAA,CA9VuB,GAAA,EA8VE,kBA9VF,CAAA,EAAA,IAAA"}
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
//#region src/utils/getFiletypeFromFileName.ts
|
|
2
|
+
const EXTENSION_TO_FILE_FORMAT = {
|
|
3
|
+
"1c": "1c",
|
|
4
|
+
abap: "abap",
|
|
5
|
+
as: "actionscript-3",
|
|
6
|
+
ada: "ada",
|
|
7
|
+
adb: "ada",
|
|
8
|
+
ads: "ada",
|
|
9
|
+
adoc: "asciidoc",
|
|
10
|
+
asciidoc: "asciidoc",
|
|
11
|
+
"component.html": "angular-html",
|
|
12
|
+
"component.ts": "angular-ts",
|
|
13
|
+
conf: "nginx",
|
|
14
|
+
htaccess: "apache",
|
|
15
|
+
cls: "tex",
|
|
16
|
+
trigger: "apex",
|
|
17
|
+
apl: "apl",
|
|
18
|
+
applescript: "applescript",
|
|
19
|
+
scpt: "applescript",
|
|
20
|
+
ara: "ara",
|
|
21
|
+
asm: "asm",
|
|
22
|
+
s: "riscv",
|
|
23
|
+
astro: "astro",
|
|
24
|
+
awk: "awk",
|
|
25
|
+
bal: "ballerina",
|
|
26
|
+
sh: "zsh",
|
|
27
|
+
bash: "zsh",
|
|
28
|
+
bat: "cmd",
|
|
29
|
+
cmd: "cmd",
|
|
30
|
+
be: "berry",
|
|
31
|
+
beancount: "beancount",
|
|
32
|
+
bib: "bibtex",
|
|
33
|
+
bicep: "bicep",
|
|
34
|
+
"blade.php": "blade",
|
|
35
|
+
bsl: "bsl",
|
|
36
|
+
c: "c",
|
|
37
|
+
h: "objective-cpp",
|
|
38
|
+
cs: "csharp",
|
|
39
|
+
cpp: "cpp",
|
|
40
|
+
hpp: "cpp",
|
|
41
|
+
cc: "cpp",
|
|
42
|
+
cxx: "cpp",
|
|
43
|
+
hh: "cpp",
|
|
44
|
+
cdc: "cdc",
|
|
45
|
+
cairo: "cairo",
|
|
46
|
+
clar: "clarity",
|
|
47
|
+
clj: "clojure",
|
|
48
|
+
cljs: "clojure",
|
|
49
|
+
cljc: "clojure",
|
|
50
|
+
soy: "soy",
|
|
51
|
+
cmake: "cmake",
|
|
52
|
+
"CMakeLists.txt": "cmake",
|
|
53
|
+
cob: "cobol",
|
|
54
|
+
cbl: "cobol",
|
|
55
|
+
cobol: "cobol",
|
|
56
|
+
CODEOWNERS: "codeowners",
|
|
57
|
+
ql: "ql",
|
|
58
|
+
coffee: "coffeescript",
|
|
59
|
+
lisp: "lisp",
|
|
60
|
+
cl: "lisp",
|
|
61
|
+
lsp: "lisp",
|
|
62
|
+
log: "log",
|
|
63
|
+
v: "verilog",
|
|
64
|
+
cql: "cql",
|
|
65
|
+
cr: "crystal",
|
|
66
|
+
css: "css",
|
|
67
|
+
csv: "csv",
|
|
68
|
+
cue: "cue",
|
|
69
|
+
cypher: "cypher",
|
|
70
|
+
cyp: "cypher",
|
|
71
|
+
d: "d",
|
|
72
|
+
dart: "dart",
|
|
73
|
+
dax: "dax",
|
|
74
|
+
desktop: "desktop",
|
|
75
|
+
diff: "diff",
|
|
76
|
+
patch: "diff",
|
|
77
|
+
Dockerfile: "dockerfile",
|
|
78
|
+
dockerfile: "dockerfile",
|
|
79
|
+
env: "dotenv",
|
|
80
|
+
dm: "dream-maker",
|
|
81
|
+
edge: "edge",
|
|
82
|
+
el: "emacs-lisp",
|
|
83
|
+
ex: "elixir",
|
|
84
|
+
exs: "elixir",
|
|
85
|
+
elm: "elm",
|
|
86
|
+
erb: "erb",
|
|
87
|
+
erl: "erlang",
|
|
88
|
+
hrl: "erlang",
|
|
89
|
+
f: "fortran-fixed-form",
|
|
90
|
+
for: "fortran-fixed-form",
|
|
91
|
+
fs: "fsharp",
|
|
92
|
+
fsi: "fsharp",
|
|
93
|
+
fsx: "fsharp",
|
|
94
|
+
f03: "f03",
|
|
95
|
+
f08: "f08",
|
|
96
|
+
f18: "f18",
|
|
97
|
+
f77: "f77",
|
|
98
|
+
f90: "fortran-free-form",
|
|
99
|
+
f95: "fortran-free-form",
|
|
100
|
+
fnl: "fennel",
|
|
101
|
+
fish: "fish",
|
|
102
|
+
ftl: "ftl",
|
|
103
|
+
tres: "gdresource",
|
|
104
|
+
res: "gdresource",
|
|
105
|
+
gd: "gdscript",
|
|
106
|
+
gdshader: "gdshader",
|
|
107
|
+
gs: "genie",
|
|
108
|
+
feature: "gherkin",
|
|
109
|
+
COMMIT_EDITMSG: "git-commit",
|
|
110
|
+
"git-rebase-todo": "git-rebase",
|
|
111
|
+
gjs: "glimmer-js",
|
|
112
|
+
gleam: "gleam",
|
|
113
|
+
gts: "glimmer-ts",
|
|
114
|
+
glsl: "glsl",
|
|
115
|
+
vert: "glsl",
|
|
116
|
+
frag: "glsl",
|
|
117
|
+
shader: "shaderlab",
|
|
118
|
+
gp: "gnuplot",
|
|
119
|
+
plt: "gnuplot",
|
|
120
|
+
gnuplot: "gnuplot",
|
|
121
|
+
go: "go",
|
|
122
|
+
graphql: "graphql",
|
|
123
|
+
gql: "graphql",
|
|
124
|
+
groovy: "groovy",
|
|
125
|
+
gvy: "groovy",
|
|
126
|
+
hack: "hack",
|
|
127
|
+
haml: "haml",
|
|
128
|
+
hbs: "handlebars",
|
|
129
|
+
handlebars: "handlebars",
|
|
130
|
+
hs: "haskell",
|
|
131
|
+
lhs: "haskell",
|
|
132
|
+
hx: "haxe",
|
|
133
|
+
hcl: "hcl",
|
|
134
|
+
hjson: "hjson",
|
|
135
|
+
hlsl: "hlsl",
|
|
136
|
+
fx: "hlsl",
|
|
137
|
+
html: "html",
|
|
138
|
+
htm: "html",
|
|
139
|
+
http: "http",
|
|
140
|
+
rest: "http",
|
|
141
|
+
hxml: "hxml",
|
|
142
|
+
hy: "hy",
|
|
143
|
+
imba: "imba",
|
|
144
|
+
ini: "ini",
|
|
145
|
+
cfg: "ini",
|
|
146
|
+
jade: "pug",
|
|
147
|
+
pug: "pug",
|
|
148
|
+
java: "java",
|
|
149
|
+
js: "javascript",
|
|
150
|
+
mjs: "javascript",
|
|
151
|
+
cjs: "javascript",
|
|
152
|
+
jinja: "jinja",
|
|
153
|
+
jinja2: "jinja",
|
|
154
|
+
j2: "jinja",
|
|
155
|
+
jison: "jison",
|
|
156
|
+
jl: "julia",
|
|
157
|
+
json: "json",
|
|
158
|
+
json5: "json5",
|
|
159
|
+
jsonc: "jsonc",
|
|
160
|
+
jsonl: "jsonl",
|
|
161
|
+
jsonnet: "jsonnet",
|
|
162
|
+
libsonnet: "jsonnet",
|
|
163
|
+
jssm: "jssm",
|
|
164
|
+
jsx: "jsx",
|
|
165
|
+
kt: "kotlin",
|
|
166
|
+
kts: "kts",
|
|
167
|
+
kql: "kusto",
|
|
168
|
+
tex: "tex",
|
|
169
|
+
ltx: "tex",
|
|
170
|
+
lean: "lean4",
|
|
171
|
+
less: "less",
|
|
172
|
+
liquid: "liquid",
|
|
173
|
+
lit: "lit",
|
|
174
|
+
ll: "llvm",
|
|
175
|
+
logo: "logo",
|
|
176
|
+
lua: "lua",
|
|
177
|
+
luau: "luau",
|
|
178
|
+
Makefile: "makefile",
|
|
179
|
+
mk: "makefile",
|
|
180
|
+
makefile: "makefile",
|
|
181
|
+
md: "markdown",
|
|
182
|
+
markdown: "markdown",
|
|
183
|
+
marko: "marko",
|
|
184
|
+
m: "wolfram",
|
|
185
|
+
mat: "matlab",
|
|
186
|
+
mdc: "mdc",
|
|
187
|
+
mdx: "mdx",
|
|
188
|
+
wiki: "wikitext",
|
|
189
|
+
mediawiki: "wikitext",
|
|
190
|
+
mmd: "mermaid",
|
|
191
|
+
mermaid: "mermaid",
|
|
192
|
+
mips: "mipsasm",
|
|
193
|
+
mojo: "mojo",
|
|
194
|
+
"🔥": "mojo",
|
|
195
|
+
move: "move",
|
|
196
|
+
nar: "narrat",
|
|
197
|
+
nf: "nextflow",
|
|
198
|
+
nim: "nim",
|
|
199
|
+
nims: "nim",
|
|
200
|
+
nimble: "nim",
|
|
201
|
+
nix: "nix",
|
|
202
|
+
nu: "nushell",
|
|
203
|
+
mm: "objective-cpp",
|
|
204
|
+
ml: "ocaml",
|
|
205
|
+
mli: "ocaml",
|
|
206
|
+
mll: "ocaml",
|
|
207
|
+
mly: "ocaml",
|
|
208
|
+
pas: "pascal",
|
|
209
|
+
p: "pascal",
|
|
210
|
+
pl: "prolog",
|
|
211
|
+
pm: "perl",
|
|
212
|
+
t: "perl",
|
|
213
|
+
raku: "raku",
|
|
214
|
+
p6: "raku",
|
|
215
|
+
pl6: "raku",
|
|
216
|
+
php: "php",
|
|
217
|
+
phtml: "php",
|
|
218
|
+
pls: "plsql",
|
|
219
|
+
sql: "sql",
|
|
220
|
+
po: "po",
|
|
221
|
+
polar: "polar",
|
|
222
|
+
pcss: "postcss",
|
|
223
|
+
pot: "pot",
|
|
224
|
+
potx: "potx",
|
|
225
|
+
pq: "powerquery",
|
|
226
|
+
pqm: "powerquery",
|
|
227
|
+
ps1: "powershell",
|
|
228
|
+
psm1: "powershell",
|
|
229
|
+
psd1: "powershell",
|
|
230
|
+
prisma: "prisma",
|
|
231
|
+
pro: "prolog",
|
|
232
|
+
P: "prolog",
|
|
233
|
+
properties: "properties",
|
|
234
|
+
proto: "protobuf",
|
|
235
|
+
pp: "puppet",
|
|
236
|
+
purs: "purescript",
|
|
237
|
+
py: "python",
|
|
238
|
+
pyw: "python",
|
|
239
|
+
pyi: "python",
|
|
240
|
+
qml: "qml",
|
|
241
|
+
qmldir: "qmldir",
|
|
242
|
+
qss: "qss",
|
|
243
|
+
r: "r",
|
|
244
|
+
R: "r",
|
|
245
|
+
rkt: "racket",
|
|
246
|
+
rktl: "racket",
|
|
247
|
+
razor: "razor",
|
|
248
|
+
cshtml: "razor",
|
|
249
|
+
rb: "ruby",
|
|
250
|
+
rbw: "ruby",
|
|
251
|
+
reg: "reg",
|
|
252
|
+
regex: "regexp",
|
|
253
|
+
rel: "rel",
|
|
254
|
+
rs: "rust",
|
|
255
|
+
rst: "rst",
|
|
256
|
+
rake: "ruby",
|
|
257
|
+
gemspec: "ruby",
|
|
258
|
+
sas: "sas",
|
|
259
|
+
sass: "sass",
|
|
260
|
+
scala: "scala",
|
|
261
|
+
sc: "scala",
|
|
262
|
+
scm: "scheme",
|
|
263
|
+
ss: "scheme",
|
|
264
|
+
sld: "scheme",
|
|
265
|
+
scss: "scss",
|
|
266
|
+
sdbl: "sdbl",
|
|
267
|
+
shadergraph: "shader",
|
|
268
|
+
st: "smalltalk",
|
|
269
|
+
sol: "solidity",
|
|
270
|
+
sparql: "sparql",
|
|
271
|
+
rq: "sparql",
|
|
272
|
+
spl: "splunk",
|
|
273
|
+
config: "ssh-config",
|
|
274
|
+
do: "stata",
|
|
275
|
+
ado: "stata",
|
|
276
|
+
dta: "stata",
|
|
277
|
+
styl: "stylus",
|
|
278
|
+
stylus: "stylus",
|
|
279
|
+
svelte: "svelte",
|
|
280
|
+
swift: "swift",
|
|
281
|
+
sv: "system-verilog",
|
|
282
|
+
svh: "system-verilog",
|
|
283
|
+
service: "systemd",
|
|
284
|
+
socket: "systemd",
|
|
285
|
+
device: "systemd",
|
|
286
|
+
timer: "systemd",
|
|
287
|
+
talon: "talonscript",
|
|
288
|
+
tasl: "tasl",
|
|
289
|
+
tcl: "tcl",
|
|
290
|
+
templ: "templ",
|
|
291
|
+
tf: "tf",
|
|
292
|
+
tfvars: "tfvars",
|
|
293
|
+
toml: "toml",
|
|
294
|
+
ts: "typescript",
|
|
295
|
+
tsp: "typespec",
|
|
296
|
+
tsv: "tsv",
|
|
297
|
+
tsx: "tsx",
|
|
298
|
+
ttl: "turtle",
|
|
299
|
+
twig: "twig",
|
|
300
|
+
typ: "typst",
|
|
301
|
+
vv: "v",
|
|
302
|
+
vala: "vala",
|
|
303
|
+
vapi: "vala",
|
|
304
|
+
vb: "vb",
|
|
305
|
+
vbs: "vb",
|
|
306
|
+
bas: "vb",
|
|
307
|
+
vh: "verilog",
|
|
308
|
+
vhd: "vhdl",
|
|
309
|
+
vhdl: "vhdl",
|
|
310
|
+
vim: "vimscript",
|
|
311
|
+
vue: "vue",
|
|
312
|
+
"vine.ts": "vue-vine",
|
|
313
|
+
vy: "vyper",
|
|
314
|
+
wasm: "wasm",
|
|
315
|
+
wat: "wasm",
|
|
316
|
+
wy: "文言",
|
|
317
|
+
wgsl: "wgsl",
|
|
318
|
+
wit: "wit",
|
|
319
|
+
wl: "wolfram",
|
|
320
|
+
nb: "wolfram",
|
|
321
|
+
xml: "xml",
|
|
322
|
+
xsl: "xsl",
|
|
323
|
+
xslt: "xsl",
|
|
324
|
+
yaml: "yaml",
|
|
325
|
+
yml: "yml",
|
|
326
|
+
zs: "zenscript",
|
|
327
|
+
zig: "zig",
|
|
328
|
+
zsh: "zsh",
|
|
329
|
+
sty: "tex"
|
|
330
|
+
};
|
|
331
|
+
function getFiletypeFromFileName(fileName) {
|
|
332
|
+
if (EXTENSION_TO_FILE_FORMAT[fileName] != null) return EXTENSION_TO_FILE_FORMAT[fileName];
|
|
333
|
+
const compoundMatch = fileName.match(/\.([^/\\]+\.[^/\\]+)$/);
|
|
334
|
+
if (compoundMatch != null && EXTENSION_TO_FILE_FORMAT[compoundMatch[1]] != null) return EXTENSION_TO_FILE_FORMAT[compoundMatch[1]] ?? "text";
|
|
335
|
+
return EXTENSION_TO_FILE_FORMAT[fileName.match(/\.([^.]+)$/)?.[1] ?? ""] ?? "text";
|
|
336
|
+
}
|
|
337
|
+
function extendFileFormatMap(map) {
|
|
338
|
+
for (const key in map) EXTENSION_TO_FILE_FORMAT[key] = map[key];
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
//#endregion
|
|
342
|
+
export { EXTENSION_TO_FILE_FORMAT, extendFileFormatMap, getFiletypeFromFileName };
|
|
343
|
+
//# sourceMappingURL=getFiletypeFromFileName.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getFiletypeFromFileName.js","names":["EXTENSION_TO_FILE_FORMAT: ExtensionFormatMap"],"sources":["../../src/utils/getFiletypeFromFileName.ts"],"sourcesContent":["import type { ExtensionFormatMap, SupportedLanguages } from '../types';\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 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 // 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 (\n compoundMatch != null &&\n EXTENSION_TO_FILE_FORMAT[compoundMatch[1]] != null\n ) {\n return EXTENSION_TO_FILE_FORMAT[compoundMatch[1]] ?? 'text';\n }\n\n // Fall back to simple extension\n const simpleMatch = fileName.match(/\\.([^.]+)$/);\n return EXTENSION_TO_FILE_FORMAT[simpleMatch?.[1] ?? ''] ?? 'text';\n}\n\nexport function extendFileFormatMap(map: ExtensionFormatMap): void {\n for (const key in map) {\n EXTENSION_TO_FILE_FORMAT[key] = map[key];\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DiffsThemeNames, SupportedLanguages, ThemesType } from "../types.js";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/getHighlighterOptions.d.ts
|
|
4
|
+
interface HighlighterOptionsShape {
|
|
5
|
+
theme?: DiffsThemeNames | ThemesType;
|
|
6
|
+
}
|
|
7
|
+
interface GetHighlighterOptionsReturn {
|
|
8
|
+
langs: SupportedLanguages[];
|
|
9
|
+
themes: DiffsThemeNames[];
|
|
10
|
+
}
|
|
11
|
+
declare function getHighlighterOptions(lang: SupportedLanguages | undefined, options: HighlighterOptionsShape): GetHighlighterOptionsReturn;
|
|
12
|
+
//#endregion
|
|
13
|
+
export { getHighlighterOptions };
|
|
14
|
+
//# sourceMappingURL=getHighlighterOptions.d.ts.map
|