flutter_quill 7.10.2 copy "flutter_quill: ^7.10.2" to clipboard
flutter_quill: ^7.10.2 copied to clipboard

A rich text editor built for the modern Android, iOS, web and desktop platforms. It is the WYSIWYG editor and a Quill component for Flutter.

1808
likes
80/ 160
pub points
99%
popularity

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

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

10/10 points: Provide a valid pubspec.yaml

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

534 out of 1288 API elements (41.5 %) have documentation comments.

Some symbols that are missing documentation: flutter_quill, flutter_quill.AlignAttribute, flutter_quill.AlignAttribute.AlignAttribute, flutter_quill.Attribute, flutter_quill.Attribute.Attribute.

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:flutter_quill/flutter_quill.dart that imports:
  • package:flutter_quill/src/widgets/utils/provider.dart that imports:
  • package:flutter_quill/src/models/config/toolbar/base_configurations.dart that imports:
  • package:flutter_quill/src/models/themes/quill_custom_button.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/base_toolbar.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/buttons/toggle_style.dart that imports:
  • package:flutter_quill/src/widgets/controller.dart that imports:
  • package:flutter_quill/src/utils/delta.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/node.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/line.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/leaf.dart that imports:
  • package:flutter_quill/src/widgets/embeds.dart that imports:
  • package:flutter_quill/extensions.dart that imports:
  • package:flutter_quill/src/utils/platform.dart that imports:
  • package:device_info_plus/device_info_plus.dart that imports:
  • package:device_info_plus/src/device_info_plus_windows.dart that imports:
  • package:win32_registry/win32_registry.dart that declares support for platforms: Windows.
Package does not support platform `iOS`.

Because:

  • package:flutter_quill/flutter_quill.dart that imports:
  • package:flutter_quill/src/widgets/utils/provider.dart that imports:
  • package:flutter_quill/src/models/config/toolbar/base_configurations.dart that imports:
  • package:flutter_quill/src/models/themes/quill_custom_button.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/base_toolbar.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/buttons/toggle_style.dart that imports:
  • package:flutter_quill/src/widgets/controller.dart that imports:
  • package:flutter_quill/src/utils/delta.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/node.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/line.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/leaf.dart that imports:
  • package:flutter_quill/src/widgets/embeds.dart that imports:
  • package:flutter_quill/extensions.dart that imports:
  • package:flutter_quill/src/utils/platform.dart that imports:
  • package:device_info_plus/device_info_plus.dart that imports:
  • package:device_info_plus/src/device_info_plus_windows.dart that imports:
  • package:win32_registry/win32_registry.dart that declares support for platforms: Windows.
Package does not support platform `Linux`.

Because:

  • package:flutter_quill/flutter_quill.dart that imports:
  • package:flutter_quill/src/widgets/utils/provider.dart that imports:
  • package:flutter_quill/src/models/config/toolbar/base_configurations.dart that imports:
  • package:flutter_quill/src/models/themes/quill_custom_button.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/base_toolbar.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/buttons/toggle_style.dart that imports:
  • package:flutter_quill/src/widgets/controller.dart that imports:
  • package:flutter_quill/src/utils/delta.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/node.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/line.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/leaf.dart that imports:
  • package:flutter_quill/src/widgets/embeds.dart that imports:
  • package:flutter_quill/extensions.dart that imports:
  • package:flutter_quill/src/utils/platform.dart that imports:
  • package:device_info_plus/device_info_plus.dart that imports:
  • package:device_info_plus/src/device_info_plus_windows.dart that imports:
  • package:win32_registry/win32_registry.dart that declares support for platforms: Windows.
Package does not support platform `macOS`.

Because:

  • package:flutter_quill/flutter_quill.dart that imports:
  • package:flutter_quill/src/widgets/utils/provider.dart that imports:
  • package:flutter_quill/src/models/config/toolbar/base_configurations.dart that imports:
  • package:flutter_quill/src/models/themes/quill_custom_button.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/base_toolbar.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/buttons/toggle_style.dart that imports:
  • package:flutter_quill/src/widgets/controller.dart that imports:
  • package:flutter_quill/src/utils/delta.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/node.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/line.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/leaf.dart that imports:
  • package:flutter_quill/src/widgets/embeds.dart that imports:
  • package:flutter_quill/extensions.dart that imports:
  • package:flutter_quill/src/utils/platform.dart that imports:
  • package:device_info_plus/device_info_plus.dart that imports:
  • package:device_info_plus/src/device_info_plus_windows.dart that imports:
  • package:win32_registry/win32_registry.dart that declares support for platforms: Windows.
Package not compatible with platform Web

Because:

  • package:flutter_quill/flutter_quill.dart that imports:
  • package:flutter_quill/src/widgets/utils/provider.dart that imports:
  • package:flutter_quill/src/models/config/toolbar/base_configurations.dart that imports:
  • package:flutter_quill/src/models/themes/quill_custom_button.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/base_toolbar.dart that imports:
  • package:flutter_quill/src/widgets/toolbar/buttons/toggle_style.dart that imports:
  • package:flutter_quill/src/widgets/controller.dart that imports:
  • package:flutter_quill/src/utils/delta.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/node.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/line.dart that imports:
  • package:flutter_quill/src/models/documents/nodes/leaf.dart that imports:
  • package:flutter_quill/src/widgets/embeds.dart that imports:
  • package:flutter_quill/extensions.dart that imports:
  • package:flutter_quill/src/utils/platform.dart that imports:
  • package:device_info_plus/device_info_plus.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 36 issues. Showing the first 2:

ERROR: '_RenderSingleChildViewport.getOffsetToReveal' ('RevealedOffset Function(RenderObject, double, {Rect? rect})') isn't a valid override of 'RenderAbstractViewport.getOffsetToReveal' ('RevealedOffset Function(RenderObject, double, {Axis? axis, Rect? rect})').

