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

fix: Update the Wallets page to put bank accounts at top. #46380

Merged
merged 10 commits into from
Aug 6, 2024

Conversation

Krishna2323
Copy link
Contributor

@Krishna2323 Krishna2323 commented Jul 28, 2024

Details

Fixed Issues

$ #46242
PROPOSAL: #46242 (comment)

Tests

  1. Go to /settings/wallet
  2. Verify the design with the mock up attached below
  • Verify that no errors appear in the JS console

Offline tests

  1. Go to /settings/wallet
  2. Verify the design with the mock up attached below

QA Steps

  1. Go to /settings/wallet
  2. Verify the design with the mock up attached below
  • Verify that no errors appear in the JS console

PR Author Checklist

  • I linked the correct issue in the ### Fixed Issues section above
  • I wrote clear testing steps that cover the changes made in this PR
    • I added steps for local testing in the Tests section
    • I added steps for the expected offline behavior in the Offline steps section
    • I added steps for Staging and/or Production testing in the QA steps section
    • I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
    • I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
    • I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).
  • I included screenshots or videos for tests on all platforms
  • I ran the tests on all platforms & verified they passed on:
    • Android: Native
    • Android: mWeb Chrome
    • iOS: Native
    • iOS: mWeb Safari
    • MacOS: Chrome / Safari
    • MacOS: Desktop
  • I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
  • I followed proper code patterns (see Reviewing the code)
    • I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
    • I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
    • I verified that comments were added to code that is not self explanatory
    • I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
    • I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
      • If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:
    • I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
    • I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
    • I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
    • I verified the JSDocs style guidelines (in STYLE.md) were followed
  • If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
  • I followed the guidelines as stated in the Review Guidelines
  • I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
  • I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
  • I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
  • I verified that if a function's arguments changed that all usages have also been updated correctly
  • If any new file was added I verified that:
    • The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory
  • If a new CSS style is added I verified that:
    • A similar style doesn't already exist
    • The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))
  • If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
  • If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
  • If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
  • If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
  • If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:
    • I verified that all the inputs inside a form are aligned with each other.
    • I added Design label and/or tagged @Expensify/design so the design team can review the changes.
  • If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
  • If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
android_native_wallet_enabled.mp4
android_native.mp4
Android: mWeb Chrome
android_chrome_wallet_enabled.mp4
android_chrome.mp4
Monosnap (9) New Expensify 2024-08-04 13-45-27
iOS: Native
ios_native_wallet_enabled.mp4
ios_native.mp4
iOS: mWeb Safari
ios_safari_wallet_enabled.mp4
ios_safari.mp4
Monosnap (9) New Expensify 2024-08-04 13-45-27
MacOS: Chrome / Safari web_chrome_wallet_enabled web_chrome Monosnap (9) New Expensify 2024-08-04 13-45-11
MacOS: Desktop
desktop_app_wallet_enabled.mp4
desktop_app.mp4
Monosnap  $250  Update the Wallets page to put bank accounts at top · Issue #46242 · Expensify:App 2024-07-28 21-28-47

Signed-off-by: krishna2323 <belivethatkg@gmail.com>
@Krishna2323 Krishna2323 requested review from a team as code owners July 28, 2024 15:59
@melvin-bot melvin-bot bot requested review from paultsimura and removed request for a team July 28, 2024 15:59
Copy link

melvin-bot bot commented Jul 28, 2024

@paultsimura Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button]

@dubielzyk-expensify
Copy link
Contributor

Could we get some mobile screenshots as well? 😄

@paultsimura
Copy link
Contributor

Right, @Krishna2323 please keep the PR in draft until you have the checklist filled out.

@Krishna2323 Krishna2323 marked this pull request as draft July 29, 2024 06:23
@shawnborton
Copy link
Contributor

Let us know when this is ready for review. Also, do you have the correct design asset for this? I think the screenshot in the original comment is actually just a mockup from Figma, right?

