72 lines
2.0 KiB
Dart
72 lines
2.0 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:lemmy_api_client/v3.dart';
|
|
|
|
import 'gen/l10n.dart';
|
|
|
|
extension SortTypeL10n on SortType {
|
|
String tr(BuildContext context) {
|
|
switch (this) {
|
|
case SortType.hot:
|
|
return L10n.of(context).hot;
|
|
case SortType.new_:
|
|
return L10n.of(context).new_;
|
|
case SortType.topYear:
|
|
return L10n.of(context).top_year;
|
|
case SortType.topMonth:
|
|
return L10n.of(context).top_month;
|
|
case SortType.topWeek:
|
|
return L10n.of(context).top_week;
|
|
case SortType.topDay:
|
|
return L10n.of(context).top_day;
|
|
case SortType.topAll:
|
|
return L10n.of(context).top_all;
|
|
case SortType.newComments:
|
|
return L10n.of(context).new_comments;
|
|
case SortType.active:
|
|
return L10n.of(context).active;
|
|
case SortType.mostComments:
|
|
return L10n.of(context).most_comments;
|
|
default:
|
|
throw Exception('unreachable');
|
|
}
|
|
}
|
|
}
|
|
|
|
extension PostListingTypeL10n on PostListingType {
|
|
String tr(BuildContext context) {
|
|
switch (this) {
|
|
case PostListingType.all:
|
|
return L10n.of(context).all;
|
|
case PostListingType.community:
|
|
return L10n.of(context).community;
|
|
case PostListingType.local:
|
|
return L10n.of(context).local;
|
|
case PostListingType.subscribed:
|
|
return L10n.of(context).subscribed;
|
|
default:
|
|
throw Exception('unreachable');
|
|
}
|
|
}
|
|
}
|
|
|
|
extension SearchTypeL10n on SearchType {
|
|
String tr(BuildContext context) {
|
|
switch (this) {
|
|
case SearchType.all:
|
|
return L10n.of(context).all;
|
|
case SearchType.comments:
|
|
return L10n.of(context).comments;
|
|
case SearchType.communities:
|
|
return L10n.of(context).communities;
|
|
case SearchType.posts:
|
|
return L10n.of(context).posts;
|
|
case SearchType.url:
|
|
return L10n.of(context).url;
|
|
case SearchType.users:
|
|
return L10n.of(context).users;
|
|
default:
|
|
throw Exception('unreachable');
|
|
}
|
|
}
|
|
}
|