LocalLayerWidget Version 2.5 and AccessifizrWidget Layer - 09/28/2017

108220
507
01-08-2015 07:55 AM
AdamDrackley
Occasional Contributor III

I've been having a blast playing around with the new Web AppBuilder, and have taken a few cracks at putting together some custom Widgets that I'd like to share with the community.  I hope these can assist in everyone's future Mappmaking endeavours!

LocalLayerWidget

LocalLayerWidget v 2.5

September 28 2017 : LocalLayerWidget v2.5 released:  This major release includes the following enhancements for the widget.  Thanks to everyone who's donated!:

Release LocalLayerWidget 2.5 · cmndrbensisko/LocalLayer · GitHub 

  • Support for 2.5 Release of ArcGIS Web App Builder
  • Support for Custom Layers via Transformers
  • Demos and sample apps
  • Prototype 3D Widget
  • Dynamic GUI changes at runtime and css insertion via odds.json/odds.css
  • And more!

November 14, 2016: LocalLayerWidget v2.2 released:  This major release includes the following enhancements for the widget:

Release LocalLayer v2.2 · cmndrbensisko/LocalLayer · GitHub 

  • Related Table Viewing and Editing
  • ImageService Viewing and Popups
  • WMS Service Viewing and Popups
  • Ability to integrate with the IncidentAnalysis widget
  • Hide Layer In Legend capability added
  • Dynamic mode added, allowing for URL-fed configuration files
  • And more!

May 18, 2016: LocalLayerWidget v.2.0 released:  This substantial change for Web App Builder v.2.0. removes the need to edit any core files in the Web App Builder, unlike previous versions.  A slight change will still be necessary for the AttributeTable widget to work properly with LocalLayerWidget layers.

  • https://github.com/cmndrbensisko/LocalLayer/releases/tag/v2.0
  • Enhancements:
    • Added autorefresh capability for dynamic layers, and sub-minute decimal values can be specified for time.
    • Added support for non-consecutive sublayer numbering to support 10.3.1 mapservices
    • Editor Tracking via an organizational Active Directory instead of ArcGIS Online User now supported
  • Bug Fixes:
    • View Attachments now works for Dynamic Layers
    • Addition of GeoJson layers fixed
    • Fix to MapService sublayer visibility when no sublayers are selected to display by default.

Mar 29, 2016: LocalLayerWidget v.1.3.1 released; Contains bugfixes to v.1.3. related to custom rendering for Feature Layers and toggling sublayer visibility in the LayerList widget.

Mar 22, 2016: LocalLayerWidget v.1.3 is now available!  (Note the version naming change; Version 1.3 refers to its compatibility with v1.3 of the WAB - This is indeed the latest version of the widget as of March 22, 2016).  Be sure to read the github page to see what tweaks need to be made to ensure that everything continues running smoothly in version 1.3 of the Web AppBuilder.

  • Includes support for GeoJSON and WebTileLayers
  • Custom Symbology and Labelling Options for Feature Layers
    • Currently requires the use of playground to generate custom json layer and label styling for Feature Layers.  For more information, please follow the instructions on the Github page.

Feb 10, 2015: LocalLayerWidget v.1.5 is now available!  This release contains full support for adding Tiled layers to your application directly from ArcGIS Server, in addition to the Basemap, Dynamic, and Feature layers available before.  Feel free to grab the widget from our Release page located at https://github.com/cmndrbensisko/LocalLayer/releases.

Feb 2, 2015: LocalLayerWidget v.1.2 is now available!  This release provides a great GUI developed by Robert Scheitlin to more easily add Feature, Dynamic, and Basemap layers to your ArcGIS Web AppBuilder Applications.  Take it for a spin, and please keep us informed of any bugs or desired enhancements through our Github Issue Tracker located at https://github.com/cmndrbensisko/LocalLayerWidget/issues.

Jan 12, 2015: Note that LocalLayerWidget v.1.1 is now available, which provides Click-To-Identify support and the option to add Feature and Basemap layers in addition to Dynamic layers.

The LocalLayer Widget is intended to allow the direct addition of MapServices to an ArcGIS Web AppBuilder application, without needing to wrap the desired services in an ArcGIS Online/Portal Web Map.

https://github.com/cmndrbensisko/LocalLayerWidget

Basically, your basemap will still need to come from Portal/AGOL, but otherwise you just provide direct URLs to your own MapServices in the widget's configuration settings.  The MapServices should load and display as usual in the map, and cooperate with the Legend, LayerList, and Attribute Table widgets. Click-To-Identify functionality won't work currently, though, because the current WAB implementation relies on Portal for all the popup info.  As stated in the January 12th 2015 release, popups are fully customizable.  Note that it's not an in-panel widget, so you'll need to follow a few extra steps in the project's Readme file.

