search/word_search: rename kanaIndependent -> fuzzyKana
Build and test / build (push) Successful in 17m10s
Build and test / build (push) Successful in 17m10s
This commit is contained in:
@@ -46,7 +46,7 @@ String _filterFTSSensitiveCharacters(String word) {
|
||||
int? pageSize,
|
||||
int? offset,
|
||||
bool countOnly = false,
|
||||
bool kanaIndependent = true,
|
||||
bool fuzzyKana = true,
|
||||
}) {
|
||||
assert(
|
||||
tableName == JMdictTableNames.kanjiElement ||
|
||||
@@ -69,7 +69,7 @@ String _filterFTSSensitiveCharacters(String word) {
|
||||
"$tableName"."entryId",
|
||||
100
|
||||
+ (("$tableName"."reading" = ?1) * 100000)
|
||||
${kanaIndependent ? '+ (("${tableName}FTS"."reading" = normalize_jp(?1)) * 10000)' : ''}
|
||||
${fuzzyKana ? '+ (("${tableName}FTS"."reading" = normalize_jp(?1)) * 10000)' : ''}
|
||||
+ (("$tableName"."reading" LIKE ?1 || '%') * 20)
|
||||
+ (("$tableName"."orderNum" = 0) * 20)
|
||||
+ COALESCE("JMdict_EntryScore"."score", 0)
|
||||
@@ -77,7 +77,7 @@ String _filterFTSSensitiveCharacters(String word) {
|
||||
FROM "${tableName}FTS"
|
||||
JOIN "$tableName" USING ("elementId")
|
||||
LEFT JOIN "JMdict_EntryScore" USING ("elementId")
|
||||
WHERE "${tableName}FTS"."reading" MATCH ${kanaIndependent ? 'normalize_jp(?1)' : '?1'} || '*'
|
||||
WHERE "${tableName}FTS"."reading" MATCH ${fuzzyKana ? 'normalize_jp(?1)' : '?1'} || '*'
|
||||
),
|
||||
non_fts_results AS (
|
||||
SELECT DISTINCT
|
||||
@@ -89,7 +89,7 @@ String _filterFTSSensitiveCharacters(String word) {
|
||||
AS "score"
|
||||
FROM "$tableName"
|
||||
LEFT JOIN "JMdict_EntryScore" USING ("elementId")
|
||||
WHERE "$tableName"."reading" LIKE '%' || ${kanaIndependent ? 'normalize_jp(?1)' : '?1'} || '%'
|
||||
WHERE "$tableName"."reading" LIKE '%' || ${fuzzyKana ? 'normalize_jp(?1)' : '?1'} || '%'
|
||||
AND "$tableName"."entryId" NOT IN (SELECT "entryId" FROM "fts_results")
|
||||
)
|
||||
|
||||
@@ -112,14 +112,14 @@ String _filterFTSSensitiveCharacters(String word) {
|
||||
Future<List<ScoredEntryId>> _queryKanji(
|
||||
DatabaseExecutor connection,
|
||||
String word,
|
||||
bool kanaIndependent,
|
||||
bool fuzzyKana,
|
||||
int? pageSize,
|
||||
int? offset,
|
||||
) {
|
||||
final (query, args) = _kanjiReadingTemplate(
|
||||
JMdictTableNames.kanjiElement,
|
||||
word,
|
||||
kanaIndependent: kanaIndependent,
|
||||
fuzzyKana: fuzzyKana,
|
||||
pageSize: pageSize,
|
||||
offset: offset,
|
||||
);
|
||||
@@ -149,14 +149,14 @@ Future<int> _queryKanjiCount(DatabaseExecutor connection, String word) {
|
||||
Future<List<ScoredEntryId>> _queryKana(
|
||||
DatabaseExecutor connection,
|
||||
String word,
|
||||
bool kanaIndependent,
|
||||
bool fuzzyKana,
|
||||
int? pageSize,
|
||||
int? offset,
|
||||
) {
|
||||
final (query, args) = _kanjiReadingTemplate(
|
||||
JMdictTableNames.readingElement,
|
||||
word,
|
||||
kanaIndependent: kanaIndependent,
|
||||
fuzzyKana: fuzzyKana,
|
||||
pageSize: pageSize,
|
||||
offset: offset,
|
||||
);
|
||||
@@ -245,7 +245,7 @@ Future<List<ScoredEntryId>> fetchEntryIds(
|
||||
DatabaseExecutor connection,
|
||||
String word,
|
||||
SearchMode searchMode,
|
||||
bool kanaIndependent,
|
||||
bool fuzzyKana,
|
||||
int? pageSize,
|
||||
int? offset,
|
||||
) async {
|
||||
@@ -264,7 +264,7 @@ Future<List<ScoredEntryId>> fetchEntryIds(
|
||||
entryIds = await _queryKanji(
|
||||
connection,
|
||||
word,
|
||||
kanaIndependent,
|
||||
fuzzyKana,
|
||||
pageSize,
|
||||
offset,
|
||||
);
|
||||
@@ -274,7 +274,7 @@ Future<List<ScoredEntryId>> fetchEntryIds(
|
||||
entryIds = await _queryKana(
|
||||
connection,
|
||||
word,
|
||||
kanaIndependent,
|
||||
fuzzyKana,
|
||||
pageSize,
|
||||
offset,
|
||||
);
|
||||
|
||||
@@ -38,7 +38,7 @@ Future<List<WordSearchResult>?> searchWordWithDbConnection(
|
||||
DatabaseExecutor connection,
|
||||
String word, {
|
||||
SearchMode searchMode = SearchMode.auto,
|
||||
bool kanaIndependent = true,
|
||||
bool fuzzyKana = true,
|
||||
int page = 0,
|
||||
int? pageSize,
|
||||
}) async {
|
||||
@@ -51,7 +51,7 @@ Future<List<WordSearchResult>?> searchWordWithDbConnection(
|
||||
connection,
|
||||
word,
|
||||
searchMode,
|
||||
kanaIndependent,
|
||||
fuzzyKana,
|
||||
pageSize,
|
||||
offset,
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user