mirror of
https://github.com/sxyazi/yazi.git
synced 2026-07-21 23:01:05 +00:00
20 lines
540 B
Rust
20 lines
540 B
Rust
use tokio::sync::mpsc;
|
|
use yazi_config::popup::InputCfg;
|
|
use yazi_macro::emit;
|
|
use yazi_shared::{Id, errors::InputError, event::Cmd};
|
|
|
|
pub struct InputProxy;
|
|
|
|
impl InputProxy {
|
|
#[inline]
|
|
pub fn show(cfg: InputCfg) -> mpsc::UnboundedReceiver<Result<String, InputError>> {
|
|
let (tx, rx) = mpsc::unbounded_channel();
|
|
emit!(Call(Cmd::new("input:show").with_any("tx", tx).with_any("cfg", cfg)));
|
|
rx
|
|
}
|
|
|
|
#[inline]
|
|
pub fn complete(word: &str, ticket: Id) {
|
|
emit!(Call(Cmd::args("input:complete", &[word]).with("ticket", ticket)));
|
|
}
|
|
}
|