126 lines
3.5 KiB
JavaScript
126 lines
3.5 KiB
JavaScript
// Module ID: 1570
|
|
// Function ID: 1571
|
|
// Name: transformPreventedRoutes
|
|
// Dependencies: [32, 19, 21, 1508, 1565, 1540, 1569, 1521]
|
|
// Exports: PreventRemoveProvider
|
|
|
|
// Module 1570 (transformPreventedRoutes)
|
|
import _slicedToArray from "_slicedToArray";
|
|
import noop from "noop";
|
|
import { jsx } from "jsxProd";
|
|
|
|
const require = arg1;
|
|
function transformPreventedRoutes(arr) {
|
|
const obj = {};
|
|
const values = arr.values();
|
|
for (const item10008 of values) {
|
|
obj[item10008] = { preventRemove: true };
|
|
continue;
|
|
}
|
|
return obj;
|
|
}
|
|
|
|
export const PreventRemoveProvider = function PreventRemoveProvider(children) {
|
|
let first;
|
|
let first1;
|
|
let dependencyMap;
|
|
let callback;
|
|
let React;
|
|
let context;
|
|
let setPreventRemove;
|
|
let notifyPreventRemove;
|
|
let c8;
|
|
let c9;
|
|
let c10;
|
|
first = callback(React.useState(() => first(1508).nanoid()), 1)[0];
|
|
const tmp2 = callback(React.useState(() => new Map()), 2);
|
|
first1 = tmp2[0];
|
|
dependencyMap = tmp2[1];
|
|
callback = React.useRef(new Map());
|
|
React = React.useContext(first(1565).NavigationHelpersContext);
|
|
context = React.useContext(first(1540).NavigationRouteContext);
|
|
const context1 = React.useContext(first(1569).PreventRemoveContext);
|
|
setPreventRemove = undefined;
|
|
if (context1 != null) {
|
|
setPreventRemove = context1.setPreventRemove;
|
|
}
|
|
notifyPreventRemove = undefined;
|
|
if (context1 != null) {
|
|
notifyPreventRemove = context1.notifyPreventRemove;
|
|
}
|
|
const tmp11 = first1(1521)((arg0, arg1, arg2) => {
|
|
let closure_0 = arg1;
|
|
if (arg2) {
|
|
if (null != noop) {
|
|
let everyResult;
|
|
if (obj != null) {
|
|
const routes = obj.getState().routes;
|
|
everyResult = routes.every((key) => key.key !== closure_0);
|
|
}
|
|
}
|
|
const _Error = Error;
|
|
const _HermesInternal = HermesInternal;
|
|
const error = new Error("Couldn't find a route with the key " + arg1 + ". Is your component inside NavigationContent?");
|
|
throw error;
|
|
}
|
|
const current = ref.current;
|
|
if (arg2) {
|
|
const result = current.set(arg0, arg1);
|
|
} else {
|
|
current.delete(arg0);
|
|
}
|
|
});
|
|
c8 = tmp11;
|
|
const tmp12 = first1(1521)(() => {
|
|
dependencyMap((size) => {
|
|
let map = size;
|
|
let closure_0 = size;
|
|
const current = ref.current;
|
|
if (size.size !== current.size) {
|
|
const _Map = Map;
|
|
map = new Map(current);
|
|
} else {
|
|
const items = [];
|
|
HermesBuiltin.arraySpread(current, 0);
|
|
}
|
|
return map;
|
|
});
|
|
});
|
|
c9 = tmp12;
|
|
const effect = obj.useEffect(() => {
|
|
_undefined();
|
|
if (notifyPreventRemove != null) {
|
|
notifyPreventRemove();
|
|
}
|
|
return () => {
|
|
if (closure_7 != null) {
|
|
tmp();
|
|
}
|
|
};
|
|
});
|
|
c10 = tmp14;
|
|
let items = [first, first1.size > 0, , ];
|
|
let key;
|
|
if (context != null) {
|
|
key = context.key;
|
|
}
|
|
items[2] = key;
|
|
items[3] = setPreventRemove;
|
|
const insertionEffect = obj.useInsertionEffect(() => {
|
|
let key;
|
|
if (context != null) {
|
|
key = tmp.key;
|
|
}
|
|
if (undefined !== key) {
|
|
if (undefined !== setPreventRemove) {
|
|
tmp3(first, tmp.key, c10);
|
|
return () => {
|
|
callback(closure_0, key.key, false);
|
|
};
|
|
}
|
|
}
|
|
}, items);
|
|
const items1 = [tmp11, tmp12, first1];
|
|
const value = obj.useMemo(() => ({ setPreventRemove: c8, notifyPreventRemove: c9, preventedRoutes: setPreventRemove(first1) }), items1);
|
|
return context(first(1569).PreventRemoveContext.Provider, { value, children: children.children });
|
|
};
|