@pierre/diffs 1.1.0-beta.9 → 1.1.0
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 +7 -18
- package/dist/components/AdvancedVirtualizedFileDiff.d.ts.map +1 -1
- package/dist/components/AdvancedVirtualizedFileDiff.js +2 -7
- package/dist/components/AdvancedVirtualizedFileDiff.js.map +1 -1
- package/dist/components/AdvancedVirtualizer.js +1 -1
- package/dist/components/AdvancedVirtualizer.js.map +1 -1
- package/dist/components/File.d.ts +17 -7
- package/dist/components/File.d.ts.map +1 -1
- package/dist/components/File.js +111 -54
- package/dist/components/File.js.map +1 -1
- package/dist/components/FileDiff.d.ts +32 -14
- package/dist/components/FileDiff.d.ts.map +1 -1
- package/dist/components/FileDiff.js +156 -81
- package/dist/components/FileDiff.js.map +1 -1
- package/dist/components/UnresolvedFile.d.ts +60 -0
- package/dist/components/UnresolvedFile.d.ts.map +1 -0
- package/dist/components/UnresolvedFile.js +280 -0
- package/dist/components/UnresolvedFile.js.map +1 -0
- package/dist/components/VirtualizedFile.js +8 -5
- package/dist/components/VirtualizedFile.js.map +1 -1
- package/dist/components/VirtualizedFileDiff.d.ts +1 -1
- package/dist/components/VirtualizedFileDiff.d.ts.map +1 -1
- package/dist/components/VirtualizedFileDiff.js +15 -11
- package/dist/components/VirtualizedFileDiff.js.map +1 -1
- package/dist/components/Virtualizer.d.ts +3 -1
- package/dist/components/Virtualizer.d.ts.map +1 -1
- package/dist/components/Virtualizer.js +50 -24
- package/dist/components/Virtualizer.js.map +1 -1
- package/dist/constants.d.ts +3 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +8 -1
- package/dist/constants.js.map +1 -1
- package/dist/highlighter/shared_highlighter.d.ts +4 -2
- package/dist/highlighter/shared_highlighter.d.ts.map +1 -1
- package/dist/highlighter/shared_highlighter.js +15 -7
- package/dist/highlighter/shared_highlighter.js.map +1 -1
- package/dist/index.d.ts +9 -7
- package/dist/index.js +8 -6
- package/dist/managers/InteractionManager.d.ts +146 -0
- package/dist/managers/InteractionManager.d.ts.map +1 -0
- package/dist/managers/InteractionManager.js +813 -0
- package/dist/managers/InteractionManager.js.map +1 -0
- package/dist/managers/ResizeManager.d.ts +0 -2
- package/dist/managers/ResizeManager.d.ts.map +1 -1
- package/dist/managers/ResizeManager.js +43 -32
- package/dist/managers/ResizeManager.js.map +1 -1
- package/dist/react/File.d.ts +2 -0
- package/dist/react/File.d.ts.map +1 -1
- package/dist/react/File.js +3 -1
- package/dist/react/File.js.map +1 -1
- package/dist/react/FileDiff.d.ts +2 -0
- package/dist/react/FileDiff.d.ts.map +1 -1
- package/dist/react/FileDiff.js +3 -1
- package/dist/react/FileDiff.js.map +1 -1
- package/dist/react/MultiFileDiff.d.ts +2 -0
- package/dist/react/MultiFileDiff.d.ts.map +1 -1
- package/dist/react/MultiFileDiff.js +3 -1
- package/dist/react/MultiFileDiff.js.map +1 -1
- package/dist/react/PatchDiff.d.ts +2 -0
- package/dist/react/PatchDiff.d.ts.map +1 -1
- package/dist/react/PatchDiff.js +3 -1
- package/dist/react/PatchDiff.js.map +1 -1
- package/dist/react/UnresolvedFile.d.ts +36 -0
- package/dist/react/UnresolvedFile.d.ts.map +1 -0
- package/dist/react/UnresolvedFile.js +42 -0
- package/dist/react/UnresolvedFile.js.map +1 -0
- package/dist/react/constants.d.ts +3 -2
- package/dist/react/constants.d.ts.map +1 -1
- package/dist/react/constants.js +3 -2
- package/dist/react/constants.js.map +1 -1
- package/dist/react/index.d.ts +4 -3
- package/dist/react/index.js +3 -2
- package/dist/react/types.d.ts +11 -2
- package/dist/react/types.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.d.ts +16 -5
- package/dist/react/utils/renderDiffChildren.d.ts.map +1 -1
- package/dist/react/utils/renderDiffChildren.js +34 -7
- package/dist/react/utils/renderDiffChildren.js.map +1 -1
- package/dist/react/utils/renderFileChildren.d.ts +5 -1
- package/dist/react/utils/renderFileChildren.d.ts.map +1 -1
- package/dist/react/utils/renderFileChildren.js +13 -7
- package/dist/react/utils/renderFileChildren.js.map +1 -1
- package/dist/react/utils/useFileDiffInstance.d.ts +1 -2
- package/dist/react/utils/useFileDiffInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileDiffInstance.js +2 -2
- package/dist/react/utils/useFileDiffInstance.js.map +1 -1
- package/dist/react/utils/useFileInstance.d.ts +1 -2
- package/dist/react/utils/useFileInstance.d.ts.map +1 -1
- package/dist/react/utils/useFileInstance.js.map +1 -1
- package/dist/react/utils/useUnresolvedFileInstance.d.ts +33 -0
- package/dist/react/utils/useUnresolvedFileInstance.d.ts.map +1 -0
- package/dist/react/utils/useUnresolvedFileInstance.js +87 -0
- package/dist/react/utils/useUnresolvedFileInstance.js.map +1 -0
- package/dist/renderers/DiffHunksRenderer.d.ts +50 -6
- package/dist/renderers/DiffHunksRenderer.d.ts.map +1 -1
- package/dist/renderers/DiffHunksRenderer.js +145 -45
- package/dist/renderers/DiffHunksRenderer.js.map +1 -1
- package/dist/renderers/FileRenderer.js +1 -1
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts +46 -0
- package/dist/renderers/UnresolvedFileHunksRenderer.d.ts.map +1 -0
- package/dist/renderers/UnresolvedFileHunksRenderer.js +207 -0
- package/dist/renderers/UnresolvedFileHunksRenderer.js.map +1 -0
- package/dist/shiki-stream/stream.d.ts +1 -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 +1 -1
- package/dist/shiki-stream/tokenizer.d.ts.map +1 -1
- package/dist/shiki-stream/tokenizer.js.map +1 -1
- package/dist/shiki-stream/types.d.ts +1 -1
- package/dist/shiki-stream/types.d.ts.map +1 -1
- package/dist/sprite.d.ts +2 -2
- package/dist/sprite.d.ts.map +1 -1
- package/dist/sprite.js +3 -0
- package/dist/sprite.js.map +1 -1
- package/dist/ssr/index.d.ts +3 -3
- package/dist/ssr/index.js +2 -2
- package/dist/ssr/preloadDiffs.d.ts +23 -14
- package/dist/ssr/preloadDiffs.d.ts.map +1 -1
- package/dist/ssr/preloadDiffs.js +40 -14
- package/dist/ssr/preloadDiffs.js.map +1 -1
- package/dist/style.js +1 -1
- package/dist/style.js.map +1 -1
- package/dist/types.d.ts +29 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/areMergeConflictActionsEqual.d.ts +7 -0
- package/dist/utils/areMergeConflictActionsEqual.d.ts.map +1 -0
- package/dist/utils/areMergeConflictActionsEqual.js +11 -0
- package/dist/utils/areMergeConflictActionsEqual.js.map +1 -0
- package/dist/utils/arePrePropertiesEqual.js +10 -1
- package/dist/utils/arePrePropertiesEqual.js.map +1 -1
- package/dist/utils/areSelectionPointsEqual.d.ts +7 -0
- package/dist/utils/areSelectionPointsEqual.d.ts.map +1 -0
- package/dist/utils/areSelectionPointsEqual.js +8 -0
- package/dist/utils/areSelectionPointsEqual.js.map +1 -0
- package/dist/utils/areSelectionsEqual.d.ts +1 -1
- package/dist/utils/areSelectionsEqual.d.ts.map +1 -1
- package/dist/utils/areSelectionsEqual.js.map +1 -1
- package/dist/utils/createFileHeaderElement.js +5 -2
- package/dist/utils/createFileHeaderElement.js.map +1 -1
- package/dist/utils/createGutterUtilityContentNode.d.ts +5 -0
- package/dist/utils/createGutterUtilityContentNode.d.ts.map +1 -0
- package/dist/utils/createGutterUtilityContentNode.js +15 -0
- package/dist/utils/createGutterUtilityContentNode.js.map +1 -0
- package/dist/utils/createGutterUtilityElement.d.ts +7 -0
- package/dist/utils/createGutterUtilityElement.d.ts.map +1 -0
- package/dist/utils/createGutterUtilityElement.js +20 -0
- package/dist/utils/createGutterUtilityElement.js.map +1 -0
- package/dist/utils/createPreElement.d.ts +2 -1
- package/dist/utils/createPreElement.d.ts.map +1 -1
- package/dist/utils/createPreElement.js +2 -1
- package/dist/utils/createPreElement.js.map +1 -1
- package/dist/utils/createSeparator.js +1 -1
- package/dist/utils/createSeparator.js.map +1 -1
- package/dist/utils/createWindowFromScrollPosition.js +12 -11
- package/dist/utils/createWindowFromScrollPosition.js.map +1 -1
- package/dist/utils/getHighlighterOptions.d.ts +7 -2
- package/dist/utils/getHighlighterOptions.d.ts.map +1 -1
- package/dist/utils/getHighlighterOptions.js +3 -2
- package/dist/utils/getHighlighterOptions.js.map +1 -1
- package/dist/utils/getMergeConflictActionSlotName.d.ts +16 -0
- package/dist/utils/getMergeConflictActionSlotName.d.ts.map +1 -0
- package/dist/utils/getMergeConflictActionSlotName.js +8 -0
- package/dist/utils/getMergeConflictActionSlotName.js.map +1 -0
- package/dist/utils/getMergeConflictLineTypes.d.ts +15 -0
- package/dist/utils/getMergeConflictLineTypes.d.ts.map +1 -0
- package/dist/utils/getMergeConflictLineTypes.js +81 -0
- package/dist/utils/getMergeConflictLineTypes.js.map +1 -0
- package/dist/utils/getOrCreateCodeNode.d.ts +3 -1
- package/dist/utils/getOrCreateCodeNode.d.ts.map +1 -1
- package/dist/utils/getOrCreateCodeNode.js +5 -3
- package/dist/utils/getOrCreateCodeNode.js.map +1 -1
- package/dist/utils/hast_utils.d.ts +2 -2
- package/dist/utils/hast_utils.d.ts.map +1 -1
- package/dist/utils/hast_utils.js +3 -2
- package/dist/utils/hast_utils.js.map +1 -1
- package/dist/utils/parseMergeConflictDiffFromFile.d.ts +26 -0
- package/dist/utils/parseMergeConflictDiffFromFile.d.ts.map +1 -0
- package/dist/utils/parseMergeConflictDiffFromFile.js +143 -0
- package/dist/utils/parseMergeConflictDiffFromFile.js.map +1 -0
- package/dist/utils/resolveMergeConflict.d.ts +7 -0
- package/dist/utils/resolveMergeConflict.d.ts.map +1 -0
- package/dist/utils/resolveMergeConflict.js +30 -0
- package/dist/utils/resolveMergeConflict.js.map +1 -0
- package/dist/utils/resolveVirtualFileMetrics.js +1 -0
- package/dist/utils/resolveVirtualFileMetrics.js.map +1 -1
- package/dist/utils/setWrapperNodeProps.d.ts +2 -1
- package/dist/utils/setWrapperNodeProps.d.ts.map +1 -1
- package/dist/utils/setWrapperNodeProps.js +5 -1
- package/dist/utils/setWrapperNodeProps.js.map +1 -1
- package/dist/worker/WorkerPoolManager.d.ts +4 -2
- package/dist/worker/WorkerPoolManager.d.ts.map +1 -1
- package/dist/worker/WorkerPoolManager.js +16 -9
- package/dist/worker/WorkerPoolManager.js.map +1 -1
- package/dist/worker/types.d.ts +3 -1
- package/dist/worker/types.d.ts.map +1 -1
- package/dist/worker/wasm-BlUZCxHM.js +10 -0
- package/dist/worker/wasm-BlUZCxHM.js.map +1 -0
- package/dist/worker/worker-portable.js +10546 -10106
- package/dist/worker/worker-portable.js.map +1 -1
- package/dist/worker/worker.js +27 -19
- package/dist/worker/worker.js.map +1 -1
- package/package.json +3 -7
- package/dist/managers/LineSelectionManager.d.ts +0 -64
- package/dist/managers/LineSelectionManager.d.ts.map +0 -1
- package/dist/managers/LineSelectionManager.js +0 -270
- package/dist/managers/LineSelectionManager.js.map +0 -1
- package/dist/managers/MouseEventManager.d.ts +0 -71
- package/dist/managers/MouseEventManager.d.ts.map +0 -1
- package/dist/managers/MouseEventManager.js +0 -358
- package/dist/managers/MouseEventManager.js.map +0 -1
- package/dist/themes/pierre-dark.js +0 -1328
- package/dist/themes/pierre-dark.js.map +0 -1
- package/dist/themes/pierre-light.js +0 -1328
- package/dist/themes/pierre-light.js.map +0 -1
- package/dist/utils/createHoverContentNode.d.ts +0 -5
- package/dist/utils/createHoverContentNode.d.ts.map +0 -1
- package/dist/utils/createHoverContentNode.js +0 -15
- package/dist/utils/createHoverContentNode.js.map +0 -1
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { DEFAULT_THEMES, DIFFS_TAG_NAME, HEADER_METADATA_SLOT_ID, UNSAFE_CSS_ATTRIBUTE } from "../constants.js";
|
|
2
|
-
import {
|
|
3
|
-
import { MouseEventManager, pluckMouseEventOptions } from "../managers/MouseEventManager.js";
|
|
1
|
+
import { DEFAULT_THEMES, DIFFS_TAG_NAME, EMPTY_RENDER_RANGE, HEADER_METADATA_SLOT_ID, HEADER_PREFIX_SLOT_ID, UNSAFE_CSS_ATTRIBUTE } from "../constants.js";
|
|
2
|
+
import { InteractionManager, pluckInteractionOptions } from "../managers/InteractionManager.js";
|
|
4
3
|
import { ResizeManager } from "../managers/ResizeManager.js";
|
|
5
4
|
import { areRenderRangesEqual } from "../utils/areRenderRangesEqual.js";
|
|
6
5
|
import { getLineAnnotationName } from "../utils/getLineAnnotationName.js";
|
|
@@ -8,7 +7,7 @@ import { SVGSpriteSheet } from "../sprite.js";
|
|
|
8
7
|
import { areFilesEqual } from "../utils/areFilesEqual.js";
|
|
9
8
|
import { arePrePropertiesEqual } from "../utils/arePrePropertiesEqual.js";
|
|
10
9
|
import { createAnnotationWrapperNode } from "../utils/createAnnotationWrapperNode.js";
|
|
11
|
-
import {
|
|
10
|
+
import { createGutterUtilityContentNode } from "../utils/createGutterUtilityContentNode.js";
|
|
12
11
|
import { createUnsafeCSSStyleNode } from "../utils/createUnsafeCSSStyleNode.js";
|
|
13
12
|
import { wrapUnsafeCSS } from "../utils/cssWrappers.js";
|
|
14
13
|
import { getOrCreateCodeNode } from "../utils/getOrCreateCodeNode.js";
|
|
@@ -36,8 +35,9 @@ var FileDiff = class {
|
|
|
36
35
|
bufferBefore;
|
|
37
36
|
bufferAfter;
|
|
38
37
|
unsafeCSSStyle;
|
|
39
|
-
|
|
38
|
+
gutterUtilityContent;
|
|
40
39
|
headerElement;
|
|
40
|
+
headerPrefix;
|
|
41
41
|
headerMetadata;
|
|
42
42
|
separatorCache = /* @__PURE__ */ new Map();
|
|
43
43
|
errorWrapper;
|
|
@@ -45,8 +45,7 @@ var FileDiff = class {
|
|
|
45
45
|
hunksRenderer;
|
|
46
46
|
resizeManager;
|
|
47
47
|
scrollSyncManager;
|
|
48
|
-
|
|
49
|
-
lineSelectionManager;
|
|
48
|
+
interactionManager;
|
|
50
49
|
annotationCache = /* @__PURE__ */ new Map();
|
|
51
50
|
lineAnnotations = [];
|
|
52
51
|
deletionFile;
|
|
@@ -61,20 +60,25 @@ var FileDiff = class {
|
|
|
61
60
|
this.options = options;
|
|
62
61
|
this.workerManager = workerManager;
|
|
63
62
|
this.isContainerManaged = isContainerManaged;
|
|
64
|
-
this.hunksRenderer =
|
|
65
|
-
...options,
|
|
66
|
-
hunkSeparators: typeof options.hunkSeparators === "function" ? "custom" : options.hunkSeparators
|
|
67
|
-
}, this.handleHighlightRender, this.workerManager);
|
|
63
|
+
this.hunksRenderer = this.createHunksRenderer(options);
|
|
68
64
|
this.resizeManager = new ResizeManager();
|
|
69
65
|
this.scrollSyncManager = new ScrollSyncManager();
|
|
70
|
-
this.
|
|
71
|
-
this.lineSelectionManager = new LineSelectionManager(pluckLineSelectionOptions(options, this.getLineIndex));
|
|
66
|
+
this.interactionManager = new InteractionManager("diff", pluckInteractionOptions(options, typeof options.hunkSeparators === "function" || (options.hunkSeparators ?? "line-info") === "line-info" || options.hunkSeparators === "line-info-basic" ? this.handleExpandHunk : void 0, this.getLineIndex));
|
|
72
67
|
this.workerManager?.subscribeToThemeChanges(this);
|
|
73
68
|
this.enabled = true;
|
|
74
69
|
}
|
|
75
70
|
handleHighlightRender = () => {
|
|
76
71
|
this.rerender();
|
|
77
72
|
};
|
|
73
|
+
getHunksRendererOptions(options) {
|
|
74
|
+
return {
|
|
75
|
+
...options,
|
|
76
|
+
hunkSeparators: typeof options.hunkSeparators === "function" ? "custom" : options.hunkSeparators
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
createHunksRenderer(options) {
|
|
80
|
+
return new DiffHunksRenderer(this.getHunksRendererOptions(options), this.handleHighlightRender, this.workerManager);
|
|
81
|
+
}
|
|
78
82
|
getLineIndex = (lineNumber, side = "additions") => {
|
|
79
83
|
if (this.fileDiff == null) return;
|
|
80
84
|
const lastHunk = this.fileDiff.hunks.at(-1);
|
|
@@ -131,12 +135,8 @@ var FileDiff = class {
|
|
|
131
135
|
setOptions(options) {
|
|
132
136
|
if (options == null) return;
|
|
133
137
|
this.options = options;
|
|
134
|
-
this.hunksRenderer.setOptions(
|
|
135
|
-
|
|
136
|
-
hunkSeparators: typeof options.hunkSeparators === "function" ? "custom" : options.hunkSeparators
|
|
137
|
-
});
|
|
138
|
-
this.mouseEventManager.setOptions(pluckMouseEventOptions(options, typeof options.hunkSeparators === "function" || (options.hunkSeparators ?? "line-info") === "line-info" ? this.handleExpandHunk : void 0));
|
|
139
|
-
this.lineSelectionManager.setOptions(pluckLineSelectionOptions(options, this.getLineIndex));
|
|
138
|
+
this.hunksRenderer.setOptions(this.getHunksRendererOptions(options));
|
|
139
|
+
this.interactionManager.setOptions(pluckInteractionOptions(options, typeof options.hunkSeparators === "function" || (options.hunkSeparators ?? "line-info") === "line-info" || options.hunkSeparators === "line-info-basic" ? this.handleExpandHunk : void 0, this.getLineIndex));
|
|
140
140
|
}
|
|
141
141
|
mergeOptions(options) {
|
|
142
142
|
this.options = {
|
|
@@ -161,7 +161,7 @@ var FileDiff = class {
|
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
getHoveredLine = () => {
|
|
164
|
-
return this.
|
|
164
|
+
return this.interactionManager.getHoveredLine();
|
|
165
165
|
};
|
|
166
166
|
setLineAnnotations(lineAnnotations) {
|
|
167
167
|
this.lineAnnotations = lineAnnotations;
|
|
@@ -171,16 +171,15 @@ var FileDiff = class {
|
|
|
171
171
|
return true;
|
|
172
172
|
}
|
|
173
173
|
setSelectedLines(range) {
|
|
174
|
-
this.
|
|
174
|
+
this.interactionManager.setSelection(range);
|
|
175
175
|
}
|
|
176
176
|
cleanUp(recycle = false) {
|
|
177
177
|
this.resizeManager.cleanUp();
|
|
178
|
-
this.
|
|
178
|
+
this.interactionManager.cleanUp();
|
|
179
179
|
this.scrollSyncManager.cleanUp();
|
|
180
|
-
this.lineSelectionManager.cleanUp();
|
|
181
180
|
this.workerManager?.unsubscribeToThemeChanges(this);
|
|
182
181
|
this.renderRange = void 0;
|
|
183
|
-
if (!this.isContainerManaged) this.fileContainer?.
|
|
182
|
+
if (!this.isContainerManaged) this.fileContainer?.remove();
|
|
184
183
|
if (this.fileContainer?.shadowRoot != null) this.fileContainer.shadowRoot.innerHTML = "";
|
|
185
184
|
this.fileContainer = void 0;
|
|
186
185
|
if (this.pre != null) {
|
|
@@ -194,6 +193,8 @@ var FileDiff = class {
|
|
|
194
193
|
this.bufferAfter = void 0;
|
|
195
194
|
this.appliedPreAttributes = void 0;
|
|
196
195
|
this.headerElement = void 0;
|
|
196
|
+
this.headerPrefix = void 0;
|
|
197
|
+
this.headerMetadata = void 0;
|
|
197
198
|
this.lastRenderedHeaderHTML = void 0;
|
|
198
199
|
this.errorWrapper = void 0;
|
|
199
200
|
this.spriteSVG = void 0;
|
|
@@ -253,10 +254,9 @@ var FileDiff = class {
|
|
|
253
254
|
this.fileDiff = fileDiff ?? (oldFile != null && newFile != null ? parseDiffFromFile(oldFile, newFile) : void 0);
|
|
254
255
|
this.hunksRenderer.hydrate(this.fileDiff);
|
|
255
256
|
this.renderAnnotations();
|
|
256
|
-
this.
|
|
257
|
+
this.renderGutterUtility();
|
|
257
258
|
this.injectUnsafeCSS();
|
|
258
|
-
this.
|
|
259
|
-
this.lineSelectionManager.setup(this.pre);
|
|
259
|
+
this.interactionManager.setup(this.pre);
|
|
260
260
|
this.resizeManager.setup(this.pre, overflow === "wrap");
|
|
261
261
|
if (overflow === "scroll" && diffStyle === "split") this.scrollSyncManager.setup(this.pre, this.codeDeletions, this.codeAdditions);
|
|
262
262
|
}
|
|
@@ -264,28 +264,27 @@ var FileDiff = class {
|
|
|
264
264
|
rerender() {
|
|
265
265
|
if (!this.enabled || this.fileDiff == null && this.additionFile == null && this.deletionFile == null) return;
|
|
266
266
|
this.render({
|
|
267
|
-
oldFile: this.deletionFile,
|
|
268
|
-
newFile: this.additionFile,
|
|
269
|
-
fileDiff: this.fileDiff,
|
|
270
267
|
forceRender: true,
|
|
271
268
|
renderRange: this.renderRange
|
|
272
269
|
});
|
|
273
270
|
}
|
|
274
|
-
handleExpandHunk = (hunkIndex, direction) => {
|
|
275
|
-
this.expandHunk(hunkIndex, direction);
|
|
271
|
+
handleExpandHunk = (hunkIndex, direction, expansionLineCountOverride) => {
|
|
272
|
+
this.expandHunk(hunkIndex, direction, expansionLineCountOverride);
|
|
276
273
|
};
|
|
277
|
-
expandHunk(hunkIndex, direction) {
|
|
278
|
-
this.hunksRenderer.expandHunk(hunkIndex, direction);
|
|
274
|
+
expandHunk = (hunkIndex, direction, expansionLineCountOverride) => {
|
|
275
|
+
this.hunksRenderer.expandHunk(hunkIndex, direction, expansionLineCountOverride);
|
|
279
276
|
this.rerender();
|
|
280
|
-
}
|
|
277
|
+
};
|
|
281
278
|
render({ oldFile, newFile, fileDiff, forceRender = false, lineAnnotations, fileContainer, containerWrapper, renderRange }) {
|
|
282
279
|
if (!this.enabled) throw new Error("FileDiff.render: attempting to call render after cleaned up");
|
|
280
|
+
const { collapsed = false } = this.options;
|
|
281
|
+
const nextRenderRange = collapsed ? void 0 : renderRange;
|
|
283
282
|
const filesDidChange = oldFile != null && newFile != null && (!areFilesEqual(oldFile, this.deletionFile) || !areFilesEqual(newFile, this.additionFile));
|
|
284
283
|
let diffDidChange = fileDiff != null && fileDiff !== this.fileDiff;
|
|
285
284
|
const annotationsChanged = lineAnnotations != null && (lineAnnotations.length > 0 || this.lineAnnotations.length > 0) ? lineAnnotations !== this.lineAnnotations : false;
|
|
286
|
-
if (areRenderRangesEqual(
|
|
285
|
+
if (!collapsed && areRenderRangesEqual(nextRenderRange, this.renderRange) && !forceRender && !annotationsChanged && (fileDiff != null && fileDiff === this.fileDiff || fileDiff == null && !filesDidChange)) return false;
|
|
287
286
|
const { renderRange: previousRenderRange } = this;
|
|
288
|
-
this.renderRange =
|
|
287
|
+
this.renderRange = nextRenderRange;
|
|
289
288
|
this.deletionFile = oldFile;
|
|
290
289
|
this.additionFile = newFile;
|
|
291
290
|
if (fileDiff != null) this.fileDiff = fileDiff;
|
|
@@ -303,19 +302,42 @@ var FileDiff = class {
|
|
|
303
302
|
const { diffStyle = "split", disableErrorHandling = false, disableFileHeader = false, overflow = "scroll" } = this.options;
|
|
304
303
|
if (disableFileHeader) {
|
|
305
304
|
if (this.headerElement != null) {
|
|
306
|
-
this.headerElement.
|
|
305
|
+
this.headerElement.remove();
|
|
307
306
|
this.headerElement = void 0;
|
|
308
307
|
this.lastRenderedHeaderHTML = void 0;
|
|
309
308
|
}
|
|
309
|
+
if (this.headerPrefix != null) {
|
|
310
|
+
this.headerPrefix.remove();
|
|
311
|
+
this.headerPrefix = void 0;
|
|
312
|
+
}
|
|
313
|
+
if (this.headerMetadata != null) {
|
|
314
|
+
this.headerMetadata.remove();
|
|
315
|
+
this.headerMetadata = void 0;
|
|
316
|
+
}
|
|
310
317
|
}
|
|
311
318
|
fileContainer = this.getOrCreateFileContainer(fileContainer, containerWrapper);
|
|
319
|
+
if (collapsed) {
|
|
320
|
+
this.removeRenderedCode();
|
|
321
|
+
this.clearAuxiliaryNodes();
|
|
322
|
+
try {
|
|
323
|
+
const hunksResult = this.hunksRenderer.renderDiff(this.fileDiff, EMPTY_RENDER_RANGE);
|
|
324
|
+
if (hunksResult?.headerElement != null) this.applyHeaderToDOM(hunksResult.headerElement, fileContainer);
|
|
325
|
+
this.renderSeparators([]);
|
|
326
|
+
this.injectUnsafeCSS();
|
|
327
|
+
} catch (error) {
|
|
328
|
+
if (disableErrorHandling) throw error;
|
|
329
|
+
console.error(error);
|
|
330
|
+
if (error instanceof Error) this.applyErrorToDOM(error, fileContainer);
|
|
331
|
+
}
|
|
332
|
+
return true;
|
|
333
|
+
}
|
|
312
334
|
try {
|
|
313
335
|
const pre = this.getOrCreatePreNode(fileContainer);
|
|
314
336
|
if (!(this.canPartiallyRender(forceRender, annotationsChanged, filesDidChange || diffDidChange) && this.applyPartialRender({
|
|
315
337
|
previousRenderRange,
|
|
316
|
-
renderRange
|
|
338
|
+
renderRange: nextRenderRange
|
|
317
339
|
}))) {
|
|
318
|
-
const hunksResult = this.hunksRenderer.renderDiff(this.fileDiff,
|
|
340
|
+
const hunksResult = this.hunksRenderer.renderDiff(this.fileDiff, nextRenderRange);
|
|
319
341
|
if (hunksResult == null) {
|
|
320
342
|
if (this.workerManager?.isInitialized() === false) this.workerManager.initialize().then(() => this.rerender());
|
|
321
343
|
return false;
|
|
@@ -323,17 +345,16 @@ var FileDiff = class {
|
|
|
323
345
|
if (hunksResult.headerElement != null) this.applyHeaderToDOM(hunksResult.headerElement, fileContainer);
|
|
324
346
|
if (hunksResult.additionsContentAST != null || hunksResult.deletionsContentAST != null || hunksResult.unifiedContentAST != null) this.applyHunksToDOM(pre, hunksResult);
|
|
325
347
|
else if (this.pre != null) {
|
|
326
|
-
this.pre.
|
|
348
|
+
this.pre.remove();
|
|
327
349
|
this.pre = void 0;
|
|
328
350
|
}
|
|
329
351
|
this.renderSeparators(hunksResult.hunkData);
|
|
330
352
|
}
|
|
331
|
-
this.applyBuffers(pre,
|
|
353
|
+
this.applyBuffers(pre, nextRenderRange);
|
|
332
354
|
this.injectUnsafeCSS();
|
|
333
355
|
this.renderAnnotations();
|
|
334
|
-
this.
|
|
335
|
-
this.
|
|
336
|
-
this.lineSelectionManager.setup(pre);
|
|
356
|
+
this.renderGutterUtility();
|
|
357
|
+
this.interactionManager.setup(pre);
|
|
337
358
|
this.resizeManager.setup(pre, overflow === "wrap");
|
|
338
359
|
if (overflow === "scroll" && diffStyle === "split") this.scrollSyncManager.setup(pre, this.codeDeletions, this.codeAdditions);
|
|
339
360
|
else this.scrollSyncManager.cleanUp();
|
|
@@ -344,6 +365,33 @@ var FileDiff = class {
|
|
|
344
365
|
}
|
|
345
366
|
return true;
|
|
346
367
|
}
|
|
368
|
+
removeRenderedCode() {
|
|
369
|
+
this.resizeManager.cleanUp();
|
|
370
|
+
this.scrollSyncManager.cleanUp();
|
|
371
|
+
this.interactionManager.cleanUp();
|
|
372
|
+
this.bufferBefore?.remove();
|
|
373
|
+
this.bufferBefore = void 0;
|
|
374
|
+
this.bufferAfter?.remove();
|
|
375
|
+
this.bufferAfter = void 0;
|
|
376
|
+
this.codeUnified?.remove();
|
|
377
|
+
this.codeUnified = void 0;
|
|
378
|
+
this.codeDeletions?.remove();
|
|
379
|
+
this.codeDeletions = void 0;
|
|
380
|
+
this.codeAdditions?.remove();
|
|
381
|
+
this.codeAdditions = void 0;
|
|
382
|
+
this.pre?.remove();
|
|
383
|
+
this.pre = void 0;
|
|
384
|
+
this.appliedPreAttributes = void 0;
|
|
385
|
+
this.lastRowCount = void 0;
|
|
386
|
+
}
|
|
387
|
+
clearAuxiliaryNodes() {
|
|
388
|
+
for (const { element } of this.separatorCache.values()) element.remove();
|
|
389
|
+
this.separatorCache.clear();
|
|
390
|
+
for (const { element } of this.annotationCache.values()) element.remove();
|
|
391
|
+
this.annotationCache.clear();
|
|
392
|
+
this.gutterUtilityContent?.remove();
|
|
393
|
+
this.gutterUtilityContent = void 0;
|
|
394
|
+
}
|
|
347
395
|
renderPlaceholder(height) {
|
|
348
396
|
if (this.fileContainer == null) return false;
|
|
349
397
|
this.cleanChildNodes();
|
|
@@ -359,8 +407,7 @@ var FileDiff = class {
|
|
|
359
407
|
cleanChildNodes() {
|
|
360
408
|
this.resizeManager.cleanUp();
|
|
361
409
|
this.scrollSyncManager.cleanUp();
|
|
362
|
-
this.
|
|
363
|
-
this.lineSelectionManager.cleanUp();
|
|
410
|
+
this.interactionManager.cleanUp();
|
|
364
411
|
this.bufferAfter?.remove();
|
|
365
412
|
this.bufferBefore?.remove();
|
|
366
413
|
this.codeAdditions?.remove();
|
|
@@ -368,7 +415,9 @@ var FileDiff = class {
|
|
|
368
415
|
this.codeUnified?.remove();
|
|
369
416
|
this.errorWrapper?.remove();
|
|
370
417
|
this.headerElement?.remove();
|
|
371
|
-
this.
|
|
418
|
+
this.gutterUtilityContent?.remove();
|
|
419
|
+
this.headerPrefix?.remove();
|
|
420
|
+
this.headerMetadata?.remove();
|
|
372
421
|
this.pre?.remove();
|
|
373
422
|
this.spriteSVG?.remove();
|
|
374
423
|
this.unsafeCSSStyle?.remove();
|
|
@@ -379,7 +428,9 @@ var FileDiff = class {
|
|
|
379
428
|
this.codeUnified = void 0;
|
|
380
429
|
this.errorWrapper = void 0;
|
|
381
430
|
this.headerElement = void 0;
|
|
382
|
-
this.
|
|
431
|
+
this.gutterUtilityContent = void 0;
|
|
432
|
+
this.headerPrefix = void 0;
|
|
433
|
+
this.headerMetadata = void 0;
|
|
383
434
|
this.pre = void 0;
|
|
384
435
|
this.spriteSVG = void 0;
|
|
385
436
|
this.unsafeCSSStyle = void 0;
|
|
@@ -389,7 +440,7 @@ var FileDiff = class {
|
|
|
389
440
|
renderSeparators(hunkData) {
|
|
390
441
|
const { hunkSeparators } = this.options;
|
|
391
442
|
if (this.isContainerManaged || this.fileContainer == null || typeof hunkSeparators !== "function") {
|
|
392
|
-
for (const { element } of this.separatorCache.values()) element.
|
|
443
|
+
for (const { element } of this.separatorCache.values()) element.remove();
|
|
393
444
|
this.separatorCache.clear();
|
|
394
445
|
return;
|
|
395
446
|
}
|
|
@@ -398,11 +449,12 @@ var FileDiff = class {
|
|
|
398
449
|
const id = hunk.slotName;
|
|
399
450
|
let cache = this.separatorCache.get(id);
|
|
400
451
|
if (cache == null || !areHunkDataEqual(hunk, cache.hunkData)) {
|
|
401
|
-
cache?.element.
|
|
452
|
+
cache?.element.remove();
|
|
402
453
|
const element = document.createElement("div");
|
|
403
454
|
element.style.display = "contents";
|
|
404
455
|
element.slot = hunk.slotName;
|
|
405
|
-
|
|
456
|
+
const child = hunkSeparators(hunk, this);
|
|
457
|
+
if (child != null) element.appendChild(child);
|
|
406
458
|
this.fileContainer.appendChild(element);
|
|
407
459
|
cache = {
|
|
408
460
|
element,
|
|
@@ -414,12 +466,12 @@ var FileDiff = class {
|
|
|
414
466
|
}
|
|
415
467
|
for (const [id, { element }] of staleSeparators.entries()) {
|
|
416
468
|
this.separatorCache.delete(id);
|
|
417
|
-
element.
|
|
469
|
+
element.remove();
|
|
418
470
|
}
|
|
419
471
|
}
|
|
420
472
|
renderAnnotations() {
|
|
421
473
|
if (this.isContainerManaged || this.fileContainer == null) {
|
|
422
|
-
for (const { element } of this.annotationCache.values()) element.
|
|
474
|
+
for (const { element } of this.annotationCache.values()) element.remove();
|
|
423
475
|
this.annotationCache.clear();
|
|
424
476
|
return;
|
|
425
477
|
}
|
|
@@ -429,7 +481,7 @@ var FileDiff = class {
|
|
|
429
481
|
const id = `${index}-${getLineAnnotationName(annotation)}`;
|
|
430
482
|
let cache = this.annotationCache.get(id);
|
|
431
483
|
if (cache == null || !areDiffLineAnnotationsEqual(annotation, cache.annotation)) {
|
|
432
|
-
cache?.element.
|
|
484
|
+
cache?.element.remove();
|
|
433
485
|
const content = renderAnnotation(annotation);
|
|
434
486
|
if (content == null) continue;
|
|
435
487
|
cache = {
|
|
@@ -444,22 +496,27 @@ var FileDiff = class {
|
|
|
444
496
|
}
|
|
445
497
|
for (const [id, { element }] of staleAnnotations.entries()) {
|
|
446
498
|
this.annotationCache.delete(id);
|
|
447
|
-
element.
|
|
499
|
+
element.remove();
|
|
448
500
|
}
|
|
449
501
|
}
|
|
450
|
-
|
|
451
|
-
const
|
|
452
|
-
if (this.fileContainer == null ||
|
|
453
|
-
|
|
454
|
-
|
|
502
|
+
renderGutterUtility() {
|
|
503
|
+
const renderGutterUtility = this.options.renderGutterUtility ?? this.options.renderHoverUtility;
|
|
504
|
+
if (this.fileContainer == null || renderGutterUtility == null) {
|
|
505
|
+
this.gutterUtilityContent?.remove();
|
|
506
|
+
this.gutterUtilityContent = void 0;
|
|
507
|
+
return;
|
|
508
|
+
}
|
|
509
|
+
const element = renderGutterUtility(this.interactionManager.getHoveredLine);
|
|
510
|
+
if (element != null && this.gutterUtilityContent != null) return;
|
|
455
511
|
else if (element == null) {
|
|
456
|
-
this.
|
|
457
|
-
this.
|
|
512
|
+
this.gutterUtilityContent?.remove();
|
|
513
|
+
this.gutterUtilityContent = void 0;
|
|
458
514
|
return;
|
|
459
515
|
}
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
this.fileContainer.appendChild(
|
|
516
|
+
const gutterUtilityContent = createGutterUtilityContentNode();
|
|
517
|
+
gutterUtilityContent.appendChild(element);
|
|
518
|
+
this.fileContainer.appendChild(gutterUtilityContent);
|
|
519
|
+
this.gutterUtilityContent = gutterUtilityContent;
|
|
463
520
|
}
|
|
464
521
|
getOrCreateFileContainer(fileContainer, parentNode) {
|
|
465
522
|
const previousContainer = this.fileContainer;
|
|
@@ -527,13 +584,26 @@ var FileDiff = class {
|
|
|
527
584
|
this.lastRenderedHeaderHTML = headerHTML;
|
|
528
585
|
}
|
|
529
586
|
if (this.isContainerManaged) return;
|
|
530
|
-
const { renderHeaderMetadata } = this.options;
|
|
531
|
-
if (this.
|
|
587
|
+
const { renderHeaderPrefix, renderHeaderMetadata } = this.options;
|
|
588
|
+
if (this.headerPrefix != null) this.headerPrefix.remove();
|
|
589
|
+
if (this.headerMetadata != null) this.headerMetadata.remove();
|
|
590
|
+
const prefix = renderHeaderPrefix?.({
|
|
591
|
+
deletionFile: this.deletionFile,
|
|
592
|
+
additionFile: this.additionFile,
|
|
593
|
+
fileDiff: this.fileDiff
|
|
594
|
+
}) ?? void 0;
|
|
532
595
|
const content = renderHeaderMetadata?.({
|
|
533
596
|
deletionFile: this.deletionFile,
|
|
534
597
|
additionFile: this.additionFile,
|
|
535
598
|
fileDiff: this.fileDiff
|
|
536
599
|
}) ?? void 0;
|
|
600
|
+
if (prefix != null) {
|
|
601
|
+
this.headerPrefix = document.createElement("div");
|
|
602
|
+
this.headerPrefix.slot = HEADER_PREFIX_SLOT_ID;
|
|
603
|
+
if (prefix instanceof Element) this.headerPrefix.appendChild(prefix);
|
|
604
|
+
else this.headerPrefix.innerText = `${prefix}`;
|
|
605
|
+
container.appendChild(this.headerPrefix);
|
|
606
|
+
}
|
|
537
607
|
if (content != null) {
|
|
538
608
|
this.headerMetadata = document.createElement("div");
|
|
539
609
|
this.headerMetadata.slot = HEADER_METADATA_SLOT_ID;
|
|
@@ -554,6 +624,7 @@ var FileDiff = class {
|
|
|
554
624
|
}
|
|
555
625
|
applyHunksToDOM(pre, result) {
|
|
556
626
|
const { overflow = "scroll" } = this.options;
|
|
627
|
+
const containerSize = (this.options.hunkSeparators ?? "line-info") === "line-info";
|
|
557
628
|
const rowSpan = overflow === "wrap" ? result.rowCount : void 0;
|
|
558
629
|
this.cleanupErrorWrapper();
|
|
559
630
|
this.applyPreNodeAttributes(pre, result);
|
|
@@ -571,7 +642,8 @@ var FileDiff = class {
|
|
|
571
642
|
this.codeUnified = getOrCreateCodeNode({
|
|
572
643
|
code: this.codeUnified,
|
|
573
644
|
columnType: "unified",
|
|
574
|
-
rowSpan
|
|
645
|
+
rowSpan,
|
|
646
|
+
containerSize
|
|
575
647
|
});
|
|
576
648
|
this.codeUnified.innerHTML = this.hunksRenderer.renderPartialHTML(unifiedAST);
|
|
577
649
|
codeElements.push(this.codeUnified);
|
|
@@ -583,7 +655,8 @@ var FileDiff = class {
|
|
|
583
655
|
this.codeDeletions = getOrCreateCodeNode({
|
|
584
656
|
code: this.codeDeletions,
|
|
585
657
|
columnType: "deletions",
|
|
586
|
-
rowSpan
|
|
658
|
+
rowSpan,
|
|
659
|
+
containerSize
|
|
587
660
|
});
|
|
588
661
|
this.codeDeletions.innerHTML = this.hunksRenderer.renderPartialHTML(deletionsAST);
|
|
589
662
|
codeElements.push(this.codeDeletions);
|
|
@@ -598,7 +671,8 @@ var FileDiff = class {
|
|
|
598
671
|
this.codeAdditions = getOrCreateCodeNode({
|
|
599
672
|
code: this.codeAdditions,
|
|
600
673
|
columnType: "additions",
|
|
601
|
-
rowSpan
|
|
674
|
+
rowSpan,
|
|
675
|
+
containerSize
|
|
602
676
|
});
|
|
603
677
|
this.codeAdditions.innerHTML = this.hunksRenderer.renderPartialHTML(additionsAST);
|
|
604
678
|
codeElements.push(this.codeAdditions);
|
|
@@ -661,7 +735,7 @@ var FileDiff = class {
|
|
|
661
735
|
if (result == null) return;
|
|
662
736
|
if (diffStyle === "unified" && !Array.isArray(codeElements)) this.insertPartialHTML(diffStyle, codeElements, result, insertPosition);
|
|
663
737
|
else if (diffStyle === "split" && Array.isArray(codeElements)) this.insertPartialHTML(diffStyle, codeElements, result, insertPosition);
|
|
664
|
-
else throw new Error("
|
|
738
|
+
else throw new Error("FileDiff.applyPartialRender.applyChunk: invalid chunk application");
|
|
665
739
|
rowCount += result.rowCount;
|
|
666
740
|
};
|
|
667
741
|
this.cleanupErrorWrapper();
|
|
@@ -792,7 +866,7 @@ var FileDiff = class {
|
|
|
792
866
|
}
|
|
793
867
|
if (gutterElement.dataset.gutterBuffer === "buffer" && "contentBuffer" in contentElement.dataset) {
|
|
794
868
|
const totalRows = this.getBufferSize(contentElement.dataset);
|
|
795
|
-
if (totalRows == null) throw new Error("
|
|
869
|
+
if (totalRows == null) throw new Error("FileDiff.trimColumnRows: invalid element");
|
|
796
870
|
if (preTrimCount > 0) {
|
|
797
871
|
const rowsToRemove = Math.min(preTrimCount, totalRows);
|
|
798
872
|
const newSize = totalRows - rowsToRemove;
|
|
@@ -886,11 +960,11 @@ var FileDiff = class {
|
|
|
886
960
|
const { disableVirtualizationBuffers = false } = this.options;
|
|
887
961
|
if (disableVirtualizationBuffers || renderRange == null) {
|
|
888
962
|
if (this.bufferBefore != null) {
|
|
889
|
-
this.bufferBefore.
|
|
963
|
+
this.bufferBefore.remove();
|
|
890
964
|
this.bufferBefore = void 0;
|
|
891
965
|
}
|
|
892
966
|
if (this.bufferAfter != null) {
|
|
893
|
-
this.bufferAfter.
|
|
967
|
+
this.bufferAfter.remove();
|
|
894
968
|
this.bufferAfter = void 0;
|
|
895
969
|
}
|
|
896
970
|
return;
|
|
@@ -904,7 +978,7 @@ var FileDiff = class {
|
|
|
904
978
|
this.bufferBefore.style.setProperty("height", `${renderRange.bufferBefore}px`);
|
|
905
979
|
this.bufferBefore.style.setProperty("contain", "strict");
|
|
906
980
|
} else if (this.bufferBefore != null) {
|
|
907
|
-
this.bufferBefore.
|
|
981
|
+
this.bufferBefore.remove();
|
|
908
982
|
this.bufferBefore = void 0;
|
|
909
983
|
}
|
|
910
984
|
if (renderRange.bufferAfter > 0) {
|
|
@@ -916,11 +990,11 @@ var FileDiff = class {
|
|
|
916
990
|
this.bufferAfter.style.setProperty("height", `${renderRange.bufferAfter}px`);
|
|
917
991
|
this.bufferAfter.style.setProperty("contain", "strict");
|
|
918
992
|
} else if (this.bufferAfter != null) {
|
|
919
|
-
this.bufferAfter.
|
|
993
|
+
this.bufferAfter.remove();
|
|
920
994
|
this.bufferAfter = void 0;
|
|
921
995
|
}
|
|
922
996
|
}
|
|
923
|
-
applyPreNodeAttributes(pre, { themeStyles, baseThemeType, additionsContentAST, deletionsContentAST, totalLines }) {
|
|
997
|
+
applyPreNodeAttributes(pre, { themeStyles, baseThemeType, additionsContentAST, deletionsContentAST, totalLines }, customProperties) {
|
|
924
998
|
const { diffIndicators = "bars", disableBackground = false, disableLineNumbers = false, overflow = "scroll", themeType = "system", diffStyle = "split" } = this.options;
|
|
925
999
|
const preProperties = {
|
|
926
1000
|
type: "diff",
|
|
@@ -931,7 +1005,8 @@ var FileDiff = class {
|
|
|
931
1005
|
split: diffStyle === "unified" ? false : additionsContentAST != null && deletionsContentAST != null,
|
|
932
1006
|
themeStyles,
|
|
933
1007
|
themeType: baseThemeType ?? themeType,
|
|
934
|
-
totalLines
|
|
1008
|
+
totalLines,
|
|
1009
|
+
customProperties
|
|
935
1010
|
};
|
|
936
1011
|
if (arePrePropertiesEqual(preProperties, this.appliedPreAttributes)) return;
|
|
937
1012
|
setPreNodeProperties(pre, preProperties);
|
|
@@ -941,7 +1016,7 @@ var FileDiff = class {
|
|
|
941
1016
|
this.cleanupErrorWrapper();
|
|
942
1017
|
const pre = this.getOrCreatePreNode(container);
|
|
943
1018
|
pre.innerHTML = "";
|
|
944
|
-
pre.
|
|
1019
|
+
pre.remove();
|
|
945
1020
|
this.pre = void 0;
|
|
946
1021
|
this.appliedPreAttributes = void 0;
|
|
947
1022
|
const shadowRoot = container.shadowRoot ?? container.attachShadow({ mode: "open" });
|
|
@@ -959,7 +1034,7 @@ var FileDiff = class {
|
|
|
959
1034
|
this.errorWrapper.appendChild(errorStack);
|
|
960
1035
|
}
|
|
961
1036
|
cleanupErrorWrapper() {
|
|
962
|
-
this.errorWrapper?.
|
|
1037
|
+
this.errorWrapper?.remove();
|
|
963
1038
|
this.errorWrapper = void 0;
|
|
964
1039
|
}
|
|
965
1040
|
};
|