@react-navigation/native 7.1.4 → 7.1.6

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 (214) hide show
  1. package/lib/typescript/src/Link.d.ts.map +1 -0
  2. package/lib/typescript/src/LinkingContext.d.ts.map +1 -0
  3. package/lib/typescript/src/LocaleDirContext.d.ts.map +1 -0
  4. package/lib/typescript/src/NavigationContainer.d.ts.map +1 -0
  5. package/lib/typescript/src/ServerContainer.d.ts.map +1 -0
  6. package/lib/typescript/src/ServerContext.d.ts.map +1 -0
  7. package/lib/typescript/src/UnhandledLinkingContext.d.ts.map +1 -0
  8. package/lib/typescript/src/__stubs__/createStackNavigator.d.ts.map +1 -0
  9. package/lib/typescript/src/__stubs__/window.d.ts.map +1 -0
  10. package/lib/typescript/src/createMemoryHistory.d.ts.map +1 -0
  11. package/lib/typescript/src/createStaticNavigation.d.ts.map +1 -0
  12. package/lib/typescript/src/extractPathFromURL.d.ts.map +1 -0
  13. package/lib/typescript/src/index.d.ts.map +1 -0
  14. package/lib/typescript/src/theming/DarkTheme.d.ts.map +1 -0
  15. package/lib/typescript/src/theming/DefaultTheme.d.ts.map +1 -0
  16. package/lib/typescript/src/theming/fonts.d.ts.map +1 -0
  17. package/lib/typescript/src/types.d.ts.map +1 -0
  18. package/lib/typescript/src/useBackButton.d.ts.map +1 -0
  19. package/lib/typescript/src/useBackButton.native.d.ts.map +1 -0
  20. package/lib/typescript/src/useDocumentTitle.d.ts.map +1 -0
  21. package/lib/typescript/src/useDocumentTitle.native.d.ts.map +1 -0
  22. package/lib/typescript/src/useLinkBuilder.d.ts.map +1 -0
  23. package/lib/typescript/src/useLinkProps.d.ts.map +1 -0
  24. package/lib/typescript/src/useLinkTo.d.ts.map +1 -0
  25. package/lib/typescript/src/useLinking.d.ts.map +1 -0
  26. package/lib/typescript/src/useLinking.native.d.ts.map +1 -0
  27. package/lib/typescript/src/useLocale.d.ts.map +1 -0
  28. package/lib/typescript/src/useRoutePath.d.ts.map +1 -0
  29. package/lib/typescript/src/useScrollToTop.d.ts.map +1 -0
  30. package/lib/typescript/src/useThenable.d.ts.map +1 -0
  31. package/package.json +12 -24
  32. package/lib/commonjs/Link.js +0 -68
  33. package/lib/commonjs/Link.js.map +0 -1
  34. package/lib/commonjs/LinkingContext.js +0 -17
  35. package/lib/commonjs/LinkingContext.js.map +0 -1
  36. package/lib/commonjs/LocaleDirContext.js +0 -12
  37. package/lib/commonjs/LocaleDirContext.js.map +0 -1
  38. package/lib/commonjs/NavigationContainer.js +0 -143
  39. package/lib/commonjs/NavigationContainer.js.map +0 -1
  40. package/lib/commonjs/ServerContainer.js +0 -62
  41. package/lib/commonjs/ServerContainer.js.map +0 -1
  42. package/lib/commonjs/ServerContext.js +0 -11
  43. package/lib/commonjs/ServerContext.js.map +0 -1
  44. package/lib/commonjs/UnhandledLinkingContext.js +0 -20
  45. package/lib/commonjs/UnhandledLinkingContext.js.map +0 -1
  46. package/lib/commonjs/__stubs__/createStackNavigator.js +0 -22
  47. package/lib/commonjs/__stubs__/createStackNavigator.js.map +0 -1
  48. package/lib/commonjs/__stubs__/window.js +0 -79
  49. package/lib/commonjs/__stubs__/window.js.map +0 -1
  50. package/lib/commonjs/createMemoryHistory.js +0 -219
  51. package/lib/commonjs/createMemoryHistory.js.map +0 -1
  52. package/lib/commonjs/createStaticNavigation.js +0 -60
  53. package/lib/commonjs/createStaticNavigation.js.map +0 -1
  54. package/lib/commonjs/extractPathFromURL.js +0 -24
  55. package/lib/commonjs/extractPathFromURL.js.map +0 -1
  56. package/lib/commonjs/index.js +0 -144
  57. package/lib/commonjs/index.js.map +0 -1
  58. package/lib/commonjs/package.json +0 -1
  59. package/lib/commonjs/theming/DarkTheme.js +0 -20
  60. package/lib/commonjs/theming/DarkTheme.js.map +0 -1
  61. package/lib/commonjs/theming/DefaultTheme.js +0 -20
  62. package/lib/commonjs/theming/DefaultTheme.js.map +0 -1
  63. package/lib/commonjs/theming/fonts.js +0 -65
  64. package/lib/commonjs/theming/fonts.js.map +0 -1
  65. package/lib/commonjs/types.js +0 -6
  66. package/lib/commonjs/types.js.map +0 -1
  67. package/lib/commonjs/useBackButton.js +0 -11
  68. package/lib/commonjs/useBackButton.js.map +0 -1
  69. package/lib/commonjs/useBackButton.native.js +0 -27
  70. package/lib/commonjs/useBackButton.native.js.map +0 -1
  71. package/lib/commonjs/useDocumentTitle.js +0 -32
  72. package/lib/commonjs/useDocumentTitle.js.map +0 -1
  73. package/lib/commonjs/useDocumentTitle.native.js +0 -10
  74. package/lib/commonjs/useDocumentTitle.native.js.map +0 -1
  75. package/lib/commonjs/useLinkBuilder.js +0 -91
  76. package/lib/commonjs/useLinkBuilder.js.map +0 -1
  77. package/lib/commonjs/useLinkProps.js +0 -99
  78. package/lib/commonjs/useLinkProps.js.map +0 -1
  79. package/lib/commonjs/useLinkTo.js +0 -31
  80. package/lib/commonjs/useLinkTo.js.map +0 -1
  81. package/lib/commonjs/useLinking.js +0 -329
  82. package/lib/commonjs/useLinking.js.map +0 -1
  83. package/lib/commonjs/useLinking.native.js +0 -158
  84. package/lib/commonjs/useLinking.native.js.map +0 -1
  85. package/lib/commonjs/useLocale.js +0 -23
  86. package/lib/commonjs/useLocale.js.map +0 -1
  87. package/lib/commonjs/useRoutePath.js +0 -35
  88. package/lib/commonjs/useRoutePath.js.map +0 -1
  89. package/lib/commonjs/useScrollToTop.js +0 -97
  90. package/lib/commonjs/useScrollToTop.js.map +0 -1
  91. package/lib/commonjs/useThenable.js +0 -42
  92. package/lib/commonjs/useThenable.js.map +0 -1
  93. package/lib/typescript/commonjs/package.json +0 -1
  94. package/lib/typescript/commonjs/src/Link.d.ts.map +0 -1
  95. package/lib/typescript/commonjs/src/LinkingContext.d.ts.map +0 -1
  96. package/lib/typescript/commonjs/src/LocaleDirContext.d.ts.map +0 -1
  97. package/lib/typescript/commonjs/src/NavigationContainer.d.ts.map +0 -1
  98. package/lib/typescript/commonjs/src/ServerContainer.d.ts.map +0 -1
  99. package/lib/typescript/commonjs/src/ServerContext.d.ts.map +0 -1
  100. package/lib/typescript/commonjs/src/UnhandledLinkingContext.d.ts.map +0 -1
  101. package/lib/typescript/commonjs/src/__stubs__/createStackNavigator.d.ts.map +0 -1
  102. package/lib/typescript/commonjs/src/__stubs__/window.d.ts.map +0 -1
  103. package/lib/typescript/commonjs/src/createMemoryHistory.d.ts.map +0 -1
  104. package/lib/typescript/commonjs/src/createStaticNavigation.d.ts.map +0 -1
  105. package/lib/typescript/commonjs/src/extractPathFromURL.d.ts.map +0 -1
  106. package/lib/typescript/commonjs/src/index.d.ts.map +0 -1
  107. package/lib/typescript/commonjs/src/theming/DarkTheme.d.ts.map +0 -1
  108. package/lib/typescript/commonjs/src/theming/DefaultTheme.d.ts.map +0 -1
  109. package/lib/typescript/commonjs/src/theming/fonts.d.ts.map +0 -1
  110. package/lib/typescript/commonjs/src/types.d.ts.map +0 -1
  111. package/lib/typescript/commonjs/src/useBackButton.d.ts.map +0 -1
  112. package/lib/typescript/commonjs/src/useBackButton.native.d.ts.map +0 -1
  113. package/lib/typescript/commonjs/src/useDocumentTitle.d.ts.map +0 -1
  114. package/lib/typescript/commonjs/src/useDocumentTitle.native.d.ts.map +0 -1
  115. package/lib/typescript/commonjs/src/useLinkBuilder.d.ts.map +0 -1
  116. package/lib/typescript/commonjs/src/useLinkProps.d.ts.map +0 -1
  117. package/lib/typescript/commonjs/src/useLinkTo.d.ts.map +0 -1
  118. package/lib/typescript/commonjs/src/useLinking.d.ts.map +0 -1
  119. package/lib/typescript/commonjs/src/useLinking.native.d.ts.map +0 -1
  120. package/lib/typescript/commonjs/src/useLocale.d.ts.map +0 -1
  121. package/lib/typescript/commonjs/src/useRoutePath.d.ts.map +0 -1
  122. package/lib/typescript/commonjs/src/useScrollToTop.d.ts.map +0 -1
  123. package/lib/typescript/commonjs/src/useThenable.d.ts.map +0 -1
  124. package/lib/typescript/module/src/Link.d.ts +0 -22
  125. package/lib/typescript/module/src/Link.d.ts.map +0 -1
  126. package/lib/typescript/module/src/LinkingContext.d.ts +0 -7
  127. package/lib/typescript/module/src/LinkingContext.d.ts.map +0 -1
  128. package/lib/typescript/module/src/LocaleDirContext.d.ts +0 -4
  129. package/lib/typescript/module/src/LocaleDirContext.d.ts.map +0 -1
  130. package/lib/typescript/module/src/NavigationContainer.d.ts +0 -19
  131. package/lib/typescript/module/src/NavigationContainer.d.ts.map +0 -1
  132. package/lib/typescript/module/src/ServerContainer.d.ts +0 -14
  133. package/lib/typescript/module/src/ServerContainer.d.ts.map +0 -1
  134. package/lib/typescript/module/src/ServerContext.d.ts +0 -9
  135. package/lib/typescript/module/src/ServerContext.d.ts.map +0 -1
  136. package/lib/typescript/module/src/UnhandledLinkingContext.d.ts +0 -6
  137. package/lib/typescript/module/src/UnhandledLinkingContext.d.ts.map +0 -1
  138. package/lib/typescript/module/src/__stubs__/createStackNavigator.d.ts +0 -13
  139. package/lib/typescript/module/src/__stubs__/createStackNavigator.d.ts.map +0 -1
  140. package/lib/typescript/module/src/__stubs__/window.d.ts +0 -18
  141. package/lib/typescript/module/src/__stubs__/window.d.ts.map +0 -1
  142. package/lib/typescript/module/src/createMemoryHistory.d.ts +0 -25
  143. package/lib/typescript/module/src/createMemoryHistory.d.ts.map +0 -1
  144. package/lib/typescript/module/src/createStaticNavigation.d.ts +0 -34
  145. package/lib/typescript/module/src/createStaticNavigation.d.ts.map +0 -1
  146. package/lib/typescript/module/src/extractPathFromURL.d.ts +0 -2
  147. package/lib/typescript/module/src/extractPathFromURL.d.ts.map +0 -1
  148. package/lib/typescript/module/src/index.d.ts +0 -17
  149. package/lib/typescript/module/src/index.d.ts.map +0 -1
  150. package/lib/typescript/module/src/theming/DarkTheme.d.ts +0 -3
  151. package/lib/typescript/module/src/theming/DarkTheme.d.ts.map +0 -1
  152. package/lib/typescript/module/src/theming/DefaultTheme.d.ts +0 -3
  153. package/lib/typescript/module/src/theming/DefaultTheme.d.ts.map +0 -1
  154. package/lib/typescript/module/src/theming/fonts.d.ts +0 -53
  155. package/lib/typescript/module/src/theming/fonts.d.ts.map +0 -1
  156. package/lib/typescript/module/src/types.d.ts +0 -159
  157. package/lib/typescript/module/src/types.d.ts.map +0 -1
  158. package/lib/typescript/module/src/useBackButton.d.ts +0 -3
  159. package/lib/typescript/module/src/useBackButton.d.ts.map +0 -1
  160. package/lib/typescript/module/src/useBackButton.native.d.ts +0 -4
  161. package/lib/typescript/module/src/useBackButton.native.d.ts.map +0 -1
  162. package/lib/typescript/module/src/useDocumentTitle.d.ts +0 -8
  163. package/lib/typescript/module/src/useDocumentTitle.d.ts.map +0 -1
  164. package/lib/typescript/module/src/useDocumentTitle.native.d.ts +0 -2
  165. package/lib/typescript/module/src/useDocumentTitle.native.d.ts.map +0 -1
  166. package/lib/typescript/module/src/useLinkBuilder.d.ts +0 -26
  167. package/lib/typescript/module/src/useLinkBuilder.d.ts.map +0 -1
  168. package/lib/typescript/module/src/useLinkProps.d.ts +0 -32
  169. package/lib/typescript/module/src/useLinkProps.d.ts.map +0 -1
  170. package/lib/typescript/module/src/useLinkTo.d.ts +0 -7
  171. package/lib/typescript/module/src/useLinkTo.d.ts.map +0 -1
  172. package/lib/typescript/module/src/useLinking.d.ts +0 -14
  173. package/lib/typescript/module/src/useLinking.d.ts.map +0 -1
  174. package/lib/typescript/module/src/useLinking.native.d.ts +0 -33
  175. package/lib/typescript/module/src/useLinking.native.d.ts.map +0 -1
  176. package/lib/typescript/module/src/useLocale.d.ts +0 -7
  177. package/lib/typescript/module/src/useLocale.d.ts.map +0 -1
  178. package/lib/typescript/module/src/useRoutePath.d.ts +0 -7
  179. package/lib/typescript/module/src/useRoutePath.d.ts.map +0 -1
  180. package/lib/typescript/module/src/useScrollToTop.d.ts +0 -27
  181. package/lib/typescript/module/src/useScrollToTop.d.ts.map +0 -1
  182. package/lib/typescript/module/src/useThenable.d.ts +0 -2
  183. package/lib/typescript/module/src/useThenable.d.ts.map +0 -1
  184. /package/lib/typescript/{module/package.json → package.json} +0 -0
  185. /package/lib/typescript/{commonjs/src → src}/Link.d.ts +0 -0
  186. /package/lib/typescript/{commonjs/src → src}/LinkingContext.d.ts +0 -0
  187. /package/lib/typescript/{commonjs/src → src}/LocaleDirContext.d.ts +0 -0
  188. /package/lib/typescript/{commonjs/src → src}/NavigationContainer.d.ts +0 -0
  189. /package/lib/typescript/{commonjs/src → src}/ServerContainer.d.ts +0 -0
  190. /package/lib/typescript/{commonjs/src → src}/ServerContext.d.ts +0 -0
  191. /package/lib/typescript/{commonjs/src → src}/UnhandledLinkingContext.d.ts +0 -0
  192. /package/lib/typescript/{commonjs/src → src}/__stubs__/createStackNavigator.d.ts +0 -0
  193. /package/lib/typescript/{commonjs/src → src}/__stubs__/window.d.ts +0 -0
  194. /package/lib/typescript/{commonjs/src → src}/createMemoryHistory.d.ts +0 -0
  195. /package/lib/typescript/{commonjs/src → src}/createStaticNavigation.d.ts +0 -0
  196. /package/lib/typescript/{commonjs/src → src}/extractPathFromURL.d.ts +0 -0
  197. /package/lib/typescript/{commonjs/src → src}/index.d.ts +0 -0
  198. /package/lib/typescript/{commonjs/src → src}/theming/DarkTheme.d.ts +0 -0
  199. /package/lib/typescript/{commonjs/src → src}/theming/DefaultTheme.d.ts +0 -0
  200. /package/lib/typescript/{commonjs/src → src}/theming/fonts.d.ts +0 -0
  201. /package/lib/typescript/{commonjs/src → src}/types.d.ts +0 -0
  202. /package/lib/typescript/{commonjs/src → src}/useBackButton.d.ts +0 -0
  203. /package/lib/typescript/{commonjs/src → src}/useBackButton.native.d.ts +0 -0
  204. /package/lib/typescript/{commonjs/src → src}/useDocumentTitle.d.ts +0 -0
  205. /package/lib/typescript/{commonjs/src → src}/useDocumentTitle.native.d.ts +0 -0
  206. /package/lib/typescript/{commonjs/src → src}/useLinkBuilder.d.ts +0 -0
  207. /package/lib/typescript/{commonjs/src → src}/useLinkProps.d.ts +0 -0
  208. /package/lib/typescript/{commonjs/src → src}/useLinkTo.d.ts +0 -0
  209. /package/lib/typescript/{commonjs/src → src}/useLinking.d.ts +0 -0
  210. /package/lib/typescript/{commonjs/src → src}/useLinking.native.d.ts +0 -0
  211. /package/lib/typescript/{commonjs/src → src}/useLocale.d.ts +0 -0
  212. /package/lib/typescript/{commonjs/src → src}/useRoutePath.d.ts +0 -0
  213. /package/lib/typescript/{commonjs/src → src}/useScrollToTop.d.ts +0 -0
  214. /package/lib/typescript/{commonjs/src → src}/useThenable.d.ts +0 -0
