1{"version":3,"file":"LogBoxInspectorSourceMapStatus.js","sourceRoot":"","sources":["../../../src/error-overlay/overlay/LogBoxInspectorSourceMapStatus.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright (c) 650 Industries.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport React, { useEffect, useState } from 'react';\nimport { Animated, Easing, GestureResponderEvent, StyleSheet, Text } from 'react-native';\n\nimport { LogBoxButton } from '../UI/LogBoxButton';\nimport * as LogBoxStyle from '../UI/LogBoxStyle';\n\ntype Props = {\n onPress?: ((event: GestureResponderEvent) => void) | null;\n status: 'COMPLETE' | 'FAILED' | 'NONE' | 'PENDING';\n};\n\nexport function LogBoxInspectorSourceMapStatus(props: Props) {\n const [state, setState] = useState<{\n animation: null | Animated.CompositeAnimation;\n rotate: null | Animated.AnimatedInterpolation<string>;\n }>({\n animation: null,\n rotate: null,\n });\n\n useEffect(() => {\n if (props.status === 'PENDING') {\n if (state.animation == null) {\n const animated = new Animated.Value(0);\n const animation = Animated.loop(\n Animated.timing(animated, {\n duration: 2000,\n easing: Easing.linear,\n toValue: 1,\n useNativeDriver: true,\n })\n );\n setState({\n animation,\n rotate: animated.interpolate({\n inputRange: [0, 1],\n outputRange: ['0deg', '360deg'],\n }),\n });\n animation.start();\n }\n } else {\n if (state.animation != null) {\n state.animation.stop();\n setState({\n animation: null,\n rotate: null,\n });\n }\n }\n\n return () => {\n if (state.animation != null) {\n state.animation.stop();\n }\n };\n }, [props.status, state.animation]);\n\n let image;\n let color;\n switch (props.status) {\n case 'FAILED':\n image = require('@expo/metro-runtime/assets/alert-triangle.png');\n color = LogBoxStyle.getErrorColor(1);\n break;\n case 'PENDING':\n image = require('@expo/metro-runtime/assets/loader.png');\n color = LogBoxStyle.getWarningColor(1);\n break;\n }\n\n if (props.status === 'COMPLETE' || image == null) {\n return null;\n }\n\n return (\n <LogBoxButton\n backgroundColor={{\n default: 'transparent',\n pressed: LogBoxStyle.getBackgroundColor(1),\n }}\n hitSlop={{ bottom: 8, left: 8, right: 8, top: 8 }}\n onPress={props.onPress}\n style={styles.root}>\n <Animated.Image\n source={image}\n tintColor={color ?? LogBoxStyle.getTextColor(0.4)}\n style={[\n styles.image,\n state.rotate == null || props.status !== 'PENDING'\n ? null\n : { transform: [{ rotate: state.rotate }] },\n ]}\n />\n <Text style={[styles.text, { color }]}>Source Map</Text>\n </LogBoxButton>\n );\n}\n\nconst styles = StyleSheet.create({\n root: {\n alignItems: 'center',\n borderRadius: 12,\n flexDirection: 'row',\n height: 24,\n paddingHorizontal: 8,\n },\n image: {\n height: 14,\n width: 16,\n marginEnd: 4,\n },\n text: {\n fontSize: 12,\n includeFontPadding: false,\n lineHeight: 16,\n },\n});\n"]}