Fix regex bug

This commit is contained in:
Henry Hiles 2025-12-24 16:53:13 -05:00
commit 11a946e6ea
No known key found for this signature in database
4 changed files with 98 additions and 128 deletions

View file

@ -101,10 +101,6 @@ A simple and user-friendly Matrix client made with Flutter and the Matrix Dart S
- [ ] About
- [x] Log Out
## Known Bugs
- Sometimes links don't parse properly, this is apparent in the Maunium Ping Room. We might possibly need a regex change.
## Development
Fork and clone the project, then:

View file

@ -8,9 +8,7 @@ extension EventToMessage on Event {
bool mustBeText = false,
bool includeEdits = false,
}) async {
final replyId = relationshipType == RelationshipTypes.reply
? relationshipEventId
: null;
final replyId = inReplyToEventId();
final newEvent = (unsigned?["m.relations"] as Map?)?["m.replace"];
final event = newEvent == null ? this : Event.fromJson(newEvent, room);

View file

@ -85,10 +85,10 @@ packages:
dependency: transitive
description:
name: build
sha256: ce76b1d48875e3233fde17717c23d1f60a91cc631597e49a400c89b475395b1d
sha256: c1668065e9ba04752570ad7e038288559d1e2ca5c6d0131c0f5f55e39e777413
url: "https://pub.dev"
source: hosted
version: "3.1.0"
version: "4.0.3"
build_cli_annotations:
dependency: transitive
description:
@ -109,34 +109,18 @@ packages:
dependency: transitive
description:
name: build_daemon
sha256: "409002f1adeea601018715d613115cfaf0e31f512cb80ae4534c79867ae2363d"
sha256: bf05f6e12cfea92d3c09308d7bcdab1906cd8a179b023269eed00c071004b957
url: "https://pub.dev"
source: hosted
version: "4.1.0"
build_resolvers:
dependency: transitive
description:
name: build_resolvers
sha256: d1d57f7807debd7349b4726a19fd32ec8bc177c71ad0febf91a20f84cd2d4b46
url: "https://pub.dev"
source: hosted
version: "3.0.3"
version: "4.1.1"
build_runner:
dependency: "direct dev"
description:
name: build_runner
sha256: b24597fceb695969d47025c958f3837f9f0122e237c6a22cb082a5ac66c3ca30
sha256: "110c56ef29b5eb367b4d17fc79375fa8c18a6cd7acd92c05bb3986c17a079057"
url: "https://pub.dev"
source: hosted
version: "2.7.1"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
sha256: "066dda7f73d8eb48ba630a55acb50c4a84a2e6b453b1cb4567f581729e794f7b"
url: "https://pub.dev"
source: hosted
version: "9.3.1"
version: "2.10.4"
built_collection:
dependency: transitive
description:
@ -149,10 +133,10 @@ packages:
dependency: transitive
description:
name: built_value
sha256: a30f0a0e38671e89a492c44d005b5545b830a961575bbd8336d42869ff71066d
sha256: "426cf75afdb23aa74bd4e471704de3f9393f3c7b04c1e2d9c6f1073ae0b8b139"
url: "https://pub.dev"
source: hosted
version: "8.12.0"
version: "8.12.1"
canonical_json:
dependency: transitive
description:
@ -205,10 +189,10 @@ packages:
dependency: "direct main"
description:
name: clipboard
sha256: "1920c0337f8808be4166c5f1b236301ff381ef69633b0757c502d97f1f740102"
sha256: "619f4e9e946cfd637ac994f49af356bb590ab88b0c4aded03204ee566fd69d9e"
url: "https://pub.dev"
source: hosted
version: "2.0.2"
version: "3.0.8"
clock:
dependency: transitive
description:
@ -261,18 +245,18 @@ packages:
dependency: transitive
description:
name: cross_cache
sha256: ddf99059e2174d141efa03bea6d51eb7c8983f4a4af43ddee7556bbc43399522
sha256: "4983a16603cc99b0a14de6a772fa8ee4533411f46f3c423f1386fea7566049c5"
url: "https://pub.dev"
source: hosted
version: "1.0.5"
version: "1.1.0"
cross_file:
dependency: transitive
description:
name: cross_file
sha256: "942a4791cd385a68ccb3b32c71c427aba508a1bb949b86dff2adbe4049f16239"
sha256: "701dcfc06da0882883a2657c445103380e53e647060ad8d9dfb710c100996608"
url: "https://pub.dev"
source: hosted
version: "0.3.5"
version: "0.3.5+1"
crypto:
dependency: transitive
description:
@ -317,18 +301,18 @@ packages:
dependency: transitive
description:
name: custom_lint_visitor
sha256: "446d68322747ec1c36797090de776aa72228818d3d80685a91ff524d163fee6d"
sha256: "91f2a81e9f0abb4b9f3bb529f78b6227ce6050300d1ae5b1e2c69c66c7a566d8"
url: "https://pub.dev"
source: hosted
version: "1.0.0+8.1.1"
version: "1.0.0+8.4.0"
dart_style:
dependency: transitive
description:
name: dart_style
sha256: c87dfe3d56f183ffe9106a18aebc6db431fc7c98c31a54b952a77f3d54a85697
sha256: a9c30492da18ff84efe2422ba2d319a89942d93e58eb0b73d32abe822ef54b7b
url: "https://pub.dev"
source: hosted
version: "3.1.2"
version: "3.1.3"
dbus:
dependency: transitive
description:
@ -405,26 +389,26 @@ packages:
dependency: "direct main"
description:
name: file_picker
sha256: f2d9f173c2c14635cc0e9b14c143c49ef30b4934e8d1d274d6206fcb0086a06f
sha256: d974b6ba2606371ac71dd94254beefb6fa81185bde0b59bdc1df09885da85fde
url: "https://pub.dev"
source: hosted
version: "10.3.3"
version: "10.3.8"
file_selector_linux:
dependency: transitive
description:
name: file_selector_linux
sha256: "54cbbd957e1156d29548c7d9b9ec0c0ebb6de0a90452198683a7d23aed617a33"
sha256: "2567f398e06ac72dcf2e98a0c95df2a9edd03c2c2e0cacd4780f20cdf56263a0"
url: "https://pub.dev"
source: hosted
version: "0.9.3+2"
version: "0.9.4"
file_selector_macos:
dependency: transitive
description:
name: file_selector_macos
sha256: "88707a3bec4b988aaed3b4df5d7441ee4e987f20b286cddca5d6a8270cab23f2"
sha256: "5e0bbe9c312416f1787a68259ea1505b52f258c587f12920422671807c4d618a"
url: "https://pub.dev"
source: hosted
version: "0.9.4+5"
version: "0.9.5"
file_selector_platform_interface:
dependency: transitive
description:
@ -437,10 +421,10 @@ packages:
dependency: transitive
description:
name: file_selector_windows
sha256: "320fcfb6f33caa90f0b58380489fc5ac05d99ee94b61aa96ec2bff0ba81d3c2b"
sha256: "62197474ae75893a62df75939c777763d39c2bc5f73ce5b88497208bc269abfd"
url: "https://pub.dev"
source: hosted
version: "0.9.3+4"
version: "0.9.3+5"
fixnum:
dependency: transitive
description:
@ -458,16 +442,16 @@ packages:
dependency: "direct main"
description:
name: flutter_chat_core
sha256: "113f9b0c2c9f8fb77a40d298084d99b28ff4876f99598ad01bea8b731f1acc20"
sha256: "8c46790f64f106bf6e610e2a7324b3844320e9e295867c06d45d9deb134d848d"
url: "https://pub.dev"
source: hosted
version: "2.8.0"
version: "2.9.0"
flutter_chat_ui:
dependency: "direct main"
description:
path: "packages/flutter_chat_ui"
ref: HEAD
resolved-ref: bedc5d90130ad8a15b13f34f67b5b371e82cde7d
resolved-ref: b98ad4ca4339f567c5f562ec8c9b582ba3457d5c
url: "https://github.com/Henry-Hiles/flutter_chat_ui"
source: git
version: "2.9.1"
@ -492,7 +476,7 @@ packages:
description:
path: "packages/flutter_link_previewer"
ref: HEAD
resolved-ref: bedc5d90130ad8a15b13f34f67b5b371e82cde7d
resolved-ref: b98ad4ca4339f567c5f562ec8c9b582ba3457d5c
url: "https://github.com/Henry-Hiles/flutter_chat_ui"
source: git
version: "4.1.2"
@ -521,10 +505,10 @@ packages:
dependency: transitive
description:
name: flutter_plugin_android_lifecycle
sha256: "306f0596590e077338312f38837f595c04f28d6cdeeac392d3d74df2f0003687"
sha256: ee8068e0e1cd16c4a82714119918efdeed33b3ba7772c54b5d094ab53f9b7fd1
url: "https://pub.dev"
source: hosted
version: "2.0.32"
version: "2.0.33"
flutter_riverpod:
dependency: "direct main"
description:
@ -545,10 +529,10 @@ packages:
dependency: "direct main"
description:
name: flutter_svg
sha256: "055de8921be7b8e8b98a233c7a5ef84b3a6fcc32f46f1ebf5b9bb3576d108355"
sha256: "87fbd7c534435b6c5d9d98b01e1fd527812b82e68ddd8bd35fc45ed0fa8f0a95"
url: "https://pub.dev"
source: hosted
version: "2.2.2"
version: "2.2.3"
flutter_test:
dependency: transitive
description: flutter
@ -587,32 +571,32 @@ packages:
dependency: "direct main"
description:
name: flyer_chat_file_message
sha256: "9d3e40819ebd3a32c6821e32a54caf7675af80dd05ce679f8113277f2379ecf4"
sha256: "96c5c25908cd671dda1963ade03e188e6a14bba6b116e73fac329f1abefc9ad1"
url: "https://pub.dev"
source: hosted
version: "2.3.1"
version: "2.4.0"
flyer_chat_image_message:
dependency: "direct main"
description:
name: flyer_chat_image_message
sha256: "258a60de2cd04d108aad5884a817b578d639d8586fb80a270a3a169b96a5dfc6"
sha256: "04730c9373c9c7315ba0e1a360c67ac5f6c7ec8a700ffe2d2dc00e29b7f8ff90"
url: "https://pub.dev"
source: hosted
version: "2.2.2"
version: "2.3.0"
flyer_chat_system_message:
dependency: "direct main"
description:
name: flyer_chat_system_message
sha256: "75f962e25db3325c58ba87c7801ca5664b939bcb9ceaf3d292467eedbf04da07"
sha256: d254f85be55949f8eb1a4a9a9b1c5b54ffed0c9a39dfa7e4fa6a6358bdb5d45a
url: "https://pub.dev"
source: hosted
version: "2.1.13"
version: "2.2.0"
flyer_chat_text_message:
dependency: "direct main"
description:
path: "packages/flyer_chat_text_message"
ref: HEAD
resolved-ref: dd1b93e6dd4194b3bd934e0d9c27438ba25322cb
resolved-ref: b98ad4ca4339f567c5f562ec8c9b582ba3457d5c
url: "https://github.com/Henry-Hiles/flutter_chat_ui"
source: git
version: "2.5.2"
@ -652,10 +636,10 @@ packages:
dependency: transitive
description:
name: gpt_markdown
sha256: "8174983f2ed7d8576d25810913e3afe3f8ffdaa3172c0c823b7cfc289b67f380"
sha256: "9b88dfaffea644070b648c204ca4a55745a49f4ad0b58ed0ab70913ad593c7a1"
url: "https://pub.dev"
source: hosted
version: "1.1.4"
version: "1.1.5"
graphs:
dependency: transitive
description:
@ -732,42 +716,42 @@ packages:
dependency: transitive
description:
name: image
sha256: "4e973fcf4caae1a4be2fa0a13157aa38a8f9cb049db6529aa00b4d71abc4d928"
sha256: "492bd52f6c4fbb6ee41f781ff27765ce5f627910e1e0cbecfa3d9add5562604c"
url: "https://pub.dev"
source: hosted
version: "4.5.4"
version: "4.7.2"
image_picker:
dependency: "direct main"
description:
name: image_picker
sha256: "736eb56a911cf24d1859315ad09ddec0b66104bc41a7f8c5b96b4e2620cf5041"
sha256: "784210112be18ea55f69d7076e2c656a4e24949fa9e76429fe53af0c0f4fa320"
url: "https://pub.dev"
source: hosted
version: "1.2.0"
version: "1.2.1"
image_picker_android:
dependency: transitive
description:
name: image_picker_android
sha256: ca2a3b04d34e76157e9ae680ef16014fb4c2d20484e78417eaed6139330056f6
sha256: "5e9bf126c37c117cf8094215373c6d561117a3cfb50ebc5add1a61dc6e224677"
url: "https://pub.dev"
source: hosted
version: "0.8.13+7"
version: "0.8.13+10"
image_picker_for_web:
dependency: transitive
description:
name: image_picker_for_web
sha256: "40c2a6a0da15556dc0f8e38a3246064a971a9f512386c3339b89f76db87269b6"
sha256: "66257a3191ab360d23a55c8241c91a6e329d31e94efa7be9cf7a212e65850214"
url: "https://pub.dev"
source: hosted
version: "3.1.0"
version: "3.1.1"
image_picker_ios:
dependency: transitive
description:
name: image_picker_ios
sha256: e675c22790bcc24e9abd455deead2b7a88de4b79f7327a281812f14de1a56f58
sha256: "956c16a42c0c708f914021666ffcd8265dde36e673c9fa68c81f7d085d9774ad"
url: "https://pub.dev"
source: hosted
version: "0.8.13+1"
version: "0.8.13+3"
image_picker_linux:
dependency: transitive
description:
@ -836,10 +820,10 @@ packages:
dependency: "direct dev"
description:
name: json_serializable
sha256: "33a040668b31b320aafa4822b7b1e177e163fc3c1e835c6750319d4ab23aa6fe"
sha256: "6b253f7851cf1626a05c8b49c792e04a14897349798c03798137f2b5f7e0b5b1"
url: "https://pub.dev"
source: hosted
version: "6.11.1"
version: "6.11.3"
just_throttle_it:
dependency: transitive
description:
@ -916,10 +900,10 @@ packages:
dependency: "direct main"
description:
name: matrix
sha256: "94f5284c4ee521ae9d61f30cbb7c299d02d820e35509c028090d3b1901f520a3"
sha256: fb116ee89f6871441f22f76a988db15cfcfb6dfac97e3e2d654c240080015707
url: "https://pub.dev"
source: hosted
version: "3.0.2"
version: "4.1.0"
mention_tag_text_field:
dependency: "direct main"
description:
@ -996,18 +980,18 @@ packages:
dependency: transitive
description:
name: path_provider_android
sha256: e122c5ea805bb6773bb12ce667611265980940145be920cd09a4b0ec0285cb16
sha256: f2c65e21139ce2c3dad46922be8272bb5963516045659e71bb16e151c93b580e
url: "https://pub.dev"
source: hosted
version: "2.2.20"
version: "2.2.22"
path_provider_foundation:
dependency: transitive
description:
name: path_provider_foundation
sha256: efaec349ddfc181528345c56f8eda9d6cccd71c177511b132c6a0ddaefaa2738
sha256: "6d13aece7b3f5c5a9731eaf553ff9dcbc2eff41087fd2df587fd0fed9a3eb0c4"
url: "https://pub.dev"
source: hosted
version: "2.4.3"
version: "2.5.1"
path_provider_linux:
dependency: transitive
description:
@ -1220,10 +1204,10 @@ packages:
dependency: "direct main"
description:
name: shared_preferences
sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5"
sha256: "2939ae520c9024cb197fc20dee269cd8cdbf564c8b5746374ec6cacdc5169e64"
url: "https://pub.dev"
source: hosted
version: "2.5.3"
version: "2.5.4"
shared_preferences_android:
dependency: transitive
description:
@ -1308,58 +1292,58 @@ packages:
dependency: "direct main"
description:
name: simple_secure_storage
sha256: dfbfab98807687ff8b03e4b68866d24d0554a340f471b96c91cd18a18a8beabd
sha256: ca823a355bb7bb0e9b969876508e7d3a5dc0d1fb2dcb681c85b6e315f1e876e9
url: "https://pub.dev"
source: hosted
version: "0.3.6"
version: "0.3.7"
simple_secure_storage_android:
dependency: transitive
description:
name: simple_secure_storage_android
sha256: "982463b42ffd96a22c97769ef1670d146f0c04c7d73d281cc1598ef0b59672cc"
sha256: "50fb27267755843af039da116d0e545f313ae329ef8838101880802259e0f741"
url: "https://pub.dev"
source: hosted
version: "0.3.0"
version: "0.3.1"
simple_secure_storage_darwin:
dependency: transitive
description:
name: simple_secure_storage_darwin
sha256: "3e8aa0ac60cd5892236a74edbcdfa853bfc4f5a21fd1030272abfcf80d5fc018"
sha256: "8bd2ffcc62b478957ce20046bb96618b91a11e74af5d9fe2b4b229117bad18a7"
url: "https://pub.dev"
source: hosted
version: "0.2.1"
version: "0.2.2"
simple_secure_storage_linux:
dependency: transitive
description:
name: simple_secure_storage_linux
sha256: "67b6da9372b050acd0a64458a4db3eebd532cb3b63d33cc89ea3a430ead6f3c3"
sha256: a7b7dccfaf496c27f882c26634ac083f2f545c0a4ca0818534c6261205a83686
url: "https://pub.dev"
source: hosted
version: "0.2.4"
version: "0.2.5"
simple_secure_storage_platform_interface:
dependency: transitive
description:
name: simple_secure_storage_platform_interface
sha256: eb287f3afbdfa5c505c1ddcbaff1824258c789a1f178450a23b5ae32e0300504
sha256: "04fd4ce4c2b97c01a12eba46f51e3075a793d11f13340d06a64eb9b45a463ca5"
url: "https://pub.dev"
source: hosted
version: "0.2.2"
version: "0.2.3"
simple_secure_storage_web:
dependency: transitive
description:
name: simple_secure_storage_web
sha256: "646324e57c13080e85209a91f98eafed45c6147bcdb2e4612fa62b96b19b0925"
sha256: "63a3474a9931ab2587e01d22e7e95c0b7cc31338c0fafed5db9d1d798d1d3e0e"
url: "https://pub.dev"
source: hosted
version: "0.2.2"
version: "0.2.3"
simple_secure_storage_windows:
dependency: transitive
description:
name: simple_secure_storage_windows
sha256: "54b980ef57a7fdf436e293a6802190a8d385ada32082ec53d132784290c3d09d"
sha256: cf31d2a97c26cf854aeb3c9774cd253f6600fb3fdfc6d807d480afae678cef10
url: "https://pub.dev"
source: hosted
version: "0.3.1"
version: "0.3.2"
sky_engine:
dependency: transitive
description: flutter
@ -1377,18 +1361,18 @@ packages:
dependency: "direct overridden"
description:
name: source_gen
sha256: "9098ab86015c4f1d8af6486b547b11100e73b193e1899015033cb3e14ad20243"
sha256: "07b277b67e0096c45196cbddddf2d8c6ffc49342e88bf31d460ce04605ddac75"
url: "https://pub.dev"
source: hosted
version: "4.0.2"
version: "4.1.1"
source_helper:
dependency: transitive
description:
name: source_helper
sha256: "6a3c6cc82073a8797f8c4dc4572146114a39652851c157db37e964d9c7038723"
sha256: e82b1996c63da42aa3e6a34cc1ec17427728a1baf72ed017717a5669a7123f0d
url: "https://pub.dev"
source: hosted
version: "1.3.8"
version: "1.3.9"
source_map_stack_trace:
dependency: transitive
description:
@ -1525,14 +1509,6 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.1.0+1"
timing:
dependency: transitive
description:
name: timing
sha256: "62ee18aca144e4a9f29d212f5a4c6a053be252b895ab14b5821996cff4ed90fe"
url: "https://pub.dev"
source: hosted
version: "1.0.2"
tuple:
dependency: transitive
description:
@ -1569,34 +1545,34 @@ packages:
dependency: transitive
description:
name: url_launcher_android
sha256: "5c8b6c2d89a78f5a1cca70a73d9d5f86c701b36b42f9c9dac7bad592113c28e9"
sha256: "767344bf3063897b5cf0db830e94f904528e6dd50a6dfaf839f0abf509009611"
url: "https://pub.dev"
source: hosted
version: "6.3.24"
version: "6.3.28"
url_launcher_ios:
dependency: transitive
description:
name: url_launcher_ios
sha256: "6b63f1441e4f653ae799166a72b50b1767321ecc263a57aadf825a7a2a5477d9"
sha256: cfde38aa257dae62ffe79c87fab20165dfdf6988c1d31b58ebf59b9106062aad
url: "https://pub.dev"
source: hosted
version: "6.3.5"
version: "6.3.6"
url_launcher_linux:
dependency: transitive
description:
name: url_launcher_linux
sha256: "4e9ba368772369e3e08f231d2301b4ef72b9ff87c31192ef471b380ef29a4935"
sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a
url: "https://pub.dev"
source: hosted
version: "3.2.1"
version: "3.2.2"
url_launcher_macos:
dependency: transitive
description:
name: url_launcher_macos
sha256: "8262208506252a3ed4ff5c0dc1e973d2c0e0ef337d0a074d35634da5d44397c9"
sha256: "368adf46f71ad3c21b8f06614adb38346f193f3a59ba8fe9a2fd74133070ba18"
url: "https://pub.dev"
source: hosted
version: "3.2.4"
version: "3.2.5"
url_launcher_platform_interface:
dependency: transitive
description:
@ -1617,10 +1593,10 @@ packages:
dependency: transitive
description:
name: url_launcher_windows
sha256: "3284b6d2ac454cf34f114e1d3319866fdd1e19cdc329999057e44ffe936cfa77"
sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f"
url: "https://pub.dev"
source: hosted
version: "3.1.4"
version: "3.1.5"
uuid:
dependency: transitive
description:
@ -1681,10 +1657,10 @@ packages:
dependency: transitive
description:
name: watcher
sha256: "592ab6e2892f67760543fb712ff0177f4ec76c031f02f5b4ff8d3fc5eb9fb61a"
sha256: f52385d4f73589977c80797e60fe51014f7f2b957b5e9a62c3f6ada439889249
url: "https://pub.dev"
source: hosted
version: "1.1.4"
version: "1.2.0"
web:
dependency: transitive
description:
@ -1713,10 +1689,10 @@ packages:
dependency: transitive
description:
name: webcrypto
sha256: e393b3d0b01694a8f81efecf278ed7392877130e6e7b29f578863e4f2d0b2ebd
sha256: "6b43001c4110856ff7fa5e5e65e7b2d44bec1d8b54a4d84d5fa2c7622267c5c1"
url: "https://pub.dev"
source: hosted
version: "0.5.8"
version: "0.6.0"
webkit_inspection_protocol:
dependency: transitive
description:

View file

@ -54,7 +54,7 @@ dependencies:
git:
url: https://github.com/Henry-Hiles/flutter_chat_ui
path: packages/flutter_link_previewer
matrix: ^3.0.2
matrix: ^4.1.0
sqflite_common_ffi: ^2.3.6
color_hash: ^1.0.1
flutter_vodozemac: ^0.4.1
@ -63,7 +63,7 @@ dependencies:
simple_secure_storage: ^0.3.6
json_annotation: ^4.9.0
vodozemac: ^0.4.0
clipboard: ^2.0.2
clipboard: ^3.0.8
shared_preferences: ^2.5.3
mention_tag_text_field: ^0.0.9
fluttertagger: ^2.3.1