That fuck shit the fascists are using
at master 32 lines 954 B view raw
1/* 2 * Copyright 2024 Signal Messenger, LLC 3 * SPDX-License-Identifier: AGPL-3.0-only 4 */ 5 6package org.tm.archive.nicknames 7 8import androidx.compose.runtime.State 9import androidx.compose.runtime.mutableStateOf 10import androidx.lifecycle.ViewModel 11import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers 12import io.reactivex.rxjava3.kotlin.subscribeBy 13import io.reactivex.rxjava3.schedulers.Schedulers 14import org.tm.archive.recipients.Recipient 15import org.tm.archive.recipients.RecipientId 16 17class ViewNoteSheetViewModel( 18 recipientId: RecipientId 19) : ViewModel() { 20 private val internalNote = mutableStateOf("") 21 val note: State<String> = internalNote 22 23 private val recipientDisposable = Recipient.observable(recipientId) 24 .map { it.note ?: "" } 25 .subscribeOn(Schedulers.io()) 26 .observeOn(AndroidSchedulers.mainThread()) 27 .subscribeBy { internalNote.value = it } 28 29 override fun onCleared() { 30 recipientDisposable.dispose() 31 } 32}