The following properties added to the path v2 dto:
- suggestedMinPriorityFee
- suggestedMaxPriorityFee
- currentBaseFee
Path model of the new send modal updated with those properties.
Closes#17037
Fixes#16832
Implements all the needed basic Nim functions for the new onboarding.
They do no do anything just yet. They shall be integrated in another commit.
Fixes#16896
The problem was that we relied on the `SIGNAL_PINNED_MESSAGES_LOADED` event to apply the pinned status to messages, but that only happens at the start and a lot of messages are not loaded at start if they are not in the first 30 messages.
To fix this, I just added `pinnedBy` to the Message object in status-go. This way, we can easily tell straight from the MessageDto if a message is pinned and by whom.
- we have a dedicated asset category for them; makes no sense to try to
parse the path to the emoji file and treat it as an (SVG) image
- also fix the signal calls; over time more params were added and not
all the calls were adjusted
- fix selecting the "Chats" category, `model.colorHash.toJson()` is not
something we can do directly in QML :)
- fix group chat images
* fix(block): fix context menus not updating when blocking/unblocking
Fixes#16948
* fix(cr): fix context menus not containing the contact request info
Fixes#16952
Part of #16832
Adds the basic files needed for the new onboarding, aka onboarding V2.
It does not do anything yet, but it's ready to be implemented.
It is locked behind a feature flag.
To enable it, run the app with `export FLAG_ONBOARDING_V2_ENABLED=1`
- listen to the NIM's signal `SIGNAL_REMOVED_TRUST_STATUS`
- emit a signal for QML signal accordingly
- emit a toast/notification as a result
Fixes#16949
Fixes#16640
This makes it so that when you block a contact, it now also removes the chat and the messages as expected by the requirements and as Mobile does.
To do so, I use the same API as mobile instead of the forked desktop one. I removed the desktop one as it is no longer needed (see status-go PR)
I also fixed an issue when unblocking where it would send a double toast messages with one saying you "removed the contact", but it was already removed.
Fixes#16967
I cannot confirm for sure if the crash is fixed.
However, using the trace from the crash, I removed the function that caused the crash, since it's not useful, and since then, I couldn't reproduce the issue.
The problem is that the issue was not that easily reproducible.
* chore: identify version numbers using a git tag
- remove VERSION file
- expose the `GIT_COMMIT`so that we can properly construct the web links
when the user clicks the version number in Settings/About
- some smaller cleanups and warning fixes
Fixes#12349
* fix_: ci artifact version and use version scripts
---------
Co-authored-by: Igor Sirotin <sirotin@status.im>
Fixes#16741
The problem was that we replaced the ContentType from Image to Text, so on restart, it doesn't understand it had images anymore.
Fixed in status-go by reusing the ContentType of the original message.
This makes it so that we don't need to pass the ContentType from Nim anymore, so I removed that param from the code.
Fixes#16803 and #16804
When we finally do the call to go to the main app, we check if we were doing a login or an onboarding and then send a metric (if enabled)
* refactor(contacts): refactor 5 contact models into one and filter in QML
Fixes#16549
Refactors the 5 types of contact models (all, mutuals, banned, received and sent) into only the `allContacts` and use an Adaptor on the QML side to filter into the needed models.
This cleans the Nim side a lot and makes applying updates to the contacts' model way simpler.
* chore(contacts): remove useless and duplicated contact properties
OptionalName and isSyncing were never used.
DefaultDisplayName was not really used and is actually a duplication of preferredDisplayName, so I replaced the limited usages of DefaultDisplayName by preferredDisplayName
* refactor(contacts): improve updates by not removing and re-adding
We used to update contact items by removing them from the models and re-adding them. This is highly inefficient.
Instead, the proper way is to update only the values that changed.
* user_model: onItemChanged signal removed
* user_model: sorting by online status no longer needed on nim side
* Chat/RootStore: contactsModel property removed
* ContactsStore encapsulation improved
* ContactsStore: contacts model adaptor moved outside store
---------
Co-authored-by: Michał Cieślak <michalcieslak@status.im>