Skip to content

Commit 52e20a4

Browse files
authored
Merge pull request #153 from splendo/avdyushin/feature/where-for-document-reference
Where for DocumentReference
2 parents 9f57694 + 40f0a64 commit 52e20a4

File tree

4 files changed

+13
-0
lines changed
  • firebase-firestore/src

4 files changed

+13
-0
lines changed

firebase-firestore/src/androidMain/kotlin/dev/gitlive/firebase/firestore/firestore.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -321,6 +321,9 @@ actual open class Query(open val android: com.google.firebase.firestore.Query) {
321321
internal actual fun _where(field: String, equalTo: Any?) = Query(android.whereEqualTo(field, equalTo))
322322
internal actual fun _where(path: FieldPath, equalTo: Any?) = Query(android.whereEqualTo(path.android, equalTo))
323323

324+
internal actual fun _where(field: String, equalTo: DocumentReference) = Query(android.whereEqualTo(field, equalTo.android))
325+
internal actual fun _where(path: FieldPath, equalTo: DocumentReference) = Query(android.whereEqualTo(path.android, equalTo.android))
326+
324327
internal actual fun _where(field: String, lessThan: Any?, greaterThan: Any?, arrayContains: Any?) = Query(
325328
(lessThan?.let { android.whereLessThan(field, it) } ?: android).let { android2 ->
326329
(greaterThan?.let { android2.whereGreaterThan(field, it) } ?: android2).let { android3 ->

firebase-firestore/src/commonMain/kotlin/dev/gitlive/firebase/firestore/firestore.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ expect open class Query {
5858
suspend fun get(): QuerySnapshot
5959
internal fun _where(field: String, equalTo: Any?): Query
6060
internal fun _where(path: FieldPath, equalTo: Any?): Query
61+
internal fun _where(field: String, equalTo: DocumentReference): Query
62+
internal fun _where(path: FieldPath, equalTo: DocumentReference): Query
6163
internal fun _where(field: String, lessThan: Any? = null, greaterThan: Any? = null, arrayContains: Any? = null): Query
6264
internal fun _where(path: FieldPath, lessThan: Any? = null, greaterThan: Any? = null, arrayContains: Any? = null): Query
6365
internal fun _where(field: String, inArray: List<Any>? = null, arrayContainsAny: List<Any>? = null): Query
@@ -69,6 +71,8 @@ expect open class Query {
6971

7072
fun Query.where(field: String, equalTo: Any?) = _where(field, equalTo)
7173
fun Query.where(path: FieldPath, equalTo: Any?) = _where(path, equalTo)
74+
fun Query.where(field: String, equalTo: DocumentReference) = _where(field, equalTo)
75+
fun Query.where(path: FieldPath, equalTo: DocumentReference) = _where(path, equalTo)
7276
fun Query.where(field: String, lessThan: Any? = null, greaterThan: Any? = null, arrayContains: Any? = null) = _where(field, lessThan, greaterThan, arrayContains)
7377
fun Query.where(path: FieldPath, lessThan: Any? = null, greaterThan: Any? = null, arrayContains: Any? = null) = _where(path, lessThan, greaterThan, arrayContains)
7478
fun Query.where(field: String, inArray: List<Any>? = null, arrayContainsAny: List<Any>? = null) = _where(field, inArray, arrayContainsAny)

firebase-firestore/src/iosMain/kotlin/dev/gitlive/firebase/firestore/firestore.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,9 @@ actual open class Query(open val ios: FIRQuery) {
237237
internal actual fun _where(field: String, equalTo: Any?) = Query(ios.queryWhereField(field, isEqualTo = equalTo!!))
238238
internal actual fun _where(path: FieldPath, equalTo: Any?) = Query(ios.queryWhereFieldPath(path.ios, isEqualTo = equalTo!!))
239239

240+
internal actual fun _where(field: String, equalTo: DocumentReference) = Query(ios.queryWhereField(field, isEqualTo = equalTo.ios))
241+
internal actual fun _where(path: FieldPath, equalTo: DocumentReference) = Query(ios.queryWhereFieldPath(path.ios, isEqualTo = equalTo.ios))
242+
240243
internal actual fun _where(field: String, lessThan: Any?, greaterThan: Any?, arrayContains: Any?) = Query(
241244
(lessThan?.let { ios.queryWhereField(field, isLessThan = it) } ?: ios).let { ios2 ->
242245
(greaterThan?.let { ios2.queryWhereField(field, isGreaterThan = it) } ?: ios2).let { ios3 ->

firebase-firestore/src/jsMain/kotlin/dev/gitlive/firebase/firestore/firestore.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,9 @@ actual open class Query(open val js: firebase.firestore.Query) {
286286
internal actual fun _where(field: String, equalTo: Any?) = rethrow { Query(js.where(field, "==", equalTo)) }
287287
internal actual fun _where(path: FieldPath, equalTo: Any?) = rethrow { Query(js.where(path.js, "==", equalTo)) }
288288

289+
internal actual fun _where(field: String, equalTo: DocumentReference) = rethrow { Query(js.where(field, "==", equalTo.js)) }
290+
internal actual fun _where(path: FieldPath, equalTo: DocumentReference) = rethrow { Query(js.where(path.js, "==", equalTo.js)) }
291+
289292
internal actual fun _where(field: String, lessThan: Any?, greaterThan: Any?, arrayContains: Any?) = rethrow {
290293
Query(
291294
(lessThan?.let {js.where(field, "<", it) } ?: js).let { js2 ->

0 commit comments

Comments
 (0)