import React, { Component } from 'react' import { ScrollView, View } from 'react-native' import AppText from '../../app-text' import FramedSegment from '../../framed-segment' import AppLoadingView from '../../app-loading' import SettingsButton from '../shared/settings-button' import { openImportDialog, getFileContent, importData } from './import-dialog' import openShareDialogAndExport from './export-dialog' import DeleteData from './delete-data' import labels from '../../../i18n/en/settings' export default class DataManagement extends Component { constructor(props) { super(props) this.state = { isLoading: false } } onStartLoading = () => { this.setState({ isLoading: true }) } onEndLoading = () => { this.setState({ isLoading: false }) } onImportData = async (shouldDeleteExistingData) => { try { this.onStartLoading() const fileContent = await getFileContent() if (fileContent) { await importData(shouldDeleteExistingData, fileContent) } } catch(err) { return } finally { this.onEndLoading() } } render() { return ( {this.state.isLoading && } {!this.state.isLoading && {labels.export.segmentExplainer} {labels.export.button} {labels.import.segmentExplainer} openImportDialog(this.onImportData)} > {labels.import.button} {labels.deleteSegment.explainer} } ) } }