lib/src/widgets/quill_single_child_scroll_view.dart:289:18

    ╷
289 │   RevealedOffset getOffsetToReveal(RenderObject target, double alignment,
    │                  ^^^^^^^^^^^^^^^^^
    ╵

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

ERROR: Missing concrete implementations of 'getter TextSelectionDelegate.lookUpEnabled', 'getter TextSelectionDelegate.searchWebEnabled', and 'getter TextSelectionDelegate.shareEnabled'.

lib/src/widgets/raw_editor/raw_editor.dart:294:7

    ╷
294 │ class RawEditorState extends EditorState
    │       ^^^^^^^^^^^^^^
    ╵

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

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

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

Package Constraint Compatible Latest
characters ^1.3.0 1.3.0 1.3.1
collection ^1.17.0 1.18.0 1.19.1
device_info_plus ^9.1.0 9.1.2 11.1.0
diff_match_patch ^0.4.1 0.4.1 0.4.1
equatable ^2.0.5 2.0.5 2.0.5
flutter flutter 0.0.0 0.0.0
flutter_animate ^4.2.0+1 4.5.0 4.5.0
flutter_colorpicker ^1.0.3 1.1.0 1.1.0
flutter_keyboard_visibility ^5.4.1 5.4.1 6.0.0
flutter_test flutter 0.0.0 0.0.0
i18n_extension ^9.0.2 9.0.2 13.0.2
pasteboard ^0.2.0 0.2.0 0.3.0
pedantic ^1.11.1 1.11.1 1.11.1
platform ^3.1.3 3.1.6 3.1.6
quiver ^3.2.1 3.2.2 3.2.2
url_launcher ^6.1.14 6.3.1 6.3.1
Transitive dependencies
Package Constraint Compatible Latest
args - 2.6.0 2.6.0
async - 2.11.0 2.12.0
boolean_selector - 2.1.1 2.1.2
clock - 1.1.1 1.1.2
device_info_plus_platform_interface - 7.0.1 7.0.1
fake_async - 1.3.1 1.3.2
ffi - 2.1.3 2.1.3
file - 7.0.1 7.0.1
flutter_keyboard_visibility_linux - 1.0.0 1.0.0
flutter_keyboard_visibility_macos - 1.0.0 1.0.0
flutter_keyboard_visibility_platform_interface - 2.0.0 2.0.0
flutter_keyboard_visibility_web - 2.0.0 2.0.0
flutter_keyboard_visibility_windows - 1.0.0 1.0.0
flutter_shaders - 0.1.3 0.1.3
flutter_web_plugins - 0.0.0 0.0.0
intl - 0.18.1 0.19.0
js - 0.6.7 0.7.1
leak_tracker - 10.0.5 10.0.8
leak_tracker_flutter_testing - 3.0.5 3.0.9
leak_tracker_testing - 3.0.1 3.0.1
matcher - 0.12.16+1 0.12.17
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
path - 1.9.0 1.9.1
plugin_platform_interface - 2.1.8 2.1.8
sky_engine - 0.0.99 0.0.99
source_span - 1.10.0 1.10.0
sprintf - 7.0.0 7.0.0
stack_trace - 1.11.1 1.12.0
stream_channel - 2.1.2 2.1.2
string_scanner - 1.2.0 1.4.0
term_glyph - 1.2.1 1.2.1
test_api - 0.7.2 0.7.3
url_launcher_android - 6.3.14 6.3.14
url_launcher_ios - 6.3.1 6.3.1
url_launcher_linux - 3.2.0 3.2.0
url_launcher_macos - 3.2.1 3.2.1
url_launcher_platform_interface - 2.3.2 2.3.2
url_launcher_web - 2.3.3 2.3.3
url_launcher_windows - 3.1.3 3.1.3
vector_math - 2.1.4 2.1.4
vm_service - 14.2.5 14.3.1
web - 1.1.0 1.1.0
win32 - 5.8.0 5.8.0
win32_registry - 1.1.5 2.0.0

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

Found 4 issues. Showing the first 2:

The constraint `^9.1.0` on device_info_plus does not support the stable version `10.0.0`.

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

The constraint `^5.4.1` on flutter_keyboard_visibility does not support the stable version `6.0.0`.

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

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

0/20 points: Compatible with dependency constraint lower bounds

downgrade analysis failed failed with 5 errors:

  • INVALID_OVERRIDE - lib/src/widgets/quill_single_child_scroll_view.dart:289:18 - '_RenderSingleChildViewport.getOffsetToReveal' ('RevealedOffset Function(RenderObject, double, {Rect? rect})') isn't a valid override of 'RenderAbstractViewport.getOffsetToReveal' ('RevealedOffset Function(RenderObject, double, {Axis? axis, Rect? rect})').
  • NON_ABSTRACT_CLASS_INHERITS_ABSTRACT_MEMBER - lib/src/widgets/raw_editor/raw_editor.dart:294:7 - Missing concrete implementations of 'getter TextSelectionDelegate.lookUpEnabled', 'getter TextSelectionDelegate.searchWebEnabled', and 'getter TextSelectionDelegate.shareEnabled'.
  • MISSING_REQUIRED_ARGUMENT - lib/src/widgets/raw_editor/raw_editor.dart:362:25 - The named parameter 'onLookUp' is required, but there's no corresponding argument.

Run flutter pub downgrade and then flutter analyze to reproduce the above problem.

You may run dart pub upgrade --tighten to update your dependency constraints, see dart.dev/go/downgrade-testing for details.

Analyzed with Pana 0.22.15, Flutter 3.24.4, Dart 3.5.4.

Check the analysis log for details.