Skip to content

Commit

Permalink
Merge pull request #120 from software-mansion-labs/poc/fix-adapted-st…
Browse files Browse the repository at this point in the history
…ate-params

Fix passing params from RHP in adapted state
  • Loading branch information
adamgrzybowski authored Oct 28, 2024
2 parents be7fe0d + fb326c3 commit 0f46afb
Showing 1 changed file with 6 additions and 10 deletions.
16 changes: 6 additions & 10 deletions src/libs/Navigation/linkingConfig/getAdaptedStateFromPath.ts
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ function getMatchingFullScreenRouteForRoute(route: NavigationPartialRoute, polic

return {
name: SCREENS.SEARCH.CENTRAL_PANE,
params: pick(route.params, paramsFromRoute),
params: paramsFromRoute.length > 0 ? pick(route.params, paramsFromRoute) : undefined,
};
}

Expand All @@ -84,33 +84,30 @@ function getMatchingFullScreenRouteForRoute(route: NavigationPartialRoute, polic

// @TODO We can think about handling it in one condition.
if (RELATIONS.RHP_TO_WORKSPACE[route.name]) {
const paramsFromRoute = getParamsFromRoute(SCREENS.SEARCH.CENTRAL_PANE);
const paramsFromRoute = getParamsFromRoute(RELATIONS.RHP_TO_WORKSPACE[route.name]);

return createSplitNavigator(
{
name: SCREENS.WORKSPACE.INITIAL,
params: paramsFromRoute.length > 0 ? pick(route.params, paramsFromRoute) : undefined,
},
{
name: RELATIONS.RHP_TO_WORKSPACE[route.name] as keyof WorkspaceSplitNavigatorParamList,
params: {
...pick(route.params, paramsFromRoute),
},
params: paramsFromRoute.length > 0 ? pick(route.params, paramsFromRoute) : undefined,
},
);
}

if (RELATIONS.RHP_TO_SETTINGS[route.name]) {
const paramsFromRoute = getParamsFromRoute(SCREENS.SEARCH.CENTRAL_PANE);
const paramsFromRoute = getParamsFromRoute(RELATIONS.RHP_TO_SETTINGS[route.name]);

return createSplitNavigator(
{
name: SCREENS.SETTINGS.ROOT,
},
{
name: RELATIONS.RHP_TO_SETTINGS[route.name] as keyof SettingsSplitNavigatorParamList,
params: {
...pick(route.params, paramsFromRoute),
},
params: paramsFromRoute.length > 0 ? pick(route.params, paramsFromRoute) : undefined,
},
);
}
Expand Down Expand Up @@ -205,7 +202,6 @@ const getAdaptedStateFromPath: GetAdaptedStateFromPath = (path, options, shouldR
// On SCREENS.SEARCH.CENTRAL_PANE policyID is stored differently inside search query ("q" param), so we're handling this case
const focusedRoute = findFocusedRoute(state);
const policyIDFromQuery = extractPolicyIDFromQuery(focusedRoute);

return getAdaptedState(state, policyID ?? policyIDFromQuery);
};

Expand Down

0 comments on commit 0f46afb

Please sign in to comment.