Skip to content

Status line

A line under the conversation for what your app is doing — searching, uploading, waiting in a queue — shown and hidden by your code.

  • <aparte-chat-status>
On this page
Open

Some waits only your app knows about: it is searching the docs, uploading a file, holding a place in a queue. <aparte-chat-status> says so in one quiet line. It is yours to turn on with visible and off again; core never shows it by itself.

It is not the indicator for the pause before the first word of a reply: the reply’s own waiting indicator covers that, and showing both is two indicators for one wait. The framework wrappers render one inside the transcript, driven by their isTyping prop.

Open

Without text, the line is a single pulsing dot.

html
<aparte-chat-status visible=""></aparte-chat-status>

Installation and the framework-specific traps: React · Vue · Svelte · Angular.

VariableWhat it sets
--aparte-status-colorThe colour of the text and the dot.
--aparte-status-font-sizeThe size of the text.
--aparte-status-dot-sizeThe dot’s diameter.

To draw the line yourself, aparteGlobalConfig.setStatusRenderer() replaces its contents; the element keeps showing and hiding it, and keeps its accessible name.

<aparte-chat-status> · class AparteChatStatus

Attributes

AttributeDescription
visibleShows or hides the indicator.
textThe line to show. Absent, the line is dots-only and the accessible name falls back to the locale’s typing word (“Typing” in English).

Methods

MethodDescription
show(): voidShow the typing indicator
hide(): voidHide the typing indicator
toggle(): voidToggle visibility
isVisible(): booleanCheck if visible

CSS variables

VariableDefaultDescription
--aparte-status-colorvar(--aparte-text-muted)Colour of the label text and of the pulsing dot in the default line.
--aparte-status-font-sizevar(--aparte-font-size-md)Size of the visible label (italic by default) in the default line.
--aparte-status-dot-size6pxDiameter of the single pulsing dot in the default line.
--aparte-message-padding-blockvar(--aparte-space-8)Vertical padding of the row, read because the container also carries .aparte-message — the status line borrows a bubble’s row metrics so it lines up with the transcript.
--aparte-message-padding-inlinevar(--aparte-space-6)Horizontal padding of the row, same reason.
--aparte-message-max-width800pxWidth cap of that same row.
  • The line is a polite live region: what it says is announced when it appears, without interrupting.
  • With text, that text is what is announced; without it, the locale’s typing word (“Typing” in English) is, from a visually hidden label.
  • The dot stops pulsing under prefers-reduced-motion.