Skip to content

Commit 889ec5f

Browse files
authored
Merge pull request #87 from algolia/feature/similarQuery
Add similar query search parameter
2 parents 5a6aa9b + 846337f commit 889ec5f

File tree

4 files changed

+12
-3
lines changed

4 files changed

+12
-3
lines changed

src/commonMain/kotlin/com/algolia/search/model/search/Query.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -455,5 +455,10 @@ public data class Query(
455455
* Engine default: true
456456
* [Documentation][https://www.algolia.com/doc/api-reference/api-parameters/percentileComputation/?language=kotlin]
457457
*/
458-
@SerialName(KeyPercentileComputation) var percentileComputation: Boolean? = null
458+
@SerialName(KeyPercentileComputation) var percentileComputation: Boolean? = null,
459+
/**
460+
* Overrides the query parameter and performs a more generic search that can be used to find "similar" results.
461+
* [Documentation][https://www.algolia.com/doc/api-reference/api-parameters/similarQuery/?language=kotlin]
462+
*/
463+
@SerialName(KeySimilarQuery) var similarQuery: String? = null
459464
)

src/commonMain/kotlin/com/algolia/search/serialize/Keys.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -358,4 +358,5 @@ public const val KeyDistrict = "district"
358358
public const val KeyDegradedQuery = "degradedQuery"
359359
public const val KeyGeoPoint = "geoPoint"
360360
public const val KeySuburb = "suburb"
361-
public const val KeyVillage = "village"
361+
public const val KeyVillage = "village"
362+
public const val KeySimilarQuery = "similarQuery"

src/commonTest/kotlin/serialize/TestKeys.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -351,5 +351,6 @@ internal class TestKeys {
351351
KeyDegradedQuery shouldEqual "degradedQuery"
352352
KeyGeoPoint shouldEqual "geoPoint"
353353
KeyVillage shouldEqual "village"
354+
KeySimilarQuery shouldEqual "similarQuery"
354355
}
355356
}

src/commonTest/kotlin/serialize/search/TestQuery.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,8 @@ internal class TestQuery : TestSerializer<Query>(Query.serializer()) {
8686
minProximity = int,
8787
responseFields = listOf(ResponseFields.NbHits),
8888
maxFacetHits = int,
89-
percentileComputation = boolean
89+
percentileComputation = boolean,
90+
similarQuery = string
9091
) to json {
9192
KeyQuery to string
9293
KeyAttributesToRetrieve to attributesJson
@@ -153,6 +154,7 @@ internal class TestQuery : TestSerializer<Query>(Query.serializer()) {
153154
KeyResponseFields to jsonArray { +ResponseFields.NbHits.raw }
154155
KeyMaxFacetHits to int
155156
KeyPercentileComputation to boolean
157+
KeySimilarQuery to string
156158
}
157159
)
158160

0 commit comments

Comments
 (0)