@react-navigation/routers 7.3.7 → 7.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,6 +9,7 @@ export const BaseRouter = {
9
9
  getStateForAction(state, action) {
10
10
  switch (action.type) {
11
11
  case 'SET_PARAMS':
12
+ case 'REPLACE_PARAMS':
12
13
  {
13
14
  const index = action.source ? state.routes.findIndex(r => r.key === action.source) : state.index;
14
15
  if (index === -1) {
@@ -18,7 +19,7 @@ export const BaseRouter = {
18
19
  ...state,
19
20
  routes: state.routes.map((r, i) => i === index ? {
20
21
  ...r,
21
- params: {
22
+ params: action.type === 'REPLACE_PARAMS' ? action.payload.params : {
22
23
  ...r.params,
23
24
  ...action.payload.params
24
25
  }
@@ -1 +1 @@
1
- {"version":3,"names":["nanoid","BaseRouter","getStateForAction","state","action","type","index","source","routes","findIndex","r","key","map","i","params","payload","nextState","length","some","route","routeNames","includes","name","stale","shouldActionChangeFocus"],"sourceRoot":"../../src","sources":["BaseRouter.tsx"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,mBAAmB;AAQ1C;AACA;AACA;AACA;AACA,OAAO,MAAMC,UAAU,GAAG;EACxBC,iBAAiBA,CACfC,KAAY,EACZC,MAA8B,EACM;IACpC,QAAQA,MAAM,CAACC,IAAI;MACjB,KAAK,YAAY;QAAE;UACjB,MAAMC,KAAK,GAAGF,MAAM,CAACG,MAAM,GACvBJ,KAAK,CAACK,MAAM,CAACC,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAACC,GAAG,KAAKP,MAAM,CAACG,MAAM,CAAC,GACtDJ,KAAK,CAACG,KAAK;UAEf,IAAIA,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,OAAO,IAAI;UACb;UAEA,OAAO;YACL,GAAGH,KAAK;YACRK,MAAM,EAAEL,KAAK,CAACK,MAAM,CAACI,GAAG,CAAC,CAACF,CAAC,EAAEG,CAAC,KAC5BA,CAAC,KAAKP,KAAK,GACP;cAAE,GAAGI,CAAC;cAAEI,MAAM,EAAE;gBAAE,GAAGJ,CAAC,CAACI,MAAM;gBAAE,GAAGV,MAAM,CAACW,OAAO,CAACD;cAAO;YAAE,CAAC,GAC3DJ,CACN;UACF,CAAC;QACH;MAEA,KAAK,OAAO;QAAE;UACZ,MAAMM,SAAS,GAAGZ,MAAM,CAACW,OAAsC;UAE/D,IACEC,SAAS,CAACR,MAAM,CAACS,MAAM,KAAK,CAAC,IAC7BD,SAAS,CAACR,MAAM,CAACU,IAAI,CAClBC,KAAuB,IAAK,CAAChB,KAAK,CAACiB,UAAU,CAACC,QAAQ,CAACF,KAAK,CAACG,IAAI,CACpE,CAAC,EACD;YACA,OAAO,IAAI;UACb;UAEA,IAAIN,SAAS,CAACO,KAAK,KAAK,KAAK,EAAE;YAC7B,IACEpB,KAAK,CAACiB,UAAU,CAACH,MAAM,KAAKD,SAAS,CAACI,UAAU,CAACH,MAAM,IACvDD,SAAS,CAACI,UAAU,CAACF,IAAI,CACtBI,IAAI,IAAK,CAACnB,KAAK,CAACiB,UAAU,CAACC,QAAQ,CAACC,IAAI,CAC3C,CAAC,EACD;cACA,OAAO,IAAI;YACb;YAEA,OAAO;cACL,GAAGN,SAAS;cACZR,MAAM,EAAEQ,SAAS,CAACR,MAAM,CAACI,GAAG,CAAEO,KAAK,IACjCA,KAAK,CAACR,GAAG,GAAGQ,KAAK,GAAG;gBAAE,GAAGA,KAAK;gBAAER,GAAG,EAAE,GAAGQ,KAAK,CAACG,IAAI,IAAItB,MAAM,CAAC,CAAC;cAAG,CACnE;YACF,CAAC;UACH;UAEA,OAAOgB,SAAS;QAClB;MAEA;QACE,OAAO,IAAI;IACf;EACF,CAAC;EAEDQ,uBAAuBA,CAACpB,MAA8B,EAAE;IACtD,OAAOA,MAAM,CAACC,IAAI,KAAK,UAAU,IAAID,MAAM,CAACC,IAAI,KAAK,qBAAqB;EAC5E;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["nanoid","BaseRouter","getStateForAction","state","action","type","index","source","routes","findIndex","r","key","map","i","params","payload","nextState","length","some","route","routeNames","includes","name","stale","shouldActionChangeFocus"],"sourceRoot":"../../src","sources":["BaseRouter.tsx"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,mBAAmB;AAQ1C;AACA;AACA;AACA;AACA,OAAO,MAAMC,UAAU,GAAG;EACxBC,iBAAiBA,CACfC,KAAY,EACZC,MAA8B,EACM;IACpC,QAAQA,MAAM,CAACC,IAAI;MACjB,KAAK,YAAY;MACjB,KAAK,gBAAgB;QAAE;UACrB,MAAMC,KAAK,GAAGF,MAAM,CAACG,MAAM,GACvBJ,KAAK,CAACK,MAAM,CAACC,SAAS,CAAEC,CAAC,IAAKA,CAAC,CAACC,GAAG,KAAKP,MAAM,CAACG,MAAM,CAAC,GACtDJ,KAAK,CAACG,KAAK;UAEf,IAAIA,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,OAAO,IAAI;UACb;UAEA,OAAO;YACL,GAAGH,KAAK;YACRK,MAAM,EAAEL,KAAK,CAACK,MAAM,CAACI,GAAG,CAAC,CAACF,CAAC,EAAEG,CAAC,KAC5BA,CAAC,KAAKP,KAAK,GACP;cACE,GAAGI,CAAC;cACJI,MAAM,EACJV,MAAM,CAACC,IAAI,KAAK,gBAAgB,GAC5BD,MAAM,CAACW,OAAO,CAACD,MAAM,GACrB;gBAAE,GAAGJ,CAAC,CAACI,MAAM;gBAAE,GAAGV,MAAM,CAACW,OAAO,CAACD;cAAO;YAChD,CAAC,GACDJ,CACN;UACF,CAAC;QACH;MAEA,KAAK,OAAO;QAAE;UACZ,MAAMM,SAAS,GAAGZ,MAAM,CAACW,OAAsC;UAE/D,IACEC,SAAS,CAACR,MAAM,CAACS,MAAM,KAAK,CAAC,IAC7BD,SAAS,CAACR,MAAM,CAACU,IAAI,CAClBC,KAAuB,IAAK,CAAChB,KAAK,CAACiB,UAAU,CAACC,QAAQ,CAACF,KAAK,CAACG,IAAI,CACpE,CAAC,EACD;YACA,OAAO,IAAI;UACb;UAEA,IAAIN,SAAS,CAACO,KAAK,KAAK,KAAK,EAAE;YAC7B,IACEpB,KAAK,CAACiB,UAAU,CAACH,MAAM,KAAKD,SAAS,CAACI,UAAU,CAACH,MAAM,IACvDD,SAAS,CAACI,UAAU,CAACF,IAAI,CACtBI,IAAI,IAAK,CAACnB,KAAK,CAACiB,UAAU,CAACC,QAAQ,CAACC,IAAI,CAC3C,CAAC,EACD;cACA,OAAO,IAAI;YACb;YAEA,OAAO;cACL,GAAGN,SAAS;cACZR,MAAM,EAAEQ,SAAS,CAACR,MAAM,CAACI,GAAG,CAAEO,KAAK,IACjCA,KAAK,CAACR,GAAG,GAAGQ,KAAK,GAAG;gBAAE,GAAGA,KAAK;gBAAER,GAAG,EAAE,GAAGQ,KAAK,CAACG,IAAI,IAAItB,MAAM,CAAC,CAAC;cAAG,CACnE;YACF,CAAC;UACH;UAEA,OAAOgB,SAAS;QAClB;MAEA;QACE,OAAO,IAAI;IACf;EACF,CAAC;EAEDQ,uBAAuBA,CAACpB,MAA8B,EAAE;IACtD,OAAOA,MAAM,CAACC,IAAI,KAAK,UAAU,IAAID,MAAM,CAACC,IAAI,KAAK,qBAAqB;EAC5E;AACF,CAAC","ignoreList":[]}
@@ -65,6 +65,14 @@ export function setParams(params) {
65
65
  }
66
66
  };
67
67
  }
68
+ export function replaceParams(params) {
69
+ return {
70
+ type: 'REPLACE_PARAMS',
71
+ payload: {
72
+ params
73
+ }
74
+ };
75
+ }
68
76
  export function preload(name, params) {
69
77
  return {
70
78
  type: 'PRELOAD',
@@ -1 +1 @@
1
- {"version":3,"names":["goBack","type","navigate","args","name","params","options","console","warn","payload","merge","pop","Error","navigateDeprecated","reset","state","setParams","preload"],"sourceRoot":"../../src","sources":["CommonActions.tsx"],"mappings":";;AAuEA,OAAO,SAASA,MAAMA,CAAA,EAAW;EAC/B,OAAO;IAAEC,IAAI,EAAE;EAAU,CAAC;AAC5B;AAmBA,OAAO,SAASC,QAAQA,CAAC,GAAGC,IAAS,EAAU;EAC7C,IAAI,OAAOA,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;IAC/B,MAAM,CAACC,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC,GAAGH,IAAI;IAEpC,IAAI,OAAOG,OAAO,KAAK,SAAS,EAAE;MAChCC,OAAO,CAACC,IAAI,CACV,sGACF,CAAC;IACH;IAEA,OAAO;MACLP,IAAI,EAAE,UAAU;MAChBQ,OAAO,EAAE;QACPL,IAAI;QACJC,MAAM;QACNK,KAAK,EAAE,OAAOJ,OAAO,KAAK,SAAS,GAAGA,OAAO,GAAGA,OAAO,EAAEI,KAAK;QAC9DC,GAAG,EAAEL,OAAO,EAAEK;MAChB;IACF,CAAC;EACH,CAAC,MAAM;IACL,MAAMF,OAAO,GAAGN,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE7B,IAAI,EAAE,MAAM,IAAIM,OAAO,CAAC,EAAE;MACxB,MAAM,IAAIG,KAAK,CACb,8JACF,CAAC;IACH;IAEA,OAAO;MAAEX,IAAI,EAAE,UAAU;MAAEQ;IAAQ,CAAC;EACtC;AACF;AAEA,OAAO,SAASI,kBAAkBA,CAChC,GAAGV,IAG6C,EACxC;EACR,IAAI,OAAOA,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;IAC/B,OAAO;MACLF,IAAI,EAAE,qBAAqB;MAC3BQ,OAAO,EAAE;QAAEL,IAAI,EAAED,IAAI,CAAC,CAAC,CAAC;QAAEE,MAAM,EAAEF,IAAI,CAAC,CAAC;MAAE;IAC5C,CAAC;EACH,CAAC,MAAM;IACL,MAAMM,OAAO,GAAGN,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE7B,IAAI,EAAE,MAAM,IAAIM,OAAO,CAAC,EAAE;MACxB,MAAM,IAAIG,KAAK,CACb,8KACF,CAAC;IACH;IAEA,OAAO;MAAEX,IAAI,EAAE,qBAAqB;MAAEQ;IAAQ,CAAC;EACjD;AACF;AAEA,OAAO,SAASK,KAAKA,CAACC,KAA6B,EAAU;EAC3D,OAAO;IAAEd,IAAI,EAAE,OAAO;IAAEQ,OAAO,EAAEM;EAAM,CAAC;AAC1C;AAEA,OAAO,SAASC,SAASA,CAACX,MAAc,EAAU;EAChD,OAAO;IAAEJ,IAAI,EAAE,YAAY;IAAEQ,OAAO,EAAE;MAAEJ;IAAO;EAAE,CAAC;AACpD;AAEA,OAAO,SAASY,OAAOA,CAACb,IAAY,EAAEC,MAAe,EAAU;EAC7D,OAAO;IAAEJ,IAAI,EAAE,SAAS;IAAEQ,OAAO,EAAE;MAAEL,IAAI;MAAEC;IAAO;EAAE,CAAC;AACvD","ignoreList":[]}
1
+ {"version":3,"names":["goBack","type","navigate","args","name","params","options","console","warn","payload","merge","pop","Error","navigateDeprecated","reset","state","setParams","replaceParams","preload"],"sourceRoot":"../../src","sources":["CommonActions.tsx"],"mappings":";;AA+EA,OAAO,SAASA,MAAMA,CAAA,EAAW;EAC/B,OAAO;IAAEC,IAAI,EAAE;EAAU,CAAC;AAC5B;AAmBA,OAAO,SAASC,QAAQA,CAAC,GAAGC,IAAS,EAAU;EAC7C,IAAI,OAAOA,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;IAC/B,MAAM,CAACC,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC,GAAGH,IAAI;IAEpC,IAAI,OAAOG,OAAO,KAAK,SAAS,EAAE;MAChCC,OAAO,CAACC,IAAI,CACV,sGACF,CAAC;IACH;IAEA,OAAO;MACLP,IAAI,EAAE,UAAU;MAChBQ,OAAO,EAAE;QACPL,IAAI;QACJC,MAAM;QACNK,KAAK,EAAE,OAAOJ,OAAO,KAAK,SAAS,GAAGA,OAAO,GAAGA,OAAO,EAAEI,KAAK;QAC9DC,GAAG,EAAEL,OAAO,EAAEK;MAChB;IACF,CAAC;EACH,CAAC,MAAM;IACL,MAAMF,OAAO,GAAGN,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE7B,IAAI,EAAE,MAAM,IAAIM,OAAO,CAAC,EAAE;MACxB,MAAM,IAAIG,KAAK,CACb,8JACF,CAAC;IACH;IAEA,OAAO;MAAEX,IAAI,EAAE,UAAU;MAAEQ;IAAQ,CAAC;EACtC;AACF;AAEA,OAAO,SAASI,kBAAkBA,CAChC,GAAGV,IAG6C,EACxC;EACR,IAAI,OAAOA,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;IAC/B,OAAO;MACLF,IAAI,EAAE,qBAAqB;MAC3BQ,OAAO,EAAE;QAAEL,IAAI,EAAED,IAAI,CAAC,CAAC,CAAC;QAAEE,MAAM,EAAEF,IAAI,CAAC,CAAC;MAAE;IAC5C,CAAC;EACH,CAAC,MAAM;IACL,MAAMM,OAAO,GAAGN,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAE7B,IAAI,EAAE,MAAM,IAAIM,OAAO,CAAC,EAAE;MACxB,MAAM,IAAIG,KAAK,CACb,8KACF,CAAC;IACH;IAEA,OAAO;MAAEX,IAAI,EAAE,qBAAqB;MAAEQ;IAAQ,CAAC;EACjD;AACF;AAEA,OAAO,SAASK,KAAKA,CAACC,KAA6B,EAAU;EAC3D,OAAO;IAAEd,IAAI,EAAE,OAAO;IAAEQ,OAAO,EAAEM;EAAM,CAAC;AAC1C;AAEA,OAAO,SAASC,SAASA,CAACX,MAAc,EAAU;EAChD,OAAO;IAAEJ,IAAI,EAAE,YAAY;IAAEQ,OAAO,EAAE;MAAEJ;IAAO;EAAE,CAAC;AACpD;AAEA,OAAO,SAASY,aAAaA,CAACZ,MAAc,EAAU;EACpD,OAAO;IAAEJ,IAAI,EAAE,gBAAgB;IAAEQ,OAAO,EAAE;MAAEJ;IAAO;EAAE,CAAC;AACxD;AAEA,OAAO,SAASa,OAAOA,CAACd,IAAY,EAAEC,MAAe,EAAU;EAC7D,OAAO;IAAEJ,IAAI,EAAE,SAAS;IAAEQ,OAAO,EAAE;MAAEL,IAAI;MAAEC;IAAO;EAAE,CAAC;AACvD","ignoreList":[]}
@@ -48,18 +48,31 @@ const getRouteHistory = (routes, index, backBehavior, initialRouteName) => {
48
48
  }
49
49
  break;
50
50
  case 'history':
51
+ case 'fullHistory':
51
52
  // The history will fill up on navigation
52
53
  break;
53
54
  }
54
55
  return history;
55
56
  };
56
57
  const changeIndex = (state, index, backBehavior, initialRouteName) => {
57
- let history;
58
- if (backBehavior === 'history') {
59
- const currentKey = state.routes[index].key;
60
- history = state.history.filter(it => it.type === 'route' ? it.key !== currentKey : false).concat({
58
+ let history = state.history;
59
+ if (backBehavior === 'history' || backBehavior === 'fullHistory') {
60
+ const currentRouteKey = state.routes[index].key;
61
+ if (backBehavior === 'history') {
62
+ // Remove the existing key from the history to de-duplicate it
63
+ history = history.filter(it => it.type === 'route' ? it.key !== currentRouteKey : false);
64
+ } else if (backBehavior === 'fullHistory') {
65
+ const lastHistoryRouteItemIndex = history.findLastIndex(item => item.type === 'route');
66
+ if (currentRouteKey === history[lastHistoryRouteItemIndex]?.key) {
67
+ // For full-history, only remove if it matches the last route
68
+ // Useful for drawer, if current route was in history, then drawer state changed
69
+ // Then we only need to move the route to the front
70
+ history = [...history.slice(0, lastHistoryRouteItemIndex), ...history.slice(lastHistoryRouteItemIndex + 1)];
71
+ }
72
+ }
73
+ history = history.concat({
61
74
  type: TYPE_ROUTE,
62
- key: currentKey
75
+ key: currentRouteKey
63
76
  });
64
77
  } else {
65
78
  history = getRouteHistory(state.routes, index, backBehavior, initialRouteName);
@@ -225,7 +238,7 @@ export function TabRouter({
225
238
  return null;
226
239
  }
227
240
  const previousKey = state.history[state.history.length - 2]?.key;
228
- const index = state.routes.findIndex(route => route.key === previousKey);
241
+ const index = state.routes.findLastIndex(route => route.key === previousKey);
229
242
  if (index === -1) {
230
243
  return null;
231
244
  }
@@ -1 +1 @@
1
- {"version":3,"names":["nanoid","BaseRouter","TYPE_ROUTE","TabActions","jumpTo","name","params","type","payload","getRouteHistory","routes","index","backBehavior","initialRouteName","history","key","initialRouteIndex","i","unshift","findIndex","route","changeIndex","state","currentKey","filter","it","concat","TabRouter","router","getInitialState","routeNames","routeParamList","undefined","includes","indexOf","map","stale","preloadedRouteKeys","getRehydratedState","partialState","find","r","Math","min","max","length","routeKeys","getStateForRouteNamesChange","routeKeyChanges","getStateForRouteFocus","getStateForAction","action","routeGetIdList","updatedState","getId","currentId","nextId","merge","path","previousKey","slice","routeIndex","newRoute","record","actionCreators"],"sourceRoot":"../../src","sources":["TabRouter.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["nanoid","BaseRouter","TYPE_ROUTE","TabActions","jumpTo","name","params","type","payload","getRouteHistory","routes","index","backBehavior","initialRouteName","history","key","initialRouteIndex","i","unshift","findIndex","route","changeIndex","state","currentRouteKey","filter","it","lastHistoryRouteItemIndex","findLastIndex","item","slice","concat","TabRouter","router","getInitialState","routeNames","routeParamList","undefined","includes","indexOf","map","stale","preloadedRouteKeys","getRehydratedState","partialState","find","r","Math","min","max","length","routeKeys","getStateForRouteNamesChange","routeKeyChanges","getStateForRouteFocus","getStateForAction","action","routeGetIdList","updatedState","getId","currentId","nextId","merge","path","previousKey","routeIndex","newRoute","record","actionCreators"],"sourceRoot":"../../src","sources":["TabRouter.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"BaseRouter.d.ts","sourceRoot":"","sources":["../../../src/BaseRouter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EACf,YAAY,EACb,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,eAAO,MAAM,UAAU;sBACH,KAAK,SAAS,eAAe,SACtC,KAAK,UACJ,sBAAsB,GAC7B,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,IAAI;oCA2DL,sBAAsB;;;;kBA5D3C,CAAC;gBAAkB,CAAC;iBAChB,CAAC;eAAkB,CAAC;;;;;;;;kBAK3B,CAAP;iBAAmB,CAAC;;;;;CAyDtB,CAAC"}
1
+ {"version":3,"file":"BaseRouter.d.ts","sourceRoot":"","sources":["../../../src/BaseRouter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EACf,YAAY,EACb,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,eAAO,MAAM,UAAU;sBACH,KAAK,SAAS,eAAe,SACtC,KAAK,UACJ,sBAAsB,GAC7B,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,IAAI;oCAkEL,sBAAsB;;;;kBAnE3C,CAAC;gBAAkB,CAAC;iBAChB,CAAC;eAAkB,CAAC;;;;;;;;kBAKG,CAAC;iBAAmB,CAAC;;;;;CAgE5D,CAAC"}
@@ -43,6 +43,14 @@ type SetParamsAction = {
43
43
  source?: string;
44
44
  target?: string;
45
45
  };
46
+ type ReplaceParamsAction = {
47
+ type: 'REPLACE_PARAMS';
48
+ payload: {
49
+ params?: object;
50
+ };
51
+ source?: string;
52
+ target?: string;
53
+ };
46
54
  type PreloadAction = {
47
55
  type: 'PRELOAD';
48
56
  payload: {
@@ -52,7 +60,7 @@ type PreloadAction = {
52
60
  source?: string;
53
61
  target?: string;
54
62
  };
55
- export type Action = GoBackAction | NavigateAction | NavigateDeprecatedAction | ResetAction | SetParamsAction | PreloadAction;
63
+ export type Action = GoBackAction | NavigateAction | NavigateDeprecatedAction | ResetAction | SetParamsAction | ReplaceParamsAction | PreloadAction;
56
64
  export declare function goBack(): Action;
57
65
  export declare function navigate(name: string, params?: object, options?: {
58
66
  merge?: boolean;
@@ -71,6 +79,7 @@ export declare function navigateDeprecated(...args: [name: string] | [name: stri
71
79
  }]): Action;
72
80
  export declare function reset(state: ResetState | undefined): Action;
73
81
  export declare function setParams(params: object): Action;
82
+ export declare function replaceParams(params: object): Action;
74
83
  export declare function preload(name: string, params?: object): Action;
75
84
  export {};
76
85
  //# sourceMappingURL=CommonActions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonActions.d.ts","sourceRoot":"","sources":["../../../src/CommonActions.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommonActions.d.ts","sourceRoot":"","sources":["../../../src/CommonActions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEpE,KAAK,UAAU,GACX,YAAY,CAAC,eAAe,CAAC,GAC7B,eAAe,GACf,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG;IACjC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;CACtC,CAAC,CAAC;AAEP,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,GAAG,CAAC,EAAE,OAAO,CAAC;KACf,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,MAAM,GACd,YAAY,GACZ,cAAc,GACd,wBAAwB,GACxB,WAAW,GACX,eAAe,GACf,mBAAmB,GACnB,aAAa,CAAC;AAElB,wBAAgB,MAAM,IAAI,MAAM,CAE/B;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GACA,MAAM,CAAC;AAEV,wBAAgB,QAAQ,CAAC,OAAO,EAAE;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GAAG,MAAM,CAAC;AAkCX,wBAAgB,kBAAkB,CAChC,GAAG,IAAI,EACH,CAAC,IAAI,EAAE,MAAM,CAAC,GACd,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAC1C,CAAC,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GAC/C,MAAM,CAiBR;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAE3D;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAE7D"}
@@ -8,8 +8,17 @@ export type TabActionType = {
8
8
  source?: string;
9
9
  target?: string;
10
10
  };
11
- export type BackBehavior = 'initialRoute' | 'firstRoute' | 'history' | 'order' | 'none';
11
+ export type BackBehavior = 'firstRoute' | 'initialRoute' | 'order' | 'history' | 'fullHistory' | 'none';
12
12
  export type TabRouterOptions = DefaultRouterOptions & {
13
+ /**
14
+ * Control how going back should behave
15
+ * - `firstRoute` - return to the first defined route
16
+ * - `initialRoute` - return to the route from `initialRouteName`
17
+ * - `order` - return to the route defined before the focused route
18
+ * - `history` - return to last visited route; if the same route is visited multiple times, the older entries are dropped from the history
19
+ * - `fullHistory` - return to last visited route; doesn't drop duplicate entries unlike `history` - matches behavior of web pages
20
+ * - `none` - do not handle going back
21
+ */
13
22
  backBehavior?: BackBehavior;
14
23
  };
15
24
  export type TabNavigationState<ParamList extends ParamListBase> = Omit<NavigationState<ParamList>, 'history'> & {
@@ -1 +1 @@
1
- {"version":3,"file":"TabRouter.d.ts","sourceRoot":"","sources":["../../../src/TabRouter.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,oBAAoB,EACpB,eAAe,EACf,aAAa,EAGb,MAAM,EACP,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,YAAY,GACZ,SAAS,GACT,OAAO,GACP,MAAM,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG;IACpD,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,SAAS,SAAS,aAAa,IAAI,IAAI,CACpE,eAAe,CAAC,SAAS,CAAC,EAC1B,SAAS,CACV,GAAG;IACF;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;IACZ;;OAEG;IACH,OAAO,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1C;;OAEG;IACH,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,SAAS,SAAS,aAAa,IAAI;IAC9D;;;;;OAKG;IACH,MAAM,CAAC,SAAS,SAAS,MAAM,SAAS,EACtC,GAAG,IAAI,EAAE,SAAS,SAAS,OAAO,GAC9B,SAAS,SAAS,SAAS,CAAC,SAAS,CAAC,GACpC,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,GAClD,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,GACnD,KAAK,GACR,IAAI,CAAC;CACT,CAAC;AAIF,eAAO,MAAM,UAAU;iBACR,MAAM,WAAW,MAAM,GAAG,aAAa;CAGrD,CAAC;AA4EF,wBAAgB,SAAS,CAAC,EACxB,gBAAgB,EAChB,YAA2B,GAC5B,EAAE,gBAAgB,+FAwTlB"}
1
+ {"version":3,"file":"TabRouter.d.ts","sourceRoot":"","sources":["../../../src/TabRouter.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,oBAAoB,EACpB,eAAe,EACf,aAAa,EAGb,MAAM,EACP,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,YAAY,GACpB,YAAY,GACZ,cAAc,GACd,OAAO,GACP,SAAS,GACT,aAAa,GACb,MAAM,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG;IACpD;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,SAAS,SAAS,aAAa,IAAI,IAAI,CACpE,eAAe,CAAC,SAAS,CAAC,EAC1B,SAAS,CACV,GAAG;IACF;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;IACZ;;OAEG;IACH,OAAO,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1C;;OAEG;IACH,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,SAAS,SAAS,aAAa,IAAI;IAC9D;;;;;OAKG;IACH,MAAM,CAAC,SAAS,SAAS,MAAM,SAAS,EACtC,GAAG,IAAI,EAAE,SAAS,SAAS,OAAO,GAC9B,SAAS,SAAS,SAAS,CAAC,SAAS,CAAC,GACpC,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,GAClD,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,GACnD,KAAK,GACR,IAAI,CAAC;CACT,CAAC;AAIF,eAAO,MAAM,UAAU;iBACR,MAAM,WAAW,MAAM,GAAG,aAAa;CAGrD,CAAC;AAmGF,wBAAgB,SAAS,CAAC,EACxB,gBAAgB,EAChB,YAA2B,GAC5B,EAAE,gBAAgB,+FA0TlB"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@react-navigation/routers",
3
3
  "description": "Routers to help build custom navigators",
4
- "version": "7.3.7",
4
+ "version": "7.4.0",
5
5
  "keywords": [
6
6
  "react",
7
7
  "react-native",
@@ -67,5 +67,5 @@
67
67
  ]
68
68
  ]
69
69
  },
70
- "gitHead": "09d65bcdc908883c8cdd1b93fde19cec4b799ad6"
70
+ "gitHead": "52e5ec64745b399655adf7bd9773e31372d51e62"
71
71
  }
@@ -16,7 +16,8 @@ export const BaseRouter = {
16
16
  action: CommonNavigationAction
17
17
  ): State | PartialState<State> | null {
18
18
  switch (action.type) {
19
- case 'SET_PARAMS': {
19
+ case 'SET_PARAMS':
20
+ case 'REPLACE_PARAMS': {
20
21
  const index = action.source
21
22
  ? state.routes.findIndex((r) => r.key === action.source)
22
23
  : state.index;
@@ -29,7 +30,13 @@ export const BaseRouter = {
29
30
  ...state,
30
31
  routes: state.routes.map((r, i) =>
31
32
  i === index
32
- ? { ...r, params: { ...r.params, ...action.payload.params } }
33
+ ? {
34
+ ...r,
35
+ params:
36
+ action.type === 'REPLACE_PARAMS'
37
+ ? action.payload.params
38
+ : { ...r.params, ...action.payload.params },
39
+ }
33
40
  : r
34
41
  ),
35
42
  };
@@ -51,6 +51,13 @@ type SetParamsAction = {
51
51
  target?: string;
52
52
  };
53
53
 
54
+ type ReplaceParamsAction = {
55
+ type: 'REPLACE_PARAMS';
56
+ payload: { params?: object };
57
+ source?: string;
58
+ target?: string;
59
+ };
60
+
54
61
  type PreloadAction = {
55
62
  type: 'PRELOAD';
56
63
  payload: {
@@ -67,6 +74,7 @@ export type Action =
67
74
  | NavigateDeprecatedAction
68
75
  | ResetAction
69
76
  | SetParamsAction
77
+ | ReplaceParamsAction
70
78
  | PreloadAction;
71
79
 
72
80
  export function goBack(): Action {
@@ -154,6 +162,10 @@ export function setParams(params: object): Action {
154
162
  return { type: 'SET_PARAMS', payload: { params } };
155
163
  }
156
164
 
165
+ export function replaceParams(params: object): Action {
166
+ return { type: 'REPLACE_PARAMS', payload: { params } };
167
+ }
168
+
157
169
  export function preload(name: string, params?: object): Action {
158
170
  return { type: 'PRELOAD', payload: { name, params } };
159
171
  }
package/src/TabRouter.tsx CHANGED
@@ -19,13 +19,23 @@ export type TabActionType = {
19
19
  };
20
20
 
21
21
  export type BackBehavior =
22
- | 'initialRoute'
23
22
  | 'firstRoute'
24
- | 'history'
23
+ | 'initialRoute'
25
24
  | 'order'
25
+ | 'history'
26
+ | 'fullHistory'
26
27
  | 'none';
27
28
 
28
29
  export type TabRouterOptions = DefaultRouterOptions & {
30
+ /**
31
+ * Control how going back should behave
32
+ * - `firstRoute` - return to the first defined route
33
+ * - `initialRoute` - return to the route from `initialRouteName`
34
+ * - `order` - return to the route defined before the focused route
35
+ * - `history` - return to last visited route; if the same route is visited multiple times, the older entries are dropped from the history
36
+ * - `fullHistory` - return to last visited route; doesn't drop duplicate entries unlike `history` - matches behavior of web pages
37
+ * - `none` - do not handle going back
38
+ */
29
39
  backBehavior?: BackBehavior;
30
40
  };
31
41
 
@@ -108,6 +118,7 @@ const getRouteHistory = (
108
118
  }
109
119
  break;
110
120
  case 'history':
121
+ case 'fullHistory':
111
122
  // The history will fill up on navigation
112
123
  break;
113
124
  }
@@ -121,14 +132,36 @@ const changeIndex = (
121
132
  backBehavior: BackBehavior,
122
133
  initialRouteName: string | undefined
123
134
  ) => {
124
- let history;
135
+ let history = state.history;
136
+
137
+ if (backBehavior === 'history' || backBehavior === 'fullHistory') {
138
+ const currentRouteKey = state.routes[index].key;
125
139
 
126
- if (backBehavior === 'history') {
127
- const currentKey = state.routes[index].key;
140
+ if (backBehavior === 'history') {
141
+ // Remove the existing key from the history to de-duplicate it
142
+ history = history.filter((it) =>
143
+ it.type === 'route' ? it.key !== currentRouteKey : false
144
+ );
145
+ } else if (backBehavior === 'fullHistory') {
146
+ const lastHistoryRouteItemIndex = history.findLastIndex(
147
+ (item) => item.type === 'route'
148
+ );
149
+
150
+ if (currentRouteKey === history[lastHistoryRouteItemIndex]?.key) {
151
+ // For full-history, only remove if it matches the last route
152
+ // Useful for drawer, if current route was in history, then drawer state changed
153
+ // Then we only need to move the route to the front
154
+ history = [
155
+ ...history.slice(0, lastHistoryRouteItemIndex),
156
+ ...history.slice(lastHistoryRouteItemIndex + 1),
157
+ ];
158
+ }
159
+ }
128
160
 
129
- history = state.history
130
- .filter((it) => (it.type === 'route' ? it.key !== currentKey : false))
131
- .concat({ type: TYPE_ROUTE, key: currentKey });
161
+ history = history.concat({
162
+ type: TYPE_ROUTE,
163
+ key: currentRouteKey,
164
+ });
132
165
  } else {
133
166
  history = getRouteHistory(
134
167
  state.routes,
@@ -389,7 +422,7 @@ export function TabRouter({
389
422
  }
390
423
 
391
424
  const previousKey = state.history[state.history.length - 2]?.key;
392
- const index = state.routes.findIndex(
425
+ const index = state.routes.findLastIndex(
393
426
  (route) => route.key === previousKey
394
427
  );
395
428
 
@@ -411,9 +444,11 @@ export function TabRouter({
411
444
  const routeIndex = state.routes.findIndex(
412
445
  (route) => route.name === action.payload.name
413
446
  );
447
+
414
448
  if (routeIndex === -1) {
415
449
  return null;
416
450
  }
451
+
417
452
  const route = state.routes[routeIndex];
418
453
 
419
454
  const getId = routeGetIdList[route.name];