clean_bloc 2.0.1 copy "clean_bloc: ^2.0.1" to clipboard
clean_bloc: ^2.0.1 copied to clipboard

A Wrapper for Bloc to make it easier to use Clean Architecture. It's based on the clean_network package.

4
likes
100/ 160
pub points
75
downloads

We analyzed this package 43 hours ago, and awarded it 100 pub points (of a possible 160):

partial
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

Issue tracker URL doesn't exist.

At the time of the analysis https://github.com/kishormainali/clean_flutter/issues was unreachable. Make sure that the website is reachable via HEAD requests.

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: MIT.

OK
Provide documentation
20 / 20trigger folding of the section

10/10 points: 20% or more of the public API has dartdoc comments

190 out of 228 API elements (83.3 %) have documentation comments.

Some symbols that are missing documentation: clean_bloc.BlocCall, clean_bloc.CleanBlocMixin, clean_bloc.CleanState.maybeWhen, clean_bloc.CleanState.when, clean_bloc.CleanState.whenOrNull.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 6 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

  • ✓ Web

These issues are present but do not affect the score, because they may not originate in your package:

Package does not support platform `Android`.

Because:

  • package:clean_bloc/clean_bloc.dart that imports:
  • package:clean_bloc/src/clean_bloc.dart that imports:
  • package:clean_bloc/src/widgets/widgets.dart that imports:
  • package:clean_bloc/src/widgets/paginated_clean_builder.dart that imports:
  • package:clean_bloc/src/typedefs/typedefs.dart that imports:
  • package:clean_bloc/src/states/paginated_clean_state.dart that imports:
  • package:clean_network/clean_network.dart that imports:
  • package:clean_network/src/clients/clients.dart that imports:
  • package:clean_network/src/clients/_clean_client_impl.dart that imports:
  • package:clean_network/src/utils/_commons.dart that imports:
  • package:clean_network/clean_core.dart that imports:
  • package:_clean_flutter_internal/src/typedefs/typedefs.dart that imports:
  • package:_clean_flutter_internal/_clean_flutter_internal.dart that imports:
  • package:_clean_flutter_internal/src/network/network.dart that imports:
  • package:_clean_flutter_internal/src/network/network_info.dart that imports:
  • package:_clean_flutter_internal/src/network/_network_info_impl.dart that imports:
  • package:internet_connection_checker_plus/internet_connection_checker_plus.dart that imports:
  • package:connectivity_plus/connectivity_plus.dart that imports:
  • package:connectivity_plus/src/connectivity_plus_linux.dart that imports:
  • package:nm/nm.dart that declares support for platforms: Linux.
Package does not support platform `iOS`.

Because:

  • package:clean_bloc/clean_bloc.dart that imports:
  • package:clean_bloc/src/clean_bloc.dart that imports:
  • package:clean_bloc/src/widgets/widgets.dart that imports:
  • package:clean_bloc/src/widgets/paginated_clean_builder.dart that imports:
  • package:clean_bloc/src/typedefs/typedefs.dart that imports:
  • package:clean_bloc/src/states/paginated_clean_state.dart that imports:
  • package:clean_network/clean_network.dart that imports:
  • package:clean_network/src/clients/clients.dart that imports:
  • package:clean_network/src/clients/_clean_client_impl.dart that imports:
  • package:clean_network/src/utils/_commons.dart that imports:
  • package:clean_network/clean_core.dart that imports:
  • package:_clean_flutter_internal/src/typedefs/typedefs.dart that imports:
  • package:_clean_flutter_internal/_clean_flutter_internal.dart that imports:
  • package:_clean_flutter_internal/src/network/network.dart that imports:
  • package:_clean_flutter_internal/src/network/network_info.dart that imports:
  • package:_clean_flutter_internal/src/network/_network_info_impl.dart that imports:
  • package:internet_connection_checker_plus/internet_connection_checker_plus.dart that imports:
  • package:connectivity_plus/connectivity_plus.dart that imports:
  • package:connectivity_plus/src/connectivity_plus_linux.dart that imports:
  • package:nm/nm.dart that declares support for platforms: Linux.
Package does not support platform `Windows`.

