Yohan Boniface
5d0b7dff4c
chore: review empty_trash command
...
- do not try to print map.id after delete (it's None)
- rely on date instead of minutes/microseconds
2024-12-12 13:47:40 +01:00
Yohan Boniface
ddfef9cbe7
2.8.0a1
2024-12-11 19:25:10 +01:00
Yohan Boniface
8b65674e0a
chore: make S3 dependencies optional
2024-12-11 19:16:17 +01:00
Yohan Boniface
8f9ee89d18
2.8.0a0
2024-12-11 18:40:35 +01:00
Yohan Boniface
5370c9311a
i18n
2024-12-11 18:16:31 +01:00
Yohan Boniface
eebef3420a
feat: add elevation gain and loss in extended properties ( #2343 )
...

2024-12-11 17:56:15 +01:00
Yohan Boniface
80ff4ed899
feat: move labelKey field on the top datalayer form ( #2350 )
...
fix #2331
2024-12-11 17:49:24 +01:00
Yohan Boniface
c41bf9129d
feat: display wikipedia link in OSM popup template when possible ( #2358 )
...

(And move popup related CSS to a dedicated file.)
cf #661
2024-12-11 17:48:40 +01:00
Yohan Boniface
c4ded4404e
feat: display wikipedia link in OpenStreetMap popup template
2024-12-11 16:09:13 +01:00
Yohan Boniface
71389edca7
chore: move popup related CSS to a separate file
2024-12-11 16:08:29 +01:00
Yohan Boniface
8fb3c27445
fixup: properly read gzipped content from S3
...
We did not find a native way to do this from django-storages API.
2024-12-10 19:03:19 +01:00
Yohan Boniface
47524dacce
chore: cache DataLayer._reference_version
...
Prevent to send a HEAD request head time to S3 (when using S3)
2024-12-10 19:03:19 +01:00
David Larlet
834970b725
chore: add command to migrate from fs to S3
2024-12-10 19:03:19 +01:00
David Larlet
14e74d15c1
chore: always gzip geojson in S3 storage
2024-12-10 19:03:19 +01:00
Yohan Boniface
1ac9a06195
chore: do not fail if S3 bucket does not handle versions
...
And mention the need of activating versioning in the doc.
2024-12-10 19:03:19 +01:00
Yohan Boniface
81fa31f50b
chore: add basic tests for S3 storage
2024-12-10 19:03:19 +01:00
Yohan Boniface
a04624c4c8
feat: support storing layer data in S3 like servers
...
fix #2290
2024-12-10 18:51:58 +01:00
Yohan Boniface
82b81706ab
chore: add missing migration for new share_status values
Test & Docs / tests (postgresql, 3.10) (push) Waiting to run
Test & Docs / tests (postgresql, 3.12) (push) Waiting to run
Test & Docs / lint (push) Waiting to run
Test & Docs / docs (push) Waiting to run
2024-12-10 17:54:58 +01:00
Yohan Boniface
c8e171eb91
chore: make both save buttons hidden by default
2024-12-10 17:40:40 +01:00
Yohan Boniface
88ed5af776
Update umap/management/commands/empty_trash.py
...
Co-authored-by: David Larlet <3556+davidbgk@users.noreply.github.com>
2024-12-10 17:31:08 +01:00
Yohan Boniface
c4c874c5c2
chore: delete all datalayers version on delete
2024-12-10 16:51:32 +01:00
Yohan Boniface
cc457e9634
chore: do not use datetime.UTC yet, which is py>=3.11 only
2024-12-10 16:37:38 +01:00
Yohan Boniface
29d243b3c5
feat: move map to trash on delete
...
This also:
- adds a `umap empty_trash` command
- remove the previous purgatory concept
2024-12-10 16:30:23 +01:00
Yohan Boniface
1aaea0beb9
feat: introduce Map.share_status=DRAFT and DELETED
2024-12-10 15:14:12 +01:00
David Larlet
5b32e2ac03
fix( #2355 ): correctly reset Dialog’s returnValue
...
Fixes #2355
2024-12-09 18:16:41 -05:00
Yohan Boniface
89acf8f0ec
feat: add elevation gain and loss in extended properties
2024-12-09 13:14:34 +01:00
Yohan Boniface
0f7b7d94f7
feat: allow to edit datalayer name in datalayers list
...
fix #1995
2024-12-09 13:14:16 +01:00
Yohan Boniface
d8abb28e35
feat: move labelKey field on the top datalayer form
...
fix #2331
2024-12-09 13:13:56 +01:00
Yohan Boniface
d0156bc7a6
fixup: make sure to redraw tile after a .umap import ( #2347 )
...
Test & Docs / tests (postgresql, 3.10) (push) Waiting to run
Test & Docs / tests (postgresql, 3.12) (push) Waiting to run
Test & Docs / lint (push) Waiting to run
Test & Docs / docs (push) Waiting to run
Broken since
20b2290d00
Since started as a simple fix, but:
- I first thought my previous fix of the failing test
`test_import_umap_from_textarea` was not a real fix, so I changed a bit
the way we mock tiles URL in tests, but at the end the test was failing
for good reasons
- since 20b2290d00
the reset of tilelayer
was not called anymore after importing a umap file, so I first made a
quick fix for this
- then I decided to refactor a bit more render and propagate, so
`importRaw` would pass the exact imported properties (instead of trying
to blindly target with some properties), and to remove a call to
`propagate`, which at the end should disappear in favor of `render` with
better targeting
2024-12-09 13:12:56 +01:00
Yohan Boniface
f3c95bd13d
chore: refactor render and propagate to better target UI changes
2024-12-07 15:41:16 +01:00
Yohan Boniface
bf2ed185db
fix: make sure to redraw tile after a .umap import
...
Broken since 20b2290d00
2024-12-07 13:02:04 +01:00
Yohan Boniface
4070da392a
chore: catch all "tile*" URL in playwright
2024-12-07 13:01:41 +01:00
Yohan Boniface
42f74e1554
fix: disable for real dragging the map on mobile when scrollWheelZoom is false
...
Changing map options at this stage is too late.
cf #2340
2024-12-06 11:27:30 +01:00
Yohan Boniface
97ff26b6e8
fix: make that renderUI also recompute scrollWheelZoom
...
Test & Docs / tests (postgresql, 3.10) (push) Waiting to run
Test & Docs / tests (postgresql, 3.12) (push) Waiting to run
Test & Docs / lint (push) Waiting to run
Test & Docs / docs (push) Waiting to run
Otherwise it does not change the behaviour when changing the setting.
2024-12-05 18:39:40 +01:00
Yohan Boniface
b7649a5e47
fix: Avoid map-panning on mobile using two fingers navigation ( #2340 )
...
If scrollWheelZoom option is false we deactivate leaflet dragging
options only on mobile
2024-12-05 18:38:08 +01:00
Yohan Boniface
92431d3b83
fix: do not redraw tilelayers each time a map property is changed ( #2342 )
2024-12-05 18:32:47 +01:00
Yohan Boniface
20b2290d00
fix: do not redraw tilelayers each time a map property is changed
2024-12-05 18:32:05 +01:00
Yohan Boniface
b692cb0cd1
chore: rename Importer.isValid to Importer.canSubmit
...
We are not really checking the validity of the form.
2024-12-05 18:03:30 +01:00
Yohan Boniface
a9b13c709d
feat(importer): check "copy" as default action
...
Let's make it simpler for new comers, and advanced users will know
where to click to change the behaviour.
2024-12-05 18:00:34 +01:00
Yohan Boniface
50efbc25be
feat: add a disabled/active mode to the submit button of import panel
...
cf #2302
2024-12-05 18:00:26 +01:00
Yohan Boniface
d99fe70e36
feat: display importers in a dialog instead of direclty in the form
...
The goal is to keep the form smaller, specifically to keep the
submit button visible as much as possible.
2024-12-05 17:59:03 +01:00
Yohan Boniface
d64cdae987
chore: make that Importer extends WithTemplate
...
Another step is needed to use this.elements instead of this.qs
2024-12-05 17:59:03 +01:00
Yohan Boniface
da86020a0b
feat: add icon-magic in 16-white.svg
2024-12-05 17:59:03 +01:00
Yohan Boniface
7f3726ddd1
feat: display an image from Panoramax in OSM template when tag is defined ( #2338 )
...

I initially just wanted to work on that simple Panoramax feature, but
faced a bunch of bugs!
- one bad var remaining since whatever refactor (and no tests for this
popup template!)
- title was duplicated, since whatever refactor (and not tests for
this…)
- title text was in black on blue background
2024-12-05 17:36:07 +01:00
Yohan Boniface
2c601e483d
feat: allow to configure the default label keys per instance ( #2291 )
...
fix #2289
Let's add "nom" in OSM France and ANCT instances, then, to make users
experience smoother (a lot of imported data contains a "nom" column, and
no "name" nor "title").
2024-12-05 17:35:48 +01:00
Yohan Boniface
171aba6676
feat: add basic autocompletion on inputs expecting a field name ( #2281 )
...
Eg. the labelKey or filterKey input.
2024-12-05 17:32:27 +01:00
Yohan Boniface
82853f7ade
chore: add very minimal test for OSM popup template
2024-12-05 17:29:30 +01:00
Florent Triquet
acbdfda581
fix: Avoid map-panning on mobile using two fingers navigation
...
If scrollWheelZoom option is false we deactivate leaflet dragging options only on mobile
2024-12-05 14:11:05 +01:00
Yohan Boniface
e012d57e5c
feat: make expression persistent in the overpass importer
...
In other words: fill in the "tags" input with the latest
typed expression.
Otherwise, when making tries with overpass imports, one have to
type it again and again (it's available through the autocomplete,
though, but it's not obvious and it's less friendly IMHO).
2024-12-05 12:42:21 +01:00
Yohan Boniface
6a0bc9443b
feat: display an image from Panoramax in OSM template when tag is defined
2024-12-05 11:57:48 +01:00
Yohan Boniface
4949fcb4a4
feat: try to guess RGB from color name when element is not in DOM
...
We often need to compute the text/icon constrast color, but often
the element is not yet in the DOM, so we can't get the background
easily. Let's have a fallback for that instead of trying to have
"load" events everywhere.
2024-12-05 11:53:01 +01:00
Yohan Boniface
430dede0dd
fix: fix broken OSM template
2024-12-05 11:46:52 +01:00
Yohan Boniface
d9c04c7d0a
fix: do not render normal popup title in OSM template
2024-12-05 11:46:26 +01:00
Yohan Boniface
8f7e5c7252
chore: add missing import in cadastrefr
Test & Docs / docs (push) Has been cancelled
Test & Docs / tests (postgresql, 3.10) (push) Has been cancelled
Test & Docs / tests (postgresql, 3.12) (push) Has been cancelled
Test & Docs / lint (push) Has been cancelled
2024-12-03 18:07:26 +01:00
Yohan Boniface
c9d532508d
chore: change cadastrefr buttons ( #2333 )
...
We remove the cancel button and change the accept label.
2024-12-03 17:56:57 +01:00
Yohan Boniface
6221b709f4
fix: importer.map is undefined in geodatamine importer ( #2332 )
...
Broken since the map split I guess.
2024-12-03 17:54:20 +01:00
Yohan Boniface
26ff82e838
chore: change cadastrefr buttons
...
We remove the cancel button and change the accept label.
2024-12-03 16:24:30 +01:00
Yohan Boniface
8fa26a02a2
fix: importer.map is undefined
...
Broken this the map split I guess.
2024-12-03 16:21:37 +01:00
Yohan Boniface
9a900319af
feat: swap import and settings buttons in edit toolbar
...
fix #2297
2024-12-03 15:20:22 +01:00
Yohan Boniface
8569b827ca
fix: compute length of all shapes for MultiLineString (not only first) ( #2310 )
2024-12-02 19:46:45 +01:00
Yohan Boniface
666a92ec44
fix: compute length of all shapes for MultiLineString not only first
2024-12-02 19:39:57 +01:00
Yohan Boniface
2f776dab59
feat: highlight importer URL field when it is fulfilled ( #2323 )
...
Very small step of #2302

2024-12-02 19:04:04 +01:00
Yohan Boniface
bba9487847
feat: highlight importer URL field when it is fulfilled
...
cf #2302
2024-12-02 18:56:24 +01:00
Yohan Boniface
177a4edc1d
fix: broken ctrl+i and ctrl+o ( #2322 )
2024-12-02 17:19:53 +01:00
Yohan Boniface
31c8bf95ba
fix: broken ctrl+i and ctrl+o
2024-12-02 17:10:06 +01:00
Yohan Boniface
f6f42f5e6b
chore: move form css to a separate file
2024-12-02 17:07:06 +01:00
Yohan Boniface
d9998efc0f
Fix reordering of layers ( #2316 )
...
Broken in the map split I guess.
(Only the first line is the fix, the other are just naming, cf the two
commits.)
2024-12-02 15:43:14 +01:00
Yohan Boniface
30d9e43cd4
Add logo for social_core.backends.keycloak.KeycloakOAuth2 ( #2258 )
Test & Docs / tests (postgresql, 3.10) (push) Waiting to run
Test & Docs / tests (postgresql, 3.12) (push) Waiting to run
Test & Docs / lint (push) Waiting to run
Test & Docs / docs (push) Waiting to run
2024-12-02 13:14:06 +01:00
Yohan Boniface
1a88c11289
fix: don't show default label if another is found in features edit
2024-12-02 12:58:19 +01:00
Yohan Boniface
78d6699a81
feat: allow to configure the default label keys per instance
...
fix #2289
2024-12-02 12:58:19 +01:00
Yohan Boniface
35b541f200
chore: better naming in layer reordering
2024-12-02 12:55:57 +01:00
Yohan Boniface
8624209e1b
fix: iter on the right elements after reordering layers
2024-12-02 12:55:57 +01:00
Yohan Boniface
471de78ab3
chore: fix failing test
2024-12-02 12:46:09 +01:00
Yohan Boniface
e33fc787ab
fix: do not fail when navigating with popup arrows in cluster mode ( #2307 )
...
Test & Docs / tests (postgresql, 3.10) (push) Has been cancelled
Test & Docs / tests (postgresql, 3.12) (push) Has been cancelled
Test & Docs / lint (push) Has been cancelled
Test & Docs / docs (push) Has been cancelled
- make sure we have correct `this` in callback
- do not call anymatePan if icon is not added to map (because
clusterized)
2024-11-29 21:43:52 +01:00
Yohan Boniface
ca127c8c3c
fix: do not fail when navigating with popup arrows in cluster mode
...
- make sure we have correct `this` in callback
- do not call anymatePan if icon is not added to map (because clusterized)
2024-11-29 18:32:14 +01:00
David Larlet
b6229a05b7
Better login page styles and incentive ( #2293 )
...
Test & Docs / tests (postgresql, 3.10) (push) Has been cancelled
Test & Docs / tests (postgresql, 3.12) (push) Has been cancelled
Test & Docs / lint (push) Has been cancelled
Test & Docs / docs (push) Has been cancelled
Fixes https://github.com/umap-project/umap-dsfr/issues/21
Rel.
24f23874f7
2024-11-22 09:29:47 -05:00
Yohan Boniface
4350f55e67
fix: do not fail when editing map infos if no licence is set ( #2287 )
2024-11-22 10:17:37 +01:00
Yohan Boniface
735c74dcb3
fix: allow spaces in iframe query strings in HTML formatting ( #2292 )
...
fix #2269
2024-11-22 09:46:56 +01:00
David Larlet
1073fe6142
Better login page styles and incentive
...
Fixes https://github.com/umap-project/umap-dsfr/issues/21
Rel. 24f23874f7
2024-11-21 15:37:21 -05:00
Yohan Boniface
95710a4dab
fix: allow spaces in iframe query strings in HTML formatting
...
fix #2269
2024-11-21 15:21:35 +01:00
Yohan Boniface
f7c1b8f123
fix: do not fail when editing map infos if no licence is set
2024-11-20 16:44:15 +01:00
Yohan Boniface
ccd6a21958
chore: explicitely set postgis as db engine ( #2285 )
...
Test & Docs / tests (postgresql, 3.10) (push) Has been cancelled
Test & Docs / tests (postgresql, 3.12) (push) Has been cancelled
Test & Docs / lint (push) Has been cancelled
Test & Docs / docs (push) Has been cancelled
While working on a helm chart, we do not control the creation of the db
URL, which use "postgres://" instead of "postgis://", so Django does not
set the correct engine. So let's be explicit here.
2024-11-20 10:49:38 +01:00
Yohan Boniface
5cef79d395
i18n
2024-11-20 10:47:28 +01:00
Yohan Boniface
833941a9e6
chore: set an explicit db engine (postgis)
...
While working on a helm chart, we do not control the creation of
the db URL, which use "postgres://" instead of "postgis://", so
Django does not set the correct engine.
2024-11-19 18:44:35 +01:00
Yohan Boniface
4acb20f3bb
feat: add basic autocompletion on inputs expecting a field name
...
Eg. the labelKey or filterKey input.
2024-11-19 13:59:55 +01:00
Yohan Boniface
346597533c
chore: a bit of CSS cleaning in bar.css
2024-11-19 13:16:02 +01:00
Yohan Boniface
5ceda7b2a3
chore: move editToolBar and captionBar to modules
...
This also tries to rework a bit the "reflow" process, which how
to edit the UI when something changes in the data.
The idea is to build the whole HTML, then:
- the `propagate` method tries to change the UI with targetted CSS
selector, but anywhere
- while `render` hide/show some elements
This is not the destination, but just another step. We certainly
need to refactor the SCHEMA to make the next step (as we want to associate
some data change to UI change).
2024-11-18 19:43:28 +01:00
Yohan Boniface
2c64745c52
fix: honour rules
and slideshow
when importing a umap file ( #2270 )
...
Test & Docs / tests (postgresql, 3.10) (push) Waiting to run
Test & Docs / tests (postgresql, 3.12) (push) Waiting to run
Test & Docs / lint (push) Waiting to run
Test & Docs / docs (push) Waiting to run
Side note (for another PR I'd say): this usually occurs on a non saved
map, but in case the map already exist and is in sync mode, should we
sync each property (safer but one call per property) or the whole
properties object (lighter, but may override unwanted things in remote,
and currently there is no method to do so).
2024-11-18 19:41:40 +01:00
Yohan Boniface
4b170df1c2
fix: honour custom labelKey in default popup template
...
The default popup template expects a `name` key, so let's populate
it.
2024-11-16 11:20:23 +01:00
Yohan Boniface
123a6ea508
fix: honour rules
and slideshow
when importing a umap file
...
Side note (for another PR I'd say): this usually occurs on a non
saved map, but in case the map already exist and is in sync mode,
should we sync each property (safer but one call per property)
or the whole properties object (lighter, but may override unwanted
things in remote, and currently there is no method to do so).
2024-11-16 10:30:15 +01:00
Yohan Boniface
7de3ebd2d1
fix: fix event name in drop util ( #2261 )
Test & Docs / tests (postgresql, 3.10) (push) Has been cancelled
Test & Docs / tests (postgresql, 3.12) (push) Has been cancelled
Test & Docs / lint (push) Has been cancelled
Test & Docs / docs (push) Has been cancelled
2024-11-15 18:45:43 +01:00
Yohan Boniface
8c6766157a
chore: add test for CSV latlng parsing with commas
2024-11-15 18:24:57 +01:00
Yohan Boniface
92ef4b25b4
fix: use our fork of csv2geojson to be able to parse lat/lon with commas
2024-11-15 18:10:08 +01:00
Yohan Boniface
4acf0db17f
fix: fix evenet name in drop util
2024-11-15 16:43:58 +01:00
7dadb83ff5
feat(sync): Let the clients set layers UUID
...
This make it possible to synchronize datalayers before their creation on
the server, allowing at the same time to solve issues related to them
not being saved (e.g. duplication of geometries)
We use the DataLayer._referenceVersion to track if a DataLayer has been
saved on the server.
After a save, the _referenceVersion is synched with other peers.
To pass the reference version from the server to the frontend, we have two
options:
- use a header
- populate the `options.version` field
In the case of a GET on a Datalayer, we could not use the `options` scenario
because:
- the value in the file is not up to date (it was the value the client has
before the save)
- the python cannot change it on the fly, as the file is served by nginx
So we decided to keep using a header. But on the map view, we load all
datalayers metadatas in the map options, so here we cannot use the header
scenario, so in this specific case we had to populate `options._referenceVersion`.
At the same time, we also changed:
- Umap.options.umap_id => Umap.id
- DataLayer.umap_id => Datalayer.id
- fixed the version number returned by DataLayer.version_metadata
2024-11-15 15:22:36 +01:00
Yohan Boniface
378e0f3ad3
chore: review with Alexis
2024-11-13 14:27:39 +01:00
Thomas Legay
4bd7bd7d48
Add logo for social_core.backends.keycloak.KeycloakOAuth2
2024-11-12 23:58:30 +01:00
Yohan Boniface
51e41b7bce
chore: remove unused imports from global.js
2024-11-12 15:28:05 +01:00
Yohan Boniface
b49f3d7633
chore: remove old umap.js file
2024-11-12 15:06:34 +01:00
Yohan Boniface
0dbac92853
chore: remove 'postsync' event
2024-11-12 14:50:08 +01:00
Yohan Boniface
6d56bbb5de
chore: refactore LeafletMap.setup/update
2024-11-12 14:36:59 +01:00
Yohan Boniface
e1a24b6180
chore: fix updaters to use umap instead of map and properties instead of options
2024-11-12 13:27:29 +01:00
Yohan Boniface
b0eb263d93
chore: remove use of L.
in umap.js
2024-11-12 11:38:38 +01:00
Yohan Boniface
491d0515cd
chore: fix help module not using umap module
2024-11-12 11:31:14 +01:00
Yohan Boniface
55f04a2f10
chore: remove DomEvent import from umap.js
2024-11-12 11:23:18 +01:00
Yohan Boniface
c952fed96a
chore: split umap.js in two modules
2024-11-12 10:17:12 +01:00
Yohan Boniface
36efa9c4cc
chore: use SAVEMANAGER as a module singleton
2024-10-30 17:14:35 +01:00
Yohan Boniface
488b5882e7
fixup: renaming
2024-10-30 09:43:31 +01:00
Yohan Boniface
7f65b1de57
chore: listen for later _trySave status
2024-10-30 09:42:06 +01:00
Yohan Boniface
ed232e59b8
chore: introduce SaveManager class
...
The last refactor of the save process (0fdb70ce66
)
has introduced a bug: the save flow was not more stopped when a layer fail to save.
This ends with a broken UI, as the map is not dirty anymore, so the save button
is not active anymore, while at least one layer still needs to be saved.
Save can fail in two scenarios:
- there is a conflict (status 412)
- the server is down or as an issue (eg. disk is full)
I tried a more modest scenario (listening for status in map.save and
recallign the map save after a conflict), but this ended with calling
map.save uselessly even more.
So I decided to try this refactor, which also totally remove the useless
map.save we were sending at each save until now.
2024-10-28 18:15:18 +01:00
Yohan Boniface
bcea419bfd
2.7.1
2024-10-25 15:44:52 +02:00
Yohan Boniface
b36c03a203
fix: prevent feature.edit to be called twice on polygon/line end edit
...
When finishing drawing a polygon/line, Leaflet.Editable will send
both `editable:drawing:end` and `editable:drawing:commit`. In normal
flow, we only need to listen to the later, and we only need to
listen for the former in the case of pressing escape while drawing.
2024-10-24 21:07:58 +02:00
Yohan Boniface
71b55e7759
fix: always unset editedFeature on editPanel close
...
And only this panel.
This was creating a weird bug, steps to reproduce:
- create a marker
- shift-click on the marker to edit the layer (so without explicitly
closing the panel)
- try to type the layer name: the panel would close
This is also because currently the schema and render() are too
dump, and when any `name` is changed then the `data` reflow is
called, while it should not when editing the datalayer name.
We want to:
- have more targeted schema
- have more specific reflow in render
But that's for other PRs!
2024-10-24 19:22:46 +02:00
Yohan Boniface
023f48ee94
chore: use shutil.move instead of Path.rename to move to purgatory ( #2236 )
...
Otherwise it will fail if src and dest are not on the same FS.
2024-10-24 19:18:21 +02:00
Yohan Boniface
bdf0bee156
2.7.0
2024-10-24 18:03:11 +02:00
Yohan Boniface
9fe96a98d1
i18n
2024-10-24 17:51:20 +02:00
Yohan Boniface
bda1984f44
chore: explicitely add geojson extension when downloading a layer ( #2228 )
...
This was added by the browser I think, but let's be explicit, just in
case.
cf
https://github.com/umap-project/umap/pull/2224#pullrequestreview-2382243375
2024-10-24 17:47:11 +02:00
Yohan Boniface
2dcd61a96d
Allow to run umap with asgi ( #2209 )
...
Follow up of #1701
cf #2174
2024-10-24 17:46:33 +02:00
Yohan Boniface
455ddd455d
fix: do not try to create legend for non loaded classified layer ( #2234 )
...
fix #2232
A classified layer needs to have compiled the data to known its
classes/categories.
This commit review the way we build the legend: instead of creating with
the whole caption panel, we just set a container and we populate it
later. This opens the door for live changing the legend when editing the
layer.
But we have to clarify that "reactive" pattern at some point, as we have
some concurrent pattern laying around: the `render()`, which coupled
with the schema and this is nice, but for now it's a bit rough (changing
the whole UI each time); the `propagate` way, which is more specific,
but not coupled to the schema; the `dataChanged`; and the `onDataLoaded`
now, which is a bit different, as it's about the data being loaded, not
changed/modified, but for the DOM it may at the end be the same. Well,
food for thoughts…
2024-10-24 17:39:12 +02:00
Yohan Boniface
200e12e0d9
chore: apply Biome hints
...
Co-authored-by: Alexis Métaireau <alexis@notmyidea.org>
2024-10-24 12:39:22 +02:00
Yohan Boniface
3477be99b8
fix: do not try to create legend for non loaded classified layer
...
fix #2232
A classified layer needs to have compiled the data to known its
classes/categories.
This commit review the way we build the legend: instead of creating
with the whole caption panel, we just set a container and we populate
it later. This opens the door for live changing the legend when
editing the layer.
But we have to clarify that "reactive" pattern at some point, as we
have some concurrent pattern laying around: the `render()`, which
coupled with the schema and this is nice, but for now it's a bit rough
(changing the whole UI each time); the `propagate` way, which is
more specific, but not coupled to the schema; the `dataChanged`; and
the `onDataLoaded` now, which is a bit different, as it's about the
data being loaded, not changed/modified, but for the DOM it may at
the end be the same. Well, food for thoughts…
2024-10-23 18:56:26 +02:00
45f1221d00
Use fake timers on the HLC tests
2024-10-22 13:50:46 +02:00
8eae7990dd
Add a fieldInSchema
utility function.
...
Check that fields are present in the schema before calling render
2024-10-22 13:50:46 +02:00
4f0404149e
feat(sync): Display the number of connected peers in the interface.
2024-10-22 13:50:46 +02:00
Yohan Boniface
c6c255e216
chore: use shutil.move instead of Path.rename to move to purgatory
...
Otherwise it will fail if src and dest are not on the same FS.
2024-10-22 12:14:04 +02:00
Yohan Boniface
d2832be6d5
fix: always call propagate at end of save ( #2226 )
...
Otherwise the renderEditToolbar will reset name and all.
fix #2225
2024-10-21 16:40:01 +02:00
Yohan Boniface
e0e7e0961c
chore: explicitely add geojson extension when downloading a layer
...
This was added by the browser I think, but let's be explicit, just
in case.
2024-10-21 16:38:08 +02:00
Yohan Boniface
a2af7171d9
chore: call render at end of save
...
All changes at some point should call render, and render should
become more subtle to update only the needed part according to
the actual changes
2024-10-21 16:25:07 +02:00
Yohan Boniface
132be80a48
chore: remove postsync in captionBar and let map.propagate do its job
2024-10-21 16:05:26 +02:00
Yohan Boniface
ae79daec7e
fix: always call propagate at end of save
...
Otherwise the renderEditToolbar will reset name and all.
fix #2225
2024-10-21 15:41:30 +02:00
Yohan Boniface
e100809d24
fix: use correct icon for layer download advanced action ( #2224 )
...
Replace #2221
2024-10-21 12:15:05 +02:00
Yohan Boniface
c74971bc0e
chore: move pydantic and websocket in sync dependencies target
2024-10-21 11:50:10 +02:00
Yohan Boniface
9520a99d11
feat: add importer for French cadastre
2024-10-21 11:28:15 +02:00
Yohan Boniface
a1a4904f02
fix: use correct icon for layer download advanced action
2024-10-21 10:41:41 +02:00
Yohan Boniface
e0da3163ec
fix: fix dispeared icons from panel titles
2024-10-18 12:08:28 +02:00
Yohan Boniface
0b23f1acd1
2.7.0b3
2024-10-16 19:55:32 +02:00
Yohan Boniface
0b6c66a841
i18n
2024-10-16 19:51:20 +02:00
Yohan Boniface
ab703e081b
feat: add a global toolbox in browser ( #2160 )
...
fix #2097
cf #1500

This is an alternative proposal for #2097 :
- adding the button near the "Filter" toggle was a bit ugly, CSS/HTML
talking, because this "Filters" box is a details/summary
- I thought that other needs could live in the same place: a link to
download the filtered/visible data, and a button to show the map data
extent
The "toggle all" button works this way:
- if one or more layers are shown, it will hide those layers
- otherwise it will show all layers
I've preferred not to change the button icon according to map state,
because I didn't find a reliable way to do so, thus I'm afraid to have
inconsistency, but I can't try harder if needed.
Related: I'm thinking of adding a "Download" button for each layers, as
it's a request that comes quite often.
@Aurelie-Jallut could you have a look ? :)
2024-10-16 19:45:56 +02:00
Yohan Boniface
47364904bd
chore: simplify contextmenu items ( #2216 )
...
Do not show generic map items when clicking on a feature.
cf #2109
Click on map:

Click on feature:

2024-10-16 19:25:06 +02:00
Yohan Boniface
f8e53e7c48
feat: only add visible markers (and tooltips) to DOM ( #2204 )
2024-10-16 19:20:05 +02:00
Yohan Boniface
d8383dafba
fix: do not show browser counter when layer is empty or not loaded
...
fix #2215
2024-10-16 09:48:03 +02:00
Yohan Boniface
61c3be59a8
chore: use colorbrewer as ES module
2024-10-16 09:01:31 +02:00
Yohan Boniface
8daf4cd652
chore: bump and pin front facing JS deps
2024-10-15 11:28:39 +02:00
Yohan Boniface
966c74b85b
chore: simplify contextmenu items
...
Do not show generic map items when clicking on a feature.
cf #2109
2024-10-15 10:32:07 +02:00
Yohan Boniface
b3e88b6096
chore: make daphne/asgi optional for now
2024-10-14 12:10:13 +02:00
aa246aaf05
WIP: Add an async route for WS
2024-10-14 12:04:46 +02:00
71943c0ab3
chore: use asgi rather than wsgi
...
By relying on Django Channels and Daphne.
This requires a change in how the application is deployed to take that into account.
2024-10-14 12:04:44 +02:00
Yohan Boniface
a2b8145cde
fix: make sure maps of demo instances of uMap are no indexed ( #2203 )
...
fix #2201
2024-10-10 21:00:27 +02:00
Yohan Boniface
ca3451ce14
chore: do not try to remove an icon not in DOM
...
This occurs when using cluster, which already add/remove markers
2024-10-10 19:50:40 +02:00
Yohan Boniface
c6da1f91cf
feat: only add visible markers (and tooltips) to DOM
2024-10-10 19:50:40 +02:00
Yohan Boniface
8635ebf330
chore: use pytest-rerunfailed ( #2205 )
...
I first thought about marking test as flaky one by one, but my
impression is mainly all playwright test can become flacky, and we
actually only see some as their appear in the list.
2024-10-10 19:48:54 +02:00
Yohan Boniface
7aa445f01b
Update umap/templates/umap/map_detail.html
...
Co-authored-by: David Larlet <3556+davidbgk@users.noreply.github.com>
2024-10-10 11:00:46 +02:00
Yohan Boniface
60c2b07f9b
fix: honour carriage returns in permanent credits
...
fix #2197
2024-10-10 10:33:12 +02:00
Yohan Boniface
1be7c8d3a9
chore: use pytest-rerunfailed
2024-10-10 10:31:25 +02:00
Yohan Boniface
97d2ebae34
fix: make sure maps of demo instances of uMap are no indexed
...
fix #2201
2024-10-09 10:15:54 +02:00
Yohan Boniface
b7ee50980f
chore: deactivate contextmenu and shortcuts in map preview ( #2199 )
...
Contextmenu and keyboard shortcuts open controls, which are not fully
initiated when in mode `noControl`, which is the case for preview.
2024-10-07 22:28:30 +02:00
David Larlet
76ebe1c0ea
tests: use at.least
to compare dates on the hlc tests. ( #2196 )
...
Should fix [this
error](https://github.com/umap-project/umap/actions/runs/11165503827/job/31037336947?pr=2188 )
2024-10-07 08:20:58 -04:00
Yohan Boniface
e7ed14f216
chore: deactivate contextmenu and shortcuts in map preview
...
Contextmenu and keyboard shortcuts open controls, which are not
fully initiated when in mode `noControl`, which is the case for
preview.
2024-10-07 12:27:33 +02:00
Yohan Boniface
4b66e0fa83
chore: add border top to browser toolbox
2024-10-07 11:57:37 +02:00
Yohan Boniface
36afe0ead5
chore: open dropdown on download click in browser
...
Instead of switching context and opening the share panel.
2024-10-07 11:46:01 +02:00
Yohan Boniface
2923e1ca51
feat: add a global toolbox in browser
...
fix #2097
cf #1500
2024-10-07 10:20:17 +02:00
Yohan Boniface
2ca6ffd5ca
2.7.0b2
2024-10-06 10:20:18 +02:00
Yohan Boniface
581ec242b8
chore: always insert contextmenu on map container parent
...
offsetParent will return whatever positionned parent element, so
when clicking on a marker it will be the marker container.
And we cannot add the contextmenu inside the map container, as it
the focusout element will be sent before the click action happen
on any item of the contextmenu.
2024-10-06 09:46:23 +02:00
37ffea97a9
FIXUP: adapt the tests to a slow CI
2024-10-05 21:16:45 +02:00
Yohan Boniface
3c0d2b79ef
fix: allow to call contextmenu with given positions
2024-10-05 11:26:05 +02:00
Yohan Boniface
c844e1c03d
chore: use position: fixed for contextmenu
2024-10-05 11:22:02 +02:00
Yohan Boniface
70f06e7852
fix: insert contextmenu in the offsetParent
...
Otherwise when parent is a dialog, if the the contextemenu is in
the body, it will be below the dialog forever
2024-10-05 11:08:50 +02:00
Yohan Boniface
89c13a3b7e
fix: window.offsetHeight does not means anything
2024-10-05 11:08:36 +02:00
Yohan Boniface
42e7fb8dae
chore: pass event to ContextMenu.open
2024-10-05 10:41:33 +02:00
Yohan Boniface
c4b80afb15
fix: simpler way to deal with positionning contextmenu
...
Use pageX/Y from the begginning instead of recomputing it later.
2024-10-05 10:38:51 +02:00
Yohan Boniface
cba0af96f6
fix: fix contextmenu positionning when map is not full screen
2024-10-05 10:02:41 +02:00
Yohan Boniface
c90618a248
fix: do not show separator in contextmenu when nothing before
2024-10-05 09:09:30 +02:00
979d34f3fa
tests: use at.least
to compare dates on the hlc tests.
2024-10-04 22:46:33 +02:00
Yohan Boniface
16b759973b
2.7.0b1
2024-10-04 19:31:57 +02:00
Yohan Boniface
8788f97791
2.7.0b0
2024-10-04 19:18:07 +02:00
Yohan Boniface
a8d04a6abb
i18n
2024-10-04 18:38:00 +02:00
Yohan Boniface
f9cf923684
feat: add a profile drop-down menu ( #2194 )
...
fix #2115
2024-10-04 18:26:49 +02:00
Yohan Boniface
8d59220d05
fix: make sure anonymous is owner at create ( #2189 )
...
The tricky thing is that the Map.is_owner() method check for cookies on
the request, but at create this cookie is not set yet on the request, so
we have to deal with an exception here.
fix #2176
2024-10-04 17:55:29 +02:00
Yohan Boniface
21be2e4fd0
fix: hide "my profile" from dropdown menu if ALLOW_EDIT_PROFILE=False
2024-10-04 17:54:13 +02:00
Yohan Boniface
6876bb1ba5
fix: listen just once for escape key in contextmenu
2024-10-04 17:44:50 +02:00
Yohan Boniface
1029c2655e
wip: add a profile drop-down menu
...
fix #2113
2024-10-04 17:44:50 +02:00
Yohan Boniface
de93446af2
clean: remove zoom in and out from contextmenu ( #2195 )
...
Let's make it smaller (unless proven otherwise!).
2024-10-04 17:43:23 +02:00
Yohan Boniface
03ae31c18b
chore: remove map.dirty_datalayers
...
Let's try to make it simpler.
map.datalayers stores all datalayers
map.datalayers_index the non deleted ones sorted
2024-10-04 17:35:35 +02:00
Yohan Boniface
a35b37f423
chore: use map getter instead of getMap in permissions
2024-10-04 17:35:35 +02:00
Yohan Boniface
0d7c6e451d
chore: new strategy to update map name when editing it
...
Also propagate share_status (this may be moved to permissions)
2024-10-04 17:35:33 +02:00
Yohan Boniface
0fdb70ce66
chore: review save strategy
...
All is now orchestrated from a single method, instead of chaining
calls.
2024-10-04 17:34:59 +02:00
Yohan Boniface
73c83cfa86
chore: always return user infos on map save
2024-10-04 17:34:59 +02:00
Yohan Boniface
13a7a2257d
fix: do not fail in autocomplete if on_unselect is undefined
2024-10-04 17:34:59 +02:00
Yohan Boniface
ff5195a787
fix: make sure anonymous is owner at create
...
The tricky thing is that the Map.is_owner() method check for cookies
on the request, but at create this cookie is not set yet on the
request, so we have to deal with an exception here.
fix #2176
2024-10-04 17:34:59 +02:00
Yohan Boniface
ebd3896e91
chore: replace native confirm by our styled ones
2024-10-04 17:34:20 +02:00
Yohan Boniface
9b29b705da
clean: remove zoom in and out from contextmenu
...
Let's make it smaller (unless proven otherwise!).
2024-10-04 17:32:39 +02:00
Yohan Boniface
4940f6c329
test: fix playwright selector
2024-10-04 17:31:05 +02:00
Yohan Boniface
c8ffe4273f
fix: allow to draw new proprotional circles and to drag them ( #2172 )
...
The main issue was because we overrided the `getLatLngs` function in our
PointMixin class, so I changed the way feature get the latlngs from the
UI classes. Plus getting CircleMarker to inherit more from Marker,
through PointMixin.
fix #2171
2024-10-04 16:43:49 +02:00
Yohan Boniface
4b4546991a
chore: display user maps in admin and add in csv export ( #2169 )
...
maps are owned maps + maps as editor
cf https://github.com/umap-project/umap/pull/2131#discussion_r1772775039
2024-10-04 16:42:53 +02:00
Yohan Boniface
5d5be52337
feat: delete datalayer's files on delete ( #2158 )
...
Until now, uMap was not deleting files on delete, which can increase
file storage a lot after some time.
The files are not deleted, but moved to a "purgatory" folder, from where
they can be deleted after some time.
2024-10-04 16:41:11 +02:00
Yohan Boniface
91800d104d
fix: polygon with interactive=false was still interactive ( #2151 )
...
This bug has been introduced when spliting features, as we now only set
the Leaflet Polygon options with setStyle, will the `interactive` option
is only used in the init by Leaflet.
See https://github.com/Leaflet/Leaflet/pull/9475
2024-10-04 16:36:21 +02:00
Yohan Boniface
d95f06abab
chore: use our own contextmenu ( #2109 )
...
Let's start from here to clean the contextmenu items.
Current status:
### Some entries are generic, and always present:
In preview mode:

In edit mode:

### Some entries are specific to a clicked feature
In preview mode (Marker):

In edit mode (Marker):

In preview mode (Polygon):

In edit mode (Polygon):

In preview mode (Line):

In edit mode (Line):

@Aurelie-Jallut Do you want to make suggestion on what to show or not in
this menu, depending on the context (feature or not, preview or edit
mode) ?
2024-10-04 16:34:06 +02:00
Yohan Boniface
f1619579a4
feat: allow to search by code INSEE in communes importer
2024-10-03 18:03:43 +02:00
Yohan Boniface
c2833987b7
fix: remoteData helpEntries were not on the right format
...
Should be now an array (not guessing anymore).
2024-10-01 08:55:58 +02:00
0a1d98b146
ci: Skip intermittent-failing tests when on the CI.
...
A few tests have been failing randomly, leading to developers not having
a lot of trust in the CI, and having to retrigger the runs.
Here is the list of tests:
- `test_should_honor_toZoom`
- `test_default_view_locate`
- `test_umap_import_from_textarea`
This skips these tests when running in the CI, by looking at the `CI`
environment variable, set by Github Actions [0]
[0] https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/store-information-in-variables#default-environment-variables
2024-09-27 18:26:47 +02:00
5485fb99ab
feat(sync): Send remote operations to peers when they join.
...
- Operations are now stored locally in memory. All operations are tied
to an HLC (Hybrid Logical Clock), making it possible to order them
concistently.
- Messages are handled in their `on*` methods, leading to a clearer
implementation.
- When a new peer joins, it asks a random peer for the list of
operations, and re-apply them locally.
- Messages types names have been updated to follow CamelCase, and to be
similar across the client and the server.
- Pass `sync=False` to `makeFeature` in the updaters, to avoid
generating duplicate operations on message retrieval.
2024-09-27 18:26:47 +02:00
Yohan Boniface
7dbb3e0b9a
fix: allow to draw new proprotional circles and to drag them
...
The main issue was because we overrided the `getLatLngs` function
in our PointMixin class, so I changed the way feature get the latlngs
from the UI classes.
fix #2171
2024-09-27 08:58:08 +02:00
Yohan Boniface
5836ae859a
Merge pull request #1670 from umap-project/clean-tilelayer-command
...
chore: add clean_tilelayer management command
2024-09-26 09:20:54 +02:00
Yohan Boniface
3719e88643
chore: display user maps in admin and add in csv export
...
maps are owner maps + maps as editor
cf https://github.com/umap-project/umap/pull/2131#discussion_r1772775039
2024-09-24 20:07:03 +02:00
Yohan Boniface
2d905bd048
chore: use GeoRSStoGeoJSON as ES module
2024-09-24 10:24:50 +02:00
Yohan Boniface
49eb121c68
feat: delete datalayer's files on delete
...
Until now, uMap was not deleting files on delete, which can increase
file storage a lot after some time.
The files are not deleted, but moved to a "purgatory" folder, from
where they can be deleted after some time.
2024-09-23 09:56:20 +02:00
Yohan Boniface
6618ff5648
fix: polygon with interactive=false was still interactive
...
This bug has been introduced when spliting features, as we now
only set the Leaflet Polygon options with setStyle, will the
`interactive` option is only used in the init by Leaflet.
See https://github.com/Leaflet/Leaflet/pull/9475
fix #2149
2024-09-20 10:21:57 +02:00
Yohan Boniface
051dd90450
fix: editing coordinates manually would not be saved
...
The primary coordinates is a two-elements Array in Point.coordinates,
but FormBuilder does not know how to edit an Array, so we edit the
`ui._latlngs` instead.
The proper fix would have been to teach FormBuilder how to edit an
Array, but that path is way longer, and given we plan to refactor
it totally, let's wait for that.
fix #2144
2024-09-17 08:57:10 +02:00
Yohan Boniface
8ecc231816
i18n
2024-09-13 19:09:17 +02:00
David Larlet
52e0259a64
Merge pull request #2121 from umap-project/permissions-revamp
...
Chore: rework permissions panel
2024-09-13 12:32:49 -04:00
David Larlet
d159fdc2cb
feat: add a setting to prevent users from editing their profile
...
In some situations, the profile comes from the OAuth provider and shouldn’t be modified by users.
2024-09-12 14:23:50 -04:00
Yohan Boniface
b48f911bf2
chore: revamp permissions panel
2024-09-12 17:15:43 +02:00
Yohan Boniface
575b563c67
chore: remove unused class umap-facet-search
from css
2024-09-12 17:15:43 +02:00
Yohan Boniface
6d777d9d46
feat: use a copiable input for secret edit link in permissions panel
2024-09-12 17:15:41 +02:00
Yohan Boniface
eda1223516
fix: do not show "Attache to my account" button if no logged in user
2024-09-12 16:53:27 +02:00
Yohan Boniface
445127254b
fix: do not show "Layers" title if not layers in permissions panel
2024-09-12 16:53:27 +02:00
Yohan Boniface
289bef7ba8
Merge pull request #2132 from umap-project/fix-poly-icon-alignement
...
fix: icon alignement in browser, and user icon-xxx class
2024-09-12 15:34:12 +02:00
Yohan Boniface
9848abb3b1
wip: use model specific filename in admin CSV export
2024-09-12 15:23:26 +02:00
Yohan Boniface
ba01f09476
fix: icon alignement in browser, and user icon-xxx class
2024-09-12 15:04:13 +02:00
Yohan Boniface
33c6ee7925
chore: add clean_tilelayer management command
...
It can be useful to manage the tilelayer registered in the map
settings in db.
2024-09-12 11:52:56 +02:00
Yohan Boniface
17b67cc5de
feat: very minimal CSV export of users and maps in admin
...
fix #2020
2024-09-12 10:30:35 +02:00
Yohan Boniface
010329dce5
2.6.3
2024-09-11 18:36:38 +02:00
Yohan Boniface
409ec13163
i18n
2024-09-11 15:44:33 +02:00
Yohan Boniface
51c1fb0a8f
Merge pull request #2129 from umap-project/fix-cluster-browser-view
...
fix: clicking feature in the browser would not open popup in cluster
2024-09-11 15:30:37 +02:00
Yohan Boniface
f232bf476c
fix: clicking feature in the browser would not open popup in cluster
...
fix #2127
2024-09-11 14:54:54 +02:00
Yohan Boniface
c804a01bfb
fix: fix merge lines on vertex click
...
fix #2125
2024-09-11 11:39:01 +02:00
Yohan Boniface
cd4b2189ee
fix: delete shape from edit toolbar
...
fix #2124
2024-09-11 10:01:39 +02:00
Yohan Boniface
bdcbd09064
2.6.2
2024-09-10 21:37:40 +02:00
Yohan Boniface
7e8800cd44
fix: german translation breaking home page
2024-09-10 21:36:39 +02:00
Yohan Boniface
f28ec81c36
2.6.1
2024-09-10 18:07:51 +02:00
Yohan Boniface
5f67c9c229
fix: do not call teams.all() on anonymous user
...
In the same move, refactor the can_edit/_view/_delete functions to
only take the request, which is what really happen in the code, and
adapt the test in that way.
2024-09-10 17:56:14 +02:00
Yohan Boniface
6194bb8258
2.6.0
2024-09-10 16:31:59 +02:00
Yohan Boniface
e4202eb609
i18n
2024-09-10 16:31:49 +02:00
Yohan Boniface
c58964d797
fix: filter feature by displayName by default
...
fix #2106
2024-09-10 10:02:41 +02:00
Yohan Boniface
9d727bd01f
wip: use our own contextmenu
2024-09-09 15:53:55 +02:00
Yohan Boniface
8c05937075
2.6.0b2
2024-09-06 17:25:31 +02:00
Yohan Boniface
b218fc572b
i18n
2024-09-06 17:24:51 +02:00
Yohan Boniface
ae09c343d1
Merge pull request #2107 from umap-project/visible-vertexmarkers
...
wip: only show visible vertexmarkers and do not show when there are too much
2024-09-06 17:21:03 +02:00
Yohan Boniface
dc0cf50513
chore: bump Leaflet.Editable to 1.3.0
2024-09-06 17:01:07 +02:00
Yohan Boniface
7c94cc05ad
Merge pull request #2105 from umap-project/explicit-empty-rule
...
feat: add explicit empty/not empty check in conditional rules
2024-09-06 16:47:37 +02:00
Yohan Boniface
6d21d47af9
feat: add explicit empty/not empty check in conditional rules
...
Also fix boolean behaviour (only true was working)
2024-09-06 16:47:19 +02:00
Yohan Boniface
e0b8e88de4
Merge pull request #2112 from umap-project/bottom-controls-zindex
...
fix: move bottom controls below panels
2024-09-06 16:37:34 +02:00
Yohan Boniface
d019a260c0
fix: move bottom controls below panels
...
fix #2103
2024-09-06 16:29:40 +02:00
Yohan Boniface
c879914eb8
fix: feature.isOnScreen is now passing the "bounds" argument
...
Otherwise, when using the browser, we'll end up using
this._map.getBounds(), but in this case the UI may not be in the
map (may be filtered).
2024-09-06 16:08:15 +02:00
Yohan Boniface
b8abc03684
feat: add a "Copy as GeoJSON" entry in the contextmenu
2024-09-05 17:57:23 +02:00
Yohan Boniface
a67c800ee0
wip: add integration test coverring huge path geometry editing
2024-09-05 17:54:01 +02:00
Yohan Boniface
76c3f87f67
wip: only display visible vertexmarker and do not display if too much
...
This should improve the edit experience with huge geometries. So one
can still edit the properties event if the path is big, and should
zoom in to allow the geometry to be editable.
2024-09-05 17:17:35 +02:00
Yohan Boniface
5010a09cd8
2.6.0b1
2024-09-04 16:06:08 +02:00
Yohan Boniface
a25dc0c5a1
i18n
2024-09-04 16:05:23 +02:00
Yohan Boniface
95cb396459
Merge pull request #2104 from umap-project/fix-anonymous-author
...
fix: do not try to display author name/url for anonymous maps
2024-09-04 16:01:30 +02:00
Yohan Boniface
ff014429b9
Merge pull request #2102 from umap-project/edit-circlemarker-properties
...
fix: do not fail when trying to edit a circlemarker
2024-09-04 16:00:55 +02:00
Yohan Boniface
31371cc38c
Merge pull request #2101 from umap-project/datalayers-control-expanded-with-onloadpanel
...
fix: make sure datalayersControl=expanded does not override onLoadPanel
2024-09-04 15:55:27 +02:00
Yohan Boniface
1d7ad0b4d1
Merge pull request #2099 from umap-project/register-fa-ir
...
fix: register fa-ir in LANG_INFO
2024-09-04 15:46:44 +02:00
Yohan Boniface
0d5f0b175a
fix: do not try to display author name/url for anonymous maps
2024-09-04 15:39:48 +02:00
Yohan Boniface
71ceb87fe2
fix: make sure datalayersControl=expanded does not override onLoadPanel
...
This value of datalayersControl exists for retrocompat only (it's now
replaced by onLoadPanel=browser)
2024-09-04 15:00:14 +02:00
Yohan Boniface
4f9b4a80c3
fix: do not fail when trying to edit a circlemarker
...
And for now open the properties panel (geometry/position may be
edited later, when Leaflet.Editable knows about CircleMarker)
2024-09-04 14:36:03 +02:00
Yohan Boniface
c976a86982
fix: make sure to compare comparable values in ternary operators
...
Comparing `"null"` (in the HTML) and `null` (in the JS) was returning
false.
2024-09-04 11:32:14 +02:00
Yohan Boniface
0be0a3d1a9
feat: display language code in footer language selector
2024-09-04 11:31:56 +02:00
Yohan Boniface
9bde88a513
fix: register fa-ir in LANG_INFO
...
fix #2086
2024-09-04 11:31:56 +02:00
Yohan Boniface
ee7439a0f9
fix: tilelayer plus icon where never displayed
...
We were testing the length of the `_layers` property, which where
sliced to `maxShown` before…
2024-09-04 11:23:20 +02:00
Yohan Boniface
c33adcf0e7
Merge pull request #2096 from umap-project/fix-more-button-icon
...
fix: correct position for more button icon
2024-09-03 15:44:12 +02:00
Yohan Boniface
f986ebf3b3
fix: correct position for more button icon
2024-09-03 15:43:19 +02:00
Yohan Boniface
c321a9e70d
Merge pull request #2095 from umap-project/fix-tilelayer-plus-button
...
fix: only show + button in tilelayer switcher when more available
2024-09-03 15:35:08 +02:00
Yohan Boniface
ca75955ca9
fix: only show + button in tilelayer switcher when more available
2024-09-03 15:34:15 +02:00
Yohan Boniface
e9b17ea9f2
feat: make boundary persistent in overpass importer
2024-09-03 15:29:40 +02:00
Yohan Boniface
f3f61f5d98
feat: add more context in overpass importer autocomplete results
2024-09-02 17:01:04 +02:00
Yohan Boniface
fe36f44d1a
2.6.0b0
2024-08-30 20:50:33 +02:00
Yohan Boniface
661c57ebc8
i18n
2024-08-30 20:29:27 +02:00
Yohan Boniface
2b3f0b00fb
Merge pull request #2055 from umap-project/dependabot/pip/django-5.1
...
chore: bump django from 5.0.8 to 5.1
2024-08-30 20:28:28 +02:00
David Larlet
5ca26335d4
exp: try to increase the number of process passes
2024-08-30 20:16:51 +02:00
David Larlet
aeee58b42a
Merge pull request #2062 from umap-project/user-groups
...
feat: add teams
2024-08-30 13:05:02 -04:00
David Larlet
c6ebfd4363
fix: proper way to test if we have a user
2024-08-30 12:37:48 -04:00
David Larlet
2a2a4be357
lint: fix imports order
2024-08-30 12:34:04 -04:00
David Larlet
5c31014086
tests: check collectstatic generates files with hash
2024-08-30 12:32:10 -04:00
David Larlet
11d3152682
chore: display user’s teams with a table
2024-08-30 11:12:36 -04:00
David Larlet
426780af2c
chore: clean up CSS for buttons in content pages
2024-08-30 11:03:00 -04:00
David Larlet
a202ed4767
chore: add Team to django admin
2024-08-30 10:55:46 -04:00
David Larlet
a877dd1714
chore: remove logo_url from Team model
2024-08-30 10:55:26 -04:00
Yohan Boniface
b895013709
fix: do not redraw remote layer if not dynamic
2024-08-30 16:03:14 +02:00
Yohan Boniface
13735a5739
chore: use our own Team model
...
We suppose we'll quickly want more than a name, like a description
or a logo_url, and maybe a access_status or permissions…
2024-08-30 15:53:18 +02:00
Yohan Boniface
a45f6ddbe5
i18n
2024-08-30 15:44:56 +02:00
Yohan Boniface
360014901c
Merge pull request #2076 from umap-project/table-input-position
...
fix: remove position fixed for input and textarea in tableeditor
2024-08-30 15:38:47 +02:00
Yohan Boniface
6b6be017bb
wip: use autocomplete to add users in groups
2024-08-29 20:12:24 +02:00
Yohan Boniface
1058e6074f
chore: lint
2024-08-29 20:12:24 +02:00
Yohan Boniface
a5a68cc922
wip: show user groups maps in dashboard
2024-08-29 20:12:24 +02:00
Yohan Boniface
eccbbda44d
wip: add basic tests for group views
2024-08-29 20:12:24 +02:00
Yohan Boniface
9b2a99019b
wip: add very basic CRUD for groups
2024-08-29 20:12:24 +02:00
Yohan Boniface
a3e972bf5d
wip: add group maps page and display group as author when defined
2024-08-29 20:12:22 +02:00
Yohan Boniface
dce0ee5f73
wip: use auth.models.Group and manage permissions
2024-08-29 20:11:19 +02:00
Yohan Boniface
061edd3198
Merge pull request #2081 from umap-project/fix-white-space-panel
...
fix: white space was broken since using loadTemplate
2024-08-29 20:08:51 +02:00
Yohan Boniface
d208b19ddb
fix: use position fixed for input and textarea in tableeditor
...
Otherwise when scrolling the table, the input will not appear at
the expected position, and may even appear outside of the view when
the table is bigger than the viewport.
Drawback: the table will resize its columns when the input/textarea
is created (as position: sticky is in the flow). So I've also removed
the width reset.
fix #2071
2024-08-29 20:07:28 +02:00
Yohan Boniface
f236e7e3b6
Merge pull request #2077 from umap-project/fix-continue-backward-measure
...
fix: correctly add drawn latlng when continuing line backward
2024-08-29 20:01:01 +02:00
Yohan Boniface
f96f2e1405
Merge pull request #2079 from umap-project/delete-button-tiled
...
chore: use tiled icon css for big delete buttons
2024-08-29 19:59:44 +02:00
Yohan Boniface
9894c6a669
chore: use tiled icon css for big delete buttons
...
That's a bit of an experiment, so to see what needs to be done:
- move the icon in the 24px svg normal and white to it's on the same
place as in the 16px
- replace the JS code (which used a :before class) to use a <i> element
- remove the old CSS class
I've a concern that the way we create elements using the loadTemplate is
more verbose and not DRY, let's discuss this :)
2024-08-29 19:52:29 +02:00
Yohan Boniface
957e80edf9
Update umap/templates/umap/content_footer.html
...
Co-authored-by: David Larlet <3556+davidbgk@users.noreply.github.com>
2024-08-29 19:41:40 +02:00
Yohan Boniface
5bbbf6a988
fix: white space was broken since using loadTemplate
...
Since a2ca3a1436
, the panel/popup
template uses loadTemplate, which used to remove all white spaces
from the inner html. We had to do this to workaround white space
breaking the slideshow toolbox buttons.
So this commits fixes this problem in another way: do not remove
white space (usefull for text content in popup/panels), but use
a display: flex instead of inline-block.
2024-08-29 12:21:51 +02:00
Yohan Boniface
a72691e390
feat: display contact infos in the footer
...
This adds a new settings: UMAP_HOST_INFOS
Also, renames UMAP_FEEDBACK_LINK in UMAP_HELP_URL.
cf #2004
2024-08-29 11:41:11 +02:00
Yohan Boniface
3b66c40b01
Merge pull request #2078 from umap-project/fim100-RTL-support--css-logical-properties
...
Fim100 rtl support css logical properties
2024-08-29 09:30:43 +02:00
Yohan Boniface
5314fcc13b
chore: better icon css default so to work in RTL too
2024-08-28 22:40:44 +02:00
Yohan Boniface
7a7553c52f
chore: use imports instead of globals in share.js
2024-08-28 22:40:44 +02:00
Yohan Boniface
d0c1a55b2f
chore: make icon.css more logical and working in rtl
2024-08-28 22:40:44 +02:00
fim100
ca86721b89
revert MarkerCluster.Default.css
2024-08-28 22:39:48 +02:00
fim100
431cd91d4c
revert leaflet.css
2024-08-28 22:39:48 +02:00
fim100
f9ba7f3c50
Update map.css
2024-08-28 22:39:48 +02:00
fim100
e74ca192d6
fix placement of navigation links in dashboard
...
My Map and My Profile
2024-08-28 22:39:48 +02:00
fim100
80a842bd32
fix icon position in dashboard
2024-08-28 22:39:48 +02:00
fim100
c52207ee0f
make map.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
c554427fa8
make alert.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
ed2a91330f
make nav.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
3d7ca9c6f9
make importers.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
b886dbac3c
make content.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
26b1369a3c
make base.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
a39d89295c
making slideshow.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
1671a0bef1
making Update icon.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
d65c48a88a
making Update leaflet.css rtl-friendly
2024-08-28 22:39:48 +02:00
fim100
ec790ad296
making MarkerCluster.Default.css rtl-friendly
2024-08-28 22:39:48 +02:00
Yohan Boniface
ca4df94e7f
fix: correctly add drawn latlng when continuing line backward
...
Otherwise the measure if wrong.
fix #2069
2024-08-28 15:01:43 +02:00
Dimitar
f4c3a10251
Also update regex
2024-08-19 12:20:58 +03:00
Dimitar
92e3de87db
Use preferred tile.openstreetmap.org URL
...
For reference: https://github.com/openstreetmap/operations/issues/737
2024-08-15 19:58:15 +03:00
Yohan Boniface
ab8bce985e
Merge pull request #2053 from umap-project/bubble-layer
...
Add "Proportional Circles" layer type
2024-08-15 11:04:47 +02:00
Yohan Boniface
f05590e605
Merge pull request #2025 from umap-project/login-from-map
...
fix: catch login_required from map page and add a way to login
2024-08-15 10:57:10 +02:00
Yohan Boniface
e42ed4373f
wip: do not fail when setting "Circles" layer with non markers data
2024-08-15 10:36:54 +02:00
Yohan Boniface
b0c37671a8
Merge pull request #2060 from umap-project/georss-link-title
...
fix: do not append HTML element as title in GeoRSSLink popup
2024-08-15 10:25:21 +02:00
Yohan Boniface
bc34851def
fix: do not append HTML element as title in GeoRSSLink popup
2024-08-15 10:17:43 +02:00
Yohan Boniface
0847dc1ba6
fix: import GPX desc as description
2024-08-14 11:01:31 +02:00
Yohan Boniface
930463032b
wip: add minimal legend for circles layer
2024-08-13 12:30:39 +02:00
Yohan Boniface
cbb022f804
wip: use sqrt for computing circles radius to smooth the sizes
...
The theory is that the circles surface should be proportional, not
the radius.
2024-08-13 11:11:24 +02:00
Yohan Boniface
6b60b0de64
wip: add "Proportional Circles" layer
2024-08-13 11:11:24 +02:00
Yohan Boniface
5a33709cc9
Merge pull request #2057 from umap-project/icon-to-modules
...
chore: move icon.js to modules
2024-08-13 11:10:32 +02:00
Yohan Boniface
a04accf16c
Merge pull request #1994 from umap-project/more-tilelayers-button
...
feat: add a "+" button in the tilelayer switcher
2024-08-13 11:05:02 +02:00
Yohan Boniface
f9484c3336
chore: move icon.js to modules
2024-08-13 11:00:17 +02:00
Yohan Boniface
f08e9cadb5
Merge pull request #2041 from umap-project/mask-polygon
...
feat: allow to display a polygon "negative"
2024-08-13 10:57:37 +02:00
Yohan Boniface
327c1603f5
Revert "chore: switch to an UI class getter"
...
This reverts commit 6b793758c5d7d85a2120a5376134f485ea0807bc.
2024-08-13 10:20:46 +02:00
David Larlet
7863cebc32
chore: switch to an UI class getter
2024-08-13 10:20:46 +02:00
Yohan Boniface
00c384bf25
feat: allow to display a polygon "negative"
...
fix #1125
2024-08-13 10:20:44 +02:00
Yohan Boniface
a0ec0de6f7
feat: align celllayer and cellayerplus border
2024-08-07 09:12:46 +02:00
Yohan Boniface
facccc1c70
feat: add a "+" button in the tilelayer switcher
2024-08-06 13:38:39 +02:00
Yohan Boniface
91c9088082
i18n
2024-08-03 07:37:20 +02:00
David Larlet
29c07755b5
fix: reposition convert to polyline icon
2024-08-02 15:03:40 -04:00
Yohan Boniface
d574abfc36
chore: remove umap.popup.js from js.html
...
The file has been deleted.
2024-08-02 17:39:45 +02:00
David Larlet
a73134cdb0
Merge pull request #2042 from umap-project/vendors-included
...
chore: include vendorized static dependencies
2024-08-02 11:19:35 -04:00
Yohan Boniface
5d0abe7dc1
Merge pull request #2033 from umap-project/nocontrol-no-loading
...
fix: deactivate loader on map fragments
2024-08-02 17:18:02 +02:00
Yohan Boniface
9f5361f2c0
Merge pull request #2034 from umap-project/popup-to-modules
...
chore: move popups to modules
2024-08-02 17:15:26 +02:00
David Larlet
ff8903e751
fix: remove Ctrl from tests for cross OS compatibility
2024-08-02 11:04:24 -04:00
David Larlet
c6b2dbd04c
fix: avoid vendorizing lealfet useless files
2024-08-02 10:13:55 -04:00
David Larlet
5c7624a08e
fix: avoid vendorizing markercluster sources
2024-08-02 10:06:27 -04:00
David Larlet
cf00069017
fix: avoid vendorizing leaflet.toolbar sources
2024-08-02 10:01:57 -04:00
David Larlet
4125bd1be0
chore: include vendorized static dependencies
2024-08-02 09:54:54 -04:00
Yohan Boniface
5a0b75fd33
Merge pull request #2027 from umap-project/tableditor-direct-import
...
chore: import TableEditor directly from layer
2024-07-31 22:53:19 +02:00
Yohan Boniface
144c757e0f
chore: remove old TableEditor.js tests file
2024-07-31 22:42:23 +02:00
Yohan Boniface
222e69fbf4
chore: import TableEditor directly from layer
2024-07-31 22:42:22 +02:00
Yohan Boniface
6de5dabcc6
fix: fix georss import
2024-07-31 22:31:43 +02:00
Yohan Boniface
5145404dc4
fix: show delete button for owner and anonymous owner
2024-07-31 22:29:29 +02:00
Yohan Boniface
a2ca3a1436
chore: move popups to modules
2024-07-30 16:59:44 +02:00
Yohan Boniface
3bdd5bedf1
fix: catch login_required from map page and add a way to login
2024-07-30 14:41:10 +02:00
Yohan Boniface
084c674847
fix: deactivate loader on map fragments
...
Since 8ddc570e23
we lost the link
request <=> map, so the "dataloading" and "dataload" events are
global to the DOM, so when loading a list of maps, all instances
react to all dataloading events, which makes the list a mess.
I'd prefer to keep this loading indicator per map, but it's much
easier to just hide it, so let's go that way.
2024-07-30 14:28:41 +02:00
David Larlet
c240357922
fix: do not rely on the hasChildNodes()
method
...
Introduced in 5ba1c28408
TIL: `hasChildNodes()` is sensitive to white spaces.
2024-07-29 21:15:24 -04:00
David Larlet
5ba1c28408
chore: reformat templates with djlint
2024-07-29 10:53:34 -04:00
Yohan Boniface
671d88296f
wip: remove print
2024-07-29 16:24:59 +02:00
Yohan Boniface
cd439bb7d0
wip: remove umap.features.js
2024-07-29 16:24:59 +02:00
Yohan Boniface
65c5cb5ab5
wip: refactor isolateShape
2024-07-29 16:24:59 +02:00
Yohan Boniface
cd30f49773
wip: move back click handler to Leaflet Marker/Path
...
We tried to have only one listened at map level, but we get into
troubles with bindTooltip({permanent: false} and MarkerClusterGroup
stoping the event to each the map.
Let's go back to previous behaviour, and try later to clean this
event management.
2024-07-29 16:24:59 +02:00
Yohan Boniface
1bbdaa4c90
wip: do not try to redraw cluserized marker
2024-07-29 16:24:59 +02:00
Yohan Boniface
565f6d87b6
wip: fix editing Point coordinates by hand
...
For now we edit ui._latlng, but in an ideal world, we should edit
Point coordinates and then sync to the ui Marker.
2024-07-29 16:24:59 +02:00
Yohan Boniface
25d12420b2
wip: fix popup position for markers
...
Not sure what changed during the refactor, but now all popups
where opening at click position (plus the popupAnchor for markers).
2024-07-29 16:24:59 +02:00
Yohan Boniface
f80d471203
wip: do not sync twice on commit
2024-07-29 16:24:59 +02:00
Yohan Boniface
a022619625
wip: refactor DataLayer.geojsonToFeatures and fix sync tests
2024-07-29 16:24:59 +02:00
Yohan Boniface
081323dc8a
wip: (almost) fix tests
2024-07-29 16:24:59 +02:00
Yohan Boniface
7aa07709b3
wip: first step in moving features to modules (work in progress)
2024-07-29 16:24:56 +02:00
Yohan Boniface
e2d8201321
chore: move permissions to modules
2024-07-29 15:18:25 +02:00
Yohan Boniface
aae75d86e9
Merge pull request #2008 from umap-project/layer-var-in-popup
...
feat: add {layer} as popup variable (aka extended properties)
2024-07-23 21:49:04 +02:00
Yohan Boniface
ab34765c30
Merge pull request #1989 from umap-project/layer-to-modules
...
chore: move layers to modules/
2024-07-23 21:42:22 +02:00
Yohan Boniface
6b67ce26a1
feat: expose marker altitude in variables (as "alt")
2024-07-23 21:33:55 +02:00
Yohan Boniface
ef4e33a6ec
Merge pull request #2010 from umap-project/var-null
...
Fix variable pointing to null value displayed instead of the fallback
2024-07-22 17:58:15 +02:00
David Larlet
a8468cb4fa
chore: modern JS
2024-07-22 09:58:17 -04:00
Yohan Boniface
6b4b6ce53b
fix: do not consider null as value in greedyTemplate
...
cf #820#issuecomment-2227821746
2024-07-22 11:56:10 +02:00
Yohan Boniface
da8e206cd0
chore: pass biome on utils unittests
2024-07-22 11:55:35 +02:00
Yohan Boniface
67ec77fd8a
fix: broken sortKey help
...
And move properties to shema.js. Given those keys does not have
a "guessable" handler, let's have a "customHandlers" prop to deal
with those (instead of keeping them outside of the schema…)
fix #2006
2024-07-22 11:09:25 +02:00
Yohan Boniface
d54843bbe2
feat: add {layer} as popup variable (aka extended properties)
...
fix #2007
2024-07-22 10:41:46 +02:00
David Larlet
9609fafe93
fix: handle the 'auto' value special case for z-index
...
Fix #1997
2024-07-15 13:33:07 -04:00
Yohan Boniface
abbd0e4803
chore: move layers to modules/
...
This is a small step in the direction of spliting the data part
and the rendering part.
Basically in modules/data relies the data part, and in modules/rendering
the rendering part, which at some point in the history should be
the only place where we use and inherit from Leaflet, including utils
and such.
2024-07-12 23:21:41 +02:00
David Larlet
f5fd0eb6e9
fix: remove padding from table editor inputs
...
Also, decrease line-height of header cells
2024-07-12 14:23:54 -04:00
Yohan Boniface
764fbb4247
2.5.1
2024-07-12 19:01:42 +02:00
Yohan Boniface
163d24c7d0
fix: correct way to replace imports in collecstatic
2024-07-12 19:00:59 +02:00
Yohan Boniface
3226be1bdb
2.5.0
2024-07-12 18:46:45 +02:00
Yohan Boniface
8c58b06ce4
i18n
2024-07-12 18:34:03 +02:00
David Larlet
f40387d5fc
Merge pull request #1968 from umap-project/filter-layer-3
...
Refactor the table editor including mass actions and filters
2024-07-12 12:18:47 -04:00
David Larlet
75e4679cc9
chore: fix tests
2024-07-12 12:12:29 -04:00
David Larlet
f8cb195336
chore: back to this.properties for TableEditor
2024-07-12 12:02:28 -04:00
David Larlet
b63a0f7f2d
chore: better errors on name validation
2024-07-12 11:53:12 -04:00
David Larlet
85a4fda0ed
chore: use datalayer._propertiesIndex directly
2024-07-12 11:51:04 -04:00
David Larlet
238798acc3
chore: clean table editor CSS
2024-07-12 11:41:14 -04:00
David Larlet
7ce5646c54
chore: move computePosition to Positioned base class
2024-07-12 11:37:03 -04:00
Yohan Boniface
b4d13304f0
fix: add back slideshow.setOptions method, called from U.Map
2024-07-12 15:18:52 +02:00
Yohan Boniface
a51cc8102f
fix: fix race condition when slideshow is in autostart mode
...
Given `setViewFromQueryString` is now async, the slideshow may start
before it is run and thus it has called `initCaptionBar`, so let's
call it directly (and it's not linked to query string, so…)
2024-07-12 15:16:42 +02:00
Yohan Boniface
a101309e03
wip: use Input not BlurInput in tableeditor
...
BlurInput adds a "check" button we don't want here.
2024-07-12 12:31:50 +02:00
Yohan Boniface
96c9bf9413
wip: set contextmenu x/y according to position in window
2024-07-12 12:21:30 +02:00
Yohan Boniface
4a6b271bbe
wip: deal with escape in tableeditor input/textarea
2024-07-11 20:39:05 +02:00
Yohan Boniface
9f04f56c7c
wip: use position: fixed for input/textarea in tableeditor
...
so it does not increase the cell width and does not change all
the table size.
Actually, there is still a small size change as we remove the cell
content before adding the input/textarea, but more subtle than before
2024-07-11 20:39:05 +02:00
Yohan Boniface
3fb7be28ec
wip: remove old tableeditor class
2024-07-11 20:39:05 +02:00
Yohan Boniface
2f8cda83b6
wip: do not try to read map.fullPanel blindly
...
It is only defined when user has write permissions.
2024-07-11 20:39:05 +02:00
Yohan Boniface
f1c34f9d27
wip: minimal keyboard navigation in table editor
2024-07-11 20:39:05 +02:00
Yohan Boniface
f62f3b4ab9
wip: make outline appears on click on table editor
2024-07-11 20:39:05 +02:00
Yohan Boniface
1ef416a622
wip: allow to open table "editor" (readonly) for remote data layers
2024-07-11 20:39:05 +02:00
Yohan Boniface
5909630e0e
wip: fix bugs and add tests for table editor
2024-07-11 20:39:05 +02:00
Yohan Boniface
9ac3de2b33
wip: (huge) table editor refactor
2024-07-11 20:39:05 +02:00
Yohan Boniface
ae9659620a
wip: another attemp to massiverly delete features from a condition
2024-07-11 20:39:05 +02:00
Yohan Boniface
ec7b546bf5
chore: try to fix toZoom and fromZoom randomly failing tests
2024-07-11 16:07:27 +02:00
Yohan Boniface
a035b6cb38
chore: use our own page fixture so to print console messages
2024-07-11 10:53:33 +02:00
Yohan Boniface
3fa478abac
Merge pull request #1981 from umap-project/autocomplete-datalist
...
feat: add AutocompleteDatalist and use it for conditional rules
2024-07-10 11:36:59 +02:00
Yohan Boniface
75e36f1c54
Merge pull request #1980 from umap-project/osm-relation-tags
...
fix: import unified relations from OSM data (use latest osmtogeojson)
2024-07-10 10:34:03 +02:00
Yohan Boniface
7baa70d1b6
feat: add AutocompleteDatalist and use it for conditional rules
2024-07-10 10:10:53 +02:00
Yohan Boniface
d830978f6f
fix: import unified relations and tags from OSM data (use latest osmtogeojson)
...
fix #1011
2024-07-10 09:23:52 +02:00
Yohan Boniface
76fbb306fc
Merge pull request #1982 from umap-project/categorized-color
...
fix: use correct color for categorized/choropleth layers in browser
2024-07-09 15:16:19 +02:00
Yohan Boniface
ed6f0fcdf1
Merge pull request #1979 from umap-project/fix-blurinput
...
fix: BlurInput was not updating the object in some situations
2024-07-09 15:15:26 +02:00
Yohan Boniface
e3f59850a7
fix: fix preview color for polygons
...
Use usually set the `color` property, but we want to use the
fillColor if it sets.
2024-07-09 12:47:10 +02:00
Yohan Boniface
00483882a1
fix: use correct color for categorized/choropleth layers in browser
2024-07-09 11:58:29 +02:00
Yohan Boniface
dd9c3ba194
chore: biome
2024-07-09 11:47:34 +02:00
Yohan Boniface
3be274929a
fix: BlurInput was not updating the object in some situations
...
Steps to reproduce:
- click in any BlurInput
- change to any value
- click outside the input => the value will be set to the object
- click again in the input
- change value to the initial
- click outside => the value will not be set
This is because the BlurInput in sync on blur, and it was comparing
the current field value with an "initial" one, only set at build.
This check is made because we don't want to trigger an edit when a
user click in a blurinput and click outside without changing the value.
2024-07-09 10:46:22 +02:00
Yohan Boniface
36b4510e46
fix: make sure panels are above controls
...
fix #1954
2024-07-05 18:59:13 +02:00
Yohan Boniface
4ae47de8a9
Merge pull request #1958 from umap-project/broken-help
...
fix: main help button from edit toolbar was broken
2024-07-05 18:51:14 +02:00
Yohan Boniface
207860ecf5
chore: refactor help.button arguments
2024-07-05 18:27:53 +02:00
Yohan Boniface
ec5f8d7b3c
Update umap/static/umap/js/modules/help.js
...
Co-authored-by: David Larlet <3556+davidbgk@users.noreply.github.com>
2024-07-05 18:19:00 +02:00
Yohan Boniface
257d205690
Merge pull request #1953 from umap-project/categorized-layer
...
feat: add new type of layer Categorized
2024-07-05 18:18:36 +02:00
Yohan Boniface
1b8b130805
wip: no need for await here
2024-07-05 17:52:35 +02:00
Yohan Boniface
cc6ae95371
wip: make Map.initialize async
...
We want to be able to await function there.
Specifically, we want to await the data creation when it comes from
the `data` url param, so when we also consume the `feature` url param,
that feature is already on the map so we can open it
2024-07-05 17:52:35 +02:00
Yohan Boniface
49db1f9aaa
chore: move share to modules
2024-07-05 17:52:33 +02:00
Yohan Boniface
741fc70a17
wip: simpler syntax for dynamic import in formatters
2024-07-05 17:51:53 +02:00
Yohan Boniface
891f04656f
wip: make collectstatic happy with import() in comments
...
Also add missing .map files.
Maybe a proper solution would be to commit the vendors/ and
remove manually the comments.
2024-07-05 17:51:53 +02:00
Yohan Boniface
ca0f771947
wip: move formatters to a module
...
This mainly allows to dynamically load the third party libraries.
In the same process, those libs have changed:
- tokml => switch to placemarkio fork, more up to date and available
as ESM
- togpx => switch to geojson-to-gpx, more up to date and available as
ESM (note: this lib does not export polygons, because they do not
make sense in GPX world, while the previous was converting them as
lines before)
2024-07-05 17:51:53 +02:00
Yohan Boniface
f293f9c929
chore: move slideshow to a module
2024-07-05 17:35:08 +02:00
Yohan Boniface
6aa74060ad
chore: make explicit that the "show get started dialog" is a special case
2024-07-05 09:52:39 +02:00
David Larlet
8b62aecd31
chore: create a WithTemplate base class
...
Allows to load a string/template and bind all `data-ref` references to `this.elements`.
2024-07-04 20:11:38 -04:00
Yohan Boniface
6976fd1f63
Merge pull request #1963 from umap-project/overpass-departement
...
fix: allow to search a French departement in Overpass importer
2024-07-02 22:51:40 +02:00
Yohan Boniface
6cbda1f373
Merge pull request #1964 from umap-project/throttle-search
...
fix: add throttle in autocomplete
2024-07-02 22:51:09 +02:00
Yohan Boniface
1839c48234
Merge pull request #1956 from umap-project/custom-prompt
...
chore: add custom prompt
2024-07-02 22:49:05 +02:00
Yohan Boniface
6872a584be
wip: fix tests
2024-07-02 21:09:23 +02:00
Yohan Boniface
4c1ea8b97f
wip: make sure dialog polyfill works
2024-07-02 20:49:14 +02:00
Yohan Boniface
f8577c3639
chore: always use real tiles in playwright when in debug mode
2024-07-02 19:11:39 +02:00
Yohan Boniface
abbd0eef62
fix: add throttle in autocomplete
2024-07-02 19:06:11 +02:00
Yohan Boniface
91badcdb5e
wip: rework dialog class
2024-07-02 18:11:22 +02:00
Yohan Boniface
23396ad4df
fix: allow to search a French departement in Overpass importer
...
And make it configurable in the same time.
2024-07-02 10:45:05 +02:00
Yohan Boniface
759dd34ef3
fix: main help button from edit toolbar was broken
2024-07-01 18:58:01 +02:00
Yohan Boniface
186025e0f0
chore: add custom prompt
2024-07-01 18:54:06 +02:00
Yohan Boniface
ce3439f6b5
feat: add new type of layer Categorized
...
This is like Choropleth, but with categories instead of graduated.
fix #1433
2024-07-01 12:48:46 +02:00
Yohan Boniface
796037cd74
2.4.2
2024-06-26 23:19:28 +02:00
Yohan Boniface
3a10b0c4e0
i18n
2024-06-26 23:18:30 +02:00
Yohan Boniface
3db414cb97
fix tests broken in c09adffb64
2024-06-26 23:16:02 +02:00
Yohan Boniface
c09adffb64
fix: make sure to quote spaces in URL when using proxy
...
space is a control character, and thus is forbidden in an URL, and
we do have spaces in overpass URL (containing raw queries).
2024-06-26 22:57:25 +02:00
David Larlet
3805d7f308
fix: better line-height for importers’ names
2024-06-26 15:43:46 -04:00
David Larlet
b01a194469
Merge pull request #1943 from umap-project/multiple-dataurl-onload
...
feat: handle multiple dataUrl parameters on map load
2024-06-26 14:22:11 -04:00
David Larlet
84e7f7a0a8
Merge pull request #1944 from umap-project/apply-biome-unsafe-2
...
chore: apply Biome unsafe changes
2024-06-26 13:21:56 -04:00
David Larlet
31d1c36a48
chore: explicit comment for global isNaN usage
2024-06-26 13:05:24 -04:00
7a7977c5cd
fix(sync): do not send messages when loading data from the server
...
This introduces a `sync=true/false` parameter that can be passed along
when loading data from our own server, in which case we don't want to
send "operation" messages.
2024-06-26 18:59:20 +02:00
0dcedeb525
fix(sync): sync feature layer changes
...
This commits adds a way to differenciate "end of edit" events that are
triggered rightfully and the one which are triggered during the deletion
of a feature.
Also, directly call the `sync.upsert()` method after the move happened.
2024-06-26 18:59:20 +02:00
4f19824805
fix(sync): pass the correct datalayer uuid
2024-06-26 18:59:20 +02:00
David Larlet
b5cb092cd4
chore: from switch with unique case to if/else
2024-06-26 11:29:20 -04:00
David Larlet
04c50c4453
chore: deal with missing label for url_template
2024-06-26 10:35:46 -04:00
David Larlet
7c2b5839a9
Merge pull request #1942 from umap-project/rational-zindexes
...
chore: rationalize z-indexes in CSS
2024-06-26 10:10:47 -04:00
David Larlet
d1ded301a5
chore: do not use Number.isNaN in special cases
2024-06-25 21:41:29 -04:00
David Larlet
c61ca9c506
chore: remove the noDelete rule completely
2024-06-25 21:31:37 -04:00
David Larlet
b819c554ee
chore: there is a difference between unset and delete
2024-06-25 20:53:02 -04:00
David Larlet
7a82b6547e
chore: do not use Number.isNaN in special cases
2024-06-25 18:14:34 -04:00
David Larlet
5c88502a2e
chore: set a sync default value on createDataLayer
...
Rel: https://biomejs.dev/linter/rules/use-default-parameter-last/
2024-06-25 17:23:52 -04:00
David Larlet
445a793c3e
chore: apply Biome unsafe changes
...
Without `useBlockStatements`
2024-06-25 17:11:17 -04:00
David Larlet
b426d212f0
feat: handle multiple dataUrl parameters on map load
2024-06-25 16:41:39 -04:00
David Larlet
735c9dc6d8
chore: rationalize z-indexes in CSS
...
Positive side-effect: alerts are now above importers panel.
2024-06-25 14:56:25 -04:00
David Larlet
ef33a26f11
chore: apply Biome safe changes
2024-06-25 10:00:57 -04:00
David Larlet
e32deedcc8
chore: setup Biome to replace Prettier
...
If you are using SublimeText: https://packagecontrol.io/packages/LSP-biome
2024-06-25 09:59:40 -04:00
adc1cf460f
Use css variables
...
Co-authored-by: David Larlet <3556+davidbgk@users.noreply.github.com>
2024-06-25 14:15:23 +02:00
c3a412059a
fix: better spacing for the alert box, when activated
2024-06-25 14:15:23 +02:00
David Larlet
0b031dc7cc
fix: Distinction between clearing data vs. layers
...
Fix #1934
2024-06-24 17:04:33 -04:00
Yohan Boniface
5a5bada7b8
2.4.1
2024-06-24 08:33:23 +02:00
Yohan Boniface
e4af031ca1
Merge pull request #1933 from umap-project/fix-change-datalayer
...
fix: fix path disappearing when changing its datalayer
2024-06-24 08:32:32 +02:00
Yohan Boniface
d1fd842c1a
i18n
2024-06-24 08:16:41 +02:00
Yohan Boniface
8d9bd4aec1
fix: fix path disappearing when changing its datalayer
...
fix #1931
2024-06-24 08:08:23 +02:00
Yohan Boniface
2123f7d1e6
2.4.0
2024-06-21 22:09:51 +02:00
Yohan Boniface
37c5601609
Merge pull request #1930 from umap-project/feature-panel-querystring
...
feat: give precedence to feature in query string over onLoadPanel
2024-06-21 22:04:05 +02:00
Yohan Boniface
a8daca425c
i18n
2024-06-21 21:59:43 +02:00
Yohan Boniface
82c9ec7d39
feat: give precedence to feature in query string over onLoadPanel
...
cf #1893
2024-06-21 21:57:34 +02:00
Yohan Boniface
c2fc9ffb57
chore: use button element for "back to browser" action
...
As we did for other actions in c0ecc39439
2024-06-21 21:53:22 +02:00
Yohan Boniface
2b2a63fe29
chore: fix failing test
2024-06-21 18:29:40 +02:00
Yohan Boniface
02dd29a55f
chore: add margin left to radio buttons
2024-06-21 18:03:02 +02:00
Yohan Boniface
e5259b3ffe
Merge pull request #1929 from umap-project/heading-css-size
...
chore: change heading CSS size
2024-06-21 17:46:44 +02:00
Yohan Boniface
9fabfe08cd
Merge pull request #1922 from umap-project/smaller-headings
...
chore: smaller headings in descriptions
2024-06-21 16:39:44 +02:00
Yohan Boniface
2b8326bd61
Merge pull request #1928 from umap-project/fix-slideshow-buttons
...
fix: fix slideshow toolbar position and size
2024-06-21 16:38:28 +02:00
Yohan Boniface
cd69e5fbb0
Merge pull request #1924 from umap-project/popup-min-width
...
fix: increase popup min-width
2024-06-21 16:38:06 +02:00
Yohan Boniface
5e480627cc
Merge pull request #1923 from umap-project/white-space-description
...
fix: also use white-space: pre-line on map description
2024-06-21 16:37:43 +02:00
Yohan Boniface
25cd19049e
Merge pull request #1921 from umap-project/fix-layer-labelkey
...
fix: use layer labelKey if any when filtering features
2024-06-21 16:37:14 +02:00
Yohan Boniface
73493258f1
Merge pull request #1920 from umap-project/fix-overlay-null
...
chore: do not set overlay=null as default
2024-06-21 16:36:57 +02:00
Yohan Boniface
ebafb6d40a
chore: change heading CSS size
2024-06-21 16:35:07 +02:00
Yohan Boniface
7be62f3dab
fix: fix slideshow toolbar position and size
...
broken by c0ecc39439
2024-06-21 16:33:37 +02:00
Yohan Boniface
3037128540
fix: add icon to "edit map details" panel title
2024-06-21 15:14:27 +02:00
Yohan Boniface
36db88f5a6
fix: increase popup min-width
...
Since fa2bef85d3
popup are smaller,
let's try to have them as before.
2024-06-21 14:55:42 +02:00
Yohan Boniface
25f338f51d
fix: also use white-space: pre-line on map description
...
We removed line breaks management on the JS side so to manage it
in CSS, but this CSS was only active on popup/panels for features.
Let's have a class for this, and add it to the map description to
(about panel).
2024-06-21 14:39:12 +02:00
Yohan Boniface
6f38dcf4d7
fix: this css var has been renamed elsewhere
2024-06-21 14:07:48 +02:00
Yohan Boniface
3ed548b097
chore: smaller headings in descriptions
...
We already have a h3 as title, both in the popup or in the panel
2024-06-21 14:05:47 +02:00
Yohan Boniface
4fc66da80c
fix: use layer labelKey if any when filtering features
...
fix #1908
2024-06-21 13:35:06 +02:00
Yohan Boniface
5609092cc0
chore: do not set overlay=null as default
...
FormBuilder will break when reimporting an exported map with this
default value (at the casting to object was only made on the init,
so reimporting will override this to null again).
2024-06-21 11:39:39 +02:00
David Larlet
ed2386eaae
2.4.0b2
2024-06-20 10:56:26 -04:00