@Krishna2323
Copy link
Contributor Author

@shawnborton, not yet, sorry I missed to add the comments yesterday.

  • I need the illustration for the bank account section.
  • And new section title instead of Send and recieve money with friends. Since it will be the same as the subtitle when wallet is connected.

Sorry if that's not clear, I will share more details when I'm at my desk. Currently I am texting from my mobile.

@shawnborton
Copy link
Contributor

Sounds good, here is the asset you need which should be shown at 262x152: emptystate__big-vault.svg.zip

Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
@Krishna2323
Copy link
Contributor Author

Krishna2323 commented Jul 30, 2024

@paultsimura, can you please confirm the translation in Slack 🙏🏻? I'm not in the slack channel 🥲. I will add the screenshots once this is confirmed. The code changes are completed for now.

balance: 'Balance',
balance: 'Saldo',

walletEnabledToSendAndReceiveMoney: 'Your wallet has been enabled to send and receive money with friends.',
walletEnabledToSendAndReceiveMoney: 'Tu billetera ha sido habilitada para enviar y recibir dinero con amigos.',

addBankAccountToSendAndReceive: 'Adding a bank account allows you to get paid back for expenses you submit to a workspace.',
addBankAccountToSendAndReceive: 'Añadir una cuenta bancaria te permite cobrar los gastos que envíes a un espacio de trabajo.',

@paultsimura
Copy link
Contributor

Requested. I will update here once I have a confirmation.

@paultsimura
Copy link
Contributor

@Krishna2323 please use:

balance
en: 'Balance',
es: 'Saldo',


walletEnabledToSendAndReceiveMoney
en: 'Your wallet has been enabled to send and receive money with friends.',
es: 'Tu billetera ha sido habilitada para enviar y recibir dinero con amigos.',


addBankAccountToSendAndReceive 
en: 'Adding a bank account allows you to get paid back for expenses you submit to a workspace.',
es: 'Agregar una cuenta bancaria te permite recibir reembolsos por los gastos que envíes a un espacio de trabajo.',

The link for the message in the checklist would be https://expensify.slack.com/archives/C01GTK53T8Q/p1722373936700779?thread_ts=1722366377.630019&cid=C01GTK53T8Q

Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
@Krishna2323 Krishna2323 marked this pull request as ready for review July 31, 2024 20:53
@Krishna2323
Copy link
Contributor Author

@paultsimura, all recordings added, ready for review now.

cc: @Expensify/design

@dubielzyk-expensify
Copy link
Contributor

According to the mock in this issue the currency should be using our Expensify New Kansas typeface. I'm not 100% sure the exact style/class to apply but it's the one we use on a report/expense screen.

CleanShot 2024-08-01 at 10 23 00@2x

Here's the mock from @shawnborton :
CleanShot 2024-08-01 at 10 23 33@2x

@shawnborton
Copy link
Contributor

Yup, I'm using our standard h1 styles in Figma for that one. But my thinking is to make it look a bit more like the amount field in the expense view elsewhere in the app:
CleanShot 2024-08-01 at 06 11 16@2x

...which uses h2, so maybe we just use h2 here and we get this:
image

This comment has been minimized.

@shawnborton
Copy link
Contributor

@trjExpensify @anmurali @danielrvidal @kevinksullivan did we decide that we want the assigned cards section to be at the very bottom, or right below bank accounts?

@paultsimura
Copy link
Contributor

@shawnborton maybe you have any info on how I can enable my wallet?
I'd like to test this case as well. And I also need to check that we don't break the TransferBalancePage styling.

@shawnborton
Copy link
Contributor

I'm not entirely sure how contributors can enable a wallet. @joekaufmanexpensify do you have any ideas there?

From my testing though, it looks like the transfer balance page is working as expected:

CleanShot.2024-08-01.at.06.58.12.mp4

@Krishna2323
Copy link
Contributor Author

@paultsimura, code has been updated.

