Commit graph

1825 commits

Author SHA1 Message Date
Yohan Boniface
4b05a62b8b feat: open popup when default view is set to latest
fix #1726
2024-04-16 14:52:52 +02:00
Yohan Boniface
4f58b64ce5 fix: update layers list in import panel
fix #1729
2024-04-16 13:49:03 +02:00
Yohan Boniface
d3bf9fcdf0 fix: hide delete button for editors in dashboard
fix #1739
2024-04-16 11:32:00 +02:00
Yohan Boniface
2602b27f34 chore: fix tests after rebase 2024-04-16 10:30:05 +02:00
Yohan Boniface
65bad68efe wip: change icon for panel expanded/condensed 2024-04-16 09:09:59 +02:00
Yohan Boniface
9ee672f1e7 wip: fix border for dark panel 2024-04-16 09:09:59 +02:00
Yohan Boniface
4cfe319a91 fix: remove white border from black edit buttons 2024-04-16 09:09:59 +02:00
Yohan Boniface
b933c4badd wip: align panel bottom above scale control 2024-04-16 09:09:59 +02:00
Yohan Boniface
e615e0926a chore: fix tests 2024-04-16 09:09:59 +02:00
Yohan Boniface
573a33df5a chore: use CSS vars for panel 2024-04-16 09:09:59 +02:00
Yohan Boniface
211a86f27c chore: lint 2024-04-16 09:09:59 +02:00
Yohan Boniface
2f1a85144e chore: make panel toolbox sticky instead of fixed
No need to deal with width, that way.
2024-04-16 09:09:59 +02:00
Yohan Boniface
cd01e4085f chore: better align icon and title in panels 2024-04-16 09:09:59 +02:00
Yohan Boniface
8279ae8a62 chore: put back order of edit buttons
We'll certainly change them later, but for now let's create
useless noise for users
2024-04-16 09:09:59 +02:00
Yohan Boniface
2f3d579079 chore: make captionControl nullable in schema.js
So it can be configured to appears in the "More" button
2024-04-16 09:09:59 +02:00
Yohan Boniface
c9acb22d64 chore: remove calls to L. from browser.js 2024-04-16 09:09:59 +02:00
Yohan Boniface
2c248ea124 chore: panel.MODE has been renamed to panel.mode 2024-04-16 09:09:59 +02:00
Yohan Boniface
70cca268e8 chore: fix icons in the dashboard 2024-04-16 09:09:59 +02:00
Yohan Boniface
fa69192804 chore: add min-height for textarea 2024-04-16 09:09:59 +02:00
Yohan Boniface
737292ca76 chore: remove unused CSS 2024-04-16 09:09:59 +02:00
Yohan Boniface
11cd61ff84 chore: remove useless back button from table editor 2024-04-16 09:09:59 +02:00
Yohan Boniface
c5e3dfb95c chore: fix JS syntax to be compatible with browser >= 2020
Safari only supports public field since 2021…
2024-04-16 09:09:59 +02:00
Yohan Boniface
46016cb10b chore: replace panel:xxx events 2024-04-16 09:09:59 +02:00
Yohan Boniface
581f7134fd chore: fix integration tests 2024-04-16 09:09:59 +02:00
Yohan Boniface
7fd2f0ded9 chore: fix drag class 2024-04-16 09:09:59 +02:00
Yohan Boniface
44bae50c85 chore: remove remaining openPanel/closePanel calls 2024-04-16 09:09:59 +02:00
Yohan Boniface
e3ff769ab9 chore: import modules in panel.js 2024-04-16 09:09:59 +02:00
Yohan Boniface
849b194d4f chore: use a specific panel class for table view 2024-04-16 09:09:59 +02:00
Yohan Boniface
0b175d1a56 chore: use icon buttons where possible 2024-04-16 09:09:59 +02:00
Yohan Boniface
3bc57a8512 chore: refactor simple button controls 2024-04-16 09:09:59 +02:00
Yohan Boniface
c4e86c4ab9 wip: move panel to a dedicated module 2024-04-16 09:09:58 +02:00
Yohan Boniface
1e2d990a3a chore: start moving icon related CSS rules to a dedicated file 2024-04-16 09:08:15 +02:00
Yohan Boniface
a516cbd2a3 chore: panel in condensed mode by default 2024-04-16 09:08:15 +02:00
Yohan Boniface
2a2f38e3cd chore: change edit button order 2024-04-16 09:08:15 +02:00
Yohan Boniface
e4ecb1a847 chore: fix test
This action is managed in the header panel, thus it's not a button.
We may make all header actions proper buttons, but maybe in another
PR ?
2024-04-16 09:08:15 +02:00
Yohan Boniface
a360ca0e13 chore: make browser expanded/condensed mode persistent 2024-04-16 09:08:15 +02:00
Yohan Boniface
2147e5a612 chore: add missing umap-icon-16 class in browser toggle button 2024-04-16 09:08:15 +02:00
Yohan Boniface
a018b8863f chore: refactor browser back button 2024-04-16 09:08:15 +02:00
Yohan Boniface
86956c4563 chore: use umap-icon-16 CSS class in panel toolbox 2024-04-16 09:08:15 +02:00
Yohan Boniface
87f611d0b5 chore: refactore panel header/toolbox 2024-04-16 09:08:15 +02:00
Yohan Boniface
8524cc785f chore: fix tests 2024-04-16 09:08:15 +02:00
Yohan Boniface
56e6b20087 wip: add resize button in panel 2024-04-16 09:08:15 +02:00
Yohan Boniface
af203d7b90 wip: remove extra actions from browser/facets 2024-04-16 09:08:15 +02:00
Yohan Boniface
9e3984fdcb wip: do not change panel color if it's not browser
Ugly way to do, but for now I haven't found a better option
2024-04-16 09:08:15 +02:00
Yohan Boniface
41e7b34813 wip: allow to open browser in condensed mode 2024-04-16 09:08:14 +02:00
Yohan Boniface
5b78d6f0ff wip: refactor browser related CSS 2024-04-16 09:04:10 +02:00
Yohan Boniface
b92695dd7f wip: first shot on merging data browser and features browser 2024-04-16 09:04:07 +02:00
Alexis Métaireau
517d3a1a81 tests: move functional tests in test_edit_map.py. 2024-04-15 23:46:43 +02:00
Alexis Métaireau
6e71009467 chore: Schema: deduplicate impacts keys.
Also:

