Skip to content

Commit

Permalink
fix: rename dir name error
Browse files Browse the repository at this point in the history
  • Loading branch information
1943time committed Jul 11, 2023
1 parent 82c6235 commit 087bfca
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 17 deletions.
2 changes: 1 addition & 1 deletion src/renderer/src/components/tree/ui/TreeRender.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ const RenderItem = observer(({items, level}: {items: IFileItem[], level: number}
clearTimeout(timer.current)
timer.current = window.setTimeout(() => {
treeStore.saveNote(item)
}, 60)
}, 30)
}, [])
return (
<>
Expand Down
10 changes: 7 additions & 3 deletions src/renderer/src/editor/parser/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,11 @@ const parserBlock = (nodes: Content[], top = false) => {
return els
}
export const markdownParser = (filePath: string) => {
const mdStr = fs.readFileSync(filePath, {encoding: 'utf-8'})
const root = parser.parse(mdStr)
return {schema: parserBlock(root.children, true), nodes: root.children}
try {
const mdStr = fs.readFileSync(filePath, {encoding: 'utf-8'})
const root = parser.parse(mdStr)
return {schema: parserBlock(root.children, true), nodes: root.children}
} catch (e) {
return {schema: [], nodes: []}
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import {IFileItem} from '../../index'
import {IFileItem} from '../index'
import {readdirSync, statSync} from 'fs'
import {basename, join, parse} from 'path'
import {basename, extname, join, parse} from 'path'
import {observable} from 'mobx'
import {nanoid} from 'nanoid'

Expand All @@ -11,14 +11,14 @@ export const createFileNode = (params: {
filePath?: string
mode?: IFileItem['mode']
}) => {
const p = parse(params.fileName)
const p = params.folder ? params.fileName : parse(params.fileName).name
const node = {
id: nanoid(),
filename: p.name,
filename: p,
folder: params.folder,
children: params.folder ? [] : undefined,
mode: params.mode,
ext: params.folder ? undefined : p.ext.replace(/^\./, ''),
ext: params.folder ? undefined : extname(params.fileName).replace(/^\./, ''),
} as IFileItem

Object.defineProperty(node, 'parent', {
Expand Down
10 changes: 6 additions & 4 deletions src/renderer/src/store/tree.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import {action, makeAutoObservable, observable, runInAction} from 'mobx'
import {GetFields, IFileItem, Tab} from '../index'
import {createFileNode, parserNode, sortFiles} from '../components/tree/parserNode'
import {createFileNode, parserNode, sortFiles} from './parserNode'
import {nanoid} from 'nanoid'
import {basename, join, parse} from 'path'
import {mkdirSync, appendFileSync, existsSync, renameSync, watch, statSync, readFileSync} from 'fs'
import {MainApi} from '../api/main'
import {markdownParser} from '../editor/parser'
import {MenuKey} from '../utils/keyboard'
import {message$, stat} from '../utils'
import {Watcher} from '../components/watch'
import {Watcher} from './watch'
import {Subject} from 'rxjs'
import {mediaType} from '../editor/utils/dom'
import {configStore} from './config'
Expand Down Expand Up @@ -405,8 +405,10 @@ export class TreeStore {
} else {
const p = parse(file.editName)
const path = file.filePath
file.filename = p.name
renameSync(path, join(path, '..', p.name) + `.${file.ext}`)
file.filename = file.folder ? file.editName : p.name
let newPath = join(path, '..', file.filename)
if (!file.folder && file.ext) newPath += `.${file.ext}`
renameSync(path, newPath)
file.mode = undefined
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import {TreeStore} from '../store/tree'
import {TreeStore} from './tree'
import {basename, join} from 'path'
import {runInAction} from 'mobx'
import {createFileNode, sortFiles} from './tree/parserNode'
import {createFileNode, sortFiles} from './parserNode'
import {markdownParser} from '../editor/parser'
import {mediaType} from '../editor/utils/dom'

Expand Down Expand Up @@ -53,7 +53,7 @@ export class Watcher {
const parent = nodesMap.get(join(path, '..'))!
switch (e) {
case 'add':
if (!parent.children!.find(c => c.filePath === path)) {
if (parent.children && !parent.children.find(c => c.filePath === path)) {
runInAction(() => {
parent.children!.push(createFileNode({
folder: false,
Expand All @@ -73,7 +73,7 @@ export class Watcher {
})
break
case 'addDir':
if (!parent.children!.find(c => c.filePath === path)) {
if (parent.children && !parent.children.find(c => c.filePath === path)) {
runInAction(() => {
parent.children!.push(createFileNode({
folder: true,
Expand Down

0 comments on commit 087bfca

Please sign in to comment.