Because:

  • package:clean_bloc/clean_bloc.dart that imports:
  • package:clean_bloc/src/clean_bloc.dart that imports:
  • package:clean_bloc/src/widgets/widgets.dart that imports:
  • package:clean_bloc/src/widgets/paginated_clean_builder.dart that imports:
  • package:clean_bloc/src/typedefs/typedefs.dart that imports:
  • package:clean_bloc/src/states/paginated_clean_state.dart that imports:
  • package:clean_network/clean_network.dart that imports:
  • package:clean_network/src/clients/clients.dart that imports:
  • package:clean_network/src/clients/_clean_client_impl.dart that imports:
  • package:clean_network/src/utils/_commons.dart that imports:
  • package:clean_network/clean_core.dart that imports:
  • package:_clean_flutter_internal/src/typedefs/typedefs.dart that imports:
  • package:_clean_flutter_internal/_clean_flutter_internal.dart that imports:
  • package:_clean_flutter_internal/src/network/network.dart that imports:
  • package:_clean_flutter_internal/src/network/network_info.dart that imports:
  • package:_clean_flutter_internal/src/network/_network_info_impl.dart that imports:
  • package:internet_connection_checker_plus/internet_connection_checker_plus.dart that imports:
  • package:connectivity_plus/connectivity_plus.dart that imports:
  • package:connectivity_plus/src/connectivity_plus_linux.dart that imports:
  • package:nm/nm.dart that declares support for platforms: Linux.
Package does not support platform `macOS`.

Because:

  • package:clean_bloc/clean_bloc.dart that imports:
  • package:clean_bloc/src/clean_bloc.dart that imports:
  • package:clean_bloc/src/widgets/widgets.dart that imports:
  • package:clean_bloc/src/widgets/paginated_clean_builder.dart that imports:
  • package:clean_bloc/src/typedefs/typedefs.dart that imports:
  • package:clean_bloc/src/states/paginated_clean_state.dart that imports:
  • package:clean_network/clean_network.dart that imports:
  • package:clean_network/src/clients/clients.dart that imports:
  • package:clean_network/src/clients/_clean_client_impl.dart that imports:
  • package:clean_network/src/utils/_commons.dart that imports:
  • package:clean_network/clean_core.dart that imports:
  • package:_clean_flutter_internal/src/typedefs/typedefs.dart that imports:
  • package:_clean_flutter_internal/_clean_flutter_internal.dart that imports:
  • package:_clean_flutter_internal/src/network/network.dart that imports:
  • package:_clean_flutter_internal/src/network/network_info.dart that imports:
  • package:_clean_flutter_internal/src/network/_network_info_impl.dart that imports:
  • package:internet_connection_checker_plus/internet_connection_checker_plus.dart that imports:
  • package:connectivity_plus/connectivity_plus.dart that imports:
  • package:connectivity_plus/src/connectivity_plus_linux.dart that imports:
  • package:nm/nm.dart that declares support for platforms: Linux.
Package not compatible with platform Web

Because:

  • package:clean_bloc/clean_bloc.dart that imports:
  • package:clean_bloc/src/clean_bloc.dart that imports:
  • package:clean_bloc/src/widgets/widgets.dart that imports:
  • package:clean_bloc/src/widgets/paginated_clean_builder.dart that imports:
  • package:clean_bloc/src/typedefs/typedefs.dart that imports:
  • package:clean_bloc/src/states/paginated_clean_state.dart that imports:
  • package:clean_network/clean_network.dart that imports:
  • package:clean_network/src/clients/clients.dart that imports:
  • package:fp_logger/fp_logger.dart that imports:
  • package:fp_logger/src/fp_logger.dart that imports:
  • package:fp_logger/src/graphql_dio_logger.dart that imports:
  • dart:io

0/0 points: WASM compatibility

Unable to detect compatibility with runtime wasm, and this package will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

failed
Pass static analysis
0 / 50trigger folding of the section

0/50 points: code has no errors, warnings, lints, or formatting issues

Found 69 issues. Showing the first 2:

ERROR: Undefined class 'EitherResponse'.