- move the `type` key before the `impacts` one.
- avoid one-line objects
2024-04-15 23:46:43 +02:00
Alexis Métaireau
6841b5fc0f tests: Fix the test with the proper data. 2024-04-15 23:46:43 +02:00
Alexis Métaireau
5526a3f4d2 fix: Fix module location for some utils. 2024-04-15 23:46:43 +02:00
Alexis Métaireau
5aedf51d0c fix: Use formatNum from Leaflet.Util
It was currently looked for in the uMap utils, where it wasn't present.
2024-04-15 23:46:43 +02:00
Alexis Métaireau
3764bcfe3e tests: Use the first visible name when testing.
There are now multiple elements accessed with the same CSS selector.
2024-04-15 23:46:43 +02:00
Alexis Métaireau
d52a0c63f0 chore: Always put type before impacts in the schema definition. 2024-04-15 23:46:43 +02:00
Alexis Métaireau
0e12e0e5c3 chore: Add schema entries for layers. 2024-04-15 23:46:43 +02:00
Alexis Métaireau
ac866e3943 chore: Reorganize tests, remove duplicated ones. 2024-04-15 23:46:43 +02:00
Alexis Métaireau
2bcb862319 tests: Add on_edit integration tests 2024-04-15 23:46:43 +02:00
Alexis Métaireau
ff019d08de tests: Add getImpactsFromSchema tests 2024-04-15 23:46:43 +02:00
Alexis Métaireau
55cc7a098f refactor: Separate ui rendering from data updates
`U.SCHEMA` now contains an `impacts` key, which makes it possible to
specify what part of the UI is impacted by data changes.

A new `render` method has been added on `U.Map` and `U.DataLayer`, which
is used to rerender the proper parts of the UI depending on the passed
properties.

