import Clipboard from '@react-native-clipboard/clipboard'; import { useQuery } from '@tanstack/react-query'; import { authApi } from 'api/auth'; import warhouses_api from 'api/warhouses'; import AppText from 'components/AppText'; import React from 'react'; import { useTranslation } from 'react-i18next'; import { FlatList, StyleSheet, TouchableOpacity, useWindowDimensions, View, } from 'react-native'; import Toast from 'react-native-toast-message'; import Copy from 'svg/Copy'; import Kitay from 'svg/Ki'; const TabsAutoWarehouses = () => { const { width: screenWidth } = useWindowDimensions(); const scale = screenWidth < 360 ? 0.85 : 1; const cardWidth = screenWidth * 0.95; const { t } = useTranslation(); const styles = makeStyles(scale, cardWidth, screenWidth); const { data: getMe } = useQuery({ queryKey: ['getMe'], queryFn: authApi.getMe, }); const addressInfo = [ { id: 1, title: 'China (Auto)', postCode: '510440', addressInfo: [ `收件人∶吴彦祖AT(${getMe?.autoCargoId})`, '地址∶广州市白云区龙归街道南村攀龙六巷30号AТ(N209)', ' 电话: 18023847617', `1004 ${getMe?.aviaCargoId}`, ], }, // { // id: 2, // title: 'Korea (Auto)', // postCode: '520550', // addressInfo: [ // '收件人∶李小龙AT(M312)', // '地址∶深圳市南山区科技园科发路', // '18号AT(M312)', // '电话: 13800008888', // ], // }, ]; const handleCopy = (info: string[]) => { if (getMe?.status === 'ACTIVE') { Clipboard.setString(info.join('\n')); Toast.show({ type: 'success', text1: t('Nusxa olingan'), text2: t('Avto manzili nusxalandi!'), position: 'top', visibilityTime: 2000, }); } else { Toast.show({ type: 'error', text1: t('Xatolik yuz berdi!'), text2: t('Akkaunt faol emas!'), position: 'top', visibilityTime: 2000, }); } }; const { data } = useQuery({ queryKey: ['warhouses'], queryFn: () => warhouses_api.getWarhouses({ cargoType: 'AUTO' }), }); const formattedData = data?.map((item: string | null) => { if (!item) return ''; const withAutoCargo = item.replace('%s', getMe?.autoCargoId || ''); const withAviaCargo = withAutoCargo.replace( '%s', getMe?.aviaCargoId || '', ); return withAviaCargo; }) || []; return ( index.toString()} pagingEnabled showsHorizontalScrollIndicator={false} snapToInterval={cardWidth + 10} decelerationRate="fast" renderItem={({ item, index }) => { const isLast = index === formattedData.length - 1; return ( China (Auto) {item} handleCopy(item.addressInfo)}> ); }} /> ); }; const makeStyles = (scale: number, cardWidth: number, screenWidth: number) => StyleSheet.create({ card: { width: cardWidth, backgroundColor: '#28a8e82c', borderRadius: 12 * scale, padding: 15 * scale, gap: 10 * scale, }, titleCard: { flexDirection: 'row', gap: 8 * scale, alignItems: 'center', }, title: { fontSize: 20 * scale, fontFamily: 'GolosText-Bold', color: '#101623CC', }, infoId: { flexDirection: 'row', justifyContent: 'space-between', marginVertical: 8 * scale, }, infoText: { fontSize: 16 * scale, color: '#28A7E8', }, postCodeWrapper: { flexDirection: 'row', alignItems: 'center', }, postCodeText: { fontSize: 16 * scale, color: '#000000', fontWeight: '500', }, postCode: { fontSize: 16 * scale, color: '#28A7E8', fontWeight: '400', marginLeft: 4 * scale, }, }); export default TabsAutoWarehouses;