use super::effects::{VimEffect, VimEffectBatch};
use crate::{
ecs::{
components::buffer::ViewEntity,
events::status::{StatusMessage, StatusMessageRequested},
},
vim::{VimStatusLine, VimStatusMessage},
};
pub(super) fn push_status_effect_from_line(
target: ViewEntity,
status_line: &VimStatusLine,
effects: &mut VimEffectBatch,
) {
let message = match status_line.message() {
Some(VimStatusMessage::Error(error)) => StatusMessage::Error(*error),
Some(VimStatusMessage::Info(message)) => StatusMessage::Info(message.clone()),
None => StatusMessage::Clear,
};
effects.push(VimEffect::Status(StatusMessageRequested {
target,
message,
}));
}