@@ -1,329 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.series = void 0;
7
- exports.useLinking = useLinking;
8
- var _core = require("@react-navigation/core");
9
- var _fastDeepEqual = _interopRequireDefault(require("fast-deep-equal"));
10
- var React = _interopRequireWildcard(require("react"));
11
- var _createMemoryHistory = require("./createMemoryHistory.js");
12
- var _ServerContext = require("./ServerContext.js");
13
- 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); }
14
- 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; }
15
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
- /**
17
- * Find the matching navigation state that changed between 2 navigation states
18
- * e.g.: a -> b -> c -> d and a -> b -> c -> e -> f, if history in b changed, b is the matching state
19
- */
20
- const findMatchingState = (a, b) => {
21
- if (a === undefined || b === undefined || a.key !== b.key) {
22
- return [undefined, undefined];
23
- }
24
-
25
- // Tab and drawer will have `history` property, but stack will have history in `routes`
26
- const aHistoryLength = a.history ? a.history.length : a.routes.length;
27
- const bHistoryLength = b.history ? b.history.length : b.routes.length;
28
- const aRoute = a.routes[a.index];
29
- const bRoute = b.routes[b.index];
30
- const aChildState = aRoute.state;
31
- const bChildState = bRoute.state;
32
-
33
- // Stop here if this is the state object that changed:
34
- // - history length is different
35
- // - focused routes are different
36
- // - one of them doesn't have child state
37
- // - child state keys are different
38
- if (aHistoryLength !== bHistoryLength || aRoute.key !== bRoute.key || aChildState === undefined || bChildState === undefined || aChildState.key !== bChildState.key) {
39
- return [a, b];
40
- }
41
- return findMatchingState(aChildState, bChildState);
42
- };
43
-
44
- /**
45
- * Run async function in series as it's called.
46
- */
47
- const series = cb => {
48
- let queue = Promise.resolve();
49
- const callback = () => {
50
- // eslint-disable-next-line promise/no-callback-in-promise
51
- queue = queue.then(cb);
52
- };
53
- return callback;
54
- };
55
- exports.series = series;
56
- const linkingHandlers = [];
57
- function useLinking(ref, {
58
- enabled = true,
59
- config,
60
- getStateFromPath = _core.getStateFromPath,
61
- getPathFromState = _core.getPathFromState,
62
- getActionFromState = _core.getActionFromState
63
- }, onUnhandledLinking) {
64
- const independent = (0, _core.useNavigationIndependentTree)();
65
- React.useEffect(() => {
66
- if (process.env.NODE_ENV === 'production') {
67
- return undefined;
68
- }
69
- if (independent) {
70
- return undefined;
71
- }
72
- if (enabled !== false && linkingHandlers.length) {
73
- console.error(['Looks like you have configured linking in multiple places. This is likely an error since deep links should only be handled in one place to avoid conflicts. Make sure that:', "- You don't have multiple NavigationContainers in the app each with 'linking' enabled", '- Only a single instance of the root component is rendered'].join('\n').trim());
74
- }
75
- const handler = Symbol();
76
- if (enabled !== false) {
77
- linkingHandlers.push(handler);
78
- }
79
- return () => {
80
- const index = linkingHandlers.indexOf(handler);
81
- if (index > -1) {
82
- linkingHandlers.splice(index, 1);
83
- }
84
- };
85
- }, [enabled, independent]);
86
- const [history] = React.useState(_createMemoryHistory.createMemoryHistory);
87
-
88
- // We store these options in ref to avoid re-creating getInitialState and re-subscribing listeners
89
- // This lets user avoid wrapping the items in `React.useCallback` or `React.useMemo`
90
- // Not re-creating `getInitialState` is important coz it makes it easier for the user to use in an effect
91
- const enabledRef = React.useRef(enabled);
92
- const configRef = React.useRef(config);
93
- const getStateFromPathRef = React.useRef(getStateFromPath);
94
- const getPathFromStateRef = React.useRef(getPathFromState);
95
- const getActionFromStateRef = React.useRef(getActionFromState);
96
- React.useEffect(() => {
97
- enabledRef.current = enabled;
98
- configRef.current = config;
99
- getStateFromPathRef.current = getStateFromPath;
100
- getPathFromStateRef.current = getPathFromState;
101
- getActionFromStateRef.current = getActionFromState;
102
- });
103
- const validateRoutesNotExistInRootState = React.useCallback(state => {
104
- const navigation = ref.current;
105
- const rootState = navigation?.getRootState();
106
- // Make sure that the routes in the state exist in the root navigator
107
- // Otherwise there's an error in the linking configuration
108
- return state?.routes.some(r => !rootState?.routeNames.includes(r.name));
109
- }, [ref]);
110
- const server = React.useContext(_ServerContext.ServerContext);
111
- const getInitialState = React.useCallback(() => {
112
- let value;
113
- if (enabledRef.current) {
114
- const location = server?.location ?? (typeof window !== 'undefined' ? window.location : undefined);
115
- const path = location ? location.pathname + location.search : undefined;
116
- if (path) {
117
- value = getStateFromPathRef.current(path, configRef.current);
118
- }
119
-
120
- // If the link were handled, it gets cleared in NavigationContainer
121
- onUnhandledLinking(path);
122
- }
123
- const thenable = {
124
- then(onfulfilled) {
125
- return Promise.resolve(onfulfilled ? onfulfilled(value) : value);
126
- },
127
- catch() {
128
- return thenable;
129
- }
130
- };
131
- return thenable;
132
- // eslint-disable-next-line react-hooks/exhaustive-deps
133
- }, []);
134
- const previousIndexRef = React.useRef(undefined);
135
- const previousStateRef = React.useRef(undefined);
136
- const pendingPopStatePathRef = React.useRef(undefined);
137
- React.useEffect(() => {
138
- previousIndexRef.current = history.index;
139
- return history.listen(() => {
140
- const navigation = ref.current;
141
- if (!navigation || !enabled) {
142
- return;
143
- }
144
- const {
145
- location
146
- } = window;
147
- const path = location.pathname + location.search;
148
- const index = history.index;
149
- const previousIndex = previousIndexRef.current ?? 0;
150
- previousIndexRef.current = index;
151
- pendingPopStatePathRef.current = path;
152
-
153
- // When browser back/forward is clicked, we first need to check if state object for this index exists
154
- // If it does we'll reset to that state object
155
- // Otherwise, we'll handle it like a regular deep link
156
- const record = history.get(index);
157
- if (record?.path === path && record?.state) {
158
- navigation.resetRoot(record.state);
159
- return;
160
- }
161
- const state = getStateFromPathRef.current(path, configRef.current);
162
-
163
- // We should only dispatch an action when going forward
164
- // Otherwise the action will likely add items to history, which would mess things up
165
- if (state) {
166
- // If the link were handled, it gets cleared in NavigationContainer
167
- onUnhandledLinking(path);
168
- // Make sure that the routes in the state exist in the root navigator
169
- // Otherwise there's an error in the linking configuration
170
- if (validateRoutesNotExistInRootState(state)) {
171
- return;
172
- }
173
- if (index > previousIndex) {
174
- const action = getActionFromStateRef.current(state, configRef.current);
175
- if (action !== undefined) {
176
- try {
177
- navigation.dispatch(action);
178
- } catch (e) {
179
- // Ignore any errors from deep linking.
180
- // This could happen in case of malformed links, navigation object not being initialized etc.
181
- console.warn(`An error occurred when trying to handle the link '${path}': ${typeof e === 'object' && e != null && 'message' in e ? e.message : e}`);
182
- }
183
- } else {
184
- navigation.resetRoot(state);
185
- }
186
- } else {
187
- navigation.resetRoot(state);
188
- }
189
- } else {
190
- // if current path didn't return any state, we should revert to initial state
191
- navigation.resetRoot(state);
192
- }
193
- });
194
- }, [enabled, history, onUnhandledLinking, ref, validateRoutesNotExistInRootState]);
195
- React.useEffect(() => {
196
- if (!enabled) {
197
- return;
198
- }
199
- const getPathForRoute = (route, state) => {
200
- let path;
201
-
202
- // If the `route` object contains a `path`, use that path as long as `route.name` and `params` still match
203
- // This makes sure that we preserve the original URL for wildcard routes
204
- if (route?.path) {
205
- const stateForPath = getStateFromPathRef.current(route.path, configRef.current);
206
- if (stateForPath) {
207
- const focusedRoute = (0, _core.findFocusedRoute)(stateForPath);
208
- if (focusedRoute && focusedRoute.name === route.name && (0, _fastDeepEqual.default)(focusedRoute.params, route.params)) {
209
- path = route.path;
210
- }
211
- }
212
- }
213
- if (path == null) {
214
- path = getPathFromStateRef.current(state, configRef.current);
215
- }
216
- const previousRoute = previousStateRef.current ? (0, _core.findFocusedRoute)(previousStateRef.current) : undefined;
217
-
218
- // Preserve the hash if the route didn't change
219
- if (previousRoute && route && 'key' in previousRoute && 'key' in route && previousRoute.key === route.key) {
220
- path = path + location.hash;
221
- }
222
- return path;
223
- };
224
- if (ref.current) {
225
- // We need to record the current metadata on the first render if they aren't set
226
- // This will allow the initial state to be in the history entry
227
- const state = ref.current.getRootState();
228
- if (state) {
229
- const route = (0, _core.findFocusedRoute)(state);
230
- const path = getPathForRoute(route, state);
231
- if (previousStateRef.current === undefined) {
232
- previousStateRef.current = state;
233
- }
234
- history.replace({
235
- path,
236
- state
237
- });
238
- }
239
- }
240
- const onStateChange = async () => {
241
- const navigation = ref.current;
242
- if (!navigation || !enabled) {
243
- return;
244
- }
245
- const previousState = previousStateRef.current;
246
- const state = navigation.getRootState();
247
-
248
- // root state may not available, for example when root navigators switch inside the container
249
- if (!state) {
250
- return;
251
- }
252
- const pendingPath = pendingPopStatePathRef.current;
253
- const route = (0, _core.findFocusedRoute)(state);
254
- const path = getPathForRoute(route, state);
255
- previousStateRef.current = state;
256
- pendingPopStatePathRef.current = undefined;
257
-
258
- // To detect the kind of state change, we need to:
259
- // - Find the common focused navigation state in previous and current state
260
- // - If only the route keys changed, compare history/routes.length to check if we go back/forward/replace
261
- // - If no common focused navigation state found, it's a replace
262
- const [previousFocusedState, focusedState] = findMatchingState(previousState, state);
263
- if (previousFocusedState && focusedState &&
264
- // We should only handle push/pop if path changed from what was in last `popstate`
265
- // Otherwise it's likely a change triggered by `popstate`
266
- path !== pendingPath) {
267
- const historyDelta = (focusedState.history ? focusedState.history.length : focusedState.routes.length) - (previousFocusedState.history ? previousFocusedState.history.length : previousFocusedState.routes.length);
268
- if (historyDelta > 0) {
269
- // If history length is increased, we should pushState
270
- // Note that path might not actually change here, for example, drawer open should pushState
271
- history.push({
272
- path,
273
- state
274
- });
275
- } else if (historyDelta < 0) {
276
- // If history length is decreased, i.e. entries were removed, we want to go back
277
-
278
- const nextIndex = history.backIndex({
279
- path
280
- });
281
- const currentIndex = history.index;
282
- try {
283
- if (nextIndex !== -1 && nextIndex < currentIndex &&
284
- // We should only go back if the entry exists and it's less than current index
285
- history.get(nextIndex - currentIndex)) {
286
- // An existing entry for this path exists and it's less than current index, go back to that
287
- await history.go(nextIndex - currentIndex);
288
- } else {
289
- // We couldn't find an existing entry to go back to, so we'll go back by the delta
290
- // This won't be correct if multiple routes were pushed in one go before
291
- // Usually this shouldn't happen and this is a fallback for that
292
- await history.go(historyDelta);
293
- }
294
-
295
- // Store the updated state as well as fix the path if incorrect
296
- history.replace({
297
- path,
298
- state
299
- });
300
- } catch (e) {
301
- // The navigation was interrupted
302
- }
303
- } else {
304
- // If history length is unchanged, we want to replaceState
305
- history.replace({
306
- path,
307
- state
308
- });
309
- }
310
- } else {
311
- // If no common navigation state was found, assume it's a replace
312
- // This would happen if the user did a reset/conditionally changed navigators
313
- history.replace({
314
- path,
315
- state
316
- });
317
- }
318
- };
319
-
320
- // We debounce onStateChange coz we don't want multiple state changes to be handled at one time
321
- // This could happen since `history.go(n)` is asynchronous
322
- // If `pushState` or `replaceState` were called before `history.go(n)` completes, it'll mess stuff up
323
- return ref.current?.addListener('state', series(onStateChange));
324
- }, [enabled, history, ref]);
325
- return {
326
- getInitialState
327
- };
328
- }
329
- //# sourceMappingURL=useLinking.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_core","require","_fastDeepEqual","_interopRequireDefault","React","_interopRequireWildcard","_createMemoryHistory","_ServerContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","findMatchingState","b","undefined","key","aHistoryLength","history","length","routes","bHistoryLength","aRoute","index","bRoute","aChildState","state","bChildState","series","cb","queue","Promise","resolve","callback","then","exports","linkingHandlers","useLinking","ref","enabled","config","getStateFromPath","getStateFromPathDefault","getPathFromState","getPathFromStateDefault","getActionFromState","getActionFromStateDefault","onUnhandledLinking","independent","useNavigationIndependentTree","useEffect","process","env","NODE_ENV","console","error","join","trim","handler","Symbol","push","indexOf","splice","useState","createMemoryHistory","enabledRef","useRef","configRef","getStateFromPathRef","getPathFromStateRef","getActionFromStateRef","current","validateRoutesNotExistInRootState","useCallback","navigation","rootState","getRootState","some","routeNames","includes","name","server","useContext","ServerContext","getInitialState","value","location","window","path","pathname","search","thenable","onfulfilled","catch","previousIndexRef","previousStateRef","pendingPopStatePathRef","listen","previousIndex","record","resetRoot","action","dispatch","warn","message","getPathForRoute","route","stateForPath","focusedRoute","findFocusedRoute","isEqual","params","previousRoute","hash","replace","onStateChange","previousState","pendingPath","previousFocusedState","focusedState","historyDelta","nextIndex","backIndex","currentIndex","go","addListener"],"sourceRoot":"../../src","sources":["useLinking.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,158 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useLinking = useLinking;
7
- var _core = require("@react-navigation/core");
8
- var React = _interopRequireWildcard(require("react"));
9
- var _reactNative = require("react-native");
10
- var _extractPathFromURL = require("./extractPathFromURL.js");
11
- 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); }
12
- 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; }
13
- const linkingHandlers = [];
14
- function useLinking(ref, {
15
- enabled = true,
16
- prefixes,
17
- filter,
18
- config,
19
- getInitialURL = () => Promise.race([_reactNative.Linking.getInitialURL(), new Promise(resolve => {
20
- // Timeout in 150ms if `getInitialState` doesn't resolve
21
- // Workaround for https://github.com/facebook/react-native/issues/25675
22
- setTimeout(resolve, 150);
23
- })]),
24
- subscribe = listener => {
25
- const callback = ({
26
- url
27
- }) => listener(url);
28
- const subscription = _reactNative.Linking.addEventListener('url', callback);
29
-
30
- // Storing this in a local variable stops Jest from complaining about import after teardown
31
- // @ts-expect-error: removeEventListener is not present in newer RN versions
32
- const removeEventListener = _reactNative.Linking.removeEventListener?.bind(_reactNative.Linking);
33
- return () => {
34
- // https://github.com/facebook/react-native/commit/6d1aca806cee86ad76de771ed3a1cc62982ebcd7
35
- if (subscription?.remove) {
36
- subscription.remove();
37
- } else {
38
- removeEventListener?.('url', callback);
39
- }
40
- };
41
- },
42
- getStateFromPath = _core.getStateFromPath,
43
- getActionFromState = _core.getActionFromState
44
- }, onUnhandledLinking) {
45
- const independent = (0, _core.useNavigationIndependentTree)();
46
- React.useEffect(() => {
47
- if (process.env.NODE_ENV === 'production') {
48
- return undefined;
49
- }
50
- if (independent) {
51
- return undefined;
52
- }
53
- if (enabled !== false && linkingHandlers.length) {
54
- console.error(['Looks like you have configured linking in multiple places. This is likely an error since deep links should only be handled in one place to avoid conflicts. Make sure that:', "- You don't have multiple NavigationContainers in the app each with 'linking' enabled", '- Only a single instance of the root component is rendered', _reactNative.Platform.OS === 'android' ? "- You have set 'android:launchMode=singleTask' in the '<activity />' section of the 'AndroidManifest.xml' file to avoid launching multiple instances" : ''].join('\n').trim());
55
- }
56
- const handler = Symbol();
57
- if (enabled !== false) {
58
- linkingHandlers.push(handler);
59
- }
60
- return () => {
61
- const index = linkingHandlers.indexOf(handler);
62
- if (index > -1) {
63
- linkingHandlers.splice(index, 1);
64
- }
65
- };
66
- }, [enabled, independent]);
67
-
68
- // We store these options in ref to avoid re-creating getInitialState and re-subscribing listeners
69
- // This lets user avoid wrapping the items in `React.useCallback` or `React.useMemo`
70
- // Not re-creating `getInitialState` is important coz it makes it easier for the user to use in an effect
71
- const enabledRef = React.useRef(enabled);
72
- const prefixesRef = React.useRef(prefixes);
73
- const filterRef = React.useRef(filter);
74
- const configRef = React.useRef(config);
75
- const getInitialURLRef = React.useRef(getInitialURL);
76
- const getStateFromPathRef = React.useRef(getStateFromPath);
77
- const getActionFromStateRef = React.useRef(getActionFromState);
78
- React.useEffect(() => {
79
- enabledRef.current = enabled;
80
- prefixesRef.current = prefixes;
81
- filterRef.current = filter;
82
- configRef.current = config;
83
- getInitialURLRef.current = getInitialURL;
84
- getStateFromPathRef.current = getStateFromPath;
85
- getActionFromStateRef.current = getActionFromState;
86
- });
87
- const getStateFromURL = React.useCallback(url => {
88
- if (!url || filterRef.current && !filterRef.current(url)) {
89
- return undefined;
90
- }
91
- const path = (0, _extractPathFromURL.extractPathFromURL)(prefixesRef.current, url);
92
- return path !== undefined ? getStateFromPathRef.current(path, configRef.current) : undefined;
93
- }, []);
94
- const getInitialState = React.useCallback(() => {
95
- let state;
96
- if (enabledRef.current) {
97
- const url = getInitialURLRef.current();
98
- if (url != null) {
99
- if (typeof url !== 'string') {
100
- return url.then(url => {
101
- const state = getStateFromURL(url);
102
- if (typeof url === 'string') {
103
- // If the link were handled, it gets cleared in NavigationContainer
104
- onUnhandledLinking((0, _extractPathFromURL.extractPathFromURL)(prefixes, url));
105
- }
106
- return state;
107
- });
108
- } else {
109
- onUnhandledLinking((0, _extractPathFromURL.extractPathFromURL)(prefixes, url));
110
- }
111
- }
112
- state = getStateFromURL(url);
113
- }
114
- const thenable = {
115
- then(onfulfilled) {
116
- return Promise.resolve(onfulfilled ? onfulfilled(state) : state);
117
- },
118
- catch() {
119
- return thenable;
120
- }
121
- };
122
- return thenable;
123
- }, [getStateFromURL, onUnhandledLinking, prefixes]);
124
- React.useEffect(() => {
125
- const listener = url => {
126
- if (!enabled) {
127
- return;
128
- }
129
- const navigation = ref.current;
130
- const state = navigation ? getStateFromURL(url) : undefined;
131
- if (navigation && state) {
132
- // If the link were handled, it gets cleared in NavigationContainer
133
- onUnhandledLinking((0, _extractPathFromURL.extractPathFromURL)(prefixes, url));
134
- const rootState = navigation.getRootState();
135
- if (state.routes.some(r => !rootState?.routeNames.includes(r.name))) {
136
- return;
137
- }
138
- const action = getActionFromStateRef.current(state, configRef.current);
139
- if (action !== undefined) {
140
- try {
141
- navigation.dispatch(action);
142
- } catch (e) {
143
- // Ignore any errors from deep linking.
144
- // This could happen in case of malformed links, navigation object not being initialized etc.
145
- console.warn(`An error occurred when trying to handle the link '${url}': ${typeof e === 'object' && e != null && 'message' in e ? e.message : e}`);
146
- }
147
- } else {
148
- navigation.resetRoot(state);
149
- }
150
- }
151
- };
152
- return subscribe(listener);
153
- }, [enabled, getStateFromURL, onUnhandledLinking, prefixes, ref, subscribe]);
154
- return {
155
- getInitialState
156
- };
157
- }
158
- //# sourceMappingURL=useLinking.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_core","require","React","_interopRequireWildcard","_reactNative","_extractPathFromURL","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","linkingHandlers","useLinking","ref","enabled","prefixes","filter","config","getInitialURL","Promise","race","Linking","resolve","setTimeout","subscribe","listener","callback","url","subscription","addEventListener","removeEventListener","bind","remove","getStateFromPath","getStateFromPathDefault","getActionFromState","getActionFromStateDefault","onUnhandledLinking","independent","useNavigationIndependentTree","useEffect","process","env","NODE_ENV","undefined","length","console","error","Platform","OS","join","trim","handler","Symbol","push","index","indexOf","splice","enabledRef","useRef","prefixesRef","filterRef","configRef","getInitialURLRef","getStateFromPathRef","getActionFromStateRef","current","getStateFromURL","useCallback","path","extractPathFromURL","getInitialState","state","then","thenable","onfulfilled","catch","navigation","rootState","getRootState","routes","some","routeNames","includes","name","action","dispatch","warn","message","resetRoot"],"sourceRoot":"../../src","sources":["useLinking.native.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useLocale = useLocale;
7
- var React = _interopRequireWildcard(require("react"));
8
- var _LocaleDirContext = require("./LocaleDirContext.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 access the text direction specified in the `NavigationContainer`.
13
- */
14
- function useLocale() {
15
- const direction = React.useContext(_LocaleDirContext.LocaleDirContext);
16
- if (direction === undefined) {
17
- throw new Error("Couldn't determine the text direction. Is your component inside NavigationContainer?");
18
- }
19
- return {
20
- direction
21
- };
22
- }
23
- //# sourceMappingURL=useLocale.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_LocaleDirContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useLocale","direction","useContext","LocaleDirContext","undefined","Error"],"sourceRoot":"../../src","sources":["useLocale.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,iBAAA,GAAAD,OAAA;AAAsD,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;AAEtD;AACA;AACA;AACO,SAASW,SAASA,CAAA,EAAG;EAC1B,MAAMC,SAAS,GAAGzB,KAAK,CAAC0B,UAAU,CAACC,kCAAgB,CAAC;EAEpD,IAAIF,SAAS,KAAKG,SAAS,EAAE;IAC3B,MAAM,IAAIC,KAAK,CACb,sFACF,CAAC;EACH;EAEA,OAAO;IAAEJ;EAAU,CAAC;AACtB","ignoreList":[]}
@@ -1,35 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useRoutePath = useRoutePath;
7
- var _core = require("@react-navigation/core");
8
- var React = _interopRequireWildcard(require("react"));
9
- var _LinkingContext = require("./LinkingContext.js");
10
- 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); }
11
- 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; }
12
- /**
13
- * Hook to get the path for the current route based on linking options.
14
- *
15
- * @returns Path for the current route.
16
- */
17
- function useRoutePath() {
18
- const {
19
- options
20
- } = React.useContext(_LinkingContext.LinkingContext);
21
- const state = (0, _core.useStateForPath)();
22
- if (state === undefined) {
23
- throw new Error("Couldn't find a state for the route object. Is your component inside a screen in a navigator?");
24
- }
25
- const getPathFromStateHelper = options?.getPathFromState ?? _core.getPathFromState;
26
- const path = React.useMemo(() => {
27
- if (options?.enabled === false) {
28
- return undefined;
29
- }
30
- const path = getPathFromStateHelper(state, options?.config);
31
- return path;
32
- }, [options?.enabled, options?.config, state, getPathFromStateHelper]);
33
- return path;
34
- }
35
- //# sourceMappingURL=useRoutePath.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_core","require","React","_interopRequireWildcard","_LinkingContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useRoutePath","options","useContext","LinkingContext","state","useStateForPath","undefined","Error","getPathFromStateHelper","getPathFromState","path","useMemo","enabled","config"],"sourceRoot":"../../src","sources":["useRoutePath.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAC,uBAAA,CAAAF,OAAA;AAEA,IAAAG,eAAA,GAAAH,OAAA;AAAkD,SAAAI,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,SAAAH,wBAAAG,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;AAElD;AACA;AACA;AACA;AACA;AACO,SAASW,YAAYA,CAAA,EAAG;EAC7B,MAAM;IAAEC;EAAQ,CAAC,GAAGxB,KAAK,CAACyB,UAAU,CAACC,8BAAc,CAAC;EACpD,MAAMC,KAAK,GAAG,IAAAC,qBAAe,EAAC,CAAC;EAE/B,IAAID,KAAK,KAAKE,SAAS,EAAE;IACvB,MAAM,IAAIC,KAAK,CACb,+FACF,CAAC;EACH;EAEA,MAAMC,sBAAsB,GAAGP,OAAO,EAAEQ,gBAAgB,IAAIA,sBAAgB;EAE5E,MAAMC,IAAI,GAAGjC,KAAK,CAACkC,OAAO,CAAC,MAAM;IAC/B,IAAIV,OAAO,EAAEW,OAAO,KAAK,KAAK,EAAE;MAC9B,OAAON,SAAS;IAClB;IAEA,MAAMI,IAAI,GAAGF,sBAAsB,CAACJ,KAAK,EAAEH,OAAO,EAAEY,MAAM,CAAC;IAE3D,OAAOH,IAAI;EACb,CAAC,EAAE,CAACT,OAAO,EAAEW,OAAO,EAAEX,OAAO,EAAEY,MAAM,EAAET,KAAK,EAAEI,sBAAsB,CAAC,CAAC;EAEtE,OAAOE,IAAI;AACb","ignoreList":[]}