@react-navigation/core 7.8.4 → 7.8.5

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 (150) hide show
  1. package/package.json +4 -3
  2. package/lib/commonjs/BaseNavigationContainer.js +0 -368
  3. package/lib/commonjs/BaseNavigationContainer.js.map +0 -1
  4. package/lib/commonjs/CurrentRenderContext.js +0 -15
  5. package/lib/commonjs/CurrentRenderContext.js.map +0 -1
  6. package/lib/commonjs/DeprecatedNavigationInChildContext.js +0 -14
  7. package/lib/commonjs/DeprecatedNavigationInChildContext.js.map +0 -1
  8. package/lib/commonjs/EnsureSingleNavigator.js +0 -43
  9. package/lib/commonjs/EnsureSingleNavigator.js.map +0 -1
  10. package/lib/commonjs/Group.js +0 -14
  11. package/lib/commonjs/Group.js.map +0 -1
  12. package/lib/commonjs/NavigationBuilderContext.js +0 -23
  13. package/lib/commonjs/NavigationBuilderContext.js.map +0 -1
  14. package/lib/commonjs/NavigationContainerRefContext.js +0 -14
  15. package/lib/commonjs/NavigationContainerRefContext.js.map +0 -1
  16. package/lib/commonjs/NavigationContext.js +0 -14
  17. package/lib/commonjs/NavigationContext.js.map +0 -1
  18. package/lib/commonjs/NavigationFocusedRouteStateContext.js +0 -14
  19. package/lib/commonjs/NavigationFocusedRouteStateContext.js.map +0 -1
  20. package/lib/commonjs/NavigationHelpersContext.js +0 -15
  21. package/lib/commonjs/NavigationHelpersContext.js.map +0 -1
  22. package/lib/commonjs/NavigationIndependentTree.js +0 -35
  23. package/lib/commonjs/NavigationIndependentTree.js.map +0 -1
  24. package/lib/commonjs/NavigationIndependentTreeContext.js +0 -14
  25. package/lib/commonjs/NavigationIndependentTreeContext.js.map +0 -1
  26. package/lib/commonjs/NavigationRouteContext.js +0 -14
  27. package/lib/commonjs/NavigationRouteContext.js.map +0 -1
  28. package/lib/commonjs/NavigationStateContext.js +0 -29
  29. package/lib/commonjs/NavigationStateContext.js.map +0 -1
  30. package/lib/commonjs/PreventRemoveContext.js +0 -16
  31. package/lib/commonjs/PreventRemoveContext.js.map +0 -1
  32. package/lib/commonjs/PreventRemoveProvider.js +0 -91
  33. package/lib/commonjs/PreventRemoveProvider.js.map +0 -1
  34. package/lib/commonjs/SceneView.js +0 -151
  35. package/lib/commonjs/SceneView.js.map +0 -1
  36. package/lib/commonjs/Screen.js +0 -14
  37. package/lib/commonjs/Screen.js.map +0 -1
  38. package/lib/commonjs/StaticContainer.js +0 -31
  39. package/lib/commonjs/StaticContainer.js.map +0 -1
  40. package/lib/commonjs/StaticNavigation.js +0 -258
  41. package/lib/commonjs/StaticNavigation.js.map +0 -1
  42. package/lib/commonjs/UnhandledActionContext.js +0 -11
  43. package/lib/commonjs/UnhandledActionContext.js.map +0 -1
  44. package/lib/commonjs/arrayStartsWith.js +0 -16
  45. package/lib/commonjs/arrayStartsWith.js.map +0 -1
  46. package/lib/commonjs/checkDuplicateRouteNames.js +0 -25
  47. package/lib/commonjs/checkDuplicateRouteNames.js.map +0 -1
  48. package/lib/commonjs/checkSerializable.js +0 -50
  49. package/lib/commonjs/checkSerializable.js.map +0 -1
  50. package/lib/commonjs/createNavigationContainerRef.js +0 -69
  51. package/lib/commonjs/createNavigationContainerRef.js.map +0 -1
  52. package/lib/commonjs/createNavigatorFactory.js +0 -34
  53. package/lib/commonjs/createNavigatorFactory.js.map +0 -1
  54. package/lib/commonjs/deepFreeze.js +0 -40
  55. package/lib/commonjs/deepFreeze.js.map +0 -1
  56. package/lib/commonjs/findFocusedRoute.js +0 -15
  57. package/lib/commonjs/findFocusedRoute.js.map +0 -1
  58. package/lib/commonjs/getActionFromState.js +0 -111
  59. package/lib/commonjs/getActionFromState.js.map +0 -1
  60. package/lib/commonjs/getFocusedRouteNameFromRoute.js +0 -22
  61. package/lib/commonjs/getFocusedRouteNameFromRoute.js.map +0 -1
  62. package/lib/commonjs/getPathFromState.js +0 -241
  63. package/lib/commonjs/getPathFromState.js.map +0 -1
  64. package/lib/commonjs/getPatternParts.js +0 -105
  65. package/lib/commonjs/getPatternParts.js.map +0 -1
  66. package/lib/commonjs/getStateFromPath.js +0 -521
  67. package/lib/commonjs/getStateFromPath.js.map +0 -1
  68. package/lib/commonjs/index.js +0 -295
  69. package/lib/commonjs/index.js.map +0 -1
  70. package/lib/commonjs/isArrayEqual.js +0 -20
  71. package/lib/commonjs/isArrayEqual.js.map +0 -1
  72. package/lib/commonjs/isRecordEqual.js +0 -21
  73. package/lib/commonjs/isRecordEqual.js.map +0 -1
  74. package/lib/commonjs/package.json +0 -1
  75. package/lib/commonjs/theming/ThemeContext.js +0 -12
  76. package/lib/commonjs/theming/ThemeContext.js.map +0 -1
  77. package/lib/commonjs/theming/ThemeProvider.js +0 -21
  78. package/lib/commonjs/theming/ThemeProvider.js.map +0 -1
  79. package/lib/commonjs/theming/useTheme.js +0 -18
  80. package/lib/commonjs/theming/useTheme.js.map +0 -1
  81. package/lib/commonjs/types.js +0 -9
  82. package/lib/commonjs/types.js.map +0 -1
  83. package/lib/commonjs/useChildListeners.js +0 -36
  84. package/lib/commonjs/useChildListeners.js.map +0 -1
  85. package/lib/commonjs/useComponent.js +0 -40
  86. package/lib/commonjs/useComponent.js.map +0 -1
  87. package/lib/commonjs/useCurrentRender.js +0 -25
  88. package/lib/commonjs/useCurrentRender.js.map +0 -1
  89. package/lib/commonjs/useDescriptors.js +0 -192
  90. package/lib/commonjs/useDescriptors.js.map +0 -1
  91. package/lib/commonjs/useEventEmitter.js +0 -105
  92. package/lib/commonjs/useEventEmitter.js.map +0 -1
  93. package/lib/commonjs/useFocusEffect.js +0 -80
  94. package/lib/commonjs/useFocusEffect.js.map +0 -1
  95. package/lib/commonjs/useFocusEvents.js +0 -70
  96. package/lib/commonjs/useFocusEvents.js.map +0 -1
  97. package/lib/commonjs/useFocusedListenersChildrenAdapter.js +0 -48
  98. package/lib/commonjs/useFocusedListenersChildrenAdapter.js.map +0 -1
  99. package/lib/commonjs/useIsFocused.js +0 -28
  100. package/lib/commonjs/useIsFocused.js.map +0 -1
  101. package/lib/commonjs/useIsomorphicLayoutEffect.js +0 -12
  102. package/lib/commonjs/useIsomorphicLayoutEffect.js.map +0 -1
  103. package/lib/commonjs/useIsomorphicLayoutEffect.native.js +0 -9
  104. package/lib/commonjs/useIsomorphicLayoutEffect.native.js.map +0 -1
  105. package/lib/commonjs/useKeyedChildListeners.js +0 -33
  106. package/lib/commonjs/useKeyedChildListeners.js.map +0 -1
  107. package/lib/commonjs/useLazyValue.js +0 -17
  108. package/lib/commonjs/useLazyValue.js.map +0 -1
  109. package/lib/commonjs/useNavigation.js +0 -27
  110. package/lib/commonjs/useNavigation.js.map +0 -1
  111. package/lib/commonjs/useNavigationBuilder.js +0 -495
  112. package/lib/commonjs/useNavigationBuilder.js.map +0 -1
  113. package/lib/commonjs/useNavigationCache.js +0 -162
  114. package/lib/commonjs/useNavigationCache.js.map +0 -1
  115. package/lib/commonjs/useNavigationContainerRef.js +0 -18
  116. package/lib/commonjs/useNavigationContainerRef.js.map +0 -1
  117. package/lib/commonjs/useNavigationHelpers.js +0 -88
  118. package/lib/commonjs/useNavigationHelpers.js.map +0 -1
  119. package/lib/commonjs/useNavigationIndependentTree.js +0 -14
  120. package/lib/commonjs/useNavigationIndependentTree.js.map +0 -1
  121. package/lib/commonjs/useNavigationState.js +0 -26
  122. package/lib/commonjs/useNavigationState.js.map +0 -1
  123. package/lib/commonjs/useOnAction.js +0 -106
  124. package/lib/commonjs/useOnAction.js.map +0 -1
  125. package/lib/commonjs/useOnGetState.js +0 -48
  126. package/lib/commonjs/useOnGetState.js.map +0 -1
  127. package/lib/commonjs/useOnPreventRemove.js +0 -72
  128. package/lib/commonjs/useOnPreventRemove.js.map +0 -1
  129. package/lib/commonjs/useOnRouteFocus.js +0 -36
  130. package/lib/commonjs/useOnRouteFocus.js.map +0 -1
  131. package/lib/commonjs/useOptionsGetters.js +0 -78
  132. package/lib/commonjs/useOptionsGetters.js.map +0 -1
  133. package/lib/commonjs/usePreventRemove.js +0 -48
  134. package/lib/commonjs/usePreventRemove.js.map +0 -1
  135. package/lib/commonjs/usePreventRemoveContext.js +0 -18
  136. package/lib/commonjs/usePreventRemoveContext.js.map +0 -1
  137. package/lib/commonjs/useRegisterNavigator.js +0 -32
  138. package/lib/commonjs/useRegisterNavigator.js.map +0 -1
  139. package/lib/commonjs/useRoute.js +0 -23
  140. package/lib/commonjs/useRoute.js.map +0 -1
  141. package/lib/commonjs/useRouteCache.js +0 -69
  142. package/lib/commonjs/useRouteCache.js.map +0 -1
  143. package/lib/commonjs/useScheduleUpdate.js +0 -30
  144. package/lib/commonjs/useScheduleUpdate.js.map +0 -1
  145. package/lib/commonjs/useStateForPath.js +0 -21
  146. package/lib/commonjs/useStateForPath.js.map +0 -1
  147. package/lib/commonjs/useSyncState.js +0 -87
  148. package/lib/commonjs/useSyncState.js.map +0 -1
  149. package/lib/commonjs/validatePathConfig.js +0 -56
  150. package/lib/commonjs/validatePathConfig.js.map +0 -1
