Commit graph

2462 commits

Author SHA1 Message Date
Yohan Boniface
10efc5d103
Merge pull request #1573 from umap-project/map-preview
feat: add experimental "map preview" in /map/ endpoint
2024-02-07 19:14:37 +01:00
Yohan Boniface
7943c61b3e chore: do not consume style query string now that we handle keys separatly 2024-02-07 18:47:00 +01:00
David Larlet
bc8679a597
chore: put login fixture in a dedicated conftest 2024-02-07 12:42:37 -05:00
David Larlet
2af7705d4c
Use the request module for dashboard deletions 2024-02-07 12:32:01 -05:00
David Larlet
d4b380aa5f
feat: add icons to the dashboard actions 2024-02-07 12:32:00 -05:00
David Larlet
8a6e992b9c
Ability to clone a map and overall UI improvements 2024-02-07 12:32:00 -05:00
David Larlet
5d69d3c22f
Provide a link to delete maps from user’s dashboard 2024-02-07 12:32:00 -05:00
David Larlet
46cf432eb4
Paginate user’s maps combined downloads 2024-02-07 12:32:00 -05:00
David Larlet
5476cbee0f
Ability to download all maps from user’s dashboard 2024-02-07 12:32:00 -05:00
Yohan Boniface
f09e399b3c chore: refactor setting Map options from querystring 2024-02-07 17:53:45 +01:00
Yohan Boniface
77b35d079a
Merge pull request #1581 from umap-project/fix-legend-onload
fix: non loaded layers should still be visible in legend and data browser
2024-02-07 17:04:57 +01:00
Yohan Boniface
bd626690ef fix: non loaded layers should still be visible in legend and data browser
Also rework the browsable/browse methods to try to make them more
understandable…

fix #1554
2024-02-07 16:32:51 +01:00
David Larlet
3468a77ce7
Merge pull request #1569 from umap-project/sentry
feat: Adding Sentry errors reporter support
2024-02-07 09:35:52 -05:00
Yohan Boniface
f209f76e67
Merge pull request #1582 from umap-project/test-sleep
tests: remove sleep from test_owned_map
2024-02-07 15:31:02 +01:00
Yohan Boniface
5c49464c53 chore: bump to psycopg 3 2024-02-07 14:27:39 +01:00
Yohan Boniface
fc4cac19a9
Merge pull request #1533 from umap-project/dependabot/pip/pymdown-extensions-10.7
chore: bump pymdown-extensions from 10.4 to 10.7
2024-02-07 14:19:21 +01:00
Yohan Boniface
7bb65949e5 chore: bump django-environ==0.11.2 2024-02-07 14:17:55 +01:00
Yohan Boniface
93e9cdc920 chore: bump Django==5.0.2 2024-02-07 14:08:15 +01:00
Yohan Boniface
12542c1ad8 chore: bump social-auth-app-django==5.4.0 2024-02-07 14:05:07 +01:00
Yohan Boniface
80f6232294
Merge pull request #1566 from umap-project/dependabot/pip/social-auth-core-4.5.2
chore: bump social-auth-core from 4.4.2 to 4.5.2
2024-02-07 13:58:47 +01:00
Yohan Boniface
c334f7554e feat: add experimental "map preview"
This is the same as "map new", but it is not in edit mode. This
allow to click on the elements and see the popups instead of editing
it when using a `dataUrl` query string.
This way of using uMap is not documented, but it's used by some
partners (Deveco recently, data.gouv.fr historicaly).

In the same time, this PR adds two things:
- possibility to pass data direclty in querystring (instead of an URL):
  in the case of Deveco, they have pages where only point is shown (for
  each company)
- possibility to pass style options directly from query string: may
  allow for example to control the `popupTemplate`, eg. to use a table
  one that will display all properties of the clicked feature

