[flutter]: dir refactor

This commit is contained in:
appflowy 2021-10-10 11:40:45 +08:00
parent 03182a51b0
commit 5445853839
19 changed files with 72 additions and 93 deletions

View File

@ -15,6 +15,7 @@ analyzer:
- "**/*.g.dart"
- "**/*.freezed.dart"
- "packages/flowy_editor/**"
- "packages/editor/**"
# - "packages/flowy_infra_ui/**"
linter:

View File

@ -1,11 +1,7 @@
import 'dart:typed_data';
import 'package:flowy_sdk/protobuf/flowy-workspace/errors.pb.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:app_flowy/workspace/domain/i_doc.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:flowy_editor/flowy_editor.dart';
import 'dart:convert';
part 'doc_bloc.freezed.dart';
class DocBloc extends Bloc<DocEvent, DocState> {
@ -37,17 +33,17 @@ class DocBloc extends Bloc<DocEvent, DocState> {
);
}
Document _decodeListToDocument(Uint8List data) {
final json = jsonDecode(utf8.decode(data));
final document = Document.fromJson(json);
return document;
}
// Document _decodeListToDocument(Uint8List data) {
// final json = jsonDecode(utf8.decode(data));
// final document = Document.fromJson(json);
// return document;
// }
Document _decodeJsonToDocument(String data) {
final json = jsonDecode(data);
final document = Document.fromJson(json);
return document;
}
// Document _decodeJsonToDocument(String data) {
// final json = jsonDecode(data);
// final document = Document.fromJson(json);
// return document;
// }
}
@freezed

View File

