diff --git a/CHANGELOG.md b/CHANGELOG.md index be5ca27..6c774ee 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## [0.0.7] 10.11.2021 +* Updated url regex so it can detect url's with "-" in it. (thanks https://github.com/Bhupesh-V for contributing) + ## [0.0.6] 01.11.2021 * Added IncludeOnlyCases and IgnoreCases propertied into SocialTextSpanBuilder(context).build() method. You can now ignore matches or include matches diff --git a/README.md b/README.md index 4062c31..f1359ff 100644 --- a/README.md +++ b/README.md @@ -155,6 +155,8 @@ With version 0.0.3 you can also implement onTapDetection function for adding tap # Acknowledgements +Thanks https://github.com/Bhupesh-V (@Bhupesh-V) for his contribution to url regex 👌 + This widget's default regular expressions taken from this wonderful widget: [detectable_text_field](https://pub.dev/packages/detectable_text_field) diff --git a/example/lib/text_span_example.dart b/example/lib/text_span_example.dart index d55c0cd..5ee0968 100644 --- a/example/lib/text_span_example.dart +++ b/example/lib/text_span_example.dart @@ -8,7 +8,7 @@ class SocialTextSpanExampleScreen extends StatefulWidget { class _SocialTextSpanExampleScreenState extends State { - String exampleContent = "Lorem ipsum @dolor sit amet, consectetur adipiscing elit, sed do eiusmod @tempor incididunt ut labore et dolore magna aliqua. Ut #tellus elementum sagittis vitae et. Id #velit ut tortor pretium viverra suspendisse. Massa placerat duis ultricies lacus sed. @Placerat in egestas erat imperdiet sed euismod nisi. Velit scelerisque in dictum non consectetur. Massa id neque aliquam vestibulum morbi blandit. Purus sit amet volutpat consequat mauris nunc congue nisi. Ut diam quam nulla porttitor massa id. Sed faucibus turpis in eu mi. Rhoncus mattis rhoncus urna neque. Vel eros donec ac odio. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus. Lobortis elementum nibh tellus molestie nunc non blandit massa enim. Amet consectetur adipiscing elit duis tristique @sollicitudin nibh sit amet.\nhttp://www.google.com"; + String exampleContent = "Lorem ipsum @dolor sit amet, consectetur adipiscing elit, sed do eiusmod @tempor incididunt ut labore et dolore magna aliqua. Ut #tellus elementum sagittis vitae et. Id #velit ut tortor pretium viverra suspendisse. Massa placerat duis ultricies lacus sed. @Placerat in egestas erat imperdiet sed euismod nisi. Velit scelerisque in dictum non consectetur. Massa id neque aliquam vestibulum morbi blandit. Purus sit amet volutpat consequat mauris nunc congue nisi. Ut diam quam nulla porttitor massa id. Sed faucibus turpis in eu mi. Rhoncus mattis rhoncus urna neque. Vel eros donec ac odio. Elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus. Lobortis elementum nibh tellus molestie nunc non blandit massa enim. Amet consectetur adipiscing elit duis tristique @sollicitudin nibh sit amet.\nhttp://www.google.com\n\https://bhupesh-v.github.io/"; @override Widget build(BuildContext context) { diff --git a/example/pubspec.lock b/example/pubspec.lock index 99822c2..9ffd10b 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -68,7 +68,7 @@ packages: path: ".." relative: true source: path - version: "0.0.5" + version: "0.0.6" flutter_test: dependency: "direct dev" description: flutter diff --git a/lib/util/regular_expressions.dart b/lib/util/regular_expressions.dart index a949bca..30ca4be 100644 --- a/lib/util/regular_expressions.dart +++ b/lib/util/regular_expressions.dart @@ -25,8 +25,15 @@ const detectionContentLetters = _symbols + _arabicLetters + _thaiLetters; +// const urlRegexContent = "((http|https)://)(www.)?" + +// "[a-zA-Z0-9@:%._\\+~#?&//=]" + +// "{2,256}\\.[a-z]" + +// "{2,6}\\b([-a-zA-Z0-9@:%" + +// "._\\+~#?&//=]*)"; + +// Thanks to @Bhupesh-V for contribution. const urlRegexContent = "((http|https)://)(www.)?" + - "[a-zA-Z0-9@:%._\\+~#?&//=]" + + "[a-zA-Z0-9@:%._\\+~#?&//=-]" + "{2,256}\\.[a-z]" + "{2,6}\\b([-a-zA-Z0-9@:%" + "._\\+~#?&//=]*)"; diff --git a/pubspec.yaml b/pubspec.yaml index db9a80c..7f9c9ef 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: flutter_social_textfield description: TextEditingController and RichText / TextSpan builder with hashtag, url and mention detection with Regular Expressions. Also with tap support. -version: 0.0.6 +version: 0.0.7 homepage: https://github.com/dreampowder/flutter_social_textfield environment: