Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Overall cleanup #301

Merged
merged 115 commits into from
Nov 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
c0b9f89
upgrade minVersion to force update
LezdCS Oct 17, 2024
977ac84
fix logic
LezdCS Oct 17, 2024
3940525
remove settingsUseCase from SeEvents
LezdCS Oct 17, 2024
185c1fb
remove equatable
LezdCS Oct 17, 2024
d3c505d
pubspeck lock
LezdCS Oct 17, 2024
3ec0d80
Merge pull request #287 from LezdCS/migration/freezed
LezdCS Oct 17, 2024
33a980b
remove the toJson from every entity
LezdCS Oct 17, 2024
8e0cf57
auto mapper implementation
LezdCS Oct 17, 2024
a6f658b
fix
LezdCS Oct 17, 2024
9bc6266
Merge pull request #288 from LezdCS/migration/freezed
LezdCS Oct 17, 2024
596d181
make entities immutable if possible
LezdCS Oct 17, 2024
0c6cd39
Merge pull request #289 from LezdCS/migration/freezed
LezdCS Oct 17, 2024
1abcc02
remove useless import
LezdCS Oct 18, 2024
eea746c
freezed twitch user dto
LezdCS Oct 18, 2024
2adb070
Merge pull request #290 from LezdCS/migration/freezed
LezdCS Oct 18, 2024
36976f9
twitch poll freezed
LezdCS Oct 19, 2024
e63da6e
twitch prediction freezed
LezdCS Oct 19, 2024
a7d73e8
twitch stream infos freezed
LezdCS Oct 19, 2024
30bd6c2
streamelements freezed dtos
LezdCS Oct 19, 2024
34b2db5
fix mapper
LezdCS Oct 19, 2024
fc6a627
fix mapper
LezdCS Oct 19, 2024
e4a1f15
Merge pull request #291 from LezdCS/migration/freezed
LezdCS Oct 19, 2024
5a71597
hype train dto freezed
LezdCS Oct 19, 2024
4ec8d61
Merge pull request #292 from LezdCS/migration/freezed
LezdCS Oct 19, 2024
4b56aa0
fix
LezdCS Oct 19, 2024
c7ad40f
json serializable fromJson custom
LezdCS Oct 19, 2024
d239e87
fix comment
LezdCS Oct 19, 2024
289e898
fix
LezdCS Oct 19, 2024
66e5f85
settings variables are not nullable anymore
LezdCS Oct 20, 2024
611115e
settings freezed
LezdCS Oct 20, 2024
cea343f
fix mapper
LezdCS Oct 20, 2024
ada0492
chat events settings freezed
LezdCS Oct 20, 2024
a36bc68
stream elements settings freezed
LezdCS Oct 20, 2024
15dce5a
fix icon
LezdCS Oct 20, 2024
c30b60e
Merge pull request #293 from LezdCS/migration/freezed
LezdCS Oct 20, 2024
904274f
general settings freezed
LezdCS Oct 20, 2024
5f8e794
chat settings freezed
LezdCS Oct 20, 2024
0bd1cc9
Dashboard settings freezed
LezdCS Oct 20, 2024
53da3f4
tts freezed
LezdCS Oct 20, 2024
fd12b98
browser tab freezed
LezdCS Oct 20, 2024
9983570
Merge pull request #294 from LezdCS/migration/freezed
LezdCS Oct 20, 2024
ab8a2f4
default value
LezdCS Oct 20, 2024
72d23bc
remove default settings factory in entity
LezdCS Oct 20, 2024
ee31ae2
Merge pull request #295 from LezdCS/migration/freezed
LezdCS Oct 20, 2024
2c1cc16
rename variables
LezdCS Oct 22, 2024
fab0a52
remove useless implements
LezdCS Oct 22, 2024
4ef2961
Improve code readability
LezdCS Oct 22, 2024
25a906f
use Kick package 1.5.1
LezdCS Oct 22, 2024
3f2fc42
fix settings init
LezdCS Oct 23, 2024
fd99727
twitch pub sub service init
LezdCS Oct 23, 2024
e8401a9
debugprint
LezdCS Oct 23, 2024
534c7cc
pub sub listen to pin updates working
LezdCS Oct 23, 2024
8b08602
pub sub ping timer
LezdCS Oct 23, 2024
4f6b066
pub sub pinned event pin and unpin
LezdCS Oct 23, 2024
e902648
replace if statements by a switch
LezdCS Oct 23, 2024
d3a6c5d
working pinned message sheet
LezdCS Oct 23, 2024
1b49446
kick pinned message
LezdCS Oct 23, 2024
0712a10
add comments
LezdCS Oct 23, 2024
f3ccdaa
hide ChatMessage type
LezdCS Oct 23, 2024
907b01d
pinned message timestamp + author name
LezdCS Oct 23, 2024
a370c9f
rename variable
LezdCS Oct 23, 2024
8aa5b78
rename again because why not
LezdCS Oct 23, 2024
b55c62b
bump depedencies
LezdCS Oct 23, 2024
c0202d9
bump depedencies
LezdCS Oct 23, 2024
bc078e7
bump audioplayer depedency
LezdCS Oct 23, 2024
4971725
remove debugPrints
LezdCS Oct 23, 2024
aa747b1
info plist update
LezdCS Oct 23, 2024
33a79a4
dependency binding avoid redudant object creation
LezdCS Oct 24, 2024
d92b04d
dependency binding redudant object
LezdCS Oct 24, 2024
d6942b5
bindings minimize redudant objects
LezdCS Oct 24, 2024
40e5c07
minimize redudant objects again
LezdCS Oct 24, 2024
574cd12
more readable init dependencies
LezdCS Oct 24, 2024
7e5c9fc
app info service
LezdCS Oct 24, 2024
db278f8
service fix
LezdCS Oct 24, 2024
83d2b3e
iOS minimum version : 15.6
LezdCS Oct 24, 2024
7c843b8
fix build target ios
LezdCS Oct 24, 2024
5d249f5
fix
LezdCS Oct 24, 2024
4ffd487
pinned fix
LezdCS Oct 24, 2024
1cdab99
text size
LezdCS Oct 24, 2024
09aec7e
style
LezdCS Oct 24, 2024
216a4ea
close pinned message sheet if click on chat
LezdCS Oct 24, 2024
a9e5e41
delete globals file, create Talker service
LezdCS Oct 24, 2024
e6f47c2
fix main
LezdCS Oct 24, 2024
6462a71
OBS and SE reconnect if app was in background and came back to foregr…
LezdCS Nov 1, 2024
2657784
twitch event sub reconnect lifecycle state
LezdCS Nov 1, 2024
caf0fc3
refactor: usecases and remove events
LezdCS Nov 16, 2024
ef62fe6
fix: fix import
LezdCS Nov 16, 2024
47835d9
fix: refresh data only for logged in user
LezdCS Nov 16, 2024
af52d9e
fix: gradle upgrade
LezdCS Nov 16, 2024
8a38f1b
fix: gradle
LezdCS Nov 16, 2024
ff3db27
fix: stop loop if no store
LezdCS Nov 16, 2024
f7a0810
podfile
LezdCS Nov 19, 2024
9a6c332
feat: move all watch requests to watch service
LezdCS Nov 19, 2024
c90492e
feat: init integrations tests
LezdCS Nov 20, 2024
4faeadb
feat: setup android for firebase test lab
LezdCS Nov 20, 2024
f0f0cae
feat: optimize dependency injection
LezdCS Nov 20, 2024
69438fa
feat: more optimization
LezdCS Nov 21, 2024
e4a07cb
feat: optimize dependency injection
LezdCS Nov 21, 2024
042c442
feat: edit workflows github actions
LezdCS Nov 21, 2024
51ff473
fix: change fk user agent git
LezdCS Nov 21, 2024
bfa3c22
feat: upgrade min sdk version
LezdCS Nov 21, 2024
8b4a898
fix: change fk user agent git
LezdCS Nov 21, 2024
e4512b3
feat: upgrade gradle version to latest
LezdCS Nov 21, 2024
11bbdb3
fix: comment gradle properties
LezdCS Nov 21, 2024
66129aa
feat: linter + apply lint
LezdCS Nov 21, 2024
c258b89
feat: forgot to lint a file
LezdCS Nov 21, 2024
df19f6c
feat: github dependabot
LezdCS Nov 21, 2024
a0591a3
feat: move init dependency in a core file
LezdCS Nov 21, 2024
17a14e0
fix: import
LezdCS Nov 21, 2024
4f534e8
feat: upgrade kick chat package
LezdCS Nov 21, 2024
8107017
fix: gradle jvmargs
LezdCS Nov 22, 2024
6bab8c9
feat: add precommit hook
LezdCS Nov 22, 2024
a43b029
feat: add instructions in hook script
LezdCS Nov 22, 2024
89a4d44
feat: remove useless image
LezdCS Nov 22, 2024
6b5a6a6
fix: remove useless file
LezdCS Nov 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 10 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.

