@react-navigation/core 8.0.0-alpha.33 → 8.0.0-alpha.35

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.
Files changed (136) hide show
  1. package/README.md +17 -14
  2. package/lib/module/BaseNavigationContainer.js +14 -2
  3. package/lib/module/BaseNavigationContainer.js.map +1 -1
  4. package/lib/module/NavigationBuilderContext.js +8 -13
  5. package/lib/module/NavigationBuilderContext.js.map +1 -1
  6. package/lib/module/NavigationIndependentTree.js +45 -15
  7. package/lib/module/NavigationIndependentTree.js.map +1 -1
  8. package/lib/module/NavigationProvider.js +9 -4
  9. package/lib/module/NavigationProvider.js.map +1 -1
  10. package/lib/module/PreventRemoveProvider.js +2 -2
  11. package/lib/module/PreventRemoveProvider.js.map +1 -1
  12. package/lib/module/SceneView.js +2 -1
  13. package/lib/module/SceneView.js.map +1 -1
  14. package/lib/module/getPathFromState.js +41 -16
  15. package/lib/module/getPathFromState.js.map +1 -1
  16. package/lib/module/getPatternParts.js +43 -12
  17. package/lib/module/getPatternParts.js.map +1 -1
  18. package/lib/module/getStateFromPath.js +175 -109
  19. package/lib/module/getStateFromPath.js.map +1 -1
  20. package/lib/module/index.js +1 -0
  21. package/lib/module/index.js.map +1 -1
  22. package/lib/module/useDescriptors.js +9 -6
  23. package/lib/module/useDescriptors.js.map +1 -1
  24. package/lib/module/useFocusEffect.js +4 -2
  25. package/lib/module/useFocusEffect.js.map +1 -1
  26. package/lib/module/useFocusEvents.js +4 -2
  27. package/lib/module/useFocusEvents.js.map +1 -1
  28. package/lib/module/useFocusedListenersChildrenAdapter.js +2 -2
  29. package/lib/module/useFocusedListenersChildrenAdapter.js.map +1 -1
  30. package/lib/module/useIsFocused.js +1 -0
  31. package/lib/module/useIsFocused.js.map +1 -1
  32. package/lib/module/useNavigationBuilder.js +42 -39
  33. package/lib/module/useNavigationBuilder.js.map +1 -1
  34. package/lib/module/useNavigationCache.js +85 -81
  35. package/lib/module/useNavigationCache.js.map +1 -1
  36. package/lib/module/useNavigationHelpers.js +2 -2
  37. package/lib/module/useNavigationHelpers.js.map +1 -1
  38. package/lib/module/useNavigationState.js +48 -23
  39. package/lib/module/useNavigationState.js.map +1 -1
  40. package/lib/module/useOnAction.js +6 -4
  41. package/lib/module/useOnAction.js.map +1 -1
  42. package/lib/module/useOnGetNavigation.js +2 -2
  43. package/lib/module/useOnGetNavigation.js.map +1 -1
  44. package/lib/module/useOnGetState.js +2 -2
  45. package/lib/module/useOnGetState.js.map +1 -1
  46. package/lib/module/useOnPreventRemove.js +2 -2
  47. package/lib/module/useOnPreventRemove.js.map +1 -1
  48. package/lib/module/useOnRouteFocus.js +2 -2
  49. package/lib/module/useOnRouteFocus.js.map +1 -1
  50. package/lib/module/useOptionsGetters.js +19 -20
  51. package/lib/module/useOptionsGetters.js.map +1 -1
  52. package/lib/module/usePreventRemoveContext.js +1 -1
  53. package/lib/module/usePreventRemoveContext.js.map +1 -1
  54. package/lib/module/useRouteCache.js +43 -33
  55. package/lib/module/useRouteCache.js.map +1 -1
  56. package/lib/module/useScheduleUpdate.js +5 -3
  57. package/lib/module/useScheduleUpdate.js.map +1 -1
  58. package/lib/module/useSyncState.js +9 -10
  59. package/lib/module/useSyncState.js.map +1 -1
  60. package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
  61. package/lib/typescript/src/NavigationBuilderContext.d.ts +9 -6
  62. package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -1
  63. package/lib/typescript/src/NavigationIndependentTree.d.ts.map +1 -1
  64. package/lib/typescript/src/NavigationProvider.d.ts.map +1 -1
  65. package/lib/typescript/src/PreventRemoveProvider.d.ts.map +1 -1
  66. package/lib/typescript/src/SceneView.d.ts +2 -1
  67. package/lib/typescript/src/SceneView.d.ts.map +1 -1
  68. package/lib/typescript/src/getPathFromState.d.ts.map +1 -1
  69. package/lib/typescript/src/getPatternParts.d.ts +4 -2
  70. package/lib/typescript/src/getPatternParts.d.ts.map +1 -1
  71. package/lib/typescript/src/getStateFromPath.d.ts.map +1 -1
  72. package/lib/typescript/src/index.d.ts +1 -0
  73. package/lib/typescript/src/index.d.ts.map +1 -1
  74. package/lib/typescript/src/types.d.ts +1 -1
  75. package/lib/typescript/src/types.d.ts.map +1 -1
  76. package/lib/typescript/src/useDescriptors.d.ts +2 -2
  77. package/lib/typescript/src/useDescriptors.d.ts.map +1 -1
  78. package/lib/typescript/src/useFocusEffect.d.ts.map +1 -1
  79. package/lib/typescript/src/useFocusEvents.d.ts.map +1 -1
  80. package/lib/typescript/src/useIsFocused.d.ts +1 -0
  81. package/lib/typescript/src/useIsFocused.d.ts.map +1 -1
  82. package/lib/typescript/src/useNavigationBuilder.d.ts +1 -3
  83. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  84. package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
  85. package/lib/typescript/src/useNavigationState.d.ts +1 -0
  86. package/lib/typescript/src/useNavigationState.d.ts.map +1 -1
  87. package/lib/typescript/src/useOnAction.d.ts.map +1 -1
  88. package/lib/typescript/src/useOnGetNavigation.d.ts.map +1 -1
  89. package/lib/typescript/src/useOnGetState.d.ts.map +1 -1
  90. package/lib/typescript/src/useOnPreventRemove.d.ts.map +1 -1
  91. package/lib/typescript/src/useOnRouteFocus.d.ts.map +1 -1
  92. package/lib/typescript/src/useOptionsGetters.d.ts +2 -4
  93. package/lib/typescript/src/useOptionsGetters.d.ts.map +1 -1
  94. package/lib/typescript/src/useRouteCache.d.ts +7 -12
  95. package/lib/typescript/src/useRouteCache.d.ts.map +1 -1
  96. package/lib/typescript/src/useScheduleUpdate.d.ts.map +1 -1
  97. package/lib/typescript/src/useSyncState.d.ts.map +1 -1
  98. package/lib/typescript/src/utilities.d.ts +3 -0
  99. package/lib/typescript/src/utilities.d.ts.map +1 -1
  100. package/package.json +2 -3
  101. package/src/BaseNavigationContainer.tsx +19 -2
  102. package/src/NavigationBuilderContext.tsx +22 -18
  103. package/src/NavigationIndependentTree.tsx +56 -22
  104. package/src/NavigationProvider.tsx +13 -4
  105. package/src/PreventRemoveProvider.tsx +2 -8
  106. package/src/SceneView.tsx +3 -1
  107. package/src/getPathFromState.tsx +63 -15
  108. package/src/getPatternParts.tsx +75 -14
  109. package/src/getStateFromPath.tsx +250 -113
  110. package/src/index.tsx +1 -0
  111. package/src/types.tsx +1 -1
  112. package/src/useDescriptors.tsx +20 -6
  113. package/src/useFocusEffect.tsx +5 -2
  114. package/src/useFocusEvents.tsx +5 -2
  115. package/src/useFocusedListenersChildrenAdapter.tsx +2 -2
  116. package/src/useIsFocused.tsx +4 -0
  117. package/src/useNavigationBuilder.tsx +54 -48
  118. package/src/useNavigationCache.tsx +130 -108
  119. package/src/useNavigationHelpers.tsx +2 -2
  120. package/src/useNavigationState.tsx +60 -29
  121. package/src/useOnAction.tsx +6 -5
  122. package/src/useOnGetNavigation.tsx +3 -2
  123. package/src/useOnGetState.tsx +4 -2
  124. package/src/useOnPreventRemove.tsx +4 -2
  125. package/src/useOnRouteFocus.tsx +2 -4
  126. package/src/useOptionsGetters.tsx +26 -25
  127. package/src/usePreventRemoveContext.tsx +1 -1
  128. package/src/useRouteCache.tsx +49 -33
  129. package/src/useScheduleUpdate.tsx +6 -3
  130. package/src/useSyncState.tsx +9 -11
  131. package/src/utilities.tsx +5 -2
  132. package/lib/module/useComponent.js +0 -34
  133. package/lib/module/useComponent.js.map +0 -1
  134. package/lib/typescript/src/useComponent.d.ts +0 -7
  135. package/lib/typescript/src/useComponent.d.ts.map +0 -1
  136. package/src/useComponent.tsx +0 -37
package/README.md CHANGED
@@ -17,28 +17,31 @@ A basic custom navigator bundling a router and a view looks like this:
17
17
  ```js
18
18
  import {
19
19
  createNavigatorFactory,
20
+ createScreenFactory,
20
21
  useNavigationBuilder,
21
22
  } from '@react-navigation/core';
22
23
  import { StackRouter } from '@react-navigation/routers';
23
24
 
24
25
  function StackNavigator({ initialRouteName, children, ...rest }) {
25
- const { state, navigation, descriptors, NavigationContent } =
26
- useNavigationBuilder(StackRouter, {
26
+ const { state, navigation, descriptors, render } = useNavigationBuilder(
27
+ StackRouter,
28
+ {
27
29
  initialRouteName,
28
30
  children,
29
- });
30
-
31
- return (
32
- <NavigationContent>
33
- <StackView
34
- state={state}
35
- navigation={navigation}
36
- descriptors={descriptors}
37
- {...rest}
38
- />
39
- </NavigationContent>
31
+ }
32
+ );
33
+
34
+ return render(
35
+ <StackView
36
+ state={state}
37
+ navigation={navigation}
38
+ descriptors={descriptors}
39
+ {...rest}
40
+ />
40
41
  );
41
42
  }
42
43
 
43
- export default createNavigatorFactory(StackNavigator);
44
+ export const createStackNavigator = createNavigatorFactory(StackNavigator);
45
+
46
+ export const createStackScreen = createScreenFactory();
44
47
  ```
