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…
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…
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 ? :)
Bumps [hatch](https://github.com/pypa/hatch) from 1.12.0 to 1.13.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pypa/hatch/releases">hatch's
releases</a>.</em></p>
<blockquote>
<h2>Hatchling v1.13.0</h2>
<p><em><strong>Added:</strong></em></p>
<ul>
<li>Update the set of known trove classifiers to version 2023.2.8</li>
</ul>
<h2>Hatch v1.13.0</h2>
<p><em><strong>Added:</strong></em></p>
<ul>
<li>Support managing Python 3.13 distributions</li>
</ul>
<h2>Hatchling v1.12.2</h2>
<p><em><strong>Fixed:</strong></em></p>
<ul>
<li>Add <code>macos-max-compat</code> option to the <code>wheel</code>
target that is enabled by default to support the latest version 22.0 of
the <code>packaging</code> library</li>
</ul>
<h2>Hatchling v1.12.1</h2>
<p><em><strong>Fixed:</strong></em></p>
<ul>
<li>Fix minor regression in the PEP 517/660 function signatures that was
discovered by Fedora</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4e3c515bb1"><code>4e3c515</code></a>
release Hatch v1.13.0</li>
<li><a
href="204c0cdc30"><code>204c0cd</code></a>
Support managing Python 3.13 distributions (<a
href="https://redirect.github.com/pypa/hatch/issues/1753">#1753</a>)</li>
<li>See full diff in <a
href="https://github.com/pypa/hatch/compare/hatch-v1.12.0...hatch-v1.13.0">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material)
from 9.5.39 to 9.5.40.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/squidfunk/mkdocs-material/releases">mkdocs-material's
releases</a>.</em></p>
<blockquote>
<h2>mkdocs-material-9.5.40</h2>
<ul>
<li>Updated Latvian translations</li>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7597">#7597</a>:
Social cards not using site name on home page</li>
</ul>
<p>Thanks go to <a
href="https://github.com/pekkaklarck"><code>@pekkaklarck</code></a> and
<a href="https://github.com/klejejs"><code>@klejejs</code></a> for
their contributions</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG">mkdocs-material's
changelog</a>.</em></p>
<blockquote>
<p>mkdocs-material-9.5.40 (2024-10-10)</p>
<ul>
<li>Updated Latvian translations</li>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7597">#7597</a>:
Social cards not using site name on home page</li>
</ul>
<p>mkdocs-material-9.5.39+insiders-4.53.14 (2024-09-29)</p>
<ul>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7567">#7567</a>:
Empty headlines when using typeset plugin with anchorlinks</li>
</ul>
<p>mkdocs-material-9.5.39 (2024-09-29)</p>
<ul>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7226">#7226</a>:
not staying on page when using mike's canonical versioning</li>
</ul>
<p>mkdocs-material-9.5.38 (2024-09-26)</p>
<ul>
<li>Added Albanian translations</li>
</ul>
<p>mkdocs-material-9.5.37 (2024-09-25)</p>
<ul>
<li>Added 4th and 5th level ordered list styles</li>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7548">#7548</a>:
Tags have no spacing in search</li>
</ul>
<p>mkdocs-material-9.5.36 (2024-09-21)</p>
<ul>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7544">#7544</a>:
Social cards incorrectly rendering HTML entities</li>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7542">#7542</a>:
Improved support for setting custom list styles</li>
</ul>
<p>mkdocs-material-9.5.35 (2024-09-18)</p>
<ul>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7498">#7498</a>:
Search not showing for Vietnamese language</li>
</ul>
<p>mkdocs-material-9.5.34+insiders-4.53.13 (2024-09-14)</p>
<ul>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7520">#7520</a>:
Social plugin errors for generated files (MkDocs 1.6+)</li>
</ul>
<p>mkdocs-material-9.5.34 (2024-08-31)</p>
<ul>
<li>Updated Mermaid.js to version 11 (latest)</li>
</ul>
<p>mkdocs-material-9.5.33 (2024-08-23)</p>
<ul>
<li>Fixed <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7453">#7453</a>:
Incorrect position of tooltip when sorting table</li>
</ul>
<p>mkdocs-material-9.5.32 (2024-08-19)</p>
<ul>
<li>Fixed RXSS vulnerability via deep link in search results</li>
<li>Added support for fetching latest release from GitLab</li>
</ul>
<p>mkdocs-material-9.5.31+insiders-4.53.12 (2024-08-02)</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="921e522a51"><code>921e522</code></a>
Prepare 9.5.40 release</li>
<li><a
href="829d1c8db2"><code>829d1c8</code></a>
Fixed social cards not using site name on homepage (<a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7608">#7608</a>)</li>
<li><a
href="cf2b39d1c2"><code>cf2b39d</code></a>
Documentation</li>
<li><a
href="10177cc275"><code>10177cc</code></a>
Documentation (<a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7604">#7604</a>)</li>
<li><a
href="f0c99d89da"><code>f0c99d8</code></a>
Documentation (<a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7602">#7602</a>)</li>
<li><a
href="a9be02645b"><code>a9be026</code></a>
Fixed file watching for Chokidar 4</li>
<li><a
href="2014b634e8"><code>2014b63</code></a>
Fixed file watching for Chokidar 4</li>
<li><a
href="25b2107b53"><code>25b2107</code></a>
Updated dependencies</li>
<li><a
href="a83d44a7c8"><code>a83d44a</code></a>
Updated publishing guide (<a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7584">#7584</a>)</li>
<li><a
href="ffcabcaa15"><code>ffcabca</code></a>
Merge pull request <a
href="https://redirect.github.com/squidfunk/mkdocs-material/issues/7582">#7582</a>
from yanyongyu/schema/validation-anchors</li>
<li>Additional commits viewable in <a
href="https://github.com/squidfunk/mkdocs-material/compare/9.5.39...9.5.40">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Bumps [django](https://github.com/django/django) from 5.1.1 to 5.1.2.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c499184f19"><code>c499184</code></a>
[5.1.x] Bumped version for 5.1.2 release.</li>
<li><a
href="6e07a7769f"><code>6e07a77</code></a>
[5.1.x] Added release date for 5.1.2.</li>
<li><a
href="17fa7592af"><code>17fa759</code></a>
[5.1.x] Fixed <a
href="https://redirect.github.com/django/django/issues/35809">#35809</a>
-- Set background color for selected rows in the admin's...</li>
<li><a
href="e245f62d00"><code>e245f62</code></a>
[5.1.x] Updated translations from Transifex.</li>
<li><a
href="6bedb102e9"><code>6bedb10</code></a>
[5.1.x] Reindented attributes and methods for classes in
docs/ref/middleware....</li>
<li><a
href="bf64ac3567"><code>bf64ac3</code></a>
[5.1.x] Fixed <a
href="https://redirect.github.com/django/django/issues/35670">#35670</a>
-- Clarified the return value for LoginRequiredMiddlewar...</li>
<li><a
href="53031136f5"><code>5303113</code></a>
[5.1.x] Relocated path() explanation to docs/ref/urls.txt to simplify
tutoria...</li>
<li><a
href="22bce642a9"><code>22bce64</code></a>
[5.1.x] Fixed <a
href="https://redirect.github.com/django/django/issues/35734">#35734</a>
-- Used JSONB_BUILD_OBJECT database function on PostgreS...</li>
<li><a
href="9e146b27ad"><code>9e146b2</code></a>
[5.1.x] Made cosmetic edits to the Steering council docs.</li>
<li><a
href="251180f7f9"><code>251180f</code></a>
[5.1.x] Removed setting the release schedule from Steering Council
prerogativ...</li>
<li>Additional commits viewable in <a
href="https://github.com/django/django/compare/5.1.1...5.1.2">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>