fluentci_shared/
directory.rs1use extism::{convert::Json, *};
2use fluentci_common::directory::directory as common_directory;
3use fluentci_common::directory::entries as common_entries;
4
5use crate::state::State;
6
7host_fn!(pub directory(user_data: State; path: String) -> Json<Directory> {
8 let state = user_data.get()?;
9 let state = state.lock().unwrap();
10 let graph = state.graph.clone();
11
12 let directory = common_directory(graph, path, true)?;
13
14 Ok(Json(directory))
15});
16
17host_fn!(pub entries(user_data: State; path: String) -> Json<Vec<String>> {
18 match common_entries(path) {
19 Ok(entries) => Ok(Json(entries)),
20 Err(err) => Err(err),
21 }
22});