@pierre/diffs 1.3.0-beta.5 → 1.3.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -9
- package/dist/components/CodeView.d.ts +13 -11
- package/dist/components/CodeView.d.ts.map +1 -1
- package/dist/components/CodeView.js +53 -14
- package/dist/components/CodeView.js.map +1 -1
- package/dist/components/File.d.ts +4 -5
- package/dist/components/File.d.ts.map +1 -1
- package/dist/components/File.js +37 -19
- package/dist/components/File.js.map +1 -1
- package/dist/components/FileDiff.d.ts +49 -36
- package/dist/components/FileDiff.d.ts.map +1 -1
- package/dist/components/FileDiff.js +173 -75
- package/dist/components/FileDiff.js.map +1 -1
- package/dist/components/FileStream.d.ts +0 -1
- package/dist/components/FileStream.d.ts.map +1 -1
- package/dist/components/FileStream.js +4 -4
- package/dist/components/FileStream.js.map +1 -1
- package/dist/components/UnresolvedFile.d.ts +3 -3
- package/dist/components/UnresolvedFile.d.ts.map +1 -1
- package/dist/components/UnresolvedFile.js +7 -5
- package/dist/components/UnresolvedFile.js.map +1 -1
- package/dist/components/VirtualizedFile.d.ts +0 -1
- package/dist/components/VirtualizedFile.d.ts.map +1 -1
- package/dist/components/VirtualizedFile.js +22 -25
- package/dist/components/VirtualizedFile.js.map +1 -1
- package/dist/components/VirtualizedFileDiff.d.ts +12 -7
- package/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
- package/dist/components/VirtualizedFileDiff.js +192 -64
- package/dist/components/VirtualizedFileDiff.js.map +1 -1
- package/dist/components/Virtualizer.d.ts +1 -1
- package/dist/components/Virtualizer.d.ts.map +1 -1
- package/dist/components/Virtualizer.js +23 -24
- package/dist/components/Virtualizer.js.map +1 -1
- package/dist/components/VirtulizerDevelopment.d.ts.map +1 -1
- package/dist/components/web-components.d.ts.map +1 -1
- package/dist/components/web-components.js +2 -3
- package/dist/components/web-components.js.map +1 -1
- package/dist/constants.d.ts +3 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +3 -2
- package/dist/constants.js.map +1 -1
- package/dist/editor/command.d.ts +2 -1
- package/dist/editor/command.d.ts.map +1 -1
- package/dist/editor/command.js +7 -3
- package/dist/editor/command.js.map +1 -1
- package/dist/editor/editStack.d.ts +7 -1
- package/dist/editor/editStack.d.ts.map +1 -1
- package/dist/editor/editStack.js +3 -3
- package/dist/editor/editStack.js.map +1 -1
- package/dist/editor/editor.d.ts +28 -4
- package/dist/editor/editor.d.ts.map +1 -1
- package/dist/editor/editor.js +669 -313
- package/dist/editor/editor.js.map +1 -1
- package/dist/editor/editor2.js +3 -3
- package/dist/editor/editor2.js.map +1 -1
- package/dist/editor/index.js +1 -2
- package/dist/editor/lineAnnotations.d.ts.map +1 -1
- package/dist/editor/lineAnnotations.js +2 -3
- package/dist/editor/lineAnnotations.js.map +1 -1
- package/dist/editor/marker.d.ts +2 -1
- package/dist/editor/marker.d.ts.map +1 -1
- package/dist/editor/marker.js +28 -11
- package/dist/editor/marker.js.map +1 -1
- package/dist/editor/pieceTable.d.ts +4 -2
- package/dist/editor/pieceTable.d.ts.map +1 -1
- package/dist/editor/pieceTable.js +138 -128
- package/dist/editor/pieceTable.js.map +1 -1
- package/dist/editor/platform.d.ts +8 -1
- package/dist/editor/platform.d.ts.map +1 -1
- package/dist/editor/platform.js +16 -5
- package/dist/editor/platform.js.map +1 -1
- package/dist/editor/searchPanel.d.ts +1 -0
- package/dist/editor/searchPanel.d.ts.map +1 -1
- package/dist/editor/searchPanel.js +75 -62
- package/dist/editor/searchPanel.js.map +1 -1
- package/dist/editor/selection.d.ts +42 -5
- package/dist/editor/selection.d.ts.map +1 -1
- package/dist/editor/selection.js +504 -114
- package/dist/editor/selection.js.map +1 -1
- package/dist/editor/selectionAction.d.ts +4 -5
- package/dist/editor/selectionAction.d.ts.map +1 -1
- package/dist/editor/selectionAction.js +14 -64
- package/dist/editor/selectionAction.js.map +1 -1
- package/dist/editor/sprite.d.ts +2 -2
- package/dist/editor/sprite.d.ts.map +1 -1
- package/dist/editor/sprite.js +7 -14
- package/dist/editor/sprite.js.map +1 -1
- package/dist/editor/textDocument.d.ts +5 -4
- package/dist/editor/textDocument.d.ts.map +1 -1
- package/dist/editor/textDocument.js +26 -15
- package/dist/editor/textDocument.js.map +1 -1
- package/dist/editor/textMeasure.d.ts +36 -3
- package/dist/editor/textMeasure.d.ts.map +1 -1
- package/dist/editor/textMeasure.js +104 -17
- package/dist/editor/textMeasure.js.map +1 -1
- package/dist/editor/tokenzier.d.ts +3 -0
- package/dist/editor/tokenzier.d.ts.map +1 -1
- package/dist/editor/tokenzier.js +27 -16
- package/dist/editor/tokenzier.js.map +1 -1
- package/dist/editor/utils.d.ts +4 -1
- package/dist/editor/utils.d.ts.map +1 -1
- package/dist/editor/utils.js +19 -3
- package/dist/editor/utils.js.map +1 -1
- package/dist/highlighter/languages/areLanguagesAttached.d.ts.map +1 -1
- package/dist/highlighter/languages/areLanguagesAttached.js +1 -2
- package/dist/highlighter/languages/areLanguagesAttached.js.map +1 -1
- package/dist/highlighter/languages/attachResolvedLanguages.d.ts +0 -2
- package/dist/highlighter/languages/attachResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/attachResolvedLanguages.js +1 -2
- package/dist/highlighter/languages/attachResolvedLanguages.js.map +1 -1
- package/dist/highlighter/languages/cleanUpResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/cleanUpResolvedLanguages.js +1 -2
- package/dist/highlighter/languages/cleanUpResolvedLanguages.js.map +1 -1
- package/dist/highlighter/languages/constants.d.ts +0 -1
- package/dist/highlighter/languages/constants.d.ts.map +1 -1
- package/dist/highlighter/languages/constants.js +1 -1
- package/dist/highlighter/languages/constants.js.map +1 -1
- package/dist/highlighter/languages/getResolvedLanguages.d.ts +0 -2
- package/dist/highlighter/languages/getResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/getResolvedLanguages.js +1 -2
- package/dist/highlighter/languages/getResolvedLanguages.js.map +1 -1
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts +0 -2
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts.map +1 -1
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.js +1 -2
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.js.map +1 -1
- package/dist/highlighter/languages/hasResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/hasResolvedLanguages.js +1 -2
- package/dist/highlighter/languages/hasResolvedLanguages.js.map +1 -1
- package/dist/highlighter/languages/registerCustomLanguage.d.ts +0 -1
- package/dist/highlighter/languages/registerCustomLanguage.d.ts.map +1 -1
- package/dist/highlighter/languages/registerCustomLanguage.js +1 -2
- package/dist/highlighter/languages/registerCustomLanguage.js.map +1 -1
- package/dist/highlighter/languages/resolveLanguage.d.ts +0 -2
- package/dist/highlighter/languages/resolveLanguage.d.ts.map +1 -1
- package/dist/highlighter/languages/resolveLanguage.js +4 -5
- package/dist/highlighter/languages/resolveLanguage.js.map +1 -1
- package/dist/highlighter/languages/resolveLanguages.d.ts +0 -2
- package/dist/highlighter/languages/resolveLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/resolveLanguages.js +1 -2
- package/dist/highlighter/languages/resolveLanguages.js.map +1 -1
- package/dist/highlighter/shared_highlighter.d.ts.map +1 -1
- package/dist/highlighter/shared_highlighter.js +3 -4
- package/dist/highlighter/shared_highlighter.js.map +1 -1
- package/dist/highlighter/themes/areThemesAttached.d.ts.map +1 -1
- package/dist/highlighter/themes/areThemesAttached.js +1 -2
- package/dist/highlighter/themes/areThemesAttached.js.map +1 -1
- package/dist/highlighter/themes/attachResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/attachResolvedThemes.js +1 -2
- package/dist/highlighter/themes/attachResolvedThemes.js.map +1 -1
- package/dist/highlighter/themes/cleanUpResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/cleanUpResolvedThemes.js +1 -2
- package/dist/highlighter/themes/cleanUpResolvedThemes.js.map +1 -1
- package/dist/highlighter/themes/constants.d.ts.map +1 -1
- package/dist/highlighter/themes/constants.js +1 -1
- package/dist/highlighter/themes/constants.js.map +1 -1
- package/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/getResolvedOrResolveTheme.js +1 -2
- package/dist/highlighter/themes/getResolvedOrResolveTheme.js.map +1 -1
- package/dist/highlighter/themes/getResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/getResolvedThemes.js +1 -2
- package/dist/highlighter/themes/getResolvedThemes.js.map +1 -1
- package/dist/highlighter/themes/hasResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/hasResolvedThemes.js +1 -2
- package/dist/highlighter/themes/hasResolvedThemes.js.map +1 -1
- package/dist/highlighter/themes/registerCustomCSSVariableTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/registerCustomCSSVariableTheme.js +1 -2
- package/dist/highlighter/themes/registerCustomCSSVariableTheme.js.map +1 -1
- package/dist/highlighter/themes/registerCustomTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/registerCustomTheme.js +1 -2
- package/dist/highlighter/themes/registerCustomTheme.js.map +1 -1
- package/dist/highlighter/themes/resolveTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/resolveTheme.js +1 -2
- package/dist/highlighter/themes/resolveTheme.js.map +1 -1
- package/dist/highlighter/themes/resolveThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/resolveThemes.js +1 -2
- package/dist/highlighter/themes/resolveThemes.js.map +1 -1
- package/dist/highlighter/themes/themeResolution.d.ts.map +1 -1
- package/dist/highlighter/themes/themeResolution.js +1 -2
- package/dist/highlighter/themes/themeResolution.js.map +1 -1
- package/dist/highlighter/themes/themeResolver.d.ts +2 -2
- package/dist/highlighter/themes/themeResolver.d.ts.map +1 -1
- package/dist/highlighter/themes/themeResolver.js +1 -2
- package/dist/highlighter/themes/themeResolver.js.map +1 -1
- package/dist/index.d.ts +12 -10
- package/dist/index.js +4 -3
- package/dist/managers/InteractionManager.d.ts +7 -0
- package/dist/managers/InteractionManager.d.ts.map +1 -1
- package/dist/managers/InteractionManager.js +25 -4
- package/dist/managers/InteractionManager.js.map +1 -1
- package/dist/managers/ResizeManager.d.ts.map +1 -1
- package/dist/managers/ResizeManager.js +1 -1
- package/dist/managers/ResizeManager.js.map +1 -1
- package/dist/managers/ScrollSyncManager.d.ts.map +1 -1
- package/dist/managers/ScrollSyncManager.js +1 -1
- package/dist/managers/ScrollSyncManager.js.map +1 -1
- package/dist/managers/UniversalRenderingManager.d.ts.map +1 -1
- package/dist/managers/UniversalRenderingManager.js +2 -2
- package/dist/managers/UniversalRenderingManager.js.map +1 -1
- package/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts +228 -0
- package/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts.map +1 -0
- package/dist/node_modules/.pnpm/@types_unist@3.0.3/node_modules/@types/unist/index.d.ts +84 -0
- package/dist/node_modules/.pnpm/@types_unist@3.0.3/node_modules/@types/unist/index.d.ts.map +1 -0
- package/dist/react/CodeView.d.ts +1 -1
- package/dist/react/CodeView.d.ts.map +1 -1
- package/dist/react/CodeView.js +17 -16
- package/dist/react/CodeView.js.map +1 -1
- package/dist/react/EditorContext.d.ts +0 -1
- package/dist/react/EditorContext.d.ts.map +1 -1
- package/dist/react/EditorContext.js +2 -5
- package/dist/react/EditorContext.js.map +1 -1
- package/dist/react/File.d.ts +1 -0
- package/dist/react/File.d.ts.map +1 -1
- package/dist/react/File.js +4 -6
- package/dist/react/File.js.map +1 -1
- package/dist/react/FileDiff.d.ts +1 -0
- package/dist/react/FileDiff.d.ts.map +1 -1
- package/dist/react/FileDiff.js +4 -6
- package/dist/react/FileDiff.js.map +1 -1
- package/dist/react/MultiFileDiff.d.ts +4 -4
- package/dist/react/MultiFileDiff.d.ts.map +1 -1
- package/dist/react/MultiFileDiff.js +4 -6
- package/dist/react/MultiFileDiff.js.map +1 -1
- package/dist/react/PatchDiff.d.ts +1 -0
- package/dist/react/PatchDiff.d.ts.map +1 -1
- package/dist/react/PatchDiff.js +4 -6
- package/dist/react/PatchDiff.js.map +1 -1
- package/dist/react/UnresolvedFile.d.ts +2 -1
- package/dist/react/UnresolvedFile.d.ts.map +1 -1
- package/dist/react/UnresolvedFile.js +4 -6
- package/dist/react/UnresolvedFile.js.map +1 -1
- package/dist/react/Virtualizer.d.ts.map +1 -1
- package/dist/react/Virtualizer.js +2 -5
- package/dist/react/Virtualizer.js.map +1 -1
- package/dist/react/WorkerPoolContext.d.ts +0 -1
- package/dist/react/WorkerPoolContext.d.ts.map +1 -1
- package/dist/react/WorkerPoolContext.js +2 -5
- package/dist/react/WorkerPoolContext.js.map +1 -1
- package/dist/react/constants.d.ts.map +1 -1
- package/dist/react/constants.js +1 -1
- package/dist/react/constants.js.map +1 -1
- package/dist/react/index.d.ts +2 -2
- package/dist/react/index.js +1 -2
- package/dist/react/jsx.d.ts +0 -2
- package/dist/react/jsx.d.ts.map +1 -1
- package/dist/react/types.d.ts +2 -0
- package/dist/react/types.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.d.ts +2 -0
- package/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.js +18 -11
- package/dist/react/utils/renderDiffChildren.js.map +1 -1
- package/dist/react/utils/renderFileChildren.d.ts +2 -0
- package/dist/react/utils/renderFileChildren.d.ts.map +1 -1
- package/dist/react/utils/renderFileChildren.js +18 -11
- package/dist/react/utils/renderFileChildren.js.map +1 -1
- package/dist/react/utils/templateRender.d.ts.map +1 -1
- package/dist/react/utils/templateRender.js +1 -2
- package/dist/react/utils/templateRender.js.map +1 -1
- package/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileDiffInstance.js +15 -18
- package/dist/react/utils/useFileDiffInstance.js.map +1 -1
- package/dist/react/utils/useFileInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileInstance.js +1 -2
- package/dist/react/utils/useFileInstance.js.map +1 -1
- package/dist/react/utils/useStableCallback.d.ts.map +1 -1
- package/dist/react/utils/useStableCallback.js +1 -2
- package/dist/react/utils/useStableCallback.js.map +1 -1
- package/dist/react/utils/useUnresolvedFileInstance.d.ts.map +1 -1
- package/dist/react/utils/useUnresolvedFileInstance.js +10 -11
- package/dist/react/utils/useUnresolvedFileInstance.js.map +1 -1
- package/dist/renderers/DiffHunksRenderer.d.ts +2 -3
- package/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/DiffHunksRenderer.js +52 -33
- package/dist/renderers/DiffHunksRenderer.js.map +1 -1
- package/dist/renderers/FileRenderer.d.ts +1 -3
- package/dist/renderers/FileRenderer.d.ts.map +1 -1
- package/dist/renderers/FileRenderer.js +14 -11
- package/dist/renderers/FileRenderer.js.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts +1 -2
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.js +1 -2
- package/dist/renderers/UnresolvedFileHunksRenderer.js.map +1 -1
- package/dist/shiki-stream/index.js +1 -2
- package/dist/shiki-stream/stream.d.ts +0 -1
- package/dist/shiki-stream/stream.d.ts.map +1 -1
- package/dist/shiki-stream/stream.js +1 -2
- package/dist/shiki-stream/stream.js.map +1 -1
- package/dist/shiki-stream/tokenizer.d.ts.map +1 -1
- package/dist/shiki-stream/tokenizer.js +1 -1
- package/dist/shiki-stream/tokenizer.js.map +1 -1
- package/dist/shiki-stream/types.d.ts +0 -1
- package/dist/shiki-stream/types.d.ts.map +1 -1
- package/dist/sprite.d.ts.map +1 -1
- package/dist/sprite.js +1 -1
- package/dist/ssr/FileDiffReact.d.ts.map +1 -1
- package/dist/ssr/FileDiffReact.js +5 -8
- package/dist/ssr/FileDiffReact.js.map +1 -1
- package/dist/ssr/index.d.ts +2 -2
- package/dist/ssr/index.js +1 -2
- package/dist/ssr/preloadDiffs.d.ts +12 -11
- package/dist/ssr/preloadDiffs.d.ts.map +1 -1
- package/dist/ssr/preloadDiffs.js +15 -8
- package/dist/ssr/preloadDiffs.js.map +1 -1
- package/dist/ssr/preloadFile.d.ts.map +1 -1
- package/dist/ssr/preloadFile.js +1 -2
- package/dist/ssr/preloadFile.js.map +1 -1
- package/dist/ssr/preloadPatchFile.d.ts.map +1 -1
- package/dist/ssr/preloadPatchFile.js +2 -3
- package/dist/ssr/preloadPatchFile.js.map +1 -1
- package/dist/ssr/renderHTML.d.ts +1 -1
- package/dist/ssr/renderHTML.d.ts.map +1 -1
- package/dist/ssr/renderHTML.js +1 -2
- package/dist/ssr/renderHTML.js.map +1 -1
- package/dist/string-import.d.ts +4 -0
- package/dist/string-import.d.ts.map +1 -1
- package/dist/style.js +3 -3
- package/dist/style.js.map +1 -1
- package/dist/types.d.ts +67 -7
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/areDiffLineAnnotationsEqual.d.ts.map +1 -1
- package/dist/utils/areDiffLineAnnotationsEqual.js +1 -1
- package/dist/utils/areDiffLineAnnotationsEqual.js.map +1 -1
- package/dist/utils/areDiffRenderOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areDiffRenderOptionsEqual.js +1 -2
- package/dist/utils/areDiffRenderOptionsEqual.js.map +1 -1
- package/dist/utils/areDiffTargetsEqual.d.ts.map +1 -1
- package/dist/utils/areDiffTargetsEqual.js +1 -1
- package/dist/utils/areDiffTargetsEqual.js.map +1 -1
- package/dist/utils/areFileRenderOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areFileRenderOptionsEqual.js +1 -2
- package/dist/utils/areFileRenderOptionsEqual.js.map +1 -1
- package/dist/utils/areFilesEqual.d.ts.map +1 -1
- package/dist/utils/areFilesEqual.js +1 -1
- package/dist/utils/areFilesEqual.js.map +1 -1
- package/dist/utils/areHunkDataEqual.d.ts.map +1 -1
- package/dist/utils/areHunkDataEqual.js +2 -2
- package/dist/utils/areHunkDataEqual.js.map +1 -1
- package/dist/utils/areLineAnnotationsEqual.d.ts.map +1 -1
- package/dist/utils/areLineAnnotationsEqual.js +1 -1
- package/dist/utils/areLineAnnotationsEqual.js.map +1 -1
- package/dist/utils/areManagedSnapshotsEqual.d.ts.map +1 -1
- package/dist/utils/areManagedSnapshotsEqual.js +1 -1
- package/dist/utils/areManagedSnapshotsEqual.js.map +1 -1
- package/dist/utils/areMergeConflictActionsEqual.d.ts.map +1 -1
- package/dist/utils/areMergeConflictActionsEqual.js +1 -1
- package/dist/utils/areMergeConflictActionsEqual.js.map +1 -1
- package/dist/utils/areObjectsEqual.d.ts.map +1 -1
- package/dist/utils/areObjectsEqual.js +1 -1
- package/dist/utils/areObjectsEqual.js.map +1 -1
- package/dist/utils/areOptionsEqual.d.ts +0 -2
- package/dist/utils/areOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areOptionsEqual.js +1 -2
- package/dist/utils/areOptionsEqual.js.map +1 -1
- package/dist/utils/arePrePropertiesEqual.d.ts.map +1 -1
- package/dist/utils/arePrePropertiesEqual.js +1 -1
- package/dist/utils/arePrePropertiesEqual.js.map +1 -1
- package/dist/utils/areRenderRangesEqual.d.ts.map +1 -1
- package/dist/utils/areRenderRangesEqual.js +1 -1
- package/dist/utils/areRenderRangesEqual.js.map +1 -1
- package/dist/utils/areSelectionPointsEqual.d.ts.map +1 -1
- package/dist/utils/areSelectionPointsEqual.js +1 -1
- package/dist/utils/areSelectionPointsEqual.js.map +1 -1
- package/dist/utils/areSelectionsEqual.d.ts.map +1 -1
- package/dist/utils/areSelectionsEqual.js +1 -1
- package/dist/utils/areSelectionsEqual.js.map +1 -1
- package/dist/utils/areThemesEqual.d.ts.map +1 -1
- package/dist/utils/areThemesEqual.js +1 -1
- package/dist/utils/areThemesEqual.js.map +1 -1
- package/dist/utils/areVirtualWindowSpecsEqual.d.ts.map +1 -1
- package/dist/utils/areVirtualWindowSpecsEqual.js +1 -1
- package/dist/utils/areVirtualWindowSpecsEqual.js.map +1 -1
- package/dist/utils/areWorkerStatsEqual.d.ts +0 -2
- package/dist/utils/areWorkerStatsEqual.d.ts.map +1 -1
- package/dist/utils/areWorkerStatsEqual.js +1 -1
- package/dist/utils/areWorkerStatsEqual.js.map +1 -1
- package/dist/utils/awaitWithTimeout.d.ts +5 -0
- package/dist/utils/awaitWithTimeout.d.ts.map +1 -0
- package/dist/utils/awaitWithTimeout.js +15 -0
- package/dist/utils/awaitWithTimeout.js.map +1 -0
- package/dist/utils/cleanLastNewline.d.ts.map +1 -1
- package/dist/utils/cleanLastNewline.js +1 -1
- package/dist/utils/cleanLastNewline.js.map +1 -1
- package/dist/utils/cloneFileDiffMetadata.d.ts +7 -0
- package/dist/utils/cloneFileDiffMetadata.d.ts.map +1 -0
- package/dist/utils/cloneFileDiffMetadata.js +16 -0
- package/dist/utils/cloneFileDiffMetadata.js.map +1 -0
- package/dist/utils/computeEstimatedDiffHeights.d.ts +3 -1
- package/dist/utils/computeEstimatedDiffHeights.d.ts.map +1 -1
- package/dist/utils/computeEstimatedDiffHeights.js +9 -3
- package/dist/utils/computeEstimatedDiffHeights.js.map +1 -1
- package/dist/utils/computeFileOffsets.d.ts +9 -1
- package/dist/utils/computeFileOffsets.d.ts.map +1 -1
- package/dist/utils/computeFileOffsets.js +20 -2
- package/dist/utils/computeFileOffsets.js.map +1 -1
- package/dist/utils/computeVirtualFileMetrics.d.ts.map +1 -1
- package/dist/utils/computeVirtualFileMetrics.js +1 -2
- package/dist/utils/computeVirtualFileMetrics.js.map +1 -1
- package/dist/utils/createAnnotationElement.d.ts +1 -1
- package/dist/utils/createAnnotationElement.d.ts.map +1 -1
- package/dist/utils/createAnnotationElement.js +1 -2
- package/dist/utils/createAnnotationElement.js.map +1 -1
- package/dist/utils/createAnnotationWrapperNode.d.ts.map +1 -1
- package/dist/utils/createAnnotationWrapperNode.js +1 -1
- package/dist/utils/createAnnotationWrapperNode.js.map +1 -1
- package/dist/utils/createContentColumn.d.ts +1 -1
- package/dist/utils/createContentColumn.d.ts.map +1 -1
- package/dist/utils/createContentColumn.js +1 -2
- package/dist/utils/createContentColumn.js.map +1 -1
- package/dist/utils/createEmptyRowBuffer.d.ts +1 -1
- package/dist/utils/createEmptyRowBuffer.d.ts.map +1 -1
- package/dist/utils/createEmptyRowBuffer.js +1 -2
- package/dist/utils/createEmptyRowBuffer.js.map +1 -1
- package/dist/utils/createFileHeaderElement.d.ts +1 -1
- package/dist/utils/createFileHeaderElement.d.ts.map +1 -1
- package/dist/utils/createFileHeaderElement.js +6 -3
- package/dist/utils/createFileHeaderElement.js.map +1 -1
- package/dist/utils/createGutterUtilityContentNode.d.ts.map +1 -1
- package/dist/utils/createGutterUtilityContentNode.js +1 -1
- package/dist/utils/createGutterUtilityContentNode.js.map +1 -1
- package/dist/utils/createGutterUtilityElement.d.ts +1 -1
- package/dist/utils/createGutterUtilityElement.d.ts.map +1 -1
- package/dist/utils/createGutterUtilityElement.js +1 -2
- package/dist/utils/createGutterUtilityElement.js.map +1 -1
- package/dist/utils/createNoNewlineElement.d.ts +1 -1
- package/dist/utils/createNoNewlineElement.d.ts.map +1 -1
- package/dist/utils/createNoNewlineElement.js +1 -2
- package/dist/utils/createNoNewlineElement.js.map +1 -1
- package/dist/utils/createPreElement.d.ts +1 -1
- package/dist/utils/createPreElement.d.ts.map +1 -1
- package/dist/utils/createPreElement.js +1 -3
- package/dist/utils/createPreElement.js.map +1 -1
- package/dist/utils/createRowNodes.d.ts.map +1 -1
- package/dist/utils/createRowNodes.js +1 -1
- package/dist/utils/createRowNodes.js.map +1 -1
- package/dist/utils/createSeparator.d.ts +1 -1
- package/dist/utils/createSeparator.d.ts.map +1 -1
- package/dist/utils/createSeparator.js +1 -2
- package/dist/utils/createSeparator.js.map +1 -1
- package/dist/utils/createSpanNodeFromToken.d.ts.map +1 -1
- package/dist/utils/createSpanNodeFromToken.js +1 -2
- package/dist/utils/createSpanNodeFromToken.js.map +1 -1
- package/dist/utils/createStyleElement.d.ts +1 -1
- package/dist/utils/createStyleElement.d.ts.map +1 -1
- package/dist/utils/createStyleElement.js +1 -2
- package/dist/utils/createStyleElement.js.map +1 -1
- package/dist/utils/createTransformerWithState.d.ts.map +1 -1
- package/dist/utils/createTransformerWithState.js +1 -2
- package/dist/utils/createTransformerWithState.js.map +1 -1
- package/dist/utils/createUnsafeCSSStyleNode.d.ts.map +1 -1
- package/dist/utils/createUnsafeCSSStyleNode.js +1 -2
- package/dist/utils/createUnsafeCSSStyleNode.js.map +1 -1
- package/dist/utils/createWindowFromScrollPosition.d.ts.map +1 -1
- package/dist/utils/createWindowFromScrollPosition.js +5 -5
- package/dist/utils/createWindowFromScrollPosition.js.map +1 -1
- package/dist/utils/cssWrappers.d.ts.map +1 -1
- package/dist/utils/cssWrappers.js +2 -3
- package/dist/utils/cssWrappers.js.map +1 -1
- package/dist/utils/detachString.d.ts.map +1 -1
- package/dist/utils/detachString.js +1 -1
- package/dist/utils/detachString.js.map +1 -1
- package/dist/utils/diffAcceptRejectHunk.d.ts.map +1 -1
- package/dist/utils/diffAcceptRejectHunk.js +1 -2
- package/dist/utils/diffAcceptRejectHunk.js.map +1 -1
- package/dist/utils/formatCSSVariablePrefix.d.ts.map +1 -1
- package/dist/utils/formatCSSVariablePrefix.js +1 -1
- package/dist/utils/formatCSSVariablePrefix.js.map +1 -1
- package/dist/utils/getDiffFileInput.d.ts +14 -0
- package/dist/utils/getDiffFileInput.d.ts.map +1 -0
- package/dist/utils/getDiffFileInput.js +24 -0
- package/dist/utils/getDiffFileInput.js.map +1 -0
- package/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -1
- package/dist/utils/getDiffHunksRendererOptions.js +2 -1
- package/dist/utils/getDiffHunksRendererOptions.js.map +1 -1
- package/dist/utils/getFileRendererOptions.d.ts.map +1 -1
- package/dist/utils/getFileRendererOptions.js +1 -1
- package/dist/utils/getFileRendererOptions.js.map +1 -1
- package/dist/utils/getFiletypeFromFileName.d.ts.map +1 -1
- package/dist/utils/getFiletypeFromFileName.js +3 -1
- package/dist/utils/getFiletypeFromFileName.js.map +1 -1
- package/dist/utils/getHighlighterOptions.d.ts.map +1 -1
- package/dist/utils/getHighlighterOptions.js +1 -2
- package/dist/utils/getHighlighterOptions.js.map +1 -1
- package/dist/utils/getHighlighterThemeStyles.d.ts.map +1 -1
- package/dist/utils/getHighlighterThemeStyles.js +1 -2
- package/dist/utils/getHighlighterThemeStyles.js.map +1 -1
- package/dist/utils/getHunkSeparatorSlotName.d.ts.map +1 -1
- package/dist/utils/getHunkSeparatorSlotName.js +1 -1
- package/dist/utils/getHunkSeparatorSlotName.js.map +1 -1
- package/dist/utils/getIconForType.d.ts.map +1 -1
- package/dist/utils/getIconForType.js +1 -1
- package/dist/utils/getIconForType.js.map +1 -1
- package/dist/utils/getLineAnnotationName.d.ts.map +1 -1
- package/dist/utils/getLineAnnotationName.js +1 -1
- package/dist/utils/getLineAnnotationName.js.map +1 -1
- package/dist/utils/getLineEndingType.d.ts.map +1 -1
- package/dist/utils/getLineEndingType.js +1 -1
- package/dist/utils/getLineEndingType.js.map +1 -1
- package/dist/utils/getLineNodes.d.ts +1 -1
- package/dist/utils/getLineNodes.d.ts.map +1 -1
- package/dist/utils/getLineNodes.js +1 -1
- package/dist/utils/getLineNodes.js.map +1 -1
- package/dist/utils/getMergeConflictActionSlotName.d.ts.map +1 -1
- package/dist/utils/getMergeConflictActionSlotName.js +1 -1
- package/dist/utils/getMergeConflictActionSlotName.js.map +1 -1
- package/dist/utils/getMergeConflictLineTypes.d.ts.map +1 -1
- package/dist/utils/getMergeConflictLineTypes.js +1 -2
- package/dist/utils/getMergeConflictLineTypes.js.map +1 -1
- package/dist/utils/getOrCreateCodeNode.d.ts.map +1 -1
- package/dist/utils/getOrCreateCodeNode.js +1 -1
- package/dist/utils/getOrCreateCodeNode.js.map +1 -1
- package/dist/utils/getSingularPatch.d.ts.map +1 -1
- package/dist/utils/getSingularPatch.js +1 -2
- package/dist/utils/getSingularPatch.js.map +1 -1
- package/dist/utils/getThemes.d.ts.map +1 -1
- package/dist/utils/getThemes.js +1 -2
- package/dist/utils/getThemes.js.map +1 -1
- package/dist/utils/getTotalLineCountFromHunks.d.ts.map +1 -1
- package/dist/utils/getTotalLineCountFromHunks.js +1 -1
- package/dist/utils/getTotalLineCountFromHunks.js.map +1 -1
- package/dist/utils/hast_utils.d.ts +1 -1
- package/dist/utils/hast_utils.d.ts.map +1 -1
- package/dist/utils/hast_utils.js +1 -1
- package/dist/utils/hast_utils.js.map +1 -1
- package/dist/utils/hostTheme.d.ts.map +1 -1
- package/dist/utils/hostTheme.js +1 -2
- package/dist/utils/hostTheme.js.map +1 -1
- package/dist/utils/hydratePartialDiff.d.ts +10 -0
- package/dist/utils/hydratePartialDiff.d.ts.map +1 -0
- package/dist/utils/hydratePartialDiff.js +140 -0
- package/dist/utils/hydratePartialDiff.js.map +1 -0
- package/dist/utils/includesFileAnnotations.d.ts.map +1 -1
- package/dist/utils/includesFileAnnotations.js +5 -5
- package/dist/utils/includesFileAnnotations.js.map +1 -1
- package/dist/utils/isDefaultRenderRange.d.ts.map +1 -1
- package/dist/utils/isDefaultRenderRange.js +1 -1
- package/dist/utils/isDefaultRenderRange.js.map +1 -1
- package/dist/utils/isDiffPlainText.d.ts.map +1 -1
- package/dist/utils/isDiffPlainText.js +1 -2
- package/dist/utils/isDiffPlainText.js.map +1 -1
- package/dist/utils/isFilePlainText.d.ts.map +1 -1
- package/dist/utils/isFilePlainText.js +1 -2
- package/dist/utils/isFilePlainText.js.map +1 -1
- package/dist/utils/isStyleNode.d.ts.map +1 -1
- package/dist/utils/isStyleNode.js +1 -1
- package/dist/utils/isStyleNode.js.map +1 -1
- package/dist/utils/isWorkerContext.d.ts.map +1 -1
- package/dist/utils/isWorkerContext.js +1 -1
- package/dist/utils/isWorkerContext.js.map +1 -1
- package/dist/utils/iterateOverDiff.d.ts.map +1 -1
- package/dist/utils/iterateOverDiff.js +47 -48
- package/dist/utils/iterateOverDiff.js.map +1 -1
- package/dist/utils/normalizeDiffResolution.d.ts.map +1 -1
- package/dist/utils/normalizeDiffResolution.js +1 -1
- package/dist/utils/normalizeDiffResolution.js.map +1 -1
- package/dist/utils/parseDiffDecorations.d.ts.map +1 -1
- package/dist/utils/parseDiffDecorations.js +1 -2
- package/dist/utils/parseDiffDecorations.js.map +1 -1
- package/dist/utils/parseDiffFromFile.d.ts +1 -2
- package/dist/utils/parseDiffFromFile.d.ts.map +1 -1
- package/dist/utils/parseDiffFromFile.js +27 -7
- package/dist/utils/parseDiffFromFile.js.map +1 -1
- package/dist/utils/parseLineType.d.ts.map +1 -1
- package/dist/utils/parseLineType.js +1 -1
- package/dist/utils/parseLineType.js.map +1 -1
- package/dist/utils/parseMergeConflictDiffFromFile.d.ts.map +1 -1
- package/dist/utils/parseMergeConflictDiffFromFile.js +5 -5
- package/dist/utils/parseMergeConflictDiffFromFile.js.map +1 -1
- package/dist/utils/parsePatchFiles.d.ts.map +1 -1
- package/dist/utils/parsePatchFiles.js +6 -7
- package/dist/utils/parsePatchFiles.js.map +1 -1
- package/dist/utils/prefersReducedMotion.d.ts.map +1 -1
- package/dist/utils/prefersReducedMotion.js +1 -1
- package/dist/utils/prefersReducedMotion.js.map +1 -1
- package/dist/utils/prerenderHTMLIfNecessary.d.ts.map +1 -1
- package/dist/utils/prerenderHTMLIfNecessary.js +1 -1
- package/dist/utils/prerenderHTMLIfNecessary.js.map +1 -1
- package/dist/utils/processLine.d.ts +1 -1
- package/dist/utils/processLine.d.ts.map +1 -1
- package/dist/utils/processLine.js +1 -2
- package/dist/utils/processLine.js.map +1 -1
- package/dist/utils/renderDiffWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderDiffWithHighlighter.js +4 -5
- package/dist/utils/renderDiffWithHighlighter.js.map +1 -1
- package/dist/utils/renderFileWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderFileWithHighlighter.js +1 -2
- package/dist/utils/renderFileWithHighlighter.js.map +1 -1
- package/dist/utils/resolveConflict.d.ts.map +1 -1
- package/dist/utils/resolveConflict.js +1 -2
- package/dist/utils/resolveConflict.js.map +1 -1
- package/dist/utils/resolveRegion.d.ts.map +1 -1
- package/dist/utils/resolveRegion.js +1 -1
- package/dist/utils/resolveRegion.js.map +1 -1
- package/dist/utils/roundToDevicePixel.d.ts.map +1 -1
- package/dist/utils/roundToDevicePixel.js +1 -1
- package/dist/utils/roundToDevicePixel.js.map +1 -1
- package/dist/utils/scrollbarGutter.d.ts.map +1 -1
- package/dist/utils/scrollbarGutter.js +1 -2
- package/dist/utils/scrollbarGutter.js.map +1 -1
- package/dist/utils/setLanguageOverride.d.ts.map +1 -1
- package/dist/utils/setLanguageOverride.js +1 -1
- package/dist/utils/setLanguageOverride.js.map +1 -1
- package/dist/utils/setWrapperNodeProps.d.ts.map +1 -1
- package/dist/utils/setWrapperNodeProps.js +1 -2
- package/dist/utils/setWrapperNodeProps.js.map +1 -1
- package/dist/utils/shouldUseTokenTransformer.d.ts.map +1 -1
- package/dist/utils/shouldUseTokenTransformer.js +1 -1
- package/dist/utils/shouldUseTokenTransformer.js.map +1 -1
- package/dist/utils/splitFileContents.d.ts.map +1 -1
- package/dist/utils/splitFileContents.js +1 -2
- package/dist/utils/splitFileContents.js.map +1 -1
- package/dist/utils/trimPatchContext.d.ts.map +1 -1
- package/dist/utils/trimPatchContext.js +1 -2
- package/dist/utils/trimPatchContext.js.map +1 -1
- package/dist/utils/updateDiffHunks.d.ts +6 -1
- package/dist/utils/updateDiffHunks.d.ts.map +1 -1
- package/dist/utils/updateDiffHunks.js +44 -3
- package/dist/utils/updateDiffHunks.js.map +1 -1
- package/dist/utils/virtualDiffLayout.d.ts.map +1 -1
- package/dist/utils/virtualDiffLayout.js +1 -2
- package/dist/utils/virtualDiffLayout.js.map +1 -1
- package/dist/utils/wrapTokenFragments.d.ts +1 -1
- package/dist/utils/wrapTokenFragments.d.ts.map +1 -1
- package/dist/utils/wrapTokenFragments.js +1 -2
- package/dist/utils/wrapTokenFragments.js.map +1 -1
- package/dist/worker/WorkerPoolManager.d.ts +7 -2
- package/dist/worker/WorkerPoolManager.d.ts.map +1 -1
- package/dist/worker/WorkerPoolManager.js +83 -20
- package/dist/worker/WorkerPoolManager.js.map +1 -1
- package/dist/worker/getOrCreateWorkerPoolSingleton.d.ts.map +1 -1
- package/dist/worker/getOrCreateWorkerPoolSingleton.js +1 -2
- package/dist/worker/getOrCreateWorkerPoolSingleton.js.map +1 -1
- package/dist/worker/index.d.ts +2 -2
- package/dist/worker/index.js +1 -2
- package/dist/worker/types.d.ts +7 -1
- package/dist/worker/types.d.ts.map +1 -1
- package/dist/worker/wasm-B9ZqxnKj.js +8 -0
- package/dist/worker/wasm-B9ZqxnKj.js.map +1 -0
- package/dist/worker/worker-portable.js +2784 -6406
- package/dist/worker/worker-portable.js.map +1 -1
- package/dist/worker/worker.js +94 -126
- package/dist/worker/worker.js.map +1 -1
- package/package.json +13 -14
- package/dist/worker/wasm-qE0LgnY3.js +0 -10
- package/dist/worker/wasm-qE0LgnY3.js.map +0 -1
|
@@ -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;
|
|
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":[
|
|
1
|
+
{"version":3,"file":"getIconForType.d.ts","names":[],"sources":["../../src/utils/getIconForType.ts"],"mappings":";;;;iBAGgB,cAAA,CACd,IAAA,EAAM,WAAA,YACL,OAAA,CACD,cAAA"}
|
|
@@ -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;
|
|
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":[
|
|
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"}
|
|
@@ -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;
|
|
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":[
|
|
1
|
+
{"version":3,"file":"getLineEndingType.d.ts","names":[],"sources":["../../src/utils/getLineEndingType.ts"],"mappings":";iBAAgB,iBAAA,CACd,OAAe"}
|
|
@@ -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;
|
|
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLineNodes.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"getLineNodes.d.ts","names":[],"sources":["../../src/utils/getLineNodes.ts"],"mappings":";;;iBAEgB,YAAA,CAAa,KAAA,EAAO,IAAA,GAAO,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLineNodes.js","names":[
|
|
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":[
|
|
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;
|
|
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":[
|
|
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":[
|
|
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":[
|
|
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,
|
|
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":[
|
|
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":"
|
|
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":[
|
|
1
|
+
{"version":3,"file":"getThemes.d.ts","names":[],"sources":["../../src/utils/getThemes.ts"],"mappings":";;;iBAGgB,SAAA,CACd,KAAA,GAAO,eAAA,GAAkB,UAAA,GACxB,eAAA"}
|
package/dist/utils/getThemes.js
CHANGED
|
@@ -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":[
|
|
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":[
|
|
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,
|
|
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":[
|
|
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"}
|
package/dist/utils/hast_utils.js
CHANGED
|
@@ -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":[
|
|
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":[
|
|
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"}
|
package/dist/utils/hostTheme.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { THEME_CSS_ATTRIBUTE } from "../constants.js";
|
|
2
|
-
|
|
3
2
|
//#region src/utils/hostTheme.ts
|
|
4
3
|
function upsertHostThemeStyle({ shadowRoot, currentNode, themeCSS }) {
|
|
5
4
|
if (themeCSS.trim() === "") {
|
|
@@ -16,7 +15,7 @@ function createHostThemeStyleNode() {
|
|
|
16
15
|
node.setAttribute(THEME_CSS_ATTRIBUTE, "");
|
|
17
16
|
return node;
|
|
18
17
|
}
|
|
19
|
-
|
|
20
18
|
//#endregion
|
|
21
19
|
export { createHostThemeStyleNode, upsertHostThemeStyle };
|
|
20
|
+
|
|
22
21
|
//# sourceMappingURL=hostTheme.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostTheme.js","names":[],"sources":["../../src/utils/hostTheme.ts"],"sourcesContent":["import { THEME_CSS_ATTRIBUTE } from '../constants';\n\ninterface UpsertHostThemeStyleProps {\n shadowRoot: ShadowRoot;\n currentNode: HTMLStyleElement | undefined;\n themeCSS: string;\n}\n\n// Keep the host theme style stable so renderers can update the host-scoped theme\n// CSS without rebuilding the rest of the shadow DOM.\nexport function upsertHostThemeStyle({\n shadowRoot,\n currentNode,\n themeCSS,\n}: UpsertHostThemeStyleProps): HTMLStyleElement | undefined {\n if (themeCSS.trim() === '') {\n currentNode?.remove();\n return undefined;\n }\n\n currentNode ??= createHostThemeStyleNode();\n currentNode.textContent = themeCSS;\n if (currentNode.parentNode !== shadowRoot) {\n shadowRoot.appendChild(currentNode);\n }\n return currentNode;\n}\n\nexport function createHostThemeStyleNode(): HTMLStyleElement {\n const node = document.createElement('style');\n node.setAttribute(THEME_CSS_ATTRIBUTE, '');\n return node;\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"hostTheme.js","names":[],"sources":["../../src/utils/hostTheme.ts"],"sourcesContent":["import { THEME_CSS_ATTRIBUTE } from '../constants';\n\ninterface UpsertHostThemeStyleProps {\n shadowRoot: ShadowRoot;\n currentNode: HTMLStyleElement | undefined;\n themeCSS: string;\n}\n\n// Keep the host theme style stable so renderers can update the host-scoped theme\n// CSS without rebuilding the rest of the shadow DOM.\nexport function upsertHostThemeStyle({\n shadowRoot,\n currentNode,\n themeCSS,\n}: UpsertHostThemeStyleProps): HTMLStyleElement | undefined {\n if (themeCSS.trim() === '') {\n currentNode?.remove();\n return undefined;\n }\n\n currentNode ??= createHostThemeStyleNode();\n currentNode.textContent = themeCSS;\n if (currentNode.parentNode !== shadowRoot) {\n shadowRoot.appendChild(currentNode);\n }\n return currentNode;\n}\n\nexport function createHostThemeStyleNode(): HTMLStyleElement {\n const node = document.createElement('style');\n node.setAttribute(THEME_CSS_ATTRIBUTE, '');\n return node;\n}\n"],"mappings":";;AAUA,SAAgB,qBAAqB,EACnC,YACA,aACA,YAC0D;CAC1D,IAAI,SAAS,KAAK,MAAM,IAAI;EAC1B,aAAa,OAAO;EACpB;CACF;CAEA,gBAAgB,yBAAyB;CACzC,YAAY,cAAc;CAC1B,IAAI,YAAY,eAAe,YAC7B,WAAW,YAAY,WAAW;CAEpC,OAAO;AACT;AAEA,SAAgB,2BAA6C;CAC3D,MAAM,OAAO,SAAS,cAAc,OAAO;CAC3C,KAAK,aAAa,qBAAqB,EAAE;CACzC,OAAO;AACT"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FileDiffLoadedFiles, FileDiffMetadata } from "../types.js";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/hydratePartialDiff.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Hydrates a partial diff in place with full file line arrays.
|
|
6
|
+
*/
|
|
7
|
+
declare function hydratePartialDiff(type: 'clone' | 'merge', fileDiff: FileDiffMetadata, files: FileDiffLoadedFiles): FileDiffMetadata;
|
|
8
|
+
//#endregion
|
|
9
|
+
export { hydratePartialDiff };
|
|
10
|
+
//# sourceMappingURL=hydratePartialDiff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hydratePartialDiff.d.ts","names":[],"sources":["../../src/utils/hydratePartialDiff.ts"],"mappings":";;;;;AAkBA;iBAAgB,kBAAA,CACd,IAAA,qBACA,QAAA,EAAU,gBAAA,EACV,KAAA,EAAO,mBAAA,GACN,gBAAA"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { cloneFileDiffMetadata } from "./cloneFileDiffMetadata.js";
|
|
2
|
+
import { splitFileContents } from "./splitFileContents.js";
|
|
3
|
+
//#region src/utils/hydratePartialDiff.ts
|
|
4
|
+
/**
|
|
5
|
+
* Hydrates a partial diff in place with full file line arrays.
|
|
6
|
+
*/
|
|
7
|
+
function hydratePartialDiff(type, fileDiff, files) {
|
|
8
|
+
const targetFileDiff = type === "clone" ? cloneFileDiffMetadata(fileDiff) : fileDiff;
|
|
9
|
+
if (!targetFileDiff.isPartial) throw new Error("hydratePartialDiff: fileDiff must be partial");
|
|
10
|
+
switch (targetFileDiff.type) {
|
|
11
|
+
case "change":
|
|
12
|
+
case "rename-changed": return hydrateTwoSidedFileDiff(targetFileDiff, requireOldFile(targetFileDiff, files), requireNewFile(targetFileDiff, files));
|
|
13
|
+
case "rename-pure": {
|
|
14
|
+
const newFile = requireNewFile(targetFileDiff, files);
|
|
15
|
+
requireMissingOldFile(targetFileDiff, files);
|
|
16
|
+
const lines = splitFileContents(newFile.contents);
|
|
17
|
+
targetFileDiff.isPartial = false;
|
|
18
|
+
targetFileDiff.deletionLines = lines;
|
|
19
|
+
targetFileDiff.additionLines = lines;
|
|
20
|
+
setHydratedCacheKey(targetFileDiff, null, newFile);
|
|
21
|
+
return targetFileDiff;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
throw new Error(`hydratePartialDiff: ${targetFileDiff.type} diffs cannot be hydrated from loaded files`);
|
|
25
|
+
}
|
|
26
|
+
function hydrateTwoSidedFileDiff(fileDiff, oldFile, newFile) {
|
|
27
|
+
const deletionLines = splitFileContents(oldFile.contents);
|
|
28
|
+
const additionLines = splitFileContents(newFile.contents);
|
|
29
|
+
const { hunks, splitLineCount, unifiedLineCount } = hydrateHunks(fileDiff.hunks, additionLines.length);
|
|
30
|
+
fileDiff.hunks = hunks;
|
|
31
|
+
fileDiff.splitLineCount = splitLineCount;
|
|
32
|
+
fileDiff.unifiedLineCount = unifiedLineCount;
|
|
33
|
+
fileDiff.isPartial = false;
|
|
34
|
+
fileDiff.deletionLines = deletionLines;
|
|
35
|
+
fileDiff.additionLines = additionLines;
|
|
36
|
+
setHydratedCacheKey(fileDiff, oldFile, newFile);
|
|
37
|
+
return fileDiff;
|
|
38
|
+
}
|
|
39
|
+
function hydrateHunks(hunks, totalAdditionLines) {
|
|
40
|
+
let splitLineCount = 0;
|
|
41
|
+
let unifiedLineCount = 0;
|
|
42
|
+
let lastHunkAdditionEnd = 0;
|
|
43
|
+
const hydratedHunks = [];
|
|
44
|
+
for (const hunk of hunks) {
|
|
45
|
+
const additionLineIndex = Math.max(hunk.additionStart - 1, 0);
|
|
46
|
+
const deletionLineIndex = Math.max(hunk.deletionStart - 1, 0);
|
|
47
|
+
let contentAdditionLineIndex = additionLineIndex;
|
|
48
|
+
let contentDeletionLineIndex = deletionLineIndex;
|
|
49
|
+
let hunkAdditionLines = 0;
|
|
50
|
+
let hunkDeletionLines = 0;
|
|
51
|
+
let hunkSplitLineCount = 0;
|
|
52
|
+
let hunkUnifiedLineCount = 0;
|
|
53
|
+
const hunkContent = [];
|
|
54
|
+
for (const content of hunk.hunkContent) {
|
|
55
|
+
if (content.type === "context") {
|
|
56
|
+
hunkContent.push({
|
|
57
|
+
...content,
|
|
58
|
+
additionLineIndex: contentAdditionLineIndex,
|
|
59
|
+
deletionLineIndex: contentDeletionLineIndex
|
|
60
|
+
});
|
|
61
|
+
contentAdditionLineIndex += content.lines;
|
|
62
|
+
contentDeletionLineIndex += content.lines;
|
|
63
|
+
hunkSplitLineCount += content.lines;
|
|
64
|
+
hunkUnifiedLineCount += content.lines;
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
hunkContent.push({
|
|
68
|
+
...content,
|
|
69
|
+
additionLineIndex: contentAdditionLineIndex,
|
|
70
|
+
deletionLineIndex: contentDeletionLineIndex
|
|
71
|
+
});
|
|
72
|
+
contentAdditionLineIndex += content.additions;
|
|
73
|
+
contentDeletionLineIndex += content.deletions;
|
|
74
|
+
hunkAdditionLines += content.additions;
|
|
75
|
+
hunkDeletionLines += content.deletions;
|
|
76
|
+
hunkSplitLineCount += Math.max(content.additions, content.deletions);
|
|
77
|
+
hunkUnifiedLineCount += content.additions + content.deletions;
|
|
78
|
+
}
|
|
79
|
+
const collapsedBefore = Math.max(hunk.additionStart - 1 - lastHunkAdditionEnd, 0);
|
|
80
|
+
hydratedHunks.push({
|
|
81
|
+
...hunk,
|
|
82
|
+
collapsedBefore,
|
|
83
|
+
additionLineIndex,
|
|
84
|
+
deletionLineIndex,
|
|
85
|
+
additionLines: hunkAdditionLines,
|
|
86
|
+
deletionLines: hunkDeletionLines,
|
|
87
|
+
hunkContent,
|
|
88
|
+
splitLineStart: splitLineCount + collapsedBefore,
|
|
89
|
+
unifiedLineStart: unifiedLineCount + collapsedBefore,
|
|
90
|
+
splitLineCount: hunkSplitLineCount,
|
|
91
|
+
unifiedLineCount: hunkUnifiedLineCount
|
|
92
|
+
});
|
|
93
|
+
splitLineCount += collapsedBefore + hunkSplitLineCount;
|
|
94
|
+
unifiedLineCount += collapsedBefore + hunkUnifiedLineCount;
|
|
95
|
+
lastHunkAdditionEnd = hunk.additionStart + hunk.additionCount - 1;
|
|
96
|
+
}
|
|
97
|
+
if (hydratedHunks.length > 0) {
|
|
98
|
+
const lastHunk = hydratedHunks[hydratedHunks.length - 1];
|
|
99
|
+
const lastHunkEnd = Math.max(lastHunk.additionStart + lastHunk.additionCount - 1, 0);
|
|
100
|
+
const collapsedAfter = Math.max(totalAdditionLines - lastHunkEnd, 0);
|
|
101
|
+
splitLineCount += collapsedAfter;
|
|
102
|
+
unifiedLineCount += collapsedAfter;
|
|
103
|
+
}
|
|
104
|
+
return {
|
|
105
|
+
hunks: hydratedHunks,
|
|
106
|
+
splitLineCount,
|
|
107
|
+
unifiedLineCount
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
function requireOldFile(fileDiff, files) {
|
|
111
|
+
if (files.oldFile == null) throw new Error(`hydratePartialDiff: ${fileDiff.type} diff for ${fileDiff.name} requires oldFile`);
|
|
112
|
+
return files.oldFile;
|
|
113
|
+
}
|
|
114
|
+
function requireNewFile(fileDiff, files) {
|
|
115
|
+
if (files.newFile == null) throw new Error(`hydratePartialDiff: ${fileDiff.type} diff for ${fileDiff.name} requires newFile`);
|
|
116
|
+
return files.newFile;
|
|
117
|
+
}
|
|
118
|
+
function requireMissingOldFile(fileDiff, files) {
|
|
119
|
+
if (files.oldFile !== null) throw new Error(`hydratePartialDiff: ${fileDiff.type} diff for ${fileDiff.name} requires oldFile to be null`);
|
|
120
|
+
}
|
|
121
|
+
function getHydratedCacheKey(fileDiff, oldFile, newFile) {
|
|
122
|
+
if (fileDiff.cacheKey != null) return `${fileDiff.cacheKey}:hydrated`;
|
|
123
|
+
return getLoadedFileCacheKey(oldFile, newFile);
|
|
124
|
+
}
|
|
125
|
+
function setHydratedCacheKey(fileDiff, oldFile, newFile) {
|
|
126
|
+
const cacheKey = getHydratedCacheKey(fileDiff, oldFile, newFile);
|
|
127
|
+
if (cacheKey == null) {
|
|
128
|
+
delete fileDiff.cacheKey;
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
fileDiff.cacheKey = cacheKey;
|
|
132
|
+
}
|
|
133
|
+
function getLoadedFileCacheKey(oldFile, newFile) {
|
|
134
|
+
if (oldFile != null && newFile != null) return oldFile.cacheKey != null && newFile.cacheKey != null ? `${oldFile.cacheKey}:${newFile.cacheKey}` : void 0;
|
|
135
|
+
return oldFile?.cacheKey ?? newFile?.cacheKey;
|
|
136
|
+
}
|
|
137
|
+
//#endregion
|
|
138
|
+
export { hydratePartialDiff };
|
|
139
|
+
|
|
140
|
+
//# sourceMappingURL=hydratePartialDiff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hydratePartialDiff.js","names":[],"sources":["../../src/utils/hydratePartialDiff.ts"],"sourcesContent":["import type {\n FileContents,\n FileDiffLoadedFiles,\n FileDiffMetadata,\n Hunk,\n} from '../types';\nimport { cloneFileDiffMetadata } from './cloneFileDiffMetadata';\nimport { splitFileContents } from './splitFileContents';\n\ninterface HydratedHunksResult {\n hunks: Hunk[];\n splitLineCount: number;\n unifiedLineCount: number;\n}\n\n/**\n * Hydrates a partial diff in place with full file line arrays.\n */\nexport function hydratePartialDiff(\n type: 'clone' | 'merge',\n fileDiff: FileDiffMetadata,\n files: FileDiffLoadedFiles\n): FileDiffMetadata {\n const targetFileDiff =\n type === 'clone' ? cloneFileDiffMetadata(fileDiff) : fileDiff;\n\n if (!targetFileDiff.isPartial) {\n throw new Error('hydratePartialDiff: fileDiff must be partial');\n }\n\n switch (targetFileDiff.type) {\n case 'change':\n case 'rename-changed': {\n const oldFile = requireOldFile(targetFileDiff, files);\n const newFile = requireNewFile(targetFileDiff, files);\n return hydrateTwoSidedFileDiff(targetFileDiff, oldFile, newFile);\n }\n case 'rename-pure': {\n const newFile = requireNewFile(targetFileDiff, files);\n requireMissingOldFile(targetFileDiff, files);\n const lines = splitFileContents(newFile.contents);\n targetFileDiff.isPartial = false;\n targetFileDiff.deletionLines = lines;\n targetFileDiff.additionLines = lines;\n setHydratedCacheKey(targetFileDiff, null, newFile);\n return targetFileDiff;\n }\n }\n throw new Error(\n `hydratePartialDiff: ${targetFileDiff.type} diffs cannot be hydrated from loaded files`\n );\n}\n\nfunction hydrateTwoSidedFileDiff(\n fileDiff: FileDiffMetadata,\n oldFile: FileContents,\n newFile: FileContents\n): FileDiffMetadata {\n const deletionLines = splitFileContents(oldFile.contents);\n const additionLines = splitFileContents(newFile.contents);\n const { hunks, splitLineCount, unifiedLineCount } = hydrateHunks(\n fileDiff.hunks,\n additionLines.length\n );\n\n fileDiff.hunks = hunks;\n fileDiff.splitLineCount = splitLineCount;\n fileDiff.unifiedLineCount = unifiedLineCount;\n fileDiff.isPartial = false;\n fileDiff.deletionLines = deletionLines;\n fileDiff.additionLines = additionLines;\n setHydratedCacheKey(fileDiff, oldFile, newFile);\n return fileDiff;\n}\n\nfunction hydrateHunks(\n hunks: Hunk[],\n totalAdditionLines: number\n): HydratedHunksResult {\n let splitLineCount = 0;\n let unifiedLineCount = 0;\n let lastHunkAdditionEnd = 0;\n\n const hydratedHunks: Hunk[] = [];\n\n for (const hunk of hunks) {\n const additionLineIndex = Math.max(hunk.additionStart - 1, 0);\n const deletionLineIndex = Math.max(hunk.deletionStart - 1, 0);\n let contentAdditionLineIndex = additionLineIndex;\n let contentDeletionLineIndex = deletionLineIndex;\n let hunkAdditionLines = 0;\n let hunkDeletionLines = 0;\n let hunkSplitLineCount = 0;\n let hunkUnifiedLineCount = 0;\n const hunkContent: Hunk['hunkContent'] = [];\n\n for (const content of hunk.hunkContent) {\n if (content.type === 'context') {\n hunkContent.push({\n ...content,\n additionLineIndex: contentAdditionLineIndex,\n deletionLineIndex: contentDeletionLineIndex,\n });\n contentAdditionLineIndex += content.lines;\n contentDeletionLineIndex += content.lines;\n hunkSplitLineCount += content.lines;\n hunkUnifiedLineCount += content.lines;\n continue;\n }\n\n hunkContent.push({\n ...content,\n additionLineIndex: contentAdditionLineIndex,\n deletionLineIndex: contentDeletionLineIndex,\n });\n contentAdditionLineIndex += content.additions;\n contentDeletionLineIndex += content.deletions;\n hunkAdditionLines += content.additions;\n hunkDeletionLines += content.deletions;\n hunkSplitLineCount += Math.max(content.additions, content.deletions);\n hunkUnifiedLineCount += content.additions + content.deletions;\n }\n\n const collapsedBefore = Math.max(\n hunk.additionStart - 1 - lastHunkAdditionEnd,\n 0\n );\n hydratedHunks.push({\n ...hunk,\n collapsedBefore,\n additionLineIndex,\n deletionLineIndex,\n additionLines: hunkAdditionLines,\n deletionLines: hunkDeletionLines,\n hunkContent,\n splitLineStart: splitLineCount + collapsedBefore,\n unifiedLineStart: unifiedLineCount + collapsedBefore,\n splitLineCount: hunkSplitLineCount,\n unifiedLineCount: hunkUnifiedLineCount,\n });\n\n splitLineCount += collapsedBefore + hunkSplitLineCount;\n unifiedLineCount += collapsedBefore + hunkUnifiedLineCount;\n lastHunkAdditionEnd = hunk.additionStart + hunk.additionCount - 1;\n }\n\n if (hydratedHunks.length > 0) {\n const lastHunk = hydratedHunks[hydratedHunks.length - 1];\n const lastHunkEnd = Math.max(\n lastHunk.additionStart + lastHunk.additionCount - 1,\n 0\n );\n const collapsedAfter = Math.max(totalAdditionLines - lastHunkEnd, 0);\n splitLineCount += collapsedAfter;\n unifiedLineCount += collapsedAfter;\n }\n\n return { hunks: hydratedHunks, splitLineCount, unifiedLineCount };\n}\n\nfunction requireOldFile(\n fileDiff: FileDiffMetadata,\n files: FileDiffLoadedFiles\n): FileContents {\n if (files.oldFile == null) {\n throw new Error(\n `hydratePartialDiff: ${fileDiff.type} diff for ${fileDiff.name} requires oldFile`\n );\n }\n return files.oldFile;\n}\n\nfunction requireNewFile(\n fileDiff: FileDiffMetadata,\n files: FileDiffLoadedFiles\n): FileContents {\n if (files.newFile == null) {\n throw new Error(\n `hydratePartialDiff: ${fileDiff.type} diff for ${fileDiff.name} requires newFile`\n );\n }\n return files.newFile;\n}\n\nfunction requireMissingOldFile(\n fileDiff: FileDiffMetadata,\n files: FileDiffLoadedFiles\n): void {\n if (files.oldFile !== null) {\n throw new Error(\n `hydratePartialDiff: ${fileDiff.type} diff for ${fileDiff.name} requires oldFile to be null`\n );\n }\n}\n\nfunction getHydratedCacheKey(\n fileDiff: FileDiffMetadata,\n oldFile: FileContents | null,\n newFile: FileContents | null\n): string | undefined {\n if (fileDiff.cacheKey != null) {\n return `${fileDiff.cacheKey}:hydrated`;\n }\n return getLoadedFileCacheKey(oldFile, newFile);\n}\n\nfunction setHydratedCacheKey(\n fileDiff: FileDiffMetadata,\n oldFile: FileContents | null,\n newFile: FileContents | null\n): void {\n const cacheKey = getHydratedCacheKey(fileDiff, oldFile, newFile);\n if (cacheKey == null) {\n delete fileDiff.cacheKey;\n return;\n }\n fileDiff.cacheKey = cacheKey;\n}\n\nfunction getLoadedFileCacheKey(\n oldFile: FileContents | null,\n newFile: FileContents | null\n): string | undefined {\n if (oldFile != null && newFile != null) {\n return oldFile.cacheKey != null && newFile.cacheKey != null\n ? `${oldFile.cacheKey}:${newFile.cacheKey}`\n : undefined;\n }\n return oldFile?.cacheKey ?? newFile?.cacheKey;\n}\n"],"mappings":";;;;;;AAkBA,SAAgB,mBACd,MACA,UACA,OACkB;CAClB,MAAM,iBACJ,SAAS,UAAU,sBAAsB,QAAQ,IAAI;CAEvD,IAAI,CAAC,eAAe,WAClB,MAAM,IAAI,MAAM,8CAA8C;CAGhE,QAAQ,eAAe,MAAvB;EACE,KAAK;EACL,KAAK,kBAGH,OAAO,wBAAwB,gBAFf,eAAe,gBAAgB,KAEM,GADrC,eAAe,gBAAgB,KACe,CAAC;EAEjE,KAAK,eAAe;GAClB,MAAM,UAAU,eAAe,gBAAgB,KAAK;GACpD,sBAAsB,gBAAgB,KAAK;GAC3C,MAAM,QAAQ,kBAAkB,QAAQ,QAAQ;GAChD,eAAe,YAAY;GAC3B,eAAe,gBAAgB;GAC/B,eAAe,gBAAgB;GAC/B,oBAAoB,gBAAgB,MAAM,OAAO;GACjD,OAAO;EACT;CACF;CACA,MAAM,IAAI,MACR,uBAAuB,eAAe,KAAK,4CAC7C;AACF;AAEA,SAAS,wBACP,UACA,SACA,SACkB;CAClB,MAAM,gBAAgB,kBAAkB,QAAQ,QAAQ;CACxD,MAAM,gBAAgB,kBAAkB,QAAQ,QAAQ;CACxD,MAAM,EAAE,OAAO,gBAAgB,qBAAqB,aAClD,SAAS,OACT,cAAc,MAChB;CAEA,SAAS,QAAQ;CACjB,SAAS,iBAAiB;CAC1B,SAAS,mBAAmB;CAC5B,SAAS,YAAY;CACrB,SAAS,gBAAgB;CACzB,SAAS,gBAAgB;CACzB,oBAAoB,UAAU,SAAS,OAAO;CAC9C,OAAO;AACT;AAEA,SAAS,aACP,OACA,oBACqB;CACrB,IAAI,iBAAiB;CACrB,IAAI,mBAAmB;CACvB,IAAI,sBAAsB;CAE1B,MAAM,gBAAwB,CAAC;CAE/B,KAAK,MAAM,QAAQ,OAAO;EACxB,MAAM,oBAAoB,KAAK,IAAI,KAAK,gBAAgB,GAAG,CAAC;EAC5D,MAAM,oBAAoB,KAAK,IAAI,KAAK,gBAAgB,GAAG,CAAC;EAC5D,IAAI,2BAA2B;EAC/B,IAAI,2BAA2B;EAC/B,IAAI,oBAAoB;EACxB,IAAI,oBAAoB;EACxB,IAAI,qBAAqB;EACzB,IAAI,uBAAuB;EAC3B,MAAM,cAAmC,CAAC;EAE1C,KAAK,MAAM,WAAW,KAAK,aAAa;GACtC,IAAI,QAAQ,SAAS,WAAW;IAC9B,YAAY,KAAK;KACf,GAAG;KACH,mBAAmB;KACnB,mBAAmB;IACrB,CAAC;IACD,4BAA4B,QAAQ;IACpC,4BAA4B,QAAQ;IACpC,sBAAsB,QAAQ;IAC9B,wBAAwB,QAAQ;IAChC;GACF;GAEA,YAAY,KAAK;IACf,GAAG;IACH,mBAAmB;IACnB,mBAAmB;GACrB,CAAC;GACD,4BAA4B,QAAQ;GACpC,4BAA4B,QAAQ;GACpC,qBAAqB,QAAQ;GAC7B,qBAAqB,QAAQ;GAC7B,sBAAsB,KAAK,IAAI,QAAQ,WAAW,QAAQ,SAAS;GACnE,wBAAwB,QAAQ,YAAY,QAAQ;EACtD;EAEA,MAAM,kBAAkB,KAAK,IAC3B,KAAK,gBAAgB,IAAI,qBACzB,CACF;EACA,cAAc,KAAK;GACjB,GAAG;GACH;GACA;GACA;GACA,eAAe;GACf,eAAe;GACf;GACA,gBAAgB,iBAAiB;GACjC,kBAAkB,mBAAmB;GACrC,gBAAgB;GAChB,kBAAkB;EACpB,CAAC;EAED,kBAAkB,kBAAkB;EACpC,oBAAoB,kBAAkB;EACtC,sBAAsB,KAAK,gBAAgB,KAAK,gBAAgB;CAClE;CAEA,IAAI,cAAc,SAAS,GAAG;EAC5B,MAAM,WAAW,cAAc,cAAc,SAAS;EACtD,MAAM,cAAc,KAAK,IACvB,SAAS,gBAAgB,SAAS,gBAAgB,GAClD,CACF;EACA,MAAM,iBAAiB,KAAK,IAAI,qBAAqB,aAAa,CAAC;EACnE,kBAAkB;EAClB,oBAAoB;CACtB;CAEA,OAAO;EAAE,OAAO;EAAe;EAAgB;CAAiB;AAClE;AAEA,SAAS,eACP,UACA,OACc;CACd,IAAI,MAAM,WAAW,MACnB,MAAM,IAAI,MACR,uBAAuB,SAAS,KAAK,YAAY,SAAS,KAAK,kBACjE;CAEF,OAAO,MAAM;AACf;AAEA,SAAS,eACP,UACA,OACc;CACd,IAAI,MAAM,WAAW,MACnB,MAAM,IAAI,MACR,uBAAuB,SAAS,KAAK,YAAY,SAAS,KAAK,kBACjE;CAEF,OAAO,MAAM;AACf;AAEA,SAAS,sBACP,UACA,OACM;CACN,IAAI,MAAM,YAAY,MACpB,MAAM,IAAI,MACR,uBAAuB,SAAS,KAAK,YAAY,SAAS,KAAK,6BACjE;AAEJ;AAEA,SAAS,oBACP,UACA,SACA,SACoB;CACpB,IAAI,SAAS,YAAY,MACvB,OAAO,GAAG,SAAS,SAAS;CAE9B,OAAO,sBAAsB,SAAS,OAAO;AAC/C;AAEA,SAAS,oBACP,UACA,SACA,SACM;CACN,MAAM,WAAW,oBAAoB,UAAU,SAAS,OAAO;CAC/D,IAAI,YAAY,MAAM;EACpB,OAAO,SAAS;EAChB;CACF;CACA,SAAS,WAAW;AACtB;AAEA,SAAS,sBACP,SACA,SACoB;CACpB,IAAI,WAAW,QAAQ,WAAW,MAChC,OAAO,QAAQ,YAAY,QAAQ,QAAQ,YAAY,OACnD,GAAG,QAAQ,SAAS,GAAG,QAAQ,aAC/B,KAAA;CAEN,OAAO,SAAS,YAAY,SAAS;AACvC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"includesFileAnnotations.d.ts","names":[
|
|
1
|
+
{"version":3,"file":"includesFileAnnotations.d.ts","names":[],"sources":["../../src/utils/includesFileAnnotations.ts"],"mappings":";;;cAEa,2BAAA;AAAA,cACA,0BAAA;AAAA,cACA,0BAAA;AAAA,cACA,uBAAA;AAAA,KAER,iBAAA,gBAAiC,MAAM,SAAS,WAAA;AAAA,KAChD,uBAAA;EAA4B,UAAU;AAAA;AAAA,iBAE3B,uBAAA,CACd,WAA2D,WAArC,uBAAuB;AAAA,iBAS/B,kBAAA,cACd,WAAA,EAAa,iBAAA,CAAkB,WAAA,IAC9B,WAAA;AAAA,iBAOa,2BAAA,CAA4B,WAAwB,EAAX,WAAW"}
|