| 
									
										
										
										
											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'; | 
					
						
							| 
									
										
										
										
											2023-06-20 23:48:34 +08:00
										 |  |  | import 'package:appflowy/plugins/database_view/tar_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-04-04 08:41:16 +08:00
										 |  |  | import 'package:appflowy_backend/protobuf/flowy-folder2/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
										 |  |  | } |