Commit Graph

10238 Commits

Author SHA1 Message Date
Adam Brown a8b73f0cf9 applying autofill hints for phonenumber and email entry 2022-07-01 11:13:57 +01:00
Adam Brown df6ebcacd1 adding msisdn fragment and layout, copied from email input 2022-07-01 11:12:45 +01:00
Benoit Marty 1297ccd45c Fix first compilation errors 2022-07-01 11:58:01 +02:00
Florian Renaud c25edfada4 Remove unused imports 2022-07-01 10:09:26 +02:00
Florian Renaud 7415623c2f Update room description style 2022-07-01 09:48:12 +02:00
Florian Renaud c7db89613c Split code in MergedRoomCreationItem 2022-07-01 09:48:11 +02:00
Florian Renaud 71320e42d0 Show date separator in local room timeline 2022-07-01 09:48:11 +02:00
Valere b0907de582 Fix migration 2022-07-01 09:43:17 +02:00
Valere 8e829c6aad Add lab flag and more tests 2022-07-01 09:43:17 +02:00
Florian Renaud 33a19c1ef5 Merge branch 'develop' into feature/fre/start_dm_on_first_msg
* develop: (91 commits)
  Remove unused import
  Update versions
  Update CHANGES
  Improve readability.
  Weblate: also clean trads
  Changelog
  Format file
  Add android:hasFragileUserData="true" to the manifest. See details in #2352
  Clean the TODO delete (UnusedResource not compatible with string template)
  showing a toast on password reset confirmation
  lifting duplicated event_base layout to the base class, with the option for children to override
  using vector model for consistency
  Replace 5 manual steps to 1 command line step
  Translated using Weblate (Italian)
  Translated using Weblate (Swedish)
  Translated using Weblate (Swedish)
  Translated using Weblate (Russian)
  extracting common breaker background selection to ftue extensions
  removing unused imports
  adding changelog entry
  ...
