mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2025-04-25 07:07:32 -04:00
add git flutter hook
This commit is contained in:
parent
dfc2cbff4f
commit
3d0200a4a0
14 changed files with 114 additions and 48 deletions
4
.githooks/pre-commit
Executable file
4
.githooks/pre-commit
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
#flutter format .
|
||||||
|
|
21
.githooks/pre-push
Executable file
21
.githooks/pre-push
Executable file
|
@ -0,0 +1,21 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
cd flutter-lib
|
||||||
|
if [[ `git status --porcelain` ]]; then
|
||||||
|
printf "\e[31;1m%s\e[0m\n" 'This script needs to run against committed code only. Please commit or stash you changes.'
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
printf "\e[33;1m%s\e[0m\n" 'Running the Flutter analyzer'
|
||||||
|
flutter analyze
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
printf "\e[31;1m%s\e[0m\n" 'Flutter analyzer error'
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
printf "\e[33;1m%s\e[0m\n" 'Finished running the Flutter analyzer'
|
||||||
|
printf "\e[33;1m%s\e[0m\n" 'Running unit tests'
|
||||||
|
|
||||||
|
#flutter test
|
||||||
|
#if [ $? -ne 0 ]; then
|
||||||
|
# printf "\e[31;1m%s\e[0m\n" 'Unit tests error'
|
||||||
|
# exit 1
|
||||||
|
#fi
|
||||||
|
#printf "\e[33;1m%s\e[0m\n" 'Finished running unit tests'
|
10
.idea/libraries/Dart_Packages.xml
generated
10
.idea/libraries/Dart_Packages.xml
generated
|
@ -524,6 +524,14 @@
|
||||||
</list>
|
</list>
|
||||||
</value>
|
</value>
|
||||||
</entry>
|
</entry>
|
||||||
|
<entry key="protobuf">
|
||||||
|
<value>
|
||||||
|
<list>
|
||||||
|
<option value="$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/protobuf-2.0.0/lib" />
|
||||||
|
<option value="$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/protobuf-1.1.4/lib" />
|
||||||
|
</list>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
<entry key="provider">
|
<entry key="provider">
|
||||||
<value>
|
<value>
|
||||||
<list>
|
<list>
|
||||||
|
@ -833,6 +841,8 @@
|
||||||
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/plugin_platform_interface-2.0.0/lib" />
|
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/plugin_platform_interface-2.0.0/lib" />
|
||||||
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/pool-1.5.0/lib" />
|
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/pool-1.5.0/lib" />
|
||||||
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/process-4.2.1/lib" />
|
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/process-4.2.1/lib" />
|
||||||
|
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/protobuf-1.1.4/lib" />
|
||||||
|
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/protobuf-2.0.0/lib" />
|
||||||
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/provider-5.0.0/lib" />
|
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/provider-5.0.0/lib" />
|
||||||
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/pub_semver-2.0.0/lib" />
|
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/pub_semver-2.0.0/lib" />
|
||||||
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/pubspec_parse-1.0.0/lib" />
|
<root url="file://$PROJECT_DIR$/../../flutter/.pub-cache/hosted/pub.dartlang.org/pubspec_parse-1.0.0/lib" />
|
||||||
|
|
|
@ -12,7 +12,7 @@ abstract class HomeState implements _$HomeState {
|
||||||
factory HomeState.initial() => HomeState(
|
factory HomeState.initial() => HomeState(
|
||||||
isLoading: false,
|
isLoading: false,
|
||||||
showMenu: true,
|
showMenu: true,
|
||||||
pageContext: BlankPageContext(),
|
pageContext: const BlankPageContext(),
|
||||||
editContext: none(),
|
editContext: none(),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,7 +28,7 @@ List<Widget> buildPagesWidget(PageContext pageContext) {
|
||||||
if (pageType == pageContext.pageType) {
|
if (pageType == pageContext.pageType) {
|
||||||
return pageType.builder(pageContext);
|
return pageType.builder(pageContext);
|
||||||
} else {
|
} else {
|
||||||
return BlankPage(context: BlankPageContext());
|
return const BlankPage(context: BlankPageContext());
|
||||||
}
|
}
|
||||||
}).toList();
|
}).toList();
|
||||||
}
|
}
|
||||||
|
|
|
@ -92,6 +92,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "6.1.1"
|
version: "6.1.1"
|
||||||
|
fixnum:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: fixnum
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "1.0.0"
|
||||||
flowy_logger:
|
flowy_logger:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -201,6 +208,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "4.2.1"
|
version: "4.2.1"
|
||||||
|
protobuf:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: protobuf
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "2.0.0"
|
||||||
sky_engine:
|
sky_engine:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description: flutter
|
description: flutter
|
||||||
|
@ -299,4 +313,4 @@ packages:
|
||||||
version: "3.0.0"
|
version: "3.0.0"
|
||||||
sdks:
|
sdks:
|
||||||
dart: ">=2.12.0 <3.0.0"
|
dart: ">=2.12.0 <3.0.0"
|
||||||
flutter: ">=1.20.0"
|
flutter: ">=1.17.0"
|
||||||
|
|
|
@ -1,21 +1,6 @@
|
||||||
// Auto-generated, do not edit
|
// Auto-generated, do not edit
|
||||||
export 'protobuf/sign_in.pbjson.pb.dart';
|
export 'protobuf/ffi_response.pb.dart';
|
||||||
export 'protobuf/sign_in.pb.pb.dart';
|
export 'protobuf/ffi_request.pb.dart';
|
||||||
export 'protobuf/ffi_response.pbjson.pb.dart';
|
export 'protobuf/sign_up.pb.dart';
|
||||||
export 'protobuf/ffi_request.pbserver.pb.dart';
|
export 'protobuf/sign_in.pb.dart';
|
||||||
export 'protobuf/ffi_response.pb.pb.dart';
|
export 'protobuf/user.pb.dart';
|
||||||
export 'protobuf/user.pbenum.pb.dart';
|
|
||||||
export 'protobuf/user.pbserver.pb.dart';
|
|
||||||
export 'protobuf/ffi_request.pbjson.pb.dart';
|
|
||||||
export 'protobuf/sign_up.pbjson.pb.dart';
|
|
||||||
export 'protobuf/ffi_request.pbenum.pb.dart';
|
|
||||||
export 'protobuf/sign_up.pbenum.pb.dart';
|
|
||||||
export 'protobuf/sign_up.pbserver.pb.dart';
|
|
||||||
export 'protobuf/user.pbjson.pb.dart';
|
|
||||||
export 'protobuf/ffi_response.pbserver.pb.dart';
|
|
||||||
export 'protobuf/ffi_response.pbenum.pb.dart';
|
|
||||||
export 'protobuf/sign_in.pbserver.pb.dart';
|
|
||||||
export 'protobuf/sign_up.pb.pb.dart';
|
|
||||||
export 'protobuf/user.pb.pb.dart';
|
|
||||||
export 'protobuf/sign_in.pbenum.pb.dart';
|
|
||||||
export 'protobuf/ffi_request.pb.pb.dart';
|
|
||||||
|
|
|
@ -84,14 +84,14 @@ packages:
|
||||||
name: built_collection
|
name: built_collection
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "4.3.2"
|
version: "5.1.0"
|
||||||
built_value:
|
built_value:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: built_value
|
name: built_value
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "7.1.0"
|
version: "8.1.0"
|
||||||
characters:
|
characters:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -196,7 +196,7 @@ packages:
|
||||||
name: fixnum
|
name: fixnum
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.10.11"
|
version: "1.0.0"
|
||||||
flowy_logger:
|
flowy_logger:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
@ -347,6 +347,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.5.0"
|
version: "1.5.0"
|
||||||
|
protobuf:
|
||||||
|
dependency: "direct main"
|
||||||
|
description:
|
||||||
|
name: protobuf
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "2.0.0"
|
||||||
pub_semver:
|
pub_semver:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -361,13 +368,6 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.0.0"
|
version: "1.0.0"
|
||||||
quiver:
|
|
||||||
dependency: transitive
|
|
||||||
description:
|
|
||||||
name: quiver
|
|
||||||
url: "https://pub.dartlang.org"
|
|
||||||
source: hosted
|
|
||||||
version: "2.1.5"
|
|
||||||
shelf:
|
shelf:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
@ -494,4 +494,4 @@ packages:
|
||||||
version: "3.1.0"
|
version: "3.1.0"
|
||||||
sdks:
|
sdks:
|
||||||
dart: ">=2.12.0 <3.0.0"
|
dart: ">=2.12.0 <3.0.0"
|
||||||
flutter: ">=1.20.0"
|
flutter: ">=1.17.0"
|
||||||
|
|
|
@ -7,13 +7,14 @@ publish_to: 'none'
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: ">=2.12.0-0 <3.0.0"
|
sdk: ">=2.12.0-0 <3.0.0"
|
||||||
flutter: ">=1.20.0"
|
flutter: ">=1.17.0"
|
||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
flutter:
|
flutter:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
ffi: ^1.0.0
|
ffi: ^1.0.0
|
||||||
isolates: ^3.0.3+8
|
isolates: ^3.0.3+8
|
||||||
|
protobuf: "2.0.0"
|
||||||
flowy_logger:
|
flowy_logger:
|
||||||
path: ../flowy_logger
|
path: ../flowy_logger
|
||||||
infra:
|
infra:
|
||||||
|
|
|
@ -72,7 +72,7 @@ class PageRoutes {
|
||||||
transitionsBuilder: (context, animation, secondaryAnimation, child) {
|
transitionsBuilder: (context, animation, secondaryAnimation, child) {
|
||||||
bool reverse = animation.status == AnimationStatus.reverse;
|
bool reverse = animation.status == AnimationStatus.reverse;
|
||||||
return SlideTransition(
|
return SlideTransition(
|
||||||
position: Tween<Offset>(begin: startOffset, end: Offset(0, 0))
|
position: Tween<Offset>(begin: startOffset, end: const Offset(0, 0))
|
||||||
.animate(CurvedAnimation(
|
.animate(CurvedAnimation(
|
||||||
parent: animation, curve: reverse ? easeReverse : easeFwd)),
|
parent: animation, curve: reverse ? easeReverse : easeFwd)),
|
||||||
child: child,
|
child: child,
|
||||||
|
|
|
@ -259,7 +259,7 @@ packages:
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "7.0.1"
|
version: "7.0.1"
|
||||||
flutter_lints:
|
flutter_lints:
|
||||||
dependency: "direct dev"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: flutter_lints
|
name: flutter_lints
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
|
@ -494,6 +494,13 @@ packages:
|
||||||
url: "https://pub.dartlang.org"
|
url: "https://pub.dartlang.org"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "4.2.1"
|
version: "4.2.1"
|
||||||
|
protobuf:
|
||||||
|
dependency: transitive
|
||||||
|
description:
|
||||||
|
name: protobuf
|
||||||
|
url: "https://pub.dartlang.org"
|
||||||
|
source: hosted
|
||||||
|
version: "2.0.0"
|
||||||
provider:
|
provider:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
|
@ -56,8 +56,9 @@ dev_dependencies:
|
||||||
flutter_test:
|
flutter_test:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
build_runner:
|
build_runner:
|
||||||
freezed: '>=0.14.2'
|
|
||||||
flutter_lints: ^1.0.0
|
flutter_lints: ^1.0.0
|
||||||
|
freezed: '>=0.14.2'
|
||||||
|
|
||||||
|
|
||||||
# The "flutter_lints" package below contains a set of recommended lints to
|
# The "flutter_lints" package below contains a set of recommended lints to
|
||||||
# encourage good coding practices. The lint set provided by the package is
|
# encourage good coding practices. The lint set provided by the package is
|
||||||
|
|
|
@ -16,6 +16,21 @@ fn sign_in_without_password() {
|
||||||
dbg!(&result);
|
dbg!(&result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
#[should_panic]
|
||||||
|
fn sign_in_with_invalid_password() {
|
||||||
|
let params = UserSignInParams {
|
||||||
|
email: "annie@appflowy.io".to_string(),
|
||||||
|
password: "123".to_string(),
|
||||||
|
};
|
||||||
|
|
||||||
|
let result = EventTester::new(SignIn)
|
||||||
|
.payload(params)
|
||||||
|
.assert_status_code(StatusCode::Err)
|
||||||
|
.sync_send::<UserSignInResult>();
|
||||||
|
dbg!(&result);
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
#[should_panic]
|
#[should_panic]
|
||||||
fn sign_in_without_email() {
|
fn sign_in_without_email() {
|
||||||
|
|
|
@ -24,7 +24,7 @@ impl ProtoGen {
|
||||||
// FIXME: ignore unchanged file to reduce time cost
|
// FIXME: ignore unchanged file to reduce time cost
|
||||||
let flutter_package = FlutterProtobufInfo::new(self.flutter_package_lib.as_ref());
|
let flutter_package = FlutterProtobufInfo::new(self.flutter_package_lib.as_ref());
|
||||||
run_flutter_protoc(&crate_proto_infos, &flutter_package);
|
run_flutter_protoc(&crate_proto_infos, &flutter_package);
|
||||||
write_flutter_protobuf_package_mod_file(&flutter_package);
|
write_flutter_protobuf_package_mod_file(&crate_proto_infos, &flutter_package);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +72,10 @@ fn write_rust_crate_mod_file(crate_infos: &Vec<CrateProtoInfo>) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn write_flutter_protobuf_package_mod_file(package_info: &FlutterProtobufInfo) {
|
fn write_flutter_protobuf_package_mod_file(
|
||||||
|
crate_infos: &Vec<CrateProtoInfo>,
|
||||||
|
package_info: &FlutterProtobufInfo,
|
||||||
|
) {
|
||||||
let mod_path = package_info.mod_file_path();
|
let mod_path = package_info.mod_file_path();
|
||||||
let model_dir = package_info.model_dir();
|
let model_dir = package_info.model_dir();
|
||||||
match OpenOptions::new()
|
match OpenOptions::new()
|
||||||
|
@ -85,14 +88,19 @@ fn write_flutter_protobuf_package_mod_file(package_info: &FlutterProtobufInfo) {
|
||||||
Ok(ref mut file) => {
|
Ok(ref mut file) => {
|
||||||
let mut mod_file_content = String::new();
|
let mut mod_file_content = String::new();
|
||||||
mod_file_content.push_str("// Auto-generated, do not edit \n");
|
mod_file_content.push_str("// Auto-generated, do not edit \n");
|
||||||
|
|
||||||
|
for crate_info in crate_infos {
|
||||||
|
let mod_path = crate_info.inner.proto_model_mod_file();
|
||||||
walk_dir(
|
walk_dir(
|
||||||
model_dir.as_ref(),
|
crate_info.inner.proto_file_output_dir().as_ref(),
|
||||||
|e| e.file_type().is_dir() == false,
|
|e| e.file_type().is_dir() == false,
|
||||||
|_, name| {
|
|_, name| {
|
||||||
let c = format!("export 'protobuf/{}.pb.dart';\n", &name);
|
let c = format!("export 'protobuf/{}.pb.dart';\n", &name);
|
||||||
mod_file_content.push_str(c.as_ref());
|
mod_file_content.push_str(c.as_ref());
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
}
|
||||||
|
|
||||||
file.write_all(mod_file_content.as_bytes()).unwrap();
|
file.write_all(mod_file_content.as_bytes()).unwrap();
|
||||||
file.flush().unwrap();
|
file.flush().unwrap();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue