{"ast":null,"code":"import { getHeaderTitle, Header, HeaderBackButton, HeaderBackContext, SafeAreaProviderCompat, Screen } from '@react-navigation/elements';\nimport * as React from 'react';\nimport Image from \"react-native-web/dist/exports/Image\";\nimport StyleSheet from \"react-native-web/dist/exports/StyleSheet\";\nimport View from \"react-native-web/dist/exports/View\";\nvar TRANSPARENT_PRESENTATIONS = ['transparentModal', 'containedTransparentModal'];\nexport default function NativeStackView(_ref) {\n  var state = _ref.state,\n    descriptors = _ref.descriptors;\n  var parentHeaderBack = React.useContext(HeaderBackContext);\n  return React.createElement(SafeAreaProviderCompat, null, React.createElement(View, {\n    style: styles.container\n  }, state.routes.map(function (route, i) {\n    var _state$routes, _state$routes2;\n    var isFocused = state.index === i;\n    var previousKey = (_state$routes = state.routes[i - 1]) === null || _state$routes === void 0 ? void 0 : _state$routes.key;\n    var nextKey = (_state$routes2 = state.routes[i + 1]) === null || _state$routes2 === void 0 ? void 0 : _state$routes2.key;\n    var previousDescriptor = previousKey ? descriptors[previousKey] : undefined;\n    var nextDescriptor = nextKey ? descriptors[nextKey] : undefined;\n    var _descriptors$route$ke = descriptors[route.key],\n      options = _descriptors$route$ke.options,\n      navigation = _descriptors$route$ke.navigation,\n      render = _descriptors$route$ke.render;\n    var headerBack = previousDescriptor ? {\n      title: getHeaderTitle(previousDescriptor.options, previousDescriptor.route.name)\n    } : parentHeaderBack;\n    var canGoBack = headerBack !== undefined;\n    var header = options.header,\n      headerShown = options.headerShown,\n      headerTintColor = options.headerTintColor,\n      headerBackImageSource = options.headerBackImageSource,\n      headerLeft = options.headerLeft,\n      headerRight = options.headerRight,\n      headerTitle = options.headerTitle,\n      headerTitleAlign = options.headerTitleAlign,\n      headerTitleStyle = options.headerTitleStyle,\n      headerStyle = options.headerStyle,\n      headerShadowVisible = options.headerShadowVisible,\n      headerTransparent = options.headerTransparent,\n      headerBackground = options.headerBackground,\n      headerBackTitle = options.headerBackTitle,\n      presentation = options.presentation,\n      contentStyle = options.contentStyle;\n    var nextPresentation = nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.presentation;\n    return React.createElement(Screen, {\n      key: route.key,\n      focused: isFocused,\n      route: route,\n      navigation: navigation,\n      headerShown: headerShown,\n      headerTransparent: headerTransparent,\n      header: header !== undefined ? header({\n        back: headerBack,\n        options: options,\n        route: route,\n        navigation: navigation\n      }) : React.createElement(Header, {\n        title: getHeaderTitle(options, route.name),\n        headerTintColor: headerTintColor,\n        headerLeft: typeof headerLeft === 'function' ? function (_ref2) {\n          var tintColor = _ref2.tintColor;\n          return headerLeft({\n            tintColor: tintColor,\n            canGoBack: canGoBack,\n            label: headerBackTitle\n          });\n        } : headerLeft === undefined && canGoBack ? function (_ref3) {\n          var tintColor = _ref3.tintColor;\n          return React.createElement(HeaderBackButton, {\n            tintColor: tintColor,\n            backImage: headerBackImageSource !== undefined ? function () {\n              return React.createElement(Image, {\n                source: headerBackImageSource,\n                style: [styles.backImage, {\n                  tintColor: tintColor\n                }]\n              });\n            } : undefined,\n            onPress: navigation.goBack,\n            canGoBack: canGoBack\n          });\n        } : headerLeft,\n        headerRight: typeof headerRight === 'function' ? function (_ref4) {\n          var tintColor = _ref4.tintColor;\n          return headerRight({\n            tintColor: tintColor,\n            canGoBack: canGoBack\n          });\n        } : headerRight,\n        headerTitle: typeof headerTitle === 'function' ? function (_ref5) {\n          var children = _ref5.children,\n            tintColor = _ref5.tintColor;\n          return headerTitle({\n            children: children,\n            tintColor: tintColor\n          });\n        } : headerTitle,\n        headerTitleAlign: headerTitleAlign,\n        headerTitleStyle: headerTitleStyle,\n        headerTransparent: headerTransparent,\n        headerShadowVisible: headerShadowVisible,\n        headerBackground: headerBackground,\n        headerStyle: headerStyle\n      }),\n      style: [StyleSheet.absoluteFill, {\n        display: isFocused || nextPresentation != null && TRANSPARENT_PRESENTATIONS.includes(nextPresentation) ? 'flex' : 'none'\n      }, presentation != null && TRANSPARENT_PRESENTATIONS.includes(presentation) ? {\n        backgroundColor: 'transparent'\n      } : null]\n    }, React.createElement(HeaderBackContext.Provider, {\n      value: headerBack\n    }, React.createElement(View, {\n      style: [styles.contentContainer, contentStyle]\n    }, render())));\n  })));\n}\nvar styles = StyleSheet.create({\n  container: {\n    flex: 1\n  },\n  contentContainer: {\n    flex: 1\n  },\n  backImage: {\n    height: 24,\n    width: 24,\n    margin: 3,\n    resizeMode: 'contain'\n  }\n});","map":{"version":3,"sources":["views/NativeStackView.tsx"],"names":["getHeaderTitle","Header","HeaderBackButton","HeaderBackContext","SafeAreaProviderCompat","Screen","React","TRANSPARENT_PRESENTATIONS","NativeStackView","state","descriptors","parentHeaderBack","useContext","styles","container","routes","map","route","i","isFocused","index","previousKey","key","nextKey","previousDescriptor","undefined","nextDescriptor","options","navigation","render","headerBack","title","name","canGoBack","header","headerShown","headerTintColor","headerBackImageSource","headerLeft","headerRight","headerTitle","headerTitleAlign","headerTitleStyle","headerStyle","headerShadowVisible","headerTransparent","headerBackground","headerBackTitle","presentation","contentStyle","nextPresentation","back","tintColor","label","backImage","goBack","children","StyleSheet","absoluteFill","display","includes","backgroundColor","contentContainer","create","flex","height","width","margin","resizeMode"],"mappings":"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","sourceRoot":"../../../src","sourcesContent":["import { getHeaderTitle, Header, HeaderBackButton, HeaderBackContext, SafeAreaProviderCompat, Screen } from '@react-navigation/elements';\nimport * as React from 'react';\nimport { Image, StyleSheet, View } from 'react-native';\nconst TRANSPARENT_PRESENTATIONS = ['transparentModal', 'containedTransparentModal'];\nexport default function NativeStackView(_ref) {\n  let {\n    state,\n    descriptors\n  } = _ref;\n  const parentHeaderBack = React.useContext(HeaderBackContext);\n  return /*#__PURE__*/React.createElement(SafeAreaProviderCompat, null, /*#__PURE__*/React.createElement(View, {\n    style: styles.container\n  }, state.routes.map((route, i) => {\n    var _state$routes, _state$routes2;\n    const isFocused = state.index === i;\n    const previousKey = (_state$routes = state.routes[i - 1]) === null || _state$routes === void 0 ? void 0 : _state$routes.key;\n    const nextKey = (_state$routes2 = state.routes[i + 1]) === null || _state$routes2 === void 0 ? void 0 : _state$routes2.key;\n    const previousDescriptor = previousKey ? descriptors[previousKey] : undefined;\n    const nextDescriptor = nextKey ? descriptors[nextKey] : undefined;\n    const {\n      options,\n      navigation,\n      render\n    } = descriptors[route.key];\n    const headerBack = previousDescriptor ? {\n      title: getHeaderTitle(previousDescriptor.options, previousDescriptor.route.name)\n    } : parentHeaderBack;\n    const canGoBack = headerBack !== undefined;\n    const {\n      header,\n      headerShown,\n      headerTintColor,\n      headerBackImageSource,\n      headerLeft,\n      headerRight,\n      headerTitle,\n      headerTitleAlign,\n      headerTitleStyle,\n      headerStyle,\n      headerShadowVisible,\n      headerTransparent,\n      headerBackground,\n      headerBackTitle,\n      presentation,\n      contentStyle\n    } = options;\n    const nextPresentation = nextDescriptor === null || nextDescriptor === void 0 ? void 0 : nextDescriptor.options.presentation;\n    return /*#__PURE__*/React.createElement(Screen, {\n      key: route.key,\n      focused: isFocused,\n      route: route,\n      navigation: navigation,\n      headerShown: headerShown,\n      headerTransparent: headerTransparent,\n      header: header !== undefined ? header({\n        back: headerBack,\n        options,\n        route,\n        navigation\n      }) : /*#__PURE__*/React.createElement(Header, {\n        title: getHeaderTitle(options, route.name),\n        headerTintColor: headerTintColor,\n        headerLeft: typeof headerLeft === 'function' ? _ref2 => {\n          let {\n            tintColor\n          } = _ref2;\n          return headerLeft({\n            tintColor,\n            canGoBack,\n            label: headerBackTitle\n          });\n        } : headerLeft === undefined && canGoBack ? _ref3 => {\n          let {\n            tintColor\n          } = _ref3;\n          return /*#__PURE__*/React.createElement(HeaderBackButton, {\n            tintColor: tintColor,\n            backImage: headerBackImageSource !== undefined ? () => /*#__PURE__*/React.createElement(Image, {\n              source: headerBackImageSource,\n              style: [styles.backImage, {\n                tintColor\n              }]\n            }) : undefined,\n            onPress: navigation.goBack,\n            canGoBack: canGoBack\n          });\n        } : headerLeft,\n        headerRight: typeof headerRight === 'function' ? _ref4 => {\n          let {\n            tintColor\n          } = _ref4;\n          return headerRight({\n            tintColor,\n            canGoBack\n          });\n        } : headerRight,\n        headerTitle: typeof headerTitle === 'function' ? _ref5 => {\n          let {\n            children,\n            tintColor\n          } = _ref5;\n          return headerTitle({\n            children,\n            tintColor\n          });\n        } : headerTitle,\n        headerTitleAlign: headerTitleAlign,\n        headerTitleStyle: headerTitleStyle,\n        headerTransparent: headerTransparent,\n        headerShadowVisible: headerShadowVisible,\n        headerBackground: headerBackground,\n        headerStyle: headerStyle\n      }),\n      style: [StyleSheet.absoluteFill, {\n        display: isFocused || nextPresentation != null && TRANSPARENT_PRESENTATIONS.includes(nextPresentation) ? 'flex' : 'none'\n      }, presentation != null && TRANSPARENT_PRESENTATIONS.includes(presentation) ? {\n        backgroundColor: 'transparent'\n      } : null]\n    }, /*#__PURE__*/React.createElement(HeaderBackContext.Provider, {\n      value: headerBack\n    }, /*#__PURE__*/React.createElement(View, {\n      style: [styles.contentContainer, contentStyle]\n    }, render())));\n  })));\n}\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1\n  },\n  contentContainer: {\n    flex: 1\n  },\n  backImage: {\n    height: 24,\n    width: 24,\n    margin: 3,\n    resizeMode: 'contain'\n  }\n});\n//# sourceMappingURL=NativeStackView.js.map"]},"metadata":{},"sourceType":"module"}