Files
pluriwave/lib/tema/pluriwave_motion.dart
T
FreeTLab c707fc9911
Build & Deploy Pluriwave / Análisis de código (push) Failing after 21s
Build & Deploy Pluriwave / Build APK + AAB release (push) Has been skipped
feat(ui): add premium PluriWave redesign
2026-05-20 18:42:22 +02:00

45 lines
1.1 KiB
Dart

import 'package:flutter/material.dart';
@immutable
class PluriWaveMotion extends ThemeExtension<PluriWaveMotion> {
const PluriWaveMotion({
required this.quick,
required this.normal,
required this.emphasisCurve,
required this.standardCurve,
});
final Duration quick;
final Duration normal;
final Curve emphasisCurve;
final Curve standardCurve;
static const dark = PluriWaveMotion(
quick: Duration(milliseconds: 140),
normal: Duration(milliseconds: 240),
emphasisCurve: Curves.easeOutCubic,
standardCurve: Curves.easeInOut,
);
@override
PluriWaveMotion copyWith({
Duration? quick,
Duration? normal,
Curve? emphasisCurve,
Curve? standardCurve,
}) {
return PluriWaveMotion(
quick: quick ?? this.quick,
normal: normal ?? this.normal,
emphasisCurve: emphasisCurve ?? this.emphasisCurve,
standardCurve: standardCurve ?? this.standardCurve,
);
}
@override
ThemeExtension<PluriWaveMotion> lerp(covariant ThemeExtension<PluriWaveMotion>? other, double t) {
if (other is! PluriWaveMotion) return this;
return t < 0.5 ? this : other;
}
}