@ -23,8 +23,7 @@ class HomeScreen extends StatelessWidget {
return MultiBlocProvider(
providers: [
BlocProvider<HomeAuthBloc>(
create: (context) => getIt<HomeAuthBloc>(param1: user)
..add(const HomeAuthEvent.started()),
create: (context) => getIt<HomeAuthBloc>(param1: user)..add(const HomeAuthEvent.started()),
),
BlocProvider<HomeBloc>(create: (context) => getIt<HomeBloc>()),
],
@ -46,8 +45,7 @@ class HomeScreen extends StatelessWidget {
return FlowyContainer(
Theme.of(context).colorScheme.surface,
// Colors.white,
child: _buildBody(
state, context.read<HomeBloc>().state.forceCollapse),
child: _buildBody(state, context.read<HomeBloc>().state.forceCollapse),
);
},
),
@ -70,17 +68,12 @@ class HomeScreen extends StatelessWidget {
layout: layout,
context: context,
);
return _layoutWidgets(
layout: layout,
homePage: homePage,
homeMenu: menu,
editPannel: editPannel);
return _layoutWidgets(layout: layout, homePage: homePage, homeMenu: menu, editPannel: editPannel);
},
);
}
Widget _buildHomeMenu(
{required HomeLayout layout, required BuildContext context}) {
Widget _buildHomeMenu({required HomeLayout layout, required BuildContext context}) {
final homeBloc = context.read<HomeBloc>();
Widget homeMenu = HomeMenu(
pageContextChanged: (pageContext) {
@ -97,10 +90,7 @@ class HomeScreen extends StatelessWidget {
return homeMenu;
}
Widget _buildEditPannel(
{required HomeState homeState,
required BuildContext context,
required HomeLayout layout}) {
Widget _buildEditPannel({required HomeState homeState, required BuildContext context, required HomeLayout layout}) {
final homeBloc = context.read<HomeBloc>();
Widget editPannel = EditPannel(
context: homeState.editContext,
@ -112,10 +102,7 @@ class HomeScreen extends StatelessWidget {
}
Widget _layoutWidgets(
{required HomeLayout layout,
required Widget homeMenu,
required Widget homePage,
required Widget editPannel}) {
{required HomeLayout layout, required Widget homeMenu, required Widget homePage, required Widget editPannel}) {
return Stack(
children: [
homeMenu
@ -123,21 +110,11 @@ class HomeScreen extends StatelessWidget {
closeX: -layout.menuWidth,
isClosed: !layout.showMenu,
)
.positioned(
left: 0,
top: 0,
width: layout.menuWidth,
bottom: 0,
animate: true)
.positioned(left: 0, top: 0, width: layout.menuWidth, bottom: 0, animate: true)
.animate(layout.animDuration, Curves.easeOut),
homePage
.constrained(minWidth: 500)
.positioned(
left: layout.homePageLOffset,
right: layout.homePageROffset,
bottom: 0,
top: 0,
animate: true)
.positioned(left: layout.homePageLOffset, right: layout.homePageROffset, bottom: 0, top: 0, animate: true)
.animate(layout.animDuration, Curves.easeOut),
editPannel
.animatedPanelX(
@ -145,8 +122,7 @@ class HomeScreen extends StatelessWidget {
closeX: layout.editPannelWidth,
isClosed: !layout.showEditPannel,
)
.positioned(
right: 0, top: 0, bottom: 0, width: layout.editPannelWidth),
.positioned(right: 0, top: 0, bottom: 0, width: layout.editPannelWidth),
],
);
}

View File

@ -1,5 +1,4 @@
import 'package:app_flowy/workspace/presentation/widgets/menu/menu_new_app.dart';
import 'package:app_flowy/workspace/presentation/widgets/menu/menu_top_bar.dart';
import 'package:app_flowy/workspace/presentation/widgets/menu/widget/top_bar.dart';
import 'package:dartz/dartz.dart';
import 'package:flowy_infra/size.dart';
import 'package:flowy_infra_ui/widget/error_page.dart';
@ -14,11 +13,11 @@ import 'package:app_flowy/startup/startup.dart';
import 'package:app_flowy/workspace/application/menu/menu_bloc.dart';
import 'package:app_flowy/workspace/application/menu/menu_watch.dart';
import 'package:app_flowy/workspace/domain/page_stack/page_stack.dart';
import 'package:app_flowy/workspace/presentation/app/app_page.dart';
import 'package:app_flowy/workspace/presentation/home/home_sizes.dart';
import 'package:app_flowy/workspace/presentation/widgets/menu/menu_user.dart';
import 'package:app_flowy/workspace/presentation/widgets/menu/widget/user.dart';
import 'menu_list.dart';
import 'widget/app/app.dart';
import 'widget/app/create_button.dart';
class HomeMenu extends StatelessWidget {
final Function(HomeStackView?) pageContextChanged;

View File

@ -1,18 +1,18 @@
import 'package:app_flowy/workspace/presentation/widgets/menu/widget/app/header.dart';
import 'package:expandable/expandable.dart';
import 'package:flowy_infra_ui/widget/error_page.dart';
import 'package:flowy_sdk/protobuf/flowy-workspace/app_create.pb.dart';
import 'package:flowy_sdk/protobuf/flowy-workspace/view_create.pb.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:app_flowy/startup/startup.dart';
import 'package:app_flowy/workspace/application/app/app_bloc.dart';
import 'package:app_flowy/workspace/application/app/app_watch_bloc.dart';
import 'package:app_flowy/workspace/presentation/app/view_list_page.dart';
import 'package:app_flowy/workspace/presentation/widgets/menu/menu_list.dart';
import 'package:provider/provider.dart';
import 'package:styled_widget/styled_widget.dart';
import 'app_header.dart';
import 'view/view_list.dart';
class AppPageSize {
static double expandedIconSize = 16;
@ -21,18 +21,6 @@ class AppPageSize {
static double get expandedPadding => expandedIconSize * scale + expandedIconRightSpace;
}
class ViewListData extends ChangeNotifier {
List<View>? innerViews;
ViewListData();
set views(List<View> views) {
innerViews = views;
notifyListeners();
}
List<View> get views => innerViews ?? [];
}
class AppPageContext {
final App app;
final viewListData = ViewListData();

View File

@ -1,13 +1,12 @@
import 'package:app_flowy/workspace/presentation/home/home_sizes.dart';
import 'package:app_flowy/workspace/presentation/widgets/menu/create_app_dialog.dart';
import 'package:flowy_infra/image.dart';
import 'package:flowy_infra/size.dart';
import 'package:flowy_infra/theme.dart';
import 'package:flowy_infra_ui/style_widget/text.dart';
import 'package:flowy_infra_ui/widget/dialog/styled_dialogs.dart';
import 'package:flutter/material.dart';
import 'package:styled_widget/styled_widget.dart';
import 'package:app_flowy/workspace/presentation/widgets/menu/widget/app/create_dialog.dart';
import 'package:flowy_infra_ui/widget/dialog/styled_dialogs.dart';
import 'package:flowy_infra_ui/style_widget/extension.dart';
import 'package:provider/provider.dart';
class NewAppButton extends StatelessWidget {
final Function(String)? press;
@ -15,7 +14,7 @@ class NewAppButton extends StatelessWidget {
const NewAppButton({this.press, Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
final theme = context.watch<AppTheme>();
// final theme = context.watch<AppTheme>();
return SizedBox(
height: HomeSizes.menuAddButtonHeight,
child: Row(

View File

@ -10,7 +10,7 @@ import 'package:flowy_sdk/protobuf/flowy-workspace/view_create.pb.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'app_page.dart';
import 'app.dart';
class AppHeader extends StatelessWidget {
final App app;

View File

@ -1,4 +1,3 @@
import 'package:app_flowy/workspace/presentation/app/app_page.dart';
import 'package:flowy_log/flowy_log.dart';
import 'package:flowy_sdk/protobuf/flowy-workspace/view_create.pb.dart';
import 'package:flutter/foundation.dart';
@ -7,7 +6,20 @@ import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:provider/provider.dart';
import 'package:app_flowy/startup/startup.dart';
import 'package:app_flowy/workspace/domain/page_stack/page_stack.dart';
import 'package:app_flowy/workspace/presentation/view/view_page.dart';
import 'view_page.dart';
class ViewListData extends ChangeNotifier {
List<View>? innerViews;
ViewListData();
set views(List<View> views) {
innerViews = views;
notifyListeners();
}
List<View> get views => innerViews ?? [];
}
class ViewListNotifier with ChangeNotifier {
List<View> innerViews;

View File

@ -1,3 +1,4 @@
import 'package:app_flowy/workspace/presentation/widgets/menu/widget/app/app.dart';
import 'package:flowy_infra/theme.dart';
import 'package:flowy_infra_ui/style_widget/hover.dart';
import 'package:flowy_infra_ui/style_widget/icon_button.dart';
@ -6,7 +7,6 @@ import 'package:flowy_infra_ui/widget/spacing.dart';
import 'package:flowy_sdk/protobuf/flowy-workspace/view_create.pb.dart';
import 'package:flutter/material.dart';
import 'package:app_flowy/workspace/domain/image.dart';
import 'package:app_flowy/workspace/presentation/app/app_page.dart';
import 'package:provider/provider.dart';
import 'package:styled_widget/styled_widget.dart';

View File

@ -0,0 +1,14 @@
import 'package:flutter/material.dart';
import '../menu_list.dart';
class MenuFav extends MenuItem {
@override
Widget build(BuildContext context) {
// TODO: implement build
throw UnimplementedError();
}
@override
// TODO: implement type
MenuItemType get type => throw UnimplementedError();
}

View File

@ -1,7 +1,4 @@
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:flutter/services.dart';
void main() {
runApp(const MyApp());
@ -15,8 +12,6 @@ class MyApp extends StatefulWidget {
}
class _MyAppState extends State<MyApp> {
String _platformVersion = 'Unknown';
@override
void initState() {
super.initState();
@ -29,8 +24,8 @@ class _MyAppState extends State<MyApp> {
appBar: AppBar(
title: const Text('Plugin example app'),
),
body: Center(
child: Text('Running on: $_platformVersion\n'),
body: const Center(
child: Text(''),
),
),
);

View File

@ -1,3 +1,5 @@
// ignore_for_file: constant_identifier_names
import 'dart:collection';
import 'package:quiver/core.dart';
@ -209,9 +211,7 @@ class Attribute<T> {
if (identical(this, other)) return true;
if (other is! Attribute) return false;
final typedOther = other;
return key == typedOther.key &&
scope == typedOther.scope &&
value == typedOther.value;
return key == typedOther.key && scope == typedOther.scope && value == typedOther.value;
}
@override
@ -264,8 +264,7 @@ class ColorAttribute extends Attribute<String?> {
}
class BackgroundAttribute extends Attribute<String?> {
BackgroundAttribute(String? val)
: super('background', AttributeScope.INLINE, val);
BackgroundAttribute(String? val) : super('background', AttributeScope.INLINE, val);
}
/// This is custom attribute for hint

View File

@ -1,3 +1,5 @@
// ignore_for_file: unused_element
import 'package:dartz/dartz.dart' show Tuple3;
import 'package:flowy_infra_ui/src/flowy_overlay/overlay_layout_delegate.dart';
import 'package:flutter/material.dart';

View File

@ -12,15 +12,13 @@ class SecondaryTextButton extends StatelessWidget {
final String label;
final VoidCallback? onPressed;
const SecondaryTextButton(this.label, {Key? key, this.onPressed})
: super(key: key);
const SecondaryTextButton(this.label, {Key? key, this.onPressed}) : super(key: key);
@override
Widget build(BuildContext context) {
final theme = context.watch<AppTheme>();
TextStyle txtStyle = TextStyles.Footnote.textColor(theme.shader1);
return SecondaryButton(
onPressed: onPressed, child: Text(label, style: txtStyle));
return SecondaryButton(onPressed: onPressed, child: Text(label, style: txtStyle));
}
}
@ -31,7 +29,7 @@ class SecondaryIconButton extends StatelessWidget {
final Color? color;
const SecondaryIconButton(this.icon, {Key? key, this.onPressed, this.color})
: assert((icon is AssetImage) || (icon is IconData)),
: assert((icon is IconData)),
super(key: key);
@override