All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.slack.api.model.kotlin_extension.block.container.MultiContextBlockElementContainer.kt Maven / Gradle / Ivy

package com.slack.api.model.kotlin_extension.block.container

import com.slack.api.model.block.ContextBlockElement
import com.slack.api.model.block.composition.MarkdownTextObject
import com.slack.api.model.block.composition.PlainTextObject
import com.slack.api.model.block.element.ImageElement
import com.slack.api.model.kotlin_extension.block.dsl.ContextBlockElementDsl

class MultiContextBlockElementContainer : ContextBlockElementDsl {
    val underlying = mutableListOf()

    override fun image(
        imageUrl: String?,
        altText: String?,
        fallback: String?,
        imageWidth: Int?,
        imageHeight: Int?,
        imageBytes: Int?
    ) {
        underlying += ImageElement.builder()
            .imageUrl(imageUrl)
            .altText(altText)
            .fallback(fallback)
            .imageWidth(imageWidth)
            .imageHeight(imageHeight)
            .imageBytes(imageBytes)
            .build()
    }

    override fun plainText(text: String, emoji: Boolean?) {
        underlying += PlainTextObject(text, emoji)
    }

    override fun markdownText(text: String, verbatim: Boolean?) {
        underlying += MarkdownTextObject(text, verbatim)
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy