@pierre/diffs 1.4.0 → 1.4.2
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/dist/components/CodeView.d.ts +6 -4
- package/dist/components/CodeView.d.ts.map +1 -1
- package/dist/components/CodeView.js +44 -7
- package/dist/components/CodeView.js.map +1 -1
- package/dist/components/File.d.ts +10 -18
- package/dist/components/File.d.ts.map +1 -1
- package/dist/components/File.js +70 -53
- package/dist/components/File.js.map +1 -1
- package/dist/components/FileDiff.d.ts +16 -40
- package/dist/components/FileDiff.d.ts.map +1 -1
- package/dist/components/FileDiff.js +94 -61
- package/dist/components/FileDiff.js.map +1 -1
- package/dist/components/FileStream.d.ts +1 -0
- package/dist/components/FileStream.d.ts.map +1 -1
- package/dist/components/FileStream.js +1 -1
- package/dist/components/UnresolvedFile.d.ts +1 -1
- package/dist/components/UnresolvedFile.d.ts.map +1 -1
- package/dist/components/UnresolvedFile.js +2 -1
- package/dist/components/UnresolvedFile.js.map +1 -1
- package/dist/components/VirtualizedFile.d.ts +3 -8
- package/dist/components/VirtualizedFile.d.ts.map +1 -1
- package/dist/components/VirtualizedFile.js +19 -17
- package/dist/components/VirtualizedFile.js.map +1 -1
- package/dist/components/VirtualizedFileDiff.d.ts +3 -8
- package/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
- package/dist/components/VirtualizedFileDiff.js +19 -17
- package/dist/components/VirtualizedFileDiff.js.map +1 -1
- package/dist/components/Virtualizer.d.ts +1 -5
- package/dist/components/Virtualizer.d.ts.map +1 -1
- package/dist/components/Virtualizer.js.map +1 -1
- package/dist/components/VirtulizerDevelopment.d.ts +0 -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 -1
- package/dist/components/web-components.js.map +1 -1
- package/dist/constants.d.ts +0 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/editor/EditStateManager.d.ts +0 -1
- package/dist/editor/EditStateManager.d.ts.map +1 -1
- package/dist/editor/EditStateManager.js.map +1 -1
- package/dist/editor/cloneRetainedDiffSessionSnapshot.d.ts +0 -1
- package/dist/editor/cloneRetainedDiffSessionSnapshot.d.ts.map +1 -1
- package/dist/editor/command.d.ts +2 -1
- package/dist/editor/command.d.ts.map +1 -1
- package/dist/editor/editPrediction.d.ts +3 -2
- package/dist/editor/editPrediction.d.ts.map +1 -1
- package/dist/editor/editPrediction.js +11 -11
- package/dist/editor/editPrediction.js.map +1 -1
- package/dist/editor/editStack.d.ts +0 -1
- package/dist/editor/editStack.d.ts.map +1 -1
- package/dist/editor/editStack.js.map +1 -1
- package/dist/editor/editor.d.ts +2 -6
- package/dist/editor/editor.d.ts.map +1 -1
- package/dist/editor/editor.js +32 -23
- package/dist/editor/editor.js.map +1 -1
- package/dist/editor/editor2.js.map +1 -1
- package/dist/editor/languages.d.ts +0 -1
- package/dist/editor/languages.d.ts.map +1 -1
- package/dist/editor/languages.js +1 -1
- package/dist/editor/languages.js.map +1 -1
- package/dist/editor/lineAnnotations.d.ts +0 -1
- package/dist/editor/lineAnnotations.d.ts.map +1 -1
- package/dist/editor/lineAnnotations.js +2 -1
- package/dist/editor/lineAnnotations.js.map +1 -1
- package/dist/editor/marker.d.ts +0 -1
- package/dist/editor/marker.d.ts.map +1 -1
- package/dist/editor/marker.js +5 -3
- package/dist/editor/marker.js.map +1 -1
- package/dist/editor/matchBrackets.d.ts +0 -1
- package/dist/editor/matchBrackets.d.ts.map +1 -1
- package/dist/editor/pieceTable.d.ts +0 -1
- package/dist/editor/pieceTable.d.ts.map +1 -1
- package/dist/editor/pieceTable.js.map +1 -1
- package/dist/editor/platform.d.ts +1 -5
- package/dist/editor/platform.d.ts.map +1 -1
- package/dist/editor/platform.js.map +1 -1
- package/dist/editor/popover.d.ts +12 -12
- package/dist/editor/popover.d.ts.map +1 -1
- package/dist/editor/popover.js.map +1 -1
- package/dist/editor/searchPanel.d.ts +0 -1
- package/dist/editor/searchPanel.d.ts.map +1 -1
- package/dist/editor/searchPanel.js +16 -12
- package/dist/editor/searchPanel.js.map +1 -1
- package/dist/editor/selection.d.ts +0 -1
- package/dist/editor/selection.d.ts.map +1 -1
- package/dist/editor/selection.js.map +1 -1
- package/dist/editor/selectionAction.d.ts +0 -1
- package/dist/editor/selectionAction.d.ts.map +1 -1
- package/dist/editor/selectionAction.js.map +1 -1
- package/dist/editor/sprite.d.ts.map +1 -1
- package/dist/editor/textDocument.d.ts +0 -1
- package/dist/editor/textDocument.d.ts.map +1 -1
- package/dist/editor/textDocument.js.map +1 -1
- package/dist/editor/textDocumentChangeTransaction.d.ts +0 -1
- package/dist/editor/textDocumentChangeTransaction.d.ts.map +1 -1
- package/dist/editor/textMeasure.d.ts.map +1 -1
- package/dist/editor/textMeasure.js.map +1 -1
- package/dist/editor/tokenizer.d.ts +1 -11
- package/dist/editor/tokenizer.d.ts.map +1 -1
- package/dist/editor/tokenizer.js +8 -4
- package/dist/editor/tokenizer.js.map +1 -1
- package/dist/editor/types.d.ts +0 -1
- package/dist/editor/types.d.ts.map +1 -1
- package/dist/editor/utils.d.ts.map +1 -1
- package/dist/editor/utils.js +11 -7
- package/dist/editor/utils.js.map +1 -1
- package/dist/highlighter/languages/areLanguagesAttached.d.ts +0 -1
- package/dist/highlighter/languages/areLanguagesAttached.d.ts.map +1 -1
- package/dist/highlighter/languages/attachResolvedLanguages.d.ts +1 -0
- package/dist/highlighter/languages/attachResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/cleanUpResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/constants.d.ts +1 -1
- package/dist/highlighter/languages/constants.d.ts.map +1 -1
- package/dist/highlighter/languages/getResolvedLanguages.d.ts +1 -0
- package/dist/highlighter/languages/getResolvedLanguages.d.ts.map +1 -1
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts +1 -0
- package/dist/highlighter/languages/getResolvedOrResolveLanguage.d.ts.map +1 -1
- package/dist/highlighter/languages/hasResolvedLanguages.d.ts +0 -1
- package/dist/highlighter/languages/hasResolvedLanguages.d.ts.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/resolveLanguage.d.ts +1 -0
- package/dist/highlighter/languages/resolveLanguage.d.ts.map +1 -1
- package/dist/highlighter/languages/resolveLanguages.d.ts +1 -0
- package/dist/highlighter/languages/resolveLanguages.d.ts.map +1 -1
- package/dist/highlighter/shared_highlighter.d.ts +7 -8
- package/dist/highlighter/shared_highlighter.d.ts.map +1 -1
- package/dist/highlighter/shared_highlighter.js +7 -3
- package/dist/highlighter/shared_highlighter.js.map +1 -1
- package/dist/highlighter/themes/areThemesAttached.d.ts +0 -1
- package/dist/highlighter/themes/areThemesAttached.d.ts.map +1 -1
- package/dist/highlighter/themes/areThemesAttached.js +1 -1
- package/dist/highlighter/themes/attachResolvedThemes.d.ts +0 -1
- package/dist/highlighter/themes/attachResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/cleanUpResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/constants.d.ts.map +1 -1
- package/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts +0 -1
- package/dist/highlighter/themes/getResolvedOrResolveTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/getResolvedThemes.d.ts +0 -1
- package/dist/highlighter/themes/getResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/hasResolvedThemes.d.ts +0 -1
- package/dist/highlighter/themes/hasResolvedThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/registerCustomCSSVariableTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/registerCustomTheme.d.ts +0 -1
- package/dist/highlighter/themes/registerCustomTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/resolveTheme.d.ts +0 -1
- package/dist/highlighter/themes/resolveTheme.d.ts.map +1 -1
- package/dist/highlighter/themes/resolveThemes.d.ts +0 -1
- package/dist/highlighter/themes/resolveThemes.d.ts.map +1 -1
- package/dist/highlighter/themes/themeResolution.d.ts +0 -1
- package/dist/highlighter/themes/themeResolution.d.ts.map +1 -1
- package/dist/highlighter/themes/themeResolver.d.ts +0 -1
- package/dist/highlighter/themes/themeResolver.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +13 -13
- package/dist/managers/InteractionManager.d.ts +2 -26
- package/dist/managers/InteractionManager.d.ts.map +1 -1
- package/dist/managers/InteractionManager.js +1 -3
- package/dist/managers/InteractionManager.js.map +1 -1
- package/dist/managers/ResizeManager.d.ts +1 -4
- package/dist/managers/ResizeManager.d.ts.map +1 -1
- package/dist/managers/ScrollSyncManager.d.ts.map +1 -1
- package/dist/managers/UniversalRenderingManager.d.ts.map +1 -1
- package/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts +0 -1
- package/dist/node_modules/.pnpm/@types_hast@3.0.4/node_modules/@types/hast/index.d.ts.map +1 -1
- package/dist/node_modules/.pnpm/@types_unist@3.0.3/node_modules/@types/unist/index.d.ts.map +1 -1
- package/dist/react/CodeView.d.ts +9 -1
- package/dist/react/CodeView.d.ts.map +1 -1
- package/dist/react/CodeView.js +39 -33
- package/dist/react/CodeView.js.map +1 -1
- package/dist/react/EditContext.d.ts +2 -5
- package/dist/react/EditContext.d.ts.map +1 -1
- package/dist/react/File.d.ts +1 -23
- package/dist/react/File.d.ts.map +1 -1
- package/dist/react/File.js +13 -12
- package/dist/react/File.js.map +1 -1
- package/dist/react/FileDiff.d.ts +1 -23
- package/dist/react/FileDiff.d.ts.map +1 -1
- package/dist/react/FileDiff.js +13 -12
- package/dist/react/FileDiff.js.map +1 -1
- package/dist/react/MultiFileDiff.d.ts +1 -24
- package/dist/react/MultiFileDiff.d.ts.map +1 -1
- package/dist/react/MultiFileDiff.js +13 -12
- package/dist/react/MultiFileDiff.js.map +1 -1
- package/dist/react/PatchDiff.d.ts +1 -23
- package/dist/react/PatchDiff.d.ts.map +1 -1
- package/dist/react/PatchDiff.js +13 -12
- package/dist/react/PatchDiff.js.map +1 -1
- package/dist/react/UnresolvedFile.d.ts +1 -18
- package/dist/react/UnresolvedFile.d.ts.map +1 -1
- package/dist/react/UnresolvedFile.js +15 -14
- package/dist/react/UnresolvedFile.js.map +1 -1
- package/dist/react/Virtualizer.d.ts +1 -9
- package/dist/react/Virtualizer.d.ts.map +1 -1
- package/dist/react/Virtualizer.js.map +1 -1
- package/dist/react/WorkerPoolContext.d.ts +2 -6
- package/dist/react/WorkerPoolContext.d.ts.map +1 -1
- package/dist/react/constants.d.ts +0 -1
- package/dist/react/constants.d.ts.map +1 -1
- package/dist/react/jsx.d.ts +1 -0
- package/dist/react/jsx.d.ts.map +1 -1
- package/dist/react/types.d.ts +1 -1
- package/dist/react/types.d.ts.map +1 -1
- package/dist/react/utils/assignRef.d.ts +6 -0
- package/dist/react/utils/assignRef.d.ts.map +1 -0
- package/dist/react/utils/assignRef.js +9 -0
- package/dist/react/utils/assignRef.js.map +1 -0
- package/dist/react/utils/renderDiffChildren.d.ts +1 -16
- package/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.js.map +1 -1
- package/dist/react/utils/renderFileChildren.d.ts +1 -13
- package/dist/react/utils/renderFileChildren.d.ts.map +1 -1
- package/dist/react/utils/renderFileChildren.js.map +1 -1
- package/dist/react/utils/templateRender.d.ts +0 -1
- package/dist/react/utils/templateRender.d.ts.map +1 -1
- package/dist/react/utils/useFileDiffInstance.d.ts +2 -18
- package/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileDiffInstance.js +31 -17
- package/dist/react/utils/useFileDiffInstance.js.map +1 -1
- package/dist/react/utils/useFileInstance.d.ts +2 -16
- package/dist/react/utils/useFileInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileInstance.js +8 -4
- package/dist/react/utils/useFileInstance.js.map +1 -1
- package/dist/react/utils/useStableCallback.d.ts.map +1 -1
- package/dist/react/utils/useUnresolvedFileInstance.d.ts +1 -12
- package/dist/react/utils/useUnresolvedFileInstance.d.ts.map +1 -1
- package/dist/renderers/DiffHunksRenderer.d.ts +5 -10
- package/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/DiffHunksRenderer.js +36 -30
- package/dist/renderers/DiffHunksRenderer.js.map +1 -1
- package/dist/renderers/FileRenderer.d.ts +2 -1
- package/dist/renderers/FileRenderer.d.ts.map +1 -1
- package/dist/renderers/FileRenderer.js +5 -5
- package/dist/renderers/FileRenderer.js.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts +3 -9
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/shiki-stream/tokenizer.d.ts +0 -1
- package/dist/shiki-stream/tokenizer.d.ts.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/ssr/FileDiffReact.d.ts +1 -8
- package/dist/ssr/FileDiffReact.d.ts.map +1 -1
- package/dist/ssr/FileDiffReact.js +8 -3
- package/dist/ssr/FileDiffReact.js.map +1 -1
- package/dist/ssr/preloadDiffs.d.ts +6 -34
- package/dist/ssr/preloadDiffs.d.ts.map +1 -1
- package/dist/ssr/preloadFile.d.ts +1 -6
- package/dist/ssr/preloadFile.d.ts.map +1 -1
- package/dist/ssr/preloadPatchFile.d.ts +1 -5
- package/dist/ssr/preloadPatchFile.d.ts.map +1 -1
- package/dist/ssr/renderHTML.d.ts +0 -1
- package/dist/ssr/renderHTML.d.ts.map +1 -1
- package/dist/string-import.d.ts.map +1 -1
- package/dist/style.js.map +1 -1
- package/dist/types.d.ts +0 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/annotationHelpers.d.ts +0 -1
- package/dist/utils/annotationHelpers.d.ts.map +1 -1
- package/dist/utils/appendItems.d.ts.map +1 -1
- package/dist/utils/applyLineTextWithNewline.d.ts.map +1 -1
- package/dist/utils/areDiffLineAnnotationsEqual.d.ts +0 -1
- package/dist/utils/areDiffLineAnnotationsEqual.d.ts.map +1 -1
- package/dist/utils/areDiffRenderOptionsEqual.d.ts +0 -1
- package/dist/utils/areDiffRenderOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areDiffTargetsEqual.d.ts +0 -1
- package/dist/utils/areDiffTargetsEqual.d.ts.map +1 -1
- package/dist/utils/areFileRenderOptionsEqual.d.ts +0 -1
- package/dist/utils/areFileRenderOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areFileTargetsEqual.d.ts +0 -1
- package/dist/utils/areFileTargetsEqual.d.ts.map +1 -1
- package/dist/utils/areFilesEqual.d.ts +0 -1
- package/dist/utils/areFilesEqual.d.ts.map +1 -1
- package/dist/utils/areHunkDataEqual.d.ts +0 -1
- package/dist/utils/areHunkDataEqual.d.ts.map +1 -1
- package/dist/utils/areLineAnnotationsEqual.d.ts +0 -1
- package/dist/utils/areLineAnnotationsEqual.d.ts.map +1 -1
- package/dist/utils/areManagedSnapshotsEqual.d.ts +0 -1
- package/dist/utils/areManagedSnapshotsEqual.d.ts.map +1 -1
- package/dist/utils/areMergeConflictActionsEqual.d.ts +0 -1
- package/dist/utils/areMergeConflictActionsEqual.d.ts.map +1 -1
- package/dist/utils/areObjectsEqual.d.ts.map +1 -1
- package/dist/utils/areOptionsEqual.d.ts +1 -0
- package/dist/utils/areOptionsEqual.d.ts.map +1 -1
- package/dist/utils/arePrePropertiesEqual.d.ts +0 -1
- package/dist/utils/arePrePropertiesEqual.d.ts.map +1 -1
- package/dist/utils/areRenderRangesEqual.d.ts +0 -1
- package/dist/utils/areRenderRangesEqual.d.ts.map +1 -1
- package/dist/utils/areSelectionPointsEqual.d.ts +0 -1
- package/dist/utils/areSelectionPointsEqual.d.ts.map +1 -1
- package/dist/utils/areSelectionsEqual.d.ts +0 -1
- package/dist/utils/areSelectionsEqual.d.ts.map +1 -1
- package/dist/utils/areThemesEqual.d.ts +0 -1
- package/dist/utils/areThemesEqual.d.ts.map +1 -1
- package/dist/utils/areVirtualWindowSpecsEqual.d.ts +0 -1
- package/dist/utils/areVirtualWindowSpecsEqual.d.ts.map +1 -1
- package/dist/utils/areWorkerStatsEqual.d.ts +1 -0
- package/dist/utils/areWorkerStatsEqual.d.ts.map +1 -1
- package/dist/utils/awaitWithTimeout.d.ts.map +1 -1
- package/dist/utils/cleanLastNewline.d.ts.map +1 -1
- package/dist/utils/cloneFileDiffMetadata.d.ts +0 -1
- package/dist/utils/cloneFileDiffMetadata.d.ts.map +1 -1
- package/dist/utils/composeCacheKey.d.ts.map +1 -1
- package/dist/utils/computeEstimatedDiffHeights.d.ts +1 -11
- package/dist/utils/computeEstimatedDiffHeights.d.ts.map +1 -1
- package/dist/utils/computeFileOffsets.d.ts.map +1 -1
- package/dist/utils/computeFileOffsets.js +9 -8
- package/dist/utils/computeFileOffsets.js.map +1 -1
- package/dist/utils/computeVirtualFileMetrics.d.ts +0 -1
- package/dist/utils/computeVirtualFileMetrics.d.ts.map +1 -1
- package/dist/utils/createAnnotationElement.d.ts +0 -1
- package/dist/utils/createAnnotationElement.d.ts.map +1 -1
- package/dist/utils/createAnnotationWrapperNode.d.ts.map +1 -1
- package/dist/utils/createCodeViewHeaderFooterHostElement.d.ts.map +1 -1
- package/dist/utils/createContentColumn.d.ts +0 -1
- package/dist/utils/createContentColumn.d.ts.map +1 -1
- package/dist/utils/createEmptyRowBuffer.d.ts +0 -1
- package/dist/utils/createEmptyRowBuffer.d.ts.map +1 -1
- package/dist/utils/createFileHeaderElement.d.ts +1 -6
- package/dist/utils/createFileHeaderElement.d.ts.map +1 -1
- package/dist/utils/createGutterUtilityContentNode.d.ts.map +1 -1
- package/dist/utils/createGutterUtilityElement.d.ts +0 -1
- package/dist/utils/createGutterUtilityElement.d.ts.map +1 -1
- package/dist/utils/createNoNewlineElement.d.ts +0 -1
- package/dist/utils/createNoNewlineElement.d.ts.map +1 -1
- package/dist/utils/createPreElement.d.ts +1 -11
- package/dist/utils/createPreElement.d.ts.map +1 -1
- package/dist/utils/createRowNodes.d.ts.map +1 -1
- package/dist/utils/createSeparator.d.ts +1 -10
- package/dist/utils/createSeparator.d.ts.map +1 -1
- package/dist/utils/createSeparator.js +12 -10
- package/dist/utils/createSeparator.js.map +1 -1
- package/dist/utils/createSpanNodeFromToken.d.ts +0 -1
- package/dist/utils/createSpanNodeFromToken.d.ts.map +1 -1
- package/dist/utils/createSpanNodeFromToken.js +2 -1
- package/dist/utils/createSpanNodeFromToken.js.map +1 -1
- package/dist/utils/createStyleElement.d.ts +0 -1
- package/dist/utils/createStyleElement.d.ts.map +1 -1
- package/dist/utils/createTransformerWithState.d.ts +0 -1
- package/dist/utils/createTransformerWithState.d.ts.map +1 -1
- package/dist/utils/createUnsafeCSSStyleNode.d.ts.map +1 -1
- package/dist/utils/createWindowFromScrollPosition.d.ts +1 -9
- package/dist/utils/createWindowFromScrollPosition.d.ts.map +1 -1
- package/dist/utils/cssWrappers.d.ts +0 -1
- package/dist/utils/cssWrappers.d.ts.map +1 -1
- package/dist/utils/cssWrappers.js +5 -3
- package/dist/utils/cssWrappers.js.map +1 -1
- package/dist/utils/detachString.d.ts.map +1 -1
- package/dist/utils/diffAcceptRejectHunk.d.ts +0 -1
- package/dist/utils/diffAcceptRejectHunk.d.ts.map +1 -1
- package/dist/utils/editSessionAnnotations.d.ts +0 -1
- package/dist/utils/editSessionAnnotations.d.ts.map +1 -1
- package/dist/utils/editSessionHunks.d.ts +0 -1
- package/dist/utils/editSessionHunks.d.ts.map +1 -1
- package/dist/utils/formatCSSVariablePrefix.d.ts.map +1 -1
- package/dist/utils/getDiffFileInput.d.ts +1 -5
- package/dist/utils/getDiffFileInput.d.ts.map +1 -1
- package/dist/utils/getDiffHunksRendererOptions.d.ts +0 -1
- package/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -1
- package/dist/utils/getFileRendererOptions.d.ts +0 -1
- package/dist/utils/getFileRendererOptions.d.ts.map +1 -1
- package/dist/utils/getFiletypeFromFileName.d.ts +0 -1
- package/dist/utils/getFiletypeFromFileName.d.ts.map +1 -1
- package/dist/utils/getFiletypeFromFileName.js.map +1 -1
- package/dist/utils/getHighlighterOptions.d.ts +1 -5
- package/dist/utils/getHighlighterOptions.d.ts.map +1 -1
- package/dist/utils/getHighlighterOptions.js +1 -1
- package/dist/utils/getHighlighterOptions.js.map +1 -1
- package/dist/utils/getHighlighterThemeStyles.d.ts +1 -6
- package/dist/utils/getHighlighterThemeStyles.d.ts.map +1 -1
- package/dist/utils/getHunkSeparatorSlotName.d.ts +0 -1
- package/dist/utils/getHunkSeparatorSlotName.d.ts.map +1 -1
- package/dist/utils/getHunkSideBoundaries.d.ts.map +1 -1
- package/dist/utils/getIconForType.d.ts +0 -1
- package/dist/utils/getIconForType.d.ts.map +1 -1
- package/dist/utils/getLineAnnotationName.d.ts +0 -1
- package/dist/utils/getLineAnnotationName.d.ts.map +1 -1
- package/dist/utils/getLineEndingType.d.ts.map +1 -1
- package/dist/utils/getLineNodes.d.ts +0 -1
- package/dist/utils/getLineNodes.d.ts.map +1 -1
- package/dist/utils/getMergeConflictActionSlotName.d.ts +1 -5
- package/dist/utils/getMergeConflictActionSlotName.d.ts.map +1 -1
- package/dist/utils/getMergeConflictLineTypes.d.ts +0 -1
- package/dist/utils/getMergeConflictLineTypes.d.ts.map +1 -1
- package/dist/utils/getOrCreateCodeNode.d.ts +1 -7
- package/dist/utils/getOrCreateCodeNode.d.ts.map +1 -1
- package/dist/utils/getSingularPatch.d.ts +0 -1
- package/dist/utils/getSingularPatch.d.ts.map +1 -1
- package/dist/utils/getThemes.d.ts +0 -1
- package/dist/utils/getThemes.d.ts.map +1 -1
- package/dist/utils/getTotalLineCountFromHunks.d.ts +0 -1
- package/dist/utils/getTotalLineCountFromHunks.d.ts.map +1 -1
- package/dist/utils/guardWebKitScrollDuringRebuild.d.ts.map +1 -1
- package/dist/utils/hast_utils.d.ts +2 -12
- package/dist/utils/hast_utils.d.ts.map +1 -1
- package/dist/utils/hostTheme.d.ts +1 -5
- package/dist/utils/hostTheme.d.ts.map +1 -1
- package/dist/utils/hydratePartialDiff.d.ts +0 -1
- package/dist/utils/hydratePartialDiff.d.ts.map +1 -1
- package/dist/utils/includesFileAnnotations.d.ts +0 -1
- package/dist/utils/includesFileAnnotations.d.ts.map +1 -1
- package/dist/utils/isDefaultRenderRange.d.ts +0 -1
- package/dist/utils/isDefaultRenderRange.d.ts.map +1 -1
- package/dist/utils/isDiffPlainText.d.ts +0 -1
- package/dist/utils/isDiffPlainText.d.ts.map +1 -1
- package/dist/utils/isFilePlainText.d.ts +0 -1
- package/dist/utils/isFilePlainText.d.ts.map +1 -1
- package/dist/utils/isGutterUtilityPath.d.ts.map +1 -1
- package/dist/utils/isStyleNode.d.ts.map +1 -1
- package/dist/utils/isWorkerContext.d.ts.map +1 -1
- package/dist/utils/iterateOverDiff.d.ts +1 -10
- package/dist/utils/iterateOverDiff.d.ts.map +1 -1
- package/dist/utils/iterateOverDiff.js +5 -3
- package/dist/utils/iterateOverDiff.js.map +1 -1
- package/dist/utils/lineAnnotationIdentity.d.ts +0 -1
- package/dist/utils/lineAnnotationIdentity.d.ts.map +1 -1
- package/dist/utils/normalizeDiffResolution.d.ts +0 -1
- package/dist/utils/normalizeDiffResolution.d.ts.map +1 -1
- package/dist/utils/parseDiffDecorations.d.ts +2 -13
- package/dist/utils/parseDiffDecorations.d.ts.map +1 -1
- package/dist/utils/parseDiffFromFile.d.ts +0 -1
- package/dist/utils/parseDiffFromFile.d.ts.map +1 -1
- package/dist/utils/parseDiffFromFile.js +2 -1
- package/dist/utils/parseDiffFromFile.js.map +1 -1
- package/dist/utils/parseLineType.d.ts +0 -1
- package/dist/utils/parseLineType.d.ts.map +1 -1
- package/dist/utils/parseMergeConflictDiffFromFile.d.ts +0 -1
- package/dist/utils/parseMergeConflictDiffFromFile.d.ts.map +1 -1
- package/dist/utils/parsePatchFiles.d.ts +0 -1
- package/dist/utils/parsePatchFiles.d.ts.map +1 -1
- package/dist/utils/parsePatchFiles.js +8 -5
- package/dist/utils/parsePatchFiles.js.map +1 -1
- package/dist/utils/platform.d.ts.map +1 -1
- package/dist/utils/prefersReducedMotion.d.ts.map +1 -1
- package/dist/utils/prerenderHTMLIfNecessary.d.ts.map +1 -1
- package/dist/utils/processLine.d.ts +0 -1
- package/dist/utils/processLine.d.ts.map +1 -1
- package/dist/utils/realignChangeContent.d.ts +0 -1
- package/dist/utils/realignChangeContent.d.ts.map +1 -1
- package/dist/utils/renderDiffWithHighlighter.d.ts +1 -8
- package/dist/utils/renderDiffWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderFileWithHighlighter.d.ts +1 -11
- package/dist/utils/renderFileWithHighlighter.d.ts.map +1 -1
- package/dist/utils/resolveConflict.d.ts +0 -1
- package/dist/utils/resolveConflict.d.ts.map +1 -1
- package/dist/utils/resolveRegion.d.ts +0 -1
- package/dist/utils/resolveRegion.d.ts.map +1 -1
- package/dist/utils/roundToDevicePixel.d.ts.map +1 -1
- package/dist/utils/scrollbarGutter.d.ts.map +1 -1
- package/dist/utils/scrollbarGutter.js +2 -1
- package/dist/utils/scrollbarGutter.js.map +1 -1
- package/dist/utils/setLanguageOverride.d.ts +0 -1
- package/dist/utils/setLanguageOverride.d.ts.map +1 -1
- package/dist/utils/setWrapperNodeProps.d.ts +1 -11
- package/dist/utils/setWrapperNodeProps.d.ts.map +1 -1
- package/dist/utils/setWrapperNodeProps.js +1 -3
- package/dist/utils/setWrapperNodeProps.js.map +1 -1
- package/dist/utils/shouldUseTokenTransformer.d.ts +0 -1
- package/dist/utils/shouldUseTokenTransformer.d.ts.map +1 -1
- package/dist/utils/splitFileContents.d.ts.map +1 -1
- package/dist/utils/trimPatchContext.d.ts.map +1 -1
- package/dist/utils/updateDiffHunks.d.ts +0 -1
- package/dist/utils/updateDiffHunks.d.ts.map +1 -1
- package/dist/utils/virtualDiffLayout.d.ts +10 -55
- package/dist/utils/virtualDiffLayout.d.ts.map +1 -1
- package/dist/utils/wrapTokenFragments.d.ts +0 -1
- package/dist/utils/wrapTokenFragments.d.ts.map +1 -1
- package/dist/worker/WorkerPoolManager.d.ts +2 -17
- package/dist/worker/WorkerPoolManager.d.ts.map +1 -1
- package/dist/worker/WorkerPoolManager.js +19 -7
- package/dist/worker/WorkerPoolManager.js.map +1 -1
- package/dist/worker/getOrCreateWorkerPoolSingleton.d.ts +1 -5
- package/dist/worker/getOrCreateWorkerPoolSingleton.d.ts.map +1 -1
- package/dist/worker/types.d.ts +0 -1
- package/dist/worker/types.d.ts.map +1 -1
- package/dist/worker/worker-portable.d.ts +1 -1
- package/dist/worker/worker-portable.js +113 -354
- package/dist/worker/worker-portable.js.map +1 -1
- package/dist/worker/worker.d.ts +1 -1
- package/dist/worker/worker.js +14 -11
- package/dist/worker/worker.js.map +1 -1
- package/package.json +4 -5
|
@@ -4,9 +4,9 @@ import { TextDocument } from "../editor/textDocument.js";
|
|
|
4
4
|
import { GetHoveredLineResult, InteractionManager, InteractionManagerBaseOptions, SelectionWriteOptions } from "../managers/InteractionManager.js";
|
|
5
5
|
import { ResizeManager } from "../managers/ResizeManager.js";
|
|
6
6
|
import { WorkerPoolManager } from "../worker/WorkerPoolManager.js";
|
|
7
|
+
import "../worker/index.js";
|
|
7
8
|
import { FileRenderer } from "../renderers/FileRenderer.js";
|
|
8
9
|
import { Editor } from "../editor/editor.js";
|
|
9
|
-
|
|
10
10
|
//#region src/components/File.d.ts
|
|
11
11
|
interface FileRenderProps<LAnnotation> {
|
|
12
12
|
file: FileContents;
|
|
@@ -108,9 +108,7 @@ declare class File<LAnnotation = undefined, Caret = undefined> {
|
|
|
108
108
|
protected lineAnnotations: LineAnnotation<LAnnotation>[];
|
|
109
109
|
protected managersDirty: boolean;
|
|
110
110
|
file: FileContents | undefined;
|
|
111
|
-
private
|
|
112
|
-
private editSessionAnnotations;
|
|
113
|
-
private outgoingSessionFile;
|
|
111
|
+
private editSession;
|
|
114
112
|
protected renderedFile: FileContents | undefined;
|
|
115
113
|
protected renderRange: RenderRange | undefined;
|
|
116
114
|
protected enabled: boolean;
|
|
@@ -119,6 +117,7 @@ declare class File<LAnnotation = undefined, Caret = undefined> {
|
|
|
119
117
|
getAnnotationSlotName: (annotation: LineAnnotation<LAnnotation> | DiffLineAnnotation<LAnnotation>) => string;
|
|
120
118
|
private handleHighlightRender;
|
|
121
119
|
rerender(): void;
|
|
120
|
+
private getTheme;
|
|
122
121
|
protected getLatestFile(file?: FileContents | undefined): FileContents | undefined;
|
|
123
122
|
protected getRenderedFile(): FileContents | undefined;
|
|
124
123
|
protected getLatestAnnotations(): LineAnnotation<LAnnotation>[];
|
|
@@ -146,13 +145,14 @@ declare class File<LAnnotation = undefined, Caret = undefined> {
|
|
|
146
145
|
virtualizedSetup(): void;
|
|
147
146
|
hydrate(props: FileHydrateProps<LAnnotation>): void;
|
|
148
147
|
protected hydrateElements(fileContainer: HTMLElement, prerenderedHTML: string | undefined): void;
|
|
149
|
-
protected hydrationSetup({
|
|
150
|
-
file,
|
|
151
|
-
lineAnnotations
|
|
152
|
-
}: HydrationSetup<LAnnotation>): void;
|
|
148
|
+
protected hydrationSetup({ file, lineAnnotations }: HydrationSetup<LAnnotation>): void;
|
|
153
149
|
getOrCreateLineCache(file?: FileContents | undefined): string[];
|
|
154
150
|
protected updateBuffers(renderRange: RenderRange): void;
|
|
155
151
|
private syncRenderViewToEditor;
|
|
152
|
+
/** @internal The editor applied or edited past the pending external replacement. */
|
|
153
|
+
__acknowledgeDocumentUpdate(): void;
|
|
154
|
+
/** @internal Settle annotations */
|
|
155
|
+
__acceptEditorChange(event: EditorChangeEvent<'file', LAnnotation, Caret>): void;
|
|
156
156
|
emitEditChange(event: EditorChangeEvent<'file', LAnnotation, Caret>): void;
|
|
157
157
|
/** @internal Plain files have no component-owned diff session state. */
|
|
158
158
|
__captureDocumentSessionState(): undefined;
|
|
@@ -181,16 +181,8 @@ declare class File<LAnnotation = undefined, Caret = undefined> {
|
|
|
181
181
|
updateRenderCache(dirtyLines: Map<number, Array<HighlightedToken>>, themeType: 'dark' | 'light', options?: {
|
|
182
182
|
lineCountChangeInFlight?: boolean;
|
|
183
183
|
}): void;
|
|
184
|
-
render({
|
|
185
|
-
|
|
186
|
-
fileContainer,
|
|
187
|
-
forceRender,
|
|
188
|
-
preventEmit,
|
|
189
|
-
containerWrapper,
|
|
190
|
-
deferManagers,
|
|
191
|
-
lineAnnotations,
|
|
192
|
-
renderRange
|
|
193
|
-
}: FileRenderProps<LAnnotation>): boolean;
|
|
184
|
+
render({ file, fileContainer, forceRender, preventEmit, containerWrapper, deferManagers, lineAnnotations, renderRange }: FileRenderProps<LAnnotation>): boolean;
|
|
185
|
+
protected finalizeRender(): void;
|
|
194
186
|
private emitPostRender;
|
|
195
187
|
private removeRenderedCode;
|
|
196
188
|
private clearAuxiliaryNodes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"File.d.ts","names":[],"sources":["../../src/components/File.ts"],"mappings":";;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"File.d.ts","names":[],"sources":["../../src/components/File.ts"],"mappings":"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"}
|
package/dist/components/File.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { CUSTOM_HEADER_SLOT_ID, DEFAULT_THEMES, EMPTY_RENDER_RANGE, HEADER_FILENAME_SUFFIX_SLOT_ID, HEADER_METADATA_SLOT_ID, HEADER_PREFIX_SLOT_ID } from "../constants.js";
|
|
2
|
+
import { getThemes } from "../utils/getThemes.js";
|
|
3
|
+
import { getHighlighterIfLoaded, getSharedHighlighter } from "../highlighter/shared_highlighter.js";
|
|
2
4
|
import { areThemesEqual } from "../utils/areThemesEqual.js";
|
|
3
5
|
import { isStyleNode } from "../utils/isStyleNode.js";
|
|
4
6
|
import { areFileTargetsEqual } from "../utils/areFileTargetsEqual.js";
|
|
@@ -34,11 +36,6 @@ function createEditSessionFile(file) {
|
|
|
34
36
|
delete editSessionFile.cacheKey;
|
|
35
37
|
return editSessionFile;
|
|
36
38
|
}
|
|
37
|
-
function shouldResetUndoState(previousFile, nextFile) {
|
|
38
|
-
const previousLanguage = previousFile.lang ?? getFiletypeFromFileName(previousFile.name);
|
|
39
|
-
const nextLanguage = nextFile.lang ?? getFiletypeFromFileName(nextFile.name);
|
|
40
|
-
return previousFile.name !== nextFile.name || previousLanguage !== nextLanguage;
|
|
41
|
-
}
|
|
42
39
|
let instanceId = -1;
|
|
43
40
|
var File = class {
|
|
44
41
|
options;
|
|
@@ -78,9 +75,7 @@ var File = class {
|
|
|
78
75
|
lineAnnotations = [];
|
|
79
76
|
managersDirty = false;
|
|
80
77
|
file;
|
|
81
|
-
|
|
82
|
-
editSessionAnnotations;
|
|
83
|
-
outgoingSessionFile;
|
|
78
|
+
editSession;
|
|
84
79
|
renderedFile;
|
|
85
80
|
renderRange;
|
|
86
81
|
enabled = true;
|
|
@@ -95,7 +90,7 @@ var File = class {
|
|
|
95
90
|
this.workerManager?.subscribeToThemeChanges(this);
|
|
96
91
|
}
|
|
97
92
|
getAnnotationSlotName = (annotation) => {
|
|
98
|
-
return resolveEditSessionSlotName(this.
|
|
93
|
+
return resolveEditSessionSlotName(this.editSession?.annotations, annotation, getLineAnnotationName);
|
|
99
94
|
};
|
|
100
95
|
handleHighlightRender = () => {
|
|
101
96
|
this.rerender();
|
|
@@ -108,40 +103,44 @@ var File = class {
|
|
|
108
103
|
renderRange: this.renderRange
|
|
109
104
|
});
|
|
110
105
|
}
|
|
106
|
+
getTheme() {
|
|
107
|
+
return this.workerManager?.getFileRenderOptions().theme ?? this.options.theme ?? DEFAULT_THEMES;
|
|
108
|
+
}
|
|
111
109
|
getLatestFile(file = this.file) {
|
|
112
|
-
return this.
|
|
110
|
+
return this.editSession?.file ?? file;
|
|
113
111
|
}
|
|
114
112
|
getRenderedFile() {
|
|
115
113
|
return this.renderedFile;
|
|
116
114
|
}
|
|
117
115
|
getLatestAnnotations() {
|
|
118
|
-
return this.
|
|
116
|
+
return this.editSession?.annotations?.current ?? this.lineAnnotations;
|
|
119
117
|
}
|
|
120
118
|
isNewAnnotations(lineAnnotations) {
|
|
121
|
-
const
|
|
122
|
-
if (lineAnnotations ===
|
|
119
|
+
const session = this.editSession?.annotations;
|
|
120
|
+
if (lineAnnotations === this.lineAnnotations) return false;
|
|
123
121
|
return session == null || lineAnnotations !== session.provided && lineAnnotations !== session.current;
|
|
124
122
|
}
|
|
125
123
|
updateExternalFile(incomingFile, lineAnnotations) {
|
|
126
124
|
if (areFileTargetsEqual(this.file, incomingFile)) return false;
|
|
127
|
-
const
|
|
125
|
+
const hadSession = this.editSession != null;
|
|
128
126
|
this.file = incomingFile;
|
|
129
|
-
this.
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
this.installEditSession(incomingFile, previousEditSessionFile == null ? this.editor?.__getDocumentContents(incomingFile) : void 0);
|
|
133
|
-
} else this.editSessionFile = void 0;
|
|
134
|
-
if (this.editSessionAnnotations != null && lineAnnotations != null) {
|
|
127
|
+
if (hadSession || this.editor != null) this.installEditSession(incomingFile, hadSession ? void 0 : this.editor?.__getDocumentContents(incomingFile), true);
|
|
128
|
+
else this.editSession = void 0;
|
|
129
|
+
if (this.editSession?.annotations != null && lineAnnotations != null) {
|
|
135
130
|
this.lineAnnotations = lineAnnotations;
|
|
136
|
-
this.
|
|
131
|
+
this.editSession.annotations = adoptEditSessionAnnotations(lineAnnotations, getLineAnnotationName, this.editSession.annotations);
|
|
137
132
|
}
|
|
138
133
|
return true;
|
|
139
134
|
}
|
|
140
|
-
installEditSession(externalFile, retainedDocument) {
|
|
135
|
+
installEditSession(externalFile, retainedDocument, hostReplacement = false) {
|
|
141
136
|
const usesExternalDocument = retainedDocument == null || retainedDocument.name === externalFile.name && retainedDocument.lang === externalFile.lang && retainedDocument.contents === externalFile.contents;
|
|
142
|
-
const
|
|
143
|
-
this.
|
|
144
|
-
|
|
137
|
+
const file = createEditSessionFile(retainedDocument ?? externalFile);
|
|
138
|
+
this.editSession = {
|
|
139
|
+
file,
|
|
140
|
+
externalReplacement: hostReplacement && usesExternalDocument,
|
|
141
|
+
annotations: this.editSession?.annotations ?? adoptEditSessionAnnotations(this.lineAnnotations, getLineAnnotationName)
|
|
142
|
+
};
|
|
143
|
+
this.fileRenderer.beginEditSession(file, usesExternalDocument ? externalFile : void 0);
|
|
145
144
|
}
|
|
146
145
|
onThemeChange() {
|
|
147
146
|
this.fileRenderer.clearRenderCache();
|
|
@@ -175,13 +174,13 @@ var File = class {
|
|
|
175
174
|
return true;
|
|
176
175
|
}
|
|
177
176
|
hasThemeChanged() {
|
|
178
|
-
return this.appliedThemeCSS != null && !areThemesEqual(this.appliedThemeCSS.theme, this.
|
|
177
|
+
return this.appliedThemeCSS != null && !areThemesEqual(this.appliedThemeCSS.theme, this.getTheme());
|
|
179
178
|
}
|
|
180
179
|
getHoveredLine = () => {
|
|
181
180
|
return this.interactionManager.getHoveredLine();
|
|
182
181
|
};
|
|
183
182
|
setLineAnnotations(lineAnnotations) {
|
|
184
|
-
const
|
|
183
|
+
const sessionAnnotations = this.editSession?.annotations;
|
|
185
184
|
if (sessionAnnotations == null) {
|
|
186
185
|
this.lineAnnotations = lineAnnotations;
|
|
187
186
|
return;
|
|
@@ -191,7 +190,7 @@ var File = class {
|
|
|
191
190
|
writeEditSessionAnnotations(sessionAnnotations, lineAnnotations, getLineAnnotationName);
|
|
192
191
|
}
|
|
193
192
|
syncEditSessionAnnotationsFromEditor(lineAnnotations) {
|
|
194
|
-
const
|
|
193
|
+
const session = this.editSession?.annotations;
|
|
195
194
|
if (session == null || lineAnnotations === session.current) return false;
|
|
196
195
|
session.current = lineAnnotations;
|
|
197
196
|
this.fileRenderer.setLineAnnotations(lineAnnotations);
|
|
@@ -280,9 +279,7 @@ var File = class {
|
|
|
280
279
|
this.fileRenderer.cleanUp();
|
|
281
280
|
this.workerManager = void 0;
|
|
282
281
|
this.file = void 0;
|
|
283
|
-
this.
|
|
284
|
-
this.editSessionAnnotations = void 0;
|
|
285
|
-
this.outgoingSessionFile = void 0;
|
|
282
|
+
this.editSession = void 0;
|
|
286
283
|
this.renderedFile = void 0;
|
|
287
284
|
}
|
|
288
285
|
this.enabled = false;
|
|
@@ -369,26 +366,40 @@ var File = class {
|
|
|
369
366
|
const lineAnnotations = this.getLatestAnnotations();
|
|
370
367
|
const file = this.getLatestFile();
|
|
371
368
|
if (editor == null || fileContainer == null || file == null) return;
|
|
372
|
-
|
|
369
|
+
const syncEditor = (highlighter) => {
|
|
373
370
|
if (!this.enabled || this.editor !== editor || this.fileContainer !== fileContainer || this.getLatestFile() !== file) return;
|
|
374
|
-
const { outgoingSessionFile: replacement, file: externalFile } = this;
|
|
375
|
-
const externalDocument = replacement != null && externalFile != null && replacement !== file;
|
|
376
|
-
const resetHistory = externalDocument ? shouldResetUndoState(replacement, externalFile) : false;
|
|
377
|
-
if (externalDocument) this.outgoingSessionFile = void 0;
|
|
378
371
|
editor.__syncRenderView({
|
|
379
372
|
highlighter,
|
|
380
373
|
fileContainer,
|
|
381
374
|
file,
|
|
382
375
|
lineAnnotations,
|
|
383
376
|
renderRange,
|
|
384
|
-
externalDocument
|
|
385
|
-
resetHistory
|
|
377
|
+
externalDocument: this.editSession?.externalReplacement === true
|
|
386
378
|
});
|
|
379
|
+
};
|
|
380
|
+
const theme = this.getTheme();
|
|
381
|
+
const lang = file.lang ?? getFiletypeFromFileName(file.name);
|
|
382
|
+
const highlighter = getHighlighterIfLoaded({
|
|
383
|
+
theme,
|
|
384
|
+
lang
|
|
387
385
|
});
|
|
388
|
-
|
|
389
|
-
|
|
386
|
+
if (highlighter != null) syncEditor(highlighter);
|
|
387
|
+
else getSharedHighlighter({
|
|
388
|
+
themes: getThemes(theme),
|
|
389
|
+
langs: Array.from(/* @__PURE__ */ new Set(["text", lang])),
|
|
390
|
+
preferredHighlighter: this.workerManager?.getPreferredHighlighter() ?? this.options.preferredHighlighter
|
|
391
|
+
}).then(syncEditor);
|
|
392
|
+
}
|
|
393
|
+
/** @internal The editor applied or edited past the pending external replacement. */
|
|
394
|
+
__acknowledgeDocumentUpdate() {
|
|
395
|
+
if (this.editSession != null) this.editSession.externalReplacement = false;
|
|
396
|
+
}
|
|
397
|
+
/** @internal Settle annotations */
|
|
398
|
+
__acceptEditorChange(event) {
|
|
390
399
|
const { lineAnnotations } = event;
|
|
391
400
|
if (lineAnnotations != null) this.syncEditSessionAnnotationsFromEditor(lineAnnotations);
|
|
401
|
+
}
|
|
402
|
+
emitEditChange(event) {
|
|
392
403
|
const { onEditChange } = this.options;
|
|
393
404
|
onEditChange?.(event);
|
|
394
405
|
}
|
|
@@ -416,11 +427,11 @@ var File = class {
|
|
|
416
427
|
this.resumeEditorRendering(editor);
|
|
417
428
|
}
|
|
418
429
|
resumeEditorRendering(editor) {
|
|
419
|
-
this.
|
|
420
|
-
if (this.
|
|
421
|
-
|
|
430
|
+
if (this.editSession != null) this.fileRenderer.beginEditSession(this.editSession.file);
|
|
431
|
+
else if (this.file != null) this.installEditSession(this.file, editor.__getDocumentContents(this.file));
|
|
432
|
+
const editSessionFile = this.editSession?.file;
|
|
422
433
|
if (this.fileRenderer.editorRenderReady()) {
|
|
423
|
-
if (this.fileRenderer.fileCache ===
|
|
434
|
+
if (this.fileRenderer.fileCache === editSessionFile) this.renderedFile = editSessionFile;
|
|
424
435
|
this.syncRenderViewToEditor();
|
|
425
436
|
} else this.rerender();
|
|
426
437
|
}
|
|
@@ -442,8 +453,9 @@ var File = class {
|
|
|
442
453
|
this.settleEditSession(mode === "install", editor);
|
|
443
454
|
}
|
|
444
455
|
settleEditSession(installResult, editor) {
|
|
445
|
-
const {
|
|
446
|
-
if (
|
|
456
|
+
const { editSession, file: externalFile, lineAnnotations: externalAnnotations } = this;
|
|
457
|
+
if (editSession == null || externalFile == null) return;
|
|
458
|
+
const { file: editSessionFile, annotations: editSessionAnnotations } = editSession;
|
|
447
459
|
if (this.editor != null) throw new Error("File.__completeEditSession: detach the editor before completing the session");
|
|
448
460
|
const sessionAnnotationsCurrent = editSessionAnnotations?.current;
|
|
449
461
|
let acceptedFile;
|
|
@@ -473,9 +485,7 @@ var File = class {
|
|
|
473
485
|
this.file = acceptedFile;
|
|
474
486
|
if (sessionAnnotationsCurrent != null) this.lineAnnotations = sessionAnnotationsCurrent;
|
|
475
487
|
}
|
|
476
|
-
this.
|
|
477
|
-
this.editSessionAnnotations = void 0;
|
|
478
|
-
this.outgoingSessionFile = void 0;
|
|
488
|
+
this.editSession = void 0;
|
|
479
489
|
const { renderedFile, file: settledFile } = this;
|
|
480
490
|
this.fileRenderer.endEditSession(settledFile);
|
|
481
491
|
if (renderedFile != null && settledFile != null && renderedFile !== settledFile && areFileTargetsEqual(renderedFile, settledFile)) this.renderedFile = settledFile;
|
|
@@ -483,14 +493,14 @@ var File = class {
|
|
|
483
493
|
if (failed) throw failure;
|
|
484
494
|
}
|
|
485
495
|
applyDocumentChange(textDocument, newLineAnnotations) {
|
|
486
|
-
const
|
|
496
|
+
const editSessionFile = this.editSession?.file;
|
|
487
497
|
if (editSessionFile == null) throw new Error("File.applyDocumentChange: requires an active edit session");
|
|
488
498
|
this.fileRenderer.beginEditSession(editSessionFile);
|
|
489
499
|
this.fileRenderer.applyDocumentChange(textDocument);
|
|
490
500
|
if (newLineAnnotations != null) this.syncEditSessionAnnotationsFromEditor(newLineAnnotations);
|
|
491
501
|
}
|
|
492
502
|
updateRenderCache(dirtyLines, themeType, options) {
|
|
493
|
-
const
|
|
503
|
+
const editSessionFile = this.editSession?.file;
|
|
494
504
|
if (editSessionFile == null) throw new Error("File.updateRenderCache: requires an active edit session");
|
|
495
505
|
this.fileRenderer.beginEditSession(editSessionFile);
|
|
496
506
|
this.fileRenderer.updateRenderCache(dirtyLines, themeType, options?.lineCountChangeInFlight);
|
|
@@ -506,7 +516,11 @@ var File = class {
|
|
|
506
516
|
const didFileChange = !areFileTargetsEqual(this.file, file);
|
|
507
517
|
if (didFileChange) this.updateExternalFile(file, lineAnnotations);
|
|
508
518
|
const latestFile = this.getLatestFile(file) ?? file;
|
|
509
|
-
if (!collapsed && !forceRender && areRenderRangesEqual(nextRenderRange, this.renderRange) && !didFileChange && !annotationsChanged && !themeChanged)
|
|
519
|
+
if (!collapsed && !forceRender && areRenderRangesEqual(nextRenderRange, this.renderRange) && !didFileChange && !annotationsChanged && !themeChanged) {
|
|
520
|
+
const rendered = this.applyCachedThemeState(themeType);
|
|
521
|
+
if (rendered) this.finalizeRender();
|
|
522
|
+
return rendered;
|
|
523
|
+
}
|
|
510
524
|
this.renderRange = nextRenderRange;
|
|
511
525
|
if (didFileChange) this.cachedHeaderHTML = void 0;
|
|
512
526
|
this.fileRenderer.setOptions(getFileRendererOptions(this.options));
|
|
@@ -538,6 +552,7 @@ var File = class {
|
|
|
538
552
|
console.error(error);
|
|
539
553
|
if (error instanceof Error) this.applyErrorToDOM(error, fileContainer);
|
|
540
554
|
}
|
|
555
|
+
this.finalizeRender();
|
|
541
556
|
if (!preventEmit) this.emitPostRender();
|
|
542
557
|
return true;
|
|
543
558
|
}
|
|
@@ -560,6 +575,7 @@ var File = class {
|
|
|
560
575
|
this.renderGutterUtility();
|
|
561
576
|
this.managersDirty = true;
|
|
562
577
|
if (!deferManagers) this.flushManagers();
|
|
578
|
+
this.finalizeRender();
|
|
563
579
|
if (this.editor != null) this.syncRenderViewToEditor();
|
|
564
580
|
} catch (error) {
|
|
565
581
|
if (disableErrorHandling) throw error;
|
|
@@ -569,6 +585,7 @@ var File = class {
|
|
|
569
585
|
if (!preventEmit) this.emitPostRender();
|
|
570
586
|
return true;
|
|
571
587
|
}
|
|
588
|
+
finalizeRender() {}
|
|
572
589
|
emitPostRender(unmount = false) {
|
|
573
590
|
const { fileContainer, options: { onPostRender } } = this;
|
|
574
591
|
if (unmount) {
|
|
@@ -738,7 +755,7 @@ var File = class {
|
|
|
738
755
|
applyThemeState(container, themeStyles, themeType, baseThemeType) {
|
|
739
756
|
const shadowRoot = container.shadowRoot ?? container.attachShadow({ mode: "open" });
|
|
740
757
|
const effectiveThemeType = baseThemeType ?? themeType;
|
|
741
|
-
const currentTheme = this.
|
|
758
|
+
const currentTheme = this.getTheme();
|
|
742
759
|
const theme = typeof currentTheme === "string" ? currentTheme : { ...currentTheme };
|
|
743
760
|
const scrollbarGutter = getMeasuredScrollbarGutter(shadowRoot);
|
|
744
761
|
if (this.themeCSSStyle?.parentNode === shadowRoot && this.appliedThemeCSS?.themeStyles === themeStyles && this.appliedThemeCSS.themeType === effectiveThemeType && this.appliedThemeCSS.scrollbarGutter === scrollbarGutter) {
|