Simply implement snippet running.

This commit is contained in:
LollipopKit
2021-11-06 14:05:03 +08:00
parent 7c34530821
commit e0fb591dea
17 changed files with 305 additions and 34 deletions

View File

@@ -0,0 +1,32 @@
import 'package:toolbox/core/provider_base.dart';
import 'package:toolbox/data/model/server/snippet.dart';
import 'package:toolbox/data/store/snippet.dart';
import 'package:toolbox/locator.dart';
class SnippetProvider extends BusyProvider {
List<Snippet> get snippets => _snippets;
late List<Snippet> _snippets;
void loadData() {
_snippets = locator<SnippetStore>().fetch();
}
void addInfo(Snippet snippet) {
_snippets.add(snippet);
locator<SnippetStore>().put(snippet);
notifyListeners();
}
void delInfo(Snippet snippet) {
_snippets.removeWhere((e) => e.name == snippet.name);
locator<SnippetStore>().delete(snippet);
notifyListeners();
}
void updateInfo(Snippet old, Snippet newOne) {
final idx = _snippets.indexWhere((e) => e.name == old.name);
_snippets[idx] = newOne;
locator<SnippetStore>().update(old, newOne);
notifyListeners();
}
}