`U.FormBuilder` calls this `render()` method (if present), during form
changes.
2024-04-15 23:46:43 +02:00
David Larlet
8c4d887999
chore: bump the timeout for integration tests 2024-04-02 14:01:27 -04:00
Alexis Métaireau
05a25ed8fe [tests] actually add the tests 2024-04-01 11:12:44 +02:00
Alexis Métaireau
c4e527bf8e [chore] move umap utils to a module
Allow the tests to be run from inside a cli, without requiring a browser.
2024-04-01 11:12:44 +02:00
Yohan Boniface
a28db94f72 chore: move Feature.js integration tests to PW 2024-04-01 11:12:26 +02:00
Yohan Boniface
5d88e0e270 fix: fix L.locale no more set 2024-04-01 11:12:26 +02:00
Yohan Boniface
bf769f26c1 2.1.3 2024-03-27 22:22:28 +01:00
Yohan Boniface
90ced76a11 fix: honour old_id in datalayers= query string parameter
fix #1714
2024-03-27 22:10:38 +01:00
Yohan Boniface
c92d24100f
Merge pull request #1716 from umap-project/refactor-init-center
chore: refactor initCenter and controls ordering
2024-03-27 21:38:22 +01:00
Yohan Boniface
e0ff82298a chore: move table editor tests to PW 2024-03-27 21:06:46 +01:00
Yohan Boniface
4669053b18 chore: refactor initCenter and controls ordering
We had an issue (not in Github :p) where a map was not loading
because the defaultView was set to "data", and the layers were
remote data layers. In this case, when computing the remote URL,
we allow to replace georelated variables (like east, west, north,
lat…), which needs the map to have a view.
So:
- the default view was expecting the data to be loaded (="data")
- the data to be loaded needed a default view…

So instead of adding yet another call to _setDefaultView in an
edge case, we reordered the way we initialize the map elements:

- first we initialize the controls (because initCenter needs the
  locate control to exist)
- then we call initCenter
- then we initialize the tile layers (because the miniMap needs it
  to render itself)
- then we call renderControls
2024-03-27 20:14:43 +01:00
Yohan Boniface
ca8f7bf280 chore: add openmap fixture 2024-03-27 13:01:01 +01:00
Yohan Boniface
490a1a6e19 chore: port DataLayer.js tests to PW 2024-03-27 13:00:45 +01:00
Yohan Boniface
6a1fb44085 chore: add leaflet-configure.js in test loaded scripts 2024-03-27 13:00:45 +01:00
Yohan Boniface
b1fbccbdc5 chore: move Map and import tests to PW 2024-03-27 13:00:45 +01:00
Yohan Boniface
8392a748f1
Merge pull request #1704 from umap-project/remove-js-tests
chore: move js tests to PW
2024-03-26 08:55:20 +01:00
Yohan Boniface
c57469ee8b chore: move part of Polyline.js tests to PW 2024-03-26 08:50:55 +01:00
Yohan Boniface
1a2482f1e4 chore: move Polygon integration tests to PW 2024-03-26 08:50:55 +01:00
Yohan Boniface
bd438605f3 2.1.2 2024-03-25 20:13:54 +01:00
Yohan Boniface
99207638d9 fix: make sure to order datalayer versions by time
When we changed from id to uuid, we broke the sorting, which
supposed to have a constant id as string prefix from version to
the other.
2024-03-25 20:13:34 +01:00
Yohan Boniface
258262ae14 fix: do not try to read undefined message on error in request.js 2024-03-25 19:44:14 +01:00
Yohan Boniface
b9e27fc885 chore: change default playwright timeout to 5000ms 2024-03-25 15:20:16 +01:00
Yohan Boniface
5d8706c261 chore: remove Permissions tests from JS and update PW ones 2024-03-25 15:20:16 +01:00
Yohan Boniface
98f1e48df9 chore: move Choropleth tests to PW 2024-03-25 15:20:16 +01:00
Yohan Boniface
288c7983fc fix: Path.replace called instead str.replace 2024-03-25 14:40:48 +01:00
Yohan Boniface
8d9468df00 2.1.0 2024-03-25 13:55:08 +01:00
Yohan Boniface
9d407c6b06 i18n 2024-03-25 13:52:48 +01:00
David Larlet
d1784b64a8
fix: See all button closing panel
Fixes #1700
2024-03-22 12:30:04 -04:00
Alexis Métaireau
998732b070 chore: move URLs tests to mocha cli 2024-03-22 17:05:40 +01:00
Yohan Boniface
15964b2edb chore: lint 2024-03-22 11:16:32 +01:00
Yohan Boniface
f8d08ea539 chore: more pw tests 2024-03-22 11:10:56 +01:00
Yohan Boniface
9e3eef341e chore: move exports tests from js to playwright 2024-03-22 10:50:50 +01:00
Yohan Boniface
01e94d45dc
Merge pull request #1666 from umap-project/almet/fix-same-second-last-modified
fix: Replace Last-Modified with custom headers
2024-03-14 18:15:36 +01:00
Yohan Boniface
093eb6b56b
Merge pull request #1690 from umap-project/photon-location-bias
fix: only use location bias in search for close zoom
2024-03-14 14:53:30 +01:00
Yohan Boniface
375ef69b1b fix: only use location bias in search for close zoom
And add a lower location bias
2024-03-14 14:45:39 +01:00
David Larlet
d050a70017
Set CORS-related header for oEmbed and map views 2024-03-13 14:02:34 -04:00
Yohan Boniface
8cc6d58752
Merge pull request #1688 from umap-project/fix-oembed-i18n
fix: deal with i18n in oembed URLs
2024-03-13 18:36:14 +01:00
Yohan Boniface
409c79415f fix: deal with i18n in oembed URLs 2024-03-13 18:03:20 +01:00
Yohan Boniface
d431acd4e3
Merge pull request #1669 from umap-project/make-remodata-async
fix: make sure we wait for remote data before sending "dataloaded" event
2024-03-12 09:15:12 +01:00
Alexis Métaireau
29992e10e6 fix: Replace Last-Modified with custom headers.
`X-Datalayer-Version` and `X-Datalayer-Reference` are now used instead
of the `Last-Modified` and `If-Unmodified-Since` headers.

