-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: Added all linter rules and clean up generated files and codes
- Loading branch information
Showing
9 changed files
with
321 additions
and
251 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,207 @@ | ||
# Specify linter rules. | ||
# | ||
# For a list of lints, see: http://dart-lang.github.io/linter/lints/ | ||
# See the configuration guide for more | ||
# https://github.com/dart-lang/sdk/tree/master/pkg/analyzer#configuring-the-analyzer | ||
|
||
linter: | ||
# These rules are documented on and in the same order as | ||
# the Dart Lint rules page to make maintenance easier | ||
# https://github.com/dart-lang/linter/blob/master/example/all.yaml | ||
# | ||
# Don't forget to keep this rules updated with the latest lint rules | ||
# on the above link, otherwise it could be time-consuming and error-prone | ||
# to add multiple rules and update the code. | ||
rules: | ||
- always_declare_return_types | ||
- always_put_control_body_on_new_line | ||
- always_put_required_named_parameters_first | ||
- always_require_non_null_named_parameters | ||
- always_specify_types | ||
- always_use_package_imports | ||
- annotate_overrides | ||
- avoid_annotating_with_dynamic | ||
- avoid_bool_literals_in_conditional_expressions | ||
- avoid_catches_without_on_clauses | ||
- avoid_catching_errors | ||
- avoid_classes_with_only_static_members | ||
- avoid_double_and_int_checks | ||
- avoid_dynamic_calls | ||
- avoid_empty_else | ||
- avoid_equals_and_hash_code_on_mutable_classes | ||
- avoid_escaping_inner_quotes | ||
- avoid_field_initializers_in_const_classes | ||
- avoid_function_literals_in_foreach_calls | ||
- avoid_implementing_value_types | ||
- avoid_init_to_null | ||
- avoid_js_rounded_ints | ||
- avoid_multiple_declarations_per_line | ||
- avoid_null_checks_in_equality_operators | ||
- avoid_positional_boolean_parameters | ||
- avoid_print | ||
- avoid_private_typedef_functions | ||
- avoid_redundant_argument_values | ||
- avoid_relative_lib_imports | ||
- avoid_renaming_method_parameters | ||
- avoid_return_types_on_setters | ||
- avoid_returning_null | ||
- avoid_returning_null_for_future | ||
- avoid_returning_null_for_void | ||
- avoid_returning_this | ||
- avoid_setters_without_getters | ||
- avoid_shadowing_type_parameters | ||
- avoid_single_cascade_in_expression_statements | ||
- avoid_slow_async_io | ||
- avoid_type_to_string | ||
- avoid_types_as_parameter_names | ||
- avoid_types_on_closure_parameters | ||
- avoid_unnecessary_containers | ||
- avoid_unused_constructor_parameters | ||
- avoid_void_async | ||
- avoid_web_libraries_in_flutter | ||
- await_only_futures | ||
- camel_case_extensions | ||
- camel_case_types | ||
- cancel_subscriptions | ||
- cascade_invocations | ||
- cast_nullable_to_non_nullable | ||
- close_sinks | ||
- comment_references | ||
- constant_identifier_names | ||
- control_flow_in_finally | ||
- curly_braces_in_flow_control_structures | ||
- depend_on_referenced_packages | ||
- deprecated_consistency | ||
- diagnostic_describe_all_properties | ||
- directives_ordering | ||
- do_not_use_environment | ||
- empty_catches | ||
- empty_constructor_bodies | ||
- empty_statements | ||
- eol_at_end_of_file | ||
- exhaustive_cases | ||
- file_names | ||
- flutter_style_todos | ||
- hash_and_equals | ||
- implementation_imports | ||
- invariant_booleans | ||
- iterable_contains_unrelated_type | ||
- join_return_with_assignment | ||
- leading_newlines_in_multiline_strings | ||
- library_names | ||
- library_prefixes | ||
- library_private_types_in_public_api | ||
- lines_longer_than_80_chars | ||
- list_remove_unrelated_type | ||
- literal_only_boolean_expressions | ||
- missing_whitespace_between_adjacent_strings | ||
- no_adjacent_strings_in_list | ||
- no_default_cases | ||
- no_duplicate_case_values | ||
- no_logic_in_create_state | ||
- no_runtimeType_toString | ||
- non_constant_identifier_names | ||
- noop_primitive_operations | ||
- null_check_on_nullable_type_parameter | ||
- null_closures | ||
- omit_local_variable_types | ||
- one_member_abstracts | ||
- only_throw_errors | ||
- overridden_fields | ||
- package_api_docs | ||
- package_names | ||
- package_prefixed_library_names | ||
- parameter_assignments | ||
- prefer_adjacent_string_concatenation | ||
- prefer_asserts_in_initializer_lists | ||
- prefer_asserts_with_message | ||
- prefer_collection_literals | ||
- prefer_conditional_assignment | ||
- prefer_const_constructors | ||
- prefer_const_constructors_in_immutables | ||
- prefer_const_declarations | ||
- prefer_const_literals_to_create_immutables | ||
- prefer_constructors_over_static_methods | ||
- prefer_contains | ||
- prefer_double_quotes | ||
- prefer_equal_for_default_values | ||
- prefer_expression_function_bodies | ||
- prefer_final_fields | ||
- prefer_final_in_for_each | ||
- prefer_final_locals | ||
- prefer_final_parameters | ||
- prefer_for_elements_to_map_fromIterable | ||
- prefer_foreach | ||
- prefer_function_declarations_over_variables | ||
- prefer_generic_function_type_aliases | ||
- prefer_if_elements_to_conditional_expressions | ||
- prefer_if_null_operators | ||
- prefer_initializing_formals | ||
- prefer_inlined_adds | ||
- prefer_int_literals | ||
- prefer_interpolation_to_compose_strings | ||
- prefer_is_empty | ||
- prefer_is_not_empty | ||
- prefer_is_not_operator | ||
- prefer_iterable_whereType | ||
- prefer_mixin | ||
- prefer_null_aware_method_calls | ||
- prefer_null_aware_operators | ||
- prefer_relative_imports | ||
- prefer_single_quotes | ||
- prefer_spread_collections | ||
- prefer_typing_uninitialized_variables | ||
- prefer_void_to_null | ||
- provide_deprecation_message | ||
- public_member_api_docs | ||
- recursive_getters | ||
- require_trailing_commas | ||
- sized_box_for_whitespace | ||
- slash_for_doc_comments | ||
- sort_child_properties_last | ||
- sort_constructors_first | ||
- sort_pub_dependencies | ||
- sort_unnamed_constructors_first | ||
- test_types_in_equals | ||
- throw_in_finally | ||
- tighten_type_of_initializing_formals | ||
- type_annotate_public_apis | ||
- type_init_formals | ||
- unawaited_futures | ||
- unnecessary_await_in_return | ||
- unnecessary_brace_in_string_interps | ||
- unnecessary_const | ||
- unnecessary_constructor_name | ||
- unnecessary_final | ||
- unnecessary_getters_setters | ||
- unnecessary_lambdas | ||
- unnecessary_new | ||
- unnecessary_null_aware_assignments | ||
- unnecessary_null_checks | ||
- unnecessary_null_in_if_null_operators | ||
- unnecessary_nullable_for_final_variable_declarations | ||
- unnecessary_overrides | ||
- unnecessary_parenthesis | ||
- unnecessary_raw_strings | ||
- unnecessary_statements | ||
- unnecessary_string_escapes | ||
- unnecessary_string_interpolations | ||
- unnecessary_this | ||
- unrelated_type_equality_checks | ||
- unsafe_html | ||
- use_build_context_synchronously | ||
- use_full_hex_values_for_flutter_colors | ||
- use_function_type_syntax_for_parameters | ||
- use_if_null_to_convert_nulls_to_bools | ||
- use_is_even_rather_than_modulo | ||
- use_key_in_widget_constructors | ||
- use_late_for_private_fields_and_variables | ||
- use_named_constants | ||
- use_raw_strings | ||
- use_rethrow_when_possible | ||
- use_setters_to_change_properties | ||
- use_string_buffers | ||
- use_test_throws_matchers | ||
- use_to_and_as_if_applicable | ||
- valid_regexps | ||
- void_checks |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,29 +1,94 @@ | ||
# This file configures the analyzer, which statically analyzes Dart code to | ||
# check for errors, warnings, and lints. | ||
# Specify analysis options. | ||
# | ||
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled | ||
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be | ||
# invoked from the command line by running `flutter analyze`. | ||
|
||
# The following line activates a set of recommended lints for Flutter apps, | ||
# packages, and plugins designed to encourage good coding practices. | ||
include: package:flutter_lints/flutter.yaml | ||
# See https://dash-overflow.net/articles/getting_started/ about linting | ||
# and why not to use other linters or linter packages. | ||
include: all_lint_rules.yaml | ||
analyzer: | ||
strong-mode: | ||
implicit-casts: true | ||
implicit-dynamic: true | ||
errors: | ||
# Otherwise, cause the import of all_lint_rules to warn because of some rules conflicts. | ||
# We explicitly enabled even conflicting rules and are fixing the conflict | ||
# in this file | ||
included_file_warning: ignore | ||
# Treat missing required parameters as an error, not as a hint or a warning. | ||
missing_required_param: error | ||
# Treat missing returns as an error, not as a hint or a warning. | ||
missing_return: error | ||
# Don't assign new values to parameters of methods or functions. | ||
parameter_assignments: warning | ||
exclude: | ||
# exclude generated files | ||
- "**/*.g.dart" | ||
- "**/*.config.dart" | ||
- "**/*.freezed.dart" | ||
- "**/router.gr.dart" | ||
- "**/generated_plugin_registrant.dart" | ||
|
||
linter: | ||
# The lint rules applied to this project can be customized in the | ||
# section below to disable rules from the `package:flutter_lints/flutter.yaml` | ||
# included above or to enable additional rules. A list of all available lints | ||
# and their documentation is published at | ||
# https://dart-lang.github.io/linter/lints/index.html. | ||
# | ||
# Instead of disabling a lint rule for the entire project in the | ||
# section below, it can also be suppressed for a single line of code | ||
# or a specific dart file by using the `// ignore: name_of_lint` and | ||
# `// ignore_for_file: name_of_lint` syntax on the line or in the file | ||
# producing the lint. | ||
rules: | ||
# avoid_print: false # Uncomment to disable the `avoid_print` rule | ||
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule | ||
# Conflicts with `prefer_single_quotes` | ||
# Single quotes are easier to type and don't compromise on readability. | ||
prefer_double_quotes: false | ||
|
||
# Incompatible with `prefer_final_locals` | ||
# Having immutable local variables makes larger functions more predictable, | ||
# so we will use `prefer_final_locals` instead. | ||
unnecessary_final: false | ||
|
||
# Not quite suitable for Flutter, which may have a `build` method with a single | ||
# return, but that return is still complex enough that a "body" is worth it. | ||
prefer_expression_function_bodies: false | ||
|
||
# Conflicts with the convention used by flutter, which puts `Key key` | ||
# and `@required Widget child` last. | ||
always_put_required_named_parameters_first: false | ||
|
||
# This project doesn't use Flutter-style todos | ||
flutter_style_todos: false | ||
|
||
# Conflicts with `prefer_relative_imports`. | ||
always_use_package_imports: false | ||
|
||
# Will make the code verbose. Specially widgets, | ||
always_specify_types: false | ||
|
||
# This is not used by most packages and the flutter framework itself. | ||
sort_constructors_first: false | ||
|
||
# Sometimes it is necessary to define the variable type, for example, | ||
# when using a `late` keyword. | ||
omit_local_variable_types: false | ||
|
||
# It is not that much useful for an app we are writing. | ||
diagnostic_describe_all_properties: false | ||
|
||
# This is just a personal preference. | ||
# | ||
# Conflicts with avoid_setters_without_getters. | ||
use_setters_to_change_properties: false | ||
|
||
# Will make complicated typedef easily readable. | ||
avoid_private_typedef_functions: false | ||
|
||
# Sometimes some classes contain a single method that does only one thing. | ||
one_member_abstracts: false | ||
|
||
# Classes with static members are handy for organizing mocks or fakes for testing. | ||
avoid_classes_with_only_static_members: false | ||
|
||
# This is just a personal preference. I think it makes a code less readable sometimes. | ||
cascade_invocations: false | ||
|
||
# This sometimes makes things more unclear when one line is enough. | ||
always_put_control_body_on_new_line: false | ||
|
||
# Conflicts with `parameter_assignments`. | ||
prefer_final_parameters: false | ||
|
||
# This rule forces commas even in places where it just adds extra lines that add little value. | ||
require_trailing_commas: false | ||
|
||
# Additional information about this file can be found at | ||
# https://dart.dev/guides/language/analysis-options | ||
# We need to override classes with `==` operators most of the time for testing purpose. | ||
avoid_implementing_value_types: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
export 'view/view.dart'; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
import 'package:flutter/material.dart'; | ||
|
||
/// {@template application} | ||
/// An entry widget to the application. | ||
/// {@endtemplate} | ||
class Application extends StatelessWidget { | ||
/// {@macro application} | ||
const Application({Key? key}) : super(key: key); | ||
|
||
@override | ||
Widget build(BuildContext context) { | ||
return MaterialApp( | ||
title: 'FXD', | ||
debugShowCheckedModeBanner: false, | ||
theme: ThemeData(primarySwatch: Colors.blue), | ||
); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
export 'application.dart'; |
Oops, something went wrong.