version: 2
updates:
- package-ecosystem: "pub" # See documentation for possible values
directory: "/" # Location of package manifests
schedule:
interval: "weekly"
target-branch: "develop"
13 changes: 7 additions & 6 deletions .github/workflows/flutter-analyze.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
name: flutter analyze
name: Dart analyzer

on:
push:
branches:
- master
pull_request:
branches:
- master
Expand All @@ -15,8 +12,12 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Flutter
uses: subosito/flutter-action@v2
- run: flutter pub get
- name: Run flutter analyze

- name: Get Flutter dependencies
run: flutter pub get

- name: Run dart analyze
uses: invertase/github-action-dart-analyzer@v3
22 changes: 9 additions & 13 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,10 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

name: CI
name: Build Android

on:
push:
pull_request:
branches:
- master
release:
types: [released]
workflow_dispatch:

jobs:
build:
Expand All @@ -26,16 +20,18 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v4

- uses: actions/setup-java@v4
- name: Set up Java environment
uses: actions/setup-java@v4
with:
distribution: "zulu"
java-version: "17"

- uses: subosito/flutter-action@v2

- name: Set up Flutter environment
uses: subosito/flutter-action@v2
with:
channel: 'stable'

- working-directory: ${{ inputs.working-directory }}
- name: Build APK and App Bundle
run: |
flutter pub get
dart analyze
Expand Down
239 changes: 223 additions & 16 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,228 @@
# packages, and plugins designed to encourage good coding practices.
include: package:flutter_lints/flutter.yaml

