Git Product home page Git Product logo

eoxelements's People

Contributors

a-behairi avatar dependabot[bot] avatar github-actions[bot] avatar komninoschatzipapas avatar lubojr avatar radupasparuga avatar robertorthofer avatar santilland avatar silvester-pari avatar spectrachrome avatar srijitcoder avatar stefanbrand avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

eoxelements's Issues

[map-basic] Dynamically refresh vector features

We need some way to dynamically update the vector layer features if a property in the app changes - right now the styling gets only applied on map mounted. One option would be to destroy the layer and recreate the layer, but there might be better options - not sure if the functionality from here is already available in the vuelayers version we're using...

[charts] allow to set time range via prop

Probably it is enough to make the xAxes configurable the same way as the yAxes are (via prop object).
Then, in th xAxes config, one could use e.g.

time = {
            min: "2020-02-01",
            max: "2020-08-01",
          }

Map compare mode

Add a feature to compare maps. To sync two or OL maps it is enough to share their views.

Maybe it could be handled with slots, e.g. slot name="compare-a-b" or slot name=compare-side-by-side. As soon as a map is detected in these slots, it shares the view from the main map.

Another option could be to provide an attribute to link a map with another one, e.g. sync="eox-map#left". This would work for maps that are side by side, but would be harder for A/B compare, as the user would have to provide his/her own A/B slider tool.

Possible comparison modes:

  • A/B(/C) compare with slider(s)
  • left/right(+) compare maps next to each other (share hover position?)
  • overlap compare with opacity?

[charts] Add chart internationalization

Especially for the xAxis showing times, there should be an option to pass a language or a way to replace strings.

Outcome should be that the times in the xAxis should be displayable in english, german, etc.

Interface raises warning during compilation

 WARNING  Compiled with 1 warning                                     8:01:13 AM

 warning  in ./node_modules/@eox/chart/dist/interface.mjs

Critical dependency: Accessing import.meta directly is unsupported (only property access is supported)

[map-basic] display POI on map

  • "hard" code a POI option and pass a png via prop?
  • provide a slot on map-basic to pass a POI element somehow?
  • implement a whole custom layer with the POI as a point?

[map-basic] Mouse zooming does not work properly after migration to vuelayers 0.12.0-rc.21

With migration to Openlayers 6 + Vuelayers 0.12.x allowing non-integer zoom levels, our zooming stopped working properly (zooming happens in very low increments). I have so far been able to investigate following: Concerned component is https://openlayers.org/en/latest/apidoc/module-ol_interaction_MouseWheelZoom-MouseWheelZoom.html

When passing non-default useAnchor parameter as false and constraining zoom levels via constrainResolution - either on view or on MouseWheelZoom control (which yield nicer looking and crisp vector tiles anyway), it works fine and is merged now to main. The problem is that anchor of zooming is set to center of page, which is a relict of past and does not bring a nice user experience.

The improvement would be to investigate and solve why the zooming does not work properly without useAnchor=false

[map-basic] Improve layer definition

Currently, an array of layers is passed to the map-basic component. This requires some settings, like "type", styling for vector layers etc.
Maybe there is a better way to define the layers, especially layer groups.

[map-tooltip] Tooltip re-renders multiple times inside of feature

With the new openlayers version (see also #32), the tooltip behaviour has changed: the hover is somehow now firing mulltiple times, also inside of the same vector feature. Each time the tooltip is rendered and destroyed again, resulting in an unpleasant re-opening when moving the mouse.

Consider replacing vuelayers with native OpenLayers

Currently, the map-basic EOxElement (and the other map-related elements) are relying on VueLayers. Since we often use new OpenLayers features that are not yet implemented in VueLayers, and we also need to access directly the OpenLayers API, it might be better to directly use OpenLayers with a thin layer on top.
This layer should:

  • parse a JSON and configure the map automatically
  • automatically register missing projections
  • automatically fetch WMTS capabilities

List to be continued.

Come up with an automated doc generation flow

Generating the docs currently takes a lot of manual work.
Especially setting up the example *.vue files and copying their code to the markdown file.

Investigate ways to maybe automatically show the example code in the page, without having to manually copy the example!

Also, structuring of doc folders might become more necessary to keep a better overview over the components - maybe a grouping by element would be best.

[charts] Tooltip is not at mouse position

When hovering over the points of a line chart, the tooltip is sometimes at the center line, sometimes somewhere else - would probably be best to always keep it at mouse position?

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.