105 lines
2.8 KiB
Dart
105 lines
2.8 KiB
Dart
import 'package:flutter/material.dart';
|
|
|
|
class BadgeInfo {
|
|
final String type;
|
|
final String name;
|
|
final String description;
|
|
final IconData icon;
|
|
final Color color;
|
|
|
|
const BadgeInfo({
|
|
required this.type,
|
|
required this.name,
|
|
required this.description,
|
|
this.icon = Icons.star,
|
|
this.color = Colors.blue,
|
|
});
|
|
}
|
|
|
|
const Map<String, BadgeInfo> kBadgeTemplates = {
|
|
'achievements.post.first': BadgeInfo(
|
|
type: 'achievements.post.first',
|
|
name: 'firstPostBadgeName',
|
|
description: 'firstPostBadgeDescription',
|
|
icon: Icons.create,
|
|
color: Colors.green,
|
|
),
|
|
'achievements.post.popular': BadgeInfo(
|
|
type: 'achievements.post.popular',
|
|
name: 'popularPostBadgeName',
|
|
description: 'popularPostBadgeDescription',
|
|
icon: Icons.trending_up,
|
|
color: Colors.orange,
|
|
),
|
|
'achievements.post.viral': BadgeInfo(
|
|
type: 'achievements.post.viral',
|
|
name: 'viralPostBadgeName',
|
|
description: 'viralPostBadgeDescription',
|
|
icon: Icons.whatshot,
|
|
color: Colors.red,
|
|
),
|
|
'achievements.comment.helpful': BadgeInfo(
|
|
type: 'achievements.comment.helpful',
|
|
name: 'helpfulCommentBadgeName',
|
|
description: 'helpfulCommentBadgeDescription',
|
|
icon: Icons.thumb_up,
|
|
color: Colors.lightBlue,
|
|
),
|
|
'ranks.newcomer': BadgeInfo(
|
|
type: 'ranks.newcomer',
|
|
name: 'newcomerBadgeName',
|
|
description: 'newcomerBadgeDescription',
|
|
icon: Icons.person_outline,
|
|
color: Colors.blue,
|
|
),
|
|
'ranks.contributor': BadgeInfo(
|
|
type: 'ranks.contributor',
|
|
name: 'contributorBadgeName',
|
|
description: 'contributorBadgeDescription',
|
|
icon: Icons.stars,
|
|
color: Colors.purple,
|
|
),
|
|
'ranks.expert': BadgeInfo(
|
|
type: 'ranks.expert',
|
|
name: 'expertBadgeName',
|
|
description: 'expertBadgeDescription',
|
|
icon: Icons.workspace_premium,
|
|
color: Colors.amber,
|
|
),
|
|
'event.founder': BadgeInfo(
|
|
type: 'event.founder',
|
|
name: 'founderBadgeName',
|
|
description: 'founderBadgeDescription',
|
|
icon: Icons.foundation,
|
|
color: Colors.deepPurple,
|
|
),
|
|
'event.beta.tester': BadgeInfo(
|
|
type: 'event.beta.tester',
|
|
name: 'betaTesterBadgeName',
|
|
description: 'betaTesterBadgeDescription',
|
|
icon: Icons.bug_report,
|
|
color: Colors.teal,
|
|
),
|
|
'special.moderator': BadgeInfo(
|
|
type: 'special.moderator',
|
|
name: 'moderatorBadgeName',
|
|
description: 'moderatorBadgeDescription',
|
|
icon: Icons.construction,
|
|
color: Colors.indigo,
|
|
),
|
|
'special.developer': BadgeInfo(
|
|
type: 'special.developer',
|
|
name: 'developerBadgeName',
|
|
description: 'developerBadgeDescription',
|
|
icon: Icons.code,
|
|
color: Colors.indigo,
|
|
),
|
|
'special.translator': BadgeInfo(
|
|
type: 'special.translator',
|
|
name: 'translatorBadgeName',
|
|
description: 'translatorBadgeDescription',
|
|
icon: Icons.code,
|
|
color: Colors.grey,
|
|
),
|
|
};
|