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

com.slack.api.model.kotlin_extension.block.element.RichTextSectionElementBuilder.kt Maven / Gradle / Ivy

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

import com.slack.api.model.block.element.RichTextSectionElement
import com.slack.api.model.kotlin_extension.block.BlockLayoutBuilder
import com.slack.api.model.kotlin_extension.block.Builder
import com.slack.api.model.kotlin_extension.block.composition.container.MultiRichTextObjectContainer
import com.slack.api.model.kotlin_extension.block.composition.dsl.RichTextObjectDsl

@BlockLayoutBuilder
class RichTextSectionElementBuilder private constructor(
    private val elementsContainer: MultiRichTextObjectContainer
) : Builder, RichTextObjectDsl by elementsContainer {
    constructor() : this(MultiRichTextObjectContainer())

    /**
     * An array of rich text elements.
     *
     * @see Rich text section element documentation
     */
    fun elements(builder: RichTextObjectDsl.() -> Unit) {
        elementsContainer.apply(builder)
    }

    override fun build(): RichTextSectionElement {
        return RichTextSectionElement.builder()
            .elements(elementsContainer.underlying)
            .build()
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy