breathingAnimation function

LoopManager breathingAnimation(
  1. GDisplayObject element,
  2. int duration
)

Implementation

LoopManager breathingAnimation(GDisplayObject element, int duration) {
  final source = element.scale;
  final second = duration / 1000.0;
  void run() {
    element.tween(
      duration: second,
      scale: source / 2,
      ease: GEase.easeOut,
      onComplete: () {
        element.tween(duration: second, scale: source, ease: GEase.easeOut);
      },
    );
  }

  return LoopManager(
    task: run,
    interval: Duration(milliseconds: duration * 2),
  );
}