2022-07-01 09:35:40 +02:00
Benoit Marty e2a55fb6f6
Merge pull request #4364 from vector-im/yostyle/open_url_on_browser_task
Open URL on external browser task
2022-06-30 22:36:26 +02:00
Benoit Marty 58580f1e6a
Merge pull request #6413 from vector-im/feature/bma/room_member_loading
Show a loader if all the Room Member are not yet loaded.
2022-06-30 17:13:50 +02:00
Benoit Marty 98a7f7df4d
Merge pull request #6429 from vector-im/feature/bma/fragile_data
Add `android:hasFragileUserData="true"` in the manifest
2022-06-30 17:11:27 +02:00
Adam Brown 72c4af0026
Merge pull request #6263 from vector-im/feature/adm/ftue-forgot-password
[FTUE] Forgot password
2022-06-30 15:40:09 +01:00
Adam Brown ea71a8b5c2
Merge pull request #6415 from vector-im/feature/adm/replacing-epoxy-layout-id
Replacing epoxy item annotation layout references with getDefaultLayoutId
2022-06-30 14:58:46 +01:00
Maxime NATUREL a8d43538f1 Explicitely hiding votes when disclosed poll 2022-06-30 14:51:07 +02:00
ganfra 88346ffc68 Weblate: also clean trads 2022-06-30 14:36:52 +02:00
Benoit Marty 2118eaea90 Format file 2022-06-30 14:19:20 +02:00
Benoit Marty 52b07021a7 Add android:hasFragileUserData="true" to the manifest. See details in #2352 2022-06-30 14:19:04 +02:00
ganfra 4bdde101b8 Clean the TODO delete (UnusedResource not compatible with string template) 2022-06-30 12:26:51 +02:00
Florian Renaud 3f087eb632 Merge branch 'develop' into feature/fre/start_dm_on_first_msg
* develop: (174 commits)
  Bump libphonenumber from 8.12.50 to 8.12.51
  LoadRoomMember: fix presence
  Cleanup
  LoadRoomMembers: add changelog
  LoadRoomMembers: handle room member event a bit more efficiently
  LoadRoomMembers: exclude Membership.Leave
  LoadRoomMembers: divide by chunk
  Bump soloader from 0.10.3 to 0.10.4
  Code review fix.
  Try no using the gradle daemon on CI
  Harmonize values of `CI_GRADLE_ARG_PROPERTIES`
  removing unused dependencies and marking soloader and ignored from dependency check (as it's dynamic)
  Remove non necessary prefix in logs
  Adding changelog entry
  Updating the unit tests
  Stopping existing active live when starting a new one
  Avoid multiple PR from Dependabot when Flipper is upgraded.
  Change context inside the get live summary use case
  Use a TestDispatcher in the FakeSession
  Code review fixes.
  ...
2022-06-30 11:48:55 +02:00
Adam Brown 0d084648a3 showing a toast on password reset confirmation 2022-06-30 10:44:06 +01:00
Weblate 53a8098caa Merge branch 'origin/develop' into Weblate. 2022-06-30 09:34:40 +00:00
Adam Brown d0e5b3eb21 lifting duplicated event_base layout to the base class, with the option for children to override 2022-06-30 09:46:20 +01:00
Adam Brown a815ac996b using vector model for consistency 2022-06-30 09:45:56 +01:00
Maxime NATUREL 9fb19af39c Adding a description under undisclosed poll when not yet ended 2022-06-30 10:13:41 +02:00
LinAGKar fabb345107 Translated using Weblate (Swedish)
Currently translated at 100.0% (2239 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/sv/
2022-06-29 19:32:19 +00:00
Nui Harime 45cb013e1a Translated using Weblate (Russian)
Currently translated at 99.7% (2233 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ru/
2022-06-29 19:32:19 +00:00
Adam Brown c603b780cf extracting common breaker background selection to ftue extensions 2022-06-29 17:47:28 +01:00
Adam Brown 7df7df7541 removing unused imports 2022-06-29 17:40:25 +01:00
Adam Brown 33ca5753f1 replacing epoxy item annotation layout references with getDefaultLayoutId override 2022-06-29 17:21:05 +01:00
ericdecanini 4cf97d48c9 Merge remote-tracking branch 'origin/develop' into bugfix/eric/softlogout-ux-broken
# Conflicts:
#	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/DefaultAuthenticationService.kt
#	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/registration/DefaultRegistrationWizard.kt
#	vector/src/main/java/im/vector/app/features/login/LoginActivity.kt
#	vector/src/main/java/im/vector/app/features/signout/soft/SoftLogoutController.kt
2022-06-29 15:53:22 +02:00
Benoit Marty e75070be91 Use a DataSrouce instead of a Task and return a non Optional Boolean. 2022-06-29 15:35:00 +02:00
Adam Brown 1361852721 triggering an initial enabled state when using associateContentStateWith and extracts the resetting of errors on content change to an extension 2022-06-29 14:15:39 +01:00
Maxime NATUREL f5d3bcbb94 Sending a reply to a live location share 2022-06-29 15:04:57 +02:00
Maxime NATUREL 65b949071a Introducing a use case to check if a message can have reply action 2022-06-29 15:04:57 +02:00
Adam Brown 7c0d340bd0 formatting 2022-06-29 13:39:36 +01:00
Adam Brown 80ec0aaf05 removing new password isEnabled check using the isEmail validator, this check is wrong but also not needed due to associateContentStateWith above 2022-06-29 13:39:17 +01:00
Adam Brown 382a936e0a fixing method call grouping 2022-06-29 13:35:02 +01:00
Onuray Sahin abea68557b
Merge pull request #6350 from vector-im/feature/ons/promote_live_location_labs_flag
Promote live location labs flag [PSF-959]
2022-06-29 15:26:39 +03:00
Benoit Marty e91be2b599 Show a loader if all the Room Member are not yet loaded. 2022-06-29 12:19:17 +02:00
Maxime NATUREL e7a68907f9
Merge pull request #6365 from vector-im/feature/mna/start-lls-from-other-device
[Location sharing] - Stop any active live before starting a new one (PSF-942)
2022-06-29 09:47:26 +02:00
Maxime NATUREL d112f860a2
Merge pull request #6356 from vector-im/fix/mna/stop-lls-from-other-device
[Location sharing] - Make stop of a live from another device possible (PSF-1060)
2022-06-29 09:45:44 +02:00
Onuray Sahin 3ec8c77d17 Code review fix. 2022-06-28 17:12:52 +03:00
Benoit Marty 6fda2cc7b3
Merge pull request #6101 from chagai95/native-lookup-fixes
Native lookup fixes
2022-06-28 15:43:35 +02:00
Nui Harime 9941281107 Added translation using Weblate (Rusyn) 2022-06-28 13:31:32 +00:00
Maxime NATUREL 7b0878daf9 Remove non necessary prefix in logs 2022-06-28 14:49:35 +02:00
Maxime NATUREL c2c58f81d8 Stopping existing active live when starting a new one 2022-06-28 14:36:36 +02:00
Maxime NATUREL 70996655e1 Change context inside the get live summary use case 2022-06-28 14:15:41 +02:00
Maxime NATUREL 8476fba5ff Use a TestDispatcher in the FakeSession 2022-06-28 14:15:00 +02:00
Valere a2aa0471c5
Merge pull request #6328 from vector-im/feature/bca/verif_resist_no_age
Feature/bca/verif resist no age
2022-06-28 14:13:37 +02:00
Onuray Sahin 2fe03a0016 Code review fixes. 2022-06-28 15:06:42 +03:00
Maxime NATUREL 5b3711b634 Mutualizing mock of asFlow extension 2022-06-28 14:04:50 +02:00
Onuray Sahin 320915e0a1 Code review fixes. 2022-06-28 14:52:01 +03:00
Valere 82e68472dc code review update 2022-06-28 11:28:06 +02:00
Maxime NATUREL af3718d202
Merge pull request #6376 from vector-im/fix/mna/geo-uri-pattern
[Location Share] - Adding missing prefix "u=" for uncertainty in geo URI (PSF-945)
2022-06-28 09:24:55 +02:00
Benoit Marty a398391908
Merge pull request #6366 from vector-im/feature/ons/poll_view_state_unit_tests
Poll view state unit tests [PSF-1130]
2022-06-27 19:59:13 +02:00
Adam Brown 2a46fbe77c ignoring negative margin required by the checkbox alignment 2022-06-27 17:54:45 +01:00
Onuray Sahin 863cc7e0fc Code review fix. 2022-06-27 18:37:03 +03:00
Maxime NATUREL 1df71d31e2 Small improvements in tests 2022-06-27 17:27:27 +02:00
Maxime NATUREL 4c3f6db55c Fix code quality issues 2022-06-27 16:39:46 +02:00
Adam Brown ef4889a1b3 fixing missing fake given 2022-06-27 15:19:29 +01:00
Maxime NATUREL 0488ce822f Updating location tracker tests 2022-06-27 16:13:02 +02:00
Benoit Marty 43f4dae62b
Bump android-embedded_fcm_distributor from 2.0.0 to 2.1.1 (#6331)
* Bump android-embedded_fcm_distributor from 2.0.0 to 2.1.1

Bumps [android-embedded_fcm_distributor](https://github.com/UnifiedPush/android-embedded_fcm_distributor) from 2.0.0 to 2.1.1.
- [Release notes](https://github.com/UnifiedPush/android-embedded_fcm_distributor/releases)
- [Commits](https://github.com/UnifiedPush/android-embedded_fcm_distributor/compare/2.0.0...2.1.1)

---
updated-dependencies:
- dependency-name: com.github.UnifiedPush:android-embedded_fcm_distributor
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Fix compilation issue

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2022-06-27 15:51:53 +02:00
Maxime NATUREL 3b09323ee4 Avoid stopping location service twice 2022-06-27 15:10:54 +02:00
Maxime NATUREL 353a8a70eb Using SharedFlow instead of callback for location updates to remove the need of synchronization 2022-06-27 15:07:09 +02:00
Onuray Sahin 30115fa2b9 Code review fixes. 2022-06-27 15:43:21 +03:00
Onuray Sahin 8100a2e674 Remove duplicated unit tests. 2022-06-27 15:19:26 +03:00
Adam Brown 5bb397f35e using next instead of done copy when confirming reset email link 2022-06-27 13:08:32 +01:00
Adam Brown 0a0c322963 adding extra padding between reset button and checkbox to match designs 2022-06-27 13:08:32 +01:00
Adam Brown 7971a74614 fixing code quality warnings 2022-06-27 13:08:32 +01:00
Adam Brown eb84072a05 updating test names to read better 2022-06-27 13:08:32 +01:00
Adam Brown f40f838a9f making the new password visibility toggleable 2022-06-27 13:08:32 +01:00
Adam Brown 1d3b4e9829 formatting 2022-06-27 13:08:31 +01:00
Adam Brown 0d80bdfd41 updating xml ids to reflect their context 2022-06-27 13:06:43 +01:00
Adam Brown 16481df0f7 handling the reset password completion step within the view model and emitting view events to move the flow forwards 2022-06-27 13:06:42 +01:00
Onuray Sahin 4f9b361346 Fix ready poll unit test. 2022-06-27 15:06:08 +03:00
Adam Brown 47cedfb522 hiding the reset password input by default 2022-06-27 13:05:27 +01:00
Adam Brown 7ef8193a93 fixing reset fragments not removing previous screens when moving to the next step 2022-06-27 13:05:26 +01:00
Adam Brown 3c03bae4c5 adding test around resending reset password email 2022-06-27 12:55:51 +01:00
Adam Brown 4200b4b5e9 taking into account the servers ability to sign out all devices 2022-06-27 12:55:50 +01:00
Adam Brown 7a4a6030db adding a password entry confirmation page for the reset password flow 2022-06-27 12:54:32 +01:00
Onuray Sahin d7c2dbe83f Fix voted poll unit test. 2022-06-27 14:48:58 +03:00
Adam Brown 9abf6e37d1 adding updated forgot password email input and breaker screens 2022-06-27 12:43:54 +01:00
Johannes Marbach c3ae0c2251
Merge pull request #6369 from vector-im/johannes/expose-profile-tag
Expose pusher profile tag in advanced settings
2022-06-27 13:33:36 +02:00
Adam Brown dcffc35041 adding forgot password button to login screen 2022-06-27 12:28:54 +01:00
Onuray Sahin 6f4e079a2e Fix undisclosed poll unit test. 2022-06-27 14:07:26 +03:00
Adam Brown 1d573e3f5d
Merge pull request #6357 from cloudrac3r/fix-formatted-message-display
Fix formatted_body being parsed as Markdown
2022-06-27 12:07:18 +01:00
Onuray Sahin 1a668da077 Fix ended poll unit test. 2022-06-27 13:57:35 +03:00
Onuray Sahin a9358e98b2 Fix sending poll unit test. 2022-06-27 13:39:21 +03:00
Valere 9929d6a4eb Update button design 2022-06-27 10:13:18 +02:00
Valere 142c87314c show option to accept other verif not ready 2022-06-27 09:14:20 +02:00
Robin NICOLE abc0e51f1e Translated using Weblate (English (United Kingdom))
Currently translated at 0.8% (19 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/en_GB/
2022-06-27 02:32:24 +00:00
Ihor Hordiichuk d342a86cbc Translated using Weblate (Ukrainian)
Currently translated at 100.0% (2239 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/uk/
2022-06-27 02:32:21 +00:00
Nui Harime 7e4b8ac868 Translated using Weblate (Russian)
Currently translated at 98.8% (2213 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ru/
2022-06-27 02:32:20 +00:00
Arusekk 484657ccf9 Translated using Weblate (Polish)
Currently translated at 99.9% (2238 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/pl/
2022-06-27 02:32:18 +00:00
Szimszon 0e94bffd5c Translated using Weblate (Hungarian)
Currently translated at 100.0% (2239 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/hu/
2022-06-27 02:32:17 +00:00
iaiz 838b9477ef Translated using Weblate (Spanish)
Currently translated at 99.5% (2228 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/es/
2022-06-27 02:32:17 +00:00
Glandos bed5f28c2f Translated using Weblate (French)
Currently translated at 100.0% (2239 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/fr/
2022-06-25 11:32:17 +00:00
Cadence Ember e940736938
Combine plugin creation and configuration
As requested in PR feedback.
2022-06-25 15:27:56 +12:00
Maxime NATUREL d3fb12da19 Copy lists/maps when iterating to avoid concurrent exceptions 2022-06-24 17:37:17 +02:00
Maxime NATUREL c581564bb1 Remove non necessary main Handler in LocationSharingService 2022-06-24 17:09:33 +02:00
Maxime NATUREL f57c46de9a Remove non necessary @Synchronized annotations in LocationSharingServiceConnection 2022-06-24 17:08:14 +02:00
Onuray Sahin e63fa2d83f Move epoxy related poll functions back to MessageItemFactory. 2022-06-24 17:28:59 +03:00
Adam Brown e655a54064 removing duplicate fake method 2022-06-24 15:08:48 +01:00
Adam Brown c6ef972e3c adding missing fullstop and removing unused import 2022-06-24 15:08:48 +01:00
Adam Brown 4f09160697 adding logout_devices parameter to the password change sdk api, matching reset password 2022-06-24 15:08:48 +01:00
Adam Brown 6e3283cb34 moving homeserver feature for logout all devices to the selected homeserver state via the LoginFlowResult 2022-06-24 15:08:48 +01:00
Adam Brown a2646c56cf adding the logout all devices state to the reset state in preparation for the UI to take it into account 2022-06-24 15:05:18 +01:00
Adam Brown c10254dbfa exposing if the homeserver supports signing out all devices when starting the reset process 2022-06-24 15:05:18 +01:00
Adam Brown 924e668023 adding missing loading state when confirming password reset
- adds reset test cases to the onboarding view model
2022-06-24 15:05:18 +01:00
Onuray Sahin 532bc18b1e Refactor poll item view state factory. 2022-06-24 16:52:16 +03:00
Maxime NATUREL 945026730c Use ActiveSessionHolder in stop live use case 2022-06-24 15:12:38 +02:00
Maxime NATUREL 519d43ceb7 Simplify loop to remove room args 2022-06-24 14:33:19 +02:00
Maxime NATUREL 81e14c7c3b Observing live status in DB from location sharing Android service 2022-06-24 10:45:49 +02:00
Maxime NATUREL 3cffedd353 Changing in API to get livedata on a live of a given id 2022-06-24 10:45:49 +02:00
Maxime NATUREL 785ce03e67 Synchronizing access to map of roomArgs 2022-06-24 10:45:48 +02:00
Maxime NATUREL 9a39354332 Adding use case to retrieve flow on live summaries given a list of event ids 2022-06-24 10:45:48 +02:00
Maxime NATUREL d50b0fbb6b Adding unit tests for the stop live use case 2022-06-24 10:45:48 +02:00
Maxime NATUREL 8406b2a4eb Adding use case to stop live location share
WIP
2022-06-24 10:45:48 +02:00
Adam Brown 84ece3b575 ignoring inferred registration disabled when going through the sign in flow 2022-06-23 18:17:33 +01:00
Maxime NATUREL a4cae9ef07 Fixing missing "u=" in geo URI pattern for uncertainty 2022-06-23 17:40:16 +02:00
Johannes Marbach 231bd6292a Remove empty textStyle properties
Signed-off-by: Johannes Marbach <johannesm@element.io>
2022-06-23 12:14:02 +02:00
Johannes Marbach ec073552bd Expose pusher profile tag in advanced settings
Signed-off-by: Johannes Marbach <johannesm@element.io>
2022-06-23 10:56:28 +02:00
Onuray Sahin 2be43e9294 Test isVotable function. 2022-06-22 17:18:17 +03:00
Onuray Sahin aab558af09 Test ended poll option view states. 2022-06-22 16:40:11 +03:00
Onuray Sahin d0d2929a84 Test undisclosed option view states. 2022-06-22 16:29:19 +03:00
Benoit Marty 29d4916a2e
Cleanup of #5187 (#6326)
Update design and behaviour on widget permission bottom sheet
2022-06-22 15:04:02 +02:00
Onuray Sahin 8bb421a916 Test poll voted option view states. 2022-06-22 15:44:28 +03:00
Onuray Sahin 0f0492db3b Test ready option view states. 2022-06-22 15:27:04 +03:00
Onuray Sahin 2cf40cbcf2 Test sending option view states. 2022-06-22 14:05:42 +03:00
Onuray Sahin 5a948891f0 Test ready poll state. 2022-06-22 13:27:52 +03:00
Onuray Sahin 2c5ddca821 Test voted poll state. 2022-06-22 13:21:50 +03:00
Onuray Sahin 0fe4b9f07f Test undisclosed poll state. 2022-06-22 12:57:50 +03:00
Onuray Sahin 8854b81977 Test ended poll state. 2022-06-22 12:34:52 +03:00
Onuray Sahin a886e93c7e Test sending poll state. 2022-06-22 12:13:53 +03:00
Johan Smits 6da4245efb Translated using Weblate (Dutch)
Currently translated at 100.0% (2239 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/nl/
2022-06-22 06:32:16 +00:00
Priit Jõerüüt cd6d06529e Translated using Weblate (Estonian)
Currently translated at 100.0% (2239 of 2239 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/et/
2022-06-22 06:32:16 +00:00
Cadence Ember 216de6c050
Lint (import ordering) 2022-06-22 13:10:30 +12:00
Onuray Sahin 77dfd5f826 Create initial test class. 2022-06-21 17:26:26 +03:00
Cadence Ember 592f890fac
Fix formatted_body being parsed as Markdown
Background: Clients write Markdown and convert it to HTML before
sending the event. All events are formatted as HTML. However, if an
HTML formatted event happened to include markdown characters, Element
Android would incorrectly render that markdown.

For example, an event with formatted_body: "*test*" should be
displayed as literally *test* with no effects, but Element Android
incorrectly displayed it as test in italics.

This commit fixes this behaviour, making Element Android not parse
Markdown in HTML messages.

From the perspective of most users it will appear that backslash
escapes now work properly (even though this wasn't the real issue).
2022-06-22 02:24:07 +12:00
Onuray Sahin bd9fa48312 Refactor poll item factory to make it testable. 2022-06-21 17:03:56 +03:00
Jorge Martín b5aedd4626 Re-implement lock screen feature using our own implementation. 2022-06-20 17:38:05 +02:00
Onuray Sahin 80abe1f675 Show live location promotional bottom sheet. 2022-06-20 17:04:56 +03:00
Onuray Sahin 13144f078a Implement live location promotional bottom sheet. 2022-06-20 15:41:43 +03:00
Onuray Sahin b37dce7da7 Create layout for promoting live location labs flag. 2022-06-20 15:19:22 +03:00
Maxime NATUREL 32c6281dd2
Merge pull request #6316 from vector-im/fix/mna/crash-offline-lls
[Location sharing] Fix crash when starting/stopping a live when offline (PSF-1124)
2022-06-20 14:00:56 +02:00
Maxime NATUREL 0948cab31f
Merge pull request #6304 from vector-im/feature/mna/location-sharing-service-api
[SDK] Improve location sharing service api (PSF-1004)
2022-06-20 13:48:13 +02:00
Onuray Sahin 9641ff132d Show live location sharing option even if labs flag is disabled. 2022-06-20 13:58:28 +03:00
Jorge Martin Espinosa 65bc4acbab
Fix flaky tests for voice recording feature (#6330) 2022-06-20 09:23:02 +00:00