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.

...

  • 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

...