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

Poc/split navs #101

Draft
wants to merge 388 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
388 commits
Select commit Hold shift + click to select a range
0fc9470
fix perf tests v2
adamgrzybowski Oct 22, 2024
b23a3f1
Fix bottom tab width in InitialSettingsPage
WojtekBoman Oct 23, 2024
a95797c
Remove some todo comments
WojtekBoman Oct 23, 2024
052d352
Fix getting previousSelectedCentralScreen in adaptStateIfNecessary
WojtekBoman Oct 23, 2024
6701e9f
Remove money request rhp screens from SIDEBAR_TO_RHP
WojtekBoman Oct 24, 2024
a3063c8
Fix issue: Expense - App does not open destination report after submi…
WojtekBoman Oct 24, 2024
d0a1b69
fix: Attachment - New attachment window is opened when switching betw…
adamgrzybowski Oct 24, 2024
0ab9076
Fix issue: Android - No animation when navigating in and out of works…
WojtekBoman Oct 25, 2024
f4dd1bf
Fix issue: Web - Hold - App flickers after entering reason and saving…
WojtekBoman Oct 25, 2024
927c68b
Fix issue: Group - App returns to group settings page after saving gr…
WojtekBoman Oct 25, 2024
8cd6ade
Adjust getTopmostReportActionID and cleanup getTopmostReportID
WojtekBoman Oct 25, 2024
37b5cc0
Merge pull request #116 from software-mansion-labs/poc/fix-attachments
adamgrzybowski Oct 25, 2024
072ea6a
Fix issue: QBO - Preferred exporter/Export date tab do not auto-close…
WojtekBoman Oct 25, 2024
2d30771
Add test steps for issues related to split navigators
WojtekBoman Oct 25, 2024
eb35ca7
Merge pull request #117 from software-mansion-labs/poc/split-dismiss-…
WojtekBoman Oct 25, 2024
34b56d9
Merge branch 'main' into poc/split-navs
WojtekBoman Oct 25, 2024
fac8f6f
fix: Book travel - Unable to select country in company address page
adamgrzybowski Oct 25, 2024
eb8c882
add tests for: Attachment - New attachment window is opened when swit…
adamgrzybowski Oct 25, 2024
79a508f
Merge pull request #118 from software-mansion-labs/poc/fix-country-pi…
adamgrzybowski Oct 25, 2024
ec4a01e
Web - Thread - Highlighted message is not dismissed after clicking on…
adamgrzybowski Oct 28, 2024
287d7ed
fix typo
adamgrzybowski Oct 28, 2024
e8cc9c3
add test
adamgrzybowski Oct 28, 2024
be7fe0d
Merge pull request #119 from software-mansion-labs/poc/link-to-reports
adamgrzybowski Oct 28, 2024
868b305
Fix issue: BA - Back button on connect bank account modal opens incor…
WojtekBoman Oct 28, 2024
fb326c3
fix passing params from rhp in adapted state
adamgrzybowski Oct 28, 2024
b9a1119
fix Search - App returns to Inbox after deleting expense from report …
adamgrzybowski Oct 28, 2024
0f46afb
Merge pull request #120 from software-mansion-labs/poc/fix-adapted-st…
adamgrzybowski Oct 28, 2024
c1d813f
Merge pull request #121 from software-mansion-labs/poc/fix-navigation…
WojtekBoman Oct 29, 2024
223e383
Merge branch 'main' into poc/split-navs
WojtekBoman Oct 29, 2024
30c9748
add comments to RELATIONS files
adamgrzybowski Oct 29, 2024
8fcd73c
fix Submitting expense flow from tabs different than inbox
adamgrzybowski Oct 29, 2024
84f1543
remove forRoute suffix
adamgrzybowski Oct 29, 2024
21e1863
add tests
adamgrzybowski Oct 29, 2024
86fb765
Merge pull request #122 from software-mansion-labs/poc/fix-default-route
adamgrzybowski Oct 29, 2024
92e47ac
Fix issue: Android - Offline indicator is below the app navigation bar
WojtekBoman Oct 29, 2024
8ddbd8e
Merge pull request #123 from software-mansion-labs/poc/split-flix-ban…
adamgrzybowski Oct 29, 2024
f4d7f2e
Fix issue: Expensify Card - App crashes when opening fields in Card d…
WojtekBoman Oct 30, 2024
4c7c320
Fix issue: Expensify Card - Back button on profile returns to member …
WojtekBoman Oct 30, 2024
6dde5fd
Fix issue: Workflow - Not here Page appears when editing first approver
WojtekBoman Oct 30, 2024
dfdd15d
Fix issue: Android - Expensify card - Directed to connect bank accoun…
WojtekBoman Oct 30, 2024
27a356d
Add a test for bank account flow
WojtekBoman Oct 30, 2024
e528b6a
Merge pull request #124 from software-mansion-labs/poc/split-bank-acc…
WojtekBoman Oct 30, 2024
8fa61a2
Fix issue: App opens room details page when tapping RHP back button a…
WojtekBoman Oct 30, 2024
9fd294b
Fix counting distanceToPop in goBack
WojtekBoman Oct 31, 2024
75c3f18
Fix fallbackRoute in selectExportDate in QuickbooksExportDateSelectPage
WojtekBoman Oct 31, 2024
0ad8a87
Merge branch 'main' into poc/split-navs
WojtekBoman Oct 31, 2024
8e44d87
Adjust goUp to handle navigating back when targetState is rootState
WojtekBoman Oct 31, 2024
ed0ebca
Merge pull request #129 from software-mansion-labs/poc/fix-go-up
adamgrzybowski Oct 31, 2024
4c2c180
Fix issue: Track expense - Member list opens again after clicking bac…
WojtekBoman Nov 4, 2024
65b6c89
Adjust getAdaptedState to handle OnboardingModalNavigator
WojtekBoman Nov 4, 2024
6f65c7c
Fix issue: Group chat - Default group chat name when created offline …
WojtekBoman Nov 5, 2024
b213f93
Add test steps for the issue: Opening particular onboarding pages fro…
WojtekBoman Nov 5, 2024
33d6012
Merge pull request #130 from software-mansion-labs/poc/split-navs-ada…
WojtekBoman Nov 5, 2024
0c90d16
Merge branch 'main' into poc/split-navs
WojtekBoman Nov 6, 2024
44bde76
Fix issue: Expense - Report details RHP opens after deleting receipt
WojtekBoman Nov 6, 2024
6fc9f27
adjust navigation patch for new screens and navigators
adamgrzybowski Nov 8, 2024
c52cbaa
implement new freeze wrapper
adamgrzybowski Nov 8, 2024
dab0ad4
use new freeze wrapper
adamgrzybowski Nov 8, 2024
4dbdd23
Merge pull request #134 from software-mansion-labs/poc/freeze-perf
adamgrzybowski Nov 8, 2024
a455bac
Merge branch 'main' into poc/split-navs
WojtekBoman Nov 12, 2024
f6084ec
Adjust getIsScreenBlurred to native platforms
WojtekBoman Nov 12, 2024
122fc6a
Merge pull request #135 from software-mansion-labs/poc/adjust-get-is-…
WojtekBoman Nov 13, 2024
43f48d3
Make ReportsSplitNavigator public
WojtekBoman Nov 14, 2024
b5eb92b
Refactor the comment about state reset after logout
WojtekBoman Nov 14, 2024
4cb080c
Merge pull request #137 from software-mansion-labs/poc/split-login-pa…
WojtekBoman Nov 14, 2024
34d6403
Cleanup ActiveWorkspaceProvider
WojtekBoman Nov 14, 2024
0cd11da
Fix animationTypeForReplace for RHP screens
WojtekBoman Nov 15, 2024
5d978e3
Add GetStateForActionHandlers
WojtekBoman Nov 15, 2024
99166de
Fix ParamList in WorkspacePerDiemPage
WojtekBoman Nov 18, 2024
061f2ca
Fix types in RELATIONS and getAdaptedStateFromPath
WojtekBoman Nov 18, 2024
3659ad0
Remove @todo comment from getAdaptedStateFromPath
WojtekBoman Nov 18, 2024
62b1cda
Remove NAVIGATION.TYPE.UP
WojtekBoman Nov 18, 2024
20efb77
Remove passing CONST.NAVIGATION.ACTION_TYPE.PUSH as a type param to N…
WojtekBoman Nov 18, 2024
2df2704
Fix lint in CustomRouter.ts
WojtekBoman Nov 18, 2024
4849fb7
Rename shouldDismissSideModalNavigator to isNavigatingToModalFromModal
WojtekBoman Nov 18, 2024
0de350b
Merge pull request #138 from software-mansion-labs/poc/split-cleanup
WojtekBoman Nov 18, 2024
e211447
Replace isSearchTopmostRoute with isSearchTopmostFullScreenRoute
WojtekBoman Nov 18, 2024
a846373
Cleanup handleDismissModalAction
WojtekBoman Nov 22, 2024
954a411
Merge branch 'main' into poc/split-merge-native-stacks
WojtekBoman Dec 2, 2024
c7c315e
Adjust split router to native stack
WojtekBoman Dec 2, 2024
785259f
Merge pull request #147 from software-mansion-labs/poc/split-merge-na…
WojtekBoman Dec 2, 2024
9765499
Adjust PlatformStackNavigator typescript and styles to SplitNavigators
WojtekBoman Dec 3, 2024
37203aa
Remove searchRoute from PlatformStack types
WojtekBoman Dec 3, 2024
741ce5f
Add getSplitNavigatorOptions
WojtekBoman Dec 4, 2024
899084b
Add parentRoute to CustomCodeProps
WojtekBoman Dec 4, 2024
861f87a
Fix lint
WojtekBoman Dec 4, 2024
2e212a7
Merge pull request #149 from software-mansion-labs/poc/split-adjust-t…
WojtekBoman Dec 10, 2024
93fa76d
Remove BOTTOM_TAB, cleanup code related to SplitNavigators
WojtekBoman Nov 25, 2024
4ace213
Cleanup config.ts
WojtekBoman Nov 25, 2024
fd99fa8
Remove subscribe
WojtekBoman Nov 25, 2024
d54df17
Remove Navigation.removeScreenFromNavigationState
WojtekBoman Nov 25, 2024
9280e9e
Fix typo in NavigationUtils.ts
WojtekBoman Nov 25, 2024
9fbccec
Add navigation helpers
WojtekBoman Nov 25, 2024
be9cb55
Move navigation functions to helpers package
WojtekBoman Nov 26, 2024
e8749f4
Make goUp private
WojtekBoman Nov 26, 2024
3ed172e
Rename SplitNavigatorLHNScreen to SplitNavigatorSidebarScreen
WojtekBoman Nov 26, 2024
dd7a57c
Rename createSplitNavigator to getInitialSplitNavigatorState
WojtekBoman Nov 26, 2024
2afede2
Fix goBack calls with shouldPopToTop
WojtekBoman Nov 26, 2024
3afe817
Remove LHN_TO_SPLIT_NAVIGATOR_MAPPING
WojtekBoman Nov 26, 2024
324b598
Cleanup navigation types and remove redundant mapping files
WojtekBoman Nov 27, 2024
f44db08
Add missing docs to navigation functions
WojtekBoman Nov 27, 2024
216c812
Cleanup isNavigatorName
WojtekBoman Nov 28, 2024
f46818a
Adjust comment in SIDEBAR_TO_RHP
WojtekBoman Nov 29, 2024
7cf08be
Refactor getTopmostReportParam to getTopmostReportParams
WojtekBoman Nov 29, 2024
21f7bf6
Adjust getOnboardingAdaptedState docs
WojtekBoman Nov 29, 2024
b11cba2
Adjust screen navigation props types
WojtekBoman Dec 11, 2024
b15bcca
Rename SplitStack to Split
WojtekBoman Dec 11, 2024
e69b8f0
Fix tests that use useActiveWorkspace
WojtekBoman Dec 11, 2024
2896031
Fix mocking isSearchTopmostFullScreenRoute in IOUTest
WojtekBoman Dec 11, 2024
686dde6
Update relations files and remove redundant mappings
WojtekBoman Dec 11, 2024
d7d0ff3
Add popToTop method to Navigation.ts
WojtekBoman Dec 11, 2024
097d3c5
Unification of comments in Navigation.ts
WojtekBoman Dec 11, 2024
0ae4aac
Fix goBack in navigateToConciergeChatAndDeleteReport
WojtekBoman Dec 11, 2024
7345d80
Merge pull request #142 from software-mansion-labs/poc/bottom-tab-cle…
WojtekBoman Dec 11, 2024
ade9a19
Merge branch 'main' into poc/split-navs
WojtekBoman Dec 11, 2024
27c6f92
Simplify ActiveWorkspaceContextProvider
WojtekBoman Dec 12, 2024
96289b1
Adjust BaseSidebarScreen workspace reset hook to split navigators
WojtekBoman Dec 12, 2024
18ad376
Remove Navigation.switchPolicyID
WojtekBoman Dec 12, 2024
14068c4
Adjust createInverseRelation, fix SPLIT_TO_SIDEBAR
WojtekBoman Dec 12, 2024
0a11e29
Fix Navigation.popToTop
WojtekBoman Dec 12, 2024
5117a9f
Adjust ResizeScreenTests to SplitNavigator structure
WojtekBoman Dec 13, 2024
08f5c9d
Fix goBack types
WojtekBoman Dec 13, 2024
579608e
Remove useNavigationResetRootOnLayoutChange
WojtekBoman Dec 13, 2024
79202d1
Fix go back using swipe from not found policy page
WojtekBoman Dec 17, 2024
9f5bccb
Hide bottom tab on workspace initial page when policy is not found
WojtekBoman Dec 17, 2024
faeaf9a
Simplify getAdaptedState
WojtekBoman Dec 17, 2024
e7a5150
Add comment to NAVIGATORS.WORKSPACE_SPLIT_NAVIGATOR linking config
WojtekBoman Dec 18, 2024
49c49f9
Handle adding SettingsSplit under WorkspaceSplit in getAdaptedState
WojtekBoman Dec 18, 2024
4620ac7
Add shouldDisplayPolicyNotFoundPage
WojtekBoman Dec 18, 2024
f405f7e
Simplify getRoutePolicyID
WojtekBoman Dec 18, 2024
2e08e1e
Remove backTo param from Workspace Initial Page
WojtekBoman Dec 18, 2024
3e7f16c
Merge pull request #154 from software-mansion-labs/poc/fix-adapt-state
adamgrzybowski Dec 18, 2024
c611aa2
fix copying params for sidebar in adaptStateIfNecessary
adamgrzybowski Dec 18, 2024
7438d33
implement TopLevelBottomTabBar and proper animations
adamgrzybowski Dec 20, 2024
88b9998
Merge pull request #155 from software-mansion-labs/poc/top-level-bott…
adamgrzybowski Dec 20, 2024
28ed8b9
Merge branch 'main' into poc/split-navs
WojtekBoman Dec 20, 2024
99fc247
Fix lint
WojtekBoman Dec 20, 2024
17759f4
Remove Navigation.popToTop and add shouldPopToTop to GoBackOptions
WojtekBoman Dec 20, 2024
1480723
Fix types in getAdaptedStateFromPath
WojtekBoman Dec 20, 2024
af2058d
Add splitNavigator to RootNavigatorOptions
WojtekBoman Dec 30, 2024
98247e3
Merge branch 'main' into poc/split-navs
WojtekBoman Dec 30, 2024
e5fa16b
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 7, 2025
4b2949d
Add resetPolicyIDInNavigationState
WojtekBoman Jan 9, 2025
0a07ab6
add final review adjustments
adamgrzybowski Jan 9, 2025
94f9dfb
remove index file for helpers
adamgrzybowski Jan 9, 2025
1b32364
Fix navigating to workspaces list using settings tab button
WojtekBoman Jan 9, 2025
2d6951a
remove isSplitNavigatorName
adamgrzybowski Jan 9, 2025
84a15f5
Merge pull request #157 from software-mansion-labs/poc/split-reset-po…
WojtekBoman Jan 9, 2025
c81e83d
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 9, 2025
9fbe3d3
Merge branch 'poc/split-navs' into poc/final-review-adjustments
adamgrzybowski Jan 9, 2025
e22f82a
Merge pull request #158 from software-mansion-labs/poc/final-review-a…
adamgrzybowski Jan 9, 2025
e575d1b
fix resetPolicyIDInNavigationState
adamgrzybowski Jan 9, 2025
f4ef875
fix ts problems
adamgrzybowski Jan 9, 2025
3bc1739
Split BOTTOM_TABS const to a separate file to fix imports
Kicu Jan 10, 2025
03e6a6d
Move setNavigationActionToMicrotaskQueue to Navigation.ts
WojtekBoman Dec 23, 2024
c4fa287
Add tests for Navigation.goBack
WojtekBoman Dec 23, 2024
4a6766e
Add tests for Navigation.goBack with comparing route params
WojtekBoman Dec 23, 2024
3acba0a
Add test for going back to previous split
WojtekBoman Dec 30, 2024
5232577
Cleanup and group go back tests
WojtekBoman Dec 31, 2024
0b6c39f
Add test for going back to the page present in the split navigator th…
WojtekBoman Dec 31, 2024
a22cf59
Add NavigateTests
WojtekBoman Dec 31, 2024
3a9fd70
Add SwitchPolicyIDTests
WojtekBoman Jan 7, 2025
c404c02
Create package for navigation tests
WojtekBoman Jan 7, 2025
3960579
Move setNavigationActionToMicrotaskQueue to helpers
WojtekBoman Jan 10, 2025
8bc926d
Refactor old names in nav tests
WojtekBoman Jan 10, 2025
9c9d28c
Move TestNavigationContainer to test utils
WojtekBoman Jan 10, 2025
b21cb6a
Merge pull request #156 from software-mansion-labs/poc/go-back-tests
adamgrzybowski Jan 10, 2025
6589e68
fix tests
adamgrzybowski Jan 10, 2025
f05d53c
fix lint
adamgrzybowski Jan 10, 2025
8648ce7
fix tests v2
adamgrzybowski Jan 10, 2025
3af5702
Adjust useBottomTabIsFocused to splits
WojtekBoman Jan 8, 2025
e07c4f5
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 14, 2025
d514067
Mock TopLevelBottomTabBar in navigation tests
WojtekBoman Jan 14, 2025
5f90743
Fix lint in ReportUtils
WojtekBoman Jan 14, 2025
0812be8
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 16, 2025
c1d8459
Add LinkToOptions
WojtekBoman Jan 14, 2025
c11217d
Adjust navigate calls to LinkToOptions
WojtekBoman Jan 16, 2025
f1bc522
Add backTo param to SelectDelegateRolePage
WojtekBoman Jan 16, 2025
52ce458
fix tooltips for sidebar list
adamgrzybowski Jan 16, 2025
667a052
fix tooltipis on bottom tab bar
adamgrzybowski Jan 16, 2025
21be090
remove leftover style
adamgrzybowski Jan 16, 2025
114b059
Merge pull request #159 from software-mansion-labs/poc/link-to-options
WojtekBoman Jan 16, 2025
36c1238
fix fab tooltip
adamgrzybowski Jan 16, 2025
6d1010f
fix tests and typecheck
adamgrzybowski Jan 16, 2025
2b5299a
Merge pull request #160 from software-mansion-labs/poc/split-tooltips
adamgrzybowski Jan 16, 2025
50f36ea
fix tests v2
adamgrzybowski Jan 16, 2025
ac8a578
change name to isTooltipAllowed
adamgrzybowski Jan 16, 2025
072f0d9
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 16, 2025
8292c1e
fix tests v3
adamgrzybowski Jan 16, 2025
133e7d2
Add optional chaining to useIsBottomTabVisibleDirectly
WojtekBoman Jan 17, 2025
a7207b8
Merge branch 'main' into poc/split-navs
adamgrzybowski Jan 17, 2025
12cf649
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 17, 2025
0da271f
remove unnecessary line
adamgrzybowski Jan 17, 2025
e6a96a4
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 20, 2025
52c7e39
Fix dismissModal in submitPerDiemExpense
WojtekBoman Jan 20, 2025
29d62e7
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 20, 2025
8a45900
create SidebarSpacerWrapper
adamgrzybowski Jan 21, 2025
4bade3d
reorganize screen options
adamgrzybowski Jan 21, 2025
eb76552
fix naming for createSplitNavigator
adamgrzybowski Jan 21, 2025
8c879b0
Fix issue: Web - App opens invite member confirmation page when press…
WojtekBoman Jan 22, 2025
905e986
Merge pull request #163 from software-mansion-labs/splits/fix-safari-…
adamgrzybowski Jan 22, 2025
1b051fd
Fix issue: Workspace settings - Clicking RHP back button does not clo…
WojtekBoman Jan 22, 2025
151f989
Merge pull request #164 from software-mansion-labs/poc/fixes-after-re…
WojtekBoman Jan 22, 2025
045a00f
fix stat index in adaptStateIfNecessary
adamgrzybowski Jan 22, 2025
9bd4941
Merge pull request #165 from software-mansion-labs/splits/fix-split-r…
adamgrzybowski Jan 22, 2025
76c44f9
fix bottom bar over composer on safari mobile
adamgrzybowski Jan 22, 2025
0988220
handle styles for platforms
adamgrzybowski Jan 22, 2025
fbf309c
improve comment
adamgrzybowski Jan 22, 2025
eed4ebc
Merge pull request #166 from software-mansion-labs/splits/fix-safar-b…
adamgrzybowski Jan 22, 2025
2d5107f
Fix search menu overflowing on scrolling on mobile
Kicu Jan 23, 2025
c973fa6
Fix contextual search item missing in router
Kicu Jan 23, 2025
e5fde2a
Merge pull request #167 from software-mansion-labs/kicu/help-navi-search
WojtekBoman Jan 23, 2025
f04858c
Cleanup split navigators code
WojtekBoman Jan 16, 2025
16e4838
Add persistentScreens props
WojtekBoman Jan 17, 2025
422db51
Add useIsCurrentRouteHome
WojtekBoman Jan 17, 2025
1eb0557
Add GetStateForActionHandlers docs
WojtekBoman Jan 17, 2025
20a6ae7
Add docs to showSettingsPage
WojtekBoman Jan 17, 2025
ca99a85
Exclude switchPolicyID logic to navigation helpers
WojtekBoman Jan 17, 2025
c336b80
Fix imports in FAB
WojtekBoman Jan 20, 2025
0c50bef
Remove unnecessary check in SearchPageNarrow
WojtekBoman Jan 20, 2025
d8eaaad
Add getTopmostReportsSplitNavigator
WojtekBoman Jan 20, 2025
4a5d43e
Add replaceWithSplitNavigator
WojtekBoman Jan 20, 2025
0fd49e5
Add warnings to handleOpenWorkspaceSplitAction
WojtekBoman Jan 22, 2025
0e88076
Exclude navigation tests to separate file
WojtekBoman Jan 22, 2025
fc5e1ec
Fix showing tooltips in OptionRowLHN
WojtekBoman Jan 23, 2025
49d50bb
Merge pull request #161 from software-mansion-labs/poc/code-cleanup
WojtekBoman Jan 23, 2025
1437b88
Fix issue: Desktop - Filter by WS - The E icon is misaligned on the r…
WojtekBoman Jan 23, 2025
ecba313
Fix issue: Expense - Amount editor RHP slides in from the right inste…
WojtekBoman Jan 23, 2025
d472353
Fix adding params to additionalAction in linkTo
WojtekBoman Jan 23, 2025
561bab6
Merge pull request #168 from software-mansion-labs/poc/fixes-after-re…
WojtekBoman Jan 23, 2025
7d7a0db
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 23, 2025
ff4a363
Fix imports in InitialSettingsPage
WojtekBoman Jan 23, 2025
65838b5
fix position
adamgrzybowski Jan 23, 2025
c128d35
fix isTooltipAllowed timing issue
adamgrzybowski Jan 23, 2025
acb842c
simplify condition
adamgrzybowski Jan 23, 2025
d1f82ba
Merge pull request #169 from software-mansion-labs/splits/bottom-tab-…
adamgrzybowski Jan 23, 2025
406c209
Fix issue: Contact methods - Lets make sure it is you page appears twice
WojtekBoman Jan 24, 2025
e1778df
Fix issue: Web - Copilot - RHP is not dismissed after adding a copilot
WojtekBoman Jan 24, 2025
4cfdaa8
Fix issue: Workspace - Wrong navigation when opening workspace after …
WojtekBoman Jan 24, 2025
f1b1404
Run prettier
WojtekBoman Jan 24, 2025
750155c
fix xero export page nav bug
SzymczakJ Jan 24, 2025
55bc370
Merge branch 'poc/split-navs' into @szymczak/xero-export-page-nav-bug
SzymczakJ Jan 24, 2025
a0b57dc
Merge pull request #171 from software-mansion-labs/@szymczak/xero-exp…
SzymczakJ Jan 24, 2025
90dcc91
Fix issue: Scan expense - Selecting replace on the receipt of a scann…
WojtekBoman Jan 24, 2025
5bcc320
Merge pull request #170 from software-mansion-labs/poc/fixes-after-re…
WojtekBoman Jan 24, 2025
7b38421
Merge branch 'main' into poc/split-navs
WojtekBoman Jan 24, 2025
95b9ed9
fix blinking of bottom tab
adamgrzybowski Jan 24, 2025
dd31a78
Merge pull request #172 from software-mansion-labs/splits/fix-blinkin…
adamgrzybowski Jan 24, 2025
b6ab4cb
fix misalgined bottom tab bar on empty workspace list
adamgrzybowski Jan 24, 2025
0bd0bc8
Merge pull request #173 from software-mansion-labs/splits/fix-misalig…
adamgrzybowski Jan 24, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion contributingGuides/APPLE_GOOGLE_SIGNIN.md
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ index 4286a26033..850f8944ca 100644
index ca2da6f56b..2c191598f0 100644
--- a/src/libs/Navigation/linkingConfig/prefixes.ts
+++ b/src/libs/Navigation/linkingConfig/prefixes.ts
@@ -8,6 +8,7 @@ const prefixes: LinkingOptions<RootStackParamList>['prefixes'] = [
@@ -8,6 +8,7 @@ const prefixes: LinkingOptions<RootNavigatorParamList>['prefixes'] = [
'https://www.expensify.cash',
'https://staging.expensify.cash',
'https://dev.new.expensify.com',
Expand Down
2 changes: 1 addition & 1 deletion contributingGuides/NAVIGATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -207,4 +207,4 @@ The action for the first step created with `getMinimalAction` looks like this:
```

### Deeplinking
There is no minimal action for deeplinking directly to the `Profile` screen. But because the `Settings_root` is not on the stack, pressing UP will reset the params for navigators to the correct ones.
There is no minimal action for deeplinking directly to the `Profile` screen. But because the `Settings_root` is not on the stack, pressing UP will reset the params for navigators to the correct ones.
270 changes: 270 additions & 0 deletions contributingGuides/NAVIGATION_TESTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,270 @@
# Navigation tests

#### There should be a proper report under attachment screen after reload

1. Open any report with image attachment on narrow layout.
2. Open attachment.
3. Reload the page.
4. Verify that after pressing back arrow in the header you are on the report where you sent the attachment.


#### There is a proper split navigator under RHP with a sidebar screen only for screens that can be opened from the sidebar

1. Open the browser on narrow layout with url `/settings/profile/status`.
2. Reload the page.
3. Verify that after pressing back arrow in the header you are on the settings root page.


#### There is a proper split navigator under the overlay after refreshing page with RHP/LHP on wide screen

1. Open the browser on wide screen with url `/settings/profile/display-name`.
2. Verify that you can see settings profile page under the overlay of RHP.


#### There is a proper split navigator under the overlay after deeplinking to page with RHP/LHP on wide screen

1. Open the browser on wide screen.
2. Open any report.
3. Send message with url `/settings/profile/display-name`.
4. Press the sent link
5. Verify that the settings profile screen is now visible under the overlay

#### The Workspace list page is displayed (SCREENS.SETTINGS.WORKSPACES) after clicking the Settings tab from the Workspace settings screen

1. Open any workspace settings (Settings → Workspaces → Select any workspace)
2. Click the Settings button on the bottom tab.
3. Verify that the Workspace list is displayed (`/settings/workspaces`)
4. Select any workspace again.
5. Reload the page.
6. Click the Settings button on the bottom tab.
7. Verify that the Workspace list is displayed (`/settings/workspaces`)


#### The last visited screen in the settings tab is saved when switching between tabs

1. Open the app.
2. Go to the settings tab.
3. Open the workspace list.
4. Select any workspace.
5. Switch between tabs and open the settings tabs again.
6. Verify that the last visited page in this tab is displayed.


#### The Workspace selected in the application is reset when you select a chat that does not belong to the current policy

1. Open the home page.
2. Click on the Expensify icon in the upper left corner.
3. Select any workspace.
4. Click on the magnifying glass above the list of available chats.
5. Select a chat that does not belong to the workspace selected in the third step.
6. Verify if the chat is opened and the global workspace is selected.


#### The selected workspace is saved between Search and Inbox tabs

1. Open the Inbox tab.
2. Change the workspace using the workspace switcher.
3. Switch to the Search tab and verify if the workspace selected in the second step is also selected in the Search.
4. Change the workspace once again.
5. Go back to the Inbox.
6. Verify if the workspace selected in the fourth step is also selected in the Inbox tab.

#### Going up to the workspace list page after refreshing on the workspace settings and pressing the up button

1. Open the workspace settings from the deep link (use a link in format: `/settings/workspaces/:policyID:/profile`)
2. Click the app’s back button.
3. Verify if the workspace list is displayed.

#### Going up to the RHP screen provided in the backTo parameter in the url

1. Open the settings tab.
2. Go to the Profile page.
3. Click the Address button.
4. Click the Country button.
5. Reload the page.
6. Click the app’s back button.
7. Verify if the Profile address page is displayed (`/settings/profile/address`)

#### There is proper split navigator under the overlay after refreshing page in RHP that includes valid reportID in params

wide layout :

1. Open any report.
2. Open report details (press the chat header).
3. Reload the app.
4. Verify that the report under the overlay is the same as the one opened in report details.

narrow layout :

1. Open any report
2. Open report details (press the chat header).
3. Reload the app.
4. Verify that after pressing back arrow in the header you are on the report previously seen in the details page.

#### Navigating back to the Workspace Switcher from the created workspace

1. Open the app and go to the Inbox tab.
2. Open the workspace switcher (Click on the button in the upper left corner).
3. Create a new workspace by clicking on the + button.
4. Navigate back using the back button in the app.
5. Verify if the workspace switcher is displayed with the report screen below it

#### Going up to the sidebar screen

Linked issue: https://github.com/Expensify/App/pull/44138

1. Go to Subscription page in the settings tab.
2. Click on Request refund button
3. Verify that modal shown
4. Next click Downgrade...
5. Verify that modal got closed, your account is downgraded and the Home page is opened.

#### Navigating back from the Search page with invalid query parameters

1. Open the search page with invalid query parameters (e.g `/search?q=from%3a`)
2. Press the app's back button on the not found page.
3. Verify that the Search page with default query parameters is displayed.

#### Navigating to the chat from the link in the thread

1. Open any chat.
2. If there are no messages in the chat, send a message.
3. Press reply in thread.
4. Press the "From" link in the displayed header.
5. Verify if the link correctly redirects to the chat opened in the first step.

#### Expense - App does not open destination report after submitting expense

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2432400819

1. Launch the app.
2. Open FAB > Submit expense > Manual.
3. Submit a manual expense to any user (as long as the user is not the currrently opened report and the receiver is not workspace chat).
4. Verify if the destination report is opened after submitting expense.

#### QBO - Preferred exporter/Export date tab do not auto-close after value selected

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2433342220

Precondition: Workspace with QBO integration connected.

1. Go to Workspace > Accounting.
2. Click on Export > Preferred exporter (or Export date).
3. Click on value.
4. Verify if the value chosen in the third step is selected and the app redirects to the Export page.

#### Web - Hold - App flickers after entering reason and saving it when holding expense

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2433389682

1. Launch the app.
2. Open DM with any user.
3. Submit two expenses to them.
4. Click on the expense preview to go to expense report.
5. Click on any preview to go to transaction thread.
6. Go back to expense report.
7. Right click on the expense preview in Step 5 > Hold.
8. Enter a reason and save it.
9. Verify if the app does not flicker after entering reason and saving it.

#### Group - App returns to group settings page after saving group name

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2433381800

1. Launch the app.
2. Create a group chat.
3. Go to group chat.
4. Click on the group chat header.
5. Click Group name field.
6. Click Save.
7. Verify if the app returs to group details RHP after saving group name.

#### Going up to a screen with any params

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2432694948

1. Press the FAB.
2. Select "Book travel".
3. Press "Book travel" in the new RHP pane.
4. Press "Country".
5. Select any country.
6. Verify that the country you selected is actually visible in the form.

#### Change params of existing attachments screens instead of pushing new screen on the stack

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2432360626

1. Open any chat.
2. Send at least two images.
3. Open attachment by pressing on image.
4. Press arrow on the side of attachment modal to navigate to the second image.
5. Close the modal with X in the corner.
6. Verify that the modal is now fully closed.

#### Navigate instead of push for reports with same reportID

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2433351709

1. Open app on wide layout web.
2. Go to report A (any report).
3. Go to report B (any report with message).
4. Press reply in thread.
5. Press on header subtitle.
6. Press on the report B in the sidebar.
7. Verify that the message you replied to is no longer highlighted.
8. Press the browsers back button.
9. Verify that you are on the A report.


#### Don't push the default full screen route if not necessary.

1. Open app on wide layout web.
2. Open search tab.
3. Press track expense.
4. Verify that the split navigator hasn't changed under the overlay.

#### BA - Back button on connect bank account modal opens incorporation state modal

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2433261611

Precondition: Use staging server (it can be set in Settings >> Troubleshoot)

1. Launch the app.
2. Navigate to Settings >> Workspaces >> Workspace >> Workflows.
3. Select Connect with Plaid option.
4. Go through the Plaid flow (Added Wells Fargo details).
5. Complete the Personal info, Company info & agreements section.
6. Note user redirected to page with the header Connect bank account and the option to disconnect your now set up bank account.
7. Tap back button on connect bank account modal.
8. Verify if the connect bank account modal is closed and the Workflows page is opened with the bank account added.

#### App opens room details page when tapping RHP back button after saving Private notes in DM

Linked issue: https://github.com/Expensify/App/pull/49539#issuecomment-2433321607

1. Launch the app.
2. Open DM with any user that does not have content in Private notes.
3. Click on the chat header.
4. Click Private notes.
5. Enter anything and click Save.
6. Click on the RHP back button.
7. Verify if the Profile RHP Page is opened (URL in the format /a/:accountID).

#### Opening particular onboarding pages from a link and going back

Linked issue: https://github.com/Expensify/App/issues/50177

1. Sign in as a new user.
2. Select Something else from the onboarding flow.
3. Reopen/refresh the app.
4. Verify the Personal detail step is shown.
5. Go back.
6. Verify you are navigated back to the Purpose step.
7. Select Manage my team.
8. Choose the employee size.
9. Reopen/refresh the app.
10. Verify the connection integration step is shown.
11. Go back.
12. Verify you are navigated back to the employee size step.
13. Go back.
14. Verify you are navigated back to the Purpose step.
1 change: 1 addition & 0 deletions jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ module.exports = {
`<rootDir>/tests/ui/**/*.${testFileExtension}`,
`<rootDir>/tests/unit/**/*.${testFileExtension}`,
`<rootDir>/tests/actions/**/*.${testFileExtension}`,
`<rootDir>/tests/navigation/**/*.${testFileExtension}`,
`<rootDir>/?(*.)+(spec|test).${testFileExtension}`,
],
transform: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ index 7558eb3..b7bb75e 100644
}) : STATE_TRANSITIONING_OR_BELOW_TOP;
}
+
+ const isHomeScreenAndNotOnTop = (route.name === 'BottomTabNavigator' || route.name === 'Workspace_Initial') && isScreenActive !== STATE_ON_TOP;
+ const shouldNotDetachScreen = route?.dontDetachScreen && isScreenActive !== STATE_ON_TOP;
+
const {
headerShown = true,
Expand All @@ -53,7 +53,7 @@ index 7558eb3..b7bb75e 100644
style: StyleSheet.absoluteFill,
enabled: detachInactiveScreens,
- active: isScreenActive,
+ active: isHomeScreenAndNotOnTop ? STATE_TRANSITIONING_OR_BELOW_TOP : isScreenActive,
+ active: shouldNotDetachScreen ? STATE_TRANSITIONING_OR_BELOW_TOP : isScreenActive,
freezeOnBlur: freezeOnBlur,
pointerEvents: "box-none"
}, /*#__PURE__*/React.createElement(CardContainer, {
Expand All @@ -62,7 +62,7 @@ index 7558eb3..b7bb75e 100644
onTransitionEnd: onTransitionEnd,
isNextScreenTransparent: isNextScreenTransparent,
- detachCurrentScreen: detachCurrentScreen
+ detachCurrentScreen: isHomeScreenAndNotOnTop ? false : detachCurrentScreen,
+ detachCurrentScreen: shouldNotDetachScreen ? false : detachCurrentScreen,
}));
})), isFloatHeaderAbsolute ? floatingHeader : null);
}
4 changes: 0 additions & 4 deletions src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import {PickerStateProvider} from 'react-native-picker-select';
import {SafeAreaProvider} from 'react-native-safe-area-context';
import '../wdyr';
import ActiveElementRoleProvider from './components/ActiveElementRoleProvider';
import ActiveWorkspaceContextProvider from './components/ActiveWorkspaceProvider';
import ColorSchemeWrapper from './components/ColorSchemeWrapper';
import ComposeProviders from './components/ComposeProviders';
import CustomStatusBarAndBackground from './components/CustomStatusBarAndBackground';
Expand Down Expand Up @@ -36,7 +35,6 @@ import CONFIG from './CONFIG';
import Expensify from './Expensify';
import {CurrentReportIDContextProvider} from './hooks/useCurrentReportID';
import useDefaultDragAndDrop from './hooks/useDefaultDragAndDrop';
import {ReportIDsContextProvider} from './hooks/useReportIDs';
import OnyxUpdateManager from './libs/actions/OnyxUpdateManager';
import {ReportAttachmentsProvider} from './pages/home/report/ReportAttachmentsContext';
import type {Route} from './ROUTES';
Expand Down Expand Up @@ -90,8 +88,6 @@ function App({url}: AppProps) {
EnvironmentProvider,
CustomStatusBarAndBackgroundContextProvider,
ActiveElementRoleProvider,
ActiveWorkspaceContextProvider,
ReportIDsContextProvider,
PlaybackContextProvider,
FullScreenContextProvider,
VolumeContextProvider,
Expand Down
24 changes: 21 additions & 3 deletions src/CONST.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import {sub as dateSubtract} from 'date-fns/sub';
import Config from 'react-native-config';
import * as KeyCommand from 'react-native-key-command';
import type {ValueOf} from 'type-fest';
import type ResponsiveLayoutResult from './hooks/useResponsiveLayout/types';
import type {Video} from './libs/actions/Report';
import type {MileageRate} from './libs/DistanceRequestUtils';
import BankAccount from './libs/models/BankAccount';
Expand Down Expand Up @@ -4705,13 +4706,15 @@ const CONST = {
SF_COORDINATES: [-122.4194, 37.7749],

NAVIGATION: {
TYPE: {
UP: 'UP',
},
ACTION_TYPE: {
REPLACE: 'REPLACE',
PUSH: 'PUSH',
NAVIGATE: 'NAVIGATE',

/** These action types are custom for RootNavigator */
SWITCH_POLICY_ID: 'SWITCH_POLICY_ID',

Choose a reason for hiding this comment

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

Are those actions described somewhere?

DISMISS_MODAL: 'DISMISS_MODAL',
OPEN_WORKSPACE_SPLIT: 'OPEN_WORKSPACE_SPLIT',
},
},
TIME_PERIOD: {
Expand Down Expand Up @@ -6532,6 +6535,21 @@ const CONST = {
GLOBAL_CREATE_TOOLTIP: 'globalCreateTooltip',
},
SMART_BANNER_HEIGHT: 152,

NAVIGATION_TESTS: {
DEFAULT_PARENT_ROUTE: {key: 'parentRouteKey', name: 'ParentNavigator'},
DEFAULT_USE_RESPONSIVE_LAYOUT_VALUE: {
shouldUseNarrowLayout: true,
isSmallScreenWidth: true,
isInNarrowPaneModal: false,
isExtraSmallScreenHeight: false,
isMediumScreenWidth: false,
isLargeScreenWidth: false,
isExtraSmallScreenWidth: false,
isSmallScreen: false,
onboardingIsMediumOrLargerScreenWidth: false,
} as ResponsiveLayoutResult,
},
} as const;

type Country = keyof typeof CONST.ALL_COUNTRIES;
Expand Down
Loading
Loading