PlaceAutocompleteElement class
google.maps.places.PlaceAutocompleteElement
class
PlaceAutocompleteElement is an HTMLElement
subclass which provides a UI component for the Places Autocomplete API.
Custom element:
<gmp-place-autocomplete name="string" requested-language="string" requested-region="string" types="type1 type2 type3..."></gmp-place-autocomplete>
This class extends
HTMLElement
.
This class implements
PlaceAutocompleteElementOptions
.
Access by calling const {PlaceAutocompleteElement} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
Constructor | |
---|---|
PlaceAutocompleteElement |
PlaceAutocompleteElement(options) Parameters:
|
Properties | |
---|---|
componentRestrictions |
Type:
ComponentRestrictions optional The component restrictions. Component restrictions are used to restrict predictions to only those within the parent component. For example, the country. |
locationBias |
Type:
LocationBias optional A soft boundary or hint to use when searching for places. |
locationRestriction |
Type:
LocationRestriction optional Bounds to constrain search results. |
name |
Type:
string optional The name to be used for the input element. See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#name for details. Follows the same behavior as the name attribute for inputs. Note that this is the name that will be used when a form is submitted. See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form for details.
HTML attribute:
|
requestedLanguage |
Type:
string optional A language identifier for the language in which the results should be returned, if possible. Results in the selected language may be given a higher ranking, but suggestions are not restricted to this language. See the list of supported languages.
HTML attribute:
|
requestedRegion |
Type:
string optional A region code which is used for result formatting and for result filtering. It does not restrict the suggestions to this country. The region code accepts a ccTLD ("top-level domain") two-character value. Most ccTLD codes are identical to ISO 3166-1 codes, with some notable exceptions. For example, the United Kingdom's ccTLD is "uk" (
.co.uk ) while its ISO 3166-1 code is "gb" (technically for the entity of "The United Kingdom of Great Britain and Northern Ireland").HTML attribute:
|
types |
Type:
Array<string> optional The types of predictions to be returned. For supported types, see the developer's guide. If no types are specified, all types will be returned.
HTML attribute:
|
Parts | |
---|---|
prediction-item |
An item in the drop down of predictions that represents a single prediction. |
prediction-item-icon |
The icon displayed to the left of each item in the list of predictions. |
prediction-item-main-text |
A part of prediction-item that is the main text of the prediction. For geographic locations, this contains a place name, like 'Sydney', or a street name and number, like '10 King Street'. By default, the prediction-item-main-text is colored black. If there is any additional text in the prediction-item, it is outside prediction-item-main-text and inherits its styling from prediction-item. It is colored gray by default. The additional text is typically an address. |
prediction-item-match |
The part of the returned prediction that matches the user’s input. By default, this matched text is highlighted in bold text. Note that the matched text may be anywhere within prediction-item. It is not necessarily part of prediction-item-main-text. |
prediction-item-selected |
The item when the user navigates to it via the keyboard. Note: Selected items will be affected by both this part styles and also the prediction-item part styles. |
prediction-list |
The visual element containing the list of predictions returned by the Place Autocomplete service. This list appears as a dropdown list below the PlaceAutocompleteElement. |
Methods | |
---|---|
addEventListener |
addEventListener(type, listener[, options]) Parameters:
Return Value:
void Sets up a function that will be called whenever the specified event is delivered to the target. See addEventListener |
removeEventListener |
removeEventListener(type, listener[, options]) Parameters:
Return Value:
void Removes an event listener previously registered with addEventListener from the target. See removeEventListener |
Events | |
---|---|
gmp-placeselect |
function(placeAutocompletePlaceSelectEvent) Arguments:
This event is fired when a user selects a place prediction. Contains a Place object. |
gmp-requesterror |
function(placeAutocompleteRequestErrorEvent) Arguments:
This event is fired when a request to the backend was denied (e.g. incorrect API key). This event does not bubble. |
PlaceAutocompleteElementOptions interface
google.maps.places.PlaceAutocompleteElementOptions
interface
Options for constructing a PlaceAutocompleteElement.
Properties | |
---|---|
componentRestrictions optional |
Type:
ComponentRestrictions optional |
locationBias optional |
Type:
LocationBias optional |
locationRestriction optional |
Type:
LocationRestriction optional |
requestedLanguage optional |
Type:
string optional |
requestedRegion optional |
Type:
string optional |
types optional |
Type:
Array<string> optional |
PlaceAutocompletePlaceSelectEvent class
google.maps.places.PlaceAutocompletePlaceSelectEvent
class
This event is created after the user selects a place with the Place Autocomplete Element. Access the selection with event.place
.
This class extends
Event
.
Access by calling const {PlaceAutocompletePlaceSelectEvent} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
Properties | |
---|---|
place |
Type:
Place |
PlaceAutocompleteRequestErrorEvent class
google.maps.places.PlaceAutocompleteRequestErrorEvent
class
This event is emitted by the PlaceAutocompleteElement when there is an issue with the network request.
This class extends
Event
.
Access by calling const {PlaceAutocompleteRequestErrorEvent} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
PlaceDetailsElement class
google.maps.places.PlaceDetailsElement
class
An HTML element that displays details for a place. Use the configureFromPlace()
or configureFromLocation()
methods to specify the content to be rendered. To use the Place Details Element, enable the Places UI Kit API for your project in the Google Cloud console.
Custom element:
<gmp-place-details size="small"></gmp-place-details>
This class extends
HTMLElement
.
This class implements
PlaceDetailsElementOptions
.
Access by calling const {PlaceDetailsElement} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
Constructor | |
---|---|
PlaceDetailsElement |
PlaceDetailsElement([options]) Parameters:
|
Properties | |
---|---|
place |
Type:
Place optional Read only. Place object containing the ID, location, and viewport of the currently rendered place. |
size |
Type:
PlaceDetailsSize optional The size variant of the PlaceDetailsElement. By default, the element will display
PlaceDetailsSize.X_LARGE .HTML attribute:
|
Methods | |
---|---|
addEventListener |
addEventListener(type, listener[, options]) Parameters:
Return Value:
void Sets up a function that will be called whenever the specified event is delivered to the target. See addEventListener |
configureFromLocation |
configureFromLocation(location) Parameters:
Return Value:
Promise<void> A promise that resolves once place data is loaded and rendered.Configures the widget from a LatLng using reverse geocoding. |
configureFromPlace |
configureFromPlace(place) Parameters:
Return Value:
Promise<void> A promise that resolves once place data is loaded and rendered.Configures the widget from a Place object or Place ID. |
removeEventListener |
removeEventListener(type, listener[, options]) Parameters:
Return Value:
void Removes an event listener previously registered with addEventListener from the target. See removeEventListener |
Events | |
---|---|
gmp-load |
function(event) Arguments:
This event is fired when the element loads and renders its content. This event does not bubble. |
gmp-requesterror |
function(event) Arguments:
This event is fired when a request to the backend was denied (e.g. incorrect API key). This event does not bubble. |
PlaceDetailsElementOptions interface
google.maps.places.PlaceDetailsElementOptions
interface
Options for PlaceDetailsElement
.
Properties | |
---|---|
size optional |
Type:
PlaceDetailsSize optional |
PlaceDetailsSize constants
google.maps.places.PlaceDetailsSize
constants
Size variants for PlaceDetailsElement
.
Access by calling const {PlaceDetailsSize} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
Constants | |
---|---|
LARGE |
Large variant including a large image, basic information, and contact information. |
MEDIUM |
Medium variant including a large image and basic information. |
SMALL |
Small variant including a small image and basic information. |
X_LARGE |
Extra large variant including a photo collage, reviews, and comprehensive place information. |
PlaceListElement class
google.maps.places.PlaceListElement
class
An HTML element that displays the results of a place search in a list. Use the configureFromSearchByTextRequest()
or configureFromSearchNearbyRequest()
methods to specify the request to render results for. To use the Place List Element, enable the Places UI Kit API for your project in the Google Cloud console.
Custom element:
<gmp-place-list selectable></gmp-place-list>
This class extends
HTMLElement
.
This class implements
PlaceListElementOptions
.
Access by calling const {PlaceListElement} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
Constructor | |
---|---|
PlaceListElement |
PlaceListElement([options]) Parameters:
|
Properties | |
---|---|
places |
Read only. Array of Place objects containing the IDs, locations, and viewports of the currently rendered places. |
selectable |
Type:
boolean Whether or not the list items are selectable. If true, the list items will be buttons that dispatch the
gmp-placeselect event when clicked. Accessible keyboard navigation and selection is also supported.HTML attribute:
|
Methods | |
---|---|
addEventListener |
addEventListener(type, listener[, options]) Parameters:
Return Value:
void Sets up a function that will be called whenever the specified event is delivered to the target. See addEventListener |
configureFromSearchByTextRequest |
configureFromSearchByTextRequest(request) Parameters:
Return Value:
Promise<void> A promise that resolves once place data is loaded and rendered.Configures the widget to render search results from a Places Text Search API request. |
configureFromSearchNearbyRequest |
configureFromSearchNearbyRequest(request) Parameters:
Return Value:
Promise<void> A promise that resolves once place data is loaded and rendered.Configures the widget to render search results from a Places Nearby Search API request. |
removeEventListener |
removeEventListener(type, listener[, options]) Parameters:
Return Value:
void Removes an event listener previously registered with addEventListener from the target. See removeEventListener |
Events | |
---|---|
gmp-load |
function(event) Arguments:
This event is fired when the element loads and renders its content. This event does not bubble. |
gmp-placeselect |
function(event) Arguments:
This event is fired when a user selects a place. Contains a Place object and the index of the selected place in the list. |
gmp-requesterror |
function(event) Arguments:
This event is fired when a request to the backend was denied (e.g. incorrect API key). This event does not bubble. |
PlaceListElementOptions interface
google.maps.places.PlaceListElementOptions
interface
Options for PlaceListElement
.
Properties | |
---|---|
selectable optional |
Type:
boolean optional |
PlaceListPlaceSelectEvent class
google.maps.places.PlaceListPlaceSelectEvent
class
This event is emitted by the PlaceListElement
when the user selects a place.
This class extends
Event
.
Access by calling const {PlaceListPlaceSelectEvent} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
Properties | |
---|---|
index |
Type:
number The list index of the selected place. |
place |
Type:
Place A Place object containing the ID, location, and viewport of the selected place. |
Autocomplete class
google.maps.places.Autocomplete
class
A widget that provides Place predictions based on a user's text input. It attaches to an input element of type text
, and listens for text entry in that field. The list of predictions is presented as a drop-down list, and is updated as text is entered.
This class extends
MVCObject
.
Access by calling const {Autocomplete} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
Constructor | |
---|---|
Autocomplete |
Autocomplete(inputField[, opts]) Parameters:
Creates a new instance of Autocomplete that attaches to the specified input text field with the given options. |
Methods | |
---|---|
getBounds |
getBounds() Parameters: None
Return Value:
LatLngBounds|undefined The biasing bounds.Returns the bounds to which predictions are biased. |
getFields |
getFields() Parameters: None
Return Value:
Array<string>|undefined Returns the fields to be included for the Place in the details response when the details are successfully retrieved. For a list of fields see PlaceResult . |
getPlace |
getPlace() Parameters: None
Return Value:
PlaceResult The Place selected by the user.Returns the details of the Place selected by user if the details were successfully retrieved. Otherwise returns a stub Place object, with the name property set to the current value of the input field. |
setBounds |
setBounds(bounds) Parameters:
Return Value: None
Sets the preferred area within which to return Place results. Results are biased towards, but not restricted to, this area. |
setComponentRestrictions |
setComponentRestrictions(restrictions) Parameters:
Return Value: None
Sets the component restrictions. Component restrictions are used to restrict predictions to only those within the parent component. For example, the country. |
setFields |
setFields(fields) Parameters:
Return Value: None
Sets the fields to be included for the Place in the details response when the details are successfully retrieved. For a list of fields see PlaceResult . |
setOptions |
setOptions(options) Parameters:
Return Value: None
|
setTypes |
setTypes(types) Parameters:
Return Value: None
Sets the types of predictions to be returned. For supported types, see the developer's guide. If no types are specified, all types will be returned. |
Inherited:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Events | |
---|---|
place_changed |
function() Arguments: None
This event is fired when a PlaceResult is made available for a Place the user has selected. If the user enters the name of a Place that was not suggested by the control and presses the Enter key, or if a Place Details request fails, the PlaceResult contains the user input in the name property, with no other properties defined. |
AutocompleteOptions interface
google.maps.places.AutocompleteOptions
interface
The options that can be set on an Autocomplete
object.
Properties | |
---|---|
bounds optional |
Type:
LatLngBounds|LatLngBoundsLiteral optional The area in which to search for places. |
componentRestrictions optional |
Type:
ComponentRestrictions optional The component restrictions. Component restrictions are used to restrict predictions to only those within the parent component. For example, the country. |
fields optional |
Type:
Array<string> optional Fields to be included for the Place in the details response when the details are successfully retrieved, which will be billed for. If ['ALL'] is passed in, all available fields will be returned and billed for (this is not recommended for production deployments). For a list of fields see PlaceResult . Nested fields can be specified with dot-paths (for example, "geometry.location" ). The default is ['ALL'] . |
|
Type:
boolean optional Whether to retrieve only Place IDs. The PlaceResult made available when the place_changed event is fired will only have the place_id, types and name fields, with the place_id, types and description returned by the Autocomplete service. Disabled by default. |
strictBounds optional |
Type:
boolean optional A boolean value, indicating that the Autocomplete widget should only return those places that are inside the bounds of the Autocomplete widget at the time the query is sent. Setting strictBounds to false (which is the default) will make the results biased towards, but not restricted to, places contained within the bounds. |
types optional |
Type:
Array<string> optional The types of predictions to be returned. For supported types, see the developer's guide. If no types are specified, all types will be returned. |
SearchBox class
google.maps.places.SearchBox
class
A widget that provides query predictions based on a user's text input. It attaches to an input element of type text
, and listens for text entry in that field. The list of predictions is presented as a drop-down list, and is updated as text is entered.
This class extends
MVCObject
.
Access by calling const {SearchBox} = await google.maps.importLibrary("places")
. See Libraries in the Maps JavaScript API.
Constructor | |
---|---|
SearchBox |
SearchBox(inputField[, opts]) Parameters:
Creates a new instance of SearchBox that attaches to the specified input text field with the given options. |
Methods | |
---|---|
getBounds |
getBounds() Parameters: None
Return Value:
LatLngBounds|undefined Returns the bounds to which query predictions are biased. |
getPlaces |
getPlaces() Parameters: None
Return Value:
Array<PlaceResult>|undefined Returns the query selected by the user to be used with places_changed event. |
setBounds |
setBounds(bounds) Parameters:
Return Value: None
Sets the region to use for biasing query predictions. Results will only be biased towards this area and not be completely restricted to it. |
Inherited:
addListener ,
bindTo ,
get ,
notify ,
set ,
setValues ,
unbind ,
unbindAll
|
Events | |
---|---|
places_changed |
function() Arguments: None
This event is fired when the user selects a query, getPlaces should be used to get new places. |
SearchBoxOptions interface
google.maps.places.SearchBoxOptions
interface
The options that can be set on a SearchBox
object.
Properties | |
---|---|
bounds optional |
Type:
LatLngBounds|LatLngBoundsLiteral optional The area towards which to bias query predictions. Predictions are biased towards, but not restricted to, queries targeting these bounds. |