Skip to content

[HOLD for payment 2024-07-22] [HOLD for payment 2024-07-17] [$250] Search - The Select all checbox is not checked when all the expenses are checked #44801

Closed

Description

@m-natarajan

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


issue found when validating 44385
Version Number: 9.0.4.0
Reproducible in staging?: y
Reproducible in production?: no new feature
If this was caught during regression testing, add the test name, ID and link from TestRail: n/a
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause internal team
Slack conversation:

Action Performed:

Precondition:

  • User has paid and unpaid expenses.
  1. Go to staging.new.expensify.com
  2. Go to Search > Expenses.
  3. Click on Select all checkbox.

Expected Result:

The Select all checbox will be checked when all the expenses are checked.

Actual Result:

The Select all checbox is not checked when all the expenses are checked.

Workaround:

Can the user still use Expensify without this being fixed? Have you informed them of the workaround?

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android: Native
  • Android: mWeb Chrome
  • iOS: Native
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Bug6532517_1720043062739.20240704_054243.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01cc02085472b9db82
  • Upwork Job ID: 1808737057762476275
  • Last Price Increase: 2024-07-04
  • Automatic offers:
    • dukenv0307 | Reviewer | 102993219
    • nkdengineer | Contributor | 102993222
    • c3024 | Contributor | 102998392
Issue OwnerCurrent Issue Owner: @dukenv0307

Activity

  1. added
    DeployBlockerCashThis issue or pull request should block deployment
    BugSomething is broken. Auto assigns a BugZero manager.
    DeployBlockerIndicates it should block deploying the API
    on Jul 4, 2024
  2. melvin-bot commented on Jul 4, 2024

    @melvin-bot

    Triggered auto assignment to @techievivek (DeployBlockerCash), see https://stackoverflowteams.com/c/expensify/questions/9980/ for more details.

  3. melvin-bot commented on Jul 4, 2024

    @melvin-bot

    Triggered auto assignment to @mallenexpensify (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

  4. github-actions commented on Jul 4, 2024

    @github-actions
    Contributor

    👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

    1. Identify the pull request that introduced this issue and revert it.
    2. Find someone who can quickly fix the issue.
    3. Fix the issue yourself.
  5. m-natarajan commented on Jul 4, 2024

    @m-natarajan
    Author

    @mallenexpensify FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors

  6. m-natarajan commented on Jul 4, 2024

    @m-natarajan
    Author

    We think that this bug might be related to #vip-vsb

  7. nkdengineer commented on Jul 4, 2024

    @nkdengineer
    Contributor

    Proposal

    Please re-state the problem that we are trying to solve in this issue.

    The Select all checbox is not checked when all the expenses are checked.

    What is the root cause of that problem?

    The item in expenses search doesn't have the text field

    Screenshot 2024-07-04 at 11 39 42

    So when all items are checked, only one is added to selectedOptions array

    if (item.isSelected && !selectedOptions.find((option) => option.text === item.text)) {
    selectedOptions.push(item);
    }

    And then allSelected is false which makes the all checkbox is not checked

    allSelected: selectedOptions.length > 0 && selectedOptions.length === allOptions.length - disabledOptionsIndexes.length,

    What changes do you think we should make in order to solve the problem?

    We should compare the keyForList field here instead of the text field

    if (item.isSelected && !selectedOptions.find((option) => option.keyForList === item.keyForList)) {
        selectedOptions.push(item);
    }
    

    if (item.isSelected && !selectedOptions.find((option) => option.text === item.text)) {
    selectedOptions.push(item);
    }

    For the search like shared, draft, finished, we should add the keyForList to the item when we get the report section here

    reportIDToTransactions[reportKey] = {
        ...value,
        keyForList: value.reportID,S
        from: data.personalDetailsList?.[value.accountID],
        to: data.personalDetailsList?.[value.managerID],
        transactions,
    };
    

    reportIDToTransactions[reportKey] = {

    What alternative solutions did you explore? (Optional)

    Or we can add the text field to each item in expense search page

  8. 49 remaining items

  9. mallenexpensify commented on Jul 19, 2024

    @mallenexpensify
    Contributor

    @dukenv0307 why don't we want a test case for this?

  10. dukenv0307 commented on Jul 19, 2024

    @dukenv0307
    Contributor

    @mallenexpensify I think the test case is already mentioned in the OP

  11. mallenexpensify commented on Jul 20, 2024

    @mallenexpensify
    Contributor

    The checklist says N/A and it sounds like we likely want one. If it's the same as the in the OP of the issue or PR, please copy/paste below the BZ checklist, you're more familiar with the test steps and the BZ shouldn't assume the steps in the OP are up to date and accurate. Thx

  12. melvin-bot commented on Jul 22, 2024

    @melvin-bot

    @luacmartins, @mallenexpensify, @mountiny, @dukenv0307, @nkdengineer Whoops! This issue is 2 days overdue. Let's get this updated quick!

  13. melvin-bot commented on Jul 24, 2024

    @melvin-bot

    @luacmartins, @mallenexpensify, @mountiny, @dukenv0307, @nkdengineer Eep! 4 days overdue now. Issues have feelings too...

  14. melvin-bot commented on Jul 26, 2024

    @melvin-bot

    @luacmartins, @mallenexpensify, @mountiny, @dukenv0307, @nkdengineer Still overdue 6 days?! Let's take care of this!

  15. mallenexpensify commented on Jul 26, 2024

    @mallenexpensify
    Contributor

    @dukenv0307 👀 plz

    The checklist says N/A and it sounds like we likely want one. If it's the same as the in the OP of the issue or PR, please copy/paste below the BZ checklist, you're more familiar with the test steps and the BZ shouldn't assume the steps in the OP are up to date and accurate. Thx

  16. dukenv0307 commented on Jul 27, 2024

    @dukenv0307
    Contributor

    Thank you @mallenexpensify. I edited the checklists. I'll add the regression steps for the other checklists

  17. melvin-bot commented on Jul 30, 2024

    @melvin-bot

    @luacmartins, @mallenexpensify, @mountiny, @dukenv0307, @nkdengineer Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

  18. mallenexpensify commented on Jul 31, 2024

    @mallenexpensify
    Contributor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionBugSomething is broken. Auto assigns a BugZero manager.DailyKSv2EngineeringExternalAdded to denote the issue can be worked on by a contributor

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions