Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

(this page was created automatically. In case of formatting issues, please visit the official Wiki Page)

Progress States

Link to Figma: https://www.figma.com/design/yck1tcUXgdQ5aYX6iUAwrO/GE---Astronaut-Design-System?node-id=11613-45017&t=ftfrOGkPzlG2GaTo-1

Overview

  • The Dynamic Progress States component displays a sequence of states to show progression through a process, workflow, or journey.
  • It can visualize status information from a data source or from static configurations.
  • The layout can be horizontal or vertical depending on the process type.
  • Each state supports customizable appearance, including titles, subtitles, and additional information.
  • The component is useful for tracking current progress and context within multi-step workflows.

...

TokenDescription
displayNameDisplay name of the component in the structure panel
directionLayout direction of the states (horizontal or vertical)
titleFieldField in data source containing the state title
subtitleFieldField in data source containing the state subtitle
stateIdFieldField in data source serving as unique identifier
currentStateFieldField that marks the current active state
sortOrderFieldField that defines order of states
readonlyControls whether states are interactive or display-only
statusRulesRules that define visual status of each state
informationConfigsConfigures additional information items per state
statesDefines static states when not using data source
paddingClassCSS classes for spacing around the component
enableStaticDataToggles static vs. dynamic data mode
getElementsDataSourceIdData source ID for fetching states
getEntityCollectionHttpRequestParametersMapHTTP request parameters for fetching data
eventsConfigurable component events
ON_INIT (Events)Event triggered when component initializes
ON_DESTROY (Events)Event triggered when component is removed
visibilityPolicySetIdPolicy set controlling component visibility
displayConditionsConditions for showing the component
idUnique identifier for programmatic access
dataTestIdTesting hook ID for automated testing
enableAsHotspotEnables component as a guided tour hotspot
guidedTourHotSpotTitleTitle of guided tour hotspot
guidedTourHotSpotDescriptionDescription of guided tour hotspot

...

  • id - Specifies the unique identifier for the component, used for programmatic access. Example: "orderProcessingStates".
  • dataTestId - Sets the testing hook ID for automated testing. Example: "order-process-states-component".
  • enableAsHotspot - Enables the component as a guided tour hotspot. When set to true, the component can be highlighted during guided tours. Example: true.
  • guidedTourHotSpotTitle - Sets the title for the guided tour hotspot, supporting translations. Example: {"en-US": "Order Process", "fr-FR": "Processus de commande"}.
  • guidedTourHotSpotDescription - Sets the description for the guided tour hotspot, supporting translations. Example: {"en-US": "Track the progress of your order through these states", "fr-FR": "Suivez la progression de votre commande à travers ces états"}.
  • Figma: https://www.figma.com/design/yck1tcUXgdQ5aYX6iUAwrO/GE---Astronaut-Design-System?node-id=11613-45017&t=ftfrOGkPzlG2GaTo-1
  • Live style guide: https://e1-dev.k8s.myapp.de/live-style-guide/id7/7-progress-states

Guidelines

Usage

  • visualize progression through discrete steps using either dynamic or static sources. configure with enableStaticData, states, or getElementsDataSourceId and getEntityCollectionHttpRequestParametersMap.
  • indicate the active step by mapping the data field that marks it as current via currentStateField.
  • present key labels by mapping titles and subtitles from your data (titleField, subtitleField) or, in static mode, via states[].titleTranslations and states[].subtitleTranslations.
  • add compact, per-state context (dates, metrics) using informationConfigs (supports iconName and localized text).

...

DoDon’tArticle setting(s)
map currentStateField to the data flag that marks the active step so users always see “where they are.”infer the active step implicitly from order or status alone.currentStateField
use sortOrderField (or array order in states) to keep the sequence stable across refreshes.rely on backend default ordering that can change between calls.sortOrderField, states[]
keep process flows readable by choosing the appropriate direction.force horizontal layout for lengthy, top-down processes.direction
provide concise titles/subtitles from data mappings or translations.place long paragraphs in step headers.titleField, subtitleField, states[].titleTranslations, states[].subtitleTranslations
show extra, noncritical details with informationConfigs (e.g., updated times).encode critical instructions only inside the extra info.informationConfigs[]
drive status with explicit statusRules and set rule priority to avoid conflicts.combine overlapping rules and hope the renderer resolves them.statusRules
make timelines non-interactive when appropriate by setting readonly: true.leave interactive affordances enabled when no actions exist.readonlyinitialize and fetch on mount; free resources on unmount.attach listeners or start polling without cleanup.events.ON_INIT, events.ON_DESTROY, getElementsDataSourceId, getEntityCollectionHttpRequestParametersMap
gate visibility with policies or conditions.show sensitive progress to everyone and rely on copy to warn.visibilityPolicySetId, displayConditions
add onboarding hints using guided hotspot fields.rely on color or status names alone to teach the UI.enableAsHotspot, guidedTourHotSpotTitle, guidedTourHotSpotDescriptionexpose stable identifiers for testing and analytics.query DOM by volatile text content.id, dataTestId
maintain readable spacing around the control.let the component touch neighboring elements.paddingClass

...