@@ -289,9 +289,14 @@ export function BaseNavigationContainer({
289
289
  data: event
290
290
  });
291
291
  });
292
+ const isOptionsListenerReadyRef = React.useRef(false);
292
293
  const lastEmittedOptionsRef = React.useRef(undefined);
293
- const onOptionsChange = useLatestCallback(options => {
294
- if (lastEmittedOptionsRef.current === options) {
294
+ const onOptionsChange = useLatestCallback(() => {
295
+ if (!isOptionsListenerReadyRef.current) {
296
+ return;
297
+ }
298
+ const options = getCurrentOptions();
299
+ if (options == null || lastEmittedOptionsRef.current === options) {
295
300
  return;
296
301
  }
297
302
  lastEmittedOptionsRef.current = options;
@@ -302,6 +307,13 @@ export function BaseNavigationContainer({
302
307
  }
303
308
  });
304
309
  });
310
+ React.useEffect(() => {
311
+ isOptionsListenerReadyRef.current = true;
312
+ onOptionsChange();
313
+ return () => {
314
+ isOptionsListenerReadyRef.current = false;
315
+ };
316
+ }, [onOptionsChange]);
305
317
  const lastEmittedStateRef = React.useRef(undefined);
306
318
  const getIsStateEmitted = useLatestCallback(() => !isFirstMountRef.current && lastEmittedStateRef.current === getState());
307
319
  const builderContext = React.useMemo(() => ({
@@ -1 +1 @@
1
- {"version":3,"names":["CommonActions","React","useLatestCallback","warnOnce","checkDuplicateRouteNames","ConsumedParamsContext","NOT_INITIALIZED_ERROR","EnsureSingleNavigator","findFocusedRoute","NavigationBuilderContext","NavigationContainerRefContext","NavigationIndependentTreeContext","NavigationRootContext","NavigationStateContext","ThemeProvider","UnhandledActionContext","useChildListeners","useEventEmitter","useKeyedChildListeners","useLazyValue","useNavigationIndependentTree","useOptionsGetters","useSyncState","jsx","_jsx","getPartialState","state","undefined","key","routeNames","partialState","stale","routes","map","route","BaseNavigationContainer","initialState","onStateChange","onReady","onUnhandledAction","theme","children","ref","parent","use","independent","isDefault","Error","getState","setState","subscribe","scheduleUpdate","flushUpdates","consumedParams","WeakMap","isFirstMountRef","useRef","navigatorKeyRef","getKey","useCallback","current","setKey","listeners","addListener","keyedListeners","addKeyedListener","stackRef","withStackTrace","entry","callback","process","env","NODE_ENV","error","captureStackTrace","stack","frames","split","index","findIndex","frame","includes","name","slice","join","dispatch","action","listener","focus","console","navigation","startTransition","canGoBack","result","handled","resetRoot","target","root","reset","getRootState","getCurrentRoute","isReady","emitter","addOptionsGetter","getCurrentOptions","container","useMemo","Object","keys","reduce","acc","helper","args","create","events","thunk","getNavigation","helpers","type","get","event","data","set","removeListener","delete","getParent","routeName","setOptions","isFocused","useImperativeHandle","onDispatchAction","noop","emit","onEmitEvent","lastEmittedOptionsRef","onOptionsChange","options","lastEmittedStateRef","getIsStateEmitted","builderContext","isInitialRef","getIsInitial","context","onReadyRef","onStateChangeRef","useEffect","onReadyCalledRef","hydratedState","duplicateRouteNamesResult","length","message","locations","defaultOnUnhandledAction","payload","JSON","stringify","Provider","value"],"sourceRoot":"../../src","sources":["BaseNavigationContainer.tsx"],"mappings":";;AAAA,SACEA,aAAa,QAOR,2BAA2B;AAClC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,OAAOC,iBAAiB,MAAM,qBAAqB;AACnD,OAAOC,QAAQ,MAAM,WAAW;AAEhC,SAASC,wBAAwB,QAAQ,+BAA4B;AACrE,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SAASC,qBAAqB,QAAQ,mCAAgC;AACtE,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SACEC,wBAAwB,QAEnB,+BAA4B;AACnC,SAASC,6BAA6B,QAAQ,oCAAiC;AAC/E,SAASC,gCAAgC,QAAQ,uCAAoC;AACrF,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SAASC,sBAAsB,QAAQ,6BAA0B;AACjE,SAASC,aAAa,QAAQ,4BAAyB;AASvD,SAASC,sBAAsB,QAAQ,6BAA0B;AACjE,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,sBAAsB,QAAQ,6BAA0B;AACjE,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,4BAA4B,QAAQ,mCAAgC;AAC7E,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,YAAY,QAAQ,mBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQ9C;AACA;AACA;AACA;AACA;AACA,MAAMC,eAAe,GACnBC,KAA+B,IACe;EAC9C,IAAIA,KAAK,KAAKC,SAAS,EAAE;IACvB;EACF;;EAEA;EACA,MAAM;IAAEC,GAAG;IAAEC,UAAU;IAAE,GAAGC;EAAa,CAAC,GAAGJ,KAAK;EAElD,OAAO;IACL,GAAGI,YAAY;IACfC,KAAK,EAAE,IAAI;IACXC,MAAM,EAAEN,KAAK,CAACM,MAAM,CAACC,GAAG,CAAEC,KAAK,IAAK;MAClC,IAAIA,KAAK,CAACR,KAAK,KAAKC,SAAS,EAAE;QAC7B,OAAOO,KAAK;MAGd;MAEA,OAAO;QAAE,GAAGA,KAAK;QAAER,KAAK,EAAED,eAAe,CAACS,KAAK,CAACR,KAAK;MAAE,CAAC;IAC1D,CAAC;EACH,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASS,uBAAuBA,CAAuC;EAC5EC,YAAY;EACZC,aAAa;EACbC,OAAO;EACPC,iBAAiB;EACjBC,KAAK;EACLC,QAAQ;EACRC;AACgB,CAAC,EAAE;EACnB,MAAMC,MAAM,GAAG1C,KAAK,CAAC2C,GAAG,CAAC/B,sBAAsB,CAAC;EAChD,MAAMgC,WAAW,GAAGzB,4BAA4B,CAAC,CAAC;EAElD,IAAI,CAACuB,MAAM,CAACG,SAAS,IAAI,CAACD,WAAW,EAAE;IACrC,MAAM,IAAIE,KAAK,CACb,kXACF,CAAC;EACH;EAEA,MAAM;IAAErB,KAAK;IAAEsB,QAAQ;IAAEC,QAAQ;IAAEC,SAAS;IAAEC,cAAc;IAAEC;EAAa,CAAC,GAC1E9B,YAAY,CAAQ,MAClBG,eAAe,CAACW,YAAY,IAAI,IAAI,GAAGT,SAAS,GAAGS,YAAY,CACjE,CAAC;EAEH,MAAMiB,cAAc,GAAGlC,YAAY,CAAC,MAAM,IAAImC,OAAO,CAAe,CAAC,CAAC;EAEtE,MAAMC,eAAe,GAAGtD,KAAK,CAACuD,MAAM,CAAU,IAAI,CAAC;EAEnD,MAAMC,eAAe,GAAGxD,KAAK,CAACuD,MAAM,CAAqB7B,SAAS,CAAC;EAEnE,MAAM+B,MAAM,GAAGzD,KAAK,CAAC0D,WAAW,CAAC,MAAMF,eAAe,CAACG,OAAO,EAAE,EAAE,CAAC;EAEnE,MAAMC,MAAM,GAAG5D,KAAK,CAAC0D,WAAW,CAAE/B,GAAW,IAAK;IAChD6B,eAAe,CAACG,OAAO,GAAGhC,GAAG;EAC/B,CAAC,EAAE,EAAE,CAAC;EAEN,MAAM;IAAEkC,SAAS;IAAEC;EAAY,CAAC,GAAG/C,iBAAiB,CAAC,CAAC;EAEtD,MAAM;IAAEgD,cAAc;IAAEC;EAAiB,CAAC,GAAG/C,sBAAsB,CAAC,CAAC;EAErE,MAAMgD,QAAQ,GAAGjE,KAAK,CAACuD,MAAM,CAAqB7B,SAAS,CAAC;EAE5D,MAAMwC,cAAc,GAAGlE,KAAK,CAAC0D,WAAW,CACtC,CAACS,KAAK,EAAEC,QAAQ,KAAK;IACnB,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAIN,QAAQ,CAACN,OAAO,IAAI,IAAI,EAAE;MACrES,QAAQ,CAAC,CAAC;MACV;IACF;IAEA,MAAMI,KAAK,GAAG,IAAI1B,KAAK,CAAC,CAAC;IAEzB,IAAIA,KAAK,CAAC2B,iBAAiB,EAAE;MAC3B;MACA3B,KAAK,CAAC2B,iBAAiB,CAACD,KAAK,EAAEL,KAAK,CAAC;MAErCF,QAAQ,CAACN,OAAO,GAAGa,KAAK,CAACE,KAAK;IAChC,CAAC,MAAM;MACL;MACA,MAAMC,MAAM,GAAGH,KAAK,CAACE,KAAK,EAAEE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;MAC7C,MAAMC,KAAK,GAAGF,MAAM,CAACG,SAAS,CAAEC,KAAK,IACnCA,KAAK,CAACC,QAAQ,CAAC,GAAGb,KAAK,CAACc,IAAI,GAAG,CACjC,CAAC;MAEDhB,QAAQ,CAACN,OAAO,GAAGgB,MAAM,CAACO,KAAK,CAACL,KAAK,GAAG,CAAC,CAAC,CAACM,IAAI,CAAC,IAAI,CAAC;IACvD;IAEA,IAAI;MACFf,QAAQ,CAAC,CAAC;IACZ,CAAC,SAAS;MACRH,QAAQ,CAACN,OAAO,GAAGjC,SAAS;IAC9B;EACF,CAAC,EACD,EACF,CAAC;EAED,MAAM0D,QAAQ,GAAGnF,iBAAiB,CAE9BoF,MAAyE,IACtE;IACH,MAAMC,QAAQ,GAAGzB,SAAS,CAAC0B,KAAK,CAAC,CAAC,CAAC;IAEnC,IAAID,QAAQ,IAAI,IAAI,EAAE;MACpBE,OAAO,CAAChB,KAAK,CAACnE,qBAAqB,CAAC;IACtC,CAAC,MAAM;MACL6D,cAAc,CAACkB,QAAQ,EAAE,MAAM;QAC7BE,QAAQ,CAAEG,UAAU,IAClBzF,KAAK,CAAC0F,eAAe,CAAC,MAAM;UAC1BD,UAAU,CAACL,QAAQ,CAACC,MAAM,CAAC;QAC7B,CAAC,CACH,CAAC;MACH,CAAC,CAAC;IACJ;EACF,CACF,CAAC;EAED,MAAMM,SAAS,GAAG1F,iBAAiB,CAAC,MAAM;IACxC,IAAI4D,SAAS,CAAC0B,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;MAC9B,OAAO,KAAK;IACd;IAEA,MAAM;MAAEK,MAAM;MAAEC;IAAQ,CAAC,GAAGhC,SAAS,CAAC0B,KAAK,CAAC,CAAC,CAAC,CAAEE,UAAU,IACxDA,UAAU,CAACE,SAAS,CAAC,CACvB,CAAC;IAED,IAAIE,OAAO,EAAE;MACX,OAAOD,MAAM;IACf,CAAC,MAAM;MACL,OAAO,KAAK;IACd;EACF,CAAC,CAAC;EAEF,MAAME,SAAS,GAAG7F,iBAAiB,CAChCwB,KAAsD,IAAK;IAC1D,MAAMsE,MAAM,GAAGhC,cAAc,CAAChB,QAAQ,CAACiD,IAAI,GAAG,CAAC,CAACrE,GAAG;IACnD,MAAM2D,QAAQ,GAAGzB,SAAS,CAAC0B,KAAK,CAAC,CAAC,CAAC;IAEnC,IAAIQ,MAAM,IAAI,IAAI,IAAIT,QAAQ,IAAI,IAAI,EAAE;MACtCE,OAAO,CAAChB,KAAK,CAACnE,qBAAqB,CAAC;IACtC,CAAC,MAAM;MACLiF,QAAQ,CAAEG,UAAU,IAClBA,UAAU,CAACL,QAAQ,CAAC;QAClB,GAAGrF,aAAa,CAACkG,KAAK,CAACxE,KAAK,CAAC;QAC7BsE;MACF,CAAC,CACH,CAAC;IACH;EACF,CACF,CAAC;EAED,MAAMG,YAAY,GAAGjG,iBAAiB,CAAC,MAAM;IAC3C,OAAO8D,cAAc,CAAChB,QAAQ,CAACiD,IAAI,GAAG,CAAC;EACzC,CAAC,CAAC;EAEF,MAAMG,eAAe,GAAGlG,iBAAiB,CAAC,MAAM;IAC9C,MAAMwB,KAAK,GAAGyE,YAAY,CAAC,CAAC;IAE5B,IAAIzE,KAAK,IAAI,IAAI,EAAE;MACjB,OAAOC,SAAS;IAClB;IAEA,MAAMO,KAAK,GAAG1B,gBAAgB,CAACkB,KAAK,CAAC;IAErC,OAAOQ,KAAK;EACd,CAAC,CAAC;EAEF,MAAMmE,OAAO,GAAGnG,iBAAiB,CAAC,MAAM4D,SAAS,CAAC0B,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;EAEnE,MAAMc,OAAO,GAAGrF,eAAe,CAA8B,CAAC;EAE9D,MAAM;IAAEsF,gBAAgB;IAAEC;EAAkB,CAAC,GAAGnF,iBAAiB,CAAC,CAAC,CAAC,CAAC;EAErE,MAAMoF,SAA4C,GAAGxG,KAAK,CAACyG,OAAO,CAChE,OAAO;IACL,GAAGC,MAAM,CAACC,IAAI,CAAC5G,aAAa,CAAC,CAAC6G,MAAM,CAAM,CAACC,GAAG,EAAE5B,IAAI,KAAK;MACvD,MAAM6B,MAAM,GAAGA,CAAC,GAAGC,IAAW,KAC5B7C,cAAc,CAAC4C,MAAM,EAAE;MACrB;MACA1B,QAAQ,CAACrF,aAAa,CAACkF,IAAI,CAAC,CAAC,GAAG8B,IAAI,CAAC,CACvC,CAAC;MAEHF,GAAG,CAAC5B,IAAI,CAAC,GAAG6B,MAAM;MAElB,OAAOD,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC,CAAC;IACN,GAAGR,OAAO,CAACW,MAAM,CAAC,MAAM,CAAC;IACzB5B,QAAQ;IACRU,SAAS;IACTH,SAAS;IACT5C,QAAQ;IACRmD,YAAY;IACZC,eAAe;IACfI,iBAAiB;IACjBH;EACF,CAAC,CAAC,EACF,CACET,SAAS,EACTP,QAAQ,EACRiB,OAAO,EACPE,iBAAiB,EACjBJ,eAAe,EACfD,YAAY,EACZnD,QAAQ,EACRqD,OAAO,EACPN,SAAS,EACT5B,cAAc,CAElB,CAAC;EAED,MAAMuB,UAA4C,GAAGzF,KAAK,CAACyG,OAAO,CAAC,MAAM;IACvE,MAAMQ,MAAM,GAAGZ,OAAO,CAACW,MAAM,CAAC,MAAM,CAAC;IAErC,MAAM5B,QAAQ,GACZ8B,KAAwE,IACrE;MACH,MAAMlB,IAAI,GAAGjC,cAAc,CAACoD,aAAa,CAACnB,IAAI,GAAG,CAAC;MAElD,IAAIA,IAAI,IAAI,IAAI,EAAE;QAChBR,OAAO,CAAChB,KAAK,CAACnE,qBAAqB,CAAC;QACpC;MACF;MAEA6D,cAAc,CAACkB,QAAQ,EAAE,MAAM;QAC7BpF,KAAK,CAAC0F,eAAe,CAAC,MAAM;UAC1BM,IAAI,CAACZ,QAAQ,CAAC8B,KAAK,CAAC;QACtB,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC;IAED,MAAME,OAAO,GAAGV,MAAM,CAACC,IAAI,CAAC5G,aAAa,CAAC,CAAC6G,MAAM,CAAM,CAACC,GAAG,EAAE5B,IAAI,KAAK;MACpE,MAAM6B,MAAM,GAAGA,CAAC,GAAGC,IAAS,KAAK;QAC/B,IACE9B,IAAI,KAAK,WAAW,IACpBA,IAAI,KAAK,eAAe,IACxBA,IAAI,KAAK,YAAY,EACrB;UACA,MAAM,IAAInC,KAAK,CAAC,eAAemC,IAAI,mBAAmB,CAAC;QACzD;QAEAf,cAAc,CAAC4C,MAAM,EAAE;QACrB;QACA1B,QAAQ,CAACrF,aAAa,CAACkF,IAAI,CAAC,CAAC,GAAG8B,IAAI,CAAC,CACvC,CAAC;MACH,CAAC;MAEDF,GAAG,CAAC5B,IAAI,CAAC,GAAG6B,MAAM;MAElB,OAAOD,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC,CAAC;IAEN,MAAMhD,SAAS,GAAG,IAAIR,OAAO,CAG3B,CAAC;IAEH,OAAO;MACL,GAAG+D,OAAO;MACVhC,QAAQ;MACRtB,WAAW,EAAEA,CAACuD,IAAI,EAAEjD,QAAQ,KAAK;QAC/B,IAAIiD,IAAI,KAAK,OAAO,EAAE;UACpB,IAAI/B,QAAQ,GAAGzB,SAAS,CAACyD,GAAG,CAAClD,QAAQ,CAAC;UAEtC,IAAIkB,QAAQ,KAAK5D,SAAS,EAAE;YAC1B;YACA;YACA;YACA4D,QAAQ,GAAIiC,KAAK,IAAK;cACpB,IAAIA,KAAK,CAACC,IAAI,CAAC/F,KAAK,EAAEK,KAAK,KAAK,KAAK,EAAE;gBACrC;gBACAsC,QAAQ,CAACmD,KAAK,CAAC;cACjB;YACF,CAAC;YAED1D,SAAS,CAAC4D,GAAG,CAACrD,QAAQ,EAAEkB,QAAQ,CAAC;UACnC;UAEA,OAAO2B,MAAM,CAACnD,WAAW,CAAC,OAAO,EAAEwB,QAAQ,CAAC;QAC9C;QAEA,OAAO,MAAM,CAAC,CAAC;MACjB,CAAC;MACDoC,cAAc,EAAEA,CAACL,IAAI,EAAEjD,QAAQ,KAAK;QAClC,IAAIiD,IAAI,KAAK,OAAO,EAAE;UACpB,MAAM/B,QAAQ,GAAGzB,SAAS,CAACyD,GAAG,CAAClD,QAAQ,CAAC;UAExC,IAAIkB,QAAQ,EAAE;YACZ2B,MAAM,CAACS,cAAc,CAAC,OAAO,EAAEpC,QAAQ,CAAC;YACxCzB,SAAS,CAAC8D,MAAM,CAACvD,QAAQ,CAAC;UAC5B;QACF;MACF,CAAC;MACDuB,SAAS,EAAEA,CAAA,KACT5B,cAAc,CAACoD,aAAa,CAACnB,IAAI,GAAG,CAAC,CAACL,SAAS,CAAC,CAAC,IAAI,KAAK;MAC5D5C,QAAQ,EAAEA,CAAA,KAAMgB,cAAc,CAAChB,QAAQ,CAACiD,IAAI,GAAG,CAAC;MAChD4B,SAAS,EAAGC,SAAkB,IAAK;QACjC,IAAIA,SAAS,KAAKnG,SAAS,EAAE;UAC3B,MAAM,IAAIoB,KAAK,CACb,0CAA0C+E,SAAS,4EACrD,CAAC;QACH;QAEA,OAAOnG,SAAS;MAClB,CAAC;MACDoG,UAAU,EAAEA,CAAA,KAAM;QAChB,MAAM,IAAIhF,KAAK,CAAC,yCAAyC,CAAC;MAC5D,CAAC;MACDiF,SAAS,EAAEA,CAAA,KAAM;IACnB,CAAC;EACH,CAAC,EAAE,CAAC1B,OAAO,EAAEtC,cAAc,EAAEG,cAAc,CAAC,CAAC;EAE7ClE,KAAK,CAACgI,mBAAmB,CAACvF,GAAG,EAAE,MAAM+D,SAAS,EAAE,CAACA,SAAS,CAAC,CAAC;EAE5D,MAAMyB,gBAAgB,GAAGhI,iBAAiB,CACxC,CAACoF,MAAwB,EAAE6C,IAAa,KAAK;IAC3C7B,OAAO,CAAC8B,IAAI,CAAC;MACXd,IAAI,EAAE,mBAAmB;MACzBG,IAAI,EAAE;QAAEnC,MAAM;QAAE6C,IAAI;QAAExD,KAAK,EAAET,QAAQ,CAACN;MAAQ;IAChD,CAAC,CAAC;EACJ,CACF,CAAC;EAED,MAAMyE,WAAW,GAAGnI,iBAAiB,CAClCsH,KAKA,IAAK;IACJlB,OAAO,CAAC8B,IAAI,CAAC;MACXd,IAAI,EAAE,kBAAkB;MACxBG,IAAI,EAAED;IACR,CAAC,CAAC;EACJ,CACF,CAAC;EAED,MAAMc,qBAAqB,GAAGrI,KAAK,CAACuD,MAAM,CAAqB7B,SAAS,CAAC;EAEzE,MAAM4G,eAAe,GAAGrI,iBAAiB,CAAEsI,OAAe,IAAK;IAC7D,IAAIF,qBAAqB,CAAC1E,OAAO,KAAK4E,OAAO,EAAE;MAC7C;IACF;IAEAF,qBAAqB,CAAC1E,OAAO,GAAG4E,OAAO;IAEvClC,OAAO,CAAC8B,IAAI,CAAC;MACXd,IAAI,EAAE,SAAS;MACfG,IAAI,EAAE;QAAEe;MAAQ;IAClB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,MAAMC,mBAAmB,GAAGxI,KAAK,CAACuD,MAAM,CAAQ7B,SAAS,CAAC;EAE1D,MAAM+G,iBAAiB,GAAGxI,iBAAiB,CACzC,MAAM,CAACqD,eAAe,CAACK,OAAO,IAAI6E,mBAAmB,CAAC7E,OAAO,KAAKZ,QAAQ,CAAC,CAC7E,CAAC;EAED,MAAM2F,cAAc,GAAG1I,KAAK,CAACyG,OAAO,CAClC,OAAO;IACL3C,WAAW;IACXE,gBAAgB;IAChBiE,gBAAgB;IAChBG,WAAW;IACXE,eAAe;IACfG,iBAAiB;IACjBvF,cAAc;IACdC,YAAY;IACZe;EACF,CAAC,CAAC,EACF,CACEJ,WAAW,EACXE,gBAAgB,EAChBiE,gBAAgB,EAChBG,WAAW,EACXE,eAAe,EACfG,iBAAiB,EACjBvF,cAAc,EACdC,YAAY,EACZe,cAAc,CAElB,CAAC;EAED,MAAMyE,YAAY,GAAG3I,KAAK,CAACuD,MAAM,CAAC,IAAI,CAAC;EAEvC,MAAMqF,YAAY,GAAG5I,KAAK,CAAC0D,WAAW,CAAC,MAAMiF,YAAY,CAAChF,OAAO,EAAE,EAAE,CAAC;EAEtE,MAAMkF,OAAO,GAAG7I,KAAK,CAACyG,OAAO,CAC3B,OAAO;IACLhF,KAAK;IACLsB,QAAQ;IACRC,QAAQ;IACRC,SAAS;IACTQ,MAAM;IACNG,MAAM;IACNgF,YAAY;IACZtC;EACF,CAAC,CAAC,EACF,CACE7E,KAAK,EACLsB,QAAQ,EACRC,QAAQ,EACRC,SAAS,EACTQ,MAAM,EACNG,MAAM,EACNgF,YAAY,EACZtC,gBAAgB,CAEpB,CAAC;EAED,MAAMwC,UAAU,GAAG9I,KAAK,CAACuD,MAAM,CAAClB,OAAO,CAAC;EACxC,MAAM0G,gBAAgB,GAAG/I,KAAK,CAACuD,MAAM,CAACnB,aAAa,CAAC;EAEpDpC,KAAK,CAACgJ,SAAS,CAAC,MAAM;IACpBL,YAAY,CAAChF,OAAO,GAAG,KAAK;IAC5BoF,gBAAgB,CAACpF,OAAO,GAAGvB,aAAa;IACxC0G,UAAU,CAACnF,OAAO,GAAGtB,OAAO;EAC9B,CAAC,CAAC;EAEF,MAAM4G,gBAAgB,GAAGjJ,KAAK,CAACuD,MAAM,CAAC,KAAK,CAAC;EAE5CvD,KAAK,CAACgJ,SAAS,CAAC,MAAM;IACpB,IAAI,CAACC,gBAAgB,CAACtF,OAAO,IAAIyC,OAAO,CAAC,CAAC,EAAE;MAC1C6C,gBAAgB,CAACtF,OAAO,GAAG,IAAI;MAC/BmF,UAAU,CAACnF,OAAO,GAAG,CAAC;MACtB0C,OAAO,CAAC8B,IAAI,CAAC;QAAEd,IAAI,EAAE;MAAQ,CAAC,CAAC;IACjC;EACF,CAAC,EAAE,CAAC5F,KAAK,EAAE2E,OAAO,EAAEC,OAAO,CAAC,CAAC;EAE7BrG,KAAK,CAACgJ,SAAS,CAAC,MAAM;IACpB,MAAME,aAAa,GAAGhD,YAAY,CAAC,CAAC;IAEpC,IAAI7B,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;MACzC,IAAI2E,aAAa,KAAKxH,SAAS,EAAE;QAC/B,MAAMyH,yBAAyB,GAC7BhJ,wBAAwB,CAAC+I,aAAa,CAAC;QAEzC,IAAIC,yBAAyB,CAACC,MAAM,EAAE;UACpC,MAAMC,OAAO,GAAG,uEAAuEF,yBAAyB,CAACnH,GAAG,CACjHsH,SAAS,IAAK,KAAKA,SAAS,CAACnE,IAAI,CAAC,IAAI,CAAC,EAC1C,CAAC,+GAA+G;UAEhHjF,QAAQ,CAAC,IAAI,EAAEmJ,OAAO,CAAC;QACzB;MACF;IACF;IAEAb,mBAAmB,CAAC7E,OAAO,GAAGlC,KAAK;IAEnC4E,OAAO,CAAC8B,IAAI,CAAC;MAAEd,IAAI,EAAE,OAAO;MAAEG,IAAI,EAAE;QAAE/F;MAAM;IAAE,CAAC,CAAC;IAEhD,IAAI,CAAC6B,eAAe,CAACK,OAAO,IAAIoF,gBAAgB,CAACpF,OAAO,EAAE;MACxDoF,gBAAgB,CAACpF,OAAO,CAACuF,aAAa,CAAC;IACzC;IAEA5F,eAAe,CAACK,OAAO,GAAG,KAAK;EACjC,CAAC,EAAE,CAACuC,YAAY,EAAEG,OAAO,EAAE5E,KAAK,CAAC,CAAC;EAElC,MAAM8H,wBAAwB,GAAGtJ,iBAAiB,CAC/CoF,MAAwB,IAAK;IAC5B,IAAIhB,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;MACzC;IACF;IAEA,MAAMiF,OAAwC,GAAGnE,MAAM,CAACmE,OAAO;IAE/D,IAAIH,OAAO,GAAG,eAAehE,MAAM,CAACgC,IAAI,IACtCmC,OAAO,GAAG,iBAAiBC,IAAI,CAACC,SAAS,CAACrE,MAAM,CAACmE,OAAO,CAAC,EAAE,GAAG,EAAE,oCAC9B;IAEpC,QAAQnE,MAAM,CAACgC,IAAI;MACjB,KAAK,SAAS;MACd,KAAK,UAAU;MACf,KAAK,MAAM;MACX,KAAK,SAAS;MACd,KAAK,QAAQ;MACb,KAAK,SAAS;QACZ,IAAImC,OAAO,EAAEvE,IAAI,EAAE;UACjBoE,OAAO,IAAI,mCAAmCG,OAAO,CAACvE,IAAI,sSAAsS;QAClW,CAAC,MAAM;UACLoE,OAAO,IAAI,mIAAmI;QAChJ;QAEA;MACF,KAAK,SAAS;MACd,KAAK,KAAK;MACV,KAAK,YAAY;QACfA,OAAO,IAAI,wCAAwC;QACnD;MACF,KAAK,aAAa;MAClB,KAAK,cAAc;MACnB,KAAK,eAAe;QAClBA,OAAO,IAAI,+CAA+C;QAC1D;IACJ;IAEAA,OAAO,IAAI,0EAA0E;IAErF7D,OAAO,CAAChB,KAAK,CAAC6E,OAAO,CAAC;EACxB,CACF,CAAC;EAED,oBACE9H,IAAA,CAACb,gCAAgC,CAACiJ,QAAQ;IAACC,KAAK,EAAE,KAAM;IAAApH,QAAA,eACtDjB,IAAA,CAACd,6BAA6B,CAACkJ,QAAQ;MAACC,KAAK,EAAEpD,SAAU;MAAAhE,QAAA,eACvDjB,IAAA,CAACZ,qBAAqB,CAACgJ,QAAQ;QAACC,KAAK,EAAEnE,UAAW;QAAAjD,QAAA,eAChDjB,IAAA,CAACf,wBAAwB,CAACmJ,QAAQ;UAACC,KAAK,EAAElB,cAAe;UAAAlG,QAAA,eACvDjB,IAAA,CAACX,sBAAsB,CAAC+I,QAAQ;YAACC,KAAK,EAAEf,OAAQ;YAAArG,QAAA,eAC9CjB,IAAA,CAACnB,qBAAqB,CAACuJ,QAAQ;cAACC,KAAK,EAAExG,cAAe;cAAAZ,QAAA,eACpDjB,IAAA,CAACT,sBAAsB,CAAC6I,QAAQ;gBAC9BC,KAAK,EAAEtH,iBAAiB,IAAIiH,wBAAyB;gBAAA/G,QAAA,eAErDjB,IAAA,CAACjB,qBAAqB;kBAAAkC,QAAA,eACpBjB,IAAA,CAACV,aAAa;oBAAC+I,KAAK,EAAErH,KAAM;oBAAAC,QAAA,EAAEA;kBAAQ,CAAgB;gBAAC,CAClC;cAAC,CACO;YAAC,CACJ;UAAC,CACF;QAAC,CACD;MAAC,CACN;IAAC,CACK;EAAC,CACA,CAAC;AAEhD","ignoreList":[]}
1
+ {"version":3,"names":["CommonActions","React","useLatestCallback","warnOnce","checkDuplicateRouteNames","ConsumedParamsContext","NOT_INITIALIZED_ERROR","EnsureSingleNavigator","findFocusedRoute","NavigationBuilderContext","NavigationContainerRefContext","NavigationIndependentTreeContext","NavigationRootContext","NavigationStateContext","ThemeProvider","UnhandledActionContext","useChildListeners","useEventEmitter","useKeyedChildListeners","useLazyValue","useNavigationIndependentTree","useOptionsGetters","useSyncState","jsx","_jsx","getPartialState","state","undefined","key","routeNames","partialState","stale","routes","map","route","BaseNavigationContainer","initialState","onStateChange","onReady","onUnhandledAction","theme","children","ref","parent","use","independent","isDefault","Error","getState","setState","subscribe","scheduleUpdate","flushUpdates","consumedParams","WeakMap","isFirstMountRef","useRef","navigatorKeyRef","getKey","useCallback","current","setKey","listeners","addListener","keyedListeners","addKeyedListener","stackRef","withStackTrace","entry","callback","process","env","NODE_ENV","error","captureStackTrace","stack","frames","split","index","findIndex","frame","includes","name","slice","join","dispatch","action","listener","focus","console","navigation","startTransition","canGoBack","result","handled","resetRoot","target","root","reset","getRootState","getCurrentRoute","isReady","emitter","addOptionsGetter","getCurrentOptions","container","useMemo","Object","keys","reduce","acc","helper","args","create","events","thunk","getNavigation","helpers","type","get","event","data","set","removeListener","delete","getParent","routeName","setOptions","isFocused","useImperativeHandle","onDispatchAction","noop","emit","onEmitEvent","isOptionsListenerReadyRef","lastEmittedOptionsRef","onOptionsChange","options","useEffect","lastEmittedStateRef","getIsStateEmitted","builderContext","isInitialRef","getIsInitial","context","onReadyRef","onStateChangeRef","onReadyCalledRef","hydratedState","duplicateRouteNamesResult","length","message","locations","defaultOnUnhandledAction","payload","JSON","stringify","Provider","value"],"sourceRoot":"../../src","sources":["BaseNavigationContainer.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,17 +4,12 @@ import * as React from 'react';
4
4
  /**
5
5
  * Context which holds the required helpers needed to build nested navigators.
6
6
  */
7
- export const NavigationBuilderContext = /*#__PURE__*/React.createContext({
8
- onDispatchAction: () => undefined,
9
- onEmitEvent: () => undefined,
10
- onOptionsChange: () => undefined,
11
- getIsStateEmitted: () => false,
12
- scheduleUpdate: () => {
13
- throw new Error("Couldn't find a context for scheduling updates.");
14
- },
15
- flushUpdates: () => {
16
- throw new Error("Couldn't find a context for flushing updates.");
17
- },
18
- withStackTrace: (_entry, callback) => callback()
19
- });
7
+ export const NavigationBuilderContext = /*#__PURE__*/React.createContext(undefined);
8
+ export function useNavigationBuilderContext() {
9
+ const value = React.use(NavigationBuilderContext);
10
+ if (value == null) {
11
+ throw new Error("Couldn't find a navigation builder context. Is your component inside NavigationContainer?");
12
+ }
13
+ return value;
14
+ }
20
15
  //# sourceMappingURL=NavigationBuilderContext.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","NavigationBuilderContext","createContext","onDispatchAction","undefined","onEmitEvent","onOptionsChange","getIsStateEmitted","scheduleUpdate","Error","flushUpdates","withStackTrace","_entry","callback"],"sourceRoot":"../../src","sources":["NavigationBuilderContext.tsx"],"mappings":";;AAMA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAwD9B;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,gBAAGD,KAAK,CAACE,aAAa,CAmBxD;EACDC,gBAAgB,EAAEA,CAAA,KAAMC,SAAS;EACjCC,WAAW,EAAEA,CAAA,KAAMD,SAAS;EAC5BE,eAAe,EAAEA,CAAA,KAAMF,SAAS;EAChCG,iBAAiB,EAAEA,CAAA,KAAM,KAAK;EAC9BC,cAAc,EAAEA,CAAA,KAAM;IACpB,MAAM,IAAIC,KAAK,CAAC,iDAAiD,CAAC;EACpE,CAAC;EACDC,YAAY,EAAEA,CAAA,KAAM;IAClB,MAAM,IAAID,KAAK,CAAC,+CAA+C,CAAC;EAClE,CAAC;EACDE,cAAc,EAAEA,CAACC,MAAM,EAAEC,QAAQ,KAAKA,QAAQ,CAAC;AACjD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","NavigationBuilderContext","createContext","undefined","useNavigationBuilderContext","value","use","Error"],"sourceRoot":"../../src","sources":["NavigationBuilderContext.tsx"],"mappings":";;AAMA,OAAO,KAAKA,KAAK,MAAM,OAAO;AA6E9B;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,gBAAGD,KAAK,CAACE,aAAa,CAEzDC,SAAS,CAAC;AAEZ,OAAO,SAASC,2BAA2BA,CAAA,EAAG;EAC5C,MAAMC,KAAK,GAAGL,KAAK,CAACM,GAAG,CAACL,wBAAwB,CAAC;EAEjD,IAAII,KAAK,IAAI,IAAI,EAAE;IACjB,MAAM,IAAIE,KAAK,CACb,2FACF,CAAC;EACH;EAEA,OAAOF,KAAK;AACd","ignoreList":[]}
@@ -1,11 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  import * as React from 'react';
4
+ import { NavigationBuilderContext } from "./NavigationBuilderContext.js";
5
+ import { NavigationContainerRefContext } from "./NavigationContainerRefContext.js";
4
6
  import { NavigationFocusedRouteStateContext } from "./NavigationFocusedRouteStateContext.js";
7
+ import { NavigationHelpersContext } from "./NavigationHelpersContext.js";
5
8
  import { NavigationIndependentTreeContext } from "./NavigationIndependentTreeContext.js";
9
+ import { NavigationMetaContext } from "./NavigationMetaContext.js";
6
10
  import { IsScreenContext, NamedRouteContextListContext, NavigationContext, NavigationRouteContext } from "./NavigationProvider.js";
7
11
  import { NavigationRootContext } from "./NavigationRootContext.js";
8
- import { IsFocusedContext } from "./useIsFocused.js";
12
+ import { PreventRemoveContext } from "./PreventRemoveContext.js";
13
+ import { StaticTreeContext } from "./StaticTreeContext.js";
14
+ import { FocusedRouteKeyContext, IsFocusedContext, IsFocusedGetterContext } from "./useIsFocused.js";
9
15
  import { NamedNavigationStateListenerListContext, NavigationStateListenerContext } from "./useNavigationState.js";
10
16
 
11
17
  /**
@@ -18,27 +24,51 @@ export function NavigationIndependentTree({
18
24
  return (
19
25
  /*#__PURE__*/
20
26
  // We need to clear any existing contexts for nested independent container to work correctly
21
- _jsx(NavigationStateListenerContext.Provider, {
22
- value: undefined,
23
- children: /*#__PURE__*/_jsx(NamedNavigationStateListenerListContext.Provider, {
27
+ _jsx(NavigationIndependentTreeContext.Provider, {
28
+ value: true,
29
+ children: /*#__PURE__*/_jsx(NavigationContainerRefContext.Provider, {
24
30
  value: undefined,
25
- children: /*#__PURE__*/_jsx(NamedRouteContextListContext.Provider, {
31
+ children: /*#__PURE__*/_jsx(NavigationRootContext.Provider, {
26
32
  value: undefined,
27
- children: /*#__PURE__*/_jsx(NavigationRouteContext.Provider, {
33
+ children: /*#__PURE__*/_jsx(NavigationBuilderContext.Provider, {
28
34
  value: undefined,
29
- children: /*#__PURE__*/_jsx(NavigationContext.Provider, {
35
+ children: /*#__PURE__*/_jsx(StaticTreeContext.Provider, {
30
36
  value: undefined,
31
- children: /*#__PURE__*/_jsx(NavigationRootContext.Provider, {
37
+ children: /*#__PURE__*/_jsx(NavigationMetaContext.Provider, {
32
38
  value: undefined,
33
- children: /*#__PURE__*/_jsx(NavigationFocusedRouteStateContext.Provider, {
39
+ children: /*#__PURE__*/_jsx(NavigationHelpersContext.Provider, {
34
40
  value: undefined,
35
- children: /*#__PURE__*/_jsx(IsFocusedContext.Provider, {
41
+ children: /*#__PURE__*/_jsx(NavigationStateListenerContext.Provider, {
36
42
  value: undefined,
37
- children: /*#__PURE__*/_jsx(NavigationIndependentTreeContext.Provider, {
38
- value: true,
39
- children: /*#__PURE__*/_jsx(IsScreenContext.Provider, {
40
- value: false,
41
- children: children
43
+ children: /*#__PURE__*/_jsx(FocusedRouteKeyContext.Provider, {
44
+ value: undefined,
45
+ children: /*#__PURE__*/_jsx(PreventRemoveContext.Provider, {
46
+ value: undefined,
47
+ children: /*#__PURE__*/_jsx(NamedNavigationStateListenerListContext.Provider, {
48
+ value: undefined,
49
+ children: /*#__PURE__*/_jsx(NamedRouteContextListContext.Provider, {
50
+ value: undefined,
51
+ children: /*#__PURE__*/_jsx(NavigationRouteContext.Provider, {
52
+ value: undefined,
53
+ children: /*#__PURE__*/_jsx(NavigationContext.Provider, {
54
+ value: undefined,
55
+ children: /*#__PURE__*/_jsx(IsFocusedContext.Provider, {
56
+ value: undefined,
57
+ children: /*#__PURE__*/_jsx(IsFocusedGetterContext.Provider, {
58
+ value: undefined,
59
+ children: /*#__PURE__*/_jsx(IsScreenContext.Provider, {
60
+ value: false,
61
+ children: /*#__PURE__*/_jsx(NavigationFocusedRouteStateContext.Provider, {
62
+ value: undefined,
63
+ children: children
64
+ })
65
+ })
66
+ })
67
+ })
68
+ })
69
+ })
70
+ })
71
+ })
42
72
  })
43
73
  })
44
74
  })
@@ -1 +1 @@
1
- {"version":3,"names":["React","NavigationFocusedRouteStateContext","NavigationIndependentTreeContext","IsScreenContext","NamedRouteContextListContext","NavigationContext","NavigationRouteContext","NavigationRootContext","IsFocusedContext","NamedNavigationStateListenerListContext","NavigationStateListenerContext","jsx","_jsx","NavigationIndependentTree","children","Provider","value","undefined"],"sourceRoot":"../../src","sources":["NavigationIndependentTree.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,kCAAkC,QAAQ,yCAAsC;AACzF,SAASC,gCAAgC,QAAQ,uCAAoC;AACrF,SACEC,eAAe,EACfC,4BAA4B,EAC5BC,iBAAiB,EACjBC,sBAAsB,QACjB,yBAAsB;AAC7B,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SAASC,gBAAgB,QAAQ,mBAAgB;AACjD,SACEC,uCAAuC,EACvCC,8BAA8B,QACzB,yBAAsB;;AAE7B;AACA;AACA;AAFA,SAAAC,GAAA,IAAAC,IAAA;AAGA,OAAO,SAASC,yBAAyBA,CAAC;EACxCC;AAGF,CAAC,EAAE;EACD;IAAA;IACE;IACAF,IAAA,CAACF,8BAA8B,CAACK,QAAQ;MAACC,KAAK,EAAEC,SAAU;MAAAH,QAAA,eACxDF,IAAA,CAACH,uCAAuC,CAACM,QAAQ;QAACC,KAAK,EAAEC,SAAU;QAAAH,QAAA,eACjEF,IAAA,CAACR,4BAA4B,CAACW,QAAQ;UAACC,KAAK,EAAEC,SAAU;UAAAH,QAAA,eACtDF,IAAA,CAACN,sBAAsB,CAACS,QAAQ;YAACC,KAAK,EAAEC,SAAU;YAAAH,QAAA,eAChDF,IAAA,CAACP,iBAAiB,CAACU,QAAQ;cAACC,KAAK,EAAEC,SAAU;cAAAH,QAAA,eAC3CF,IAAA,CAACL,qBAAqB,CAACQ,QAAQ;gBAACC,KAAK,EAAEC,SAAU;gBAAAH,QAAA,eAC/CF,IAAA,CAACX,kCAAkC,CAACc,QAAQ;kBAACC,KAAK,EAAEC,SAAU;kBAAAH,QAAA,eAC5DF,IAAA,CAACJ,gBAAgB,CAACO,QAAQ;oBAACC,KAAK,EAAEC,SAAU;oBAAAH,QAAA,eAC1CF,IAAA,CAACV,gCAAgC,CAACa,QAAQ;sBAACC,KAAK,EAAE,IAAK;sBAAAF,QAAA,eACrDF,IAAA,CAACT,eAAe,CAACY,QAAQ;wBAACC,KAAK,EAAE,KAAM;wBAAAF,QAAA,EACpCA;sBAAQ,CACe;oBAAC,CACc;kBAAC,CACnB;gBAAC,CACe;cAAC,CAChB;YAAC,CACP;UAAC,CACE;QAAC,CACG;MAAC,CACQ;IAAC,CACZ;EAAC;AAE9C","ignoreList":[]}
1
+ {"version":3,"names":["React","NavigationBuilderContext","NavigationContainerRefContext","NavigationFocusedRouteStateContext","NavigationHelpersContext","NavigationIndependentTreeContext","NavigationMetaContext","IsScreenContext","NamedRouteContextListContext","NavigationContext","NavigationRouteContext","NavigationRootContext","PreventRemoveContext","StaticTreeContext","FocusedRouteKeyContext","IsFocusedContext","IsFocusedGetterContext","NamedNavigationStateListenerListContext","NavigationStateListenerContext","jsx","_jsx","NavigationIndependentTree","children","Provider","value","undefined"],"sourceRoot":"../../src","sources":["NavigationIndependentTree.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  import * as React from 'react';
4
- import { FocusedRouteKeyContext, IsFocusedContext } from "./useIsFocused.js";
4
+ import useLatestCallback from 'use-latest-callback';
5
+ import { FocusedRouteKeyContext, IsFocusedContext, IsFocusedGetterContext } from "./useIsFocused.js";
5
6
  import { useLazyValue } from "./useLazyValue.js";
6
7
  import { NamedNavigationStateListenerProvider } from "./useNavigationState.js";
7
8
 
@@ -43,6 +44,7 @@ export function NavigationProvider({
43
44
  // - It doesn't have a parent navigator
44
45
  // - Parent navigator is focused
45
46
  const isFocused = parentIsFocused == null || parentIsFocused ? focusedRouteKey === route.key : false;
47
+ const getIsFocused = useLatestCallback(() => isFocused);
46
48
  return /*#__PURE__*/_jsx(NamedNavigationStateListenerProvider, {
47
49
  name: route.name,
48
50
  children: /*#__PURE__*/_jsx(NamedRouteContextListContext.Provider, {
@@ -55,9 +57,12 @@ export function NavigationProvider({
55
57
  value: navigation,
56
58
  children: /*#__PURE__*/_jsx(IsFocusedContext.Provider, {
57
59
  value: isFocused,
58
- children: /*#__PURE__*/_jsx(IsScreenContext.Provider, {
59
- value: true,
60
- children: children
60
+ children: /*#__PURE__*/_jsx(IsFocusedGetterContext.Provider, {
61
+ value: getIsFocused,
62
+ children: /*#__PURE__*/_jsx(IsScreenContext.Provider, {
63
+ value: true,
64
+ children: children
65
+ })
61
66
  })
62
67
  })
63
68
  })
@@ -1 +1 @@
1
- {"version":3,"names":["React","FocusedRouteKeyContext","IsFocusedContext","useLazyValue","NamedNavigationStateListenerProvider","jsx","_jsx","NavigationRouteContext","createContext","undefined","NavigationContext","IsScreenContext","NamedRouteContextListContext","NavigationProvider","route","navigation","children","NamedRouteContext","parents","use","NamedRouteContextList","useMemo","name","parentIsFocused","focusedRouteKey","isFocused","key","Provider","value"],"sourceRoot":"../../src","sources":["NavigationProvider.tsx"],"mappings":";;AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,SAASC,sBAAsB,EAAEC,gBAAgB,QAAQ,mBAAgB;AACzE,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,oCAAoC,QAAQ,yBAAsB;;AAE3E;AACA;AACA;AAFA,SAAAC,GAAA,IAAAC,IAAA;AAGA,OAAO,MAAMC,sBAAsB,gBAAGP,KAAK,CAACQ,aAAa,CAEvDC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,gBAAGV,KAAK,CAACQ,aAAa,CAElDC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA,OAAO,MAAME,eAAe,gBAAGX,KAAK,CAACQ,aAAa,CAAC,KAAK,CAAC;;AAEzD;AACA;AACA;AACA,OAAO,MAAMI,4BAA4B,gBAAGZ,KAAK,CAACQ,aAAa,CAE7DC,SAAS,CAAC;AAQZ,OAAO,SAASI,kBAAkBA,CAAC;EAAEC,KAAK;EAAEC,UAAU;EAAEC;AAAgB,CAAC,EAAE;EACzE,MAAMC,iBAAiB,GAAGd,YAAY,CAAC,mBAAMH,KAAK,CAACQ,aAAa,CAACM,KAAK,CAAC,CAAC;EAExE,MAAMI,OAAO,GAAGlB,KAAK,CAACmB,GAAG,CAACP,4BAA4B,CAAC;EAEvD,MAAMQ,qBAAqB,GAAGpB,KAAK,CAACqB,OAAO,CACzC,OAAO;IACL,GAAGH,OAAO;IACV,CAACJ,KAAK,CAACQ,IAAI,GAAGL;EAChB,CAAC,CAAC,EACF,CAACA,iBAAiB,EAAEC,OAAO,EAAEJ,KAAK,CAACQ,IAAI,CACzC,CAAC;EAED,MAAMC,eAAe,GAAGvB,KAAK,CAACmB,GAAG,CAACjB,gBAAgB,CAAC;EACnD,MAAMsB,eAAe,GAAGxB,KAAK,CAACmB,GAAG,CAAClB,sBAAsB,CAAC;;EAEzD;EACA;EACA;EACA,MAAMwB,SAAS,GACbF,eAAe,IAAI,IAAI,IAAIA,eAAe,GACtCC,eAAe,KAAKV,KAAK,CAACY,GAAG,GAC7B,KAAK;EAEX,oBACEpB,IAAA,CAACF,oCAAoC;IAACkB,IAAI,EAAER,KAAK,CAACQ,IAAK;IAAAN,QAAA,eACrDV,IAAA,CAACM,4BAA4B,CAACe,QAAQ;MAACC,KAAK,EAAER,qBAAsB;MAAAJ,QAAA,eAClEV,IAAA,CAACW,iBAAiB,CAACU,QAAQ;QAACC,KAAK,EAAEd,KAAM;QAAAE,QAAA,eACvCV,IAAA,CAACC,sBAAsB,CAACoB,QAAQ;UAACC,KAAK,EAAEd,KAAM;UAAAE,QAAA,eAC5CV,IAAA,CAACI,iBAAiB,CAACiB,QAAQ;YAACC,KAAK,EAAEb,UAAW;YAAAC,QAAA,eAC5CV,IAAA,CAACJ,gBAAgB,CAACyB,QAAQ;cAACC,KAAK,EAAEH,SAAU;cAAAT,QAAA,eAC1CV,IAAA,CAACK,eAAe,CAACgB,QAAQ;gBAACC,KAAK,EAAE,IAAK;gBAAAZ,QAAA,EACnCA;cAAQ,CACe;YAAC,CACF;UAAC,CACF;QAAC,CACE;MAAC,CACR;IAAC,CACQ;EAAC,CACJ,CAAC;AAE3C","ignoreList":[]}
1
+ {"version":3,"names":["React","useLatestCallback","FocusedRouteKeyContext","IsFocusedContext","IsFocusedGetterContext","useLazyValue","NamedNavigationStateListenerProvider","jsx","_jsx","NavigationRouteContext","createContext","undefined","NavigationContext","IsScreenContext","NamedRouteContextListContext","NavigationProvider","route","navigation","children","NamedRouteContext","parents","use","NamedRouteContextList","useMemo","name","parentIsFocused","focusedRouteKey","isFocused","key","getIsFocused","Provider","value"],"sourceRoot":"../../src","sources":["NavigationProvider.tsx"],"mappings":";;AACA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,iBAAiB,MAAM,qBAAqB;AAGnD,SACEC,sBAAsB,EACtBC,gBAAgB,EAChBC,sBAAsB,QACjB,mBAAgB;AACvB,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,oCAAoC,QAAQ,yBAAsB;;AAE3E;AACA;AACA;AAFA,SAAAC,GAAA,IAAAC,IAAA;AAGA,OAAO,MAAMC,sBAAsB,gBAAGT,KAAK,CAACU,aAAa,CAEvDC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,gBAAGZ,KAAK,CAACU,aAAa,CAElDC,SAAS,CAAC;;AAEZ;AACA;AACA;AACA,OAAO,MAAME,eAAe,gBAAGb,KAAK,CAACU,aAAa,CAAC,KAAK,CAAC;;AAEzD;AACA;AACA;AACA,OAAO,MAAMI,4BAA4B,gBAAGd,KAAK,CAACU,aAAa,CAE7DC,SAAS,CAAC;AAQZ,OAAO,SAASI,kBAAkBA,CAAC;EAAEC,KAAK;EAAEC,UAAU;EAAEC;AAAgB,CAAC,EAAE;EACzE,MAAMC,iBAAiB,GAAGd,YAAY,CAAC,mBAAML,KAAK,CAACU,aAAa,CAACM,KAAK,CAAC,CAAC;EAExE,MAAMI,OAAO,GAAGpB,KAAK,CAACqB,GAAG,CAACP,4BAA4B,CAAC;EAEvD,MAAMQ,qBAAqB,GAAGtB,KAAK,CAACuB,OAAO,CACzC,OAAO;IACL,GAAGH,OAAO;IACV,CAACJ,KAAK,CAACQ,IAAI,GAAGL;EAChB,CAAC,CAAC,EACF,CAACA,iBAAiB,EAAEC,OAAO,EAAEJ,KAAK,CAACQ,IAAI,CACzC,CAAC;EAED,MAAMC,eAAe,GAAGzB,KAAK,CAACqB,GAAG,CAAClB,gBAAgB,CAAC;EACnD,MAAMuB,eAAe,GAAG1B,KAAK,CAACqB,GAAG,CAACnB,sBAAsB,CAAC;;EAEzD;EACA;EACA;EACA,MAAMyB,SAAS,GACbF,eAAe,IAAI,IAAI,IAAIA,eAAe,GACtCC,eAAe,KAAKV,KAAK,CAACY,GAAG,GAC7B,KAAK;EAEX,MAAMC,YAAY,GAAG5B,iBAAiB,CAAC,MAAM0B,SAAS,CAAC;EAEvD,oBACEnB,IAAA,CAACF,oCAAoC;IAACkB,IAAI,EAAER,KAAK,CAACQ,IAAK;IAAAN,QAAA,eACrDV,IAAA,CAACM,4BAA4B,CAACgB,QAAQ;MAACC,KAAK,EAAET,qBAAsB;MAAAJ,QAAA,eAClEV,IAAA,CAACW,iBAAiB,CAACW,QAAQ;QAACC,KAAK,EAAEf,KAAM;QAAAE,QAAA,eACvCV,IAAA,CAACC,sBAAsB,CAACqB,QAAQ;UAACC,KAAK,EAAEf,KAAM;UAAAE,QAAA,eAC5CV,IAAA,CAACI,iBAAiB,CAACkB,QAAQ;YAACC,KAAK,EAAEd,UAAW;YAAAC,QAAA,eAC5CV,IAAA,CAACL,gBAAgB,CAAC2B,QAAQ;cAACC,KAAK,EAAEJ,SAAU;cAAAT,QAAA,eAC1CV,IAAA,CAACJ,sBAAsB,CAAC0B,QAAQ;gBAACC,KAAK,EAAEF,YAAa;gBAAAX,QAAA,eACnDV,IAAA,CAACK,eAAe,CAACiB,QAAQ;kBAACC,KAAK,EAAE,IAAK;kBAAAb,QAAA,EACnCA;gBAAQ,CACe;cAAC,CACI;YAAC,CACT;UAAC,CACF;QAAC,CACE;MAAC,CACR;IAAC,CACQ;EAAC,CACJ,CAAC;AAE3C","ignoreList":[]}
@@ -36,8 +36,8 @@ export function PreventRemoveProvider({
36
36
  const setParentPrevented = preventRemoveContextValue?.setPreventRemove;
37
37
  const notifyParentPrevented = preventRemoveContextValue?.notifyPreventRemove;
38
38
  const setPreventRemove = useLatestCallback((id, routeKey, preventRemove) => {
39
- if (preventRemove && (navigation == null || navigation?.getState().routes.every(route => route.key !== routeKey))) {
40
- throw new Error(`Couldn't find a route with the key ${routeKey}. Is your component inside NavigationContent?`);
39
+ if (preventRemove && navigation == null) {
40
+ throw new Error("Couldn't find a navigation object. This is likely a bug in the navigator.\n\nIf you're using a custom navigator, make sure that the navigator content is wrapped by the 'render' function returned by 'useNavigationBuilder'.");
41
41
  }
42
42
  if (preventRemove) {
43
43
  registry.current.set(id, routeKey);
@@ -1 +1 @@
1
- {"version":3,"names":["nanoid","React","useLatestCallback","NavigationHelpersContext","NavigationRouteContext","PreventRemoveContext","jsx","_jsx","transformPreventedRoutes","preventedRoutesMap","preventedRoutes","routeKey","values","preventRemove","PreventRemoveProvider","children","parentId","useState","setPreventedRoutesMap","Map","registry","useRef","navigation","use","route","preventRemoveContextValue","setParentPrevented","setPreventRemove","notifyParentPrevented","notifyPreventRemove","id","getState","routes","every","key","Error","current","set","delete","prevPrevented","nextPrevented","hasChanged","size","some","get","useEffect","isPrevented","useInsertionEffect","undefined","value","useMemo","Provider"],"sourceRoot":"../../src","sources":["PreventRemoveProvider.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["nanoid","React","useLatestCallback","NavigationHelpersContext","NavigationRouteContext","PreventRemoveContext","jsx","_jsx","transformPreventedRoutes","preventedRoutesMap","preventedRoutes","routeKey","values","preventRemove","PreventRemoveProvider","children","parentId","useState","setPreventedRoutesMap","Map","registry","useRef","navigation","use","route","preventRemoveContextValue","setParentPrevented","setPreventRemove","notifyParentPrevented","notifyPreventRemove","id","Error","current","set","delete","prevPrevented","nextPrevented","hasChanged","size","some","get","useEffect","isPrevented","useInsertionEffect","key","undefined","value","useMemo","Provider"],"sourceRoot":"../../src","sources":["PreventRemoveProvider.tsx"],"mappings":"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","ignoreList":[]}
@@ -17,6 +17,7 @@ export function SceneView({
17
17
  route,
18
18
  navigation,
19
19
  routeState,
20
+ getFocusedRouteKey,
20
21
  getState,
21
22
  setState,
22
23
  subscribe,
@@ -30,7 +31,7 @@ export function SceneView({
30
31
  } = useOptionsGetters({
31
32
  key: route.key,
32
33
  options,
33
- navigation
34
+ getFocusedRouteKey
34
35
  });
35
36
  const setKey = React.useCallback(key => {
36
37
  navigatorKeyRef.current = key;
@@ -1 +1 @@
1
- {"version":3,"names":["React","EnsureSingleNavigator","isArrayEqual","NavigationFocusedRouteStateContext","NavigationStateContext","StaticContainer","useOptionsGetters","jsx","_jsx","SceneView","screen","route","navigation","routeState","getState","setState","subscribe","options","clearOptions","navigatorKeyRef","useRef","undefined","getKey","useCallback","current","addOptionsGetter","key","setKey","getCurrentState","state","currentRoute","routes","find","r","setCurrentState","child","map","isInitialRef","useEffect","getIsInitial","parentFocusedRouteState","use","focusedRouteState","useMemo","name","params","path","addState","parent","parentRoute","context","ScreenComponent","getComponent","component","Provider","value","children","render"],"sourceRoot":"../../src","sources":["SceneView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","EnsureSingleNavigator","isArrayEqual","NavigationFocusedRouteStateContext","NavigationStateContext","StaticContainer","useOptionsGetters","jsx","_jsx","SceneView","screen","route","navigation","routeState","getFocusedRouteKey","getState","setState","subscribe","options","clearOptions","navigatorKeyRef","useRef","undefined","getKey","useCallback","current","addOptionsGetter","key","setKey","getCurrentState","state","currentRoute","routes","find","r","setCurrentState","child","map","isInitialRef","useEffect","getIsInitial","parentFocusedRouteState","use","focusedRouteState","useMemo","name","params","path","addState","parent","parentRoute","context","ScreenComponent","getComponent","component","Provider","value","children","render"],"sourceRoot":"../../src","sources":["SceneView.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import queryString from 'query-string';
4
- import { getPatternParts } from "./getPatternParts.js";
4
+ import { combinePatternParts, getPatternParts } from "./getPatternParts.js";
5
5
  import { getStateFromRouteParams } from "./getStateFromRouteParams.js";
6
6
  import { validatePathConfig } from "./validatePathConfig.js";
7
7
  const serializeParamValue = value => value === null ? null : Array.isArray(value) ? value.map(String) : String(value);
@@ -126,14 +126,14 @@ export function getPathFromState(state, options) {
126
126
  for (const key in params) {
127
127
  const value = params[key];
128
128
  if (value === undefined) {
129
- let optional = false;
129
+ let canBeOmitted = false;
130
130
  for (const part of ownParts) {
131
- if (part.param === key) {
132
- optional = part.optional === true;
131
+ if (part.name === key) {
132
+ canBeOmitted = part.optional === true || part.repeat != null;
133
133
  break;
134
134
  }
135
135
  }
136
- if (optional) {
136
+ if (canBeOmitted) {
137
137
  continue;
138
138
  }
139
139
  }
@@ -142,11 +142,11 @@ export function getPathFromState(state, options) {
142
142
  }
143
143
  const claimedParams = new Set();
144
144
  for (const part of ownParts) {
145
- if (part.param && part.param in currentParams) {
146
- const value = currentParams[part.param];
145
+ if (part.name && part.name in currentParams) {
146
+ const value = currentParams[part.name];
147
147
  if (value !== undefined) {
148
148
  partValues.set(part, value);
149
- claimedParams.add(part.param);
149
+ claimedParams.add(part.name);
150
150
  }
151
151
  }
152
152
  }
@@ -164,7 +164,7 @@ export function getPathFromState(state, options) {
164
164
  }
165
165
  }
166
166
  for (const part of ownParts) {
167
- if (part.param && !partValues.has(part)) {
167
+ if (part.name && !partValues.has(part)) {
168
168
  partValues.set(part, undefined);
169
169
  }
170
170
  }
@@ -198,8 +198,9 @@ export function getPathFromState(state, options) {
198
198
  for (const part of parts) {
199
199
  const {
200
200
  segment,
201
- param,
202
- optional
201
+ name,
202
+ optional,
203
+ repeat
203
204
  } = part;
204
205
  if (index > 0) {
205
206
  path += '/';
@@ -215,12 +216,32 @@ export function getPathFromState(state, options) {
215
216
  }
216
217
 
217
218
  // If the path has a pattern for a param, put the param in the path
218
- if (param) {
219
+ if (name) {
219
220
  const value = partValues.get(part);
220
221
  if (value === undefined && optional) {
221
222
  // Optional params without value assigned in route.params should be ignored
222
223
  continue;
223
224
  }
225
+ if (repeat) {
226
+ if (value === null) {
227
+ throw new Error(`The path pattern '${segment}' does not allow null for param '${name}'.`);
228
+ }
229
+ if (Array.isArray(value)) {
230
+ throw new Error(`The path pattern '${segment}' requires a string for param '${name}'.`);
231
+ }
232
+ const values = value === undefined || value === '' ? [] : value.split('/');
233
+ if (repeat === 'one-or-more' && values.length === 0) {
234
+ throw new Error(`The path pattern '${segment}' requires at least one value for param '${name}'.`);
235
+ }
236
+ if (values.some(item => item.length === 0)) {
237
+ throw new Error(`The path pattern '${segment}' does not allow empty values for param '${name}'.`);
238
+ }
239
+ if (values.length === 0) {
240
+ path = path.replace(/\/$/, '');
241
+ }
242
+ path += values.map(encodePathParam).join('/');
243
+ continue;
244
+ }
224
245
 
225
246
  // Valid characters according to
226
247
  // https://datatracker.ietf.org/doc/html/rfc3986#section-3.3 (see pchar definition)
@@ -262,8 +283,12 @@ export function getPathFromState(state, options) {
262
283
  }
263
284
 
264
285
  // Remove multiple as well as trailing slashes
265
- path = path.replace(/\/+/g, '/');
266
- path = path.length > 1 ? path.replace(/\/$/, '') : path;
286
+ if (path.includes('//')) {
287
+ path = path.replace(/\/+/g, '/');
288
+ }
289
+ if (path.length > 1 && path.endsWith('/')) {
290
+ path = path.slice(0, -1);
291
+ }
267
292
 
268
293
  // If path doesn't start with a slash, add it
269
294
  // This makes sure that history.pushState will update the path correctly instead of appending
@@ -277,7 +302,7 @@ const createConfigItem = (config, parentParts) => {
277
302
  const ownParts = getPatternParts(config);
278
303
  if (parentParts) {
279
304
  return {
280
- parts: [...parentParts, ...ownParts],
305
+ parts: combinePatternParts(parentParts, ownParts),
281
306
  ownParts
282
307
  };
283
308
  }
@@ -293,7 +318,7 @@ const createConfigItem = (config, parentParts) => {
293
318
  // If an object is specified as the value (e.g. Foo: { ... }),
294
319
  // It can have `path` property and `screens` prop which has nested configs
295
320
  const ownParts = config.path ? getPatternParts(config.path) : [];
296
- const parts = config.exact !== true ? [...(parentParts || []), ...ownParts] : ownParts.length ? ownParts : undefined;
321
+ const parts = config.exact !== true ? combinePatternParts(parentParts || [], ownParts) : ownParts.length ? ownParts : undefined;
297
322
  const screens = 'screens' in config && config.screens ? createNormalizedConfigs(config.screens, parts) : undefined;
298
323
  return {
299
324
  parts,
@@ -1 +1 @@
1
- {"version":3,"names":["queryString","getPatternParts","getStateFromRouteParams","validatePathConfig","serializeParamValue","value","Array","isArray","map","String","encodePathParam","result","char","charCode","charCodeAt","safe","includes","encodeURIComponent","getActiveRoute","state","configs","getRouteState","route","index","routes","length","Error","config","name","routeState","screens","cachedNormalizedConfigs","WeakMap","getNormalizedConfigs","options","cached","get","normalizedConfigs","createNormalizedConfigs","set","getPathFromState","cachedRouteStates","Map","hasScreenParams","params","screen","hasStateParams","undefined","has","focusedRoute","path","current","initialRoute","parts","partValues","focusedParams","currentOptions","nestedRouteNames","hasNext","ownParts","push","currentParams","key","optional","part","param","stringify","claimedParams","Set","add","nextRoute","nestedConfig","segment","query","sort","replace","startsWith","createConfigItem","parentParts","exact"],"sourceRoot":"../../src","sources":["getPathFromState.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["queryString","combinePatternParts","getPatternParts","getStateFromRouteParams","validatePathConfig","serializeParamValue","value","Array","isArray","map","String","encodePathParam","result","char","charCode","charCodeAt","safe","includes","encodeURIComponent","getActiveRoute","state","configs","getRouteState","route","index","routes","length","Error","config","name","routeState","screens","cachedNormalizedConfigs","WeakMap","getNormalizedConfigs","options","cached","get","normalizedConfigs","createNormalizedConfigs","set","getPathFromState","cachedRouteStates","Map","hasScreenParams","params","screen","hasStateParams","undefined","has","focusedRoute","path","current","initialRoute","parts","partValues","focusedParams","currentOptions","nestedRouteNames","hasNext","ownParts","push","currentParams","key","canBeOmitted","part","optional","repeat","stringify","claimedParams","Set","add","nextRoute","nestedConfig","segment","values","split","some","item","replace","join","query","sort","endsWith","slice","startsWith","createConfigItem","parentParts","exact"],"sourceRoot":"../../src","sources":["getPathFromState.tsx"],"mappings":"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","ignoreList":[]}