Note: dataUrl and such also works in normal "map new" view. There are
two use cases around those parameters, from external sites:
- see this data on uMap (should point on map preview)
- create a map with those data (should point on map new)
2024-02-07 13:57:20 +01:00
Yohan Boniface
33b4dc093d tests: remove sleep from test_owned_map
fix #1441
2024-02-07 13:48:16 +01:00
David Larlet
f31a2f414a
docs: customizing header/footer templates 2024-02-06 12:56:09 -05:00
David Larlet
1ee9d7dd52
feat: allow to inject a header.html template
Useful to add scripts integration like Sentry
2024-02-06 12:45:40 -05:00
Yohan Boniface
2b08d499ac
Merge pull request #1579 from umap-project/dependabot/pip/hatch-1.9.3
chore: bump hatch from 1.9.1 to 1.9.3
2024-02-05 20:54:46 +01:00
dependabot[bot]
2e960a8d1d
chore: bump pymdown-extensions from 10.4 to 10.7
Bumps [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) from 10.4 to 10.7.
- [Release notes](https://github.com/facelessuser/pymdown-extensions/releases)
- [Commits](https://github.com/facelessuser/pymdown-extensions/compare/10.4...10.7)

---
updated-dependencies:
- dependency-name: pymdown-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 19:49:41 +00:00
dependabot[bot]
40b3c6439e
chore: bump hatch from 1.9.1 to 1.9.3
Bumps [hatch](https://github.com/pypa/hatch) from 1.9.1 to 1.9.3.
- [Release notes](https://github.com/pypa/hatch/releases)
- [Commits](https://github.com/pypa/hatch/compare/hatch-v1.9.1...hatch-v1.9.3)

---
updated-dependencies:
- dependency-name: hatch
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 19:49:09 +00:00
Yohan Boniface
3ba417ed02
Merge pull request #1578 from umap-project/dependabot/pip/ruff-0.2.0
chore: bump ruff from 0.1.6 to 0.2.0
2024-02-05 20:48:21 +01:00
Yohan Boniface
cd887732ab
Merge pull request #1580 from umap-project/dependabot/pip/mkdocs-material-9.5.7
chore: bump mkdocs-material from 9.4.14 to 9.5.7
2024-02-05 20:47:57 +01:00
dependabot[bot]
9352271232
chore: bump mkdocs-material from 9.4.14 to 9.5.7
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.4.14 to 9.5.7.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.4.14...9.5.7)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 17:52:13 +00:00
dependabot[bot]
7ebf05d1b9
chore: bump ruff from 0.1.6 to 0.2.0
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.1.6 to 0.2.0.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/v0.1.6...v0.2.0)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 17:51:52 +00:00
Yohan Boniface
6fb7b02b40
Merge pull request #1555 from umap-project/request-module
chore: move xhr management to a module and refactor
2024-02-05 17:59:48 +01:00
Yohan Boniface
0ebb7615aa chore: make Request and ServerRequest pure JS class
And use UI for dealing with dataloading/dataload events (used
for progress bar).
2024-02-05 07:23:16 +01:00
Yohan Boniface
4a99f357f2 chore: lint 2024-02-05 07:23:16 +01:00
Yohan Boniface
325880f86f chore: make all request errors inherit the same parent class 2024-02-05 07:23:16 +01:00
Yohan Boniface
6b5ecac9c6 chore: move Map.Init.js test to playwright suite 2024-02-05 07:23:16 +01:00
Yohan Boniface
0b65d0dd9d chore: move iframe options test to playwright 2024-02-05 07:23:16 +01:00
Yohan Boniface
2271669e80 chore: move browser tests to playwright 2024-02-05 07:23:16 +01:00
Yohan Boniface
e44e0df69a tests: fix 90% of the javascript tests 2024-02-05 07:23:15 +01:00
Yohan Boniface
d1df70b0f4 fix: proper way to deal with 412 2024-02-05 07:22:53 +01:00
Yohan Boniface
d07d9f61d2 chore: refactore datalayers loading 2024-02-05 07:22:53 +01:00
Yohan Boniface
3f1070c90d chore: rename NokError and fix init param 2024-02-05 07:22:53 +01:00
Yohan Boniface
da7d09527b chore: catch error when using Request, and make remote URL working again
I decided to remove the check `is_ajax` from `validate_url` to simplify
and edge case, and because I think it was more or less useless.
Basically, when getting remote data, we have two cases:
- direct call to the remote URL
- proxy through our `ajax_proxy` system (to work around CORS limitations)

In the first case, we cannot set the `X-Requested-With` header, otherwise
preflight step will fail, and in the second case, until now, we needed
to set this header for this `is_ajax` check to pass. So keeping this check
would mean adapting the behaviour of the Request/ServerRequest class in
a non elegant way. So let's make it simple…
2024-02-05 07:22:53 +01:00
Yohan Boniface
5926eb53ba chore: catch error in getMore 2024-02-05 07:22:53 +01:00
Yohan Boniface
16265b566e chore: remove xhr module, now replaced by request.js 2024-02-05 07:22:53 +01:00
Yohan Boniface
ab966722f9 wip: rework request error flow 2024-02-05 07:22:53 +01:00
Yohan Boniface
b947134fa2 chore: ServerRequest returns an explicit error if any 2024-02-05 07:22:53 +01:00
Yohan Boniface
c50be398ab wip: use new request for fetching remote data 2024-02-05 07:22:53 +01:00
Yohan Boniface
8b2778116d wip: make the getMore button work again with new Request 2024-02-05 07:22:53 +01:00
Yohan Boniface
49f600adfa wip: refactor login flow
Instead of dealing with in JavaScript, let's do a more classic
HTTP flow.

The main flows work, but there is still at least one to deal with:
when editing a map without being logged in, the server may ask for
login, and in this case we should login THEN reissue the request,
so we need to interrupt the first request in some way,
otherwise the server will still answer with a 403, which is what
happens after this commit.
2024-02-05 07:22:53 +01:00