From ddd3fbb17855847004cf2ecde963ef0094af6693 Mon Sep 17 00:00:00 2001 From: "Nathan.fooo" <86001920+appflowy@users.noreply.github.com> Date: Tue, 4 Apr 2023 14:08:50 +0800 Subject: [PATCH] fix: tauri folder display (#2176) * fix: tauri folder display * refactor: rename layout type --- .gitignore | 2 + .../application/database_controller.dart | 4 +- .../application/database_view_service.dart | 2 +- .../board/application/board_bloc.dart | 2 +- .../plugins/database_view/board/board.dart | 2 +- .../calendar/application/calendar_bloc.dart | 2 +- .../database_view/calendar/calendar.dart | 2 +- .../lib/plugins/database_view/grid/grid.dart | 2 +- .../grid/presentation/grid_page.dart | 2 +- .../lib/plugins/document/document.dart | 2 +- .../plugins/base/insert_page_command.dart | 4 +- .../plugins/base/link_to_page_widget.dart | 12 +- .../plugins/board/board_menu_item.dart | 2 +- .../plugins/board/board_view_menu_item.dart | 6 +- .../plugins/grid/grid_menu_item.dart | 2 +- .../plugins/grid/grid_view_menu_item.dart | 6 +- .../lib/startup/plugin/plugin.dart | 2 +- .../application/app/app_service.dart | 4 +- .../workspace/application/view/view_ext.dart | 8 +- .../workspace/workspace_service.dart | 4 +- .../presentation/home/home_screen.dart | 2 +- .../test/bloc_test/board_test/util.dart | 2 +- .../grid_test/filter/create_filter_test.dart | 8 +- .../grid_test/filter/filter_util.dart | 2 +- .../bloc_test/grid_test/grid_bloc_test.dart | 4 +- .../test/bloc_test/grid_test/util.dart | 2 +- .../bloc_test/home_test/create_page_test.dart | 8 +- frontend/appflowy_tauri/src-tauri/Cargo.lock | 8 +- frontend/appflowy_tauri/src-tauri/Cargo.toml | 11 +- .../_shared/database-hooks/useDatabase.ts | 6 +- .../appflowy_app/components/board/Board.tsx | 7 +- .../NavigationPanel/FolderItem.hooks.ts | 16 +- .../NavigationPanel/NavigationPanel.hooks.ts | 8 +- .../layout/NavigationPanel/PageItem.tsx | 8 +- .../components/tests/DatabaseTestHelper.ts | 4 +- .../components/tests/DocumentTestHelper.ts | 4 +- .../components/tests/TestGrid.tsx | 40 ++-- .../components/tests/TestGroup.tsx | 12 +- .../stores/effects/folder/app/app_bd_svc.ts | 4 +- .../stores/effects/folder/app/app_observer.ts | 2 +- .../folder/workspace/workspace_bd_svc.ts | 4 +- .../folder/workspace/workspace_observer.ts | 10 +- .../stores/reducers/pages/slice.ts | 4 +- frontend/rust-lib/.gitignore | 3 +- frontend/rust-lib/Cargo.lock | 8 +- frontend/rust-lib/Cargo.toml | 12 +- frontend/rust-lib/flowy-core/Cargo.toml | 4 +- .../src/deps_resolve/folder2_deps.rs | 23 +-- frontend/rust-lib/flowy-core/src/lib.rs | 4 +- .../src/entities/database_entities.rs | 4 +- .../src/entities/setting_entities.rs | 28 +-- .../rust-lib/flowy-database/src/manager.rs | 8 +- .../src/services/persistence/migration/mod.rs | 4 +- .../src/services/setting/setting_builder.rs | 4 +- .../tests/database/database_editor.rs | 14 +- .../tests/database/filter_test/script.rs | 2 +- .../flowy-folder2/src/entities/app.rs | 183 ------------------ .../flowy-folder2/src/entities/mod.rs | 2 - .../entities/parser/app/app_color_style.rs | 13 -- .../src/entities/parser/app/app_desc.rs | 20 -- .../src/entities/parser/app/app_id.rs | 20 -- .../src/entities/parser/app/app_name.rs | 20 -- .../src/entities/parser/app/mod.rs | 9 - .../flowy-folder2/src/entities/parser/mod.rs | 2 +- .../flowy-folder2/src/entities/view.rs | 50 ++--- .../flowy-folder2/src/entities/workspace.rs | 12 ++ .../flowy-folder2/src/event_handler.rs | 7 +- .../rust-lib/flowy-folder2/src/manager.rs | 77 +++++--- .../rust-lib/flowy-folder2/src/test_helper.rs | 8 +- .../rust-lib/flowy-folder2/src/view_ext.rs | 14 +- frontend/rust-lib/flowy-test/src/helper.rs | 17 +- 71 files changed, 288 insertions(+), 532 deletions(-) delete mode 100644 frontend/rust-lib/flowy-folder2/src/entities/app.rs delete mode 100644 frontend/rust-lib/flowy-folder2/src/entities/parser/app/app_color_style.rs delete mode 100644 frontend/rust-lib/flowy-folder2/src/entities/parser/app/app_desc.rs delete mode 100644 frontend/rust-lib/flowy-folder2/src/entities/parser/app/app_id.rs delete mode 100644 frontend/rust-lib/flowy-folder2/src/entities/parser/app/app_name.rs delete mode 100644 frontend/rust-lib/flowy-folder2/src/entities/parser/app/mod.rs diff --git a/.gitignore b/.gitignore index 5eeae980bc..bce47974c4 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,5 @@ pubspec.lock .githooks/gitlint .githooks/gitlint.exe .fvm/ + +**/AppFlowy-Collab/ diff --git a/frontend/appflowy_flutter/lib/plugins/database_view/application/database_controller.dart b/frontend/appflowy_flutter/lib/plugins/database_view/application/database_controller.dart index dfff5279a2..86e6da42be 100644 --- a/frontend/appflowy_flutter/lib/plugins/database_view/application/database_controller.dart +++ b/frontend/appflowy_flutter/lib/plugins/database_view/application/database_controller.dart @@ -79,7 +79,7 @@ class DatabaseController { final DatabaseViewBackendService _databaseViewBackendSvc; final FieldController fieldController; late DatabaseViewCache _viewCache; - final LayoutTypePB layoutType; + final DatabaseLayoutPB layoutType; // Callbacks DatabaseCallbacks? _databaseCallbacks; @@ -110,7 +110,7 @@ class DatabaseController { _listenOnFieldsChanged(); _listenOnGroupChanged(); _listenOnLayoutChanged(); - if (layoutType == LayoutTypePB.Calendar) { + if (layoutType == DatabaseLayoutPB.Calendar) { _listenOnCalendarLayoutChanged(); } } diff --git a/frontend/appflowy_flutter/lib/plugins/database_view/application/database_view_service.dart b/frontend/appflowy_flutter/lib/plugins/database_view/application/database_view_service.dart index 44896c0883..bc6dd6e699 100644 --- a/frontend/appflowy_flutter/lib/plugins/database_view/application/database_view_service.dart +++ b/frontend/appflowy_flutter/lib/plugins/database_view/application/database_view_service.dart @@ -86,7 +86,7 @@ class DatabaseViewBackendService { } Future> getLayoutSetting( - LayoutTypePB layoutType) { + DatabaseLayoutPB layoutType) { final payload = DatabaseLayoutIdPB.create() ..viewId = viewId ..layout = layoutType; diff --git a/frontend/appflowy_flutter/lib/plugins/database_view/board/application/board_bloc.dart b/frontend/appflowy_flutter/lib/plugins/database_view/board/application/board_bloc.dart index d91cd68558..6acfbfc650 100644 --- a/frontend/appflowy_flutter/lib/plugins/database_view/board/application/board_bloc.dart +++ b/frontend/appflowy_flutter/lib/plugins/database_view/board/application/board_bloc.dart @@ -30,7 +30,7 @@ class BoardBloc extends Bloc { BoardBloc({required ViewPB view}) : _databaseController = DatabaseController( view: view, - layoutType: LayoutTypePB.Board, + layoutType: DatabaseLayoutPB.Board, ), super(BoardState.initial(view.id)) { boardController = AppFlowyBoardController( diff --git a/frontend/appflowy_flutter/lib/plugins/database_view/board/board.dart b/frontend/appflowy_flutter/lib/plugins/database_view/board/board.dart index c6d2922cb2..15adee1187 100644 --- a/frontend/appflowy_flutter/lib/plugins/database_view/board/board.dart +++ b/frontend/appflowy_flutter/lib/plugins/database_view/board/board.dart @@ -29,7 +29,7 @@ class BoardPluginBuilder implements PluginBuilder { PluginType get pluginType => PluginType.board; @override - ViewLayoutTypePB? get layoutType => ViewLayoutTypePB.Board; + ViewLayoutPB? get layoutType => ViewLayoutPB.Board; } class BoardPluginConfig implements PluginConfig { diff --git a/frontend/appflowy_flutter/lib/plugins/database_view/calendar/application/calendar_bloc.dart b/frontend/appflowy_flutter/lib/plugins/database_view/calendar/application/calendar_bloc.dart index 147e7531cc..db5150d8d4 100644 --- a/frontend/appflowy_flutter/lib/plugins/database_view/calendar/application/calendar_bloc.dart +++ b/frontend/appflowy_flutter/lib/plugins/database_view/calendar/application/calendar_bloc.dart @@ -28,7 +28,7 @@ class CalendarBloc extends Bloc { CalendarBloc({required ViewPB view}) : _databaseController = DatabaseController( view: view, - layoutType: LayoutTypePB.Calendar, + layoutType: DatabaseLayoutPB.Calendar, ), super(CalendarState.initial()) { on( diff --git a/frontend/appflowy_flutter/lib/plugins/database_view/calendar/calendar.dart b/frontend/appflowy_flutter/lib/plugins/database_view/calendar/calendar.dart index 9e29fc8d06..558db1419a 100644 --- a/frontend/appflowy_flutter/lib/plugins/database_view/calendar/calendar.dart +++ b/frontend/appflowy_flutter/lib/plugins/database_view/calendar/calendar.dart @@ -29,7 +29,7 @@ class CalendarPluginBuilder extends PluginBuilder { PluginType get pluginType => PluginType.calendar; @override - ViewLayoutTypePB? get layoutType => ViewLayoutTypePB.Calendar; + ViewLayoutPB? get layoutType => ViewLayoutPB.Calendar; } class CalendarPluginConfig implements PluginConfig { diff --git a/frontend/appflowy_flutter/lib/plugins/database_view/grid/grid.dart b/frontend/appflowy_flutter/lib/plugins/database_view/grid/grid.dart index 213e74ebe2..283eca5701 100644 --- a/frontend/appflowy_flutter/lib/plugins/database_view/grid/grid.dart +++ b/frontend/appflowy_flutter/lib/plugins/database_view/grid/grid.dart @@ -29,7 +29,7 @@ class GridPluginBuilder implements PluginBuilder { PluginType get pluginType => PluginType.grid; @override - ViewLayoutTypePB? get layoutType => ViewLayoutTypePB.Grid; + ViewLayoutPB? get layoutType => ViewLayoutPB.Grid; } class GridPluginConfig implements PluginConfig { diff --git a/frontend/appflowy_flutter/lib/plugins/database_view/grid/presentation/grid_page.dart b/frontend/appflowy_flutter/lib/plugins/database_view/grid/presentation/grid_page.dart index 2971542529..2db3051642 100755 --- a/frontend/appflowy_flutter/lib/plugins/database_view/grid/presentation/grid_page.dart +++ b/frontend/appflowy_flutter/lib/plugins/database_view/grid/presentation/grid_page.dart @@ -38,7 +38,7 @@ class GridPage extends StatefulWidget { Key? key, }) : databaseController = DatabaseController( view: view, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, ), super(key: key); diff --git a/frontend/appflowy_flutter/lib/plugins/document/document.dart b/frontend/appflowy_flutter/lib/plugins/document/document.dart index 1a61742870..904dfd527f 100644 --- a/frontend/appflowy_flutter/lib/plugins/document/document.dart +++ b/frontend/appflowy_flutter/lib/plugins/document/document.dart @@ -34,7 +34,7 @@ class DocumentPluginBuilder extends PluginBuilder { PluginType get pluginType => PluginType.editor; @override - ViewLayoutTypePB? get layoutType => ViewLayoutTypePB.Document; + ViewLayoutPB? get layoutType => ViewLayoutPB.Document; } class DocumentPlugin extends Plugin { diff --git a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/base/insert_page_command.dart b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/base/insert_page_command.dart index cb286d69ae..fae8652fad 100644 --- a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/base/insert_page_command.dart +++ b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/base/insert_page_command.dart @@ -30,9 +30,9 @@ extension InsertPage on EditorState { String _convertPageType(ViewPB viewPB) { switch (viewPB.layout) { - case ViewLayoutTypePB.Grid: + case ViewLayoutPB.Grid: return kGridType; - case ViewLayoutTypePB.Board: + case ViewLayoutPB.Board: return kBoardType; default: throw Exception('Unknown layout type'); diff --git a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/base/link_to_page_widget.dart b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/base/link_to_page_widget.dart index 4a5c879fbf..bf7670dd1f 100644 --- a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/base/link_to_page_widget.dart +++ b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/base/link_to_page_widget.dart @@ -17,7 +17,7 @@ void showLinkToPageMenu( EditorState editorState, SelectionMenuService menuService, BuildContext context, - ViewLayoutTypePB pageType, + ViewLayoutPB pageType, ) { final alignment = menuService.alignment; final offset = menuService.offset; @@ -27,10 +27,10 @@ void showLinkToPageMenu( String hintText = ''; switch (pageType) { - case ViewLayoutTypePB.Grid: + case ViewLayoutPB.Grid: hintText = LocaleKeys.document_slashMenu_grid_selectAGridToLinkTo.tr(); break; - case ViewLayoutTypePB.Board: + case ViewLayoutPB.Board: hintText = LocaleKeys.document_slashMenu_board_selectABoardToLinkTo.tr(); break; default: @@ -82,7 +82,7 @@ class LinkToPageMenu extends StatefulWidget { }); final EditorState editorState; - final ViewLayoutTypePB layoutType; + final ViewLayoutPB layoutType; final String hintText; final void Function(ViewPB view, ViewPB childView) onSelected; @@ -174,9 +174,9 @@ class _LinkToPageMenuState extends State { String _iconName(ViewPB viewPB) { switch (viewPB.layout) { - case ViewLayoutTypePB.Grid: + case ViewLayoutPB.Grid: return 'editor/grid'; - case ViewLayoutTypePB.Board: + case ViewLayoutPB.Board: return 'editor/board'; default: throw Exception('Unknown layout type'); diff --git a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/board/board_menu_item.dart b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/board/board_menu_item.dart index 90bd0d68ec..8390f9201f 100644 --- a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/board/board_menu_item.dart +++ b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/board/board_menu_item.dart @@ -24,7 +24,7 @@ SelectionMenuItem boardMenuItem = SelectionMenuItem( editorState, menuService, context, - ViewLayoutTypePB.Board, + ViewLayoutPB.Board, ); }, ); diff --git a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/board/board_view_menu_item.dart b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/board/board_view_menu_item.dart index 40f3c9ce86..56c55ba1bd 100644 --- a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/board/board_view_menu_item.dart +++ b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/board/board_view_menu_item.dart @@ -23,17 +23,17 @@ SelectionMenuItem boardViewMenuItem(DocumentBloc documentBloc) => // TODO(a-wallen): Translate keywords. keywords: ['board', 'kanban'], handler: (editorState, menuService, context) async { - if (!documentBloc.view.hasAppId()) { + if (!documentBloc.view.hasParentViewId()) { return; } - final appId = documentBloc.view.appId; + final appId = documentBloc.view.parentViewId; final service = AppBackendService(); final result = (await service.createView( appId: appId, name: LocaleKeys.menuAppHeader_defaultNewPageName.tr(), - layoutType: ViewLayoutTypePB.Board, + layoutType: ViewLayoutPB.Board, )) .getLeftOrNull(); diff --git a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/grid/grid_menu_item.dart b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/grid/grid_menu_item.dart index aaf976274e..09806b4eb0 100644 --- a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/grid/grid_menu_item.dart +++ b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/grid/grid_menu_item.dart @@ -23,7 +23,7 @@ SelectionMenuItem gridMenuItem = SelectionMenuItem( editorState, menuService, context, - ViewLayoutTypePB.Grid, + ViewLayoutPB.Grid, ); }, ); diff --git a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/grid/grid_view_menu_item.dart b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/grid/grid_view_menu_item.dart index a3fa5fd8af..96cc8861cb 100644 --- a/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/grid/grid_view_menu_item.dart +++ b/frontend/appflowy_flutter/lib/plugins/document/presentation/plugins/grid/grid_view_menu_item.dart @@ -22,17 +22,17 @@ SelectionMenuItem gridViewMenuItem(DocumentBloc documentBloc) => }, keywords: ['grid'], handler: (editorState, menuService, context) async { - if (!documentBloc.view.hasAppId()) { + if (!documentBloc.view.hasParentViewId()) { return; } - final appId = documentBloc.view.appId; + final appId = documentBloc.view.parentViewId; final service = AppBackendService(); final result = (await service.createView( appId: appId, name: LocaleKeys.menuAppHeader_defaultNewPageName.tr(), - layoutType: ViewLayoutTypePB.Grid, + layoutType: ViewLayoutPB.Grid, )) .getLeftOrNull(); diff --git a/frontend/appflowy_flutter/lib/startup/plugin/plugin.dart b/frontend/appflowy_flutter/lib/startup/plugin/plugin.dart index 87b0ef7c4b..f6d6cad9fa 100644 --- a/frontend/appflowy_flutter/lib/startup/plugin/plugin.dart +++ b/frontend/appflowy_flutter/lib/startup/plugin/plugin.dart @@ -52,7 +52,7 @@ abstract class PluginBuilder { PluginType get pluginType; - ViewLayoutTypePB? get layoutType => ViewLayoutTypePB.Document; + ViewLayoutPB? get layoutType => ViewLayoutPB.Document; } abstract class PluginConfig { diff --git a/frontend/appflowy_flutter/lib/workspace/application/app/app_service.dart b/frontend/appflowy_flutter/lib/workspace/application/app/app_service.dart index 110c906afb..5cc0e0439c 100644 --- a/frontend/appflowy_flutter/lib/workspace/application/app/app_service.dart +++ b/frontend/appflowy_flutter/lib/workspace/application/app/app_service.dart @@ -12,7 +12,7 @@ class AppBackendService { required String appId, required String name, String? desc, - required ViewLayoutTypePB layoutType, + required ViewLayoutPB layoutType, /// The initial data should be the JSON of the document. /// Currently, only support create document with initial data. @@ -90,7 +90,7 @@ class AppBackendService { } Future>>> fetchViews( - ViewLayoutTypePB layoutType) async { + ViewLayoutPB layoutType) async { final result = >>[]; return FolderEventReadCurrentWorkspace().send().then((value) async { final workspaces = value.getLeftOrNull(); diff --git a/frontend/appflowy_flutter/lib/workspace/application/view/view_ext.dart b/frontend/appflowy_flutter/lib/workspace/application/view/view_ext.dart index 29173d7f0f..069cc8e07f 100644 --- a/frontend/appflowy_flutter/lib/workspace/application/view/view_ext.dart +++ b/frontend/appflowy_flutter/lib/workspace/application/view/view_ext.dart @@ -42,13 +42,13 @@ extension ViewExtension on ViewPB { PluginType get pluginType { switch (layout) { - case ViewLayoutTypePB.Board: + case ViewLayoutPB.Board: return PluginType.board; - case ViewLayoutTypePB.Calendar: + case ViewLayoutPB.Calendar: return PluginType.calendar; - case ViewLayoutTypePB.Document: + case ViewLayoutPB.Document: return PluginType.editor; - case ViewLayoutTypePB.Grid: + case ViewLayoutPB.Grid: return PluginType.grid; } diff --git a/frontend/appflowy_flutter/lib/workspace/application/workspace/workspace_service.dart b/frontend/appflowy_flutter/lib/workspace/application/workspace/workspace_service.dart index 533b839fc6..a3e075f84e 100644 --- a/frontend/appflowy_flutter/lib/workspace/application/workspace/workspace_service.dart +++ b/frontend/appflowy_flutter/lib/workspace/application/workspace/workspace_service.dart @@ -9,7 +9,7 @@ import 'package:appflowy_backend/protobuf/flowy-folder2/view.pb.dart' CreateViewPayloadPB, MoveFolderItemPayloadPB, MoveFolderItemType, - ViewLayoutTypePB, + ViewLayoutPB, ViewPB; import 'package:appflowy_backend/protobuf/flowy-folder2/workspace.pb.dart'; @@ -26,7 +26,7 @@ class WorkspaceService { ..belongToId = workspaceId ..name = name ..desc = desc ?? "" - ..layout = ViewLayoutTypePB.Document; + ..layout = ViewLayoutPB.Document; return FolderEventCreateView(payload).send(); } diff --git a/frontend/appflowy_flutter/lib/workspace/presentation/home/home_screen.dart b/frontend/appflowy_flutter/lib/workspace/presentation/home/home_screen.dart index 02dce780a9..b35da5cf9a 100644 --- a/frontend/appflowy_flutter/lib/workspace/presentation/home/home_screen.dart +++ b/frontend/appflowy_flutter/lib/workspace/presentation/home/home_screen.dart @@ -261,7 +261,7 @@ class HomeScreenStackAdaptor extends HomeStackDelegate { @override void didDeleteStackWidget(ViewPB view, int? index) { final homeService = HomeService(); - homeService.readApp(appId: view.appId).then((result) { + homeService.readApp(appId: view.parentViewId).then((result) { result.fold( (parentView) { final List views = parentView.belongings; diff --git a/frontend/appflowy_flutter/test/bloc_test/board_test/util.dart b/frontend/appflowy_flutter/test/bloc_test/board_test/util.dart index 3ffe8cbf5b..da0722bb04 100644 --- a/frontend/appflowy_flutter/test/bloc_test/board_test/util.dart +++ b/frontend/appflowy_flutter/test/bloc_test/board_test/util.dart @@ -43,7 +43,7 @@ class AppFlowyBoardTest { view, DatabaseController( view: view, - layoutType: LayoutTypePB.Board, + layoutType: DatabaseLayoutPB.Board, ), ); final result = await context._boardDataController.open(); diff --git a/frontend/appflowy_flutter/test/bloc_test/grid_test/filter/create_filter_test.dart b/frontend/appflowy_flutter/test/bloc_test/grid_test/filter/create_filter_test.dart index f6342904c2..cff1390ef2 100644 --- a/frontend/appflowy_flutter/test/bloc_test/grid_test/filter/create_filter_test.dart +++ b/frontend/appflowy_flutter/test/bloc_test/grid_test/filter/create_filter_test.dart @@ -53,7 +53,7 @@ void main() { final service = FilterBackendService(viewId: context.gridView.id); final gridController = DatabaseController( view: context.gridView, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, ); final gridBloc = GridBloc( view: context.gridView, @@ -77,7 +77,7 @@ void main() { final service = FilterBackendService(viewId: context.gridView.id); final gridController = DatabaseController( view: context.gridView, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, ); final gridBloc = GridBloc( view: context.gridView, @@ -121,7 +121,7 @@ void main() { final service = FilterBackendService(viewId: context.gridView.id); final gridController = DatabaseController( view: context.gridView, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, ); final gridBloc = GridBloc( view: context.gridView, @@ -143,7 +143,7 @@ void main() { final service = FilterBackendService(viewId: context.gridView.id); final gridController = DatabaseController( view: context.gridView, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, ); final gridBloc = GridBloc( view: context.gridView, diff --git a/frontend/appflowy_flutter/test/bloc_test/grid_test/filter/filter_util.dart b/frontend/appflowy_flutter/test/bloc_test/grid_test/filter/filter_util.dart index b7b409f0e5..2d7d9babef 100644 --- a/frontend/appflowy_flutter/test/bloc_test/grid_test/filter/filter_util.dart +++ b/frontend/appflowy_flutter/test/bloc_test/grid_test/filter/filter_util.dart @@ -21,7 +21,7 @@ Future createTestFilterGrid(AppFlowyGridTest gridTest) async { view, DatabaseController( view: view, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, )); final result = await context.gridController.open(); diff --git a/frontend/appflowy_flutter/test/bloc_test/grid_test/grid_bloc_test.dart b/frontend/appflowy_flutter/test/bloc_test/grid_test/grid_bloc_test.dart index a2ccbbd164..0129955344 100644 --- a/frontend/appflowy_flutter/test/bloc_test/grid_test/grid_bloc_test.dart +++ b/frontend/appflowy_flutter/test/bloc_test/grid_test/grid_bloc_test.dart @@ -23,7 +23,7 @@ void main() { view: context.gridView, databaseController: DatabaseController( view: context.gridView, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, )) ..add(const GridEvent.initial()), act: (bloc) => bloc.add(const GridEvent.createRow()), @@ -39,7 +39,7 @@ void main() { view: context.gridView, databaseController: DatabaseController( view: context.gridView, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, )) ..add(const GridEvent.initial()), act: (bloc) async { diff --git a/frontend/appflowy_flutter/test/bloc_test/grid_test/util.dart b/frontend/appflowy_flutter/test/bloc_test/grid_test/util.dart index 32a1c4f1ce..79d0736ffd 100644 --- a/frontend/appflowy_flutter/test/bloc_test/grid_test/util.dart +++ b/frontend/appflowy_flutter/test/bloc_test/grid_test/util.dart @@ -178,7 +178,7 @@ class AppFlowyGridTest { view, DatabaseController( view: view, - layoutType: LayoutTypePB.Grid, + layoutType: DatabaseLayoutPB.Grid, )); final result = await context.gridController.open(); result.fold((l) => null, (r) => throw Exception(r)); diff --git a/frontend/appflowy_flutter/test/bloc_test/home_test/create_page_test.dart b/frontend/appflowy_flutter/test/bloc_test/home_test/create_page_test.dart index f0862643ce..98a640b6e5 100644 --- a/frontend/appflowy_flutter/test/bloc_test/home_test/create_page_test.dart +++ b/frontend/appflowy_flutter/test/bloc_test/home_test/create_page_test.dart @@ -23,7 +23,7 @@ void main() { assert(bloc.state.views.length == 1); assert(bloc.state.views.last.name == "Test document"); - assert(bloc.state.views.last.layout == ViewLayoutTypePB.Document); + assert(bloc.state.views.last.layout == ViewLayoutPB.Document); }); test('create a grid', () async { @@ -36,7 +36,7 @@ void main() { assert(bloc.state.views.length == 1); assert(bloc.state.views.last.name == "Test grid"); - assert(bloc.state.views.last.layout == ViewLayoutTypePB.Grid); + assert(bloc.state.views.last.layout == ViewLayoutPB.Grid); }); test('create a kanban', () async { @@ -49,7 +49,7 @@ void main() { assert(bloc.state.views.length == 1); assert(bloc.state.views.last.name == "Test board"); - assert(bloc.state.views.last.layout == ViewLayoutTypePB.Board); + assert(bloc.state.views.last.layout == ViewLayoutPB.Board); }); test('create a calendar', () async { @@ -62,6 +62,6 @@ void main() { assert(bloc.state.views.length == 1); assert(bloc.state.views.last.name == "Test calendar"); - assert(bloc.state.views.last.layout == ViewLayoutTypePB.Calendar); + assert(bloc.state.views.last.layout == ViewLayoutPB.Calendar); }); } diff --git a/frontend/appflowy_tauri/src-tauri/Cargo.lock b/frontend/appflowy_tauri/src-tauri/Cargo.lock index 4d56fe6426..93a06be85a 100644 --- a/frontend/appflowy_tauri/src-tauri/Cargo.lock +++ b/frontend/appflowy_tauri/src-tauri/Cargo.lock @@ -564,7 +564,7 @@ dependencies = [ [[package]] name = "collab" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=f25ce7f#f25ce7f71ef3f0a2a35260ebdf74d75534bfad45" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab#9b3f895bb6f8e92830acd90cfb68b69aece83095" dependencies = [ "anyhow", "bytes", @@ -582,7 +582,7 @@ dependencies = [ [[package]] name = "collab-derive" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=f25ce7f#f25ce7f71ef3f0a2a35260ebdf74d75534bfad45" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab#9b3f895bb6f8e92830acd90cfb68b69aece83095" dependencies = [ "proc-macro2", "quote", @@ -594,7 +594,7 @@ dependencies = [ [[package]] name = "collab-folder" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=f25ce7f#f25ce7f71ef3f0a2a35260ebdf74d75534bfad45" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab#9b3f895bb6f8e92830acd90cfb68b69aece83095" dependencies = [ "anyhow", "collab", @@ -612,7 +612,7 @@ dependencies = [ [[package]] name = "collab-persistence" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=f25ce7f#f25ce7f71ef3f0a2a35260ebdf74d75534bfad45" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab#9b3f895bb6f8e92830acd90cfb68b69aece83095" dependencies = [ "bincode", "chrono", diff --git a/frontend/appflowy_tauri/src-tauri/Cargo.toml b/frontend/appflowy_tauri/src-tauri/Cargo.toml index b99aa67948..085164b8fc 100644 --- a/frontend/appflowy_tauri/src-tauri/Cargo.toml +++ b/frontend/appflowy_tauri/src-tauri/Cargo.toml @@ -33,8 +33,13 @@ default = ["custom-protocol"] custom-protocol = ["tauri/custom-protocol"] [patch.crates-io] -collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "f25ce7f" } -collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "f25ce7f" } -collab-persistence = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "f25ce7f" } +collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab" } +collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab" } +collab-persistence = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab" } +#collab = { path = "../../AppFlowy-Collab/collab" } +#collab-folder = { path = "../../AppFlowy-Collab/collab-folder" } +#collab-persistence = { path = "../../AppFlowy-Collab/collab-persistence" } + + diff --git a/frontend/appflowy_tauri/src/appflowy_app/components/_shared/database-hooks/useDatabase.ts b/frontend/appflowy_tauri/src/appflowy_app/components/_shared/database-hooks/useDatabase.ts index e7187384fa..e39dc29ec0 100644 --- a/frontend/appflowy_tauri/src/appflowy_app/components/_shared/database-hooks/useDatabase.ts +++ b/frontend/appflowy_tauri/src/appflowy_app/components/_shared/database-hooks/useDatabase.ts @@ -5,11 +5,11 @@ import { useAppDispatch } from '$app/stores/store'; import loadField from './loadField'; import { FieldInfo } from '$app/stores/effects/database/field/field_controller'; import { RowInfo } from '$app/stores/effects/database/row/row_cache'; -import { ViewLayoutTypePB } from '@/services/backend'; +import { ViewLayoutPB } from '@/services/backend'; import { DatabaseGroupController } from '$app/stores/effects/database/group/group_controller'; import { OnDragEndResponder } from 'react-beautiful-dnd'; -export const useDatabase = (viewId: string, type?: ViewLayoutTypePB) => { +export const useDatabase = (viewId: string, type?: ViewLayoutPB) => { const dispatch = useAppDispatch(); const [controller, setController] = useState(); const [rows, setRows] = useState([]); @@ -58,7 +58,7 @@ export const useDatabase = (viewId: string, type?: ViewLayoutTypePB) => { }); await controller.open(); - if (type === ViewLayoutTypePB.Board) { + if (type === ViewLayoutPB.Board) { const fieldId = await controller.getGroupByFieldId(); setGroupByFieldId(fieldId.unwrap()); setGroups(controller.groups.value); diff --git a/frontend/appflowy_tauri/src/appflowy_app/components/board/Board.tsx b/frontend/appflowy_tauri/src/appflowy_app/components/board/Board.tsx index 7df79ede9a..b4b00d1796 100644 --- a/frontend/appflowy_tauri/src/appflowy_app/components/board/Board.tsx +++ b/frontend/appflowy_tauri/src/appflowy_app/components/board/Board.tsx @@ -3,17 +3,14 @@ import { SearchInput } from '../_shared/SearchInput'; import { BoardBlock } from './BoardBlock'; import { NewBoardBlock } from './NewBoardBlock'; import { useDatabase } from '../_shared/database-hooks/useDatabase'; -import { ViewLayoutTypePB } from '@/services/backend'; +import { ViewLayoutPB } from '@/services/backend'; import { DragDropContext } from 'react-beautiful-dnd'; import { useState } from 'react'; import { RowInfo } from '$app/stores/effects/database/row/row_cache'; import { EditRow } from '$app/components/_shared/EditRow/EditRow'; export const Board = ({ viewId }: { viewId: string }) => { - const { controller, rows, groups, groupByFieldId, onNewRowClick, onDragEnd } = useDatabase( - viewId, - ViewLayoutTypePB.Board - ); + const { controller, rows, groups, groupByFieldId, onNewRowClick, onDragEnd } = useDatabase(viewId, ViewLayoutPB.Board); const [showBoardRow, setShowBoardRow] = useState(false); const [boardRowInfo, setBoardRowInfo] = useState(); diff --git a/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/FolderItem.hooks.ts b/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/FolderItem.hooks.ts index 1d94beaf92..34850a89c3 100644 --- a/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/FolderItem.hooks.ts +++ b/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/FolderItem.hooks.ts @@ -2,7 +2,7 @@ import { foldersActions, IFolder } from '../../../stores/reducers/folders/slice' import { useEffect, useState } from 'react'; import { useAppDispatch, useAppSelector } from '../../../stores/store'; import { IPage, pagesActions } from '../../../stores/reducers/pages/slice'; -import { AppPB, ViewLayoutTypePB } from '@/services/backend'; +import { ViewLayoutPB } from '@/services/backend'; import { AppBackendService } from '../../../stores/effects/folder/app/app_bd_svc'; import { WorkspaceBackendService } from '../../../stores/effects/folder/workspace/workspace_bd_svc'; import { useError } from '../../error/Error.hooks'; @@ -42,7 +42,7 @@ export const useFolderEvents = (folder: IFolder, pages: IPage[]) => { const views = change.val; const updatedPages: IPage[] = views.items.map((view) => ({ id: view.id, - folderId: view.app_id, + folderId: view.parent_view_id, pageType: view.layout, title: view.name, })); @@ -129,13 +129,13 @@ export const useFolderEvents = (folder: IFolder, pages: IPage[]) => { try { const newView = await appBackendService.createView({ name: 'New Document 1', - layoutType: ViewLayoutTypePB.Document, + layoutType: ViewLayoutPB.Document, }); appDispatch( pagesActions.addPage({ folderId: folder.id, - pageType: ViewLayoutTypePB.Document, + pageType: ViewLayoutPB.Document, title: newView.name, id: newView.id, }) @@ -154,7 +154,7 @@ export const useFolderEvents = (folder: IFolder, pages: IPage[]) => { try { const newView = await appBackendService.createView({ name: 'New Board 1', - layoutType: ViewLayoutTypePB.Board, + layoutType: ViewLayoutPB.Board, }); setShowPages(true); @@ -162,7 +162,7 @@ export const useFolderEvents = (folder: IFolder, pages: IPage[]) => { appDispatch( pagesActions.addPage({ folderId: folder.id, - pageType: ViewLayoutTypePB.Board, + pageType: ViewLayoutPB.Board, title: newView.name, id: newView.id, }) @@ -179,7 +179,7 @@ export const useFolderEvents = (folder: IFolder, pages: IPage[]) => { try { const newView = await appBackendService.createView({ name: 'New Grid 1', - layoutType: ViewLayoutTypePB.Grid, + layoutType: ViewLayoutPB.Grid, }); setShowPages(true); @@ -187,7 +187,7 @@ export const useFolderEvents = (folder: IFolder, pages: IPage[]) => { appDispatch( pagesActions.addPage({ folderId: folder.id, - pageType: ViewLayoutTypePB.Grid, + pageType: ViewLayoutPB.Grid, title: newView.name, id: newView.id, }) diff --git a/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/NavigationPanel.hooks.ts b/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/NavigationPanel.hooks.ts index d728c1e838..a3ef4c1752 100644 --- a/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/NavigationPanel.hooks.ts +++ b/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/NavigationPanel.hooks.ts @@ -1,7 +1,7 @@ import { useAppSelector } from '../../../stores/store'; import { useNavigate } from 'react-router-dom'; import { IPage } from '../../../stores/reducers/pages/slice'; -import { ViewLayoutTypePB } from '@/services/backend'; +import { ViewLayoutPB } from '@/services/backend'; import { useState } from 'react'; export const useNavigationPanelHooks = function () { @@ -23,12 +23,12 @@ export const useNavigationPanelHooks = function () { const onPageClick = (page: IPage) => { let pageTypeRoute = (() => { switch (page.pageType) { - case ViewLayoutTypePB.Document: + case ViewLayoutPB.Document: return 'document'; break; - case ViewLayoutTypePB.Grid: + case ViewLayoutPB.Grid: return 'grid'; - case ViewLayoutTypePB.Board: + case ViewLayoutPB.Board: return 'board'; default: return 'document'; diff --git a/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/PageItem.tsx b/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/PageItem.tsx index b1736c1435..e00f37d0f9 100644 --- a/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/PageItem.tsx +++ b/frontend/appflowy_tauri/src/appflowy_app/components/layout/NavigationPanel/PageItem.tsx @@ -7,7 +7,7 @@ import { IPage } from '../../../stores/reducers/pages/slice'; import { Button } from '../../_shared/Button'; import { usePageEvents } from './PageItem.hooks'; import { RenamePopup } from './RenamePopup'; -import { ViewLayoutTypePB } from '@/services/backend'; +import { ViewLayoutPB } from '@/services/backend'; import { useEffect, useRef, useState } from 'react'; import { PAGE_ITEM_HEIGHT } from '../../_shared/constants'; @@ -47,9 +47,9 @@ export const PageItem = ({ page, onPageClick }: { page: IPage; onPageClick: () = >