Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bottom sheet with save and send options not displayed after scanning wallet QR using universal scanner #18928 #19250

Merged
merged 71 commits into from
Apr 3, 2024

Conversation

mmilad75
Copy link
Contributor

@mmilad75 mmilad75 commented Mar 14, 2024

fixes #18928

** Note that the buttons in the qr scanner screen is just for demo purposes and not included in the codes

scan_address.mp4

@status-im-auto
Copy link
Member

status-im-auto commented Mar 14, 2024

Jenkins Builds

Click to see older builds (79)
Commit #️⃣ Finished (UTC) Duration Platform Result
bb80f0a #1 2024-03-14 10:54:13 ~2 min tests 📄log
✔️ bb80f0a #1 2024-03-14 10:58:56 ~7 min android 🤖apk 📲
✔️ bb80f0a #1 2024-03-14 10:59:22 ~7 min android-e2e 🤖apk 📲
✔️ bb80f0a #1 2024-03-14 11:00:00 ~8 min ios 📱ipa 📲
ff03943 #3 2024-03-15 12:59:59 ~55 sec tests 📄log
✔️ ff03943 #3 2024-03-15 13:05:58 ~6 min android 🤖apk 📲
✔️ ff03943 #3 2024-03-15 13:06:12 ~7 min android-e2e 🤖apk 📲
✔️ ff03943 #3 2024-03-15 13:07:19 ~8 min ios 📱ipa 📲
✔️ 5cf8b46 #4 2024-03-15 16:53:47 ~6 min android-e2e 🤖apk 📲
✔️ 5cf8b46 #4 2024-03-15 16:54:06 ~6 min android 🤖apk 📲
✔️ 5cf8b46 #4 2024-03-15 16:55:50 ~8 min ios 📱ipa 📲
✔️ 4c79dfa #6 2024-03-18 12:58:21 ~5 min tests 📄log
✔️ 4c79dfa #6 2024-03-18 13:00:22 ~7 min android-e2e 🤖apk 📲
✔️ 4c79dfa #6 2024-03-18 13:00:23 ~7 min android 🤖apk 📲
✔️ 4c79dfa #6 2024-03-18 13:00:41 ~8 min ios 📱ipa 📲
✔️ 2b6f910 #7 2024-03-20 17:26:39 ~5 min tests 📄log
✔️ 2b6f910 #7 2024-03-20 17:27:22 ~6 min android-e2e 🤖apk 📲
✔️ 2b6f910 #7 2024-03-20 17:28:44 ~7 min android 🤖apk 📲
✔️ 2b6f910 #7 2024-03-20 17:41:10 ~20 min ios 📱ipa 📲
✔️ 2b6f910 #8 2024-03-22 17:36:31 ~5 min tests 📄log
✔️ 2b6f910 #8 2024-03-22 17:37:53 ~7 min android 🤖apk 📲
✔️ 2b6f910 #8 2024-03-22 17:38:07 ~7 min android-e2e 🤖apk 📲
✔️ 2b6f910 #8 2024-03-22 17:42:27 ~11 min ios 📱ipa 📲
✔️ 9322e00 #9 2024-03-26 09:41:12 ~8 min android-e2e 🤖apk 📲
✔️ 9322e00 #9 2024-03-26 09:41:16 ~8 min android 🤖apk 📲
✔️ 9322e00 #9 2024-03-26 09:43:01 ~9 min ios 📱ipa 📲
✔️ b1792c9 #11 2024-03-26 12:34:44 ~7 min android-e2e 🤖apk 📲
✔️ b1792c9 #11 2024-03-26 12:34:51 ~7 min android 🤖apk 📲
✔️ b1792c9 #11 2024-03-26 12:36:03 ~8 min ios 📱ipa 📲
✔️ b1792c9 #12 2024-03-26 14:05:39 ~10 min ios 📱ipa 📲
✔️ b1792c9 #12 2024-03-26 14:11:16 ~6 min android 🤖apk 📲
✔️ a8b5019 #13 2024-03-26 15:29:51 ~6 min android 🤖apk 📲
✔️ a8b5019 #12 2024-03-26 15:30:11 ~6 min android-e2e 🤖apk 📲
✔️ a8b5019 #13 2024-03-26 15:31:48 ~8 min ios 📱ipa 📲
✔️ 32cd9ad #14 2024-03-27 11:01:48 ~8 min android 🤖apk 📲
✔️ 32cd9ad #13 2024-03-27 11:01:51 ~8 min android-e2e 🤖apk 📲
✔️ 32cd9ad #14 2024-03-27 11:04:07 ~10 min ios 📱ipa 📲
✔️ f8f446b #14 2024-03-28 13:58:32 ~4 min tests 📄log
✔️ f8f446b #14 2024-03-28 14:00:19 ~6 min android-e2e 🤖apk 📲
✔️ f8f446b #15 2024-03-28 14:01:00 ~7 min android 🤖apk 📲
✔️ f8f446b #15 2024-03-28 14:02:24 ~8 min ios 📱ipa 📲
✔️ 15c9ae0 #15 2024-03-28 15:40:48 ~3 min tests 📄log
✔️ 15c9ae0 #16 2024-03-28 15:43:53 ~7 min android 🤖apk 📲
✔️ 15c9ae0 #16 2024-03-28 15:43:53 ~6 min android-e2e 🤖apk 📲
✔️ 15c9ae0 #16 2024-03-28 15:46:08 ~9 min ios 📱ipa 📲
✔️ 82d106a #16 2024-03-28 15:51:26 ~4 min tests 📄log
✔️ 82d106a #17 2024-03-28 15:53:56 ~6 min android-e2e 🤖apk 📲
✔️ 82d106a #17 2024-03-28 15:55:42 ~8 min android 🤖apk 📲
✔️ 82d106a #17 2024-03-28 15:56:15 ~9 min ios 📱ipa 📲
f8f2d3c #18 2024-03-28 17:13:42 ~3 min tests 📄log
✔️ f8f2d3c #19 2024-03-28 17:16:36 ~6 min android-e2e 🤖apk 📲
✔️ f8f2d3c #19 2024-03-28 17:17:46 ~7 min android 🤖apk 📲
✔️ f8f2d3c #19 2024-03-28 17:20:13 ~10 min ios 📱ipa 📲
✔️ 16898b4 #19 2024-03-29 10:52:44 ~4 min tests 📄log
✔️ 16898b4 #20 2024-03-29 10:54:32 ~6 min android 🤖apk 📲
✔️ 16898b4 #20 2024-03-29 10:55:55 ~7 min android-e2e 🤖apk 📲
✔️ ce57df5 #20 2024-03-29 11:02:01 ~4 min tests 📄log
✔️ ce57df5 #21 2024-03-29 11:03:39 ~5 min android-e2e 🤖apk 📲
✔️ ce57df5 #21 2024-03-29 11:05:21 ~7 min android 🤖apk 📲
✔️ ce57df5 #21 2024-03-29 11:06:53 ~9 min ios 📱ipa 📲
✔️ 6b2a44f #21 2024-03-29 13:58:23 ~3 min tests 📄log
✔️ 6b2a44f #22 2024-03-29 14:01:37 ~7 min android-e2e 🤖apk 📲
✔️ 6b2a44f #22 2024-03-29 14:02:29 ~7 min android 🤖apk 📲
✔️ 6b2a44f #22 2024-03-29 14:02:51 ~8 min ios 📱ipa 📲
✔️ b3db159 #22 2024-04-01 11:01:40 ~4 min tests 📄log
✔️ b3db159 #23 2024-04-01 11:03:23 ~5 min android 🤖apk 📲
✔️ b3db159 #23 2024-04-01 11:04:41 ~7 min android-e2e 🤖apk 📲
✔️ b3db159 #23 2024-04-01 11:05:57 ~8 min ios 📱ipa 📲
✔️ b4f104d #23 2024-04-01 12:08:02 ~3 min tests 📄log
✔️ b4f104d #24 2024-04-01 12:09:55 ~5 min android 🤖apk 📲
✔️ b4f104d #24 2024-04-01 12:10:55 ~6 min android-e2e 🤖apk 📲
✔️ b4f104d #24 2024-04-01 12:13:22 ~9 min ios 📱ipa 📲
✔️ 091c91c #24 2024-04-02 16:32:07 ~3 min tests 📄log
✔️ 091c91c #25 2024-04-02 16:33:59 ~5 min android-e2e 🤖apk 📲
091c91c #25 2024-04-02 16:34:13 ~6 min ios 📄log
✔️ 091c91c #25 2024-04-02 16:34:44 ~6 min android 🤖apk 📲
✔️ fca6576 #25 2024-04-02 18:44:34 ~3 min tests 📄log
✔️ fca6576 #26 2024-04-02 18:46:48 ~6 min android 🤖apk 📲
✔️ fca6576 #26 2024-04-02 18:47:52 ~7 min android-e2e 🤖apk 📲
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 8fa4740 #26 2024-04-03 12:37:46 ~4 min tests 📄log
✔️ 8fa4740 #27 2024-04-03 12:39:24 ~6 min android-e2e 🤖apk 📲
✔️ 8fa4740 #27 2024-04-03 12:40:52 ~7 min android 🤖apk 📲
✔️ 8fa4740 #27 2024-04-03 12:52:43 ~19 min ios 📱ipa 📲
✔️ d2ecca8 #28 2024-04-03 13:26:45 ~7 min android-e2e 🤖apk 📲
✔️ d2ecca8 #28 2024-04-03 13:26:46 ~7 min android 🤖apk 📲
✔️ d2ecca8 #28 2024-04-03 13:30:15 ~10 min ios 📱ipa 📲
✔️ d2ecca8 #28 2024-04-03 14:41:50 ~3 min tests 📄log

