Commit Graph

3399 Commits

Author SHA1 Message Date
Khushboo Mehta a6df4566dd fix(@desktop/wallet): checkConnected API doesnt return correct values
fixes #9833
2023-03-31 19:59:49 +02:00
Stefan 81c3463816 feat(wallet): implement DerivationPathInput control
The enforcing of the derivation path editing rules is done in a structured
way by handling all the changes on the array of `Element` stored in
d.elements and then recomposing the HTML string to be displayed after
every change.

Main limitation is the workaround in `onTextChanged` that regenerates
the text in order to dismiss foreign characters introduced by pasting
which I couldn't find a way to disable without disabling also the ability
to copy content to clipboard.

Highlights:
- Implement DerivationPathInput control that intercepts the modifiable
keyboard events in order to edit the visible TextEdit.text while
respecting the requirements of the derivation path editing
- Implement a JS Controller that handles the logic of the
  decomposing and recomposing the derivation path string
- Add anew StatusQ with the TextEdit basic look and feel to be used
  in DerivationPathInput control without duplicating the style
- Allow passing modifiable events that are not generating characters in
  order to allow copy to clipboard
- Disable add account when control is in error state
- Limit to maximum 5 elements in the derivation path

Testing:
- Integrate the control with StoryBook for a quick preview of the
  control
- Add unit tests for the Controller basic functionality and regression
  for the main control Item
- Removed forcing x64 architecture on apple arm64 hardware from the
  storybook build configuration

Note: initially the implementation was suppose to be simple parse the
derivation path string edit elements and format it. However, I could not
find a quick way fix the circular dependency issue between editing the
text and reformatting it. The solution was to use a one way from the
structured data to the formatted string which complicates the
implementation logic.

