Conversation
|
Hey, I noticed you changed If you want to automatically generate translations for other locales, an Expensify employee will have to:
Alternatively, if you are an external contributor, you can run the translation script locally with your own OpenAI API key. To learn more, try running: npx ts-node ./scripts/generateTranslations.ts --helpTypically, you'd want to translate only what you changed by running |
|
@ikevin127 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] |
src/pages/Search/SearchAdvancedFiltersPage/SearchFiltersCategoryPage.tsx
Outdated
Show resolved
Hide resolved
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
Ah gotcha, thanks! Will do |
Fixed in latest commit |
yes, follow-up |
Does it also happen when configured rule in OD? If so, not blocker. It's separate bug. |
|
I think we're missing a search box if the list of rules is quite long: Unless that was descoped... otherwise it's standard behavior for long tables I think? cc @Expensify/design @JmillsExpensify for the gut check. |
|
@shawnborton Welcome back from OOO!
There was no mention of search box, neither scoped nor descoped but agree to have this. I'll fix it as follow-up. |
Screen.Recording.2026-01-22.at.5.04.19.PM.movThis also happens on other pages like Categories so out of scope. Happy to take and fix this in a separate issue. |
Descoped for the v1. Let's do it in follow-up. |
Good point. Yes, it's an existing bug. We can handle in follow-up. |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/JS00001 in version: 9.3.7-0 🚀
|
|
🚀 Deployed to production by https://github.com/Beamanator in version: 9.3.7-3 🚀
|





Explanation of Change
support:
Fixed Issues
Part of #75903
Tests
For web, go to https://staging.new.expensify.com/settings/rules
For mobile native, open any chat and send message containing this link. Click on link
Error message tests:
New rulebuttonSave rulebuttonEnter merchant and apply at least one updateMerchantinIf expense contains:sectionPlease apply at least one updateNew rulebuttonThen apply these updates:sectionSave rulebuttonPlease enter merchant(
Create report if necessarychange doesn't account forPlease apply at least one update)Create new rule flow:
New rulebuttonMerchantis required, others fields are optional)Save ruleEdit existing rule flow:
Edit ruleNew ruleSave ruleDelete rule flow:
x selecteddropdown button appearsEdit rule(only when 1 selected),Delete rule(s)menu showsEdit rulebutton should be the same flow as edit flow aboveDelete rule(s)buttonDeletebutton(Note: for all create/edit/delete, selection is cleared after action is done successfully)
Edge cases
Merchantname inIf expense contains:but not blocker. We're already aware of it.SetNameValuePairapis). As of now, it works same as when online. We can discuss what pattern to follow and fix as follow up but not blocker.To avoid PR being reverted due to unexpected deploy blockers (hopefully won't happen), I'll hide
Expense rulestab in Account setting at the time of merge, like we did in phase 1 read-only mode. We can show it back after QA passes and ready to release production.Offline tests
Same as Tests
QA Steps
Same as Tests
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
android.mov
Android: mWeb Chrome
mchrome.mov
iOS: Native
ios.mov
iOS: mWeb Safari
msafari.mov
MacOS: Chrome / Safari
web.mov