diff --git a/analysis_options.yaml b/analysis_options.yaml index 306d335b..fb75bccd 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -10,6 +10,8 @@ linter: - always_put_required_named_parameters_first - avoid_print - avoid_redundant_argument_values + - directives_ordering - prefer_const_constructors - prefer_const_constructors_in_immutables + - prefer_relative_imports - unnecessary_parenthesis diff --git a/lib/models/documents/document.dart b/lib/models/documents/document.dart index 8a620446..a8810079 100644 --- a/lib/models/documents/document.dart +++ b/lib/models/documents/document.dart @@ -1,17 +1,17 @@ import 'dart:async'; -import 'package:flutter_quill/models/documents/nodes/block.dart'; -import 'package:flutter_quill/models/documents/nodes/container.dart'; -import 'package:flutter_quill/models/documents/nodes/line.dart'; -import 'package:flutter_quill/models/documents/style.dart'; -import 'package:flutter_quill/models/quill_delta.dart'; import 'package:tuple/tuple.dart'; +import '../quill_delta.dart'; import '../rules/rule.dart'; import 'attribute.dart'; import 'history.dart'; +import 'nodes/block.dart'; +import 'nodes/container.dart'; import 'nodes/embed.dart'; +import 'nodes/line.dart'; import 'nodes/node.dart'; +import 'style.dart'; /// The rich text document class Document { diff --git a/lib/models/documents/history.dart b/lib/models/documents/history.dart index 6d89b389..d3e36e32 100644 --- a/lib/models/documents/history.dart +++ b/lib/models/documents/history.dart @@ -1,6 +1,6 @@ -import 'package:flutter_quill/models/quill_delta.dart'; import 'package:tuple/tuple.dart'; +import '../quill_delta.dart'; import 'document.dart'; class History { diff --git a/lib/models/documents/nodes/block.dart b/lib/models/documents/nodes/block.dart index 4d569cc7..acae321b 100644 --- a/lib/models/documents/nodes/block.dart +++ b/lib/models/documents/nodes/block.dart @@ -1,5 +1,4 @@ -import 'package:flutter_quill/models/quill_delta.dart'; - +import '../../quill_delta.dart'; import 'container.dart'; import 'line.dart'; import 'node.dart'; diff --git a/lib/models/documents/nodes/leaf.dart b/lib/models/documents/nodes/leaf.dart index 6cb9af24..fab88b53 100644 --- a/lib/models/documents/nodes/leaf.dart +++ b/lib/models/documents/nodes/leaf.dart @@ -1,7 +1,6 @@ import 'dart:math' as math; -import 'package:flutter_quill/models/quill_delta.dart'; - +import '../../quill_delta.dart'; import '../style.dart'; import 'embed.dart'; import 'line.dart'; diff --git a/lib/models/documents/nodes/line.dart b/lib/models/documents/nodes/line.dart index 574549ea..ceb95801 100644 --- a/lib/models/documents/nodes/line.dart +++ b/lib/models/documents/nodes/line.dart @@ -1,14 +1,13 @@ import 'dart:math' as math; -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/nodes/node.dart'; -import 'package:flutter_quill/models/quill_delta.dart'; - +import '../../quill_delta.dart'; +import '../attribute.dart'; import '../style.dart'; import 'block.dart'; import 'container.dart'; import 'embed.dart'; import 'leaf.dart'; +import 'node.dart'; class Line extends Container { @override diff --git a/lib/models/documents/nodes/node.dart b/lib/models/documents/nodes/node.dart index abc093c3..2d694222 100644 --- a/lib/models/documents/nodes/node.dart +++ b/lib/models/documents/nodes/node.dart @@ -1,9 +1,8 @@ import 'dart:collection'; -import 'package:flutter_quill/models/documents/style.dart'; -import 'package:flutter_quill/models/quill_delta.dart'; - +import '../../quill_delta.dart'; import '../attribute.dart'; +import '../style.dart'; import 'container.dart'; import 'line.dart'; diff --git a/lib/models/documents/style.dart b/lib/models/documents/style.dart index 7b9b050b..90c03df0 100644 --- a/lib/models/documents/style.dart +++ b/lib/models/documents/style.dart @@ -1,7 +1,8 @@ import 'package:collection/collection.dart'; -import 'package:flutter_quill/models/documents/attribute.dart'; import 'package:quiver/core.dart'; +import 'attribute.dart'; + /* Collection of style attributes */ class Style { final Map _attributes; diff --git a/lib/models/rules/delete.dart b/lib/models/rules/delete.dart index 15aa3862..535504d5 100644 --- a/lib/models/rules/delete.dart +++ b/lib/models/rules/delete.dart @@ -1,6 +1,6 @@ -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/quill_delta.dart'; -import 'package:flutter_quill/models/rules/rule.dart'; +import '../documents/attribute.dart'; +import '../quill_delta.dart'; +import 'rule.dart'; abstract class DeleteRule extends Rule { const DeleteRule(); diff --git a/lib/models/rules/format.dart b/lib/models/rules/format.dart index 755f4137..0d574c94 100644 --- a/lib/models/rules/format.dart +++ b/lib/models/rules/format.dart @@ -1,6 +1,6 @@ -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/quill_delta.dart'; -import 'package:flutter_quill/models/rules/rule.dart'; +import '../documents/attribute.dart'; +import '../quill_delta.dart'; +import 'rule.dart'; abstract class FormatRule extends Rule { const FormatRule(); diff --git a/lib/models/rules/insert.dart b/lib/models/rules/insert.dart index 5ea7f215..f0f7d001 100644 --- a/lib/models/rules/insert.dart +++ b/lib/models/rules/insert.dart @@ -1,9 +1,10 @@ -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/style.dart'; -import 'package:flutter_quill/models/quill_delta.dart'; -import 'package:flutter_quill/models/rules/rule.dart'; import 'package:tuple/tuple.dart'; +import '../documents/attribute.dart'; +import '../documents/style.dart'; +import '../quill_delta.dart'; +import 'rule.dart'; + abstract class InsertRule extends Rule { const InsertRule(); diff --git a/lib/models/rules/rule.dart b/lib/models/rules/rule.dart index 70a5aa74..23eb3b9d 100644 --- a/lib/models/rules/rule.dart +++ b/lib/models/rules/rule.dart @@ -1,7 +1,6 @@ -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/document.dart'; -import 'package:flutter_quill/models/quill_delta.dart'; - +import '../documents/attribute.dart'; +import '../documents/document.dart'; +import '../quill_delta.dart'; import 'delete.dart'; import 'format.dart'; import 'insert.dart'; diff --git a/lib/utils/diff_delta.dart b/lib/utils/diff_delta.dart index 127c2d8b..d3b97116 100644 --- a/lib/utils/diff_delta.dart +++ b/lib/utils/diff_delta.dart @@ -1,6 +1,6 @@ import 'dart:math' as math; -import 'package:flutter_quill/models/quill_delta.dart'; +import '../models/quill_delta.dart'; const Set WHITE_SPACE = { 0x9, diff --git a/lib/widgets/box.dart b/lib/widgets/box.dart index 5e43b841..75547923 100644 --- a/lib/widgets/box.dart +++ b/lib/widgets/box.dart @@ -1,5 +1,6 @@ import 'package:flutter/rendering.dart'; -import 'package:flutter_quill/models/documents/nodes/container.dart'; + +import '../models/documents/nodes/container.dart'; abstract class RenderContentProxyBox implements RenderBox { double getPreferredLineHeight(); diff --git a/lib/widgets/controller.dart b/lib/widgets/controller.dart index da876bf1..510db24c 100644 --- a/lib/widgets/controller.dart +++ b/lib/widgets/controller.dart @@ -1,14 +1,15 @@ import 'dart:math' as math; import 'package:flutter/cupertino.dart'; -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/document.dart'; -import 'package:flutter_quill/models/documents/nodes/embed.dart'; -import 'package:flutter_quill/models/documents/style.dart'; -import 'package:flutter_quill/models/quill_delta.dart'; -import 'package:flutter_quill/utils/diff_delta.dart'; import 'package:tuple/tuple.dart'; +import '../models/documents/attribute.dart'; +import '../models/documents/document.dart'; +import '../models/documents/nodes/embed.dart'; +import '../models/documents/style.dart'; +import '../models/quill_delta.dart'; +import '../utils/diff_delta.dart'; + class QuillController extends ChangeNotifier { final Document document; TextSelection selection; diff --git a/lib/widgets/delegate.dart b/lib/widgets/delegate.dart index 3cfb9cd6..f134a77e 100644 --- a/lib/widgets/delegate.dart +++ b/lib/widgets/delegate.dart @@ -2,10 +2,10 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; -import 'package:flutter_quill/models/documents/nodes/leaf.dart'; -import 'package:flutter_quill/widgets/text_selection.dart'; +import '../models/documents/nodes/leaf.dart'; import 'editor.dart'; +import 'text_selection.dart'; typedef EmbedBuilder = Widget Function(BuildContext context, Embed node); diff --git a/lib/widgets/editor.dart b/lib/widgets/editor.dart index f9bab1c1..654daf1e 100644 --- a/lib/widgets/editor.dart +++ b/lib/widgets/editor.dart @@ -8,25 +8,24 @@ import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; import 'package:flutter/services.dart'; -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/document.dart'; -import 'package:flutter_quill/models/documents/nodes/container.dart' - as container_node; -import 'package:flutter_quill/models/documents/nodes/embed.dart'; -import 'package:flutter_quill/models/documents/nodes/leaf.dart' as leaf; -import 'package:flutter_quill/models/documents/nodes/line.dart'; -import 'package:flutter_quill/models/documents/nodes/node.dart'; -import 'package:flutter_quill/widgets/image.dart'; -import 'package:flutter_quill/widgets/raw_editor.dart'; -import 'package:flutter_quill/widgets/text_selection.dart'; import 'package:string_validator/string_validator.dart'; import 'package:url_launcher/url_launcher.dart'; +import '../models/documents/attribute.dart'; +import '../models/documents/document.dart'; +import '../models/documents/nodes/container.dart' as container_node; +import '../models/documents/nodes/embed.dart'; +import '../models/documents/nodes/leaf.dart' as leaf; +import '../models/documents/nodes/line.dart'; +import '../models/documents/nodes/node.dart'; import 'box.dart'; import 'controller.dart'; import 'cursor.dart'; import 'default_styles.dart'; import 'delegate.dart'; +import 'image.dart'; +import 'raw_editor.dart'; +import 'text_selection.dart'; const linkPrefixes = [ 'mailto:', // email diff --git a/lib/widgets/raw_editor.dart b/lib/widgets/raw_editor.dart index 6a24f39c..155a90ff 100644 --- a/lib/widgets/raw_editor.dart +++ b/lib/widgets/raw_editor.dart @@ -9,25 +9,25 @@ import 'package:flutter/rendering.dart'; import 'package:flutter/scheduler.dart'; import 'package:flutter/services.dart'; import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart'; -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/document.dart'; -import 'package:flutter_quill/models/documents/nodes/block.dart'; -import 'package:flutter_quill/models/documents/nodes/line.dart'; -import 'package:flutter_quill/models/documents/nodes/node.dart'; -import 'package:flutter_quill/utils/diff_delta.dart'; -import 'package:flutter_quill/widgets/default_styles.dart'; -import 'package:flutter_quill/widgets/proxy.dart'; -import 'package:flutter_quill/widgets/text_block.dart'; -import 'package:flutter_quill/widgets/text_line.dart'; -import 'package:flutter_quill/widgets/text_selection.dart'; import 'package:tuple/tuple.dart'; +import '../models/documents/attribute.dart'; +import '../models/documents/document.dart'; +import '../models/documents/nodes/block.dart'; +import '../models/documents/nodes/line.dart'; +import '../models/documents/nodes/node.dart'; +import '../utils/diff_delta.dart'; import 'box.dart'; import 'controller.dart'; import 'cursor.dart'; +import 'default_styles.dart'; import 'delegate.dart'; import 'editor.dart'; import 'keyboard_listener.dart'; +import 'proxy.dart'; +import 'text_block.dart'; +import 'text_line.dart'; +import 'text_selection.dart'; class RawEditor extends StatefulWidget { final QuillController controller; diff --git a/lib/widgets/text_block.dart b/lib/widgets/text_block.dart index 85912431..031ecbd5 100644 --- a/lib/widgets/text_block.dart +++ b/lib/widgets/text_block.dart @@ -1,19 +1,19 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/nodes/block.dart'; -import 'package:flutter_quill/models/documents/nodes/line.dart'; -import 'package:flutter_quill/models/documents/nodes/node.dart'; -import 'package:flutter_quill/widgets/cursor.dart'; -import 'package:flutter_quill/widgets/default_styles.dart'; -import 'package:flutter_quill/widgets/text_line.dart'; -import 'package:flutter_quill/widgets/text_selection.dart'; import 'package:tuple/tuple.dart'; +import '../models/documents/attribute.dart'; +import '../models/documents/nodes/block.dart'; +import '../models/documents/nodes/line.dart'; +import '../models/documents/nodes/node.dart'; import 'box.dart'; +import 'cursor.dart'; +import 'default_styles.dart'; import 'delegate.dart'; import 'editor.dart'; +import 'text_line.dart'; +import 'text_selection.dart'; const List arabianRomanNumbers = [ 1000, diff --git a/lib/widgets/text_line.dart b/lib/widgets/text_line.dart index 57455d5b..c10c6c8e 100644 --- a/lib/widgets/text_line.dart +++ b/lib/widgets/text_line.dart @@ -3,23 +3,22 @@ import 'dart:math' as math; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/nodes/container.dart' - as container; -import 'package:flutter_quill/models/documents/nodes/leaf.dart' as leaf; -import 'package:flutter_quill/models/documents/nodes/leaf.dart'; -import 'package:flutter_quill/models/documents/nodes/line.dart'; -import 'package:flutter_quill/models/documents/nodes/node.dart'; -import 'package:flutter_quill/models/documents/style.dart'; -import 'package:flutter_quill/utils/color.dart'; -import 'package:flutter_quill/widgets/cursor.dart'; -import 'package:flutter_quill/widgets/proxy.dart'; -import 'package:flutter_quill/widgets/text_selection.dart'; import 'package:tuple/tuple.dart'; +import '../models/documents/attribute.dart'; +import '../models/documents/nodes/container.dart' as container; +import '../models/documents/nodes/leaf.dart' as leaf; +import '../models/documents/nodes/leaf.dart'; +import '../models/documents/nodes/line.dart'; +import '../models/documents/nodes/node.dart'; +import '../models/documents/style.dart'; +import '../utils/color.dart'; import 'box.dart'; +import 'cursor.dart'; import 'default_styles.dart'; import 'delegate.dart'; +import 'proxy.dart'; +import 'text_selection.dart'; class TextLine extends StatelessWidget { final Line line; diff --git a/lib/widgets/text_selection.dart b/lib/widgets/text_selection.dart index 8aa29d25..7873c99d 100644 --- a/lib/widgets/text_selection.dart +++ b/lib/widgets/text_selection.dart @@ -7,8 +7,8 @@ import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; import 'package:flutter/scheduler.dart'; -import 'package:flutter_quill/models/documents/nodes/node.dart'; +import '../models/documents/nodes/node.dart'; import 'editor.dart'; TextSelection localSelection(Node node, TextSelection selection, fromParent) { diff --git a/lib/widgets/toolbar.dart b/lib/widgets/toolbar.dart index 6b4b4147..07bdd421 100644 --- a/lib/widgets/toolbar.dart +++ b/lib/widgets/toolbar.dart @@ -5,13 +5,13 @@ import 'package:filesystem_picker/filesystem_picker.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_colorpicker/flutter_colorpicker.dart'; -import 'package:flutter_quill/models/documents/attribute.dart'; -import 'package:flutter_quill/models/documents/nodes/embed.dart'; -import 'package:flutter_quill/models/documents/style.dart'; -import 'package:flutter_quill/utils/color.dart'; import 'package:image_picker/image_picker.dart'; import 'package:path_provider/path_provider.dart'; +import '../models/documents/attribute.dart'; +import '../models/documents/nodes/embed.dart'; +import '../models/documents/style.dart'; +import '../utils/color.dart'; import 'controller.dart'; double iconSize = 18.0;