2023-08-14 13:34:01 -07:00
|
|
|
import 'package:appflowy/generated/flowy_svgs.g.dart';
|
2023-02-26 16:27:17 +08:00
|
|
|
import 'package:appflowy/generated/locale_keys.g.dart';
|
2024-01-05 17:30:54 +08:00
|
|
|
import 'package:appflowy/plugins/database/tab_bar/tab_bar_view.dart';
|
2023-02-26 16:27:17 +08:00
|
|
|
import 'package:appflowy/startup/plugin/plugin.dart';
|
2023-12-31 07:29:40 +08:00
|
|
|
import 'package:appflowy_backend/protobuf/flowy-folder/view.pb.dart';
|
2023-01-30 12:22:13 +07:00
|
|
|
import 'package:easy_localization/easy_localization.dart';
|
2022-06-11 15:51:53 +08:00
|
|
|
|
|
|
|
class BoardPluginBuilder implements PluginBuilder {
|
|
|
|
@override
|
|
|
|
Plugin build(dynamic data) {
|
2022-07-19 14:11:29 +08:00
|
|
|
if (data is ViewPB) {
|
2023-06-20 23:48:34 +08:00
|
|
|
return DatabaseTabBarViewPlugin(pluginType: pluginType, view: data);
|
2022-06-11 15:51:53 +08:00
|
|
|
} else {
|
|
|
|
throw FlowyPluginException.invalidData;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@override
|
2023-01-30 12:22:13 +07:00
|
|
|
String get menuName => LocaleKeys.board_menuName.tr();
|
2022-06-11 15:51:53 +08:00
|
|
|
|
2022-11-15 11:45:23 +08:00
|
|
|
@override
|
2023-08-14 13:34:01 -07:00
|
|
|
FlowySvgData get icon => FlowySvgs.board_s;
|
2022-11-15 11:45:23 +08:00
|
|
|
|
2022-06-11 15:51:53 +08:00
|
|
|
@override
|
2022-08-18 19:32:08 +08:00
|
|
|
PluginType get pluginType => PluginType.board;
|
2022-06-11 15:51:53 +08:00
|
|
|
|
2022-08-10 17:59:28 +08:00
|
|
|
@override
|
2023-04-04 14:08:50 +08:00
|
|
|
ViewLayoutPB? get layoutType => ViewLayoutPB.Board;
|
2022-06-11 15:51:53 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
class BoardPluginConfig implements PluginConfig {
|
|
|
|
@override
|
2022-08-25 14:58:08 +08:00
|
|
|
bool get creatable => true;
|
2022-06-11 15:51:53 +08:00
|
|
|
}
|