diff --git a/docs/config.md b/docs/config.md
index 872e4ff..a3bc757 100644
--- a/docs/config.md
+++ b/docs/config.md
@@ -53,10 +53,12 @@ window.owntracks.config = {};
- [`heatmap`](#maplayersheatmap)
- [`last`](#maplayerslast)
- [`line`](#maplayersline)
+ - [`poi`](#maplayerspoi)
- [`points`](#maplayerspoints)
- [`maxNativeZoom`](#mapmaxnativezoom)
- [`maxPointDistance`](#mapmaxpointdistance)
- [`maxZoom`](#mapmaxzoom)
+ - [`poiMarker`](#mappoimarker)
- [`polyline`](#mappolyline)
- [`url`](#mapurl)
- `onLocationChange`
@@ -337,9 +339,16 @@ Initial visibility of the line layer.
- Type: [`Boolean`]
- Default: `true`
+### `map.layers.poi`
+
+Initial visibility of the POI layer.
+
+- Type: [`Boolean`]
+- Default: `true`
+
### `map.layers.points`
-Initial visibility of the points layer.
+Initial visibility of the location points layer.
- Type: [`Boolean`]
- Default: `false`
@@ -380,9 +389,25 @@ to disable.
- Type: [`Number`]
- Default: `21`
+### `map.poiMarker`
+
+POI marker configuration. See [Vue2Leaflet `l-circle-marker` documentation](https://korigan.github.io/Vue2Leaflet/#/components/l-circle-marker/)
+for all possible values.
+
+- Type: [`Object`]
+- Default:
+ ```js
+ {
+ color: "red",
+ fillColor: "red",
+ fillOpacity: 0.2,
+ radius: 12
+ }
+ ```
+
### `map.polyline`
-Location point marker configuation. `color` defaults to `primaryColor` if `null`. See
+Location point marker configuration. `color` defaults to `primaryColor` if `null`. See
[Vue2Leaflet `l-polyline` documentation](https://korigan.github.io/Vue2Leaflet/#/components/l-polyline/)
for all possible values.
diff --git a/src/components/AppHeader.vue b/src/components/AppHeader.vue
index 8d4114f..64c3c04 100644
--- a/src/components/AppHeader.vue
+++ b/src/components/AppHeader.vue
@@ -189,6 +189,7 @@ export default {
{ layer: "line", label: this.$t("Show location history (line)") },
{ layer: "points", label: this.$t("Show location history (points)") },
{ layer: "heatmap", label: this.$t("Show location heatmap") },
+ { layer: "poi", label: this.$t("Show points of interest") },
],
showMobileNav: false,
shortcuts: [
diff --git a/src/config.js b/src/config.js
index 74684ee..38c0e73 100644
--- a/src/config.js
+++ b/src/config.js
@@ -55,11 +55,18 @@ const DEFAULT_CONFIG = {
heatmap: false,
last: true,
line: true,
+ poi: true,
points: false,
},
maxNativeZoom: 19,
maxPointDistance: null,
maxZoom: 21,
+ poiMarker: {
+ color: "red",
+ fillColor: "red",
+ fillOpacity: 0.2,
+ radius: 12,
+ },
polyline: {
color: null,
fillColor: "transparent",
diff --git a/src/index.d.ts b/src/index.d.ts
index 5c5eea8..9da5a06 100644
--- a/src/index.d.ts
+++ b/src/index.d.ts
@@ -46,11 +46,18 @@ interface Config {
heatmap: boolean;
last: boolean;
line: boolean;
+ poi: boolean;
points: boolean;
};
maxNativeZoom: number;
maxPointDistance: number | null;
maxZoom: number;
+ poiMarker: {
+ color: OptionalColor;
+ fillColor: OptionalColor;
+ fillOpacity: number;
+ radius: number;
+ };
polyline: {
color: OptionalColor;
fillColor: OptionalColor;
@@ -96,6 +103,7 @@ interface State {
heatmap: boolean;
last: boolean;
line: boolean;
+ poi: boolean;
points: boolean;
};
zoom: number;
@@ -173,6 +181,8 @@ interface OTLocation {
lon: number;
/** Friendly device name */
name?: string;
+ /** Point of interest name */
+ poi?: string;
/**
* Trigger for the location report
*
diff --git a/src/locales/en-GB.json b/src/locales/en-GB.json
index b0973a1..6b43cb3 100644
--- a/src/locales/en-GB.json
+++ b/src/locales/en-GB.json
@@ -17,6 +17,7 @@
"Show location history (line)": "Show location history (line)",
"Show location history (points)": "Show location history (points)",
"Show location heatmap": "Show location heatmap",
+ "Show points of interest": "Show points of interest",
"Minify JSON": "Minify JSON",
"Copy to clipboard": "Copy to clipboard",
"Loading version...": "Loading version...",
diff --git a/src/locales/en-US.json b/src/locales/en-US.json
index 294ea99..1ec136c 100644
--- a/src/locales/en-US.json
+++ b/src/locales/en-US.json
@@ -17,6 +17,7 @@
"Show location history (line)": "Show location history (line)",
"Show location history (points)": "Show location history (points)",
"Show location heatmap": "Show location heatmap",
+ "Show points of interest": "Show points of interest",
"Minify JSON": "Minify JSON",
"Copy to clipboard": "Copy to clipboard",
"Loading version...": "Loading version...",
diff --git a/src/views/Map.vue b/src/views/Map.vue
index f4c15f4..63d60eb 100644
--- a/src/views/Map.vue
+++ b/src/views/Map.vue
@@ -25,6 +25,62 @@
:options="{ maxNativeZoom, maxZoom, zoomOffset }"
/>
+
+
+
+
+
+
+
+
+
+ {{ l.poi }}
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
0
) {