UNPKG

repoweaver

Version:

A GitHub App that skillfully weaves multiple templates together to create and update repositories with intelligent merge strategies

1 lines 22 kB
{"ast":null,"code":"\"use strict\";\n\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/slicedToArray\";\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport * as React from 'react';\nimport { NavigationBuilderContext } from \"./NavigationBuilderContext.js\";\nimport { NavigationContext } from \"./NavigationContext.js\";\nimport { NavigationRouteContext } from \"./NavigationRouteContext.js\";\nimport { SceneView } from \"./SceneView.js\";\nimport { ThemeContext } from \"./theming/ThemeContext.js\";\nimport { useNavigationCache } from \"./useNavigationCache.js\";\nimport { useRouteCache } from \"./useRouteCache.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function useDescriptors(_ref) {\n var state = _ref.state,\n screens = _ref.screens,\n navigation = _ref.navigation,\n screenOptions = _ref.screenOptions,\n screenLayout = _ref.screenLayout,\n onAction = _ref.onAction,\n getState = _ref.getState,\n setState = _ref.setState,\n addListener = _ref.addListener,\n addKeyedListener = _ref.addKeyedListener,\n onRouteFocus = _ref.onRouteFocus,\n router = _ref.router,\n emitter = _ref.emitter;\n var theme = React.useContext(ThemeContext);\n var _React$useState = React.useState({}),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n options = _React$useState2[0],\n setOptions = _React$useState2[1];\n var _React$useContext = React.useContext(NavigationBuilderContext),\n onDispatchAction = _React$useContext.onDispatchAction,\n onOptionsChange = _React$useContext.onOptionsChange,\n scheduleUpdate = _React$useContext.scheduleUpdate,\n flushUpdates = _React$useContext.flushUpdates,\n stackRef = _React$useContext.stackRef;\n var context = React.useMemo(function () {\n return {\n navigation: navigation,\n onAction: onAction,\n addListener: addListener,\n addKeyedListener: addKeyedListener,\n onRouteFocus: onRouteFocus,\n onDispatchAction: onDispatchAction,\n onOptionsChange: onOptionsChange,\n scheduleUpdate: scheduleUpdate,\n flushUpdates: flushUpdates,\n stackRef: stackRef\n };\n }, [navigation, onAction, addListener, addKeyedListener, onRouteFocus, onDispatchAction, onOptionsChange, scheduleUpdate, flushUpdates, stackRef]);\n var _useNavigationCache = useNavigationCache({\n state: state,\n getState: getState,\n navigation: navigation,\n setOptions: setOptions,\n router: router,\n emitter: emitter\n }),\n base = _useNavigationCache.base,\n navigations = _useNavigationCache.navigations;\n var routes = useRouteCache(state.routes);\n var getOptions = function getOptions(route, navigation, overrides) {\n var config = screens[route.name];\n var screen = config.props;\n var optionsList = [screenOptions].concat(_toConsumableArray(config.options ? config.options.filter(Boolean) : []), [screen.options, overrides]);\n return optionsList.reduce(function (acc, curr) {\n return Object.assign(acc, typeof curr !== 'function' ? curr : curr({\n route: route,\n navigation: navigation,\n theme: theme\n }));\n }, {});\n };\n var render = function render(route, navigation, customOptions, routeState) {\n var _ref2, _screen$layout;\n var config = screens[route.name];\n var screen = config.props;\n var clearOptions = function clearOptions() {\n return setOptions(function (o) {\n if (route.key in o) {\n var _route$key = route.key,\n _ = o[_route$key],\n rest = _objectWithoutProperties(o, [_route$key].map(_toPropertyKey));\n return rest;\n }\n return o;\n });\n };\n var layout = (_ref2 = (_screen$layout = screen.layout) != null ? _screen$layout : config.layout) != null ? _ref2 : screenLayout;\n var element = _jsx(SceneView, {\n navigation: navigation,\n route: route,\n screen: screen,\n routeState: routeState,\n getState: getState,\n setState: setState,\n options: customOptions,\n clearOptions: clearOptions\n });\n if (layout != null) {\n element = layout({\n route: route,\n navigation: navigation,\n options: customOptions,\n theme: theme,\n children: element\n });\n }\n return _jsx(NavigationBuilderContext.Provider, {\n value: context,\n children: _jsx(NavigationContext.Provider, {\n value: navigation,\n children: _jsx(NavigationRouteContext.Provider, {\n value: route,\n children: element\n })\n })\n }, route.key);\n };\n var descriptors = routes.reduce(function (acc, route, i) {\n var navigation = navigations[route.key];\n var customOptions = getOptions(route, navigation, options[route.key]);\n var element = render(route, navigation, customOptions, state.routes[i].state);\n acc[route.key] = {\n route: route,\n navigation: navigation,\n render: function render() {\n return element;\n },\n options: customOptions\n };\n return acc;\n }, {});\n var describe = function describe(route, placeholder) {\n if (!placeholder) {\n if (!(route.key in descriptors)) {\n throw new Error(`Couldn't find a route with the key ${route.key}.`);\n }\n return descriptors[route.key];\n }\n var navigation = base;\n var customOptions = getOptions(route, navigation, {});\n var element = render(route, navigation, customOptions, undefined);\n return {\n route: route,\n navigation: navigation,\n render: function render() {\n return element;\n },\n options: customOptions\n };\n };\n return {\n describe: describe,\n descriptors: descriptors\n };\n}","map":{"version":3,"names":["React","NavigationBuilderContext","NavigationContext","NavigationRouteContext","SceneView","ThemeContext","useNavigationCache","useRouteCache","jsx","_jsx","useDescriptors","_ref","state","screens","navigation","screenOptions","screenLayout","onAction","getState","setState","addListener","addKeyedListener","onRouteFocus","router","emitter","theme","useContext","_React$useState","useState","_React$useState2","_slicedToArray","options","setOptions","_React$useContext","onDispatchAction","onOptionsChange","scheduleUpdate","flushUpdates","stackRef","context","useMemo","_useNavigationCache","base","navigations","routes","getOptions","route","overrides","config","name","screen","props","optionsList","concat","_toConsumableArray","filter","Boolean","reduce","acc","curr","Object","assign","render","customOptions","routeState","_ref2","_screen$layout","clearOptions","o","key","_route$key","_","rest","_objectWithoutProperties","map","_toPropertyKey","layout","element","children","Provider","value","descriptors","i","describe","placeholder","Error","undefined"],"sources":["/Users/pmouli/Documents/GitHub.nosync/boots-strapper/mobile/node_modules/@react-navigation/core/src/useDescriptors.tsx"],"sourcesContent":["import type {\n NavigationAction,\n NavigationState,\n ParamListBase,\n PartialState,\n Router,\n} from '@react-navigation/routers';\nimport * as React from 'react';\n\nimport {\n type AddKeyedListener,\n type AddListener,\n NavigationBuilderContext,\n} from './NavigationBuilderContext';\nimport { NavigationContext } from './NavigationContext';\nimport { NavigationRouteContext } from './NavigationRouteContext';\nimport { SceneView } from './SceneView';\nimport { ThemeContext } from './theming/ThemeContext';\nimport type {\n Descriptor,\n EventMapBase,\n NavigationHelpers,\n NavigationProp,\n RouteConfig,\n RouteProp,\n} from './types';\nimport type { NavigationEventEmitter } from './useEventEmitter';\nimport { useNavigationCache } from './useNavigationCache';\nimport { useRouteCache } from './useRouteCache';\n\nexport type ScreenConfigWithParent<\n State extends NavigationState,\n ScreenOptions extends {},\n EventMap extends EventMapBase,\n> = {\n keys: (string | undefined)[];\n options: (ScreenOptionsOrCallback<ScreenOptions> | undefined)[] | undefined;\n layout: ScreenLayout<ScreenOptions> | undefined;\n props: RouteConfig<\n ParamListBase,\n string,\n State,\n ScreenOptions,\n EventMap,\n unknown\n >;\n};\n\ntype ScreenLayout<ScreenOptions extends {}> = (props: {\n route: RouteProp<ParamListBase, string>;\n options: ScreenOptions;\n navigation: any;\n theme: ReactNavigation.Theme;\n children: React.ReactElement;\n}) => React.ReactElement;\n\ntype ScreenOptionsOrCallback<ScreenOptions extends {}> =\n | ScreenOptions\n | ((props: {\n route: RouteProp<ParamListBase, string>;\n navigation: any;\n theme: ReactNavigation.Theme;\n }) => ScreenOptions);\n\ntype Options<\n State extends NavigationState,\n ScreenOptions extends {},\n EventMap extends EventMapBase,\n> = {\n state: State;\n screens: Record<\n string,\n ScreenConfigWithParent<State, ScreenOptions, EventMap>\n >;\n navigation: NavigationHelpers<ParamListBase>;\n screenOptions: ScreenOptionsOrCallback<ScreenOptions> | undefined;\n screenLayout: ScreenLayout<ScreenOptions> | undefined;\n onAction: (action: NavigationAction) => boolean;\n getState: () => State;\n setState: (state: State) => void;\n addListener: AddListener;\n addKeyedListener: AddKeyedListener;\n onRouteFocus: (key: string) => void;\n router: Router<State, NavigationAction>;\n emitter: NavigationEventEmitter<EventMap>;\n};\n\n/**\n * Hook to create descriptor objects for the child routes.\n *\n * A descriptor object provides 3 things:\n * - Helper method to render a screen\n * - Options specified by the screen for the navigator\n * - Navigation object intended for the route\n */\nexport function useDescriptors<\n State extends NavigationState,\n ActionHelpers extends Record<string, () => void>,\n ScreenOptions extends {},\n EventMap extends EventMapBase,\n>({\n state,\n screens,\n navigation,\n screenOptions,\n screenLayout,\n onAction,\n getState,\n setState,\n addListener,\n addKeyedListener,\n onRouteFocus,\n router,\n emitter,\n}: Options<State, ScreenOptions, EventMap>) {\n const theme = React.useContext(ThemeContext);\n const [options, setOptions] = React.useState<Record<string, ScreenOptions>>(\n {}\n );\n const {\n onDispatchAction,\n onOptionsChange,\n scheduleUpdate,\n flushUpdates,\n stackRef,\n } = React.useContext(NavigationBuilderContext);\n\n const context = React.useMemo(\n () => ({\n navigation,\n onAction,\n addListener,\n addKeyedListener,\n onRouteFocus,\n onDispatchAction,\n onOptionsChange,\n scheduleUpdate,\n flushUpdates,\n stackRef,\n }),\n [\n navigation,\n onAction,\n addListener,\n addKeyedListener,\n onRouteFocus,\n onDispatchAction,\n onOptionsChange,\n scheduleUpdate,\n flushUpdates,\n stackRef,\n ]\n );\n\n const { base, navigations } = useNavigationCache<\n State,\n ScreenOptions,\n EventMap,\n ActionHelpers\n >({\n state,\n getState,\n navigation,\n setOptions,\n router,\n emitter,\n });\n\n const routes = useRouteCache(state.routes);\n\n const getOptions = (\n route: RouteProp<ParamListBase, string>,\n navigation: NavigationProp<\n ParamListBase,\n string,\n string | undefined,\n State,\n ScreenOptions,\n EventMap\n >,\n overrides: Record<string, ScreenOptions>\n ) => {\n const config = screens[route.name];\n const screen = config.props;\n\n const optionsList = [\n // The default `screenOptions` passed to the navigator\n screenOptions,\n // The `screenOptions` props passed to `Group` elements\n ...((config.options\n ? config.options.filter(Boolean)\n : []) as ScreenOptionsOrCallback<ScreenOptions>[]),\n // The `options` prop passed to `Screen` elements,\n screen.options,\n // The options set via `navigation.setOptions`\n overrides,\n ];\n\n return optionsList.reduce<ScreenOptions>(\n (acc, curr) =>\n Object.assign(\n acc,\n // @ts-expect-error: we check for function but TS still complains\n typeof curr !== 'function' ? curr : curr({ route, navigation, theme })\n ),\n {} as ScreenOptions\n );\n };\n\n const render = (\n route: RouteProp<ParamListBase, string>,\n navigation: NavigationProp<\n ParamListBase,\n string,\n string | undefined,\n State,\n ScreenOptions,\n EventMap\n >,\n customOptions: ScreenOptions,\n routeState: NavigationState | PartialState<NavigationState> | undefined\n ) => {\n const config = screens[route.name];\n const screen = config.props;\n\n const clearOptions = () =>\n setOptions((o) => {\n if (route.key in o) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { [route.key]: _, ...rest } = o;\n return rest;\n }\n\n return o;\n });\n\n const layout =\n // The `layout` prop passed to `Screen` elements,\n screen.layout ??\n // The `screenLayout` props passed to `Group` elements\n config.layout ??\n // The default `screenLayout` passed to the navigator\n screenLayout;\n\n let element = (\n <SceneView\n navigation={navigation}\n route={route}\n screen={screen}\n routeState={routeState}\n getState={getState}\n setState={setState}\n options={customOptions}\n clearOptions={clearOptions}\n />\n );\n\n if (layout != null) {\n element = layout({\n route,\n navigation,\n options: customOptions,\n // @ts-expect-error: in practice `theme` will be defined\n theme,\n children: element,\n });\n }\n\n return (\n <NavigationBuilderContext.Provider key={route.key} value={context}>\n <NavigationContext.Provider value={navigation}>\n <NavigationRouteContext.Provider value={route}>\n {element}\n </NavigationRouteContext.Provider>\n </NavigationContext.Provider>\n </NavigationBuilderContext.Provider>\n );\n };\n\n const descriptors = routes.reduce<\n Record<\n string,\n Descriptor<\n ScreenOptions,\n NavigationProp<\n ParamListBase,\n string,\n string | undefined,\n State,\n ScreenOptions,\n EventMap\n > &\n ActionHelpers,\n RouteProp<ParamListBase>\n >\n >\n >((acc, route, i) => {\n const navigation = navigations[route.key];\n const customOptions = getOptions(route, navigation, options[route.key]);\n const element = render(\n route,\n navigation,\n customOptions,\n state.routes[i].state\n );\n\n acc[route.key] = {\n route,\n // @ts-expect-error: it's missing action helpers, fix later\n navigation,\n render() {\n return element;\n },\n options: customOptions as ScreenOptions,\n };\n\n return acc;\n }, {});\n\n /**\n * Create a descriptor object for a route.\n *\n * @param route Route object for which the descriptor should be created\n * @param placeholder Whether the descriptor should be a placeholder, e.g. for a route not yet in the state\n * @returns Descriptor object\n */\n const describe = (route: RouteProp<ParamListBase>, placeholder: boolean) => {\n if (!placeholder) {\n if (!(route.key in descriptors)) {\n throw new Error(`Couldn't find a route with the key ${route.key}.`);\n }\n\n return descriptors[route.key];\n }\n\n const navigation = base;\n const customOptions = getOptions(route, navigation, {});\n const element = render(route, navigation, customOptions, undefined);\n\n return {\n route,\n navigation,\n render() {\n return element;\n },\n options: customOptions as ScreenOptions,\n };\n };\n\n return {\n describe,\n descriptors,\n };\n}\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}