analyzer:
errors:
invalid_annotation_target: ignore
exclude:
- '**.freezed.dart'
- '**.g.dart'
- '**.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

# Additional information about this file can be found at
# https://dart.dev/guides/language/analysis-options
# - always_declare_return_types
- always_put_control_body_on_new_line
# - always_put_required_named_parameters_first
# - always_specify_types
- always_use_package_imports
- annotate_overrides
- annotate_redeclares
- 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_final_parameters
- 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_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_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
- collection_methods_unrelated_type
- combinators_ordering
- comment_references
- conditional_uri_does_not_exist
- constant_identifier_names
- control_flow_in_finally
- curly_braces_in_flow_control_structures
- dangling_library_doc_comments
- depend_on_referenced_packages
- deprecated_consistency
- deprecated_member_use_from_same_package
# - diagnostic_describe_all_properties
- directives_ordering
# - discarded_futures
- do_not_use_environment
- document_ignores
- empty_catches
- empty_constructor_bodies
- empty_statements
- eol_at_end_of_file
- exhaustive_cases
- file_names
- flutter_style_todos
- hash_and_equals
- implementation_imports
- implicit_call_tearoffs
- implicit_reopen
- invalid_case_patterns
- invalid_runtime_check_with_js_interop_types
- join_return_with_assignment
- leading_newlines_in_multiline_strings
- library_annotations
- library_names
- library_prefixes
- library_private_types_in_public_api
# - lines_longer_than_80_chars
- literal_only_boolean_expressions
- matching_super_parameters
- missing_code_block_language_in_doc_comment
- missing_whitespace_between_adjacent_strings
- no_adjacent_strings_in_list
# - no_default_cases
- no_duplicate_case_values
- no_leading_underscores_for_library_prefixes
- no_leading_underscores_for_local_identifiers
- no_literal_bool_comparisons
- no_logic_in_create_state
- no_runtimeType_toString
- no_self_assignments
- no_wildcard_variable_uses
- non_constant_identifier_names
- noop_primitive_operations
- null_check_on_nullable_type_parameter
- null_closures
- 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_expression_function_bodies
# - prefer_final_fields
# - prefer_final_in_for_each
# - prefer_final_locals
- 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_spread_collections
- prefer_typing_uninitialized_variables
- prefer_void_to_null
- provide_deprecation_message
# - public_member_api_docs
- recursive_getters
- require_trailing_commas
- secure_pubspec_urls
- sized_box_for_whitespace
- sized_box_shrink_expand
- 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
- type_literal_in_constant_pattern
# - unawaited_futures
- unintended_html_in_doc_comment
- unnecessary_await_in_return
- unnecessary_brace_in_string_interps
- unnecessary_breaks
- unnecessary_const
- unnecessary_constructor_name
- unnecessary_getters_setters
# - unnecessary_lambdas
- unnecessary_late
- unnecessary_library_directive
- unnecessary_library_name
- unnecessary_new
- unnecessary_null_aware_assignments
- unnecessary_null_aware_operator_on_extension_on_nullable
- 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
- unnecessary_to_list_in_spreads
- unreachable_from_main
- unrelated_type_equality_checks
- use_build_context_synchronously
- use_colored_box
- use_decorated_box
- use_enums
- 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_string_in_part_of_directives
- use_super_parameters
- use_test_throws_matchers
- use_to_and_as_if_applicable
- valid_regexps
- void_checks
25 changes: 22 additions & 3 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -29,21 +29,33 @@ if (keystorePropertiesFile.exists()) {
}

android {
compileSdkVersion 34

namespace = "dev.lezd.www.irllink"
compileSdkVersion = 34
ndkVersion = "27.0.12077973"

sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}

defaultConfig {
applicationId "dev.lezd.www.irllink"
minSdkVersion 21
minSdkVersion 26
targetSdkVersion 34
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
manifestPlaceholders = [
'appAuthRedirectScheme': 'dev.lezd.www.irllink',
]
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}

kotlinOptions {
jvmTarget = '17'
}

signingConfigs {
Expand All @@ -61,6 +73,13 @@ android {
}
}

dependencies {
testImplementation 'junit:junit: 4.13.2'

androidTestImplementation 'androidx.test:runner:1.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}

flutter {
source '../..'
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@

import androidx.test.rule.ActivityTestRule;
import dev.flutter.plugins.integration_test.FlutterTestRunner;
import org.junit.Rule;
import org.junit.runner.RunWith;
import dev.lezd.www.irllink.MainActivity;

@RunWith(FlutterTestRunner.class)
public class MainActivityTest {
@Rule
public ActivityTestRule<MainActivity> rule = new ActivityTestRule<>(MainActivity.class, true, false);
}
Loading