mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2025-07-30 17:00:08 +02:00
30 lines
814 B
TypeScript
30 lines
814 B
TypeScript
import {
|
|
FileChanged,
|
|
FileDiff,
|
|
FileRemoved,
|
|
FileRenamed,
|
|
} from '../services/types/file'
|
|
|
|
export function isFileChanged(fileDiff: FileDiff): fileDiff is FileChanged {
|
|
return 'operation' in fileDiff
|
|
}
|
|
|
|
export function isFileRenamed(fileDiff: FileDiff): fileDiff is FileRenamed {
|
|
return isFileChanged(fileDiff) && fileDiff.operation === 'renamed'
|
|
}
|
|
|
|
export function isFileRemoved(fileDiff: FileDiff): fileDiff is FileRemoved {
|
|
return isFileChanged(fileDiff) && fileDiff.operation === 'removed'
|
|
}
|
|
|
|
export function isFileEditable(fileDiff: FileDiff) {
|
|
return 'editable' in fileDiff
|
|
? fileDiff.editable
|
|
: fileDiff.operation === 'edited'
|
|
}
|
|
|
|
export function fileFinalPathname(fileDiff: FileDiff) {
|
|
return (
|
|
(isFileRenamed(fileDiff) ? fileDiff.newPathname : null) || fileDiff.pathname
|
|
)
|
|
}
|