diff --git a/CLAUDE.md b/CLAUDE.md
index beb5683..6e6b0c4 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -39,6 +39,17 @@ interface MapToolData {
- `src/vue/View.vue`: Main map display component
- `src/vue/Preview.vue`: Sidebar preview component
+### Google Maps API Usage
+
+This plugin uses modern Google Maps JavaScript API:
+
+- **AdvancedMarkerElement**: For map markers (requires `marker` library and `mapId`)
+- **Place.searchByText**: For place search functionality (new Places API)
+- **Geocoder**: For address-to-coordinates conversion
+- **DirectionsService**: For route calculation
+
+Libraries loaded: `places,marker` with `loading=async`
+
## Updating This Document
**IMPORTANT**: When making spec changes or improvements to this plugin through discussion with Claude:
diff --git a/src/core/types.ts b/src/core/types.ts
index c3274f8..f4ad913 100644
--- a/src/core/types.ts
+++ b/src/core/types.ts
@@ -143,6 +143,8 @@ export interface DirectionStep {
distance: string;
duration: string;
travelMode: string;
+ startLocation?: LatLng;
+ endLocation?: LatLng;
}
// Route information from Directions API
diff --git a/src/vue/View.vue b/src/vue/View.vue
index 3cb54df..7b5f490 100644
--- a/src/vue/View.vue
+++ b/src/vue/View.vue
@@ -119,9 +119,10 @@
-
+
{{ stripHtml(step.instruction) }}
{{ step.distance }} ยท {{ step.duration }}
@@ -143,6 +144,7 @@ import type {
MarkerData,
PlaceResult,
DirectionRoute,
+ DirectionStep,
LatLng,
} from "../core/types";
@@ -155,12 +157,15 @@ const props = defineProps<{
// State
const mapContainer = ref
(null);
const map = ref(null);
-const markers = ref