Getting StartedInstallation and setup guides 5
LayoutWorkflow and structural layout components 7
OverlayModal and floating layer surfaces 3
FeedbackStatus, empty, progress, and loading placeholder patterns 5
FormInput and selection components 17
UtilityGeneral-purpose interface utilities 7
NavigationMenu surfaces and hierarchical actions 7

API reference

Progress Spinner exposes a compact wrapper contract: normalized range values, indeterminate mode, and semantic accessibility attributes.

Wrapper component

tng-progress-spinner renders the SVG shell for you, computes dash offset from the normalized range, and forwards the primitive semantics underneath.

Wrapper usage

html
<tng-progress-spinner [value]="68" ariaLabel="Upload progress"></tng-progress-spinner>
<tng-progress-spinner [indeterminate]="true" ariaLabel="Syncing data"></tng-progress-spinner>

Size and range inputs

The wrapper exposes the primitive range inputs and adds ariaLabel, size, and strokeWidth so teams can scale the spinner without rewriting the SVG template.

InputTypeDefaultNotes
minnumber0Lower bound used to clamp value.
maxnumber100Upper bound used to clamp value; never falls below min.
valuenumber0Current determinate progress value.
indeterminatebooleanfalseHides aria-valuenow, aria-valuemin, and aria-valuemax.
ariaLabelstring | nullnullSupplies an explicit accessible name when surrounding context is not enough.
sizenumber40Sets the rendered spinner size through the wrapper CSS variable.
strokeWidthnumber4Controls both the track and indicator stroke width.

Primitive foundation

Under the hood, the wrapper uses tngProgressSpinner for the semantic root. Reach for the headless page when you want to author the SVG, circles, and motion directly.

Primitive foundation

html
<span tngProgressSpinner [value]="68" aria-label="Upload progress">
  <!-- owner-authored SVG/circle rendering -->
</span>