Skip to content

Commit 6aeab69

Browse files
authored
fix(code-editor): can't move files on basic editor (#1768)
1 parent 902f02d commit 6aeab69

File tree

3 files changed

+22
-10
lines changed

3 files changed

+22
-10
lines changed

modules/code-editor/src/views/full/FileNavigator.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ class FileNavigator extends React.Component<Props, State> {
212212
}
213213

214214
const isDisabled = file.name.startsWith('.')
215-
const canMove = this.props.store.editor.isAdvanced && this.props.moveFile
215+
const canMove = this.props.moveFile
216216

217217
ContextMenu.show(
218218
<Menu>

modules/code-editor/src/views/full/SidePanel.tsx

+14-8
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ class PanelContent extends React.Component<Props> {
195195
selectedNode={this.state.selectedNode}
196196
onNodeStateExpanded={this.updateNodeExpanded}
197197
onNodeStateSelected={this.updateNodeSelected}
198+
moveFile={file => this.setState({ selectedFile: file, isMoveModalOpen: true })}
198199
/>
199200
</SidePanelSection>
200201
)
@@ -245,6 +246,7 @@ class PanelContent extends React.Component<Props> {
245246
selectedNode={this.state.selectedNode}
246247
onNodeStateExpanded={this.updateNodeExpanded}
247248
onNodeStateSelected={this.updateNodeSelected}
249+
moveFile={file => this.setState({ selectedFile: file, isMoveModalOpen: true })}
248250
/>
249251
</SidePanelSection>
250252
)
@@ -282,14 +284,6 @@ class PanelContent extends React.Component<Props> {
282284
onNodeStateSelected={this.updateNodeSelected}
283285
moveFile={file => this.setState({ selectedFile: file, isMoveModalOpen: true })}
284286
/>
285-
<NameModal
286-
isOpen={this.state.isMoveModalOpen}
287-
toggle={() => this.setState({ isMoveModalOpen: !this.state.isMoveModalOpen })}
288-
createFile={createFile}
289-
renameFile={this.props.store.renameFile}
290-
selectedFile={this.state.selectedFile}
291-
files={this.props.files}
292-
/>
293287
</SidePanelSection>
294288
)
295289
}
@@ -354,6 +348,10 @@ class PanelContent extends React.Component<Props> {
354348
]
355349
}
356350

351+
createFile = async (name: string) => {
352+
return this.props.editor.openFile({ name, location: name, content: ' ', type: 'raw' })
353+
}
354+
357355
render() {
358356
const { isAdvanced } = this.props.editor
359357
return (
@@ -375,6 +373,14 @@ class PanelContent extends React.Component<Props> {
375373
{this.renderSectionModuleConfig()}
376374
</React.Fragment>
377375
)}
376+
<NameModal
377+
isOpen={this.state.isMoveModalOpen}
378+
toggle={() => this.setState({ isMoveModalOpen: !this.state.isMoveModalOpen })}
379+
createFile={this.createFile}
380+
renameFile={this.props.store.renameFile}
381+
selectedFile={this.state.selectedFile}
382+
files={this.props.files}
383+
/>
378384
</React.Fragment>
379385

380386
<MainLayout.BottomPanel.Register tabName="Code Editor">

modules/code-editor/src/views/full/components/NameModal.tsx

+7-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,13 @@ const NameModal: FC<Props> = props => {
2424
const [name, setName] = useState('')
2525

2626
useEffect(() => {
27-
props.selectedFile ? setName(props.selectedFile.location) : setName('')
27+
if (!props.selectedFile) {
28+
setName('')
29+
return
30+
}
31+
32+
const { location, hookType } = props.selectedFile
33+
setName(hookType?.length ? location.replace(hookType + '/', '') : location)
2834
}, [props.isOpen])
2935

3036
const submit = async e => {

0 commit comments

Comments
 (0)