@@ -75,7 +75,7 @@ actual class WriteBatch(val android: com.google.firebase.firestore.WriteBatch) {
7575 .let { this }
7676
7777 actual inline fun <reified T > set (documentRef : DocumentReference , data : T , encodeDefaults : Boolean , vararg mergeFieldPaths : FieldPath ) =
78- android.set(documentRef.android, encode(data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.toList() ))
78+ android.set(documentRef.android, encode(data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.map { it.android } ))
7979 .let { this }
8080
8181 actual fun <T > set (documentRef : DocumentReference , strategy : SerializationStrategy <T >, data : T , encodeDefaults : Boolean , merge : Boolean ) = when (merge) {
@@ -88,7 +88,7 @@ actual class WriteBatch(val android: com.google.firebase.firestore.WriteBatch) {
8888 .let { this }
8989
9090 actual fun <T > set (documentRef : DocumentReference , strategy : SerializationStrategy <T >, data : T , encodeDefaults : Boolean , vararg mergeFieldPaths : FieldPath ) =
91- android.set(documentRef.android, encode(strategy, data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.toList() ))
91+ android.set(documentRef.android, encode(strategy, data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.map { it.android } ))
9292 .let { this }
9393
9494 @Suppress(" UNCHECKED_CAST" )
@@ -116,10 +116,10 @@ actual class WriteBatch(val android: com.google.firebase.firestore.WriteBatch) {
116116 android.takeUnless { fieldsAndValues.isEmpty() }
117117 ?.update(
118118 documentRef.android,
119- fieldsAndValues[0 ].first,
119+ fieldsAndValues[0 ].first.android ,
120120 fieldsAndValues[0 ].second,
121121 * fieldsAndValues.drop(1 ).flatMap { (field, value) ->
122- listOf (field, value?.let { encode(value, true ) })
122+ listOf (field.android , value?.let { encode(value, true ) })
123123 }.toTypedArray()
124124 ).let { this }
125125
@@ -142,7 +142,7 @@ actual class Transaction(val android: com.google.firebase.firestore.Transaction)
142142 .let { this }
143143
144144 actual fun set (documentRef : DocumentReference , data : Any , encodeDefaults : Boolean , vararg mergeFieldPaths : FieldPath ) =
145- android.set(documentRef.android, encode(data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.toList() ))
145+ android.set(documentRef.android, encode(data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.map { it.android } ))
146146 .let { this }
147147
148148 actual fun <T > set (
@@ -161,7 +161,7 @@ actual class Transaction(val android: com.google.firebase.firestore.Transaction)
161161 .let { this }
162162
163163 actual fun <T > set (documentRef : DocumentReference , strategy : SerializationStrategy <T >, data : T , encodeDefaults : Boolean , vararg mergeFieldPaths : FieldPath ) =
164- android.set(documentRef.android, encode(strategy, data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.toList() ))
164+ android.set(documentRef.android, encode(strategy, data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.map { it.android } ))
165165 .let { this }
166166
167167 @Suppress(" UNCHECKED_CAST" )
@@ -189,10 +189,10 @@ actual class Transaction(val android: com.google.firebase.firestore.Transaction)
189189 android.takeUnless { fieldsAndValues.isEmpty() }
190190 ?.update(
191191 documentRef.android,
192- fieldsAndValues[0 ].first,
192+ fieldsAndValues[0 ].first.android ,
193193 fieldsAndValues[0 ].second,
194194 * fieldsAndValues.drop(1 ).flatMap { (field, value) ->
195- listOf (field, value?.let { encode(value, true ) })
195+ listOf (field.android , value?.let { encode(value, true ) })
196196 }.toTypedArray()
197197 ).let { this }
198198
@@ -223,7 +223,7 @@ actual class DocumentReference(val android: com.google.firebase.firestore.Docume
223223 .await().run { Unit }
224224
225225 actual suspend inline fun <reified T > set (data : T , encodeDefaults : Boolean , vararg mergeFieldPaths : FieldPath ) =
226- android.set(encode(data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.toList() ))
226+ android.set(encode(data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.map { it.android } ))
227227 .await().run { Unit }
228228
229229 actual suspend fun <T > set (strategy : SerializationStrategy <T >, data : T , encodeDefaults : Boolean , merge : Boolean ) = when (merge) {
@@ -236,7 +236,7 @@ actual class DocumentReference(val android: com.google.firebase.firestore.Docume
236236 .await().run { Unit }
237237
238238 actual suspend fun <T > set (strategy : SerializationStrategy <T >, data : T , encodeDefaults : Boolean , vararg mergeFieldPaths : FieldPath ) =
239- android.set(encode(strategy, data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.toList() ))
239+ android.set(encode(strategy, data, encodeDefaults)!! , SetOptions .mergeFieldPaths(mergeFieldPaths.map { it.android } ))
240240 .await().run { Unit }
241241
242242 @Suppress(" UNCHECKED_CAST" )
@@ -264,10 +264,10 @@ actual class DocumentReference(val android: com.google.firebase.firestore.Docume
264264 actual suspend fun update (vararg fieldsAndValues : Pair <FieldPath , Any ?>) =
265265 android.takeUnless { fieldsAndValues.isEmpty() }
266266 ?.update(
267- fieldsAndValues[0 ].first,
267+ fieldsAndValues[0 ].first.android ,
268268 fieldsAndValues[0 ].second,
269269 * fieldsAndValues.drop(1 ).flatMap { (field, value) ->
270- listOf (field, value?.let { encode(value, true ) })
270+ listOf (field.android , value?.let { encode(value, true ) })
271271 }.toTypedArray()
272272 )
273273 ?.await()
@@ -303,7 +303,7 @@ actual open class Query(open val android: com.google.firebase.firestore.Query) {
303303 }
304304
305305 internal actual fun _where (field : String , equalTo : Any? ) = Query (android.whereEqualTo(field, equalTo))
306- internal actual fun _where (path : FieldPath , equalTo : Any? ) = Query (android.whereEqualTo(path, equalTo))
306+ internal actual fun _where (path : FieldPath , equalTo : Any? ) = Query (android.whereEqualTo(path.android , equalTo))
307307
308308 internal actual fun _where (field : String , lessThan : Any? , greaterThan : Any? , arrayContains : Any? ) = Query (
309309 (lessThan?.let { android.whereLessThan(field, it) } ? : android).let { android2 ->
@@ -314,9 +314,9 @@ actual open class Query(open val android: com.google.firebase.firestore.Query) {
314314 )
315315
316316 internal actual fun _where (path : FieldPath , lessThan : Any? , greaterThan : Any? , arrayContains : Any? ) = Query (
317- (lessThan?.let { android.whereLessThan(path, it) } ? : android).let { android2 ->
318- (greaterThan?.let { android2.whereGreaterThan(path, it) } ? : android2).let { android3 ->
319- arrayContains?.let { android3.whereArrayContains(path, it) } ? : android3
317+ (lessThan?.let { android.whereLessThan(path.android , it) } ? : android).let { android2 ->
318+ (greaterThan?.let { android2.whereGreaterThan(path.android , it) } ? : android2).let { android3 ->
319+ arrayContains?.let { android3.whereArrayContains(path.android , it) } ? : android3
320320 }
321321 }
322322 )
@@ -328,13 +328,13 @@ actual open class Query(open val android: com.google.firebase.firestore.Query) {
328328 )
329329
330330 internal actual fun _where (path : FieldPath , inArray : List <Any >? , arrayContainsAny : List <Any >? ) = Query (
331- (inArray?.let { android.whereIn(path, it) } ? : android).let { android2 ->
332- arrayContainsAny?.let { android2.whereArrayContainsAny(path, it) } ? : android2
331+ (inArray?.let { android.whereIn(path.android , it) } ? : android).let { android2 ->
332+ arrayContainsAny?.let { android2.whereArrayContainsAny(path.android , it) } ? : android2
333333 }
334334 )
335335
336336 internal actual fun _orderBy (field : String , direction : Direction ) = Query (android.orderBy(field, direction))
337- internal actual fun _orderBy (field : FieldPath , direction : Direction ) = Query (android.orderBy(field, direction))
337+ internal actual fun _orderBy (field : FieldPath , direction : Direction ) = Query (android.orderBy(field.android , direction))
338338}
339339
340340actual typealias Direction = com.google.firebase.firestore.Query .Direction
@@ -394,14 +394,16 @@ actual class SnapshotMetadata(val android: com.google.firebase.firestore.Snapsho
394394 actual val isFromCache: Boolean get() = android.isFromCache()
395395}
396396
397- actual typealias FieldPath = com.google.firebase.firestore.FieldPath
398-
399- actual fun FieldPath (vararg fieldNames : String ) = FieldPath .of(* fieldNames)
397+ actual class FieldPath private constructor(val android : com.google.firebase.firestore.FieldPath ) {
398+ actual constructor (vararg fieldNames: String ) : this (com.google.firebase.firestore.FieldPath .of(* fieldNames))
399+ actual val documentId: FieldPath get() = FieldPath (com.google.firebase.firestore.FieldPath .documentId())
400+ }
400401
401402actual object FieldValue {
402- actual fun serverTimestamp () = Double .POSITIVE_INFINITY
403- actual fun delete (): Any = com.google.firebase.firestore.FieldValue .delete()
404- actual fun arrayUnion (vararg elements : Any ): Any = com.google.firebase.firestore.FieldValue .arrayUnion(* elements)
405- actual fun arrayRemove (vararg elements : Any ): Any = com.google.firebase.firestore.FieldValue .arrayRemove(* elements)
403+ actual val serverTimestamp = Double .POSITIVE_INFINITY
404+ actual val delete: Any get() = FieldValue .delete()
405+ actual fun arrayUnion (vararg elements : Any ): Any = FieldValue .arrayUnion(* elements)
406+ actual fun arrayRemove (vararg elements : Any ): Any = FieldValue .arrayRemove(* elements)
407+ actual fun delete (): Any = delete
406408}
407409
0 commit comments