AccessifizrWidget

Let's make Mapps accessible for everyone!  With an eye on WCAG compliance, the Accessifizr Widget is designed to help make web applications keyboard navigable without having to modify core application code and UI.

https://github.com/cmndrbensisko/AccessifizrWidget

Information about how to configure this widget is available in the core Accessifizr.js library project available here‌, but the gist is that you create a JSON-based 'roadmap' detailing the keyboard navigation of your web application, and how it should change in response to users entering modal menus, hitting the escape button, etc.  For applying descriptive alternate text to page elements, the widget leverages dojo's built-in internationalization support to specify multilingual alternate text strings.  The end result is a web app that, hopefully, is a bit easier to use for people with mobility or visual challenges.

507 Replies
BarnabyRockwell
Occasional Contributor III

I see the changes to the Attribute Widget in WD 1.3 as quite problematic, almost as if Esri is moving in a direction that will make LL widget use more troublesome.  Even in WB 1.2, I always have a terrible time getting layers added via LL widget to display in Attribute Table widget.  Most of the time I have to manually edit the Att. widget config and remove all layers before new layers will be added to it automatically in WAB Dev editor.  The Attribute Widget has major problems in that regard, and is exceedingly difficult to use smoothly, at least with LL widget.  I wish Esri would allow complete control over the Att widget, including how/when layers are added and displayed.  Once layers are added, it works great, of course.

0 Kudos
JinZhang
New Contributor III

I downloaded LL 1.2.2 widget and added it to my web appbuilder 1.2 according to the instruction. However I keep getting the following error message when I lick on the widget icon:

TypeError: init.js:199 TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.(…) "TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.

Could someone please provide some guidance how to fix it?

Thanks!

Jin

0 Kudos
MaxMcCosham
New Contributor III

Hello,

I have a couple of quick questions about the LocalLayer widget:

When configuring the popup for a layer, is there a way to turn on the check boxes for all fields at once (to enable all fields in the popup in one click)?

I was also wondering if time-enabled services added using the LocalLayer widget are compatible with the Time Slider widget?

Thanks!

Max

0 Kudos
NicholasBarger
Occasional Contributor III

Is there a version of the LocalLayer Widget that works with WAB1.3?  Will LL1.2 work?

0 Kudos
AdamDrackley
Occasional Contributor III

LL1.2 will work with WAB1.3, with the AttributeTable caveat mentioned a few posts ago.  A 'pure' 1.3 version will be put together once I have a better idea of the scope of changes to make, but it currently seems to be very few.

NicholasBarger
Occasional Contributor III

thanks!

0 Kudos
BarnabyRockwell
Occasional Contributor III

They were few, but critical.  I can't go operational with WD1.3 and the LL widget until a 1.3 version is released (hopefully sooner rather than later), as LL widget 1.2.2 will not function at all for certain services.  Thankfully, Adam has already developed fixes for the issues.

0 Kudos
AdamDrackley
Occasional Contributor III

Just a quick note that a 1.3 version of the LocalLayerWidget has been released on Github,

https://github.com/cmndrbensisko/LocalLayer

The most important change to be made for WAB 1.3 is the following:

1) In \client\stemapp\widgets\AttributeTable\setting\Setting.js, change line 375 from

utils.readConfigLayerInfosFromMap(this.map, true, true) 

to

utils.readConfigLayerInfosFromMap(this.map, false, true) 

Changing that first 'true' to a 'false' will tell the menu to read all layers from the map as normal, instead of just ArcGIS Online layers. Changing the second 'true' to a 'false' will let the Attribute Table include MapNotes layers from AGOL WebMaps.

Some other neat enhancements in this release:

     - A Select-All-Fields button has been added to the Popup Menu,

     - Using Esri's Symbology playground app, Feature Layers can be given custom symbology and custom labelling (with      scale-dependent labels!)

Let me know if any issues are encountered; Hope this is helpful!

     - Adam

RebeccaStrauch__GISP
MVP Emeritus

Adam, I added a link to your comment above, but it would be helpful if you can edit the original post with the information and the update-date.  The comment above will get lost quickly for those just looking for info (if they don't follow the link in the resource list).  Just a suggestion.  Thanks for you work on this widget!

0 Kudos
AdamDrackley
Occasional Contributor III

Thanks Rebecca, I'll be sure to update the original post.

0 Kudos