Closes: #9890
2023-03-31 18:14:50 +04:00
Igor Sirotin 14c264e350
feature(Syncing): Embed QR code scanner for syncing devices on onboarding (#9981)
* fix(StatusQrCodeScanner): Improve QR code scanner
- Almost async loading
- Added camera selector
- Added `captureRectangle` property
- Add component info to sandbox qr code scanner page
- Embed QrCodeScanner into desktop app
* Compile and link qzxing as shared library
* Hardcode settingCurrentNetwork. Propagate inputConnectionString errors.
* Added qzxing libdir to e2e tests ld_library_path
2023-03-30 20:57:18 +03:00
mprakhov f0d57d19cf fix(@desktop/messages): show reply header if we send image 2023-03-30 16:49:09 +02:00
Boris Melnik efc9ba41d3 feat(SplashScreen): Display recommendation do not close the app on re-encryption process
Fixes: #10039
2023-03-30 09:59:42 -04:00
Noelia 6752d274e1 fix(MintToken): Initial item updated according to `tokenModel` changes
Updated stackview with the corresponding initial item  when `tokenModel` changes.
2023-03-29 15:37:02 +02:00
Noelia 3db1ce70d1 fix(MintToken): Fixed `deployState` property binding
Created `instantiator` object as a mediator to establish appropriate binding between property model and `CommunityCollectibleView`

Closes #10013
2023-03-29 15:37:02 +02:00
Michał Cieślak 27c891fc18 feat(communities): AirdropTokensSelector component added
Closes: #9798
2023-03-29 14:25:46 +02:00
Jonathan Rainville e5ff0b4a6a fix(images): fix second pasted image replaces the first one
Fixes #9966

Uses the validate function to paste images so that it concatenates the previous images.
FIxes the validate function to also accept data images.
Moves the size validation function to Utils to reuse the data path prefix constant and fix the possible crash when we try to get the size of a data image.
2023-03-28 13:48:10 -04:00
mprakhov b580f0a810 feat:(@desktop/channels): loading state when switching channels/chats 2023-03-28 13:12:58 -04:00
Sale Djenic 5479880cde chore(@desktop/wallet): add account modal - improvements
- `AddAccountStore` moved to `AddAccountPopup`
- watch only address' placeholder text updated
- emoji popup button added to the right side of the account name input field
- `validateMnemonic` proc from accounts service updated
2023-03-28 18:09:39 +02:00
Sale Djenic 51058d9065 feat(@desktop/wallet): new add account modal - amends
Closes: #10020
2023-03-28 18:09:39 +02:00
Sale Djenic 223e4f1bc2 feat(@desktop/wallet): new "Add Account" modal added
Closes: #9733
2023-03-28 18:09:39 +02:00
Sale Djenic 7b16a93cc0 chore(@desktop/wallet): old add account modal and corresponding methods from `walletSectionAccounts` module removed 2023-03-28 18:09:39 +02:00
MishkaRogachev 8eba843a5e fix(Chat): Fix pin popup and actions for communities and group chats 2023-03-28 11:05:07 -04:00
MishkaRogachev 4d4ec22ba6 feat(Chat): Disable unpin action for PinnedMessagesPopup 2023-03-28 11:05:07 -04:00
MishkaRogachev 1f54d96f5f feat(Chat): Disable chat actions for non-contacts 2023-03-28 11:05:07 -04:00
MishkaRogachev ad4838e4f8 feat(Chat): Disable sending messages for non contacts
Close #9899
2023-03-28 11:05:07 -04:00
Alex Jbanca 75571c9f22 fix(StatusItemsSelector): Allow icons to be provided by the model
Fixing https://github.com/status-im/status-desktop/issues/9766
The main change is that the model will now provide the image type, on top of the image source. The image type can be either icon or image. Icons will be coloured with the same colour as the text.
2023-03-28 12:46:20 +03:00
Alex Jbanca 17834ecbc1 fix(MintTokens): Use localised amount for total supply
Fixing: https://github.com/status-im/status-desktop/issues/9763
Changes:
1. Use int to pass around the supply amount from one component to another
2. Transform the supply amount to localised string when it is displayed to the user.
2023-03-28 12:17:02 +03:00
Michal Iskierko c8aefe4e66 feat(@desktop/communities): Airdrop community tokens
Issue #9783
2023-03-27 19:43:10 +02:00
Jonathan Rainville caebc9b93f fix(community-members): fix pending request buttons + updates
Fixes #9973

The buttons didn't work because we weren't using the right model + the section model didn't expose the PendingMemberRequestsModel.
I also fixed the service to update the community correctly and send the event. It should feel snappy-er to approve someone now.
2023-03-27 11:17:34 -04:00
Michal Iskierko d759bda81d fix(@desktop/communities): Computing fees in ETH and USD for Sign Transaction dialog
Issue #10007
2023-03-27 16:25:49 +02:00
Alex Jbanca 2142a6bf9c fix(ActivitiCenterTolltip): Position tooltip arrow in the middle of the button 2023-03-27 14:19:43 +03:00
Pascal Precht 81d4ea05e9 fix(communities): only require auth for token gated communities
There's a bug that all requests to join a community require the user to
authenticate themselves. This should only be needed for community that
are token permissioned.

This commit fixes it by only performing auth when requesting from the
tokengated community view.

Fixes #10010
2023-03-24 15:22:47 -04:00
Jonathan Rainville 9d0e14b680 refactor(chats): separate calls to getChats for each section
Fixes #9858
2023-03-24 13:05:19 -04:00
Lukáš Tinkl d75d723f5e fix: unbreak importing community from settings
the ProfileSectionStore is simply missing the required method to proceed
(note that this popup is used in 2 different contexts; the one in
Community Portal works fine due to the fact it's passed a different
store!)
2023-03-24 17:53:06 +01:00
Lukáš Tinkl c65de87ad0 fix: unbreak displaying community invitation bubble
it would fail to fetch the community info due to the undefined variable
name
2023-03-24 17:53:06 +01:00
Khushboo Mehta 5b3a115f55 fix(@desktop/wallet): Loading screen after adding account
1. Removing logic for loading to nim
2. Handling error state for asset view also on the nim side

fixes #9648
2023-03-24 17:09:09 +01:00
Michał Cieślak 2f3392c7d5 feat(HoldingsDropdown): Open list of all tokens by default when no own/community tokens 2023-03-24 16:09:01 +01:00
Michał Cieślak 5b9017757f feat(HoldingsDropdown): All listed assets / collectibles submenu
Closes: #9263
2023-03-24 16:09:01 +01:00
Noelia b3af519476 feat(HoldingsDropdown): Enable navigation to mint tokens settings section
It enables navigation from holdings dropdown to mint tokens settings view.
2023-03-24 14:22:56 +01:00
Noelia 575ee6a226 feat(HoldingsDropdown): Added no data information message
- Added default no data information message for assets and collectibles.
- Added specific no data information message for airdrop functionality.
- Hidden searcher when there is no data available.

Part of #9938
2023-03-24 14:22:56 +01:00
Noelia a6e29ebc03 feat(Airdrop): Show only collectibles in holdings dropdown
Hide Assets tab in HoldingsDropdown until we can airdrop also assets.

Closes #9938
2023-03-24 14:22:56 +01:00
Noelia e36270c844 feat(HoldingsDropdown): Added property `isCollectiblesOnly`
- Added property that allows to switch the holdings dropdown to only be used in collectibles mode.
- Updated storybook accordingly.

Part of #9938
2023-03-24 14:22:56 +01:00
Boris Melnik 30b4d9eb5c fix(chat): Sent images with text correctly
Fixes: #9564 #6374
2023-03-24 14:33:17 +03:00
Noelia 6c3d5c3ab5 fix(MintTokens): Remote Self Desctruct property fix
Remote self destruct property was not rendered properly when minted item was selected.
2023-03-24 12:08:00 +01:00
Noelia 051fc625a2 feat(MintCollectibles): Add sign transaction dialog in minting creation flow
It integrates sign mint transaction dialog in mint collectibles flow.
Mocked fee data, it still needs backend integration.

Closes #9802
2023-03-24 12:08:00 +01:00
Noelia 6bd8a18d93 feat(MintToken): Created sign mint token transaction popup
New popup created.

Part of #9802.
2023-03-24 12:08:00 +01:00
Alex Jbanca d24d233615 fix(JoinCommunityView): Enable activity centre and disable start chat button 2023-03-24 10:41:34 +02:00
Michal Iskierko ec6d35a6bd fix(@desktop/communities): Fix transferable and self destruct token parameters
Fix #10000
2023-03-23 18:30:18 +01:00
mprakhov 21d2c00b40 feat(@desktop/chats): Keep only last 5 chats/channels in the memory 2023-03-23 17:41:24 +01:00
Boris Melnik c8ef6bcd9c fix(MembersSelectorView): Change paste event to parsing text for lookup contacts
Fixes: #9881
2023-03-23 19:16:22 +03:00
Khushboo Mehta 072537f61a feat(@desktop/wallet): Implement connection error screens
fixes #9835
2023-03-23 15:26:22 +01:00
Khushboo Mehta df121445ca fix(@deaktop/wallet): Implement error states with automatic retries
fixes #9688
2023-03-23 15:26:22 +01:00
Pascal Precht 054ad18532 feat: add authentication modal to join commmunity view
Users that request access to community that are token permissioned
need to authenticate and enter their password, so they can reveal
their wallet addresses
2023-03-23 14:28:31 +01:00
Pascal Precht 5e965bcbb7 refactor: make accepting member requests to join async
This is necessary because with community token permissions, when owners
manually accept a request, we a) don't want to block the UI when the
users funds are check on chain and b) in case of insufficient funds,
we'll react with a modal that tells the owner that the user can't be
accepted.

All of that is done in this commit.
2023-03-23 14:11:04 +01:00
Jonathan Rainville ff5c618c82 fix(AC): fix store so that community request buttons work in the AC
Fixes #9988
2023-03-23 11:39:46 +01:00
Alex Jbanca ee5e72b088 fix(HoldingsDropdown): Add basic focus management and keyboard support
Closing #9967

When Holdings dropdown is open, activate focus to searcher in assets and collectibles. Changes focus to ENS input in case ENS tab is active.
In Holdings dropdown, when ENS tab is active and Add button is enabled, pressing enter key should behave same than clicking on the button itself.
In Holdings dropdown, when one asset or collectible has been selected, activate focus in the amount input, then when Add button is enabled, pressing enter key should behave same than clicking on the button itself.
2023-03-23 12:24:05 +02:00
Alex Jbanca 7e9e3ee252 fix(HoldingsDropdown): Implement dynamic height 2023-03-23 09:29:19 +02:00