@react-navigation/native 7.3.6 → 7.3.8

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.
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { nanoid } from 'nanoid/non-secure';
4
- const getPathWithoutHash = path => path.split('#')[0];
4
+ const getPathWithoutHash = path => path.split('#')[0] ?? '';
5
5
  export function createMemoryHistory() {
6
6
  let index = 0;
7
7
  let items = [];
@@ -40,6 +40,9 @@ export function createMemoryHistory() {
40
40
  // We need to find the index from the element before current to get closest path to go back to
41
41
  for (let i = index - 1; i >= 0; i--) {
42
42
  const item = items[i];
43
+ if (item == null) {
44
+ continue;
45
+ }
43
46
  if (item.path === pathWithoutHash) {
44
47
  return i;
45
48
  }
@@ -100,7 +103,8 @@ export function createMemoryHistory() {
100
103
  }];
101
104
  index = 0;
102
105
  } else {
103
- if (items[index].path === pathWithoutHash) {
106
+ const item = items[index];
107
+ if (item?.path === pathWithoutHash) {
104
108
  pathWithHash = pathWithHash + hash;
105
109
  }
106
110
  items[index] = {
@@ -139,6 +143,7 @@ export function createMemoryHistory() {
139
143
  if (n === 0) {
140
144
  return;
141
145
  }
146
+ const targetId = items[index]?.id;
142
147
 
143
148
  // When we call `history.go`, `popstate` will fire when there's history to go back to
144
149
  // So we need to somehow handle following cases:
@@ -148,7 +153,12 @@ export function createMemoryHistory() {
148
153
  return new Promise((resolve, reject) => {
149
154
  const done = interrupted => {
150
155
  clearTimeout(timer);
151
- if (interrupted) {
156
+
157
+ // The current entry may not be the one we intended to land on:
158
+ // - The traversal didn't happen yet, e.g. it took longer than the timeout
159
+ // - The user navigated in the browser while our traversal was in-flight
160
+ // So we treat it the same as the operation being interrupted
161
+ if (interrupted || window.history.state?.id !== targetId) {
152
162
  reject(new Error('History was changed during navigation.'));
153
163
  return;
154
164
  }
@@ -181,7 +191,7 @@ export function createMemoryHistory() {
181
191
  const timer = setTimeout(() => {
182
192
  const foundIndex = pending.findIndex(it => it.ref === done);
183
193
  if (foundIndex > -1) {
184
- pending[foundIndex].cb();
194
+ pending[foundIndex]?.cb();
185
195
  pending.splice(foundIndex, 1);
186
196
  }
187
197
  index = this.index;
@@ -1 +1 @@
1
- {"version":3,"names":["nanoid","getPathWithoutHash","path","split","createMemoryHistory","index","items","pending","interrupt","forEach","it","cb","history","id","window","state","findIndex","item","get","backIndex","pathWithoutHash","i","push","slice","length","pushState","replace","pathWithHash","hash","includes","location","replaceState","go","n","nextIndex","lastItemIndex","Promise","resolve","reject","done","interrupted","clearTimeout","timer","Error","title","document","ref","setTimeout","foundIndex","splice","onPopState","last","pop","removeEventListener","addEventListener","listen","listener"],"sourceRoot":"../../src","sources":["createMemoryHistory.tsx"],"mappings":";;AACA,SAASA,MAAM,QAAQ,mBAAmB;AAW1C,MAAMC,kBAAkB,GAAIC,IAAY,IAAKA,IAAI,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAE/D,OAAO,SAASC,mBAAmBA,CAAA,EAAG;EACpC,IAAIC,KAAK,GAAG,CAAC;EACb,IAAIC,KAAsB,GAAG,EAAE;;EAE/B;EACA;EACA,MAAMC,OAAgE,GAAG,EAAE;EAE3E,MAAMC,SAAS,GAAGA,CAAA,KAAM;IACtB;IACA;IACA;IACAD,OAAO,CAACE,OAAO,CAAEC,EAAE,IAAK;MACtB,MAAMC,EAAE,GAAGD,EAAE,CAACC,EAAE;MAChBD,EAAE,CAACC,EAAE,GAAG,MAAMA,EAAE,CAAC,IAAI,CAAC;IACxB,CAAC,CAAC;EACJ,CAAC;EAED,MAAMC,OAAO,GAAG;IACd,IAAIP,KAAKA,CAAA,EAAW;MAClB;MACA;MACA,MAAMQ,EAAE,GAAGC,MAAM,CAACF,OAAO,CAACG,KAAK,EAAEF,EAAE;MAEnC,IAAIA,EAAE,EAAE;QACN,MAAMR,KAAK,GAAGC,KAAK,CAACU,SAAS,CAAEC,IAAI,IAAKA,IAAI,CAACJ,EAAE,KAAKA,EAAE,CAAC;QAEvD,OAAOR,KAAK,GAAG,CAAC,CAAC,GAAGA,KAAK,GAAG,CAAC;MAC/B;MAEA,OAAO,CAAC;IACV,CAAC;IAEDa,GAAGA,CAACb,KAAa,EAAE;MACjB,OAAOC,KAAK,CAACD,KAAK,CAAC;IACrB,CAAC;IAEDc,SAASA,CAAC;MAAEjB;IAAuB,CAAC,EAAE;MACpC,MAAMkB,eAAe,GAAGnB,kBAAkB,CAACC,IAAI,CAAC;;MAEhD;MACA,KAAK,IAAImB,CAAC,GAAGhB,KAAK,GAAG,CAAC,EAAEgB,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;QACnC,MAAMJ,IAAI,GAAGX,KAAK,CAACe,CAAC,CAAC;QAErB,IAAIJ,IAAI,CAACf,IAAI,KAAKkB,eAAe,EAAE;UACjC,OAAOC,CAAC;QACV;MACF;MAEA,OAAO,CAAC,CAAC;IACX,CAAC;IAEDC,IAAIA,CAAC;MAAEpB,IAAI;MAAEa;IAAgD,CAAC,EAAE;MAC9DP,SAAS,CAAC,CAAC;MAEX,MAAMK,EAAE,GAAGb,MAAM,CAAC,CAAC;MACnB,MAAMoB,eAAe,GAAGnB,kBAAkB,CAACC,IAAI,CAAC;;MAEhD;MACA;MACAI,KAAK,GAAGA,KAAK,CAACiB,KAAK,CAAC,CAAC,EAAElB,KAAK,GAAG,CAAC,CAAC;MAEjCC,KAAK,CAACgB,IAAI,CAAC;QAAEpB,IAAI,EAAEkB,eAAe;QAAEL,KAAK;QAAEF;MAAG,CAAC,CAAC;MAChDR,KAAK,GAAGC,KAAK,CAACkB,MAAM,GAAG,CAAC;;MAExB;MACA;MACA;MACA;MACAV,MAAM,CAACF,OAAO,CAACa,SAAS,CAAC;QAAEZ;MAAG,CAAC,EAAE,EAAE,EAAEX,IAAI,CAAC;IAC5C,CAAC;IAEDwB,OAAOA,CAAC;MAAExB,IAAI;MAAEa;IAAgD,CAAC,EAAE;MACjEP,SAAS,CAAC,CAAC;MAEX,MAAMK,EAAE,GAAGC,MAAM,CAACF,OAAO,CAACG,KAAK,EAAEF,EAAE,IAAIb,MAAM,CAAC,CAAC;MAC/C,MAAMoB,eAAe,GAAGnB,kBAAkB,CAACC,IAAI,CAAC;;MAEhD;MACA;MACA,IAAIyB,YAAY,GAAGzB,IAAI;MACvB,MAAM0B,IAAI,GAAGD,YAAY,CAACE,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAGC,QAAQ,CAACF,IAAI;MAE5D,IAAI,CAACtB,KAAK,CAACkB,MAAM,IAAIlB,KAAK,CAACU,SAAS,CAAEC,IAAI,IAAKA,IAAI,CAACJ,EAAE,KAAKA,EAAE,CAAC,GAAG,CAAC,EAAE;QAClE;QACA;QACA;QACA;QACA;QACA;;QAEAc,YAAY,GAAGA,YAAY,GAAGC,IAAI;QAClCtB,KAAK,GAAG,CAAC;UAAEJ,IAAI,EAAEkB,eAAe;UAAEL,KAAK;UAAEF;QAAG,CAAC,CAAC;QAC9CR,KAAK,GAAG,CAAC;MACX,CAAC,MAAM;QACL,IAAIC,KAAK,CAACD,KAAK,CAAC,CAACH,IAAI,KAAKkB,eAAe,EAAE;UACzCO,YAAY,GAAGA,YAAY,GAAGC,IAAI;QACpC;QACAtB,KAAK,CAACD,KAAK,CAAC,GAAG;UAAEH,IAAI,EAAEkB,eAAe;UAAEL,KAAK;UAAEF;QAAG,CAAC;MACrD;MAEAC,MAAM,CAACF,OAAO,CAACmB,YAAY,CAAC;QAAElB;MAAG,CAAC,EAAE,EAAE,EAAEc,YAAY,CAAC;IACvD,CAAC;IAED;IACA;IACA;IACA;IACA;IACAK,EAAEA,CAACC,CAAS,EAAE;MACZzB,SAAS,CAAC,CAAC;;MAEX;MACA;MACA,MAAM0B,SAAS,GAAG7B,KAAK,GAAG4B,CAAC;MAC3B,MAAME,aAAa,GAAG7B,KAAK,CAACkB,MAAM,GAAG,CAAC;MACtC,IAAIS,CAAC,GAAG,CAAC,IAAI,CAAC3B,KAAK,CAAC4B,SAAS,CAAC,EAAE;QAC9B;QACAD,CAAC,GAAG,CAAC5B,KAAK;QACVA,KAAK,GAAG,CAAC;MACX,CAAC,MAAM,IAAI4B,CAAC,GAAG,CAAC,IAAIC,SAAS,GAAGC,aAAa,EAAE;QAC7C;QACAF,CAAC,GAAGE,aAAa,GAAG9B,KAAK;QACzBA,KAAK,GAAG8B,aAAa;MACvB,CAAC,MAAM;QACL9B,KAAK,GAAG6B,SAAS;MACnB;MAEA,IAAID,CAAC,KAAK,CAAC,EAAE;QACX;MACF;;MAEA;MACA;MACA;MACA;MACA;MACA,OAAO,IAAIG,OAAO,CAAO,CAACC,OAAO,EAAEC,MAAM,KAAK;QAC5C,MAAMC,IAAI,GAAIC,WAAqB,IAAK;UACtCC,YAAY,CAACC,KAAK,CAAC;UAEnB,IAAIF,WAAW,EAAE;YACfF,MAAM,CAAC,IAAIK,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC3D;UACF;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA,MAAM;YAAEC;UAAM,CAAC,GAAG9B,MAAM,CAAC+B,QAAQ;UAEjC/B,MAAM,CAAC+B,QAAQ,CAACD,KAAK,GAAG,EAAE;UAC1B9B,MAAM,CAAC+B,QAAQ,CAACD,KAAK,GAAGA,KAAK;UAE7BP,OAAO,CAAC,CAAC;QACX,CAAC;QAED9B,OAAO,CAACe,IAAI,CAAC;UAAEwB,GAAG,EAAEP,IAAI;UAAE5B,EAAE,EAAE4B;QAAK,CAAC,CAAC;;QAErC;QACA;QACA;QACA;QACA;QACA,MAAMG,KAAK,GAAGK,UAAU,CAAC,MAAM;UAC7B,MAAMC,UAAU,GAAGzC,OAAO,CAACS,SAAS,CAAEN,EAAE,IAAKA,EAAE,CAACoC,GAAG,KAAKP,IAAI,CAAC;UAE7D,IAAIS,UAAU,GAAG,CAAC,CAAC,EAAE;YACnBzC,OAAO,CAACyC,UAAU,CAAC,CAACrC,EAAE,CAAC,CAAC;YACxBJ,OAAO,CAAC0C,MAAM,CAACD,UAAU,EAAE,CAAC,CAAC;UAC/B;UAEA3C,KAAK,GAAG,IAAI,CAACA,KAAK;QACpB,CAAC,EAAE,GAAG,CAAC;QAEP,MAAM6C,UAAU,GAAGA,CAAA,KAAM;UACvB;UACA;UACA7C,KAAK,GAAG,IAAI,CAACA,KAAK;UAElB,MAAM8C,IAAI,GAAG5C,OAAO,CAAC6C,GAAG,CAAC,CAAC;UAE1BtC,MAAM,CAACuC,mBAAmB,CAAC,UAAU,EAAEH,UAAU,CAAC;UAClDC,IAAI,EAAExC,EAAE,CAAC,CAAC;QACZ,CAAC;QAEDG,MAAM,CAACwC,gBAAgB,CAAC,UAAU,EAAEJ,UAAU,CAAC;QAC/CpC,MAAM,CAACF,OAAO,CAACoB,EAAE,CAACC,CAAC,CAAC;MACtB,CAAC,CAAC;IACJ,CAAC;IAED;IACA;IACA;IACAsB,MAAMA,CAACC,QAAoB,EAAE;MAC3B,MAAMN,UAAU,GAAGA,CAAA,KAAM;QACvB;QACA;QACA7C,KAAK,GAAG,IAAI,CAACA,KAAK;QAElB,IAAIE,OAAO,CAACiB,MAAM,EAAE;UAClB;UACA;QACF;QAEAgC,QAAQ,CAAC,CAAC;MACZ,CAAC;MAED1C,MAAM,CAACwC,gBAAgB,CAAC,UAAU,EAAEJ,UAAU,CAAC;MAE/C,OAAO,MAAMpC,MAAM,CAACuC,mBAAmB,CAAC,UAAU,EAAEH,UAAU,CAAC;IACjE;EACF,CAAC;EAED,OAAOtC,OAAO;AAChB","ignoreList":[]}
1
+ {"version":3,"names":["nanoid","getPathWithoutHash","path","split","createMemoryHistory","index","items","pending","interrupt","forEach","it","cb","history","id","window","state","findIndex","item","get","backIndex","pathWithoutHash","i","push","slice","length","pushState","replace","pathWithHash","hash","includes","location","replaceState","go","n","nextIndex","lastItemIndex","targetId","Promise","resolve","reject","done","interrupted","clearTimeout","timer","Error","title","document","ref","setTimeout","foundIndex","splice","onPopState","last","pop","removeEventListener","addEventListener","listen","listener"],"sourceRoot":"../../src","sources":["createMemoryHistory.tsx"],"mappings":"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","ignoreList":[]}
@@ -51,6 +51,11 @@ const findMatchingState = (a, b) => {
51
51
  * Check if the state change is popping the last route or history entry.
52
52
  */
53
53
  const isPoppingLastEntry = (current, record) => {
54
+ const currentRoute = current.routes[current.index];
55
+ const recordRoute = record.routes[record.index];
56
+ if (currentRoute == null || recordRoute == null) {
57
+ return false;
58
+ }
54
59
  if (current.history && record.history) {
55
60
  return current.history.length === record.history.length + 1;
56
61
  }
@@ -352,8 +357,6 @@ export function useLinking(ref, {
352
357
  }
353
358
 
354
359
  // Skip if the state hasn't changed since we last synced it
355
- // This avoids redundant work when the committed `state` event fires
356
- // after we already synced from `__unsafe_action__`
357
360
  if (previousState === state) {
358
361
  return;
359
362
  }
@@ -1 +1 @@
1
- {"version":3,"names":["CommonActions","findFocusedRoute","getActionFromState","getActionFromStateDefault","getPathFromState","getPathFromStateDefault","getStateFromPath","getStateFromPathDefault","useNavigationIndependentTree","isEqual","React","createMemoryHistory","ServerContext","getRoutesUntilIndex","state","routes","slice","index","getHistoryLength","history","length","findMatchingState","a","b","undefined","key","aHistoryLength","bHistoryLength","aRoute","bRoute","aChildState","bChildState","isPoppingLastEntry","current","record","currentRoutes","recordRoutes","every","route","i","currentRoute","series","cb","queue","Promise","resolve","callback","then","catch","e","console","error","linkingHandlers","useLinking","ref","enabled","config","independent","useEffect","process","env","NODE_ENV","join","trim","handler","Symbol","push","indexOf","splice","useState","enabledRef","useRef","configRef","getStateFromPathRef","getPathFromStateRef","getActionFromStateRef","validateRoutesNotExistInRootState","useCallback","navigation","rootState","getRootState","some","r","routeNames","includes","name","server","useContext","getInitialState","value","location","window","path","pathname","search","thenable","onfulfilled","previousIndexRef","previousStateRef","pendingPopStateDeltaRef","listen","previousIndex","rollbackHistory","delta","go","rollbackHistoryIfPrevented","pendingDelta","removePrevented","actionChangedState","unsubscribeEvent","addListener","data","type","defaultPrevented","unsubscribeAction","noop","dispatch","action","resetRoot","get","currentState","currentFocused","recordFocused","pending","goBack","warn","message","getPathForRoute","stateForPath","focusedRoute","params","previousRoute","hash","replace","onStateChange","previousState","pendingPopStateDelta","previousFocusedState","focusedState","historyDelta","nextIndex","backIndex","currentIndex"],"sourceRoot":"../../src","sources":["useLinking.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["CommonActions","findFocusedRoute","getActionFromState","getActionFromStateDefault","getPathFromState","getPathFromStateDefault","getStateFromPath","getStateFromPathDefault","useNavigationIndependentTree","isEqual","React","createMemoryHistory","ServerContext","getRoutesUntilIndex","state","routes","slice","index","getHistoryLength","history","length","findMatchingState","a","b","undefined","key","aHistoryLength","bHistoryLength","aRoute","bRoute","aChildState","bChildState","isPoppingLastEntry","current","record","currentRoute","recordRoute","currentRoutes","recordRoutes","every","route","i","series","cb","queue","Promise","resolve","callback","then","catch","e","console","error","linkingHandlers","useLinking","ref","enabled","config","independent","useEffect","process","env","NODE_ENV","join","trim","handler","Symbol","push","indexOf","splice","useState","enabledRef","useRef","configRef","getStateFromPathRef","getPathFromStateRef","getActionFromStateRef","validateRoutesNotExistInRootState","useCallback","navigation","rootState","getRootState","some","r","routeNames","includes","name","server","useContext","getInitialState","value","location","window","path","pathname","search","thenable","onfulfilled","previousIndexRef","previousStateRef","pendingPopStateDeltaRef","listen","previousIndex","rollbackHistory","delta","go","rollbackHistoryIfPrevented","pendingDelta","removePrevented","actionChangedState","unsubscribeEvent","addListener","data","type","defaultPrevented","unsubscribeAction","noop","dispatch","action","resetRoot","get","currentState","currentFocused","recordFocused","pending","goBack","warn","message","getPathForRoute","stateForPath","focusedRoute","params","previousRoute","hash","replace","onStateChange","previousState","pendingPopStateDelta","previousFocusedState","focusedState","historyDelta","nextIndex","backIndex","currentIndex"],"sourceRoot":"../../src","sources":["useLinking.tsx"],"mappings":";;AAAA,SACEA,aAAa,EACbC,gBAAgB,EAChBC,kBAAkB,IAAIC,yBAAyB,EAC/CC,gBAAgB,IAAIC,uBAAuB,EAC3CC,gBAAgB,IAAIC,uBAAuB,EAI3CC,4BAA4B,QACvB,wBAAwB;AAC/B,OAAOC,OAAO,MAAM,iBAAiB;AACrC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAE9B,SAASC,mBAAmB,QAAQ,0BAAuB;AAC3D,SAASC,aAAa,QAAQ,oBAAiB;;AAK/C;AACA;AACA;AACA;;AAGA,MAAMC,mBAAmB,GAAIC,KAAsB,IACjDA,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAC,EAAEF,KAAK,CAACG,KAAK,GAAG,CAAC,CAAC;;AAExC;AACA;AACA;AACA,MAAMC,gBAAgB,GAAIJ,KAAsB,IAC9CA,KAAK,CAACK,OAAO,GAAGL,KAAK,CAACK,OAAO,CAACC,MAAM,GAAGP,mBAAmB,CAACC,KAAK,CAAC,CAACM,MAAM;;AAE1E;AACA;AACA;AACA;AACA,MAAMC,iBAAiB,GAAGA,CACxBC,CAAgB,EAChBC,CAAgB,KACmB;EACnC,IAAID,CAAC,KAAKE,SAAS,IAAID,CAAC,KAAKC,SAAS,IAAIF,CAAC,CAACG,GAAG,KAAKF,CAAC,CAACE,GAAG,EAAE;IACzD,OAAO,CAACD,SAAS,EAAEA,SAAS,CAAC;EAC/B;EAEA,MAAME,cAAc,GAAGR,gBAAgB,CAACI,CAAC,CAAC;EAC1C,MAAMK,cAAc,GAAGT,gBAAgB,CAACK,CAAC,CAAC;EAE1C,MAAMK,MAAM,GAAGN,CAAC,CAACP,MAAM,CAACO,CAAC,CAACL,KAAK,CAAC;EAChC,MAAMY,MAAM,GAAGN,CAAC,CAACR,MAAM,CAACQ,CAAC,CAACN,KAAK,CAAC;EAEhC,IAAIW,MAAM,IAAI,IAAI,IAAIC,MAAM,IAAI,IAAI,EAAE;IACpC,OAAO,CAACP,CAAC,EAAEC,CAAC,CAAC;EACf;EAEA,MAAMO,WAAW,GAAGF,MAAM,CAACd,KAAsB;EACjD,MAAMiB,WAAW,GAAGF,MAAM,CAACf,KAAsB;;EAEjD;EACA;EACA;EACA;EACA;EACA,IACEY,cAAc,KAAKC,cAAc,IACjCC,MAAM,CAACH,GAAG,KAAKI,MAAM,CAACJ,GAAG,IACzBK,WAAW,KAAKN,SAAS,IACzBO,WAAW,KAAKP,SAAS,IACzBM,WAAW,CAACL,GAAG,KAAKM,WAAW,CAACN,GAAG,EACnC;IACA,OAAO,CAACH,CAAC,EAAEC,CAAC,CAAC;EACf;EAEA,OAAOF,iBAAiB,CAACS,WAAW,EAAEC,WAAW,CAAC;AACpD,CAAC;;AAED;AACA;AACA;AACA,MAAMC,kBAAkB,GAAGA,CACzBC,OAAwB,EACxBC,MAAuB,KACX;EACZ,MAAMC,YAAY,GAAGF,OAAO,CAAClB,MAAM,CAACkB,OAAO,CAAChB,KAAK,CAAC;EAClD,MAAMmB,WAAW,GAAGF,MAAM,CAACnB,MAAM,CAACmB,MAAM,CAACjB,KAAK,CAAC;EAE/C,IAAIkB,YAAY,IAAI,IAAI,IAAIC,WAAW,IAAI,IAAI,EAAE;IAC/C,OAAO,KAAK;EACd;EAEA,IAAIH,OAAO,CAACd,OAAO,IAAIe,MAAM,CAACf,OAAO,EAAE;IACrC,OAAOc,OAAO,CAACd,OAAO,CAACC,MAAM,KAAKc,MAAM,CAACf,OAAO,CAACC,MAAM,GAAG,CAAC;EAC7D;EAEA,MAAMiB,aAAa,GAAGxB,mBAAmB,CAACoB,OAAO,CAAC;EAClD,MAAMK,YAAY,GAAGzB,mBAAmB,CAACqB,MAAM,CAAC;EAEhD,IAAIG,aAAa,CAACjB,MAAM,KAAKkB,YAAY,CAAClB,MAAM,GAAG,CAAC,EAAE;IACpD,OAAOkB,YAAY,CAACC,KAAK,CAAC,CAACC,KAAK,EAAEC,CAAC,KAAK;MACtC,MAAMN,YAAY,GAAGE,aAAa,CAACI,CAAC,CAAC;MAErC,OAAON,YAAY,IAAI,IAAI,IAAIK,KAAK,CAACf,GAAG,KAAKU,YAAY,CAACV,GAAG;IAC/D,CAAC,CAAC;EACJ;EAEA,OAAO,KAAK;AACd,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMiB,MAAM,GAAIC,EAAuB,IAAK;EACjD,IAAIC,KAAK,GAAGC,OAAO,CAACC,OAAO,CAAC,CAAC;EAE7B,MAAMC,QAAQ,GAAGA,CAAA,KAAM;IACrB;IACAH,KAAK,GAAGA,KAAK,CAACI,IAAI,CAACL,EAAE,CAAC,CAACM,KAAK,CAAEC,CAAC,IAAK;MAClCC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;IAClB,CAAC,CAAC;EACJ,CAAC;EAED,OAAOH,QAAQ;AACjB,CAAC;AAED,MAAMM,eAAyB,GAAG,EAAE;AAIpC,OAAO,SAASC,UAAUA,CACxBC,GAAkE,EAClE;EACEC,OAAO,GAAG,IAAI;EACdC,MAAM;EACNnD,gBAAgB,GAAGC,uBAAuB;EAC1CH,gBAAgB,GAAGC,uBAAuB;EAC1CH,kBAAkB,GAAGC;AACd,CAAC,EACV;EACA,MAAMuD,WAAW,GAAGlD,4BAA4B,CAAC,CAAC;EAElDE,KAAK,CAACiD,SAAS,CAAC,MAAM;IACpB,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;MACzC,OAAOtC,SAAS;IAClB;IAEA,IAAIkC,WAAW,EAAE;MACf,OAAOlC,SAAS;IAClB;IAEA,IAAIgC,OAAO,KAAK,KAAK,IAAIH,eAAe,CAACjC,MAAM,EAAE;MAC/C+B,OAAO,CAACC,KAAK,CACX,CACE,6KAA6K,EAC7K,uFAAuF,EACvF,4DAA4D,CAC7D,CACEW,IAAI,CAAC,IAAI,CAAC,CACVC,IAAI,CAAC,CACV,CAAC;IACH;IAEA,MAAMC,OAAO,GAAGC,MAAM,CAAC,CAAC;IAExB,IAAIV,OAAO,KAAK,KAAK,EAAE;MACrBH,eAAe,CAACc,IAAI,CAACF,OAAO,CAAC;IAC/B;IAEA,OAAO,MAAM;MACX,MAAMhD,KAAK,GAAGoC,eAAe,CAACe,OAAO,CAACH,OAAO,CAAC;MAE9C,IAAIhD,KAAK,GAAG,CAAC,CAAC,EAAE;QACdoC,eAAe,CAACgB,MAAM,CAACpD,KAAK,EAAE,CAAC,CAAC;MAClC;IACF,CAAC;EACH,CAAC,EAAE,CAACuC,OAAO,EAAEE,WAAW,CAAC,CAAC;EAE1B,MAAM,CAACvC,OAAO,CAAC,GAAGT,KAAK,CAAC4D,QAAQ,CAAC3D,mBAAmB,CAAC;;EAErD;EACA;EACA;EACA,MAAM4D,UAAU,GAAG7D,KAAK,CAAC8D,MAAM,CAAChB,OAAO,CAAC;EACxC,MAAMiB,SAAS,GAAG/D,KAAK,CAAC8D,MAAM,CAACf,MAAM,CAAC;EACtC,MAAMiB,mBAAmB,GAAGhE,KAAK,CAAC8D,MAAM,CAAClE,gBAAgB,CAAC;EAC1D,MAAMqE,mBAAmB,GAAGjE,KAAK,CAAC8D,MAAM,CAACpE,gBAAgB,CAAC;EAC1D,MAAMwE,qBAAqB,GAAGlE,KAAK,CAAC8D,MAAM,CAACtE,kBAAkB,CAAC;EAE9DQ,KAAK,CAACiD,SAAS,CAAC,MAAM;IACpBY,UAAU,CAACtC,OAAO,GAAGuB,OAAO;IAC5BiB,SAAS,CAACxC,OAAO,GAAGwB,MAAM;IAC1BiB,mBAAmB,CAACzC,OAAO,GAAG3B,gBAAgB;IAC9CqE,mBAAmB,CAAC1C,OAAO,GAAG7B,gBAAgB;IAC9CwE,qBAAqB,CAAC3C,OAAO,GAAG/B,kBAAkB;EACpD,CAAC,CAAC;EAEF,MAAM2E,iCAAiC,GAAGnE,KAAK,CAACoE,WAAW,CACxDhE,KAAkB,IAAK;IACtB,MAAMiE,UAAU,GAAGxB,GAAG,CAACtB,OAAO;IAC9B,MAAM+C,SAAS,GAAGD,UAAU,EAAEE,YAAY,CAAC,CAAC;IAC5C;IACA;IACA,OAAOnE,KAAK,EAAEC,MAAM,CAACmE,IAAI,CAAEC,CAAC,IAAK,CAACH,SAAS,EAAEI,UAAU,CAACC,QAAQ,CAACF,CAAC,CAACG,IAAI,CAAC,CAAC;EAC3E,CAAC,EACD,CAAC/B,GAAG,CACN,CAAC;EAED,MAAMgC,MAAM,GAAG7E,KAAK,CAAC8E,UAAU,CAAC5E,aAAa,CAAC;EAE9C,MAAM6E,eAAe,GAAG/E,KAAK,CAACoE,WAAW,CAAC,MAAM;IAC9C,IAAIY,KAA8B;IAElC,IAAInB,UAAU,CAACtC,OAAO,EAAE;MACtB,MAAM0D,QAAQ,GACZJ,MAAM,EAAEI,QAAQ,KACf,OAAOC,MAAM,KAAK,WAAW,GAAGA,MAAM,CAACD,QAAQ,GAAGnE,SAAS,CAAC;MAE/D,MAAMqE,IAAI,GAAGF,QAAQ,GAAGA,QAAQ,CAACG,QAAQ,GAAGH,QAAQ,CAACI,MAAM,GAAGvE,SAAS;MAEvE,IAAIqE,IAAI,EAAE;QACR,IAAI;UACFH,KAAK,GAAGhB,mBAAmB,CAACzC,OAAO,CAAC4D,IAAI,EAAEpB,SAAS,CAACxC,OAAO,CAAC;QAC9D,CAAC,CAAC,OAAOiB,CAAC,EAAE;UACVC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;UAEhBwC,KAAK,GAAGlE,SAAS;QACnB;MACF;IACF;IAEA,MAAMwE,QAAQ,GAAG;MACfhD,IAAIA,CAACiD,WAAsD,EAAE;QAC3D,OAAOpD,OAAO,CAACC,OAAO,CAACmD,WAAW,GAAGA,WAAW,CAACP,KAAK,CAAC,GAAGA,KAAK,CAAC;MAClE,CAAC;MACDzC,KAAKA,CAAA,EAAG;QACN,OAAO+C,QAAQ;MACjB;IACF,CAAC;IAED,OAAOA,QAAQ;IACf;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,MAAME,gBAAgB,GAAGxF,KAAK,CAAC8D,MAAM,CAAqBhD,SAAS,CAAC;EACpE,MAAM2E,gBAAgB,GAAGzF,KAAK,CAAC8D,MAAM,CAA8BhD,SAAS,CAAC;EAC7E,MAAM4E,uBAAuB,GAAG1F,KAAK,CAAC8D,MAAM,CAC1ChD,SACF,CAAC;EAEDd,KAAK,CAACiD,SAAS,CAAC,MAAM;IACpBuC,gBAAgB,CAACjE,OAAO,GAAGd,OAAO,CAACF,KAAK;IAExC,OAAOE,OAAO,CAACkF,MAAM,CAAC,MAAM;MAC1B,MAAMtB,UAAU,GAAGxB,GAAG,CAACtB,OAAO;MAE9B,IAAI,CAAC8C,UAAU,IAAI,CAACvB,OAAO,EAAE;QAC3B;MACF;MAEA,MAAM;QAAEmC;MAAS,CAAC,GAAGC,MAAM;MAE3B,MAAMC,IAAI,GAAGF,QAAQ,CAACG,QAAQ,GAAGH,QAAQ,CAACI,MAAM;MAChD,MAAM9E,KAAK,GAAGE,OAAO,CAACF,KAAK;MAE3B,MAAMqF,aAAa,GAAGJ,gBAAgB,CAACjE,OAAO,IAAI,CAAC;MAEnDiE,gBAAgB,CAACjE,OAAO,GAAGhB,KAAK;MAEhC,MAAMsF,eAAe,GAAGA,CAAA,KAAM;QAC5B,MAAMC,KAAK,GAAGF,aAAa,GAAGrF,KAAK;QAEnC,IAAIuF,KAAK,KAAK,CAAC,EAAE;UACf;QACF;QAEArF,OAAO,CACJsF,EAAE,CAACD,KAAK;QACT;QAAA,EACExD,IAAI,CAAC,MAAM;UACXkD,gBAAgB,CAACjE,OAAO,GAAGd,OAAO,CAACF,KAAK;QAC1C,CAAC,CAAC,CACDgC,KAAK,CAAC,MAAM;UACX;QAAA,CACD,CAAC;MACN,CAAC;MAED,MAAMyD,0BAA0B,GAAGA,CACjC3D,QAAoB,EACpB4D,YAA2B,KACxB;QACH,IAAIC,eAAe,GAAG,KAAK;QAC3B,IAAIC,kBAAkB,GAAG,KAAK;QAE9B,MAAMC,gBAAgB,GAAG/B,UAAU,CAACgC,WAAW,CAC7C,kBAAkB,EACjB7D,CAAC,IAAK;UACL,IAAIA,CAAC,CAAC8D,IAAI,CAACC,IAAI,KAAK,cAAc,IAAI/D,CAAC,CAAC8D,IAAI,CAACE,gBAAgB,EAAE;YAC7DN,eAAe,GAAG,IAAI;UACxB;QACF,CACF,CAAC;;QAED;QACA;QACA;QACA,MAAMO,iBAAiB,GAAGpC,UAAU,CAACgC,WAAW,CAC9C,mBAAmB,EAClB7D,CAAC,IAAK;UACL,IAAI,CAACA,CAAC,CAAC8D,IAAI,CAACI,IAAI,EAAE;YAChBP,kBAAkB,GAAG,IAAI;UAC3B;QACF,CACF,CAAC;QAED,IAAI;UACF9D,QAAQ,CAAC,CAAC;QACZ,CAAC,SAAS;UACR+D,gBAAgB,CAAC,CAAC;UAClBK,iBAAiB,CAAC,CAAC;QACrB;QAEA,IAAIN,kBAAkB,EAAE;UACtB;UACA;UACAT,uBAAuB,CAACnE,OAAO,GAAG0E,YAAY;QAChD,CAAC,MAAM,IAAIC,eAAe,EAAE;UAC1BL,eAAe,CAAC,CAAC;QACnB;MACF,CAAC;MAED,MAAMc,QAAQ,GAAGA,CACfC,MAAiD,EACjDX,YAA2B,KACxB;QACHD,0BAA0B,CACxB,MAAM3B,UAAU,CAACsC,QAAQ,CAACC,MAAM,CAAC,EACjCX,YACF,CAAC;MACH,CAAC;MAED,MAAMY,SAAS,GAAGA,CAChBzG,KAAiD,EACjD6F,YAA2B,KACxB;QACHD,0BAA0B,CACxB,MAAM3B,UAAU,CAACwC,SAAS,CAACzG,KAAK,CAAC,EACjC6F,YACF,CAAC;MACH,CAAC;;MAED;MACA;MACA;MACA,MAAMzE,MAAM,GAAGf,OAAO,CAACqG,GAAG,CAACvG,KAAK,CAAC;MAEjC,IAAIiB,MAAM,EAAE2D,IAAI,KAAKA,IAAI,IAAI3D,MAAM,EAAEpB,KAAK,EAAE;QAC1C,MAAM2G,YAAY,GAAG1C,UAAU,CAACE,YAAY,CAAC,CAAC;QAE9C,MAAM,CAACyC,cAAc,EAAEC,aAAa,CAAC,GAAGtG,iBAAiB,CACvDoG,YAAY,EACZvF,MAAM,CAACpB,KACT,CAAC;QAED,IACEwF,aAAa,GAAGrF,KAAK,KAAK,CAAC,IAC3ByG,cAAc,IACdC,aAAa,IACb3F,kBAAkB,CAAC0F,cAAc,EAAEC,aAAa,CAAC,EACjD;UACA,MAAMC,OAAO,GAAGxB,uBAAuB,CAACnE,OAAO;;UAE/C;UACA;UACA;UACAoF,QAAQ,CACNrH,aAAa,CAAC6H,MAAM,CAAC,CAAC;UACtB;UACAD,OAAO,KAAK,SAAS,GAAG,SAAS,GAAG,CAACA,OAAO,IAAI,CAAC,IAAI,CACvD,CAAC;QACH,CAAC,MAAM;UACL;UACAL,SAAS,CACPrF,MAAM,CAACpB,KAAK,EACZ4G,cAAc,IAAIC,aAAa,GAC3BzG,gBAAgB,CAACyG,aAAa,CAAC,GAC7BzG,gBAAgB,CAACwG,cAAc,CAAC,GAClC,SACN,CAAC;QACH;QAEA;MACF;MAEA,IAAI5G,KAA8B;MAElC,IAAI;QACFA,KAAK,GAAG4D,mBAAmB,CAACzC,OAAO,CAAC4D,IAAI,EAAEpB,SAAS,CAACxC,OAAO,CAAC;MAC9D,CAAC,CAAC,OAAOiB,CAAC,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;QAEhBpC,KAAK,GAAGU,SAAS;MACnB;;MAEA;MACA;MACA,IAAIV,KAAK,EAAE;QACT;QACA;QACA,IAAI+D,iCAAiC,CAAC/D,KAAK,CAAC,EAAE;UAC5C;QACF;QAEA,IAAIG,KAAK,GAAGqF,aAAa,EAAE;UACzB,MAAMgB,MAAM,GAAG1C,qBAAqB,CAAC3C,OAAO,CAC1CnB,KAAK,EACL2D,SAAS,CAACxC,OACZ,CAAC;UAED,IAAIqF,MAAM,KAAK9F,SAAS,EAAE;YACxB,IAAI;cACF6F,QAAQ,CAACC,MAAM,EAAE,SAAS,CAAC;YAC7B,CAAC,CAAC,OAAOpE,CAAC,EAAE;cACV;cACA;cACAC,OAAO,CAAC2E,IAAI,CACV,qDAAqDjC,IAAI,MACvD,OAAO3C,CAAC,KAAK,QAAQ,IAAIA,CAAC,IAAI,IAAI,IAAI,SAAS,IAAIA,CAAC,GAChDA,CAAC,CAAC6E,OAAO,GACT7E,CAAC,EAET,CAAC;YACH;UACF,CAAC,MAAM;YACLqE,SAAS,CAACzG,KAAK,EAAE,SAAS,CAAC;UAC7B;QACF,CAAC,MAAM;UACLyG,SAAS,CAACzG,KAAK,EAAE,SAAS,CAAC;QAC7B;MACF,CAAC,MAAM;QACL;QACAyG,SAAS,CAACzG,KAAK,EAAE,SAAS,CAAC;MAC7B;IACF,CAAC,CAAC;EACJ,CAAC,EAAE,CAAC0C,OAAO,EAAErC,OAAO,EAAEoC,GAAG,EAAEsB,iCAAiC,CAAC,CAAC;EAE9DnE,KAAK,CAACiD,SAAS,CAAC,MAAM;IACpB,IAAI,CAACH,OAAO,EAAE;MACZ;IACF;IAEA,MAAMwE,eAAe,GAAGA,CACtBxF,KAA0C,EAC1C1B,KAAsB,KACX;MACX,IAAI+E,IAAI;;MAER;MACA;MACA,IAAIrD,KAAK,EAAEqD,IAAI,EAAE;QACf,IAAIoC,YAAqC;QAEzC,IAAI;UACFA,YAAY,GAAGvD,mBAAmB,CAACzC,OAAO,CACxCO,KAAK,CAACqD,IAAI,EACVpB,SAAS,CAACxC,OACZ,CAAC;QACH,CAAC,CAAC,OAAOiB,CAAC,EAAE;UACVC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;UAEhB+E,YAAY,GAAGzG,SAAS;QAC1B;QAEA,IAAIyG,YAAY,EAAE;UAChB,MAAMC,YAAY,GAAGjI,gBAAgB,CAACgI,YAAY,CAAC;UAEnD,IACEC,YAAY,IACZA,YAAY,CAAC5C,IAAI,KAAK9C,KAAK,CAAC8C,IAAI,IAChC7E,OAAO,CAACyH,YAAY,CAACC,MAAM,EAAE3F,KAAK,CAAC2F,MAAM,CAAC,EAC1C;YACAtC,IAAI,GAAGrD,KAAK,CAACqD,IAAI;UACnB;QACF;MACF;MAEA,IAAIA,IAAI,IAAI,IAAI,EAAE;QAChBA,IAAI,GAAGlB,mBAAmB,CAAC1C,OAAO,CAACnB,KAAK,EAAE2D,SAAS,CAACxC,OAAO,CAAC;MAC9D;MAEA,MAAMmG,aAAa,GAAGjC,gBAAgB,CAAClE,OAAO,GAC1ChC,gBAAgB,CAACkG,gBAAgB,CAAClE,OAAO,CAAC,GAC1CT,SAAS;;MAEb;MACA,IACE4G,aAAa,IACb5F,KAAK,IACL,KAAK,IAAI4F,aAAa,IACtB,KAAK,IAAI5F,KAAK,IACd4F,aAAa,CAAC3G,GAAG,KAAKe,KAAK,CAACf,GAAG,EAC/B;QACAoE,IAAI,GAAGA,IAAI,GAAGF,QAAQ,CAAC0C,IAAI;MAC7B;MAEA,OAAOxC,IAAI;IACb,CAAC;IAED,IAAItC,GAAG,CAACtB,OAAO,EAAE;MACf;MACA;MACA,MAAMnB,KAAK,GAAGyC,GAAG,CAACtB,OAAO,CAACgD,YAAY,CAAC,CAAC;MAExC,IAAInE,KAAK,EAAE;QACT,MAAM0B,KAAK,GAAGvC,gBAAgB,CAACa,KAAK,CAAC;QACrC,MAAM+E,IAAI,GAAGmC,eAAe,CAACxF,KAAK,EAAE1B,KAAK,CAAC;QAE1C,IAAIqF,gBAAgB,CAAClE,OAAO,KAAKT,SAAS,EAAE;UAC1C2E,gBAAgB,CAAClE,OAAO,GAAGnB,KAAK;QAClC;QAEAK,OAAO,CAACmH,OAAO,CAAC;UAAEzC,IAAI;UAAE/E;QAAM,CAAC,CAAC;QAChCoF,gBAAgB,CAACjE,OAAO,GAAGd,OAAO,CAACF,KAAK;MAC1C;IACF;IAEA,MAAMsH,aAAa,GAAG,MAAAA,CAAA,KAAY;MAChC,MAAMxD,UAAU,GAAGxB,GAAG,CAACtB,OAAO;MAE9B,IAAI,CAAC8C,UAAU,IAAI,CAACvB,OAAO,EAAE;QAC3B;MACF;MAEA,MAAMgF,aAAa,GAAGrC,gBAAgB,CAAClE,OAAO;MAC9C,MAAMnB,KAAK,GAAGiE,UAAU,CAACE,YAAY,CAAC,CAAC;;MAEvC;MACA,IAAI,CAACnE,KAAK,EAAE;QACV;MACF;;MAEA;MACA,IAAI0H,aAAa,KAAK1H,KAAK,EAAE;QAC3B;MACF;MAEA,MAAM0B,KAAK,GAAGvC,gBAAgB,CAACa,KAAK,CAAC;MACrC,MAAM+E,IAAI,GAAGmC,eAAe,CAACxF,KAAK,EAAE1B,KAAK,CAAC;MAE1C,MAAM2H,oBAAoB,GAAGrC,uBAAuB,CAACnE,OAAO;MAE5DkE,gBAAgB,CAAClE,OAAO,GAAGnB,KAAK;MAChCsF,uBAAuB,CAACnE,OAAO,GAAGT,SAAS;;MAE3C;MACA;MACA;MACA;MACA,MAAM,CAACkH,oBAAoB,EAAEC,YAAY,CAAC,GAAGtH,iBAAiB,CAC5DmH,aAAa,EACb1H,KACF,CAAC;MAED,IACE4H,oBAAoB,IACpBC,YAAY;MACZ;MACAF,oBAAoB,KAAK,SAAS,EAClC;QACA,MAAMG,YAAY,GAChB1H,gBAAgB,CAACyH,YAAY,CAAC,GAC9BzH,gBAAgB,CAACwH,oBAAoB,CAAC;QACtC;QACCD,oBAAoB,IAAI,CAAC,CAAC;QAE7B,IAAIG,YAAY,GAAG,CAAC,EAAE;UACpB;UACA;UACAzH,OAAO,CAACgD,IAAI,CAAC;YAAE0B,IAAI;YAAE/E;UAAM,CAAC,CAAC;QAC/B,CAAC,MAAM,IAAI8H,YAAY,GAAG,CAAC,EAAE;UAC3B;;UAEA,MAAMC,SAAS,GAAG1H,OAAO,CAAC2H,SAAS,CAAC;YAAEjD;UAAK,CAAC,CAAC;UAC7C,MAAMkD,YAAY,GAAG5H,OAAO,CAACF,KAAK;UAElC,IAAI;YACF,IACE4H,SAAS,KAAK,CAAC,CAAC,IAChBA,SAAS,GAAGE,YAAY;YACxB;YACA5H,OAAO,CAACqG,GAAG,CAACqB,SAAS,CAAC,EACtB;cACA;cACA,MAAM1H,OAAO,CAACsF,EAAE,CAACoC,SAAS,GAAGE,YAAY,CAAC;YAC5C,CAAC,MAAM;cACL;cACA;cACA;cACA,MAAM5H,OAAO,CAACsF,EAAE,CAACmC,YAAY,CAAC;YAChC;;YAEA;YACAzH,OAAO,CAACmH,OAAO,CAAC;cAAEzC,IAAI;cAAE/E;YAAM,CAAC,CAAC;UAClC,CAAC,CAAC,OAAOoC,CAAC,EAAE;YACV;UAAA;QAEJ,CAAC,MAAM;UACL;UACA/B,OAAO,CAACmH,OAAO,CAAC;YAAEzC,IAAI;YAAE/E;UAAM,CAAC,CAAC;QAClC;MACF,CAAC,MAAM;QACL;QACA;QACAK,OAAO,CAACmH,OAAO,CAAC;UAAEzC,IAAI;UAAE/E;QAAM,CAAC,CAAC;MAClC;MAEAoF,gBAAgB,CAACjE,OAAO,GAAGd,OAAO,CAACF,KAAK;IAC1C,CAAC;;IAED;IACA;IACA;IACA,OAAOsC,GAAG,CAACtB,OAAO,EAAE8E,WAAW,CAAC,OAAO,EAAErE,MAAM,CAAC6F,aAAa,CAAC,CAAC;EACjE,CAAC,EAAE,CAAC/E,OAAO,EAAErC,OAAO,EAAEoC,GAAG,CAAC,CAAC;EAE3B,OAAO;IACLkC;EACF,CAAC;AACH","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"createMemoryHistory.d.ts","sourceRoot":"","sources":["../../../src/createMemoryHistory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,KAAK,aAAa,GAAG;IAEnB,EAAE,EAAE,MAAM,CAAC;IAEX,KAAK,EAAE,eAAe,CAAC;IAEvB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAIF,wBAAgB,mBAAmB;oBAmBlB,MAAM;eAcR,MAAM;wBAIG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;0BAed;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE;6BAoBrC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE;UAqC3D,MAAM;qBA0FK,MAAM,IAAI;EAqB9B"}
1
+ {"version":3,"file":"createMemoryHistory.d.ts","sourceRoot":"","sources":["../../../src/createMemoryHistory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,KAAK,aAAa,GAAG;IAEnB,EAAE,EAAE,MAAM,CAAC;IAEX,KAAK,EAAE,eAAe,CAAC;IAEvB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAIF,wBAAgB,mBAAmB;oBAmBlB,MAAM;eAcR,MAAM;wBAIG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;0BAmBd;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE;6BAoBrC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE;UAwC3D,MAAM;qBAgGK,MAAM,IAAI;EAqB9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLinking.d.ts","sourceRoot":"","sources":["../../../src/useLinking.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,gBAAgB,IAAI,uBAAuB,EAC3C,KAAK,sBAAsB,EAE3B,KAAK,aAAa,EAEnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAS,CAAC;AAE9C,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAqF9D;;GAEG;AACH,eAAO,MAAM,MAAM,GAAI,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,eAS7C,CAAC;AAIF,KAAK,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAE7C,wBAAgB,UAAU,CACxB,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,EAClE,EACE,OAAc,EACd,MAAM,EACN,gBAA0C,EAC1C,gBAA0C,EAC1C,kBAA8C,GAC/C,EAAE,OAAO;2BAsGW,WAAW,CAAC,WAAW,GAAG,SAAS,CAAC;EAsY1D"}
1
+ {"version":3,"file":"useLinking.d.ts","sourceRoot":"","sources":["../../../src/useLinking.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,gBAAgB,IAAI,uBAAuB,EAC3C,KAAK,sBAAsB,EAE3B,KAAK,aAAa,EAEnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAS,CAAC;AAE9C,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AA4F9D;;GAEG;AACH,eAAO,MAAM,MAAM,GAAI,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,eAW7C,CAAC;AAIF,KAAK,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;AAE7C,wBAAgB,UAAU,CACxB,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,sBAAsB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,EAClE,EACE,OAAc,EACd,MAAM,EACN,gBAA0C,EAC1C,gBAA0C,EAC1C,kBAA8C,GAC/C,EAAE,OAAO;2BAsGW,WAAW,CAAC,WAAW,GAAG,SAAS,CAAC;EAoY1D"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@react-navigation/native",
3
3
  "description": "React Native integration for React Navigation",
4
- "version": "7.3.6",
4
+ "version": "7.3.8",
5
5
  "keywords": [
6
6
  "react-native",
7
7
  "react-navigation",
@@ -42,7 +42,7 @@
42
42
  "clean": "del lib"
43
43
  },
44
44
  "dependencies": {
45
- "@react-navigation/core": "^7.21.4",
45
+ "@react-navigation/core": "^7.21.5",
46
46
  "escape-string-regexp": "^4.0.0",
47
47
  "fast-deep-equal": "^3.1.3",
48
48
  "nanoid": "^3.3.11",
@@ -84,5 +84,5 @@
84
84
  ]
85
85
  ]
86
86
  },
87
- "gitHead": "207ce5a98e84bacb3a254ca8ab46856704f73542"
87
+ "gitHead": "239bf71a90e8f8a5264bab48926c7be1d28c2bc6"
88
88
  }
@@ -10,7 +10,7 @@ type HistoryRecord = {
10
10
  path: string;
11
11
  };
12
12
 
13
- const getPathWithoutHash = (path: string) => path.split('#')[0];
13
+ const getPathWithoutHash = (path: string) => path.split('#')[0] ?? '';
14
14
 
15
15
  export function createMemoryHistory() {
16
16
  let index = 0;
@@ -56,6 +56,10 @@ export function createMemoryHistory() {
56
56
  for (let i = index - 1; i >= 0; i--) {
57
57
  const item = items[i];
58
58
 
59
+ if (item == null) {
60
+ continue;
61
+ }
62
+
59
63
  if (item.path === pathWithoutHash) {
60
64
  return i;
61
65
  }
@@ -107,9 +111,12 @@ export function createMemoryHistory() {
107
111
  items = [{ path: pathWithoutHash, state, id }];
108
112
  index = 0;
109
113
  } else {
110
- if (items[index].path === pathWithoutHash) {
114
+ const item = items[index];
115
+
116
+ if (item?.path === pathWithoutHash) {
111
117
  pathWithHash = pathWithHash + hash;
112
118
  }
119
+
113
120
  items[index] = { path: pathWithoutHash, state, id };
114
121
  }
115
122
 
@@ -144,6 +151,8 @@ export function createMemoryHistory() {
144
151
  return;
145
152
  }
146
153
 
154
+ const targetId = items[index]?.id;
155
+
147
156
  // When we call `history.go`, `popstate` will fire when there's history to go back to
148
157
  // So we need to somehow handle following cases:
149
158
  // - There's history to go back, `history.go` is called, and `popstate` fires
@@ -153,7 +162,11 @@ export function createMemoryHistory() {
153
162
  const done = (interrupted?: boolean) => {
154
163
  clearTimeout(timer);
155
164
 
156
- if (interrupted) {
165
+ // The current entry may not be the one we intended to land on:
166
+ // - The traversal didn't happen yet, e.g. it took longer than the timeout
167
+ // - The user navigated in the browser while our traversal was in-flight
168
+ // So we treat it the same as the operation being interrupted
169
+ if (interrupted || window.history.state?.id !== targetId) {
157
170
  reject(new Error('History was changed during navigation.'));
158
171
  return;
159
172
  }
@@ -185,7 +198,7 @@ export function createMemoryHistory() {
185
198
  const foundIndex = pending.findIndex((it) => it.ref === done);
186
199
 
187
200
  if (foundIndex > -1) {
188
- pending[foundIndex].cb();
201
+ pending[foundIndex]?.cb();
189
202
  pending.splice(foundIndex, 1);
190
203
  }
191
204
 
@@ -83,6 +83,13 @@ const isPoppingLastEntry = (
83
83
  current: NavigationState,
84
84
  record: NavigationState
85
85
  ): boolean => {
86
+ const currentRoute = current.routes[current.index];
87
+ const recordRoute = record.routes[record.index];
88
+
89
+ if (currentRoute == null || recordRoute == null) {
90
+ return false;
91
+ }
92
+
86
93
  if (current.history && record.history) {
87
94
  return current.history.length === record.history.length + 1;
88
95
  }
@@ -106,12 +113,14 @@ const isPoppingLastEntry = (
106
113
  */
107
114
  export const series = (cb: () => Promise<void>) => {
108
115
  let queue = Promise.resolve();
116
+
109
117
  const callback = () => {
110
118
  // eslint-disable-next-line promise/no-callback-in-promise
111
119
  queue = queue.then(cb).catch((e) => {
112
120
  console.error(e);
113
121
  });
114
122
  };
123
+
115
124
  return callback;
116
125
  };
117
126
 
@@ -531,8 +540,6 @@ export function useLinking(
531
540
  }
532
541
 
533
542
  // Skip if the state hasn't changed since we last synced it
534
- // This avoids redundant work when the committed `state` event fires
535
- // after we already synced from `__unsafe_action__`
536
543
  if (previousState === state) {
537
544
  return;
538
545
  }