`Last-Modified` is granular to the second, which led to problems with
the versionning. The new system uses timestamps instead.

This commit also changes the way versions were created. Previously,
the associated version was coming from two different places:
the last modified time from the filesystem and a `time.time()` call
done when saving the model, which could result in the two getting
out of sync.
2024-03-08 22:34:54 +01:00
Alexis Métaireau
9071d92986 chore: ensure merge + assigning ids are rejected
The current code already ensures that items
changed in the reference weren't also changed
in the latest changes, so we are covered.
2024-03-08 18:01:58 +01:00
Yohan Boniface
6396ee5e58
Merge pull request #1661 from umap-project/schema-i18n
Add minimal schema module
2024-03-05 17:57:40 +01:00
Yohan Boniface
6ed5ebc9fb
Merge pull request #1630 from umap-project/datalayer-uuids
chore: replace datalayer ids with uuids
2024-03-05 17:26:50 +01:00
Yohan Boniface
bfcdfdcfc1 chore: bump ruff 2024-03-05 17:23:49 +01:00
Alexis Métaireau
b0c1f56979 chore: factorize json.dumps in an util function.
In order to use the Django JSON Encoder by default.
2024-03-05 11:25:37 +01:00
Alexis Métaireau
1b41ff0ddc chore: Rename datalayer id to old_id 2024-03-05 11:23:12 +01:00
Yohan Boniface
e7bd94a099 wip: do not expose UMAP_SCHEMA for now 2024-03-04 17:43:40 +01:00
Yohan Boniface
24e46847b7 chore: use } for consistency 2024-03-04 17:43:40 +01:00
David Larlet
908750b42b chore: escape help messages with curly brackets 2024-03-04 17:43:40 +01:00
David Larlet
ba41ae4000 fix: wait for agnocomplete in test 2024-03-04 17:43:40 +01:00
David Larlet
5295e931a5 wip(forms): remove defaultOptions from builder 2024-03-04 17:43:40 +01:00
Yohan Boniface
4cdf682706 wip(forms): Try to be smart and use MultiChoice only for short labels 2024-03-04 17:43:40 +01:00
Yohan Boniface
a7a854dd74 wip: move default options to schema
This commit also introduce a new settings UMAP_SCHEMA, that could
be used to easily override schema default, like the default color, the
default path weigth and so on. I'm not documenting yet, because I'm
not yet totally sure we want this.
2024-03-04 17:43:40 +01:00
Yohan Boniface
da945cf733 wip: remove Leaflet.i18n from frontend and expose L._
But we keep Leaflet.i18n for now, as we use its script to collect
strings (this script to be tweaked to support also `translate`).
2024-03-04 17:43:40 +01:00
Yohan Boniface
fcf22195cb chore: move defaultOptions from forms to schema 2024-03-04 17:43:38 +01:00
David Larlet
68f3a9686a chore: Extract a schema module from Map 2024-03-04 17:43:15 +01:00
David Larlet
a6a1959c09 chore: Integrate i18n changes from Leaflet PR
See https://github.com/Leaflet/Leaflet/pull/9281
2024-03-04 17:42:23 +01:00
Yohan Boniface
fa0208519e
Merge pull request #1649 from umap-project/add-features-ids
chore: add ids on features
2024-03-04 11:18:39 +01:00
Yohan Boniface
17120537e3 fix: make sure we wait for remote data before sending "dataloaded" event 2024-03-01 18:39:59 +01:00
Yohan Boniface
c658b28f6e 2.0.4 2024-03-01 18:18:07 +01:00
Yohan Boniface
3e651956f1 2.0.3 2024-03-01 17:55:05 +01:00
Yohan Boniface
a67ee1d1c0 i18n 2024-03-01 17:54:18 +01:00
Yohan Boniface
aa25867517 chore: fix js tests 2024-03-01 17:52:00 +01:00
Yohan Boniface
40d0095b3c
Merge pull request #1658 from umap-project/catch-mail-error
fix: catch SMTPException when sending secret edit link
2024-03-01 17:45:18 +01:00
Yohan Boniface
bb002dffba
Merge pull request #1668 from umap-project/fix-osmid-popup
fix: read id and @id as osm id in osm template
2024-03-01 17:02:20 +01:00
Yohan Boniface
42129a3a45
Merge pull request #1667 from umap-project/fix-querystring-feature
fix: make sure to reset feature query string parameter
2024-03-01 17:02:03 +01:00
Yohan Boniface
103893def2 fix: read id and @id as osm id in osm template
cf #1663
2024-03-01 16:05:41 +01:00
Yohan Boniface
dee6073428 chore: add test to cover opening feature on load 2024-03-01 15:49:27 +01:00
Yohan Boniface
2a084466df fix: make sure to reset feature query string parameter
fix #1662
2024-03-01 15:45:07 +01:00
Alexis Métaireau
d0738e93e7 fix: allow empty datalayers reference on merges.
Previously, an error was thrown when the reference datalayer
had no `features`defined.