lib/src/blocs/clean_bloc.dart:22:3

   ╷
22 │   EitherResponse<T> remoteCall();
   │   ^^^^^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/blocs/clean_bloc.dart

ERROR: Undefined class 'EitherResponse'.

lib/src/blocs/clean_cubit.dart:20:3

   ╷
20 │   EitherResponse<T> remoteCall();
   │   ^^^^^^^^^^^^^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/blocs/clean_cubit.dart

failed
Support up-to-date dependencies
30 / 40trigger folding of the section

0/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
bloc ^8.1.2 8.1.4 8.1.4
bloc_concurrency ^0.2.3 0.2.5 0.2.5
clean_network ^2.0.0 2.1.1 2.1.1
equatable ^2.0.5 2.0.7 2.0.7
flutter flutter 0.0.0 0.0.0
flutter_bloc ^8.1.3 8.1.6 8.1.6
freezed_annotation ^2.4.1 2.4.4 2.4.4
rxdart ^0.27.7 0.27.7 0.28.0
Transitive dependencies
Package Constraint Compatible Latest
_clean_flutter_internal - 1.0.5 1.0.5
ansicolor - 2.0.3 2.0.3
args - 2.6.0 2.6.0
async - 2.12.0 2.12.0
characters - 1.3.0 1.4.0
clean_analysis - 1.0.1 1.0.1
clock - 1.1.2 1.1.2
collection - 1.19.0 1.19.1
connectivity_plus - 6.1.1 6.1.1
connectivity_plus_platform_interface - 2.0.1 2.0.1
crypto - 3.0.6 3.0.6
dbus - 0.7.10 0.7.10
dio - 5.7.0 5.7.0
dio_cache_interceptor - 3.5.1 3.5.1
dio_http2_adapter - 2.5.3 2.5.3
dio_web_adapter - 2.0.0 2.0.0
ffi - 2.1.3 2.1.3
fixnum - 1.1.1 1.1.1
flutter_web_plugins - 0.0.0 0.0.0
fp_logger - 1.0.10 1.0.10
gql - 1.0.0+1 1.0.0+1
gql_exec - 1.0.0+1 1.0.0+1
gql_link - 1.0.0+1 1.0.0+1
http - 1.2.2 1.2.2
http2 - 2.3.1 2.3.1
http_parser - 4.1.1 4.1.1
internet_connection_checker_plus - 2.6.0 2.6.0
intl - 0.19.0 0.20.1
json_annotation - 4.9.0 4.9.0
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
nested - 1.0.0 1.0.0
nm - 0.5.0 0.5.0
path - 1.9.1 1.9.1
petitparser - 6.0.2 6.0.2
plugin_platform_interface - 2.1.8 2.1.8
provider - 6.1.2 6.1.2
sky_engine - 0.0.0 0.0.0
source_span - 1.10.1 1.10.1
sprintf - 7.0.0 7.0.0
stream_transform - 2.1.1 2.1.1
string_scanner - 1.4.1 1.4.1
term_glyph - 1.2.2 1.2.2
typed_data - 1.4.0 1.4.0
uuid - 4.5.1 4.5.1
vector_math - 2.1.4 2.1.4
web - 1.1.0 1.1.0
xml - 6.5.0 6.5.0
yaml - 3.1.3 3.1.3

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

The constraint `^0.27.7` on rxdart does not support the stable version `0.28.0`.

Try running dart pub upgrade --major-versions rxdart to update the constraint.

10/10 points: Package supports latest stable Dart and Flutter SDKs

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.17, Flutter 3.27.0, Dart 3.6.0.

Check the analysis log for details.

4
likes
100
points
75
downloads

Publisher

verified publisherkishormainali.com

Weekly Downloads

A Wrapper for Bloc to make it easier to use Clean Architecture. It's based on the clean_network package.

Repository (GitHub)
View/report issues

Topics

#bloc #clean-architecture #state-management #clean-bloc #pagination-bloc

Documentation

API reference

License

MIT (license)

Dependencies

bloc, bloc_concurrency, clean_network, equatable, flutter, flutter_bloc, freezed_annotation, rxdart

More

Packages that depend on clean_bloc