Skip to content

Commit ab767fc

Browse files
committed
add refreshToken method to update session token for the autocomplete service
1 parent f945d09 commit ab767fc

6 files changed

+11
-1
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,7 @@ The hook returns an object with properties:
189189
- `placesAutocompleteService`: Instance of [AutocompleteService](https://developers.google.com/maps/documentation/javascript/reference/places-autocomplete-service#AutocompleteService)
190190
- `placesService`: Instance of [PlacesService](https://developers.google.com/maps/documentation/javascript/reference/places-service#PlacesService)
191191
- `autocompleteSessionToken`: Instance of [AutocompleteSessionToken](https://developers.google.com/maps/documentation/javascript/reference/places-autocomplete-service#AutocompleteSessionToken). You can use this to [group several requests into a single session](https://developers.google.com/maps/documentation/places/web-service/session-tokens)
192+
- `refreshSessionToken`: call this function if you need [to refresh the session token](https://developers.google.com/maps/documentation/places/web-service/session-tokens)
192193
- `placePredictions`: an array of [AutocompletePrediction](https://developers.google.com/maps/documentation/javascript/reference/places-autocomplete-service#AutocompleteResponse)
193194
- `isPlacePredictionsLoading`: sets to true when a `getPlacePredictions` request is being sent and not yet resolved.
194195
- `getPlacePredictions: (opt: `[Options](https://developers.google.com/maps/documentation/javascript/reference/places-autocomplete-service#AutocompletionRequest)`): void`: a function which you call whenever you want to request places predictions. Takes one [argument](https://developers.google.com/maps/documentation/javascript/reference/places-autocomplete-service#AutocompleteResponse).

lib/usePlacesAutocompleteService.d.ts

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ interface usePlacesAutocompleteServiceResponse {
2222
getQueryPredictions: (
2323
opt: google.maps.places.QueryAutocompletionRequest
2424
) => void;
25+
refreshSessionToken: () => void;
2526
}
2627

2728
export default function usePlacesAutocompleteService(

lib/usePlacesAutocompleteService.js

+3
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,9 @@ function usePlacesAutocompleteService(_ref) {
154154
setQueryInputValue(null);
155155
debouncedQueryPredictions(opt);
156156
setIsQueryPredsLoading(false);
157+
},
158+
refreshSessionToken: function refreshSessionToken() {
159+
autocompleteSession.current = new google.maps.places.AutocompleteSessionToken();
157160
}
158161
};
159162
}

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-google-autocomplete",
3-
"version": "2.5.0",
3+
"version": "2.6.0",
44
"description": "React component for google autocomplete.",
55
"main": "index.js",
66
"types": "index.d.ts",

src/usePlacesAutocompleteService.d.ts

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ interface usePlacesAutocompleteServiceResponse {
2222
getQueryPredictions: (
2323
opt: google.maps.places.QueryAutocompletionRequest
2424
) => void;
25+
refreshSessionToken: () => void;
2526
}
2627

2728
export default function usePlacesAutocompleteService(

src/usePlacesAutocompleteService.js

+4
Original file line numberDiff line numberDiff line change
@@ -132,5 +132,9 @@ export default function usePlacesAutocompleteService({
132132
debouncedQueryPredictions(opt);
133133
setIsQueryPredsLoading(false);
134134
},
135+
refreshSessionToken: () => {
136+
autocompleteSession.current =
137+
new google.maps.places.AutocompleteSessionToken();
138+
},
135139
};
136140
}

0 commit comments

Comments
 (0)