@react-navigation/core 8.0.0-alpha.0 → 8.0.0-alpha.10

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 (168) hide show
  1. package/lib/module/BaseNavigationContainer.js +14 -7
  2. package/lib/module/BaseNavigationContainer.js.map +1 -1
  3. package/lib/module/ConsumedParamsContext.js +5 -0
  4. package/lib/module/ConsumedParamsContext.js.map +1 -0
  5. package/lib/module/NavigationBuilderContext.js +1 -0
  6. package/lib/module/NavigationBuilderContext.js.map +1 -1
  7. package/lib/module/NavigationIndependentTree.js +8 -4
  8. package/lib/module/NavigationIndependentTree.js.map +1 -1
  9. package/lib/module/NavigationMetaContext.js +15 -0
  10. package/lib/module/NavigationMetaContext.js.map +1 -0
  11. package/lib/module/NavigationProvider.js +14 -3
  12. package/lib/module/NavigationProvider.js.map +1 -1
  13. package/lib/module/NavigationStateContext.js.map +1 -1
  14. package/lib/module/PreventRemoveProvider.js +3 -3
  15. package/lib/module/PreventRemoveProvider.js.map +1 -1
  16. package/lib/module/SceneView.js +46 -56
  17. package/lib/module/SceneView.js.map +1 -1
  18. package/lib/module/StaticNavigation.js +30 -4
  19. package/lib/module/StaticNavigation.js.map +1 -1
  20. package/lib/module/createNavigatorFactory.js +22 -1
  21. package/lib/module/createNavigatorFactory.js.map +1 -1
  22. package/lib/module/getPathFromState.js +25 -3
  23. package/lib/module/getPathFromState.js.map +1 -1
  24. package/lib/module/getStateFromPath.js +158 -73
  25. package/lib/module/getStateFromPath.js.map +1 -1
  26. package/lib/module/getStateFromRouteParams.js +24 -0
  27. package/lib/module/getStateFromRouteParams.js.map +1 -0
  28. package/lib/module/index.js +2 -1
  29. package/lib/module/index.js.map +1 -1
  30. package/lib/module/theming/useTheme.js +1 -1
  31. package/lib/module/theming/useTheme.js.map +1 -1
  32. package/lib/module/types.js.map +1 -1
  33. package/lib/module/useCurrentRender.js +1 -1
  34. package/lib/module/useCurrentRender.js.map +1 -1
  35. package/lib/module/useDescriptors.js +12 -43
  36. package/lib/module/useDescriptors.js.map +1 -1
  37. package/lib/module/useFocusEvents.js +1 -1
  38. package/lib/module/useFocusEvents.js.map +1 -1
  39. package/lib/module/useFocusedListenersChildrenAdapter.js +1 -1
  40. package/lib/module/useFocusedListenersChildrenAdapter.js.map +1 -1
  41. package/lib/module/useIsFocused.js +7 -12
  42. package/lib/module/useIsFocused.js.map +1 -1
  43. package/lib/module/useNavigationBuilder.js +92 -42
  44. package/lib/module/useNavigationBuilder.js.map +1 -1
  45. package/lib/module/useNavigationCache.js +14 -56
  46. package/lib/module/useNavigationCache.js.map +1 -1
  47. package/lib/module/useNavigationHelpers.js +1 -1
  48. package/lib/module/useNavigationHelpers.js.map +1 -1
  49. package/lib/module/useNavigationIndependentTree.js +1 -1
  50. package/lib/module/useNavigationIndependentTree.js.map +1 -1
  51. package/lib/module/useNavigationState.js +4 -2
  52. package/lib/module/useNavigationState.js.map +1 -1
  53. package/lib/module/useOnAction.js +1 -1
  54. package/lib/module/useOnAction.js.map +1 -1
  55. package/lib/module/useOnGetState.js +2 -2
  56. package/lib/module/useOnGetState.js.map +1 -1
  57. package/lib/module/useOnPreventRemove.js +2 -2
  58. package/lib/module/useOnPreventRemove.js.map +1 -1
  59. package/lib/module/useOnRouteFocus.js +1 -1
  60. package/lib/module/useOnRouteFocus.js.map +1 -1
  61. package/lib/module/useOptionsGetters.js +2 -2
  62. package/lib/module/useOptionsGetters.js.map +1 -1
  63. package/lib/module/usePreventRemoveContext.js +1 -1
  64. package/lib/module/usePreventRemoveContext.js.map +1 -1
  65. package/lib/module/useRegisterNavigator.js +1 -1
  66. package/lib/module/useRegisterNavigator.js.map +1 -1
  67. package/lib/module/useScheduleUpdate.js +1 -1
  68. package/lib/module/useScheduleUpdate.js.map +1 -1
  69. package/lib/module/useStateForPath.js +1 -1
  70. package/lib/module/useStateForPath.js.map +1 -1
  71. package/lib/typescript/src/BaseNavigationContainer.d.ts +6 -3
  72. package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
  73. package/lib/typescript/src/ConsumedParamsContext.d.ts +8 -0
  74. package/lib/typescript/src/ConsumedParamsContext.d.ts.map +1 -0
  75. package/lib/typescript/src/NavigationBuilderContext.d.ts +11 -5
  76. package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -1
  77. package/lib/typescript/src/NavigationFocusedRouteStateContext.d.ts +4 -4
  78. package/lib/typescript/src/NavigationFocusedRouteStateContext.d.ts.map +1 -1
  79. package/lib/typescript/src/NavigationIndependentTree.d.ts.map +1 -1
  80. package/lib/typescript/src/NavigationMetaContext.d.ts +12 -0
  81. package/lib/typescript/src/NavigationMetaContext.d.ts.map +1 -0
  82. package/lib/typescript/src/NavigationProvider.d.ts +4 -4
  83. package/lib/typescript/src/NavigationProvider.d.ts.map +1 -1
  84. package/lib/typescript/src/NavigationStateContext.d.ts +3 -3
  85. package/lib/typescript/src/NavigationStateContext.d.ts.map +1 -1
  86. package/lib/typescript/src/SceneView.d.ts.map +1 -1
  87. package/lib/typescript/src/StaticContainer.d.ts +1 -1
  88. package/lib/typescript/src/StaticContainer.d.ts.map +1 -1
  89. package/lib/typescript/src/StaticNavigation.d.ts +33 -19
  90. package/lib/typescript/src/StaticNavigation.d.ts.map +1 -1
  91. package/lib/typescript/src/createNavigatorFactory.d.ts +1 -1
  92. package/lib/typescript/src/createNavigatorFactory.d.ts.map +1 -1
  93. package/lib/typescript/src/findFocusedRoute.d.ts +3 -3
  94. package/lib/typescript/src/findFocusedRoute.d.ts.map +1 -1
  95. package/lib/typescript/src/getActionFromState.d.ts +3 -3
  96. package/lib/typescript/src/getActionFromState.d.ts.map +1 -1
  97. package/lib/typescript/src/getPathFromState.d.ts +2 -2
  98. package/lib/typescript/src/getPathFromState.d.ts.map +1 -1
  99. package/lib/typescript/src/getStateFromPath.d.ts +3 -3
  100. package/lib/typescript/src/getStateFromPath.d.ts.map +1 -1
  101. package/lib/typescript/src/getStateFromRouteParams.d.ts +3 -0
  102. package/lib/typescript/src/getStateFromRouteParams.d.ts.map +1 -0
  103. package/lib/typescript/src/index.d.ts +3 -1
  104. package/lib/typescript/src/index.d.ts.map +1 -1
  105. package/lib/typescript/src/types.d.ts +144 -82
  106. package/lib/typescript/src/types.d.ts.map +1 -1
  107. package/lib/typescript/src/useDescriptors.d.ts +12 -25
  108. package/lib/typescript/src/useDescriptors.d.ts.map +1 -1
  109. package/lib/typescript/src/useIsFocused.d.ts +3 -0
  110. package/lib/typescript/src/useIsFocused.d.ts.map +1 -1
  111. package/lib/typescript/src/useNavigation.d.ts.map +1 -1
  112. package/lib/typescript/src/useNavigationBuilder.d.ts +20 -29
  113. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  114. package/lib/typescript/src/useNavigationCache.d.ts +2 -42
  115. package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
  116. package/lib/typescript/src/useNavigationHelpers.d.ts +18 -16
  117. package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
  118. package/lib/typescript/src/useNavigationState.d.ts.map +1 -1
  119. package/lib/typescript/src/useOnAction.d.ts +6 -6
  120. package/lib/typescript/src/useOnAction.d.ts.map +1 -1
  121. package/lib/typescript/src/useOnRouteFocus.d.ts +6 -6
  122. package/lib/typescript/src/useOnRouteFocus.d.ts.map +1 -1
  123. package/lib/typescript/src/useRouteCache.d.ts +2 -2
  124. package/lib/typescript/src/useScheduleUpdate.d.ts.map +1 -1
  125. package/lib/typescript/src/utilities.d.ts +35 -3
  126. package/lib/typescript/src/utilities.d.ts.map +1 -1
  127. package/package.json +20 -18
  128. package/src/BaseNavigationContainer.tsx +332 -326
  129. package/src/ConsumedParamsContext.tsx +10 -0
  130. package/src/NavigationBuilderContext.tsx +14 -8
  131. package/src/NavigationFocusedRouteStateContext.tsx +4 -4
  132. package/src/NavigationIndependentTree.tsx +8 -5
  133. package/src/NavigationMetaContext.tsx +14 -0
  134. package/src/NavigationProvider.tsx +17 -3
  135. package/src/NavigationStateContext.tsx +5 -6
  136. package/src/PreventRemoveProvider.tsx +3 -3
  137. package/src/SceneView.tsx +58 -56
  138. package/src/StaticNavigation.tsx +100 -30
  139. package/src/createNavigatorFactory.tsx +35 -4
  140. package/src/findFocusedRoute.tsx +3 -3
  141. package/src/getActionFromState.tsx +7 -7
  142. package/src/getPathFromState.tsx +53 -9
  143. package/src/getStateFromPath.tsx +255 -97
  144. package/src/getStateFromRouteParams.tsx +60 -0
  145. package/src/index.tsx +2 -1
  146. package/src/theming/useTheme.tsx +1 -1
  147. package/src/types.tsx +330 -187
  148. package/src/useCurrentRender.tsx +1 -1
  149. package/src/useDescriptors.tsx +13 -48
  150. package/src/useFocusEvents.tsx +1 -1
  151. package/src/useFocusedListenersChildrenAdapter.tsx +1 -1
  152. package/src/useIsFocused.tsx +14 -21
  153. package/src/useNavigation.tsx +2 -2
  154. package/src/useNavigationBuilder.tsx +138 -53
  155. package/src/useNavigationCache.tsx +12 -73
  156. package/src/useNavigationHelpers.tsx +1 -1
  157. package/src/useNavigationIndependentTree.tsx +1 -1
  158. package/src/useNavigationState.tsx +6 -4
  159. package/src/useOnAction.tsx +8 -8
  160. package/src/useOnGetState.tsx +2 -2
  161. package/src/useOnPreventRemove.tsx +2 -2
  162. package/src/useOnRouteFocus.tsx +10 -12
  163. package/src/useOptionsGetters.tsx +2 -2
  164. package/src/usePreventRemoveContext.tsx +1 -1
  165. package/src/useRegisterNavigator.tsx +1 -1
  166. package/src/useScheduleUpdate.tsx +1 -3
  167. package/src/useStateForPath.tsx +1 -1
  168. package/src/utilities.tsx +72 -4
