Add Supa account and search changes
This commit is contained in:
@@ -159,6 +159,11 @@ extension DefineFunctions on i6.CommonDatabase {
|
||||
required String Function(int, String?) lexoRankPrevious,
|
||||
required String Function(String?, String?) lexoRankReorderAfter,
|
||||
required String Function(String?, String?) lexoRankReorderBefore,
|
||||
required int Function() generateContentHash,
|
||||
required bool Function(String?) urlIndexable,
|
||||
required String Function(String?) urlCanonical,
|
||||
required String Function(String?) urlHost,
|
||||
required String Function(String?) urlPath,
|
||||
}) {
|
||||
createFunction(
|
||||
functionName: 'lexo_rank_next',
|
||||
@@ -196,5 +201,44 @@ extension DefineFunctions on i6.CommonDatabase {
|
||||
return lexoRankReorderBefore(arg0, arg1);
|
||||
},
|
||||
);
|
||||
createFunction(
|
||||
functionName: 'generate_content_hash',
|
||||
argumentCount: const i6.AllowedArgumentCount(0),
|
||||
function: (args) {
|
||||
return generateContentHash();
|
||||
},
|
||||
);
|
||||
createFunction(
|
||||
functionName: 'url_indexable',
|
||||
argumentCount: const i6.AllowedArgumentCount(1),
|
||||
function: (args) {
|
||||
final arg0 = args[0] as String?;
|
||||
return urlIndexable(arg0);
|
||||
},
|
||||
);
|
||||
createFunction(
|
||||
functionName: 'url_canonical',
|
||||
argumentCount: const i6.AllowedArgumentCount(1),
|
||||
function: (args) {
|
||||
final arg0 = args[0] as String?;
|
||||
return urlCanonical(arg0);
|
||||
},
|
||||
);
|
||||
createFunction(
|
||||
functionName: 'url_host',
|
||||
argumentCount: const i6.AllowedArgumentCount(1),
|
||||
function: (args) {
|
||||
final arg0 = args[0] as String?;
|
||||
return urlHost(arg0);
|
||||
},
|
||||
);
|
||||
createFunction(
|
||||
functionName: 'url_path',
|
||||
argumentCount: const i6.AllowedArgumentCount(1),
|
||||
function: (args) {
|
||||
final arg0 = args[0] as String?;
|
||||
return urlPath(arg0);
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,7 +28,8 @@ enum BangGroup {
|
||||
'https://raw.githubusercontent.com/FaFre/bangs/main/data/kagi_bangs.json',
|
||||
bundled: 'assets/bangs/kagi_bangs.json',
|
||||
),
|
||||
user(remote: null, bundled: null);
|
||||
user(remote: null, bundled: null),
|
||||
weblibre(remote: null, bundled: null);
|
||||
|
||||
final String? bundled;
|
||||
final String? remote;
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
import 'package:weblibre/features/bangs/data/models/bang_data.dart';
|
||||
import 'package:weblibre/features/bangs/data/models/bang_group.dart';
|
||||
import 'package:weblibre/features/bangs/data/models/bang_key.dart';
|
||||
|
||||
const webSearchBangTrigger = 'wl';
|
||||
|
||||
final webSearchBang = BangData(
|
||||
websiteName: 'WebLibre Search',
|
||||
domain: 'weblibre.eu',
|
||||
trigger: webSearchBangTrigger,
|
||||
// Placeholder template — selecting this bang routes the query through the
|
||||
// token-based search backend instead of opening this URL.
|
||||
urlTemplate: 'https://weblibre.eu/?q={{{s}}}',
|
||||
group: BangGroup.weblibre,
|
||||
searxngApi: false,
|
||||
);
|
||||
|
||||
final webSearchBangKey = BangKey(
|
||||
group: BangGroup.weblibre,
|
||||
trigger: webSearchBangTrigger,
|
||||
);
|
||||
|
||||
bool isWebSearchBang(BangData? bang) =>
|
||||
bang != null && bang.group == BangGroup.weblibre;
|
||||
Reference in New Issue
Block a user