Consolidate integration to one Connection screen - #102265
Krishna2323 wants to merge 38 commits into
Conversation
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
|
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 bun ./scripts/generateTranslations.ts --helpTypically, you'd want to translate only what you changed by running |
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
|
Sorry, marked it as ready by mistake. It's still in progress. |
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
…ltip Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
|
I think we can trigger it much earlier, I was surprised not to see three columns in my screenshot above. We have so much empty space in each card. |
…cted, tighten the card gap, keep the selected tab Signed-off-by: krishna2323 <belivethatkg@gmail.com>
|
Updated:
Monosnap.screencast.2026-10-01.16-08-34.mp4 |
|
@Expensify/design I was trying to make the columns auto-wrap based on the available space, and here's the result. Each card is at least 300px wide. Does that work? Should I push it for testing? Monosnap.screencast.2026-10-01.16-46-58.mp4 |
|
That feels more expected to me personally, but let's see what JDubz thinks! |
Agreed. 👍 |
|
Other than that, looking good! I didn't test the presence of |
LGTM 👍 Agree with the other comments. Looking real good and very close on this. Thanks for the great testing and comments |
|
Great, let's get this out of draft and into C+ review. |
|
@JS00001 could you please run the translations script? Thanks! |
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
… breakpoint Signed-off-by: krishna2323 <belivethatkg@gmail.com>
|
@situchan could you please start reviewing this when you get a chance? The failing checks are only from missing translations, and I'll add those once the translation script runs. I'll also add the recordings shortly, but that shouldn't block testing. |
|
The changes are quite big. |
🦜 Polyglot Parrot! 🦜Squawk! Looks like you added some shiny new English strings. Allow me to parrot them back to you in other tongues: The diff is too large to include in this comment (130KB), so I've created a gist for you: 📋 View the translation diff here 📋 Note You can apply these changes to your branch by copying the patch to your clipboard, then running |
|
ran translations, do you guys have an internal eng for this issue? Maybe someone from the integrations projects? |
Signed-off-by: krishna2323 <belivethatkg@gmail.com>
|
Oops, I tagged you because it became muscle memory to tag you on UI issues 😅 @JmillsExpensify, who’s gonna handle this one? |
|
Assigned Lucien. |
@lakchote what do you think about this? I'm fine either way. Adding a beta would be a bit more work for me, so I'd prefer not to if we don't really need it 😅 |
|
I am open to any idea which doesn't lead to revert after several blockers found by QA |
| policyID={policyID} | ||
| accessVariants={[CONST.POLICY.ACCESS_VARIANTS.ADMIN]} | ||
| featureName={config.featureName} | ||
| policyFeature={CONST.POLICY.POLICY_FEATURE.MORE_FEATURES} |
There was a problem hiding this comment.
Adding policyFeature makes this page check read access instead of its previous admin check.
As a result, an auditor can now open a direct Xero or Uber offer link and press Connect.
Can you fix this?
|
I’d prefer a beta here given the changes to navigation, permissions and integration setup @Krishna2323. That would let us switch back if testing finds problems. The issues already identified and failing checks should still be fixed too |



Explanation of Change
Fixed Issues
$ #101509
PROPOSAL
Tests
Setup: use a Control workspace where you're an admin. Connect QuickBooks Online (or Xero) to it, plus one HR provider (for example BambooHR) and Uber for Business.
/workspaces/<policyID>/accountingor/hr. Check that it doesn't crash and doesn't show a blank screen.Mobile (iOS and Android):
Repeat steps 1–3 and step 7.
Check that the back button on the Connections page and on each panel returns to the previous screen.
Check that the footer's ">" lines up with the text.
Verify that no errors appear in the JS console
Offline tests
QA Steps
Same as tests
Verify that no errors appear in the JS console
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: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari