Mountain/Track/Effect/CreateEffectForRequest/Keybinding.rs
1use std::sync::Arc;
2
3use CommonLibrary::{Environment::Requires::Requires, Keybinding::KeybindingProvider::KeybindingProvider};
4use serde_json::Value;
5use tauri::Runtime;
6
7use crate::Track::Effect::MappedEffectType::MappedEffect;
8
9pub fn CreateEffect<R:Runtime>(MethodName:&str, Parameters:Value) -> Option<Result<MappedEffect, String>> {
10 match MethodName {
11 "Keybinding.GetResolved" => {
12 crate::effect!(run_time, {
13 let provider:Arc<dyn KeybindingProvider> = run_time.Environment.Require();
14
15 provider.GetResolvedKeybinding().await.map_err(|e| e.to_string())
16 })
17 },
18
19 _ => None,
20 }
21}