GithubHelp home page GithubHelp logo

infra-geo-ouverte / igo2 Goto Github PK

View Code? Open in Web Editor NEW
54.0 54.0 31.0 249.61 MB

Assemblage (IGO2) / Open GIS Infrastructure 2.0

Home Page: https://infra-geo-ouverte.github.io/igo2/

License: Other

TypeScript 72.53% JavaScript 0.44% HTML 12.65% SCSS 14.38%
angular gis igo javascript mapping openlayers5

igo2's People

Stargazers

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

Watchers

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

igo2's Issues

Dependencies

Integrate these dependencies:

  • angular material
  • angular flex-layout
  • proj4

Base layout

Do the basic layout whoch includes:

  • A left sidenav
  • A search bar
  • A menu button

Refer to the mockups for more info

Tooltips

Add tooltips wherever needed usging materials tooltips. It would be nice of the i18n stuff was merged before doing that so they could be translated.

Param dans URL : pour déclencher une recherche de localisaton/couche et affichage de couche

Toolbar

Create a toolbar and make it raise an event when a tool is selected. The navigator page should store the selected tool in a redux store and observe it to display the proper tool component.

Shared module

Create a shared module that'll contain eveything shared by multiple modules.

Search result BBOX

If a search result has a bbox, use it to pan and zoom the map instead of using the actual geometry.

search bar behavior

  • At the moment, the menu opens up anytime a key is typed in the search bar. Not all keys should open the menu (i.e. arrows). Also, when erasing the last character with the backscape, the menu should not open.

  • A research is initiated as soon as a character is entered. Wait until 3 characters are entered before doing a research.

  • When selecting text in the search bar and erasing it, the search bar should get the focus. Right now it doesn't because the search list gives the focus to the previoulsy focused element, which, in this case was the selected text (now erased). This happens only when the sidenav is initially closed.

Smoother move/zoom behavior

We could use transitions effect when movin/zooming to a search result. Check what Google does for some inspirations.

Mainly, there seems to be 3 behaviours:

  • Slow pan to a location when it's close
  • Zoom from a location to include another location nearby (very close)
  • Go directly to a location without paning (current behavior) when it's to far away

Messages service and component

Create a message service in which success and error messages will be registered. Also, create a component that'll nicely display them to the user (probably using material toasts).

Search bar focus

The search bar should gain focus whener the search results tool is opened.

support couche WMS / layer / getcapabilities

Support dans la config du JSON : couches WMS par le URL+layer ou le getcapabilities ("protocole": WMS, protocol:getcapabilities, title, scalemin, scalemax, wms_dataurl_href, wms_dataurl_format, active, visible, opacity).

menu à gauche pouvant être expanded pour poste de travail

menu à gauche pouvant être expanded pour poste de travail (pour mieux voir les résultats de recherche quand les résultats sont trop long...) Ne pas appliquer cette possibilité pour le mobile.

Please tell us about your environment:

  • Igo Version:

  • Node:

Ongoing request service and spinner

  • Create a service that'll track the number of ongoing requests.
  • Create a spinner component that'll display itself when the number of ongoing requests is 1 or more.

Note that we'll have to distinguish blocking request from non-blocking requests.

Blocking requests are things like a form submit that should prevent the user from doing other actions.

Unblocking requests are things like search query that should not prevent te user from doing other actions.

For now our current need is to handle non-blocking request. A different component will be needed for blocking requests later and might include a modal backdrop.

A spinner should appear only when a requests is running for more than a few seconds. We do not want a spinner for requests tht are nearly instantaneous.

Mockups

Create mockups for the core functionnalities of IGO2.

Search tool

Create a search tool that'll query a dummy search service, display the results and the selected result's details.

Tool history

Keep track of the tools selected and implement an actual "go back" function that'll select the previous tool.

Configuration du navigateur par un JSON

Permettre la configuration pour chaque contexte et utilisateurs à partir d'un fichier JSON qui va supporter l'ajout de fond de carte, couche WMS, couche WFS, outil/service, déclencheur, style, type d'authentification, etc.

Select a tool

Display in the main container the select tool's info (for now) as and a comtextual header containing the tool's title, a back button and an home button.

Fonction de sauvegarder une vue cartographique par un URL et de la partager au besoin.

Fonction permettant de voir une vue cartographique (niveau de zoom, couche activée) par un URL et de le partager à un autre utilisateur. On pourrait amener le concept de vue cartographie privée, protégée et publique. Seul le créateur peut modifier ses contextes.

Un service API de sauvegarder de vue cartographique devra être développé.

Le concept de vue cartogrpahique pourrait être comme une go-collaboration en temps réel via un WebSocket.

Outil + API de recherche sur couche et localisation

Outil de texte libre permettant de faire une recherche sur plusieurs sources à partir d'un API. Il permettra de chercher sur des couches WMS, ses contextes, ses métadonnées, le service de géolocalisation d'adresse, etc.

Parent-child container

Create a parent/child component that behaves like this:

  • The parent element is set a given height
  • The child element uses the remaining height

Search result marker

Add a search result marker on the map and pan to it or zoom to it, depending of the result is focused or selected.

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.