43 lines
1.4 KiB
Rust
Raw Normal View History

use flowy_block::BlockManager;
use flowy_folder::manager::FolderManager;
2022-03-04 22:09:16 +08:00
use flowy_grid::manager::GridManager;
2022-01-11 22:23:19 +08:00
use flowy_net::ws::connection::FlowyWebSocketConnect;
2022-01-11 13:34:45 +08:00
use flowy_user::services::UserSession;
use lib_dispatch::prelude::Module;
use std::sync::Arc;
2021-06-30 23:11:27 +08:00
2021-12-26 19:10:37 +08:00
pub fn mk_modules(
2022-01-07 17:37:11 +08:00
ws_conn: &Arc<FlowyWebSocketConnect>,
2022-01-14 20:52:03 +08:00
folder_manager: &Arc<FolderManager>,
2022-03-04 22:09:16 +08:00
grid_manager: &Arc<GridManager>,
2022-01-07 17:37:11 +08:00
user_session: &Arc<UserSession>,
block_manager: &Arc<BlockManager>,
2021-12-26 19:10:37 +08:00
) -> Vec<Module> {
2022-01-07 17:37:11 +08:00
let user_module = mk_user_module(user_session.clone());
2022-01-23 22:33:47 +08:00
let folder_module = mk_folder_module(folder_manager.clone());
2022-01-07 17:37:11 +08:00
let network_module = mk_network_module(ws_conn.clone());
2022-03-04 22:09:16 +08:00
let grid_module = mk_grid_module(grid_manager.clone());
2022-03-06 09:03:02 +08:00
let block_module = mk_block_module(block_manager.clone());
vec![user_module, folder_module, network_module, grid_module, block_module]
2021-09-20 15:38:55 +08:00
}
2022-01-24 17:35:58 +08:00
fn mk_user_module(user_session: Arc<UserSession>) -> Module {
2022-01-28 10:56:55 +08:00
flowy_user::event_map::create(user_session)
2022-01-24 17:35:58 +08:00
}
2021-12-14 15:31:44 +08:00
2022-03-04 22:09:16 +08:00
fn mk_folder_module(folder_manager: Arc<FolderManager>) -> Module {
flowy_folder::event_map::create(folder_manager)
2022-01-24 17:35:58 +08:00
}
2021-09-11 14:26:30 +08:00
2022-01-24 17:35:58 +08:00
fn mk_network_module(ws_conn: Arc<FlowyWebSocketConnect>) -> Module {
2022-02-16 10:00:31 +08:00
flowy_net::event_map::create(ws_conn)
2022-01-24 17:35:58 +08:00
}
2022-03-04 22:09:16 +08:00
fn mk_grid_module(grid_manager: Arc<GridManager>) -> Module {
flowy_grid::event_map::create(grid_manager)
}
fn mk_block_module(block_manager: Arc<BlockManager>) -> Module {
flowy_block::event_map::create(block_manager)
}