mirror of
https://github.com/GitJournal/GitJournal.git
synced 2025-07-15 07:56:11 +08:00
Allow Folders to be deleted
For safety we're only allowing non-empty folders to be deleted. Ideally, we should have some kind of undo button. Or some kind of history - since we do have that with git. Related to #18
This commit is contained in:
@ -1,4 +1,5 @@
|
||||
import 'dart:async';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:fimber/fimber.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
@ -86,6 +87,20 @@ class GitNoteRepository {
|
||||
return NoteRepoResult(noteFilePath: noteFilePath, error: false);
|
||||
}
|
||||
|
||||
Future<NoteRepoResult> removeFolder(String folderPath) async {
|
||||
var gitDir = p.join(baseDirectory, dirName);
|
||||
var pathSpec = folderPath.replaceFirst(gitDir, "").substring(1);
|
||||
|
||||
await _gitRepo.rm(pathSpec);
|
||||
await _gitRepo.commit(
|
||||
message: "Removed Folder " + pathSpec,
|
||||
);
|
||||
|
||||
await Directory(folderPath).delete(recursive: true);
|
||||
|
||||
return NoteRepoResult(noteFilePath: folderPath, error: false);
|
||||
}
|
||||
|
||||
Future<NoteRepoResult> resetLastCommit() async {
|
||||
await _gitRepo.resetLast();
|
||||
return NoteRepoResult(error: false);
|
||||
|
Reference in New Issue
Block a user