play method
Play animation by key
Implementation
Future<void> play(String key) async {
if (_isDisposed) return;
final controller = _controllers[key];
if (controller != null && mounted && !controller.isAnimating) {
_states[key] = FSAnimationState.entering;
notifyListeners();
try {
await controller.forward().orCancel;
if (!_isDisposed && _states.containsKey(key)) {
_states[key] = FSAnimationState.active;
notifyListeners();
}
} catch (error) {
if (!_isDisposed && _states.containsKey(key)) {
_states[key] = FSAnimationState.idle;
notifyListeners();
}
}
}
}