Border lerp(Border a, Border b, double t)

Linearly interpolate between two borders.

Source

static Border lerp(Border a, Border b, double t) {
  if (a == null && b == null)
    return null;
  if (a == null)
    return b.scale(t);
  if (b == null)
    return a.scale(1.0 - t);
  return new Border(
    top: BorderSide.lerp(a.top, b.top, t),
    right: BorderSide.lerp(a.right, b.right, t),
    bottom: BorderSide.lerp(a.bottom, b.bottom, t),
    left: BorderSide.lerp(a.left, b.left, t)
  );
}