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-01-08 20:51:19 +08:00
|
|
|
import 'package:easy_localization/easy_localization.dart';
|
2023-12-31 07:29:40 +08:00
|
|
|
import 'package:appflowy_backend/protobuf/flowy-folder/view.pb.dart';
|
2023-01-08 20:51:19 +08:00
|
|
|
|
|
|
|
class CalendarPluginBuilder extends PluginBuilder {
|
|
|
|
@override
|
|
|
|
Plugin build(dynamic data) {
|
|
|
|
if (data is ViewPB) {
|
2023-06-20 23:48:34 +08:00
|
|
|
return DatabaseTabBarViewPlugin(pluginType: pluginType, view: data);
|
2023-01-08 20:51:19 +08:00
|
|
|
} else {
|
|
|
|
throw FlowyPluginException.invalidData;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@override
|
|
|
|
String get menuName => LocaleKeys.calendar_menuName.tr();
|
|
|
|
|
|
|
|
@override
|
2023-08-14 13:34:01 -07:00
|
|
|
FlowySvgData get icon => FlowySvgs.date_s;
|
2023-01-08 20:51:19 +08:00
|
|
|
|
|
|
|
@override
|
|
|
|
PluginType get pluginType => PluginType.calendar;
|
|
|
|
|
|
|
|
@override
|
2023-04-04 14:08:50 +08:00
|
|
|
ViewLayoutPB? get layoutType => ViewLayoutPB.Calendar;
|
2023-01-08 20:51:19 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
class CalendarPluginConfig implements PluginConfig {
|
|
|
|
@override
|
2023-03-20 21:16:37 +08:00
|
|
|
bool get creatable => true;
|
2023-01-08 20:51:19 +08:00
|
|
|
}
|