package dev.inmo.postssystem.features.content.text.client import androidx.compose.runtime.* import dev.inmo.jsuikit.modifiers.UIKitWidth import dev.inmo.jsuikit.modifiers.include import dev.inmo.postssystem.features.common.common.* import dev.inmo.postssystem.features.content.client.ContentClientProvider import dev.inmo.postssystem.features.content.common.Content import dev.inmo.postssystem.features.content.text.common.TextContent import org.jetbrains.compose.web.dom.TextArea import org.w3c.dom.Text val loadingClientModule = ModuleLoader { singleWithRandomQualifier { TextContentClientProvider } }.also { AdditionalModules.addModule(it) } object TextContentClientProvider : ContentClientProvider { override fun contentTypeNameForUser(): String = "Text" override fun createNewContentRenderer(): ContentClientProvider.ContentRenderer { return ContentClientProvider.ContentRenderer.default(TextContent("")) { state -> TextArea(state.value.text) { include(UIKitWidth.Expand) onInput { state.value = TextContent(it.value) } } } } }