@@ -589,30 +589,38 @@ export const Builder = forwardRef<IBuilderRef, IBuilderProps>(({
589589
590590 const content =
591591 textModeEnabled && mode === 'text' ? (
592- TextModeEditorComponent === defaultComponents . TextModeEditor ? (
593- < DefaultTextModeEditor
594- value = { textValue }
595- diagnostics = { textDiagnostics }
596- protectedRanges = { textProtectedRanges }
597- protectedRangeHoverMessage = { strings . textMode ?. lockedRangesHover || null }
598- errorMessage = { textErrorMessage }
599- TextModeInputComponent = { TextModeInputComponent }
600- readOnly = { readOnly }
601- allowProtectedRangeDeletion = { ! readOnlyProtectsDelete }
602- onChange = { handleTextChange }
603- />
604- ) : (
605- < TextModeEditorComponent
606- value = { textValue }
607- diagnostics = { textDiagnostics }
608- protectedRanges = { textProtectedRanges }
609- protectedRangeHoverMessage = { strings . textMode ?. lockedRangesHover || null }
610- errorMessage = { textErrorMessage }
611- readOnly = { readOnly }
612- allowProtectedRangeDeletion = { ! readOnlyProtectsDelete }
613- onChange = { handleTextChange }
614- />
615- )
592+ ( ( ) => {
593+ const textModeProtectedRanges = readOnly
594+ ? textValue . length > 0
595+ ? [ { start : 0 , end : textValue . length } ]
596+ : [ ]
597+ : textProtectedRanges ;
598+
599+ return TextModeEditorComponent === defaultComponents . TextModeEditor ? (
600+ < DefaultTextModeEditor
601+ value = { textValue }
602+ diagnostics = { textDiagnostics }
603+ protectedRanges = { textModeProtectedRanges }
604+ protectedRangeHoverMessage = { strings . textMode ?. lockedRangesHover || null }
605+ errorMessage = { textErrorMessage }
606+ TextModeInputComponent = { TextModeInputComponent }
607+ readOnly = { readOnly }
608+ allowProtectedRangeDeletion = { ! readOnlyProtectsDelete }
609+ onChange = { handleTextChange }
610+ />
611+ ) : (
612+ < TextModeEditorComponent
613+ value = { textValue }
614+ diagnostics = { textDiagnostics }
615+ protectedRanges = { textModeProtectedRanges }
616+ protectedRangeHoverMessage = { strings . textMode ?. lockedRangesHover || null }
617+ errorMessage = { textErrorMessage }
618+ readOnly = { readOnly }
619+ allowProtectedRangeDeletion = { ! readOnlyProtectsDelete }
620+ onChange = { handleTextChange }
621+ />
622+ ) ;
623+ } ) ( )
616624 ) : (
617625 builderContent
618626 ) ;
0 commit comments