Skip to content

Commit f32a426

Browse files
authored
feat: membership (#1639)
* feat: membership * update * fix sql * chore: update mixin_bot_sdk_dart to version 1.2.5 * quote * Update user_cache_provider to use userCacheProvider in quote_message.dart * chore: update plan badges to use SVG assets * chore: Refactor badges_widget.dart to improve code readability and maintainability * Refactor MessageName widget to use Padding for BadgesWidget
1 parent 7bc9072 commit f32a426

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+844
-244
lines changed

agen.sh

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,14 @@
11
#!/bin/bash
22

3-
if ! command -v agen &> /dev/null
4-
then
3+
if ! command -v agen &>/dev/null; then
54
echo "agen not found, active assets_generator..."
65
dart pub global activate assets_generator
7-
if ! command -v agen &> /dev/null
8-
then
6+
if ! command -v agen &>/dev/null; then
97
echo "install assets_generator failed"
108
exit 1
119
else
1210
echo "install assets_generator success"
1311
fi
1412
fi
1513

16-
agen --no-watch -t d -r lcc -o lib/constants -c Resources
14+
agen --no-watch -t d -r lcc -o lib/constants -c Resources
-871 Bytes
Binary file not shown.
-1.02 KB
Binary file not shown.

assets/images/plan_basic.svg

Lines changed: 27 additions & 0 deletions
Loading

assets/images/plan_premium.svg

Lines changed: 89 additions & 0 deletions
Loading

assets/images/plan_standard.svg

Lines changed: 46 additions & 0 deletions
Loading

lib/account/account_server.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -745,8 +745,7 @@ class AccountServer {
745745
await database.userDao.insert(db.User(
746746
userId: me.userId,
747747
identityNumber: me.identityNumber,
748-
relationship:
749-
const UserRelationshipJsonConverter().fromJson(me.relationship),
748+
relationship: me.relationship,
750749
fullName: me.fullName,
751750
avatarUrl: me.avatarUrl,
752751
phone: me.phone,
@@ -757,6 +756,7 @@ class AccountServer {
757756
isScam: me.isScam ? 1 : 0,
758757
codeId: me.codeId,
759758
codeUrl: me.codeUrl,
759+
membership: me.membership,
760760
));
761761
multiAuthNotifier.updateAccount(me);
762762
}

lib/constants/resources.dart

Lines changed: 11 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import 'dart:convert';
2+
3+
import 'package:drift/drift.dart';
4+
import 'package:mixin_bot_sdk_dart/mixin_bot_sdk_dart.dart';
5+
import 'package:mixin_logger/mixin_logger.dart';
6+
7+
class MembershipConverter extends TypeConverter<Membership?, String?> {
8+
const MembershipConverter();
9+
10+
@override
11+
Membership? fromSql(String? fromDb) {
12+
if (fromDb == null) {
13+
return null;
14+
}
15+
try {
16+
final json = jsonDecode(fromDb) as Map<String, dynamic>;
17+
return Membership.fromJson(json);
18+
} catch (error, stackTrace) {
19+
e('failed to decode membership', error, stackTrace);
20+
return null;
21+
}
22+
}
23+
24+
@override
25+
String? toSql(Membership? value) {
26+
if (value == null) {
27+
return null;
28+
}
29+
return jsonEncode(value.toJson());
30+
}
31+
}

0 commit comments

Comments
 (0)