When looking for features, it now defaults to an empty list if the key
doesn't exist.
2024-02-29 22:41:20 +01:00
Alexis Métaireau
b0334a027d feat: Ensure features ids match the requested format 2024-02-29 11:38:18 +01:00
Yohan Boniface
24acd5c42d i18n 2024-02-27 23:08:31 +01:00
David Larlet
337c75151c
Merge pull request #1589 from umap-project/css-vars
chore: Use CSS variables
2024-02-27 08:57:04 -05:00
Yohan Boniface
ef7a6b9f8f
Merge pull request #1645 from umap-project/fix-zoomcontrol-duplicated
fix: zoomControl rendered twice
2024-02-27 14:54:48 +01:00
Yohan Boniface
d48aeae6bd
Merge pull request #1653 from datendelphin/patch-1
path was doubled
2024-02-27 11:03:19 +01:00
Alexis Métaireau
f82897f202 chore: make the datalayer uuid migration reversible 2024-02-26 23:33:33 +01:00
Alexis Métaireau
9648c8ba42 chore: migrate existing local remoteURL datalayers 2024-02-26 21:00:51 +01:00
Yohan Boniface
9cad054746 fix: catch SMTPException when sending secret edit link 2024-02-26 19:41:07 +01:00
Alexis Métaireau
ffe7f18af1 chore: enhance naming in tests 2024-02-26 15:03:37 +01:00
Alexis Métaireau
51889f3238 chore: fetch datalayer index name before dropping it.
This can be helpful in situations where the name of the index is not known, as it can be with pre 1.0 deployed instance.

This commit also generates the UUIDs directly using an SQL statement.
2024-02-26 15:01:19 +01:00
Alexis Métaireau
ff4870730a chore: ensure old-format layers' versions are returned 2024-02-26 15:01:19 +01:00
Alexis Métaireau
99d7b8a6e1 chore: ruff format 2024-02-26 15:01:19 +01:00
Alexis Métaireau
f869d77f2c chore: update migrations 2024-02-26 15:01:19 +01:00
Alexis Métaireau
d18a32b5d3 chore: use path rather than re_path in urls.py 2024-02-26 15:01:19 +01:00
Alexis Métaireau
1415f96c6f chore: fix tests 2024-02-26 15:01:19 +01:00
Alexis Métaireau
c5fd72fe2b chore: use Django JSON serializer when calling json.dumps 2024-02-26 15:01:19 +01:00
Alexis Métaireau
c46f59e3dd chore: Use datalayers' UUIDs in the views 2024-02-26 15:01:19 +01:00
Alexis Métaireau
6b7efda37a chore: replace datalayer ids with uuids 2024-02-26 15:01:19 +01:00
Alexis Métaireau
d5b1821117 chore: format templates 2024-02-26 09:11:57 +01:00
datendelphin
6c07aefa70
path was doubled
If I wanted to import path "maki", that tried to open "maki/maki/pictogram.svg"
2024-02-25 10:50:13 +01:00
David Larlet
3fee658938
chore: Use CSS variables 2024-02-23 14:49:28 -05:00
David Larlet
6300696a22
Merge branch 'master' into css-vars 2024-02-23 14:37:09 -05:00