@@ -23,7 +23,7 @@ import { Progressing } from '@Common/Progressing'
23
23
24
24
import { useCodeEditorContext } from './CodeEditor.context'
25
25
import { CodeEditorRendererProps } from './types'
26
- import { getCodeEditorHeight , getRevertControlButton , updateDiffMinimapValues } from './utils'
26
+ import { getCodeEditorHeight , getRevertControlButton , getScanLimit , updateDiffMinimapValues } from './utils'
27
27
import { DiffMinimap } from './Extensions'
28
28
29
29
export const CodeEditorRenderer = ( {
@@ -180,6 +180,8 @@ export const CodeEditorRenderer = ({
180
180
useEffect ( ( ) => {
181
181
// DIFF VIEW INITIALIZATION
182
182
if ( ! loading && codeMirrorMergeParentRef . current ) {
183
+ const scanLimit = getScanLimit ( lhsValue , value )
184
+
183
185
codeMirrorMergeInstance ?. destroy ( )
184
186
185
187
const codeMirrorMergeView = new MergeView ( {
@@ -192,7 +194,7 @@ export const CodeEditorRenderer = ({
192
194
extensions : [ ...modifiedViewExtensions , modifiedUpdateListener ] ,
193
195
} ,
194
196
...( ! readOnly ? { revertControls : 'a-to-b' , renderRevertControl : getRevertControlButton } : { } ) ,
195
- diffConfig : { scanLimit : 5000 } ,
197
+ diffConfig : { scanLimit, timeout : 5000 } ,
196
198
parent : codeMirrorMergeParentRef . current ,
197
199
} )
198
200
setCodeMirrorMergeInstance ( codeMirrorMergeView )
@@ -212,7 +214,7 @@ export const CodeEditorRenderer = ({
212
214
extensions : diffMinimapExtensions ,
213
215
} ,
214
216
gutter : false ,
215
- diffConfig : { scanLimit : 5000 } ,
217
+ diffConfig : { scanLimit, timeout : 5000 } ,
216
218
parent : diffMinimapParentRef . current ,
217
219
} )
218
220
@@ -272,6 +274,11 @@ export const CodeEditorRenderer = ({
272
274
273
275
return diffMode ? (
274
276
< div className = { `flexbox w-100 ${ componentSpecificThemeClass } ${ codeEditorParentClassName } ` } >
277
+ { ! codeMirrorMergeInstance && (
278
+ < div className = "flex h-100 w-100" >
279
+ < p > Calculating diff for large file. Please wait...</ p >
280
+ </ div >
281
+ ) }
275
282
< div
276
283
ref = { codeMirrorMergeParentRef }
277
284
className = { `cm-merge-theme flex-grow-1 h-100 dc__overflow-hidden ${ readOnly ? 'code-editor__read-only' : '' } ` }
0 commit comments