Контентный блок конфигурируемого дела

Контентные блоки ContentBlockDto — основа контентной области записи таймлайна. Сочетая эти блоки можно гибко собирать различные интерфейсы.

Данная структура используется при создании конфигурируемых дел и при обогащении записей таймлайна контентными блоками.

Общая структура блока:

{
            "type": "Тип блока",
            "properties": {
                ... какие-то свойства, различные для каждого конкрентого блока
            }
        }
        

Типы контентных блоков:

Текст

Самый простой блок type = text, который выводит некоторый форматированный текст.

Параметры

Обязательные параметры отмечены *

Поле

Описание

value*
textWithTranslation

Текст, который будет показан

multiline
boolean

Обработка переносов строк. Если true, то символы \n будут заменены на <br>. По-умолчанию false

title
textWithTranslation

Аттрибут title

bold
boolean

Жирный текст. По-умолчанию false

size
string

Размер текста. Может принимать значения xs, sm, md (по-умолчанию md)

color
string

Цвет текста. Может принимать значения base_50, base_60, base_70, base_90

scope
string

Область видимости, например web

Пример

{
            "icon": {
                "code": "info"
            },
            "header": {
                "title": "Информационное сообщение"
            },
            "body": {
                "logo": {
                    "code": "notification"
                },
                "blocks": {
                    "text": {
                        "type": "text",
                        "properties": {
                            "value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
                        }
                    }
                }
            }
        }
        

Текст

Длинный многострочный текст

Блок type = largeText позволяет отображать длинные многострочные тексты, которые будут автоматически свернуты до превью.

Параметры

Обязательные параметры отмечены *

Поле

Описание

value*
textWithTranslation

Текст, который будет показан

scope
string

Область видимости, например web

Пример

Длинный текст, убранный под "Показать полностью".

{
            "icon": {
                "code": "info"
            },
            "header": {
                "title": "Информационное сообщение"
            },
            "body": {
                "logo": {
                    "code": "notification"
                },
                "blocks": {
                    "text": {
                        "type": "largeText",
                        "properties": {
                            "value": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat."
                        }
                    }
                }
            }
        }
        

Длинный текст

Ссылка

Блок type = link выводит ссылку.

Параметры

Обязательные параметры отмечены *

Поле

Описание

text*
textWithTranslation

Текст, который будет показан. HTML теги не поддерживаются

action*
ActionDto

Действие по нажатию на ссылку

bold
boolean

Жирный текст. По-умолчанию false

scope
string

Область видимости, например web

Пример

{
            "type": "link",
            "properties": {
             "text": "Открыть сделку",
             "action": {
                "type": "redirect",
                "uri": "/crm/deal/details/123/"
             },
             "bold": true
            }
        }
        

Ссылка

Блок с заголовком

Блок type = withTitle выводит пару название-значение. В качестве значения может быть использован другой контент-блок.

Параметры

Обязательные параметры отмечены *

Поле

Описание

title*
textWithTranslation

Текст заголовка

block*
ContentBlockDto

Контент-блок, являющийся значением. Поддерживаются блоки с типами text, link, deadline

inline
boolean

Показ названия и значения в одну строку. По-умолчанию false

scope
string

Область видимости, например web

Примеры

{
            "type": "withTitle",
            "properties": {
                "title": "Заголовок",
                "block": {
                    "type": "text",
                    "properties": {
                        "value": "Какое-то значение"
                    }
                }
            }
        }
        

Ссылка

{
            "type": "withTitle",
            "properties": {
                "title": "Заголовок 2",
                "block": {
                    "type": "link",
                    "properties": {
                        "text": "Открыть сделку",
                        "action": {
                            "type": "redirect",
                            "uri": "/crm/deal/details/123/"
                        }
                    }
                },
                "inline": true
            }
        }
        

Ссылка

Несколько контент-блоков в одну строку

Блок type = lineOfBlocks выводит в одну строку несколько контент-блоков типа текст или ссылка. Это позволяет выводить текст с разным форматированием, смешанный с ссылками, в одной строке.

Параметры

Обязательные параметры отмечены *

Поле

Описание

blocks*
ContentBlockDto[]

Ассоциативный массив контент-блоков. Поддерживаются блоки с типами text, link, deadline

scope
string

Область видимости, например web

Примеры

{
            "type": "lineOfBlocks",
            "properties": {
                "blocks": {
                    "text": {
                        "type": "text",
                        "properties": {
                            "value": "Какой-то текст"
                        }
                    },
                    "link": {
                        "type": "link",
                        "properties": {
                            "text": "ссылка",
                            "action": {
                                "type": "redirect",
                                "uri": "/crm/deal/details/123/"
                            }
                        }
                    },
                    "boldText": {
                        "type": "text",
                        "properties": {
                            "value": "жирный текст",
                            "bold": true
                        }
                    }
                }
            }
        }
        

Ссылка

Выбор крайнего срока

Блок type = deadline отображает текущее значение дедлайна с возможностью его быстро изменить. Блок не будет показан, если его добавить во входящее дело или в дело без дедлайна.

Параметры

Обязательные параметры отмечены *

Поле

Описание

readonly
boolean

Разрешение изменять крайний срок. По умолчанию false. Если у пользователя нет доступа на изменение сущности, к которой относится дело, или если дело выполнено, то readonly = true вне зависимости от переданных настроек

scope
string

Область видимости, например web

Примеры

{
            "type": "deadline",
            "properties": {
                "readonly": false
            }
        }
        

Ссылка

Продолжите изучение