@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
package/dist/worker/worker.js
CHANGED
|
@@ -5,9 +5,7 @@ import { createThemeResolver } from "@pierre/theming";
|
|
|
5
5
|
import { diffChars, diffWordsWithSpace } from "diff";
|
|
6
6
|
import { transformerStyleToClass } from "@shikijs/transformers";
|
|
7
7
|
import { normalizeThemeColors } from "@pierre/theming/color";
|
|
8
|
-
|
|
9
|
-
//#region src/constants.ts
|
|
10
|
-
const DIFFS_DEVELOPMENT_BUILD = (() => {
|
|
8
|
+
(() => {
|
|
11
9
|
try {
|
|
12
10
|
return process.env.NODE_ENV === "development";
|
|
13
11
|
} catch {
|
|
@@ -18,30 +16,17 @@ const DEFAULT_THEMES = {
|
|
|
18
16
|
dark: "pierre-dark",
|
|
19
17
|
light: "pierre-light"
|
|
20
18
|
};
|
|
21
|
-
|
|
22
|
-
const DEFAULT_VIRTUAL_FILE_METRICS = {
|
|
23
|
-
hunkLineCount: 50,
|
|
24
|
-
lineHeight: 20,
|
|
25
|
-
diffHeaderHeight: 44,
|
|
26
|
-
spacing: 8
|
|
27
|
-
};
|
|
28
|
-
const DEFAULT_CODE_VIEW_FILE_METRICS = {
|
|
29
|
-
...DEFAULT_VIRTUAL_FILE_METRICS,
|
|
30
|
-
hunkLineCount: 1
|
|
31
|
-
};
|
|
32
|
-
const DEFAULT_EXPANDED_REGION = Object.freeze({
|
|
19
|
+
Object.freeze({
|
|
33
20
|
fromStart: 0,
|
|
34
21
|
fromEnd: 0
|
|
35
22
|
});
|
|
36
|
-
|
|
37
23
|
//#endregion
|
|
38
24
|
//#region src/highlighter/languages/constants.ts
|
|
39
25
|
const ResolvedLanguages = /* @__PURE__ */ new Map();
|
|
40
26
|
const AttachedLanguages = /* @__PURE__ */ new Set();
|
|
41
|
-
|
|
42
27
|
//#endregion
|
|
43
28
|
//#region src/highlighter/languages/attachResolvedLanguages.ts
|
|
44
|
-
function attachResolvedLanguages(resolvedLanguages, highlighter
|
|
29
|
+
function attachResolvedLanguages(resolvedLanguages, highlighter) {
|
|
45
30
|
resolvedLanguages = Array.isArray(resolvedLanguages) ? resolvedLanguages : [resolvedLanguages];
|
|
46
31
|
for (const resolvedLang of resolvedLanguages) {
|
|
47
32
|
if (AttachedLanguages.has(resolvedLang.name)) continue;
|
|
@@ -51,21 +36,18 @@ function attachResolvedLanguages(resolvedLanguages, highlighter$1) {
|
|
|
51
36
|
ResolvedLanguages.set(resolvedLang.name, lang);
|
|
52
37
|
}
|
|
53
38
|
AttachedLanguages.add(lang.name);
|
|
54
|
-
highlighter
|
|
39
|
+
highlighter.loadLanguageSync(lang.data);
|
|
55
40
|
}
|
|
56
41
|
}
|
|
57
|
-
|
|
58
42
|
//#endregion
|
|
59
43
|
//#region src/highlighter/themes/constants.ts
|
|
60
44
|
const AttachedThemes = /* @__PURE__ */ new Set();
|
|
61
|
-
|
|
62
45
|
//#endregion
|
|
63
46
|
//#region src/highlighter/themes/themeResolver.ts
|
|
64
47
|
const themeResolver = createThemeResolver();
|
|
65
|
-
|
|
66
48
|
//#endregion
|
|
67
49
|
//#region src/highlighter/themes/attachResolvedThemes.ts
|
|
68
|
-
function attachResolvedThemes(themes, highlighter
|
|
50
|
+
function attachResolvedThemes(themes, highlighter) {
|
|
69
51
|
themes = Array.isArray(themes) ? themes : [themes];
|
|
70
52
|
for (let themeRef of themes) {
|
|
71
53
|
let resolvedTheme;
|
|
@@ -79,10 +61,9 @@ function attachResolvedThemes(themes, highlighter$1) {
|
|
|
79
61
|
}
|
|
80
62
|
if (AttachedThemes.has(themeRef)) continue;
|
|
81
63
|
AttachedThemes.add(themeRef);
|
|
82
|
-
highlighter
|
|
64
|
+
highlighter.loadThemeSync(resolvedTheme);
|
|
83
65
|
}
|
|
84
66
|
}
|
|
85
|
-
|
|
86
67
|
//#endregion
|
|
87
68
|
//#region src/utils/getFiletypeFromFileName.ts
|
|
88
69
|
const CUSTOM_EXTENSION_TO_FILE_FORMAT = /* @__PURE__ */ new Map();
|
|
@@ -396,6 +377,8 @@ const EXTENSION_TO_FILE_FORMAT = {
|
|
|
396
377
|
tfvars: "tfvars",
|
|
397
378
|
toml: "toml",
|
|
398
379
|
ts: "typescript",
|
|
380
|
+
mts: "typescript",
|
|
381
|
+
cts: "typescript",
|
|
399
382
|
tsp: "typespec",
|
|
400
383
|
tsv: "tsv",
|
|
401
384
|
tsx: "tsx",
|
|
@@ -454,7 +437,6 @@ function replaceCustomExtensions(version, map) {
|
|
|
454
437
|
customExtensionsVersion = version;
|
|
455
438
|
return true;
|
|
456
439
|
}
|
|
457
|
-
|
|
458
440
|
//#endregion
|
|
459
441
|
//#region src/utils/cleanLastNewline.ts
|
|
460
442
|
function cleanLastNewline(contents) {
|
|
@@ -465,7 +447,6 @@ function cleanLastNewline(contents) {
|
|
|
465
447
|
}
|
|
466
448
|
return contents.slice(0, end);
|
|
467
449
|
}
|
|
468
|
-
|
|
469
450
|
//#endregion
|
|
470
451
|
//#region src/utils/hast_utils.ts
|
|
471
452
|
function createTextNodeElement(value) {
|
|
@@ -490,7 +471,6 @@ function findCodeElement(nodes) {
|
|
|
490
471
|
else firstChild = null;
|
|
491
472
|
}
|
|
492
473
|
}
|
|
493
|
-
|
|
494
474
|
//#endregion
|
|
495
475
|
//#region src/utils/processLine.ts
|
|
496
476
|
function processLine(node, line, state) {
|
|
@@ -512,7 +492,6 @@ function processLine(node, line, state) {
|
|
|
512
492
|
if (node.children.length === 0) node.children.push(createTextNodeElement("\n"));
|
|
513
493
|
return node;
|
|
514
494
|
}
|
|
515
|
-
|
|
516
495
|
//#endregion
|
|
517
496
|
//#region src/utils/wrapTokenFragments.ts
|
|
518
497
|
const NO_TOKEN = Symbol("no-token");
|
|
@@ -590,7 +569,6 @@ function stripTokenChar(node) {
|
|
|
590
569
|
function setTokenChar(node, char) {
|
|
591
570
|
node.properties["data-char"] = char;
|
|
592
571
|
}
|
|
593
|
-
|
|
594
572
|
//#endregion
|
|
595
573
|
//#region src/utils/createTransformerWithState.ts
|
|
596
574
|
function createTransformerWithState(useTokenTransformer = false, useCSSClasses = false) {
|
|
@@ -673,19 +651,17 @@ const tokenStyleNormalizer = {
|
|
|
673
651
|
}
|
|
674
652
|
}
|
|
675
653
|
};
|
|
676
|
-
|
|
677
654
|
//#endregion
|
|
678
655
|
//#region src/utils/formatCSSVariablePrefix.ts
|
|
679
656
|
function formatCSSVariablePrefix(type) {
|
|
680
657
|
return `--${type === "token" ? "diffs-token" : "diffs"}-`;
|
|
681
658
|
}
|
|
682
|
-
|
|
683
659
|
//#endregion
|
|
684
660
|
//#region src/utils/getHighlighterThemeStyles.ts
|
|
685
|
-
function getHighlighterThemeStyles({ theme = DEFAULT_THEMES, highlighter
|
|
661
|
+
function getHighlighterThemeStyles({ theme = DEFAULT_THEMES, highlighter, prefix }) {
|
|
686
662
|
let styles = "";
|
|
687
663
|
if (typeof theme === "string") {
|
|
688
|
-
const themeData = highlighter
|
|
664
|
+
const themeData = highlighter.getTheme(theme);
|
|
689
665
|
const normalized = normalizeThemeColors(themeData);
|
|
690
666
|
styles += `color:${normalized.fg};`;
|
|
691
667
|
styles += `background-color:${normalized.bg};`;
|
|
@@ -693,12 +669,12 @@ function getHighlighterThemeStyles({ theme = DEFAULT_THEMES, highlighter: highli
|
|
|
693
669
|
styles += `${formatCSSVariablePrefix("global")}bg:${normalized.bg};`;
|
|
694
670
|
styles += getGitVariables(themeData, prefix);
|
|
695
671
|
} else {
|
|
696
|
-
let themeData = highlighter
|
|
672
|
+
let themeData = highlighter.getTheme(theme.dark);
|
|
697
673
|
let normalized = normalizeThemeColors(themeData);
|
|
698
674
|
styles += `${formatCSSVariablePrefix("global")}dark:${normalized.fg};`;
|
|
699
675
|
styles += `${formatCSSVariablePrefix("global")}dark-bg:${normalized.bg};`;
|
|
700
676
|
styles += getGitVariables(themeData, "dark");
|
|
701
|
-
themeData = highlighter
|
|
677
|
+
themeData = highlighter.getTheme(theme.light);
|
|
702
678
|
normalized = normalizeThemeColors(themeData);
|
|
703
679
|
styles += `${formatCSSVariablePrefix("global")}light:${normalized.fg};`;
|
|
704
680
|
styles += `${formatCSSVariablePrefix("global")}light-bg:${normalized.bg};`;
|
|
@@ -717,7 +693,6 @@ function getGitVariables(themeData, modePrefix) {
|
|
|
717
693
|
if (modifiedBlue != null) styles += `${formatCSSVariablePrefix("global")}${modePrefix}modified-color:${modifiedBlue};`;
|
|
718
694
|
return styles;
|
|
719
695
|
}
|
|
720
|
-
|
|
721
696
|
//#endregion
|
|
722
697
|
//#region src/utils/getLineNodes.ts
|
|
723
698
|
function getLineNodes(nodes) {
|
|
@@ -730,7 +705,6 @@ function getLineNodes(nodes) {
|
|
|
730
705
|
console.error(nodes);
|
|
731
706
|
throw new Error("getLineNodes: Unable to find children");
|
|
732
707
|
}
|
|
733
|
-
|
|
734
708
|
//#endregion
|
|
735
709
|
//#region src/utils/virtualDiffLayout.ts
|
|
736
710
|
function getExpandedRegion({ isPartial, rangeSize, expandedHunks, hunkIndex, collapsedContextThreshold }) {
|
|
@@ -795,10 +769,9 @@ function getTrailingExpandedRegion({ fileDiff, hunkIndex, expandedHunks, collaps
|
|
|
795
769
|
renderAll: fromStart >= trailingRangeSize
|
|
796
770
|
};
|
|
797
771
|
}
|
|
798
|
-
|
|
799
772
|
//#endregion
|
|
800
773
|
//#region src/utils/iterateOverDiff.ts
|
|
801
|
-
function iterateOverDiff({ diff, diffStyle, startingLine = 0, totalLines = Infinity, expandedHunks, collapsedContextThreshold =
|
|
774
|
+
function iterateOverDiff({ diff, diffStyle, startingLine = 0, totalLines = Infinity, expandedHunks, collapsedContextThreshold = 1, callback }) {
|
|
802
775
|
const iterationStart = getIterationStartState({
|
|
803
776
|
diff,
|
|
804
777
|
diffStyle,
|
|
@@ -821,10 +794,10 @@ function iterateOverDiff({ diff, diffStyle, startingLine = 0, totalLines = Infin
|
|
|
821
794
|
else if (diffStyle === "split") return breakSplit;
|
|
822
795
|
else return breakUnified && breakSplit;
|
|
823
796
|
},
|
|
824
|
-
shouldSkip(
|
|
797
|
+
shouldSkip(unifiedCount, splitCount) {
|
|
825
798
|
if (!state.isWindowedHighlight) return false;
|
|
826
|
-
const skipUnified = state.unifiedCount +
|
|
827
|
-
const skipSplit = state.splitCount +
|
|
799
|
+
const skipUnified = unifiedCount > 0 && state.unifiedCount + unifiedCount <= startingLine;
|
|
800
|
+
const skipSplit = splitCount > 0 && state.splitCount + splitCount <= startingLine;
|
|
828
801
|
if (diffStyle === "unified") return skipUnified;
|
|
829
802
|
else if (diffStyle === "split") return skipSplit;
|
|
830
803
|
else return skipUnified && skipSplit;
|
|
@@ -873,10 +846,10 @@ function iterateOverDiff({ diff, diffStyle, startingLine = 0, totalLines = Infin
|
|
|
873
846
|
errorPrefix: "iterateOverDiff"
|
|
874
847
|
}) : void 0;
|
|
875
848
|
const expandedLineCount = leadingRegion.fromStart + leadingRegion.fromEnd;
|
|
876
|
-
function getTrailingCollapsedAfter(unifiedLineIndex
|
|
849
|
+
function getTrailingCollapsedAfter(unifiedLineIndex, splitLineIndex) {
|
|
877
850
|
if (trailingRegion == null || trailingRegion.collapsedLines <= 0 || trailingRegion.fromStart + trailingRegion.fromEnd > 0) return 0;
|
|
878
|
-
if (diffStyle === "unified") return unifiedLineIndex
|
|
879
|
-
return splitLineIndex
|
|
851
|
+
if (diffStyle === "unified") return unifiedLineIndex === hunk.unifiedLineStart + hunk.unifiedLineCount - 1 ? trailingRegion.collapsedLines : 0;
|
|
852
|
+
return splitLineIndex === hunk.splitLineStart + hunk.splitLineCount - 1 ? trailingRegion.collapsedLines : 0;
|
|
880
853
|
}
|
|
881
854
|
let consumedCollapsed = leadingRegion.collapsedLines === 0;
|
|
882
855
|
function consumePendingCollapsed() {
|
|
@@ -885,12 +858,12 @@ function iterateOverDiff({ diff, diffStyle, startingLine = 0, totalLines = Infin
|
|
|
885
858
|
return leadingRegion.collapsedLines;
|
|
886
859
|
}
|
|
887
860
|
if (!state.shouldSkip(expandedLineCount, expandedLineCount)) {
|
|
888
|
-
let unifiedLineIndex
|
|
889
|
-
let splitLineIndex
|
|
890
|
-
let deletionLineIndex
|
|
891
|
-
let additionLineIndex
|
|
892
|
-
let deletionLineNumber
|
|
893
|
-
let additionLineNumber
|
|
861
|
+
let unifiedLineIndex = hunk.unifiedLineStart - leadingRegion.rangeSize;
|
|
862
|
+
let splitLineIndex = hunk.splitLineStart - leadingRegion.rangeSize;
|
|
863
|
+
let deletionLineIndex = hunk.deletionLineIndex - leadingRegion.rangeSize;
|
|
864
|
+
let additionLineIndex = hunk.additionLineIndex - leadingRegion.rangeSize;
|
|
865
|
+
let deletionLineNumber = hunk.deletionStart - leadingRegion.rangeSize;
|
|
866
|
+
let additionLineNumber = hunk.additionStart - leadingRegion.rangeSize;
|
|
894
867
|
if (walkContextLines(state, leadingRegion.fromStart, diffStyle, (index) => {
|
|
895
868
|
return state.emit({
|
|
896
869
|
hunkIndex,
|
|
@@ -899,27 +872,27 @@ function iterateOverDiff({ diff, diffStyle, startingLine = 0, totalLines = Infin
|
|
|
899
872
|
collapsedAfter: 0,
|
|
900
873
|
type: "context-expanded",
|
|
901
874
|
deletionLine: {
|
|
902
|
-
lineNumber: deletionLineNumber
|
|
903
|
-
lineIndex: deletionLineIndex
|
|
875
|
+
lineNumber: deletionLineNumber + index,
|
|
876
|
+
lineIndex: deletionLineIndex + index,
|
|
904
877
|
noEOFCR: false,
|
|
905
|
-
unifiedLineIndex: unifiedLineIndex
|
|
906
|
-
splitLineIndex: splitLineIndex
|
|
878
|
+
unifiedLineIndex: unifiedLineIndex + index,
|
|
879
|
+
splitLineIndex: splitLineIndex + index
|
|
907
880
|
},
|
|
908
881
|
additionLine: {
|
|
909
|
-
unifiedLineIndex: unifiedLineIndex
|
|
910
|
-
splitLineIndex: splitLineIndex
|
|
911
|
-
lineIndex: additionLineIndex
|
|
912
|
-
lineNumber: additionLineNumber
|
|
882
|
+
unifiedLineIndex: unifiedLineIndex + index,
|
|
883
|
+
splitLineIndex: splitLineIndex + index,
|
|
884
|
+
lineIndex: additionLineIndex + index,
|
|
885
|
+
lineNumber: additionLineNumber + index,
|
|
913
886
|
noEOFCR: false
|
|
914
887
|
}
|
|
915
888
|
});
|
|
916
889
|
})) break hunkIterator;
|
|
917
|
-
unifiedLineIndex
|
|
918
|
-
splitLineIndex
|
|
919
|
-
deletionLineIndex
|
|
920
|
-
additionLineIndex
|
|
921
|
-
deletionLineNumber
|
|
922
|
-
additionLineNumber
|
|
890
|
+
unifiedLineIndex = hunk.unifiedLineStart - leadingRegion.fromEnd;
|
|
891
|
+
splitLineIndex = hunk.splitLineStart - leadingRegion.fromEnd;
|
|
892
|
+
deletionLineIndex = hunk.deletionLineIndex - leadingRegion.fromEnd;
|
|
893
|
+
additionLineIndex = hunk.additionLineIndex - leadingRegion.fromEnd;
|
|
894
|
+
deletionLineNumber = hunk.deletionStart - leadingRegion.fromEnd;
|
|
895
|
+
additionLineNumber = hunk.additionStart - leadingRegion.fromEnd;
|
|
923
896
|
if (walkContextLines(state, leadingRegion.fromEnd, diffStyle, (index) => {
|
|
924
897
|
return state.emit({
|
|
925
898
|
hunkIndex,
|
|
@@ -928,17 +901,17 @@ function iterateOverDiff({ diff, diffStyle, startingLine = 0, totalLines = Infin
|
|
|
928
901
|
collapsedAfter: 0,
|
|
929
902
|
type: "context-expanded",
|
|
930
903
|
deletionLine: {
|
|
931
|
-
lineNumber: deletionLineNumber
|
|
932
|
-
lineIndex: deletionLineIndex
|
|
904
|
+
lineNumber: deletionLineNumber + index,
|
|
905
|
+
lineIndex: deletionLineIndex + index,
|
|
933
906
|
noEOFCR: false,
|
|
934
|
-
unifiedLineIndex: unifiedLineIndex
|
|
935
|
-
splitLineIndex: splitLineIndex
|
|
907
|
+
unifiedLineIndex: unifiedLineIndex + index,
|
|
908
|
+
splitLineIndex: splitLineIndex + index
|
|
936
909
|
},
|
|
937
910
|
additionLine: {
|
|
938
|
-
unifiedLineIndex: unifiedLineIndex
|
|
939
|
-
splitLineIndex: splitLineIndex
|
|
940
|
-
lineIndex: additionLineIndex
|
|
941
|
-
lineNumber: additionLineNumber
|
|
911
|
+
unifiedLineIndex: unifiedLineIndex + index,
|
|
912
|
+
splitLineIndex: splitLineIndex + index,
|
|
913
|
+
lineIndex: additionLineIndex + index,
|
|
914
|
+
lineNumber: additionLineNumber + index,
|
|
942
915
|
noEOFCR: false
|
|
943
916
|
}
|
|
944
917
|
});
|
|
@@ -1083,20 +1056,20 @@ function getIterationStartState({ diff, diffStyle, startingLine, expandedHunks,
|
|
|
1083
1056
|
let result = diff.hunks.length;
|
|
1084
1057
|
while (low <= high) {
|
|
1085
1058
|
const mid = low + high >> 1;
|
|
1086
|
-
const counts
|
|
1087
|
-
if (counts
|
|
1088
|
-
if ((diffStyle === "unified" ? counts
|
|
1059
|
+
const counts = prefixCounts[mid + 1];
|
|
1060
|
+
if (counts == null) throw new Error("iterateOverDiff: invalid hunk prefix index");
|
|
1061
|
+
if ((diffStyle === "unified" ? counts.unifiedCount : counts.splitCount) > startingLine) {
|
|
1089
1062
|
result = mid;
|
|
1090
1063
|
high = mid - 1;
|
|
1091
1064
|
} else low = mid + 1;
|
|
1092
1065
|
}
|
|
1093
1066
|
if (result >= diff.hunks.length) {
|
|
1094
|
-
const counts
|
|
1095
|
-
if (counts
|
|
1067
|
+
const counts = prefixCounts[diff.hunks.length];
|
|
1068
|
+
if (counts == null) throw new Error("iterateOverDiff: invalid terminal hunk prefix index");
|
|
1096
1069
|
return {
|
|
1097
1070
|
hunkIndex: diff.hunks.length,
|
|
1098
|
-
splitCount: counts
|
|
1099
|
-
unifiedCount: counts
|
|
1071
|
+
splitCount: counts.splitCount,
|
|
1072
|
+
unifiedCount: counts.unifiedCount
|
|
1100
1073
|
};
|
|
1101
1074
|
}
|
|
1102
1075
|
const counts = prefixCounts[result];
|
|
@@ -1151,9 +1124,9 @@ function getContextLineIterationBounds(state, count, diffStyle) {
|
|
|
1151
1124
|
if (!state.isWindowedHighlight || count <= 0) return [0, count];
|
|
1152
1125
|
const ranges = [];
|
|
1153
1126
|
function pushRange(currentCount) {
|
|
1154
|
-
const start
|
|
1155
|
-
const end
|
|
1156
|
-
if (end
|
|
1127
|
+
const start = Math.max(0, state.viewportStart - currentCount);
|
|
1128
|
+
const end = Math.min(count, state.viewportEnd - currentCount);
|
|
1129
|
+
if (end > start) ranges.push([start, end]);
|
|
1157
1130
|
}
|
|
1158
1131
|
if (diffStyle !== "split") pushRange(state.unifiedCount);
|
|
1159
1132
|
if (diffStyle !== "unified") pushRange(state.splitCount);
|
|
@@ -1279,7 +1252,6 @@ function getChangeLineData({ hunkIndex, hunk, collapsedAfter, collapsedBefore, d
|
|
|
1279
1252
|
additionLine
|
|
1280
1253
|
};
|
|
1281
1254
|
}
|
|
1282
|
-
|
|
1283
1255
|
//#endregion
|
|
1284
1256
|
//#region src/utils/parseDiffDecorations.ts
|
|
1285
1257
|
function createDiffSpanDecoration({ line, spanStart, spanLength }) {
|
|
@@ -1309,11 +1281,10 @@ function pushOrJoinSpan({ item, arr, enableJoin, isNeutral = false, isLastItem =
|
|
|
1309
1281
|
}
|
|
1310
1282
|
arr.push([isNeutral ? 0 : 1, item.value]);
|
|
1311
1283
|
}
|
|
1312
|
-
|
|
1313
1284
|
//#endregion
|
|
1314
1285
|
//#region src/utils/renderDiffWithHighlighter.ts
|
|
1315
1286
|
const DEFAULT_PLAIN_TEXT_OPTIONS$1 = { forcePlainText: false };
|
|
1316
|
-
function renderDiffWithHighlighter(diff, highlighter
|
|
1287
|
+
function renderDiffWithHighlighter(diff, highlighter, options, { forcePlainText, startingLine, totalLines, expandedHunks, collapsedContextThreshold = 1 } = DEFAULT_PLAIN_TEXT_OPTIONS$1) {
|
|
1317
1288
|
if (forcePlainText) {
|
|
1318
1289
|
startingLine ??= 0;
|
|
1319
1290
|
totalLines ??= Infinity;
|
|
@@ -1322,10 +1293,10 @@ function renderDiffWithHighlighter(diff, highlighter$1, options, { forcePlainTex
|
|
|
1322
1293
|
totalLines = Infinity;
|
|
1323
1294
|
}
|
|
1324
1295
|
const isWindowedHighlight = startingLine > 0 || totalLines < Infinity;
|
|
1325
|
-
const baseThemeType = typeof options.theme === "string" ? highlighter
|
|
1296
|
+
const baseThemeType = typeof options.theme === "string" ? highlighter.getTheme(options.theme).type : void 0;
|
|
1326
1297
|
const themeStyles = getHighlighterThemeStyles({
|
|
1327
1298
|
theme: options.theme,
|
|
1328
|
-
highlighter
|
|
1299
|
+
highlighter
|
|
1329
1300
|
});
|
|
1330
1301
|
const lineDiffType = forcePlainText && !isWindowedHighlight && (diff.unifiedLineCount > 1e3 || diff.splitLineCount > 1e3) ? "none" : options.lineDiffType;
|
|
1331
1302
|
const code = {
|
|
@@ -1414,7 +1385,7 @@ function renderDiffWithHighlighter(diff, highlighter$1, options, { forcePlainTex
|
|
|
1414
1385
|
additionFile,
|
|
1415
1386
|
additionInfo: bucket.additionInfo,
|
|
1416
1387
|
additionDecorations: bucket.additionDecorations,
|
|
1417
|
-
highlighter
|
|
1388
|
+
highlighter,
|
|
1418
1389
|
options,
|
|
1419
1390
|
languageOverride: forcePlainText ? "text" : diff.lang
|
|
1420
1391
|
});
|
|
@@ -1519,7 +1490,7 @@ function createBucket() {
|
|
|
1519
1490
|
additionSegments: []
|
|
1520
1491
|
};
|
|
1521
1492
|
}
|
|
1522
|
-
function renderTwoFiles({ deletionFile, additionFile, deletionInfo, additionInfo, highlighter
|
|
1493
|
+
function renderTwoFiles({ deletionFile, additionFile, deletionInfo, additionInfo, highlighter, deletionDecorations, additionDecorations, languageOverride, options: { theme: themeOrThemes = DEFAULT_THEMES, ...options } }) {
|
|
1523
1494
|
const deletionLang = languageOverride ?? getFiletypeFromFileName(deletionFile.name);
|
|
1524
1495
|
const additionLang = languageOverride ?? getFiletypeFromFileName(additionFile.name);
|
|
1525
1496
|
const { state, transformers } = createTransformerWithState(options.useTokenTransformer);
|
|
@@ -1550,18 +1521,17 @@ function renderTwoFiles({ deletionFile, additionFile, deletionInfo, additionInfo
|
|
|
1550
1521
|
hastConfig.lang = deletionLang;
|
|
1551
1522
|
state.lineInfo = deletionInfo;
|
|
1552
1523
|
hastConfig.decorations = deletionDecorations;
|
|
1553
|
-
return getLineNodes(highlighter
|
|
1524
|
+
return getLineNodes(highlighter.codeToHast(cleanLastNewline(deletionFile.contents), hastConfig));
|
|
1554
1525
|
})(),
|
|
1555
1526
|
additionLines: (() => {
|
|
1556
1527
|
if (additionFile.contents === "") return [];
|
|
1557
1528
|
hastConfig.lang = additionLang;
|
|
1558
1529
|
hastConfig.decorations = additionDecorations;
|
|
1559
1530
|
state.lineInfo = additionInfo;
|
|
1560
|
-
return getLineNodes(highlighter
|
|
1531
|
+
return getLineNodes(highlighter.codeToHast(cleanLastNewline(additionFile.contents), hastConfig));
|
|
1561
1532
|
})()
|
|
1562
1533
|
};
|
|
1563
1534
|
}
|
|
1564
|
-
|
|
1565
1535
|
//#endregion
|
|
1566
1536
|
//#region src/utils/computeFileOffsets.ts
|
|
1567
1537
|
const LINE_FEED = 10;
|
|
@@ -1592,11 +1562,10 @@ function linesFromFileContents(contents) {
|
|
|
1592
1562
|
return contents.slice(start, end);
|
|
1593
1563
|
});
|
|
1594
1564
|
}
|
|
1595
|
-
|
|
1596
1565
|
//#endregion
|
|
1597
1566
|
//#region src/utils/renderFileWithHighlighter.ts
|
|
1598
1567
|
const DEFAULT_PLAIN_TEXT_OPTIONS = { forcePlainText: false };
|
|
1599
|
-
function renderFileWithHighlighter(file, highlighter
|
|
1568
|
+
function renderFileWithHighlighter(file, highlighter, { theme = DEFAULT_THEMES, tokenizeMaxLineLength, useTokenTransformer }, { forcePlainText, startingLine, totalLines, lines } = DEFAULT_PLAIN_TEXT_OPTIONS) {
|
|
1600
1569
|
if (forcePlainText) {
|
|
1601
1570
|
startingLine ??= 0;
|
|
1602
1571
|
totalLines ??= Infinity;
|
|
@@ -1607,10 +1576,10 @@ function renderFileWithHighlighter(file, highlighter$1, { theme = DEFAULT_THEMES
|
|
|
1607
1576
|
const isWindowedHighlight = startingLine > 0 || totalLines < Infinity;
|
|
1608
1577
|
const { state, transformers } = createTransformerWithState(useTokenTransformer);
|
|
1609
1578
|
const lang = forcePlainText ? "text" : file.lang ?? getFiletypeFromFileName(file.name);
|
|
1610
|
-
const baseThemeType = typeof theme === "string" ? highlighter
|
|
1579
|
+
const baseThemeType = typeof theme === "string" ? highlighter.getTheme(theme).type : void 0;
|
|
1611
1580
|
const themeStyles = getHighlighterThemeStyles({
|
|
1612
1581
|
theme,
|
|
1613
|
-
highlighter
|
|
1582
|
+
highlighter
|
|
1614
1583
|
});
|
|
1615
1584
|
state.lineInfo = (shikiLineNumber) => ({
|
|
1616
1585
|
type: "context",
|
|
@@ -1637,7 +1606,7 @@ function renderFileWithHighlighter(file, highlighter$1, { theme = DEFAULT_THEMES
|
|
|
1637
1606
|
tokenizeTimeLimit: 0
|
|
1638
1607
|
};
|
|
1639
1608
|
})();
|
|
1640
|
-
const highlightedLines = getLineNodes(highlighter
|
|
1609
|
+
const highlightedLines = getLineNodes(highlighter.codeToHast(isWindowedHighlight ? extractWindowedFileContent(lines ?? linesFromFileContents(file.contents), startingLine, totalLines) : file.contents, hastConfig));
|
|
1641
1610
|
const code = isWindowedHighlight ? new Array(startingLine) : highlightedLines;
|
|
1642
1611
|
if (isWindowedHighlight) code.push(...highlightedLines);
|
|
1643
1612
|
return {
|
|
@@ -1651,7 +1620,6 @@ function extractWindowedFileContent(lines, startingLine, totalLines) {
|
|
|
1651
1620
|
const endLine = Math.min(startingLine + totalLines, lines.length);
|
|
1652
1621
|
return lines.slice(startingLine, endLine).join("");
|
|
1653
1622
|
}
|
|
1654
|
-
|
|
1655
1623
|
//#endregion
|
|
1656
1624
|
//#region src/worker/worker.ts
|
|
1657
1625
|
let highlighter;
|
|
@@ -1693,15 +1661,15 @@ async function handleMessage(request) {
|
|
|
1693
1661
|
EMPTY_REGEXP.exec("");
|
|
1694
1662
|
}
|
|
1695
1663
|
}
|
|
1696
|
-
async function handleInitialize({ id, renderOptions: options, preferredHighlighter, resolvedThemes, resolvedLanguages, customExtensionsVersion
|
|
1697
|
-
let highlighter
|
|
1698
|
-
if ("then" in highlighter
|
|
1664
|
+
async function handleInitialize({ id, renderOptions: options, preferredHighlighter, resolvedThemes, resolvedLanguages, customExtensionsVersion, customExtensionMap }) {
|
|
1665
|
+
let highlighter = getHighlighter(preferredHighlighter);
|
|
1666
|
+
if ("then" in highlighter) highlighter = await highlighter;
|
|
1699
1667
|
syncCustomExtensionsFromRequest({
|
|
1700
|
-
customExtensionsVersion
|
|
1668
|
+
customExtensionsVersion,
|
|
1701
1669
|
customExtensionMap
|
|
1702
1670
|
});
|
|
1703
|
-
attachResolvedThemes(resolvedThemes, highlighter
|
|
1704
|
-
if (resolvedLanguages != null) attachResolvedLanguages(resolvedLanguages, highlighter
|
|
1671
|
+
attachResolvedThemes(resolvedThemes, highlighter);
|
|
1672
|
+
if (resolvedLanguages != null) attachResolvedLanguages(resolvedLanguages, highlighter);
|
|
1705
1673
|
renderOptions = options;
|
|
1706
1674
|
postMessage({
|
|
1707
1675
|
type: "success",
|
|
@@ -1711,9 +1679,9 @@ async function handleInitialize({ id, renderOptions: options, preferredHighlight
|
|
|
1711
1679
|
});
|
|
1712
1680
|
}
|
|
1713
1681
|
async function handleSetRenderOptions({ id, renderOptions: options, resolvedThemes }) {
|
|
1714
|
-
let highlighter
|
|
1715
|
-
if ("then" in highlighter
|
|
1716
|
-
attachResolvedThemes(resolvedThemes, highlighter
|
|
1682
|
+
let highlighter = getHighlighter();
|
|
1683
|
+
if ("then" in highlighter) highlighter = await highlighter;
|
|
1684
|
+
attachResolvedThemes(resolvedThemes, highlighter);
|
|
1717
1685
|
renderOptions = options;
|
|
1718
1686
|
postMessage({
|
|
1719
1687
|
type: "success",
|
|
@@ -1722,30 +1690,30 @@ async function handleSetRenderOptions({ id, renderOptions: options, resolvedThem
|
|
|
1722
1690
|
sentAt: Date.now()
|
|
1723
1691
|
});
|
|
1724
1692
|
}
|
|
1725
|
-
async function handleRenderFile({ id, file, resolvedLanguages, customExtensionsVersion
|
|
1726
|
-
let highlighter
|
|
1727
|
-
if ("then" in highlighter
|
|
1693
|
+
async function handleRenderFile({ id, file, resolvedLanguages, customExtensionsVersion, customExtensionMap }) {
|
|
1694
|
+
let highlighter = getHighlighter();
|
|
1695
|
+
if ("then" in highlighter) highlighter = await highlighter;
|
|
1728
1696
|
syncCustomExtensionsFromRequest({
|
|
1729
|
-
customExtensionsVersion
|
|
1697
|
+
customExtensionsVersion,
|
|
1730
1698
|
customExtensionMap
|
|
1731
1699
|
});
|
|
1732
|
-
if (resolvedLanguages != null) attachResolvedLanguages(resolvedLanguages, highlighter
|
|
1700
|
+
if (resolvedLanguages != null) attachResolvedLanguages(resolvedLanguages, highlighter);
|
|
1733
1701
|
const fileOptions = {
|
|
1734
1702
|
theme: renderOptions.theme,
|
|
1735
1703
|
useTokenTransformer: renderOptions.useTokenTransformer,
|
|
1736
1704
|
tokenizeMaxLineLength: renderOptions.tokenizeMaxLineLength
|
|
1737
1705
|
};
|
|
1738
|
-
sendFileSuccess(id, renderFileWithHighlighter(file, highlighter
|
|
1706
|
+
sendFileSuccess(id, renderFileWithHighlighter(file, highlighter, fileOptions), fileOptions);
|
|
1739
1707
|
}
|
|
1740
|
-
async function handleRenderDiff({ id, diff, resolvedLanguages, customExtensionsVersion
|
|
1741
|
-
let highlighter
|
|
1742
|
-
if ("then" in highlighter
|
|
1708
|
+
async function handleRenderDiff({ id, diff, resolvedLanguages, customExtensionsVersion, customExtensionMap }) {
|
|
1709
|
+
let highlighter = getHighlighter();
|
|
1710
|
+
if ("then" in highlighter) highlighter = await highlighter;
|
|
1743
1711
|
syncCustomExtensionsFromRequest({
|
|
1744
|
-
customExtensionsVersion
|
|
1712
|
+
customExtensionsVersion,
|
|
1745
1713
|
customExtensionMap
|
|
1746
1714
|
});
|
|
1747
|
-
if (resolvedLanguages != null) attachResolvedLanguages(resolvedLanguages, highlighter
|
|
1748
|
-
sendDiffSuccess(id, renderDiffWithHighlighter(diff, highlighter
|
|
1715
|
+
if (resolvedLanguages != null) attachResolvedLanguages(resolvedLanguages, highlighter);
|
|
1716
|
+
sendDiffSuccess(id, renderDiffWithHighlighter(diff, highlighter, renderOptions), renderOptions);
|
|
1749
1717
|
}
|
|
1750
1718
|
function getHighlighter(preferredHighlighter = "shiki-js") {
|
|
1751
1719
|
highlighter ??= createHighlighterCore({
|
|
@@ -1755,10 +1723,10 @@ function getHighlighter(preferredHighlighter = "shiki-js") {
|
|
|
1755
1723
|
});
|
|
1756
1724
|
return highlighter;
|
|
1757
1725
|
}
|
|
1758
|
-
function syncCustomExtensionsFromRequest({ customExtensionsVersion
|
|
1759
|
-
if (customExtensionsVersion
|
|
1760
|
-
if (customExtensionsVersion
|
|
1761
|
-
replaceCustomExtensions(customExtensionsVersion
|
|
1726
|
+
function syncCustomExtensionsFromRequest({ customExtensionsVersion, customExtensionMap }) {
|
|
1727
|
+
if (customExtensionsVersion == null && customExtensionMap == null) return;
|
|
1728
|
+
if (customExtensionsVersion == null || customExtensionMap == null) throw new Error("Worker request must include both customExtensionsVersion and customExtensionMap");
|
|
1729
|
+
replaceCustomExtensions(customExtensionsVersion, customExtensionMap);
|
|
1762
1730
|
}
|
|
1763
1731
|
function sendFileSuccess(id, result, options) {
|
|
1764
1732
|
postMessage({
|
|
@@ -1789,6 +1757,6 @@ function sendError(id, error) {
|
|
|
1789
1757
|
};
|
|
1790
1758
|
postMessage(response);
|
|
1791
1759
|
}
|
|
1792
|
-
|
|
1793
1760
|
//#endregion
|
|
1761
|
+
|
|
1794
1762
|
//# sourceMappingURL=worker.js.map
|