{"ast":null,"code":"\"use strict\";\n\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nvar _excluded = [\"id\", \"initialRouteName\", \"children\", \"layout\", \"screenListeners\", \"screenOptions\", \"screenLayout\", \"UNSTABLE_router\"];\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nimport { createNavigatorFactory, StackActions, StackRouter, useNavigationBuilder } from '@react-navigation/native';\nimport * as React from 'react';\nimport { NativeStackView } from \"../views/NativeStackView\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nfunction NativeStackNavigator(_ref) {\n  var id = _ref.id,\n    initialRouteName = _ref.initialRouteName,\n    children = _ref.children,\n    layout = _ref.layout,\n    screenListeners = _ref.screenListeners,\n    screenOptions = _ref.screenOptions,\n    screenLayout = _ref.screenLayout,\n    UNSTABLE_router = _ref.UNSTABLE_router,\n    rest = _objectWithoutProperties(_ref, _excluded);\n  var _useNavigationBuilder = useNavigationBuilder(StackRouter, {\n      id: id,\n      initialRouteName: initialRouteName,\n      children: children,\n      layout: layout,\n      screenListeners: screenListeners,\n      screenOptions: screenOptions,\n      screenLayout: screenLayout,\n      UNSTABLE_router: UNSTABLE_router\n    }),\n    state = _useNavigationBuilder.state,\n    describe = _useNavigationBuilder.describe,\n    descriptors = _useNavigationBuilder.descriptors,\n    navigation = _useNavigationBuilder.navigation,\n    NavigationContent = _useNavigationBuilder.NavigationContent;\n  React.useEffect(function () {\n    return (navigation == null ? void 0 : navigation.addListener == null ? void 0 : navigation.addListener('tabPress', function (e) {\n        var isFocused = navigation.isFocused();\n        requestAnimationFrame(function () {\n          if (state.index > 0 && isFocused && !e.defaultPrevented) {\n            navigation.dispatch(_objectSpread(_objectSpread({}, StackActions.popToTop()), {}, {\n              target: state.key\n            }));\n          }\n        });\n      })\n    );\n  }, [navigation, state.index, state.key]);\n  return _jsx(NavigationContent, {\n    children: _jsx(NativeStackView, _objectSpread(_objectSpread({}, rest), {}, {\n      state: state,\n      navigation: navigation,\n      descriptors: descriptors,\n      describe: describe\n    }))\n  });\n}\nexport function createNativeStackNavigator(config) {\n  return createNavigatorFactory(NativeStackNavigator)(config);\n}","map":{"version":3,"names":["createNavigatorFactory","StackActions","StackRouter","useNavigationBuilder","React","NativeStackView","jsx","_jsx","NativeStackNavigator","_ref","id","initialRouteName","children","layout","screenListeners","screenOptions","screenLayout","UNSTABLE_router","rest","_objectWithoutProperties","_excluded","_useNavigationBuilder","state","describe","descriptors","navigation","NavigationContent","useEffect","addListener","e","isFocused","requestAnimationFrame","index","defaultPrevented","dispatch","_objectSpread","popToTop","target","key","createNativeStackNavigator","config"],"sources":["/Users/pmouli/Documents/GitHub.nosync/boots-strapper/mobile/node_modules/@react-navigation/native-stack/src/navigators/createNativeStackNavigator.tsx"],"sourcesContent":["import {\n  createNavigatorFactory,\n  type EventArg,\n  type NavigatorTypeBagBase,\n  type ParamListBase,\n  type StackActionHelpers,\n  StackActions,\n  type StackNavigationState,\n  StackRouter,\n  type StackRouterOptions,\n  type StaticConfig,\n  type TypedNavigator,\n  useNavigationBuilder,\n} from '@react-navigation/native';\nimport * as React from 'react';\n\nimport type {\n  NativeStackNavigationEventMap,\n  NativeStackNavigationOptions,\n  NativeStackNavigationProp,\n  NativeStackNavigatorProps,\n} from '../types';\nimport { NativeStackView } from '../views/NativeStackView';\n\nfunction NativeStackNavigator({\n  id,\n  initialRouteName,\n  children,\n  layout,\n  screenListeners,\n  screenOptions,\n  screenLayout,\n  UNSTABLE_router,\n  ...rest\n}: NativeStackNavigatorProps) {\n  const { state, describe, descriptors, navigation, NavigationContent } =\n    useNavigationBuilder<\n      StackNavigationState<ParamListBase>,\n      StackRouterOptions,\n      StackActionHelpers<ParamListBase>,\n      NativeStackNavigationOptions,\n      NativeStackNavigationEventMap\n    >(StackRouter, {\n      id,\n      initialRouteName,\n      children,\n      layout,\n      screenListeners,\n      screenOptions,\n      screenLayout,\n      UNSTABLE_router,\n    });\n\n  React.useEffect(\n    () =>\n      // @ts-expect-error: there may not be a tab navigator in parent\n      navigation?.addListener?.('tabPress', (e: any) => {\n        const isFocused = navigation.isFocused();\n\n        // Run the operation in the next frame so we're sure all listeners have been run\n        // This is necessary to know if preventDefault() has been called\n        requestAnimationFrame(() => {\n          if (\n            state.index > 0 &&\n            isFocused &&\n            !(e as EventArg<'tabPress', true>).defaultPrevented\n          ) {\n            // When user taps on already focused tab and we're inside the tab,\n            // reset the stack to replicate native behaviour\n            navigation.dispatch({\n              ...StackActions.popToTop(),\n              target: state.key,\n            });\n          }\n        });\n      }),\n    [navigation, state.index, state.key]\n  );\n\n  return (\n    <NavigationContent>\n      <NativeStackView\n        {...rest}\n        state={state}\n        navigation={navigation}\n        descriptors={descriptors}\n        describe={describe}\n      />\n    </NavigationContent>\n  );\n}\n\nexport function createNativeStackNavigator<\n  const ParamList extends ParamListBase,\n  const NavigatorID extends string | undefined = undefined,\n  const TypeBag extends NavigatorTypeBagBase = {\n    ParamList: ParamList;\n    NavigatorID: NavigatorID;\n    State: StackNavigationState<ParamList>;\n    ScreenOptions: NativeStackNavigationOptions;\n    EventMap: NativeStackNavigationEventMap;\n    NavigationList: {\n      [RouteName in keyof ParamList]: NativeStackNavigationProp<\n        ParamList,\n        RouteName,\n        NavigatorID\n      >;\n    };\n    Navigator: typeof NativeStackNavigator;\n  },\n  const Config extends StaticConfig<TypeBag> = StaticConfig<TypeBag>,\n>(config?: Config): TypedNavigator<TypeBag, Config> {\n  return createNavigatorFactory(NativeStackNavigator)(config);\n}\n"],"mappings":";;;;;;;AAAA,SACEA,sBAAsB,EAKtBC,YAAY,EAEZC,WAAW,EAIXC,oBAAoB,QACf,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAQ9B,SAASC,eAAe;AAAmC,SAAAC,GAAA,IAAAC,IAAA;AAE3D,SAASC,oBAAoBA,CAAAC,IAAA,EAUC;EAAA,IAT5BC,EAAE,GAAAD,IAAA,CAAFC,EAAE;IACFC,gBAAgB,GAAAF,IAAA,CAAhBE,gBAAgB;IAChBC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNC,eAAe,GAAAL,IAAA,CAAfK,eAAe;IACfC,aAAa,GAAAN,IAAA,CAAbM,aAAa;IACbC,YAAY,GAAAP,IAAA,CAAZO,YAAY;IACZC,eAAe,GAAAR,IAAA,CAAfQ,eAAe;IACZC,IAAA,GAAAC,wBAAA,CAAAV,IAAA,EAAAW,SAAA;EAEH,IAAAC,qBAAA,GACElB,oBAAoB,CAMlBD,WAAW,EAAE;MACbQ,EAAE,EAAFA,EAAE;MACFC,gBAAgB,EAAhBA,gBAAgB;MAChBC,QAAQ,EAARA,QAAQ;MACRC,MAAM,EAANA,MAAM;MACNC,eAAe,EAAfA,eAAe;MACfC,aAAa,EAAbA,aAAa;MACbC,YAAY,EAAZA,YAAY;MACZC,eAAA,EAAAA;IACF,CAAC,CAAC;IAhBIK,KAAK,GAAAD,qBAAA,CAALC,KAAK;IAAEC,QAAQ,GAAAF,qBAAA,CAARE,QAAQ;IAAEC,WAAW,GAAAH,qBAAA,CAAXG,WAAW;IAAEC,UAAU,GAAAJ,qBAAA,CAAVI,UAAU;IAAEC,iBAAA,GAAAL,qBAAA,CAAAK,iBAAA;EAkBlDtB,KAAK,CAACuB,SAAS,CACb;IAAA,QAEEF,UAAU,oBAAVA,UAAU,CAAEG,WAAW,oBAAvBH,UAAU,CAAEG,WAAW,CAAG,UAAU,EAAG,UAAAC,CAAM,EAAK;QAChD,IAAMC,SAAS,GAAGL,UAAU,CAACK,SAAS,CAAC,CAAC;QAIxCC,qBAAqB,CAAC,YAAM;UAC1B,IACET,KAAK,CAACU,KAAK,GAAG,CAAC,IACfF,SAAS,IACT,CAAED,CAAC,CAAgCI,gBAAgB,EACnD;YAGAR,UAAU,CAACS,QAAQ,CAAAC,aAAA,CAAAA,aAAA,KACdlC,YAAY,CAACmC,QAAQ,CAAC,CAAC;cAC1BC,MAAM,EAAEf,KAAK,CAACgB;YAAA,EACf,CAAC;UACJ;QACF,CAAC,CAAC;MACJ,CAAC;IAAC;EAAA,GACJ,CAACb,UAAU,EAAEH,KAAK,CAACU,KAAK,EAAEV,KAAK,CAACgB,GAAG,CACrC,CAAC;EAED,OACE/B,IAAA,CAACmB,iBAAiB;IAAAd,QAAA,EAChBL,IAAA,CAACF,eAAe,EAAA8B,aAAA,CAAAA,aAAA,KACVjB,IAAI;MACRI,KAAK,EAAEA,KAAM;MACbG,UAAU,EAAEA,UAAW;MACvBD,WAAW,EAAEA,WAAY;MACzBD,QAAQ,EAAEA;IAAA,EACX;EAAC,CACe,CAAC;AAExB;AAEA,OAAO,SAASgB,0BAA0BA,CAmBxCC,MAAe,EAAmC;EAClD,OAAOxC,sBAAsB,CAACQ,oBAAoB,CAAC,CAACgC,MAAM,CAAC;AAC7D","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}