All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
Uses .when()
instead of .then()
for JSAPI 4.7+ compatibility
esriLoader defaults to loading JSAPI v4.8. Docs site uses JSAPI v4.8
Added information to readme to clarify status of this project.
Updated Travis CI config and package.json ("engines") to indicate the node versions that tests are expected to run on.
Fixed calcite-bootstrap css url in docs pages.
esriLoader defaults to loading JSAPI v4.4. Docs site uses JSAPI v4.4 and Angular v1.6.5.
esriLoader defaults to loading JSAPI v4.3. Docs site uses JSAPI v4.3.
esriLoader defaults to loading JSAPI v4.2. Docs site uses JSAPI v4.2. #317
Added support for Angular v1.6.0 and greater due to Angular's breaking changes with pre-assigning bindings on controller instances. #314
Various npm package.json dev dependency versions were updated to support gulp test
.
Updated e2e test pages to use Angular v1.6.1. Docs site uses Angular v1.6.1. #314 #319
esriLoader defaults to loading JSAPI v4.1. Docs site uses JSAPI v4.1. #305
Added new patterns page, test page, and e2e functional test for developing custom Angular factories that can load and manage the state of Esri modules. #287
Documentation site examples, patterns, and API pages were updated to have more links back to Esri docs and more consistency among module naming conventions. #290
README and documentation site home page were updated with information about integrating Esri with Angular 2. #285
Fixed PopupTemplate <ul>
formatting in docs sample page since the official Esri JSAPI sample was also fixed at JSAPI v4.1. #299
Unminified dist files adhere to strict dependecy injection (DI). Note that minified dist files already had strict DI. #269
Angular dependencies (^1.3.0) declared for package.json (npm install
) and bower.json (bower install
). #275
Source code, test pages, unit tests, and e2e tests were updated for the Esri JSAPI 4.0 release. The <esri-home-button>
directive was given a new bound property (view-ui-position
) to be able to specify its position in a MapView or SceneView. #282
Documentation site examples and patterns pages were updated for the Esri JSAPI 4.0 release. #282
Updated documentation site and README quick start to use Angular v1.5.5. #282
Added popups example page to documentation site. #211
Removed ng-router autoscroll from examples since it is not needed as a temp workaround with Esri JSAPI 4.0 release. #235
Added README links to Dev Summit 2016 presentation slides.
Added on-error
event for view directives, and site uses this to show warning in unsupported (mobile) browsers #242
Property binding patterns page #238
Added esri-webscene-slides directive and related test, example, and patterns pages #254
Added esriRegistry service and related test, example, and patterns documentation. #256
Docs site is more mobile friendly #245 and shows error message when mobile browsers don't have required support for WebGL #250.
Updated quick start in README to include instructions for CDN #252.
Refactored to support JSAPI v4.0+. #198 #206 #220 #221
Added/updated example and test pages to show how to use this with JSAPI v4.0+. #198 #207 #210 #230
Updated examples site and README example to use Angular v1.5.0. #228
Docs show dismissable warning about version with link to previous. #237
Added new esriVectorTileLayer directive along with associated documentation and example page. #182 #173 @snodnipper
Modified/updated example page for the esriVectorTileLayer directive. #177
Added unit and functional tests for new vector tile layer directive #183, #184
esriLoader defaults to loading JSAPI using the same protocol (HTTP or HTTPS) as the page. #179
Use protocol agnostic links to resouces #179 @JamesMilnerUK
Use protocol agnostic links to resouces in test pages #179
esriLoader defaults to loading JSAPI v3.15. Docs site uses JSAPI v3.15 and Angular v1.4.8. #166
Use calcite for docs pages #77, #170
Added a left nav to examples page #98
Replaced About page with a Patterns section #155
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. #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. #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. #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. #54
- Added support for a visible attribute on the esriFeatureLayer directive.
- Lazy loading of JSAPI and associated (minor) updates to esriLoader behavior. #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 v3.14 (#66) and Angular v1.4.4. #67
- Fixed script path (https://github.com/Esri/angular-esri-map/commit/6b4659c2d1d338ba752ddba8827f16fd12b4c330).
Thank you to @willisd2, @ScottONeal, @thinking-aloud, and @jwasilgeo for their contributions and continued patience.
- The esriLoader factory can accept an array of module names and return an array of modules (thanks @trkbrkr2000). #45
- The esriMap directive can accept additional map options (thanks @eas604). #39
- Docs site includes formatted code snippets.
- Docs site uses JSAPI v3.13.
- Dojo loader multipleDefine in docs (thanks @niblicroad). #38
- esrilegend.js was not found in gulp, renamed to esriLegend.js (thanks @eas604) #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.