diff --git a/src/assets/img/icon-dae.png b/src/assets/img/icon-dae.png
new file mode 100644
index 0000000..9d16ba9
Binary files /dev/null and b/src/assets/img/icon-dae.png differ
diff --git a/src/assets/img/marker-dae.png b/src/assets/img/marker-dae.png
new file mode 100644
index 0000000..e5e59a7
Binary files /dev/null and b/src/assets/img/marker-dae.png differ
diff --git a/src/containers/Map/FeatureImages.js b/src/containers/Map/FeatureImages.js
index 41f690e..a1bfa0a 100644
--- a/src/containers/Map/FeatureImages.js
+++ b/src/containers/Map/FeatureImages.js
@@ -10,6 +10,7 @@ import markerRedDisabled from "~/assets/img/marker-red-disabled.png";
import markerYellowDisabled from "~/assets/img/marker-yellow-disabled.png";
import markerGreenDisabled from "~/assets/img/marker-green-disabled.png";
import markerOrigin from "~/assets/img/marker-origin.png";
+import markerDae from "~/assets/img/marker-dae.png";
const images = {
red: markerRed,
@@ -20,6 +21,7 @@ const images = {
yellowDisabled: markerYellowDisabled,
greenDisabled: markerGreenDisabled,
origin: markerOrigin,
+ dae: markerDae,
};
export default function FeatureImages() {
diff --git a/src/containers/Map/ShapePoints.js b/src/containers/Map/ShapePoints.js
index 3482339..c7ebb2b 100644
--- a/src/containers/Map/ShapePoints.js
+++ b/src/containers/Map/ShapePoints.js
@@ -17,11 +17,10 @@ const iconStyle = {
iconSize: 0.5,
};
-const defibCircleStyle = {
- circleRadius: 8,
- circleColor: ["get", "defibColor"],
- circleStrokeColor: "#FFFFFF",
- circleStrokeWidth: 2,
+const defibStyle = {
+ iconImage: "dae",
+ iconSize: 0.5,
+ iconAllowOverlap: true,
};
const useStyles = createStyles(({ theme: { colors } }) => ({
@@ -66,12 +65,12 @@ export default function ShapePoints({ shape, children, ...shapeSourceProps }) {
/>
{/* Defibrillators (DAE) – separate layer (non-clustered) */}
-
{children}
diff --git a/src/navigation/Drawer.js b/src/navigation/Drawer.js
index d51e882..8ff265d 100644
--- a/src/navigation/Drawer.js
+++ b/src/navigation/Drawer.js
@@ -7,6 +7,8 @@ import {
} from "@expo/vector-icons";
import { useNavigation, CommonActions } from "@react-navigation/native";
+import FontAwesome6 from "@expo/vector-icons/FontAwesome6";
+
import DrawerContent from "~/navigation/DrawerNav/DrawerContent";
import { useDrawerState } from "~/navigation/Context";
import getDefaultDrawerWidth from "~/navigation/DrawerNav/getDefaultDrawerWidth";
@@ -375,11 +377,16 @@ export default React.memo(function DrawerNav() {
options={{
drawerLabel: "Défibrillateurs",
drawerIcon: ({ focused }) => (
-
+ //
),
unmountOnBlur: true,
}}
diff --git a/src/scenes/AlertCurMap/useFeatures.js b/src/scenes/AlertCurMap/useFeatures.js
index 3d1b8d9..9a21154 100644
--- a/src/scenes/AlertCurMap/useFeatures.js
+++ b/src/scenes/AlertCurMap/useFeatures.js
@@ -130,7 +130,6 @@ export default function useFeatures({
id,
properties: {
id,
- defibColor: "#4CAF50",
defib,
isDefib: true,
},
diff --git a/src/scenes/DAEItem/Carte.js b/src/scenes/DAEItem/Carte.js
index 6cc1f9c..3f5d5b1 100644
--- a/src/scenes/DAEItem/Carte.js
+++ b/src/scenes/DAEItem/Carte.js
@@ -22,7 +22,6 @@ import IconTouchTarget from "~/components/IconTouchTarget";
import { useTheme } from "~/theme";
import { useDefibsState, useNetworkState } from "~/stores";
import useLocation from "~/hooks/useLocation";
-import { getDefibAvailability } from "~/utils/dae/getDefibAvailability";
import {
osmProfileUrl,
profileDefaultModes,
@@ -33,6 +32,7 @@ import {
setA11yFocusAfterInteractions,
} from "~/lib/a11y";
+import markerDae from "~/assets/img/marker-dae.png";
import RoutingSteps from "~/scenes/AlertCurMap/RoutingSteps";
import MapHeadRouting from "~/scenes/AlertCurMap/MapHeadRouting";
@@ -42,11 +42,6 @@ import {
STATE_CALCULATING_LOADING,
} from "~/scenes/AlertCurMap/constants";
-const STATUS_COLORS = {
- open: "#4CAF50",
- closed: "#F44336",
- unknown: "#9E9E9E",
-};
export default React.memo(function DAEItemCarte() {
const { colors } = useTheme();
@@ -206,10 +201,6 @@ export default React.memo(function DAEItemCarte() {
// Defib marker GeoJSON
const defibGeoJSON = useMemo(() => {
if (!hasDefibCoords) return null;
- const { status } = getDefibAvailability(
- defib.horaires_std,
- defib.disponible_24h,
- );
return {
type: "FeatureCollection",
features: [
@@ -222,7 +213,6 @@ export default React.memo(function DAEItemCarte() {
properties: {
id: defib.id,
nom: defib.nom || "Défibrillateur",
- color: STATUS_COLORS[status],
},
},
],
@@ -370,22 +360,17 @@ export default React.memo(function DAEItemCarte() {
)}
+
+
{/* Defib marker */}
{defibGeoJSON && (
-
{
- const { status } = getDefibAvailability(d.horaires_std, d.disponible_24h);
return {
type: "Feature",
id: d.id,
@@ -45,8 +39,6 @@ function defibsToGeoJSON(defibs) {
properties: {
id: d.id,
nom: d.nom || "Défibrillateur",
- status,
- color: STATUS_COLORS[status],
},
};
}),
@@ -176,27 +168,19 @@ export default React.memo(function DAEListCarte() {
detached={false}
/>
+
+
{geoJSON.features.length > 0 && (
-