feat: open target editor on mount

pull/39553/head
Oliver Eyton-Williams 2020-07-27 15:29:08 +02:00 committed by Mrugesh Mohapatra
parent 02aff4d400
commit a4c836c6d4
1 changed files with 11 additions and 1 deletions

View File

@ -3,6 +3,7 @@ import React, { Component, Suspense } from 'react';
import { connect } from 'react-redux';
import { ReflexContainer, ReflexElement, ReflexSplitter } from 'react-reflex';
import { createSelector } from 'reselect';
import { isEmpty } from 'lodash';
import { isDonationModalOpenSelector, userSelector } from '../../../redux';
import {
canFocusEditorSelector,
@ -69,6 +70,15 @@ const mapDispatchToProps = {
updateFile
};
function getTargetEditor(challengeFiles) {
let targetEditor = Object.values(challengeFiles).find(
({ editableRegionBoundaries }) => !isEmpty(editableRegionBoundaries)
)?.key;
// fallback for when there is no editable region.
return targetEditor || toSortedArray(challengeFiles)[0].key;
}
class MultifileEditor extends Component {
constructor(...props) {
super(...props);
@ -129,7 +139,7 @@ class MultifileEditor extends Component {
const { challengeFiles } = this.props;
const targetEditor = toSortedArray(challengeFiles)[0].key;
const targetEditor = getTargetEditor(challengeFiles);
this.state = {
visibleEditors: { [targetEditor]: true }