Skip to content

Message panel ​

Purpose and problems it solves ​

message renders a localized plain-text heading and body. It is suitable for instructions, an introduction, a warning written into the configured layout, or an explicit fallback branch.

When to use it ​

Use Message for static copy that belongs in the panel composition. Use a specialized content/editor panel when users need rich text, links, images, or editable content. Use ui.emptyMessage on a data panel when the text is only that panel's empty state.

Prerequisites, inputs, and ownership ​

Message has no data source. Supply content.heading, content.text, or both as a plain string or localized-string object. Locale resolution is owned by the shared localized-string runtime.

Capability map ​

  • optional localized heading;
  • optional localized body text;
  • composition inside Group, Tabs, or Condition;
  • common child sizing and conditions inherited from the panel model.

Behavioral model and interactions ​

The renderer translates the heading and text separately. Missing values are not rendered. Text interpolation is plain Vue text output, so HTML-like input is displayed as text rather than interpreted as markup.

Message does not emit variant-specific events. A surrounding Condition can choose a message as a fallback, and Group/Tabs can conditionally include one.

Alternatives, defaults, and precedence ​

Both content fields are optional and have no generated fallback. If both are omitted, the panel is a padded but empty region. A localized object follows the shared locale fallback rules; a direct string is used as supplied.

Limitations and runtime drift ​

  • No Markdown, HTML, images, buttons, requests, or Message-specific actions.
  • No configurable typography or padding in the JSON contract.
  • Long content is ordinary text; Message is not a document renderer.

Minimal valid configuration ​

json
{
  "id": "intro",
  "type": "message",
  "content": {
    "text": "Выберите объект слева."
  }
}

Realistic end-to-end scenario ​

This localized panel is ready to place above a table in a rows group or use as the default child of a Condition panel.

json
{
  "id": "work-order-instructions",
  "type": "message",
  "content": {
    "heading": {
      "ru": "Рабочие заказы",
      "en": "Work orders"
    },
    "text": {
      "ru": "Выберите заказ, затем откройте его операции.",
      "en": "Select an order, then open its operations."
    }
  }
}

Verified demos ​

Open the local fixture introduction Open a message above another panel

Exact parameter reference ​

Use Group to position a message beside other content, or Condition to show different instructions for different runtime states.