import React, {Component, useEffect, useState} from 'react'; import { f7, Page, Navbar, List, ListItem, BlockTitle, ListButton, Popover, Popup, View, Link } from "framework7-react"; import { useTranslation } from "react-i18next"; import { Device } from '../../../../common/mobile/utils/device'; const PageEncoding = props => { const { t } = useTranslation(); const _t = t("View.Settings", { returnObjects: true }); const encodeData = props.encodeData; const valuesDelimeter = props.valuesDelimeter; const namesDelimeter = props.namesDelimeter; const [stateEncoding, setStateEncoding] = useState(props.valueEncoding); const [stateDelimeter, setStateDelimeter] = useState(props.valueDelimeter); const getIndexNameEncoding = () => encodeData.findIndex(encoding => encoding.value === stateEncoding); const nameEncoding = encodeData[getIndexNameEncoding()].displayValue; const nameDelimeter = namesDelimeter[valuesDelimeter.indexOf(stateDelimeter)]; const mode = props.mode; const changeStateEncoding = value => { setStateEncoding(value); } const changeStateDelimeter = value => { setStateDelimeter(value); } return ( {_t.textDelimeter} {_t.textEncoding} {mode === 2 ? props.closeModal()}> : null} props.onSaveFormat(stateEncoding, stateDelimeter)}> ) }; const PageEncodingList = props => { const { t } = useTranslation(); const _t = t("View.Settings", { returnObjects: true }); const [currentEncoding, changeCurrentEncoding] = useState(props.stateEncoding); const encodeData = props.encodeData; return ( {_t.textChooseEncoding} {encodeData.map((encoding, index) => { return ( { changeCurrentEncoding(encoding.value); props.changeStateEncoding(encoding.value); f7.views.current.router.back(); }}> ) })} ) }; const PageDelimeterList = props => { const { t } = useTranslation(); const _t = t("View.Settings", { returnObjects: true }); const [currentDelimeter, changeCurrentDelimeter] = useState(props.stateDelimeter); const namesDelimeter = props.namesDelimeter; const valuesDelimeter = props.valuesDelimeter; return ( {_t.textChooseDelimeter} {namesDelimeter.map((name, index) => { return ( { changeCurrentDelimeter(valuesDelimeter[index]); props.changeStateDelimeter(valuesDelimeter[index]); f7.views.current.router.back(); }}> ) })} ) }; class EncodingView extends Component { constructor(props) { super(props); } render() { return ( ) } } const routes = [ { path: '/encoding-list/', component: PageEncodingList }, { path: '/delimeter-list/', component: PageDelimeterList } ]; const Encoding = props => { useEffect(() => { f7.popup.open('.encoding-popup'); return () => { } }); return ( ) }; export {Encoding, PageEncodingList, PageDelimeterList}