Happens occasionally that the app crashes during the profile keypair migration flow.
It happens cause during that flow in one moment the app gets locked, cause encryption
gets changed, but some parts of the app may still try to get some data from the db (as an
action for some async event or so). That action results as the app crash. In such cases
an exception will be thrown, but it needs to be handled in functions which are doing a call.
`fetchAccounts` is guarded in this commit, cause crash was initiated there, cause it didn't
handle a call appropriately using try/catch block.
A custom `IS_MACOS` constant introduced which represents os defined
macosx, cause for devs working on macos is easier to change a single constant
in a single place to simulate some how the app would behave in some cases on
other platforms.
For example if the dev is working on macos, it's not possible to simulate linux only or
win only features that way, but it's definitely possible to check if mac only features are
not visible on other platforms.
since this component is performance critical, optimize it some more by
extracting some common constants so that they don't have to revaluted
every time
- Updated initial dropdown view for assets and collectibles to directly show the list of corresponding elements.
- Updated assets and collectibles panel when an item is selected, according to new design.
- Updated collectibles logic when amount is 1.
- Added collectibles group item as part of the selectable's options.
- Updated `storybook` according to new changes.
- Created reusable `TokenItem` component.
- Updated `CommunityPermissionsHelpers`.
Closes#9043
Old `state_factory` logic is splitted in three more files. Now it represents only
an interface, but implementation logic is placed in the following three files:
- `state_factory_general_implementation.nim`
- `state_factory_state_onboarding_implementation.nim`
- `state_factory_state_login_implementation.nim`
Updated `walletInitSteps` and `settingsSteps` properly: `settingsSteps.py` was referring to some `wallet_init_steps` methods but it was not imported. Reorganization and cleanup.
Because the context menu relied on `unparsedTex` it was unable to preserve the pubkey<->displayName conversion when
copying messages to the clipboard.
This commit fixes it by introducing a new `replacePubKeysWithMentions` utility
which is used when message items are initialized, resulting in `unparsedText`
to keep th`@`mentions around.
Closes#9168
The date parsing is time consuming and it needs to be used with care in the delegate
perf(chatScroll): Fix StatusDateGroupLabel comment - standaloneMonthName
perf(chatScroll): fix comments on Optimise timestamps
perf(chatScroll): Optimise timestamps - bring back comment
perf(chatScroll): fix activity notification
Provide the needed data from the nim model directly to the delegate. This way whenever a delegate needs to display the data it doesn't need to reach the backend.
perf(chatScroll): Fix comments on Avoid calling the backend on delegate creation/binding
perf(chatScroll): Avoid calling the backend on delegate creation/binding - add TODO comment on senderColorHash default
perf(chatScroll): merge quotedMessageAuthor details
perf(chatScroll): Fix nim tests
perf(chatScroll): Fix merge error - messages_model.nim
Adding .pragma library to the js libraries because the entry point on these libraries were called multiple times. There is no need to share the qml context with these libraries.
Use find() instead of forEach() on emoji array to find an item