@pierre/diffs 1.3.6 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/CodeView.d.ts +115 -68
- package/dist/components/CodeView.d.ts.map +1 -1
- package/dist/components/CodeView.js +189 -59
- package/dist/components/CodeView.js.map +1 -1
- package/dist/components/File.d.ts +79 -15
- package/dist/components/File.d.ts.map +1 -1
- package/dist/components/File.js +244 -66
- package/dist/components/File.js.map +1 -1
- package/dist/components/FileDiff.d.ts +101 -21
- package/dist/components/FileDiff.d.ts.map +1 -1
- package/dist/components/FileDiff.js +432 -102
- package/dist/components/FileDiff.js.map +1 -1
- package/dist/components/FileStream.js +1 -1
- package/dist/components/UnresolvedFile.d.ts +2 -2
- package/dist/components/UnresolvedFile.d.ts.map +1 -1
- package/dist/components/UnresolvedFile.js +2 -2
- package/dist/components/UnresolvedFile.js.map +1 -1
- package/dist/components/VirtualizedFile.d.ts +17 -7
- package/dist/components/VirtualizedFile.d.ts.map +1 -1
- package/dist/components/VirtualizedFile.js +142 -53
- package/dist/components/VirtualizedFile.js.map +1 -1
- package/dist/components/VirtualizedFileDiff.d.ts +15 -8
- package/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
- package/dist/components/VirtualizedFileDiff.js +186 -96
- package/dist/components/VirtualizedFileDiff.js.map +1 -1
- package/dist/components/VirtulizerDevelopment.d.ts +1 -1
- package/dist/components/VirtulizerDevelopment.d.ts.map +1 -1
- package/dist/edit/index.d.ts +7 -4
- package/dist/edit/index.js +5 -1
- package/dist/editor/EditStateManager.d.ts +56 -0
- package/dist/editor/EditStateManager.d.ts.map +1 -0
- package/dist/editor/EditStateManager.js +135 -0
- package/dist/editor/EditStateManager.js.map +1 -0
- package/dist/editor/cloneRetainedDiffSessionSnapshot.d.ts +7 -0
- package/dist/editor/cloneRetainedDiffSessionSnapshot.d.ts.map +1 -0
- package/dist/editor/cloneRetainedDiffSessionSnapshot.js +16 -0
- package/dist/editor/cloneRetainedDiffSessionSnapshot.js.map +1 -0
- package/dist/editor/editPrediction.d.ts +76 -0
- package/dist/editor/editPrediction.d.ts.map +1 -0
- package/dist/editor/editPrediction.js +365 -0
- package/dist/editor/editPrediction.js.map +1 -0
- package/dist/editor/editStack.d.ts +19 -40
- package/dist/editor/editStack.d.ts.map +1 -1
- package/dist/editor/editStack.js +67 -4
- package/dist/editor/editStack.js.map +1 -1
- package/dist/editor/editor.d.ts +118 -29
- package/dist/editor/editor.d.ts.map +1 -1
- package/dist/editor/editor.js +1108 -384
- package/dist/editor/editor.js.map +1 -1
- package/dist/editor/editor2.js +1 -1
- package/dist/editor/languages.d.ts +3 -3
- package/dist/editor/languages.d.ts.map +1 -1
- package/dist/editor/languages.js.map +1 -1
- package/dist/editor/lineAnnotations.d.ts +3 -3
- package/dist/editor/lineAnnotations.d.ts.map +1 -1
- package/dist/editor/lineAnnotations.js +16 -7
- package/dist/editor/lineAnnotations.js.map +1 -1
- package/dist/editor/marker.d.ts +2 -2
- package/dist/editor/marker.d.ts.map +1 -1
- package/dist/editor/marker.js.map +1 -1
- package/dist/editor/matchBrackets.d.ts +2 -2
- package/dist/editor/matchBrackets.d.ts.map +1 -1
- package/dist/editor/matchBrackets.js.map +1 -1
- package/dist/editor/pieceTable.d.ts +1 -1
- package/dist/editor/pieceTable.js.map +1 -1
- package/dist/editor/searchPanel.d.ts +2 -2
- package/dist/editor/searchPanel.js +1 -1
- package/dist/editor/searchPanel.js.map +1 -1
- package/dist/editor/selection.d.ts +32 -23
- package/dist/editor/selection.d.ts.map +1 -1
- package/dist/editor/selection.js +3 -3
- package/dist/editor/selection.js.map +1 -1
- package/dist/editor/selectionAction.d.ts +3 -3
- package/dist/editor/selectionAction.d.ts.map +1 -1
- package/dist/editor/selectionAction.js.map +1 -1
- package/dist/editor/textDocument.d.ts +11 -8
- package/dist/editor/textDocument.d.ts.map +1 -1
- package/dist/editor/textDocument.js +28 -5
- package/dist/editor/textDocument.js.map +1 -1
- package/dist/editor/textDocumentChangeTransaction.d.ts +15 -0
- package/dist/editor/textDocumentChangeTransaction.d.ts.map +1 -0
- package/dist/editor/textDocumentChangeTransaction.js +12 -0
- package/dist/editor/textDocumentChangeTransaction.js.map +1 -0
- package/dist/editor/textMeasure.d.ts +5 -0
- package/dist/editor/textMeasure.d.ts.map +1 -1
- package/dist/editor/textMeasure.js +10 -0
- package/dist/editor/textMeasure.js.map +1 -1
- package/dist/editor/tokenizer.d.ts +1 -1
- package/dist/editor/tokenizer.js.map +1 -1
- package/dist/editor/types.d.ts +267 -0
- package/dist/editor/types.d.ts.map +1 -0
- package/dist/editor/types.js +0 -0
- package/dist/editor/utils.d.ts +2 -1
- package/dist/editor/utils.d.ts.map +1 -1
- package/dist/editor/utils.js +4 -1
- package/dist/editor/utils.js.map +1 -1
- package/dist/highlighter/shared_highlighter.d.ts +6 -2
- 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.js +1 -1
- package/dist/index.d.ts +8 -6
- package/dist/index.js +22 -21
- package/dist/managers/InteractionManager.d.ts.map +1 -1
- package/dist/managers/InteractionManager.js +7 -0
- package/dist/managers/InteractionManager.js.map +1 -1
- package/dist/react/CodeView.d.ts +36 -25
- package/dist/react/CodeView.d.ts.map +1 -1
- package/dist/react/CodeView.js +15 -14
- package/dist/react/CodeView.js.map +1 -1
- package/dist/react/EditContext.d.ts +8 -11
- package/dist/react/EditContext.d.ts.map +1 -1
- package/dist/react/EditContext.js +2 -9
- package/dist/react/EditContext.js.map +1 -1
- package/dist/react/File.d.ts +10 -6
- package/dist/react/File.d.ts.map +1 -1
- package/dist/react/File.js +8 -4
- package/dist/react/File.js.map +1 -1
- package/dist/react/FileDiff.d.ts +10 -5
- package/dist/react/FileDiff.d.ts.map +1 -1
- package/dist/react/FileDiff.js +8 -4
- package/dist/react/FileDiff.js.map +1 -1
- package/dist/react/MultiFileDiff.d.ts +8 -5
- package/dist/react/MultiFileDiff.d.ts.map +1 -1
- package/dist/react/MultiFileDiff.js +8 -12
- package/dist/react/MultiFileDiff.js.map +1 -1
- package/dist/react/PatchDiff.d.ts +7 -4
- package/dist/react/PatchDiff.d.ts.map +1 -1
- package/dist/react/PatchDiff.js +8 -4
- package/dist/react/PatchDiff.js.map +1 -1
- package/dist/react/UnresolvedFile.d.ts +3 -3
- package/dist/react/UnresolvedFile.d.ts.map +1 -1
- package/dist/react/UnresolvedFile.js.map +1 -1
- package/dist/react/index.d.ts +8 -5
- package/dist/react/types.d.ts +46 -9
- package/dist/react/types.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.d.ts +14 -12
- package/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.js +2 -2
- package/dist/react/utils/renderDiffChildren.js.map +1 -1
- package/dist/react/utils/renderFileChildren.d.ts +14 -12
- package/dist/react/utils/renderFileChildren.d.ts.map +1 -1
- package/dist/react/utils/renderFileChildren.js +2 -2
- package/dist/react/utils/renderFileChildren.js.map +1 -1
- package/dist/react/utils/useFileDiffInstance.d.ts +22 -10
- package/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileDiffInstance.js +112 -22
- package/dist/react/utils/useFileDiffInstance.js.map +1 -1
- package/dist/react/utils/useFileInstance.d.ts +15 -9
- package/dist/react/utils/useFileInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileInstance.js +84 -25
- package/dist/react/utils/useFileInstance.js.map +1 -1
- package/dist/renderers/DiffHunksRenderer.d.ts +30 -15
- package/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/DiffHunksRenderer.js +172 -109
- package/dist/renderers/DiffHunksRenderer.js.map +1 -1
- package/dist/renderers/FileRenderer.d.ts +27 -11
- package/dist/renderers/FileRenderer.d.ts.map +1 -1
- package/dist/renderers/FileRenderer.js +141 -67
- package/dist/renderers/FileRenderer.js.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts +2 -2
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.js +2 -2
- package/dist/renderers/UnresolvedFileHunksRenderer.js.map +1 -1
- package/dist/shiki-stream/tokenizer.d.ts.map +1 -1
- package/dist/shiki-stream/tokenizer.js +2 -1
- package/dist/shiki-stream/tokenizer.js.map +1 -1
- package/dist/ssr/index.d.ts +2 -2
- package/dist/ssr/preloadDiffs.d.ts +21 -21
- package/dist/ssr/preloadDiffs.d.ts.map +1 -1
- package/dist/ssr/preloadDiffs.js +1 -1
- package/dist/ssr/preloadDiffs.js.map +1 -1
- package/dist/ssr/preloadFile.d.ts +6 -6
- package/dist/ssr/preloadFile.d.ts.map +1 -1
- package/dist/ssr/preloadFile.js.map +1 -1
- package/dist/ssr/preloadPatchFile.d.ts +4 -4
- package/dist/ssr/preloadPatchFile.d.ts.map +1 -1
- package/dist/ssr/preloadPatchFile.js.map +1 -1
- package/dist/style.js +1 -1
- package/dist/types.d.ts +13 -263
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/appendItems.d.ts +5 -0
- package/dist/utils/appendItems.d.ts.map +1 -0
- package/dist/utils/appendItems.js +8 -0
- package/dist/utils/appendItems.js.map +1 -0
- package/dist/utils/areDiffTargetsEqual.js +1 -1
- package/dist/utils/areDiffTargetsEqual.js.map +1 -1
- package/dist/utils/areFileTargetsEqual.d.ts +7 -0
- package/dist/utils/areFileTargetsEqual.d.ts.map +1 -0
- package/dist/utils/areFileTargetsEqual.js +8 -0
- package/dist/utils/areFileTargetsEqual.js.map +1 -0
- package/dist/utils/areManagedSnapshotsEqual.d.ts +1 -1
- package/dist/utils/areManagedSnapshotsEqual.d.ts.map +1 -1
- package/dist/utils/areManagedSnapshotsEqual.js.map +1 -1
- package/dist/utils/areOptionsEqual.d.ts +3 -3
- package/dist/utils/areOptionsEqual.d.ts.map +1 -1
- package/dist/utils/areOptionsEqual.js.map +1 -1
- package/dist/utils/cloneFileDiffMetadata.d.ts +3 -2
- package/dist/utils/cloneFileDiffMetadata.d.ts.map +1 -1
- package/dist/utils/cloneFileDiffMetadata.js +8 -5
- package/dist/utils/cloneFileDiffMetadata.js.map +1 -1
- package/dist/utils/composeCacheKey.d.ts +6 -0
- package/dist/utils/composeCacheKey.d.ts.map +1 -0
- package/dist/utils/composeCacheKey.js +10 -0
- package/dist/utils/composeCacheKey.js.map +1 -0
- package/dist/utils/editSessionAnnotations.d.ts +69 -0
- package/dist/utils/editSessionAnnotations.d.ts.map +1 -0
- package/dist/utils/editSessionAnnotations.js +64 -0
- package/dist/utils/editSessionAnnotations.js.map +1 -0
- package/dist/utils/editSessionHunks.d.ts +5 -3
- package/dist/utils/editSessionHunks.d.ts.map +1 -1
- package/dist/utils/editSessionHunks.js +7 -5
- package/dist/utils/editSessionHunks.js.map +1 -1
- package/dist/utils/getDiffHunksRendererOptions.d.ts +1 -1
- package/dist/utils/getDiffHunksRendererOptions.d.ts.map +1 -1
- package/dist/utils/getDiffHunksRendererOptions.js.map +1 -1
- package/dist/utils/getFileRendererOptions.d.ts +1 -1
- package/dist/utils/getFileRendererOptions.d.ts.map +1 -1
- package/dist/utils/getFileRendererOptions.js.map +1 -1
- package/dist/utils/hydratePartialDiff.d.ts.map +1 -1
- package/dist/utils/hydratePartialDiff.js +2 -1
- package/dist/utils/hydratePartialDiff.js.map +1 -1
- package/dist/utils/lineAnnotationIdentity.d.ts +16 -0
- package/dist/utils/lineAnnotationIdentity.d.ts.map +1 -0
- package/dist/utils/lineAnnotationIdentity.js +17 -0
- package/dist/utils/lineAnnotationIdentity.js.map +1 -0
- package/dist/utils/parseDiffFromFile.d.ts +2 -2
- package/dist/utils/parseDiffFromFile.d.ts.map +1 -1
- package/dist/utils/parseDiffFromFile.js +6 -6
- package/dist/utils/parseDiffFromFile.js.map +1 -1
- package/dist/utils/parsePatchFiles.d.ts +6 -3
- package/dist/utils/parsePatchFiles.d.ts.map +1 -1
- package/dist/utils/parsePatchFiles.js +34 -9
- package/dist/utils/parsePatchFiles.js.map +1 -1
- package/dist/utils/renderDiffWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderDiffWithHighlighter.js +6 -5
- package/dist/utils/renderDiffWithHighlighter.js.map +1 -1
- package/dist/utils/renderFileWithHighlighter.d.ts.map +1 -1
- package/dist/utils/renderFileWithHighlighter.js +7 -4
- package/dist/utils/renderFileWithHighlighter.js.map +1 -1
- package/dist/utils/trimPatchContext.d.ts.map +1 -1
- package/dist/utils/trimPatchContext.js +3 -2
- package/dist/utils/trimPatchContext.js.map +1 -1
- package/dist/utils/updateDiffHunks.js +1 -1
- package/dist/utils/virtualDiffLayout.js +1 -1
- package/dist/worker/WorkerPoolManager.d.ts +4 -3
- package/dist/worker/WorkerPoolManager.d.ts.map +1 -1
- package/dist/worker/WorkerPoolManager.js +44 -6
- package/dist/worker/WorkerPoolManager.js.map +1 -1
- package/dist/worker/types.d.ts +5 -0
- package/dist/worker/types.d.ts.map +1 -1
- package/dist/worker/worker-portable.js +14 -6
- package/dist/worker/worker-portable.js.map +1 -1
- package/dist/worker/worker.js +14 -6
- package/dist/worker/worker.js.map +1 -1
- package/package.json +9 -1
- package/dist/editor/stateStorage.d.ts +0 -15
- package/dist/editor/stateStorage.d.ts.map +0 -1
- package/dist/editor/stateStorage.js +0 -65
- package/dist/editor/stateStorage.js.map +0 -1
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import { AppliedThemeStyleCache, BaseCodeOptions,
|
|
1
|
+
import { AppliedThemeStyleCache, BaseCodeOptions, DiffLineAnnotation, FileContents, HighlightedToken, LineAnnotation, PostRenderPhase, PrePropertiesConfig, RenderFileMetadata, RenderRange, SelectedLineRange, ThemeTypes } from "../types.js";
|
|
2
|
+
import { EditCompletionDecision, EditorActiveLineOptions, EditorChangeEvent, FileEditCompleteEvent } from "../editor/types.js";
|
|
3
|
+
import { TextDocument } from "../editor/textDocument.js";
|
|
2
4
|
import { GetHoveredLineResult, InteractionManager, InteractionManagerBaseOptions, SelectionWriteOptions } from "../managers/InteractionManager.js";
|
|
3
|
-
import { WorkerPoolManager } from "../worker/WorkerPoolManager.js";
|
|
4
5
|
import { ResizeManager } from "../managers/ResizeManager.js";
|
|
6
|
+
import { WorkerPoolManager } from "../worker/WorkerPoolManager.js";
|
|
5
7
|
import { FileRenderer } from "../renderers/FileRenderer.js";
|
|
8
|
+
import { Editor } from "../editor/editor.js";
|
|
6
9
|
|
|
7
10
|
//#region src/components/File.d.ts
|
|
8
11
|
interface FileRenderProps<LAnnotation> {
|
|
@@ -19,7 +22,17 @@ interface FileHydrateProps<LAnnotation> extends Omit<FileRenderProps<LAnnotation
|
|
|
19
22
|
fileContainer: HTMLElement;
|
|
20
23
|
prerenderedHTML?: string;
|
|
21
24
|
}
|
|
22
|
-
|
|
25
|
+
type FileEditChangeHandler<LAnnotation, Caret> = (event: EditorChangeEvent<'file', LAnnotation, Caret>) => void;
|
|
26
|
+
/**
|
|
27
|
+
* Decides a completed edit synchronously: return `'accept'` to install the
|
|
28
|
+
* event's `file` and annotations, or `'reject'` to restore the original values.
|
|
29
|
+
* The event is frozen, so re-key the accepted file in place
|
|
30
|
+
* (`event.file.cacheKey = '…'`) before accepting. The event's editor is
|
|
31
|
+
* detached and returns its final state from `getViewState()`. A missing handler
|
|
32
|
+
* rejects.
|
|
33
|
+
*/
|
|
34
|
+
type FileEditCompleteHandler<LAnnotation, Caret> = (event: FileEditCompleteEvent<LAnnotation, Caret>) => EditCompletionDecision;
|
|
35
|
+
interface FileOptions<LAnnotation, Caret> extends BaseCodeOptions, InteractionManagerBaseOptions<'file'> {
|
|
23
36
|
disableFileHeader?: boolean;
|
|
24
37
|
renderHeaderPrefix?: RenderFileMetadata;
|
|
25
38
|
renderHeaderFilenameSuffix?: RenderFileMetadata;
|
|
@@ -33,7 +46,21 @@ interface FileOptions<LAnnotation> extends BaseCodeOptions, InteractionManagerBa
|
|
|
33
46
|
disableErrorHandling?: boolean;
|
|
34
47
|
renderAnnotation?(annotation: LineAnnotation<LAnnotation>): HTMLElement | undefined;
|
|
35
48
|
renderGutterUtility?(getHoveredRow: () => GetHoveredLineResult<'file'> | undefined): HTMLElement | null | undefined;
|
|
36
|
-
onPostRender?(node: HTMLElement, instance: File<LAnnotation>, phase: PostRenderPhase): unknown;
|
|
49
|
+
onPostRender?(node: HTMLElement, instance: File<LAnnotation, Caret>, phase: PostRenderPhase): unknown;
|
|
50
|
+
/**
|
|
51
|
+
* Fired for every document change of an active edit session on this
|
|
52
|
+
* component, with the same `EditorChangeEvent` the editor reports through
|
|
53
|
+
* its own `onChange`. Do not feed the event's file back into the component
|
|
54
|
+
* while the session is active.
|
|
55
|
+
*/
|
|
56
|
+
onEditChange?: FileEditChangeHandler<LAnnotation, Caret>;
|
|
57
|
+
/**
|
|
58
|
+
* Fired when `edit` toggles false or a component unmounts, including when the
|
|
59
|
+
* final contents are unchanged. If no callback is provided, the component
|
|
60
|
+
* reverts to the last `file` and annotations passed into it. The callback
|
|
61
|
+
* receives the detached editor with its final pre-detach state.
|
|
62
|
+
*/
|
|
63
|
+
onEditComplete?: FileEditCompleteHandler<LAnnotation, Caret>;
|
|
37
64
|
}
|
|
38
65
|
interface AnnotationElementCache<LAnnotation> {
|
|
39
66
|
element: HTMLElement;
|
|
@@ -43,8 +70,8 @@ interface HydrationSetup<LAnnotation> {
|
|
|
43
70
|
file: FileContents;
|
|
44
71
|
lineAnnotations: LineAnnotation<LAnnotation>[] | undefined;
|
|
45
72
|
}
|
|
46
|
-
declare class File<LAnnotation = undefined
|
|
47
|
-
options: FileOptions<LAnnotation>;
|
|
73
|
+
declare class File<LAnnotation = undefined, Caret = undefined> {
|
|
74
|
+
options: FileOptions<LAnnotation, Caret>;
|
|
48
75
|
private workerManager?;
|
|
49
76
|
private isContainerManaged;
|
|
50
77
|
static LoadedCustomComponent: boolean;
|
|
@@ -81,15 +108,24 @@ declare class File<LAnnotation = undefined> implements DiffsEditableComponent<LA
|
|
|
81
108
|
protected lineAnnotations: LineAnnotation<LAnnotation>[];
|
|
82
109
|
protected managersDirty: boolean;
|
|
83
110
|
file: FileContents | undefined;
|
|
111
|
+
private editSession;
|
|
112
|
+
protected renderedFile: FileContents | undefined;
|
|
84
113
|
protected renderRange: RenderRange | undefined;
|
|
85
114
|
protected enabled: boolean;
|
|
86
|
-
protected editor:
|
|
87
|
-
constructor(options?: FileOptions<LAnnotation>, workerManager?: WorkerPoolManager | undefined, isContainerManaged?: boolean);
|
|
115
|
+
protected editor: Editor<'file', LAnnotation, Caret> | undefined;
|
|
116
|
+
constructor(options?: FileOptions<LAnnotation, Caret>, workerManager?: WorkerPoolManager | undefined, isContainerManaged?: boolean);
|
|
117
|
+
getAnnotationSlotName: (annotation: LineAnnotation<LAnnotation> | DiffLineAnnotation<LAnnotation>) => string;
|
|
88
118
|
private handleHighlightRender;
|
|
89
119
|
rerender(): void;
|
|
90
|
-
|
|
120
|
+
private getTheme;
|
|
121
|
+
protected getLatestFile(file?: FileContents | undefined): FileContents | undefined;
|
|
122
|
+
protected getRenderedFile(): FileContents | undefined;
|
|
123
|
+
protected getLatestAnnotations(): LineAnnotation<LAnnotation>[];
|
|
124
|
+
protected isNewAnnotations(lineAnnotations: LineAnnotation<LAnnotation>[]): boolean;
|
|
125
|
+
protected updateExternalFile(incomingFile: FileContents, lineAnnotations?: LineAnnotation<LAnnotation>[]): boolean;
|
|
126
|
+
private installEditSession;
|
|
91
127
|
onThemeChange(): void;
|
|
92
|
-
setOptions(options: FileOptions<LAnnotation> | undefined): void;
|
|
128
|
+
setOptions(options: FileOptions<LAnnotation, Caret> | undefined): void;
|
|
93
129
|
protected syncInteractionOptions(): void;
|
|
94
130
|
private mergeOptions;
|
|
95
131
|
setThemeType(themeType: ThemeTypes): void;
|
|
@@ -97,6 +133,7 @@ declare class File<LAnnotation = undefined> implements DiffsEditableComponent<LA
|
|
|
97
133
|
private hasThemeChanged;
|
|
98
134
|
getHoveredLine: () => GetHoveredLineResult<'file'> | undefined;
|
|
99
135
|
setLineAnnotations(lineAnnotations: LineAnnotation<LAnnotation>[]): void;
|
|
136
|
+
protected syncEditSessionAnnotationsFromEditor(lineAnnotations: LineAnnotation<LAnnotation>[]): boolean;
|
|
100
137
|
setSelectedLines(range: SelectedLineRange | null, options?: SelectionWriteOptions): void;
|
|
101
138
|
setEditorActiveLine(lineNumber: number | null, options?: EditorActiveLineOptions): void;
|
|
102
139
|
getCodeScrollLeft(): number;
|
|
@@ -115,13 +152,39 @@ declare class File<LAnnotation = undefined> implements DiffsEditableComponent<LA
|
|
|
115
152
|
getOrCreateLineCache(file?: FileContents | undefined): string[];
|
|
116
153
|
protected updateBuffers(renderRange: RenderRange): void;
|
|
117
154
|
private syncRenderViewToEditor;
|
|
118
|
-
|
|
119
|
-
|
|
155
|
+
/** @internal The editor applied or edited past the pending external replacement. */
|
|
156
|
+
__acknowledgeDocumentUpdate(): void;
|
|
157
|
+
/** @internal Settle annotations */
|
|
158
|
+
__acceptEditorChange(event: EditorChangeEvent<'file', LAnnotation, Caret>): void;
|
|
159
|
+
emitEditChange(event: EditorChangeEvent<'file', LAnnotation, Caret>): void;
|
|
160
|
+
/** @internal Plain files have no component-owned diff session state. */
|
|
161
|
+
__captureDocumentSessionState(): undefined;
|
|
162
|
+
/** @internal Associate this component with its editor for a render lifecycle. */
|
|
163
|
+
__attachEditor(editor: Editor<'file', LAnnotation, Caret>): () => void;
|
|
164
|
+
/** @internal Resume rendering for the editor already associated with this component. */
|
|
165
|
+
__resumeEditor(editor: Editor<'file', LAnnotation, Caret>): void;
|
|
166
|
+
private resumeEditorRendering;
|
|
167
|
+
/**
|
|
168
|
+
* @internal
|
|
169
|
+
*
|
|
170
|
+
* Ends the edit session and settles which file this component renders.
|
|
171
|
+
* Requires the editor to be detached first. Does nothing when no session
|
|
172
|
+
* exists, so callers can invoke it again safely after it has settled.
|
|
173
|
+
*
|
|
174
|
+
* `onEditComplete` receives the completed file, current external file, and
|
|
175
|
+
* both annotation collections even when the final text is unchanged. In
|
|
176
|
+
* `install` mode, accepting installs the completed file and its annotations;
|
|
177
|
+
* rejecting or having no handler restores the external values. `discard`
|
|
178
|
+
* mode always restores the external values. An accepted file cannot reuse
|
|
179
|
+
* the replaced file's `cacheKey`.
|
|
180
|
+
*/
|
|
181
|
+
__completeEditSession(editor: Editor<'file', LAnnotation, Caret>, mode: 'install' | 'discard'): void;
|
|
182
|
+
private settleEditSession;
|
|
183
|
+
applyDocumentChange(textDocument: TextDocument<'file', LAnnotation>, newLineAnnotations?: LineAnnotation<LAnnotation>[]): void;
|
|
120
184
|
updateRenderCache(dirtyLines: Map<number, Array<HighlightedToken>>, themeType: 'dark' | 'light', options?: {
|
|
121
185
|
lineCountChangeInFlight?: boolean;
|
|
122
186
|
}): void;
|
|
123
|
-
render(
|
|
124
|
-
protected renderPreparedFile({
|
|
187
|
+
render({
|
|
125
188
|
file,
|
|
126
189
|
fileContainer,
|
|
127
190
|
forceRender,
|
|
@@ -131,6 +194,7 @@ declare class File<LAnnotation = undefined> implements DiffsEditableComponent<LA
|
|
|
131
194
|
lineAnnotations,
|
|
132
195
|
renderRange
|
|
133
196
|
}: FileRenderProps<LAnnotation>): boolean;
|
|
197
|
+
protected finalizeRender(): void;
|
|
134
198
|
private emitPostRender;
|
|
135
199
|
private removeRenderedCode;
|
|
136
200
|
private clearAuxiliaryNodes;
|
|
@@ -167,5 +231,5 @@ declare class File<LAnnotation = undefined> implements DiffsEditableComponent<LA
|
|
|
167
231
|
private cleanupErrorWrapper;
|
|
168
232
|
}
|
|
169
233
|
//#endregion
|
|
170
|
-
export { File, FileHydrateProps, FileOptions, FileRenderProps };
|
|
234
|
+
export { File, FileEditChangeHandler, type FileEditCompleteEvent, FileEditCompleteHandler, FileHydrateProps, FileOptions, FileRenderProps };
|
|
171
235
|
//# sourceMappingURL=File.d.ts.map
|
|
@@ -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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"}
|