Skip to main content

tauri_plugin_fs_stream/
lib.rs

1mod cmds;
2mod config;
3mod error;
4mod scope;
5mod state;
6
7use error::*;
8use scope::*;
9use state::*;
10
11
12/// Initializes the plugin.
13pub fn init<R: tauri::Runtime>() -> tauri::plugin::TauriPlugin<R, Option<config::Config>> {
14	tauri::plugin::Builder::<R, Option<config::Config>>::new("fs-stream")
15		.setup(|app, api| {
16			use tauri::Manager as _;
17
18			let require_literal_leading_dot = api
19				.config()
20				.as_ref()
21                .and_then(|c| c.require_literal_leading_dot);
22
23			app.manage(new_plugin_config_state(require_literal_leading_dot));
24			app.manage(new_plugin_resources_state(app.app_handle().clone()));
25			Ok(())
26		})
27		.invoke_handler(tauri::generate_handler![
28			cmds::open_read_file_stream,
29			cmds::open_read_text_file_lines_stream,
30			cmds::open_write_file_stream,
31			cmds::close_all_file_streams,
32		])
33		.build()
34}