refactor bang sources

This commit is contained in:
Fabian Freund
2024-06-18 18:03:50 +02:00
parent 2f89ce7de1
commit 1b63a191d4
2 changed files with 16 additions and 12 deletions
+13 -3
View File
@@ -8,9 +8,19 @@ import 'package:json_annotation/json_annotation.dart';
part 'bang.g.dart'; part 'bang.g.dart';
enum BangGroup { enum BangGroup {
general, general(
assistant, 'https://raw.githubusercontent.com/kagisearch/bangs/main/data/bangs.json',
kagi, ),
assistant(
'https://raw.githubusercontent.com/kagisearch/bangs/main/data/assistant_bangs.json',
),
kagi(
'https://raw.githubusercontent.com/kagisearch/bangs/main/data/kagi_bangs.json',
);
final String url;
const BangGroup(this.url);
} }
enum BangFormat { enum BangFormat {
@@ -87,27 +87,21 @@ class BangSyncRepository extends _$BangSyncRepository {
Future<Result<void>> syncGeneralBangs({Duration? syncInterval}) => Future<Result<void>> syncGeneralBangs({Duration? syncInterval}) =>
_syncBangGroup( _syncBangGroup(
BangGroup.general, BangGroup.general,
Uri.parse( Uri.parse(BangGroup.general.url),
'https://raw.githubusercontent.com/kagisearch/bangs/main/data/bangs.json',
),
syncInterval, syncInterval,
); );
Future<Result<void>> syncKagiBangs({Duration? syncInterval}) => Future<Result<void>> syncKagiBangs({Duration? syncInterval}) =>
_syncBangGroup( _syncBangGroup(
BangGroup.kagi, BangGroup.kagi,
Uri.parse( Uri.parse(BangGroup.kagi.url),
'https://raw.githubusercontent.com/kagisearch/bangs/main/data/kagi_bangs.json',
),
syncInterval, syncInterval,
); );
Future<Result<void>> syncAssistantBangs({Duration? syncInterval}) => Future<Result<void>> syncAssistantBangs({Duration? syncInterval}) =>
_syncBangGroup( _syncBangGroup(
BangGroup.assistant, BangGroup.assistant,
Uri.parse( Uri.parse(BangGroup.assistant.url),
'https://raw.githubusercontent.com/kagisearch/bangs/main/data/assistant_bangs.json',
),
syncInterval, syncInterval,
); );