new: Providers

This commit is contained in:
lollipopkit
2023-09-14 15:13:11 +08:00
parent eb158e63a2
commit c07958fa73
29 changed files with 206 additions and 218 deletions

View File

@@ -6,10 +6,8 @@ import 'package:toolbox/core/extension/context/common.dart';
import 'package:toolbox/core/extension/context/dialog.dart';
import 'package:toolbox/core/extension/context/snackbar.dart';
import 'package:toolbox/data/model/sftp/req.dart';
import 'package:toolbox/data/provider/server.dart';
import 'package:toolbox/data/provider/sftp.dart';
import 'package:toolbox/data/res/misc.dart';
import 'package:toolbox/locator.dart';
import 'package:toolbox/data/res/provider.dart';
import 'package:toolbox/view/widget/input_field.dart';
import 'package:toolbox/view/widget/picker.dart';
import 'package:toolbox/view/widget/round_rect_card.dart';
@@ -284,8 +282,7 @@ class _LocalStoragePageState extends State<LocalStoragePage> {
title: Text(_s.upload),
onTap: () async {
context.pop();
final serverProvider = locator<ServerProvider>();
final ids = serverProvider.serverOrder;
final ids = Providers.server.serverOrder;
var idx = 0;
await context.showRoundDialog(
title: Text(_s.server),
@@ -299,7 +296,7 @@ class _LocalStoragePageState extends State<LocalStoragePage> {
],
);
final id = ids[idx];
final spi = serverProvider.servers[id]?.spi;
final spi = Providers.server.servers[id]?.spi;
if (spi == null) {
return;
}
@@ -310,7 +307,7 @@ class _LocalStoragePageState extends State<LocalStoragePage> {
if (remotePath == null) {
return;
}
locator<SftpProvider>().add(SftpReq(
Providers.sftp.add(SftpReq(
spi,
'$remotePath/$fileName',
file.absolute.path,

View File

@@ -10,6 +10,7 @@ import 'package:toolbox/core/extension/context/snackbar.dart';
import 'package:toolbox/core/extension/sftpfile.dart';
import 'package:toolbox/data/res/logger.dart';
import 'package:toolbox/data/res/misc.dart';
import 'package:toolbox/data/res/provider.dart';
import 'package:toolbox/data/res/store.dart';
import 'package:toolbox/view/widget/round_rect_card.dart';
@@ -22,11 +23,8 @@ import '../../../data/model/server/server_private_info.dart';
import '../../../data/model/sftp/absolute_path.dart';
import '../../../data/model/sftp/browser_status.dart';
import '../../../data/model/sftp/req.dart';
import '../../../data/provider/server.dart';
import '../../../data/provider/sftp.dart';
import '../../../data/res/path.dart';
import '../../../data/res/ui.dart';
import '../../../locator.dart';
import '../../widget/custom_appbar.dart';
import '../../widget/fade_in.dart';
import '../../widget/input_field.dart';
@@ -51,8 +49,6 @@ class SftpPage extends StatefulWidget {
class _SftpPageState extends State<SftpPage> with AfterLayoutMixin {
final SftpBrowserStatus _status = SftpBrowserStatus();
final _sftp = locator<SftpProvider>();
late S _s;
SSHClient? _client;
@@ -66,8 +62,7 @@ class _SftpPageState extends State<SftpPage> with AfterLayoutMixin {
@override
void initState() {
super.initState();
final serverProvider = locator<ServerProvider>();
_client = serverProvider.servers[widget.spi.id]?.client;
_client = Providers.server.servers[widget.spi.id]?.client;
}
@override
@@ -184,7 +179,7 @@ class _SftpPageState extends State<SftpPage> with AfterLayoutMixin {
context.showSnackBar('remote path is null');
return;
}
_sftp.add(
Providers.sftp.add(
SftpReq(
widget.spi,
'$remotePath/${path.split('/').last}',
@@ -382,14 +377,15 @@ class _SftpPageState extends State<SftpPage> with AfterLayoutMixin {
localPath,
SftpReqType.download,
);
_sftp.add(req, completer: completer);
Providers.sftp.add(req, completer: completer);
context.showLoadingDialog();
await completer.future;
context.pop();
final result = await AppRoute.editor(path: localPath).go<bool>(context);
if (result != null && result) {
_sftp.add(SftpReq(req.spi, remotePath, localPath, SftpReqType.upload));
Providers.sftp
.add(SftpReq(req.spi, remotePath, localPath, SftpReqType.upload));
context.showSnackBar(_s.added2List);
}
}
@@ -408,7 +404,7 @@ class _SftpPageState extends State<SftpPage> with AfterLayoutMixin {
context.pop();
final remotePath = _getRemotePath(name);
_sftp.add(
Providers.sftp.add(
SftpReq(
widget.spi,
remotePath,

View File

@@ -5,7 +5,7 @@ import 'package:toolbox/core/extension/context/common.dart';
import 'package:toolbox/core/extension/datetime.dart';
import 'package:toolbox/core/extension/context/dialog.dart';
import 'package:toolbox/core/route.dart';
import 'package:toolbox/locator.dart';
import 'package:toolbox/data/res/provider.dart';
import '../../../core/extension/numx.dart';
import '../../../core/utils/misc.dart';
@@ -149,7 +149,7 @@ class _SftpMissionPageState extends State<SftpMissionPage> {
actions: [
TextButton(
onPressed: () {
locator<SftpProvider>().cancel(id);
Providers.sftp.cancel(id);
context.pop();
},
child: Text(_s.ok),