Compare commits

...

218 Commits

Author SHA1 Message Date
dependabot[bot] ebece40308 Merge 3e7e1e6ce9 into c58191ff62 2025-02-20 14:04:30 +00:00
dependabot[bot] c58191ff62 Bump i18next-browser-languagedetector from 8.0.2 to 8.0.4 (#1072)
Bumps
[i18next-browser-languagedetector](https://github.com/i18next/i18next-browser-languageDetector)
from 8.0.2 to 8.0.4.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/i18next-browser-languageDetector/blob/master/CHANGELOG.md">i18next-browser-languagedetector's
changelog</a>.</em></p>
<blockquote>
<h3>8.0.4</h3>
<ul>
<li>fix localstorage check to try to address <a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/297">297</a>
<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/pull/300">300</a></li>
</ul>
<h3>8.0.3</h3>
<ul>
<li>change localstorage check to try to address <a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/297">297</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/131b04be995f0a24b2bfd5a92e15516407a7127f"><code>131b04b</code></a>
8.0.4</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/421e91df5ae5781a513910f3d5e44027285f583d"><code>421e91d</code></a>
release</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/c24af003cb58e4c7104c11006dc342bea6dade71"><code>c24af00</code></a>
fix detection of window existence (<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/300">#300</a>)</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/c7ba07514a897f83add81253a00160e3a1cf6bc7"><code>c7ba075</code></a>
Bump elliptic from 6.6.0 to 6.6.1 (<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/299">#299</a>)</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/4f5a90ee514f1b3de9e9bf89206655ccbd6187d4"><code>4f5a90e</code></a>
Bump rollup from 2.79.1 to 2.79.2 (<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/298">#298</a>)</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/a665fe839636530e0c3387e6f9c7756dffccf0aa"><code>a665fe8</code></a>
8.0.3</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/c24ea1777b81fc2eebb508e443e903880684d1c9"><code>c24ea17</code></a>
change localstorage check to try to address <a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/297">#297</a></li>
<li>See full diff in <a
href="https://github.com/i18next/i18next-browser-languageDetector/compare/v8.0.2...v8.0.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=i18next-browser-languagedetector&package-manager=npm_and_yarn&previous-version=8.0.2&new-version=8.0.4)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-20 14:04:15 +00:00
dependabot[bot] 3e7e1e6ce9 Bump @shellygo/cypress-test-utils from 4.1.12 to 4.1.13
Bumps [@shellygo/cypress-test-utils](https://github.com/shellyDCMS/cypress-test-utils) from 4.1.12 to 4.1.13.
- [Commits](https://github.com/shellyDCMS/cypress-test-utils/commits)

---
updated-dependencies:
- dependency-name: "@shellygo/cypress-test-utils"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-17 13:37:58 +00:00
dependabot[bot] 8fbb581249 Bump color from 4.2.3 to 5.0.0 (#1056)
Bumps [color](https://github.com/Qix-/color) from 4.2.3 to 5.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/Qix-/color/releases">color's
releases</a>.</em></p>
<blockquote>
<h2>5.0.0</h2>
<h2>What's Changed</h2>
<ul>
<li>move to ESM by <a
href="https://github.com/LitoMore"><code>@​LitoMore</code></a> in <a
href="https://github.com/Qix-/color/pull/264">https://github.com/Qix-/color/pull/264</a></li>
<li>fix: typo error, cant arrive at the anchor by <a
href="https://github.com/buzuosheng"><code>@​buzuosheng</code></a> in <a
href="https://github.com/Qix-/color/pull/252">https://github.com/Qix-/color/pull/252</a></li>
<li>Added more constructor examples (<a
href="https://github.com/Qix-/color/issues/181">#181</a>) by <a
href="https://github.com/ChristinaRau"><code>@​ChristinaRau</code></a>
in <a
href="https://github.com/Qix-/color/pull/260">https://github.com/Qix-/color/pull/260</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/buzuosheng"><code>@​buzuosheng</code></a> made
their first contribution in <a
href="https://github.com/Qix-/color/pull/252">https://github.com/Qix-/color/pull/252</a></li>
<li><a
href="https://github.com/ChristinaRau"><code>@​ChristinaRau</code></a>
made their first contribution in <a
href="https://github.com/Qix-/color/pull/260">https://github.com/Qix-/color/pull/260</a></li>
<li><a href="https://github.com/LitoMore"><code>@​LitoMore</code></a>
made their first contribution in <a
href="https://github.com/Qix-/color/pull/264">https://github.com/Qix-/color/pull/264</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/Qix-/color/compare/4.2.3...5.0.0">https://github.com/Qix-/color/compare/4.2.3...5.0.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/Qix-/color/commit/fef7b619edd678455595b9b6a10780f13b58d285"><code>fef7b61</code></a>
5.0.0</li>
<li><a
href="https://github.com/Qix-/color/commit/f14937b79b7b81f5072518a584ab4799f3f3fe5c"><code>f14937b</code></a>
move to ESM (<a
href="https://github.com/Qix-/color/issues/264">#264</a>)</li>
<li><a
href="https://github.com/Qix-/color/commit/daec0b26942cd37dfa13bc5592a58670e77d2143"><code>daec0b2</code></a>
revert incorrect language tag</li>
<li><a
href="https://github.com/Qix-/color/commit/a6e6f67a9be7796ca8bd938042cb318d6d2c5d88"><code>a6e6f67</code></a>
Added more constructor examples (<a
href="https://github.com/Qix-/color/issues/181">#181</a>) (<a
href="https://github.com/Qix-/color/issues/260">#260</a>)</li>
<li><a
href="https://github.com/Qix-/color/commit/e188999dee229c902102ec37e398ff4d868616e5"><code>e188999</code></a>
fix: typo error, cant arrive at the anchor (<a
href="https://github.com/Qix-/color/issues/252">#252</a>)</li>
<li>See full diff in <a
href="https://github.com/Qix-/color/compare/4.2.3...5.0.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=color&package-manager=npm_and_yarn&previous-version=4.2.3&new-version=5.0.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-12 14:05:00 +00:00
dependabot[bot] b01f7247fe Bump vite from 6.0.11 to 6.1.0 (#1048)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 6.0.11 to 6.1.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>create-vite@6.1.0</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/create-vite@6.1.0/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.1.0</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.1.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.1.0-beta.2</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.1.0-beta.2/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.1.0-beta.1</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.1.0-beta.1/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>v6.1.0-beta.0</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.1.0-beta.0/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2>6.1.0 (2025-02-05)</h2>
<h3>Features</h3>
<ul>
<li>feat: show hosts in cert in CLI (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19317">#19317</a>)
(<a
href="https://github.com/vitejs/vite/commit/a5e306f2fc34fc70d543028c319367ff9b232ea0">a5e306f</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19317">#19317</a></li>
<li>feat: support for env var for defining allowed hosts (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19325">#19325</a>)
(<a
href="https://github.com/vitejs/vite/commit/4d88f6c9391f96275b1359f1343ee2ec3e1adb7b">4d88f6c</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19325">#19325</a></li>
<li>feat: use native runtime to import the config (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19178">#19178</a>)
(<a
href="https://github.com/vitejs/vite/commit/7c2a7942cc8494a98fbc2b0235d91faf25242d30">7c2a794</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19178">#19178</a></li>
<li>feat: print <code>port</code> in the logged error message after
failed WS connection with <code>EADDRINUSE</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19212">#19212</a>)
(<a
href="https://github.com/vitejs/vite/commit/14027b0f2a9b01c14815c38aab22baf5b29594bb">14027b0</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19212">#19212</a></li>
<li>perf(css): only run postcss when needed (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19061">#19061</a>)
(<a
href="https://github.com/vitejs/vite/commit/30194fa1e41dda6470aa20f2bb34655c4bfd9cd1">30194fa</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19061">#19061</a></li>
<li>feat: add support for <code>.jxl</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18855">#18855</a>)
(<a
href="https://github.com/vitejs/vite/commit/57b397c4aa3d3c657e0117c2468800d627049c8d">57b397c</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18855">#18855</a></li>
<li>feat: add the <code>builtins</code> environment <code>resolve</code>
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18584">#18584</a>)
(<a
href="https://github.com/vitejs/vite/commit/2c2d521abfd7a3263b5082f9420738ad0ef67c71">2c2d521</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18584">#18584</a></li>
<li>feat: call Logger for plugin logs in build (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/13757">#13757</a>)
(<a
href="https://github.com/vitejs/vite/commit/bf3e41082932f4bf7d828e18ab0346b2ac8b59c9">bf3e410</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/13757">#13757</a></li>
<li>feat: export <code>defaultAllowedOrigins</code> for user-land config
and 3rd party plugins (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19259">#19259</a>)
(<a
href="https://github.com/vitejs/vite/commit/dc8946b9f6483ca7d63df3a5cbba307f1c21041e">dc8946b</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19259">#19259</a></li>
<li>feat: expose createServerModuleRunnerTransport (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18730">#18730</a>)
(<a
href="https://github.com/vitejs/vite/commit/8c24ee4b4fcfa16fdd8bb699643a92ee81f9c92b">8c24ee4</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18730">#18730</a></li>
<li>feat: support async for proxy.bypass (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18940">#18940</a>)
(<a
href="https://github.com/vitejs/vite/commit/a6b958741bd97d631aba21aa5925bbf2bca65dac">a6b9587</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18940">#18940</a></li>
<li>feat: support log related functions in dev (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18922">#18922</a>)
(<a
href="https://github.com/vitejs/vite/commit/3766004289fde3300d1278fcf35f3bb980d9785f">3766004</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18922">#18922</a></li>
<li>feat: use module runner to import the config (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18637">#18637</a>)
(<a
href="https://github.com/vitejs/vite/commit/b7e0e42098dd2d42285a9d3c4f39c48a580367e7">b7e0e42</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18637">#18637</a></li>
<li>feat(css): add friendly errors for IE hacks that are not supported
by lightningcss (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19072">#19072</a>)
(<a
href="https://github.com/vitejs/vite/commit/caad985abca6450d56ca3d4e27e1e859fe8909b9">caad985</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19072">#19072</a></li>
<li>feat(optimizer): support bun text lockfile (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18403">#18403</a>)
(<a
href="https://github.com/vitejs/vite/commit/05b005fc25a1e8dda749fb14149aa2f3c988b6a1">05b005f</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18403">#18403</a></li>
<li>feat(reporter): add <code>wasm</code> to the compressible assets
regex (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19085">#19085</a>)
(<a
href="https://github.com/vitejs/vite/commit/ce84142110584eadfccbd6ce9319573358af31a6">ce84142</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19085">#19085</a></li>
<li>feat(worker): support dynamic worker option fields (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19010">#19010</a>)
(<a
href="https://github.com/vitejs/vite/commit/d0c35232c6ccbcf448941328df34d15e9f73919b">d0c3523</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19010">#19010</a></li>
</ul>
<h3>Fixes</h3>
<ul>
<li>fix: avoid builtStart during vite optimize (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19356">#19356</a>)
(<a
href="https://github.com/vitejs/vite/commit/fdb36e076969c763d4249f6db890f8bf26e9f5d1">fdb36e0</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19356">#19356</a></li>
<li>fix(build): fix stale build manifest on watch rebuild (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19361">#19361</a>)
(<a
href="https://github.com/vitejs/vite/commit/fcd578587b2fbdef0ff8de8a0d97c9fc6da19ce1">fcd5785</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19361">#19361</a></li>
<li>fix: allow expanding env vars in reverse order (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19352">#19352</a>)
(<a
href="https://github.com/vitejs/vite/commit/3f5f2bddf142b2d1b162d4553d26f1ff0758b10d">3f5f2bd</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19352">#19352</a></li>
<li>fix: avoid packageJson without name in
<code>resolveLibCssFilename</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19324">#19324</a>)
(<a
href="https://github.com/vitejs/vite/commit/f183bdf2a799e703672ab1887d707ce120053eb2">f183bdf</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19324">#19324</a></li>
<li>fix(html): fix css disorder when building multiple entry html (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19143">#19143</a>)
(<a
href="https://github.com/vitejs/vite/commit/e7b4ba37f90a033036326b45023a1753584dd259">e7b4ba3</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19143">#19143</a></li>
<li>fix: don't call buildStart hooks for <code>vite optimize</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19347">#19347</a>)
(<a
href="https://github.com/vitejs/vite/commit/19ffad0a5aaf8c0ff55409e746048431b8b6640d">19ffad0</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19347">#19347</a></li>
<li>fix: don't call next middleware if user sent response in
proxy.bypass (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19318">#19318</a>)
(<a
href="https://github.com/vitejs/vite/commit/7e6364de2b0f3bf65aefaf451646ca500bad8239">7e6364d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19318">#19318</a></li>
<li>fix: respect top-level <code>server.preTransformRequests</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19272">#19272</a>)
(<a
href="https://github.com/vitejs/vite/commit/12aaa585bc3fac403bf93f48ea117482cc7f43b1">12aaa58</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19272">#19272</a></li>
<li>fix: use <code>nodeLikeBuiltins</code> for <code>ssr.target:
'webworker'</code> without <code>noExternal: true</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19313">#19313</a>)
(<a
href="https://github.com/vitejs/vite/commit/9fc31b6e4d4f2a5bd9711d4f84dcb55061ebead0">9fc31b6</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19313">#19313</a></li>
<li>fix(css): less <code>@plugin</code> imports of JS files treated as
CSS and rebased (fix <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19268">#19268</a>)
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19269">#19269</a>)
(<a
href="https://github.com/vitejs/vite/commit/602b373dcdc755816ce28913873f70550347e936">602b373</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19268">#19268</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/19269">#19269</a></li>
<li>fix(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19296">#19296</a>)
(<a
href="https://github.com/vitejs/vite/commit/2bea7cec4b7fddbd5f2fb6090a7eaf5ae7ca0f1b">2bea7ce</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19296">#19296</a></li>
<li>fix(resolve): preserve hash/search of file url (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19300">#19300</a>)
(<a
href="https://github.com/vitejs/vite/commit/d1e1b24c57328b5a808b981829503caa6ffadb56">d1e1b24</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19300">#19300</a></li>
<li>fix(resolve): warn if node-like builtin was imported when
<code>resolve.builtin</code> is empty (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19312">#19312</a>)
(<a
href="https://github.com/vitejs/vite/commit/b7aba0bc925f6d672bbb6a1e6c8c5c123a3bef55">b7aba0b</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19312">#19312</a></li>
<li>fix(ssr): fix transform error due to export all id scope (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19331">#19331</a>)
(<a
href="https://github.com/vitejs/vite/commit/e28bce244918dac27b26d4e428f86b323a1c51ba">e28bce2</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19331">#19331</a></li>
<li>fix(ssr): pretty print plugin error in <code>ssrLoadModule</code>
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19290">#19290</a>)
(<a
href="https://github.com/vitejs/vite/commit/353c467610e2d92c0929fa4abd03f2cbd26e34ed">353c467</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19290">#19290</a></li>
<li>fix: change ResolvedConfig type to interface to allow extending it
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19210">#19210</a>)
(<a
href="https://github.com/vitejs/vite/commit/bc851e31d88cb26a2cba3fa46763bcd368e8df36">bc851e3</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19210">#19210</a></li>
<li>fix: correctly resolve hmr dep ids and fallback to url (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18840">#18840</a>)
(<a
href="https://github.com/vitejs/vite/commit/b84498b6def7d57ff6719da2d2baf6e29f0bb819">b84498b</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18840">#18840</a></li>
<li>fix: make <code>--force</code> work for all environments (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18901">#18901</a>)
(<a
href="https://github.com/vitejs/vite/commit/51a42c6b6a285fb1f092be5bbd2e18cd1fe2b214">51a42c6</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18901">#18901</a></li>
<li>fix: use loc.file from rollup errors if available (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19222">#19222</a>)
(<a
href="https://github.com/vitejs/vite/commit/ce3fe236de625de745643e127e27f2a5b52c6d2e">ce3fe23</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19222">#19222</a></li>
<li>fix(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19190">#19190</a>)
(<a
href="https://github.com/vitejs/vite/commit/f2c07dbfc874b46f6e09bb04996d0514663e4544">f2c07db</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19190">#19190</a></li>
<li>fix(hmr): register inlined assets as a dependency of CSS file (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18979">#18979</a>)
(<a
href="https://github.com/vitejs/vite/commit/eb22a74d29813d30be48d4413d785eedb0064b2c">eb22a74</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18979">#18979</a></li>
<li>fix(resolve): support resolving TS files by JS extension specifiers
in JS files (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18889">#18889</a>)
(<a
href="https://github.com/vitejs/vite/commit/612332b9bbe8d489265aea31c9c9a712319abc51">612332b</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18889">#18889</a></li>
<li>fix(ssr): combine empty source mappings (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19226">#19226</a>)
(<a
href="https://github.com/vitejs/vite/commit/ba03da2a8c9ea6b26533cbcc4e50d58dc36499e2">ba03da2</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19226">#19226</a></li>
<li>fix(utils): clone <code>RegExp</code> values with <code>new
RegExp</code> instead of <code>structuredClone</code> (fix <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19245">#19245</a>,
fix <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/1">#1</a>
(<a
href="https://github.com/vitejs/vite/commit/56ad2bef0353a4d00cd18789de7f4e7e5329d663">56ad2be</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19245">#19245</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/18875">#18875</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/19247">#19247</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vitejs/vite/commit/3734f8099e3922c189497ce404fe7ff2f8929ae1"><code>3734f80</code></a>
fix(css): escape double quotes in <code>url()</code> when lightningcss
is used (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18997">#18997</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/2b4f115129fb3fbd730a92078acb724f8527b7f7"><code>2b4f115</code></a>
fix(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18996">#18996</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/12b612d8be2a18456fd94a2f0291d32d1ffb29d4"><code>12b612d</code></a>
fix: fallback terser to main thread when function options are used (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18987">#18987</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/d88d0004a8e891ca6026d356695e0b319caa7fce"><code>d88d000</code></a>
fix(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18967">#18967</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/21680bdf9ca7c12f677136b56e47f46469db8be2"><code>21680bd</code></a>
fix(css): skip non css in custom sass importer (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18970">#18970</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/62fad6d79f83daf916dde866909a2a3dd0c79583"><code>62fad6d</code></a>
chore(deps): update dependency <code>@​rollup/plugin-node-resolve</code>
to v16 (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18968">#18968</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/8a6bb4e11d5c1b61511ae1e5ed3ae3c65a33b2dc"><code>8a6bb4e</code></a>
fix(optimizer): keep NODE_ENV as-is when keepProcessEnv is
<code>true</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18899">#18899</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/7d6dd5d1d655d173668192509f63ac4ebf7af299"><code>7d6dd5d</code></a>
fix(ssr): recreate ssrCompatModuleRunner on restart (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18973">#18973</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/c4b532cc900bf988073583511f57bd581755d5e3"><code>c4b532c</code></a>
fix(css): root relative import in sass modern API on Windows (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18945">#18945</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/27f691b0c7dca2259108fe6b79583b459429bf7f"><code>27f691b</code></a>
refactor: make internal invoke event to use the same interface with
`handleIn...</li>
<li>Additional commits viewable in <a
href="https://github.com/vitejs/vite/commits/create-vite@6.1.0/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=6.0.11&new-version=6.1.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-06 14:12:04 +00:00
dependabot[bot] 2c408689a3 Bump cypress from 14.0.1 to 14.0.2 (#1049)
Bumps [cypress](https://github.com/cypress-io/cypress) from 14.0.1 to
14.0.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/cypress-io/cypress/releases">cypress's
releases</a>.</em></p>
<blockquote>
<h2>v14.0.2</h2>
<p>Changelog: <a
href="https://docs.cypress.io/app/references/changelog#14-0-2">https://docs.cypress.io/app/references/changelog#14-0-2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/cypress-io/cypress/commit/6f067bcab5db953ee777df9b9823130bcd8b49a7"><code>6f067bc</code></a>
chore: release 14.0.2 (<a
href="https://redirect.github.com/cypress-io/cypress/issues/31021">#31021</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/4441a8f629649fb41bf3e0a28453bb002824c180"><code>4441a8f</code></a>
chore: do NOT encode backslash as this will cause pathing issues on
windows (...</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/e8e2d92ac269a506f58ef82eec3e2c1bec5b53e8"><code>e8e2d92</code></a>
misc: Updated mismatched dependencies warning message to be neutral (<a
href="https://redirect.github.com/cypress-io/cypress/issues/31011">#31011</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/46a473dfafd55e426f6ac18e2e8393a83403c23b"><code>46a473d</code></a>
fix: retry instance creation when the Cloud request fails (<a
href="https://redirect.github.com/cypress-io/cypress/issues/31019">#31019</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/37ad2329d65ca3de7be572199de977c7471748e7"><code>37ad232</code></a>
fix: Error codeframes in retry failures display the code that produced
the er...</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/2a57c8ba156502c88349448e0a30b047a3e282a9"><code>2a57c8b</code></a>
fix: make sure privileged commands can run when there is a space in the
spec ...</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/fdb58d43f15f63b72ca565242108aa332b1f904e"><code>fdb58d4</code></a>
chore: Update relative references to internal packages to <a
href="https://github.com/packages"><code>@​packages</code></a>
reference...</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/239f3d061a44a6887304fad105384195b9903758"><code>239f3d0</code></a>
chore: Update v8 snapshot cache - windows (<a
href="https://redirect.github.com/cypress-io/cypress/issues/31008">#31008</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/3535ae2c3c08ba5cbf90a1064936822a5caa9efe"><code>3535ae2</code></a>
chore: Update v8 snapshot cache - darwin (<a
href="https://redirect.github.com/cypress-io/cypress/issues/31007">#31007</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/1cec53b3f7a6bb060f0374d80ef5f0b1b96d3c80"><code>1cec53b</code></a>
chore: Update v8 snapshot cache - linux (<a
href="https://redirect.github.com/cypress-io/cypress/issues/31006">#31006</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/cypress-io/cypress/compare/v14.0.1...v14.0.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cypress&package-manager=npm_and_yarn&previous-version=14.0.1&new-version=14.0.2)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-06 14:05:10 +00:00
Maurizio Napolitano da361509d2 added italian version (#1045)
## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - added italian version
2025-02-04 08:35:49 +02:00
dependabot[bot] b0e19cc33d Bump @shellygo/cypress-test-utils from 4.1.11 to 4.1.12 (#1043)
Bumps
[@shellygo/cypress-test-utils](https://github.com/shellyDCMS/cypress-test-utils)
from 4.1.11 to 4.1.12.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/shellyDCMS/cypress-test-utils/commits">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@shellygo/cypress-test-utils&package-manager=npm_and_yarn&previous-version=4.1.11&new-version=4.1.12)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-03 08:24:29 +00:00
dependabot[bot] 7fe39e548a Bump stylelint-scss from 6.10.1 to 6.11.0 (#1042)
Bumps [stylelint-scss](https://github.com/stylelint-scss/stylelint-scss)
from 6.10.1 to 6.11.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint-scss/stylelint-scss/releases">stylelint-scss's
releases</a>.</em></p>
<blockquote>
<h2>6.11.0</h2>
<ul>
<li>Added: <code>no-duplicate-load-rules</code> rule (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1103">#1103</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> allow
functions from explicit namespaces (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1113">#1113</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.1...v6.11.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.1...v6.11.0</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint-scss/stylelint-scss/blob/master/CHANGELOG.md">stylelint-scss's
changelog</a>.</em></p>
<blockquote>
<h1>6.11.0</h1>
<ul>
<li>Added: <code>no-duplicate-load-rules</code> rule (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1103">#1103</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> allow
functions from explicit namespaces (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1113">#1113</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.1...v6.11.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.1...v6.11.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/f8f68be9552d86e3930a6bc39aca3c62db31198e"><code>f8f68be</code></a>
6.11.0</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/9ae636ba0fa184d020eb0d1d0d58af642bb2590b"><code>9ae636b</code></a>
Prepare version 6.11.0</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/75fb6806099a565b3d340ebb171d665fbc5e8891"><code>75fb680</code></a>
Add <code>no-duplicate-load-rules</code> rule to README</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/d58262a560d746f43af7f026ab1c1096da9701ed"><code>d58262a</code></a>
build(deps-dev): bump np from 10.1.0 to 10.2.0 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1120">#1120</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/e0482010ee48cbc4c31313fbc0757d19c9c12e42"><code>e048201</code></a>
build(deps-dev): bump stylelint from 16.14.0 to 16.14.1 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1119">#1119</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/60e77d4f8d1d04357492e6b024e87a43e61fe28d"><code>60e77d4</code></a>
Add <code>no-duplicate-load-rules</code> rule. (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1103">#1103</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/ae202e3b00cfd2d3f983b9dca446938adc703a3b"><code>ae202e3</code></a>
build(deps): bump mdn-data from 2.14.0 to 2.15.0 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1115">#1115</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/485e6a29a201f1355b016d099747f50b6abb30f6"><code>485e6a2</code></a>
build(deps-dev): bump jest-preset-stylelint from 7.1.1 to 7.2.0 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1117">#1117</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/59a8d16f9b548aa86045ed4f949186fc445c053b"><code>59a8d16</code></a>
build(deps-dev): bump stylelint from 16.13.2 to 16.14.0 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1116">#1116</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/7edcc413cbd6966fd331e823fcdce32a20ac97b4"><code>7edcc41</code></a>
Allow functions from explicit namespaces (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1113">#1113</a>)</li>
<li>See full diff in <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.1...v6.11.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=stylelint-scss&package-manager=npm_and_yarn&previous-version=6.10.1&new-version=6.11.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-30 13:44:18 +00:00
dependabot[bot] 3dde66b6e9 Bump ol from 10.3.1 to 10.4.0 (#1041)
Bumps [ol](https://github.com/openlayers/openlayers) from 10.3.1 to
10.4.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/openlayers/openlayers/releases">ol's
releases</a>.</em></p>
<blockquote>
<h2>v10.4.0</h2>
<p>With more than 40 pull requests, the 10.4 release brings performance
improvements, bug fixes, better TypeScript generics and new features.
New features include a convenience <code>Image</code> layer loader for
debugging MapServer map files using the MapServer CGI API, and an
experimental <code>WebGLVectorTile</code> layer.</p>
<h2>Upgrade notes</h2>
<h3>Deprecation of ol/layer/WebGLPoints</h3>
<p>Use <code>ol/layer/WebGLVector</code> instead. Besides rendering
points it will also render lines and polygons.
In most cases this is a drop-in replacement. To use filtering the style
and filter have to be in a nested object.</p>
<pre lang="js"><code>// Before
new WebGLPointsLayer({
filter: ['between', ['get', 'year'], ['var', 'minYear'], ['var',
'maxYear']],
  style: {
    'circle-radius': 8,
    'circle-fill-color': 'blue',
  },
  source: vectorSource,
})
<p>// After
new WebGLVectorLayer({
style: [{
filter: ['between', ['get', 'year'], ['var', 'minYear'], ['var',
'maxYear']],
style: {
'circle-radius': 8,
'circle-fill-color': 'blue',
},
}],
source: vectorSource,
})
</code></pre></p>
<h3>ol-mapbox-style compatibility</h3>
<p>This version of OpenLayers is only compatible with
<code>ol-mapbox-style@12.4.0</code> or higher.</p>
<h3>Returning false from a one-time listener added with
<code>once</code></h3>
<p>Returning false from the listener function will now stop propagation,
when the listener is added with <code>once</code>.
Previously this only worked with the <code>on</code> method.</p>
<h4>The <code>filter</code> option for <code>WebGLPointsLayer</code> has
changed</h4>
<p>The filter option for the <code>WebGLPointsLayer</code> must now be
specified alongside other options instead of being part of the
<code>style</code> object. Note that the <code>WebGLPointsLayer</code>
is not part of the stable API and is subject to breaking changes between
major releases.</p>
<pre lang="js"><code>// Before
new WebGLPointsLayer({
  style: {
&lt;/tr&gt;&lt;/table&gt; 
</code></pre>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/openlayers/openlayers/commit/85219a86c52428e7736957e7255f45a34e645cef"><code>85219a8</code></a>
Updates for the 10.4.0 release</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/b8306d3f538f2633a50dab90818631ad35e6b3f3"><code>b8306d3</code></a>
Merge pull request <a
href="https://redirect.github.com/openlayers/openlayers/issues/16591">#16591</a>
from geographika/mapserver-source</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/2262a6a79c0f13d4008c9f36bee2701a3a820493"><code>2262a6a</code></a>
Fix typo</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/b79ccdf1ac5ff8051132b056fab3ae526d49fabb"><code>b79ccdf</code></a>
Update comments</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/7549ac61e9555d3e7be0d11a2f22cdff32061295"><code>7549ac6</code></a>
Update test/browser/spec/ol/source/mapserver.test.js</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/9b358c6f0a5a0b0e0fdff3dba4380ce0941b1a15"><code>9b358c6</code></a>
Update file names and title to include CGI</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/5590f983490e3dd48beb279cd9f0494dd2ac715d"><code>5590f98</code></a>
Remove map from test and test all querystring parameters are set
correctly</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/698c82ee7e7ec085fcbda19e9632552b0eeea623"><code>698c82e</code></a>
Update tests</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/c7a99bfb36c1cdd93e7560408e2b051cf0e389cc"><code>c7a99bf</code></a>
Add mapserver.js</li>
<li><a
href="https://github.com/openlayers/openlayers/commit/b8a98dfe76fb04ce15d340a5415409f7135e95f1"><code>b8a98df</code></a>
Add createLoader function for MapServer layers with example and
tests</li>
<li>Additional commits viewable in <a
href="https://github.com/openlayers/openlayers/compare/v10.3.1...v10.4.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ol&package-manager=npm_and_yarn&previous-version=10.3.1&new-version=10.4.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-30 13:43:58 +00:00
dependabot[bot] 1692138e51 Bump cypress from 14.0.0 to 14.0.1 (#1040)
[//]: # (dependabot-start)
⚠️  **Dependabot is rebasing this PR** ⚠️ 

Rebasing might not happen immediately, so don't worry if this takes some
time.

Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.

---

[//]: # (dependabot-end)

Bumps [cypress](https://github.com/cypress-io/cypress) from 14.0.0 to
14.0.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/cypress-io/cypress/releases">cypress's
releases</a>.</em></p>
<blockquote>
<h2>v14.0.1</h2>
<p>Changelog: <a
href="https://docs.cypress.io/app/references/changelog#14-0-1">https://docs.cypress.io/app/references/changelog#14-0-1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/cypress-io/cypress/commit/cbc28a6d3871e036d60aed4b7034dccf34888ff2"><code>cbc28a6</code></a>
chore: release 14.0.1 (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30963">#30963</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/7a7286308847030f734d1e73458f8b6ba39e345a"><code>7a72863</code></a>
chore: convert xhrs js to ts (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30935">#30935</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/87a845ab002a08cfef0fb3bb63e30a69c2ce1243"><code>87a845a</code></a>
misc: Update on.cypress.come urls to correct on.cypress.io urls (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30953">#30953</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/f072ca1c03ae6dd4f7e96f94c30df8781c4701dc"><code>f072ca1</code></a>
chore: release <code>@​cypress/vite-dev-server-v6</code>.0.2</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/0811921dd026146041e1fcae60755dc4f5a21398"><code>0811921</code></a>
fix: visibility issue when parent element is clipping (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30934">#30934</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/1548047aa8c230758ebdbef2aca887b6aa500ee4"><code>1548047</code></a>
fix: non-HTMLElement(s) fail during assertions (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30947">#30947</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/e06c846c102299e4603844dba681f64978ddd52c"><code>e06c846</code></a>
chore: fix kitchensink windows (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30909">#30909</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/dbd11d436bc3c79771f0b8335a51a438fdb5b8f9"><code>dbd11d4</code></a>
chore: remove various dead code (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30818">#30818</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/96e05f106cbc43b97060e7519267eaaa236502f1"><code>96e05f1</code></a>
chore: Update Chrome (beta) to 133.0.6943.27 (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30940">#30940</a>)</li>
<li><a
href="https://github.com/cypress-io/cypress/commit/bcfd873939440bb65a7b4dcb8d203b8a86085205"><code>bcfd873</code></a>
chore: updating v8 snapshot cache (<a
href="https://redirect.github.com/cypress-io/cypress/issues/30938">#30938</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/cypress-io/cypress/compare/v14.0.0...v14.0.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cypress&package-manager=npm_and_yarn&previous-version=14.0.0&new-version=14.0.1)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-29 14:01:31 +00:00
dependabot[bot] 5b0edab69d Bump maplibre-gl from 5.0.1 to 5.1.0 (#1039)
Bumps [maplibre-gl](https://github.com/maplibre/maplibre-gl-js) from
5.0.1 to 5.1.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/maplibre/maplibre-gl-js/releases">maplibre-gl's
releases</a>.</em></p>
<blockquote>
<h2>v5.1.0</h2>
<p><a
href="https://github.com/maplibre/maplibre-gl-js">https://github.com/maplibre/maplibre-gl-js</a>
<a
href="https://github.com/maplibre/maplibre-gl-js/compare/v5.0.1...v5.1.0">Changes</a>
since <a
href="https://github.com/maplibre/maplibre-gl-js/releases/tag/v5.0.1">MapLibre
GL JS v5.0.1</a>:</p>
<h3> Features and improvements</h3>
<ul>
<li>Add support for <code>vertical-align</code> in <code>format</code>
expression (<a
href="https://maplibre.org/maplibre-style-spec/expressions/#format">specification</a>)(<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/pull/5043">#5043</a>).</li>
</ul>
<h3>🐞 Bug fixes</h3>
<ul>
<li>Render frame synchronized again in requestAnimationFrame callback
(<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/pull/4535">#4535</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/maplibre/maplibre-gl-js/blob/main/CHANGELOG.md">maplibre-gl's
changelog</a>.</em></p>
<blockquote>
<h2>5.1.0</h2>
<h3> Features and improvements</h3>
<ul>
<li>Add support for <code>vertical-align</code> in <code>format</code>
expression (<a
href="https://maplibre.org/maplibre-style-spec/expressions/#format">specification</a>)(<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/pull/5043">#5043</a>).</li>
</ul>
<h3>🐞 Bug fixes</h3>
<ul>
<li>Render frame synchronized again in requestAnimationFrame callback
(<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/pull/4535">#4535</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/bedcb8622337d73875638d165f10b0397f18d775"><code>bedcb86</code></a>
Bump version to 5.1.0 (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5419">#5419</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/b4035a741cbfa3f37121288c414f9d250f5933d4"><code>b4035a7</code></a>
Vertical alignment in <code>format</code> expression (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5043">#5043</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/0b73fe0ad6e8c8785de4f36f7a45c455232979c2"><code>0b73fe0</code></a>
Add back synced frame method and use it for triggerRepaint. (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/4535">#4535</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/1d68ddc692dde1505fd9afed3c1a73a04c678de0"><code>1d68ddc</code></a>
Bump <code>@​typescript-eslint/parser</code> from 8.21.0 to 8.22.0 (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5417">#5417</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/7dda2d7d6336fd0e369c61a14bf003c9973ff4ef"><code>7dda2d7</code></a>
Bump <code>@​types/node</code> from 22.10.10 to 22.12.0 (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5416">#5416</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/5de671b2f8e9bd978c1c7a474842a04d396e8c8d"><code>5de671b</code></a>
Bump stylelint from 16.14.0 to 16.14.1 (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5415">#5415</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/3c96df87f986d153c3a00168c584858c4882fdcd"><code>3c96df8</code></a>
Bump rollup from 4.32.0 to 4.32.1 (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5413">#5413</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/9f0703a6088ca77ce34b1f82054fb315f35ec760"><code>9f0703a</code></a>
Bump <code>@​typescript-eslint/eslint-plugin</code> from 8.21.0 to
8.22.0 (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5414">#5414</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/82fcc82fe16d2c059961e929671d3337b0389c70"><code>82fcc82</code></a>
Bump dependabot/fetch-metadata from 2.2.0 to 2.3.0 (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5412">#5412</a>)</li>
<li><a
href="https://github.com/maplibre/maplibre-gl-js/commit/96b6eabde615c8122284ed68edd0608c20231e6c"><code>96b6eab</code></a>
Bump eslint from 9.18.0 to 9.19.0 (<a
href="https://redirect.github.com/maplibre/maplibre-gl-js/issues/5411">#5411</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/maplibre/maplibre-gl-js/compare/v5.0.1...v5.1.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=maplibre-gl&package-manager=npm_and_yarn&previous-version=5.0.1&new-version=5.1.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-29 14:01:07 +00:00
dependabot[bot] 5dc5732e63 Bump @cypress/code-coverage from 3.13.10 to 3.13.11 (#1038)
Bumps
[@cypress/code-coverage](https://github.com/cypress-io/code-coverage)
from 3.13.10 to 3.13.11.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/cypress-io/code-coverage/releases"><code>@​cypress/code-coverage</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v3.13.11</h2>
<h2><a
href="https://github.com/cypress-io/code-coverage/compare/v3.13.10...v3.13.11">3.13.11</a>
(2025-01-28)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> update dependency debug to v4.4.0 (<a
href="https://redirect.github.com/cypress-io/code-coverage/issues/917">#917</a>)
(<a
href="https://github.com/cypress-io/code-coverage/commit/a6a8cd52764db2d480556c2c483e7e1b089087bf">a6a8cd5</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/cypress-io/code-coverage/commit/a6a8cd52764db2d480556c2c483e7e1b089087bf"><code>a6a8cd5</code></a>
fix(deps): update dependency debug to v4.4.0 (<a
href="https://redirect.github.com/cypress-io/code-coverage/issues/917">#917</a>)</li>
<li>See full diff in <a
href="https://github.com/cypress-io/code-coverage/compare/v3.13.10...v3.13.11">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@cypress/code-coverage&package-manager=npm_and_yarn&previous-version=3.13.10&new-version=3.13.11)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-29 14:00:36 +00:00
dependabot[bot] cb83ec7e63 Bump stylelint from 16.14.0 to 16.14.1 (#1036)
[//]: # (dependabot-start)
⚠️  **Dependabot is rebasing this PR** ⚠️ 

Rebasing might not happen immediately, so don't worry if this takes some
time.

Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.

---

[//]: # (dependabot-end)

Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.14.0
to 16.14.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint/stylelint/releases">stylelint's
releases</a>.</em></p>
<blockquote>
<h2>16.4.1</h2>
<ul>
<li>Fixed: incompatible cache file format (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8359">#8359</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md">stylelint's
changelog</a>.</em></p>
<blockquote>
<h2>16.14.1 - 2025-01-27</h2>
<p>It fixes a bug with caching.</p>
<ul>
<li>Fixed: incompatible cache file format (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8359">#8359</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/stylelint/stylelint/commit/92eae1d7ed2f4be819283adaeb6b0b360b9953b9"><code>92eae1d</code></a>
16.14.1</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/578a5ac16f71768d98c0bf05503e253e87bc4427"><code>578a5ac</code></a>
Prepare 16.14.1 (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8360">#8360</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/8c4fc4a1b3a77df2b879daf7bbbe9e9be55fe1d5"><code>8c4fc4a</code></a>
Fix incompatible cache file format (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8359">#8359</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/c33ad7dd0a53151071dc81fbba42504b0687301d"><code>c33ad7d</code></a>
Refactor at-rule regexes for clarity (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8350">#8350</a>)</li>
<li>See full diff in <a
href="https://github.com/stylelint/stylelint/compare/16.14.0...16.14.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=stylelint&package-manager=npm_and_yarn&previous-version=16.14.0&new-version=16.14.1)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-28 13:47:16 +00:00
dependabot[bot] c95bd6434f Bump typescript-eslint from 8.21.0 to 8.22.0 (#1035)
Bumps
[typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)
from 8.21.0 to 8.22.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases">typescript-eslint's
releases</a>.</em></p>
<blockquote>
<h2>v8.22.0</h2>
<h2>8.22.0 (2025-01-27)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>parser:</strong> add standalone isolatedDeclarations option
(<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10499">#10499</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [prefer-nullish-coalescing] doesn't
report on ternary but on equivalent || (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10517">#10517</a>)</li>
<li><strong>eslint-plugin:</strong> [no-duplicate-type-constituents]
handle nested types (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10638">#10638</a>)</li>
<li><strong>eslint-plugin:</strong> [no-shadow] don't report
unnecessarily on valid ways of using module augmentation (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10616">#10616</a>)</li>
<li><strong>eslint-plugin:</strong> [no-extraneous-class] handle
accessor keyword (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10678">#10678</a>)</li>
<li><strong>eslint-plugin:</strong> [prefer-readonly] autofixer doesn't
add type to property that is mutated in the constructor (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10552">#10552</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-template-expression]
handle template literal type (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10612">#10612</a>)</li>
<li><strong>type-utils:</strong> support matching intersection types in
<code>TypeOrValueSpecifier</code> with a <code>PackageSpecifier</code>
(<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10667">#10667</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>Josh Goldberg </li>
<li>mdm317</li>
<li>Olivier Zalmanski <a
href="https://github.com/OlivierZal"><code>@​OlivierZal</code></a></li>
<li>Ronen Amiel</li>
<li>YeonJuan <a
href="https://github.com/yeonjuan"><code>@​yeonjuan</code></a></li>
</ul>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md">typescript-eslint's
changelog</a>.</em></p>
<blockquote>
<h2>8.22.0 (2025-01-27)</h2>
<p>This was a version bump only for typescript-eslint to align it with
other projects, there were no code changes.</p>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/94e809808a445dde05ab6f284dec010269482eb5"><code>94e8098</code></a>
chore(release): publish 8.22.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.22.0/packages/typescript-eslint">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=typescript-eslint&package-manager=npm_and_yarn&previous-version=8.21.0&new-version=8.22.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-28 13:46:30 +00:00
Birk Skyum abf3bd1fa0 Fix insertion of access tokens, when swapping renderer (#1021)
Going from e.g. MapTiler to OpenLayers and back will lose the maptlier
key.

This code finds the urls in the style that has "{key}" and insert the
correct API keys

Fixes the error reported here, cc @nyurik 
- Fixes
https://github.com/maplibre/maputnik/issues/874#issuecomment-2605896666

Related to:
- https://github.com/maplibre/maputnik/issues/869

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-28 12:57:38 +00:00
dependabot[bot] 535cb63093 Bump dependabot/fetch-metadata from 2.2.0 to 2.3.0 (#1034)
Bumps
[dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata)
from 2.2.0 to 2.3.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dependabot/fetch-metadata/releases">dependabot/fetch-metadata's
releases</a>.</em></p>
<blockquote>
<h2>v2.3.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump actions/create-github-app-token from 1.10.2 to 1.10.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/537">dependabot/fetch-metadata#537</a></li>
<li>Update readme to include an if conditional by <a
href="https://github.com/Nishnha"><code>@​Nishnha</code></a> in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/548">dependabot/fetch-metadata#548</a></li>
<li>Silence audit and funding messages from <code>npm</code> by <a
href="https://github.com/jeffwidman"><code>@​jeffwidman</code></a> in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/550">dependabot/fetch-metadata#550</a></li>
<li>Bump actions/create-github-app-token from 1.10.3 to 1.11.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/554">dependabot/fetch-metadata#554</a></li>
<li>fix readme action example by <a
href="https://github.com/CloudNStoyan"><code>@​CloudNStoyan</code></a>
in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/563">dependabot/fetch-metadata#563</a></li>
<li>Fixed missing outputs in action.yml by <a
href="https://github.com/CatChen"><code>@​CatChen</code></a> in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/564">dependabot/fetch-metadata#564</a></li>
<li>Handle branch names containing dependency group by <a
href="https://github.com/CloudNStoyan"><code>@​CloudNStoyan</code></a>
in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/565">dependabot/fetch-metadata#565</a></li>
<li>v2.3.0 by <a
href="https://github.com/fetch-metadata-action-automation"><code>@​fetch-metadata-action-automation</code></a>
in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/543">dependabot/fetch-metadata#543</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/CloudNStoyan"><code>@​CloudNStoyan</code></a>
made their first contribution in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/563">dependabot/fetch-metadata#563</a></li>
<li><a href="https://github.com/CatChen"><code>@​CatChen</code></a> made
their first contribution in <a
href="https://redirect.github.com/dependabot/fetch-metadata/pull/564">dependabot/fetch-metadata#564</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/dependabot/fetch-metadata/compare/v2...v2.3.0">https://github.com/dependabot/fetch-metadata/compare/v2...v2.3.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/d7267f607e9d3fb96fc2fbe83e0af444713e90b7"><code>d7267f6</code></a>
Merge pull request <a
href="https://redirect.github.com/dependabot/fetch-metadata/issues/543">#543</a>
from dependabot/bump-to-v2.3.0</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/e3dd295a04f6eccc15a116fc5cde058f1735c05d"><code>e3dd295</code></a>
v2.3.0</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/3da9521b8c62beab87c4d18ad1e9bd7fd7b9d3bf"><code>3da9521</code></a>
Merge pull request <a
href="https://redirect.github.com/dependabot/fetch-metadata/issues/565">#565</a>
from CloudNStoyan/main</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/de52f600152fa3f48a82e88e06e864cba8421436"><code>de52f60</code></a>
update build</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/59d2b1fb73ac123a1953e2ddc99ea8f1b869463a"><code>59d2b1f</code></a>
fix incorrect parsing of directory when using dependency-group</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/0d270694949cee4e6c179fc89629d95e0b9fb763"><code>0d27069</code></a>
Merge pull request <a
href="https://redirect.github.com/dependabot/fetch-metadata/issues/564">#564</a>
from CatChen/fixed-missing-outputs-in-action-yml</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/5a7546a6e709997b54d62d4e673a23eaa8621a26"><code>5a7546a</code></a>
Fixed missing outputs in action.yml</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/06ea45a2e4582d87b11f03c7ce596ae3261f39f6"><code>06ea45a</code></a>
Merge pull request <a
href="https://redirect.github.com/dependabot/fetch-metadata/issues/563">#563</a>
from CloudNStoyan/main</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/bbfca7ec1c0b06b16cc955f242ebc9f1c8daa4f4"><code>bbfca7e</code></a>
fix readme action example</li>
<li><a
href="https://github.com/dependabot/fetch-metadata/commit/b0d0393a82702c1819b5ae7ad6ea780cd8c18aae"><code>b0d0393</code></a>
Merge pull request <a
href="https://redirect.github.com/dependabot/fetch-metadata/issues/554">#554</a>
from dependabot/dependabot/github_actions/actions/cre...</li>
<li>Additional commits viewable in <a
href="https://github.com/dependabot/fetch-metadata/compare/v2.2.0...v2.3.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=dependabot/fetch-metadata&package-manager=github_actions&previous-version=2.2.0&new-version=2.3.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-27 13:55:19 +00:00
dependabot[bot] a44653fff0 Bump @eslint/js from 9.18.0 to 9.19.0 (#1031)
Bumps
[@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js)
from 9.18.0 to 9.19.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/releases"><code>@​eslint/js</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v9.19.0</h2>
<h2>Features</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/1637b8e87df5c7f58ab71e0e159f4b96c998e070"><code>1637b8e</code></a>
feat: add <code>--report-unused-inline-configs</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19201">#19201</a>)
(Josh Goldberg )</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/aae67172ab9631b4267fc03f64d3c3d6d1fcda73"><code>aae6717</code></a>
fix: sync rule type header comments automatically (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19276">#19276</a>)
(Francesco Trotta)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/cfea9abe0e27cf2ce1d27232b8c70555397e141b"><code>cfea9ab</code></a>
docs: Clarify overrideConfig option (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19370">#19370</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/2b84f666cd7474bb061e2f12205af57f5dbb89d6"><code>2b84f66</code></a>
docs: Update README (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19362">#19362</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/044f93cbbe71a45130156004509083814e2b9669"><code>044f93c</code></a>
docs: clarify frozen rule description (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19351">#19351</a>)
(Pavel)</li>
<li><a
href="https://github.com/eslint/eslint/commit/797ee7c0d669678b90c5d5742228bc7b24353f79"><code>797ee7c</code></a>
docs: fix Bluesky links (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19368">#19368</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/81a9c0ebc33dd33765711296f827c4448c80163d"><code>81a9c0e</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/093fb3d40286588c2c425b738426ebfe5d142a63"><code>093fb3d</code></a>
docs: replace <code>var</code> with <code>let</code> and
<code>const</code> in rule examples (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19365">#19365</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/417de3298527e4f257e1ae7b02e1df9db3c9ed33"><code>417de32</code></a>
docs: replace var with const in rule examples (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19352">#19352</a>)
(jj)</li>
<li><a
href="https://github.com/eslint/eslint/commit/17f2aaec16d5afbb0d219bce6ae01d7b15d74828"><code>17f2aae</code></a>
docs: update getting-started config to match default generated config
(<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19308">#19308</a>)
(0xDev)</li>
<li><a
href="https://github.com/eslint/eslint/commit/8a0a5a8851f72982327c2aa3a41403963f025771"><code>8a0a5a8</code></a>
docs: better <code>global ignores</code> instruction (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19297">#19297</a>)
(Jacopo Marrone)</li>
<li><a
href="https://github.com/eslint/eslint/commit/6671a2cd8ccc710fefbccad9a813c3bea5f76c68"><code>6671a2c</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e39d3f22ff793db42e1f1fc3808cbb12fc513118"><code>e39d3f2</code></a>
docs: fix divider for rule category (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19264">#19264</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e0cf53f80a4b127524e0badc8999d5d1a247143f"><code>e0cf53f</code></a>
docs: fix search result box position for small screens (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19328">#19328</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f92a6803a10c66cf77408b2bf29c17bcd63b1049"><code>f92a680</code></a>
docs: replace var with let or const in rule examples (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19331">#19331</a>)
(Ravi Teja Kolla)</li>
<li><a
href="https://github.com/eslint/eslint/commit/b04b84bc17d4aaaea1326cb08196593624db02a2"><code>b04b84b</code></a>
docs: revert accidental changes in TS config files docs (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19336">#19336</a>)
(Francesco Trotta)</li>
</ul>
<h2>Chores</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/9b9cb0584867916d50aa2e9590b132e2ef8ca59c"><code>9b9cb05</code></a>
chore: upgrade <code>@​eslint/js</code><a
href="https://github.com/9"><code>@​9</code></a>.19.0 (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19371">#19371</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/58560e70bb4dcb305343fcd7c893ac56a404f674"><code>58560e7</code></a>
chore: package.json update for <code>@​eslint/js</code> release
(Jenkins)</li>
<li><a
href="https://github.com/eslint/eslint/commit/20897070913418078d8f1ea9a877d223650dff73"><code>2089707</code></a>
test: fix failing test in Node.js v22.13.0 (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19345">#19345</a>)
(Francesco Trotta)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/blob/main/CHANGELOG.md"><code>@​eslint/js</code>'s
changelog</a>.</em></p>
<blockquote>
<p>v9.19.0 - January 24, 2025</p>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/9b9cb0584867916d50aa2e9590b132e2ef8ca59c"><code>9b9cb05</code></a>
chore: upgrade <code>@​eslint/js</code><a
href="https://github.com/9"><code>@​9</code></a>.19.0 (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19371">#19371</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/58560e70bb4dcb305343fcd7c893ac56a404f674"><code>58560e7</code></a>
chore: package.json update for <code>@​eslint/js</code> release
(Jenkins)</li>
<li><a
href="https://github.com/eslint/eslint/commit/cfea9abe0e27cf2ce1d27232b8c70555397e141b"><code>cfea9ab</code></a>
docs: Clarify overrideConfig option (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19370">#19370</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/2b84f666cd7474bb061e2f12205af57f5dbb89d6"><code>2b84f66</code></a>
docs: Update README (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19362">#19362</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/044f93cbbe71a45130156004509083814e2b9669"><code>044f93c</code></a>
docs: clarify frozen rule description (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19351">#19351</a>)
(Pavel)</li>
<li><a
href="https://github.com/eslint/eslint/commit/797ee7c0d669678b90c5d5742228bc7b24353f79"><code>797ee7c</code></a>
docs: fix Bluesky links (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19368">#19368</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/81a9c0ebc33dd33765711296f827c4448c80163d"><code>81a9c0e</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/093fb3d40286588c2c425b738426ebfe5d142a63"><code>093fb3d</code></a>
docs: replace <code>var</code> with <code>let</code> and
<code>const</code> in rule examples (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19365">#19365</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/417de3298527e4f257e1ae7b02e1df9db3c9ed33"><code>417de32</code></a>
docs: replace var with const in rule examples (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19352">#19352</a>)
(jj)</li>
<li><a
href="https://github.com/eslint/eslint/commit/17f2aaec16d5afbb0d219bce6ae01d7b15d74828"><code>17f2aae</code></a>
docs: update getting-started config to match default generated config
(<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19308">#19308</a>)
(0xDev)</li>
<li><a
href="https://github.com/eslint/eslint/commit/aae67172ab9631b4267fc03f64d3c3d6d1fcda73"><code>aae6717</code></a>
fix: sync rule type header comments automatically (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19276">#19276</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/8a0a5a8851f72982327c2aa3a41403963f025771"><code>8a0a5a8</code></a>
docs: better <code>global ignores</code> instruction (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19297">#19297</a>)
(Jacopo Marrone)</li>
<li><a
href="https://github.com/eslint/eslint/commit/20897070913418078d8f1ea9a877d223650dff73"><code>2089707</code></a>
test: fix failing test in Node.js v22.13.0 (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19345">#19345</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/6671a2cd8ccc710fefbccad9a813c3bea5f76c68"><code>6671a2c</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/1637b8e87df5c7f58ab71e0e159f4b96c998e070"><code>1637b8e</code></a>
feat: add <code>--report-unused-inline-configs</code> (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19201">#19201</a>)
(Josh Goldberg )</li>
<li><a
href="https://github.com/eslint/eslint/commit/e39d3f22ff793db42e1f1fc3808cbb12fc513118"><code>e39d3f2</code></a>
docs: fix divider for rule category (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19264">#19264</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e0cf53f80a4b127524e0badc8999d5d1a247143f"><code>e0cf53f</code></a>
docs: fix search result box position for small screens (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19328">#19328</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f92a6803a10c66cf77408b2bf29c17bcd63b1049"><code>f92a680</code></a>
docs: replace var with let or const in rule examples (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19331">#19331</a>)
(Ravi Teja Kolla)</li>
<li><a
href="https://github.com/eslint/eslint/commit/b04b84bc17d4aaaea1326cb08196593624db02a2"><code>b04b84b</code></a>
docs: revert accidental changes in TS config files docs (<a
href="https://github.com/eslint/eslint/tree/HEAD/packages/js/issues/19336">#19336</a>)
(Francesco Trotta)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/58560e70bb4dcb305343fcd7c893ac56a404f674"><code>58560e7</code></a>
chore: package.json update for <code>@​eslint/js</code> release</li>
<li>See full diff in <a
href="https://github.com/eslint/eslint/commits/v9.19.0/packages/js">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@eslint/js&package-manager=npm_and_yarn&previous-version=9.18.0&new-version=9.19.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-27 13:46:51 +00:00
dependabot[bot] 215111aee1 Bump i18next from 24.2.1 to 24.2.2 (#1032)
Bumps [i18next](https://github.com/i18next/i18next) from 24.2.1 to
24.2.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/i18next/releases">i18next's
releases</a>.</em></p>
<blockquote>
<h2>v24.2.2</h2>
<ul>
<li>fix: Interpolation fails with arrays (TypeError) and doesn't work
with objects in defaultValue <a
href="https://redirect.github.com/i18next/react-i18next/issues/1829">1829</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/i18next/blob/master/CHANGELOG.md">i18next's
changelog</a>.</em></p>
<blockquote>
<h2>24.2.2</h2>
<ul>
<li>fix: Interpolation fails with arrays (TypeError) and doesn't work
with objects in defaultValue <a
href="https://redirect.github.com/i18next/react-i18next/issues/1829">1829</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/i18next/i18next/commit/e3d66d0eade4d1e47afd545339664ae3a5fd09eb"><code>e3d66d0</code></a>
24.2.2</li>
<li><a
href="https://github.com/i18next/i18next/commit/fdeab8a8ae85e853c00a2ff7ba89843eb9a6c52b"><code>fdeab8a</code></a>
fix: Interpolation fails with arrays (TypeError) and does not work with
objec...</li>
<li><a
href="https://github.com/i18next/i18next/commit/e10755458202e180dac399e6719dab7ab9fd5c46"><code>e107554</code></a>
update year</li>
<li><a
href="https://github.com/i18next/i18next/commit/3c67d4ac4736db47d3f0619ef8c2fed2d5069208"><code>3c67d4a</code></a>
maybe in future</li>
<li>See full diff in <a
href="https://github.com/i18next/i18next/compare/v24.2.1...v24.2.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=i18next&package-manager=npm_and_yarn&previous-version=24.2.1&new-version=24.2.2)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-27 13:46:34 +00:00
dependabot[bot] d6af4a6511 Bump eslint from 9.18.0 to 9.19.0 (#1030)
Bumps [eslint](https://github.com/eslint/eslint) from 9.18.0 to 9.19.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/releases">eslint's
releases</a>.</em></p>
<blockquote>
<h2>v9.19.0</h2>
<h2>Features</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/1637b8e87df5c7f58ab71e0e159f4b96c998e070"><code>1637b8e</code></a>
feat: add <code>--report-unused-inline-configs</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/19201">#19201</a>)
(Josh Goldberg )</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/aae67172ab9631b4267fc03f64d3c3d6d1fcda73"><code>aae6717</code></a>
fix: sync rule type header comments automatically (<a
href="https://redirect.github.com/eslint/eslint/issues/19276">#19276</a>)
(Francesco Trotta)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/cfea9abe0e27cf2ce1d27232b8c70555397e141b"><code>cfea9ab</code></a>
docs: Clarify overrideConfig option (<a
href="https://redirect.github.com/eslint/eslint/issues/19370">#19370</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/2b84f666cd7474bb061e2f12205af57f5dbb89d6"><code>2b84f66</code></a>
docs: Update README (<a
href="https://redirect.github.com/eslint/eslint/issues/19362">#19362</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/044f93cbbe71a45130156004509083814e2b9669"><code>044f93c</code></a>
docs: clarify frozen rule description (<a
href="https://redirect.github.com/eslint/eslint/issues/19351">#19351</a>)
(Pavel)</li>
<li><a
href="https://github.com/eslint/eslint/commit/797ee7c0d669678b90c5d5742228bc7b24353f79"><code>797ee7c</code></a>
docs: fix Bluesky links (<a
href="https://redirect.github.com/eslint/eslint/issues/19368">#19368</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/81a9c0ebc33dd33765711296f827c4448c80163d"><code>81a9c0e</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/093fb3d40286588c2c425b738426ebfe5d142a63"><code>093fb3d</code></a>
docs: replace <code>var</code> with <code>let</code> and
<code>const</code> in rule examples (<a
href="https://redirect.github.com/eslint/eslint/issues/19365">#19365</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/417de3298527e4f257e1ae7b02e1df9db3c9ed33"><code>417de32</code></a>
docs: replace var with const in rule examples (<a
href="https://redirect.github.com/eslint/eslint/issues/19352">#19352</a>)
(jj)</li>
<li><a
href="https://github.com/eslint/eslint/commit/17f2aaec16d5afbb0d219bce6ae01d7b15d74828"><code>17f2aae</code></a>
docs: update getting-started config to match default generated config
(<a
href="https://redirect.github.com/eslint/eslint/issues/19308">#19308</a>)
(0xDev)</li>
<li><a
href="https://github.com/eslint/eslint/commit/8a0a5a8851f72982327c2aa3a41403963f025771"><code>8a0a5a8</code></a>
docs: better <code>global ignores</code> instruction (<a
href="https://redirect.github.com/eslint/eslint/issues/19297">#19297</a>)
(Jacopo Marrone)</li>
<li><a
href="https://github.com/eslint/eslint/commit/6671a2cd8ccc710fefbccad9a813c3bea5f76c68"><code>6671a2c</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e39d3f22ff793db42e1f1fc3808cbb12fc513118"><code>e39d3f2</code></a>
docs: fix divider for rule category (<a
href="https://redirect.github.com/eslint/eslint/issues/19264">#19264</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e0cf53f80a4b127524e0badc8999d5d1a247143f"><code>e0cf53f</code></a>
docs: fix search result box position for small screens (<a
href="https://redirect.github.com/eslint/eslint/issues/19328">#19328</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f92a6803a10c66cf77408b2bf29c17bcd63b1049"><code>f92a680</code></a>
docs: replace var with let or const in rule examples (<a
href="https://redirect.github.com/eslint/eslint/issues/19331">#19331</a>)
(Ravi Teja Kolla)</li>
<li><a
href="https://github.com/eslint/eslint/commit/b04b84bc17d4aaaea1326cb08196593624db02a2"><code>b04b84b</code></a>
docs: revert accidental changes in TS config files docs (<a
href="https://redirect.github.com/eslint/eslint/issues/19336">#19336</a>)
(Francesco Trotta)</li>
</ul>
<h2>Chores</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/9b9cb0584867916d50aa2e9590b132e2ef8ca59c"><code>9b9cb05</code></a>
chore: upgrade <code>@​eslint/js</code><a
href="https://github.com/9"><code>@​9</code></a>.19.0 (<a
href="https://redirect.github.com/eslint/eslint/issues/19371">#19371</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/58560e70bb4dcb305343fcd7c893ac56a404f674"><code>58560e7</code></a>
chore: package.json update for <code>@​eslint/js</code> release
(Jenkins)</li>
<li><a
href="https://github.com/eslint/eslint/commit/20897070913418078d8f1ea9a877d223650dff73"><code>2089707</code></a>
test: fix failing test in Node.js v22.13.0 (<a
href="https://redirect.github.com/eslint/eslint/issues/19345">#19345</a>)
(Francesco Trotta)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/blob/main/CHANGELOG.md">eslint's
changelog</a>.</em></p>
<blockquote>
<p>v9.19.0 - January 24, 2025</p>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/9b9cb0584867916d50aa2e9590b132e2ef8ca59c"><code>9b9cb05</code></a>
chore: upgrade <code>@​eslint/js</code><a
href="https://github.com/9"><code>@​9</code></a>.19.0 (<a
href="https://redirect.github.com/eslint/eslint/issues/19371">#19371</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/58560e70bb4dcb305343fcd7c893ac56a404f674"><code>58560e7</code></a>
chore: package.json update for <code>@​eslint/js</code> release
(Jenkins)</li>
<li><a
href="https://github.com/eslint/eslint/commit/cfea9abe0e27cf2ce1d27232b8c70555397e141b"><code>cfea9ab</code></a>
docs: Clarify overrideConfig option (<a
href="https://redirect.github.com/eslint/eslint/issues/19370">#19370</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/2b84f666cd7474bb061e2f12205af57f5dbb89d6"><code>2b84f66</code></a>
docs: Update README (<a
href="https://redirect.github.com/eslint/eslint/issues/19362">#19362</a>)
(Nicholas C. Zakas)</li>
<li><a
href="https://github.com/eslint/eslint/commit/044f93cbbe71a45130156004509083814e2b9669"><code>044f93c</code></a>
docs: clarify frozen rule description (<a
href="https://redirect.github.com/eslint/eslint/issues/19351">#19351</a>)
(Pavel)</li>
<li><a
href="https://github.com/eslint/eslint/commit/797ee7c0d669678b90c5d5742228bc7b24353f79"><code>797ee7c</code></a>
docs: fix Bluesky links (<a
href="https://redirect.github.com/eslint/eslint/issues/19368">#19368</a>)
(Milos Djermanovic)</li>
<li><a
href="https://github.com/eslint/eslint/commit/81a9c0ebc33dd33765711296f827c4448c80163d"><code>81a9c0e</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/093fb3d40286588c2c425b738426ebfe5d142a63"><code>093fb3d</code></a>
docs: replace <code>var</code> with <code>let</code> and
<code>const</code> in rule examples (<a
href="https://redirect.github.com/eslint/eslint/issues/19365">#19365</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/417de3298527e4f257e1ae7b02e1df9db3c9ed33"><code>417de32</code></a>
docs: replace var with const in rule examples (<a
href="https://redirect.github.com/eslint/eslint/issues/19352">#19352</a>)
(jj)</li>
<li><a
href="https://github.com/eslint/eslint/commit/17f2aaec16d5afbb0d219bce6ae01d7b15d74828"><code>17f2aae</code></a>
docs: update getting-started config to match default generated config
(<a
href="https://redirect.github.com/eslint/eslint/issues/19308">#19308</a>)
(0xDev)</li>
<li><a
href="https://github.com/eslint/eslint/commit/aae67172ab9631b4267fc03f64d3c3d6d1fcda73"><code>aae6717</code></a>
fix: sync rule type header comments automatically (<a
href="https://redirect.github.com/eslint/eslint/issues/19276">#19276</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/8a0a5a8851f72982327c2aa3a41403963f025771"><code>8a0a5a8</code></a>
docs: better <code>global ignores</code> instruction (<a
href="https://redirect.github.com/eslint/eslint/issues/19297">#19297</a>)
(Jacopo Marrone)</li>
<li><a
href="https://github.com/eslint/eslint/commit/20897070913418078d8f1ea9a877d223650dff73"><code>2089707</code></a>
test: fix failing test in Node.js v22.13.0 (<a
href="https://redirect.github.com/eslint/eslint/issues/19345">#19345</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/6671a2cd8ccc710fefbccad9a813c3bea5f76c68"><code>6671a2c</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/1637b8e87df5c7f58ab71e0e159f4b96c998e070"><code>1637b8e</code></a>
feat: add <code>--report-unused-inline-configs</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/19201">#19201</a>)
(Josh Goldberg )</li>
<li><a
href="https://github.com/eslint/eslint/commit/e39d3f22ff793db42e1f1fc3808cbb12fc513118"><code>e39d3f2</code></a>
docs: fix divider for rule category (<a
href="https://redirect.github.com/eslint/eslint/issues/19264">#19264</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/e0cf53f80a4b127524e0badc8999d5d1a247143f"><code>e0cf53f</code></a>
docs: fix search result box position for small screens (<a
href="https://redirect.github.com/eslint/eslint/issues/19328">#19328</a>)
(Tanuj Kanti)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f92a6803a10c66cf77408b2bf29c17bcd63b1049"><code>f92a680</code></a>
docs: replace var with let or const in rule examples (<a
href="https://redirect.github.com/eslint/eslint/issues/19331">#19331</a>)
(Ravi Teja Kolla)</li>
<li><a
href="https://github.com/eslint/eslint/commit/b04b84bc17d4aaaea1326cb08196593624db02a2"><code>b04b84b</code></a>
docs: revert accidental changes in TS config files docs (<a
href="https://redirect.github.com/eslint/eslint/issues/19336">#19336</a>)
(Francesco Trotta)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/208e0b199f5d5f9dd173e58e3f5db19c1f0c38ed"><code>208e0b1</code></a>
9.19.0</li>
<li><a
href="https://github.com/eslint/eslint/commit/196dfdace64d095f2facb3d8ebed1be9cb2ccab3"><code>196dfda</code></a>
Build: changelog update for 9.19.0</li>
<li><a
href="https://github.com/eslint/eslint/commit/9b9cb0584867916d50aa2e9590b132e2ef8ca59c"><code>9b9cb05</code></a>
chore: upgrade <code>@​eslint/js</code><a
href="https://github.com/9"><code>@​9</code></a>.19.0 (<a
href="https://redirect.github.com/eslint/eslint/issues/19371">#19371</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/58560e70bb4dcb305343fcd7c893ac56a404f674"><code>58560e7</code></a>
chore: package.json update for <code>@​eslint/js</code> release</li>
<li><a
href="https://github.com/eslint/eslint/commit/cfea9abe0e27cf2ce1d27232b8c70555397e141b"><code>cfea9ab</code></a>
docs: Clarify overrideConfig option (<a
href="https://redirect.github.com/eslint/eslint/issues/19370">#19370</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/2b84f666cd7474bb061e2f12205af57f5dbb89d6"><code>2b84f66</code></a>
docs: Update README (<a
href="https://redirect.github.com/eslint/eslint/issues/19362">#19362</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/044f93cbbe71a45130156004509083814e2b9669"><code>044f93c</code></a>
docs: clarify frozen rule description (<a
href="https://redirect.github.com/eslint/eslint/issues/19351">#19351</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/797ee7c0d669678b90c5d5742228bc7b24353f79"><code>797ee7c</code></a>
docs: fix Bluesky links (<a
href="https://redirect.github.com/eslint/eslint/issues/19368">#19368</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/81a9c0ebc33dd33765711296f827c4448c80163d"><code>81a9c0e</code></a>
docs: Update README</li>
<li><a
href="https://github.com/eslint/eslint/commit/093fb3d40286588c2c425b738426ebfe5d142a63"><code>093fb3d</code></a>
docs: replace <code>var</code> with <code>let</code> and
<code>const</code> in rule examples (<a
href="https://redirect.github.com/eslint/eslint/issues/19365">#19365</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/eslint/eslint/compare/v9.18.0...v9.19.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=eslint&package-manager=npm_and_yarn&previous-version=9.18.0&new-version=9.19.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-27 13:46:12 +00:00
dependabot[bot] 3b84fddd59 Bump stylelint from 16.13.2 to 16.14.0 (#1029)
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.13.2
to 16.14.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint/stylelint/releases">stylelint's
releases</a>.</em></p>
<blockquote>
<h2>16.14.0</h2>
<ul>
<li>Added: replaced text and corresponding range to <code>Warning</code>
type (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8234">#8234</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
<li>Fixed: <code>SyntaxError: The requested module 'table'...</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8325">#8325</a>)
(<a href="https://github.com/denisx"><code>@​denisx</code></a>).</li>
<li>Fixed: <code>RuleContext['fix']</code> type (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8309">#8309</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
autofix of <code>border-color</code> and <code>overflow</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8346">#8346</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
false negatives for <code>overflow-x</code> and <code>overflow-y</code>
(<a
href="https://redirect.github.com/stylelint/stylelint/issues/8340">#8340</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
false negatives for <code>scrollbar-color</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8346">#8346</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
false positives for non-standard syntax values (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8329">#8329</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
warning message for <code>overflow: &lt;keyword&gt;
&lt;keyword&gt;</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8340">#8340</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-pseudo-class-no-unknown</code> false positives
for <code>:has-slotted</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8332">#8332</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md">stylelint's
changelog</a>.</em></p>
<blockquote>
<h2>16.14.0 - 2025-01-25</h2>
<p>It fixes 8 bugs and adds features to our <code>Warning</code>
type.</p>
<ul>
<li>Added: replaced text and corresponding range to <code>Warning</code>
type (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8234">#8234</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
<li>Fixed: <code>SyntaxError: The requested module 'table'...</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8325">#8325</a>)
(<a href="https://github.com/denisx"><code>@​denisx</code></a>).</li>
<li>Fixed: <code>RuleContext['fix']</code> type (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8309">#8309</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
autofix of <code>border-color</code> and <code>overflow</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8346">#8346</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
false negatives for <code>overflow-x</code> and <code>overflow-y</code>
(<a
href="https://redirect.github.com/stylelint/stylelint/pull/8340">#8340</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
false negatives for <code>scrollbar-color</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8346">#8346</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
false positives for non-standard syntax values (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8329">#8329</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>declaration-property-value-keyword-no-deprecated</code>
warning message for <code>overflow: &lt;keyword&gt;
&lt;keyword&gt;</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8340">#8340</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-pseudo-class-no-unknown</code> false positives
for <code>:has-slotted</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8332">#8332</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/stylelint/stylelint/commit/15b90ade92ba0cd9b40d494417b6aa73142d5181"><code>15b90ad</code></a>
16.14.0</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/4fa5a91e86ffd8b77fa24a3811c26daab04995f5"><code>4fa5a91</code></a>
Prepare 16.14.0 (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8330">#8330</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/f24921c9c4758f7702f987052f01ea3a098e9cb3"><code>f24921c</code></a>
Fix <code>SyntaxError: The requested module 'table'...</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8325">#8325</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/e9b772f059092e7d3f658daa30df005e990e66e4"><code>e9b772f</code></a>
Add <code>declaration-property-value-keyword-no-deprecated</code>
autofix for shorthands...</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/02b814d62aaed99def5a6db8f8b2c56e9bd24e69"><code>02b814d</code></a>
Fix <code>declaration-property-value-keyword-no-deprecated</code>
warning message for `o...</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/16efbb78582e6538c3266da274c0edf949aa7b5a"><code>16efbb7</code></a>
Fix <code>at-rule-descriptor-no-unknown</code> false positives for page
and margin conte...</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/96745181e322ff92708fc3e6edeb0c90178b12e1"><code>9674518</code></a>
Add replaced text and corresponding range to <code>Warning</code> type
(<a
href="https://redirect.github.com/stylelint/stylelint/issues/8234">#8234</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/9e19713cc068facea024a0cae47c454045aaaa7d"><code>9e19713</code></a>
Fix <code>declaration-property-value-keyword-no-deprecated</code> false
positives for `b...</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/a2420f996c41f9dfed301e2adf7b9c89a7e49535"><code>a2420f9</code></a>
Bump eslint-plugin-jest from 28.10.0 to 28.11.0 in the eslint group (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8335">#8335</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/2f1655f29856b1384645a1ea544b05ac5ceeb250"><code>2f1655f</code></a>
Bump ignore from 7.0.1 to 7.0.3 (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8337">#8337</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/stylelint/stylelint/compare/16.13.2...16.14.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=stylelint&package-manager=npm_and_yarn&previous-version=16.13.2&new-version=16.14.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-27 13:45:33 +00:00
humo b87c8fb5c3 Japanese translation for PMTiles (#1027)
## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [x] Briefly describe the changes in this PR.
   simply adding Japanese translation for new input format PMTiles
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-25 07:24:28 +00:00
dependabot[bot] 12666d264a Bump @types/geojson from 7946.0.15 to 7946.0.16 (#1026)
Bumps
[@types/geojson](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/geojson)
from 7946.0.15 to 7946.0.16.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/geojson">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/geojson&package-manager=npm_and_yarn&previous-version=7946.0.15&new-version=7946.0.16)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-24 13:53:48 +00:00
Pirmin Kalberer 5af2cc2f9e Add PMTiles support (#938)
Add support for pmtiles sources. Solves #807 

<strike>
There is still an error, probably when adding the source to the Maputnik
sources:

```
Failed to process sources for 'pmtiles://https://example.com/data/switzerland.pmtiles' TypeError: NetworkError when attempting to fetch resource.
    fetchSources App.tsx:642
```

@bdon How did you solve this for https://editor.protomaps.com/ ?
</strike>

---------

Co-authored-by: Brandon Liu <bdon@bdon.org>
Co-authored-by: WebFreak001 <gh@webfreak.org>
Co-authored-by: ShellyDCMS <60476837+ShellyDCMS@users.noreply.github.com>
Co-authored-by: Harel M <harel.mazor@gmail.com>
2025-01-23 10:59:08 +02:00
dependabot[bot] a2345a7308 Bump codemirror from 5.65.16 to 5.65.18 (#1024)
Bumps [codemirror](https://github.com/codemirror/basic-setup) from
5.65.16 to 5.65.18.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/codemirror/basic-setup/commits">compare
view</a></li>
</ul>
</details>
<br />

<details>
<summary>Most Recent Ignore Conditions Applied to This Pull
Request</summary>

| Dependency Name | Ignore Conditions |
| --- | --- |
| codemirror | [>= 6.a, < 7] |
</details>


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=codemirror&package-manager=npm_and_yarn&previous-version=5.65.16&new-version=5.65.18)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-22 13:35:11 +00:00
Birk Skyum dcdbac35ff bump @types/geojson and postcss (#1022)
Dependabot is skipping two packages, presumably because it tried and
failed to update in the past, and now we changed the dependabot.yml

old dependabot attempts
- #833 

Updating manually, hoping it'll work going forward.

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-22 12:42:16 +01:00
Birk Skyum 2852fa62ff Use modern jsonlint fork (#1018) 2025-01-22 10:38:26 +00:00
Birk Skyum 87cd79e86f Use new scss syntax (#1015) 2025-01-21 22:38:05 +01:00
Birk Skyum 857cae7040 Add codeql workflow (#1019) 2025-01-21 19:46:10 +01:00
Birk Skyum cd7d607f13 Upgrade eslint (#1014)
It's apparently forced now to use the eslint.config.js instead of
.eslintrc

It got more strict with requiring the underscore on unused vars like
`catch(_err)` , but that was all

Closes #1012
Closes #995
Closes #992

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-21 15:21:30 +00:00
Harel M b429bb16d7 Fix network issue (#944)
## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->
In case of non 200 response the font and glyphs metadata would return
the ajax error object instead of the default value.

Fixes #935

- #935

 - [x] Briefly describe the changes in this PR.
 - [x] Link to related issues.
- [x] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [x] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-21 14:25:03 +00:00
Birk Skyum a21efcc4d5 Remove unused mocha (#1013)
I don't see mocha used anywhere

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-21 13:47:24 +00:00
dependabot[bot] 1ebbac91d4 Bump typescript from 5.4.3 to 5.7.3 (#1011)
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.4.3
to 5.7.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/microsoft/TypeScript/releases">typescript's
releases</a>.</em></p>
<blockquote>
<h2>TypeScript 5.7.3</h2>
<p>For release notes, check out the <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/">release
announcement</a>.</p>
<ul>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.0%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.0 (Beta)</a>.</li>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.1%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.1 (RC)</a>.</li>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.2%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.2 (Stable)</a>.</li>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.2%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.3 (Stable)</a>.</li>
</ul>
<p>Downloads are available on <a
href="https://www.npmjs.com/package/typescript">npm</a></p>
<h2>TypeScript 5.7</h2>
<p>For release notes, check out the <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/">release
announcement</a>.</p>
<ul>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.0%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.0 (Beta)</a>.</li>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.1%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.1 (RC)</a>.</li>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.2%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.2 (Stable)</a>.</li>
</ul>
<p>Downloads are available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/typescript">npm</a></li>
</ul>
<h2>TypeScript 5.7 RC</h2>
<p>For release notes, check out the <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-7-rc/">release
announcement</a>.</p>
<p>For the complete list of fixed issues, check out the</p>
<ul>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.0%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.0 (Beta)</a>.</li>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.1%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.1 (RC)</a>.</li>
</ul>
<p>Downloads are available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/typescript">npm</a></li>
</ul>
<h2>TypeScript 5.7 Beta</h2>
<p>For release notes, check out the <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-7-beta/">release
announcement</a>.</p>
<p>For the complete list of fixed issues, check out the</p>
<ul>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.7.0%22+is%3Aclosed+">fixed
issues query for Typescript 5.7.0 (Beta)</a>.</li>
</ul>
<p>Downloads are available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/typescript">npm</a></li>
</ul>
<h2>TypeScript 5.6.3</h2>
<p>For release notes, check out the <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-6/">release
announcement</a>.</p>
<p>For the complete list of fixed issues, check out the</p>
<ul>
<li><a
href="https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93&amp;q=milestone%3A%22TypeScript+5.6.0%22+is%3Aclosed+">fixed
issues query for Typescript 5.6.0 (Beta)</a>.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/microsoft/TypeScript/commit/a5e123d9e0690fcea92878ea8a0a382922009fc9"><code>a5e123d</code></a>
Update LKG</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/8bc02048a2a78d1b8f0e89d8260d76c440fdbc08"><code>8bc0204</code></a>
🤖 Pick PR <a
href="https://redirect.github.com/microsoft/TypeScript/issues/60828">#60828</a>
(Fix CodeQL configuration, releases) into release-5.7 (<a
href="https://redirect.github.com/microsoft/TypeScript/issues/60923">#60923</a>)</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/7aa63df74c2cc02dd171771623238dc40f352b7e"><code>7aa63df</code></a>
🤖 Pick PR <a
href="https://redirect.github.com/microsoft/TypeScript/issues/60393">#60393</a>
(Don't try to add an implicit undefi...) into release-5.7 (#...</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/9df7c36aa960086a403bb83c5a4fafaf5871acf6"><code>9df7c36</code></a>
Bump version to 5.7.3 and LKG</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/e167412fe07905b6324bf5f36a918c28050ebfac"><code>e167412</code></a>
🤖 Pick PR <a
href="https://redirect.github.com/microsoft/TypeScript/issues/60794">#60794</a>
(Harden <code>sanitizeLog</code> against incorr...) into release-5.7
(#...</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/9ba364c55a5c5cc378e89bf0de9559398926c0d3"><code>9ba364c</code></a>
Fix coverage build on release-5.7 (<a
href="https://redirect.github.com/microsoft/TypeScript/issues/60792">#60792</a>)</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/4b7441a8bee1f0cbc861a3ad23f72769fb518df1"><code>4b7441a</code></a>
🤖 Pick PR <a
href="https://redirect.github.com/microsoft/TypeScript/issues/60680">#60680</a>
(Mark the inherited any-based index ...) into release-5.7 (#...</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/e844dc305e09029d417a8daf84a816532d2ed4f3"><code>e844dc3</code></a>
Cherry-pick <a
href="https://redirect.github.com/microsoft/TypeScript/issues/60402">#60402</a>,
<a
href="https://redirect.github.com/microsoft/TypeScript/issues/60440">#60440</a>,
<a
href="https://redirect.github.com/microsoft/TypeScript/issues/60616">#60616</a>
into release-5.7 (<a
href="https://redirect.github.com/microsoft/TypeScript/issues/60777">#60777</a>)</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/21b02a1e1f19852790c36e550631e8083c67fc1c"><code>21b02a1</code></a>
🤖 Pick PR <a
href="https://redirect.github.com/microsoft/TypeScript/issues/60749">#60749</a>
(Do not require import attribute on ...) into release-5.7 (#...</li>
<li><a
href="https://github.com/microsoft/TypeScript/commit/b82fd16484225ba6d0798cd5595407ec65555ab6"><code>b82fd16</code></a>
🤖 Pick PR <a
href="https://redirect.github.com/microsoft/TypeScript/issues/60576">#60576</a>
(Avoid incorrectly reusing assertion...) into release-5.7 (#...</li>
<li>Additional commits viewable in <a
href="https://github.com/microsoft/TypeScript/compare/v5.4.3...v5.7.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=typescript&package-manager=npm_and_yarn&previous-version=5.4.3&new-version=5.7.3)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:41:08 +00:00
dependabot[bot] ed70b76ed5 Bump eslint-plugin-react-hooks from 4.6.0 to 5.1.0 (#1006)
Bumps
[eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks)
from 4.6.0 to 5.1.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/facebook/react/releases">eslint-plugin-react-hooks's
releases</a>.</em></p>
<blockquote>
<h2>eslint-plugin-react-hooks@5.0.0 (Oct 11, 2024)</h2>
<p>This release only contains <code>eslint-plugin-react-hooks</code>.
Notably, new violations and support for ESLint v9 were added.</p>
<h2><code>eslint-plugin-react-hooks</code></h2>
<ul>
<li><strong>New Violations:</strong> Component names now need to start
with an uppercase letter instead of a non-lowercase letter. This means
<code>_Button</code> or <code>_component</code> are no longer valid. (<a
href="https://github.com/kassens"><code>@​kassens</code></a>) in <a
href="https://redirect.github.com/facebook/react/pull/25162">#25162</a>
For example, in
<pre lang="tsx"><code>function _Component() {
  useState()
^^^^^^^^ A React Hook &quot;useState&quot; is called in function
&quot;_Component&quot; which is neither a Component nor a custom React
Hook function.
}
</code></pre>
<code>_Component</code> should be renamed to
<code>Component</code>.</li>
</ul>
<ul>
<li>Add support for ESLint v9. (<a
href="https://github.com/eps1lon"><code>@​eps1lon</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/28773">#28773</a>)</li>
<li>Consider dispatch from <code>useActionState</code> stable. (<a
href="https://github.com/eps1lon"><code>@​eps1lon</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/29665">#29665</a>)</li>
<li>Accept <code>as</code> expression in callback. (<a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/28202">#28202</a>)</li>
<li>Accept <code>as</code> expressions in deps array. (<a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/28189">#28189</a>)</li>
<li>Treat <code>React.use()</code> the same as <code>use()</code>. (<a
href="https://github.com/kassens"><code>@​kassens</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27769">#27769</a>)</li>
<li>Move <code>use()</code> lint to non-experimental. (<a
href="https://github.com/kassens"><code>@​kassens</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27768">#27768</a>)</li>
<li>Support Flow <code>as</code> expressions. (<a
href="https://github.com/cpojer"><code>@​cpojer</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27590">#27590</a>)</li>
<li>Allow <code>useEffect(fn, undefined)</code>. (<a
href="https://github.com/kassens"><code>@​kassens</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27525">#27525</a>)</li>
<li>Disallow hooks in async functions. (<a
href="https://github.com/acdlite"><code>@​acdlite</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27045">#27045</a>)</li>
<li>Rename experimental <code>useEvent</code> to
<code>useEffectEvent</code>. (<a
href="https://github.com/sebmarkbage"><code>@​sebmarkbage</code></a> in
<a
href="https://redirect.github.com/facebook/react/pull/25881">#25881</a>)</li>
<li>Lint for presence of <code>useEvent</code> functions in dependency
lists. (<a href="https://github.com/poteto"><code>@​poteto</code></a> in
<a
href="https://redirect.github.com/facebook/react/pull/25512">#25512</a>)</li>
<li>Check <code>useEvent</code> references instead. (<a
href="https://github.com/poteto"><code>@​poteto</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/25319">#25319</a>)</li>
<li>Update <code>RulesOfHooks</code> with <code>useEvent</code> rules.
(<a href="https://github.com/poteto"><code>@​poteto</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/25285">#25285</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md">eslint-plugin-react-hooks's
changelog</a>.</em></p>
<blockquote>
<h2>5.0.0</h2>
<ul>
<li><strong>New Violations:</strong> Component names now need to start
with an uppercase letter instead of a non-lowercase letter. This means
<code>_Button</code> or <code>_component</code> are no longer valid. (<a
href="https://github.com/kassens"><code>@​kassens</code></a>) in <a
href="https://redirect.github.com/facebook/react/pull/25162">#25162</a></li>
</ul>
<ul>
<li>Consider dispatch from <code>useActionState</code> stable. (<a
href="https://github.com/eps1lon"><code>@​eps1lon</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/29665">#29665</a>)</li>
<li>Add support for ESLint v9. (<a
href="https://github.com/eps1lon"><code>@​eps1lon</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/28773">#28773</a>)</li>
<li>Accept <code>as</code> expression in callback. (<a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/28202">#28202</a>)</li>
<li>Accept <code>as</code> expressions in deps array. (<a
href="https://github.com/StyleShit"><code>@​StyleShit</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/28189">#28189</a>)</li>
<li>Treat <code>React.use()</code> the same as <code>use()</code>. (<a
href="https://github.com/kassens"><code>@​kassens</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27769">#27769</a>)</li>
<li>Move <code>use()</code> lint to non-experimental. (<a
href="https://github.com/kassens"><code>@​kassens</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27768">#27768</a>)</li>
<li>Support Flow <code>as</code> expressions. (<a
href="https://github.com/cpojer"><code>@​cpojer</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27590">#27590</a>)</li>
<li>Allow <code>useEffect(fn, undefined)</code>. (<a
href="https://github.com/kassens"><code>@​kassens</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27525">#27525</a>)</li>
<li>Disallow hooks in async functions. (<a
href="https://github.com/acdlite"><code>@​acdlite</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/27045">#27045</a>)</li>
<li>Rename experimental <code>useEvent</code> to
<code>useEffectEvent</code>. (<a
href="https://github.com/sebmarkbage"><code>@​sebmarkbage</code></a> in
<a
href="https://redirect.github.com/facebook/react/pull/25881">#25881</a>)</li>
<li>Lint for presence of <code>useEvent</code> functions in dependency
lists. (<a href="https://github.com/poteto"><code>@​poteto</code></a> in
<a
href="https://redirect.github.com/facebook/react/pull/25512">#25512</a>)</li>
<li>Check <code>useEvent</code> references instead. (<a
href="https://github.com/poteto"><code>@​poteto</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/25319">#25319</a>)</li>
<li>Update <code>RulesOfHooks</code> with <code>useEvent</code> rules.
(<a href="https://github.com/poteto"><code>@​poteto</code></a> in <a
href="https://redirect.github.com/facebook/react/pull/25285">#25285</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~react-bot">react-bot</a>, a new releaser
for eslint-plugin-react-hooks since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=eslint-plugin-react-hooks&package-manager=npm_and_yarn&previous-version=4.6.0&new-version=5.1.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:40:44 +00:00
dependabot[bot] dd8703e22b Bump sass from 1.72.0 to 1.83.4 (#1000)
Bumps [sass](https://github.com/sass/dart-sass) from 1.72.0 to 1.83.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sass/dart-sass/releases">sass's
releases</a>.</em></p>
<blockquote>
<h2>Dart Sass 1.83.4</h2>
<p>To install Sass 1.83.4, download one of the packages below and <a
href="https://katiek2.github.io/path-doc/">add it to your PATH</a>, or
see <a href="https://sass-lang.com/install">the Sass website</a> for
full installation instructions.</p>
<h1>Changes</h1>
<ul>
<li>No user-visible changes.</li>
</ul>
<p>See the <a
href="https://github.com/sass/dart-sass/blob/master/CHANGELOG.md#1834">full
changelog</a> for changes in earlier releases.</p>
<h2>Dart Sass 1.83.3</h2>
<p>To install Sass 1.83.3, download one of the packages below and <a
href="https://katiek2.github.io/path-doc/">add it to your PATH</a>, or
see <a href="https://sass-lang.com/install">the Sass website</a> for
full installation instructions.</p>
<h1>Changes</h1>
<ul>
<li>No user-visible changes.</li>
</ul>
<p>See the <a
href="https://github.com/sass/dart-sass/blob/master/CHANGELOG.md#1833">full
changelog</a> for changes in earlier releases.</p>
<h2>Dart Sass 1.83.2</h2>
<p>To install Sass 1.83.2, download one of the packages below and <a
href="https://katiek2.github.io/path-doc/">add it to your PATH</a>, or
see <a href="https://sass-lang.com/install">the Sass website</a> for
full installation instructions.</p>
<h1>Changes</h1>
<ul>
<li>
<p>Properly display deprecation IDs for the JS Sass API.</p>
</li>
<li>
<p>Don't display deprecation IDs for user-defined deprecations.</p>
</li>
</ul>
<p>See the <a
href="https://github.com/sass/dart-sass/blob/master/CHANGELOG.md#1832">full
changelog</a> for changes in earlier releases.</p>
<h2>Dart Sass 1.83.1</h2>
<p>To install Sass 1.83.1, download one of the packages below and <a
href="https://katiek2.github.io/path-doc/">add it to your PATH</a>, or
see <a href="https://sass-lang.com/install">the Sass website</a> for
full installation instructions.</p>
<h1>Changes</h1>
<ul>
<li>
<p>Fix a bug where <code>--quiet-deps</code> would get deactivated for
<code>@content</code> blocks, even when those blocks were entirely
contained within dependencies.</p>
</li>
<li>
<p>Include deprecation IDs in deprecation warnings to make it easier to
determine what to pass to <code>--silence-deprecation</code> or
<code>--fatal-deprecation</code>.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/sass/dart-sass/blob/main/CHANGELOG.md">sass's
changelog</a>.</em></p>
<blockquote>
<h2>1.83.4</h2>
<ul>
<li>No user-visible changes.</li>
</ul>
<h2>1.83.3</h2>
<ul>
<li>No user-visible changes.</li>
</ul>
<h2>1.83.2</h2>
<ul>
<li>
<p>Properly display deprecation IDs for the JS Sass API.</p>
</li>
<li>
<p>Don't display deprecation IDs for user-defined deprecations.</p>
</li>
</ul>
<h2>1.83.1</h2>
<ul>
<li>
<p>Fix a bug where <code>--quiet-deps</code> would get deactivated for
<code>@content</code> blocks,
even when those blocks were entirely contained within dependencies.</p>
</li>
<li>
<p>Include deprecation IDs in deprecation warnings to make it easier to
determine
what to pass to <code>--silence-deprecation</code> or
<code>--fatal-deprecation</code>.</p>
</li>
</ul>
<h2>1.83.0</h2>
<ul>
<li>Allow trailing commas in <em>all</em> argument and parameter
lists.</li>
</ul>
<h2>1.82.0</h2>
<h3>Command-Line Interface</h3>
<ul>
<li>
<p>Improve <code>--watch</code> mode reliability when making multiple
changes at once, such
as checking out a different Git branch.</p>
</li>
<li>
<p>Parse the <code>calc-size()</code> function as a calculation now that
it's supported in
some browsers.</p>
</li>
</ul>
<h3>Dart API</h3>
<ul>
<li>Add a <code>SassCalculation.calcSize()</code> function.</li>
</ul>
<h2>1.81.1</h2>
<ul>
<li>No user-visible changes.</li>
</ul>
<h2>1.81.0</h2>
<ul>
<li>
<p>Fix a few cases where deprecation warnings weren't being emitted for
global
built-in functions whose names overlap with CSS calculations.</p>
</li>
<li>
<p>Add support for the CSS <code>round()</code> calculation with a
single argument, as long</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/sass/dart-sass/commit/89a5394639688ad5ad5677fb6258f39fd74f95b9"><code>89a5394</code></a>
Fix more bugs in the sass-parser release process (<a
href="https://redirect.github.com/sass/dart-sass/issues/2491">#2491</a>)</li>
<li><a
href="https://github.com/sass/dart-sass/commit/46686eddcaee5a85f43bc300ee8650f8ac198f6c"><code>46686ed</code></a>
Merge pull request <a
href="https://redirect.github.com/sass/dart-sass/issues/2490">#2490</a>
from sass/sass-parser-release</li>
<li><a
href="https://github.com/sass/dart-sass/commit/126176760c49f16c4e3c112ce9315ac799cdb11f"><code>1261767</code></a>
Use a file: dependency for local Sass development</li>
<li><a
href="https://github.com/sass/dart-sass/commit/173f39b652e611f677fdb9cf66e01ee40bc66486"><code>173f39b</code></a>
Use the Dart Sass version for the sass-parser dependency</li>
<li><a
href="https://github.com/sass/dart-sass/commit/ddb14b2c39e297167f418abfd63fd216463ad72d"><code>ddb14b2</code></a>
Fix deprecation ID displays in JS mode (<a
href="https://redirect.github.com/sass/dart-sass/issues/2483">#2483</a>)</li>
<li><a
href="https://github.com/sass/dart-sass/commit/b12b508e79cce0a74262eb5c31f67a1cf1cb57a6"><code>b12b508</code></a>
Compile sass-parser before deploying (<a
href="https://redirect.github.com/sass/dart-sass/issues/2489">#2489</a>)</li>
<li><a
href="https://github.com/sass/dart-sass/commit/b19b57fd1d13d6f739bd9f2dd150f8382ddfd41d"><code>b19b57f</code></a>
Merge pull request <a
href="https://redirect.github.com/sass/dart-sass/issues/2478">#2478</a>
from sass/if</li>
<li><a
href="https://github.com/sass/dart-sass/commit/23ff19def96e27a39fa3cad22f6a93efeb479833"><code>23ff19d</code></a>
Merge branch 'main' into if</li>
<li><a
href="https://github.com/sass/dart-sass/commit/8818d934d9fe36b5ecada8e00868b0309f490c02"><code>8818d93</code></a>
Properly override the sass-parser dependency on sass during release (<a
href="https://redirect.github.com/sass/dart-sass/issues/2487">#2487</a>)</li>
<li><a
href="https://github.com/sass/dart-sass/commit/adb7016ea8ade98b195022526a066cfda70f8b29"><code>adb7016</code></a>
Merge pull request <a
href="https://redirect.github.com/sass/dart-sass/issues/2488">#2488</a>
from sass/sdk-formatter</li>
<li>Additional commits viewable in <a
href="https://github.com/sass/dart-sass/compare/1.72.0...1.83.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sass&package-manager=npm_and_yarn&previous-version=1.72.0&new-version=1.83.4)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:38:16 +00:00
dependabot[bot] 7ecd5e847f Bump vite-plugin-istanbul from 6.0.0 to 6.0.2 (#1010)
Bumps
[vite-plugin-istanbul](https://github.com/ifaxity/vite-plugin-istanbul)
from 6.0.0 to 6.0.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/ifaxity/vite-plugin-istanbul/releases">vite-plugin-istanbul's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.2</h2>
<h2><a
href="https://github.com/ifaxity/vite-plugin-istanbul/compare/v6.0.1...v6.0.2">6.0.2</a>
(2024-05-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>removed engine version (<a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/215">#215</a>)
(<a
href="https://github.com/ifaxity/vite-plugin-istanbul/commit/be2d28cf1976fcaf477f4b2500aa1a0f07a3abdb">be2d28c</a>),
closes <a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/214">#214</a></li>
</ul>
<h2>v6.0.2-rc.1</h2>
<h2><a
href="https://github.com/ifaxity/vite-plugin-istanbul/compare/v6.0.1...v6.0.2-rc.1">6.0.2-rc.1</a>
(2024-05-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>removed engine version (<a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/215">#215</a>)
(<a
href="https://github.com/ifaxity/vite-plugin-istanbul/commit/be2d28cf1976fcaf477f4b2500aa1a0f07a3abdb">be2d28c</a>),
closes <a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/214">#214</a></li>
</ul>
<h2>v6.0.1</h2>
<h2><a
href="https://github.com/ifaxity/vite-plugin-istanbul/compare/v6.0.0...v6.0.1">6.0.1</a>
(2024-05-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>only emit esm build (<a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/212">#212</a>)
(<a
href="https://github.com/ifaxity/vite-plugin-istanbul/commit/895c7bb111d3b3fede0c91fe74b8adf79ddd80ad">895c7bb</a>),
closes <a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/209">#209</a></li>
</ul>
<h2>v6.0.1-rc.1</h2>
<h2><a
href="https://github.com/ifaxity/vite-plugin-istanbul/compare/v6.0.0...v6.0.1-rc.1">6.0.1-rc.1</a>
(2024-05-04)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>only emit esm build (<a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/212">#212</a>)
(<a
href="https://github.com/ifaxity/vite-plugin-istanbul/commit/895c7bb111d3b3fede0c91fe74b8adf79ddd80ad">895c7bb</a>),
closes <a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/209">#209</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/be2d28cf1976fcaf477f4b2500aa1a0f07a3abdb"><code>be2d28c</code></a>
fix: removed engine version (<a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/215">#215</a>)</li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/9fe59335209fa48ac03514d8088216f57394bc9a"><code>9fe5933</code></a>
build(ci): added pnpm setup for actions (<a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/213">#213</a>)</li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/895c7bb111d3b3fede0c91fe74b8adf79ddd80ad"><code>895c7bb</code></a>
fix: only emit esm build (<a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/212">#212</a>)</li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/5004c58766608886d114e98d3cfa95710a04743e"><code>5004c58</code></a>
Merge pull request <a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/210">#210</a>
from iFaxity/dependabot/npm_and_yarn/commitlint/cli-1...</li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/4516f5e5e17937c0b67fc7413277dd2a631d84ce"><code>4516f5e</code></a>
build(deps-dev): bump <code>@​commitlint/cli</code> from 19.2.2 to
19.3.0</li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/f6e3ef895da1a680ada33c4984cff5fea1c0b764"><code>f6e3ef8</code></a>
Merge pull request <a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/206">#206</a>
from iFaxity/dependabot/npm_and_yarn/commitlint/confi...</li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/9cd34c340c171740b53b0ef2a3f0fb6526aec2df"><code>9cd34c3</code></a>
build(deps-dev): bump <code>@​commitlint/config-conventional</code></li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/99fa96b780940780628ec2d134903eea39d7eae9"><code>99fa96b</code></a>
Merge pull request <a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/208">#208</a>
from iFaxity/dependabot/npm_and_yarn/types/node-20.12.7</li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/c367441fe89cdc3e4ec9ad12da4f4930bbeb866f"><code>c367441</code></a>
Merge pull request <a
href="https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/207">#207</a>
from iFaxity/dependabot/npm_and_yarn/typescript-5.4.5</li>
<li><a
href="https://github.com/iFaxity/vite-plugin-istanbul/commit/cbc88e01942d58616306d5abc54c806e4ecbae01"><code>cbc88e0</code></a>
build(deps-dev): bump <code>@​types/node</code> from 20.12.5 to
20.12.7</li>
<li>Additional commits viewable in <a
href="https://github.com/ifaxity/vite-plugin-istanbul/compare/v6.0.0...v6.0.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite-plugin-istanbul&package-manager=npm_and_yarn&previous-version=6.0.0&new-version=6.0.2)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:32:29 +00:00
dependabot[bot] 1890001bf4 Bump react-i18next from 15.0.1 to 15.4.0 (#1008)
Bumps [react-i18next](https://github.com/i18next/react-i18next) from
15.0.1 to 15.4.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/react-i18next/blob/master/CHANGELOG.md">react-i18next's
changelog</a>.</em></p>
<blockquote>
<h3>15.4.0</h3>
<p>feat: add meta with codes on warnings to allow conditional logging <a
href="https://redirect.github.com/i18next/react-i18next/pull/1826">1826</a></p>
<h3>15.3.0</h3>
<p>Uses the i18next logger instead of the default console logger, if
there is a valid i18next instance. Now the debug i18next option is
respected, and you can also inject your own logger module: <a
href="https://www.i18next.com/misc/creating-own-plugins#logger">https://www.i18next.com/misc/creating-own-plugins#logger</a></p>
<h3>15.2.0</h3>
<p>This version may be breaking if you still use React &lt; v18 with
TypeScript.
For JS users this version is equal to v15.1.4</p>
<ul>
<li>fix: Global JSX namespace is deprecated <a
href="https://redirect.github.com/i18next/react-i18next/issues/1823">1823</a>
with <a
href="https://redirect.github.com/i18next/react-i18next/pull/1822">1822</a></li>
</ul>
<h3>15.1.4</h3>
<ul>
<li>Fix: warning each child should have a unique key <a
href="https://redirect.github.com/i18next/react-i18next/pull/1820">1820</a></li>
</ul>
<h3>15.1.3</h3>
<ul>
<li>fix: Self-closing REACT components in translation strings should not
attempt to replace the component's children <a
href="https://redirect.github.com/i18next/react-i18next/issues/1815">1815</a>
<a
href="https://redirect.github.com/i18next/react-i18next/pull/1816">1816</a></li>
</ul>
<h3>15.1.2</h3>
<ul>
<li>fix: Attempted to assign to readonly property <a
href="https://redirect.github.com/i18next/react-i18next/pull/1813">1813</a></li>
</ul>
<h3>15.1.1</h3>
<ul>
<li>fix: Not all namespaces are loaded when passing the lng option to
useTranslate <a
href="https://redirect.github.com/i18next/react-i18next/issues/1809">1809</a></li>
</ul>
<h3>15.1.0</h3>
<ul>
<li>fix: <code>&lt;Trans /&gt;</code> warns 'Each child in a list should
have a unique &quot;key&quot; prop.' for react 19 <a
href="https://redirect.github.com/i18next/react-i18next/pull/1806">1806</a></li>
</ul>
<h3>15.0.3</h3>
<ul>
<li>try to fix <a
href="https://redirect.github.com/i18next/next-i18next/issues/2302">unexpected
token issue</a></li>
</ul>
<h3>15.0.2</h3>
<ul>
<li>try to fix Trans handling with alwaysFormat set to true <a
href="https://redirect.github.com/i18next/react-i18next/issues/1801">1801</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/i18next/react-i18next/commit/330a8e72e33ead1194812a4dce7c912eed10381e"><code>330a8e7</code></a>
15.4.0</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/26ab5a3e8134efd775ee5e7d10cc77442a634ff3"><code>26ab5a3</code></a>
release</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/3cd025f034ed2b0e65e8b2516885ac3ba4a2605e"><code>3cd025f</code></a>
feat: format warning with code and data to allow conditional logging (<a
href="https://redirect.github.com/i18next/react-i18next/issues/1826">#1826</a>)</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/ff509baabd7dda6f6a22ac21ed4b92a40c7704ea"><code>ff509ba</code></a>
15.3.0</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/26616eba2fdbf2813f6514c5883dcda7c769d5ae"><code>26616eb</code></a>
use i18next logger if possible</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/9b194b1be6fa1f38dca3ef010c3ba440240a80ab"><code>9b194b1</code></a>
15.2.0</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/073feff0ea802ce672c8aee7a138c1e5ac3d57b4"><code>073feff</code></a>
release</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/eb372c4e4b0fd749b6b4a9b20e67fb4a4652ed62"><code>eb372c4</code></a>
Global JSX namespace is deprecated (<a
href="https://redirect.github.com/i18next/react-i18next/issues/1822">#1822</a>)</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/69a342cb3bb773e6ae45c700d3bb3feca021ca72"><code>69a342c</code></a>
15.1.4</li>
<li><a
href="https://github.com/i18next/react-i18next/commit/0441701a928ed44aa245540cff5a1a5c18301aba"><code>0441701</code></a>
release</li>
<li>Additional commits viewable in <a
href="https://github.com/i18next/react-i18next/compare/v15.0.1...v15.4.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=react-i18next&package-manager=npm_and_yarn&previous-version=15.0.1&new-version=15.4.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:31:56 +00:00
dependabot[bot] 79e547dd91 Bump @types/react-aria-modal from 4.0.10 to 5.0.0 (#1009)
Bumps
[@types/react-aria-modal](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-aria-modal)
from 4.0.10 to 5.0.0.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-aria-modal">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/react-aria-modal&package-manager=npm_and_yarn&previous-version=4.0.10&new-version=5.0.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:31:39 +00:00
dependabot[bot] 016cb25fad Bump @types/uuid from 9.0.8 to 10.0.0 (#1005)
Bumps
[@types/uuid](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/uuid)
from 9.0.8 to 10.0.0.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/uuid">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/uuid&package-manager=npm_and_yarn&previous-version=9.0.8&new-version=10.0.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:31:13 +00:00
dependabot[bot] c5a98a6c02 Bump eslint-plugin-react from 7.34.1 to 7.37.4 (#1004)
Bumps
[eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react)
from 7.34.1 to 7.37.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/jsx-eslint/eslint-plugin-react/releases">eslint-plugin-react's
releases</a>.</em></p>
<blockquote>
<h2>v7.37.4</h2>
<h3>Fixed</h3>
<ul>
<li>[<code>no-unknown-property</code>]: support
<code>onBeforeToggle</code>, <code>popoverTarget</code>,
<code>popoverTargetAction</code> attributes (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3865">#3865</a>[]
<a href="https://github.com/acusti"><code>@​acusti</code></a>)</li>
<li>[types] fix types of flat configs (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3874">#3874</a>[]
<a href="https://github.com/ljharb"><code>@​ljharb</code></a>)</li>
</ul>
<p><a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1000">#1000</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1000">jsx-eslint/eslint-plugin-react#1000</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1002">#1002</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1002">jsx-eslint/eslint-plugin-react#1002</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1005">#1005</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1005">jsx-eslint/eslint-plugin-react#1005</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/100">#100</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/100">jsx-eslint/eslint-plugin-react#100</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1010">#1010</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1010">jsx-eslint/eslint-plugin-react#1010</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1013">#1013</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1013">jsx-eslint/eslint-plugin-react#1013</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1022">#1022</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1022">jsx-eslint/eslint-plugin-react#1022</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1029">#1029</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1029">jsx-eslint/eslint-plugin-react#1029</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/102">#102</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/102">jsx-eslint/eslint-plugin-react#102</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1034">#1034</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1034">jsx-eslint/eslint-plugin-react#1034</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1038">#1038</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1038">jsx-eslint/eslint-plugin-react#1038</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1041">#1041</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1041">jsx-eslint/eslint-plugin-react#1041</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1043">#1043</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1043">jsx-eslint/eslint-plugin-react#1043</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1046">#1046</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1046">jsx-eslint/eslint-plugin-react#1046</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1047">#1047</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1047">jsx-eslint/eslint-plugin-react#1047</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1050">#1050</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1050">jsx-eslint/eslint-plugin-react#1050</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1053">#1053</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1053">jsx-eslint/eslint-plugin-react#1053</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1057">#1057</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1057">jsx-eslint/eslint-plugin-react#1057</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/105">#105</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/105">jsx-eslint/eslint-plugin-react#105</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1061">#1061</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1061">jsx-eslint/eslint-plugin-react#1061</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1062">#1062</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1062">jsx-eslint/eslint-plugin-react#1062</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1070">#1070</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1070">jsx-eslint/eslint-plugin-react#1070</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1071">#1071</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1071">jsx-eslint/eslint-plugin-react#1071</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1073">#1073</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1073">jsx-eslint/eslint-plugin-react#1073</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1076">#1076</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1076">jsx-eslint/eslint-plugin-react#1076</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1079">#1079</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1079">jsx-eslint/eslint-plugin-react#1079</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1088">#1088</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1088">jsx-eslint/eslint-plugin-react#1088</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1098">#1098</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1098">jsx-eslint/eslint-plugin-react#1098</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1101">#1101</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1101">jsx-eslint/eslint-plugin-react#1101</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1103">#1103</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1103">jsx-eslint/eslint-plugin-react#1103</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/110">#110</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/110">jsx-eslint/eslint-plugin-react#110</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1116">#1116</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1116">jsx-eslint/eslint-plugin-react#1116</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1117">#1117</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1117">jsx-eslint/eslint-plugin-react#1117</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1119">#1119</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1119">jsx-eslint/eslint-plugin-react#1119</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1121">#1121</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1121">jsx-eslint/eslint-plugin-react#1121</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1122">#1122</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1122">jsx-eslint/eslint-plugin-react#1122</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1123">#1123</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1123">jsx-eslint/eslint-plugin-react#1123</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1130">#1130</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1130">jsx-eslint/eslint-plugin-react#1130</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1131">#1131</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1131">jsx-eslint/eslint-plugin-react#1131</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1132">#1132</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1132">jsx-eslint/eslint-plugin-react#1132</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1134">#1134</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1134">jsx-eslint/eslint-plugin-react#1134</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1135">#1135</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1135">jsx-eslint/eslint-plugin-react#1135</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1139">#1139</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1139">jsx-eslint/eslint-plugin-react#1139</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1148">#1148</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1148">jsx-eslint/eslint-plugin-react#1148</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/1149">#1149</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/1149">jsx-eslint/eslint-plugin-react#1149</a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md">eslint-plugin-react's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.3...v7.37.4">7.37.4</a>
- 2025.01.12</h2>
<h3>Fixed</h3>
<ul>
<li>[<code>no-unknown-property</code>]: support
<code>onBeforeToggle</code>, <code>popoverTarget</code>,
<code>popoverTargetAction</code> attributes (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3865">#3865</a>[]
<a href="https://github.com/acusti"><code>@​acusti</code></a>)</li>
<li>[types] fix types of flat configs (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3874">#3874</a>[]
<a href="https://github.com/ljharb"><code>@​ljharb</code></a>)</li>
</ul>
<p><a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3874">#3874</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/3874">jsx-eslint/eslint-plugin-react#3874</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3865">#3865</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/3865">jsx-eslint/eslint-plugin-react#3865</a></p>
<h2><a
href="https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.2...v7.37.3">7.37.3</a>
- 2024.12.23</h2>
<h3>Fixed</h3>
<ul>
<li>[<code>no-danger</code>]: avoid a crash on a nested component name
(<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3833">#3833</a>[]
<a href="https://github.com/ljharb"><code>@​ljharb</code></a>)</li>
<li>[Fix] types: correct generated type declaration (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3840">#3840</a>[]
<a href="https://github.com/ocavue"><code>@​ocavue</code></a>)</li>
<li>[<code>no-unknown-property</code>]: support <code>precedence</code>
prop in react 19 (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3829">#3829</a>[]
<a href="https://github.com/acusti"><code>@​acusti</code></a>)</li>
<li>[<code>prop-types</code>]: props missing in validation when using
generic types from a namespace import (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3859">#3859</a>[]
<a
href="https://github.com/rbondoc96"><code>@​rbondoc96</code></a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>[Tests] [<code>jsx-no-script-url</code>]: Improve tests (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3849">#3849</a>[]
<a href="https://github.com/radu2147"><code>@​radu2147</code></a>)</li>
<li>[Docs] fix broken links:
[<code>default-props-match-prop-types</code>],
[<code>jsx-boolean-value</code>],
[<code>jsx-curly-brace-presence</code>], [<code>jsx-no-bind</code>],
[<code>no-array-index-key</code>], [<code>no-is-mounted</code>],
[<code>no-render-return-value</code>],
[<code>require-default-props</code>] (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3841">#3841</a>[]
<a
href="https://github.com/bastiendmt"><code>@​bastiendmt</code></a>)</li>
</ul>
<p><a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3859">#3859</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/3859">jsx-eslint/eslint-plugin-react#3859</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3849">#3849</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/3849">jsx-eslint/eslint-plugin-react#3849</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3841">#3841</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/3841">jsx-eslint/eslint-plugin-react#3841</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3840">#3840</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/3840">jsx-eslint/eslint-plugin-react#3840</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3833">#3833</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3833">jsx-eslint/eslint-plugin-react#3833</a>
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3829">#3829</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/3829">jsx-eslint/eslint-plugin-react#3829</a></p>
<h2><a
href="https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.1...v7.37.2">7.37.2</a>
- 2024.10.22</h2>
<h3>Fixed</h3>
<ul>
<li>[<code>destructuring-assignment</code>]: fix false negative when
using <code>typeof props.a</code> (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3835">#3835</a>[]
<a href="https://github.com/golopot"><code>@​golopot</code></a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>[Refactor] [<code>destructuring-assignment</code>]: use
<code>getParentStatelessComponent</code> (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3835">#3835</a>[]
<a href="https://github.com/golopot"><code>@​golopot</code></a>)</li>
</ul>
<p><a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3835">#3835</a>:
<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/pull/3835">jsx-eslint/eslint-plugin-react#3835</a></p>
<h2><a
href="https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.37.0...v7.37.1">7.37.1</a>
- 2024.10.01</h2>
<h3>Fixed</h3>
<ul>
<li>[meta] do not npmignore <code>d.ts</code> files (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3836">#3836</a>[]
<a href="https://github.com/ljharb"><code>@​ljharb</code></a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li>[readme] Fix shared settings link (<a
href="https://redirect.github.com/jsx-eslint/eslint-plugin-react/issues/3834">#3834</a>[]
<a
href="https://github.com/MgenGlder"><code>@​MgenGlder</code></a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/e6b5b41191690ee166d0cca1e9db27092b910f03"><code>e6b5b41</code></a>
Update CHANGELOG and bump version</li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/cfd5edd4f66905ea3300d3ee96289b9fefbbfb5f"><code>cfd5edd</code></a>
[Dev Deps] update <code>@babel/eslint-parser</code></li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/efc021fbece010b3f4a658cd1b05753e9e2776f1"><code>efc021f</code></a>
[types] fix types of flat configs</li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/82a196a0b2c7c5c91e57f320428b58900cb4a8cf"><code>82a196a</code></a>
[Fix] <code>no-unknown-property</code>: support
<code>onBeforeToggle</code>, <code>popoverTarget</code>, `popo...</li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/5c816edc1d146767143ce894707bd7284aca400c"><code>5c816ed</code></a>
[actions] publish action: allow additional URL</li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/244743a7a974787f60d0afb05dd2cae8f7392064"><code>244743a</code></a>
Update CHANGELOG and bump version</li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/bc5b9dda28e37ee2a5dc9daa98868ba4a339839e"><code>bc5b9dd</code></a>
[actions] release workflow needs some new domains</li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/ed3b1cf8f398a284353e9f8d41a4ab7b1c31a543"><code>ed3b1cf</code></a>
[Tests] <code>jsx-uses-vars</code>, <code>jsx-uses-react</code>: fix
<code>no-unused-vars</code> tests in esli...</li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/033ad19c6afd4cc6a0777f6c174e7f2dadbd7853"><code>033ad19</code></a>
[Deps] update <code>array.prototype.flatmap</code>,
<code>es-iterator-helpers</code>, `object.value...</li>
<li><a
href="https://github.com/jsx-eslint/eslint-plugin-react/commit/b4a14f4cdbac6e6ad78f79bd3cec167416ddbc90"><code>b4a14f4</code></a>
[meta] add <code>directories.test</code></li>
<li>Additional commits viewable in <a
href="https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.34.1...v7.37.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=eslint-plugin-react&package-manager=npm_and_yarn&previous-version=7.34.1&new-version=7.37.4)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:30:51 +00:00
dependabot[bot] 9885f1c303 Bump @types/mocha from 10.0.6 to 10.0.10 (#1002)
Bumps
[@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha)
from 10.0.6 to 10.0.10.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/mocha&package-manager=npm_and_yarn&previous-version=10.0.6&new-version=10.0.10)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:30:29 +00:00
dependabot[bot] 9079bf1730 Bump @types/color from 3.0.6 to 4.2.0 (#1001)
Bumps
[@types/color](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/color)
from 3.0.6 to 4.2.0.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/color">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/color&package-manager=npm_and_yarn&previous-version=3.0.6&new-version=4.2.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:30:14 +00:00
dependabot[bot] 0de0e52fef Bump stylelint-config-recommended-scss from 14.0.0 to 14.1.0 (#999)
Bumps
[stylelint-config-recommended-scss](https://github.com/stylelint-scss/stylelint-config-recommended-scss)
from 14.0.0 to 14.1.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/releases">stylelint-config-recommended-scss's
releases</a>.</em></p>
<blockquote>
<h2>14.1.0</h2>
<ul>
<li>Changed: replaced deprecated
<code>scss/at-import-partial-extension</code> rule with
<code>scss/load-partial-extension</code> rule.</li>
<li>Changed: updated to <a
href="https://github.com/stylelint-scss/stylelint-scss/releases/tag/v6.4.0"><code>stylelint-scss@6.4.0</code></a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/blob/master/CHANGELOG.md">stylelint-config-recommended-scss's
changelog</a>.</em></p>
<blockquote>
<h1>14.1.0</h1>
<ul>
<li>Changed: replaced deprecated
<code>scss/at-import-partial-extension</code> rule with
<code>scss/load-partial-extension</code> rule.</li>
<li>Changed: updated to <a
href="https://github.com/stylelint-scss/stylelint-scss/releases/tag/v6.4.0"><code>stylelint-scss@6.4.0</code></a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/f4a40b4e302d5f795aba1059fcdf60586d8b0cfc"><code>f4a40b4</code></a>
14.1.0</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/7f500132941c7a19b6447d7ae697f6b312b6d4c0"><code>7f50013</code></a>
Prepare 14.1.0</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/0f817d205cb5d3b278154ea17e6fca4cf10ebc8f"><code>0f817d2</code></a>
Replace deprecated rule (<a
href="https://redirect.github.com/stylelint-scss/stylelint-config-recommended-scss/issues/305">#305</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/7ba96d5d8fa808a8e107ca2073ce360d7ed1c3a0"><code>7ba96d5</code></a>
Bump stylelint-scss from 6.3.2 to 6.4.0 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-config-recommended-scss/issues/304">#304</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/54b7810623a353521064e6865ff16a549cda4a68"><code>54b7810</code></a>
Bump <code>@​stylelint/remark-preset</code> from 5.1.0 to 5.1.1 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-config-recommended-scss/issues/303">#303</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/4a1779fe6d55b951445c1085ae2eca3bdce0a766"><code>4a1779f</code></a>
Bump stylelint-config-recommended from 14.0.0 to 14.0.1 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-config-recommended-scss/issues/302">#302</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/53986f63bd58d7dce7a2b63c26226eb6fb775a32"><code>53986f6</code></a>
Bump np from 10.0.5 to 10.0.6 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-config-recommended-scss/issues/301">#301</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/ba338cfebe0a72e2adf7581ca6351f01b9c87553"><code>ba338cf</code></a>
Bump stylelint-scss from 6.3.0 to 6.3.2 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-config-recommended-scss/issues/300">#300</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/0332105047a4cfdb593412dfbb31dc935c25c19e"><code>0332105</code></a>
Bump prettier from 3.2.5 to 3.3.2 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-config-recommended-scss/issues/299">#299</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/commit/e1cde4aa6728a6c8c97965c8c838bd4edb147346"><code>e1cde4a</code></a>
Bump stylelint from 16.5.0 to 16.6.1 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-config-recommended-scss/issues/296">#296</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/stylelint-scss/stylelint-config-recommended-scss/compare/v14.0.0...v14.1.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=stylelint-config-recommended-scss&package-manager=npm_and_yarn&previous-version=14.0.0&new-version=14.1.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:29:58 +00:00
Birk Skyum 3e6994084c Bump OpenLayers (#998)
Closes #996

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-21 15:24:15 +02:00
Birk Skyum 891bcf1777 Dependabot automerge workflow (#997)
Follow up to
- #972

Closes #971 
- #971 

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.

Co-authored-by: Harel M <harel.mazor@gmail.com>
2025-01-21 12:34:00 +00:00
dependabot[bot] 69e4888d71 Bump eslint-plugin-react-refresh from 0.4.6 to 0.4.18 (#987)
Bumps
[eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh)
from 0.4.6 to 0.4.18.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/releases">eslint-plugin-react-refresh's
releases</a>.</em></p>
<blockquote>
<h2>v0.4.18</h2>
<p>ESM/CJS interop is the worse that happened to this ecosystem, this is
all I have to say.</p>
<h2>v0.4.17</h2>
<ul>
<li>Fix detection of local components to not generate warning on for
variable inside JSX files that follow React component naming (fixes <a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/75">#75</a>)</li>
<li>Update types to not require extra unnecessary <code>.default</code>
property access under TS node16 module resolution (fixes <a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/70">#70</a>)</li>
</ul>
<h2>v0.4.16</h2>
<p>Fix CJS/ESM interop issue. Sorry everyone for the trouble.</p>
<h2>v0.4.15</h2>
<h3>Add support for custom HOCs (<a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/60">#60</a>)</h3>
<p>By default, the rule only knows that <code>memo</code> &amp;
<code>forwardRef</code> function calls with return a React component.
With this option, you can also allow extra function names like Mobx
observer to make this code valid:</p>
<pre lang="tsx"><code>const Foo = () =&gt; &lt;&gt;&lt;/&gt;;
export default observer(Foo);
</code></pre>
<pre lang="json"><code>{
  &quot;react-refresh/only-export-components&quot;: [
    &quot;error&quot;,
    { &quot;customHOCs&quot;: [&quot;observer&quot;] }
  ]
}
</code></pre>
<p>Thanks <a
href="https://github.com/HorusGoul"><code>@​HorusGoul</code></a>!</p>
<h3>Add recommended config and simple types (<a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/67">#67</a>)</h3>
<p>You can now add the recommended config to your ESLint config like
this:</p>
<pre lang="js"><code>import reactRefresh from
&quot;eslint-plugin-react-refresh&quot;;
<p>export default [
/* Main config */
reactRefresh.configs.recommended, // Or reactRefresh.configs.vite for
Vite users
];
</code></pre></p>
<p>To follow ESLint recommandations, the rule is added with the
<code>error</code> severity.</p>
<p>Some simple types ensure that people typecheking their config won't
need <code>@ts-expect-error</code> anymore.</p>
<h3>Bump ESLint peer dependency to 8.40</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/main/CHANGELOG.md">eslint-plugin-react-refresh's
changelog</a>.</em></p>
<blockquote>
<h2>0.4.18</h2>
<p>ESM/CJS interop is the worth that happend to this ecosystem, this is
all I have to say.</p>
<h2>0.4.17</h2>
<ul>
<li>Fix detection of local components to not generate warning on for
variable inside JSX files that follow React component naming (fixes <a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/75">#75</a>)</li>
<li>Update types to not require extra unnecessary <code>.default</code>
property access under TS node16 module resolution (fixes <a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/70">#70</a>)</li>
</ul>
<h2>0.4.16</h2>
<p>Fix CJS/ESM interop issue. Sorry everyone for the trouble.</p>
<h2>0.4.15</h2>
<h3>Add support for custom HOCs (<a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/60">#60</a>)</h3>
<p>By default, the rule only knows that <code>memo</code> &amp;
<code>forwardRef</code> function calls with return a React component.
With this option, you can also allow extra function names like Mobx
observer to make this code valid:</p>
<pre lang="tsx"><code>const Foo = () =&gt; &lt;&gt;&lt;/&gt;;
export default observer(Foo);
</code></pre>
<pre lang="json"><code>{
  &quot;react-refresh/only-export-components&quot;: [
    &quot;error&quot;,
    { &quot;customHOCs&quot;: [&quot;observer&quot;] }
  ]
}
</code></pre>
<p>Thanks <a
href="https://github.com/HorusGoul"><code>@​HorusGoul</code></a>!</p>
<h3>Add recommended config and simple types (<a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/67">#67</a>)</h3>
<p>You can now add the recommended config to your ESLint config like
this:</p>
<pre lang="js"><code>import reactRefresh from
&quot;eslint-plugin-react-refresh&quot;;
<p>export default [
/* Main config */
reactRefresh.configs.recommended, // Or reactRefresh.configs.vite for
Vite users
];
</code></pre></p>
<p>To follow ESLint recommandations, the rule is added with the
<code>error</code> severity.</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/3d6251de43d1bb85868063faa444380f39c76a84"><code>3d6251d</code></a>
Fix types [publish]</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/47f25f07d9de73238fd4a96feaca87eaa1392099"><code>47f25f0</code></a>
Update types to not require extra unnecessary <code>.default</code>
property access unde...</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/639e7724f472ed2ed1cd9e1955519ba6705431a9"><code>639e772</code></a>
Fix detection of local components to not generate warning on for
variable ins...</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/d939cc4bd483850c791c74d99b1b4962fa7f4275"><code>d939cc4</code></a>
Fix exports [publish]</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/7d1709b06591dab298ca8dce57a4f9254959b826"><code>7d1709b</code></a>
0.4.15 [publish]</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/ec747c2a25106bca12002007832217916bf2f36c"><code>ec747c2</code></a>
Add configs and simple types (<a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/67">#67</a>)</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/359ae21a40308ee638e4a980a489c8a80d50ed19"><code>359ae21</code></a>
Bump ESLint peer dependency (fixes <a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/56">#56</a>)</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/86bddb3b9ac4c04a80a7d11e2bec33f638603169"><code>86bddb3</code></a>
Add changelog entry &amp; simplify legacy name based only check</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/478e7788bd39f8b860983ca4d9275afdeb1f292f"><code>478e778</code></a>
Add basic support for custom HOCs (<a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/60">#60</a>)</li>
<li><a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/commit/94c9d7d98cd5f855de95fdcdc1fc414c393fb31e"><code>94c9d7d</code></a>
docs: switch suggested severity from 'warn' to 'error' (<a
href="https://redirect.github.com/ArnaudBarre/eslint-plugin-react-refresh/issues/66">#66</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/ArnaudBarre/eslint-plugin-react-refresh/compare/v0.4.6...v0.4.18">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=eslint-plugin-react-refresh&package-manager=npm_and_yarn&previous-version=0.4.6&new-version=0.4.18)](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>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Harel M <harel.mazor@gmail.com>
2025-01-21 14:24:47 +02:00
dependabot[bot] 2a3e7ea4bb Bump stylelint from 16.2.1 to 16.13.2 (#977)
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.2.1 to
16.13.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint/stylelint/releases">stylelint's
releases</a>.</em></p>
<blockquote>
<h2>16.13.2</h2>
<ul>
<li>Fixed: <code>--fix</code> CLI flag raising unknown value error (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8313">#8313</a>)
(<a
href="https://github.com/ybiquitous"><code>@​ybiquitous</code></a>).</li>
</ul>
<h2>16.13.1</h2>
<ul>
<li>Fixed: <code>ignore.default is not a function</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8305">#8305</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
</ul>
<h2>16.13.0</h2>
<ul>
<li>Deprecated: ambiguous position arguments passed to
<code>utils.report()</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8244">#8244</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
<li>Added: <code>lax</code>/<code>strict</code> values to the
<code>fix</code> Node.js API option and CLI flag (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8106">#8106</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: support for profiling rule performance via the
<code>TIMING</code> environment variable (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8108">#8108</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>at-rule-descriptor-no-unknown</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8197">#8197</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>at-rule-descriptor-value-no-unknown</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8211">#8211</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>at-rule-no-deprecated</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8251">#8251</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Added: <code>at-rule-prelude-no-invalid</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8268">#8268</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>declaration-property-value-keyword-no-deprecated</code>
rule (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8223">#8223</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Added: <code>&quot;ignore&quot;: [&quot;at-rule-preludes&quot;,
&quot;declaration-values&quot;]</code> to <code>string-no-newline</code>
(<a
href="https://redirect.github.com/stylelint/stylelint/issues/8214">#8214</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>messageArgs</code> to
<code>declaration-property-value-no-unknown</code>,
<code>font-family-name-quotes</code>,
<code>font-family-no-duplicate-names</code>,
<code>function-calc-no-unspaced-operator</code>,
<code>import-notation</code>,
<code>media-feature-name-unit-allowed-list</code>,
<code>selector-attribute-quotes</code> and
<code>selector-pseudo-element-colon-notation</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8285">#8285</a>
&amp; <a
href="https://redirect.github.com/stylelint/stylelint/issues/8252">#8252</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: deprecation warnings to only display once per (custom) rule
(<a
href="https://redirect.github.com/stylelint/stylelint/issues/8265">#8265</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
<li>Fixed: <code>*-no-vendor-prefix</code> message ambiguity (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8239">#8239</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>at-rule-(dis)allowed-list</code>,
<code>at-rule-no-vendor-prefix</code>,
<code>at-rule-property-required-list</code> message argument (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8277">#8277</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>at-rule-property-required-list</code> message for
inclusion of properties and descriptors (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8207">#8207</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Fixed: <code>at-rule-*</code> false positives and negatives for
<code>@charset</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8215">#8215</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> false
positives for descriptors (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8240">#8240</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Fixed: <code>property-(dis)allowed-list</code> false negatives for
custom properties, use <code>/^--/</code> to (dis)allow them (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8209">#8209</a>)
(<a
href="https://github.com/fbasmaison-lucca"><code>@​fbasmaison-lucca</code></a>).</li>
<li>Fixed: <code>property-no-unknown</code> false positives for
descriptors (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8203">#8203</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Fixed: <code>selector-pseudo-class-no-unknown</code> false positives
for deprecated pseudo-classes (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8264">#8264</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-type-case</code> false positives for
<code>hatchPath</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8264">#8264</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-type-no-unknown</code> false positives for
<code>shadow</code>, <code>hatch</code> and <code>hatchpath</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8264">#8264</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
</ul>
<h2>16.12.0</h2>
<ul>
<li>Added: <code>selector-pseudo-class-allowed-list</code> now checks
<code>@page</code> pseudo-classes (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8176">#8176</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Added: <code>selector-pseudo-class-disallowed-list</code> now checks
<code>@page</code> pseudo-classes (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8171">#8171</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>at-rule-property-required-list</code> message to use
&quot;descriptor&quot; for accuracy (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8186">#8186</a>)
(<a
href="https://github.com/ybiquitous"><code>@​ybiquitous</code></a>).</li>
<li>Fixed: <code>custom-property-no-missing-var-function</code> false
positives for <code>container-name</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8157">#8157</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>custom-property-no-missing-var-function</code> false
positives for custom properties passed to <code>running()</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8172">#8172</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>function-no-unknown</code> false positives for
<code>running()</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8172">#8172</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-pseudo-class-no-unknown</code> false positives
for <code>:open</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8184">#8184</a>)
(<a
href="https://github.com/lukewarlow"><code>@​lukewarlow</code></a>).</li>
<li>Fixed: <code>selector-pseudo-class-no-unknown</code> false positives
for <code>:recto</code>, <code>:verso</code> and <code>:nth()</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8170">#8170</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-pseudo-class-no-unknown</code> false positives
for some <code>moz-*</code> vendor-prefixed pseudo-classes (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8188">#8188</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-pseudo-element-no-unknown</code> false
positives for <code>::details-content</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8174">#8174</a>)
(<a
href="https://github.com/lukewarlow"><code>@​lukewarlow</code></a>).</li>
<li>Fixed: <code>selector-type-no-unknown</code> false positives for
idents in functional pseudo-classes (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8191">#8191</a>)
(<a href="https://github.com/elskhn"><code>@​elskhn</code></a>).</li>
<li>Fixed: <code>value-keyword-case</code> false negatives (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8158">#8158</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>value-keyword-case</code> false positives for
vendor-prefixed system colors (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8146">#8146</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
</ul>
<h2>16.11.0</h2>
<ul>
<li>Added: <code>--report-unscoped-disables</code> CLI flag and
<code>reportUnscopedDisables</code> option to Node.js API and
configuration object (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8024">#8024</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Added: <code>ignoreFunctions: []</code> to
<code>media-query-no-invalid</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8060">#8060</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>name</code> configuration property under
<code>overrides</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8095">#8095</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Fixed: <code>benchmark-rule</code> script to resolve
<code>TypeError</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8090">#8090</a>)
(<a
href="https://github.com/ybiquitous"><code>@​ybiquitous</code></a>).</li>
<li>Fixed: <code>github</code> formatter deprecation warning link to
<code>https://stylelint.io/awesome-stylelint#formatters</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8115">#8115</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md">stylelint's
changelog</a>.</em></p>
<blockquote>
<h2>16.13.2 - 2025-01-14</h2>
<p>It fixes a regression bug with <code>--fix</code>.</p>
<ul>
<li>Fixed: <code>--fix</code> CLI flag raising unknown value error (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8313">#8313</a>)
(<a
href="https://github.com/ybiquitous"><code>@​ybiquitous</code></a>).</li>
</ul>
<h2>16.13.1 - 2025-01-13</h2>
<p>It fixes one bug due to an upstream change in our <code>ignore</code>
dependency.</p>
<ul>
<li>Fixed: <code>ignore.default is not a function</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8305">#8305</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
</ul>
<h2>16.13.0 - 2025-01-12</h2>
<p>It adds 3 rules to help you write error-free at-rules and 2 rules to
warn you about deprecated CSS features. We've turned these rules on in
our <a
href="https://www.npmjs.com/package/stylelint-config-standard">standard
config</a>.</p>
<p>It also adds new rule options, a feature to display how long rules
take, lax autofix and support for <code>messageArgs</code> in more
rules. It fixes 7 bugs.</p>
<p>Lastly, we've made a deprecation that may affect some plugins. We've
updated our docs for <a
href="https://github.com/stylelint/stylelint/blob/main/docs/developer-guide/plugins.md#quiet-deprecation-warnings">plugin
authors</a> and <a
href="https://github.com/stylelint/stylelint/blob/main/docs/user-guide/options.md#quietdeprecationwarnings">end
users</a> on how to silence deprecation warnings.</p>
<ul>
<li>Deprecated: ambiguous position arguments passed to
<code>utils.report()</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8244">#8244</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
<li>Added: <code>lax</code>/<code>strict</code> values to the
<code>fix</code> Node.js API option and CLI flag (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8106">#8106</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: support for profiling rule performance via the
<code>TIMING</code> environment variable (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8108">#8108</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>at-rule-descriptor-no-unknown</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8197">#8197</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>at-rule-descriptor-value-no-unknown</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8211">#8211</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>at-rule-no-deprecated</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8251">#8251</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Added: <code>at-rule-prelude-no-invalid</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8268">#8268</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>declaration-property-value-keyword-no-deprecated</code>
rule (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8223">#8223</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Added: <code>&quot;ignore&quot;: [&quot;at-rule-preludes&quot;,
&quot;declaration-values&quot;]</code> to <code>string-no-newline</code>
(<a
href="https://redirect.github.com/stylelint/stylelint/pull/8214">#8214</a>)
(<a
href="https://github.com/ryo-manba"><code>@​ryo-manba</code></a>).</li>
<li>Added: <code>messageArgs</code> to
<code>declaration-property-value-no-unknown</code>,
<code>font-family-name-quotes</code>,
<code>font-family-no-duplicate-names</code>,
<code>function-calc-no-unspaced-operator</code>,
<code>import-notation</code>,
<code>media-feature-name-unit-allowed-list</code>,
<code>selector-attribute-quotes</code> and
<code>selector-pseudo-element-colon-notation</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8285">#8285</a>
&amp; <a
href="https://redirect.github.com/stylelint/stylelint/pull/8252">#8252</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: deprecation warnings to only display once per (custom) rule
(<a
href="https://redirect.github.com/stylelint/stylelint/pull/8265">#8265</a>)
(<a
href="https://github.com/romainmenke"><code>@​romainmenke</code></a>).</li>
<li>Fixed: <code>*-no-vendor-prefix</code> message ambiguity (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8239">#8239</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>at-rule-(dis)allowed-list</code>,
<code>at-rule-no-vendor-prefix</code>,
<code>at-rule-property-required-list</code> message argument (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8277">#8277</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>at-rule-property-required-list</code> message for
inclusion of properties and descriptors (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8207">#8207</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Fixed: <code>at-rule-*</code> false positives and negatives for
<code>@charset</code> rule (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8215">#8215</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> false
positives for descriptors (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8240">#8240</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Fixed: <code>property-(dis)allowed-list</code> false negatives for
custom properties, use <code>/^--/</code> to (dis)allow them (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8209">#8209</a>)
(<a
href="https://github.com/fbasmaison-lucca"><code>@​fbasmaison-lucca</code></a>).</li>
<li>Fixed: <code>property-no-unknown</code> false positives for
descriptors (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8203">#8203</a>)
(<a href="https://github.com/jeddy3"><code>@​jeddy3</code></a>).</li>
<li>Fixed: <code>selector-pseudo-class-no-unknown</code> false positives
for deprecated pseudo-classes (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8264">#8264</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-type-case</code> false positives for
<code>hatchPath</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8264">#8264</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>selector-type-no-unknown</code> false positives for
<code>shadow</code>, <code>hatch</code> and <code>hatchpath</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8264">#8264</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
</ul>
<h2>16.12.0 - 2024-12-15</h2>
<ul>
<li>Added: <code>selector-pseudo-class-allowed-list</code> now checks
<code>@page</code> pseudo-classes (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8176">#8176</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Added: <code>selector-pseudo-class-disallowed-list</code> now checks
<code>@page</code> pseudo-classes (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8171">#8171</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>at-rule-property-required-list</code> message to use
&quot;descriptor&quot; for accuracy (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8186">#8186</a>)
(<a
href="https://github.com/ybiquitous"><code>@​ybiquitous</code></a>).</li>
<li>Fixed: <code>custom-property-no-missing-var-function</code> false
positives for <code>container-name</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8157">#8157</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>custom-property-no-missing-var-function</code> false
positives for custom properties passed to <code>running()</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8172">#8172</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
<li>Fixed: <code>function-no-unknown</code> false positives for
<code>running()</code> (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8172">#8172</a>)
(<a
href="https://github.com/Mouvedia"><code>@​Mouvedia</code></a>).</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/stylelint/stylelint/commit/8887d41c70da8c2d97f01b5d73f285c4dfa5dd25"><code>8887d41</code></a>
16.13.2</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/545a26d5d547794ef8f499eb27f6547902d804ce"><code>545a26d</code></a>
Prepare 16.13.2 (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8314">#8314</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/c03f407ce0e3c322dca71c229e8ad51dd9c0d894"><code>c03f407</code></a>
Fix <code>--fix</code> CLI flag raising unknown value error (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8313">#8313</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/8a173d4ad4164aae9160b69b248de573bd2235d9"><code>8a173d4</code></a>
16.13.1</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/c0df29584694032c0d7e22248afe8d26994e313c"><code>c0df295</code></a>
Prepare 16.13.1 (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8306">#8306</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/7ea421982459f67f096b4af1392cf0087c8549a3"><code>7ea4219</code></a>
Fix <code>ignore.default is not a function</code> (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8305">#8305</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/f5055feb3613eaf0f8a790d553112f28fa78fb3c"><code>f5055fe</code></a>
Bump typescript from 5.7.2 to 5.7.3 in the typescript group (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8299">#8299</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/5f82aa87ee4eb79d10f1028459527aa017d272cf"><code>5f82aa8</code></a>
Bump rollup from 4.30.0 to 4.30.1 (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8300">#8300</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/7aba28edb838a7fcb4fad7cd18c07f979a92f7c6"><code>7aba28e</code></a>
Bump eslint from 9.17.0 to 9.18.0 in the eslint group (<a
href="https://redirect.github.com/stylelint/stylelint/issues/8298">#8298</a>)</li>
<li><a
href="https://github.com/stylelint/stylelint/commit/81baea5b9d7d8df1df2f0f706ba9438bf9ea82ff"><code>81baea5</code></a>
16.13.0</li>
<li>Additional commits viewable in <a
href="https://github.com/stylelint/stylelint/compare/16.2.1...16.13.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=stylelint&package-manager=npm_and_yarn&previous-version=16.2.1&new-version=16.13.2)](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>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Harel M <harel.mazor@gmail.com>
2025-01-21 14:08:53 +02:00
dependabot[bot] a97287a66e Bump i18next from 23.12.2 to 24.2.1 (#990)
Bumps [i18next](https://github.com/i18next/i18next) from 23.12.2 to
24.2.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/i18next/releases">i18next's
releases</a>.</em></p>
<blockquote>
<h2>v24.2.1</h2>
<ul>
<li>Standardize null/undefined checks across codebase <a
href="https://redirect.github.com/i18next/i18next/pull/2275">2275</a></li>
<li>fix(typescript): make TFunction augmentable again <a
href="https://redirect.github.com/i18next/i18next/pull/2279">2279</a>,
fixes <a
href="https://redirect.github.com/i18next/i18next/issues/2278">2278</a></li>
</ul>
<h2>v24.2.0</h2>
<ul>
<li>feat(typescript): Add strictKeyChecks option to enforce checking key
existence when defaultValue is used <a
href="https://redirect.github.com/i18next/i18next/pull/2274">2274</a>,
fixes <a
href="https://redirect.github.com/i18next/i18next/issues/2043">2043</a></li>
</ul>
<h2>v24.1.2</h2>
<ul>
<li>optimize fix: Bug Report: Unsafe Behavior in i18n.t Function Leading
to Potential Code Execution <a
href="https://redirect.github.com/i18next/i18next/issues/2273">2273</a></li>
</ul>
<h2>v24.1.1</h2>
<ul>
<li>fix: Bug Report: Unsafe Behavior in i18n.t Function Leading to
Potential Code Execution <a
href="https://redirect.github.com/i18next/i18next/issues/2273">2273</a></li>
</ul>
<h2>v24.1.0</h2>
<ul>
<li>try to address <a
href="https://redirect.github.com/i18next/i18next/issues/2270">2270</a>
by cloning the store data <a
href="https://redirect.github.com/i18next/i18next/pull/2271">2271</a></li>
</ul>
<h2>v24.0.5</h2>
<ul>
<li>remove extra log for <a
href="https://redirect.github.com/i18next/i18next/pull/2268">2268</a></li>
</ul>
<h2>v24.0.4</h2>
<ul>
<li>simplify fix: incorrect locale detected <a
href="https://redirect.github.com/i18next/i18next/pull/2268">2268</a></li>
</ul>
<h2>v24.0.3</h2>
<ul>
<li>fix: incorrect locale detected <a
href="https://redirect.github.com/i18next/i18next/pull/2268">2268</a></li>
<li>fix: Intl.getCanonicalLocales throws with custom regions <a
href="https://redirect.github.com/i18next/i18next/issues/2267">2267</a></li>
</ul>
<h2>v24.0.2</h2>
<ul>
<li>if no Intl api, log error and use dummy rule</li>
</ul>
<h2>v24.0.1</h2>
<ul>
<li>early return and log error, if no Intl api</li>
</ul>
<h2>v24.0.0</h2>
<p><strong>This is a major breaking release:</strong></p>
<ul>
<li>remove support for older environments</li>
<li>remove old i18next JSON formats
<ul>
<li>To convert your existing v3 translations to the v4 format, have a
look at <a
href="https://github.com/i18next/i18next-v4-format-converter">i18next-v4-format-converter</a>
or this <a
href="https://i18next.github.io/i18next-v4-format-converter-web/">web
tool</a>.</li>
</ul>
</li>
<li>remove support for compatibility to v1 API</li>
<li>Intl API is mandatory now and will not fallback anymore</li>
<li>possible compatibility layer for older formats:
<code>test/compatibility/v4/v4Compatibility.js</code></li>
<li>rename <code>initImmediate</code> to <code>initAsync</code></li>
<li>fallback to <code>dev</code> language if plural rule not found</li>
<li>remove TypeScript v4 support. TypeScript v5 is now an optional peer
dependency</li>
<li>addresses
<ul>
<li><a
href="https://redirect.github.com/i18next/i18next/pull/2244">2244</a></li>
<li><a
href="https://redirect.github.com/i18next/i18next/pull/2184">2184</a></li>
<li><a
href="https://redirect.github.com/i18next/i18next/issues/2213">2213</a></li>
<li><a
href="https://redirect.github.com/i18next/i18next/pull/2206">2206</a></li>
<li><a
href="https://redirect.github.com/i18next/i18next/issues/2208">2208</a></li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/i18next/blob/master/CHANGELOG.md">i18next's
changelog</a>.</em></p>
<blockquote>
<h2>24.2.1</h2>
<ul>
<li>Standardize null/undefined checks across codebase <a
href="https://redirect.github.com/i18next/i18next/pull/2275">2275</a></li>
<li>fix(typescript): make TFunction augmentable again <a
href="https://redirect.github.com/i18next/i18next/pull/2279">2279</a>,
fixes <a
href="https://redirect.github.com/i18next/i18next/issues/2278">2278</a></li>
</ul>
<h2>24.2.0</h2>
<ul>
<li>feat(typescript): Add strictKeyChecks option to enforce checking key
existence when defaultValue is used <a
href="https://redirect.github.com/i18next/i18next/pull/2274">2274</a>,
fixes <a
href="https://redirect.github.com/i18next/i18next/issues/2043">2043</a></li>
</ul>
<h2>24.1.2</h2>
<ul>
<li>optimize fix: Bug Report: Unsafe Behavior in i18n.t Function Leading
to Potential Code Execution <a
href="https://redirect.github.com/i18next/i18next/issues/2273">2273</a></li>
</ul>
<h2>24.1.1</h2>
<ul>
<li>fix: Bug Report: Unsafe Behavior in i18n.t Function Leading to
Potential Code Execution <a
href="https://redirect.github.com/i18next/i18next/issues/2273">2273</a></li>
</ul>
<h2>24.1.0</h2>
<ul>
<li>try to address <a
href="https://redirect.github.com/i18next/i18next/issues/2270">2270</a>
by cloning the store data <a
href="https://redirect.github.com/i18next/i18next/pull/2271">2271</a></li>
</ul>
<h2>24.0.5</h2>
<ul>
<li>remove extra log for <a
href="https://redirect.github.com/i18next/i18next/pull/2268">2268</a></li>
</ul>
<h2>24.0.4</h2>
<ul>
<li>simplify fix: incorrect locale detected <a
href="https://redirect.github.com/i18next/i18next/pull/2268">2268</a></li>
</ul>
<h2>24.0.3</h2>
<ul>
<li>fix: incorrect locale detected <a
href="https://redirect.github.com/i18next/i18next/pull/2268">2268</a></li>
<li>fix: Intl.getCanonicalLocales throws with custom regions <a
href="https://redirect.github.com/i18next/i18next/issues/2267">2267</a></li>
</ul>
<h2>24.0.2</h2>
<ul>
<li>if no Intl api, log error and use dummy rule</li>
</ul>
<h2>24.0.1</h2>
<ul>
<li>early return and log error, if no Intl api</li>
</ul>
<h2>24.0.0</h2>
<p><strong>This is a major breaking release:</strong></p>
<ul>
<li>remove support for older environments</li>
<li>remove old i18next JSON formats
<ul>
<li>To convert your existing v3 translations to the v4 format, have a
look at <a
href="https://github.com/i18next/i18next-v4-format-converter">i18next-v4-format-converter</a>
or this <a
href="https://i18next.github.io/i18next-v4-format-converter-web/">web
tool</a>.</li>
</ul>
</li>
<li>remove support for compatibility to v1 API</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/i18next/i18next/commit/7e0b526b94a309bc26b0eb14b02ac75003b56ed1"><code>7e0b526</code></a>
24.2.1</li>
<li><a
href="https://github.com/i18next/i18next/commit/73940ccfb4bc7a42c076535a9b2b8c3e3a919c03"><code>73940cc</code></a>
release</li>
<li><a
href="https://github.com/i18next/i18next/commit/009c4577ce8f4edec0f1e574ce269b4d60419dac"><code>009c457</code></a>
fix: make TFunction type augmentable (<a
href="https://redirect.github.com/i18next/i18next/issues/2279">#2279</a>)</li>
<li><a
href="https://github.com/i18next/i18next/commit/dd783784342d88380f245d6ce4c8cd18e154bd8a"><code>dd78378</code></a>
update ts example</li>
<li><a
href="https://github.com/i18next/i18next/commit/e2797d58b5ad71f142f04431685e0f9147dd86a3"><code>e2797d5</code></a>
prpare changelog</li>
<li><a
href="https://github.com/i18next/i18next/commit/6e6d899093c66c20c7871535b772d85246c44da7"><code>6e6d899</code></a>
Standardize null/undefined checks across codebase (<a
href="https://redirect.github.com/i18next/i18next/issues/2275">#2275</a>)</li>
<li><a
href="https://github.com/i18next/i18next/commit/c55cbe8145658b4971ccb1f8adbbae3eb75f18d2"><code>c55cbe8</code></a>
24.2.0</li>
<li><a
href="https://github.com/i18next/i18next/commit/dfff2cd73c7f7a1a123568b22b2dea55fa205464"><code>dfff2cd</code></a>
added some tests for undefined or null keys</li>
<li><a
href="https://github.com/i18next/i18next/commit/62daae4fb4e3e104f2655eaa86e41f4d1fe45621"><code>62daae4</code></a>
feat(typescript): Add <code>strictKeyChecks</code> option to enforce
checking key existe...</li>
<li><a
href="https://github.com/i18next/i18next/commit/c51950ecd987c62adfb75834812948b81c9ec01b"><code>c51950e</code></a>
24.1.2</li>
<li>Additional commits viewable in <a
href="https://github.com/i18next/i18next/compare/v23.12.2...v24.2.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=i18next&package-manager=npm_and_yarn&previous-version=23.12.2&new-version=24.2.1)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 14:07:58 +02:00
dependabot[bot] 9a866179b7 Bump @types/react-color from 3.0.12 to 3.0.13 (#982)
Bumps
[@types/react-color](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-color)
from 3.0.12 to 3.0.13.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-color">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/react-color&package-manager=npm_and_yarn&previous-version=3.0.12&new-version=3.0.13)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 14:00:16 +02:00
dependabot[bot] 84e9a73d86 Bump i18next-parser from 9.0.1 to 9.1.0 (#981)
Bumps [i18next-parser](https://github.com/i18next/i18next-parser) from
9.0.1 to 9.1.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/i18next-parser/blob/master/CHANGELOG.md">i18next-parser's
changelog</a>.</em></p>
<blockquote>
<h1>9.1.0</h1>
<ul>
<li>Add support for i18next 24 <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1090">#1090</a>
<a
href="https://redirect.github.com/i18next/i18next-parser/issues/1093">#1093</a></li>
<li>Add namespace information to duplicate warnings <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1091">#1091</a></li>
<li>Update dependencies</li>
</ul>
<h1>9.0.2</h1>
<ul>
<li>Fix cheerio dependency <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1045">#1045</a></li>
<li>Update dependencies</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/i18next/i18next-parser/commit/94ba13421428a6c07d6798c36a962d0dfbeb5e2d"><code>94ba134</code></a>
Bump to 9.1.0</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/ea3879fcd80f3d461ec9b2d17c4d99d477afc1bd"><code>ea3879f</code></a>
Update PR template</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/abf020bfd00e82a0f2f9fb5b04a6853e2c0fd75d"><code>abf020b</code></a>
Update i18next dependency</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/2f8ff7833f7eb98263bf500ace72e12e365beba1"><code>2f8ff78</code></a>
Merge pull request <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1087">#1087</a>
from i18next/dependabot/npm_and_yarn/master/execa-9.5.1</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/43be6e8b277af3cd2d795a34df824e1e67d16b0f"><code>43be6e8</code></a>
Merge pull request <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1072">#1072</a>
from i18next/dependabot/npm_and_yarn/master/esbuild-...</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/718f9d2371c7aed013e90d45e7eb9408ff7445bf"><code>718f9d2</code></a>
Merge pull request <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1068">#1068</a>
from i18next/dependabot/npm_and_yarn/path-to-regexp-...</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/227e01da579704e0bcaea30ee5564b1749cf754f"><code>227e01d</code></a>
Merge pull request <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1067">#1067</a>
from i18next/dependabot/npm_and_yarn/master/husky-9.1.6</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/a25cbed8fd22ca16ad401ac531c58ece2e6b851f"><code>a25cbed</code></a>
Merge pull request <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1086">#1086</a>
from i18next/dependabot/npm_and_yarn/master/babel/pr...</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/7cbad677a544798e1c6cee09305ee83db832e98f"><code>7cbad67</code></a>
Merge pull request <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1089">#1089</a>
from i18next/dependabot/github_actions/master/codeco...</li>
<li><a
href="https://github.com/i18next/i18next-parser/commit/e47955e54af04ef944ea527e757eae403612b2ea"><code>e47955e</code></a>
Merge pull request <a
href="https://redirect.github.com/i18next/i18next-parser/issues/1093">#1093</a>
from lazka/v24-support</li>
<li>Additional commits viewable in <a
href="https://github.com/i18next/i18next-parser/compare/9.0.1...9.1.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=i18next-parser&package-manager=npm_and_yarn&previous-version=9.0.1&new-version=9.1.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:59:56 +02:00
dependabot[bot] 1b1668cdbf Bump codecov/codecov-action from 3 to 5 (#974)
Bumps
[codecov/codecov-action](https://github.com/codecov/codecov-action) from
3 to 5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/codecov/codecov-action/releases">codecov/codecov-action's
releases</a>.</em></p>
<blockquote>
<h2>v5.0.0</h2>
<h2>v5 Release</h2>
<p><code>v5</code> of the Codecov GitHub Action will use the <a
href="https://github.com/codecov/wrapper">Codecov Wrapper</a> to
encapsulate the <a
href="https://github.com/codecov/codecov-cli">CLI</a>. This will help
ensure that the Action gets updates quicker.</p>
<h3>Migration Guide</h3>
<p>The <code>v5</code> release also coincides with the opt-out feature
for tokens for public repositories. In the <code>Global Upload
Token</code> section of the settings page of an organization in
codecov.io, you can set the ability for Codecov to receive a coverage
reports from any source. This will allow contributors or other members
of a repository to upload without needing access to the Codecov token.
For more details see <a
href="https://docs.codecov.com/docs/codecov-tokens#uploading-without-a-token">how
to upload without a token</a>.</p>
<blockquote>
<p>[!WARNING]<br />
<strong>The following arguments have been changed</strong></p>
<ul>
<li><code>file</code> (this has been deprecated in favor of
<code>files</code>)</li>
<li><code>plugin</code> (this has been deprecated in favor of
<code>plugins</code>)</li>
</ul>
</blockquote>
<p>The following arguments have been added:</p>
<ul>
<li><code>binary</code></li>
<li><code>gcov_args</code></li>
<li><code>gcov_executable</code></li>
<li><code>gcov_ignore</code></li>
<li><code>gcov_include</code></li>
<li><code>report_type</code></li>
<li><code>skip_validation</code></li>
<li><code>swift_project</code></li>
</ul>
<p>You can see their usage in the <code>action.yml</code> <a
href="https://github.com/codecov/codecov-action/blob/main/action.yml">file</a>.</p>
<h2>What's Changed</h2>
<ul>
<li>chore(deps): bump to eslint9+ and remove eslint-config-google by <a
href="https://github.com/thomasrockhu-codecov"><code>@​thomasrockhu-codecov</code></a>
in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1591">codecov/codecov-action#1591</a></li>
<li>build(deps-dev): bump <code>@​octokit/webhooks-types</code> from
7.5.1 to 7.6.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1595">codecov/codecov-action#1595</a></li>
<li>build(deps-dev): bump typescript from 5.6.2 to 5.6.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1604">codecov/codecov-action#1604</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.8.0 to 8.8.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1601">codecov/codecov-action#1601</a></li>
<li>build(deps): bump <code>@​actions/core</code> from 1.11.0 to 1.11.1
by <a href="https://github.com/dependabot"><code>@​dependabot</code></a>
in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1597">codecov/codecov-action#1597</a></li>
<li>build(deps): bump github/codeql-action from 3.26.9 to 3.26.11 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1596">codecov/codecov-action#1596</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.8.0 to 8.8.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1600">codecov/codecov-action#1600</a></li>
<li>build(deps-dev): bump eslint from 9.11.1 to 9.12.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1598">codecov/codecov-action#1598</a></li>
<li>build(deps): bump github/codeql-action from 3.26.11 to 3.26.12 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1609">codecov/codecov-action#1609</a></li>
<li>build(deps): bump actions/checkout from 4.2.0 to 4.2.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1608">codecov/codecov-action#1608</a></li>
<li>build(deps): bump actions/upload-artifact from 4.4.0 to 4.4.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1607">codecov/codecov-action#1607</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.8.1 to 8.9.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1612">codecov/codecov-action#1612</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.8.1 to 8.9.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1611">codecov/codecov-action#1611</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.9.0 to 8.10.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1615">codecov/codecov-action#1615</a></li>
<li>build(deps-dev): bump eslint from 9.12.0 to 9.13.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1618">codecov/codecov-action#1618</a></li>
<li>build(deps): bump github/codeql-action from 3.26.12 to 3.26.13 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1617">codecov/codecov-action#1617</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.9.0 to 8.10.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1614">codecov/codecov-action#1614</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.10.0 to 8.11.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1620">codecov/codecov-action#1620</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.10.0 to 8.11.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1619">codecov/codecov-action#1619</a></li>
<li>build(deps-dev): bump <code>@​types/jest</code> from 29.5.13 to
29.5.14 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1622">codecov/codecov-action#1622</a></li>
<li>build(deps): bump actions/checkout from 4.2.1 to 4.2.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1625">codecov/codecov-action#1625</a></li>
<li>build(deps): bump github/codeql-action from 3.26.13 to 3.27.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1624">codecov/codecov-action#1624</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.11.0 to 8.12.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1626">codecov/codecov-action#1626</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.12.1 to 8.12.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1629">codecov/codecov-action#1629</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md">codecov/codecov-action's
changelog</a>.</em></p>
<blockquote>
<h3>v5 Release</h3>
<p><code>v5</code> of the Codecov GitHub Action will use the <a
href="https://github.com/codecov/wrapper">Codecov Wrapper</a> to
encapsulate the <a
href="https://github.com/codecov/codecov-cli">CLI</a>. This will help
ensure that the Action gets updates quicker.</p>
<h3>Migration Guide</h3>
<p>The <code>v5</code> release also coincides with the opt-out feature
for tokens for public repositories. In the <code>Global Upload
Token</code> section of the settings page of an organization in
codecov.io, you can set the ability for Codecov to receive a coverage
reports from any source. This will allow contributors or other members
of a repository to upload without needing access to the Codecov token.
For more details see <a
href="https://docs.codecov.com/docs/codecov-tokens#uploading-without-a-token">how
to upload without a token</a>.</p>
<blockquote>
<p>[!WARNING]
<strong>The following arguments have been changed</strong></p>
<ul>
<li><code>file</code> (this has been deprecated in favor of
<code>files</code>)</li>
<li><code>plugin</code> (this has been deprecated in favor of
<code>plugins</code>)</li>
</ul>
</blockquote>
<p>The following arguments have been added:</p>
<ul>
<li><code>binary</code></li>
<li><code>gcov_args</code></li>
<li><code>gcov_executable</code></li>
<li><code>gcov_ignore</code></li>
<li><code>gcov_include</code></li>
<li><code>report_type</code></li>
<li><code>skip_validation</code></li>
<li><code>swift_project</code></li>
</ul>
<p>You can see their usage in the <code>action.yml</code> <a
href="https://github.com/codecov/codecov-action/blob/main/action.yml">file</a>.</p>
<h2>What's Changed</h2>
<ul>
<li>chore(deps): bump to eslint9+ and remove eslint-config-google by <a
href="https://github.com/thomasrockhu-codecov"><code>@​thomasrockhu-codecov</code></a>
in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1591">codecov/codecov-action#1591</a></li>
<li>build(deps-dev): bump <code>@​octokit/webhooks-types</code> from
7.5.1 to 7.6.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1595">codecov/codecov-action#1595</a></li>
<li>build(deps-dev): bump typescript from 5.6.2 to 5.6.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1604">codecov/codecov-action#1604</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.8.0 to 8.8.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1601">codecov/codecov-action#1601</a></li>
<li>build(deps): bump <code>@​actions/core</code> from 1.11.0 to 1.11.1
by <a href="https://github.com/dependabot"><code>@​dependabot</code></a>
in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1597">codecov/codecov-action#1597</a></li>
<li>build(deps): bump github/codeql-action from 3.26.9 to 3.26.11 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1596">codecov/codecov-action#1596</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.8.0 to 8.8.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1600">codecov/codecov-action#1600</a></li>
<li>build(deps-dev): bump eslint from 9.11.1 to 9.12.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1598">codecov/codecov-action#1598</a></li>
<li>build(deps): bump github/codeql-action from 3.26.11 to 3.26.12 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1609">codecov/codecov-action#1609</a></li>
<li>build(deps): bump actions/checkout from 4.2.0 to 4.2.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1608">codecov/codecov-action#1608</a></li>
<li>build(deps): bump actions/upload-artifact from 4.4.0 to 4.4.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1607">codecov/codecov-action#1607</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.8.1 to 8.9.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1612">codecov/codecov-action#1612</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.8.1 to 8.9.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1611">codecov/codecov-action#1611</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.9.0 to 8.10.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1615">codecov/codecov-action#1615</a></li>
<li>build(deps-dev): bump eslint from 9.12.0 to 9.13.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1618">codecov/codecov-action#1618</a></li>
<li>build(deps): bump github/codeql-action from 3.26.12 to 3.26.13 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1617">codecov/codecov-action#1617</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.9.0 to 8.10.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1614">codecov/codecov-action#1614</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.10.0 to 8.11.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1620">codecov/codecov-action#1620</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.10.0 to 8.11.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1619">codecov/codecov-action#1619</a></li>
<li>build(deps-dev): bump <code>@​types/jest</code> from 29.5.13 to
29.5.14 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1622">codecov/codecov-action#1622</a></li>
<li>build(deps): bump actions/checkout from 4.2.1 to 4.2.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1625">codecov/codecov-action#1625</a></li>
<li>build(deps): bump github/codeql-action from 3.26.13 to 3.27.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1624">codecov/codecov-action#1624</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.11.0 to 8.12.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1626">codecov/codecov-action#1626</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
from 8.12.1 to 8.12.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1629">codecov/codecov-action#1629</a></li>
<li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
8.11.0 to 8.12.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/codecov/codecov-action/pull/1628">codecov/codecov-action#1628</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/codecov/codecov-action/commit/1e68e06f1dbfde0e4cefc87efeba9e4643565303"><code>1e68e06</code></a>
chore(release): 5.1.2 (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1727">#1727</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/277db52c203b15a43138893d8190f8fd3ebd9fc6"><code>277db52</code></a>
fix: update statment (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1726">#1726</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/c77245a0133aa4d2391077651dc7afff8967322d"><code>c77245a</code></a>
fix: update action script (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1725">#1725</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/9b01a3419101d2fd03eaa10f7495f7d03c6adf95"><code>9b01a34</code></a>
fix: prevent oidc on tokenless due to permissioning (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1724">#1724</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/47e0552fc48070ca786b1b2d61fc0d418c561619"><code>47e0552</code></a>
chore(release): wrapper-0.0.31 (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1723">#1723</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/34ef57048dd0d0f5b23912db0e56e083fa649c9a"><code>34ef570</code></a>
Put quotes around <code>${{ inputs.token }}</code> in
<code>action.yml</code> (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1721">#1721</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/d93fc22ce078505d16266964d0a69961a4f04724"><code>d93fc22</code></a>
build(deps): bump github/codeql-action from 3.27.6 to 3.27.9 (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1722">#1722</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/5c93f7ab87f1aa9b956609bbc4b50a6e747fe2fb"><code>5c93f7a</code></a>
Remove mistake from options table (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1718">#1718</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/2c97106b3af991d079089d9f92344f21b6415a99"><code>2c97106</code></a>
build(deps): bump github/codeql-action from 3.27.5 to 3.27.6 (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1717">#1717</a>)</li>
<li><a
href="https://github.com/codecov/codecov-action/commit/7f8b4b4bde536c465e797be725718b88c5d95e0e"><code>7f8b4b4</code></a>
chore(release): wrapper-0.0.30 (<a
href="https://redirect.github.com/codecov/codecov-action/issues/1715">#1715</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/codecov/codecov-action/compare/v3...v5">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=codecov/codecov-action&package-manager=github_actions&previous-version=3&new-version=5)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:59:19 +02:00
dependabot[bot] 53fbc1ffe9 Bump uuid from 9.0.1 to 11.0.5 (#980)
Bumps [uuid](https://github.com/uuidjs/uuid) from 9.0.1 to 11.0.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/uuidjs/uuid/releases">uuid's
releases</a>.</em></p>
<blockquote>
<h2>v11.0.5</h2>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.4...v11.0.5">11.0.5</a>
(2025-01-09)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>add TS unit test, pin to typescript@5.0.4 (<a
href="https://redirect.github.com/uuidjs/uuid/issues/860">#860</a>) (<a
href="https://github.com/uuidjs/uuid/commit/24ac2fd067e5bab97a5ccea3f6f365a64c01d140">24ac2fd</a>)</li>
</ul>
<h2>v11.0.4</h2>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.3...v11.0.4">11.0.4</a>
(2025-01-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>docs:</strong> insure -&gt; ensure (<a
href="https://redirect.github.com/uuidjs/uuid/issues/843">#843</a>) (<a
href="https://github.com/uuidjs/uuid/commit/d2a61e154d861e58549466e753bb9e4d5bfffb68">d2a61e1</a>)</li>
<li>exclude tests from published package (<a
href="https://redirect.github.com/uuidjs/uuid/issues/840">#840</a>) (<a
href="https://github.com/uuidjs/uuid/commit/f992ff4780937089b0134195fa22e76e2e1cb3a7">f992ff4</a>)</li>
<li>Test for invalid byte array sizes and ranges in <code>v1()</code>,
<code>v4()</code>, and <code>v7()</code> (<a
href="https://redirect.github.com/uuidjs/uuid/issues/845">#845</a>) (<a
href="https://github.com/uuidjs/uuid/commit/e0ee90051ebd13475bbcff4d371330aa4f9bd1dd">e0ee900</a>)</li>
</ul>
<h2>v11.0.3</h2>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.2...v11.0.3">11.0.3</a>
(2024-11-04)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>apply stricter typing to the v* signatures (<a
href="https://redirect.github.com/uuidjs/uuid/issues/831">#831</a>) (<a
href="https://github.com/uuidjs/uuid/commit/c2d3fed22cfd47c22c8f22f6154abb5060648ce5">c2d3fed</a>)</li>
<li>export internal uuid types (<a
href="https://redirect.github.com/uuidjs/uuid/issues/833">#833</a>) (<a
href="https://github.com/uuidjs/uuid/commit/341edf444ced63708ba336285dbec29443523939">341edf4</a>)</li>
<li>remove sourcemaps (<a
href="https://redirect.github.com/uuidjs/uuid/issues/827">#827</a>) (<a
href="https://github.com/uuidjs/uuid/commit/b93ea101af7382053032d4fb61cc85599d6c7216">b93ea10</a>)</li>
<li>revert &quot;simplify type for v3 and v5&quot; (<a
href="https://redirect.github.com/uuidjs/uuid/issues/835">#835</a>) (<a
href="https://github.com/uuidjs/uuid/commit/e2dee691e95aba854a892d2507d8cd9f009bf61d">e2dee69</a>)</li>
</ul>
<h2>v11.0.2</h2>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.1...v11.0.2">11.0.2</a>
(2024-10-28)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>remove wrapper.mjs (<a
href="https://github.com/uuidjs/uuid/commit/2a18871f00f6f9effa9f8afadd98278e6866112c">2a18871</a>)</li>
<li>remove wrapper.mjs (<a
href="https://redirect.github.com/uuidjs/uuid/issues/822">#822</a>) (<a
href="https://github.com/uuidjs/uuid/commit/6683ad38b048375b451eac1194960f24ba20e0ca">6683ad3</a>)</li>
</ul>
<h2>v11.0.1</h2>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.0...v11.0.1">11.0.1</a>
(2024-10-27)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>restore package.json#browser field (<a
href="https://redirect.github.com/uuidjs/uuid/issues/817">#817</a>) (<a
href="https://github.com/uuidjs/uuid/commit/ae8f38657bca0ee053bf29c88c006b1ea05af1b5">ae8f386</a>)</li>
</ul>
<h2>v11.0.0</h2>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.0...v11.0.0">11.0.0</a>
(2024-10-27)</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md">uuid's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.4...v11.0.5">11.0.5</a>
(2025-01-09)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>add TS unit test, pin to typescript@5.0.4 (<a
href="https://redirect.github.com/uuidjs/uuid/issues/860">#860</a>) (<a
href="https://github.com/uuidjs/uuid/commit/24ac2fd067e5bab97a5ccea3f6f365a64c01d140">24ac2fd</a>)</li>
</ul>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.3...v11.0.4">11.0.4</a>
(2025-01-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>docs:</strong> insure -&gt; ensure (<a
href="https://redirect.github.com/uuidjs/uuid/issues/843">#843</a>) (<a
href="https://github.com/uuidjs/uuid/commit/d2a61e154d861e58549466e753bb9e4d5bfffb68">d2a61e1</a>)</li>
<li>exclude tests from published package (<a
href="https://redirect.github.com/uuidjs/uuid/issues/840">#840</a>) (<a
href="https://github.com/uuidjs/uuid/commit/f992ff4780937089b0134195fa22e76e2e1cb3a7">f992ff4</a>)</li>
<li>Test for invalid byte array sizes and ranges in <code>v1()</code>,
<code>v4()</code>, and <code>v7()</code> (<a
href="https://redirect.github.com/uuidjs/uuid/issues/845">#845</a>) (<a
href="https://github.com/uuidjs/uuid/commit/e0ee90051ebd13475bbcff4d371330aa4f9bd1dd">e0ee900</a>)</li>
</ul>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.2...v11.0.3">11.0.3</a>
(2024-11-04)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>apply stricter typing to the v* signatures (<a
href="https://redirect.github.com/uuidjs/uuid/issues/831">#831</a>) (<a
href="https://github.com/uuidjs/uuid/commit/c2d3fed22cfd47c22c8f22f6154abb5060648ce5">c2d3fed</a>)</li>
<li>export internal uuid types (<a
href="https://redirect.github.com/uuidjs/uuid/issues/833">#833</a>) (<a
href="https://github.com/uuidjs/uuid/commit/341edf444ced63708ba336285dbec29443523939">341edf4</a>)</li>
<li>remove sourcemaps (<a
href="https://redirect.github.com/uuidjs/uuid/issues/827">#827</a>) (<a
href="https://github.com/uuidjs/uuid/commit/b93ea101af7382053032d4fb61cc85599d6c7216">b93ea10</a>)</li>
<li>revert &quot;simplify type for v3 and v5&quot; (<a
href="https://redirect.github.com/uuidjs/uuid/issues/835">#835</a>) (<a
href="https://github.com/uuidjs/uuid/commit/e2dee691e95aba854a892d2507d8cd9f009bf61d">e2dee69</a>)</li>
</ul>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.1...v11.0.2">11.0.2</a>
(2024-10-28)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>remove wrapper.mjs (<a
href="https://redirect.github.com/uuidjs/uuid/issues/822">#822</a>) (<a
href="https://github.com/uuidjs/uuid/commit/6683ad38b048375b451eac1194960f24ba20e0ca">6683ad3</a>)</li>
</ul>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v11.0.0...v11.0.1">11.0.1</a>
(2024-10-27)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>restore package.json#browser field (<a
href="https://redirect.github.com/uuidjs/uuid/issues/817">#817</a>) (<a
href="https://github.com/uuidjs/uuid/commit/ae8f38657bca0ee053bf29c88c006b1ea05af1b5">ae8f386</a>)</li>
</ul>
<h2><a
href="https://github.com/uuidjs/uuid/compare/v9.0.0...v11.0.0">11.0.0</a>
(2024-10-26)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li>refactor v1 internal state and options logic (<a
href="https://redirect.github.com/uuidjs/uuid/issues/780">#780</a>)</li>
<li>refactor v7 internal state and options logic, fixes <a
href="https://redirect.github.com/uuidjs/uuid/issues/764">#764</a> (<a
href="https://redirect.github.com/uuidjs/uuid/issues/779">#779</a>)</li>
<li>Port to TypeScript, closes <a
href="https://redirect.github.com/uuidjs/uuid/issues/762">#762</a> (<a
href="https://redirect.github.com/uuidjs/uuid/issues/763">#763</a>)</li>
<li>update node support matrix (only support node 16-20) (<a
href="https://redirect.github.com/uuidjs/uuid/issues/750">#750</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li>Port to TypeScript, closes <a
href="https://redirect.github.com/uuidjs/uuid/issues/762">#762</a> (<a
href="https://redirect.github.com/uuidjs/uuid/issues/763">#763</a>) (<a
href="https://github.com/uuidjs/uuid/commit/1e0f9870db864ca93f7a69db0d468b5e1b7605e7">1e0f987</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/uuidjs/uuid/commit/46ada3cbc4acdc907dd6924eaedcc2c53dc6095a"><code>46ada3c</code></a>
chore(main): release 11.0.5 (<a
href="https://redirect.github.com/uuidjs/uuid/issues/861">#861</a>)</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/24ac2fd067e5bab97a5ccea3f6f365a64c01d140"><code>24ac2fd</code></a>
fix: add TS unit test, pin to typescript@5.0.4 (<a
href="https://redirect.github.com/uuidjs/uuid/issues/860">#860</a>)</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/e426aaa97527a41e9a033ce70d57995c437a9e06"><code>e426aaa</code></a>
build: use <code>npm pack</code> tarball for local examples and testing
instead of .loca...</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/050cd5b9df5aa73097a1677b9e7c3482eb4367fc"><code>050cd5b</code></a>
chore(main): release 11.0.4 (<a
href="https://redirect.github.com/uuidjs/uuid/issues/842">#842</a>)</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/e0ee90051ebd13475bbcff4d371330aa4f9bd1dd"><code>e0ee900</code></a>
fix: Test for invalid byte array sizes and ranges in <code>v1()</code>,
<code>v4()</code>, and `v7(...</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/6e83b3ae8360ed03042be658645ece06a27abd69"><code>6e83b3a</code></a>
chore: update deps (<a
href="https://redirect.github.com/uuidjs/uuid/issues/848">#848</a>)</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/5f58b43aa4fabee56fb8f75756f70f407a58745c"><code>5f58b43</code></a>
docs: Ensure link to getrandomvalues-not-supported is maintained (<a
href="https://redirect.github.com/uuidjs/uuid/issues/844">#844</a>)</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/d2a61e154d861e58549466e753bb9e4d5bfffb68"><code>d2a61e1</code></a>
fix(docs): insure -&gt; ensure (<a
href="https://redirect.github.com/uuidjs/uuid/issues/843">#843</a>)</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/f992ff4780937089b0134195fa22e76e2e1cb3a7"><code>f992ff4</code></a>
fix: exclude tests from published package (<a
href="https://redirect.github.com/uuidjs/uuid/issues/840">#840</a>)</li>
<li><a
href="https://github.com/uuidjs/uuid/commit/59df7092c7507dab57e9c9e495ea277e3eedcd9f"><code>59df709</code></a>
docs: add notes on platform support (<a
href="https://redirect.github.com/uuidjs/uuid/issues/838">#838</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/uuidjs/uuid/compare/v9.0.1...v11.0.5">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~broofa">broofa</a>, a new releaser for uuid
since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=uuid&package-manager=npm_and_yarn&previous-version=9.0.1&new-version=11.0.5)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:56:48 +02:00
dependabot[bot] b357e1f352 Bump stylelint-scss from 6.2.1 to 6.10.1 (#984)
Bumps [stylelint-scss](https://github.com/stylelint-scss/stylelint-scss)
from 6.2.1 to 6.10.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint-scss/stylelint-scss/releases">stylelint-scss's
releases</a>.</em></p>
<blockquote>
<h2>6.10.1</h2>
<ul>
<li>Fixed: <code>declaration-property-value-no-unknown</code> fix
trailing whitespace in value parsing (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1089">#1089</a>).</li>
<li>Fixed: <code>no-global-function-names</code> allow CSS round
function (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1097">#1097</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.0...v6.10.1">https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.0...v6.10.1</a></p>
<h2>6.10.0</h2>
<ul>
<li>Added: <code>declaration-property-value-no-unknown</code> support
nested properties with shorthand values (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1071">#1071</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> fix
multiline values parsing (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1085">#1085</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.9.0...v6.10.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.9.0...v6.10.0</a></p>
<h2>6.9.0</h2>
<ul>
<li>Added: missing native functions (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1070">#1070</a>).</li>
<li>Fixed: unify rule messages (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1072">#1072</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.8.1...v6.9.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.8.1...v6.9.0</a></p>
<h2>6.8.1</h2>
<ul>
<li>Fixed: <code>declaration-property-value-no-unknown</code> fix false
positives for nested properties in nested declarations (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1068">#1068</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.8.0...v6.8.1">https://github.com/stylelint-scss/stylelint-scss/compare/v6.8.0...v6.8.1</a></p>
<h2>6.8.0</h2>
<ul>
<li>Added: <code>function-color-channel</code> rule (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1060">#1060</a>).</li>
<li>Added: <code>selector-no-redundant-nesting-selector</code> support
for Dart Sass deprecation (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1022">#1022</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> include
explicit namespace variables in <code>isDollarVar()</code> (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1062">#1062</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> fix false
positives for imported custom functions (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1061">#1061</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> reported
ranges and message (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8003">stylelint/stylelint#8003</a>,
<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1066">#1066</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> false
negatives/positives via <a
href="https://github.com/csstree/csstree/releases/tag/v3.0.0"><code>css-tree@3.0.0</code></a>
(<a
href="https://redirect.github.com/stylelint/stylelint/pull/7993">stylelint/stylelint#7993</a>,
<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1065">#1065</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.7.0...v6.8.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.7.0...v6.8.0</a></p>
<h2>6.7.0</h2>
<ul>
<li>Added: <code>function-no-unknown</code>: add support for Sass v1.78
<code>color.channel</code> function (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1052">#1052</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.6.0...v6.7.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.6.0...v6.7.0</a></p>
<h2>6.6.0</h2>
<ul>
<li>Added: <code>declaration-property-value-no-unknown</code>: add
support for first-class operators (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1042">#1042</a>).</li>
<li>Added: <code>declaration-property-value-no-unknown</code>: add
support SCSS variables as arguments in nested functions (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1042">#1042</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.5.1...v6.6.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.5.1...v6.6.0</a></p>
<h2>6.5.1</h2>
<ul>
<li>Fixed: <code>function-quote-no-quoted-strings-inside</code> fix
broken autofix (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1043">#1043</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.5.0...v6.5.1">https://github.com/stylelint-scss/stylelint-scss/compare/v6.5.0...v6.5.1</a></p>
<h2>6.5.0</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/stylelint-scss/stylelint-scss/blob/master/CHANGELOG.md">stylelint-scss's
changelog</a>.</em></p>
<blockquote>
<h1>6.10.1</h1>
<ul>
<li>Fixed: <code>declaration-property-value-no-unknown</code> fix
trailing whitespace in value parsing (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1089">#1089</a>).</li>
<li>Fixed: <code>no-global-function-names</code> allow CSS round
function (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1097">#1097</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.0...v6.10.1">https://github.com/stylelint-scss/stylelint-scss/compare/v6.10.0...v6.10.1</a></p>
<h1>6.10.0</h1>
<ul>
<li>Added: <code>declaration-property-value-no-unknown</code> support
nested properties with shorthand values (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1071">#1071</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> fix
multiline values parsing (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1085">#1085</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.9.0...v6.10.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.9.0...v6.10.0</a></p>
<h1>6.9.0</h1>
<ul>
<li>Added: missing native functions (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1070">#1070</a>).</li>
<li>Fixed: unify rule messages (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1072">#1072</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.8.1...v6.9.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.8.1...v6.9.0</a></p>
<h1>6.8.1</h1>
<ul>
<li>Fixed: <code>declaration-property-value-no-unknown</code> fix false
positives for nested properties in nested declarations (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1068">#1068</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.8.0...v6.8.1">https://github.com/stylelint-scss/stylelint-scss/compare/v6.8.0...v6.8.1</a></p>
<h1>6.8.0</h1>
<ul>
<li>Added: <code>function-color-channel</code> rule (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1060">#1060</a>).</li>
<li>Added: <code>selector-no-redundant-nesting-selector</code> support
for Dart Sass deprecation (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1022">#1022</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> include
explicit namespace variables in <code>isDollarVar()</code> (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1062">#1062</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> fix false
positives for imported custom functions (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1061">#1061</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> reported
ranges and message (<a
href="https://redirect.github.com/stylelint/stylelint/pull/8003">stylelint/stylelint#8003</a>,
<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1066">#1066</a>).</li>
<li>Fixed: <code>declaration-property-value-no-unknown</code> false
negatives/positives via <a
href="https://github.com/csstree/csstree/releases/tag/v3.0.0"><code>css-tree@3.0.0</code></a>
(<a
href="https://redirect.github.com/stylelint/stylelint/pull/7993">stylelint/stylelint#7993</a>,
<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1065">#1065</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.7.0...v6.8.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.7.0...v6.8.0</a></p>
<h1>6.7.0</h1>
<ul>
<li>Added: <code>function-no-unknown</code>: add support for Sass v1.78
<code>color.channel</code> function (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1052">#1052</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.6.0...v6.7.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.6.0...v6.7.0</a></p>
<h1>6.6.0</h1>
<ul>
<li>Added: <code>declaration-property-value-no-unknown</code>: add
support for first-class operators (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1042">#1042</a>).</li>
<li>Added: <code>declaration-property-value-no-unknown</code>: add
support SCSS variables as arguments in nested functions (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1042">#1042</a>).</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.5.1...v6.6.0">https://github.com/stylelint-scss/stylelint-scss/compare/v6.5.1...v6.6.0</a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/c00f664466199be3a9ee566000f396b7ac471b68"><code>c00f664</code></a>
6.10.1</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/ac594525ecec39b8778eac39e5cd3cb3451a74c0"><code>ac59452</code></a>
Prepare version 6.10.1</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/aa6ad9418700da6d69b89c6a2e8d8d76887c18ba"><code>aa6ad94</code></a>
Update contributors list (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1111">#1111</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/8d025525a79023eaa3938c401d8adabb75ce306d"><code>8d02552</code></a>
no-global-function-names: add unit test for CSS round (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1110">#1110</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/48320301a6edbfb02c5e1d43f6050c1d77775262"><code>4832030</code></a>
Update package-lock.json</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/c4e559db9312739f41381e6c4bd15e380b2f5b4c"><code>c4e559d</code></a>
Allow CSS round() function (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1097">#1097</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/711ff012d329c7224d4753737fc77d704d3baf75"><code>711ff01</code></a>
build(deps): bump mdn-data from 2.12.2 to 2.14.0 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1108">#1108</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/0c9bbd2df7c7685525728efbc84bde4f02bed57c"><code>0c9bbd2</code></a>
build(deps-dev): bump postcss from 8.4.49 to 8.5.1 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1107">#1107</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/dd85b452a5f79110a7950e59a3d35fc2075706e7"><code>dd85b45</code></a>
build(deps-dev): bump stylelint from 16.11.0 to 16.13.2 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1106">#1106</a>)</li>
<li><a
href="https://github.com/stylelint-scss/stylelint-scss/commit/1956986ba66600cbb286452bef70a814d87392a9"><code>1956986</code></a>
build(deps-dev): bump prettier from 3.4.1 to 3.4.2 (<a
href="https://redirect.github.com/stylelint-scss/stylelint-scss/issues/1100">#1100</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/stylelint-scss/stylelint-scss/compare/v6.2.1...v6.10.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=stylelint-scss&package-manager=npm_and_yarn&previous-version=6.2.1&new-version=6.10.1)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:56:27 +02:00
dependabot[bot] c5f6d51ea1 Bump react-icons from 5.0.1 to 5.4.0 (#986)
Bumps [react-icons](https://github.com/react-icons/react-icons) from
5.0.1 to 5.4.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/react-icons/react-icons/releases">react-icons's
releases</a>.</em></p>
<blockquote>
<h2>v5.4.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Add closing of the icon details modal with the ESC key by <a
href="https://github.com/gabrielogregorio"><code>@​gabrielogregorio</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/900">react-icons/react-icons#900</a></li>
<li>support moduleResolution: bundler in tsconfig by <a
href="https://github.com/kamijin-fanta"><code>@​kamijin-fanta</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/970">react-icons/react-icons#970</a></li>
<li>min search length changed to 2 by <a
href="https://github.com/Kumar06Lav"><code>@​Kumar06Lav</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/967">react-icons/react-icons#967</a></li>
<li>Bump webpack from 5.89.0 to 5.94.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/975">react-icons/react-icons#975</a></li>
<li>Bump micromatch from 4.0.5 to 4.0.8 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/976">react-icons/react-icons#976</a></li>
<li>Bump axios from 1.6.8 to 1.7.7 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/977">react-icons/react-icons#977</a></li>
<li>preview: Reduce the number of results displayed in search results by
<a
href="https://github.com/kamijin-fanta"><code>@​kamijin-fanta</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/997">react-icons/react-icons#997</a></li>
<li>2024-12-03 upgrade icons by <a
href="https://github.com/kamijin-fanta"><code>@​kamijin-fanta</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/998">react-icons/react-icons#998</a></li>
<li>Bump dset from 3.1.3 to 3.1.4 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/979">react-icons/react-icons#979</a></li>
<li>Bump express from 4.19.2 to 4.21.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/981">react-icons/react-icons#981</a></li>
<li>Bump rollup from 2.79.1 to 2.79.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/982">react-icons/react-icons#982</a></li>
<li>Bump http-proxy-middleware from 2.0.6 to 2.0.7 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/989">react-icons/react-icons#989</a></li>
<li>Bump cross-spawn from 7.0.3 to 7.0.6 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/react-icons/react-icons/pull/994">react-icons/react-icons#994</a></li>
<li>workflow: upgrade workflows by <a
href="https://github.com/kamijin-fanta"><code>@​kamijin-fanta</code></a>
in <a
href="https://redirect.github.com/react-icons/react-icons/pull/999">react-icons/react-icons#999</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/Kumar06Lav"><code>@​Kumar06Lav</code></a> made
their first contribution in <a
href="https://redirect.github.com/react-icons/react-icons/pull/967">react-icons/react-icons#967</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/react-icons/react-icons/compare/v5.3.0...v5.4.0">https://github.com/react-icons/react-icons/compare/v5.3.0...v5.4.0</a></p>
<table>
<thead>
<tr>
<th>Icon Library</th>
<th>License</th>
<th>Version</th>
<th align="right">Count</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="https://circumicons.com/">Circum Icons</a></td>
<td><a
href="https://github.com/Klarr-Agency/Circum-Icons/blob/main/LICENSE">MPL-2.0
license</a></td>
<td>1.0.0</td>
<td align="right">288</td>
</tr>
<tr>
<td><a href="https://fontawesome.com/">Font Awesome 5</a></td>
<td><a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0
License</a></td>
<td>5.15.4-3-gafecf2a</td>
<td align="right">1612</td>
</tr>
<tr>
<td><a href="https://fontawesome.com/">Font Awesome 6</a></td>
<td><a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0
License</a></td>
<td>6.6.0</td>
<td align="right">2050</td>
</tr>
<tr>
<td><a href="https://ionicons.com/">Ionicons 4</a></td>
<td><a
href="https://github.com/ionic-team/ionicons/blob/master/LICENSE">MIT</a></td>
<td>4.6.3</td>
<td align="right">696</td>
</tr>
<tr>
<td><a href="https://ionicons.com/">Ionicons 5</a></td>
<td><a
href="https://github.com/ionic-team/ionicons/blob/master/LICENSE">MIT</a></td>
<td>5.5.4</td>
<td align="right">1332</td>
</tr>
<tr>
<td><a href="http://google.github.io/material-design-icons/">Material
Design icons</a></td>
<td><a
href="https://github.com/google/material-design-icons/blob/master/LICENSE">Apache
License Version 2.0</a></td>
<td>4.0.0-125-gef43291c4d</td>
<td align="right">4341</td>
</tr>
<tr>
<td><a href="http://s-ings.com/typicons/">Typicons</a></td>
<td><a href="https://creativecommons.org/licenses/by-sa/3.0/">CC BY-SA
3.0</a></td>
<td>2.1.2</td>
<td align="right">336</td>
</tr>
<tr>
<td><a href="https://octicons.github.com/">Github Octicons
icons</a></td>
<td><a
href="https://github.com/primer/octicons/blob/master/LICENSE">MIT</a></td>
<td>18.3.0</td>
<td align="right">264</td>
</tr>
<tr>
<td><a href="https://feathericons.com/">Feather</a></td>
<td><a
href="https://github.com/feathericons/feather/blob/master/LICENSE">MIT</a></td>
<td>4.29.2</td>
<td align="right">287</td>
</tr>
<tr>
<td><a href="https://lucide.dev/">Lucide</a></td>
<td><a
href="https://github.com/lucide-icons/lucide/blob/main/LICENSE">ISC</a></td>
<td>0.462.0</td>
<td align="right">1541</td>
</tr>
<tr>
<td><a href="https://game-icons.net/">Game Icons</a></td>
<td><a href="https://creativecommons.org/licenses/by/3.0/">CC BY
3.0</a></td>
<td>12920d6565588f0512542a3cb0cdfd36a497f910</td>
<td align="right">4040</td>
</tr>
<tr>
<td><a href="https://erikflowers.github.io/weather-icons/">Weather
Icons</a></td>
<td><a href="http://scripts.sil.org/OFL">SIL OFL 1.1</a></td>
<td>2.0.12</td>
<td align="right">219</td>
</tr>
<tr>
<td><a href="https://vorillaz.github.io/devicons/">Devicons</a></td>
<td><a href="https://opensource.org/licenses/MIT">MIT</a></td>
<td>1.8.0</td>
<td align="right">192</td>
</tr>
<tr>
<td><a href="https://github.com/ant-design/ant-design-icons">Ant Design
Icons</a></td>
<td><a href="https://opensource.org/licenses/MIT">MIT</a></td>
<td>4.4.2</td>
<td align="right">831</td>
</tr>
<tr>
<td><a href="https://github.com/twbs/icons">Bootstrap Icons</a></td>
<td><a href="https://opensource.org/licenses/MIT">MIT</a></td>
<td>1.11.3</td>
<td align="right">2716</td>
</tr>
<tr>
<td><a href="https://github.com/Remix-Design/RemixIcon">Remix
Icon</a></td>
<td><a href="http://www.apache.org/licenses/">Apache License Version
2.0</a></td>
<td>4.5.0</td>
<td align="right">3020</td>
</tr>
<tr>
<td><a href="https://github.com/icons8/flat-color-icons">Flat Color
Icons</a></td>
<td><a href="https://opensource.org/licenses/MIT">MIT</a></td>
<td>1.0.2</td>
<td align="right">329</td>
</tr>
<tr>
<td><a
href="https://github.com/grommet/grommet-icons">Grommet-Icons</a></td>
<td><a href="http://www.apache.org/licenses/">Apache License Version
2.0</a></td>
<td>4.12.1</td>
<td align="right">635</td>
</tr>
<tr>
<td><a
href="https://github.com/tailwindlabs/heroicons">Heroicons</a></td>
<td><a href="https://opensource.org/licenses/MIT">MIT</a></td>
<td>1.0.6</td>
<td align="right">460</td>
</tr>
<tr>
<td><a href="https://github.com/tailwindlabs/heroicons">Heroicons
2</a></td>
<td><a href="https://opensource.org/licenses/MIT">MIT</a></td>
<td>2.2.0</td>
<td align="right">972</td>
</tr>
<tr>
<td><a href="https://simpleicons.org/">Simple Icons</a></td>
<td><a href="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0
Universal</a></td>
<td>13.19.0</td>
<td align="right">3275</td>
</tr>
<tr>
<td><a href="https://thesabbir.github.io/simple-line-icons/">Simple Line
Icons</a></td>
<td><a href="https://opensource.org/licenses/MIT">MIT</a></td>
<td>2.5.5</td>
<td align="right">189</td>
</tr>
<tr>
<td><a href="https://github.com/Keyamoon/IcoMoon-Free">IcoMoon
Free</a></td>
<td><a
href="https://github.com/Keyamoon/IcoMoon-Free/blob/master/License.txt">CC
BY 4.0 License</a></td>
<td>d006795ede82361e1bac1ee76f215cf1dc51e4ca</td>
<td align="right">491</td>
</tr>
<tr>
<td><a href="https://github.com/atisawd/boxicons">BoxIcons</a></td>
<td><a
href="https://github.com/atisawd/boxicons/blob/master/LICENSE">MIT</a></td>
<td>2.1.4</td>
<td align="right">1634</td>
</tr>
<tr>
<td><a href="https://github.com/astrit/css.gg">css.gg</a></td>
<td><a href="https://opensource.org/licenses/MIT">MIT</a></td>
<td>2.1.4</td>
<td align="right">704</td>
</tr>
<tr>
<td><a href="https://github.com/microsoft/vscode-codicons">VS Code
Icons</a></td>
<td><a href="https://creativecommons.org/licenses/by/4.0/">CC BY
4.0</a></td>
<td>0.0.36</td>
<td align="right">466</td>
</tr>
</tbody>
</table>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/react-icons/react-icons/commit/7b14efea784c5e83b30b87c969d35bcb8c478186"><code>7b14efe</code></a>
v5.4.0</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/1e40e107f4def0bb1e4a79c5037244b64d9c91fb"><code>1e40e10</code></a>
workflow: upgrade workflows (<a
href="https://redirect.github.com/react-icons/react-icons/issues/999">#999</a>)</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/9a2d9a77ca17abb9778a856dc159a380bc8746b9"><code>9a2d9a7</code></a>
Bump cross-spawn from 7.0.3 to 7.0.6 (<a
href="https://redirect.github.com/react-icons/react-icons/issues/994">#994</a>)</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/585585c9f62194b4845140ba90ec6bcb04276fa9"><code>585585c</code></a>
Bump http-proxy-middleware from 2.0.6 to 2.0.7 (<a
href="https://redirect.github.com/react-icons/react-icons/issues/989">#989</a>)</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/33d12d5ac7b7482a052f7b9e245952e44d9f3b5e"><code>33d12d5</code></a>
Bump rollup from 2.79.1 to 2.79.2 (<a
href="https://redirect.github.com/react-icons/react-icons/issues/982">#982</a>)</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/f2070d817812cdc061ded5102d43309646abb407"><code>f2070d8</code></a>
Bump express from 4.19.2 to 4.21.0 (<a
href="https://redirect.github.com/react-icons/react-icons/issues/981">#981</a>)</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/63755fbfdc649606d8fa100999eab2cd910cac16"><code>63755fb</code></a>
Bump dset from 3.1.3 to 3.1.4 (<a
href="https://redirect.github.com/react-icons/react-icons/issues/979">#979</a>)</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/1fa8a8f7adfef818cbf1530047593651cf44c32e"><code>1fa8a8f</code></a>
upgrade icons (<a
href="https://redirect.github.com/react-icons/react-icons/issues/998">#998</a>)</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/1393664992d5cc98a9e2bfb7b9e7bf797c3611be"><code>1393664</code></a>
preview: Reduce the number of results displayed in search results (<a
href="https://redirect.github.com/react-icons/react-icons/issues/997">#997</a>)</li>
<li><a
href="https://github.com/react-icons/react-icons/commit/9d7ecf4c89ae4031e071247c225b72aa2f0ea3a0"><code>9d7ecf4</code></a>
5.3.1-snapshot.0</li>
<li>Additional commits viewable in <a
href="https://github.com/react-icons/react-icons/compare/v5.0.1...v5.4.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=react-icons&package-manager=npm_and_yarn&previous-version=5.0.1&new-version=5.4.0)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:51:15 +02:00
dependabot[bot] 86a94b9576 Bump peaceiris/actions-gh-pages from 3 to 4 (#976)
Bumps
[peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages)
from 3 to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/peaceiris/actions-gh-pages/releases">peaceiris/actions-gh-pages's
releases</a>.</em></p>
<blockquote>
<h2>actions-github-pages v4.0.0</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v4.0.0/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.9.3</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.9.3/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.9.2</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.9.2/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.9.1</h2>
<ul>
<li>update deps</li>
</ul>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.9.1/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.9.0</h2>
<ul>
<li>deps: bump node12 to node16</li>
<li>deps: bump <code>@​actions/core</code> from 1.6.0 to 1.10.0</li>
</ul>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.9.0/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.8.0</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.8.0/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.7.3</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.7.3/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.7.2</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.7.2/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.7.1</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.7.1/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.7.0</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.7.0/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<p>Overviews:</p>
<ul>
<li>Add .nojekyll file by default for all branches (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/438">#438</a>)
(079d483), closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/438">#438</a></li>
<li>Add destination_dir option (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/403">#403</a>)
(f30118c), closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/403">#403</a>
<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/324">#324</a>
<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/390">#390</a></li>
<li>Add exclude_assets option (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/416">#416</a>)
(0f5c65e), closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/416">#416</a>
<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/163">#163</a></li>
<li>exclude_assets supports glob patterns (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/417">#417</a>)
(6f45501), closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/417">#417</a>
<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/163">#163</a></li>
</ul>
<h2>actions-github-pages v3.6.4</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.6.4/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.6.3</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.6.3/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<h2>actions-github-pages v3.6.2</h2>
<p>See <a
href="https://github.com/peaceiris/actions-gh-pages/blob/v3.6.2/CHANGELOG.md">CHANGELOG.md</a>
for more details.</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/peaceiris/actions-gh-pages/blob/main/CHANGELOG.md">peaceiris/actions-gh-pages's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/peaceiris/actions-gh-pages/compare/v3.9.2...v3.9.3">3.9.3</a>
(2023-03-30)</h2>
<h3>docs</h3>
<ul>
<li>fix typo, bump hugo version (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/851">#851</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/884a0224fd48faeb3bde89519e9d612d0585a679">884a022</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/851">#851</a></li>
</ul>
<h3>fix</h3>
<ul>
<li>fix error handling (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/841">#841</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/32e33dcd3ae1d0cf56ac5a88267de6cbf0359353">32e33dc</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/841">#841</a></li>
<li>update known_hosts (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/871">#871</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/31c15f03292ac100ae41a50fd3055e00d1b11a32">31c15f0</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/871">#871</a></li>
</ul>
<h2><a
href="https://github.com/peaceiris/actions-gh-pages/compare/v3.9.1...v3.9.2">3.9.2</a>
(2023-01-17)</h2>
<h3>chore</h3>
<ul>
<li>rename cicd (<a
href="https://github.com/peaceiris/actions-gh-pages/commit/32c9288f553bbcbf66869cf553c82754431faf03">32c9288</a>)</li>
<li>replace npm ci with install (<a
href="https://github.com/peaceiris/actions-gh-pages/commit/983978086a87d25a1ff678aa1ef4c2acc413784a">9839780</a>)</li>
</ul>
<h3>ci</h3>
<ul>
<li>add github-actions npm (<a
href="https://github.com/peaceiris/actions-gh-pages/commit/5e5dc6d02eeb18001e0a7af6d6fcbabd4fd9e2b7">5e5dc6d</a>)</li>
<li>enable automerge (<a
href="https://github.com/peaceiris/actions-gh-pages/commit/dd7d77895818fd15ebecf20b6bf76028d377e1b6">dd7d778</a>)</li>
<li>remove dependabot (<a
href="https://github.com/peaceiris/actions-gh-pages/commit/7af79a873e9c2b6c37690db94012342fdb90914a">7af79a8</a>)</li>
<li>remove enabledManagers (<a
href="https://github.com/peaceiris/actions-gh-pages/commit/cba22ba760f1c7e62c9ae43167ea68ca9de56506">cba22ba</a>)</li>
<li>use peaceiris/workflows/setup-node 0.19.1 (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/818">#818</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/416f539fb4263ec46f9bbee251e87cfeae9f85ff">416f539</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/818">#818</a></li>
</ul>
<h3>deps</h3>
<ul>
<li>apply npm audit fix (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/809">#809</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/e3aa46d23bbf7f669a6d92c15dda089b2edf4959">e3aa46d</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/809">#809</a></li>
</ul>
<h2><a
href="https://github.com/peaceiris/actions-gh-pages/compare/v3.9.0...v3.9.1">3.9.1</a>
(2023-01-05)</h2>
<h3>chore</h3>
<ul>
<li>change cicd label name (<a
href="https://github.com/peaceiris/actions-gh-pages/commit/180896524151a5634ff5815a72c59467fc27c874">1808965</a>)</li>
</ul>
<h3>ci</h3>
<ul>
<li>add Renovate config (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/802">#802</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/072d16c439270cd3a36c3e0977ccbe10f2b2bc55">072d16c</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/802">#802</a></li>
<li>bump actions/dependency-review-action from 2 to 3 (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/799">#799</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/e3b45f27007dc55bcdd52f01e38af6f61576ec7f">e3b45f2</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/799">#799</a></li>
<li>bump peaceiris/actions-github-app-token from 1.1.4 to 1.1.5 (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/798">#798</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/a5f971f112fd50b6dd28469f23be2618b1ea87e7">a5f971f</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/798">#798</a></li>
<li>bump peaceiris/actions-mdbook from 1.1.14 to 1.2.0 (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/793">#793</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/9af6a68dde7720af8fd55364c2c637ca5922a879">9af6a68</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/793">#793</a></li>
<li>bump peaceiris/workflows from 0.17.1 to 0.17.2 (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/794">#794</a>)
(<a
href="https://github.com/peaceiris/actions-gh-pages/commit/087a759f907a127fdee23c8994321ff96f7d9430">087a759</a>),
closes <a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/794">#794</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/4f9cc6602d3f66b9c108549d475ec49e8ef4d45e"><code>4f9cc66</code></a>
chore(release): 4.0.0</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/9c75028a530dcac84f98f83ac112b3ecc5eec533"><code>9c75028</code></a>
chore(release): Add build assets</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/5049354438ced05ab8a5da89ef20fd8efff107c7"><code>5049354</code></a>
build: node 20.11.1</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/4eb285e828117bca26638192c3ed309c622e7bad"><code>4eb285e</code></a>
chore: bump node16 to node20 (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/1067">#1067</a>)</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/cdc09a3baa7eac9b40de1dfa92172d75ca5bca5a"><code>cdc09a3</code></a>
chore(deps): update dependency <code>@​types/node</code> to v16.18.77
(<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/1065">#1065</a>)</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/d830378ec6ffd7f902a3427b78b7941511f64de3"><code>d830378</code></a>
chore(deps): update dependency <code>@​types/node</code> to v16.18.76
(<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/1063">#1063</a>)</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/80daa1d14446ef560c4b984b37ac7668a7db0ab4"><code>80daa1d</code></a>
chore(deps): update dependency <code>@​types/node</code> to v16.18.75
(<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/1061">#1061</a>)</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/108285e909b33bc551c67972cdbdbee53b17a112"><code>108285e</code></a>
chore(deps): update dependency ts-jest to v29.1.2 (<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/1060">#1060</a>)</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/99c95ff54e31aa8b98a1f45d98910a945931c89c"><code>99c95ff</code></a>
chore(deps): update dependency <code>@​types/node</code> to v16.18.74
(<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/1058">#1058</a>)</li>
<li><a
href="https://github.com/peaceiris/actions-gh-pages/commit/1f4653792dc64b25bbf4a3490ae085a487673e55"><code>1f46537</code></a>
chore(deps): update dependency <code>@​types/node</code> to v16.18.73
(<a
href="https://redirect.github.com/peaceiris/actions-gh-pages/issues/1057">#1057</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/peaceiris/actions-gh-pages/compare/v3...v4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=peaceiris/actions-gh-pages&package-manager=github_actions&previous-version=3&new-version=4)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:50:46 +02:00
dependabot[bot] 117f37139e Bump @vitejs/plugin-react from 4.2.1 to 4.3.4 (#993)
Bumps
[@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react)
from 4.2.1 to 4.3.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite-plugin-react/releases"><code>@​vitejs/plugin-react</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v4.3.4</h2>
<h3>Add Vite 6 to peerDependencies range</h3>
<p>Vite 6 is highly backward compatible, not much to add!</p>
<h3>Force Babel to output spec compliant import attributes <a
href="https://redirect.github.com/vitejs/vite-plugin-react/pull/386">#386</a></h3>
<p>The default was an old spec (<code>with type:
&quot;json&quot;</code>). We now enforce spec compliant (<code>with {
type: &quot;json&quot; }</code>)</p>
<h2>v4.3.3</h2>
<h3>React Compiler runtimeModule option removed</h3>
<p>React Compiler was updated to accept a <code>target</code> option and
<code>runtimeModule</code> was removed. vite-plugin-react will still
detect <code>runtimeModule</code> for backwards compatibility.</p>
<p>When using a custom <code>runtimeModule</code> or <code>target !==
'19'</code>, the plugin will not try to pre-optimize
<code>react/compiler-runtime</code> dependency.</p>
<p>The <a
href="https://www.npmjs.com/package/react-compiler-runtime">react-compiler-runtime</a>
is now available on npm can be used instead of the local shim for people
using the compiler with React &lt; 19.</p>
<p>Here is the configuration to use the compiler with React 18 and
correct source maps in development:</p>
<pre lang="bash"><code>npm install babel-plugin-react-compiler
react-compiler-runtime @babel/plugin-transform-react-jsx-development
</code></pre>
<pre lang="ts"><code>export default defineConfig(({ command }) =&gt; {
const babelPlugins = [['babel-plugin-react-compiler', { target: '18' }]]
  if (command === 'serve') {
babelPlugins.push(['@babel/plugin-transform-react-jsx-development', {}])
  }
<p>return {
plugins: [react({ babel: { plugins: babelPlugins } })],
}
})
</code></pre></p>
<h2>v4.3.2</h2>
<p>Ignore directive sourcemap error <a
href="https://redirect.github.com/vitejs/vite-plugin-react/issues/369">#369</a></p>
<h2>v4.3.1</h2>
<h3>Fix support for React Compiler with React 18</h3>
<p>The previous version made this assumption that the compiler was only
usable with React 19, but it's possible to use it with React 18 and a
custom <code>runtimeModule</code>: <a
href="https://gist.github.com/poteto/37c076bf112a07ba39d0e5f0645fec43">https://gist.github.com/poteto/37c076bf112a07ba39d0e5f0645fec43</a></p>
<p>When using a custom <code>runtimeModule</code>, the plugin will not
try to pre-optimize <code>react/compiler-runtime</code> dependency.</p>
<p>Reminder: Vite expect code outside of <code>node_modules</code> to be
ESM, so you will need to update the gist with <code>import React from
'react'</code>.</p>
<h2>v4.3.0</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md"><code>@​vitejs/plugin-react</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>4.3.4 (2024-11-26)</h2>
<h3>Add Vite 6 to peerDependencies range</h3>
<p>Vite 6 is highly backward compatible, not much to add!</p>
<h3>Force Babel to output spec compliant import attributes <a
href="https://redirect.github.com/vitejs/vite-plugin-react/pull/386">#386</a></h3>
<p>The default was an old spec (<code>with type:
&quot;json&quot;</code>). We now enforce spec compliant (<code>with {
type: &quot;json&quot; }</code>)</p>
<h2>4.3.3 (2024-10-19)</h2>
<h3>React Compiler runtimeModule option removed</h3>
<p>React Compiler was updated to accept a <code>target</code> option and
<code>runtimeModule</code> was removed. vite-plugin-react will still
detect <code>runtimeModule</code> for backwards compatibility.</p>
<p>When using a custom <code>runtimeModule</code> or <code>target !==
'19'</code>, the plugin will not try to pre-optimize
<code>react/compiler-runtime</code> dependency.</p>
<p>The <a
href="https://www.npmjs.com/package/react-compiler-runtime">react-compiler-runtime</a>
is now available on npm can be used instead of the local shim for people
using the compiler with React &lt; 19.</p>
<p>Here is the configuration to use the compiler with React 18 and
correct source maps in development:</p>
<pre lang="bash"><code>npm install babel-plugin-react-compiler
react-compiler-runtime @babel/plugin-transform-react-jsx-development
</code></pre>
<pre lang="ts"><code>export default defineConfig(({ command }) =&gt; {
const babelPlugins = [['babel-plugin-react-compiler', { target: '18' }]]
  if (command === 'serve') {
babelPlugins.push(['@babel/plugin-transform-react-jsx-development', {}])
  }
<p>return {
plugins: [react({ babel: { plugins: babelPlugins } })],
}
})
</code></pre></p>
<h2>4.3.2 (2024-09-29)</h2>
<p>Ignore directive sourcemap error <a
href="https://redirect.github.com/vitejs/vite-plugin-react/issues/369">#369</a></p>
<h2>4.3.1 (2024-06-10)</h2>
<h3>Fix support for React Compiler with React 18</h3>
<p>The previous version made this assumption that the compiler was only
usable with React 19, but it's possible to use it with React 18 and a
custom <code>runtimeModule</code>: <a
href="https://gist.github.com/poteto/37c076bf112a07ba39d0e5f0645fec43">https://gist.github.com/poteto/37c076bf112a07ba39d0e5f0645fec43</a></p>
<p>When using a custom <code>runtimeModule</code>, the plugin will not
try to pre-optimize <code>react/compiler-runtime</code> dependency.</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/2e368a65aaf8314142538c369c296e277fdfb69b"><code>2e368a6</code></a>
release: plugin-react@4.3.4</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/bde1ad6f7318814aeb1c3e98ce9f9a00bc9117aa"><code>bde1ad6</code></a>
feat: add Vite 6 to peerDependencies range (<a
href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/390">#390</a>)</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/45a727ceed4f179bc02b41a75333e05884a98123"><code>45a727c</code></a>
fix(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/373">#373</a>)</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/5d2b6c6701c7951316e5e0f361b46ab6dc8641b3"><code>5d2b6c6</code></a>
fix: force non-legacy import attributes babel output (<a
href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/386">#386</a>)</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/b61592a6ffb9e36c3ffb887c30baa29b6df4f53c"><code>b61592a</code></a>
release: plugin-react@4.3.3</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/e8a923f870a7f13691da51f38094983d69c7488e"><code>e8a923f</code></a>
fix: add <code>react-dom</code> in <code>optimizeOps</code> to handle
CJS script. (<a
href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/375">#375</a>)</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/7a7e339b645a422cb27d1937d27bd1e9e1f1fa17"><code>7a7e339</code></a>
feat: support new React Compiler target option (<a
href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/374">#374</a>)</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/63b2e3876dbd6fd2a775fe04df71fb18c8bc6150"><code>63b2e38</code></a>
release: plugin-react@4.3.2</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/fdf6ce49d3598fe21a128e0bcd03082f63f08496"><code>fdf6ce4</code></a>
fix(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/273">#273</a>)</li>
<li><a
href="https://github.com/vitejs/vite-plugin-react/commit/4544e9790e178bcc302d994becd6aca2d4aa6181"><code>4544e97</code></a>
feat: update refresh utils for React Router 7 support (<a
href="https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react/issues/363">#363</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/vitejs/vite-plugin-react/commits/v4.3.4/packages/plugin-react">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@vitejs/plugin-react&package-manager=npm_and_yarn&previous-version=4.2.1&new-version=4.3.4)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:49:48 +02:00
dependabot[bot] 39aef39b72 Bump @types/react-autocomplete from 1.8.10 to 1.8.11 (#979)
Bumps
[@types/react-autocomplete](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-autocomplete)
from 1.8.10 to 1.8.11.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-autocomplete">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/react-autocomplete&package-manager=npm_and_yarn&previous-version=1.8.10&new-version=1.8.11)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:49:28 +02:00
dependabot[bot] 1657aa4676 Bump @rollup/plugin-replace from 5.0.5 to 6.0.2 (#985)
Bumps
[@rollup/plugin-replace](https://github.com/rollup/plugins/tree/HEAD/packages/replace)
from 5.0.5 to 6.0.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rollup/plugins/blob/master/packages/replace/CHANGELOG.md"><code>@​rollup/plugin-replace</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>v6.0.2</h2>
<p><em>2024-12-15</em></p>
<h3>Bugfixes</h3>
<ul>
<li>fix: add missing types for <code>objectGuards</code> option (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/1818">#1818</a>)</li>
</ul>
<h2>v6.0.1</h2>
<p><em>2024-09-23</em></p>
<h3>Bugfixes</h3>
<ul>
<li>fix: The <code>preventAssignment</code> option is treated as a value
to replace (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/1768">#1768</a>)</li>
</ul>
<h2>v6.0.0</h2>
<p><em>2024-09-23</em></p>
<h3>Breaking Changes</h3>
<ul>
<li>fix!: objectGuards doesn't take effects (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/1764">#1764</a>)</li>
</ul>
<h2>v5.0.7</h2>
<p><em>2024-06-05</em></p>
<h3>Bugfixes</h3>
<ul>
<li>fix: add missing sourceMap documentation (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/1698">#1698</a>)</li>
</ul>
<h2>v5.0.6</h2>
<p><em>2024-06-05</em></p>
<h3>Bugfixes</h3>
<ul>
<li>fix: ternary operator replacement (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/1712">#1712</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/rollup/plugins/commit/fba0a6b2afc3e9f83857896eab5b821f37a3f31e"><code>fba0a6b</code></a>
chore(repo): remove circle ci, add validate workflow, update deps (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/867">#867</a>)</li>
<li><a
href="https://github.com/rollup/plugins/commit/0150c55e372262ba4b2c60783ad00a76b3726ed1"><code>0150c55</code></a>
chore(repo): Add &quot;directory&quot; to package.json repository
fields. (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/826">#826</a>)</li>
<li><a
href="https://github.com/rollup/plugins/commit/bed12cf8cdfa018455659cc18964717845b0ebe7"><code>bed12cf</code></a>
chore(release): replace v2.4.2</li>
<li><a
href="https://github.com/rollup/plugins/commit/8752c2f9099cdbf3a8580936b2599b57cd8da344"><code>8752c2f</code></a>
docs(replace): document the <code>values</code> option (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/814">#814</a>)</li>
<li><a
href="https://github.com/rollup/plugins/commit/4a11bbd4de64085b2245cf98ef3b4cd51233a76e"><code>4a11bbd</code></a>
chore(release): replace v2.4.1</li>
<li><a
href="https://github.com/rollup/plugins/commit/659ed596b256803e14b5bb8c5a2bceb609607696"><code>659ed59</code></a>
fix(replace): add missing types for new <code>preventAssignment</code>
option (<a
href="https://github.com/rollup/plugins/tree/HEAD/packages/replace/issues/813">#813</a>)</li>
<li><a
href="https://github.com/rollup/plugins/commit/fbcb8f270348f989cec975b2b1746f6a7c5fc279"><code>fbcb8f2</code></a>
chore(release): replace v2.4.0</li>
<li>See full diff in <a
href="https://github.com/rollup/plugins/commits/babel-v6.0.2/packages/replace">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@rollup/plugin-replace&package-manager=npm_and_yarn&previous-version=5.0.5&new-version=6.0.2)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:48:55 +02:00
dependabot[bot] b09d41e41d Bump url from 0.11.3 to 0.11.4 (#989)
Bumps [url](https://github.com/defunctzombie/node-url) from 0.11.3 to
0.11.4.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/defunctzombie/node-url/commit/455a3e2106bf254498615efc50a8dd5527be4132"><code>455a3e2</code></a>
v0.11.4</li>
<li><a
href="https://github.com/defunctzombie/node-url/commit/97ab476052e8a2efa15d503795f750543208fc25"><code>97ab476</code></a>
[meta] add missing <code>engines.node</code></li>
<li><a
href="https://github.com/defunctzombie/node-url/commit/c5e1391d8917c154b5bdeaf3b3c335513d1fd8ee"><code>c5e1391</code></a>
[Fix] use <code>punycode</code> from the package and not from the node
core module</li>
<li><a
href="https://github.com/defunctzombie/node-url/commit/57539a87a36d8dfc263d4095905f8e242af17d56"><code>57539a8</code></a>
[Deps] update <code>qs</code></li>
<li><a
href="https://github.com/defunctzombie/node-url/commit/11a50c9c3f2bc01a0060bdbbe90e3a1ac20ce72c"><code>11a50c9</code></a>
[Dev Deps] update <code>@ljharb/eslint-config</code>,
<code>acorn</code>, <code>aud</code></li>
<li><a
href="https://github.com/defunctzombie/node-url/commit/db8a439d4bbaa16f850ef43d5f8693cb6a991dc9"><code>db8a439</code></a>
[actions] improve workflows</li>
<li>See full diff in <a
href="https://github.com/defunctzombie/node-url/compare/v0.11.3...v0.11.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=url&package-manager=npm_and_yarn&previous-version=0.11.3&new-version=0.11.4)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:48:20 +02:00
dependabot[bot] f17f529ede Bump mocha from 10.3.0 to 11.0.1 (#991)
Bumps [mocha](https://github.com/mochajs/mocha) from 10.3.0 to 11.0.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/mochajs/mocha/releases">mocha's
releases</a>.</em></p>
<blockquote>
<h2>v11.0.1</h2>
<h2><a
href="https://github.com/mochajs/mocha/compare/v11.0.0...v11.0.1">11.0.1</a>
(2024-12-02)</h2>
<h3>🌟 Features</h3>
<ul>
<li>bumped glob dependency from 8 to 10 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5250">#5250</a>)
(<a
href="https://github.com/mochajs/mocha/commit/43c3157c6ef4f2d4bfecf3ad3a42479fd64187b8">43c3157</a>)</li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>fix examples for <code>linkPartialObjects</code> methods (<a
href="https://redirect.github.com/mochajs/mocha/issues/5255">#5255</a>)
(<a
href="https://github.com/mochajs/mocha/commit/34e0e52e047a9119aeae9cb5b660a8438656a1e0">34e0e52</a>)</li>
</ul>
<h2>v11.0.0 Prerelease</h2>
<h2><a
href="https://github.com/mochajs/mocha/compare/v10.8.2...v11.0.0">11.0.0</a>
(2024-11-11)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li>adapt new engine range for Mocha 11 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5216">#5216</a>)</li>
</ul>
<h3>🌟 Features</h3>
<ul>
<li>allow calling hook methods (<a
href="https://redirect.github.com/mochajs/mocha/issues/5231">#5231</a>)
(<a
href="https://github.com/mochajs/mocha/commit/e3da641b08bed20f12df524fc64cb9579f980c1e">e3da641</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>adapt new engine range for Mocha 11 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5216">#5216</a>)
(<a
href="https://github.com/mochajs/mocha/commit/80da25a4132ca50d3ad35087cb62c9b0f8fc946a">80da25a</a>)</li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>downgrade example/tests chai to 4.5.0 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5245">#5245</a>)
(<a
href="https://github.com/mochajs/mocha/commit/eac87e10f49207a9b388f87d77d198583c6f889a">eac87e1</a>)</li>
</ul>
<h2>v10.8.2</h2>
<h2><a
href="https://github.com/mochajs/mocha/compare/v10.8.1...v10.8.2">10.8.2</a>
(2024-10-30)</h2>
<h3>🩹 Fixes</h3>
<ul>
<li>support errors with circular dependencies in object values with
--parallel (<a
href="https://redirect.github.com/mochajs/mocha/issues/5212">#5212</a>)
(<a
href="https://github.com/mochajs/mocha/commit/ba0fefe10b08a689cf49edc3818026938aa3a240">ba0fefe</a>)</li>
<li>test link in html reporter (<a
href="https://redirect.github.com/mochajs/mocha/issues/5224">#5224</a>)
(<a
href="https://github.com/mochajs/mocha/commit/f054acc1f60714bbe00ad1ab270fb4977836d045">f054acc</a>)</li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>indicate 'exports' interface does not work in browsers (<a
href="https://redirect.github.com/mochajs/mocha/issues/5181">#5181</a>)
(<a
href="https://github.com/mochajs/mocha/commit/14e640ee49718d587779a9594b18f3796c42cf2a">14e640e</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/mochajs/mocha/blob/main/CHANGELOG.md">mocha's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/mochajs/mocha/compare/v11.0.0...v11.0.1">11.0.1</a>
(2024-12-02)</h2>
<h3>🌟 Features</h3>
<ul>
<li>bumped glob dependency from 8 to 10 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5250">#5250</a>)
(<a
href="https://github.com/mochajs/mocha/commit/43c3157c6ef4f2d4bfecf3ad3a42479fd64187b8">43c3157</a>)</li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>fix examples for <code>linkPartialObjects</code> methods (<a
href="https://redirect.github.com/mochajs/mocha/issues/5255">#5255</a>)
(<a
href="https://github.com/mochajs/mocha/commit/34e0e52e047a9119aeae9cb5b660a8438656a1e0">34e0e52</a>)</li>
</ul>
<h2><a
href="https://github.com/mochajs/mocha/compare/v10.8.2...v11.0.0">11.0.0</a>
(2024-11-11)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li>adapt new engine range for Mocha 11 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5216">#5216</a>)</li>
</ul>
<h3>🌟 Features</h3>
<ul>
<li>allow calling hook methods (<a
href="https://redirect.github.com/mochajs/mocha/issues/5231">#5231</a>)
(<a
href="https://github.com/mochajs/mocha/commit/e3da641b08bed20f12df524fc64cb9579f980c1e">e3da641</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>adapt new engine range for Mocha 11 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5216">#5216</a>)
(<a
href="https://github.com/mochajs/mocha/commit/80da25a4132ca50d3ad35087cb62c9b0f8fc946a">80da25a</a>)</li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>downgrade example/tests chai to 4.5.0 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5245">#5245</a>)
(<a
href="https://github.com/mochajs/mocha/commit/eac87e10f49207a9b388f87d77d198583c6f889a">eac87e1</a>)</li>
</ul>
<h2><a
href="https://github.com/mochajs/mocha/compare/v10.8.1...v10.8.2">10.8.2</a>
(2024-10-30)</h2>
<h3>🩹 Fixes</h3>
<ul>
<li>support errors with circular dependencies in object values with
--parallel (<a
href="https://redirect.github.com/mochajs/mocha/issues/5212">#5212</a>)
(<a
href="https://github.com/mochajs/mocha/commit/ba0fefe10b08a689cf49edc3818026938aa3a240">ba0fefe</a>)</li>
<li>test link in html reporter (<a
href="https://redirect.github.com/mochajs/mocha/issues/5224">#5224</a>)
(<a
href="https://github.com/mochajs/mocha/commit/f054acc1f60714bbe00ad1ab270fb4977836d045">f054acc</a>)</li>
</ul>
<h3>📚 Documentation</h3>
<ul>
<li>indicate 'exports' interface does not work in browsers (<a
href="https://redirect.github.com/mochajs/mocha/issues/5181">#5181</a>)
(<a
href="https://github.com/mochajs/mocha/commit/14e640ee49718d587779a9594b18f3796c42cf2a">14e640e</a>)</li>
</ul>
<h3>🧹 Chores</h3>
<ul>
<li>fix docs builds by re-adding eleventy and ignoring gitignore again
(<a
href="https://redirect.github.com/mochajs/mocha/issues/5240">#5240</a>)
(<a
href="https://github.com/mochajs/mocha/commit/881e3b0ca2e24284aab2a04f63639a0aa9e0ad1b">881e3b0</a>)</li>
</ul>
<h3>🤖 Automation</h3>
<ul>
<li><strong>deps:</strong> bump the github-actions group with 1 update
(<a
href="https://redirect.github.com/mochajs/mocha/issues/5132">#5132</a>)
(<a
href="https://github.com/mochajs/mocha/commit/e536ab25b308774e3103006c044cb996a2e17c87">e536ab2</a>)</li>
</ul>
<h2><a
href="https://github.com/mochajs/mocha/compare/v10.8.0...v10.8.1">10.8.1</a>
(2024-10-29)</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/mochajs/mocha/commit/4c558fb83ca5d7e260961b1ebfddcd377017a608"><code>4c558fb</code></a>
chore(main): release 11.0.1 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5257">#5257</a>)</li>
<li><a
href="https://github.com/mochajs/mocha/commit/a5bd707301006a318f8fea205545d8779a1c94c5"><code>a5bd707</code></a>
Release v11.0.1</li>
<li><a
href="https://github.com/mochajs/mocha/commit/43c3157c6ef4f2d4bfecf3ad3a42479fd64187b8"><code>43c3157</code></a>
feat: bumped glob dependency from 8 to 10 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5250">#5250</a>)</li>
<li><a
href="https://github.com/mochajs/mocha/commit/34e0e52e047a9119aeae9cb5b660a8438656a1e0"><code>34e0e52</code></a>
docs: fix examples for <code>linkPartialObjects</code> methods (<a
href="https://redirect.github.com/mochajs/mocha/issues/5255">#5255</a>)</li>
<li><a
href="https://github.com/mochajs/mocha/commit/d3b2c386db74f0d448c7381097381dedb1c996f2"><code>d3b2c38</code></a>
chore(main): release 11.0.0 prerelease (<a
href="https://redirect.github.com/mochajs/mocha/issues/5241">#5241</a>)</li>
<li><a
href="https://github.com/mochajs/mocha/commit/80da25a4132ca50d3ad35087cb62c9b0f8fc946a"><code>80da25a</code></a>
fix!: adapt new engine range for Mocha 11 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5216">#5216</a>)</li>
<li><a
href="https://github.com/mochajs/mocha/commit/eac87e10f49207a9b388f87d77d198583c6f889a"><code>eac87e1</code></a>
docs: downgrade example/tests chai to 4.5.0 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5245">#5245</a>)</li>
<li><a
href="https://github.com/mochajs/mocha/commit/e3da641b08bed20f12df524fc64cb9579f980c1e"><code>e3da641</code></a>
feat: allow calling hook methods (<a
href="https://redirect.github.com/mochajs/mocha/issues/5231">#5231</a>)</li>
<li><a
href="https://github.com/mochajs/mocha/commit/05097db4f2e0118f033978b8503aec36b1867c55"><code>05097db</code></a>
chore(main): release 10.8.2 (<a
href="https://redirect.github.com/mochajs/mocha/issues/5239">#5239</a>)</li>
<li><a
href="https://github.com/mochajs/mocha/commit/14e640ee49718d587779a9594b18f3796c42cf2a"><code>14e640e</code></a>
docs: indicate 'exports' interface does not work in browsers (<a
href="https://redirect.github.com/mochajs/mocha/issues/5181">#5181</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/mochajs/mocha/compare/v10.3.0...v11.0.1">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~voxpelli">voxpelli</a>, a new releaser for
mocha since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mocha&package-manager=npm_and_yarn&previous-version=10.3.0&new-version=11.0.1)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:47:55 +02:00
dependabot[bot] f12af91a55 Bump i18next-browser-languagedetector from 8.0.0 to 8.0.2 (#994)
Bumps
[i18next-browser-languagedetector](https://github.com/i18next/i18next-browser-languageDetector)
from 8.0.0 to 8.0.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/i18next-browser-languageDetector/blob/master/CHANGELOG.md">i18next-browser-languagedetector's
changelog</a>.</em></p>
<blockquote>
<h3>8.0.2</h3>
<ul>
<li>fix for when passed services are null, should address <a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/296">296</a></li>
</ul>
<h3>8.0.1</h3>
<ul>
<li>some environments, throws when accessing document.cookie</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/9d765ed9fca1d11120ceab70868f3af5a3a421c5"><code>9d765ed</code></a>
8.0.2</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/0cd29a88b2529a521c39bb7e44a2d6e94da6d0be"><code>0cd29a8</code></a>
fix for when passed services are null, should address <a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/296">#296</a></li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/be02df96ea991e3c6a3a46bacdc2ae939c209220"><code>be02df9</code></a>
8.0.1</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/6c1886c210cd8d7df7827d490ddba2e890e8b77b"><code>6c1886c</code></a>
some environments, throws when accessing document.cookie</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/e6e4089b329fbca1b1e8580580559da7df5ae35b"><code>e6e4089</code></a>
Bump elliptic from 6.5.7 to 6.6.0 (<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/295">#295</a>)</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/5131d9ac9608fdb3229470d8f4c10a0e22c9f00d"><code>5131d9a</code></a>
Bump elliptic from 6.5.4 to 6.5.7 (<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/294">#294</a>)</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/1f74f59da434a8cd1d98f3357b8541d8bdd04b0c"><code>1f74f59</code></a>
Use arrow function and implicit return in index.js (<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/290">#290</a>)</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/c9f0f3503762e47b0f4f7567458e1acf67cde7ce"><code>c9f0f35</code></a>
Bump braces from 3.0.2 to 3.0.3 (<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/289">#289</a>)</li>
<li><a
href="https://github.com/i18next/i18next-browser-languageDetector/commit/e16138050e0a860908593449cd042112c52437ad"><code>e161380</code></a>
refactor: Defaults (<a
href="https://redirect.github.com/i18next/i18next-browser-languageDetector/issues/288">#288</a>)</li>
<li>See full diff in <a
href="https://github.com/i18next/i18next-browser-languageDetector/compare/v8.0.0...v8.0.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=i18next-browser-languagedetector&package-manager=npm_and_yarn&previous-version=8.0.0&new-version=8.0.2)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:47:15 +02:00
dependabot[bot] e87e122067 Bump vite from 6.0.10 to 6.0.11 (#978)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 6.0.10 to 6.0.11.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.11</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.0.11/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->6.0.11 (2025-01-21)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: <code>preview.allowedHosts</code> with specific values was not
respected (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19246">#19246</a>)
(<a
href="https://github.com/vitejs/vite/commit/aeb3ec84a288d6be227a1284607f13428a4f14a1">aeb3ec8</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19246">#19246</a></li>
<li>fix: allow CORS from loopback addresses by default (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19249">#19249</a>)
(<a
href="https://github.com/vitejs/vite/commit/3d038997377a30022b6a6b7916e0b4b5d8b9a363">3d03899</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19249">#19249</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vitejs/vite/commit/a0ed4057c90a1135aa58d06305f446e232f63e2a"><code>a0ed405</code></a>
release: v6.0.11</li>
<li><a
href="https://github.com/vitejs/vite/commit/3d038997377a30022b6a6b7916e0b4b5d8b9a363"><code>3d03899</code></a>
fix: allow CORS from loopback addresses by default (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19249">#19249</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/aeb3ec84a288d6be227a1284607f13428a4f14a1"><code>aeb3ec8</code></a>
fix: <code>preview.allowedHosts</code> with specific values was not
respected (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19246">#19246</a>)</li>
<li>See full diff in <a
href="https://github.com/vitejs/vite/commits/v6.0.11/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=6.0.10&new-version=6.0.11)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:46:53 +02:00
dependabot[bot] b070cea0a5 Bump peter-evans/create-pull-request from 6 to 7 (#975)
Bumps
[peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request)
from 6 to 7.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/peter-evans/create-pull-request/releases">peter-evans/create-pull-request's
releases</a>.</em></p>
<blockquote>
<h2>Create Pull Request v7.0.0</h2>
<p> Now supports commit signing with bot-generated tokens! See
&quot;What's new&quot; below. ✍️🤖</p>
<h3>Behaviour changes</h3>
<ul>
<li>Action input <code>git-token</code> has been renamed
<code>branch-token</code>, to be more clear about its purpose. The
<code>branch-token</code> is the token that the action will use to
create and update the branch.</li>
<li>The action now handles requests that have been rate-limited by
GitHub. Requests hitting a primary rate limit will retry twice, for a
total of three attempts. Requests hitting a secondary rate limit will
not be retried.</li>
<li>The <code>pull-request-operation</code> output now returns
<code>none</code> when no operation was executed.</li>
<li>Removed deprecated output environment variable
<code>PULL_REQUEST_NUMBER</code>. Please use the
<code>pull-request-number</code> action output instead.</li>
</ul>
<h3>What's new</h3>
<ul>
<li>The action can now sign commits as <code>github-actions[bot]</code>
when using <code>GITHUB_TOKEN</code>, or your own bot when using <a
href="https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#authenticating-with-github-app-generated-tokens">GitHub
App tokens</a>. See <a
href="https://github.com/peter-evans/create-pull-request/blob/HEAD/docs/concepts-guidelines.md#commit-signature-verification-for-bots">commit
signing</a> for details.</li>
<li>Action input <code>draft</code> now accepts a new value
<code>always-true</code>. This will set the pull request to draft status
when the pull request is updated, as well as on creation.</li>
<li>A new action input <code>maintainer-can-modify</code> indicates
whether <a
href="https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork">maintainers
can modify</a> the pull request. The default is <code>true</code>, which
retains the existing behaviour of the action.</li>
<li>A new output <code>pull-request-commits-verified</code> returns
<code>true</code> or <code>false</code>, indicating whether GitHub
considers the signature of the branch's commits to be verified.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>build(deps-dev): bump <code>@​types/node</code> from 18.19.36 to
18.19.39 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3000">peter-evans/create-pull-request#3000</a></li>
<li>build(deps-dev): bump ts-jest from 29.1.5 to 29.2.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3008">peter-evans/create-pull-request#3008</a></li>
<li>build(deps-dev): bump prettier from 3.3.2 to 3.3.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3018">peter-evans/create-pull-request#3018</a></li>
<li>build(deps-dev): bump ts-jest from 29.2.0 to 29.2.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3019">peter-evans/create-pull-request#3019</a></li>
<li>build(deps-dev): bump eslint-plugin-prettier from 5.1.3 to 5.2.1 by
<a href="https://github.com/dependabot"><code>@​dependabot</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3035">peter-evans/create-pull-request#3035</a></li>
<li>build(deps-dev): bump <code>@​types/node</code> from 18.19.39 to
18.19.41 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3037">peter-evans/create-pull-request#3037</a></li>
<li>build(deps): bump undici from 6.19.2 to 6.19.4 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3036">peter-evans/create-pull-request#3036</a></li>
<li>build(deps-dev): bump ts-jest from 29.2.2 to 29.2.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3038">peter-evans/create-pull-request#3038</a></li>
<li>build(deps-dev): bump <code>@​types/node</code> from 18.19.41 to
18.19.42 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3070">peter-evans/create-pull-request#3070</a></li>
<li>build(deps): bump undici from 6.19.4 to 6.19.5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3086">peter-evans/create-pull-request#3086</a></li>
<li>build(deps-dev): bump <code>@​types/node</code> from 18.19.42 to
18.19.43 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3087">peter-evans/create-pull-request#3087</a></li>
<li>build(deps-dev): bump ts-jest from 29.2.3 to 29.2.4 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3088">peter-evans/create-pull-request#3088</a></li>
<li>build(deps): bump undici from 6.19.5 to 6.19.7 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3145">peter-evans/create-pull-request#3145</a></li>
<li>build(deps-dev): bump <code>@​types/node</code> from 18.19.43 to
18.19.44 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3144">peter-evans/create-pull-request#3144</a></li>
<li>Update distribution by <a
href="https://github.com/actions-bot"><code>@​actions-bot</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3154">peter-evans/create-pull-request#3154</a></li>
<li>build(deps): bump undici from 6.19.7 to 6.19.8 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3213">peter-evans/create-pull-request#3213</a></li>
<li>build(deps-dev): bump <code>@​types/node</code> from 18.19.44 to
18.19.45 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3214">peter-evans/create-pull-request#3214</a></li>
<li>Update distribution by <a
href="https://github.com/actions-bot"><code>@​actions-bot</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3221">peter-evans/create-pull-request#3221</a></li>
<li>build(deps-dev): bump eslint-import-resolver-typescript from 3.6.1
to 3.6.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3255">peter-evans/create-pull-request#3255</a></li>
<li>build(deps-dev): bump <code>@​types/node</code> from 18.19.45 to
18.19.46 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3254">peter-evans/create-pull-request#3254</a></li>
<li>build(deps-dev): bump ts-jest from 29.2.4 to 29.2.5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3256">peter-evans/create-pull-request#3256</a></li>
<li>v7 - signed commits by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3057">peter-evans/create-pull-request#3057</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/rustycl0ck"><code>@​rustycl0ck</code></a> made
their first contribution in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/3057">peter-evans/create-pull-request#3057</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-pull-request/compare/v6.1.0...v7.0.0">https://github.com/peter-evans/create-pull-request/compare/v6.1.0...v7.0.0</a></p>
<h2>Create Pull Request v6.1.0</h2>
<p> Adds <code>pull-request-branch</code> as an action output.</p>
<h2>What's Changed</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/67ccf781d68cd99b580ae25a5c18a1cc84ffff1f"><code>67ccf78</code></a>
fix: preserve unicode in filepaths when commit signing (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3588">#3588</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/bb88e27d3f9cc69c8bc689eba126096c6fe3dded"><code>bb88e27</code></a>
build: update distribution (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3583">#3583</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/b378ed537a3374cbb7642141277ace10488f9318"><code>b378ed5</code></a>
build(deps): bump p-limit from 6.1.0 to 6.2.0 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3578">#3578</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/fa9200e5b4f0d3fe4adc6d4a980fdb27ca333ed2"><code>fa9200e</code></a>
build(deps-dev): bump <code>@​types/node</code> from 18.19.67 to
18.19.68 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3570">#3570</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/16e0059bfd236716f0191bfcfa63d9ded4cf325f"><code>16e0059</code></a>
build(deps-dev): bump prettier from 3.4.1 to 3.4.2 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3560">#3560</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/5bffd5ae80c9e3cdce3fdaba74ba437193643add"><code>5bffd5a</code></a>
build(deps-dev): bump eslint-import-resolver-typescript (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3559">#3559</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/a22a0ddc2127a4161a9f144623d1e51be98d81aa"><code>a22a0dd</code></a>
build(deps-dev): bump prettier from 3.4.0 to 3.4.1 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3544">#3544</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/b27ce378c8a71596550fb729c05c9a998f8ff26f"><code>b27ce37</code></a>
build(deps-dev): bump <code>@​types/node</code> from 18.19.66 to
18.19.67 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3543">#3543</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/4e0cc19e22f9071762b3542aa9fa90a1d682dd32"><code>4e0cc19</code></a>
build(deps): bump <code>@​octokit/plugin-paginate-rest</code> from
11.3.5 to 11.3.6 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/3542">#3542</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/25b6871a4ebe4c3585f47c7a687ac6fd0ec0e32d"><code>25b6871</code></a>
docs: update scopes for push-to-fork</li>
<li>Additional commits viewable in <a
href="https://github.com/peter-evans/create-pull-request/compare/v6...v7">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=peter-evans/create-pull-request&package-manager=github_actions&previous-version=6&new-version=7)](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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 13:46:15 +02:00
Birk Skyum e104bda7b6 fix dependabot.yml (#972)
Towards #971 
- #971 

The dependabot script appear broken. This copies the config from
maplibre-gl-js, which we know work.

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-21 11:42:11 +01:00
Birk Skyum 6af3165418 move eslint, sass, cypress packages to devDeps (#973)
I find these packages belong in devDeps not deps, because it's either
build-only or test related

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-21 11:22:42 +01:00
Birk Skyum b1d4b53548 Bump cypress and vite (#970)
The latest Cypress 14 support the latest Vite 6, so this PR bumps both

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [X] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-21 10:50:57 +01:00
Birk Skyum 36d80d5e91 Bump node in CI to 22.13 (#969)
This updates the .npmrc to use Node 18.19 -> 22.13


## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [ ] Add an entry to `CHANGELOG.md` under the `## main` section.

Co-authored-by: Harel M <harel.mazor@gmail.com>
2025-01-21 09:54:19 +01:00
Birk Skyum 69124d0752 Update maplibre packages (#968)
This PR updates the maplibre-relevant package, including the bump to v5.

This notably allow styles with globe to be rendered as a globe
https://demotiles.maplibre.org/globe.json

Before
<img width="1726" alt="Screenshot 2025-01-21 at 09 17 01"
src="https://github.com/user-attachments/assets/f126f92d-6091-4273-b621-680cc092187f"
/>


After
<img width="1728" alt="Screenshot 2025-01-21 at 09 17 18"
src="https://github.com/user-attachments/assets/369621cd-46af-4acb-bd5c-7043aadcc297"
/>



## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [ ] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [X] Add an entry to `CHANGELOG.md` under the `## main` section.
2025-01-21 10:48:40 +02:00
Joscha Eckert 405b8aa951 add fallback behavior for showOpenFilePicker and showSaveFilePicker (#967)
## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [x] Briefly describe the changes in this PR.
 - [x] Link to related issues.
- [x] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [x] Add an entry to `CHANGELOG.md` under the `## main` section.

## Description

`showOpenFilePicker` and `showSaveFilePicker` are undefined on Firefox.
With this pr, Maputnik uses the old behavior as a fallback. It keeps the
naming "open" and "save" instead of "upload" and "download" to underline
that the style stays within the browser and no actual upload happens.

@zstadler Could you give it a try, please?

## Related Issue

- fixes https://github.com/maplibre/maputnik/issues/966

## Visual Changes

The "Save as" button gets hidden if `showSaveFilePicker` is not
available since it would have no use.

<table>
<tr>
<td>
Chrome
</td>
<td>
Firefox
</td>
</tr>
<tr>
<td>
<img
src="https://github.com/user-attachments/assets/cdc2cd4d-1c09-4dec-8c94-f8b0dd0c5b8e"
/>
</td>
<td>
<img
src="https://github.com/user-attachments/assets/0763ef63-6501-4cc1-977b-94753c3008ae"
/>
</td>
</tr>
</table>
2025-01-16 23:53:27 +02:00
Joscha d50ea76347 feat: use FileSystemFileHandle to modify a file on the local filesystem (#965)
## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [x] Briefly describe the changes in this PR.
 - [x] Link to related issues.
- [x] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [x] Add an entry to `CHANGELOG.md` under the `## main` section.

## Changes

- This pull request makes use of the FileSystemFileHandle API to modify
a local file. No need to download it - just click save.
- I don't know how to cover this functionality by tests so I need
directions in case test coverage is required.
- The pull request adds
[@types/wicg-file-system-access](https://www.npmjs.com/package/@types/wicg-file-system-access)
as a new dev dependency which I am not really pleased about but can't
think of a way around it.

## Known Limitations

- The used File API is only available in when accessed from https or on
localhost.
- There is no visual indicator that the file has been saved. Previously
the browser showed it as a new download.

## Issue

- https://github.com/maplibre/maputnik/issues/964

## Screenshots

### Menu
<img
src="https://github.com/user-attachments/assets/dfcfc5c2-0019-4857-ba26-224b5598fc11"
/>

### Open modal
<img
src="https://github.com/user-attachments/assets/4e1293e8-16b6-4b86-925b-3bebb49d8ca6"
height="200px" />

### Save modal
<img
src="https://github.com/user-attachments/assets/4f10e2c0-2dd3-4726-a613-30e0406619b0"
height="200px" />

---------

Co-authored-by: Harel M <harel.mazor@gmail.com>
2025-01-09 18:54:26 +02:00
Bart Louwers c6174a57d9 Update Protomaps Light gallery style to v4 (#960)
Changes:
https://github.com/protomaps/basemaps/blob/main/CHANGELOG.md#styles-v400--tiles-v400
2024-11-25 12:40:06 +01:00
dependabot[bot] 43892305a8 Bump cross-spawn from 7.0.3 to 7.0.6 (#958)
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from
7.0.3 to 7.0.6.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md">cross-spawn's
changelog</a>.</em></p>
<blockquote>
<h3><a
href="https://github.com/moxystudio/node-cross-spawn/compare/v7.0.5...v7.0.6">7.0.6</a>
(2024-11-18)</h3>
<h3>Bug Fixes</h3>
<ul>
<li>update cross-spawn version to 7.0.5 in package-lock.json (<a
href="https://github.com/moxystudio/node-cross-spawn/commit/f700743918d901eff92960e15a8dd68f87bd4176">f700743</a>)</li>
</ul>
<h3><a
href="https://github.com/moxystudio/node-cross-spawn/compare/v7.0.4...v7.0.5">7.0.5</a>
(2024-11-07)</h3>
<h3>Bug Fixes</h3>
<ul>
<li>fix escaping bug introduced by backtracking (<a
href="https://github.com/moxystudio/node-cross-spawn/commit/640d391fde65388548601d95abedccc12943374f">640d391</a>)</li>
</ul>
<h3><a
href="https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.4">7.0.4</a>
(2024-11-07)</h3>
<h3>Bug Fixes</h3>
<ul>
<li>disable regexp backtracking (<a
href="https://redirect.github.com/moxystudio/node-cross-spawn/issues/160">#160</a>)
(<a
href="https://github.com/moxystudio/node-cross-spawn/commit/5ff3a07d9add449021d806e45c4168203aa833ff">5ff3a07</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/77cd97f3ca7b62c904a63a698fc4a79bf41977d0"><code>77cd97f</code></a>
chore(release): 7.0.6</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/6717de49ff1e5de49622488dcb9c33fb25370c85"><code>6717de4</code></a>
chore: upgrade standard-version</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/f700743918d901eff92960e15a8dd68f87bd4176"><code>f700743</code></a>
fix: update cross-spawn version to 7.0.5 in package-lock.json</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/9a7e3b2165917367f74b8365faad9873b30d7263"><code>9a7e3b2</code></a>
chore: fix build status badge</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/085268352dcbcad8064c64c5efb25268b4023184"><code>0852683</code></a>
chore(release): 7.0.5</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/640d391fde65388548601d95abedccc12943374f"><code>640d391</code></a>
fix: fix escaping bug introduced by backtracking</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/bff0c87c8b627c4e6d04ec2449e733048bebb464"><code>bff0c87</code></a>
chore: remove codecov</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/a7c6abc6fee79641d45b452fe6217deaa1bd0973"><code>a7c6abc</code></a>
chore: replace travis with github workflows</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/9b9246e0969e86656d7ccd527716bc3c18842a19"><code>9b9246e</code></a>
chore(release): 7.0.4</li>
<li><a
href="https://github.com/moxystudio/node-cross-spawn/commit/5ff3a07d9add449021d806e45c4168203aa833ff"><code>5ff3a07</code></a>
fix: disable regexp backtracking (<a
href="https://redirect.github.com/moxystudio/node-cross-spawn/issues/160">#160</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cross-spawn&package-manager=npm_and_yarn&previous-version=7.0.3&new-version=7.0.6)](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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/maplibre/maputnik/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-19 20:38:15 +02:00
bolo af01346279 Fixes #949 Add OSM OpenMapTiles to style gallery list (#956)
## Launch Checklist

Add OSM OpenMapTiles to style gallery list
Fixes #949

Before

![image](https://github.com/user-attachments/assets/49e39bdd-9920-4ba3-b68f-3e423fae8d7f)

After

![image](https://github.com/user-attachments/assets/370e8aaf-7b96-4ba6-a79d-362c38c3e736)



<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [X] Briefly describe the changes in this PR.
 - [X] Link to related issues.
- [X] Include before/after visuals or gifs if this PR includes visual
changes.
2024-11-14 23:53:13 +02:00
Filip Czaplicki dd6b40c943 Use printf for generating version.go (#933)
Flag -e is to "enable interpretation of backslash escapes"
Which might be a default, depends on a shell.

`sh -c 'echo "a\nb"'` on my OS prints
> a\nb

(no newline)

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->
 - [x] Briefly describe the changes in this PR.
2024-10-31 15:07:24 -04:00
Rob Labs 687f9abaf2 [user interface]: Use .png as the XYZ Tile URL format hint for raster & raster-dem tiles (#952)
## Launch Checklist

 - [x] Briefly describe the changes in this PR.

* When adding a new Raster or Raster-dem tile source, use `.png` as the
hint for the tile URL hint prompt.
* Currently, the user is prompted for a Vector tile source (e.g.,
`.pbf`)
* If a new Mapnik user already has their XYZ raster Tile URL, then they
may already know how to modify this text field.
* This change may be useful for new users and is intended for them.
* `.png` is a start. It could be `.webp` or `.jpg`, or `.jpg`, or in the
case of Esri there is no extension for the images.
* See [RobLabs.com/xyz](https://RobLabs.com/xyz) for sample XYZ raster
tile URLs

---

- [x] Include before/after visuals or gifs if this PR includes visual
changes.
* Steps to reproduce
* See [RobLabs.com/maputnik](https://roblabs.com/maputnik) for a working
version of this fix for Maputnik
* On top menu bar: *Data Sources* > In the *Add New Source* section >
Change *Source Type* to "Raster (Tile URLs)"
* There you will see prompt hint for a raster Tile instead of vector
tile `.pbf`.
* See the release notes for the National Park Service prototype release
for [Maputnik for National Park Service Park
Tiles](https://github.com/roblabs/maputnik/releases/tag/v2.1.1-nationalparkservice)
for more screen shots.

#### Before

`.pbf` may be confusing for those adding a Raster


![image](https://github.com/user-attachments/assets/f3869f2e-b2d6-4339-807d-7c14ddfecd29)

#### After


![image](https://github.com/user-attachments/assets/2bb06206-23c2-467c-981d-f939a9525d3d)

---

 - [x] Write tests for all new functionality.
 * See screen shots for functionality
 - ~~[] Add an entry to `CHANGELOG.md` under the `## main` section.~~
 *Not really a feature, so I will leave this out*
 - [ ] ~~Link to related issues.~~
2024-10-31 21:03:35 +02:00
teyotan 172d4d5278 Add tileSize field for raster and raster-dem tile sources (#946) (#947)
## Launch Checklist

Add `tileSize` field for raster and raster-dem tile sources. Solves #946


![Untitled](https://github.com/user-attachments/assets/833bf41b-0439-47f3-b9ff-5f289f437725)

### Not in this PR

i18n for `Tile Size`

 - [x] Briefly describe the changes in this PR.
 - [x] Link to related issues.
- [x] Include before/after visuals or gifs if this PR includes visual
changes.
 - [x] Write tests for all new functionality.
 - [x] Add an entry to `CHANGELOG.md` under the `## main` section.

---------

Co-authored-by: Harel M <harel.mazor@gmail.com>
Co-authored-by: Keitaroh Kobayashi <keita@kbys.me>
Co-authored-by: Hugues Tavernier <hugues.tavernier@protonmail.com>
Co-authored-by: Joscha <34318751+josxha@users.noreply.github.com>
2024-10-15 10:11:57 +03:00
dependabot[bot] b03af2c039 Bump rollup from 4.21.3 to 4.22.4 (#941)
Bumps [rollup](https://github.com/rollup/rollup) from 4.21.3 to 4.22.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rollup/rollup/releases">rollup's
releases</a>.</em></p>
<blockquote>
<h2>v4.22.4</h2>
<h2>4.22.4</h2>
<p><em>2024-09-21</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Fix a vulnerability in generated code that affects IIFE, UMD and CJS
bundles when run in a browser context (<a
href="https://redirect.github.com/rollup/rollup/issues/5671">#5671</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5670">#5670</a>:
refactor: Use object.prototype to check for reserved properties (<a
href="https://github.com/YuHyeonWook"><code>@​YuHyeonWook</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5671">#5671</a>:
Fix DOM Clobbering CVE (<a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
</ul>
<h2>v4.22.3</h2>
<h2>4.22.3</h2>
<p><em>2024-09-21</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Ensure that mutations in modules without side effects are observed
while properly handling transitive dependencies (<a
href="https://redirect.github.com/rollup/rollup/issues/5669">#5669</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5669">#5669</a>:
Ensure impure dependencies of pure modules are added (<a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
</ul>
<h2>v4.22.2</h2>
<h2>4.22.2</h2>
<p><em>2024-09-20</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Revert fix for side effect free modules until other issues are
investigated (<a
href="https://redirect.github.com/rollup/rollup/issues/5667">#5667</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5667">#5667</a>:
Partially revert <a
href="https://redirect.github.com/rollup/rollup/issues/5658">#5658</a>
and re-apply <a
href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a>
(<a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
</ul>
<h2>v4.22.1</h2>
<h2>4.22.1</h2>
<p><em>2024-09-20</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Revert <a
href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a>
&quot;stable chunk hashes&quot; while issues are being investigated</li>
</ul>
<h3>Pull Requests</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rollup/rollup/blob/master/CHANGELOG.md">rollup's
changelog</a>.</em></p>
<blockquote>
<h2>4.22.4</h2>
<p><em>2024-09-21</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Fix a vulnerability in generated code that affects IIFE, UMD and CJS
bundles when run in a browser context (<a
href="https://redirect.github.com/rollup/rollup/issues/5671">#5671</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5670">#5670</a>:
refactor: Use object.prototype to check for reserved properties (<a
href="https://github.com/YuHyeonWook"><code>@​YuHyeonWook</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5671">#5671</a>:
Fix DOM Clobbering CVE (<a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
</ul>
<h2>4.22.3</h2>
<p><em>2024-09-21</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Ensure that mutations in modules without side effects are observed
while properly handling transitive dependencies (<a
href="https://redirect.github.com/rollup/rollup/issues/5669">#5669</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5669">#5669</a>:
Ensure impure dependencies of pure modules are added (<a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
</ul>
<h2>4.22.2</h2>
<p><em>2024-09-20</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Revert fix for side effect free modules until other issues are
investigated (<a
href="https://redirect.github.com/rollup/rollup/issues/5667">#5667</a>)</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5667">#5667</a>:
Partially revert <a
href="https://redirect.github.com/rollup/rollup/issues/5658">#5658</a>
and re-apply <a
href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a>
(<a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
</ul>
<h2>4.22.1</h2>
<p><em>2024-09-20</em></p>
<h3>Bug Fixes</h3>
<ul>
<li>Revert <a
href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a>
&quot;stable chunk hashes&quot; while issues are being investigated</li>
</ul>
<h3>Pull Requests</h3>
<ul>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5663">#5663</a>:
chore(deps): update dependency inquirer to v11 (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot], <a
href="https://github.com/lukastaegert"><code>@​lukastaegert</code></a>)</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5664">#5664</a>:
chore(deps): lock file maintenance minor/patch updates (<a
href="https://github.com/renovate"><code>@​renovate</code></a>[bot])</li>
<li><a
href="https://redirect.github.com/rollup/rollup/pull/5665">#5665</a>:
fix: type in CI file (<a
href="https://github.com/YuHyeonWook"><code>@​YuHyeonWook</code></a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/rollup/rollup/commit/79c0aba353ca84c0e22c3cfe9eee433ba83f3670"><code>79c0aba</code></a>
4.22.4</li>
<li><a
href="https://github.com/rollup/rollup/commit/e2552c9e955e0a61f70f508200ee9f752f85a541"><code>e2552c9</code></a>
Fix DOM Clobbering CVE (<a
href="https://redirect.github.com/rollup/rollup/issues/5671">#5671</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/10ab90ea612f80de21c6c433c2d792eaf7b45f1c"><code>10ab90e</code></a>
refactor: Use object.prototype to check for reserved properties (<a
href="https://redirect.github.com/rollup/rollup/issues/5670">#5670</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/e1cba8e84a0c01dd16580ba7a2536a988dfb4e18"><code>e1cba8e</code></a>
4.22.3</li>
<li><a
href="https://github.com/rollup/rollup/commit/59cec3e86748369ce887f8fdb4ef7351335ab281"><code>59cec3e</code></a>
Ensure impure dependencies of pure modules are added (<a
href="https://redirect.github.com/rollup/rollup/issues/5669">#5669</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/b86ffd776cfa906573d36c3f019316d02445d9ef"><code>b86ffd7</code></a>
4.22.2</li>
<li><a
href="https://github.com/rollup/rollup/commit/d5ff63de9e317283f059bde06320bca11cf90488"><code>d5ff63d</code></a>
Partially revert <a
href="https://redirect.github.com/rollup/rollup/issues/5658">#5658</a>
and re-apply <a
href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a>
(<a
href="https://redirect.github.com/rollup/rollup/issues/5667">#5667</a>)</li>
<li><a
href="https://github.com/rollup/rollup/commit/0a821d931894f7f6f4ee33285b6f0925e10c8348"><code>0a821d9</code></a>
Create SECURITY.md</li>
<li><a
href="https://github.com/rollup/rollup/commit/76e962daca5b7352bf199c28fa0a10ad4745c5e7"><code>76e962d</code></a>
4.22.1</li>
<li><a
href="https://github.com/rollup/rollup/commit/68c23da8824e05e84460a9a5bf18c4e91912a52a"><code>68c23da</code></a>
Partially revert <a
href="https://redirect.github.com/rollup/rollup/issues/5644">#5644</a></li>
<li>Additional commits viewable in <a
href="https://github.com/rollup/rollup/compare/v4.21.3...v4.22.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rollup&package-manager=npm_and_yarn&previous-version=4.21.3&new-version=4.22.4)](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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/maplibre/maputnik/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-29 16:09:22 +03:00
huangli 6089cde302 Add scheme type options for vector/raster tile (#943)
## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [x] Briefly describe the changes in this PR.
 - [ ] Link to related issues.
- [x] Include before/after visuals or gifs if this PR includes visual
changes.
 - [ ] Write tests for all new functionality.
 - [x] Add an entry to `CHANGELOG.md` under the `## main` section.


![image](https://github.com/user-attachments/assets/39c275dc-b526-426b-9d46-db1f1635d7ee)
2024-09-29 15:01:30 +03:00
Ian Wagner 25cf61a825 Add links to tile provider authentication docs (#914)
This probably confused some people in the past, since vector tiles won't
even display an access denied image ;)

Before (no information on access keys and where to get them):

<img width="411" alt="image"
src="https://github.com/user-attachments/assets/8820fb20-bda4-460c-9cc9-8fec5daa480d">

After (add links to providers in info callout + add a field for Stadia
Maps API keys):

<img width="395" alt="image"
src="https://github.com/user-attachments/assets/91ee732c-b3f5-45f8-81a6-8d896a93f644">

---------

Co-authored-by: Harel M <harel.mazor@gmail.com>
Co-authored-by: Joscha <34318751+josxha@users.noreply.github.com>
Co-authored-by: Hugues Tavernier <hugues.tavernier@protonmail.com>
Co-authored-by: Keitaroh Kobayashi <keita@kbys.me>
2024-09-25 10:22:39 +03:00
dependabot[bot] 0f1000c5b0 Bump vite from 5.2.6 to 5.4.6 (#937)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 5.2.6 to 5.4.6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>create-vite@5.4.0</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/create-vite@5.4.0/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
<h2>create-vite@5.3.0</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/create-vite@5.3.0/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/v5.4.6/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->5.4.6 (2024-09-16)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: avoid DOM Clobbering gadget in
<code>getRelativeUrlFromDocument</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18115">#18115</a>)
(<a
href="https://github.com/vitejs/vite/commit/179b17773cf35c73ddb041f9e6c703fd9f3126af">179b177</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18115">#18115</a></li>
<li>fix: fs raw query (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18112">#18112</a>)
(<a
href="https://github.com/vitejs/vite/commit/6820bb3b9a54334f3268fc5ee1e967d2e1c0db34">6820bb3</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18112">#18112</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.4.5 (2024-09-13)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix(preload): backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18098">#18098</a>,
throw error preloading module as well (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18099">#18099</a>)
(<a
href="https://github.com/vitejs/vite/commit/faa2405e5d1da07a7c7fb6d48e887bf97a2f3dba">faa2405</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18098">#18098</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/18099">#18099</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.4.4 (2024-09-11)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17997">#17997</a>,
ensure req.url matches moduleByEtag URL to avoid incorrect 304 (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18078">#18078</a>)
(<a
href="https://github.com/vitejs/vite/commit/74a79c53b2286c91739d1473945012b5d206eddf">74a79c5</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17997">#17997</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/18078">#18078</a></li>
<li>fix: backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18063">#18063</a>,
allow scanning exports from <code>script module</code> in svelte (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18077">#18077</a>)
(<a
href="https://github.com/vitejs/vite/commit/d90ba40474aa1da8e722e1660ba739621238e5ac">d90ba40</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18063">#18063</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/18077">#18077</a></li>
<li>fix(preload): backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18046">#18046</a>,
allow ignoring dep errors (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18076">#18076</a>)
(<a
href="https://github.com/vitejs/vite/commit/8760293d6836dac554d1d6f214b8b09ed97cccd4">8760293</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/18046">#18046</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/18076">#18076</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.4.3 (2024-09-03)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: allow getting URL of JS files in publicDir (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17915">#17915</a>)
(<a
href="https://github.com/vitejs/vite/commit/943ece177e7709b3ba574e810afce347c51d4442">943ece1</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17915">#17915</a></li>
<li>fix: cjs warning respect the logLevel flag (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17993">#17993</a>)
(<a
href="https://github.com/vitejs/vite/commit/dc3c14f39fcd57867c8ae81b75ae768b53b4b880">dc3c14f</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17993">#17993</a></li>
<li>fix: improve CJS warning trace information (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17926">#17926</a>)
(<a
href="https://github.com/vitejs/vite/commit/5c5f82c84bb64309875b42eee9d4dd525ab42e8c">5c5f82c</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17926">#17926</a></li>
<li>fix: only remove entry assets handled by Vite core (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17916">#17916</a>)
(<a
href="https://github.com/vitejs/vite/commit/ebfaa7e6019783f308db5e759a6a67abb7cc626c">ebfaa7e</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17916">#17916</a></li>
<li>fix: waitForRequestIdle locked (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17982">#17982</a>)
(<a
href="https://github.com/vitejs/vite/commit/ad1376018a94b42540a8488d897cc520849e1228">ad13760</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17982">#17982</a></li>
<li>fix(css): fix directory index import in sass modern api (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17960">#17960</a>)
(<a
href="https://github.com/vitejs/vite/commit/9b001baa70c8489ac5550107c110a5dca281cda4">9b001ba</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17960">#17960</a></li>
<li>fix(css): fix sass <code>file://</code> reference (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17909">#17909</a>)
(<a
href="https://github.com/vitejs/vite/commit/561b940f6f963fbb78058a6e23b4adad53a2edb9">561b940</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17909">#17909</a></li>
<li>fix(css): fix sass modern source map (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17938">#17938</a>)
(<a
href="https://github.com/vitejs/vite/commit/d428e7e3a05f8da5ea00bb1b6a0827a5cc225899">d428e7e</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17938">#17938</a></li>
<li>fix(deps): bump tsconfck (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17990">#17990</a>)
(<a
href="https://github.com/vitejs/vite/commit/8c661b20e92f33eb2e3ba3841b20dd6f6076f1ef">8c661b2</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17990">#17990</a></li>
<li>fix(html): rewrite assets url in &lt;template&gt; (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17988">#17988</a>)
(<a
href="https://github.com/vitejs/vite/commit/413c86aa971bc1ad8958578c929f45a368799f74">413c86a</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17988">#17988</a></li>
<li>fix(preload): add crossorigin attribute in CSS link tags (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17930">#17930</a>)
(<a
href="https://github.com/vitejs/vite/commit/15871c75e0722adeda23f771fd6c45fecba4d118">15871c7</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17930">#17930</a></li>
<li>chore: reduce diffs with v6 branch (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17942">#17942</a>)
(<a
href="https://github.com/vitejs/vite/commit/bf9065aa13da6a519014c3bc1d34cfb1cb49ccca">bf9065a</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17942">#17942</a></li>
<li>chore(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17945">#17945</a>)
(<a
href="https://github.com/vitejs/vite/commit/cfb621e7a5a3e24d710a9af156e6855e73caf891">cfb621e</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17945">#17945</a></li>
<li>chore(deps): update all non-major dependencies (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17991">#17991</a>)
(<a
href="https://github.com/vitejs/vite/commit/0ca53cff9ff49108fcec75ff01d2445f9c2f2a4c">0ca53cf</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17991">#17991</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.4.2 (2024-08-20)<!-- raw HTML omitted
--></h2>
<ul>
<li>chore: remove stale TODOs (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17866">#17866</a>)
(<a
href="https://github.com/vitejs/vite/commit/e012f296df583bd133d26399397bd4ae49de1497">e012f29</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17866">#17866</a></li>
<li>refactor: remove redundant prepend/strip base (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17887">#17887</a>)
(<a
href="https://github.com/vitejs/vite/commit/3b8f03d789ec3ef1a099c884759bd4e61b03ce7c">3b8f03d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17887">#17887</a></li>
<li>fix: resolve relative URL generated by <code>renderBuiltUrl</code>
passed to module preload (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16084">#16084</a>)
(<a
href="https://github.com/vitejs/vite/commit/fac3a8ed6855c4ab3032957137b74f21ec501e72">fac3a8e</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16084">#16084</a></li>
<li>feat: support originalFilename (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17867">#17867</a>)
(<a
href="https://github.com/vitejs/vite/commit/7d8c0e2dcbdea3a3465a1d87e259988e82561035">7d8c0e2</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/17867">#17867</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.4.1 (2024-08-15)<!-- raw HTML omitted
--></h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vitejs/vite/commit/f9691767ad763720065cc7c5c7f369f97b4e7ea8"><code>f969176</code></a>
release: v5.4.6</li>
<li><a
href="https://github.com/vitejs/vite/commit/179b17773cf35c73ddb041f9e6c703fd9f3126af"><code>179b177</code></a>
fix: avoid DOM Clobbering gadget in
<code>getRelativeUrlFromDocument</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18115">#18115</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/6820bb3b9a54334f3268fc5ee1e967d2e1c0db34"><code>6820bb3</code></a>
fix: fs raw query (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18112">#18112</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/37881e71980ddbf6a93444c2d21b8ee6c076ad07"><code>37881e7</code></a>
release: v5.4.5</li>
<li><a
href="https://github.com/vitejs/vite/commit/faa2405e5d1da07a7c7fb6d48e887bf97a2f3dba"><code>faa2405</code></a>
fix(preload): backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18098">#18098</a>,
throw error preloading module as well (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18099">#18099</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/54c55dbffc86f21ae88a171a5af90c37876db226"><code>54c55db</code></a>
release: v5.4.4</li>
<li><a
href="https://github.com/vitejs/vite/commit/74a79c53b2286c91739d1473945012b5d206eddf"><code>74a79c5</code></a>
fix: backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/17997">#17997</a>,
ensure req.url matches moduleByEtag URL to avoid incorr...</li>
<li><a
href="https://github.com/vitejs/vite/commit/d90ba40474aa1da8e722e1660ba739621238e5ac"><code>d90ba40</code></a>
fix: backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18063">#18063</a>,
allow scanning exports from <code>script module</code> in svelte
(...</li>
<li><a
href="https://github.com/vitejs/vite/commit/8760293d6836dac554d1d6f214b8b09ed97cccd4"><code>8760293</code></a>
fix(preload): backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18046">#18046</a>,
allow ignoring dep errors (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/18076">#18076</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/ccbfc1a06816ccf45b93cffa9f8c2b94d3ad97d3"><code>ccbfc1a</code></a>
release: v5.4.3</li>
<li>Additional commits viewable in <a
href="https://github.com/vitejs/vite/commits/v5.4.6/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=5.2.6&new-version=5.4.6)](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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/maplibre/maputnik/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-18 07:01:15 +03:00
Bart Louwers fa4ece22cf Add Americana and Protomaps Light styles (#936) 2024-09-17 01:38:43 +02:00
Kevin Schaul d940c02faf Use same version number for web and desktop (#932)
With the new release process in place, I think keeping a separate
version number for desktop is confusing and unnecessary. This PR remove
it so the desktop version reports the version number of the web version
embedded in the binary.

## Launch Checklist

<!-- Thanks for the PR! Feel free to add or remove items from the
checklist. -->


 - [x] Briefly describe the changes in this PR.
 - [x] Add an entry to `CHANGELOG.md` under the `## main` section.
2024-09-05 09:19:32 -05:00
Joscha 00f431c50e add german translation, update docs (#931)
- add german translation (following the changes in
https://github.com/maplibre/maputnik/pull/929)
- using an alphabecial order for the languages
- update the documentation with a step-by-step guide
- add myself as a helping person for german
- move the helping-users list to the implementation of new features
- update CHANGELOG.md
- add a link to the l18n README in the root README


![image](https://github.com/user-attachments/assets/2834f2c5-2cb7-4848-a6bf-24149be979ae)
2024-09-03 08:24:26 +03:00
Harel M 60785f53bc Add translation process and small fixes (#930)
## Launch Checklist

This adds information about how to translate Maputnik and how to get in
touch with people who have translated in the past.
@keichan34, @jieme, @lhapaipai - I need your approval for this so that
people in the future will know to contact you in case text is being
added and they need help translating it.

CC: @ianthetechie 

I've also changed the word "Language" in the upper part of the screen so
that it won't be translated in case you accidentally switch language,
and you need to switch back.

I've also fixed some RTL issues in the CSS and updated the maplibre
components labels when the language changes.
2024-09-02 12:44:44 +03:00
Hugues Tavernier 32fa02d289 Add french language support (#929)
## Launch Checklist

Add french language support

## issues

in the left side menu the translated text takes up space, resulting in a
degraded UI


![maputnik-fr-1](https://github.com/user-attachments/assets/ef7c2048-cc4e-44d6-b386-5877983a5a81)
2024-09-01 09:58:15 +03:00
Kevin Schaul bab95cd6b1 Remove release of web code (#928) 2024-08-30 07:28:06 +03:00
github-actions[bot] 482e6ec545 Bump version to 2.1.1 (#927)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

---------

Co-authored-by: HarelM <3269297+HarelM@users.noreply.github.com>
Co-authored-by: Harel M <harel.mazor@gmail.com>
2024-08-29 22:14:08 +03:00
Kevin Schaul ca45bcce86 Fix release-notes.js (#926)
Was missing trailing `, causing [this
failure](https://github.com/maplibre/maputnik/actions/runs/10619718712/job/29437920164)
2024-08-29 22:11:14 +03:00
github-actions[bot] 4dd34e99fd Bump version to 2.1.0 (#925)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

---------

Co-authored-by: HarelM <3269297+HarelM@users.noreply.github.com>
Co-authored-by: Harel M <harel.mazor@gmail.com>
2024-08-29 20:22:26 +03:00
dependabot[bot] 3773acd5be Bump micromatch from 4.0.5 to 4.0.8 (#923)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5
to 4.0.8.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/micromatch/micromatch/releases">micromatch's
releases</a>.</em></p>
<blockquote>
<h2>4.0.8</h2>
<p>Ultimate release that fixes both CVE-2024-4067 and CVE-2024-4068. We
consider the issues low-priority, so even if you see automated scanners
saying otherwise, don't be scared.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md">micromatch's
changelog</a>.</em></p>
<blockquote>
<h2>[4.0.8] - 2024-08-22</h2>
<ul>
<li>backported CVE-2024-4067 fix (from v4.0.6) over to 4.x branch</li>
</ul>
<h2>[4.0.7] - 2024-05-22</h2>
<ul>
<li>this is basically v4.0.5, with some README updates</li>
<li><strong>it is vulnerable to CVE-2024-4067</strong></li>
<li>Updated braces to v3.0.3 to avoid CVE-2024-4068</li>
<li>does NOT break API compatibility</li>
</ul>
<h2>[4.0.6] - 2024-05-21</h2>
<ul>
<li>Added <code>hasBraces</code> to check if a pattern contains
braces.</li>
<li>Fixes CVE-2024-4067</li>
<li><strong>BREAKS API COMPATIBILITY</strong></li>
<li>Should be labeled as a major release, but it's not.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/micromatch/micromatch/commit/8bd704ec0d9894693d35da425d827819916be920"><code>8bd704e</code></a>
4.0.8</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/a0e68416a44da10f3e4e30845ab95af4fd286d5a"><code>a0e6841</code></a>
run verb to generate README documentation</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/4ec288484f6e8cccf597ad3d43529c31d0f7a02a"><code>4ec2884</code></a>
Merge branch 'v4' into hauserkristof-feature/v4.0.8</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/03aa8052171e878897eee5d7bb2ae0ae83ec2ade"><code>03aa805</code></a>
Merge pull request <a
href="https://redirect.github.com/micromatch/micromatch/issues/266">#266</a>
from hauserkristof/feature/v4.0.8</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/814f5f70efcd100ca9d29198867812a3d6ab91a8"><code>814f5f7</code></a>
lint</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/67fcce6a1077c2faf5ad0c5f998fa70202cc5dae"><code>67fcce6</code></a>
fix: CHANGELOG about braces &amp; CVE-2024-4068, v4.0.5</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/113f2e3fa7cb30b429eda7c4c38475a8e8ba1b30"><code>113f2e3</code></a>
fix: CVE numbers in CHANGELOG</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/d9dbd9a266686f44afb38da26fe016f96d1ec04f"><code>d9dbd9a</code></a>
feat: updated CHANGELOG</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/2ab13157f416679f54e3a32b1425e184bd16749e"><code>2ab1315</code></a>
fix: use actions/setup-node@v4</li>
<li><a
href="https://github.com/micromatch/micromatch/commit/1406ea38f3e24b29f4d4f46908d5cffcb3e6c4ce"><code>1406ea3</code></a>
feat: rework test to work on macos with node 10,12 and 14</li>
<li>Additional commits viewable in <a
href="https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=micromatch&package-manager=npm_and_yarn&previous-version=4.0.5&new-version=4.0.8)](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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/maplibre/maputnik/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-29 20:13:19 +03:00
Kevin Schaul 6887d70194 Make build scripts executable (#924)
Hopefully will fix CI issue merged in #922

cc @HarelM
2024-08-29 19:52:56 +03:00
Kevin Schaul 66c5a5c953 Update desktop build to pull from this repo (#922)
Previously the desktop build lived in a separate repo and had to
download a released version of the maputnik editor source code. Now that
both live in the same repo, the desktop version can simply run the
maputnik build command and use those generated files.

This commit also removes the ci-desktop workflow, which is not needed.
The regular ci workflow already built the desktop version (this commit
also fixes that build).

Fixes #919

If this works for you all, it would be lovely to create a new tag or
release on GitHub for two reasons:
1. So the latest binaries are easier to locate, and
2. So I can update my [submission to
homebrew](https://github.com/Homebrew/homebrew-core/commit/6e536ff007ef0bea5a3591af5678eb3152908cc9)
to make installation easier (for os x users at least)
2024-08-29 17:07:24 +03:00
Harel M 8184ac8393 Update geocoder to 1.6.0 (#920)
This is to update geocoder to latest version which now have types and is
fully modernized.
2024-08-21 08:56:59 +03:00
Joleen Knepp 6a0d2e8ee5 Added Simplified Chinese language support (#921)
Added Simplified Chinese language support
2024-08-21 07:17:31 +03:00
Keitaroh Kobayashi 58edd262b0 Add react-i18next for multi-language support (#917)
This is a rough start on adding react-i18next. I'll be working on adding
more translatable strings and translations in the coming days. I'm going
to need to wrap class components in HOCs, so let me know if there's
something I should be fixing before doing that. I'm thinking now to keep
the exported class names exactly the same, and rename the existing
classes by prefixing an `I` (for internal). For example:

```
export default class AppToolbar ...
```

becomes

```
class IAppToolbar ...
const AppToolbar = withTranslation()(IAppToolbar);
export default AppToolbar;
```

I'll be able to contribute Japanese strings (I've talked to a couple
people on my team and they'll be happy to help as well), so that's the
language I decided to go with in this PR.

Closes #746

---------

Co-authored-by: Ko Nagase <nagase@georepublic.co.jp>
Co-authored-by: Harel M <harel.mazor@gmail.com>
2024-08-19 12:43:04 +03:00
Ian Wagner 35840409b8 Add Stadia Outdoors style (#913)
* Adds the Stadia Outdoors style (anticipating the question: the
MapLibre domain and localhost development are allowlisted)
* Minor fixes to README as the npm commands seem to have changed
slightly
* Reorder the empty style to the beginning; seems the logical place for
it to me, but open for discussion
2024-07-25 22:50:24 -04:00
Kacper Golinski d0f6e0fadb Update feature id label to $id in feature properties popup (#912)
Current label, "Feature ID", creates a little bit of confusion. It's not
clear that this label isn't really part of the feature properties.

For example, when we want to filter by feature id, we need to use `$id`

```
[==, "$id," 123] 
```
2024-07-12 21:18:23 +03:00
Bart Louwers 0de304ca3e Add Versatiles Colorful as example style (#908)
These are great looking permissively licensed styles maintained by a
passionate open source communities. I think they should be included in
the example styles. 🙂

The thumbnails were uploaded to GitHub and should be available pretty
much forever, I chose to triple the pixel density because the other
thumbnails look bad on my high res monitor.

<img width="573" alt="Screenshot 2024-06-22 at 12 25 56"
src="https://github.com/maplibre/maputnik/assets/649392/e3138a0f-bfca-4949-915d-f9fc3e9bb346">
2024-06-24 08:09:25 +03:00
dependabot[bot] 48bf25c1b0 Bump braces from 3.0.2 to 3.0.3 (#904)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to
3.0.3.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/micromatch/braces/commit/74b2db2938fad48a2ea54a9c8bf27a37a62c350d"><code>74b2db2</code></a>
3.0.3</li>
<li><a
href="https://github.com/micromatch/braces/commit/88f1429a0f47e1dd3813de35211fc97ffda27f9e"><code>88f1429</code></a>
update eslint. lint, fix unit tests.</li>
<li><a
href="https://github.com/micromatch/braces/commit/415d660c3002d1ab7e63dbf490c9851da80596ff"><code>415d660</code></a>
Snyk js braces 6838727 (<a
href="https://redirect.github.com/micromatch/braces/issues/40">#40</a>)</li>
<li><a
href="https://github.com/micromatch/braces/commit/190510f79db1adf21d92798b0bb6fccc1f72c9d6"><code>190510f</code></a>
fix tests, skip 1 test in test/braces.expand</li>
<li><a
href="https://github.com/micromatch/braces/commit/716eb9f12d820b145a831ad678618731927e8856"><code>716eb9f</code></a>
readme bump</li>
<li><a
href="https://github.com/micromatch/braces/commit/a5851e57f45c3431a94d83fc565754bc10f5bbc3"><code>a5851e5</code></a>
Merge pull request <a
href="https://redirect.github.com/micromatch/braces/issues/37">#37</a>
from coderaiser/fix/vulnerability</li>
<li><a
href="https://github.com/micromatch/braces/commit/2092bd1fb108d2c59bd62e243b70ad98db961538"><code>2092bd1</code></a>
feature: braces: add maxSymbols (<a
href="https://github.com/micromatch/braces/issues/">https://github.com/micromatch/braces/issues/</a>...</li>
<li><a
href="https://github.com/micromatch/braces/commit/9f5b4cf47329351bcb64287223ffb6ecc9a5e6d3"><code>9f5b4cf</code></a>
fix: vulnerability (<a
href="https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727">https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727</a>)</li>
<li><a
href="https://github.com/micromatch/braces/commit/98414f9f1fabe021736e26836d8306d5de747e0d"><code>98414f9</code></a>
remove funding file</li>
<li><a
href="https://github.com/micromatch/braces/commit/665ab5d561c017a38ba7aafd92cc6655b91d8c14"><code>665ab5d</code></a>
update keepEscaping doc (<a
href="https://redirect.github.com/micromatch/braces/issues/27">#27</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/micromatch/braces/compare/3.0.2...3.0.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/maplibre/maputnik/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-16 13:08:52 +03:00
Harel M c82c6158e6 Update Cypress related packages (#903)
Let's see if this adds the relevant information to the CI run details.
CC: @ShellyDCMS
2024-05-29 10:47:14 +03:00
bolo 41cd7dfad1 Update OpenMapTiles styles to the latest version fixes #901 (#902)
Update version numbers of OpenMapTiles styles.

These styles are updated with the latest version (v3.15) of
OpenMapTiles.

Fixes #901
2024-05-20 14:43:00 +03:00
Kevin Schaul 7591b031ce Upgrade Cypress to fix CI errors (#897)
This upgrade should fix the error of Firefox tests failing. See this
issue for more details:
https://github.com/cypress-io/cypress/issues/29190
2024-04-16 08:26:13 +03:00
Kevin Schaul 95b5324fd3 Fix desktop ci artifacts path (#896)
The `working-directory` option does not apply to the artifacts steps, so
we have to specify the full paths
2024-04-12 16:02:53 -05:00
dependabot[bot] f34529ef06 Bump vite from 5.2.2 to 5.2.6 (#895)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 5.2.2 to 5.2.6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>create-vite@5.2.3</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/create-vite@5.2.3/packages/create-vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->5.2.6 (2024-03-24)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: <code>fs.deny</code> with globs with directories (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16250">#16250</a>)
(<a href="https://github.com/vitejs/vite/commit/ba5269c">ba5269c</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16250">#16250</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.2.5 (2024-03-24)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: avoid SSR requests in waitForRequestIdle (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16246">#16246</a>)
(<a href="https://github.com/vitejs/vite/commit/7093f77">7093f77</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16246">#16246</a></li>
<li>docs: clarify enforce vs hook.order (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16226">#16226</a>)
(<a href="https://github.com/vitejs/vite/commit/3a73e48">3a73e48</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16226">#16226</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.2.4 (2024-03-23)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: dont resolve imports with malformed URI (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16244">#16244</a>)
(<a href="https://github.com/vitejs/vite/commit/fbf69d5">fbf69d5</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16244">#16244</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.2.3 (2024-03-22)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: handle warmup request error correctly (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16223">#16223</a>)
(<a href="https://github.com/vitejs/vite/commit/d7c5256">d7c5256</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16223">#16223</a></li>
<li>fix: skip encode if is data uri (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16233">#16233</a>)
(<a href="https://github.com/vitejs/vite/commit/8617e76">8617e76</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16233">#16233</a></li>
<li>fix(optimizer): fix <code>optimizeDeps.include</code> glob syntax
for <code>./*</code> exports (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16230">#16230</a>)
(<a href="https://github.com/vitejs/vite/commit/f184c80">f184c80</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16230">#16230</a></li>
<li>fix(runtime): fix sourcemap with <code>prepareStackTrace</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16220">#16220</a>)
(<a href="https://github.com/vitejs/vite/commit/dad7f4f">dad7f4f</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16220">#16220</a></li>
<li>chore: <code>utf8</code> replaced with <code>utf-8</code> (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16232">#16232</a>)
(<a href="https://github.com/vitejs/vite/commit/9800c73">9800c73</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/16232">#16232</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vitejs/vite/commit/7369016d8a0f26ad9200cf7fd0e2045ca9fd1a41"><code>7369016</code></a>
release: v5.2.6</li>
<li><a
href="https://github.com/vitejs/vite/commit/ba5269cca81de3f5fbb0f49d58a1c55688043258"><code>ba5269c</code></a>
fix: <code>fs.deny</code> with globs with directories (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16250">#16250</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/7a2791ce174933ae3afc29f596491cc0c67b9618"><code>7a2791c</code></a>
release: v5.2.5</li>
<li><a
href="https://github.com/vitejs/vite/commit/7093f779b7db2e0fdcb3f41affd76696b783a5fc"><code>7093f77</code></a>
fix: avoid SSR requests in waitForRequestIdle (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16246">#16246</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/3a73e485cd4c08954fcb06698b5f721dea6e9f44"><code>3a73e48</code></a>
docs: clarify enforce vs hook.order (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16226">#16226</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/6a07243a0ecc06a81e87d5b3de7b88023a045e6b"><code>6a07243</code></a>
release: v5.2.4</li>
<li><a
href="https://github.com/vitejs/vite/commit/fbf69d5f6cef335fc18640fed7da16593b13c9b3"><code>fbf69d5</code></a>
fix: dont resolve imports with malformed URI (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16244">#16244</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/a67f9f69456439baa727823ac604a68f7279b3bb"><code>a67f9f6</code></a>
release: v5.2.3</li>
<li><a
href="https://github.com/vitejs/vite/commit/8617e7638ec105c7a6019a7ebac3b3185297b90d"><code>8617e76</code></a>
fix: skip encode if is data uri (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16233">#16233</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/f184c8032bec6e668265a98d254a442e1024b6f3"><code>f184c80</code></a>
fix(optimizer): fix <code>optimizeDeps.include</code> glob syntax for
<code>./*</code> exports (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/16">#16</a>...</li>
<li>Additional commits viewable in <a
href="https://github.com/vitejs/vite/commits/v5.2.6/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=5.2.2&new-version=5.2.6)](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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/maplibre/maputnik/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-03 20:26:34 +03:00
IGUCHI Kanahiro a73b11805d localIdeographFontFamily: false to load CJK fonts (#893)
close #892 

this changes works well for CJK fonts.

<img width="736" alt="Screenshot 2024-03-25 at 22 04 36"
src="https://github.com/maplibre/maputnik/assets/20744195/adb0295e-5428-4773-b216-8f380e2dcb05">
2024-03-27 01:12:17 +02:00
Harel M ff15b77b7f Update React to version 18 and other deps (#890)
This PR aims at updating some packages.
I'll keep this in draft until I'll be more happy with the results.
Current setup seems to work, I'll let the CI run and see how bad this
is.
Packages that needs to be updated/replaces:
- [x] ~autocompete - The only warning left in the console is related to
the autocomplete, which probably needs to be updated since it's a
package that wasn't updated in the last 6 years.~ #611
- [x] ~Codemirror is also something that will need an update, but it
looks too complicated at this point in time, so let's see how this
goes.~ #891
- [ ] react-color
- [x] ~react-aria-menubutton~ #846
- [ ] Others?

Most of the changes here are related to types, which is good.
2024-03-21 22:51:29 +02:00
Harel M 355b663e7e Another attempt to fix the inspect issues (#889)
Fixes #871

- #871 

In case of same sources, calling the render method when the map style
changes, but not right away to let the map load the sources should fix
the issue.
2024-03-14 21:02:49 +02:00
Harel M 3c043fd5e0 Replace mapbox-gl-inspect with maplibre-gl-inspect (#888)
This hopefully fixes #871 

- #871 

I still need to update maplibre-gl-inspect to allow this to be fixed.
2024-03-13 22:48:01 +02:00
Harel M 5f54dd0ccf Temp fix using patch-package for maplibre-inspect issue (#885)
This is a temporary fix for:
 - #871

The fix is using `patch-package` to fix the part of the code that is
causing the issue, I believe.
Initial tests shows that this is fixing the issue, I hope it is not
introducing other issues.
A proper fix and also using the maplibre package will be done once a
repo is migrated as can be expected after the following PR is resolved:
- https://github.com/maplibre/maplibre/issues/359
2024-03-09 23:03:23 +02:00
Harel M 3727f5da48 Improve inspect hover UI (#879)
Fixes #868
- #868

It solves all the block within blocks and all kind of controls that are
not required which creates gaps.
I use a simple table, so the width is dynamic but it is always aligned
for all the properties and the features.

![image](https://github.com/maplibre/maputnik/assets/3269297/75138b00-ec7b-4e8d-b51b-f8ff6abcd5cb)

Vary basic stuff.
There's still the layer popup, which I'm not sure I know what it is and
might need to be fixed as well.
CC: @zstadler
2024-02-21 07:17:28 +02:00
Yuri Astrakhan 079c5f67cc Merge entire history from desktop repo to /desktop
Preserve history of the maputnik/desktop repository,
but move related files to `/desktop` directory,
and adjust the ci script to use it.
2024-02-12 13:52:35 -05:00
Yuri Astrakhan a304d4e060 Renamed ci to ci-desktop 2024-02-12 13:48:37 -05:00
Kevin Schaul 7ac1b03b5a Move into /desktop dir
For eventual merge into maplibre/maputnik repo
2024-02-12 11:06:45 -06:00
glebpinigin b9e32894b3 Readme.md container port changed to 80 (#881)
Activating maputnik with `docker run` requires to bind port 80 from
container and not 8888, because nginx is running with default config and
listening port 80

For `npm run` port 8888 is explicitly set up [in
config](https://github.com/maplibre/maputnik/blob/bc5ecfade6801e16df339a8caba766d28b88de56/vite.config.ts#L8).
2024-02-08 23:35:46 +02:00
Harel M bc5ecfade6 Removes number conversion for dirty input (#878)
Fixes #870

- #870

This regression bug was introduced as part of the refactoring of
typescript.
Here:
- #848

I've added tests to cover the scenario so that it won't happen again,
hopefully.
2024-02-07 10:32:19 +02:00
HarelM c84c7a7b96 Fix redo issue 2024-02-04 16:37:47 +02:00
Harel M cb77c6b4e2 Add nominatim search to maputnik (#873)
This replaces PR:
- #785

Before:

![image](https://github.com/maplibre/maputnik/assets/3269297/95297211-4108-43d8-8a43-42f87e2fbe16)
After:

![image](https://github.com/maplibre/maputnik/assets/3269297/86c3ae58-1bb7-4d2c-8ad9-6b84a21c96f7)

This is based on the geocoder example in maplibre docs:
https://maplibre.org/maplibre-gl-js/docs/examples/geocoder/
2024-02-04 11:37:23 +02:00
Harel M ea42f434eb Update MapLibre to version 4 (#872)
This updates maplibre from a pre-release to an official release.
It also removed the pre.2 from maputnik as maputnik is now published and
there's no reason to keep it in pre-release version name.
This doesn't mean maputnik has an npm package at this point though.
2024-02-04 10:01:22 +02:00
dependabot[bot] 6f82c12861 Bump vite from 5.0.10 to 5.0.12 (#865)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 5.0.10 to 5.0.12.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/v5.0.12/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->5.0.12 (2024-01-19)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: await <code>configResolved</code> hooks of worker plugins (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15597">#15597</a>)
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15605">#15605</a>)
(<a href="https://github.com/vitejs/vite/commit/ef89f80">ef89f80</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15597">#15597</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/15605">#15605</a></li>
<li>fix: fs deny for case insensitive systems (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15653">#15653</a>)
(<a href="https://github.com/vitejs/vite/commit/91641c4">91641c4</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15653">#15653</a></li>
</ul>
<h2><!-- raw HTML omitted -->5.0.11 (2024-01-05)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: don't pretransform classic script links (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15361">#15361</a>)
(<a href="https://github.com/vitejs/vite/commit/19e3c9a">19e3c9a</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15361">#15361</a></li>
<li>fix: inject <code>__vite__mapDeps</code> code before sourcemap file
comment (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15483">#15483</a>)
(<a href="https://github.com/vitejs/vite/commit/d2aa096">d2aa096</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15483">#15483</a></li>
<li>fix(assets): avoid splitting <code>,</code> inside base64 value of
<code>srcset</code> attribute (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15422">#15422</a>)
(<a href="https://github.com/vitejs/vite/commit/8de7bd2">8de7bd2</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15422">#15422</a></li>
<li>fix(html): handle offset magic-string slice error (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15435">#15435</a>)
(<a href="https://github.com/vitejs/vite/commit/5ea9edb">5ea9edb</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15435">#15435</a></li>
<li>chore(deps): update dependency strip-literal to v2 (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15475">#15475</a>)
(<a href="https://github.com/vitejs/vite/commit/49d21fe">49d21fe</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15475">#15475</a></li>
<li>chore(deps): update tj-actions/changed-files action to v41 (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15476">#15476</a>)
(<a href="https://github.com/vitejs/vite/commit/2a540ee">2a540ee</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15476">#15476</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vitejs/vite/commit/ee81e196769c102a6b1bf30f8444ccde236e71d5"><code>ee81e19</code></a>
release: v5.0.12</li>
<li><a
href="https://github.com/vitejs/vite/commit/91641c4da0a011d4c5352e88fc68389d4e1289a5"><code>91641c4</code></a>
fix: fs deny for case insensitive systems (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15653">#15653</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/ef89f8092f0eb1d8fd7d21256e6af8c4e64fe9b2"><code>ef89f80</code></a>
fix: await <code>configResolved</code> hooks of worker plugins (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15597">#15597</a>)
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15605">#15605</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/b44c49302ffbf0c82f984f6219ed6376d1e4552a"><code>b44c493</code></a>
release: v5.0.11</li>
<li><a
href="https://github.com/vitejs/vite/commit/d2aa0969ee316000d3b957d7e879f001e85e369e"><code>d2aa096</code></a>
fix: inject <code>__vite__mapDeps</code> code before sourcemap file
comment (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15483">#15483</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/2a540eee82f9a31deff8215bdbdccfa46d494a06"><code>2a540ee</code></a>
chore(deps): update tj-actions/changed-files action to v41 (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15476">#15476</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/5ea9edbc9ceb991e85f893fe62d68ed028677451"><code>5ea9edb</code></a>
fix(html): handle offset magic-string slice error (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15435">#15435</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/49d21fe1feaac30dee0196bd484480a8000a4363"><code>49d21fe</code></a>
chore(deps): update dependency strip-literal to v2 (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15475">#15475</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/8de7bd2b68db27b83d9484cc8d4e26436615168e"><code>8de7bd2</code></a>
fix(assets): avoid splitting <code>,</code> inside base64 value of
<code>srcset</code> attribute (#...</li>
<li><a
href="https://github.com/vitejs/vite/commit/19e3c9a8a16847486fbad8a8cd48fc771b1538bb"><code>19e3c9a</code></a>
fix: don't pretransform classic script links (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15361">#15361</a>)</li>
<li>See full diff in <a
href="https://github.com/vitejs/vite/commits/v5.0.12/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=5.0.10&new-version=5.0.12)](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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/maplibre/maputnik/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-04 09:18:19 +02:00
HarelM 3b95b25777 Remove unneed console.log 2024-01-13 14:38:56 +02:00
Harel M 1da65f2116 Fix missing logo (#863)
Fixes #861
This should hopefully address the last item in the below issue of the
missing logo.
I tested it locally and it seems to be working as expected, I hope this
will be the case once deployed.
- #861
2024-01-12 18:46:10 +02:00
Harel M a62db148cd Remove Storybook, cleanups (#860)
1. Changed references to point to this new repo
2. Fixed docker image publishing to point to ghcr.io.
3. Remove survey link - the survey is closed and there's no point in
keeping it.
4. Remove storybook - Basically a storybook is the ability to look at
components and see how they look and interact with them.
It's a powerful tool for developing component library with "live"
documentation.
But it's an overkill for this project and I would like to reduce
maintenance costs.
Currently all the "stories" are in javascript and not in typescript and
it feels like a waste of time to try and maintain it, along with
updating the storybook library itself and everything around it.
2024-01-12 10:59:57 +02:00
HarelM 6ed10a862f Update pages deploy on every commit to main 2024-01-11 22:57:07 +02:00
HarelM 123e84f19b login to ghcr.io 2024-01-11 22:29:46 +02:00
HarelM d9b1b6f3ae Fix docker deploy, remove unneeded files 2024-01-11 22:24:47 +02:00
Harel M e0cef99c07 Update LICENSE 2024-01-11 22:11:18 +02:00
Harel M eb48bed32a Update MapLibre dependencies, add terrain editing (#859)
This PR aims at updating MapLibre dependencies.

The main goal of this update is to allow adding terrain specification to
the editor.
This requires version 4 of maplibre so currently it will use the
pre-release.
2024-01-11 22:05:47 +02:00
Kevin Schaul 7265bf0aa4 Refactor into a go module, update dependencies (#18)
* Refactor into a go module

`go get` is no longer supported outside of a go module. This commit
converts the project into a go module, moving dependencies into a go.mod
file.

* Use go.rice instead of go-bindata-assetfs

go.rice appears to be maintained and more popular

* Edit dependencies

* Pin to specific versions

* Updating workflows

* Fix syntax, I hope

* Update go

* Increment version number

* Version number

* version number
2023-07-18 16:44:57 +02:00
pathmapper c9504fcaed Merge pull request #16 from pathmapper/static
Add option to serve directory under /static/ (supersedes #2)
2020-07-24 18:31:30 +02:00
pathmapper b7ef0943f4 Fix formatting 2020-07-23 20:25:24 +02:00
pathmapper 4661677387 Add docs 2020-07-23 20:19:33 +02:00
pathmapper 77ed14a340 Update desktop version number 2020-07-23 19:52:38 +02:00
pathmapper e24d390f7c Fix build error 2020-07-23 19:33:23 +02:00
pathmapper 698fdfc958 Fix syntax error 2020-07-23 19:28:34 +02:00
pathmapper 77b3655c3c Add option to serve directory under /static/ (from #2) 2020-07-23 19:22:43 +02:00
pathmapper c264cd1771 Merge pull request #15 from pathmapper/update_desktop_version
Update desktop version number
2020-06-03 15:08:54 +02:00
pathmapper 1495d11462 Update desktop version number
The makefile was updated in https://github.com/maputnik/desktop/pull/14
2020-06-03 15:05:47 +02:00
pathmapper fda11e52e7 Merge pull request #14 from pathmapper/makefile_editor
Update for use in the editor ci workflow
2020-05-31 21:43:57 +02:00
pathmapper d9e3aa6ac4 Update for use in the editor ci workflow 2020-05-31 21:41:02 +02:00
pathmapper aeca95a27f Merge pull request #13 from pathmapper/rename_ci
Rename ci
2020-05-31 21:30:22 +02:00
pathmapper 7dfcdac202 Rename ci 2020-05-31 21:23:52 +02:00
pathmapper 4f156ee3fd Merge pull request #12 from pathmapper/gh-actions
Replace Travis with Github Actions
2020-05-31 21:14:39 +02:00
pathmapper 6d00214f55 Update README.md 2020-05-31 21:09:02 +02:00
pathmapper 1e7b6e809c Remove Travis 2020-05-31 21:05:00 +02:00
pathmapper cdcc61e234 Create go.yml 2020-05-31 21:04:11 +02:00
pathmapper 9c63172d36 Merge pull request #11 from pathmapper/travis
Travis: Update go version and use OSM Liberty
2020-05-28 23:00:06 +02:00
pathmapper 6f21fd8dff Use OSM Liberty style 2020-05-28 22:56:08 +02:00
pathmapper 0e788c5841 Update go version 2020-05-28 22:55:39 +02:00
pathmapper 7229df704a Merge pull request #10 from pathmapper/1.7.0
Update Editor to v1.7.0
2020-05-28 22:08:56 +02:00
pathmapper 686fd27b35 Update Editor to v1.7.0 2020-05-28 22:05:48 +02:00
pathmapper 293342e4fb Update Desktop version number 2020-05-28 22:04:40 +02:00
pathmapper 03d9b946e7 Merge pull request #9 from miya0001/patch
Fixed the error `cannot use cli.StringFlag literal ...`
2020-05-28 21:54:55 +02:00
Takayuki Miyauchi 4a3825fa89 fixed the error cannot use cli.StringFlag literal ... 2020-02-21 07:24:00 +09:00
pathmapper 5371b0f9fb Merge pull request #8 from pathmapper/editor_1.6.1
Update editor to v1.6.1
2019-10-13 17:50:22 +02:00
pathmapper 538cea7f45 Update editor to v1.6.1 2019-10-13 14:28:42 +02:00
pathmapper fdfc470ccc Merge pull request #6 from pathmapper/update_versions
Update version numbers
2019-10-10 14:30:14 +02:00
pathmapper 3153eea1da Update version numbers 2019-10-08 22:29:45 +02:00
pathmapper 8471d0af3d Merge pull request #5 from JesseCrocker/choose-listen-port
Add option to choose a listening port
2019-10-08 22:20:05 +02:00
Jesse Crocker 1ce2d59b9b Add --port option to readme 2019-09-04 09:21:56 -06:00
Jesse Crocker d951256b1c Add option to choose a listening port 2019-04-15 12:29:15 -06:00
pathmapper ec753869d5 Merge pull request #3 from maputnik/update-release-to-v1.5.0
Update release to v1.5.0
2019-02-09 14:07:52 +01:00
Lukas Welte 2e58be1c90 Switch around editor and desktop in version field so that it prints nicer 2019-02-09 13:47:58 +01:00
Lukas Welte 562a4f7322 Remove appveyor status from README 2019-02-09 13:45:45 +01:00
Lukas Welte e52a63e1dd Remove the deprecation warning from the readme 2019-02-09 12:47:47 +01:00
Lukas Welte 4533fd06ed Have Desktop version (changes in Desktop code) and editor version in version field 2019-02-09 12:39:32 +01:00
pathmapper b4fc62632c Merge pull request #4 from pathmapper/pathmapper-update-readme
Update README.md
2019-02-09 10:28:15 +01:00
pathmapper e3a9a8a38c Update README.md 2019-02-09 10:09:05 +01:00
pathmapper 7c4e982fb3 Merge pull request #1 from fawick/master
Fix README.md
2019-02-09 09:51:13 +01:00
Lukas Welte 85dd22b09a Use recent go version 2019-02-07 17:58:11 +01:00
Lukas Welte 18e15eeb5c remove complete bin folder in make clean 2019-02-07 17:35:23 +01:00
Lukas Welte 3a45b8dd41 Move dependencies into Makefile 2019-02-07 17:33:38 +01:00
Lukas Welte 5b8412765b Linux should be enough to build go for linux, windows and mac 2019-02-07 17:29:49 +01:00
Lukas Welte 69519df82f Use folders for different maputnik executables 2019-02-07 17:25:27 +01:00
Lukas Welte 8052701021 Use go cross compile to build once with travis for all platforms 2019-02-07 17:18:48 +01:00
Lukas Welte 35c0150522 Download release instead of building editor from source 2019-02-07 16:05:02 +01:00
Lukas Welte c55278e7da Remove editor submodule 2019-02-07 15:56:29 +01:00
Lukas Martinelli d3ecef3de6 Update README.md 2018-04-15 16:14:22 +05:30
Fabian Wickborn 3ef0a90de4 Fix README.md 2017-10-25 20:33:45 +02:00
Lukas Martinelli 87290889fd Upgrade to v1.0.2 2017-01-25 13:57:27 +01:00
Lukas Martinelli 1997e31b6b Build latest 2017-01-18 13:06:43 +01:00
Lukas Martinelli 5b21a2fa4f Build latest 2017-01-18 13:03:50 +01:00
Lukas Martinelli d314add6a9 Release v1.0.1 of CLI 2017-01-16 10:18:27 +01:00
Lukas Martinelli 50d61cdb0e Move to v1.0.0 2017-01-13 21:56:06 +01:00
Lukas Martinelli 4ffea21c5f Upgrade to latest Maputnik 2017-01-10 14:57:13 +01:00
Lukas Martinelli d29a79e79f Update editor 2017-01-08 17:15:57 +01:00
Lukas Martinelli 004177a3c8 Kill watch ocmmand after 5s 2017-01-08 13:40:38 +01:00
Lukas Martinelli b9e70a943f Update x/sys 2017-01-08 13:29:20 +01:00
Lukas Martinelli de853eb2d7 Use Go 1.7 explicitely in Travis 2017-01-08 13:29:20 +01:00
Lukas Martinelli f242c2c015 Update README.md 2017-01-08 10:45:01 +01:00
Lukas Martinelli d895cf079c Execute maputnik in travis 2017-01-08 10:39:12 +01:00
Lukas Martinelli 147cbc1580 Include subdirectories in embedded assets 2017-01-01 21:12:24 +01:00
Lukas Martinelli 3e46c0d3ba Set version, badge and download instruction 2017-01-01 16:49:18 +01:00
Lukas Martinelli d233e0a14d Create public dir 2017-01-01 16:33:29 +01:00
Lukas Martinelli a73b2fd7e1 Use nvm for travis 2017-01-01 16:24:36 +01:00
Lukas Martinelli 69f63f2844 Use latest node in desktop build 2017-01-01 16:22:01 +01:00
Lukas Martinelli 10136c07db Publish artifacts 2017-01-01 16:16:18 +01:00
Lukas Martinelli 5e3156ab21 Fetch submodule in appveyor 2017-01-01 16:00:59 +01:00
Lukas Martinelli 6be8959951 Update to latest master 2017-01-01 15:52:10 +01:00
Lukas Martinelli d2cd84de2b Switch filewatch implementation to fsnotify 2017-01-01 15:50:58 +01:00
Lukas Martinelli 60bea1777a Ugrade to v0.3.1 2016-12-31 16:12:07 +01:00
Lukas Martinelli ce9216b2d5 Write and read file directly 2016-12-03 23:04:32 +01:00
Lukas Martinelli 35ed202cd0 Support CORS 2016-12-03 23:04:12 +01:00
Lukas Martinelli 0d77518a02 Support saving file 2016-12-03 16:51:47 +01:00
lukasmartinelli 11375008fa Extend README with endpoint desription 2016-11-05 17:40:19 +01:00
lukasmartinelli 009f4e105d Specify path to mingw make 2016-11-03 13:29:14 +01:00
lukasmartinelli b1af4917e5 Add missing bindata deps 2016-11-03 13:26:14 +01:00
lukasmartinelli 5b712d74ae Use MinGW make in AppVeyor 2016-11-03 13:24:02 +01:00
lukasmartinelli ca2df37c79 Fix go get in AppVeyor 2016-11-03 13:19:58 +01:00
lukasmartinelli 7d1890156d Update Travis go get 2016-11-03 13:18:08 +01:00
lukasmartinelli ecab640a9a Add AppVeyor integration 2016-11-02 17:10:40 +01:00
lukasmartinelli f8cb0619f3 Use HTTPS endpoint for submodule 2016-11-02 17:08:48 +01:00
lukasmartinelli d874b2503b Add Travis file 2016-11-02 17:01:46 +01:00
lukasmartinelli 3d09f2a0f3 Add server usage example 2016-09-27 17:31:14 +02:00
lukasmartinelli 1f1580276d Integrate file access into API 2016-09-27 14:28:40 +02:00
lukasmartinelli 0421a7f099 Add websocket filewatcher 2016-09-27 11:45:27 +02:00
lukasmartinelli 8b722fc967 Add Makefile 2016-09-27 10:59:56 +02:00
lukasmartinelli 66e3ce8743 Add server and bindata packaging 2016-09-27 10:27:47 +02:00
Lukas Martinelli 45eb3a01e6 Initial commit 2016-09-27 10:08:08 +02:00
183 changed files with 10286 additions and 14975 deletions
-4
View File
@@ -1,4 +0,0 @@
{
"packages": [],
"sandboxes": ["/"]
}
-46
View File
@@ -1,46 +0,0 @@
{
"root": true,
"env": {
"browser": true,
"es2020": true
},
"extends": [
"eslint:recommended",
"plugin:react/recommended",
"plugin:react/jsx-runtime",
"plugin:react-hooks/recommended",
],
"ignorePatterns": [
"dist"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": "latest",
"sourceType": "module"
},
"settings": {
"react": { "version": "16.4" }
},
"plugins": [
"@typescript-eslint",
"react-refresh"],
"rules": {
"react-refresh/only-export-components": [
"warn",
{ "allowConstantExport": true }
],
"@typescript-eslint/no-unused-vars": [
"warn",
{ "argsIgnorePattern": "^_" }
],
"no-unused-vars": "off",
"react/prop-types": ["off"],
// Disable no-undef. It's covered by @typescript-eslint
"no-undef": "off",
"indent": ["error", 2],
"no-var": ["error"]
},
"globals": {
"global": "readonly"
}
}
+11
View File
@@ -0,0 +1,11 @@
## Launch Checklist
<!-- Thanks for the PR! Feel free to add or remove items from the checklist. -->
- [ ] Briefly describe the changes in this PR.
- [ ] Link to related issues.
- [ ] Include before/after visuals or gifs if this PR includes visual changes.
- [ ] Write tests for all new functionality.
- [ ] Add an entry to `CHANGELOG.md` under the `## main` section.
+8 -5
View File
@@ -1,14 +1,17 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
- package-ecosystem: "npm" # See documentation for possible values
directory: "/" # Location of package manifests
schedule:
interval: "daily"
open-pull-requests-limit: 2
open-pull-requests-limit: 20
versioning-strategy: increase
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
open-pull-requests-limit: 2
versioning-strategy: increase
@@ -0,0 +1,26 @@
name: Automerge Dependabot
on: pull_request
permissions: write-all
jobs:
dependabot:
runs-on: ubuntu-latest
if: ${{ github.actor == 'dependabot[bot]' }}
steps:
- name: Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@v2.3.0
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
- name: Approve Dependabot PRs
run: gh pr review --approve "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
- name: Enable auto-merge for Dependabot PRs
run: gh pr merge --auto --squash "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
+17 -29
View File
@@ -15,7 +15,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- run: docker build -t docker.pkg.github.com/maputnik/editor/editor:main .
- run: docker build -t test-docker-image-build .
# build the editor
build-node:
@@ -53,59 +53,47 @@ jobs:
node-version-file: '.nvmrc'
- run: npm ci
- run: npm run build
- run: npm run build-storybook
- name: artifacts/editor
uses: actions/upload-artifact@v1
- name: artifacts/maputnik
uses: actions/upload-artifact@v4
with:
name: editor
name: maputnik
path: dist
- name: artifacts/storybook
uses: actions/upload-artifact@v1
with:
name: storybook
path: build/storybook
# Build and upload desktop CLI artifacts
- name: Set up Go
uses: actions/setup-go@v3
uses: actions/setup-go@v5
with:
go-version: ^1.19.x
go-version: ^1.23.x
cache-dependency-path: desktop/go.sum
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v4
with:
repository: maputnik/desktop
ref: master
path: ./src/github.com/maputnik/desktop/
- name: Make
run: cd src/github.com/maputnik/desktop/ && make
- name: Build desktop artifacts
run: npm run build-desktop
- name: Artifacts/linux
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: maputnik-linux
path: ./src/github.com/maputnik/desktop/bin/linux/
path: ./desktop/bin/linux/
- name: Artifacts/darwin
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: maputnik-darwin
path: ./src/github.com/maputnik/desktop/bin/darwin/
path: ./desktop/bin/darwin/
- name: Artifacts/windows
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: maputnik-windows
path: ./src/github.com/maputnik/desktop/bin/windows/
path: ./desktop/bin/windows/
e2e-tests:
name: "E2E tests using ${{ matrix.browser }}"
strategy:
fail-fast: false
matrix:
browser: [chrome, firefox]
browser: [chrome]
runs-on: ubuntu-22.04
steps:
@@ -119,7 +107,7 @@ jobs:
start: npm run start
browser: ${{ matrix.browser }}
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
uses: codecov/codecov-action@v5
with:
files: ${{ github.workspace }}/.nyc_output/out.json
verbose: true
+70
View File
@@ -0,0 +1,70 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ main ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ main ]
schedule:
- cron: '17 0 * * 6'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'javascript' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://git.io/codeql-language-support
steps:
- name: Checkout repository
uses: actions/checkout@v4
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v3
# ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
@@ -0,0 +1,39 @@
name: Create bump version PR
on:
workflow_dispatch:
inputs:
version:
description: Version to change to.
required: true
type: string
jobs:
bump-version-pr:
name: Bump version PR
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
ref: main
- name: Use Node.js from nvmrc
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
- name: Bump version
run: |
npm version --commit-hooks false --git-tag-version false ${{ inputs.version }}
./build/bump-version-changelog.js ${{ inputs.version }}
- name: Create Pull Request
uses: peter-evans/create-pull-request@v7
with:
commit-message: Bump version to ${{ inputs.version }}
branch: bump-version-to-${{ inputs.version }}
title: Bump version to ${{ inputs.version }}
+33 -8
View File
@@ -3,24 +3,49 @@ name: deploy
on:
push:
branches: [ main ]
tags:
- 'v*'
jobs:
deploy-pages:
name: deploy/pages
runs-on: ubuntu-latest
if: ${{ github.event_name == 'push' }}
steps:
- uses: actions/checkout@v4
- name: Use Node.js from nvmrc
uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
- name: Install
run: npm ci
- name: Build
run: npm run build
- name: Upload to GitHub Pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: dist
# publish docker to GitHub registry
deploy-docker:
name: deploy/docker
runs-on: ${{ matrix.os }}
runs-on: ubuntu-latest
if: ${{ github.event_name == 'push' }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
steps:
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/checkout@v4
- run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login docker.pkg.github.com -u orangemug --password-stdin
- run: docker build -t docker.pkg.github.com/maputnik/editor/editor:main .
- run: docker push docker.pkg.github.com/maputnik/editor/editor:main
- run: docker build -t ghcr.io/maplibre/maputnik:main .
- run: docker push ghcr.io/maplibre/maputnik:main
+102
View File
@@ -0,0 +1,102 @@
name: Release
on:
push:
branches: [main]
workflow_dispatch:
jobs:
release-check:
name: Check if version changed
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
ref: main
- name: Use Node.js from nvmrc
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
- name: Check if version has been updated
id: check
uses: EndBug/version-check@v2
outputs:
publish: ${{ steps.check.outputs.changed }}
release:
name: Release
needs: release-check
if: ${{ needs.release-check.outputs.publish == 'true' }}
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
ref: main
- name: Use Node.js from nvmrc
uses: actions/setup-node@v4
with:
node-version-file: ".nvmrc"
registry-url: "https://registry.npmjs.org"
- name: Set up Go for desktop build
uses: actions/setup-go@v5
with:
go-version: ^1.23.x
cache-dependency-path: desktop/go.sum
id: go
- name: Get version
id: package-version
uses: martinbeentjes/npm-get-version-action@v1.3.1
- name: Install
run: npm ci
- name: Build
run: |
npm run build-desktop
- name: Tag commit and push
id: tag_version
uses: mathieudutour/github-tag-action@v6.2
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
custom_tag: ${{ steps.package-version.outputs.current-version }}
- name: Create Archives
run: |
zip -r "desktop-${{ steps.package-version.outputs.current-version }}" desktop/bin/
- name: Build Release Notes
id: release_notes
run: |
RELEASE_NOTES_PATH="${PWD}/release_notes.txt"
./build/release-notes.js > ${RELEASE_NOTES_PATH}
echo "release_notes=${RELEASE_NOTES_PATH}" >> $GITHUB_OUTPUT
- name: Create GitHub Release
id: create_regular_release
uses: ncipollo/release-action@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag: ${{ steps.tag_version.outputs.new_tag }}
name: ${{ steps.tag_version.outputs.new_tag }}
bodyFile: ${{ steps.release_notes.outputs.release_notes }}
artifacts: "desktop-${{ steps.package-version.outputs.current-version }}.zip"
allowUpdates: true
draft: false
prerelease: false
+9 -1
View File
@@ -33,6 +33,14 @@ node_modules
public
/errorShots
/old
/build
/cypress/screenshots
/dist/
/desktop/version.go
# IDE
.vscode/
.idea/
# Window metadata files
/desktop/winres/winres.json
/desktop/*.syso
+1
View File
@@ -0,0 +1 @@
legacy-peer-deps = true
+1 -1
View File
@@ -1 +1 @@
18.19
22.13
-9
View File
@@ -1,9 +0,0 @@
const config = {
stories: ['../stories/**/*.stories.jsx'],
addons: ['@storybook/addon-actions', '@storybook/addon-links', '@storybook/addon-a11y/register', '@storybook/addon-storysource'],
framework: {
name: '@storybook/react-vite',
options: {}
}
};
export default config;
-7
View File
@@ -1,7 +0,0 @@
import { addons } from '@storybook/addons';
import { themes } from '@storybook/theming';
import theme from './maputnik.theme';
addons.setConfig({
theme: theme,
});
-8
View File
@@ -1,8 +0,0 @@
import { create } from '@storybook/theming/create';
export default create({
base: 'light',
brandTitle: 'Maputnik',
brandUrl: 'https://github.com/maputnik/editor',
});
+35
View File
@@ -0,0 +1,35 @@
## main
### ✨ Features and improvements
- Add german translation
- Use same version number for web and desktop versions
- Add scheme type options for vector/raster tile
- Add `tileSize` field for raster and raster-dem tile sources
- Update Protomaps Light gallery style to v4
- Add support to edit local files on the file system if supported by the browser
- Upgrade to MapLibre LG JS v5
- Upgrade Vite 6 and Cypress 14 ([#970](https://github.com/maplibre/maputnik/pull/970))
- Upgrade OpenLayers from v6 to v10
- _...Add new stuff here..._
### 🐞 Bug fixes
- Fix incorrect handing of network error response (#944)
- _...Add new stuff here..._
## 2.1.1
### ✨ Features and improvements
- Add GitHub workflows for releasing new versions
- Update desktop build to pull from this repo (#922)
## 2.0.0
- Update MapLibre to version 4 (#872)
- Start continuous deployment of maputnik website
## 1.7.0
- See release notes at https://maputnik.github.io/blog/2020/04/23/release-v1.7.0
+3 -3
View File
@@ -2,12 +2,12 @@ FROM node:18 as builder
WORKDIR /maputnik
# Only copy package.json to prevent npm install from running on every build
COPY package.json package-lock.json ./
RUN npm install
COPY package.json package-lock.json .npmrc ./
RUN npm ci
# Build maputnik
COPY . .
RUN npm run build
RUN npx vite build
#---------------------------------------------------------------------------
# Create a clean nginx-alpine slim image with just the build results
+1
View File
@@ -1,5 +1,6 @@
The MIT License (MIT)
Copyright (c) 2015 Lukas Martinelli
Copyright (c) 2024 MapLibre contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
+17 -10
View File
@@ -1,10 +1,10 @@
<img width="200" alt="Maputnik logo" src="https://cdn.jsdelivr.net/gh/maputnik/design/logos/logo-color.png" />
# Maputnik
[![GitHub CI status](https://github.com/maputnik/editor/workflows/ci/badge.svg)][github-action-ci]
[![GitHub CI status](https://github.com/maplibre/maputnik/workflows/ci/badge.svg)][github-action-ci]
[![License](https://img.shields.io/badge/license-MIT-blue.svg)][license]
[github-action-ci]: https://github.com/maputnik/editor/actions?query=workflow%3Aci
[github-action-ci]: https://github.com/maplibre/maputnik/actions?query=workflow%3Aci
[license]: https://tldrlegal.com/license/mit-license
A free and open visual editor for the [MapLibre GL styles](https://maplibre.org/maplibre-style-spec/)
@@ -14,18 +14,18 @@ targeted at developers and map designers.
## Usage
- :link: Design your maps online at **<https://www.maplibre.org/maputnik/>** (all in local storage)
- :link: Use the [Maputnik CLI](https://github.com/maputnik/editor/wiki/Maputnik-CLI) for local style development
- :link: Use the [Maputnik CLI](https://github.com/maplibre/maputnik/wiki/Maputnik-CLI) for local style development
- In a Docker, run this command and browse to http://localhost:8888, Ctrl+C to stop the server.
```bash
docker run -it --rm -p 8888:8888 maputnik/editor
docker run -it --rm -p 8888:80 ghcr.io/maplibre/maputnik:main
```
## Documentation
The documentation can be found in the [Wiki](https://github.com/maputnik/editor/wiki). You are welcome to collaborate!
The documentation can be found in the [Wiki](https://github.com/maplibre/maputnik/wiki). You are welcome to collaborate!
- :link: **Study the [Maputnik Wiki](https://github.com/maputnik/editor/wiki)**
- :link: **Study the [Maputnik Wiki](https://github.com/maplibre/maputnik/wiki)**
- :video_camera: Design a map from Scratch https://youtu.be/XoDh0gEnBQo
[![Design Map from Scratch](https://j.gifs.com/g5XMgl.gif)](https://youtu.be/XoDh0gEnBQo)
@@ -36,6 +36,8 @@ Maputnik is written in typescript and is using [React](https://github.com/facebo
We ensure building and developing Maputnik works with the [current active LTS Node.js version and above](https://github.com/nodejs/Release#release-schedule).
Check out our [Internationalization guide](./src/locales/README.md) for UI text related changes.
### Getting Involved
Join the #maplibre or #maputnik slack channel at OSMUS: get an invite at https://slack.openstreetmap.us/ Read the the below guide in order to get familiar with how we do things around here.
@@ -66,10 +68,10 @@ Lint the JavaScript code.
```
# run linter
npm run lint
npm run lint-styles
npm run lint-css
npm run sort-styles
```
## Tests
For E2E testing we use [Cypress](https://www.cypress.io/)
@@ -93,10 +95,15 @@ You can also see the tests as they run or select which suites to run by executin
npm run cy:open
```
## Release process
## Related Projects
1. Review [`CHANGELOG.md`](/CHANGELOG.md)
- Double-check that all changes included in the release are appropriately documented.
- To-be-released changes should be under the "main" header.
- Commit any final changes to the changelog.
2. Run [Create bump version PR](https://github.com/maplibre/maputnik/actions/workflows/create-bump-version-pr.yml) by manual workflow dispatch and set the version number in the input. This will create a PR that changes the changelog and `package.json` file to review and merge.
3. Once merged, an automatic process will kick in and creates a GitHub release and uploads release assets.
- [maputnik-dev-server](https://github.com/nycplanning/labs-maputnik-dev-server) - An express.js server that allows for quickly loading the style from any mapboxGL map into mapuntnik.
## Sponsors
+11
View File
@@ -0,0 +1,11 @@
# Build Scripts
This folder holds common build scripts used by some of the Github workflows.
The scripts are borrowed from [maplibre/maplibre-gl-js](https://github.com/maplibre/maplibre-gl-js/tree/bc70bc559cea5c987fa1b79fd44766cef68bbe28/build).
## Generate Release Notes
`bump-version-changelog.js` Used to update the changelog with the current notes, and set up a space for new notes
`release-notes.js` Used to generate release notes when releasing a new version
+29
View File
@@ -0,0 +1,29 @@
#!/usr/bin/env node
/**
* This script updates the changelog.md file with the version given in the arguments
* It replaces ## main with ## <version>
* Removes _...Add new stuff here..._
* And adds on top a ## main with add stuff here.
*
* Copied from maplibre/maplibre-gl-js
* https://github.com/maplibre/maplibre-gl-js/blob/bc70bc559cea5c987fa1b79fd44766cef68bbe28/build/release-notes.js
*/
import * as fs from 'fs';
const changelogPath = 'CHANGELOG.md';
let changelog = fs.readFileSync(changelogPath, 'utf8');
changelog = changelog.replace('## main', `## ${process.argv[2]}`);
changelog = changelog.replaceAll('- _...Add new stuff here..._\n', '');
changelog = `## main
### ✨ Features and improvements
- _...Add new stuff here..._
### 🐞 Bug fixes
- _...Add new stuff here..._
` + changelog;
fs.writeFileSync(changelogPath, changelog, 'utf8');
+47
View File
@@ -0,0 +1,47 @@
#!/usr/bin/env node
// Copied from maplibre/maplibre-gl-js
// https://github.com/maplibre/maplibre-gl-js/blob/bc70bc559cea5c987fa1b79fd44766cef68bbe28/build/release-notes.js
import * as fs from 'fs';
const changelogPath = 'CHANGELOG.md';
const changelog = fs.readFileSync(changelogPath, 'utf8');
/*
Parse the raw changelog text and split it into individual releases.
This regular expression:
- Matches lines starting with "## x.x.x".
- Groups the version number.
- Skips the (optional) release date.
- Groups the changelog content.
- Ends when another "## x.x.x" is found.
*/
const regex = /^## (\d+\.\d+\.\d+.*?)\n(.+?)(?=\n^## \d+\.\d+\.\d+.*?\n)/gms;
const releaseNotes = [];
let match;
// eslint-disable-next-line no-cond-assign
while (match = regex.exec(changelog)) {
releaseNotes.push({
'version': match[1],
'changelog': match[2].trim(),
});
}
const latest = releaseNotes[0];
const previous = releaseNotes[1];
// Print the release notes template.
let header = 'Changes since previous version'
if (previous) {
header = `https://github.com/maplibre/maputnik
[Changes](https://github.com/maplibre/maputnik/compare/v${previous.version}...v${latest.version}) since [Maputnik v${previous.version}](https://github.com/maplibre/maputnik/releases/tag/v${previous.version})`
}
const templatedReleaseNotes = `${header}
${latest.changelog}`;
process.stdout.write(templatedReleaseNotes.trimEnd());
+1 -1
View File
@@ -1,7 +1,7 @@
import { MaputnikDriver } from "./maputnik-driver";
describe("accessibility", () => {
let { beforeAndAfter, get, when, then } = new MaputnikDriver();
const { beforeAndAfter, get, when, then } = new MaputnikDriver();
beforeAndAfter();
describe("skip links", () => {
+36 -1
View File
@@ -1,7 +1,7 @@
import { MaputnikDriver } from "./maputnik-driver";
describe("history", () => {
let { beforeAndAfter, when, get, then } = new MaputnikDriver();
const { beforeAndAfter, when, get, then } = new MaputnikDriver();
beforeAndAfter();
let undoKeyCombo: string;
@@ -87,4 +87,39 @@ describe("history", () => {
],
});
});
it("should not redo after undo and value change", () => {
when.setStyle("geojson");
when.modal.open();
when.modal.fillLayers({
id: "step 1",
type: "background",
});
when.modal.open();
when.modal.fillLayers({
id: "step 2",
type: "background",
});
when.typeKeys(undoKeyCombo);
when.typeKeys(undoKeyCombo);
then(get.styleFromLocalStorage()).shouldDeepNestedInclude({ layers: [] });
when.modal.open();
when.modal.fillLayers({
id: "step 3",
type: "background",
});
when.typeKeys(redoKeyCombo);
then(get.styleFromLocalStorage()).shouldDeepNestedInclude({
layers: [
{
id: "step 3",
type: "background",
},
],
});
});
});
+35
View File
@@ -0,0 +1,35 @@
import { MaputnikDriver } from "./maputnik-driver";
describe("i18n", () => {
const { beforeAndAfter, get, when, then } = new MaputnikDriver();
beforeAndAfter();
describe("language detector", () => {
it("English", () => {
const url = "?lng=en";
when.visit(url);
then(get.elementByTestId("maputnik-lang-select")).shouldHaveValue("en");
});
it("Japanese", () => {
const url = "?lng=ja";
when.visit(url);
then(get.elementByTestId("maputnik-lang-select")).shouldHaveValue("ja");
});
});
describe("language switcher", () => {
beforeEach(() => {
when.setStyle("layer");
});
it("the language switcher switches to Japanese", () => {
const selector = "maputnik-lang-select";
then(get.elementByTestId(selector)).shouldExist();
when.select(selector, "ja");
then(get.elementByTestId(selector)).shouldHaveValue("ja");
then(get.elementByTestId("nav:settings")).shouldHaveText("スタイル設定");
});
});
});
+1 -1
View File
@@ -1,7 +1,7 @@
import { MaputnikDriver } from "./maputnik-driver";
describe("keyboard", () => {
let { beforeAndAfter, given, when, get, then } = new MaputnikDriver();
const { beforeAndAfter, given, when, get, then } = new MaputnikDriver();
beforeAndAfter();
describe("shortcuts", () => {
beforeEach(() => {
+62 -14
View File
@@ -2,7 +2,7 @@ import { v1 as uuid } from "uuid";
import { MaputnikDriver } from "./maputnik-driver";
describe("layers", () => {
let { beforeAndAfter, get, when, then } = new MaputnikDriver();
const { beforeAndAfter, get, when, then } = new MaputnikDriver();
beforeAndAfter();
beforeEach(() => {
when.setStyle("both");
@@ -101,7 +101,7 @@ describe("layers", () => {
});
describe("background", () => {
it("add", () => {
let id = when.modal.fillLayers({
const id = when.modal.fillLayers({
type: "background",
});
then(get.styleFromLocalStorage()).shouldDeepNestedInclude({
@@ -117,7 +117,7 @@ describe("layers", () => {
describe("modify", () => {
function createBackground() {
// Setup
let id = uuid();
const id = uuid();
when.selectWithin("add-layer.layer-type", "background");
when.setValue("add-layer.layer-id.input", "background:" + id);
@@ -139,11 +139,11 @@ describe("layers", () => {
describe("layer", () => {
it("expand/collapse");
it("id", () => {
let bgId = createBackground();
const bgId = createBackground();
when.click("layer-list-item:background:" + bgId);
let id = uuid();
const id = uuid();
when.setValue("layer-editor.layer-id.input", "foobar:" + id);
when.click("min-zoom");
@@ -219,7 +219,7 @@ describe("layers", () => {
describe("comments", () => {
let bgId: string;
let comment = "42";
const comment = "42";
beforeEach(() => {
bgId = createBackground();
@@ -280,6 +280,25 @@ describe("layers", () => {
});
});
});
describe("opacity", () => {
let bgId: string;
beforeEach(() => {
bgId = createBackground();
when.click("layer-list-item:background:" + bgId);
when.type("spec-field-input:background-opacity", "0.");
});
it("should keep '.' in the input field", () => {
then(get.elementByTestId("spec-field-input:background-opacity")).shouldHaveValue("0.");
});
it("should revert to a valid value when focus out", () => {
when.click("layer-list-item:background:" + bgId);
then(get.elementByTestId("spec-field-input:background-opacity")).shouldHaveValue('0');
});
});
});
describe("filter", () => {
@@ -301,11 +320,11 @@ describe("layers", () => {
// TODO
it.skip("parse error", () => {
let bgId = createBackground();
const bgId = createBackground();
when.click("layer-list-item:background:" + bgId);
let errorSelector = ".CodeMirror-lint-marker-error";
const errorSelector = ".CodeMirror-lint-marker-error";
then(get.elementByTestId(errorSelector)).shouldNotExist();
when.click(".CodeMirror");
@@ -320,7 +339,7 @@ describe("layers", () => {
describe("fill", () => {
it("add", () => {
let id = when.modal.fillLayers({
const id = when.modal.fillLayers({
type: "fill",
layer: "example",
});
@@ -342,7 +361,7 @@ describe("layers", () => {
describe("line", () => {
it("add", () => {
let id = when.modal.fillLayers({
const id = when.modal.fillLayers({
type: "line",
layer: "example",
});
@@ -366,7 +385,7 @@ describe("layers", () => {
describe("symbol", () => {
it("add", () => {
let id = when.modal.fillLayers({
const id = when.modal.fillLayers({
type: "symbol",
layer: "example",
});
@@ -385,7 +404,7 @@ describe("layers", () => {
describe("raster", () => {
it("add", () => {
let id = when.modal.fillLayers({
const id = when.modal.fillLayers({
type: "raster",
layer: "raster",
});
@@ -404,7 +423,7 @@ describe("layers", () => {
describe("circle", () => {
it("add", () => {
let id = when.modal.fillLayers({
const id = when.modal.fillLayers({
type: "circle",
layer: "example",
});
@@ -423,7 +442,7 @@ describe("layers", () => {
describe("fill extrusion", () => {
it("add", () => {
let id = when.modal.fillLayers({
const id = when.modal.fillLayers({
type: "fill-extrusion",
layer: "example",
});
@@ -475,4 +494,33 @@ describe("layers", () => {
).shouldBeVisible();
});
});
describe("layereditor jsonlint should error", ()=>{
it("add", () => {
const id = when.modal.fillLayers({
type: "circle",
layer: "example",
});
then(get.styleFromLocalStorage()).shouldDeepNestedInclude({
layers: [
{
id: id,
type: "circle",
source: "example",
},
],
});
const sourceText = get.elementByText('"source"');
sourceText.click();
sourceText.type("\"");
const error = get.element('.CodeMirror-lint-marker-error');
error.should('exist');
});
});
});
+9 -3
View File
@@ -1,11 +1,11 @@
import { MaputnikDriver } from "./maputnik-driver";
describe("map", () => {
let { beforeAndAfter, get, when, then } = new MaputnikDriver();
const { beforeAndAfter, get, when, then } = new MaputnikDriver();
beforeAndAfter();
describe("zoom level", () => {
it("via url", () => {
let zoomLevel = 12.37;
const zoomLevel = 12.37;
when.setStyle("geojson", zoomLevel);
then(get.elementByTestId("maplibre:ctrl-zoom")).shouldBeVisible();
then(get.elementByTestId("maplibre:ctrl-zoom")).shouldContainText(
@@ -14,7 +14,7 @@ describe("map", () => {
});
it("via map controls", () => {
let zoomLevel = 12.37;
const zoomLevel = 12.37;
when.setStyle("geojson", zoomLevel);
then(get.elementByTestId("maplibre:ctrl-zoom")).shouldBeVisible();
when.clickZoomIn();
@@ -23,4 +23,10 @@ describe("map", () => {
);
});
});
describe("search", () => {
it('should exist', () => {
then(get.searchControl()).shouldBeVisible();
});
});
});
+7 -2
View File
@@ -1,3 +1,5 @@
/// <reference types="cypress-plugin-tab" />
import { CypressHelper } from "@shellygo/cypress-test-utils";
import { Assertable, then } from "@shellygo/cypress-test-utils/assertable";
import MaputnikCypressHelper from "./maputnik-cypress-helper";
@@ -14,7 +16,7 @@ const styleFromWindow = (win: Window) => {
export class MaputnikAssertable<T> extends Assertable<T> {
shouldEqualToStoredStyle = () =>
then(
new CypressHelper().get.window().then((win) => {
new CypressHelper().get.window().then((win: Window) => {
const style = styleFromWindow(win);
then(this.chainable).shouldDeepNestedInclude(style);
})
@@ -129,7 +131,9 @@ export class MaputnikDriver {
this.helper.when.acceptConfirm();
}
// when methods should not include assertions
this.helper.get.elementByTestId("toolbar:link").should("be.visible");
const toolbarLink = this.helper.get.elementByTestId("toolbar:link")
toolbarLink.scrollIntoView();
toolbarLink.should("be.visible");
},
typeKeys: (keys: string) => this.helper.get.element("body").type(keys),
@@ -177,5 +181,6 @@ export class MaputnikDriver {
skipTargetLayerEditor: () =>
this.helper.get.elementByTestId("skip-target-layer-editor"),
canvas: () => this.helper.get.element("canvas"),
searchControl: () => this.helper.get.element('.maplibregl-ctrl-geocoder')
};
}
+2 -2
View File
@@ -8,8 +8,8 @@ export default class ModalDriver {
fillLayers: (opts: { type: string; layer?: string; id?: string }) => {
// Having logic in test code is an anti pattern.
// This should be splitted to multiple single responsibility functions
let type = opts.type;
let layer = opts.layer;
const type = opts.type;
const layer = opts.layer;
let id;
if (opts.id) {
id = opts.id;
+108 -10
View File
@@ -1,7 +1,8 @@
import { MaputnikDriver } from "./maputnik-driver";
import tokens from "../../src/config/tokens.json" with {type: "json"};
describe("modals", () => {
let { beforeAndAfter, when, get, then } = new MaputnikDriver();
const { beforeAndAfter, when, get, given, then } = new MaputnikDriver();
beforeAndAfter();
beforeEach(() => {
@@ -25,7 +26,7 @@ describe("modals", () => {
describe("when click open url", () => {
beforeEach(() => {
let styleFileUrl = get.exampleFileUrl();
const styleFileUrl = get.exampleFileUrl();
when.setValue("modal:open.url.input", styleFileUrl);
when.click("modal:open.url.button");
@@ -61,9 +62,60 @@ describe("modals", () => {
});
describe("sources", () => {
beforeEach(() => {
when.setStyle("layer");
when.click("nav:sources");
});
it("active sources");
it("public source");
it("add new source");
it("add new source", () => {
const sourceId = "n1z2v3r";
when.setValue("modal:sources.add.source_id", sourceId);
when.select("modal:sources.add.source_type", "tile_vector");
when.select("modal:sources.add.scheme_type", "tms");
when.click("modal:sources.add.add_source");
when.wait(200);
then(
get.styleFromLocalStorage().then((style) => style.sources[sourceId])
).shouldInclude({
scheme: "tms",
});
});
it("add new pmtiles source", () => {
const sourceId = "pmtilestest";
when.setValue("modal:sources.add.source_id", sourceId);
when.select("modal:sources.add.source_type", "pmtiles_vector");
when.setValue("modal:sources.add.source_url", "https://data.source.coop/protomaps/openstreetmap/v4.pmtiles");
when.click("modal:sources.add.add_source");
when.click("modal:sources.add.add_source");
when.wait(200);
then(get.styleFromLocalStorage()).shouldDeepNestedInclude({
sources: {
pmtilestest: {
type: "vector",
url: "pmtiles://https://data.source.coop/protomaps/openstreetmap/v4.pmtiles",
},
},
});
});
it("add new raster source", () => {
const sourceId = "rastertest";
when.setValue("modal:sources.add.source_id", sourceId);
when.select("modal:sources.add.source_type", "tile_raster");
when.select("modal:sources.add.scheme_type", "xyz");
when.setValue("modal:sources.add.tile_size", "128");
when.click("modal:sources.add.add_source");
when.wait(200);
then(
get.styleFromLocalStorage().then((style) => style.sources[sourceId])
).shouldInclude({
tileSize: 128,
});
});
});
describe("inspect", () => {
@@ -79,12 +131,12 @@ describe("modals", () => {
when.click("nav:settings");
});
describe("when click name", () => {
describe("when click name filed spec information", () => {
beforeEach(() => {
when.click("field-doc-button-Name");
});
it("name", () => {
it("should show the spec information", () => {
then(get.elementsText("spec-field-doc")).shouldInclude(
"name for the style"
);
@@ -126,7 +178,7 @@ describe("modals", () => {
});
});
it("glyphs url", () => {
let glyphsUrl = "http://example.com/{fontstack}/{range}.pbf";
const glyphsUrl = "http://example.com/{fontstack}/{range}.pbf";
when.setValue("modal:settings.glyphs", glyphsUrl);
when.click("modal:settings.name");
then(get.styleFromLocalStorage()).shouldDeepNestedInclude({
@@ -135,31 +187,43 @@ describe("modals", () => {
});
it("maptiler access token", () => {
let apiKey = "testing123";
const apiKey = "testing123";
when.setValue(
"modal:settings.maputnik:openmaptiles_access_token",
apiKey
);
when.click("modal:settings.name");
then(
get.styleFromLocalStorage().pipe((style) => style.metadata)
get.styleFromLocalStorage().then((style) => style.metadata)
).shouldInclude({
"maputnik:openmaptiles_access_token": apiKey,
});
});
it("thunderforest access token", () => {
let apiKey = "testing123";
const apiKey = "testing123";
when.setValue(
"modal:settings.maputnik:thunderforest_access_token",
apiKey
);
when.click("modal:settings.name");
then(
get.styleFromLocalStorage().pipe((style) => style.metadata)
get.styleFromLocalStorage().then((style) => style.metadata)
).shouldInclude({ "maputnik:thunderforest_access_token": apiKey });
});
it("stadia access token", () => {
const apiKey = "testing123";
when.setValue(
"modal:settings.maputnik:stadia_access_token",
apiKey
);
when.click("modal:settings.name");
then(
get.styleFromLocalStorage().then((style) => style.metadata)
).shouldInclude({ "maputnik:stadia_access_token": apiKey });
});
it("style renderer", () => {
cy.on("uncaught:exception", () => false); // this is due to the fact that this is an invalid style for openlayers
when.select("modal:settings.maputnik:renderer", "ol");
@@ -172,6 +236,40 @@ describe("modals", () => {
metadata: { "maputnik:renderer": "ol" },
});
});
it("inlcude API key when change renderer", () => {
when.click("modal:settings.close-modal")
when.click("nav:open");
get.elementByAttribute('aria-label', "MapTiler Basic").should('exist').click();
when.click("nav:settings");
when.select("modal:settings.maputnik:renderer", "mlgljs");
then(get.inputValue("modal:settings.maputnik:renderer")).shouldEqual(
"mlgljs"
);
when.select("modal:settings.maputnik:renderer", "ol");
then(get.inputValue("modal:settings.maputnik:renderer")).shouldEqual(
"ol"
);
given.intercept("https://api.maptiler.com/tiles/v3-openmaptiles/tiles.json?key=*", "tileRequest", "GET");
when.select("modal:settings.maputnik:renderer", "mlgljs");
then(get.inputValue("modal:settings.maputnik:renderer")).shouldEqual(
"mlgljs"
);
when.waitForResponse("tileRequest").its("request").its("url").should("include", `https://api.maptiler.com/tiles/v3-openmaptiles/tiles.json?key=${tokens.openmaptiles}`);
when.waitForResponse("tileRequest").its("request").its("url").should("include", `https://api.maptiler.com/tiles/v3-openmaptiles/tiles.json?key=${tokens.openmaptiles}`);
when.waitForResponse("tileRequest").its("request").its("url").should("include", `https://api.maptiler.com/tiles/v3-openmaptiles/tiles.json?key=${tokens.openmaptiles}`);
});
});
describe("sources", () => {
+31
View File
@@ -0,0 +1,31 @@
# Compiled Object files, Static and Dynamic libs (Shared Objects)
*.o
*.a
*.so
# Folders
_obj
_test
editor
# Architecture specific extensions/prefixes
*.[568vq]
[568vq].out
*.cgo1.go
*.cgo2.c
_cgo_defun.c
_cgo_gotypes.go
_cgo_export.*
_testmain.go
*.exe
*.test
*.prof
# Binary version of pubilic/editor
rice-box.go
# Built binary
maputnik
+21
View File
@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2016 Maputnik
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+44
View File
@@ -0,0 +1,44 @@
SOURCEDIR=.
SOURCES := $(shell find $(SOURCEDIR) -name '*.go')
BINARY=maputnik
VERSION := $(shell node -p "require('../package.json').version")
GOPATH := $(if $(GOPATH),$(GOPATH),$(HOME)/go)
GOBIN := $(if $(GOBIN),$(GOBIN),$(HOME)/go/bin)
all: $(BINARY)
$(BINARY): $(GOBIN)/gox $(GOBIN)/go-winres $(SOURCES) version.go rice-box.go winres/winres.json
$(GOBIN)/go-winres make --product-version=$(VERSION)
$(GOBIN)/gox -osarch "windows/amd64 linux/amd64 darwin/amd64" -output "bin/{{.OS}}/${BINARY}"
winres/winres.json: winres/winres_template.json
sed 's/{{.Version}}/$(VERSION)/g' winres/winres_template.json > $@
$(GOBIN)/go-winres:
go install github.com/tc-hib/go-winres@latest
# Copy the current release into ./editor/maputnik so it can be
# embedded in the binary
editor/pull_release:
mkdir -p editor
cp -r ../dist/* editor
$(GOBIN)/gox:
go install github.com/mitchellh/gox@v1.0.1
$(GOBIN)/rice:
go install github.com/GeertJohan/go.rice/rice@v1.0.3
# Embed the current version number in the executable by writing version.go
.PHONY: version.go
version.go:
@printf "// DO NOT EDIT: Autogenerated by Makefile\n" > version.go
@printf "package main\n" >> version.go
@printf "const Version = \"$(VERSION)\"\n" >> version.go
rice-box.go: $(GOBIN)/rice editor/pull_release
$(GOBIN)/rice embed-go
.PHONY: clean
clean:
rm -rf editor && rm -f rice-box.go && rm -rf bin
+73
View File
@@ -0,0 +1,73 @@
# Maputnik Desktop [![GitHub CI status](https://github.com/maplibre/maputnik/workflows/ci/badge.svg)][github-action-ci]
---
A Golang based cross platform executable for integrating Maputnik locally.
This binary packages up the JavaScript and CSS bundle produced by maputnik
and embeds it in the program for easy distribution. It also allows
exposing a local style file and work on it both in Maputnik and with your favorite
editor.
Report issues on [maplibre/maputnik](https://github.com/maplibre/maputnik).
## Install
You can download a zip file containing desktop binaries for Linux, OSX and Windows from [the latest releases of **maplibre/maputnik**](https://github.com/maplibre/maputnik/releases/latest).
### Usage
Simply start up a web server and access the Maputnik editor GUI at `localhost:8000`.
```bash
maputnik
```
Expose a local style file to Maputnik allowing the web based editor
to save to the local filesystem.
```bash
maputnik --file basic-v9.json
```
Watch the local style for changes and inform the editor via web socket.
This makes it possible to edit the style with a local text editor and still
use Maputnik.
```bash
maputnik --watch --file basic-v9.json
```
Choose a local port to listen on, instead of using the default port 8000.
```bash
maputnik --port 8001
```
Specify a path to a directory which, if it exists, will be served under http://localhost:8000/static/ .
Could be used to serve sprites and glyphs.
```bash
maputnik --static ./localFolder
```
### API
`maputnik` exposes the configured styles via a HTTP API.
| Method | Description |
| ------------------------ | ------------------------------------------------------ |
| `GET /styles` | List the ID of all configured style files |
| `GET /styles/{filename}` | Get contents of a single style file |
| `PUT /styles/{filename}` | Update contents of a style file |
| `WEBSOCKET /ws` | Listen to change events for the configured style files |
### Build
From the root of the [maplibre/maputnik](https://github.com/maplibre/maputnik) project, install the deps and run the desktop-build command.
```
npm install
npm run build-desktop
```
You should now find the `maputnik` binary in your `desktop/bin` directory.
+81
View File
@@ -0,0 +1,81 @@
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"log"
"net/http"
"github.com/gorilla/mux"
)
func StyleFileAccessor(filename string) styleFileAccessor {
return styleFileAccessor{filename, styleId(filename)}
}
func styleId(filename string) string {
raw, err := ioutil.ReadFile(filename)
if err != nil {
log.Panicln(err)
}
var spec styleSpec
err = json.Unmarshal(raw, &spec)
if err != nil {
log.Panicln(err)
}
if spec.Id == "" {
fmt.Println("No id in style")
}
return spec.Id
}
type styleSpec struct {
Id string `json:"id"`
}
// Allows access to a single style file
type styleFileAccessor struct {
filename string
id string
}
func (fa styleFileAccessor) ListFiles(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
encoder := json.NewEncoder(w)
encoder.Encode([]string{fa.id})
}
func (fa styleFileAccessor) ReadFile(w http.ResponseWriter, r *http.Request) {
vars := mux.Vars(r)
_ = vars["styleId"]
//TODO: Choose right file
// right now we just return the single file we know of
w.Header().Set("Content-Type", "application/json")
raw, err := ioutil.ReadFile(fa.filename)
if err != nil {
log.Panicln(err)
}
w.Write(raw)
}
func (fa styleFileAccessor) SaveFile(w http.ResponseWriter, r *http.Request) {
vars := mux.Vars(r)
_ = vars["styleId"]
//TODO: Save to right file
w.Header().Set("Content-Type", "application/json")
body, _ := ioutil.ReadAll(r.Body)
var out bytes.Buffer
json.Indent(&out, body, "", " ")
if err := ioutil.WriteFile(fa.filename, out.Bytes(), 0666); err != nil {
log.Fatalf("Can not copy from request to file: %s", err.Error())
}
}
+69
View File
@@ -0,0 +1,69 @@
package filewatch
import (
"io/ioutil"
"log"
"net/http"
"github.com/fsnotify/fsnotify"
"github.com/gorilla/websocket"
)
var upgrader = websocket.Upgrader{
ReadBufferSize: 1024,
WriteBufferSize: 1024,
CheckOrigin: func(r *http.Request) bool { return true },
}
func writer(ws *websocket.Conn, filename string) {
watcher, err := fsnotify.NewWatcher()
if err != nil {
log.Fatal(err)
}
defer watcher.Close()
done := make(chan bool)
go func() {
for {
select {
case event := <-watcher.Events:
if event.Op&fsnotify.Write == fsnotify.Write {
log.Println("Modified file:", event.Name)
var p []byte
var err error
p, err = ioutil.ReadFile(filename)
if err != nil {
log.Fatal(err)
}
if p != nil {
if err := ws.WriteMessage(websocket.TextMessage, p); err != nil {
return
}
}
}
case err := <-watcher.Errors:
log.Println("Watch error:", err)
}
}
}()
if err = watcher.Add(filename); err != nil {
log.Fatal(err)
}
<-done
}
func ServeWebsocketFileWatcher(filename string, w http.ResponseWriter, r *http.Request) {
ws, err := upgrader.Upgrade(w, r, nil)
if err != nil {
if _, ok := err.(websocket.HandshakeError); !ok {
log.Println(err)
}
return
}
writer(ws, filename)
defer ws.Close()
}
+27
View File
@@ -0,0 +1,27 @@
module maputnik/desktop
go 1.19
require (
github.com/GeertJohan/go.rice v1.0.3
github.com/fsnotify/fsnotify v1.6.0
github.com/gorilla/handlers v1.5.1
github.com/gorilla/mux v1.8.0
github.com/gorilla/websocket v1.5.0
github.com/maputnik/desktop v1.0.7
github.com/urfave/cli v1.22.12
)
require (
github.com/GeertJohan/go.incremental v1.0.0 // indirect
github.com/akavel/rsrc v0.8.0 // indirect
github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect
github.com/daaku/go.zipexe v1.0.2 // indirect
github.com/felixge/httpsnoop v1.0.1 // indirect
github.com/jessevdk/go-flags v1.4.0 // indirect
github.com/nkovacs/streamquote v1.0.0 // indirect
github.com/russross/blackfriday/v2 v2.1.0 // indirect
github.com/valyala/bytebufferpool v1.0.0 // indirect
github.com/valyala/fasttemplate v1.0.1 // indirect
golang.org/x/sys v0.0.0-20220908164124-27713097b956 // indirect
)
+54
View File
@@ -0,0 +1,54 @@
github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
github.com/GeertJohan/go.incremental v1.0.0 h1:7AH+pY1XUgQE4Y1HcXYaMqAI0m9yrFqo/jt0CW30vsg=
github.com/GeertJohan/go.incremental v1.0.0/go.mod h1:6fAjUhbVuX1KcMD3c8TEgVUqmo4seqhv0i0kdATSkM0=
github.com/GeertJohan/go.rice v1.0.3 h1:k5viR+xGtIhF61125vCE1cmJ5957RQGXG6dmbaWZSmI=
github.com/GeertJohan/go.rice v1.0.3/go.mod h1:XVdrU4pW00M4ikZed5q56tPf1v2KwnIKeIdc9CBYNt4=
github.com/akavel/rsrc v0.8.0 h1:zjWn7ukO9Kc5Q62DOJCcxGpXC18RawVtYAGdz2aLlfw=
github.com/akavel/rsrc v0.8.0/go.mod h1:uLoCtb9J+EyAqh+26kdrTgmzRBFPGOolLWKpdxkKq+c=
github.com/cpuguy83/go-md2man/v2 v2.0.2 h1:p1EgwI/C7NhT0JmVkwCD2ZBK8j4aeHQX2pMHHBfMQ6w=
github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
github.com/daaku/go.zipexe v1.0.2 h1:Zg55YLYTr7M9wjKn8SY/WcpuuEi+kR2u4E8RhvpyXmk=
github.com/daaku/go.zipexe v1.0.2/go.mod h1:5xWogtqlYnfBXkSB1o9xysukNP9GTvaNkqzUZbt3Bw8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/felixge/httpsnoop v1.0.1 h1:lvB5Jl89CsZtGIWuTcDM1E/vkVs49/Ml7JJe07l8SPQ=
github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY=
github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw=
github.com/gorilla/handlers v1.5.1 h1:9lRY6j8DEeeBT10CvO9hGW0gmky0BprnvDI5vfhUHH4=
github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv/4g96P1Q=
github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
github.com/gorilla/websocket v1.5.0 h1:PPwGk2jz7EePpoHN/+ClbZu8SPxiqlu12wZP/3sWmnc=
github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
github.com/jessevdk/go-flags v1.4.0 h1:4IU2WS7AumrZ/40jfhf4QVDMsQwqA7VEHozFRrGARJA=
github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI=
github.com/maputnik/desktop v1.0.7 h1:rdFg7emIJOT3YsZpwqSChmWtMOvu+T4h6WwVQAZP9n4=
github.com/maputnik/desktop v1.0.7/go.mod h1:wmDjHUztx9jOBz0I22589yWguAGdV/sEM57YANpN8oQ=
github.com/nkovacs/streamquote v1.0.0 h1:PmVIV08Zlx2lZK5fFZlMZ04eHcDTIFJCv/5/0twVUow=
github.com/nkovacs/streamquote v1.0.0/go.mod h1:BN+NaZ2CmdKqUuTUXUEm9j95B2TRbpOWpxbJYzzgUsc=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/urfave/cli v1.22.12 h1:igJgVw1JdKH+trcLWLeLwZjU9fEfPesQ+9/e4MQ44S8=
github.com/urfave/cli v1.22.12/go.mod h1:sSBEIC79qR6OvcmsD4U3KABeOTxDqQtdDnaFuUN30b8=
github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw=
github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=
github.com/valyala/fasttemplate v1.0.1 h1:tY9CJiPnMXf1ERmG2EyK7gNUd+c6RKGD0IfU8WdUSz8=
github.com/valyala/fasttemplate v1.0.1/go.mod h1:UQGH1tvbgY+Nz5t2n7tXsz52dQxojPUpymEIMZ47gx8=
golang.org/x/sys v0.0.0-20220908164124-27713097b956 h1:XeJjHH1KiLpKGb6lvMiksZ9l0fVUh+AmGcm0nOMEBOY=
golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
+80
View File
@@ -0,0 +1,80 @@
package main
import (
"fmt"
"net/http"
"os"
"path/filepath"
"github.com/GeertJohan/go.rice"
"github.com/gorilla/handlers"
"github.com/gorilla/mux"
"github.com/maputnik/desktop/filewatch"
"github.com/urfave/cli"
)
func main() {
app := cli.NewApp()
app.Name = "maputnik"
app.Usage = "Server for integrating Maputnik locally"
app.Version = Version
app.Flags = []cli.Flag{
&cli.StringFlag{
Name: "file, f",
Usage: "Allow access to JSON style from web client",
},
&cli.BoolFlag{
Name: "watch",
Usage: "Notify web client about JSON style file changes",
},
&cli.IntFlag{
Name: "port",
Value: 8000,
Usage: "TCP port to listen on",
},
&cli.StringFlag{
Name: "static",
Usage: "Serve directory under /static/",
},
}
app.Action = func(c *cli.Context) error {
gui := http.FileServer(rice.MustFindBox("editor").HTTPBox())
router := mux.NewRouter().StrictSlash(true)
filename := c.String("file")
if filename != "" {
fmt.Printf("%s is accessible via Maputnik\n", filename)
// Allow access to reading and writing file on the local system
path, _ := filepath.Abs(filename)
accessor := StyleFileAccessor(path)
router.Path("/styles").Methods("GET").HandlerFunc(accessor.ListFiles)
router.Path("/styles/{styleId}").Methods("GET").HandlerFunc(accessor.ReadFile)
router.Path("/styles/{styleId}").Methods("PUT").HandlerFunc(accessor.SaveFile)
// Register websocket to notify we clients about file changes
if c.Bool("watch") {
router.Path("/ws").HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
filewatch.ServeWebsocketFileWatcher(filename, w, r)
})
}
}
staticDir := c.String("static")
if staticDir != "" {
h := http.StripPrefix("/static/", http.FileServer(http.Dir(staticDir)))
router.PathPrefix("/static/").Handler(h)
}
router.PathPrefix("/").Handler(http.StripPrefix("/", gui))
loggedRouter := handlers.LoggingHandler(os.Stdout, router)
corsRouter := handlers.CORS(handlers.AllowedHeaders([]string{"Content-Type"}), handlers.AllowedMethods([]string{"GET", "PUT"}), handlers.AllowedOrigins([]string{"*"}), handlers.AllowCredentials())(loggedRouter)
fmt.Printf("Exposing Maputnik on http://localhost:%d\n", c.Int("port"))
return http.ListenAndServe(fmt.Sprintf(":%d", c.Int("port")), corsRouter)
}
app.Run(os.Args)
}
+60
View File
@@ -0,0 +1,60 @@
{
"RT_GROUP_ICON": {
"APP": {
"0000": [
"../../src/img/maputnik.png"
]
}
},
"RT_MANIFEST": {
"#1": {
"0409": {
"identity": {
"name": "Maputnik",
"version": "{{.Version}}"
},
"description": "A MapLibre GL visual style editor",
"minimum-os": "win7",
"execution-level": "as invoker",
"ui-access": false,
"auto-elevate": false,
"dpi-awareness": "system",
"disable-theming": false,
"disable-window-filtering": false,
"high-resolution-scrolling-aware": false,
"ultra-high-resolution-scrolling-aware": false,
"long-path-aware": false,
"printer-driver-isolation": false,
"gdi-scaling": false,
"segment-heap": false,
"use-common-controls-v6": false
}
}
},
"RT_VERSION": {
"#1": {
"0000": {
"fixed": {
"file_version": "{{.Version}}",
"product_version": "{{.Version}}"
},
"info": {
"0409": {
"Comments": "https://github.com/maplibre/maputnik",
"CompanyName": "Maputnik",
"FileDescription": "A MapLibre GL visual style editor",
"FileVersion": "{{.Version}}",
"InternalName": "Maputnik",
"LegalCopyright": "MIT License",
"LegalTrademarks": "",
"OriginalFilename": "Maputnik.exe",
"PrivateBuild": "",
"ProductName": "Maputnik",
"ProductVersion": "{{.Version}}",
"SpecialBuild": ""
}
}
}
}
}
}
+61
View File
@@ -0,0 +1,61 @@
import eslint from '@eslint/js';
import tseslint from 'typescript-eslint';
import reactPlugin from 'eslint-plugin-react';
import reactHooksPlugin from 'eslint-plugin-react-hooks';
import reactRefreshPlugin from 'eslint-plugin-react-refresh';
export default tseslint.config({
extends: [
eslint.configs.recommended,
tseslint.configs.recommended,
],
files: ['**/*.{js,jsx,ts,tsx}'],
ignores: [
"dist/**/*",
],
languageOptions: {
ecmaVersion: 2024,
sourceType: 'module',
globals: {
global: 'readonly'
}
},
settings: {
react: { version: '18.2' }
},
plugins: {
'react': reactPlugin,
'react-hooks': reactHooksPlugin,
'react-refresh': reactRefreshPlugin
},
rules: {
'react-refresh/only-export-components': [
'warn',
{ allowConstantExport: true }
],
"@typescript-eslint/no-explicit-any": "off",
'@typescript-eslint/no-unused-vars': [
'warn',
{
varsIgnorePattern: '^_',
caughtErrors: 'all',
caughtErrorsIgnorePattern: '^_',
argsIgnorePattern: '^_'
}
],
'no-unused-vars': 'off',
'react/prop-types': 'off',
'no-undef': 'off',
'indent': ['error', 2],
'no-var': 'error',
'@typescript-eslint/no-non-null-asserted-optional-chain': 'off',
'@typescript-eslint/ban-ts-comment': 'off',
'@typescript-eslint/no-empty-object-type': 'off',
},
linterOptions: {
reportUnusedDisableDirectives: true,
noInlineConfig: false
}
}
)
+17
View File
@@ -0,0 +1,17 @@
export default {
output: 'src/locales/$LOCALE/$NAMESPACE.json',
locales: [ 'de', 'fr', 'he', 'it','ja', 'zh' ],
// Because some keys are dynamically generated, i18next-parser can't detect them.
// We add these keys manually, so we don't want to remove them.
keepRemoved: true,
// We use plain English keys, so we disable key and namespace separators.
keySeparator: false,
namespaceSeparator: false,
defaultValue: (_locale, _ns, _key) => {
// The default value is a string that indicates that the string is not translated.
return '__STRING_NOT_TRANSLATED__';
}
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

+5899 -11764
View File
File diff suppressed because it is too large Load Diff
+70 -70
View File
@@ -1,43 +1,48 @@
{
"name": "maputnik",
"version": "2.0.0-pre.2",
"version": "2.1.1",
"description": "A MapLibre GL visual style editor",
"type": "module",
"main": "''",
"scripts": {
"start": "vite",
"build": "tsc && vite build",
"lint": "eslint ./src ./cypress --ext ts,tsx,js,jsx --report-unused-disable-directives --max-warnings 0",
"build": "tsc && vite build --base=/maputnik/",
"build-desktop": "tsc && vite build --base=/ && cd desktop && make",
"i18n:refresh": "i18next 'src/**/*.{ts,tsx,js,jsx}'",
"lint": "eslint",
"test": "cypress run",
"cy:open": "cypress open",
"lint-css": "stylelint \"src/styles/*.scss\"",
"storybook": "storybook dev -h 0.0.0.0 -p 6006",
"build-storybook": "storybook build -o build/storybook"
"sort-styles": "jq 'sort_by(.id)' src/config/styles.json > tmp.json && mv tmp.json src/config/styles.json"
},
"repository": {
"type": "git",
"url": "https://github.com/maputnik/editor"
"url": "https://github.com/maplibre/maputnik"
},
"author": "Lukas Martinelli",
"license": "MIT",
"homepage": "https://github.com/maputnik/editor#readme",
"homepage": "https://github.com/maplibre/maputnik#readme",
"dependencies": {
"@mapbox/mapbox-gl-rtl-text": "^0.2.3",
"@maplibre/maplibre-gl-style-spec": "^17.0.1",
"@mdi/js": "^6.6.96",
"@mdi/react": "^1.5.0",
"@typescript-eslint/eslint-plugin": "^6.16.0",
"@typescript-eslint/parser": "^6.16.0",
"@mapbox/mapbox-gl-rtl-text": "^0.3.0",
"@maplibre/maplibre-gl-geocoder": "^1.7.1",
"@maplibre/maplibre-gl-inspect": "^1.7.1",
"@maplibre/maplibre-gl-style-spec": "^23.1.0",
"@mdi/js": "^7.4.47",
"@mdi/react": "^1.6.1",
"@prantlf/jsonlint": "^16.0.0",
"array-move": "^4.0.0",
"buffer": "^6.0.3",
"classnames": "^2.3.1",
"codemirror": "^5.65.2",
"color": "^4.2.3",
"classnames": "^2.5.1",
"codemirror": "^5.65.18",
"color": "^5.0.0",
"detect-browser": "^5.3.0",
"events": "^3.3.0",
"file-saver": "^2.0.5",
"json-stringify-pretty-compact": "^3.0.0",
"i18next": "^24.2.2",
"i18next-browser-languagedetector": "^8.0.4",
"i18next-resources-to-backend": "^1.2.1",
"json-stringify-pretty-compact": "^4.0.0",
"json-to-ast": "^2.1.0",
"jsonlint": "github:josdejong/jsonlint#85a19d7",
"lodash": "^4.17.21",
"lodash.capitalize": "^4.2.1",
"lodash.clamp": "^4.0.3",
@@ -45,30 +50,30 @@
"lodash.get": "^4.4.2",
"lodash.isequal": "^4.5.0",
"lodash.throttle": "^4.1.1",
"mapbox-gl-inspect": "^1.3.1",
"maplibre-gl": "^2.4.0",
"maplibre-gl": "^5.1.0",
"maputnik-design": "github:maputnik/design#172b06c",
"ol": "^6.14.1",
"ol-mapbox-style": "^7.1.1",
"ol": "^10.4.0",
"ol-mapbox-style": "^12.4.0",
"pmtiles": "^4.1.0",
"prop-types": "^15.8.1",
"react": "^16.0.0",
"react-accessible-accordion": "^4.0.0",
"react": "^18.2.0",
"react-accessible-accordion": "^5.0.0",
"react-aria-menubutton": "^7.0.3",
"react-aria-modal": "^4.0.1",
"react-aria-modal": "^5.0.2",
"react-autobind": "^1.0.6",
"react-autocomplete": "^1.8.1",
"react-collapse": "^5.1.1",
"react-color": "^2.19.3",
"react-dom": "^16.0.0",
"react-dom": "^18.2.0",
"react-file-reader-input": "^2.0.0",
"react-i18next": "^15.4.0",
"react-icon-base": "^2.1.2",
"react-icons": "^4.3.1",
"react-icons": "^5.4.0",
"react-sortable-hoc": "^2.0.0",
"reconnecting-websocket": "^4.4.0",
"sass": "^1.50.0",
"slugify": "^1.6.5",
"slugify": "^1.6.6",
"string-hash": "^1.1.3",
"url": "^0.11.0"
"url": "^0.11.4"
},
"jshintConfig": {
"esversion": 6
@@ -88,24 +93,16 @@
}
},
"devDependencies": {
"@cypress/code-coverage": "^3.12.15",
"@cypress/code-coverage": "^3.13.11",
"@eslint/js": "^9.19.0",
"@istanbuljs/nyc-config-typescript": "^1.0.2",
"@rollup/plugin-replace": "^5.0.5",
"@shellygo/cypress-test-utils": "^2.0.17",
"@storybook/addon-a11y": "^7.6.5",
"@storybook/addon-actions": "^7.6.5",
"@storybook/addon-links": "^7.6.5",
"@storybook/addon-storysource": "^7.6.5",
"@storybook/addons": "^7.6.5",
"@storybook/builder-vite": "^7.6.5",
"@storybook/react": "^7.6.5",
"@storybook/react-vite": "^7.6.5",
"@storybook/theming": "^7.6.5",
"@rollup/plugin-replace": "^6.0.2",
"@shellygo/cypress-test-utils": "^4.1.13",
"@types/codemirror": "^5.60.15",
"@types/color": "^3.0.6",
"@types/color": "^4.2.0",
"@types/cors": "^2.8.17",
"@types/file-saver": "^2.0.7",
"@types/geojson": "^7946.0.13",
"@types/geojson": "^7946.0.16",
"@types/json-to-ast": "^2.1.4",
"@types/lodash.capitalize": "^4.2.9",
"@types/lodash.clamp": "^4.0.9",
@@ -113,37 +110,40 @@
"@types/lodash.get": "^4.4.9",
"@types/lodash.isequal": "^4.5.8",
"@types/lodash.throttle": "^4.1.9",
"@types/react": "^16.14.52",
"@types/react-aria-menubutton": "^6.2.13",
"@types/react-aria-modal": "^4.0.9",
"@types/react-autocomplete": "^1.8.9",
"@types/randomcolor": "^0.5.9",
"@types/react": "^18.2.67",
"@types/react-aria-menubutton": "^6.2.14",
"@types/react-aria-modal": "^5.0.0",
"@types/react-autocomplete": "^1.8.11",
"@types/react-collapse": "^5.0.4",
"@types/react-color": "^3.0.10",
"@types/react-dom": "^16.9.24",
"@types/react-color": "^3.0.13",
"@types/react-dom": "^18.2.22",
"@types/react-file-reader-input": "^2.0.4",
"@types/react-icon-base": "^2.1.6",
"@types/string-hash": "^1.1.3",
"@types/uuid": "^9.0.7",
"@vitejs/plugin-react": "^4.2.0",
"@types/uuid": "^10.0.0",
"@types/wicg-file-system-access": "^2023.10.5",
"@vitejs/plugin-react": "^4.3.4",
"cors": "^2.8.5",
"cypress": "^13.6.1",
"eslint": "^8.56.0",
"eslint-plugin-react": "^7.33.2",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.5",
"express": "^4.17.3",
"cypress": "^14.0.2",
"cypress-plugin-tab": "^1.0.5",
"eslint": "^9.19.0",
"eslint-plugin-react": "^7.37.4",
"eslint-plugin-react-hooks": "^5.1.0",
"eslint-plugin-react-refresh": "^0.4.18",
"i18next-parser": "^9.1.0",
"istanbul": "^0.4.5",
"istanbul-lib-coverage": "^3.2.0",
"mocha": "^9.2.2",
"postcss": "^8.4.12",
"react-hot-loader": "^4.13.0",
"storybook": "^7.6.5",
"stylelint": "^14.6.1",
"stylelint-config-recommended-scss": "^6.0.0",
"stylelint-scss": "^4.2.0",
"typescript": "^5.3.3",
"uuid": "^8.3.2",
"vite": "^5.0.0",
"vite-plugin-istanbul": "^5.0.0"
"istanbul-lib-coverage": "^3.2.2",
"postcss": "^8.5.1",
"react-hot-loader": "^4.13.1",
"sass": "^1.83.4",
"stylelint": "^16.14.1",
"stylelint-config-recommended-scss": "^14.1.0",
"stylelint-scss": "^6.11.0",
"typescript": "^5.7.3",
"typescript-eslint": "^8.22.0",
"uuid": "^11.0.5",
"vite": "^6.1.0",
"vite-plugin-istanbul": "^6.0.2"
}
}
+68 -42
View File
@@ -8,8 +8,9 @@ import get from 'lodash.get'
import {unset} from 'lodash'
import {arrayMoveMutable} from 'array-move'
import hash from "string-hash";
import { PMTiles } from "pmtiles";
import {Map, LayerSpecification, StyleSpecification, ValidationError, SourceSpecification} from 'maplibre-gl'
import {latest, validate} from '@maplibre/maplibre-gl-style-spec'
import {latest, validateStyleMin} from '@maplibre/maplibre-gl-style-spec'
import MapMaplibreGl from './MapMaplibreGl'
import MapOpenLayers from './MapOpenLayers'
@@ -24,7 +25,6 @@ import ModalExport from './ModalExport'
import ModalSources from './ModalSources'
import ModalOpen from './ModalOpen'
import ModalShortcuts from './ModalShortcuts'
import ModalSurvey from './ModalSurvey'
import ModalDebug from './ModalDebug'
import {downloadGlyphsMetadata, downloadSpriteMetadata} from '../libs/metadata'
@@ -128,16 +128,15 @@ type AppState = {
open: boolean
shortcuts: boolean
export: boolean
survey: boolean
debug: boolean
}
fileHandle: FileSystemFileHandle | null
}
export default class App extends React.Component<any, AppState> {
revisionStore: RevisionStore;
styleStore: StyleStore | ApiStyleStore;
layerWatcher: LayerWatcher;
shortcutEl: ModalShortcuts | null = null;
constructor(props: any) {
super(props)
@@ -277,7 +276,6 @@ export default class App extends React.Component<any, AppState> {
shortcuts: false,
export: false,
// TODO: Disabled for now, this should be opened on the Nth visit to the editor
survey: false,
debug: false,
},
maplibreGlDebugOptions: {
@@ -288,6 +286,7 @@ export default class App extends React.Component<any, AppState> {
openlayersDebugOptions: {
debugToolbox: false,
},
fileHandle: null,
}
this.layerWatcher = new LayerWatcher({
@@ -364,6 +363,7 @@ export default class App extends React.Component<any, AppState> {
[property]: value
}
}
this.onStyleChanged(changedStyle)
}
@@ -375,12 +375,29 @@ export default class App extends React.Component<any, AppState> {
...opts,
};
// For the style object, find the urls that has "{key}" and insert the correct API keys
// Without this, going from e.g. MapTiler to OpenLayers and back will lose the maptlier key.
if (newStyle.glyphs && typeof newStyle.glyphs === 'string') {
newStyle.glyphs = setFetchAccessToken(newStyle.glyphs, newStyle);
}
if (newStyle.sprite && typeof newStyle.sprite === 'string') {
newStyle.sprite = setFetchAccessToken(newStyle.sprite, newStyle);
}
for (const [_sourceId, source] of Object.entries(newStyle.sources)) {
if (source && 'url' in source && typeof source.url === 'string') {
source.url = setFetchAccessToken(source.url, newStyle);
}
}
if (opts.initialLoad) {
this.getInitialStateFromUrl(newStyle);
}
// This "any" can be removed in latest version of maplibre where maplibre re-exported types from style-spec
const errors = validate(newStyle as any, latest) || [];
const errors: ValidationError[] = validateStyleMin(newStyle) || [];
// The validate function doesn't give us errors for duplicate error with
// empty string for layer.id, manually deal with that here.
@@ -616,7 +633,8 @@ export default class App extends React.Component<any, AppState> {
}
}
openStyle = (styleObj: StyleSpecification & {id: string}) => {
openStyle = (styleObj: StyleSpecification & {id: string}, fileHandle: FileSystemFileHandle | null) => {
this.setState({fileHandle: fileHandle});
styleObj = this.setDefaultValues(styleObj)
this.onStyleChanged(styleObj)
}
@@ -643,33 +661,41 @@ export default class App extends React.Component<any, AppState> {
console.warn("Failed to setFetchAccessToken: ", err);
}
fetch(url!, {
mode: 'cors',
})
.then(response => response.json())
.then(json => {
const setVectorLayers = (json:any) => {
if(!Object.prototype.hasOwnProperty.call(json, "vector_layers")) {
return;
}
if(!Object.prototype.hasOwnProperty.call(json, "vector_layers")) {
return;
}
// Create new objects before setState
const sources = Object.assign({}, {
[key]: this.state.sources[key],
});
for(const layer of json.vector_layers) {
(sources[key] as any).layers.push(layer.id)
}
console.debug("Updating source: "+key);
this.setState({
sources: sources
});
})
.catch(err => {
console.error("Failed to process sources for '%s'", url, err);
// Create new objects before setState
const sources = Object.assign({}, {
[key]: this.state.sources[key],
});
for(const layer of json.vector_layers) {
(sources[key] as any).layers.push(layer.id)
}
this.setState({
sources: sources
});
};
if (url!.startsWith("pmtiles://")) {
(new PMTiles(url!.substr(10))).getTileJson("")
.then(json => setVectorLayers(json))
.catch(err => {
console.error("Failed to process sources for '%s'", url, err);
});
} else {
fetch(url!, {
mode: 'cors',
})
.then(response => response.json())
.then(json => setVectorLayers(json))
.catch(err => {
console.error("Failed to process sources for '%s'", url, err);
});
}
}
else {
sourceList[key] = this.state.sources[key] || this.state.mapStyle.sources[key];
@@ -730,6 +756,7 @@ export default class App extends React.Component<any, AppState> {
onLayerSelect={this.onLayerSelect}
/>
} else {
mapElement = <MapMaplibreGl {...mapProps}
onChange={this.onMapChange}
options={this.state.maplibreGlDebugOptions}
@@ -783,6 +810,7 @@ export default class App extends React.Component<any, AppState> {
getInitialStateFromUrl = (mapStyle: StyleSpecification) => {
const url = new URL(location.href);
const modalParam = url.searchParams.get("modal");
if (modalParam && modalParam !== "") {
const modals = modalParam.split(",");
const modalObj: {[key: string]: boolean} = {};
@@ -840,10 +868,6 @@ export default class App extends React.Component<any, AppState> {
}
setModal(modalName: keyof AppState["isOpen"], value: boolean) {
if(modalName === 'survey' && value === false) {
localStorage.setItem('survey', '');
}
this.setState({
isOpen: {
...this.state.isOpen,
@@ -856,6 +880,10 @@ export default class App extends React.Component<any, AppState> {
this.setModal(modalName, !this.state.isOpen[modalName]);
}
onSetFileHandle(fileHandle: FileSystemFileHandle | null) {
this.setState({fileHandle: fileHandle});
}
onChangeOpenlayersDebug = (key: keyof AppState["openlayersDebugOptions"], value: boolean) => {
this.setState({
openlayersDebugOptions: {
@@ -943,7 +971,6 @@ export default class App extends React.Component<any, AppState> {
mapView={this.state.mapView}
/>
<ModalShortcuts
ref={(el) => this.shortcutEl = el}
isOpen={this.state.isOpen.shortcuts}
onOpenToggle={this.toggleModal.bind(this, 'shortcuts')}
/>
@@ -959,11 +986,14 @@ export default class App extends React.Component<any, AppState> {
onStyleChanged={this.onStyleChanged}
isOpen={this.state.isOpen.export}
onOpenToggle={this.toggleModal.bind(this, 'export')}
fileHandle={this.state.fileHandle}
onSetFileHandle={this.onSetFileHandle}
/>
<ModalOpen
isOpen={this.state.isOpen.open}
onStyleOpen={this.openStyle}
onOpenToggle={this.toggleModal.bind(this, 'open')}
fileHandle={this.state.fileHandle}
/>
<ModalSources
mapStyle={this.state.mapStyle}
@@ -971,10 +1001,6 @@ export default class App extends React.Component<any, AppState> {
isOpen={this.state.isOpen.sources}
onOpenToggle={this.toggleModal.bind(this, 'sources')}
/>
<ModalSurvey
isOpen={this.state.isOpen.survey}
onOpenToggle={this.toggleModal.bind(this, 'survey')}
/>
</div>
return <AppLayout
+18 -12
View File
@@ -1,17 +1,18 @@
import React from 'react'
import PropTypes from 'prop-types'
import ScrollContainer from './ScrollContainer'
import { WithTranslation, withTranslation } from 'react-i18next';
type AppLayoutProps = {
type AppLayoutInternalProps = {
toolbar: React.ReactElement
layerList: React.ReactElement
layerEditor?: React.ReactElement
map: React.ReactElement
bottom?: React.ReactElement
modals?: React.ReactNode
};
} & WithTranslation;
class AppLayout extends React.Component<AppLayoutProps> {
class AppLayoutInternal extends React.Component<AppLayoutInternalProps> {
static childContextTypes = {
reactIconBase: PropTypes.object
}
@@ -23,17 +24,21 @@ class AppLayout extends React.Component<AppLayoutProps> {
}
render() {
document.body.dir = this.props.i18n.dir();
return <div className="maputnik-layout">
{this.props.toolbar}
<div className="maputnik-layout-list">
{this.props.layerList}
<div className="maputnik-layout-main">
<div className="maputnik-layout-list">
{this.props.layerList}
</div>
<div className="maputnik-layout-drawer">
<ScrollContainer>
{this.props.layerEditor}
</ScrollContainer>
</div>
{this.props.map}
</div>
<div className="maputnik-layout-drawer">
<ScrollContainer>
{this.props.layerEditor}
</ScrollContainer>
</div>
{this.props.map}
{this.props.bottom && <div className="maputnik-layout-bottom">
{this.props.bottom}
</div>
@@ -43,4 +48,5 @@ class AppLayout extends React.Component<AppLayoutProps> {
}
}
export default AppLayout
const AppLayout = withTranslation()(AppLayoutInternal);
export default AppLayout;
+12 -7
View File
@@ -1,23 +1,24 @@
import React from 'react'
import {formatLayerId} from '../libs/format';
import {LayerSpecification, StyleSpecification} from 'maplibre-gl';
import { Trans, WithTranslation, withTranslation } from 'react-i18next';
type AppMessagePanelProps = {
type AppMessagePanelInternalProps = {
errors?: unknown[]
infos?: unknown[]
infos?: string[]
mapStyle?: StyleSpecification
onLayerSelect?(...args: unknown[]): unknown
currentLayer?: LayerSpecification
selectedLayerIndex?: number
};
} & WithTranslation;
export default class AppMessagePanel extends React.Component<AppMessagePanelProps> {
class AppMessagePanelInternal extends React.Component<AppMessagePanelInternalProps> {
static defaultProps = {
onLayerSelect: () => {},
}
render() {
const {selectedLayerIndex} = this.props;
const {t, selectedLayerIndex} = this.props;
const errors = this.props.errors?.map((error: any, idx) => {
let content;
if (error.parsed && error.parsed.type === "layer") {
@@ -25,7 +26,9 @@ export default class AppMessagePanel extends React.Component<AppMessagePanelProp
const layerId = this.props.mapStyle?.layers[parsed.data.index].id;
content = (
<>
Layer <span>{formatLayerId(layerId)}</span>: {parsed.data.message}
<Trans t={t}>
Layer <span>{formatLayerId(layerId)}</span>: {parsed.data.message}
</Trans>
{selectedLayerIndex !== parsed.data.index &&
<>
&nbsp;&mdash;&nbsp;
@@ -33,7 +36,7 @@ export default class AppMessagePanel extends React.Component<AppMessagePanelProp
className="maputnik-message-panel__switch-button"
onClick={() => this.props.onLayerSelect!(parsed.data.index)}
>
switch to layer
{t("switch to layer")}
</button>
</>
}
@@ -59,3 +62,5 @@ export default class AppMessagePanel extends React.Component<AppMessagePanelProp
}
}
const AppMessagePanel = withTranslation()(AppMessagePanelInternal);
export default AppMessagePanel;
+65 -53
View File
@@ -2,9 +2,20 @@ import React from 'react'
import classnames from 'classnames'
import {detect} from 'detect-browser';
import {MdFileDownload, MdOpenInBrowser, MdSettings, MdLayers, MdHelpOutline, MdFindInPage, MdAssignmentTurnedIn} from 'react-icons/md'
import {
MdOpenInBrowser,
MdSettings,
MdLayers,
MdHelpOutline,
MdFindInPage,
MdLanguage,
MdSave
} from 'react-icons/md'
import pkgJson from '../../package.json'
//@ts-ignore
import maputnikLogo from 'maputnik-design/logos/logo-color.svg?inline'
import { withTranslation, WithTranslation } from 'react-i18next';
import { supportedLanguages } from '../i18n';
// This is required because of <https://stackoverflow.com/a/49846426>, there isn't another way to detect support that I'm aware of.
const browser = detect();
@@ -43,29 +54,6 @@ class ToolbarLink extends React.Component<ToolbarLinkProps> {
}
}
type ToolbarLinkHighlightedProps = {
className?: string
children?: React.ReactNode
href?: string
onToggleModal?(...args: unknown[]): unknown
};
class ToolbarLinkHighlighted extends React.Component<ToolbarLinkHighlightedProps> {
render() {
return <a
className={classnames('maputnik-toolbar-link', "maputnik-toolbar-link--highlighted", this.props.className)}
href={this.props.href}
rel="noopener noreferrer"
target="_blank"
data-wd-key="toolbar:link-highlighted"
>
<span className="maputnik-toolbar-link-wrapper">
{this.props.children}
</span>
</a>
}
}
type ToolbarSelectProps = {
children?: React.ReactNode
wdKey?: string
@@ -102,7 +90,7 @@ class ToolbarAction extends React.Component<ToolbarActionProps> {
export type MapState = "map" | "inspect" | "filter-achromatopsia" | "filter-deuteranopia" | "filter-protanopia" | "filter-tritanopia";
type AppToolbarProps = {
type AppToolbarInternalProps = {
mapStyle: object
inspectModeEnabled: boolean
onStyleChanged(...args: unknown[]): unknown
@@ -115,9 +103,9 @@ type AppToolbarProps = {
onSetMapState(mapState: MapState): unknown
mapState?: MapState
renderer?: string
};
} & WithTranslation;
export default class AppToolbar extends React.Component<AppToolbarProps> {
class AppToolbarInternal extends React.Component<AppToolbarInternalProps> {
state = {
isOpen: {
settings: false,
@@ -132,6 +120,10 @@ export default class AppToolbar extends React.Component<AppToolbarProps> {
this.props.onSetMapState(val);
}
handleLanguageChange(val: string) {
this.props.i18n.changeLanguage(val);
}
onSkip = (target: string) => {
if (target === "map") {
(document.querySelector(".maplibregl-canvas") as HTMLCanvasElement).focus();
@@ -143,40 +135,41 @@ export default class AppToolbar extends React.Component<AppToolbarProps> {
}
render() {
const t = this.props.t;
const views = [
{
id: "map",
group: "general",
title: "Map",
title: t("Map"),
},
{
id: "inspect",
group: "general",
title: "Inspect",
title: t("Inspect"),
disabled: this.props.renderer === 'ol',
},
{
id: "filter-deuteranopia",
group: "color-accessibility",
title: "Deuteranopia filter",
title: t("Deuteranopia filter"),
disabled: !colorAccessibilityFiltersEnabled,
},
{
id: "filter-protanopia",
group: "color-accessibility",
title: "Protanopia filter",
title: t("Protanopia filter"),
disabled: !colorAccessibilityFiltersEnabled,
},
{
id: "filter-tritanopia",
group: "color-accessibility",
title: "Tritanopia filter",
title: t("Tritanopia filter"),
disabled: !colorAccessibilityFiltersEnabled,
},
{
id: "filter-achromatopsia",
group: "color-accessibility",
title: "Achromatopsia filter",
title: t("Achromatopsia filter"),
disabled: !colorAccessibilityFiltersEnabled,
},
];
@@ -196,29 +189,29 @@ export default class AppToolbar extends React.Component<AppToolbarProps> {
className="maputnik-toolbar-skip"
onClick={_e => this.onSkip("layer-list")}
>
Layers list
{t("Layers list")}
</button>
<button
data-wd-key="root:skip:layer-editor"
className="maputnik-toolbar-skip"
onClick={_e => this.onSkip("layer-editor")}
>
Layer editor
{t("Layer editor")}
</button>
<button
data-wd-key="root:skip:map-view"
className="maputnik-toolbar-skip"
onClick={_e => this.onSkip("map")}
>
Map view
{t("Map view")}
</button>
<a
className="maputnik-toolbar-logo"
target="blank"
rel="noreferrer noopener"
href="https://github.com/maputnik/editor"
href="https://github.com/maplibre/maputnik"
>
<img src="node_modules/maputnik-design/logos/logo-color.svg" />
<img src={maputnikLogo} alt={t("Maputnik on GitHub")} />
<h1>
<span className="maputnik-toolbar-name">{pkgJson.name}</span>
<span className="maputnik-toolbar-version">v{pkgJson.version}</span>
@@ -228,24 +221,24 @@ export default class AppToolbar extends React.Component<AppToolbarProps> {
<div className="maputnik-toolbar__actions" role="navigation" aria-label="Toolbar">
<ToolbarAction wdKey="nav:open" onClick={this.props.onToggleModal.bind(this, 'open')}>
<MdOpenInBrowser />
<IconText>Open</IconText>
<IconText>{t("Open")}</IconText>
</ToolbarAction>
<ToolbarAction wdKey="nav:export" onClick={this.props.onToggleModal.bind(this, 'export')}>
<MdFileDownload />
<IconText>Export</IconText>
<MdSave />
<IconText>{t("Save")}</IconText>
</ToolbarAction>
<ToolbarAction wdKey="nav:sources" onClick={this.props.onToggleModal.bind(this, 'sources')}>
<MdLayers />
<IconText>Data Sources</IconText>
<IconText>{t("Data Sources")}</IconText>
</ToolbarAction>
<ToolbarAction wdKey="nav:settings" onClick={this.props.onToggleModal.bind(this, 'settings')}>
<MdSettings />
<IconText>Style Settings</IconText>
<IconText>{t("Style Settings")}</IconText>
</ToolbarAction>
<ToolbarSelect wdKey="nav:inspect">
<MdFindInPage />
<label>View
<IconText>{t("View")}
<select
className="maputnik-select"
data-wd-key="maputnik-select"
@@ -259,7 +252,7 @@ export default class AppToolbar extends React.Component<AppToolbarProps> {
</option>
);
})}
<optgroup label="Color accessibility">
<optgroup label={t("Color accessibility")}>
{views.filter(v => v.group === "color-accessibility").map((item) => {
return (
<option key={item.id} value={item.id} disabled={item.disabled}>
@@ -269,19 +262,38 @@ export default class AppToolbar extends React.Component<AppToolbarProps> {
})}
</optgroup>
</select>
</label>
</IconText>
</ToolbarSelect>
<ToolbarLink href={"https://github.com/maputnik/editor/wiki"}>
<ToolbarSelect wdKey="nav:language">
<MdLanguage />
<IconText>Language
<select
className="maputnik-select"
data-wd-key="maputnik-lang-select"
onChange={(e) => this.handleLanguageChange(e.target.value)}
value={this.props.i18n.language}
>
{Object.entries(supportedLanguages).map(([code, name]) => {
return (
<option key={code} value={code}>
{name}
</option>
);
})}
</select>
</IconText>
</ToolbarSelect>
<ToolbarLink href={"https://github.com/maplibre/maputnik/wiki"}>
<MdHelpOutline />
<IconText>Help</IconText>
<IconText>{t("Help")}</IconText>
</ToolbarLink>
<ToolbarLinkHighlighted href={"https://gregorywolanski.typeform.com/to/cPgaSY"}>
<MdAssignmentTurnedIn />
<IconText>Take the Maputnik Survey</IconText>
</ToolbarLinkHighlighted>
</div>
</div>
</nav>
}
}
const AppToolbar = withTranslation()(AppToolbarInternal);
export default AppToolbar;
+5 -3
View File
@@ -1,10 +1,10 @@
import React, {SyntheticEvent} from 'react'
import React, {PropsWithChildren, SyntheticEvent} from 'react'
import classnames from 'classnames'
import FieldDocLabel from './FieldDocLabel'
import Doc from './Doc'
type BlockProps = {
type BlockProps = PropsWithChildren & {
"data-wd-key"?: string
label?: string
action?: React.ReactElement
@@ -56,7 +56,9 @@ export default class Block extends React.Component<BlockProps, BlockState> {
if (event.nativeEvent.target.nodeName !== "INPUT" && !contains) {
event.stopPropagation();
}
event.preventDefault();
if (event.nativeEvent.target.nodeName !== "A") {
event.preventDefault();
}
}
render() {
+10 -3
View File
@@ -18,6 +18,8 @@ type DocProps = {
'sdk-support'?: {
[key: string]: typeof headers
}
docUrl?: string,
docUrlLinkText?: string
}
};
@@ -25,13 +27,13 @@ export default class Doc extends React.Component<DocProps> {
render () {
const {fieldSpec} = this.props;
const {doc, values} = fieldSpec;
const {doc, values, docUrl, docUrlLinkText} = fieldSpec;
const sdkSupport = fieldSpec['sdk-support'];
const renderValues = (
!!values &&
// HACK: Currently we merge additional values into the style spec, so this is required
// See <https://github.com/maputnik/editor/blob/main/src/components/PropertyGroup.jsx#L16>
// See <https://github.com/maplibre/maputnik/blob/main/src/components/PropertyGroup.jsx#L16>
!Array.isArray(values)
);
@@ -85,7 +87,12 @@ export default class Doc extends React.Component<DocProps> {
</table>
</div>
}
{docUrl && docUrlLinkText &&
<div className="SpecDoc__learn-more">
<a href={docUrl} target="_blank" rel="noreferrer">{docUrlLinkText}</a>
</div>
}
</>
);
}
}
}
+11 -6
View File
@@ -2,21 +2,23 @@ import React from 'react'
import Block from './Block'
import InputString from './InputString'
import { WithTranslation, withTranslation } from 'react-i18next';
type FieldCommentProps = {
type FieldCommentInternalProps = {
value?: string
onChange(value: string | undefined): unknown
error: {message: string}
};
} & WithTranslation;
export default class FieldComment extends React.Component<FieldCommentProps> {
class FieldCommentInternal extends React.Component<FieldCommentInternalProps> {
render() {
const t = this.props.t;
const fieldSpec = {
doc: "Comments for the current layer. This is non-standard and not in the spec."
doc: t("Comments for the current layer. This is non-standard and not in the spec."),
};
return <Block
label={"Comments"}
label={t("Comments")}
fieldSpec={fieldSpec}
data-wd-key="layer-comment"
error={this.props.error}
@@ -25,9 +27,12 @@ export default class FieldComment extends React.Component<FieldCommentProps> {
multi={true}
value={this.props.value}
onChange={this.props.onChange}
default="Comment..."
default={t("Comment...")}
data-wd-key="layer-comment.input"
/>
</Block>
}
}
const FieldComment = withTranslation()(FieldCommentInternal);
export default FieldComment;
+1 -1
View File
@@ -2,7 +2,7 @@ import React from 'react'
import {MdInfoOutline, MdHighlightOff} from 'react-icons/md'
type FieldDocLabelProps = {
label: object | string | undefined
label: JSX.Element | string | undefined
fieldSpec?: {
doc?: string
}
+1 -1
View File
@@ -128,7 +128,7 @@ export default class FieldFunction extends React.Component<FieldFunctionProps, F
}
}
static getDerivedStateFromProps(props: FieldFunctionProps, state: FieldFunctionState) {
static getDerivedStateFromProps(props: Readonly<FieldFunctionProps>, state: FieldFunctionState) {
// Because otherwise when editing values we end up accidentally changing field type.
if (state.isEditing) {
return {};
+3 -2
View File
@@ -1,6 +1,6 @@
import React from 'react'
import {latest} from '@maplibre/maplibre-gl-style-spec'
import latest from '@maplibre/maplibre-gl-style-spec/dist/latest.json'
import Block from './Block'
import InputString from './InputString'
@@ -13,7 +13,8 @@ type FieldIdProps = {
export default class FieldId extends React.Component<FieldIdProps> {
render() {
return <Block label={"ID"} fieldSpec={latest.layer.id}
return <Block label="ID" fieldSpec={latest.layer.id}
data-wd-key={this.props.wdKey}
error={this.props.error}
>
+10 -5
View File
@@ -1,18 +1,20 @@
import React from 'react'
import {latest} from '@maplibre/maplibre-gl-style-spec'
import latest from '@maplibre/maplibre-gl-style-spec/dist/latest.json'
import Block from './Block'
import InputNumber from './InputNumber'
import { WithTranslation, withTranslation } from 'react-i18next';
type FieldMaxZoomProps = {
type FieldMaxZoomInternalProps = {
value?: number
onChange(value: number | undefined): unknown
error?: {message: string}
};
} & WithTranslation;
export default class FieldMaxZoom extends React.Component<FieldMaxZoomProps> {
class FieldMaxZoomInternal extends React.Component<FieldMaxZoomInternalProps> {
render() {
return <Block label={"Max Zoom"} fieldSpec={latest.layer.maxzoom}
const t = this.props.t;
return <Block label={t("Max Zoom")} fieldSpec={latest.layer.maxzoom}
error={this.props.error}
data-wd-key="max-zoom"
>
@@ -28,3 +30,6 @@ export default class FieldMaxZoom extends React.Component<FieldMaxZoomProps> {
</Block>
}
}
const FieldMaxZoom = withTranslation()(FieldMaxZoomInternal);
export default FieldMaxZoom;
+10 -5
View File
@@ -1,18 +1,20 @@
import React from 'react'
import {latest} from '@maplibre/maplibre-gl-style-spec'
import latest from '@maplibre/maplibre-gl-style-spec/dist/latest.json'
import Block from './Block'
import InputNumber from './InputNumber'
import { WithTranslation, withTranslation } from 'react-i18next';
type FieldMinZoomProps = {
type FieldMinZoomInternalProps = {
value?: number
onChange(...args: unknown[]): unknown
error?: {message: string}
};
} & WithTranslation;
export default class FieldMinZoom extends React.Component<FieldMinZoomProps> {
class FieldMinZoomInternal extends React.Component<FieldMinZoomInternalProps> {
render() {
return <Block label={"Min Zoom"} fieldSpec={latest.layer.minzoom}
const t = this.props.t;
return <Block label={t("Min Zoom")} fieldSpec={latest.layer.minzoom}
error={this.props.error}
data-wd-key="min-zoom"
>
@@ -28,3 +30,6 @@ export default class FieldMinZoom extends React.Component<FieldMinZoomProps> {
</Block>
}
}
const FieldMinZoom = withTranslation()(FieldMinZoomInternal);
export default FieldMinZoom;
+10 -5
View File
@@ -1,26 +1,28 @@
import React from 'react'
import {latest} from '@maplibre/maplibre-gl-style-spec'
import latest from '@maplibre/maplibre-gl-style-spec/dist/latest.json'
import Block from './Block'
import InputAutocomplete from './InputAutocomplete'
import { WithTranslation, withTranslation } from 'react-i18next';
type FieldSourceProps = {
type FieldSourceInternalProps = {
value?: string
wdKey?: string
onChange?(value: string| undefined): unknown
sourceIds?: unknown[]
error?: {message: string}
};
} & WithTranslation;
export default class FieldSource extends React.Component<FieldSourceProps> {
class FieldSourceInternal extends React.Component<FieldSourceInternalProps> {
static defaultProps = {
onChange: () => {},
sourceIds: [],
}
render() {
const t = this.props.t;
return <Block
label={"Source"}
label={t("Source")}
fieldSpec={latest.layer.source}
error={this.props.error}
data-wd-key={this.props.wdKey}
@@ -33,3 +35,6 @@ export default class FieldSource extends React.Component<FieldSourceProps> {
</Block>
}
}
const FieldSource = withTranslation()(FieldSourceInternal);
export default FieldSource;
+9 -4
View File
@@ -3,16 +3,17 @@ import React from 'react'
import {latest} from '@maplibre/maplibre-gl-style-spec'
import Block from './Block'
import InputAutocomplete from './InputAutocomplete'
import { WithTranslation, withTranslation } from 'react-i18next';
type FieldSourceLayerProps = {
type FieldSourceLayerInternalProps = {
value?: string
onChange?(...args: unknown[]): unknown
sourceLayerIds?: unknown[]
isFixed?: boolean
error?: {message: string}
};
} & WithTranslation;
export default class FieldSourceLayer extends React.Component<FieldSourceLayerProps> {
class FieldSourceLayerInternal extends React.Component<FieldSourceLayerInternalProps> {
static defaultProps = {
onChange: () => {},
sourceLayerIds: [],
@@ -20,8 +21,9 @@ export default class FieldSourceLayer extends React.Component<FieldSourceLayerPr
}
render() {
const t = this.props.t;
return <Block
label={"Source Layer"}
label={t("Source Layer")}
fieldSpec={latest.layer['source-layer']}
data-wd-key="layer-source-layer"
error={this.props.error}
@@ -35,3 +37,6 @@ export default class FieldSourceLayer extends React.Component<FieldSourceLayerPr
</Block>
}
}
const FieldSourceLayer = withTranslation()(FieldSourceLayerInternal);
export default FieldSourceLayer;
+10 -5
View File
@@ -1,25 +1,27 @@
import React from 'react'
import {latest} from '@maplibre/maplibre-gl-style-spec'
import latest from '@maplibre/maplibre-gl-style-spec/dist/latest.json'
import Block from './Block'
import InputSelect from './InputSelect'
import InputString from './InputString'
import { WithTranslation, withTranslation } from 'react-i18next';
type FieldTypeProps = {
type FieldTypeInternalProps = {
value: string
wdKey?: string
onChange(value: string): unknown
error?: {message: string}
disabled?: boolean
};
} & WithTranslation;
export default class FieldType extends React.Component<FieldTypeProps> {
class FieldTypeInternal extends React.Component<FieldTypeInternalProps> {
static defaultProps = {
disabled: false,
}
render() {
return <Block label={"Type"} fieldSpec={latest.layer.type}
const t = this.props.t;
return <Block label={t("Type")} fieldSpec={latest.layer.type}
data-wd-key={this.props.wdKey}
error={this.props.error}
>
@@ -50,3 +52,6 @@ export default class FieldType extends React.Component<FieldTypeProps> {
</Block>
}
}
const FieldType = withTranslation()(FieldTypeInternal);
export default FieldType;
+2 -2
View File
@@ -1,9 +1,9 @@
import React, { ReactElement } from 'react'
import React, { PropsWithChildren, ReactElement } from 'react'
import FieldDocLabel from './FieldDocLabel'
import Doc from './Doc'
import generateUniqueId from '../libs/document-uid';
type FieldsetProps = {
type FieldsetProps = PropsWithChildren & {
label?: string,
fieldSpec?: { doc?: string },
action?: ReactElement,
+28 -19
View File
@@ -13,9 +13,10 @@ import FilterEditorBlock from './FilterEditorBlock'
import InputButton from './InputButton'
import Doc from './Doc'
import ExpressionProperty from './_ExpressionProperty';
import { WithTranslation, withTranslation } from 'react-i18next';
function combiningFilter(props: FilterEditorProps): LegacyFilterSpecification | ExpressionSpecification {
function combiningFilter(props: FilterEditorInternalProps): LegacyFilterSpecification | ExpressionSpecification {
const filter = props.filter || ['all'];
if (!Array.isArray(filter)) {
@@ -47,7 +48,7 @@ function createStyleFromFilter(filter: LegacyFilterSpecification | ExpressionSpe
"sources": {
"tmp": {
"type": "geojson",
"data": {}
"data": ''
}
},
"sprite": "",
@@ -89,13 +90,13 @@ function hasNestedCombiningFilter(filter: LegacyFilterSpecification | Expression
return false
}
type FilterEditorProps = {
type FilterEditorInternalProps = {
/** Properties of the vector layer and the available fields */
properties?: {[key:string]: any}
filter?: any[]
errors?: {[key:string]: any}
onChange(value: LegacyFilterSpecification | ExpressionSpecification): unknown
};
} & WithTranslation;
type FilterEditorState = {
showDoc: boolean
@@ -103,12 +104,12 @@ type FilterEditorState = {
valueIsSimpleFilter?: boolean
};
export default class FilterEditor extends React.Component<FilterEditorProps, FilterEditorState> {
class FilterEditorInternal extends React.Component<FilterEditorInternalProps, FilterEditorState> {
static defaultProps = {
filter: ["all"],
}
constructor (props: FilterEditorProps) {
constructor (props: FilterEditorInternalProps) {
super(props);
this.state = {
showDoc: false,
@@ -155,17 +156,17 @@ export default class FilterEditor extends React.Component<FilterEditorProps, Fil
})
}
static getDerivedStateFromProps(props: FilterEditorProps, currentState: FilterEditorState) {
static getDerivedStateFromProps(props: Readonly<FilterEditorInternalProps>, state: FilterEditorState) {
const displaySimpleFilter = checkIfSimpleFilter(combiningFilter(props));
// Upgrade but never downgrade
if (!displaySimpleFilter && currentState.displaySimpleFilter === true) {
if (!displaySimpleFilter && state.displaySimpleFilter === true) {
return {
displaySimpleFilter: false,
valueIsSimpleFilter: false,
};
}
else if (displaySimpleFilter && currentState.displaySimpleFilter === false) {
else if (displaySimpleFilter && state.displaySimpleFilter === false) {
return {
valueIsSimpleFilter: true,
}
@@ -178,7 +179,7 @@ export default class FilterEditor extends React.Component<FilterEditorProps, Fil
}
render() {
const {errors} = this.props;
const {errors, t} = this.props;
const {displaySimpleFilter} = this.state;
const fieldSpec={
doc: latest.layer.filter.doc + " Combine multiple filters together by using a compound filter."
@@ -190,16 +191,16 @@ export default class FilterEditor extends React.Component<FilterEditorProps, Fil
if (isNestedCombiningFilter) {
return <div className="maputnik-filter-editor-unsupported">
<p>
Nested filters are not supported.
{t("Nested filters are not supported.")}
</p>
<InputButton
onClick={this.makeExpression}
title="Convert to expression"
title={t("Convert to expression")}
>
<svg style={{marginRight: "0.2em", width:"14px", height:"14px", verticalAlign: "middle"}} viewBox="0 0 24 24">
<path fill="currentColor" d={mdiFunctionVariant} />
</svg>
Upgrade to expression
{t("Upgrade to expression")}
</InputButton>
</div>
}
@@ -212,7 +213,7 @@ export default class FilterEditor extends React.Component<FilterEditorProps, Fil
<div>
<InputButton
onClick={this.makeExpression}
title="Convert to expression"
title={t("Convert to expression")}
className="maputnik-make-zoom-function"
>
<svg style={{width:"14px", height:"14px", verticalAlign: "middle"}} viewBox="0 0 24 24">
@@ -247,13 +248,17 @@ export default class FilterEditor extends React.Component<FilterEditorProps, Fil
<Block
key="top"
fieldSpec={fieldSpec}
label={"Filter"}
label={t("Filter")}
action={actions}
>
<InputSelect
value={combiningOp}
onChange={(v: [string, any]) => this.onFilterPartChanged(0, v)}
options={[["all", "every filter matches"], ["none", "no filter matches"], ["any", "any filter matches"]]}
options={[
["all", t("every filter matches")],
["none", t("no filter matches")],
["any", t("any filter matches")]
]}
/>
</Block>
{editorBlocks}
@@ -268,7 +273,7 @@ export default class FilterEditor extends React.Component<FilterEditorProps, Fil
>
<svg style={{width:"14px", height:"14px", verticalAlign: "text-bottom"}} viewBox="0 0 24 24">
<path fill="currentColor" d={mdiTableRowPlusAfter} />
</svg> Add filter
</svg> {t("Add filter")}
</InputButton>
</div>
<div
@@ -299,12 +304,13 @@ export default class FilterEditor extends React.Component<FilterEditorProps, Fil
/>
{this.state.valueIsSimpleFilter &&
<div className="maputnik-expr-infobox">
You&apos;ve entered a old style filter,{' '}
{t("You've entered an old style filter.")}
{' '}
<button
onClick={this.makeFilter}
className="maputnik-expr-infobox__button"
>
switch to filter editor
{t("Switch to filter editor.")}
</button>
</div>
}
@@ -313,3 +319,6 @@ export default class FilterEditor extends React.Component<FilterEditorProps, Fil
}
}
}
const FilterEditor = withTranslation()(FilterEditorInternal);
export default FilterEditor;
+9 -5
View File
@@ -1,19 +1,21 @@
import React from 'react'
import React, { PropsWithChildren } from 'react'
import InputButton from './InputButton'
import {MdDelete} from 'react-icons/md'
import { WithTranslation, withTranslation } from 'react-i18next';
type FilterEditorBlockProps = {
type FilterEditorBlockInternalProps = PropsWithChildren & {
onDelete(...args: unknown[]): unknown
};
} & WithTranslation;
export default class FilterEditorBlock extends React.Component<FilterEditorBlockProps> {
class FilterEditorBlockInternal extends React.Component<FilterEditorBlockInternalProps> {
render() {
const t = this.props.t;
return <div className="maputnik-filter-editor-block">
<div className="maputnik-filter-editor-block-action">
<InputButton
className="maputnik-delete-filter"
onClick={this.props.onDelete}
title="Delete filter block"
title={t("Delete filter block")}
>
<MdDelete />
</InputButton>
@@ -25,3 +27,5 @@ export default class FilterEditorBlock extends React.Component<FilterEditorBlock
}
}
const FilterEditorBlock = withTranslation()(FilterEditorBlockInternal);
export default FilterEditorBlock;
+1 -1
View File
@@ -32,7 +32,7 @@ export default class FieldArray extends React.Component<FieldArrayProps, FieldAr
};
}
static getDerivedStateFromProps(props: FieldArrayProps, state: FieldArrayState) {
static getDerivedStateFromProps(props: Readonly<FieldArrayProps>, state: FieldArrayState) {
const value: any[] = [];
const initialPropsValue = state.initialPropsValue.slice(0);
+17 -6
View File
@@ -1,6 +1,7 @@
import React from 'react'
import capitalize from 'lodash.capitalize'
import {MdDelete} from 'react-icons/md'
import { WithTranslation, withTranslation } from 'react-i18next';
import InputString from './InputString'
import InputNumber from './InputNumber'
@@ -21,10 +22,11 @@ export type FieldDynamicArrayProps = {
}
'aria-label'?: string
label: string
};
}
type FieldDynamicArrayInternalProps = FieldDynamicArrayProps & WithTranslation;
export default class FieldDynamicArray extends React.Component<FieldDynamicArrayProps> {
class FieldDynamicArrayInternal extends React.Component<FieldDynamicArrayInternalProps> {
changeValue(idx: number, newValue: string | number | undefined) {
const values = this.values.slice(0)
values[idx] = newValue
@@ -62,8 +64,13 @@ export default class FieldDynamicArray extends React.Component<FieldDynamicArray
}
render() {
const t = this.props.t;
const i18nProps = { t, i18n: this.props.i18n, tReady: this.props.tReady };
const inputs = this.values.map((v, i) => {
const deleteValueBtn= <DeleteValueInputButton onClick={this.deleteValue.bind(this, i)} />
const deleteValueBtn= <DeleteValueInputButton
onClick={this.deleteValue.bind(this, i)}
{...i18nProps}
/>;
let input;
if(this.props.type === 'url') {
input = <InputUrl
@@ -117,23 +124,27 @@ export default class FieldDynamicArray extends React.Component<FieldDynamicArray
className="maputnik-array-add-value"
onClick={this.addValue}
>
Add value
{t("Add value")}
</InputButton>
</div>
);
}
}
const FieldDynamicArray = withTranslation()(FieldDynamicArrayInternal);
export default FieldDynamicArray;
type DeleteValueInputButtonProps = {
onClick?(...args: unknown[]): unknown
};
} & WithTranslation;
class DeleteValueInputButton extends React.Component<DeleteValueInputButtonProps> {
render() {
const t = this.props.t;
return <InputButton
className="maputnik-delete-stop"
onClick={this.props.onClick}
title="Remove array item"
title={t("Remove array item")}
>
<FieldDocLabel
label={<MdDelete />}
+11 -3
View File
@@ -1,6 +1,7 @@
import React from 'react'
import classnames from 'classnames';
import CodeMirror, { ModeSpec } from 'codemirror';
import { Trans, WithTranslation, withTranslation } from 'react-i18next';
import 'codemirror/mode/javascript/javascript'
import 'codemirror/addon/lint/lint'
@@ -27,6 +28,7 @@ export type InputJsonProps = {
mode?: ModeSpec<any>
lint?: boolean | object
};
type InputJsonInternalProps = InputJsonProps & WithTranslation;
type InputJsonState = {
isEditing: boolean
@@ -34,7 +36,7 @@ type InputJsonState = {
prevValue: string
};
export default class InputJson extends React.Component<InputJsonProps, InputJsonState> {
class InputJsonInternal extends React.Component<InputJsonInternalProps, InputJsonState> {
static defaultProps = {
lineNumbers: true,
lineWrapping: false,
@@ -52,7 +54,7 @@ export default class InputJson extends React.Component<InputJsonProps, InputJson
_el: HTMLDivElement | null = null;
_cancelNextChange: boolean = false;
constructor(props: InputJsonProps) {
constructor(props: InputJsonInternalProps) {
super(props);
this._keyEvent = "keyboard";
this.state = {
@@ -156,6 +158,7 @@ export default class InputJson extends React.Component<InputJsonProps, InputJson
}
render() {
const t = this.props.t;
const {showMessage} = this.state;
const style = {} as {maxHeight?: number};
if (this.props.maxHeight) {
@@ -164,7 +167,9 @@ export default class InputJson extends React.Component<InputJsonProps, InputJson
return <div className="JSONEditor" onPointerDown={this.onPointerDown} aria-hidden="true">
<div className={classnames("JSONEditor__message", {"JSONEditor__message--on": showMessage})}>
Press <kbd>ESC</kbd> to lose focus
<Trans t={t}>
Press <kbd>ESC</kbd> to lose focus
</Trans>
</div>
<div
className={classnames("codemirror-container", this.props.className)}
@@ -174,3 +179,6 @@ export default class InputJson extends React.Component<InputJsonProps, InputJson
</div>
}
}
const InputJson = withTranslation()(InputJsonInternal);
export default InputJson;
+7 -4
View File
@@ -19,7 +19,10 @@ type InputNumberState = {
editing: boolean
editingRange?: boolean
value?: number
dirtyValue?: number
/**
* This is the value that is currently being edited. It can be an invalid value.
*/
dirtyValue?: number | string | undefined
}
export default class InputNumber extends React.Component<InputNumberProps, InputNumberState> {
@@ -38,7 +41,7 @@ export default class InputNumber extends React.Component<InputNumberProps, Input
}
}
static getDerivedStateFromProps(props: InputNumberProps, state: InputNumberState) {
static getDerivedStateFromProps(props: Readonly<InputNumberProps>, state: InputNumberState) {
if (!state.editing && props.value !== state.value) {
return {
value: props.value,
@@ -66,7 +69,7 @@ export default class InputNumber extends React.Component<InputNumberProps, Input
}
this.setState({
dirtyValue: newValue === "" ? undefined : value,
dirtyValue: newValue === "" ? undefined : newValue,
})
}
@@ -125,7 +128,7 @@ export default class InputNumber extends React.Component<InputNumberProps, Input
// for example we might go from 13 to 13.23, however because we know
// that came from a keyboard event we always want to increase by a
// single step value.
if (value < this.state.dirtyValue!) {
if (value < +this.state.dirtyValue!) {
value = this.state.value! - step;
}
else {
+1
View File
@@ -49,6 +49,7 @@ export default class SpecField extends React.Component<SpecFieldProps> {
value: this.props.value,
default: this.props.fieldSpec?.default,
name: this.props.fieldName,
"data-wd-key": "spec-field-input:" + this.props.fieldName,
onChange: (newValue: number | undefined | (string | number | undefined)[]) => this.props.onChange!(this.props.fieldName, newValue),
'aria-label': this.props['aria-label'],
}
+1 -1
View File
@@ -33,7 +33,7 @@ export default class InputString extends React.Component<InputStringProps, Input
}
}
static getDerivedStateFromProps(props: InputStringProps, state: InputStringState) {
static getDerivedStateFromProps(props: Readonly<InputStringProps>, state: InputStringState) {
if (!state.editing) {
return {
value: props.value
+29 -18
View File
@@ -1,9 +1,10 @@
import React from 'react'
import InputString from './InputString'
import SmallError from './SmallError'
import { Trans, WithTranslation, withTranslation } from 'react-i18next';
import { TFunction } from 'i18next';
function validate(url: string) {
function validate(url: string, t: TFunction): JSX.Element | undefined {
if (url === "") {
return;
}
@@ -14,7 +15,7 @@ function validate(url: string) {
const urlObj = new URL(url);
return urlObj.protocol;
}
catch (err) {
catch (_err) {
return undefined;
}
};
@@ -22,15 +23,19 @@ function validate(url: string) {
const isSsl = window.location.protocol === "https:";
if (!protocol) {
error = (
<SmallError>
Must provide protocol {
isSsl
? <code>https://</code>
: <><code>http://</code> or <code>https://</code></>
}
</SmallError>
);
if (isSsl) {
error = (
<SmallError>
<Trans t={t}>Must provide protocol: <code>https://</code></Trans>
</SmallError>
);
} else {
error = (
<SmallError>
<Trans t={t}>Must provide protocol: <code>http://</code> or <code>https://</code></Trans>
</SmallError>
);
}
}
else if (
protocol &&
@@ -39,7 +44,9 @@ function validate(url: string) {
) {
error = (
<SmallError>
CORS policy won&apos;t allow fetching resources served over http from https, use a <code>https://</code> domain
<Trans t={t}>
CORS policy won&apos;t allow fetching resources served over http from https, use a <code>https://</code> domain
</Trans>
</SmallError>
);
}
@@ -61,32 +68,34 @@ export type FieldUrlProps = {
className?: string
};
type FieldUrlInternalProps = FieldUrlProps & WithTranslation;
type FieldUrlState = {
error?: React.ReactNode
}
export default class FieldUrl extends React.Component<FieldUrlProps, FieldUrlState> {
class FieldUrlInternal extends React.Component<FieldUrlInternalProps, FieldUrlState> {
static defaultProps = {
onInput: () => {},
}
constructor (props: FieldUrlProps) {
constructor (props: FieldUrlInternalProps) {
super(props);
this.state = {
error: validate(props.value)
error: validate(props.value, props.t),
};
}
onInput = (url: string) => {
this.setState({
error: validate(url)
error: validate(url, this.props.t),
});
if (this.props.onInput) this.props.onInput(url);
}
onChange = (url: string) => {
this.setState({
error: validate(url)
error: validate(url, this.props.t),
});
this.props.onChange(url);
}
@@ -106,3 +115,5 @@ export default class FieldUrl extends React.Component<FieldUrlProps, FieldUrlSta
}
}
const FieldUrl = withTranslation()(FieldUrlInternal);
export default FieldUrl;
+48 -25
View File
@@ -19,31 +19,45 @@ import FieldSourceLayer from './FieldSourceLayer'
import { changeType, changeProperty } from '../libs/layer'
import layout from '../config/layout.json'
import {formatLayerId} from '../libs/format';
import { WithTranslation, withTranslation } from 'react-i18next';
import { TFunction } from 'i18next';
function getLayoutForType(type: LayerSpecification["type"]) {
return layout[type] ? layout[type] : layout.invalid;
function getLayoutForType(type: LayerSpecification["type"], t: TFunction) {
return layout[type] ? {
...layout[type],
groups: layout[type].groups.map(group => {
return {
...group,
id: group.title.replace(/ /g, "_"),
title: t(group.title)
};
}),
} : layout.invalid;
}
function layoutGroups(layerType: LayerSpecification["type"]): {title: string, type: string, fields?: string[]}[] {
function layoutGroups(layerType: LayerSpecification["type"], t: TFunction): {id: string, title: string, type: string, fields?: string[]}[] {
const layerGroup = {
title: 'Layer',
id: 'layer',
title: t('Layer'),
type: 'layer'
}
const filterGroup = {
title: 'Filter',
id: 'filter',
title: t('Filter'),
type: 'filter'
}
const editorGroup = {
title: 'JSON Editor',
id: 'jsoneditor',
title: t('JSON Editor'),
type: 'jsoneditor'
}
return [layerGroup, filterGroup]
.concat(getLayoutForType(layerType).groups)
.concat(getLayoutForType(layerType, t).groups)
.concat([editorGroup])
}
type LayerEditorProps = {
type LayerEditorInternalProps = {
layer: LayerSpecification
sources: {[key: string]: SourceSpecification}
vectorLayers: {[key: string]: any}
@@ -58,14 +72,14 @@ type LayerEditorProps = {
isLastLayer?: boolean
layerIndex: number
errors?: any[]
};
} & WithTranslation;
type LayerEditorState = {
editorGroups: {[keys:string]: boolean}
};
/** Layer editor supporting multiple types of layers. */
export default class LayerEditor extends React.Component<LayerEditorProps, LayerEditorState> {
class LayerEditorInternal extends React.Component<LayerEditorInternalProps, LayerEditorState> {
static defaultProps = {
onLayerChanged: () => {},
onLayerIdChange: () => {},
@@ -76,22 +90,22 @@ export default class LayerEditor extends React.Component<LayerEditorProps, Layer
reactIconBase: PropTypes.object
}
constructor(props: LayerEditorProps) {
constructor(props: LayerEditorInternalProps) {
super(props)
//TODO: Clean this up and refactor into function
const editorGroups: {[keys:string]: boolean} = {}
layoutGroups(this.props.layer.type).forEach(group => {
layoutGroups(this.props.layer.type, props.t).forEach(group => {
editorGroups[group.title] = true
})
this.state = { editorGroups }
}
static getDerivedStateFromProps(props: LayerEditorProps, state: LayerEditorState) {
static getDerivedStateFromProps(props: Readonly<LayerEditorInternalProps>, state: LayerEditorState) {
const additionalGroups = { ...state.editorGroups }
getLayoutForType(props.layer.type).groups.forEach(group => {
getLayoutForType(props.layer.type, props.t).groups.forEach(group => {
if(!(group.title in additionalGroups)) {
additionalGroups[group.title] = true
}
@@ -242,17 +256,19 @@ export default class LayerEditor extends React.Component<LayerEditorProps, Layer
}
render() {
const t = this.props.t;
const groupIds: string[] = [];
const layerType = this.props.layer.type
const groups = layoutGroups(layerType).filter(group => {
const groups = layoutGroups(layerType, t).filter(group => {
return !(layerType === 'background' && group.type === 'source')
}).map(group => {
const groupId = group.title.replace(/ /g, "_");
const groupId = group.id;
groupIds.push(groupId);
return <LayerEditorGroup
data-wd-key={group.title}
id={groupId}
key={group.title}
key={groupId}
title={group.title}
isActive={this.state.editorGroups[group.title]}
onActiveToggle={this.onGroupToggle.bind(this, group.title)}
@@ -265,25 +281,25 @@ export default class LayerEditor extends React.Component<LayerEditorProps, Layer
const items: {[key: string]: {text: string, handler: () => void, disabled?: boolean}} = {
delete: {
text: "Delete",
text: t("Delete"),
handler: () => this.props.onLayerDestroy(this.props.layerIndex)
},
duplicate: {
text: "Duplicate",
text: t("Duplicate"),
handler: () => this.props.onLayerCopy(this.props.layerIndex)
},
hide: {
text: (layout.visibility === "none") ? "Show" : "Hide",
text: (layout.visibility === "none") ? t("Show") : t("Hide"),
handler: () => this.props.onLayerVisibilityToggle(this.props.layerIndex)
},
moveLayerUp: {
text: "Move layer up",
text: t("Move layer up"),
// Not actually used...
disabled: this.props.isFirstLayer,
handler: () => this.moveLayer(-1)
},
moveLayerDown: {
text: "Move layer down",
text: t("Move layer down"),
// Not actually used...
disabled: this.props.isLastLayer,
handler: () => this.moveLayer(+1)
@@ -297,12 +313,12 @@ export default class LayerEditor extends React.Component<LayerEditorProps, Layer
return <section className="maputnik-layer-editor"
role="main"
aria-label="Layer editor"
aria-label={t("Layer editor")}
>
<header>
<div className="layer-header">
<h2 className="layer-header__title">
Layer: {formatLayerId(this.props.layer.id)}
{t("Layer: {{layerId}}", { layerId: formatLayerId(this.props.layer.id) })}
</h2>
<div className="layer-header__info">
<Wrapper
@@ -310,7 +326,11 @@ export default class LayerEditor extends React.Component<LayerEditorProps, Layer
onSelection={handleSelection}
closeOnSelection={false}
>
<Button id="skip-target-layer-editor" data-wd-key="skip-target-layer-editor" className='more-menu__button' title="Layer options">
<Button
id="skip-target-layer-editor"
data-wd-key="skip-target-layer-editor"
className='more-menu__button'
title={"Layer options"}>
<MdMoreVert className="more-menu__button__svg" />
</Button>
<Menu>
@@ -340,3 +360,6 @@ export default class LayerEditor extends React.Component<LayerEditorProps, Layer
</section>
}
}
const LayerEditor = withTranslation()(LayerEditorInternal);
export default LayerEditor;
+16 -8
View File
@@ -10,6 +10,7 @@ import {SortEndHandler, SortableContainer} from 'react-sortable-hoc';
import type {LayerSpecification} from 'maplibre-gl';
import generateUniqueId from '../libs/document-uid';
import { findClosestCommonPrefix, layerPrefix } from '../libs/layer';
import { WithTranslation, withTranslation } from 'react-i18next';
type LayerListContainerProps = {
layers: LayerSpecification[]
@@ -22,6 +23,7 @@ type LayerListContainerProps = {
sources: object
errors: any[]
};
type LayerListContainerInternalProps = LayerListContainerProps & WithTranslation;
type LayerListContainerState = {
collapsedGroups: {[ket: string]: boolean}
@@ -31,14 +33,14 @@ type LayerListContainerState = {
};
// List of collapsible layer editors
class LayerListContainer extends React.Component<LayerListContainerProps, LayerListContainerState> {
class LayerListContainerInternal extends React.Component<LayerListContainerInternalProps, LayerListContainerState> {
static defaultProps = {
onLayerSelect: () => {},
}
selectedItemRef: React.RefObject<any>;
scrollContainerRef: React.RefObject<HTMLElement>;
constructor(props: LayerListContainerProps) {
constructor(props: LayerListContainerInternalProps) {
super(props);
this.selectedItemRef = React.createRef();
this.scrollContainerRef = React.createRef();
@@ -259,10 +261,12 @@ class LayerListContainer extends React.Component<LayerListContainerProps, LayerL
})
})
const t = this.props.t;
return <section
className="maputnik-layer-list"
role="complementary"
aria-label="Layers list"
aria-label={t("Layers list")}
ref={this.scrollContainerRef}
>
<ModalAdd
@@ -274,7 +278,7 @@ class LayerListContainer extends React.Component<LayerListContainerProps, LayerL
onLayersChange={this.props.onLayersChange}
/>
<header className="maputnik-layer-list-header">
<span className="maputnik-layer-list-header-title">Layers</span>
<span className="maputnik-layer-list-header-title">{t("Layers")}</span>
<span className="maputnik-space" />
<div className="maputnik-default-property">
<div className="maputnik-multibutton">
@@ -283,7 +287,11 @@ class LayerListContainer extends React.Component<LayerListContainerProps, LayerL
data-wd-key="skip-target-layer-list"
onClick={this.toggleLayers}
className="maputnik-button">
{this.state.areAllGroupsExpanded === true ? "Collapse" : "Expand"}
{this.state.areAllGroupsExpanded === true ?
t("Collapse")
:
t("Expand")
}
</button>
</div>
</div>
@@ -293,14 +301,14 @@ class LayerListContainer extends React.Component<LayerListContainerProps, LayerL
onClick={this.toggleModal.bind(this, 'add')}
data-wd-key="layer-list:add-layer"
className="maputnik-button maputnik-button-selected">
Add Layer
{t("Add Layer")}
</button>
</div>
</div>
</header>
<div
role="navigation"
aria-label="Layers list"
aria-label={t("Layers list")}
>
<ul className="maputnik-layer-list-container">
{listItems}
@@ -310,7 +318,7 @@ class LayerListContainer extends React.Component<LayerListContainerProps, LayerL
}
}
// eslint-disable-next-line react-refresh/only-export-components
const LayerListContainer = withTranslation()(LayerListContainerInternal);
const LayerListContainerSortable = SortableContainer((props: LayerListContainerProps) => <LayerListContainer {...props} />)
type LayerListProps = LayerListContainerProps & {
+1 -1
View File
@@ -139,6 +139,6 @@ class LayerListItem extends React.Component<LayerListItemProps> {
}
}
const LayerListItemSortable = SortableElement((props: LayerListItemProps) => <LayerListItem {...props} />);
const LayerListItemSortable = SortableElement<LayerListItemProps>((props: LayerListItemProps) => <LayerListItem {...props} />);
export default LayerListItemSortable;
+113 -75
View File
@@ -1,10 +1,8 @@
import React, {type JSX} from 'react'
import ReactDOM from 'react-dom'
import MapLibreGl, {LayerSpecification, LngLat, Map, MapOptions, SourceSpecification, StyleSpecification} from 'maplibre-gl'
// @ts-ignore
import MapboxInspect from 'mapbox-gl-inspect'
// @ts-ignore
import colors from 'mapbox-gl-inspect/lib/colors'
import MaplibreInspect from '@maplibre/maplibre-gl-inspect'
import colors from '@maplibre/maplibre-gl-inspect/lib/colors'
import MapMaplibreGlLayerPopup from './MapMaplibreGlLayerPopup'
import MapMaplibreGlFeaturePropertyPopup, { InspectFeature } from './MapMaplibreGlFeaturePropertyPopup'
import Color from 'color'
@@ -13,13 +11,15 @@ import { HighlightedLayer, colorHighlightedLayer } from '../libs/highlight'
import 'maplibre-gl/dist/maplibre-gl.css'
import '../maplibregl.css'
import '../libs/maplibre-rtl'
import MaplibreGeocoder, { MaplibreGeocoderApi, MaplibreGeocoderApiConfig } from '@maplibre/maplibre-gl-geocoder';
import '@maplibre/maplibre-gl-geocoder/dist/maplibre-gl-geocoder.css';
import { withTranslation, WithTranslation } from 'react-i18next'
import i18next from 'i18next'
import { Protocol } from "pmtiles";
const IS_SUPPORTED = MapLibreGl.supported();
function renderPopup(popup: JSX.Element, mountNode: ReactDOM.Container) {
function renderPopup(popup: JSX.Element, mountNode: ReactDOM.Container): HTMLElement {
ReactDOM.render(popup, mountNode);
return mountNode;
return mountNode as HTMLElement;
}
function buildInspectStyle(originalMapStyle: StyleSpecification, coloredLayers: HighlightedLayer[], highlightedLayer?: HighlightedLayer) {
@@ -37,6 +37,7 @@ function buildInspectStyle(originalMapStyle: StyleSpecification, coloredLayers:
}
const sources: {[key:string]: SourceSpecification} = {}
Object.keys(originalMapStyle.sources).forEach(sourceId => {
const source = originalMapStyle.sources[sourceId]
if(source.type !== 'raster' && source.type !== 'raster-dem') {
@@ -52,7 +53,7 @@ function buildInspectStyle(originalMapStyle: StyleSpecification, coloredLayers:
return inspectStyle
}
type MapMaplibreGlProps = {
type MapMaplibreGlInternalProps = {
onDataChange?(event: {map: Map | null}): unknown
onLayerSelect(...args: unknown[]): unknown
mapStyle: StyleSpecification
@@ -65,15 +66,17 @@ type MapMaplibreGlProps = {
}
replaceAccessTokens(mapStyle: StyleSpecification): StyleSpecification
onChange(value: {center: LngLat, zoom: number}): unknown
};
} & WithTranslation;
type MapMaplibreGlState = {
map: Map | null
inspect: MapboxInspect | null
zoom?: number
map: Map | null;
inspect: MaplibreInspect | null;
geocoder: MaplibreGeocoder | null;
zoomControl: ZoomControl | null;
zoom?: number;
};
export default class MapMaplibreGl extends React.Component<MapMaplibreGlProps, MapMaplibreGlState> {
class MapMaplibreGlInternal extends React.Component<MapMaplibreGlInternalProps, MapMaplibreGlState> {
static defaultProps = {
onMapLoaded: () => {},
onDataChange: () => {},
@@ -83,79 +86,71 @@ export default class MapMaplibreGl extends React.Component<MapMaplibreGlProps, M
}
container: HTMLDivElement | null = null
constructor(props: MapMaplibreGlProps) {
constructor(props: MapMaplibreGlInternalProps) {
super(props)
this.state = {
map: null,
inspect: null,
geocoder: null,
zoomControl: null,
}
i18next.on('languageChanged', () => {
this.forceUpdate();
})
}
updateMapFromProps(props: MapMaplibreGlProps) {
if(!IS_SUPPORTED) return;
if(!this.state.map) return
//Maplibre GL now does diffing natively so we don't need to calculate
//the necessary operations ourselves!
this.state.map.setStyle(
this.props.replaceAccessTokens(props.mapStyle),
{diff: true}
)
}
shouldComponentUpdate(nextProps: MapMaplibreGlProps, nextState: MapMaplibreGlState) {
shouldComponentUpdate(nextProps: MapMaplibreGlInternalProps, nextState: MapMaplibreGlState) {
let should = false;
try {
should = JSON.stringify(this.props) !== JSON.stringify(nextProps) || JSON.stringify(this.state) !== JSON.stringify(nextState);
} catch(e) {
} catch(_e) {
// no biggie, carry on
}
return should;
}
componentDidUpdate() {
if(!IS_SUPPORTED) return;
const map = this.state.map;
this.updateMapFromProps(this.props);
if(this.state.inspect && this.props.inspectModeEnabled !== this.state.inspect._showInspectMap) {
// HACK: Fix for <https://github.com/maputnik/editor/issues/576>, while we wait for a proper fix.
// eslint-disable-next-line
this.state.inspect._popupBlocked = false;
this.state.inspect.toggleInspector()
}
const styleWithTokens = this.props.replaceAccessTokens(this.props.mapStyle);
if (map) {
if (this.props.inspectModeEnabled) {
// HACK: We need to work out why we need to do this and what's causing
// this error. I'm assuming an issue with maplibre-gl update and
// mapbox-gl-inspect.
try {
this.state.inspect.render();
} catch(err) {
console.error("FIXME: Caught error", err);
}
}
// Maplibre GL now does diffing natively so we don't need to calculate
// the necessary operations ourselves!
// We also need to update the style for inspect to work properly
map.setStyle(styleWithTokens, {diff: true});
map.showTileBoundaries = this.props.options?.showTileBoundaries!;
map.showCollisionBoxes = this.props.options?.showCollisionBoxes!;
map.showOverdrawInspector = this.props.options?.showOverdrawInspector!;
}
if(this.state.inspect && this.props.inspectModeEnabled !== this.state.inspect._showInspectMap) {
this.state.inspect.toggleInspector()
}
if (this.state.inspect && this.props.inspectModeEnabled) {
this.state.inspect.setOriginalStyle(styleWithTokens);
// In case the sources are the same, there's a need to refresh the style
setTimeout(() => {
this.state.inspect!.render();
}, 500);
}
}
componentDidMount() {
if(!IS_SUPPORTED) return;
const mapOpts = {
...this.props.options,
container: this.container!,
style: this.props.mapStyle,
hash: true,
maxZoom: 24
}
maxZoom: 24,
// setting to always load glyphs of CJK fonts from server
// https://maplibre.org/maplibre-gl-js/docs/examples/local-ideographs/
localIdeographFontFamily: false
} satisfies MapOptions;
const protocol = new Protocol({metadata: true});
MapLibreGl.addProtocol("pmtiles",protocol.tile);
const map = new MapLibreGl.Map(mapOpts);
const mapViewChange = () => {
@@ -169,7 +164,9 @@ export default class MapMaplibreGl extends React.Component<MapMaplibreGlProps, M
map.showCollisionBoxes = mapOpts.showCollisionBoxes!;
map.showOverdrawInspector = mapOpts.showOverdrawInspector!;
const zoomControl = new ZoomControl;
const geocoder = this.initGeocoder(map);
const zoomControl = new ZoomControl();
map.addControl(zoomControl, 'top-right');
const nav = new MapLibreGl.NavigationControl({visualizePitch:true});
@@ -177,7 +174,7 @@ export default class MapMaplibreGl extends React.Component<MapMaplibreGlProps, M
const tmpNode = document.createElement('div');
const inspect = new MapboxInspect({
const inspect = new MaplibreInspect({
popup: new MapLibreGl.Popup({
closeOnClick: false
}),
@@ -204,6 +201,8 @@ export default class MapMaplibreGl extends React.Component<MapMaplibreGlProps, M
this.setState({
map,
inspect,
geocoder,
zoomControl,
zoom: map.getZoom()
});
})
@@ -234,25 +233,64 @@ export default class MapMaplibreGl extends React.Component<MapMaplibreGlProps, M
this.props.onLayerSelect(index);
}
initGeocoder(map: Map) {
const geocoderConfig = {
forwardGeocode: async (config: MaplibreGeocoderApiConfig) => {
const features = [];
try {
const request = `https://nominatim.openstreetmap.org/search?q=${config.query}&format=geojson&polygon_geojson=1&addressdetails=1`;
const response = await fetch(request);
const geojson = await response.json();
for (const feature of geojson.features) {
const center = [
feature.bbox[0] +
(feature.bbox[2] - feature.bbox[0]) / 2,
feature.bbox[1] +
(feature.bbox[3] - feature.bbox[1]) / 2
];
const point = {
type: 'Feature',
geometry: {
type: 'Point',
coordinates: center
},
place_name: feature.properties.display_name,
properties: feature.properties,
text: feature.properties.display_name,
place_type: ['place'],
center
};
features.push(point);
}
} catch (e) {
console.error(`Failed to forwardGeocode with error: ${e}`);
}
return {
features
};
},
} as unknown as MaplibreGeocoderApi;
const geocoder = new MaplibreGeocoder(geocoderConfig, {
placeholder: this.props.t("Search"),
maplibregl: MapLibreGl,
});
map.addControl(geocoder, 'top-left');
return geocoder;
}
render() {
if(IS_SUPPORTED) {
return <div
className="maputnik-map__map"
role="region"
aria-label="Map view"
ref={x => this.container = x}
data-wd-key="maplibre:map"
></div>
}
else {
return <div
className="maputnik-map maputnik-map--error"
>
<div className="maputnik-map__error-message">
Error: Cannot load MaplibreGL, WebGL is either unsupported or disabled
</div>
</div>
}
const t = this.props.t;
this.state.geocoder?.setPlaceholder(t("Search"));
this.state.zoomControl?.setLabel(t("Zoom:"));
return <div
className="maputnik-map__map"
role="region"
aria-label={t("Map view")}
ref={x => this.container = x}
data-wd-key="maplibre:map"
></div>
}
}
const MapMaplibreGl = withTranslation()(MapMaplibreGlInternal);
export default MapMaplibreGl;
@@ -1,18 +1,12 @@
import React from 'react'
import Block from './Block'
import FieldString from './FieldString'
import type { GeoJSONFeatureWithSourceLayer } from '@maplibre/maplibre-gl-inspect'
export type InspectFeature = {
id: string
properties: {[key:string]: any}
layer: {[key:string]: any}
geometry: GeoJSON.Geometry
sourceLayer: string
export type InspectFeature = GeoJSONFeatureWithSourceLayer & {
inspectModeCounter?: number
counter?: number
}
function displayValue(value: string | number | Date | object) {
function displayValue(value: string | number | Date | object | undefined) {
if (typeof value === 'undefined' || value === null) return value;
if (value instanceof Date) return value.toLocaleString();
if (typeof value === 'object' ||
@@ -21,30 +15,25 @@ function displayValue(value: string | number | Date | object) {
return value;
}
function renderProperties(feature: InspectFeature) {
return Object.keys(feature.properties).map(propertyName => {
const property = feature.properties[propertyName]
return <Block key={propertyName} label={propertyName}>
<FieldString value={displayValue(property)} style={{backgroundColor: 'transparent'}}/>
</Block>
})
}
function renderFeatureId(feature: InspectFeature) {
return <Block key={"feature-id"} label={"feature_id"}>
<FieldString value={displayValue(feature.id)} style={{backgroundColor: 'transparent'}} />
</Block>
function renderKeyValueTableRow(key: string, value: string | undefined) {
return <tr key={key}>
<td className="maputnik-popup-table-cell">{key}</td>
<td className="maputnik-popup-table-cell">{value}</td>
</tr>
}
function renderFeature(feature: InspectFeature, idx: number) {
return <div key={`${feature.sourceLayer}-${idx}`}>
<div className="maputnik-popup-layer-id">{feature.layer['source']}: {feature.layer['source-layer']}{feature.inspectModeCounter && <span> × {feature.inspectModeCounter}</span>}</div>
<Block key={"property-type"} label={"$type"}>
<FieldString value={feature.geometry.type} style={{backgroundColor: 'transparent'}} />
</Block>
{renderFeatureId(feature)}
{renderProperties(feature)}
</div>
return <React.Fragment key={idx}>
<tr>
<td colSpan={2} className="maputnik-popup-layer-id">{feature.layer['source']}: {feature.layer['source-layer']}{feature.inspectModeCounter && <span> × {feature.inspectModeCounter}</span>}</td>
</tr>
{renderKeyValueTableRow("$type", feature.geometry.type)}
{renderKeyValueTableRow("$id", displayValue(feature.id))}
{Object.keys(feature.properties).map(propertyName => {
const property = feature.properties[propertyName];
return renderKeyValueTableRow(propertyName, displayValue(property))
})}
</React.Fragment>
}
function removeDuplicatedFeatures(features: InspectFeature[]) {
@@ -78,7 +67,11 @@ class FeaturePropertyPopup extends React.Component<FeaturePropertyPopupProps> {
render() {
const features = removeDuplicatedFeatures(this.props.features)
return <div className="maputnik-feature-property-popup">
{features.map(renderFeature)}
<table className="maputnik-popup-table">
<tbody>
{features.map(renderFeature)}
</tbody>
</table>
</div>
}
}
+14 -21
View File
@@ -8,15 +8,16 @@ function groupFeaturesBySourceLayer(features: InspectFeature[]) {
const returnedFeatures: {[key: string]: number} = {}
features.forEach(feature => {
const sourceKey = feature.layer['source-layer'] as string;
if(Object.prototype.hasOwnProperty.call(returnedFeatures, feature.layer.id)) {
returnedFeatures[feature.layer.id]++
const featureObject = sources[feature.layer['source-layer']].find((f: InspectFeature) => f.layer.id === feature.layer.id)
const featureObject = sources[sourceKey].find((f: InspectFeature) => f.layer.id === feature.layer.id)
featureObject!.counter = returnedFeatures[feature.layer.id]
} else {
sources[feature.layer['source-layer']] = sources[feature.layer['source-layer']] || []
sources[feature.layer['source-layer']].push(feature)
sources[sourceKey] = sources[sourceKey] || []
sources[sourceKey].push(feature)
returnedFeatures[feature.layer.id] = 1
}
@@ -40,29 +41,21 @@ class FeatureLayerPopup extends React.Component<FeatureLayerPopupProps> {
try {
const paintProps = feature.layer.paint;
let propName;
if(Object.prototype.hasOwnProperty.call(paintProps, "text-color") && paintProps["text-color"]) {
propName = "text-color";
if("text-color" in paintProps && paintProps["text-color"]) {
return String(paintProps["text-color"]);
}
else if (Object.prototype.hasOwnProperty.call(paintProps, "fill-color") && paintProps["fill-color"]) {
propName = "fill-color";
if ("fill-color" in paintProps && paintProps["fill-color"]) {
return String(paintProps["fill-color"]);
}
else if (Object.prototype.hasOwnProperty.call(paintProps, "line-color") && paintProps["line-color"]) {
propName = "line-color";
if ("line-color" in paintProps && paintProps["line-color"]) {
return String(paintProps["line-color"]);
}
else if (Object.prototype.hasOwnProperty.call(paintProps, "fill-extrusion-color") && paintProps["fill-extrusion-color"]) {
propName = "fill-extrusion-color";
}
if(propName) {
const color = feature.layer.paint[propName];
return String(color);
}
else {
// Default color
return "black";
if ("fill-extrusion-color" in paintProps && paintProps["fill-extrusion-color"]) {
return String(paintProps["fill-extrusion-color"]);
}
// Default color
return "black";
}
// This is quite complex, just incase there's an edgecase we're missing
// always return black if we get an unexpected error.
+21 -15
View File
@@ -1,9 +1,11 @@
import React from 'react'
import {throttle} from 'lodash';
import { WithTranslation, withTranslation } from 'react-i18next';
import MapMaplibreGlLayerPopup from './MapMaplibreGlLayerPopup';
import 'ol/ol.css'
//@ts-ignore
import {apply} from 'ol-mapbox-style';
import {Map, View, Overlay} from 'ol';
@@ -22,7 +24,7 @@ function renderCoords (coords: string[]) {
}
}
type MapOpenLayersProps = {
type MapOpenLayersInternalProps = {
onDataChange?(...args: unknown[]): unknown
mapStyle: object
accessToken?: string
@@ -31,7 +33,7 @@ type MapOpenLayersProps = {
debugToolbox: boolean
replaceAccessTokens(...args: unknown[]): unknown
onChange(...args: unknown[]): unknown
};
} & WithTranslation;
type MapOpenLayersState = {
zoom: string
@@ -41,7 +43,7 @@ type MapOpenLayersState = {
selectedFeatures?: any[]
};
export default class MapOpenLayers extends React.Component<MapOpenLayersProps, MapOpenLayersState> {
class MapOpenLayersInternal extends React.Component<MapOpenLayersInternalProps, MapOpenLayersState> {
static defaultProps = {
onMapLoaded: () => {},
onDataChange: () => {},
@@ -53,7 +55,7 @@ export default class MapOpenLayers extends React.Component<MapOpenLayersProps, M
overlay: Overlay | undefined;
popupContainer: HTMLElement | null = null;
constructor(props: MapOpenLayersProps) {
constructor(props: MapOpenLayersInternalProps) {
super(props);
this.state = {
zoom: "0",
@@ -72,7 +74,7 @@ export default class MapOpenLayers extends React.Component<MapOpenLayersProps, M
apply(this.map, newMapStyle);
}
componentDidUpdate(prevProps: MapOpenLayersProps) {
componentDidUpdate(prevProps: MapOpenLayersInternalProps) {
if (this.props.mapStyle !== prevProps.mapStyle) {
this.updateStyle(
this.props.replaceAccessTokens(this.props.mapStyle)
@@ -83,10 +85,11 @@ export default class MapOpenLayers extends React.Component<MapOpenLayersProps, M
componentDidMount() {
this.overlay = new Overlay({
element: this.popupContainer!,
autoPan: true,
autoPanAnimation: {
duration: 250
}
autoPan: {
animation: {
duration: 250
}
},
});
const map = new Map({
@@ -150,6 +153,7 @@ export default class MapOpenLayers extends React.Component<MapOpenLayersProps, M
}
render() {
const t = this.props.t;
return <div className="maputnik-ol-container">
<div
ref={x => this.popupContainer = x}
@@ -159,7 +163,7 @@ export default class MapOpenLayers extends React.Component<MapOpenLayersProps, M
<button
className="maplibregl-popup-close-button"
onClick={this.closeOverlay}
aria-label="Close popup"
aria-label={t("Close popup")}
>
×
</button>
@@ -169,20 +173,20 @@ export default class MapOpenLayers extends React.Component<MapOpenLayersProps, M
/>
</div>
<div className="maputnik-ol-zoom">
Zoom: {this.state.zoom}
{t("Zoom:")} {this.state.zoom}
</div>
{this.props.debugToolbox &&
<div className="maputnik-ol-debug">
<div>
<label>cursor: </label>
<label>{t("cursor:")} </label>
<span>{renderCoords(this.state.cursor)}</span>
</div>
<div>
<label>center: </label>
<label>{t("center:")} </label>
<span>{renderCoords(this.state.center)}</span>
</div>
<div>
<label>rotation: </label>
<label>{t("rotation:")} </label>
<span>{this.state.rotation}</span>
</div>
</div>
@@ -191,7 +195,7 @@ export default class MapOpenLayers extends React.Component<MapOpenLayersProps, M
className="maputnik-ol"
ref={x => this.container = x}
role="region"
aria-label="Map view"
aria-label={t("Map view")}
style={{
...this.props.style,
}}>
@@ -200,3 +204,5 @@ export default class MapOpenLayers extends React.Component<MapOpenLayersProps, M
}
}
const MapOpenLayers = withTranslation()(MapOpenLayersInternal);
export default MapOpenLayers;
+10 -7
View File
@@ -1,10 +1,10 @@
import React from 'react'
import React, { PropsWithChildren } from 'react'
import {MdClose} from 'react-icons/md'
import AriaModal from 'react-aria-modal'
import classnames from 'classnames';
import { WithTranslation, withTranslation } from 'react-i18next';
type ModalProps = {
type ModalInternalProps = PropsWithChildren & {
"data-wd-key"?: string
isOpen: boolean
title: string
@@ -12,15 +12,15 @@ type ModalProps = {
underlayClickExits?: boolean
underlayProps?: any
className?: string
};
} & WithTranslation;
export default class Modal extends React.Component<ModalProps> {
class ModalInternal extends React.Component<ModalInternalProps> {
static defaultProps = {
underlayClickExits: true
}
// See <https://github.com/maputnik/editor/issues/416>
// See <https://github.com/maplibre/maputnik/issues/416>
onClose = () => {
if (document.activeElement) {
(document.activeElement as HTMLElement).blur();
@@ -32,6 +32,7 @@ export default class Modal extends React.Component<ModalProps> {
}
render() {
const t = this.props.t;
if(this.props.isOpen) {
return <AriaModal
titleText={this.props.title}
@@ -49,7 +50,7 @@ export default class Modal extends React.Component<ModalProps> {
<h1 className="maputnik-modal-header-title">{this.props.title}</h1>
<span className="maputnik-modal-header-space"></span>
<button className="maputnik-modal-header-toggle"
title="Close modal"
title={t("Close modal")}
onClick={this.onClose}
data-wd-key={this.props["data-wd-key"]+".close-modal"}
>
@@ -68,3 +69,5 @@ export default class Modal extends React.Component<ModalProps> {
}
}
const Modal = withTranslation()(ModalInternal);
export default Modal;
+12 -8
View File
@@ -7,15 +7,16 @@ import FieldId from './FieldId'
import FieldSource from './FieldSource'
import FieldSourceLayer from './FieldSourceLayer'
import type {LayerSpecification} from 'maplibre-gl'
import { WithTranslation, withTranslation } from 'react-i18next';
type ModalAddProps = {
type ModalAddInternalProps = {
layers: LayerSpecification[]
onLayersChange(layers: LayerSpecification[]): unknown
isOpen: boolean
onOpenToggle(open: boolean): unknown
// A dict of source id's and the available source layers
sources: any
};
} & WithTranslation;
type ModalAddState = {
type: LayerSpecification["type"]
@@ -24,7 +25,7 @@ type ModalAddState = {
'source-layer'?: string
};
export default class ModalAdd extends React.Component<ModalAddProps, ModalAddState> {
class ModalAddInternal extends React.Component<ModalAddInternalProps, ModalAddState> {
addLayer = () => {
const changedLayers = this.props.layers.slice(0)
const layer: ModalAddState = {
@@ -45,7 +46,7 @@ export default class ModalAdd extends React.Component<ModalAddProps, ModalAddSta
this.props.onOpenToggle(false)
}
constructor(props: ModalAddProps) {
constructor(props: ModalAddInternalProps) {
super(props)
const state: ModalAddState = {
type: 'fill',
@@ -54,12 +55,12 @@ export default class ModalAdd extends React.Component<ModalAddProps, ModalAddSta
if(props.sources.length > 0) {
state.source = Object.keys(this.props.sources)[0];
state['source-layer'] = this.props.sources[state.source as keyof ModalAddProps["sources"]][0]
state['source-layer'] = this.props.sources[state.source as keyof ModalAddInternalProps["sources"]][0]
}
this.state = state;
}
componentDidUpdate(_prevProps: ModalAddProps, prevState: ModalAddState) {
componentDidUpdate(_prevProps: ModalAddInternalProps, prevState: ModalAddState) {
// Check if source is valid for new type
const oldType = prevState.type;
const newType = this.state.type;
@@ -125,13 +126,14 @@ export default class ModalAdd extends React.Component<ModalAddProps, ModalAddSta
render() {
const t = this.props.t;
const sources = this.getSources(this.state.type);
const layers = this.getLayersForSource(this.state.source!);
return <Modal
isOpen={this.props.isOpen}
onOpenToggle={this.props.onOpenToggle}
title={'Add Layer'}
title={t('Add Layer')}
data-wd-key="modal:add-layer"
className="maputnik-add-modal"
>
@@ -169,10 +171,12 @@ export default class ModalAdd extends React.Component<ModalAddProps, ModalAddSta
onClick={this.addLayer}
data-wd-key="add-layer"
>
Add Layer
{t("Add Layer")}
</InputButton>
</div>
</Modal>
}
}
const ModalAdd = withTranslation()(ModalAddInternal);
export default ModalAdd;
+18 -13
View File
@@ -1,9 +1,10 @@
import React from 'react'
import { Trans, WithTranslation, withTranslation } from 'react-i18next';
import Modal from './Modal'
type ModalDebugProps = {
type ModalDebugInternalProps = {
isOpen: boolean
renderer: string
onChangeMaplibreGlDebug(key: string, checked: boolean): unknown
@@ -18,12 +19,12 @@ type ModalDebugProps = {
lat: number
}
}
};
} & WithTranslation;
export default class ModalDebug extends React.Component<ModalDebugProps> {
class ModalDebugInternal extends React.Component<ModalDebugInternalProps> {
render() {
const {mapView} = this.props;
const {t, mapView} = this.props;
const osmZoom = Math.round(mapView.zoom)+1;
const osmLon = +(mapView.center.lng).toFixed(5);
@@ -33,10 +34,10 @@ export default class ModalDebug extends React.Component<ModalDebugProps> {
data-wd-key="modal:debug"
isOpen={this.props.isOpen}
onOpenToggle={this.props.onOpenToggle}
title={'Debug'}
title={t('Debug')}
>
<section className="maputnik-modal-section maputnik-modal-shortcuts">
<h1>Options</h1>
<h1>{t("Options")}</h1>
{this.props.renderer === 'mlgljs' &&
<ul>
{Object.entries(this.props.maplibreGlDebugOptions!).map(([key, val]) => {
@@ -63,16 +64,20 @@ export default class ModalDebug extends React.Component<ModalDebugProps> {
<section className="maputnik-modal-section">
<h1>Links</h1>
<p>
<a
target="_blank"
rel="noopener noreferrer"
href={`https://www.openstreetmap.org/#map=${osmZoom}/${osmLat}/${osmLon}`}
>
Open in OSM
</a> &mdash; Opens the current view on openstreetmap.org
<Trans t={t}>
<a
target="_blank"
rel="noopener noreferrer"
href={`https://www.openstreetmap.org/#map=${osmZoom}/${osmLat}/${osmLon}`}
>
Open in OSM
</a> &mdash; Opens the current view on openstreetmap.org
</Trans>
</p>
</section>
</Modal>
}
}
const ModalDebug = withTranslation()(ModalDebugInternal);
export default ModalDebug;
+93 -30
View File
@@ -4,7 +4,8 @@ import {saveAs} from 'file-saver'
import {version} from 'maplibre-gl/package.json'
import {format} from '@maplibre/maplibre-gl-style-spec'
import type {StyleSpecification} from 'maplibre-gl'
import {MdFileDownload} from 'react-icons/md'
import {MdMap, MdSave} from 'react-icons/md'
import {WithTranslation, withTranslation} from 'react-i18next';
import FieldString from './FieldString'
import InputButton from './InputButton'
@@ -14,19 +15,22 @@ import fieldSpecAdditional from '../libs/field-spec-additional'
const MAPLIBRE_GL_VERSION = version;
const showSaveFilePickerAvailable = typeof window.showSaveFilePicker === "function";
type ModalExportProps = {
type ModalExportInternalProps = {
mapStyle: StyleSpecification & { id: string }
onStyleChanged(...args: unknown[]): unknown
isOpen: boolean
onOpenToggle(...args: unknown[]): unknown
};
onSetFileHandle(fileHandle: FileSystemFileHandle | null): unknown
fileHandle: FileSystemFileHandle | null
} & WithTranslation;
export default class ModalExport extends React.Component<ModalExportProps> {
class ModalExportInternal extends React.Component<ModalExportInternalProps> {
tokenizedStyle () {
tokenizedStyle() {
return format(
style.stripAccessTokens(
style.replaceAccessTokens(this.props.mapStyle)
@@ -34,8 +38,8 @@ export default class ModalExport extends React.Component<ModalExportProps> {
);
}
exportName () {
if(this.props.mapStyle.name) {
exportName() {
if (this.props.mapStyle.name) {
return Slugify(this.props.mapStyle.name, {
replacement: '_',
remove: /[*\-+~.()'"!:]/g,
@@ -46,9 +50,9 @@ export default class ModalExport extends React.Component<ModalExportProps> {
}
}
downloadHtml() {
createHtml() {
const tokenStyle = this.tokenizedStyle();
const htmlTitle = this.props.mapStyle.name || "Map";
const htmlTitle = this.props.mapStyle.name || this.props.t("Map");
const html = `<!DOCTYPE html>
<html>
<head>
@@ -80,11 +84,58 @@ export default class ModalExport extends React.Component<ModalExportProps> {
saveAs(blob, exportName + ".html");
}
downloadStyle() {
async saveStyle() {
const tokenStyle = this.tokenizedStyle();
const blob = new Blob([tokenStyle], {type: "application/json;charset=utf-8"});
const exportName = this.exportName();
saveAs(blob, exportName + ".json");
// it is not guaranteed that the File System Access API is available on all
// browsers. If the function is not available, a fallback behavior is used.
if (!showSaveFilePickerAvailable) {
const blob = new Blob([tokenStyle], {type: "application/json;charset=utf-8"});
const exportName = this.exportName();
saveAs(blob, exportName + ".json");
return;
}
let fileHandle = this.props.fileHandle;
if (fileHandle == null) {
fileHandle = await this.createFileHandle();
this.props.onSetFileHandle(fileHandle)
if (fileHandle == null) return;
}
const writable = await fileHandle.createWritable();
await writable.write(tokenStyle);
await writable.close();
this.props.onOpenToggle();
}
async saveStyleAs() {
const tokenStyle = this.tokenizedStyle();
const fileHandle = await this.createFileHandle();
this.props.onSetFileHandle(fileHandle)
if (fileHandle == null) return;
const writable = await fileHandle.createWritable();
await writable.write(tokenStyle);
await writable.close();
this.props.onOpenToggle();
}
async createFileHandle(): Promise<FileSystemFileHandle | null> {
const pickerOpts: SaveFilePickerOptions = {
types: [
{
description: "json",
accept: {"application/json": [".json"]},
},
],
suggestedName: this.exportName(),
};
const fileHandle = await window.showSaveFilePicker(pickerOpts) as FileSystemFileHandle;
this.props.onSetFileHandle(fileHandle)
return fileHandle;
}
changeMetadataProperty(property: string, value: any) {
@@ -100,48 +151,58 @@ export default class ModalExport extends React.Component<ModalExportProps> {
render() {
const t = this.props.t;
const fsa = fieldSpecAdditional(t);
return <Modal
data-wd-key="modal:export"
isOpen={this.props.isOpen}
onOpenToggle={this.props.onOpenToggle}
title={'Export Style'}
title={t('Save Style')}
className="maputnik-export-modal"
>
<section className="maputnik-modal-section">
<h1>Download Style</h1>
<h1>{t("Save Style")}</h1>
<p>
Download a JSON style to your computer.
{t("Save the JSON style to your computer.")}
</p>
<div>
<FieldString
label={fieldSpecAdditional.maputnik.maptiler_access_token.label}
fieldSpec={fieldSpecAdditional.maputnik.maptiler_access_token}
label={fsa.maputnik.maptiler_access_token.label}
fieldSpec={fsa.maputnik.maptiler_access_token}
value={(this.props.mapStyle.metadata || {} as any)['maputnik:openmaptiles_access_token']}
onChange={this.changeMetadataProperty.bind(this, "maputnik:openmaptiles_access_token")}
/>
<FieldString
label={fieldSpecAdditional.maputnik.thunderforest_access_token.label}
fieldSpec={fieldSpecAdditional.maputnik.thunderforest_access_token}
label={fsa.maputnik.thunderforest_access_token.label}
fieldSpec={fsa.maputnik.thunderforest_access_token}
value={(this.props.mapStyle.metadata || {} as any)['maputnik:thunderforest_access_token']}
onChange={this.changeMetadataProperty.bind(this, "maputnik:thunderforest_access_token")}
/>
<FieldString
label={fsa.maputnik.stadia_access_token.label}
fieldSpec={fsa.maputnik.stadia_access_token}
value={(this.props.mapStyle.metadata || {} as any)['maputnik:stadia_access_token']}
onChange={this.changeMetadataProperty.bind(this, "maputnik:stadia_access_token")}
/>
</div>
<div className="maputnik-modal-export-buttons">
<InputButton
onClick={this.downloadStyle.bind(this)}
>
<MdFileDownload />
Download Style
<InputButton onClick={this.saveStyle.bind(this)}>
<MdSave/>
{t("Save")}
</InputButton>
{showSaveFilePickerAvailable && (
<InputButton onClick={this.saveStyleAs.bind(this)}>
<MdSave/>
{t("Save as")}
</InputButton>
)}
<InputButton
onClick={this.downloadHtml.bind(this)}
>
<MdFileDownload />
Download HTML
<InputButton onClick={this.createHtml.bind(this)}>
<MdMap/>
{t("Create HTML")}
</InputButton>
</div>
</section>
@@ -150,3 +211,5 @@ export default class ModalExport extends React.Component<ModalExportProps> {
}
}
const ModalExport = withTranslation()(ModalExportInternal);
export default ModalExport;
+8 -4
View File
@@ -2,23 +2,25 @@ import React from 'react'
import InputButton from './InputButton'
import Modal from './Modal'
import { WithTranslation, withTranslation } from 'react-i18next';
type ModalLoadingProps = {
type ModalLoadingInternalProps = {
isOpen: boolean
onCancel(...args: unknown[]): unknown
title: string
message: React.ReactNode
};
} & WithTranslation;
export default class ModalLoading extends React.Component<ModalLoadingProps> {
class ModalLoadingInternal extends React.Component<ModalLoadingInternalProps> {
underlayOnClick(e: Event) {
// This stops click events falling through to underlying modals.
e.stopPropagation();
}
render() {
const t = this.props.t;
return <Modal
data-wd-key="modal:loading"
isOpen={this.props.isOpen}
@@ -35,10 +37,12 @@ export default class ModalLoading extends React.Component<ModalLoadingProps> {
</p>
<p className="maputnik-dialog__buttons">
<InputButton onClick={(e) => this.props.onCancel(e)}>
Cancel
{t("Cancel")}
</InputButton>
</p>
</Modal>
}
}
const ModalLoading = withTranslation()(ModalLoadingInternal);
export default ModalLoading;
+71 -21
View File
@@ -2,6 +2,7 @@ import React, { FormEvent } from 'react'
import {MdFileUpload} from 'react-icons/md'
import {MdAddCircleOutline} from 'react-icons/md'
import FileReaderInput, { Result } from 'react-file-reader-input'
import { Trans, WithTranslation, withTranslation } from 'react-i18next';
import ModalLoading from './ModalLoading'
import Modal from './Modal'
@@ -42,11 +43,12 @@ class PublicStyle extends React.Component<PublicStyleProps> {
}
}
type ModalOpenProps = {
type ModalOpenInternalProps = {
isOpen: boolean
onOpenToggle(...args: unknown[]): unknown
onStyleOpen(...args: unknown[]): unknown
};
fileHandle: FileSystemFileHandle | null
} & WithTranslation;
type ModalOpenState = {
styleUrl: string
@@ -55,8 +57,8 @@ type ModalOpenState = {
activeRequestUrl?: string | null
};
export default class ModalOpen extends React.Component<ModalOpenProps, ModalOpenState> {
constructor(props: ModalOpenProps) {
class ModalOpenInternal extends React.Component<ModalOpenInternalProps, ModalOpenState> {
constructor(props: ModalOpenInternalProps) {
super(props);
this.state = {
styleUrl: ""
@@ -134,10 +136,44 @@ export default class ModalOpen extends React.Component<ModalOpenProps, ModalOpen
this.onStyleSelect(this.state.styleUrl);
}
onUpload = (_: any, files: Result[]) => {
onOpenFile = async () => {
this.clearError();
const pickerOpts: OpenFilePickerOptions = {
types: [
{
description: "json",
accept: { "application/json": [".json"] },
},
],
multiple: false,
};
const [fileHandle] = await window.showOpenFilePicker(pickerOpts) as Array<FileSystemFileHandle>;
const file = await fileHandle.getFile();
const content = await file.text();
let mapStyle;
try {
mapStyle = JSON.parse(content)
} catch (err) {
this.setState({
error: (err as Error).toString()
});
return;
}
mapStyle = style.ensureStyleValidity(mapStyle)
this.props.onStyleOpen(mapStyle, fileHandle);
this.onOpenToggle();
return file;
}
// it is not guaranteed that the File System Access API is available on all
// browsers. If the function is not available, a fallback behavior is used.
onFileChanged = async (_: any, files: Result[]) => {
const [, file] = files[0];
const reader = new FileReader();
this.clearError();
reader.readAsText(file, "UTF-8");
@@ -174,6 +210,7 @@ export default class ModalOpen extends React.Component<ModalOpenProps, ModalOpen
}
render() {
const t = this.props.t;
const styleOptions = publicStyles.map(style => {
return <PublicStyle
key={style.id}
@@ -194,35 +231,46 @@ export default class ModalOpen extends React.Component<ModalOpenProps, ModalOpen
);
}
return (
return (
<div>
<Modal
data-wd-key="modal:open"
isOpen={this.props.isOpen}
onOpenToggle={() => this.onOpenToggle()}
title={'Open Style'}
title={t('Open Style')}
>
{errorElement}
<section className="maputnik-modal-section">
<h1>Upload Style</h1>
<p>Upload a JSON style from your computer.</p>
<FileReaderInput onChange={this.onUpload} tabIndex={-1} aria-label="Style file">
<InputButton className="maputnik-upload-button"><MdFileUpload /> Upload</InputButton>
</FileReaderInput>
<h1>{t("Open local Style")}</h1>
<p>{t("Open a local JSON style from your computer.")}</p>
<div>
{typeof window.showOpenFilePicker === "function" ? (
<InputButton
className="maputnik-big-button"
onClick={this.onOpenFile}><MdFileUpload/> {t("Open Style")}
</InputButton>
) : (
<FileReaderInput onChange={this.onFileChanged} tabIndex={-1} aria-label={t("Open Style")}>
<InputButton className="maputnik-upload-button"><MdFileUpload /> {t("Open Style")}</InputButton>
</FileReaderInput>
)}
</div>
</section>
<section className="maputnik-modal-section">
<form onSubmit={this.onSubmitUrl}>
<h1>Load from URL</h1>
<h1>{t("Load from URL")}</h1>
<p>
Load from a URL. Note that the URL must have <a href="https://enable-cors.org" target="_blank" rel="noopener noreferrer">CORS enabled</a>.
<Trans t={t}>
Load from a URL. Note that the URL must have <a href="https://enable-cors.org" target="_blank" rel="noopener noreferrer">CORS enabled</a>.
</Trans>
</p>
<InputUrl
aria-label="Style URL"
aria-label={t("Style URL")}
data-wd-key="modal:open.url.input"
type="text"
className="maputnik-input"
default="Enter URL..."
default={t("Enter URL...")}
value={this.state.styleUrl}
onInput={this.onChangeUrl}
onChange={this.onChangeUrl}
@@ -239,9 +287,9 @@ export default class ModalOpen extends React.Component<ModalOpenProps, ModalOpen
</section>
<section className="maputnik-modal-section maputnik-modal-section--shrink">
<h1>Gallery Styles</h1>
<h1>{t("Gallery Styles")}</h1>
<p>
Open one of the publicly available styles to start from.
{t("Open one of the publicly available styles to start from.")}
</p>
<div className="maputnik-style-gallery-container">
{styleOptions}
@@ -251,12 +299,14 @@ export default class ModalOpen extends React.Component<ModalOpenProps, ModalOpen
<ModalLoading
isOpen={!!this.state.activeRequest}
title={'Loading style'}
title={t('Loading style')}
onCancel={(e: Event) => this.onCancelActiveRequest(e)}
message={"Loading: "+this.state.activeRequestUrl}
message={t("Loading: {{requestUrl}}", { requestUrl: this.state.activeRequestUrl })}
/>
</div>
)
}
}
const ModalOpen = withTranslation()(ModalOpenInternal);
export default ModalOpen;
+86 -48
View File
@@ -1,6 +1,7 @@
import React from 'react'
import {latest} from '@maplibre/maplibre-gl-style-spec'
import type {LightSpecification, StyleSpecification, TransitionSpecification} from 'maplibre-gl'
import latest from '@maplibre/maplibre-gl-style-spec/dist/latest.json'
import type {LightSpecification, StyleSpecification, TerrainSpecification, TransitionSpecification} from 'maplibre-gl'
import { WithTranslation, withTranslation } from 'react-i18next';
import FieldArray from './FieldArray'
import FieldNumber from './FieldNumber'
@@ -12,15 +13,15 @@ import FieldColor from './FieldColor'
import Modal from './Modal'
import fieldSpecAdditional from '../libs/field-spec-additional'
type ModalSettingsProps = {
type ModalSettingsInternalProps = {
mapStyle: StyleSpecification
onStyleChanged(...args: unknown[]): unknown
onChangeMetadataProperty(...args: unknown[]): unknown
isOpen: boolean
onOpenToggle(...args: unknown[]): unknown
};
} & WithTranslation;
export default class ModalSettings extends React.Component<ModalSettingsProps> {
class ModalSettingsInternal extends React.Component<ModalSettingsInternalProps> {
changeTransitionProperty(property: keyof TransitionSpecification, value: number | undefined) {
const transition = {
...this.props.mapStyle.transition,
@@ -58,6 +59,25 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
});
}
changeTerrainProperty(property: keyof TerrainSpecification, value: any) {
const terrain = {
...this.props.mapStyle.terrain,
}
if (value === undefined) {
delete terrain[property];
}
else {
// @ts-ignore
terrain[property] = value;
}
this.props.onStyleChanged({
...this.props.mapStyle,
terrain,
});
}
changeStyleProperty(property: keyof StyleSpecification | "owner", value: any) {
const changedStyle = {
...this.props.mapStyle,
@@ -76,87 +96,94 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
render() {
const metadata = this.props.mapStyle.metadata || {} as any;
const {onChangeMetadataProperty, mapStyle} = this.props;
const inputProps = { }
const {t, onChangeMetadataProperty, mapStyle} = this.props;
const fsa = fieldSpecAdditional(t);
const light = this.props.mapStyle.light || {};
const transition = this.props.mapStyle.transition || {};
const terrain = this.props.mapStyle.terrain || {} as TerrainSpecification;
return <Modal
data-wd-key="modal:settings"
isOpen={this.props.isOpen}
onOpenToggle={this.props.onOpenToggle}
title={'Style Settings'}
title={t('Style Settings')}
>
<div className="modal:settings">
<FieldString {...inputProps}
label={"Name"}
<FieldString
label={t("Name")}
fieldSpec={latest.$root.name}
data-wd-key="modal:settings.name"
value={this.props.mapStyle.name}
onChange={this.changeStyleProperty.bind(this, "name")}
/>
<FieldString {...inputProps}
label={"Owner"}
fieldSpec={{doc: "Owner ID of the style. Used by Mapbox or future style APIs."}}
<FieldString
label={t("Owner")}
fieldSpec={{doc: t("Owner ID of the style. Used by Mapbox or future style APIs.")}}
data-wd-key="modal:settings.owner"
value={(this.props.mapStyle as any).owner}
onChange={this.changeStyleProperty.bind(this, "owner")}
/>
<FieldUrl {...inputProps}
<FieldUrl
fieldSpec={latest.$root.sprite}
label="Sprite URL"
label={t("Sprite URL")}
data-wd-key="modal:settings.sprite"
value={this.props.mapStyle.sprite as string}
onChange={this.changeStyleProperty.bind(this, "sprite")}
/>
<FieldUrl {...inputProps}
label="Glyphs URL"
<FieldUrl
label={t("Glyphs URL")}
fieldSpec={latest.$root.glyphs}
data-wd-key="modal:settings.glyphs"
value={this.props.mapStyle.glyphs as string}
onChange={this.changeStyleProperty.bind(this, "glyphs")}
/>
<FieldString {...inputProps}
label={fieldSpecAdditional.maputnik.maptiler_access_token.label}
fieldSpec={fieldSpecAdditional.maputnik.maptiler_access_token}
<FieldString
label={fsa.maputnik.maptiler_access_token.label}
fieldSpec={fsa.maputnik.maptiler_access_token}
data-wd-key="modal:settings.maputnik:openmaptiles_access_token"
value={metadata['maputnik:openmaptiles_access_token']}
onChange={onChangeMetadataProperty.bind(this, "maputnik:openmaptiles_access_token")}
/>
<FieldString {...inputProps}
label={fieldSpecAdditional.maputnik.thunderforest_access_token.label}
fieldSpec={fieldSpecAdditional.maputnik.thunderforest_access_token}
<FieldString
label={fsa.maputnik.thunderforest_access_token.label}
fieldSpec={fsa.maputnik.thunderforest_access_token}
data-wd-key="modal:settings.maputnik:thunderforest_access_token"
value={metadata['maputnik:thunderforest_access_token']}
onChange={onChangeMetadataProperty.bind(this, "maputnik:thunderforest_access_token")}
/>
<FieldString
label={fsa.maputnik.stadia_access_token.label}
fieldSpec={fsa.maputnik.stadia_access_token}
data-wd-key="modal:settings.maputnik:stadia_access_token"
value={metadata['maputnik:stadia_access_token']}
onChange={onChangeMetadataProperty.bind(this, "maputnik:stadia_access_token")}
/>
<FieldArray
label={"Center"}
label={t("Center")}
fieldSpec={latest.$root.center}
length={2}
type="number"
value={mapStyle.center || []}
default={latest.$root.center.default || [0, 0]}
default={[0, 0]}
onChange={this.changeStyleProperty.bind(this, "center")}
/>
<FieldNumber
{...inputProps}
label={"Zoom"}
label={t("Zoom")}
fieldSpec={latest.$root.zoom}
value={mapStyle.zoom}
default={latest.$root.zoom.default || 0}
default={0}
onChange={this.changeStyleProperty.bind(this, "zoom")}
/>
<FieldNumber
{...inputProps}
label={"Bearing"}
label={t("Bearing")}
fieldSpec={latest.$root.bearing}
value={mapStyle.bearing}
default={latest.$root.bearing.default}
@@ -164,8 +191,7 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
/>
<FieldNumber
{...inputProps}
label={"Pitch"}
label={t("Pitch")}
fieldSpec={latest.$root.pitch}
value={mapStyle.pitch}
default={latest.$root.pitch.default}
@@ -173,8 +199,7 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
/>
<FieldEnum
{...inputProps}
label={"Light anchor"}
label={t("Light anchor")}
fieldSpec={latest.light.anchor}
name="light-anchor"
value={light.anchor as string}
@@ -184,8 +209,7 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
/>
<FieldColor
{...inputProps}
label={"Light color"}
label={t("Light color")}
fieldSpec={latest.light.color}
value={light.color as string}
default={latest.light.color.default}
@@ -193,8 +217,7 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
/>
<FieldNumber
{...inputProps}
label={"Light intensity"}
label={t("Light intensity")}
fieldSpec={latest.light.intensity}
value={light.intensity as number}
default={latest.light.intensity.default}
@@ -202,8 +225,7 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
/>
<FieldArray
{...inputProps}
label={"Light position"}
label={t("Light position")}
fieldSpec={latest.light.position}
type="number"
length={latest.light.position.length}
@@ -212,9 +234,24 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
onChange={this.changeLightProperty.bind(this, "position")}
/>
<FieldString
label={t("Terrain source")}
fieldSpec={latest.terrain.source}
data-wd-key="modal:settings.maputnik:terrain_source"
value={terrain.source}
onChange={this.changeTerrainProperty.bind(this, "source")}
/>
<FieldNumber
{...inputProps}
label={"Transition delay"}
label={t("Terrain exaggeration")}
fieldSpec={latest.terrain.exaggeration}
value={terrain.exaggeration}
default={latest.terrain.exaggeration.default}
onChange={this.changeTerrainProperty.bind(this, "exaggeration")}
/>
<FieldNumber
label={t("Transition delay")}
fieldSpec={latest.transition.delay}
value={transition.delay}
default={latest.transition.delay.default}
@@ -222,21 +259,20 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
/>
<FieldNumber
{...inputProps}
label={"Transition duration"}
label={t("Transition duration")}
fieldSpec={latest.transition.duration}
value={transition.duration}
default={latest.transition.duration.default}
onChange={this.changeTransitionProperty.bind(this, "duration")}
/>
<FieldSelect {...inputProps}
label={fieldSpecAdditional.maputnik.style_renderer.label}
fieldSpec={fieldSpecAdditional.maputnik.style_renderer}
<FieldSelect
label={fsa.maputnik.style_renderer.label}
fieldSpec={fsa.maputnik.style_renderer}
data-wd-key="modal:settings.maputnik:renderer"
options={[
['mlgljs', 'MapLibreGL JS'],
['ol', 'Open Layers (experimental)'],
['ol', t('Open Layers (experimental)')],
]}
value={metadata['maputnik:renderer'] || 'mlgljs'}
onChange={onChangeMetadataProperty.bind(this, 'maputnik:renderer')}
@@ -246,3 +282,5 @@ export default class ModalSettings extends React.Component<ModalSettingsProps> {
}
}
const ModalSettings = withTranslation()(ModalSettingsInternal)
export default ModalSettings;
+32 -26
View File
@@ -1,48 +1,50 @@
import React from 'react'
import { Trans, WithTranslation, withTranslation } from 'react-i18next';
import Modal from './Modal'
type ModalShortcutsProps = {
type ModalShortcutsInternalProps = {
isOpen: boolean
onOpenToggle(...args: unknown[]): unknown
};
} & WithTranslation;
export default class ModalShortcuts extends React.Component<ModalShortcutsProps> {
class ModalShortcutsInternal extends React.Component<ModalShortcutsInternalProps> {
render() {
const t = this.props.t;
const help = [
{
key: <kbd>?</kbd>,
text: "Shortcuts menu"
text: t("Shortcuts menu")
},
{
key: <kbd>o</kbd>,
text: "Open modal"
text: t("Open modal")
},
{
key: <kbd>e</kbd>,
text: "Export modal"
text: t("Export modal")
},
{
key: <kbd>d</kbd>,
text: "Data Sources modal"
text: t("Data Sources modal")
},
{
key: <kbd>s</kbd>,
text: "Style Settings modal"
text: t("Style Settings modal")
},
{
key: <kbd>i</kbd>,
text: "Toggle inspect"
text: t("Toggle inspect")
},
{
key: <kbd>m</kbd>,
text: "Focus map"
text: t("Focus map")
},
{
key: <kbd>!</kbd>,
text: "Debug modal"
text: t("Debug modal")
},
]
@@ -50,51 +52,51 @@ export default class ModalShortcuts extends React.Component<ModalShortcutsProps>
const mapShortcuts = [
{
key: <kbd>+</kbd>,
text: "Increase the zoom level by 1.",
text: t("Increase the zoom level by 1.",)
},
{
key: <><kbd>Shift</kbd> + <kbd>+</kbd></>,
text: "Increase the zoom level by 2.",
text: t("Increase the zoom level by 2.",)
},
{
key: <kbd>-</kbd>,
text: "Decrease the zoom level by 1.",
text: t("Decrease the zoom level by 1.",)
},
{
key: <><kbd>Shift</kbd> + <kbd>-</kbd></>,
text: "Decrease the zoom level by 2.",
text: t("Decrease the zoom level by 2.",)
},
{
key: <kbd>Up</kbd>,
text: "Pan up by 100 pixels.",
text: t("Pan up by 100 pixels.",)
},
{
key: <kbd>Down</kbd>,
text: "Pan down by 100 pixels.",
text: t("Pan down by 100 pixels.",)
},
{
key: <kbd>Left</kbd>,
text: "Pan left by 100 pixels.",
text: t("Pan left by 100 pixels.",)
},
{
key: <kbd>Right</kbd>,
text: "Pan right by 100 pixels.",
text: t("Pan right by 100 pixels.",)
},
{
key: <><kbd>Shift</kbd> + <kbd>Right</kbd></>,
text: "Increase the rotation by 15 degrees.",
text: t("Increase the rotation by 15 degrees.",)
},
{
key: <><kbd>Shift</kbd> + <kbd>Left</kbd></>,
text: "Decrease the rotation by 15 degrees."
text: t("Decrease the rotation by 15 degrees.")
},
{
key: <><kbd>Shift</kbd> + <kbd>Up</kbd></>,
text: "Increase the pitch by 10 degrees."
text: t("Increase the pitch by 10 degrees.")
},
{
key: <><kbd>Shift</kbd> + <kbd>Down</kbd></>,
text: "Decrease the pitch by 10 degrees."
text: t("Decrease the pitch by 10 degrees.")
},
]
@@ -103,11 +105,13 @@ export default class ModalShortcuts extends React.Component<ModalShortcutsProps>
data-wd-key="modal:shortcuts"
isOpen={this.props.isOpen}
onOpenToggle={this.props.onOpenToggle}
title={'Shortcuts'}
title={t('Shortcuts')}
>
<section className="maputnik-modal-section maputnik-modal-shortcuts">
<p>
Press <code>ESC</code> to lose focus of any active elements, then press one of:
<Trans t={t}>
Press <code>ESC</code> to lose focus of any active elements, then press one of:
</Trans>
</p>
<dl>
{help.map((item, idx) => {
@@ -117,7 +121,7 @@ export default class ModalShortcuts extends React.Component<ModalShortcutsProps>
</div>
})}
</dl>
<p>If the Map is in focused you can use the following shortcuts</p>
<p>{t("If the Map is in focused you can use the following shortcuts")}</p>
<ul>
{mapShortcuts.map((item, idx) => {
return <li key={idx}>
@@ -130,3 +134,5 @@ export default class ModalShortcuts extends React.Component<ModalShortcutsProps>
}
}
const ModalShortcuts = withTranslation()(ModalShortcutsInternal);
export default ModalShortcuts;
+59 -38
View File
@@ -1,7 +1,8 @@
import React from 'react'
import {MdAddCircleOutline, MdDelete} from 'react-icons/md'
import {latest} from '@maplibre/maplibre-gl-style-spec'
import latest from '@maplibre/maplibre-gl-style-spec/dist/latest.json'
import type {GeoJSONSourceSpecification, RasterDEMSourceSpecification, RasterSourceSpecification, SourceSpecification, StyleSpecification, VectorSourceSpecification} from 'maplibre-gl'
import { WithTranslation, withTranslation } from 'react-i18next';
import Modal from './Modal'
import InputButton from './InputButton'
@@ -41,7 +42,7 @@ class PublicSource extends React.Component<PublicSourceProps> {
function editorMode(source: SourceSpecification) {
if(source.type === 'raster') {
if(source.tiles) return 'tilexyz_raster'
if(source.tiles) return 'tile_raster'
return 'tilejson_raster'
}
if(source.type === 'raster-dem') {
@@ -49,7 +50,8 @@ function editorMode(source: SourceSpecification) {
return 'tilejson_raster-dem'
}
if(source.type === 'vector') {
if(source.tiles) return 'tilexyz_vector'
if(source.tiles) return 'tile_vector'
if(source.url && source.url.startsWith("pmtiles://")) return 'pmtiles_vector'
return 'tilejson_vector'
}
if(source.type === 'geojson') {
@@ -74,16 +76,17 @@ type ActiveModalSourcesTypeEditorProps = {
source: SourceSpecification
onDelete(...args: unknown[]): unknown
onChange(...args: unknown[]): unknown
};
} & WithTranslation;
class ActiveModalSourcesTypeEditor extends React.Component<ActiveModalSourcesTypeEditorProps> {
render() {
const t = this.props.t;
return <div className="maputnik-active-source-type-editor">
<div className="maputnik-active-source-type-editor-header">
<span className="maputnik-active-source-type-editor-header-id">#{this.props.sourceId}</span>
<span className="maputnik-space" />
<InputButton
aria-label={`Remove '${this.props.sourceId}' source`}
aria-label={t("Remove '{{sourceId}}' source", {sourceId: this.props.sourceId})}
className="maputnik-active-source-type-editor-header-delete"
onClick={()=> this.props.onDelete(this.props.sourceId)}
style={{backgroundColor: 'transparent'}}
@@ -104,7 +107,7 @@ class ActiveModalSourcesTypeEditor extends React.Component<ActiveModalSourcesTyp
type AddSourceProps = {
onAdd(...args: unknown[]): unknown
};
} & WithTranslation;
type AddSourceState = {
mode: EditorMode
@@ -127,6 +130,10 @@ class AddSource extends React.Component<AddSourceProps, AddSourceState> {
const {protocol} = window.location;
switch(mode) {
case 'pmtiles_vector': return {
type: 'vector',
url: `${protocol}//localhost:3000/file.pmtiles`
}
case 'geojson_url': return {
type: 'geojson',
data: `${protocol}//localhost:3000/geojson.json`
@@ -134,27 +141,30 @@ class AddSource extends React.Component<AddSourceProps, AddSourceState> {
case 'geojson_json': return {
type: 'geojson',
cluster: (source as GeoJSONSourceSpecification).cluster || false,
data: {}
data: ''
}
case 'tilejson_vector': return {
type: 'vector',
url: (source as VectorSourceSpecification).url || `${protocol}//localhost:3000/tilejson.json`
}
case 'tilexyz_vector': return {
case 'tile_vector': return {
type: 'vector',
tiles: (source as VectorSourceSpecification).tiles || [`${protocol}//localhost:3000/{x}/{y}/{z}.pbf`],
minzoom: (source as VectorSourceSpecification).minzoom || 0,
maxzoom: (source as VectorSourceSpecification).maxzoom || 14
maxzoom: (source as VectorSourceSpecification).maxzoom || 14,
scheme: (source as VectorSourceSpecification).scheme || 'xyz'
}
case 'tilejson_raster': return {
type: 'raster',
url: (source as RasterSourceSpecification).url || `${protocol}//localhost:3000/tilejson.json`
}
case 'tilexyz_raster': return {
case 'tile_raster': return {
type: 'raster',
tiles: (source as RasterSourceSpecification).tiles || [`${protocol}//localhost:3000/{x}/{y}/{z}.pbf`],
tiles: (source as RasterSourceSpecification).tiles || [`${protocol}//localhost:3000/{x}/{y}/{z}.png`],
minzoom: (source as RasterSourceSpecification).minzoom || 0,
maxzoom: (source as RasterSourceSpecification).maxzoom || 14
maxzoom: (source as RasterSourceSpecification).maxzoom || 14,
scheme: (source as RasterSourceSpecification).scheme || 'xyz',
tileSize: (source as RasterSourceSpecification).tileSize || 512,
}
case 'tilejson_raster-dem': return {
type: 'raster-dem',
@@ -162,9 +172,10 @@ class AddSource extends React.Component<AddSourceProps, AddSourceState> {
}
case 'tilexyz_raster-dem': return {
type: 'raster-dem',
tiles: (source as RasterDEMSourceSpecification).tiles || [`${protocol}//localhost:3000/{x}/{y}/{z}.pbf`],
tiles: (source as RasterDEMSourceSpecification).tiles || [`${protocol}//localhost:3000/{x}/{y}/{z}.png`],
minzoom: (source as RasterDEMSourceSpecification).minzoom || 0,
maxzoom: (source as RasterDEMSourceSpecification).maxzoom || 14
maxzoom: (source as RasterDEMSourceSpecification).maxzoom || 14,
tileSize: (source as RasterDEMSourceSpecification).tileSize || 512
}
case 'image': return {
type: 'image',
@@ -202,6 +213,7 @@ class AddSource extends React.Component<AddSourceProps, AddSourceState> {
}
render() {
const t = this.props.t;
// Kind of a hack because the type changes, however maputnik has 1..n
// options per type, for example
//
@@ -215,28 +227,31 @@ class AddSource extends React.Component<AddSourceProps, AddSourceState> {
return <div className="maputnik-add-source">
<FieldString
label={"Source ID"}
fieldSpec={{doc: "Unique ID that identifies the source and is used in the layer to reference the source."}}
label={t("Source ID")}
fieldSpec={{doc: t("Unique ID that identifies the source and is used in the layer to reference the source.")}}
value={this.state.sourceId}
onChange={(v: string) => this.setState({ sourceId: v})}
data-wd-key="modal:sources.add.source_id"
/>
<FieldSelect
label={"Source Type"}
label={t("Source Type")}
fieldSpec={sourceTypeFieldSpec}
options={[
['geojson_json', 'GeoJSON (JSON)'],
['geojson_url', 'GeoJSON (URL)'],
['tilejson_vector', 'Vector (TileJSON URL)'],
['tilexyz_vector', 'Vector (XYZ URLs)'],
['tilejson_raster', 'Raster (TileJSON URL)'],
['tilexyz_raster', 'Raster (XYZ URL)'],
['tilejson_raster-dem', 'Raster DEM (TileJSON URL)'],
['tilexyz_raster-dem', 'Raster DEM (XYZ URLs)'],
['image', 'Image'],
['video', 'Video'],
['geojson_json', t('GeoJSON (JSON)')],
['geojson_url', t('GeoJSON (URL)')],
['tilejson_vector', t('Vector (TileJSON URL)')],
['tile_vector', t('Vector (Tile URLs)')],
['tilejson_raster', t('Raster (TileJSON URL)')],
['tile_raster', t('Raster (Tile URLs)')],
['tilejson_raster-dem', t('Raster DEM (TileJSON URL)')],
['tilexyz_raster-dem', t('Raster DEM (XYZ URLs)')],
['pmtiles_vector', t('Vector (PMTiles)')],
['image', t('Image')],
['video', t('Video')],
]}
onChange={mode => this.setState({mode: mode as EditorMode, source: this.defaultSource(mode as EditorMode)})}
value={this.state.mode as string}
data-wd-key="modal:sources.add.source_type"
/>
<ModalSourcesTypeEditor
onChange={this.onChangeSource}
@@ -246,21 +261,22 @@ class AddSource extends React.Component<AddSourceProps, AddSourceState> {
<InputButton
className="maputnik-add-source-button"
onClick={this.onAdd}
data-wd-key="modal:sources.add.add_source"
>
Add Source
{t("Add Source")}
</InputButton>
</div>
}
}
type ModalSourcesProps = {
type ModalSourcesInternalProps = {
mapStyle: StyleSpecification
isOpen: boolean
onOpenToggle(...args: unknown[]): unknown
onStyleChanged(...args: unknown[]): unknown
};
} & WithTranslation;
export default class ModalSources extends React.Component<ModalSourcesProps> {
class ModalSourcesInternal extends React.Component<ModalSourcesInternalProps> {
stripTitle(source: SourceSpecification & {title?: string}): SourceSpecification {
const strippedSource = {...source}
delete strippedSource['title']
@@ -268,7 +284,8 @@ export default class ModalSources extends React.Component<ModalSourcesProps> {
}
render() {
const mapStyle = this.props.mapStyle
const {t, mapStyle} = this.props;
const i18nProps = {t, i18n: this.props.i18n, tReady: this.props.tReady};
const activeSources = Object.keys(mapStyle.sources).map(sourceId => {
const source = mapStyle.sources[sourceId]
return <ActiveModalSourcesTypeEditor
@@ -277,6 +294,7 @@ export default class ModalSources extends React.Component<ModalSourcesProps> {
source={source}
onChange={(src: SourceSpecification) => this.props.onStyleChanged(changeSource(mapStyle, sourceId, src))}
onDelete={() => this.props.onStyleChanged(deleteSource(mapStyle, sourceId))}
{...i18nProps}
/>
})
@@ -295,17 +313,17 @@ export default class ModalSources extends React.Component<ModalSourcesProps> {
data-wd-key="modal:sources"
isOpen={this.props.isOpen}
onOpenToggle={this.props.onOpenToggle}
title={'Sources'}
title={t('Sources')}
>
<section className="maputnik-modal-section">
<h1>Active Sources</h1>
<h1>{t("Active Sources")}</h1>
{activeSources}
</section>
<section className="maputnik-modal-section">
<h1>Choose Public Source</h1>
<h1>{t("Choose Public Source")}</h1>
<p>
Add one of the publicly available sources to your style.
{t("Add one of the publicly available sources to your style.")}
</p>
<div className="maputnik-public-sources" style={{maxWidth: 500}}>
{tilesetOptions}
@@ -313,13 +331,16 @@ export default class ModalSources extends React.Component<ModalSourcesProps> {
</section>
<section className="maputnik-modal-section">
<h1>Add New Source</h1>
<p>Add a new source to your style. You can only choose the source type and id at creation time!</p>
<h1>{t("Add New Source")}</h1>
<p>{t("Add a new source to your style. You can only choose the source type and id at creation time!")}</p>
<AddSource
onAdd={(sourceId: string, source: SourceSpecification) => this.props.onStyleChanged(addSource(mapStyle, sourceId, source))}
{...i18nProps}
/>
</section>
</Modal>
}
}
const ModalSources = withTranslation()(ModalSourcesInternal);
export default ModalSources;
+114 -29
View File
@@ -8,8 +8,10 @@ import FieldDynamicArray from './FieldDynamicArray'
import FieldArray from './FieldArray'
import FieldJson from './FieldJson'
import FieldCheckbox from './FieldCheckbox'
import { WithTranslation, withTranslation } from 'react-i18next';
import { TFunction } from 'i18next'
export type EditorMode = "video" | "image" | "tilejson_vector" | "tilexyz_raster" | "tilejson_raster" | "tilexyz_raster-dem" | "tilejson_raster-dem" | "tilexyz_vector" | "geojson_url" | "geojson_json" | null;
export type EditorMode = "video" | "image" | "tilejson_vector" | "tile_raster" | "tilejson_raster" | "tilexyz_raster-dem" | "tilejson_raster-dem" | "pmtiles_vector" | "tile_vector" | "geojson_url" | "geojson_json" | null;
type TileJSONSourceEditorProps = {
source: {
@@ -17,14 +19,15 @@ type TileJSONSourceEditorProps = {
}
onChange(...args: unknown[]): unknown
children?: React.ReactNode
};
} & WithTranslation;
class TileJSONSourceEditor extends React.Component<TileJSONSourceEditorProps> {
render() {
const t = this.props.t;
return <div>
<FieldUrl
label={"TileJSON URL"}
label={t("TileJSON URL")}
fieldSpec={latest.source_vector.url}
value={this.props.source.url}
onChange={url => this.props.onChange({
@@ -42,10 +45,11 @@ type TileURLSourceEditorProps = {
tiles: string[]
minzoom: number
maxzoom: number
scheme: 'xyz' | 'tms'
}
onChange(...args: unknown[]): unknown
children?: React.ReactNode
};
} & WithTranslation;
class TileURLSourceEditor extends React.Component<TileURLSourceEditorProps> {
changeTileUrls(tiles: string[]) {
@@ -58,7 +62,7 @@ class TileURLSourceEditor extends React.Component<TileURLSourceEditorProps> {
renderTileUrls() {
const tiles = this.props.source.tiles || [];
return <FieldDynamicArray
label={"Tile URL"}
label={this.props.t("Tile URL")}
fieldSpec={latest.source_vector.tiles}
type="url"
value={tiles}
@@ -67,10 +71,25 @@ class TileURLSourceEditor extends React.Component<TileURLSourceEditorProps> {
}
render() {
const t = this.props.t;
return <div>
{this.renderTileUrls()}
<FieldSelect
label={t("Scheme Type")}
fieldSpec={latest.source_vector.scheme}
options={[
['xyz', 'xyz (Slippy map tilenames scheme)'],
['tms', 'tms (OSGeo spec scheme)'],
]}
onChange={scheme => this.props.onChange({
...this.props.source,
scheme
})}
value={this.props.source.scheme}
data-wd-key="modal:sources.add.scheme_type"
/>
<FieldNumber
label={"Min Zoom"}
label={t("Min Zoom")}
fieldSpec={latest.source_vector.minzoom}
value={this.props.source.minzoom || 0}
onChange={minzoom => this.props.onChange({
@@ -79,7 +98,7 @@ class TileURLSourceEditor extends React.Component<TileURLSourceEditorProps> {
})}
/>
<FieldNumber
label={"Max Zoom"}
label={t("Max Zoom")}
fieldSpec={latest.source_vector.maxzoom}
value={this.props.source.maxzoom || 22}
onChange={maxzoom => this.props.onChange({
@@ -93,16 +112,24 @@ class TileURLSourceEditor extends React.Component<TileURLSourceEditorProps> {
}
}
const createCornerLabels: (t: TFunction) => { label: string, key: string }[] = (t) => ([
{ label: t("Coord top left"), key: "top left" },
{ label: t("Coord top right"), key: "top right" },
{ label: t("Coord bottom right"), key: "bottom right" },
{ label: t("Coord bottom left"), key: "bottom left" },
]);
type ImageSourceEditorProps = {
source: {
coordinates: [number, number][]
url: string
}
onChange(...args: unknown[]): unknown
};
} & WithTranslation;
class ImageSourceEditor extends React.Component<ImageSourceEditorProps> {
render() {
const t = this.props.t;
const changeCoord = (idx: number, val: [number, number]) => {
const coordinates = this.props.source.coordinates.slice(0);
coordinates[idx] = val;
@@ -115,7 +142,7 @@ class ImageSourceEditor extends React.Component<ImageSourceEditorProps> {
return <div>
<FieldUrl
label={"Image URL"}
label={t("Image URL")}
fieldSpec={latest.source_image.url}
value={this.props.source.url}
onChange={url => this.props.onChange({
@@ -123,11 +150,11 @@ class ImageSourceEditor extends React.Component<ImageSourceEditorProps> {
url,
})}
/>
{["top left", "top right", "bottom right", "bottom left"].map((label, idx) => {
{createCornerLabels(t).map(({label, key}, idx) => {
return (
<FieldArray
label={`Coord ${label}`}
key={label}
label={label}
key={key}
length={2}
type="number"
value={this.props.source.coordinates[idx]}
@@ -146,10 +173,11 @@ type VideoSourceEditorProps = {
urls: string[]
}
onChange(...args: unknown[]): unknown
};
} & WithTranslation;
class VideoSourceEditor extends React.Component<VideoSourceEditorProps> {
render() {
const t = this.props.t;
const changeCoord = (idx: number, val: [number, number]) => {
const coordinates = this.props.source.coordinates.slice(0);
coordinates[idx] = val;
@@ -169,18 +197,18 @@ class VideoSourceEditor extends React.Component<VideoSourceEditorProps> {
return <div>
<FieldDynamicArray
label={"Video URL"}
label={t("Video URL")}
fieldSpec={latest.source_video.urls}
type="string"
value={this.props.source.urls}
default={[]}
onChange={changeUrls}
/>
{["top left", "top right", "bottom right", "bottom left"].map((label, idx) => {
{createCornerLabels(t).map(({label, key}, idx) => {
return (
<FieldArray
label={`Coord ${label}`}
key={label}
label={label}
key={key}
length={2}
type="number"
value={this.props.source.coordinates[idx]}
@@ -198,12 +226,13 @@ type GeoJSONSourceUrlEditorProps = {
data: string
}
onChange(...args: unknown[]): unknown
};
} & WithTranslation;
class GeoJSONSourceUrlEditor extends React.Component<GeoJSONSourceUrlEditorProps> {
render() {
const t = this.props.t;
return <FieldUrl
label={"GeoJSON URL"}
label={t("GeoJSON URL")}
fieldSpec={latest.source_geojson.data}
value={this.props.source.data}
onChange={data => this.props.onChange({
@@ -220,12 +249,13 @@ type GeoJSONSourceFieldJsonEditorProps = {
cluster: boolean
}
onChange(...args: unknown[]): unknown
};
} & WithTranslation;
class GeoJSONSourceFieldJsonEditor extends React.Component<GeoJSONSourceFieldJsonEditorProps> {
render() {
const t = this.props.t;
return <div>
<Block label={"GeoJSON"} fieldSpec={latest.source_geojson.data}>
<Block label={t("GeoJSON")} fieldSpec={latest.source_geojson.data}>
<FieldJson
layer={this.props.source.data}
maxHeight={200}
@@ -243,7 +273,7 @@ class GeoJSONSourceFieldJsonEditor extends React.Component<GeoJSONSourceFieldJso
/>
</Block>
<FieldCheckbox
label={'Cluster'}
label={t('Cluster')}
value={this.props.source.cluster}
onChange={cluster => {
this.props.onChange({
@@ -256,29 +286,81 @@ class GeoJSONSourceFieldJsonEditor extends React.Component<GeoJSONSourceFieldJso
}
}
type ModalSourcesTypeEditorProps = {
type PMTilesSourceEditorProps = {
source: {
url: string
}
onChange(...args: unknown[]): unknown
children?: React.ReactNode
} & WithTranslation;
class PMTilesSourceEditor extends React.Component<PMTilesSourceEditorProps> {
render() {
const t = this.props.t;
return <div>
<FieldUrl
label={t("PMTiles URL")}
fieldSpec={latest.source_vector.url}
value={this.props.source.url}
data-wd-key="modal:sources.add.source_url"
onChange={(url: string) => this.props.onChange({
...this.props.source,
url: url.startsWith("pmtiles://") ? url : `pmtiles://${url}`
})}
/>
{this.props.children}
</div>
}
}
type ModalSourcesTypeEditorInternalProps = {
mode: EditorMode
source: any
onChange(...args: unknown[]): unknown
};
} & WithTranslation;
export default class ModalSourcesTypeEditor extends React.Component<ModalSourcesTypeEditorProps> {
class ModalSourcesTypeEditorInternal extends React.Component<ModalSourcesTypeEditorInternalProps> {
render() {
const t = this.props.t;
const commonProps = {
source: this.props.source,
onChange: this.props.onChange,
}
t: this.props.t,
i18n: this.props.i18n,
tReady: this.props.tReady,
};
switch(this.props.mode) {
case 'geojson_url': return <GeoJSONSourceUrlEditor {...commonProps} />
case 'geojson_json': return <GeoJSONSourceFieldJsonEditor {...commonProps} />
case 'tilejson_vector': return <TileJSONSourceEditor {...commonProps} />
case 'tilexyz_vector': return <TileURLSourceEditor {...commonProps} />
case 'tile_vector': return <TileURLSourceEditor {...commonProps} />
case 'tilejson_raster': return <TileJSONSourceEditor {...commonProps} />
case 'tilexyz_raster': return <TileURLSourceEditor {...commonProps} />
case 'tile_raster': return <TileURLSourceEditor {...commonProps}>
<FieldNumber
label={t("Tile Size")}
fieldSpec={latest.source_raster.tileSize}
onChange={tileSize => this.props.onChange({
...this.props.source,
tileSize: tileSize
})}
value={this.props.source.tileSize || latest.source_raster.tileSize.default}
data-wd-key="modal:sources.add.tile_size"
/>
</TileURLSourceEditor>
case 'tilejson_raster-dem': return <TileJSONSourceEditor {...commonProps} />
case 'tilexyz_raster-dem': return <TileURLSourceEditor {...commonProps}>
<FieldNumber
label={t("Tile Size")}
fieldSpec={latest.source_raster_dem.tileSize}
onChange={tileSize => this.props.onChange({
...this.props.source,
tileSize: tileSize
})}
value={this.props.source.tileSize || latest.source_raster_dem.tileSize.default}
data-wd-key="modal:sources.add.tile_size"
/>
<FieldSelect
label={"Encoding"}
label={t("Encoding")}
fieldSpec={latest.source_raster_dem.encoding}
options={Object.keys(latest.source_raster_dem.encoding.values)}
onChange={encoding => this.props.onChange({
@@ -288,6 +370,7 @@ export default class ModalSourcesTypeEditor extends React.Component<ModalSources
value={this.props.source.encoding || latest.source_raster_dem.encoding.default}
/>
</TileURLSourceEditor>
case 'pmtiles_vector': return <PMTilesSourceEditor {...commonProps} />
case 'image': return <ImageSourceEditor {...commonProps} />
case 'video': return <VideoSourceEditor {...commonProps} />
default: return null
@@ -295,3 +378,5 @@ export default class ModalSourcesTypeEditor extends React.Component<ModalSources
}
}
const ModalSourcesTypeEditor = withTranslation()(ModalSourcesTypeEditorInternal);
export default ModalSourcesTypeEditor;
-38
View File
@@ -1,38 +0,0 @@
import React from 'react'
import InputButton from './InputButton'
import Modal from './Modal'
// @ts-ignore
import logoImage from 'maputnik-design/logos/logo-color.svg'
type ModalSurveyProps = {
isOpen: boolean
onOpenToggle(...args: unknown[]): unknown
};
export default class ModalSurvey extends React.Component<ModalSurveyProps> {
onClick = () => {
window.open('https://gregorywolanski.typeform.com/to/cPgaSY', '_blank');
this.props.onOpenToggle();
}
render() {
return <Modal
data-wd-key="modal:survey"
isOpen={this.props.isOpen}
onOpenToggle={this.props.onOpenToggle}
title="Maputnik Survey"
>
<div className="maputnik-modal-survey">
<img src={logoImage} className="maputnik-modal-survey__logo" />
<h1>You + Maputnik = Maputnik better for you</h1>
<p className="maputnik-modal-survey__description">We dont track you, so we dont know how you use Maputnik. Help us make Maputnik better for you by completing a 7minute survey carried out by our contributing designer.</p>
<InputButton onClick={this.onClick} className="maputnik-big-button maputnik-white-button maputnik-wide-button">Take the Maputnik Survey</InputButton>
<p className="maputnik-modal-survey__footnote">It takes 7 minutes, tops! Every question is optional.</p>
</div>
</Modal>
}
}
+3 -3
View File
@@ -1,7 +1,7 @@
@import '../styles/vars';
@use '../styles/vars';
.SmallError {
color: #E57373;
font-size: $font-size-6;
margin-top: $margin-2
font-size: vars.$font-size-6;
margin-top: vars.$margin-2
}
+10 -6
View File
@@ -1,18 +1,22 @@
import React from 'react'
import { WithTranslation, withTranslation } from 'react-i18next';
import './SmallError.scss';
type SmallErrorProps = {
type SmallErrorInternalProps = {
children?: React.ReactNode
};
} & WithTranslation;
export default class SmallError extends React.Component<SmallErrorProps> {
class SmallErrorInternal extends React.Component<SmallErrorInternalProps> {
render () {
const t = this.props.t;
return (
<div className="SmallError">
Error: {this.props.children}
{t("Error:")} {this.props.children}
</div>
);
}
}
}
const SmallError = withTranslation()(SmallErrorInternal);
export default SmallError;
+27 -21
View File
@@ -1,6 +1,6 @@
import React from 'react'
import {mdiFunctionVariant, mdiTableRowPlusAfter} from '@mdi/js';
import {latest} from '@maplibre/maplibre-gl-style-spec'
import latest from '@maplibre/maplibre-gl-style-spec/dist/latest.json'
import InputButton from './InputButton'
import InputSpec from './InputSpec'
@@ -11,13 +11,14 @@ import Block from './Block'
import docUid from '../libs/document-uid'
import sortNumerically from '../libs/sort-numerically'
import {findDefaultFromSpec} from '../libs/spec-helper';
import { WithTranslation, withTranslation } from 'react-i18next';
import labelFromFieldName from '../libs/label-from-field-name'
import DeleteStopButton from './_DeleteStopButton'
function setStopRefs(props: DataPropertyProps, state: DataPropertyState) {
function setStopRefs(props: DataPropertyInternalProps, state: DataPropertyState) {
// This is initialsed below only if required to improved performance.
let newRefs: {[key: number]: string} | undefined;
@@ -35,7 +36,7 @@ function setStopRefs(props: DataPropertyProps, state: DataPropertyState) {
return newRefs;
}
type DataPropertyProps = {
type DataPropertyInternalProps = {
onChange?(fieldName: string, value: any): unknown
onDeleteStop?(...args: unknown[]): unknown
onAddStop?(...args: unknown[]): unknown
@@ -46,7 +47,7 @@ type DataPropertyProps = {
fieldSpec?: object
value?: DataPropertyValue
errors?: object
};
} & WithTranslation;
type DataPropertyState = {
refs: {[key: number]: string}
@@ -65,7 +66,7 @@ export type Stop = [{
value: number
}, number]
export default class DataProperty extends React.Component<DataPropertyProps, DataPropertyState> {
class DataPropertyInternal extends React.Component<DataPropertyInternalProps, DataPropertyState> {
state = {
refs: {} as {[key: number]: string}
}
@@ -80,7 +81,7 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
}
}
static getDerivedStateFromProps(props: DataPropertyProps, state: DataPropertyState) {
static getDerivedStateFromProps(props: Readonly<DataPropertyInternalProps>, state: DataPropertyState) {
const newRefs = setStopRefs(props, state);
if(newRefs) {
return {
@@ -213,6 +214,8 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
}
render() {
const t = this.props.t;
if (typeof this.props.value?.type === "undefined") {
this.props.value!.type = this.getFieldFunctionType(this.props.fieldSpec)
}
@@ -227,8 +230,8 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
const deleteStopBtn = <DeleteStopButton onClick={this.props.onDeleteStop?.bind(this, idx)} />
const dataProps = {
'aria-label': "Input value",
label: "Data value",
'aria-label': t("Input value"),
label: t("Data value"),
value: dataLevel as any,
onChange: (newData: string | number | undefined) => this.changeStop(idx, { zoom: zoomLevel, value: newData as number }, value)
}
@@ -263,7 +266,7 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
</td>
<td>
<InputSpec
aria-label="Output value"
aria-label={t("Output value")}
fieldName={this.props.fieldName}
fieldSpec={this.props.fieldSpec}
value={value}
@@ -282,27 +285,27 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
<legend>{labelFromFieldName(this.props.fieldName)}</legend>
<div className="maputnik-data-fieldset-inner">
<Block
label={"Function"}
label={t("Function")}
key="function"
>
<div className="maputnik-data-spec-property-input">
<InputSelect
value={this.props.value!.type}
onChange={(propVal: string) => this.changeDataType(propVal)}
title={"Select a type of data scale (default is 'categorical')."}
title={t("Select a type of data scale (default is 'categorical').")}
options={this.getDataFunctionTypes(this.props.fieldSpec)}
/>
</div>
</Block>
{this.props.value?.type !== "identity" &&
<Block
label={"Base"}
label={t("Base")}
key="base"
>
<div className="maputnik-data-spec-property-input">
<InputSpec
fieldName={"base"}
fieldSpec={latest.function.base}
fieldSpec={latest.function.base as typeof latest.function.base & { type: "number" }}
value={this.props.value?.base}
onChange={(_, newValue) => this.changeBase(newValue as number)}
/>
@@ -316,14 +319,14 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
<div className="maputnik-data-spec-property-input">
<InputString
value={this.props.value?.property}
title={"Input a data property to base styles off of."}
title={t("Input a data property to base styles off of.")}
onChange={propVal => this.changeDataProperty("property", propVal)}
/>
</div>
</Block>
{dataFields &&
<Block
label={"Default"}
label={t("Default")}
key="default"
>
<InputSpec
@@ -337,12 +340,12 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
{dataFields &&
<div className="maputnik-function-stop">
<table className="maputnik-function-stop-table">
<caption>Stops</caption>
<caption>{t("Stops")}</caption>
<thead>
<tr>
<th>Zoom</th>
<th>Input value</th>
<th rowSpan={2}>Output value</th>
<th>{t("Zoom")}</th>
<th>{t("Input value")}</th>
<th rowSpan={2}>{t("Output value")}</th>
</tr>
</thead>
<tbody>
@@ -359,7 +362,7 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
>
<svg style={{width:"14px", height:"14px", verticalAlign: "text-bottom"}} viewBox="0 0 24 24">
<path fill="currentColor" d={mdiTableRowPlusAfter} />
</svg> Add stop
</svg> {t("Add stop")}
</InputButton>
}
<InputButton
@@ -368,7 +371,7 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
>
<svg style={{width:"14px", height:"14px", verticalAlign: "text-bottom"}} viewBox="0 0 24 24">
<path fill="currentColor" d={mdiFunctionVariant} />
</svg> Convert to expression
</svg> {t("Convert to expression")}
</InputButton>
</div>
</div>
@@ -376,3 +379,6 @@ export default class DataProperty extends React.Component<DataPropertyProps, Dat
</div>
}
}
const DataProperty = withTranslation()(DataPropertyInternal);
export default DataProperty;
+9 -4
View File
@@ -2,21 +2,26 @@ import React from 'react'
import InputButton from './InputButton'
import {MdDelete} from 'react-icons/md'
import { WithTranslation, withTranslation } from 'react-i18next';
type DeleteStopButtonProps = {
type DeleteStopButtonInternalProps = {
onClick?(...args: unknown[]): unknown
};
} & WithTranslation;
export default class DeleteStopButton extends React.Component<DeleteStopButtonProps> {
class DeleteStopButtonInternal extends React.Component<DeleteStopButtonInternalProps> {
render() {
const t = this.props.t;
return <InputButton
className="maputnik-delete-stop"
onClick={this.props.onClick}
title={"Remove zoom level from stop"}
title={t("Remove zoom level from stop")}
>
<MdDelete />
</InputButton>
}
}
const DeleteStopButton = withTranslation()(DeleteStopButtonInternal);
export default DeleteStopButton;
+12 -8
View File
@@ -1,6 +1,7 @@
import React from 'react'
import {MdDelete, MdUndo} from 'react-icons/md'
import stringifyPretty from 'json-stringify-pretty-compact'
import { WithTranslation, withTranslation } from 'react-i18next';
import Block from './Block'
import InputButton from './InputButton'
@@ -8,7 +9,7 @@ import labelFromFieldName from '../libs/label-from-field-name'
import FieldJson from './FieldJson'
type ExpressionPropertyProps = {
type ExpressionPropertyInternalProps = {
onDelete?(...args: unknown[]): unknown
fieldName: string
fieldType?: string
@@ -20,20 +21,20 @@ type ExpressionPropertyProps = {
canUndo?(...args: unknown[]): unknown
onFocus?(...args: unknown[]): unknown
onBlur?(...args: unknown[]): unknown
};
} & WithTranslation;
type ExpressionPropertyState = {
jsonError: boolean
};
export default class ExpressionProperty extends React.Component<ExpressionPropertyProps, ExpressionPropertyState> {
class ExpressionPropertyInternal extends React.Component<ExpressionPropertyInternalProps, ExpressionPropertyState> {
static defaultProps = {
errors: {},
onFocus: () => {},
onBlur: () => {},
}
constructor (props:ExpressionPropertyProps) {
constructor(props: ExpressionPropertyInternalProps) {
super(props);
this.state = {
jsonError: false,
@@ -53,7 +54,7 @@ export default class ExpressionProperty extends React.Component<ExpressionProper
}
render() {
const {errors, fieldName, fieldType, value, canUndo} = this.props;
const {t, errors, fieldName, fieldType, value, canUndo} = this.props;
const {jsonError} = this.state;
const undoDisabled = canUndo ? !canUndo() : true;
@@ -65,7 +66,7 @@ export default class ExpressionProperty extends React.Component<ExpressionProper
onClick={this.props.onUndo}
disabled={undoDisabled}
className="maputnik-delete-stop"
title="Revert from expression"
title={t("Revert from expression")}
>
<MdUndo />
</InputButton>
@@ -74,7 +75,7 @@ export default class ExpressionProperty extends React.Component<ExpressionProper
key="delete_action"
onClick={this.props.onDelete}
className="maputnik-delete-stop"
title="Delete expression"
title={t("Delete expression")}
>
<MdDelete />
</InputButton>
@@ -112,7 +113,7 @@ export default class ExpressionProperty extends React.Component<ExpressionProper
// this feels like an incorrect type...? `foundErrors` is an array of objects, not a single object
error={foundErrors as any}
fieldSpec={this.props.fieldSpec}
label={labelFromFieldName(this.props.fieldName)}
label={t(labelFromFieldName(this.props.fieldName))}
action={deleteStopBtn}
wideMode={true}
>
@@ -137,3 +138,6 @@ export default class ExpressionProperty extends React.Component<ExpressionProper
</Block>
}
}
const ExpressionProperty = withTranslation()(ExpressionPropertyInternal);
export default ExpressionProperty;

Some files were not shown because too many files have changed in this diff Show More