Skip to main content

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}