3.1.4 - 2023-02-23
- Switched from node-sass (deprecated) to sass (#306 🙏JeffJacobson🙏)
- Updated dependencies (#308)
3.1.3 - 2022-04-08
- Properly pass through token and apikey when calling
L.esri.Geocoding.reverseGeocode()
(#295)
3.1.2 - 2022-03-01
- Updated dependencies (#292)
- Updated to rollup-plugin-terser (#292)
- Switched to chokidar (#292)
- Updated to Semistandard 14 (#292)
- Include
siteData.json
in NPM release (#292)
3.1.1 - 2021-07-29
- Properly pass through token and apikey when calling
L.esri.Geocoding.geocode()
(#278)
3.1.0 - 2021-07-20
- Results for the
suggest
andfindAddressCandidates
operations should now be more consistent with each other when using asearchBounds
option. We removed an automatically applied bounds padding that was only present in thesuggest
'swithin
method. #274
- Dependency version of
esri-leaflet
now set to^3
(#272)
3.0.0 - 2021-01-25
MapServiceProvider
- new propertyapikey
FeatureLayerProvider
- new propertyapikey
ArcgisOnlineProvider
- new propertyapikey
L.esri.Geocoding.geocodeService
- new propertyapikey
- Default WorldGeocodingServiceUrl changed to new endpoint that requires an API key. (
https://geocode-api.arcgis.com/arcgis/rest/services/World/GeocodeServer/
)
Previously, the default useage example was:
var searchControl = L.esri.Geocoding.geosearch().addTo(map);
Now that the default geocoding URL requires an API key (an API key can be obtained at https://developers.arcgis.com), that key must be provided if using the ArcGIS Online World Geocoding Service. Thus the new default usage example is:
var searchControl = L.esri.Geocoding.geosearch({
providers: [
L.esri.Geocoding.arcgisOnlineProvider({
// API Key to be passed to the ArcGIS Online Geocoding Service
apikey: 'YOUR_API_KEY'
})
]
}).addTo(map);
Other providers may be used with or without an api key.
2.3.4 - 2020-12-29
- Support "nearby" parameter (#262)
- Suggestions for the provider
L.esri.Geocoding.mapServiceProvider
with more than 1 magic key are now geocoded correctly when selected and will show all available results on the map. #250
2.3.3 - 2020-05-29
- Support "searchMode" (#215 🙏pmacMaps🙏)
2.3.2 - 2019-11-12
- Suggestions are now visible above the control's input element when the optional
position
property is'bottomleft'
or'bottomright'
. #228 - Ensure that geocoding is not attempted when user interacts with invalid suggestion child elements, such as when clicking on a provider header or the suggestions parent container element. #228
- Reset
this._lastValue
when clearing and collapsing the control after a result to make it easier to search again for the same input text value. #228
2.3.1 - 2019-10-11
- Ensure control initialization will be successful when there are no optional
providers
passed in. #225
2.3.0 - 2019-10-10
- Order of providers for suggested results is now consistently in the same order as providers were optionally configured. This PR also includes related misc. improvements to the suggest UI. #223
2.2.14 - 2019-03-11
- Handle attempts to scroll on mobile devices appropriately. (🙏pmacMaps🙏 #215)
2.2.13 - 2018-07-03
- Ensure results are filtered using country coders when World Geocoding service is used to fetch an address not based on a suggestion.
2.2.12 - 2018-06-14
- another guess to ensure all built files make it onto npm
Deprecated - 2.2.11 - 2018-06-14
- patch for another corrupt npm tarball #202
Deprecated - 2.2.10 - 2018-06-13
- stop throwing an error when no attribution control is present #194
- ensure suggestions are selected appropriately via touch events #198
2.2.9 - 2018-02-22
- exclusively use ES6 imports internally.
- run unit tests on Chrome instead of PhantomJS
2.2.8 - 2017-11-21
/img
folder was missing in last npm release- found fix to ensure we no longer have rogue missing files (hopefuly)
Deprecated - 2.2.7 - 2017-11-21
2.2.6 - 2017-07-27
esri-leaflet-geocoder.js
file was missing in last npm release
Deprecated - 2.2.5 - 2017-07-27
- stop including L.Mixin.Events #180
- ensure custom geocoding param names are fetched/used when suggestion support is present #182
- ensure
magicKey
s are passed through to custom geocoding services #182 - ensure tests don't
new
up their objects
2.2.4 - 2017-03-22
- minor CSS issue on browsers that support touch
- the
findAddressCandidates
operation of geocoding services is now used exclusively, rather than alternating back and forth withfind
- geocode and search requests are no longer fired when enter is pressed without supplying input text
2.2.3 - 2017-01-06
- geosearch control display size is now appropriate in browsers that support touch input (like Chrome 55+ and IE11/Edge)
- Correct results are now returned when a
featureLayerProvider
search is instantiated after executing a previous search that failed to return a single candidate. - a solid gray line is no longer displayed underneath the geosearch control when no candidates were returned by a service.
- display text is now aligned correctly on devices that support touch input
2.2.2 - 2016-12-18
- Now all user supplied geosearch constructor options are applied correctly when the default provider is used.
2.2.1 - 2016-11-22
-
Duplicate
featureLayerProvider
suggestions with identical display text are no longer displayed. When more than one feature with identical suggestion text is returned, all are now available in the callback. -
Correct results are now returned when a
featureLayerProvider
search is instantiated by hittingenter
after a previous search result was selected from the list.
2.2.0 - 2016-11-06
- It is now possible to declare the desired sort order for geosearch results from a
featureLayerProvider
. the new method operates identically toL.esri.query.orderBy()
var flProvider = L.esri.Geocoding.featureLayerProvider({
label: 'States',
url: 'http://sampleserver6.arcgisonline.com/arcgis/rest/services/Census/MapServer/3',
searchFields: ['STATE_NAME']
})
// fieldname + ascending/descending flag
flProvider.orderBy('POP2007', 'ASC')
-
mapServiceProvider
text search is now slightly fuzzier. #149 thx @nickpeihl! -
npm start
now launches a web server and recompiles the built source when a change is detected on Windows boxes as well. #156 thx @gavinr! -
Placeholder text is now display immediately when the geosearch control is configured to be expanded on page load. #157
2.1.4 - 2016-09-21
- the loading icon is now cleared when a search returns no results #142
- sub queries are now concatenated correctly when a filter is applied to the
FeatureLayer
being searched. #144
2.1.3 - 2016-09-15
- botched the last npm release
2.1.2 - 2016-09-15
- 'Powered by Esri' is now displayed in map attribution when the ArcGIS Online World Geocoding service is used in geosearch instead of 'Geocoding by Esri' #134
-
We now expose a
where
constructor parameter for featureLayerProvider so that developers can filter features which will be matched to user searches. #136 -
The geosearch control now utilizes the
arcgisOnlineProvider
by default if no provider is specified in the object constructor. #137
2.1.1 - 2016-07-25
-
ensure that setting
maxResults
limits the number of suggestions provided byL.esri.Geocoding.geosearch
, not just final results #124 -
trap situation in which geocoding service returns more than one candidate even though request includes a
magicKey
#129 -
improved support for custom Esri geocoding services in
geosearch
#124
2.1.0 - 2016-04-29
- new
enable()
anddisable()
methods to programmatically controlgeosearch
. ./pull/121
- ensure that the map is zoomed to the bounding box of matches, not street level. ./pull/123
- made sure Esri's copyright text is included in the concatenated, minified build of the library. ae9dea4
- changed a string introspection to make grumpy old IE happy. pull/127
- Build system refactored to use latest Rollup and Rollup plugins.
- Reworked bundling directives for various modules systems to resolve and simplify various issues
- WebPack users no longer have to use the Babel loader.
- Babelify with Babel 6 now works
- refactored
geosearch
into a base class and inherited control to lay the groundwork for other UI components that live outside the map. pull/102 - use
https
consistently when making requests to the World Geocoding services instead of inheriting protocol from the parent application. 388ba04
2.0.3 - 2016-01-27
- new
searchBounds
parameter forL.esri.Geocoding.geosearch
for filtering using a static bounding box. (#115 thanks to @nathanhilbert!)
2.0.2 - 2015-12-03
- appropriate l18n input parameter is now passed in
reverseGeocode
requests - made sure appropriate provider attribution is added to the map
2.0.1 - 2015-09-24
- ensured that options from Geosearch constructor are mixed in correctly.
2.0.0 - 2015-09-08
- implemented a new 'countries' parameter for the
arcgisOnlineProvider
based on new capabilities of the World Geocoding Service #38 - implemented a new 'categories' parameter for the
arcgisOnlineProvider
based on new capabilities of the World Geocoding Service - added the ability to include 'categories' in requests using
L.esri.Geocoding.suggest
- updated result objects across providers to include the actual GeoJSON of candidates #81
- included additional logic to ensure that queries are case insensitive #83 (thanks @rntdrts)
- refactored the calculation of result bounds calculation to avoid uncaught exceptions and usage of
new
#84
- Missing files in NPM release.
- Missing sourcemap in build.
- Requires the 2.0.0-beta.4 release of Esri Leaflet.
- Require the 1.0.0-beta.1 release of Leaflet.
- Namespaces have changed all exports now sit directly under the
L.esri.Geocoding
namespace. This mean that things likeL.esri.Geocoding.Controls.Geosearch.Providers.FeatureLayer
can now be accessed likeL.esri.Geocoding.FeatureLayerProvider
. useArcgisWorldGeocoder
has been removed. Now you must passL.esri.Geocoding.arcGisOnlineProvider()
in theproviders
array. This will facilitate easily passing options to the ArcGIS Online geocoder.
- Better build/test/release automation.
- Support for JSPM in package.json. Now you can
import geocode from 'esri-leaflet-geocoder/src/Tasks/Geocoder';
for more compact builds but, be aware of caveats - Support for browserify in the package.json. Now you can
var geocode = require('esri-leaflet-geocoder/src/Tasks/Geocoder');
for more compact builds, but be aware of caveats
- Fix bug in Suggest logic affecting older versions of ArcGIS Server (#77)
- Fix incorrect version number in built files.
This represents the stable release of Esri Leaflet Geocoder compatible with Leaflet 0.7.3. All future 1.0.X releases will be compatible with Leaflet 0.7.3 and contain only bug fixes. New features will only be added in Esri Leaflet Geocoder 2.0.0 which will require Leaflet 1.0.0.
- Introduced support for dynamic suggestions from custom geocoding services. #65
- Refactored code to account for changes introduced in Esri Leaflet
1.0.0
. #75 - Fixed problem in
initialize
#63 (thanks @timwis!) - Plugin now dynamically sets a hard search extent when
useMapBounds
is set to true. #58
- Providers should now supply their
url
with theurl
key inside ofoptions
as opposed to a separate parameter. - Namespace has been reorganized. everything now sits under
L.esri.Geocoding
. SoL.esri.Tasks.Geocode
is nowL.esri.Geocoding.Tasks.Geocode
.
MapService
provider now supports being passed an array of layers to search. #48title
option will now set the title on the input to'Location Search'
by default. #51- When using many providers or when a provider returns lots of results with a high limit, the suggestions div will now scroll. #55
within()
andnearby()
now return the task and can be changed. #49- Bugfix for
MapService
provider #46
- Bower support
bower install esri-leaflet-geocoder
- Update Esri Leaflet dependency to RC 3
Please read through the docs and changes list carefully. There has been a major refactoring.
** Breaking Changes **
- Namespacing has changed. All methods and classes are now under
L.esri.Geocoding
.L.esri.Geocoding
organizes everything intoControls
,Services
, andTasks
. GeocodeService
has been rewritten from scratch to mirror the Esri Leaflet service style that returns tasks.GeocodeService.suggest
,GeocodeService.geocode
andGeocodeService.reverse
all return their respective tasks.
** Changes **
- New tasks for
Suggest
,Geocode
andReverseGeocode
that mirror the Esri Leaflet task structure. L.esri.Geocoding.Controls.Geosearch
can now search multiple providers.- Available on NPM and Bower
- Wrapped as a CommonJS module
- Wrapped as an AMD module
- Basic unit tests
- TravisCI support
- Source maps for compressed builds
Changes
- Improve experience for users when they hit enter with no suggestion selected. The current test in the input will be geocoded and the map centered on the extent of all results. This behavior can be disabled by setting
allowMultipleResults
tofalse
. - Fix behavior of
useMapBounds
which was incorrect. - Don't pass
bbox
with suggest. The suggest API doesn't use it. - Increase
useMapBounds
default to12
.
Breaking Changes
- Esri Leaflet Geocoder now relies on the Esri Leaflet Core build, find out more on the Esri Leaflet downloads page.
- The callback signatures on
L.esri.Services.Geocoding
. The raw response is now the 3rd parameter and the second parameter is now a processed array of Geocode Results or aReverse Geocode Results depending on the call. L.esri.Services.Geocoding
no longer accepts theoutFields
parameter.
Changes
- Fix a display issues where the form would close but would not expand again. #33
- Now that
L.esri.Services.Geocoder
extends onL.esri.Services.Service
you can pass theforStorage
flag with any call and authenticate. Listen for theauthenticationrequired
event and provide a token or pass atoken
option.
- Fix style to accommodate
topright
position - Fix some leaflet-touch style issues
- Fix bug in IE 10 and 11 on Windows 8 touch devices
This is now ready for beta! This release helps finalize the API and includes lots of cross browser support.
Breaking Changes
result
andresults
events have been refactored into a singleresults
event with and array of results.
Changes
- When the user hits enter without a suggestion selected their current text is geocoded within the current map bounds.
- Esri attribution added
error
event added
- Add the
allowMultipleResults
option. #6
- Initial alpha release