File

core/countdown-interval/countdown-interval.component.ts

Description

Component to count down specific time interval, then emit when countdown ends. Next countdown is started right after previous one.

Implements

OnInit OnDestroy

Metadata

Index

Properties
Methods
Inputs
Outputs
Accessors

Inputs

countdownInterval
Type : number

Time in milliseconds to count down from.

Outputs

countdownEnded
Type : EventEmitter

Emits when countdown ends.

Methods

ngOnDestroy
ngOnDestroy()
Returns : void
ngOnInit
ngOnInit()
Returns : void
reset
reset()
Returns : void
start
start()

Starts the countdown timer.

Returns : void
stop
stop(stopAtZero)

Stops the countdown timer.

Parameters :
Name Optional Default value Description
stopAtZero No false
  • If true, stops the timer when it reaches zero. Otherwise, stops it at the current countdown interval.
Returns : void

Properties

runSpinner$
Default value : new BehaviorSubject(false)
secondsUntilRefresh$
Type : BehaviorSubject<string>

Accessors

countdownInterval
getcountdownInterval()
setcountdownInterval(value: number)

Time in milliseconds to count down from.

Parameters :
Name Type Optional
value number No
Returns : void
<div
  class="time-elapsed"
  data-cy="c8y-countdown-interval--countdown"
  [style.--timescope]="countdownInterval + 'ms'"
  [title]="'{{ secondsLeft }} s / {{ interval }} s' | translate: { secondsLeft: secondsUntilRefresh$ | async, interval: countdownInterval / 1000 }"
>
  <svg
    [ngClass]="{ 'time-on': runSpinner$ | async }"
    viewBox="0 0 40 40"
    fill="none"
    xmlns="http://www.w3.org/2000/svg"
  >
    <circle
      cx="20"
      cy="20"
      r="15.8"
      stroke="var(--c8y-brand-primary)"
      stroke-width="6"
    />
  </svg>

  <span data-cy="c8y-countdown-interval--seconds">{{ secondsUntilRefresh$ | async }}</span>
</div>

results matching ""

    No results matching ""