@mmilad75 mmilad75 force-pushed the milad/18928-add-bottom-sheet-scan-qr-code branch from bb80f0a to ff03943 Compare March 15, 2024 12:58
@mmilad75 mmilad75 changed the base branch from develop to milad/19059-create-new-navigation-flow March 15, 2024 12:58
@@ -119,7 +122,12 @@
(rn/dismiss-keyboard!))
[scan-qr-code/view
{:title (i18n/label :t/scan-qr)
:on-success-scan on-qr-code-scanned}]]))
:on-success-scan on-qr-code-scanned}]
[quo/button
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This button is just for testing and it will be removed in final push.

(str short-name ":")]))
{:size size
:weight weight
:style {:color (colors/resolve-color (or network-name (keyword network)) theme)}}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

btw (keyword network) looks suspicious since network is a map, no?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, the network is a string

(map #(colored-network-text {:theme theme :network % :weight weight :size size}))

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right, but you are also destructuring network up above

(let [{:keys [network-name short-name]} network

so then it's strange that it's a string or a map, probably shouldn't destructure the string in the case that's what it is 🤔

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess

(map #(colored-network-text {:theme theme :network {:network-name %} :weight weight :size size}))

is safer tbh 👍

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But you're destructing here which may be a string here also

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done


(defn view
[]
(let [on-close (fn []
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just to be on the safe side, I would declare it outside the function body, so will not trigger any re-render

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

(as-> networks $
[{:keys [networks address blur? theme format full-address? size weight]
:or {size :paragraph-2}}]
(let [network-text-xf (map #(colored-network-text {:theme theme
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that's quite a lot of work, maybe worth considering doing that in a dedicated sub, but don't have much context

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is -xf?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These codes were written by @ulisesmac and I just copied them

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I renamed to network-colored-text

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

well, -xf is just the suffix for transducers, I see it as a -fn at the end of a var containing a function.

e.g.
image

it comes from xform 👀

@@ -245,8 +245,11 @@
;;;; Networks
(def ^:private networks
{:ethereum "#758EEB"
:eth "#758EEB"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that's fine, two maps is a bit neater, but definitely I would extract the colour if you want to go this way i.e:

(def ... networks
   {:ethereum ethereum-colour
    :eth ethereum-color
   ....

Though i have a slight preference to two maps and translate the key, but no strong opinion

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With help of @J-Son89 , we created a separate map

@mmilad75 mmilad75 changed the title Milad/18928 add bottom sheet scan qr code Bottom sheet with save and send options not displayed after scanning wallet QR using universal scanner #18928 Mar 18, 2024
@mmilad75 mmilad75 requested review from cammellos and J-Son89 and removed request for cammellos March 18, 2024 14:19
@mmilad75 mmilad75 marked this pull request as ready for review March 18, 2024 14:19
@status-im-auto
Copy link
Member

96% of end-end tests have passed

Total executed tests: 48
Failed tests: 1
Expected to fail tests: 1
Passed tests: 46
IDs of failed tests: 703202 
IDs of expected to fail tests: 703503 

Failed tests (1)

Click to expand
  • Rerun failed tests

  • Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_reactions, id: 703202

    Device 3: Wait for text element `EmojisNumber` to be equal to `1`
    Device 3: Find `EmojisNumber` by `xpath`: `//*[starts-with(@text,'This is a test message to check some reactions.')]/ancestor::android.view.ViewGroup[@content-desc='chat-item']/../..//*[@content-desc='emoji-reaction-1']/android.widget.TextView[2]`

    critical/chats/test_group_chat.py:120: in test_group_chat_reactions
        message_element.emojis_below_message(emoji="love").wait_for_element_text(1)
    ../views/base_element.py:181: in wait_for_element_text
        element_text = self.find_element().text.strip()
    ../views/base_element.py:79: in find_element
        raise NoSuchElementException(
     Device 3: EmojisNumber by xpath: `//*[starts-with(@text,'This is a test message to check some reactions.')]/ancestor::android.view.ViewGroup[@content-desc='chat-item']/../..//*[@content-desc='emoji-reaction-1']/android.widget.TextView[2]` is not found on the screen; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception
    



    Device sessions

    Expected to fail tests (1)

    Click to expand

    Class TestCommunityOneDeviceMerged:

    1. test_community_discovery, id: 703503

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Curated communities not loading, https://github.com//issues/17852]]

    Passed tests (46)

    Click to expand

    Class TestOneToOneChatMultipleSharedDevicesNewUiTwo:

    1. test_1_1_chat_delete_via_long_press_relogin, id: 702784
    Device sessions

    2. test_1_1_chat_is_shown_message_sent_delivered_from_offline, id: 702783
    Device sessions

    3. test_1_1_chat_mute_chat, id: 703496
    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_restore_multiaccount_with_waku_backup_remove_switch, id: 703133
    Device sessions

    2. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    3. test_community_undo_delete_message, id: 702869
    Device sessions

    4. test_community_navigate_to_channel_when_relaunch, id: 702846
    Device sessions

    5. test_community_mute_community_and_channel, id: 703382
    Device sessions

    Class TestActivityMultipleDevicePR:

    1. test_navigation_jump_to, id: 702936
    Device sessions

    2. test_activity_center_reply_read_unread_delete_filter_swipe, id: 702947
    Device sessions

    Class TestCommunityMultipleDeviceMerged:

    1. test_community_several_images_send_reply, id: 703194
    Device sessions

    2. test_community_one_image_send_reply, id: 702859
    Device sessions

    3. test_community_emoji_send_copy_paste_reply, id: 702840
    Device sessions

    4. test_community_mark_all_messages_as_read, id: 703086
    Device sessions

    5. test_community_contact_block_unblock_offline, id: 702894
    Device sessions

    6. test_community_edit_delete_message_when_offline, id: 704615
    Device sessions

    7. test_community_message_delete, id: 702839
    Device sessions

    8. test_community_message_send_check_timestamps_sender_username, id: 702838
    Device sessions

    9. test_community_links_with_previews_github_youtube_twitter_gif_send_enable, id: 702844
    Device sessions

    10. test_community_message_edit, id: 702843
    Device sessions

    11. test_community_unread_messages_badge, id: 702841
    Device sessions

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_emoji_send_reply_and_open_link, id: 702782
    Device sessions

    2. test_1_1_chat_text_message_delete_push_disappear, id: 702733
    Device sessions

    3. test_1_1_chat_push_emoji, id: 702813
    Device sessions

    4. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    5. test_1_1_chat_edit_message, id: 702855
    Device sessions

    6. test_1_1_chat_send_image_save_and_share, id: 703391
    Device sessions

    7. test_1_1_chat_pin_messages, id: 702731
    Device sessions

    8. test_1_1_chat_message_reaction, id: 702730
    Device sessions

    Class TestActivityMultipleDevicePRTwo:

    1. test_activity_center_mentions, id: 702957
    Device sessions

    2. test_activity_center_admin_notification_accept_swipe, id: 702958
    Device sessions

    Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_add_contact_field_validation, id: 702777
    Device sessions

    2. test_activity_center_contact_request_accept_swipe_mark_all_as_read, id: 702851
    Device sessions

    3. test_activity_center_contact_request_decline, id: 702850
    Device sessions

    Class TestDeepLinksOneDevice:

    1. test_links_open_universal_links_from_chat, id: 704613
    Device sessions

    2. test_links_deep_links, id: 702775
    Device sessions

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_markdown_support, id: 702809
    Device sessions

    2. test_community_hashtag_links_to_community_channels, id: 702948
    Device sessions

    3. test_community_mentions_push_notification, id: 702786
    Device sessions

    4. test_community_leave, id: 702845
    Device sessions

    5. test_community_join_when_node_owner_offline, id: 703629
    Device sessions

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_pin_messages, id: 702732
    Device sessions

    2. test_group_chat_mute_chat, id: 703495
    Device sessions

    3. test_group_chat_send_image_save_and_share, id: 703297
    Device sessions

    4. test_group_chat_join_send_text_messages_push, id: 702807
    Device sessions

    5. test_group_chat_offline_pn, id: 702808
    Device sessions

    @mmilad75
    Copy link
    Contributor Author

    mmilad75 commented Apr 1, 2024

    @status-im/mobile-qa Can you please test this PR?

    @VolodLytvynenko
    Copy link
    Contributor

    @status-im/mobile-qa Can you please test this PR?

    Hi @mmilad75 Unfortunately, the entire quality assurance team is busy testing the release branch. I will do my best to check this PR as soon as we complete testing on the release. Thank you for your understanding.

    @pavloburykh
    Copy link
    Contributor

    @status-im/mobile-qa Can you please test this PR?

    Hi @mmilad75 Unfortunately, the entire quality assurance team is busy testing the release branch. I will do my best to check this PR as soon as we complete testing on the release. Thank you for your understanding.

    @VolodLytvynenko you can go ahaed and switch to PRs. We are stopping testing release until we figure out what todo with current blockers.

    @VolodLytvynenko
    Copy link
    Contributor

    Hi, @mmilad75, looks great! Thank you for the PR. Please take a look at one issue I found, which could be considered as a follow-up. If better to fix it separately, then PR can be merged

    ISSUE 1: From page is missed after Wallet QR was scanned via opened account

    Steps:

    1. Go to the wallet -> Open account -> tap scan button -> tap 'send' option -> scan the wallet (now the select assets page is directly shown missing "from" page, which is okay because the user selected the current account opening it initially).
    2. Close the scanner ->
    3. Go to the chat page and scan the wallet QR again

    Actual result:

    The 'from' screen is missed

    from.mp4

    Expected result:

    The from the list should be shown after the 'send' option is tapped
    https://www.figma.com/file/HKncH4wnDwZDAhc4AryK8Y/Wallet-for-Mobile?type=design&node-id=11089-181996&mode=design&t=jt3rpqAaVWtCvDS1-0

    @mmilad75 mmilad75 merged commit b0d2e6e into develop Apr 3, 2024
    6 checks passed
    @mmilad75 mmilad75 deleted the milad/18928-add-bottom-sheet-scan-qr-code branch April 3, 2024 14:57
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Projects
    Archived in project
    Archived in project
    Development

    Successfully merging this pull request may close these issues.

    Bottom sheet with save and send options not displayed after scanning wallet QR using universal scanner
    10 participants