Remove Google Maps vs OSM
Run Tests on Branches / PIP Platform Tests (push) Has been skipped
Run Tests on Branches / Detect Changes (push) Successful in 13s
Run Tests on Branches / Backend Tests (push) Has been skipped
Run Tests on Branches / Frontend Tests (push) Has been skipped
Run Tests on Branches / Frontend Mobile Tests (push) Successful in 1m35s
Run Tests on Branches / Parapharmacy API Tests (push) Has been skipped

This commit is contained in:
2026-07-17 16:11:10 +00:00
parent 2f24dd4ff8
commit 795d935413
5 changed files with 29 additions and 37 deletions
+1 -7
View File
@@ -24,13 +24,7 @@
"foregroundImage": "./assets/adaptive-icon.png", "foregroundImage": "./assets/adaptive-icon.png",
"backgroundColor": "#007AFF" "backgroundColor": "#007AFF"
}, },
"package": "com.farmafinder.app", "package": "com.farmafinder.app"
"googleServicesFile": "./google-services.json",
"config": {
"googleMaps": {
"apiKey": ""
}
}
}, },
"plugins": [ "plugins": [
"expo-router", "expo-router",
+1 -2
View File
@@ -1,6 +1,6 @@
import React, { useEffect, useState } from 'react'; import React, { useEffect, useState } from 'react';
import { View, StyleSheet, Text } from 'react-native'; import { View, StyleSheet, Text } from 'react-native';
import MapView, { Marker, UrlTile, PROVIDER_DEFAULT } from 'react-native-maps'; import MapView, { Marker, UrlTile } from 'react-native-maps';
import { useRouter } from 'expo-router'; import { useRouter } from 'expo-router';
import { getPharmacies } from '../../services/pharmacies'; import { getPharmacies } from '../../services/pharmacies';
import { LoadingSpinner } from '../../components/LoadingSpinner'; import { LoadingSpinner } from '../../components/LoadingSpinner';
@@ -54,7 +54,6 @@ export default function MapScreen() {
<View style={styles.container}> <View style={styles.container}>
<MapView <MapView
style={styles.map} style={styles.map}
provider={PROVIDER_DEFAULT}
mapType="none" mapType="none"
region={region} region={region}
onRegionChangeComplete={setRegion} onRegionChangeComplete={setRegion}
+25 -24
View File
@@ -174,32 +174,33 @@ export default function SearchScreen() {
data={results} data={results}
keyExtractor={(item) => item.nregistro} keyExtractor={(item) => item.nregistro}
renderItem={({ item }) => <MedicineCard medicine={item} />} renderItem={({ item }) => <MedicineCard medicine={item} />}
ListHeaderComponent={ ListEmptyComponent={
<> products.length === 0 ? null : undefined
{products.length > 0 && ( }
<View style={styles.section}> ListFooterComponent={
<Text style={[styles.sectionTitle, { color: colors.text }]}>{t('search.parapharmacy')}</Text> products.length > 0 ? (
{products.map((product) => ( <View style={styles.section}>
<TouchableOpacity <Text style={[styles.sectionTitle, { color: colors.text }]}>{t('search.parapharmacy')}</Text>
key={`${product.source}-${product.id || product._id}`} {products.map((product) => (
style={[styles.productCard, { backgroundColor: colors.card, borderColor: colors.border }]} <TouchableOpacity
onPress={() => router.push(`/product/${product.source}/${product.id || product._id}`)} key={`${product.source}-${product.id || product._id}`}
activeOpacity={0.7} style={[styles.productCard, { backgroundColor: colors.card, borderColor: colors.border }]}
> onPress={() => router.push(`/product/${product.source}/${product.id || product._id}`)}
<View style={styles.productInfo}> activeOpacity={0.7}
<View style={styles.badges}> >
<View style={[styles.sourceBadge, { backgroundColor: '#16a34a' }]}> <View style={styles.productInfo}>
<Text style={styles.badgeText}>{t('search.parapharmacy')}</Text> <View style={styles.badges}>
</View> <View style={[styles.sourceBadge, { backgroundColor: '#16a34a' }]}>
<Text style={styles.badgeText}>{t('search.parapharmacy')}</Text>
</View> </View>
<Text style={[styles.productName, { color: colors.text }]} numberOfLines={1}>{product.name}</Text>
<Text style={[styles.productBrand, { color: colors.textSecondary }]} numberOfLines={1}>{product.brand} • {product.price}€</Text>
</View> </View>
</TouchableOpacity> <Text style={[styles.productName, { color: colors.text }]} numberOfLines={1}>{product.name}</Text>
))} <Text style={[styles.productBrand, { color: colors.textSecondary }]} numberOfLines={1}>{product.brand} • {product.price}€</Text>
</View> </View>
)} </TouchableOpacity>
</> ))}
</View>
) : null
} }
contentContainerStyle={[styles.list, isTablet && styles.listTablet]} contentContainerStyle={[styles.list, isTablet && styles.listTablet]}
showsVerticalScrollIndicator={false} showsVerticalScrollIndicator={false}
+1 -2
View File
@@ -3,7 +3,7 @@ import { View, Text, ScrollView, StyleSheet, TouchableOpacity, Linking } from 'r
import { useLocalSearchParams, useRouter } from 'expo-router'; import { useLocalSearchParams, useRouter } from 'expo-router';
import { Ionicons } from '@expo/vector-icons'; import { Ionicons } from '@expo/vector-icons';
import * as Location from 'expo-location'; import * as Location from 'expo-location';
import MapView, { Marker, UrlTile, PROVIDER_DEFAULT } from 'react-native-maps'; import MapView, { Marker, UrlTile } from 'react-native-maps';
import { getMedicine, getMedicinePharmacies } from '../../services/medicines'; import { getMedicine, getMedicinePharmacies } from '../../services/medicines';
import { subscribeToMedicine, unsubscribeFromMedicine } from '../../services/notifications'; import { subscribeToMedicine, unsubscribeFromMedicine } from '../../services/notifications';
import { useAuth } from '../../hooks/useAuth'; import { useAuth } from '../../hooks/useAuth';
@@ -209,7 +209,6 @@ export default function MedicineDetailScreen() {
<View style={styles.mapContainer}> <View style={styles.mapContainer}>
<MapView <MapView
style={styles.map} style={styles.map}
provider={PROVIDER_DEFAULT}
mapType="none" mapType="none"
initialRegion={{ initialRegion={{
latitude: mapCenter.latitude, latitude: mapCenter.latitude,
+1 -2
View File
@@ -2,7 +2,7 @@ import React, { useEffect, useState } from 'react';
import { View, Text, ScrollView, StyleSheet, TouchableOpacity, Linking } from 'react-native'; import { View, Text, ScrollView, StyleSheet, TouchableOpacity, Linking } from 'react-native';
import { useLocalSearchParams, useRouter } from 'expo-router'; import { useLocalSearchParams, useRouter } from 'expo-router';
import { Ionicons } from '@expo/vector-icons'; import { Ionicons } from '@expo/vector-icons';
import MapView, { Marker, UrlTile, PROVIDER_DEFAULT } from 'react-native-maps'; import MapView, { Marker, UrlTile } from 'react-native-maps';
import { getPharmacy, getPharmacyMedicines } from '../../services/pharmacies'; import { getPharmacy, getPharmacyMedicines } from '../../services/pharmacies';
import { subscribeToMedicine, unsubscribeFromMedicine } from '../../services/notifications'; import { subscribeToMedicine, unsubscribeFromMedicine } from '../../services/notifications';
import { useAuth } from '../../hooks/useAuth'; import { useAuth } from '../../hooks/useAuth';
@@ -125,7 +125,6 @@ export default function PharmacyDetailScreen() {
<View style={styles.mapContainer}> <View style={styles.mapContainer}>
<MapView <MapView
style={styles.map} style={styles.map}
provider={PROVIDER_DEFAULT}
mapType="none" mapType="none"
initialRegion={{ initialRegion={{
latitude: pharmacy.latitude, latitude: pharmacy.latitude,