@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.
- package/package.json +4 -3
- package/lib/commonjs/BaseNavigationContainer.js +0 -368
- package/lib/commonjs/BaseNavigationContainer.js.map +0 -1
- package/lib/commonjs/CurrentRenderContext.js +0 -15
- package/lib/commonjs/CurrentRenderContext.js.map +0 -1
- package/lib/commonjs/DeprecatedNavigationInChildContext.js +0 -14
- package/lib/commonjs/DeprecatedNavigationInChildContext.js.map +0 -1
- package/lib/commonjs/EnsureSingleNavigator.js +0 -43
- package/lib/commonjs/EnsureSingleNavigator.js.map +0 -1
- package/lib/commonjs/Group.js +0 -14
- package/lib/commonjs/Group.js.map +0 -1
- package/lib/commonjs/NavigationBuilderContext.js +0 -23
- package/lib/commonjs/NavigationBuilderContext.js.map +0 -1
- package/lib/commonjs/NavigationContainerRefContext.js +0 -14
- package/lib/commonjs/NavigationContainerRefContext.js.map +0 -1
- package/lib/commonjs/NavigationContext.js +0 -14
- package/lib/commonjs/NavigationContext.js.map +0 -1
- package/lib/commonjs/NavigationFocusedRouteStateContext.js +0 -14
- package/lib/commonjs/NavigationFocusedRouteStateContext.js.map +0 -1
- package/lib/commonjs/NavigationHelpersContext.js +0 -15
- package/lib/commonjs/NavigationHelpersContext.js.map +0 -1
- package/lib/commonjs/NavigationIndependentTree.js +0 -35
- package/lib/commonjs/NavigationIndependentTree.js.map +0 -1
- package/lib/commonjs/NavigationIndependentTreeContext.js +0 -14
- package/lib/commonjs/NavigationIndependentTreeContext.js.map +0 -1
- package/lib/commonjs/NavigationRouteContext.js +0 -14
- package/lib/commonjs/NavigationRouteContext.js.map +0 -1
- package/lib/commonjs/NavigationStateContext.js +0 -29
- package/lib/commonjs/NavigationStateContext.js.map +0 -1
- package/lib/commonjs/PreventRemoveContext.js +0 -16
- package/lib/commonjs/PreventRemoveContext.js.map +0 -1
- package/lib/commonjs/PreventRemoveProvider.js +0 -91
- package/lib/commonjs/PreventRemoveProvider.js.map +0 -1
- package/lib/commonjs/SceneView.js +0 -151
- package/lib/commonjs/SceneView.js.map +0 -1
- package/lib/commonjs/Screen.js +0 -14
- package/lib/commonjs/Screen.js.map +0 -1
- package/lib/commonjs/StaticContainer.js +0 -31
- package/lib/commonjs/StaticContainer.js.map +0 -1
- package/lib/commonjs/StaticNavigation.js +0 -258
- package/lib/commonjs/StaticNavigation.js.map +0 -1
- package/lib/commonjs/UnhandledActionContext.js +0 -11
- package/lib/commonjs/UnhandledActionContext.js.map +0 -1
- package/lib/commonjs/arrayStartsWith.js +0 -16
- package/lib/commonjs/arrayStartsWith.js.map +0 -1
- package/lib/commonjs/checkDuplicateRouteNames.js +0 -25
- package/lib/commonjs/checkDuplicateRouteNames.js.map +0 -1
- package/lib/commonjs/checkSerializable.js +0 -50
- package/lib/commonjs/checkSerializable.js.map +0 -1
- package/lib/commonjs/createNavigationContainerRef.js +0 -69
- package/lib/commonjs/createNavigationContainerRef.js.map +0 -1
- package/lib/commonjs/createNavigatorFactory.js +0 -34
- package/lib/commonjs/createNavigatorFactory.js.map +0 -1
- package/lib/commonjs/deepFreeze.js +0 -40
- package/lib/commonjs/deepFreeze.js.map +0 -1
- package/lib/commonjs/findFocusedRoute.js +0 -15
- package/lib/commonjs/findFocusedRoute.js.map +0 -1
- package/lib/commonjs/getActionFromState.js +0 -111
- package/lib/commonjs/getActionFromState.js.map +0 -1
- package/lib/commonjs/getFocusedRouteNameFromRoute.js +0 -22
- package/lib/commonjs/getFocusedRouteNameFromRoute.js.map +0 -1
- package/lib/commonjs/getPathFromState.js +0 -241
- package/lib/commonjs/getPathFromState.js.map +0 -1
- package/lib/commonjs/getPatternParts.js +0 -105
- package/lib/commonjs/getPatternParts.js.map +0 -1
- package/lib/commonjs/getStateFromPath.js +0 -521
- package/lib/commonjs/getStateFromPath.js.map +0 -1
- package/lib/commonjs/index.js +0 -295
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/isArrayEqual.js +0 -20
- package/lib/commonjs/isArrayEqual.js.map +0 -1
- package/lib/commonjs/isRecordEqual.js +0 -21
- package/lib/commonjs/isRecordEqual.js.map +0 -1
- package/lib/commonjs/package.json +0 -1
- package/lib/commonjs/theming/ThemeContext.js +0 -12
- package/lib/commonjs/theming/ThemeContext.js.map +0 -1
- package/lib/commonjs/theming/ThemeProvider.js +0 -21
- package/lib/commonjs/theming/ThemeProvider.js.map +0 -1
- package/lib/commonjs/theming/useTheme.js +0 -18
- package/lib/commonjs/theming/useTheme.js.map +0 -1
- package/lib/commonjs/types.js +0 -9
- package/lib/commonjs/types.js.map +0 -1
- package/lib/commonjs/useChildListeners.js +0 -36
- package/lib/commonjs/useChildListeners.js.map +0 -1
- package/lib/commonjs/useComponent.js +0 -40
- package/lib/commonjs/useComponent.js.map +0 -1
- package/lib/commonjs/useCurrentRender.js +0 -25
- package/lib/commonjs/useCurrentRender.js.map +0 -1
- package/lib/commonjs/useDescriptors.js +0 -192
- package/lib/commonjs/useDescriptors.js.map +0 -1
- package/lib/commonjs/useEventEmitter.js +0 -105
- package/lib/commonjs/useEventEmitter.js.map +0 -1
- package/lib/commonjs/useFocusEffect.js +0 -80
- package/lib/commonjs/useFocusEffect.js.map +0 -1
- package/lib/commonjs/useFocusEvents.js +0 -70
- package/lib/commonjs/useFocusEvents.js.map +0 -1
- package/lib/commonjs/useFocusedListenersChildrenAdapter.js +0 -48
- package/lib/commonjs/useFocusedListenersChildrenAdapter.js.map +0 -1
- package/lib/commonjs/useIsFocused.js +0 -28
- package/lib/commonjs/useIsFocused.js.map +0 -1
- package/lib/commonjs/useIsomorphicLayoutEffect.js +0 -12
- package/lib/commonjs/useIsomorphicLayoutEffect.js.map +0 -1
- package/lib/commonjs/useIsomorphicLayoutEffect.native.js +0 -9
- package/lib/commonjs/useIsomorphicLayoutEffect.native.js.map +0 -1
- package/lib/commonjs/useKeyedChildListeners.js +0 -33
- package/lib/commonjs/useKeyedChildListeners.js.map +0 -1
- package/lib/commonjs/useLazyValue.js +0 -17
- package/lib/commonjs/useLazyValue.js.map +0 -1
- package/lib/commonjs/useNavigation.js +0 -27
- package/lib/commonjs/useNavigation.js.map +0 -1
- package/lib/commonjs/useNavigationBuilder.js +0 -495
- package/lib/commonjs/useNavigationBuilder.js.map +0 -1
- package/lib/commonjs/useNavigationCache.js +0 -162
- package/lib/commonjs/useNavigationCache.js.map +0 -1
- package/lib/commonjs/useNavigationContainerRef.js +0 -18
- package/lib/commonjs/useNavigationContainerRef.js.map +0 -1
- package/lib/commonjs/useNavigationHelpers.js +0 -88
- package/lib/commonjs/useNavigationHelpers.js.map +0 -1
- package/lib/commonjs/useNavigationIndependentTree.js +0 -14
- package/lib/commonjs/useNavigationIndependentTree.js.map +0 -1
- package/lib/commonjs/useNavigationState.js +0 -26
- package/lib/commonjs/useNavigationState.js.map +0 -1
- package/lib/commonjs/useOnAction.js +0 -106
- package/lib/commonjs/useOnAction.js.map +0 -1
- package/lib/commonjs/useOnGetState.js +0 -48
- package/lib/commonjs/useOnGetState.js.map +0 -1
- package/lib/commonjs/useOnPreventRemove.js +0 -72
- package/lib/commonjs/useOnPreventRemove.js.map +0 -1
- package/lib/commonjs/useOnRouteFocus.js +0 -36
- package/lib/commonjs/useOnRouteFocus.js.map +0 -1
- package/lib/commonjs/useOptionsGetters.js +0 -78
- package/lib/commonjs/useOptionsGetters.js.map +0 -1
- package/lib/commonjs/usePreventRemove.js +0 -48
- package/lib/commonjs/usePreventRemove.js.map +0 -1
- package/lib/commonjs/usePreventRemoveContext.js +0 -18
- package/lib/commonjs/usePreventRemoveContext.js.map +0 -1
- package/lib/commonjs/useRegisterNavigator.js +0 -32
- package/lib/commonjs/useRegisterNavigator.js.map +0 -1
- package/lib/commonjs/useRoute.js +0 -23
- package/lib/commonjs/useRoute.js.map +0 -1
- package/lib/commonjs/useRouteCache.js +0 -69
- package/lib/commonjs/useRouteCache.js.map +0 -1
- package/lib/commonjs/useScheduleUpdate.js +0 -30
- package/lib/commonjs/useScheduleUpdate.js.map +0 -1
- package/lib/commonjs/useStateForPath.js +0 -21
- package/lib/commonjs/useStateForPath.js.map +0 -1
- package/lib/commonjs/useSyncState.js +0 -87
- package/lib/commonjs/useSyncState.js.map +0 -1
- package/lib/commonjs/validatePathConfig.js +0 -56
- package/lib/commonjs/validatePathConfig.js.map +0 -1
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useOnRouteFocus = useOnRouteFocus;
|
|
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 to handle focus actions for a route.
|
|
13
|
-
* Focus action needs to be treated specially, coz when a nested route is focused,
|
|
14
|
-
* the parent navigators also needs to be focused.
|
|
15
|
-
*/
|
|
16
|
-
function useOnRouteFocus({
|
|
17
|
-
router,
|
|
18
|
-
getState,
|
|
19
|
-
key: sourceRouteKey,
|
|
20
|
-
setState
|
|
21
|
-
}) {
|
|
22
|
-
const {
|
|
23
|
-
onRouteFocus: onRouteFocusParent
|
|
24
|
-
} = React.useContext(_NavigationBuilderContext.NavigationBuilderContext);
|
|
25
|
-
return React.useCallback(key => {
|
|
26
|
-
const state = getState();
|
|
27
|
-
const result = router.getStateForRouteFocus(state, key);
|
|
28
|
-
if (result !== state) {
|
|
29
|
-
setState(result);
|
|
30
|
-
}
|
|
31
|
-
if (onRouteFocusParent !== undefined && sourceRouteKey !== undefined) {
|
|
32
|
-
onRouteFocusParent(sourceRouteKey);
|
|
33
|
-
}
|
|
34
|
-
}, [getState, onRouteFocusParent, router, setState, sourceRouteKey]);
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=useOnRouteFocus.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","useOnRouteFocus","router","getState","key","sourceRouteKey","setState","onRouteFocus","onRouteFocusParent","useContext","NavigationBuilderContext","useCallback","state","result","getStateForRouteFocus","undefined"],"sourceRoot":"../../src","sources":["useOnRouteFocus.tsx"],"mappings":";;;;;;AAKA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,yBAAA,GAAAD,OAAA;AAAsE,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;AAStE;AACA;AACA;AACA;AACA;AACO,SAASW,eAAeA,CAAkC;EAC/DC,MAAM;EACNC,QAAQ;EACRC,GAAG,EAAEC,cAAc;EACnBC;AACe,CAAC,EAAE;EAClB,MAAM;IAAEC,YAAY,EAAEC;EAAmB,CAAC,GAAG/B,KAAK,CAACgC,UAAU,CAC3DC,kDACF,CAAC;EAED,OAAOjC,KAAK,CAACkC,WAAW,CACrBP,GAAW,IAAK;IACf,MAAMQ,KAAK,GAAGT,QAAQ,CAAC,CAAC;IACxB,MAAMU,MAAM,GAAGX,MAAM,CAACY,qBAAqB,CAACF,KAAK,EAAER,GAAG,CAAC;IAEvD,IAAIS,MAAM,KAAKD,KAAK,EAAE;MACpBN,QAAQ,CAACO,MAAM,CAAC;IAClB;IAEA,IAAIL,kBAAkB,KAAKO,SAAS,IAAIV,cAAc,KAAKU,SAAS,EAAE;MACpEP,kBAAkB,CAACH,cAAc,CAAC;IACpC;EACF,CAAC,EACD,CAACF,QAAQ,EAAEK,kBAAkB,EAAEN,MAAM,EAAEI,QAAQ,EAAED,cAAc,CACjE,CAAC;AACH","ignoreList":[]}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useOptionsGetters = useOptionsGetters;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _NavigationBuilderContext = require("./NavigationBuilderContext.js");
|
|
9
|
-
var _NavigationStateContext = require("./NavigationStateContext.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
|
-
function useOptionsGetters({
|
|
13
|
-
key,
|
|
14
|
-
options,
|
|
15
|
-
navigation
|
|
16
|
-
}) {
|
|
17
|
-
const optionsRef = React.useRef(options);
|
|
18
|
-
const optionsGettersFromChildRef = React.useRef({});
|
|
19
|
-
const {
|
|
20
|
-
onOptionsChange
|
|
21
|
-
} = React.useContext(_NavigationBuilderContext.NavigationBuilderContext);
|
|
22
|
-
const {
|
|
23
|
-
addOptionsGetter: parentAddOptionsGetter
|
|
24
|
-
} = React.useContext(_NavigationStateContext.NavigationStateContext);
|
|
25
|
-
const optionsChangeListener = React.useCallback(() => {
|
|
26
|
-
const isFocused = navigation?.isFocused() ?? true;
|
|
27
|
-
const hasChildren = Object.keys(optionsGettersFromChildRef.current).length;
|
|
28
|
-
if (isFocused && !hasChildren) {
|
|
29
|
-
onOptionsChange(optionsRef.current ?? {});
|
|
30
|
-
}
|
|
31
|
-
}, [navigation, onOptionsChange]);
|
|
32
|
-
React.useEffect(() => {
|
|
33
|
-
optionsRef.current = options;
|
|
34
|
-
optionsChangeListener();
|
|
35
|
-
return navigation?.addListener('focus', optionsChangeListener);
|
|
36
|
-
}, [navigation, options, optionsChangeListener]);
|
|
37
|
-
const getOptionsFromListener = React.useCallback(() => {
|
|
38
|
-
for (const key in optionsGettersFromChildRef.current) {
|
|
39
|
-
if (key in optionsGettersFromChildRef.current) {
|
|
40
|
-
const result = optionsGettersFromChildRef.current[key]?.();
|
|
41
|
-
|
|
42
|
-
// null means unfocused route
|
|
43
|
-
if (result !== null) {
|
|
44
|
-
return result;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return null;
|
|
49
|
-
}, []);
|
|
50
|
-
const getCurrentOptions = React.useCallback(() => {
|
|
51
|
-
const isFocused = navigation?.isFocused() ?? true;
|
|
52
|
-
if (!isFocused) {
|
|
53
|
-
return null;
|
|
54
|
-
}
|
|
55
|
-
const optionsFromListener = getOptionsFromListener();
|
|
56
|
-
if (optionsFromListener !== null) {
|
|
57
|
-
return optionsFromListener;
|
|
58
|
-
}
|
|
59
|
-
return optionsRef.current;
|
|
60
|
-
}, [navigation, getOptionsFromListener]);
|
|
61
|
-
React.useEffect(() => {
|
|
62
|
-
return parentAddOptionsGetter?.(key, getCurrentOptions);
|
|
63
|
-
}, [getCurrentOptions, parentAddOptionsGetter, key]);
|
|
64
|
-
const addOptionsGetter = React.useCallback((key, getter) => {
|
|
65
|
-
optionsGettersFromChildRef.current[key] = getter;
|
|
66
|
-
optionsChangeListener();
|
|
67
|
-
return () => {
|
|
68
|
-
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
|
|
69
|
-
delete optionsGettersFromChildRef.current[key];
|
|
70
|
-
optionsChangeListener();
|
|
71
|
-
};
|
|
72
|
-
}, [optionsChangeListener]);
|
|
73
|
-
return {
|
|
74
|
-
addOptionsGetter,
|
|
75
|
-
getCurrentOptions
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
//# sourceMappingURL=useOptionsGetters.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_NavigationBuilderContext","_NavigationStateContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useOptionsGetters","key","options","navigation","optionsRef","useRef","optionsGettersFromChildRef","onOptionsChange","useContext","NavigationBuilderContext","addOptionsGetter","parentAddOptionsGetter","NavigationStateContext","optionsChangeListener","useCallback","isFocused","hasChildren","keys","current","length","useEffect","addListener","getOptionsFromListener","result","getCurrentOptions","optionsFromListener","getter"],"sourceRoot":"../../src","sources":["useOptionsGetters.tsx"],"mappings":";;;;;;AACA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,yBAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AAAkE,SAAAG,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,SAAAL,wBAAAK,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;AAS3D,SAASW,iBAAiBA,CAAC;EAAEC,GAAG;EAAEC,OAAO;EAAEC;AAAoB,CAAC,EAAE;EACvE,MAAMC,UAAU,GAAG7B,KAAK,CAAC8B,MAAM,CAAqBH,OAAO,CAAC;EAC5D,MAAMI,0BAA0B,GAAG/B,KAAK,CAAC8B,MAAM,CAE7C,CAAC,CAAC,CAAC;EAEL,MAAM;IAAEE;EAAgB,CAAC,GAAGhC,KAAK,CAACiC,UAAU,CAACC,kDAAwB,CAAC;EACtE,MAAM;IAAEC,gBAAgB,EAAEC;EAAuB,CAAC,GAAGpC,KAAK,CAACiC,UAAU,CACnEI,8CACF,CAAC;EAED,MAAMC,qBAAqB,GAAGtC,KAAK,CAACuC,WAAW,CAAC,MAAM;IACpD,MAAMC,SAAS,GAAGZ,UAAU,EAAEY,SAAS,CAAC,CAAC,IAAI,IAAI;IACjD,MAAMC,WAAW,GAAGxB,MAAM,CAACyB,IAAI,CAACX,0BAA0B,CAACY,OAAO,CAAC,CAACC,MAAM;IAE1E,IAAIJ,SAAS,IAAI,CAACC,WAAW,EAAE;MAC7BT,eAAe,CAACH,UAAU,CAACc,OAAO,IAAI,CAAC,CAAC,CAAC;IAC3C;EACF,CAAC,EAAE,CAACf,UAAU,EAAEI,eAAe,CAAC,CAAC;EAEjChC,KAAK,CAAC6C,SAAS,CAAC,MAAM;IACpBhB,UAAU,CAACc,OAAO,GAAGhB,OAAO;IAC5BW,qBAAqB,CAAC,CAAC;IAEvB,OAAOV,UAAU,EAAEkB,WAAW,CAAC,OAAO,EAAER,qBAAqB,CAAC;EAChE,CAAC,EAAE,CAACV,UAAU,EAAED,OAAO,EAAEW,qBAAqB,CAAC,CAAC;EAEhD,MAAMS,sBAAsB,GAAG/C,KAAK,CAACuC,WAAW,CAAC,MAAM;IACrD,KAAK,MAAMb,GAAG,IAAIK,0BAA0B,CAACY,OAAO,EAAE;MACpD,IAAIjB,GAAG,IAAIK,0BAA0B,CAACY,OAAO,EAAE;QAC7C,MAAMK,MAAM,GAAGjB,0BAA0B,CAACY,OAAO,CAACjB,GAAG,CAAC,GAAG,CAAC;;QAE1D;QACA,IAAIsB,MAAM,KAAK,IAAI,EAAE;UACnB,OAAOA,MAAM;QACf;MACF;IACF;IAEA,OAAO,IAAI;EACb,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,iBAAiB,GAAGjD,KAAK,CAACuC,WAAW,CAAC,MAAM;IAChD,MAAMC,SAAS,GAAGZ,UAAU,EAAEY,SAAS,CAAC,CAAC,IAAI,IAAI;IAEjD,IAAI,CAACA,SAAS,EAAE;MACd,OAAO,IAAI;IACb;IAEA,MAAMU,mBAAmB,GAAGH,sBAAsB,CAAC,CAAC;IAEpD,IAAIG,mBAAmB,KAAK,IAAI,EAAE;MAChC,OAAOA,mBAAmB;IAC5B;IAEA,OAAOrB,UAAU,CAACc,OAAO;EAC3B,CAAC,EAAE,CAACf,UAAU,EAAEmB,sBAAsB,CAAC,CAAC;EAExC/C,KAAK,CAAC6C,SAAS,CAAC,MAAM;IACpB,OAAOT,sBAAsB,GAAGV,GAAG,EAAGuB,iBAAiB,CAAC;EAC1D,CAAC,EAAE,CAACA,iBAAiB,EAAEb,sBAAsB,EAAEV,GAAG,CAAC,CAAC;EAEpD,MAAMS,gBAAgB,GAAGnC,KAAK,CAACuC,WAAW,CACxC,CAACb,GAAW,EAAEyB,MAAuC,KAAK;IACxDpB,0BAA0B,CAACY,OAAO,CAACjB,GAAG,CAAC,GAAGyB,MAAM;IAChDb,qBAAqB,CAAC,CAAC;IAEvB,OAAO,MAAM;MACX;MACA,OAAOP,0BAA0B,CAACY,OAAO,CAACjB,GAAG,CAAC;MAC9CY,qBAAqB,CAAC,CAAC;IACzB,CAAC;EACH,CAAC,EACD,CAACA,qBAAqB,CACxB,CAAC;EAED,OAAO;IACLH,gBAAgB;IAChBc;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.usePreventRemove = usePreventRemove;
|
|
7
|
-
var _nonSecure = require("nanoid/non-secure");
|
|
8
|
-
var React = _interopRequireWildcard(require("react"));
|
|
9
|
-
var _useLatestCallback = _interopRequireDefault(require("use-latest-callback"));
|
|
10
|
-
var _useNavigation = require("./useNavigation.js");
|
|
11
|
-
var _usePreventRemoveContext = require("./usePreventRemoveContext.js");
|
|
12
|
-
var _useRoute = require("./useRoute.js");
|
|
13
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
-
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); }
|
|
15
|
-
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; }
|
|
16
|
-
/**
|
|
17
|
-
* Hook to prevent screen from being removed. Can be used to prevent users from leaving the screen.
|
|
18
|
-
*
|
|
19
|
-
* @param preventRemove Boolean indicating whether to prevent screen from being removed.
|
|
20
|
-
* @param callback Function which is executed when screen was prevented from being removed.
|
|
21
|
-
*/
|
|
22
|
-
function usePreventRemove(preventRemove, callback) {
|
|
23
|
-
const [id] = React.useState(() => (0, _nonSecure.nanoid)());
|
|
24
|
-
const navigation = (0, _useNavigation.useNavigation)();
|
|
25
|
-
const {
|
|
26
|
-
key: routeKey
|
|
27
|
-
} = (0, _useRoute.useRoute)();
|
|
28
|
-
const {
|
|
29
|
-
setPreventRemove
|
|
30
|
-
} = (0, _usePreventRemoveContext.usePreventRemoveContext)();
|
|
31
|
-
React.useEffect(() => {
|
|
32
|
-
setPreventRemove(id, routeKey, preventRemove);
|
|
33
|
-
return () => {
|
|
34
|
-
setPreventRemove(id, routeKey, false);
|
|
35
|
-
};
|
|
36
|
-
}, [setPreventRemove, id, routeKey, preventRemove]);
|
|
37
|
-
const beforeRemoveListener = (0, _useLatestCallback.default)(e => {
|
|
38
|
-
if (!preventRemove) {
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
e.preventDefault();
|
|
42
|
-
callback({
|
|
43
|
-
data: e.data
|
|
44
|
-
});
|
|
45
|
-
});
|
|
46
|
-
React.useEffect(() => navigation?.addListener('beforeRemove', beforeRemoveListener), [navigation, beforeRemoveListener]);
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=usePreventRemove.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_nonSecure","require","React","_interopRequireWildcard","_useLatestCallback","_interopRequireDefault","_useNavigation","_usePreventRemoveContext","_useRoute","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","usePreventRemove","preventRemove","callback","id","useState","nanoid","navigation","useNavigation","key","routeKey","useRoute","setPreventRemove","usePreventRemoveContext","useEffect","beforeRemoveListener","useLatestCallback","preventDefault","data","addListener"],"sourceRoot":"../../src","sources":["usePreventRemove.tsx"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAGA,IAAAK,cAAA,GAAAL,OAAA;AACA,IAAAM,wBAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AAAsC,SAAAI,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,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,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAEtC;AACA;AACA;AACA;AACA;AACA;AACO,SAASW,gBAAgBA,CAC9BC,aAAsB,EACtBC,QAAmE,EACnE;EACA,MAAM,CAACC,EAAE,CAAC,GAAG9B,KAAK,CAAC+B,QAAQ,CAAC,MAAM,IAAAC,iBAAM,EAAC,CAAC,CAAC;EAE3C,MAAMC,UAAU,GAAG,IAAAC,4BAAa,EAAC,CAAC;EAClC,MAAM;IAAEC,GAAG,EAAEC;EAAS,CAAC,GAAG,IAAAC,kBAAQ,EAAC,CAAC;EAEpC,MAAM;IAAEC;EAAiB,CAAC,GAAG,IAAAC,gDAAuB,EAAC,CAAC;EAEtDvC,KAAK,CAACwC,SAAS,CAAC,MAAM;IACpBF,gBAAgB,CAACR,EAAE,EAAEM,QAAQ,EAAER,aAAa,CAAC;IAC7C,OAAO,MAAM;MACXU,gBAAgB,CAACR,EAAE,EAAEM,QAAQ,EAAE,KAAK,CAAC;IACvC,CAAC;EACH,CAAC,EAAE,CAACE,gBAAgB,EAAER,EAAE,EAAEM,QAAQ,EAAER,aAAa,CAAC,CAAC;EAEnD,MAAMa,oBAAoB,GAAG,IAAAC,0BAAiB,EAE3CnC,CAAC,IAAK;IACP,IAAI,CAACqB,aAAa,EAAE;MAClB;IACF;IAEArB,CAAC,CAACoC,cAAc,CAAC,CAAC;IAElBd,QAAQ,CAAC;MAAEe,IAAI,EAAErC,CAAC,CAACqC;IAAK,CAAC,CAAC;EAC5B,CAAC,CAAC;EAEF5C,KAAK,CAACwC,SAAS,CACb,MAAMP,UAAU,EAAEY,WAAW,CAAC,cAAc,EAAEJ,oBAAoB,CAAC,EACnE,CAACR,UAAU,EAAEQ,oBAAoB,CACnC,CAAC;AACH","ignoreList":[]}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.usePreventRemoveContext = usePreventRemoveContext;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _PreventRemoveContext = require("./PreventRemoveContext.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
|
-
function usePreventRemoveContext() {
|
|
12
|
-
const value = React.useContext(_PreventRemoveContext.PreventRemoveContext);
|
|
13
|
-
if (value == null) {
|
|
14
|
-
throw new Error("Couldn't find the prevent remove context. Is your component inside NavigationContent?");
|
|
15
|
-
}
|
|
16
|
-
return value;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=usePreventRemoveContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_PreventRemoveContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","usePreventRemoveContext","value","useContext","PreventRemoveContext","Error"],"sourceRoot":"../../src","sources":["usePreventRemoveContext.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,qBAAA,GAAAD,OAAA;AAA8D,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;AAEvD,SAASW,uBAAuBA,CAAA,EAAG;EACxC,MAAMC,KAAK,GAAGzB,KAAK,CAAC0B,UAAU,CAACC,0CAAoB,CAAC;EAEpD,IAAIF,KAAK,IAAI,IAAI,EAAE;IACjB,MAAM,IAAIG,KAAK,CACb,uFACF,CAAC;EACH;EAEA,OAAOH,KAAK;AACd","ignoreList":[]}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useRegisterNavigator = useRegisterNavigator;
|
|
7
|
-
var _nonSecure = require("nanoid/non-secure");
|
|
8
|
-
var React = _interopRequireWildcard(require("react"));
|
|
9
|
-
var _EnsureSingleNavigator = require("./EnsureSingleNavigator.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
|
-
* Register a navigator in the parent context (either a navigation container or a screen).
|
|
14
|
-
* This is used to prevent multiple navigators under a single container or screen.
|
|
15
|
-
*/
|
|
16
|
-
function useRegisterNavigator() {
|
|
17
|
-
const [key] = React.useState(() => (0, _nonSecure.nanoid)());
|
|
18
|
-
const container = React.useContext(_EnsureSingleNavigator.SingleNavigatorContext);
|
|
19
|
-
if (container === undefined) {
|
|
20
|
-
throw new Error("Couldn't register the navigator. Have you wrapped your app with 'NavigationContainer'?\n\nThis can also happen if there are multiple copies of '@react-navigation' packages installed.");
|
|
21
|
-
}
|
|
22
|
-
React.useEffect(() => {
|
|
23
|
-
const {
|
|
24
|
-
register,
|
|
25
|
-
unregister
|
|
26
|
-
} = container;
|
|
27
|
-
register(key);
|
|
28
|
-
return () => unregister(key);
|
|
29
|
-
}, [container, key]);
|
|
30
|
-
return key;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=useRegisterNavigator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_nonSecure","require","React","_interopRequireWildcard","_EnsureSingleNavigator","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useRegisterNavigator","key","useState","nanoid","container","useContext","SingleNavigatorContext","undefined","Error","useEffect","register","unregister"],"sourceRoot":"../../src","sources":["useRegisterNavigator.tsx"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAC,uBAAA,CAAAF,OAAA;AAEA,IAAAG,sBAAA,GAAAH,OAAA;AAAiE,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;AAEjE;AACA;AACA;AACA;AACO,SAASW,oBAAoBA,CAAA,EAAG;EACrC,MAAM,CAACC,GAAG,CAAC,GAAGxB,KAAK,CAACyB,QAAQ,CAAC,MAAM,IAAAC,iBAAM,EAAC,CAAC,CAAC;EAC5C,MAAMC,SAAS,GAAG3B,KAAK,CAAC4B,UAAU,CAACC,6CAAsB,CAAC;EAE1D,IAAIF,SAAS,KAAKG,SAAS,EAAE;IAC3B,MAAM,IAAIC,KAAK,CACb,wLACF,CAAC;EACH;EAEA/B,KAAK,CAACgC,SAAS,CAAC,MAAM;IACpB,MAAM;MAAEC,QAAQ;MAAEC;IAAW,CAAC,GAAGP,SAAS;IAE1CM,QAAQ,CAACT,GAAG,CAAC;IAEb,OAAO,MAAMU,UAAU,CAACV,GAAG,CAAC;EAC9B,CAAC,EAAE,CAACG,SAAS,EAAEH,GAAG,CAAC,CAAC;EAEpB,OAAOA,GAAG;AACZ","ignoreList":[]}
|
package/lib/commonjs/useRoute.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useRoute = useRoute;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _NavigationRouteContext = require("./NavigationRouteContext.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 route prop of the parent screen anywhere.
|
|
13
|
-
*
|
|
14
|
-
* @returns Route prop of the parent screen.
|
|
15
|
-
*/
|
|
16
|
-
function useRoute() {
|
|
17
|
-
const route = React.useContext(_NavigationRouteContext.NavigationRouteContext);
|
|
18
|
-
if (route === undefined) {
|
|
19
|
-
throw new Error("Couldn't find a route object. Is your component inside a screen in a navigator?");
|
|
20
|
-
}
|
|
21
|
-
return route;
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=useRoute.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_NavigationRouteContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useRoute","route","useContext","NavigationRouteContext","undefined","Error"],"sourceRoot":"../../src","sources":["useRoute.tsx"],"mappings":";;;;;;AACA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,uBAAA,GAAAD,OAAA;AAAkE,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;AAGlE;AACA;AACA;AACA;AACA;AACO,SAASW,QAAQA,CAAA,EAA0C;EAChE,MAAMC,KAAK,GAAGzB,KAAK,CAAC0B,UAAU,CAACC,8CAAsB,CAAC;EAEtD,IAAIF,KAAK,KAAKG,SAAS,EAAE;IACvB,MAAM,IAAIC,KAAK,CACb,iFACF,CAAC;EACH;EAEA,OAAOJ,KAAK;AACd","ignoreList":[]}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.CHILD_STATE = void 0;
|
|
7
|
-
exports.useRouteCache = useRouteCache;
|
|
8
|
-
var React = _interopRequireWildcard(require("react"));
|
|
9
|
-
var _isRecordEqual = require("./isRecordEqual.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
|
-
* Utilities such as `getFocusedRouteNameFromRoute` need to access state.
|
|
14
|
-
* So we need a way to suppress the warning for those use cases.
|
|
15
|
-
* This is fine since they are internal utilities and this is not public API.
|
|
16
|
-
*/
|
|
17
|
-
const CHILD_STATE = exports.CHILD_STATE = Symbol('CHILD_STATE');
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Hook to cache route props for each screen in the navigator.
|
|
21
|
-
* This lets add warnings and modifications to the route object but keep references between renders.
|
|
22
|
-
*/
|
|
23
|
-
function useRouteCache(routes) {
|
|
24
|
-
// Cache object which holds route objects for each screen
|
|
25
|
-
const cache = React.useMemo(() => ({
|
|
26
|
-
current: new Map()
|
|
27
|
-
}), []);
|
|
28
|
-
if (process.env.NODE_ENV === 'production') {
|
|
29
|
-
// We don't want the overhead of creating extra maps every render in prod
|
|
30
|
-
return routes;
|
|
31
|
-
}
|
|
32
|
-
cache.current = routes.reduce((acc, route) => {
|
|
33
|
-
const previous = cache.current.get(route.key);
|
|
34
|
-
const {
|
|
35
|
-
state,
|
|
36
|
-
...routeWithoutState
|
|
37
|
-
} = route;
|
|
38
|
-
let proxy;
|
|
39
|
-
if (previous && (0, _isRecordEqual.isRecordEqual)(previous, routeWithoutState)) {
|
|
40
|
-
// If a cached route object already exists, reuse it
|
|
41
|
-
proxy = previous;
|
|
42
|
-
} else {
|
|
43
|
-
proxy = routeWithoutState;
|
|
44
|
-
}
|
|
45
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
46
|
-
// FIXME: since the state is updated with mutation, the route object cannot be frozen
|
|
47
|
-
// As a workaround, loop through the object and make the properties readonly
|
|
48
|
-
for (const key in proxy) {
|
|
49
|
-
// @ts-expect-error: this is fine since we are looping through the object
|
|
50
|
-
const value = proxy[key];
|
|
51
|
-
Object.defineProperty(proxy, key, {
|
|
52
|
-
enumerable: true,
|
|
53
|
-
configurable: true,
|
|
54
|
-
writable: false,
|
|
55
|
-
value
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
Object.defineProperty(proxy, CHILD_STATE, {
|
|
60
|
-
enumerable: false,
|
|
61
|
-
configurable: true,
|
|
62
|
-
value: state
|
|
63
|
-
});
|
|
64
|
-
acc.set(route.key, proxy);
|
|
65
|
-
return acc;
|
|
66
|
-
}, new Map());
|
|
67
|
-
return Array.from(cache.current.values());
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=useRouteCache.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_isRecordEqual","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CHILD_STATE","exports","Symbol","useRouteCache","routes","cache","useMemo","current","Map","process","env","NODE_ENV","reduce","acc","route","previous","key","state","routeWithoutState","proxy","isRecordEqual","value","enumerable","configurable","writable","Array","from","values"],"sourceRoot":"../../src","sources":["useRouteCache.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useScheduleUpdate = useScheduleUpdate;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _NavigationBuilderContext = require("./NavigationBuilderContext.js");
|
|
9
|
-
var _useIsomorphicLayoutEffect = require("./useIsomorphicLayoutEffect");
|
|
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
|
-
* When screen config changes, we want to update the navigator in the same update phase.
|
|
14
|
-
* However, navigation state is in the root component and React won't let us update it from a child.
|
|
15
|
-
* This is a workaround for that, the scheduled update is stored in the ref without actually calling setState.
|
|
16
|
-
* It lets all subsequent updates access the latest state so it stays correct.
|
|
17
|
-
* Then we call setState during after the component updates.
|
|
18
|
-
*/
|
|
19
|
-
function useScheduleUpdate(callback) {
|
|
20
|
-
const {
|
|
21
|
-
scheduleUpdate,
|
|
22
|
-
flushUpdates
|
|
23
|
-
} = React.useContext(_NavigationBuilderContext.NavigationBuilderContext);
|
|
24
|
-
|
|
25
|
-
// FIXME: This is potentially unsafe
|
|
26
|
-
// However, since we are using sync store, it might be fine
|
|
27
|
-
scheduleUpdate(callback);
|
|
28
|
-
(0, _useIsomorphicLayoutEffect.useIsomorphicLayoutEffect)(flushUpdates);
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=useScheduleUpdate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_NavigationBuilderContext","_useIsomorphicLayoutEffect","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useScheduleUpdate","callback","scheduleUpdate","flushUpdates","useContext","NavigationBuilderContext","useIsomorphicLayoutEffect"],"sourceRoot":"../../src","sources":["useScheduleUpdate.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,yBAAA,GAAAD,OAAA;AACA,IAAAE,0BAAA,GAAAF,OAAA;AAAwE,SAAAG,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,SAAAL,wBAAAK,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;AAExE;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASW,iBAAiBA,CAACC,QAAoB,EAAE;EACtD,MAAM;IAAEC,cAAc;IAAEC;EAAa,CAAC,GAAG5B,KAAK,CAAC6B,UAAU,CACvDC,kDACF,CAAC;;EAED;EACA;EACAH,cAAc,CAACD,QAAQ,CAAC;EAExB,IAAAK,oDAAyB,EAACH,YAAY,CAAC;AACzC","ignoreList":[]}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useStateForPath = useStateForPath;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _NavigationFocusedRouteStateContext = require("./NavigationFocusedRouteStateContext.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 a minimal state representation for the current route.
|
|
13
|
-
* The returned state can be used with `getPathFromState` to build a path.
|
|
14
|
-
*
|
|
15
|
-
* @returns Minimal state to build a path for the current route.
|
|
16
|
-
*/
|
|
17
|
-
function useStateForPath() {
|
|
18
|
-
const state = React.useContext(_NavigationFocusedRouteStateContext.NavigationFocusedRouteStateContext);
|
|
19
|
-
return state;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=useStateForPath.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_NavigationFocusedRouteStateContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useStateForPath","state","useContext","NavigationFocusedRouteStateContext"],"sourceRoot":"../../src","sources":["useStateForPath.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,mCAAA,GAAAD,OAAA;AAA0F,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;AAE1F;AACA;AACA;AACA;AACA;AACA;AACO,SAASW,eAAeA,CAAA,EAAG;EAChC,MAAMC,KAAK,GAAGzB,KAAK,CAAC0B,UAAU,CAACC,sEAAkC,CAAC;EAElE,OAAOF,KAAK;AACd","ignoreList":[]}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.useSyncState = useSyncState;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _useLatestCallback = _interopRequireDefault(require("use-latest-callback"));
|
|
9
|
-
var _deepFreeze = require("./deepFreeze.js");
|
|
10
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
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 createStore = getInitialState => {
|
|
14
|
-
const listeners = [];
|
|
15
|
-
let initialized = false;
|
|
16
|
-
let state;
|
|
17
|
-
const getState = () => {
|
|
18
|
-
if (initialized) {
|
|
19
|
-
return state;
|
|
20
|
-
}
|
|
21
|
-
initialized = true;
|
|
22
|
-
state = (0, _deepFreeze.deepFreeze)(getInitialState());
|
|
23
|
-
return state;
|
|
24
|
-
};
|
|
25
|
-
let isBatching = false;
|
|
26
|
-
let didUpdate = false;
|
|
27
|
-
const setState = newState => {
|
|
28
|
-
state = (0, _deepFreeze.deepFreeze)(newState);
|
|
29
|
-
didUpdate = true;
|
|
30
|
-
if (!isBatching) {
|
|
31
|
-
listeners.forEach(listener => listener());
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
const subscribe = callback => {
|
|
35
|
-
listeners.push(callback);
|
|
36
|
-
return () => {
|
|
37
|
-
const index = listeners.indexOf(callback);
|
|
38
|
-
if (index > -1) {
|
|
39
|
-
listeners.splice(index, 1);
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
};
|
|
43
|
-
const batchUpdates = callback => {
|
|
44
|
-
isBatching = true;
|
|
45
|
-
callback();
|
|
46
|
-
isBatching = false;
|
|
47
|
-
if (didUpdate) {
|
|
48
|
-
didUpdate = false;
|
|
49
|
-
listeners.forEach(listener => listener());
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
return {
|
|
53
|
-
getState,
|
|
54
|
-
setState,
|
|
55
|
-
batchUpdates,
|
|
56
|
-
subscribe
|
|
57
|
-
};
|
|
58
|
-
};
|
|
59
|
-
function useSyncState(getInitialState) {
|
|
60
|
-
const store = React.useRef(createStore(getInitialState)).current;
|
|
61
|
-
const state = React.useSyncExternalStore(store.subscribe, store.getState, store.getState);
|
|
62
|
-
React.useDebugValue(state);
|
|
63
|
-
const pendingUpdatesRef = React.useRef([]);
|
|
64
|
-
const scheduleUpdate = (0, _useLatestCallback.default)(callback => {
|
|
65
|
-
pendingUpdatesRef.current.push(callback);
|
|
66
|
-
});
|
|
67
|
-
const flushUpdates = (0, _useLatestCallback.default)(() => {
|
|
68
|
-
const pendingUpdates = pendingUpdatesRef.current;
|
|
69
|
-
pendingUpdatesRef.current = [];
|
|
70
|
-
if (pendingUpdates.length !== 0) {
|
|
71
|
-
store.batchUpdates(() => {
|
|
72
|
-
// Flush all the pending updates
|
|
73
|
-
for (const update of pendingUpdates) {
|
|
74
|
-
update();
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
return {
|
|
80
|
-
state,
|
|
81
|
-
getState: store.getState,
|
|
82
|
-
setState: store.setState,
|
|
83
|
-
scheduleUpdate,
|
|
84
|
-
flushUpdates
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
//# sourceMappingURL=useSyncState.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_useLatestCallback","_interopRequireDefault","_deepFreeze","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","createStore","getInitialState","listeners","initialized","state","getState","deepFreeze","isBatching","didUpdate","setState","newState","forEach","listener","subscribe","callback","push","index","indexOf","splice","batchUpdates","useSyncState","store","useRef","current","useSyncExternalStore","useDebugValue","pendingUpdatesRef","scheduleUpdate","useLatestCallback","flushUpdates","pendingUpdates","length","update"],"sourceRoot":"../../src","sources":["useSyncState.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.validatePathConfig = validatePathConfig;
|
|
7
|
-
const formatToList = items => Object.entries(items).map(([key, value]) => `- ${key} (${value})`).join('\n');
|
|
8
|
-
function validatePathConfig(config, root = true) {
|
|
9
|
-
const validation = {
|
|
10
|
-
path: 'string',
|
|
11
|
-
initialRouteName: 'string',
|
|
12
|
-
screens: 'object',
|
|
13
|
-
...(root ? null : {
|
|
14
|
-
alias: 'array',
|
|
15
|
-
exact: 'boolean',
|
|
16
|
-
stringify: 'object',
|
|
17
|
-
parse: 'object'
|
|
18
|
-
})
|
|
19
|
-
};
|
|
20
|
-
if (typeof config !== 'object' || config === null) {
|
|
21
|
-
throw new Error(`Expected the configuration to be an object, but got ${JSON.stringify(config)}.`);
|
|
22
|
-
}
|
|
23
|
-
const validationErrors = Object.fromEntries(Object.keys(config).map(key => {
|
|
24
|
-
if (key in validation) {
|
|
25
|
-
const type = validation[key];
|
|
26
|
-
// @ts-expect-error: we know the key exists
|
|
27
|
-
const value = config[key];
|
|
28
|
-
if (value !== undefined) {
|
|
29
|
-
if (type === 'array') {
|
|
30
|
-
if (!Array.isArray(value)) {
|
|
31
|
-
return [key, `expected 'Array', got '${typeof value}'`];
|
|
32
|
-
}
|
|
33
|
-
} else if (typeof value !== type) {
|
|
34
|
-
return [key, `expected '${type}', got '${typeof value}'`];
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
} else {
|
|
38
|
-
return [key, 'extraneous'];
|
|
39
|
-
}
|
|
40
|
-
return null;
|
|
41
|
-
}).filter(Boolean));
|
|
42
|
-
if (Object.keys(validationErrors).length) {
|
|
43
|
-
throw new Error(`Found invalid properties in the configuration:\n${formatToList(validationErrors)}\n\nYou can only specify the following properties:\n${formatToList(validation)}\n\nIf you want to specify configuration for screens, you need to specify them under a 'screens' property.\n\nSee https://reactnavigation.org/docs/configuring-links for more details on how to specify a linking configuration.`);
|
|
44
|
-
}
|
|
45
|
-
if (root && 'path' in config && typeof config.path === 'string' && config.path.includes(':')) {
|
|
46
|
-
throw new Error(`Found invalid path '${config.path}'. The 'path' in the top-level configuration cannot contain patterns for params.`);
|
|
47
|
-
}
|
|
48
|
-
if ('screens' in config && config.screens) {
|
|
49
|
-
Object.entries(config.screens).forEach(([_, value]) => {
|
|
50
|
-
if (typeof value !== 'string') {
|
|
51
|
-
validatePathConfig(value, false);
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=validatePathConfig.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["formatToList","items","Object","entries","map","key","value","join","validatePathConfig","config","root","validation","path","initialRouteName","screens","alias","exact","stringify","parse","Error","JSON","validationErrors","fromEntries","keys","type","undefined","Array","isArray","filter","Boolean","length","includes","forEach","_"],"sourceRoot":"../../src","sources":["validatePathConfig.tsx"],"mappings":";;;;;;AAAA,MAAMA,YAAY,GAAIC,KAA6B,IACjDC,MAAM,CAACC,OAAO,CAACF,KAAK,CAAC,CAClBG,GAAG,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK,KAAKD,GAAG,KAAKC,KAAK,GAAG,CAAC,CAC5CC,IAAI,CAAC,IAAI,CAAC;AAER,SAASC,kBAAkBA,CAACC,MAAe,EAAEC,IAAI,GAAG,IAAI,EAAE;EAC/D,MAAMC,UAAU,GAAG;IACjBC,IAAI,EAAE,QAAQ;IACdC,gBAAgB,EAAE,QAAQ;IAC1BC,OAAO,EAAE,QAAQ;IACjB,IAAIJ,IAAI,GACJ,IAAI,GACJ;MACEK,KAAK,EAAE,OAAO;MACdC,KAAK,EAAE,SAAS;MAChBC,SAAS,EAAE,QAAQ;MACnBC,KAAK,EAAE;IACT,CAAC;EACP,CAAC;EAED,IAAI,OAAOT,MAAM,KAAK,QAAQ,IAAIA,MAAM,KAAK,IAAI,EAAE;IACjD,MAAM,IAAIU,KAAK,CACb,uDAAuDC,IAAI,CAACH,SAAS,CACnER,MACF,CAAC,GACH,CAAC;EACH;EAEA,MAAMY,gBAAgB,GAAGnB,MAAM,CAACoB,WAAW,CACzCpB,MAAM,CAACqB,IAAI,CAACd,MAAM,CAAC,CAChBL,GAAG,CAAEC,GAAG,IAAK;IACZ,IAAIA,GAAG,IAAIM,UAAU,EAAE;MACrB,MAAMa,IAAI,GAAGb,UAAU,CAACN,GAAG,CAA4B;MACvD;MACA,MAAMC,KAAK,GAAGG,MAAM,CAACJ,GAAG,CAAC;MAEzB,IAAIC,KAAK,KAAKmB,SAAS,EAAE;QACvB,IAAID,IAAI,KAAK,OAAO,EAAE;UACpB,IAAI,CAACE,KAAK,CAACC,OAAO,CAACrB,KAAK,CAAC,EAAE;YACzB,OAAO,CAACD,GAAG,EAAE,0BAA0B,OAAOC,KAAK,GAAG,CAAC;UACzD;QACF,CAAC,MAAM,IAAI,OAAOA,KAAK,KAAKkB,IAAI,EAAE;UAChC,OAAO,CAACnB,GAAG,EAAE,aAAamB,IAAI,WAAW,OAAOlB,KAAK,GAAG,CAAC;QAC3D;MACF;IACF,CAAC,MAAM;MACL,OAAO,CAACD,GAAG,EAAE,YAAY,CAAC;IAC5B;IAEA,OAAO,IAAI;EACb,CAAC,CAAC,CACDuB,MAAM,CAACC,OAAO,CACnB,CAAC;EAED,IAAI3B,MAAM,CAACqB,IAAI,CAACF,gBAAgB,CAAC,CAACS,MAAM,EAAE;IACxC,MAAM,IAAIX,KAAK,CACb,mDAAmDnB,YAAY,CAC7DqB,gBACF,CAAC,uDAAuDrB,YAAY,CAClEW,UACF,CAAC,kOACH,CAAC;EACH;EAEA,IACED,IAAI,IACJ,MAAM,IAAID,MAAM,IAChB,OAAOA,MAAM,CAACG,IAAI,KAAK,QAAQ,IAC/BH,MAAM,CAACG,IAAI,CAACmB,QAAQ,CAAC,GAAG,CAAC,EACzB;IACA,MAAM,IAAIZ,KAAK,CACb,uBAAuBV,MAAM,CAACG,IAAI,kFACpC,CAAC;EACH;EAEA,IAAI,SAAS,IAAIH,MAAM,IAAIA,MAAM,CAACK,OAAO,EAAE;IACzCZ,MAAM,CAACC,OAAO,CAACM,MAAM,CAACK,OAAO,CAAC,CAACkB,OAAO,CAAC,CAAC,CAACC,CAAC,EAAE3B,KAAK,CAAC,KAAK;MACrD,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;QAC7BE,kBAAkB,CAACF,KAAK,EAAE,KAAK,CAAC;MAClC;IACF,CAAC,CAAC;EACJ;AACF","ignoreList":[]}
|