did we decide that we want the assigned cards section to be at the very bottom, or right below bank accounts?

@trjExpensify @anmurali @danielrvidal @kevinksullivan, please confirm 🙏🏻

@@ -1198,11 +1199,12 @@ export default {
secureAccessToYourMoney: 'Acceso seguro a tu dinero',
receiveMoney: 'Recibe dinero en tu moneda local',
expensifyWallet: 'Billetera Expensify',
sendAndReceiveMoney: 'Envía y recibe dinero desde tu Billetera Expensify.',
sendAndReceiveMoney: 'Envía y recibe dinero desde tu Billetera Expensify',
enableWalletToSendAndReceiveMoney: 'Habilita tu Billetera Expensify para comenzar a enviar y recibir dinero con amigos',
Copy link
Contributor

Choose a reason for hiding this comment

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

Please add a dot at the end here. I know it's an old copy, but we need to align it with the others.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@paultsimura, do we need dot at the end for titles also?

Copy link
Contributor

Choose a reason for hiding this comment

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

No, only for the subtitles

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ohh sorry, I thought you were asking to add the dot to sendAndReceiveMoney. Updated.

Signed-off-by: krishna2323 <belivethatkg@gmail.com>
@paultsimura
Copy link
Contributor

@neil-marcellini I've approved the PR, but there may be a change request based on this question.

@shawnborton should we wait for the response, or can you share your opinion on this?

@shawnborton
Copy link
Contributor

I will bump them internally.

@shawnborton
Copy link
Contributor

Confirming that we want assigned cards as the middle card, below bank accounts and above wallet.

@paultsimura
Copy link
Contributor

we want assigned cards as the middle card, below bank accounts and above wallet.

@Krishna2323 could you please make this re-arrangement?

@neil-marcellini
Copy link
Contributor

I will review once the latest batch of requested changes are addressed. I'll check back on Monday.

Signed-off-by: krishna2323 <belivethatkg@gmail.com>
@Krishna2323
Copy link
Contributor Author

@paultsimura, re-arrangement done. Assigned card will be shown below the bank accounts now.

@paultsimura
Copy link
Contributor

@shawnborton all yours for the final 👀

@shawnborton
Copy link
Contributor

Where can I find updated screenshots that also included an assigned cards section?

@paultsimura
Copy link
Contributor

I don't think contributors can assign cards as well as enable the wallet. Can we? 🤔

@shawnborton
Copy link
Contributor

Okay, let me spin up a test build and I can test it on my account.

Copy link
Contributor

github-actions bot commented Aug 5, 2024

Copy link
Contributor

@neil-marcellini neil-marcellini left a comment

Choose a reason for hiding this comment

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

The code looks fine to me so good to go pending approval from design. @shawnborton @dubielzyk-expensify

@neil-marcellini neil-marcellini requested review from shawnborton and dubielzyk-expensify and removed request for a team August 5, 2024 19:25
@shawnborton
Copy link
Contributor

Looks good from a design perspective. I think this can be merged!

@neil-marcellini neil-marcellini merged commit c6fb0cc into Expensify:main Aug 6, 2024
16 checks passed
@OSBotify
Copy link
Contributor

OSBotify commented Aug 6, 2024

✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

@OSBotify
Copy link
Contributor

OSBotify commented Aug 7, 2024

🚀 Deployed to staging by https://github.com/neil-marcellini in version: 9.0.18-0 🚀

platform result
🤖 android 🤖 failure ❌
🖥 desktop 🖥 success ✅
🍎 iOS 🍎 success ✅
🕸 web 🕸 success ✅

@OSBotify
Copy link
Contributor

🚀 Deployed to production by https://github.com/mountiny in version: 9.0.18-10 🚀

platform result
🤖 android 🤖 success ✅
🖥 desktop 🖥 success ✅
🍎 iOS 🍎 success ✅
🕸 web 🕸 success ✅

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants