31 lines
805 B
Dart
31 lines
805 B
Dart
import 'package:aves/widgets/common/extensions/build_context.dart';
|
|
import 'package:flutter/widgets.dart';
|
|
|
|
class SlideFadeTransition extends StatelessWidget {
|
|
final Animation<double> animation;
|
|
final Widget child;
|
|
|
|
const SlideFadeTransition({
|
|
super.key,
|
|
required this.animation,
|
|
required this.child,
|
|
});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return AnimatedBuilder(
|
|
animation: animation,
|
|
builder: (context, child) => animation.value == 0.0 ? Container() : child!,
|
|
child: SlideTransition(
|
|
position: Tween(
|
|
begin: Offset((context.isRtl ? -1 : 1) * .3, 0),
|
|
end: Offset.zero,
|
|
).animate(animation),
|
|
child: FadeTransition(
|
|
opacity: animation,
|
|
child: child,
|
|
),
|
|
),
|
|
);
|
|
}
|
|
}
|