All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
Replaced unnecessary references to Angular helper functions in services and controllers with vanilla JavaScript. #164
esriLoader tests for existence of global require()
function instead of global esri
namespace to determine if the JSAPI has been loaded. #163
Added .npmignore so that dist files would be added when publishing to NPM. #154
Added config and hooks for Travis CI so tests will be run for pull requests. #157
Added a home page and index pages for each module to the API docs #159
Added support for defining and using a custom basemap. #121
Fixed a bug causing the legend to not show after re-loading a route. #129
Map directive no longer creates an InfoWindow from map options infoWindow property. #116
Update map and layer directives to use controllerAs and bindToController instead of injecting $socpe into controllers. #123
Refactored shared code out of directives and into controllers and services. #108
Moved services out of the esri.map module and into an esri.core module that can be used stand-alone. #69
Added additional example pages for dynamic map services and custom basemap. #124
Added an API section to the documentation pages generated by ngDocs. #99
Added additional e2e tests for dynamic map services and legend. #115 and #139
Added unit tests for esri.core services using Karma #30 and #146
Replaced jshint with eslint for automated linting and code style enforcement #138
Geographic center coordinates are normalized prior to updating esriMap scope values #93
Add or remove layers from the map programatically #51 @eas604
The feature layer directive now includes optional attributes for opacity, definition expression, and constructor options. Opacity and definition expression act just like the visible attribute, and are watched for changes and can be adjusted at any time. #51 @eas604 #97 and #100
The feature layer directive also now includes optional attributes for the layer's load and update-end events. #103
Added a directive for dynamic map service layers. Like the feature layer directive, it has optional attributes for visibility, opacity and constructor options. #52 @Kollibri
Added a directive to set the info template(s) for layers so that they show a popup when clicked. #52 #118 @Kollibri
Map directive's addLayer
accepts an optional index argument, and layers are now added to the esriMap and esriLegend in the order that they appear in the markup.
#104 and #111
Legend directive now uses $scope.$watchCollection
to watch map.layerInfos
for changes and refresh the legend appropriately. #52 @Kollibri
Examples pages are now driven by configurable JSON and have more consistent titles #94
Using ng-options
for zoom level select Set Center and Zoom example page so that it has the correct value selected initially c8659fce
Feature-layers example now includes adjustable layer opacity, definition expression, and additional information on the esriFeatureLayer directive options #97 and #100.
Added an example page for the new dynamic map service layer. c69329b9
Added an example page showing how to add/remove layers from a map. 061ed936
Added an example page (feature-layer-events) showing how to interact with the esriFeatureLayer directive's attributes for layer load and update-end events. #103
Added an example page (other-esri-modules) showing how to use other Esri modules that we have not included directives for (such as graphics, symbols, toolbars, etc.). #106
Added functional testing using Protractor. #82, #94, #112
Published to NPM #80
- The esriMap directive's additional map options now support advanced options such as Extent and Popup. Esri#71
- The esriMap directive now reads additional map options by scope function binding, and these options are passed into the construction of a map from a webmapId. Esri#71
- Changes to accommodate a thorough review of the map directive life cycle, and adjustments to make sure all properties are updated and events fired as expected. Esri#76
- Several existing docs and test pages updated (web map example includes a legend).
- Additional Attributes Example Error: navigationMode must be 'css-transforms' or 'classic' #65
- Load event now properly fires when using a web map. #76
- The esriLoader now takes a callback function to which it passes all loaded modules as arguments. Esri#54
- Added support for a visible attribute on the esriFeatureLayer directive.
- Lazy loading of JSAPI and associated (minor) updates to esriLoader behavior. Esri#60
- Directives and services now support the following minimum dependency versions: JSAPI v3.11 and Angular v1.3.0. The test pages will be maintained at these versions.
- Docs site uses JSAPI v.3.14 (#66) and Angular v1.4.4. Esri#67
- Fixed script path (https://github.com/Esri/angular-esri-map/commit/6b4659c2d1d338ba752ddba8827f16fd12b4c330).
Thank you to @willisd2, @ScottONeal, @thinking-aloud, and @jwasil for their contributions and continued patience.
- The esriLoader factory can accept an array of module names and return an array of modules (thanks @trkbrkr2000). Esri#45
- The esriMap directive can accept additional map options (thanks @eas604). Esri#39
- Docs site includes formatted code snippets.
- Docs site uses JSAPI v3.13.
- Dojo loader multipleDefine in docs (thanks @niblicroad). Esri#38
- esrilegend.js was not found in gulp, renamed to esriLegend.js (thanks @eas604) Esri#40
- Registry Pattern
- Additional Map Options
- NOTE: This demo page address has changed after Beta 3 to Additional Map Options
- Initial public release.
- Includes directives for map, features layers, and legend and services to facilitate loading Esri modules and enabling controllers to reference the map object.