mirror of
https://github.com/haorendashu/nowser.git
synced 2025-12-17 09:54:19 +01:00
app delete
This commit is contained in:
@@ -32,4 +32,9 @@ class AuthLogDB {
|
||||
db = await DB.getDB(db);
|
||||
return await db.insert("auth_log", o.toJson());
|
||||
}
|
||||
|
||||
static Future<void> deleteByAppId(int appId, {DatabaseExecutor? db}) async {
|
||||
db = await DB.getDB(db);
|
||||
db.execute("delete from auth_log where app_id = ?", [appId]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:nowser/const/app_type.dart';
|
||||
import 'package:nowser/const/auth_type.dart';
|
||||
import 'package:nowser/const/connect_type.dart';
|
||||
import 'package:nowser/data/app_db.dart';
|
||||
import 'package:nowser/data/auth_log_db.dart';
|
||||
|
||||
import '../const/auth_result.dart';
|
||||
import '../data/app.dart';
|
||||
@@ -118,6 +119,19 @@ class AppProvider extends ChangeNotifier {
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> deleteApp(App app) async {
|
||||
await AppDB.delete(app.id!);
|
||||
reload();
|
||||
|
||||
try {
|
||||
await AuthLogDB.deleteByAppId(app.id!);
|
||||
} catch (e) {
|
||||
print(e.toString());
|
||||
}
|
||||
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
App? getAppById(int appId) {
|
||||
return _appMap[appId];
|
||||
}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
import 'package:bot_toast/bot_toast.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/rendering.dart';
|
||||
import 'package:flutter_slidable/flutter_slidable.dart';
|
||||
import 'package:nostr_sdk/client_utils/keys.dart';
|
||||
import 'package:nostr_sdk/nip19/nip19.dart';
|
||||
import 'package:nostr_sdk/utils/string_util.dart';
|
||||
@@ -43,14 +45,62 @@ class _AppsRouter extends CustState<AppsRouter> {
|
||||
for (var i = 0; i < length; i++) {
|
||||
var app = appList[i];
|
||||
widgets.add(Container(
|
||||
child: MeRouterAppItemComponent(app),
|
||||
child: Slidable(
|
||||
child: MeRouterAppItemComponent(app),
|
||||
endActionPane: ActionPane(
|
||||
motion: ScrollMotion(),
|
||||
extentRatio: 0.25,
|
||||
children: [
|
||||
// GestureDetector(
|
||||
// onTap: () {},
|
||||
// child: Container(
|
||||
// color: Colors.red,
|
||||
// alignment: Alignment.center,
|
||||
// padding: EdgeInsets.only(
|
||||
// left: Base.BASE_PADDING,
|
||||
// right: Base.BASE_PADDING,
|
||||
// top: 3,
|
||||
// bottom: 3,
|
||||
// ),
|
||||
// child: Row(
|
||||
// // mainAxisSize: MainAxisSize.min,
|
||||
// children: [
|
||||
// Icon(
|
||||
// Icons.delete_forever,
|
||||
// color: Colors.white,
|
||||
// ),
|
||||
// Text(
|
||||
// "Delete",
|
||||
// style: TextStyle(color: Colors.white),
|
||||
// )
|
||||
// ],
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
SlidableAction(
|
||||
onPressed: (context) {
|
||||
var cancelFunc = BotToast.showLoading();
|
||||
try {
|
||||
appProvider.deleteApp(app);
|
||||
} catch (e) {
|
||||
} finally {
|
||||
cancelFunc.call();
|
||||
}
|
||||
},
|
||||
backgroundColor: Color(0xFFFE4A49),
|
||||
foregroundColor: Colors.white,
|
||||
icon: Icons.delete,
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
));
|
||||
if (i + 1 < length) {
|
||||
widgets.add(Divider());
|
||||
}
|
||||
}
|
||||
if (widgets.isNotEmpty) {
|
||||
var listWidget = Container(
|
||||
Widget listWidget = Container(
|
||||
padding: EdgeInsets.all(Base.BASE_PADDING),
|
||||
decoration: BoxDecoration(
|
||||
color: themeData.cardColor,
|
||||
|
||||
Submodule packages/nostr_sdk updated: 592064d434...6d3ac632cd
@@ -403,6 +403,14 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.1.2"
|
||||
flutter_slidable:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: flutter_slidable
|
||||
sha256: "2c5611c0b44e20d180e4342318e1bbc28b0a44ad2c442f5df16962606fd3e8e3"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.1.1"
|
||||
flutter_socks_proxy:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
||||
@@ -48,6 +48,7 @@ dependencies:
|
||||
flutter_secure_storage: ^9.2.2
|
||||
pretty_qr_code: ^3.3.0
|
||||
qr_code_scanner: ^1.0.1
|
||||
flutter_slidable: ^3.1.1
|
||||
|
||||
dev_dependencies:
|
||||
flutter_launcher_icons: ^0.13.1
|
||||
|
||||
Reference in New Issue
Block a user