revealAnimation method

  1. @override
SwipeAnimation revealAnimation({
  1. required int relativeIndex,
})
override

Implementation

@override
SwipeAnimation revealAnimation({required int relativeIndex}) {
  return (progress) {
    final dirValue = config.dismissDirection.opposite.value;
    const compressionDiff = 0.06;
    double p = progress * dirValue;
    p = config.reversible ? p : -p.abs();
    p = layoutConfig.usesInvertedLayout ? -p : p;
    final idx = relativeIndex.toDouble().abs();
    final compression = 1 - (p * compressionDiff + idx * compressionDiff);

    final y = p * separationToNextCard + idx * separationToNextCard;
    return Matrix4.identity()
      ..translate(0.0, y)
      ..scale(compression, compression);
  };
}