@@ -1,192 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useDescriptors = useDescriptors;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _NavigationBuilderContext = require("./NavigationBuilderContext.js");
9
- var _NavigationContext = require("./NavigationContext.js");
10
- var _NavigationRouteContext = require("./NavigationRouteContext.js");
11
- var _SceneView = require("./SceneView.js");
12
- var _ThemeContext = require("./theming/ThemeContext.js");
13
- var _useNavigationCache = require("./useNavigationCache.js");
14
- var _useRouteCache = require("./useRouteCache.js");
15
- var _jsxRuntime = require("react/jsx-runtime");
16
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
- /**
19
- * Hook to create descriptor objects for the child routes.
20
- *
21
- * A descriptor object provides 3 things:
22
- * - Helper method to render a screen
23
- * - Options specified by the screen for the navigator
24
- * - Navigation object intended for the route
25
- */
26
- function useDescriptors({
27
- state,
28
- screens,
29
- navigation,
30
- screenOptions,
31
- screenLayout,
32
- onAction,
33
- getState,
34
- setState,
35
- addListener,
36
- addKeyedListener,
37
- onRouteFocus,
38
- router,
39
- emitter
40
- }) {
41
- const theme = React.useContext(_ThemeContext.ThemeContext);
42
- const [options, setOptions] = React.useState({});
43
- const {
44
- onDispatchAction,
45
- onOptionsChange,
46
- scheduleUpdate,
47
- flushUpdates,
48
- stackRef
49
- } = React.useContext(_NavigationBuilderContext.NavigationBuilderContext);
50
- const context = React.useMemo(() => ({
51
- navigation,
52
- onAction,
53
- addListener,
54
- addKeyedListener,
55
- onRouteFocus,
56
- onDispatchAction,
57
- onOptionsChange,
58
- scheduleUpdate,
59
- flushUpdates,
60
- stackRef
61
- }), [navigation, onAction, addListener, addKeyedListener, onRouteFocus, onDispatchAction, onOptionsChange, scheduleUpdate, flushUpdates, stackRef]);
62
- const {
63
- base,
64
- navigations
65
- } = (0, _useNavigationCache.useNavigationCache)({
66
- state,
67
- getState,
68
- navigation,
69
- setOptions,
70
- router,
71
- emitter
72
- });
73
- const routes = (0, _useRouteCache.useRouteCache)(state.routes);
74
- const getOptions = (route, navigation, overrides) => {
75
- const config = screens[route.name];
76
- const screen = config.props;
77
- const optionsList = [
78
- // The default `screenOptions` passed to the navigator
79
- screenOptions,
80
- // The `screenOptions` props passed to `Group` elements
81
- ...(config.options ? config.options.filter(Boolean) : []),
82
- // The `options` prop passed to `Screen` elements,
83
- screen.options,
84
- // The options set via `navigation.setOptions`
85
- overrides];
86
- return optionsList.reduce((acc, curr) => Object.assign(acc,
87
- // @ts-expect-error: we check for function but TS still complains
88
- typeof curr !== 'function' ? curr : curr({
89
- route,
90
- navigation,
91
- theme
92
- })), {});
93
- };
94
- const render = (route, navigation, customOptions, routeState) => {
95
- const config = screens[route.name];
96
- const screen = config.props;
97
- const clearOptions = () => setOptions(o => {
98
- if (route.key in o) {
99
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
100
- const {
101
- [route.key]: _,
102
- ...rest
103
- } = o;
104
- return rest;
105
- }
106
- return o;
107
- });
108
- const layout =
109
- // The `layout` prop passed to `Screen` elements,
110
- screen.layout ??
111
- // The `screenLayout` props passed to `Group` elements
112
- config.layout ??
113
- // The default `screenLayout` passed to the navigator
114
- screenLayout;
115
- let element = /*#__PURE__*/(0, _jsxRuntime.jsx)(_SceneView.SceneView, {
116
- navigation: navigation,
117
- route: route,
118
- screen: screen,
119
- routeState: routeState,
120
- getState: getState,
121
- setState: setState,
122
- options: customOptions,
123
- clearOptions: clearOptions
124
- });
125
- if (layout != null) {
126
- element = layout({
127
- route,
128
- navigation,
129
- // @ts-expect-error: in practice `theme` will be defined
130
- theme,
131
- children: element
132
- });
133
- }
134
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_NavigationBuilderContext.NavigationBuilderContext.Provider, {
135
- value: context,
136
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_NavigationContext.NavigationContext.Provider, {
137
- value: navigation,
138
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_NavigationRouteContext.NavigationRouteContext.Provider, {
139
- value: route,
140
- children: element
141
- })
142
- })
143
- }, route.key);
144
- };
145
- const descriptors = routes.reduce((acc, route, i) => {
146
- const navigation = navigations[route.key];
147
- const customOptions = getOptions(route, navigation, options[route.key]);
148
- const element = render(route, navigation, customOptions, state.routes[i].state);
149
- acc[route.key] = {
150
- route,
151
- // @ts-expect-error: it's missing action helpers, fix later
152
- navigation,
153
- render() {
154
- return element;
155
- },
156
- options: customOptions
157
- };
158
- return acc;
159
- }, {});
160
-
161
- /**
162
- * Create a descriptor object for a route.
163
- *
164
- * @param route Route object for which the descriptor should be created
165
- * @param placeholder Whether the descriptor should be a placeholder, e.g. for a route not yet in the state
166
- * @returns Descriptor object
167
- */
168
- const describe = (route, placeholder) => {
169
- if (!placeholder) {
170
- if (!(route.key in descriptors)) {
171
- throw new Error(`Couldn't find a route with the key ${route.key}.`);
172
- }
173
- return descriptors[route.key];
174
- }
175
- const navigation = base;
176
- const customOptions = getOptions(route, navigation, {});
177
- const element = render(route, navigation, customOptions, undefined);
178
- return {
179
- route,
180
- navigation,
181
- render() {
182
- return element;
183
- },
184
- options: customOptions
185
- };
186
- };
187
- return {
188
- describe,
189
- descriptors
190
- };
191
- }
192
- //# sourceMappingURL=useDescriptors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_NavigationBuilderContext","_NavigationContext","_NavigationRouteContext","_SceneView","_ThemeContext","_useNavigationCache","_useRouteCache","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useDescriptors","state","screens","navigation","screenOptions","screenLayout","onAction","getState","setState","addListener","addKeyedListener","onRouteFocus","router","emitter","theme","useContext","ThemeContext","options","setOptions","useState","onDispatchAction","onOptionsChange","scheduleUpdate","flushUpdates","stackRef","NavigationBuilderContext","context","useMemo","base","navigations","useNavigationCache","routes","useRouteCache","getOptions","route","overrides","config","name","screen","props","optionsList","filter","Boolean","reduce","acc","curr","assign","render","customOptions","routeState","clearOptions","o","key","_","rest","layout","element","jsx","SceneView","children","Provider","value","NavigationContext","NavigationRouteContext","descriptors","describe","placeholder","Error","undefined"],"sourceRoot":"../../src","sources":["useDescriptors.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,105 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useEventEmitter = useEventEmitter;
7
- var React = _interopRequireWildcard(require("react"));
8
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
- /**
11
- * Hook to manage the event system used by the navigator to notify screens of various events.
12
- */
13
- function useEventEmitter(listen) {
14
- const listenRef = React.useRef(listen);
15
- React.useEffect(() => {
16
- listenRef.current = listen;
17
- });
18
- const listeners = React.useRef(Object.create(null));
19
- const create = React.useCallback(target => {
20
- const removeListener = (type, callback) => {
21
- const callbacks = listeners.current[type] ? listeners.current[type][target] : undefined;
22
- if (!callbacks) {
23
- return;
24
- }
25
- const index = callbacks.indexOf(callback);
26
- if (index > -1) {
27
- callbacks.splice(index, 1);
28
- }
29
- };
30
- const addListener = (type, callback) => {
31
- listeners.current[type] = listeners.current[type] || {};
32
- listeners.current[type][target] = listeners.current[type][target] || [];
33
- listeners.current[type][target].push(callback);
34
- let removed = false;
35
- return () => {
36
- // Prevent removing other listeners when unsubscribing same listener multiple times
37
- if (!removed) {
38
- removed = true;
39
- removeListener(type, callback);
40
- }
41
- };
42
- };
43
- return {
44
- addListener,
45
- removeListener
46
- };
47
- }, []);
48
- const emit = React.useCallback(({
49
- type,
50
- data,
51
- target,
52
- canPreventDefault
53
- }) => {
54
- const items = listeners.current[type] || {};
55
-
56
- // Copy the current list of callbacks in case they are mutated during execution
57
- const callbacks = target !== undefined ? items[target]?.slice() : [].concat(...Object.keys(items).map(t => items[t])).filter((cb, i, self) => self.lastIndexOf(cb) === i);
58
- const event = {
59
- get type() {
60
- return type;
61
- }
62
- };
63
- if (target !== undefined) {
64
- Object.defineProperty(event, 'target', {
65
- enumerable: true,
66
- get() {
67
- return target;
68
- }
69
- });
70
- }
71
- if (data !== undefined) {
72
- Object.defineProperty(event, 'data', {
73
- enumerable: true,
74
- get() {
75
- return data;
76
- }
77
- });
78
- }
79
- if (canPreventDefault) {
80
- let defaultPrevented = false;
81
- Object.defineProperties(event, {
82
- defaultPrevented: {
83
- enumerable: true,
84
- get() {
85
- return defaultPrevented;
86
- }
87
- },
88
- preventDefault: {
89
- enumerable: true,
90
- value() {
91
- defaultPrevented = true;
92
- }
93
- }
94
- });
95
- }
96
- listenRef.current?.(event);
97
- callbacks?.forEach(cb => cb(event));
98
- return event;
99
- }, []);
100
- return React.useMemo(() => ({
101
- create,
102
- emit
103
- }), [create, emit]);
104
- }
105
- //# sourceMappingURL=useEventEmitter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useEventEmitter","listen","listenRef","useRef","useEffect","current","listeners","create","useCallback","target","removeListener","type","callback","callbacks","undefined","index","indexOf","splice","addListener","push","removed","emit","data","canPreventDefault","items","slice","concat","keys","map","filter","cb","self","lastIndexOf","event","enumerable","defaultPrevented","defineProperties","preventDefault","value","forEach","useMemo"],"sourceRoot":"../../src","sources":["useEventEmitter.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,80 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useFocusEffect = useFocusEffect;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _useNavigation = require("./useNavigation.js");
9
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
- /**
12
- * Hook to run an effect in a focused screen, similar to `React.useEffect`.
13
- * This can be used to perform side-effects such as fetching data or subscribing to events.
14
- * The passed callback should be wrapped in `React.useCallback` to avoid running the effect too often.
15
- *
16
- * @param callback Memoized callback containing the effect, should optionally return a cleanup function.
17
- */
18
- function useFocusEffect(effect) {
19
- const navigation = (0, _useNavigation.useNavigation)();
20
-
21
- // eslint-disable-next-line prefer-rest-params
22
- if (arguments[1] !== undefined) {
23
- const message = "You passed a second argument to 'useFocusEffect', but it only accepts one argument. " + "If you want to pass a dependency array, you can use 'React.useCallback':\n\n" + 'useFocusEffect(\n' + ' React.useCallback(() => {\n' + ' // Your code here\n' + ' }, [depA, depB])\n' + ');\n\n' + 'See usage guide: https://reactnavigation.org/docs/use-focus-effect';
24
- console.error(message);
25
- }
26
- React.useEffect(() => {
27
- let isFocused = false;
28
- let cleanup;
29
- const callback = () => {
30
- const destroy = effect();
31
- if (destroy === undefined || typeof destroy === 'function') {
32
- return destroy;
33
- }
34
- if (process.env.NODE_ENV !== 'production') {
35
- let message = 'An effect function must not return anything besides a function, which is used for clean-up.';
36
- if (destroy === null) {
37
- message += " You returned 'null'. If your effect does not require clean-up, return 'undefined' (or nothing).";
38
- } else if (typeof destroy.then === 'function') {
39
- message += "\n\nIt looks like you wrote 'useFocusEffect(async () => ...)' or returned a Promise. " + 'Instead, write the async function inside your effect ' + 'and call it immediately:\n\n' + 'useFocusEffect(\n' + ' React.useCallback(() => {\n' + ' async function fetchData() {\n' + ' // You can await here\n' + ' const response = await MyAPI.getData(someId);\n' + ' // ...\n' + ' }\n\n' + ' fetchData();\n' + ' }, [someId])\n' + ');\n\n' + 'See usage guide: https://reactnavigation.org/docs/use-focus-effect';
40
- } else {
41
- message += ` You returned '${JSON.stringify(destroy)}'.`;
42
- }
43
- console.error(message);
44
- }
45
- };
46
-
47
- // We need to run the effect on initial render/dep changes if the screen is focused
48
- if (navigation.isFocused()) {
49
- cleanup = callback();
50
- isFocused = true;
51
- }
52
- const unsubscribeFocus = navigation.addListener('focus', () => {
53
- // If callback was already called for focus, avoid calling it again
54
- // The focus event may also fire on initial render, so we guard against running the effect twice
55
- if (isFocused) {
56
- return;
57
- }
58
- if (cleanup !== undefined) {
59
- cleanup();
60
- }
61
- cleanup = callback();
62
- isFocused = true;
63
- });
64
- const unsubscribeBlur = navigation.addListener('blur', () => {
65
- if (cleanup !== undefined) {
66
- cleanup();
67
- }
68
- cleanup = undefined;
69
- isFocused = false;
70
- });
71
- return () => {
72
- if (cleanup !== undefined) {
73
- cleanup();
74
- }
75
- unsubscribeFocus();
76
- unsubscribeBlur();
77
- };
78
- }, [effect, navigation]);
79
- }
80
- //# sourceMappingURL=useFocusEffect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_useNavigation","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useFocusEffect","effect","navigation","useNavigation","arguments","undefined","message","console","error","useEffect","isFocused","cleanup","callback","destroy","process","env","NODE_ENV","then","JSON","stringify","unsubscribeFocus","addListener","unsubscribeBlur"],"sourceRoot":"../../src","sources":["useFocusEffect.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,70 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useFocusEvents = useFocusEvents;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _NavigationContext = require("./NavigationContext.js");
9
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
- /**
12
- * Hook to take care of emitting `focus` and `blur` events.
13
- */
14
- function useFocusEvents({
15
- state,
16
- emitter
17
- }) {
18
- const navigation = React.useContext(_NavigationContext.NavigationContext);
19
- const lastFocusedKeyRef = React.useRef();
20
- const currentFocusedKey = state.routes[state.index].key;
21
-
22
- // When the parent screen changes its focus state, we also need to change child's focus
23
- // Coz the child screen can't be focused if the parent screen is out of focus
24
- React.useEffect(() => navigation?.addListener('focus', () => {
25
- lastFocusedKeyRef.current = currentFocusedKey;
26
- emitter.emit({
27
- type: 'focus',
28
- target: currentFocusedKey
29
- });
30
- }), [currentFocusedKey, emitter, navigation]);
31
- React.useEffect(() => navigation?.addListener('blur', () => {
32
- lastFocusedKeyRef.current = undefined;
33
- emitter.emit({
34
- type: 'blur',
35
- target: currentFocusedKey
36
- });
37
- }), [currentFocusedKey, emitter, navigation]);
38
- React.useEffect(() => {
39
- const lastFocusedKey = lastFocusedKeyRef.current;
40
- lastFocusedKeyRef.current = currentFocusedKey;
41
-
42
- // We wouldn't have `lastFocusedKey` on initial mount
43
- // Fire focus event for the current route on mount if there's no parent navigator
44
- if (lastFocusedKey === undefined && !navigation) {
45
- emitter.emit({
46
- type: 'focus',
47
- target: currentFocusedKey
48
- });
49
- }
50
-
51
- // We should only emit events when the focused key changed and navigator is focused
52
- // When navigator is not focused, screens inside shouldn't receive focused status either
53
- if (lastFocusedKey === currentFocusedKey || !(navigation ? navigation.isFocused() : true)) {
54
- return;
55
- }
56
- if (lastFocusedKey === undefined) {
57
- // Only fire events after initial mount
58
- return;
59
- }
60
- emitter.emit({
61
- type: 'blur',
62
- target: lastFocusedKey
63
- });
64
- emitter.emit({
65
- type: 'focus',
66
- target: currentFocusedKey
67
- });
68
- }, [currentFocusedKey, emitter, navigation]);
69
- }
70
- //# sourceMappingURL=useFocusEvents.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_NavigationContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useFocusEvents","state","emitter","navigation","useContext","NavigationContext","lastFocusedKeyRef","useRef","currentFocusedKey","routes","index","key","useEffect","addListener","current","emit","type","target","undefined","lastFocusedKey","isFocused"],"sourceRoot":"../../src","sources":["useFocusEvents.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,48 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useFocusedListenersChildrenAdapter = useFocusedListenersChildrenAdapter;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _NavigationBuilderContext = require("./NavigationBuilderContext.js");
9
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
- /**
12
- * Hook for passing focus callback to children
13
- */
14
- function useFocusedListenersChildrenAdapter({
15
- navigation,
16
- focusedListeners
17
- }) {
18
- const {
19
- addListener
20
- } = React.useContext(_NavigationBuilderContext.NavigationBuilderContext);
21
- const listener = React.useCallback(callback => {
22
- if (navigation.isFocused()) {
23
- for (const listener of focusedListeners) {
24
- const {
25
- handled,
26
- result
27
- } = listener(callback);
28
- if (handled) {
29
- return {
30
- handled,
31
- result
32
- };
33
- }
34
- }
35
- return {
36
- handled: true,
37
- result: callback(navigation)
38
- };
39
- } else {
40
- return {
41
- handled: false,
42
- result: null
43
- };
44
- }
45
- }, [focusedListeners, navigation]);
46
- React.useEffect(() => addListener?.('focus', listener), [addListener, listener]);
47
- }
48
- //# sourceMappingURL=useFocusedListenersChildrenAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_NavigationBuilderContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useFocusedListenersChildrenAdapter","navigation","focusedListeners","addListener","useContext","NavigationBuilderContext","listener","useCallback","callback","isFocused","handled","result","useEffect"],"sourceRoot":"../../src","sources":["useFocusedListenersChildrenAdapter.tsx"],"mappings":";;;;;;AACA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,yBAAA,GAAAD,OAAA;AAIoC,SAAAE,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAQpC;AACA;AACA;AACO,SAASW,kCAAkCA,CAAC;EACjDC,UAAU;EACVC;AACO,CAAC,EAAE;EACV,MAAM;IAAEC;EAAY,CAAC,GAAG3B,KAAK,CAAC4B,UAAU,CAACC,kDAAwB,CAAC;EAElE,MAAMC,QAAQ,GAAG9B,KAAK,CAAC+B,WAAW,CAC/BC,QAAwC,IAAK;IAC5C,IAAIP,UAAU,CAACQ,SAAS,CAAC,CAAC,EAAE;MAC1B,KAAK,MAAMH,QAAQ,IAAIJ,gBAAgB,EAAE;QACvC,MAAM;UAAEQ,OAAO;UAAEC;QAAO,CAAC,GAAGL,QAAQ,CAACE,QAAQ,CAAC;QAE9C,IAAIE,OAAO,EAAE;UACX,OAAO;YAAEA,OAAO;YAAEC;UAAO,CAAC;QAC5B;MACF;MAEA,OAAO;QAAED,OAAO,EAAE,IAAI;QAAEC,MAAM,EAAEH,QAAQ,CAACP,UAAU;MAAE,CAAC;IACxD,CAAC,MAAM;MACL,OAAO;QAAES,OAAO,EAAE,KAAK;QAAEC,MAAM,EAAE;MAAK,CAAC;IACzC;EACF,CAAC,EACD,CAACT,gBAAgB,EAAED,UAAU,CAC/B,CAAC;EAEDzB,KAAK,CAACoC,SAAS,CACb,MAAMT,WAAW,GAAG,OAAO,EAAEG,QAAQ,CAAC,EACtC,CAACH,WAAW,EAAEG,QAAQ,CACxB,CAAC;AACH","ignoreList":[]}
@@ -1,28 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useIsFocused = useIsFocused;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _useNavigation = require("./useNavigation.js");
9
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
- /**
12
- * Hook to get the current focus state of the screen. Returns a `true` if screen is focused, otherwise `false`.
13
- * This can be used if a component needs to render something based on the focus state.
14
- */
15
- function useIsFocused() {
16
- const navigation = (0, _useNavigation.useNavigation)();
17
- const subscribe = React.useCallback(callback => {
18
- const unsubscribeFocus = navigation.addListener('focus', callback);
19
- const unsubscribeBlur = navigation.addListener('blur', callback);
20
- return () => {
21
- unsubscribeFocus();
22
- unsubscribeBlur();
23
- };
24
- }, [navigation]);
25
- const value = React.useSyncExternalStore(subscribe, navigation.isFocused, navigation.isFocused);
26
- return value;
27
- }
28
- //# sourceMappingURL=useIsFocused.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_useNavigation","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useIsFocused","navigation","useNavigation","subscribe","useCallback","callback","unsubscribeFocus","addListener","unsubscribeBlur","value","useSyncExternalStore","isFocused"],"sourceRoot":"../../src","sources":["useIsFocused.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,cAAA,GAAAD,OAAA;AAAgD,SAAAE,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEhD;AACA;AACA;AACA;AACO,SAASW,YAAYA,CAAA,EAAY;EACtC,MAAMC,UAAU,GAAG,IAAAC,4BAAa,EAAC,CAAC;EAElC,MAAMC,SAAS,GAAG3B,KAAK,CAAC4B,WAAW,CAChCC,QAAoB,IAAK;IACxB,MAAMC,gBAAgB,GAAGL,UAAU,CAACM,WAAW,CAAC,OAAO,EAAEF,QAAQ,CAAC;IAClE,MAAMG,eAAe,GAAGP,UAAU,CAACM,WAAW,CAAC,MAAM,EAAEF,QAAQ,CAAC;IAEhE,OAAO,MAAM;MACXC,gBAAgB,CAAC,CAAC;MAClBE,eAAe,CAAC,CAAC;IACnB,CAAC;EACH,CAAC,EACD,CAACP,UAAU,CACb,CAAC;EAED,MAAMQ,KAAK,GAAGjC,KAAK,CAACkC,oBAAoB,CACtCP,SAAS,EACTF,UAAU,CAACU,SAAS,EACpBV,UAAU,CAACU,SACb,CAAC;EAED,OAAOF,KAAK;AACd","ignoreList":[]}
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useIsomorphicLayoutEffect = void 0;
7
- var _react = require("react");
8
- /**
9
- * Use `useEffect` during SSR and `useLayoutEffect` in the browser to avoid warnings.
10
- */
11
- const useIsomorphicLayoutEffect = exports.useIsomorphicLayoutEffect = typeof document !== 'undefined' ? _react.useLayoutEffect : _react.useEffect;
12
- //# sourceMappingURL=useIsomorphicLayoutEffect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","require","useIsomorphicLayoutEffect","exports","document","useLayoutEffect","useEffect"],"sourceRoot":"../../src","sources":["useIsomorphicLayoutEffect.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACO,MAAMC,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA,GACpC,OAAOE,QAAQ,KAAK,WAAW,GAAGC,sBAAe,GAAGC,gBAAS","ignoreList":[]}
@@ -1,9 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useIsomorphicLayoutEffect = void 0;
7
- var _react = require("react");
8
- const useIsomorphicLayoutEffect = exports.useIsomorphicLayoutEffect = _react.useLayoutEffect;
9
- //# sourceMappingURL=useIsomorphicLayoutEffect.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","require","useIsomorphicLayoutEffect","exports","useLayoutEffect"],"sourceRoot":"../../src","sources":["useIsomorphicLayoutEffect.native.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,MAAMC,yBAAyB,GAAAC,OAAA,CAAAD,yBAAA,GAAGE,sBAAe","ignoreList":[]}