Giter Club home page Giter Club logo

solutions-data-dictionary-viewer's Introduction

Data Dictionary Viewer

An application that allows viewing and searching of details of a feature Service in an user friendly way.

Features

  • Tree view of your feature service
  • Search for finding things in a service
  • Cards of each aspect of the service

Installation

  1. Make sure you have ArcGIS Experience Builder (ExB) Developer Edition installed on your machine.

  2. Fork and then clone the repo. Copy the folder "service-explorer" into the your <ExB install location>\client\your-extensions\widgets

  3. In a command prompt, navigate to <drive letter>:\<ExB install location>\server. Type npm ci. After it completes, type npm start

  4. Open a second command prompt, navigate to <drive letter>:\<ExB install location>\client. Type npm ci. After it completes, type npm start. Make sure you see the widget copied over in the command window.

  5. Launch ExB in the browser (usually http://localhost:3000/). Create a new app (full screen blank preferred).

  6. On the left hand panel in th widget list, scroll down and locate the Service Explorer widget and add it to the canvas.

  7. On the configuration panel (right side), click the Select Data button. Add a new data source from the slide out panel.

  8. Look up and add data by URL and paste in your feature service rest endpoint (Utility Network Service only currently). Select any one of your layers as the control. You should see the URL textbox filled out with the path.

At this point you have 2 paths to choose.

  1. If you want to run the Data Dictionary hitting your live service, then you are finished with the configuration. Proceed to step 10. If you want to run the Data Dictionary hitting a cache of your service (so it is not dependent on it being live and running), follow these additional steps:
    • Check the Use cache instead of service checkbox
    • Give your cache a name
    • Press the Build Cache
    • This will create an item in your organization (currently org which you signed into Experience Builder). Once the cache is built, access the item in your org and share it publicly.

Optionally, if you want to be able to load other services via a url parameter check the box labeled "allowurlLookup".

  1. On the "General" tab of the configuration panel, define the height and width as 100%.

  2. Save the application and "Preview" or "Publish".

  3. Since this is a custom widget you will need to deploy the application to a web server if you want to share it with your company. To do so, click the 3 ellipses next to the publish button. In the menu, click the Download button.

  4. Extract the download zip into your web server and use a web browser to access it.

Requirements

  • Install Node JS
  • Install ArcGIS Experience Builder
  • Web browser with access to the Internet

Resources

Usage

To load a specific cache, add the cacheId url parameter pointing to the cache item in your AGOL/Enterprise. Make sure to share the item public.

  • ?cacheId=<enterprise/arcgis online item id>

The application loads a default feature service defined in the configuration. You can load your own by adding a url parameter if allowed in the configuration. at the end of the url, type:

  • ?lookup=url to your feature service

If you want a specific card to load on startup, add it as a url parameter with this pattern <name of card>:<type of card>,<name of card>:<type of card>, etc

  • ?startup=Water Device:Layer

Issues

Find a bug or want to request a new feature? Please let us know by submitting an issue.

Contributing

Esri welcomes contributions from anyone and everyone. Please see our guidelines for contributing.

Licensing

Copyright 2016 Esri

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

A copy of the license is available in the repository's license.txt file.

solutions-data-dictionary-viewer's People

Contributors

mikemillergis avatar previnwong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

solutions-data-dictionary-viewer's Issues

Issue when switching from 2 to 1 pane.

When dividing the main stage into 2 panes and adding cards on both sides, all cards included in the right-hand side disappear when switching back to single pane instead of stacking into the single pane.
image
image

Enhancement ideas

General comments: I feel like it is easy to get lost navigating through the cards, so if there is any way to signify what is open, or jump to what is open, that would be helpful.

  • When I choose Anode or Filter in the Subtypes list, it would be helpful to do something to signify that these cards are open, maybe bold the subtypes in the list.
  • In the Filter card, When I expand the Participating Attribute rules section, and click on an Attribute rule, I don't know automatically that it has opened a card because it is out of my sight. Can you either bold or highlight this rule when the card is open or jump to the newly opened card?
  • If there is no option to open a card, remove the open card symbol. (Ex. Water Vault Boundary > Subnetwork name > Domain)
    image

Update the Rules table format

image

Change the header to be non-hoverable and make it look like the other table headers. Split out Rules From and Rules to header text to be outside of the tables.

All TOC elements get highlight at same level

image

If you select the Attribute Rules in the TOC for Crossarm it highlights all Attribute Rules elements in the TOC.

Expected Behavior:
Only the card that has been opened should be highlighted in the TOC.

Display - Increase text size

Increase text size, mostly for the service name. Text size could also be increased for all elements listed in the left pane (Layers, Tables, Relationships, Domains)

Add instructional text to main view.

Add instructional text in the empty view pane (or Main Stage / Main View? - how should we name this/ ).
Use example from Operations Dashboard:
image

Layer navigation issues

Other sections disappear when the Layers section expanded. I think this would happen with any section that is expanded past the bottom of the page. No scrolling option is presented to reach those sections, you must retract the layers before you can scroll to the next section.

  1. Expand Layers in the TOC
  2. Scroll down, all other sections have disappeared.

Asset Type cards - also to include domain information.

Include domains information in “Fields” for each one of the fields. Ideally, full domain values are also provided here rather than the user having to find the domain in the separate Domain section. It appears that this has been added for some fields, but I notice that it is missing for assettypes.
image

Setup could be similar to this:
image

Clean-up names (using Aliases?)

This may not be that simple... but ideally cleanup names. E.g. HydrantMaintenanceInspection > Hydrant Maintenance Inspection

image

Add Asset type card

image

Currently, there is no Asset Type card and this does not fit the current hierarchy we have set for everything else in the TOC.

Categories Card UI

image

The Category cards have a random line above it and the icon to open the card link icon is a bit close to the text.

image
We should update the text when there are no categories.
@avezina What do you think the text should say when there are no categories?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.