repoweaver
Version:
A GitHub App that skillfully weaves multiple templates together to create and update repositories with intelligent merge strategies
1 lines • 11.9 kB
JSON
{"ast":null,"code":"\"use strict\";\n\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport { nanoid } from 'nanoid/non-secure';\nimport * as React from 'react';\nimport useLatestCallback from 'use-latest-callback';\nimport { NavigationHelpersContext } from \"./NavigationHelpersContext.js\";\nimport { NavigationRouteContext } from \"./NavigationRouteContext.js\";\nimport { PreventRemoveContext } from \"./PreventRemoveContext.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar transformPreventedRoutes = function transformPreventedRoutes(preventedRoutesMap) {\n var preventedRoutesToTransform = _toConsumableArray(preventedRoutesMap.values());\n var preventedRoutes = preventedRoutesToTransform.reduce(function (acc, _ref) {\n var _acc$routeKey;\n var routeKey = _ref.routeKey,\n preventRemove = _ref.preventRemove;\n acc[routeKey] = {\n preventRemove: ((_acc$routeKey = acc[routeKey]) == null ? void 0 : _acc$routeKey.preventRemove) || preventRemove\n };\n return acc;\n }, {});\n return preventedRoutes;\n};\nexport function PreventRemoveProvider(_ref2) {\n var children = _ref2.children;\n var _React$useState = React.useState(function () {\n return nanoid();\n }),\n _React$useState2 = _slicedToArray(_React$useState, 1),\n parentId = _React$useState2[0];\n var _React$useState3 = React.useState(function () {\n return new Map();\n }),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n preventedRoutesMap = _React$useState4[0],\n setPreventedRoutesMap = _React$useState4[1];\n var navigation = React.useContext(NavigationHelpersContext);\n var route = React.useContext(NavigationRouteContext);\n var preventRemoveContextValue = React.useContext(PreventRemoveContext);\n var setParentPrevented = preventRemoveContextValue == null ? void 0 : preventRemoveContextValue.setPreventRemove;\n var setPreventRemove = useLatestCallback(function (id, routeKey, preventRemove) {\n if (preventRemove && (navigation == null || navigation != null && navigation.getState().routes.every(function (route) {\n return route.key !== routeKey;\n }))) {\n throw new Error(`Couldn't find a route with the key ${routeKey}. Is your component inside NavigationContent?`);\n }\n setPreventedRoutesMap(function (prevPrevented) {\n var _prevPrevented$get, _prevPrevented$get2;\n if (routeKey === ((_prevPrevented$get = prevPrevented.get(id)) == null ? void 0 : _prevPrevented$get.routeKey) && preventRemove === ((_prevPrevented$get2 = prevPrevented.get(id)) == null ? void 0 : _prevPrevented$get2.preventRemove)) {\n return prevPrevented;\n }\n var nextPrevented = new Map(prevPrevented);\n if (preventRemove) {\n nextPrevented.set(id, {\n routeKey: routeKey,\n preventRemove: preventRemove\n });\n } else {\n nextPrevented.delete(id);\n }\n return nextPrevented;\n });\n });\n var isPrevented = _toConsumableArray(preventedRoutesMap.values()).some(function (_ref3) {\n var preventRemove = _ref3.preventRemove;\n return preventRemove;\n });\n React.useEffect(function () {\n if ((route == null ? void 0 : route.key) !== undefined && setParentPrevented !== undefined) {\n setParentPrevented(parentId, route.key, isPrevented);\n return function () {\n setParentPrevented(parentId, route.key, false);\n };\n }\n return;\n }, [parentId, isPrevented, route == null ? void 0 : route.key, setParentPrevented]);\n var value = React.useMemo(function () {\n return {\n setPreventRemove: setPreventRemove,\n preventedRoutes: transformPreventedRoutes(preventedRoutesMap)\n };\n }, [setPreventRemove, preventedRoutesMap]);\n return _jsx(PreventRemoveContext.Provider, {\n value: value,\n children: children\n });\n}","map":{"version":3,"names":["nanoid","React","useLatestCallback","NavigationHelpersContext","NavigationRouteContext","PreventRemoveContext","jsx","_jsx","transformPreventedRoutes","preventedRoutesMap","preventedRoutesToTransform","_toConsumableArray","values","preventedRoutes","reduce","acc","_ref","_acc$routeKey","routeKey","preventRemove","PreventRemoveProvider","_ref2","children","_React$useState","useState","_React$useState2","_slicedToArray","parentId","_React$useState3","Map","_React$useState4","setPreventedRoutesMap","navigation","useContext","route","preventRemoveContextValue","setParentPrevented","setPreventRemove","id","getState","routes","every","key","Error","prevPrevented","_prevPrevented$get","_prevPrevented$get2","get","nextPrevented","set","delete","isPrevented","some","_ref3","useEffect","undefined","value","useMemo","Provider"],"sources":["/Users/pmouli/Documents/GitHub.nosync/boots-strapper/mobile/node_modules/@react-navigation/core/src/PreventRemoveProvider.tsx"],"sourcesContent":["import { nanoid } from 'nanoid/non-secure';\nimport * as React from 'react';\nimport useLatestCallback from 'use-latest-callback';\n\nimport { NavigationHelpersContext } from './NavigationHelpersContext';\nimport { NavigationRouteContext } from './NavigationRouteContext';\nimport {\n type PreventedRoutes,\n PreventRemoveContext,\n} from './PreventRemoveContext';\n\ntype Props = {\n children: React.ReactNode;\n};\n\ntype PreventedRoutesMap = Map<\n string,\n {\n routeKey: string;\n preventRemove: boolean;\n }\n>;\n\n/**\n * Util function to transform map of prevented routes to a simpler object.\n */\nconst transformPreventedRoutes = (\n preventedRoutesMap: PreventedRoutesMap\n): PreventedRoutes => {\n const preventedRoutesToTransform = [...preventedRoutesMap.values()];\n\n const preventedRoutes = preventedRoutesToTransform.reduce<PreventedRoutes>(\n (acc, { routeKey, preventRemove }) => {\n acc[routeKey] = {\n preventRemove: acc[routeKey]?.preventRemove || preventRemove,\n };\n return acc;\n },\n {}\n );\n\n return preventedRoutes;\n};\n\n/**\n * Component used for managing which routes have to be prevented from removal in native-stack.\n */\nexport function PreventRemoveProvider({ children }: Props) {\n const [parentId] = React.useState(() => nanoid());\n const [preventedRoutesMap, setPreventedRoutesMap] =\n React.useState<PreventedRoutesMap>(() => new Map());\n\n const navigation = React.useContext(NavigationHelpersContext);\n const route = React.useContext(NavigationRouteContext);\n\n const preventRemoveContextValue = React.useContext(PreventRemoveContext);\n // take `setPreventRemove` from parent context - if exist it means we're in a nested context\n const setParentPrevented = preventRemoveContextValue?.setPreventRemove;\n\n const setPreventRemove = useLatestCallback(\n (id: string, routeKey: string, preventRemove: boolean): void => {\n if (\n preventRemove &&\n (navigation == null ||\n navigation\n ?.getState()\n .routes.every((route) => route.key !== routeKey))\n ) {\n throw new Error(\n `Couldn't find a route with the key ${routeKey}. Is your component inside NavigationContent?`\n );\n }\n\n setPreventedRoutesMap((prevPrevented) => {\n // values haven't changed - do nothing\n if (\n routeKey === prevPrevented.get(id)?.routeKey &&\n preventRemove === prevPrevented.get(id)?.preventRemove\n ) {\n return prevPrevented;\n }\n\n const nextPrevented = new Map(prevPrevented);\n\n if (preventRemove) {\n nextPrevented.set(id, {\n routeKey,\n preventRemove,\n });\n } else {\n nextPrevented.delete(id);\n }\n\n return nextPrevented;\n });\n }\n );\n\n const isPrevented = [...preventedRoutesMap.values()].some(\n ({ preventRemove }) => preventRemove\n );\n\n React.useEffect(() => {\n if (route?.key !== undefined && setParentPrevented !== undefined) {\n // when route is defined (and setParentPrevented) it means we're in a nested stack\n // route.key then will be the route key of parent\n setParentPrevented(parentId, route.key, isPrevented);\n return () => {\n setParentPrevented(parentId, route.key, false);\n };\n }\n\n return;\n }, [parentId, isPrevented, route?.key, setParentPrevented]);\n\n const value = React.useMemo(\n () => ({\n setPreventRemove,\n preventedRoutes: transformPreventedRoutes(preventedRoutesMap),\n }),\n [setPreventRemove, preventedRoutesMap]\n );\n\n return (\n <PreventRemoveContext.Provider value={value}>\n {children}\n </PreventRemoveContext.Provider>\n );\n}\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}