@@ -22,7 +22,7 @@ type ScreenOptionsOrCallback<ScreenOptions extends {}> = ScreenOptions | ((props
22
22
  theme: Theme;
23
23
  }) => ScreenOptions);
24
24
  type Options<State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase> = {
25
- state: State;
25
+ routes: State['routes'];
26
26
  screens: Record<string, ScreenConfigWithParent<State, ScreenOptions, EventMap>>;
27
27
  navigation: NavigationHelpers<ParamListBase>;
28
28
  screenOptions: ScreenOptionsOrCallback<ScreenOptions> | undefined;
@@ -44,29 +44,16 @@ type Options<State extends NavigationState, ScreenOptions extends {}, EventMap e
44
44
  * - Options specified by the screen for the navigator
45
45
  * - Navigation object intended for the route
46
46
  */
47
- export declare function useDescriptors<State extends NavigationState, ActionHelpers extends Record<string, (...args: any) => void>, ScreenOptions extends {}, EventMap extends EventMapBase>({ state, screens, navigation, screenOptions, screenLayout, onAction, getState, setState, addListener, addKeyedListener, onRouteFocus, router, emitter, }: Options<State, ScreenOptions, EventMap>): {
48
- describe: (route: RouteProp<ParamListBase>, placeholder: boolean) => Descriptor<ScreenOptions, NavigationProp<ParamListBase, string, State, ScreenOptions, EventMap, ActionHelpers>, Readonly<{
49
- key: string;
50
- name: string;
51
- path?: string;
52
- history?: {
53
- type: "params";
54
- params: object;
55
- }[];
56
- } & Readonly<{
57
- params?: Readonly<object | undefined>;
58
- }>>>;
59
- descriptors: Record<string, Descriptor<ScreenOptions, NavigationProp<ParamListBase, string, State, ScreenOptions, EventMap, ActionHelpers>, Readonly<{
60
- key: string;
61
- name: string;
62
- path?: string;
63
- history?: {
64
- type: "params";
65
- params: object;
66
- }[];
67
- } & Readonly<{
68
- params?: Readonly<object | undefined>;
69
- }>>>>;
70
- };
47
+ export declare function useDescriptors<State extends NavigationState, ActionHelpers extends Record<string, (...args: any) => void>, ScreenOptions extends {}, EventMap extends EventMapBase>({ routes, screens, navigation, screenOptions, screenLayout, onAction, getState, setState, addListener, addKeyedListener, onRouteFocus, router, emitter, }: Options<State, ScreenOptions, EventMap>): Record<string, Descriptor<ScreenOptions, NavigationProp<ParamListBase, string, State, ScreenOptions, EventMap, ActionHelpers>, Readonly<{
48
+ key: string;
49
+ name: string;
50
+ path?: string | undefined;
51
+ history?: {
52
+ type: "params";
53
+ params: object;
54
+ }[] | undefined;
55
+ } & Readonly<{
56
+ params?: Readonly<object | undefined>;
57
+ }>>>>;
71
58
  export {};
72
59
  //# sourceMappingURL=useDescriptors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDescriptors.d.ts","sourceRoot":"","sources":["../../../src/useDescriptors.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useDescriptors.d.ts","sourceRoot":"","sources":["../../../src/useDescriptors.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EAEb,MAAM,EACP,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAEjB,MAAM,4BAA4B,CAAC;AAIpC,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,SAAS,EACT,KAAK,EACN,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAIhE,MAAM,MAAM,sBAAsB,CAChC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,YAAY,IAC3B;IACF,IAAI,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC7B,OAAO,EAAE,CAAC,uBAAuB,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS,CAAC;IAC5E,MAAM,EAAE,YAAY,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IAChD,KAAK,EAAE,WAAW,CAChB,aAAa,EACb,MAAM,EACN,KAAK,EACL,aAAa,EACb,QAAQ,EACR,OAAO,CACR,CAAC;CACH,CAAC;AAEF,KAAK,YAAY,CAAC,aAAa,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE;IACpD,KAAK,EAAE,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,EAAE,aAAa,CAAC;IACvB,UAAU,EAAE,GAAG,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;CAC9B,KAAK,KAAK,CAAC,YAAY,CAAC;AAEzB,KAAK,uBAAuB,CAAC,aAAa,SAAS,EAAE,IACjD,aAAa,GACb,CAAC,CAAC,KAAK,EAAE;IACP,KAAK,EAAE,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACxC,UAAU,EAAE,GAAG,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;CACd,KAAK,aAAa,CAAC,CAAC;AAEzB,KAAK,OAAO,CACV,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,YAAY,IAC3B;IACF,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,EAAE,MAAM,CACb,MAAM,EACN,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,CACvD,CAAC;IACF,UAAU,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC7C,aAAa,EAAE,uBAAuB,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IAClE,YAAY,EAAE,YAAY,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IACtD,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC;IAChD,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,WAAW,EAAE,WAAW,CAAC;IACzB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IACxC,OAAO,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC;CAC3C,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,EAC5D,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,YAAY,EAC7B,EACA,MAAM,EACN,OAAO,EACP,UAAU,EACV,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,MAAM,EACN,OAAO,GACR,EAAE,OAAO,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC;;;;;;;;;;MAsMzC"}
@@ -1,3 +1,6 @@
1
+ import * as React from 'react';
2
+ export declare const FocusedRouteKeyContext: React.Context<string | undefined>;
3
+ export declare const IsFocusedContext: React.Context<boolean | undefined>;
1
4
  /**
2
5
  * Hook to get the current focus state of the screen. Returns a `true` if screen is focused, otherwise `false`.
3
6
  * This can be used if a component needs to render something based on the focus state.
@@ -1 +1 @@
1
- {"version":3,"file":"useIsFocused.d.ts","sourceRoot":"","sources":["../../../src/useIsFocused.tsx"],"names":[],"mappings":"AAIA;;;GAGG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAuBtC"}
1
+ {"version":3,"file":"useIsFocused.d.ts","sourceRoot":"","sources":["../../../src/useIsFocused.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,eAAO,MAAM,sBAAsB,mCAElC,CAAC;AAEF,eAAO,MAAM,gBAAgB,oCAE5B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAUtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useNavigation.d.ts","sourceRoot":"","sources":["../../../src/useNavigation.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,aAAa,EACb,aAAa,EACd,MAAM,SAAS,CAAC;AAEjB;;;;;;;GAOG;AACH,wBAAgB,aAAa,IAAI,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAClE,wBAAgB,aAAa,CAC3B,KAAK,CAAC,SAAS,GAAG,aAAa,KAC5B,0BAA0B,CAAC,SAAS,CAAC,CAAC,MAAM,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAAC;AACxF,wBAAgB,aAAa,CAC3B,KAAK,CAAC,SAAS,GAAG,aAAa,EAC/B,KAAK,CAAC,SAAS,SACb,MAAM,uBAAuB,CAAC,SAAS,CAAC,GAAG,MAAM,uBAAuB,CAAC,SAAS,CAAC,EACrF,IAAI,EAAE,SAAS,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"useNavigation.d.ts","sourceRoot":"","sources":["../../../src/useNavigation.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,aAAa,EACb,aAAa,EACd,MAAM,SAAS,CAAC;AAEjB;;;;;;;GAOG;AACH,wBAAgB,aAAa,IAAI,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAClE,wBAAgB,aAAa,CAC3B,KAAK,CAAC,SAAS,GAAG,aAAa,KAC5B,0BAA0B,CAAC,SAAS,CAAC,CAAC,MAAM,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAAC;AACxF,wBAAgB,aAAa,CAC3B,KAAK,CAAC,SAAS,GAAG,aAAa,EAC/B,KAAK,CAAC,SAAS,SAAS,MAAM,uBAAuB,CAAC,SAAS,CAAC,GAC9D,MAAM,uBAAuB,CAAC,SAAS,CAAC,EAC1C,IAAI,EAAE,SAAS,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC"}
@@ -13,40 +13,42 @@ export declare function useNavigationBuilder<State extends NavigationState, Rout
13
13
  navigation: {
14
14
  dispatch(action: Readonly<{
15
15
  type: string;
16
- payload?: object;
17
- source?: string;
18
- target?: string;
16
+ payload?: object | undefined;
17
+ source?: string | undefined;
18
+ target?: string | undefined;
19
19
  }> | ((state: Readonly<Readonly<{
20
20
  key: string;
21
21
  index: number;
22
22
  routeNames: string[];
23
- history?: unknown[];
23
+ history?: unknown[] | undefined;
24
24
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
25
25
  type: string;
26
26
  stale: false;
27
27
  }>>) => Readonly<{
28
28
  type: string;
29
- payload?: object;
30
- source?: string;
31
- target?: string;
29
+ payload?: object | undefined;
30
+ source?: string | undefined;
31
+ target?: string | undefined;
32
32
  }>)): void;
33
33
  navigate<RouteName extends string>(...args: RouteName extends unknown ? [screen: RouteName, params?: object | undefined, options?: {
34
- merge?: boolean;
35
- pop?: boolean;
34
+ merge?: boolean | undefined;
35
+ pop?: boolean | undefined;
36
36
  } | undefined] : never): void;
37
37
  navigate<RouteName extends string>(options: RouteName extends unknown ? {
38
38
  name: RouteName;
39
39
  params: object | undefined;
40
- path?: string;
41
- merge?: boolean;
42
- pop?: boolean;
40
+ path?: string | undefined;
41
+ merge?: boolean | undefined;
42
+ pop?: boolean | undefined;
43
43
  } : never): void;
44
- preload<RouteName extends string>(...args: RouteName extends unknown ? [screen: RouteName, params?: object | undefined] : never): void;
44
+ preload<RouteName extends string>(...args: RouteName extends unknown ? [screen: RouteName, params?: object | undefined, options?: {
45
+ reuse?: boolean | undefined;
46
+ } | undefined] : never): void;
45
47
  reset(state: Readonly<{
46
48
  key: string;
47
49
  index: number;
48
50
  routeNames: string[];
49
- history?: unknown[];
51
+ history?: unknown[] | undefined;
50
52
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
51
53
  type: string;
52
54
  stale: false;
@@ -54,7 +56,7 @@ export declare function useNavigationBuilder<State extends NavigationState, Rout
54
56
  key: string;
55
57
  index: number;
56
58
  routeNames: string[];
57
- history?: unknown[];
59
+ history?: unknown[] | undefined;
58
60
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
59
61
  type: string;
60
62
  stale: false;
@@ -66,7 +68,7 @@ export declare function useNavigationBuilder<State extends NavigationState, Rout
66
68
  key: string;
67
69
  index: number;
68
70
  routeNames: string[];
69
- history?: unknown[];
71
+ history?: unknown[] | undefined;
70
72
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
71
73
  type: string;
72
74
  stale: false;
@@ -76,25 +78,14 @@ export declare function useNavigationBuilder<State extends NavigationState, Rout
76
78
  replaceParams(params: object | undefined): void;
77
79
  pushParams(params: object | undefined): void;
78
80
  } & ActionHelpers;
79
- describe: (route: import("./types").RouteProp<ParamListBase>, placeholder: boolean) => import("./types").Descriptor<ScreenOptions, import("./types").NavigationProp<ParamListBase, string, State, ScreenOptions, EventMap, ActionHelpers>, Readonly<{
80
- key: string;
81
- name: string;
82
- path?: string;
83
- history?: {
84
- type: "params";
85
- params: object;
86
- }[];
87
- } & Readonly<{
88
- params?: Readonly<object | undefined>;
89
- }>>>;
90
81
  descriptors: Record<string, import("./types").Descriptor<ScreenOptions, import("./types").NavigationProp<ParamListBase, string, State, ScreenOptions, EventMap, ActionHelpers>, Readonly<{
91
82
  key: string;
92
83
  name: string;
93
- path?: string;
84
+ path?: string | undefined;
94
85
  history?: {
95
86
  type: "params";
96
87
  params: object;
97
- }[];
88
+ }[] | undefined;
98
89
  } & Readonly<{
99
90
  params?: Readonly<object | undefined>;
100
91
  }>>>>;
@@ -1 +1 @@
1
- {"version":3,"file":"useNavigationBuilder.d.ts","sourceRoot":"","sources":["../../../src/useNavigationBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,YAAY,EAIjB,KAAK,aAAa,EACnB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,EACL,KAAK,uBAAuB,EAI5B,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAqQjB;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,oBAAoB,EAC1C,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,EAC5D,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAEpC,YAAY,EAAE,aAAa,CAAC,KAAK,EAAE,gBAAgB,EAAE,aAAa,CAAC,EACnE,OAAO,EAAE,uBAAuB,CAC9B,aAAa,EACb,KAAK,EACL,aAAa,EACb,QAAQ,EACR,GAAG,CACJ,GACC,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmnBhB"}
1
+ {"version":3,"file":"useNavigationBuilder.d.ts","sourceRoot":"","sources":["../../../src/useNavigationBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,YAAY,EAIjB,KAAK,aAAa,EACnB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,OAAO,EACL,KAAK,uBAAuB,EAI5B,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAsQjB;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,oBAAoB,EAC1C,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,EAC5D,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAEpC,YAAY,EAAE,aAAa,CAAC,KAAK,EAAE,gBAAgB,EAAE,aAAa,CAAC,EACnE,OAAO,EAAE,uBAAuB,CAC9B,aAAa,EACb,KAAK,EACL,aAAa,EACb,QAAQ,EACR,GAAG,CACJ,GACC,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAosBhB"}
@@ -2,7 +2,7 @@ import { type NavigationAction, type NavigationState, type ParamListBase, type R
2
2
  import type { NavigationHelpers, NavigationProp } from './types';
3
3
  import type { NavigationEventEmitter } from './useEventEmitter';
4
4
  type Options<State extends NavigationState, ScreenOptions extends {}, EventMap extends Record<string, any>> = {
5
- state: State;
5
+ routes: State['routes'];
6
6
  getState: () => State;
7
7
  navigation: NavigationHelpers<ParamListBase> & Partial<NavigationProp<ParamListBase, string, any, any, any>>;
8
8
  setOptions: (cb: (options: Record<string, ScreenOptions>) => Record<string, ScreenOptions>) => void;
@@ -16,46 +16,6 @@ type NavigationCache<State extends NavigationState, ScreenOptions extends {}, Ev
16
16
  * It's important to cache them to make sure navigation objects don't change between renders.
17
17
  * This lets us apply optimizations like `React.memo` to minimize re-rendering screens.
18
18
  */
19
- export declare function useNavigationCache<State extends NavigationState, ScreenOptions extends {}, EventMap extends Record<string, any>, ActionHelpers extends Record<string, (...args: any) => void>>({ state, getState, navigation, setOptions, router, emitter, }: Options<State, ScreenOptions, EventMap>): {
20
- base: Omit<{
21
- dispatch(action: Readonly<{
22
- type: string;
23
- payload?: object;
24
- source?: string;
25
- target?: string;
26
- }> | ((state: Readonly<State>) => Readonly<{
27
- type: string;
28
- payload?: object;
29
- source?: string;
30
- target?: string;
31
- }>)): void;
32
- navigate<RouteName extends string>(...args: RouteName extends unknown ? [screen: RouteName, params?: object | undefined, options?: {
33
- merge?: boolean;
34
- pop?: boolean;
35
- } | undefined] : never): void;
36
- navigate<RouteName extends string>(options: RouteName extends unknown ? {
37
- name: RouteName;
38
- params: object | undefined;
39
- path?: string;
40
- merge?: boolean;
41
- pop?: boolean;
42
- } : never): void;
43
- preload<RouteName extends string>(...args: RouteName extends unknown ? [screen: RouteName, params?: object | undefined] : never): void;
44
- reset(state: State | import("@react-navigation/routers").PartialState<State>): void;
45
- goBack(): void;
46
- isFocused(): boolean;
47
- canGoBack(): boolean;
48
- getState(): State;
49
- } & import("./types").PrivateValueStore<[ParamListBase, unknown, unknown]>, "getParent"> & {
50
- setOptions(options: Partial<ScreenOptions>): void;
51
- getParent(routeName: string): NavigationProp<ParamListBase, string, State, ScreenOptions, EventMap, ActionHelpers>;
52
- getParent(): NavigationProp<ParamListBase> | undefined;
53
- } & {
54
- setParams(params: Partial<object | undefined>): void;
55
- replaceParams(params: object | undefined): void;
56
- pushParams(params: object | undefined): void;
57
- } & ActionHelpers & import("./types").EventConsumer<EventMap & import("./types").EventMapCore<State>> & import("./types").PrivateValueStore<[ParamListBase, string, EventMap]>;
58
- navigations: NavigationCache<State, ScreenOptions, EventMap, ActionHelpers>;
59
- };
19
+ export declare function useNavigationCache<State extends NavigationState, ScreenOptions extends {}, EventMap extends Record<string, any>, ActionHelpers extends Record<string, (...args: any) => void>>({ routes, getState, navigation, setOptions, router, emitter, }: Options<State, ScreenOptions, EventMap>): NavigationCache<State, ScreenOptions, EventMap, ActionHelpers>;
60
20
  export {};
61
21
  //# sourceMappingURL=useNavigationCache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useNavigationCache.d.ts","sourceRoot":"","sources":["../../../src/useNavigationCache.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,MAAM,EACZ,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEhE,KAAK,OAAO,CACV,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAClC;IACF,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,UAAU,EAAE,iBAAiB,CAAC,aAAa,CAAC,GAC1C,OAAO,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAChE,UAAU,EAAE,CACV,EAAE,EAAE,CACF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,KACnC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,KAC/B,IAAI,CAAC;IACV,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IACxC,OAAO,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC;CAC3C,CAAC;AAEF,KAAK,cAAc,CACjB,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,IAC1D,cAAc,CAChB,aAAa,EACb,MAAM,EACN,KAAK,EACL,aAAa,EACb,QAAQ,EACR,aAAa,CACd,CAAC;AAEF,KAAK,eAAe,CAClB,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,IAC1D,MAAM,CACR,MAAM,EACN,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,CAAC,CAC9D,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,EAC5D,EACA,KAAK,EACL,QAAQ,EACR,UAAU,EACV,UAAU,EACV,MAAM,EACN,OAAO,GACR,EAAE,OAAO,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4LzC"}
1
+ {"version":3,"file":"useNavigationCache.d.ts","sourceRoot":"","sources":["../../../src/useNavigationCache.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,MAAM,EACZ,MAAM,2BAA2B,CAAC;AAKnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEhE,KAAK,OAAO,CACV,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAClC;IACF,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxB,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,UAAU,EAAE,iBAAiB,CAAC,aAAa,CAAC,GAC1C,OAAO,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAChE,UAAU,EAAE,CACV,EAAE,EAAE,CACF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,KACnC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,KAC/B,IAAI,CAAC;IACV,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IACxC,OAAO,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC;CAC3C,CAAC;AAEF,KAAK,cAAc,CACjB,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,IAC1D,cAAc,CAChB,aAAa,EACb,MAAM,EACN,KAAK,EACL,aAAa,EACb,QAAQ,EACR,aAAa,CACd,CAAC;AAEF,KAAK,eAAe,CAClB,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,IAC1D,MAAM,CACR,MAAM,EACN,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,CAAC,CAC9D,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,EAC5D,EACA,MAAM,EACN,QAAQ,EACR,UAAU,EACV,UAAU,EACV,MAAM,EACN,OAAO,GACR,EAAE,OAAO,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,kEA+HzC"}
@@ -17,40 +17,42 @@ type Options<State extends NavigationState, Action extends NavigationAction> = {
17
17
  export declare function useNavigationHelpers<State extends NavigationState, ActionHelpers extends Record<string, (...args: any) => void>, Action extends NavigationAction, EventMap extends Record<string, any>>({ onAction, onUnhandledAction, getState, emitter, router, stateRef, }: Options<State, Action>): {
18
18
  dispatch(action: Readonly<{
19
19
  type: string;
20
- payload?: object;
21
- source?: string;
22
- target?: string;
20
+ payload?: object | undefined;
21
+ source?: string | undefined;
22
+ target?: string | undefined;
23
23
  }> | ((state: Readonly<Readonly<{
24
24
  key: string;
25
25
  index: number;
26
26
  routeNames: string[];
27
- history?: unknown[];
27
+ history?: unknown[] | undefined;
28
28
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
29
29
  type: string;
30
30
  stale: false;
31
31
  }>>) => Readonly<{
32
32
  type: string;
33
- payload?: object;
34
- source?: string;
35
- target?: string;
33
+ payload?: object | undefined;
34
+ source?: string | undefined;
35
+ target?: string | undefined;
36
36
  }>)): void;
37
37
  navigate<RouteName extends string>(...args: RouteName extends unknown ? [screen: RouteName, params?: object | undefined, options?: {
38
- merge?: boolean;
39
- pop?: boolean;
38
+ merge?: boolean | undefined;
39
+ pop?: boolean | undefined;
40
40
  } | undefined] : never): void;
41
41
  navigate<RouteName extends string>(options: RouteName extends unknown ? {
42
42
  name: RouteName;
43
43
  params: object | undefined;
44
- path?: string;
45
- merge?: boolean;
46
- pop?: boolean;
44
+ path?: string | undefined;
45
+ merge?: boolean | undefined;
46
+ pop?: boolean | undefined;
47
47
  } : never): void;
48
- preload<RouteName extends string>(...args: RouteName extends unknown ? [screen: RouteName, params?: object | undefined] : never): void;
48
+ preload<RouteName extends string>(...args: RouteName extends unknown ? [screen: RouteName, params?: object | undefined, options?: {
49
+ reuse?: boolean | undefined;
50
+ } | undefined] : never): void;
49
51
  reset(state: Readonly<{
50
52
  key: string;
51
53
  index: number;
52
54
  routeNames: string[];
53
- history?: unknown[];
55
+ history?: unknown[] | undefined;
54
56
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
55
57
  type: string;
56
58
  stale: false;
@@ -58,7 +60,7 @@ export declare function useNavigationHelpers<State extends NavigationState, Acti
58
60
  key: string;
59
61
  index: number;
60
62
  routeNames: string[];
61
- history?: unknown[];
63
+ history?: unknown[] | undefined;
62
64
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
63
65
  type: string;
64
66
  stale: false;
@@ -70,7 +72,7 @@ export declare function useNavigationHelpers<State extends NavigationState, Acti
70
72
  key: string;
71
73
  index: number;
72
74
  routeNames: string[];
73
- history?: unknown[];
75
+ history?: unknown[] | undefined;
74
76
  routes: import("@react-navigation/routers").NavigationRoute<ParamListBase, string>[];
75
77
  type: string;
76
78
  stale: false;
@@ -1 +1 @@
1
- {"version":3,"file":"useNavigationHelpers.d.ts","sourceRoot":"","sources":["../../../src/useNavigationHelpers.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,MAAM,EACZ,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAA0B,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAMhE,KAAK,OAAO,CAAC,KAAK,SAAS,eAAe,EAAE,MAAM,SAAS,gBAAgB,IAAI;IAC7E,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC;IAChD,iBAAiB,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACtD,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,OAAO,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;CACzC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,EAC5D,MAAM,SAAS,gBAAgB,EAC/B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,EACA,QAAQ,EACR,iBAAiB,EACjB,QAAQ,EACR,OAAO,EACP,MAAM,EACN,QAAQ,GACT,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAsExB"}
1
+ {"version":3,"file":"useNavigationHelpers.d.ts","sourceRoot":"","sources":["../../../src/useNavigationHelpers.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,MAAM,EACZ,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAA0B,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAMhE,KAAK,OAAO,CAAC,KAAK,SAAS,eAAe,EAAE,MAAM,SAAS,gBAAgB,IAAI;IAC7E,QAAQ,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC;IAChD,iBAAiB,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACtD,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,OAAO,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;CACzC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,EAC5D,MAAM,SAAS,gBAAgB,EAC/B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,EACA,QAAQ,EACR,iBAAiB,EACjB,QAAQ,EACR,OAAO,EACP,MAAM,EACN,QAAQ,GACT,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAsExB"}
@@ -1 +1 @@
1
- {"version":3,"file":"useNavigationState.d.ts","sourceRoot":"","sources":["../../../src/useNavigationState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EACV,uBAAuB,EAEvB,aAAa,EACd,MAAM,SAAS,CAAC;AAQjB,KAAK,wBAAwB,CAC3B,SAAS,EACT,SAAS,SAAS,MAAM,uBAAuB,CAAC,SAAS,CAAC,IACxD,uBAAuB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,SAAS;IACxD,QAAQ,EAAE,MAAM,MAAM,KAAK,CAAC;CAC7B,GACG,KAAK,GACL,KAAK,CAAC;AAEV;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,CAAC,CAAC,EACP,KAAK,CAAC,SAAS,GAAG,aAAa,EAC/B,KAAK,CAAC,SAAS,SACb,MAAM,uBAAuB,CAAC,SAAS,CAAC,GAAG,MAAM,uBAAuB,CAAC,SAAS,CAAC,EAErF,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,wBAAwB,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,GACrE,CAAC,CAAC;AACL,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,GACrD,CAAC,CAAC;AAkEL,wBAAgB,+BAA+B,CAAC,EAC9C,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,2CA8BA"}
1
+ {"version":3,"file":"useNavigationState.d.ts","sourceRoot":"","sources":["../../../src/useNavigationState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EACV,uBAAuB,EAEvB,aAAa,EACd,MAAM,SAAS,CAAC;AAQjB,KAAK,wBAAwB,CAC3B,SAAS,EACT,SAAS,SAAS,MAAM,uBAAuB,CAAC,SAAS,CAAC,IACxD,uBAAuB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,SAAS;IACxD,QAAQ,EAAE,MAAM,MAAM,KAAK,CAAC;CAC7B,GACG,KAAK,GACL,KAAK,CAAC;AAEV;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,CAAC,CAAC,EACP,KAAK,CAAC,SAAS,GAAG,aAAa,EAC/B,KAAK,CAAC,SAAS,SAAS,MAAM,uBAAuB,CAAC,SAAS,CAAC,GAC9D,MAAM,uBAAuB,CAAC,SAAS,CAAC,EAE1C,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,wBAAwB,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,GACrE,CAAC,CAAC;AACL,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,GACrD,CAAC,CAAC;AAkEL,wBAAgB,+BAA+B,CAAC,EAC9C,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,2CAgCA"}
@@ -2,11 +2,11 @@ import type { NavigationAction, NavigationState, PartialState, Router, RouterCon
2
2
  import { type ChildActionListener, type ChildBeforeRemoveListener } from './NavigationBuilderContext';
3
3
  import type { EventMapCore } from './types';
4
4
  import type { NavigationEventEmitter } from './useEventEmitter';
5
- type Options = {
6
- router: Router<NavigationState, NavigationAction>;
7
- key?: string;
8
- getState: () => NavigationState;
9
- setState: (state: NavigationState | PartialState<NavigationState>) => void;
5
+ type Options<State extends NavigationState> = {
6
+ router: Router<State, NavigationAction>;
7
+ key?: string | undefined;
8
+ getState: () => State;
9
+ setState: (state: State | PartialState<State>) => void;
10
10
  actionListeners: ChildActionListener[];
11
11
  beforeRemoveListeners: Record<string, ChildBeforeRemoveListener | undefined>;
12
12
  routerConfigOptions: RouterConfigOptions;
@@ -21,6 +21,6 @@ type Options = {
21
21
  *
22
22
  * When the action handler handles as action, it returns `true`, otherwise `false`.
23
23
  */
24
- export declare function useOnAction({ router, getState, setState, key, actionListeners, beforeRemoveListeners, routerConfigOptions, emitter, }: Options): (action: NavigationAction, visitedNavigators?: Set<string>) => boolean;
24
+ export declare function useOnAction<State extends NavigationState>({ router, getState, setState, key, actionListeners, beforeRemoveListeners, routerConfigOptions, emitter, }: Options<State>): (action: NavigationAction, visitedNavigators?: Set<string>) => boolean;
25
25
  export {};
26
26
  //# sourceMappingURL=useOnAction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useOnAction.d.ts","sourceRoot":"","sources":["../../../src/useOnAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,MAAM,EACN,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAE/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAGhE,KAAK,OAAO,GAAG;IACb,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;IAClD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,eAAe,CAAC;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IAC3E,eAAe,EAAE,mBAAmB,EAAE,CAAC;IACvC,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,GAAG,SAAS,CAAC,CAAC;IAC7E,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,OAAO,EAAE,sBAAsB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;CACpD,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,OAAO,GACR,EAAE,OAAO,YAiBI,gBAAgB,sBACL,GAAG,CAAC,MAAM,CAAC,aAuGnC"}
1
+ {"version":3,"file":"useOnAction.d.ts","sourceRoot":"","sources":["../../../src/useOnAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,MAAM,EACN,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAE/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAGhE,KAAK,OAAO,CAAC,KAAK,SAAS,eAAe,IAAI;IAC5C,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IACxC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IACvD,eAAe,EAAE,mBAAmB,EAAE,CAAC;IACvC,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,GAAG,SAAS,CAAC,CAAC;IAC7E,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,OAAO,EAAE,sBAAsB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;CACpD,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,KAAK,SAAS,eAAe,EAAE,EACzD,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,OAAO,GACR,EAAE,OAAO,CAAC,KAAK,CAAC,YAiBH,gBAAgB,sBACL,GAAG,CAAC,MAAM,CAAC,aAuGnC"}
@@ -1,15 +1,15 @@
1
1
  import type { NavigationAction, NavigationState, Router } from '@react-navigation/routers';
2
- type Options<Action extends NavigationAction> = {
3
- router: Router<NavigationState, Action>;
4
- getState: () => NavigationState;
5
- setState: (state: NavigationState) => void;
6
- key?: string;
2
+ type Options<State extends NavigationState, Action extends NavigationAction> = {
3
+ router: Router<State, Action>;
4
+ getState: () => State;
5
+ setState: (state: State) => void;
6
+ key?: string | undefined;
7
7
  };
8
8
  /**
9
9
  * Hook to handle focus actions for a route.
10
10
  * Focus action needs to be treated specially, coz when a nested route is focused,
11
11
  * the parent navigators also needs to be focused.
12
12
  */
13
- export declare function useOnRouteFocus<Action extends NavigationAction>({ router, getState, key: sourceRouteKey, setState, }: Options<Action>): (key: string) => void;
13
+ export declare function useOnRouteFocus<State extends NavigationState, Action extends NavigationAction>({ router, getState, key: sourceRouteKey, setState }: Options<State, Action>): (key: string) => void;
14
14
  export {};
15
15
  //# sourceMappingURL=useOnRouteFocus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useOnRouteFocus.d.ts","sourceRoot":"","sources":["../../../src/useOnRouteFocus.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,MAAM,EACP,MAAM,2BAA2B,CAAC;AAKnC,KAAK,OAAO,CAAC,MAAM,SAAS,gBAAgB,IAAI;IAC9C,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IACxC,QAAQ,EAAE,MAAM,eAAe,CAAC;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3C,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,SAAS,gBAAgB,EAAE,EAC/D,MAAM,EACN,QAAQ,EACR,GAAG,EAAE,cAAc,EACnB,QAAQ,GACT,EAAE,OAAO,CAAC,MAAM,CAAC,SAMR,MAAM,UAcf"}
1
+ {"version":3,"file":"useOnRouteFocus.d.ts","sourceRoot":"","sources":["../../../src/useOnRouteFocus.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,MAAM,EACP,MAAM,2BAA2B,CAAC;AAKnC,KAAK,OAAO,CAAC,KAAK,SAAS,eAAe,EAAE,MAAM,SAAS,gBAAgB,IAAI;IAC7E,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,MAAM,KAAK,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,KAAK,SAAS,eAAe,EAC7B,MAAM,SAAS,gBAAgB,EAC/B,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,SAMnE,MAAM,UAcf"}
@@ -12,11 +12,11 @@ export declare const CHILD_STATE: unique symbol;
12
12
  export declare function useRouteCache<State extends NavigationState>(routes: State['routes']): Readonly<{
13
13
  key: string;
14
14
  name: string;
15
- path?: string;
15
+ path?: string | undefined;
16
16
  history?: {
17
17
  type: "params";
18
18
  params: object;
19
- }[];
19
+ }[] | undefined;
20
20
  } & Readonly<{
21
21
  params?: Readonly<object | undefined>;
22
22
  }>>[];
@@ -1 +1 @@
1
- {"version":3,"file":"useScheduleUpdate.d.ts","sourceRoot":"","sources":["../../../src/useScheduleUpdate.tsx"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,QAUrD"}
1
+ {"version":3,"file":"useScheduleUpdate.d.ts","sourceRoot":"","sources":["../../../src/useScheduleUpdate.tsx"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,QAQrD"}
@@ -45,6 +45,21 @@ type ExtractSegmentParam<Segment extends string> = Segment extends `:${infer Par
45
45
  } : Segment extends `:${infer Param}` ? {
46
46
  [K in StripRegex<Param>]: string;
47
47
  } : {};
48
+ export type StandardSchemaValidationResult<Output> = {
49
+ value: Output;
50
+ issues?: undefined;
51
+ } | {
52
+ value?: undefined;
53
+ issues: readonly unknown[];
54
+ };
55
+ export type StandardSchemaV1<Input = unknown, Output = Input> = {
56
+ readonly '~standard': {
57
+ readonly version: 1;
58
+ readonly vendor: string;
59
+ readonly validate: (value: Input) => StandardSchemaValidationResult<Output> | Promise<StandardSchemaValidationResult<Output>>;
60
+ };
61
+ };
62
+ export type QueryParamInput = string | string[] | null | undefined;
48
63
  /**
49
64
  * Extract path params from a path string.
50
65
  * e.g. `/foo/:userId/:postId` -> `{ userId: string; postId: string }`
@@ -53,12 +68,29 @@ type ExtractSegmentParam<Segment extends string> = Segment extends `:${infer Par
53
68
  */
54
69
  export type ExtractParamStrings<Path extends string> = Path extends `${infer Segment}/${infer Rest}` ? ExtractSegmentParam<Segment> & ExtractParamStrings<Rest> : ExtractSegmentParam<Path>;
55
70
  /**
56
- * Extract the parsed params type from base params and parse functions.
57
- * Applies the return type of parse functions to the corresponding params.
71
+ * Get the type of params based on the `parse` config and the path pattern.
58
72
  */
59
73
  export type ExtractParamsType<Params, Parse> = {
60
- [K in keyof Params]: K extends keyof Parse ? Parse[K] extends (value: string) => infer R ? R : Params[K] : Params[K];
74
+ [K in keyof Params]: K extends keyof Parse ? Parse[K] extends StandardSchemaV1<unknown, infer R> ? R : Parse[K] extends (value: string) => infer R ? R : Params[K] : Params[K];
75
+ } & {
76
+ [K in QueryParamOptionalKeys<Params, Parse>]?: QueryParamValue<Parse[K]>;
77
+ } & {
78
+ [K in QueryParamRequiredKeys<Params, Parse>]: QueryParamValue<Parse[K]>;
61
79
  };
80
+ type QueryParamValue<ParseValue> = ParseValue extends StandardSchemaV1<unknown, infer R> ? R : ParseValue extends (value: string) => infer R ? R : never;
81
+ /**
82
+ * For schema, it's optional if the output has `undefined`, otherwise required
83
+ * For parse function, it's always optional as it can't say if it's required or not
84
+ */
85
+ type QueryParamOptionalKeys<Params, Parse> = {
86
+ [K in Exclude<keyof Parse, keyof Params>]: Parse[K] extends StandardSchemaV1<unknown, infer R> ? undefined extends R ? K : never : Parse[K] extends (value: string) => unknown ? K : never;
87
+ }[Exclude<keyof Parse, keyof Params>];
88
+ /**
89
+ * Exclude optional keys to get required keys
90
+ * For schema, it's required if the output doesn't have `undefined`, otherwise optional
91
+ * It doesn't include parse functions (as they are always optional)
92
+ */
93
+ type QueryParamRequiredKeys<Params, Parse> = Exclude<Exclude<keyof Parse, keyof Params>, QueryParamOptionalKeys<Params, Parse>>;
62
94
  /**
63
95
  * Infer the path string from a linking config.
64
96
  */
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../../src/utilities.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../../src/utilities.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,EAAE,CAAC;AAExD;;;GAGG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;AAE3D;;;GAGG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CACnC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,CACvC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,GAC1B,CAAC,GACD,KAAK,CAAC;AAEV,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,OAAO,SAAS,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AAE9D,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IACxD,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,GACpB,KAAK,GACL,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,GAChC,KAAK,GACL,IAAI,CAAC;AAEb,MAAM,MAAM,gBAAgB,GAAG,IAAI,MAAM,EAAE,GAAG,GAAG,MAAM,KAAK,MAAM,EAAE,CAAC;AAErE;;;GAGG;AACH,KAAK,UAAU,CAAC,KAAK,SAAS,MAAM,IAAI,KAAK,SAAS,GAAG,MAAM,IAAI,IAAI,MAAM,GAAG,GAC5E,IAAI,GACJ,KAAK,CAAC;AAEV;;;GAGG;AACH,KAAK,mBAAmB,CAAC,OAAO,SAAS,MAAM,IAC7C,OAAO,SAAS,IAAI,MAAM,KAAK,GAAG,GAC9B;KAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM;CAAE,GACrC,OAAO,SAAS,IAAI,MAAM,KAAK,EAAE,GAC/B;KAAG,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,MAAM;CAAE,GACpC,EAAE,CAAC;AAEX,MAAM,MAAM,8BAA8B,CAAC,MAAM,IAC7C;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,CAAA;CAAE,GACrC;IAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,CAAC;AAEtD,MAAM,MAAM,gBAAgB,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,GAAG,KAAK,IAAI;IAC9D,QAAQ,CAAC,WAAW,EAAE;QACpB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,QAAQ,EAAE,CACjB,KAAK,EAAE,KAAK,KAEV,8BAA8B,CAAC,MAAM,CAAC,GACtC,OAAO,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC,CAAC;KACrD,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;AAEnE;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,CAAC,IAAI,SAAS,MAAM,IACjD,IAAI,SAAS,GAAG,MAAM,OAAO,IAAI,MAAM,IAAI,EAAE,GACzC,mBAAmB,CAAC,OAAO,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,GACxD,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAEhC;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,MAAM,EAAE,KAAK,IAAI;KAM5C,CAAC,IAAI,MAAM,MAAM,GAAG,CAAC,SAAS,MAAM,KAAK,GACtC,KAAK,CAAC,CAAC,CAAC,SAAS,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GACjD,CAAC,GACD,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,GACzC,CAAC,GACD,MAAM,CAAC,CAAC,CAAC,GACb,MAAM,CAAC,CAAC,CAAC;CACd,GAAG;KAID,CAAC,IAAI,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CACzE,GAAG;KAID,CAAC,IAAI,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CACxE,CAAC;AAEF,KAAK,eAAe,CAAC,UAAU,IAC7B,UAAU,SAAS,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GACjD,CAAC,GACD,UAAU,SAAS,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,GAC3C,CAAC,GACD,KAAK,CAAC;AAEd;;;GAGG;AACH,KAAK,sBAAsB,CAAC,MAAM,EAAE,KAAK,IAAI;KAC1C,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,MAAM,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,gBAAgB,CAC1E,OAAO,EACP,MAAM,CAAC,CACR,GACG,SAAS,SAAS,CAAC,GACjB,CAAC,GACD,KAAK,GACP,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,GACzC,CAAC,GACD,KAAK;CACZ,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE,MAAM,MAAM,CAAC,CAAC,CAAC;AAEtC;;;;GAIG;AACH,KAAK,sBAAsB,CAAC,MAAM,EAAE,KAAK,IAAI,OAAO,CAClD,OAAO,CAAC,MAAM,KAAK,EAAE,MAAM,MAAM,CAAC,EAClC,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,CACtC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,SAAS,MAAM,CAAA;CAAE,GACjE,CAAC,GACD,KAAK,CAAC;AAEV;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,EAAE,CAAC;AAElE;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAC7B,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC;IAAE,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAA;CAAE,CAAC,GACzD,CAAC,GACD,CAAC,SAAS;IAAE,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,OAAO,CAAA;KAAE,CAAA;CAAE,GAC9C,OAAO,SAAS,EAAE,qBAAqB,CAAC;KACrC,CAAC,IAAI,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC;QAC3D,KAAK,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC,CAAA;SAAE,CAAC;KAC5B,CAAC,GACE,CAAC,GACD,OAAO,CAAC,CAAC,CAAC,SAAS;QAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GACpC,CAAC,SAAS,KAAK,CAAC,aAAa,CAAC;QAAE,KAAK,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC,CAAA;SAAE,CAAA;KAAE,CAAC,GAC3D,CAAC,GACD,SAAS,GACX,SAAS;CAChB,CAAC,GACF,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@react-navigation/core",
3
3
  "description": "Core utilities for building navigators",
4
- "version": "8.0.0-alpha.0",
4
+ "version": "8.0.0-alpha.10",
5
5
  "keywords": [
6
6
  "react",
7
7
  "react-native",
@@ -40,30 +40,32 @@
40
40
  "clean": "del lib"
41
41
  },
42
42
  "dependencies": {
43
- "@react-navigation/routers": "^8.0.0-alpha.0",
44
- "escape-string-regexp": "^4.0.0",
43
+ "@react-navigation/routers": "^8.0.0-alpha.5",
44
+ "escape-string-regexp": "^5.0.0",
45
45
  "fast-deep-equal": "^3.1.3",
46
- "nanoid": "^3.3.11",
47
- "query-string": "^7.1.3",
46
+ "nanoid": "^5.1.7",
47
+ "query-string": "^9.3.1",
48
48
  "react-is": "^19.1.0",
49
- "use-latest-callback": "^0.3.2",
50
- "use-sync-external-store": "^1.5.0"
49
+ "use-latest-callback": "^0.3.3",
50
+ "use-sync-external-store": "^1.6.0"
51
51
  },
52
52
  "devDependencies": {
53
- "@jest/globals": "^30.0.0",
54
- "@testing-library/react-native": "^13.2.1",
55
- "@types/react": "~19.1.10",
53
+ "@jest/globals": "^30.3.0",
54
+ "@testing-library/react-native": "^13.3.3",
55
+ "@types/react": "~19.2.2",
56
56
  "@types/react-is": "^19.0.0",
57
57
  "@types/use-sync-external-store": "^1.5.0",
58
- "del-cli": "^6.0.0",
59
- "immer": "^10.1.1",
60
- "react": "19.1.0",
61
- "react-native-builder-bob": "^0.40.12",
62
- "react-test-renderer": "19.1.0",
63
- "typescript": "^5.9.2"
58
+ "del-cli": "^7.0.0",
59
+ "immer": "^11.1.4",
60
+ "react": "19.2.0",
61
+ "react-native-builder-bob": "^0.41.0",
62
+ "react-test-renderer": "19.2.0",
63
+ "typescript": "^6.0.2",
64
+ "valibot": "^1.3.1",
65
+ "zod": "^4.3.6"
64
66
  },
65
67
  "peerDependencies": {
66
- "react": ">= 19.0.0"
68
+ "react": ">= 19.2.0"
67
69
  },
68
70
  "react-native-builder-bob": {
69
71
  "source": "src",
@@ -83,5 +85,5 @@
83
85
  ]
84
86
  ]
85
87
  },
86
- "gitHead": "46daae524ec6a59737147ed506222dd09a5b6e39"
88
+ "gitHead": "18da535b07fc86a30700efc4d824ef58271d2b8f"
87
89
  }