38 Commits

Author SHA1 Message Date
searxng-bot
34266cd73b [l10n] update translations from Weblate
3f24736b5 - 2026-02-03 - AndersNordh <andersnordh@noreply.codeberg.org>
2026-02-06 07:28:39 +00:00
dependabot[bot]
f7a608703d [upd] web-client (simple): Bump the minor group (#5709)
Bumps the minor group in /client/simple with 3 updates: [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [sort-package-json](https://github.com/keithamus/sort-package-json).

Updates `@biomejs/biome` from 2.3.11 to 2.3.13
- [Release notes](https://github.com/biomejs/biome/releases)
- [Changelog](https://github.com/biomejs/biome/blob/main/packages/@biomejs/biome/CHANGELOG.md)
- [Commits](https://github.com/biomejs/biome/commits/@biomejs/biome@2.3.13/packages/@biomejs/biome)

Updates `@types/node` from 25.0.10 to 25.1.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `sort-package-json` from 3.6.0 to 3.6.1
- [Release notes](https://github.com/keithamus/sort-package-json/releases)
- [Commits](https://github.com/keithamus/sort-package-json/compare/v3.6.0...v3.6.1)

---
updated-dependencies:
- dependency-name: "@biomejs/biome"
  dependency-version: 2.3.13
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor
- dependency-name: "@types/node"
  dependency-version: 25.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: minor
- dependency-name: sort-package-json
  dependency-version: 3.6.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-03 11:44:34 +01:00
Ivan Gabaldon
92d37152c2 [upd] ci: static podman v5.7.1 (#5714) 2026-02-02 22:40:33 +01:00
dependabot[bot]
ad42b553bf [upd] web-client (simple): Bump vite in /client/simple (#5711)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.0-beta.9 to 8.0.0-beta.11.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.0-beta.11/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 8.0.0-beta.11
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 19:56:55 +01:00
dependabot[bot]
1c292dd9a4 [upd] github-actions: Bump docker/login-action from 3.6.0 to 3.7.0 (#5710)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](5e57cd1181...c94ce9fb46)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 3.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 19:41:00 +01:00
dependabot[bot]
2ad404a3bf [upd] github-actions: Bump github/codeql-action from 4.31.10 to 4.32.0 (#5707)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.31.10 to 4.32.0.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](cdefb33c0f...b20883b0cd)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.32.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 19:40:15 +01:00
dependabot[bot]
ca67782626 [upd] github-actions: Bump actions/cache from 5.0.2 to 5.0.3 (#5708)
Bumps [actions/cache](https://github.com/actions/cache) from 5.0.2 to 5.0.3.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](8b402f58fb...cdf6c1fa76)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: 5.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 19:39:55 +01:00
dependabot[bot]
0a4ea004cf [upd] pypi: Bump basedpyright from 1.37.1 to 1.37.2 in the minor group (#5712)
Bumps the minor group with 1 update: [basedpyright](https://github.com/detachhead/basedpyright).

Updates `basedpyright` from 1.37.1 to 1.37.2
- [Release notes](https://github.com/detachhead/basedpyright/releases)
- [Commits](https://github.com/detachhead/basedpyright/compare/v1.37.1...v1.37.2)
2026-01-30 08:41:35 +01:00
github-actions[bot]
15133c2f25 [data] update searx.data - update_firefox_version.py (#5699)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-01-29 10:29:28 +01:00
github-actions[bot]
a7f15f4289 [data] update searx.data - update_wikidata_units.py (#5700)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-01-29 10:28:54 +01:00
github-actions[bot]
ac4b1275a3 [data] update searx.data - update_currencies.py (#5702)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-01-29 10:28:22 +01:00
github-actions[bot]
bf2e7f8fc5 [data] update searx.data - update_engine_descriptions.py (#5703)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-01-29 10:27:07 +01:00
github-actions[bot]
cdbf41bb9b [data] update searx.data - update_ahmia_blacklist.py (#5701)
Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-01-29 10:24:33 +01:00
Austin-Olacsi
966988e360 [feat] engines: add artstation engine (#5689) 2026-01-27 17:18:46 +01:00
Ivan Gabaldon
a9877aba3e [fix] themes: module resolution (#5694)
Vite should not pregen static paths on build, but rather compute the relative path at runtime.

- https://vite.dev/config/shared-options#base

Closes: https://github.com/searxng/searxng/issues/5561
2026-01-27 11:32:23 +01:00
Hu Butui
da6ab39049 [fix] iqiyi: Add support for multiple videos per album
Add support for albums containing multiple videos in iqiyi engine. When
albumInfo contains a "videos" list, process each video individually to
create separate search results for each episode/video instead of a single
result for the entire album.

Also get video length from `duration` instead of `subscriptContent`.

Signed-off-by: Hu Butui <hot123tea123@gmail.com>
2026-01-26 19:46:05 +01:00
Austin-Olacsi
5271c3b9e1 [fix] pixiv: update pixiv proxy docs URL in settings.yml 2026-01-26 19:31:10 +01:00
Markus Heiser
eea1892863 [fix] presearch - AttributeError: 'NoneType' object has no attribute 'territory' (#5687)
For unknown locales, the return value of::

    locales.get_locale(params['searxng_locale'])

is None which cuase the following issue::

    ERROR   searx.engines.presearch       : exception : 'NoneType' object has no attribute 'territory'
    Traceback (most recent call last):
      File "search/processors/online.py", line 256, in search
        search_results = self._search_basic(query, params)
      File "search/processors/online.py", line 231, in _search_basic
        self.engine.request(query, params)
        ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
      File "engines/presearch.py", line 153, in request
        request_id, cookies = _get_request_id(query, params)
                              ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
      File "engines/presearch.py", line 140, in _get_request_id
        if l.territory:
           ^^^^^^^^^^^
    AttributeError: 'NoneType' object has no attribute 'territory'

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2026-01-24 07:25:49 +01:00
dependabot[bot]
c97d4d9b6c [upd] pypi: Bump selenium from 4.39.0 to 4.40.0 in the minor group (#5684)
Bumps the minor group with 1 update: [selenium](https://github.com/SeleniumHQ/Selenium).


Updates `selenium` from 4.39.0 to 4.40.0
- [Release notes](https://github.com/SeleniumHQ/Selenium/releases)
- [Commits](https://github.com/SeleniumHQ/Selenium/compare/selenium-4.39.0...selenium-4.40.0)

---
updated-dependencies:
- dependency-name: selenium
  dependency-version: 4.40.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-23 10:57:27 +01:00
dependabot[bot]
38de71b3e0 [upd] web-client (simple): Bump vite in /client/simple (#5683)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.0-beta.8 to 8.0.0-beta.9.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.0-beta.9/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 8.0.0-beta.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-23 10:45:21 +01:00
dependabot[bot]
a77d5d1258 [upd] web-client (simple): Bump @types/node (#5680)
Bumps the minor group in /client/simple with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node).


Updates `@types/node` from 25.0.9 to 25.0.10
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 25.0.10
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-23 10:15:24 +01:00
dependabot[bot]
68944b4484 [upd] github-actions: Bump peter-evans/create-pull-request (#5681)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 8.0.0 to 8.1.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](98357b18bf...c0f553fe54)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-version: 8.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-23 10:14:17 +01:00
dependabot[bot]
c60f59609e [upd] github-actions: Bump actions/setup-python from 6.1.0 to 6.2.0 (#5682)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](83679a892e...a309ff8b42)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-23 10:13:22 +01:00
dependabot[bot]
8473b030c5 [upd] github-actions: Bump actions/cache from 5.0.1 to 5.0.2 (#5685)
Bumps [actions/cache](https://github.com/actions/cache) from 5.0.1 to 5.0.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](9255dc7a25...8b402f58fb)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: 5.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-23 10:10:38 +01:00
dependabot[bot]
9dd3baf45c [upd] github-actions: Bump actions/checkout from 6.0.1 to 6.0.2 (#5679)
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](8e8c483db8...de0fac2e45)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-23 10:10:14 +01:00
Hu Butui
410996df9e [fix] iqiyi: update album_info key
subscriptionContent -> subscriptContent

Signed-off-by: Hu Butui <hot123tea123@gmail.com>
2026-01-20 13:39:29 +01:00
Bnyro
313fda426c [fix] annas archive: rotate between available backup domains
- closes https://github.com/searxng/searxng/issues/5633
2026-01-20 13:39:19 +01:00
mg95
277be51bc0 [fix] google: decode urls before passing them onto results (#5674)
Fixes #5673
2026-01-19 21:21:22 +01:00
dependabot[bot]
2d9f213ca8 Bump wlc from 1.17.1 to 1.17.2 in the pip group across 1 directory (#5672)
Bumps the pip group with 1 update in the / directory: [wlc](https://github.com/WeblateOrg/wlc).


Updates `wlc` from 1.17.1 to 1.17.2
- [Release notes](https://github.com/WeblateOrg/wlc/releases)
- [Changelog](https://github.com/WeblateOrg/wlc/blob/main/CHANGES.rst)
- [Commits](https://github.com/WeblateOrg/wlc/compare/1.17.1...1.17.2)

---
updated-dependencies:
- dependency-name: wlc
  dependency-version: 1.17.2
  dependency-type: direct:development
  dependency-group: pip
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-16 19:42:07 +01:00
dependabot[bot]
97814c62a8 [upd] web-client (simple): Bump vite from 8.0.0-beta.7 to 8.0.0-beta.8 in /client/simple (#5668)
* [upd] web-client (simple): Bump vite in /client/simple

Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 8.0.0-beta.7 to 8.0.0-beta.8.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.0-beta.8/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 8.0.0-beta.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* [upd] theme: rebuild static

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ivan Gabaldon <igabaldon@inetol.net>
2026-01-16 10:58:36 +01:00
dependabot[bot]
ee4943ebd7 [upd] web-client (simple): Bump @types/node (#5667)
Bumps the minor group in /client/simple with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node).


Updates `@types/node` from 25.0.3 to 25.0.9
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 25.0.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-16 10:22:50 +01:00
dependabot[bot]
086c1533a4 [upd] github-actions: Bump JamesIves/github-pages-deploy-action (#5666)
Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.7.6 to 4.8.0.
- [Release notes](https://github.com/jamesives/github-pages-deploy-action/releases)
- [Commits](9d877eea73...d92aa235d0)

---
updated-dependencies:
- dependency-name: JamesIves/github-pages-deploy-action
  dependency-version: 4.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-16 10:22:26 +01:00
dependabot[bot]
55c01c0757 [upd] github-actions: Bump github/codeql-action from 4.31.9 to 4.31.10 (#5665)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.31.9 to 4.31.10.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](5d4e8d1aca...cdefb33c0f)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.31.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-16 10:21:56 +01:00
dependabot[bot]
279e098168 [upd] github-actions: Bump actions/setup-node from 6.1.0 to 6.2.0 (#5664)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](395ad32622...6044e13b5d)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: 6.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-16 10:21:32 +01:00
Bnyro
c4f1b216d1 [feat] brave: show related query suggestions (#5614) 2026-01-16 08:39:56 +01:00
Bnyro
b93a68bb48 [feat] engines: add fynd engine (#5616)
The engine is quite fast (< 30ms) and provides very
decent search results for most short queries.

More information:
- <https://fynd.com>
- <https://seirdy.one/posts/2021/03/10/search-engines-with-own-indexes/>
2026-01-16 08:39:16 +01:00
dependabot[bot]
3f80eb80d0 [upd] pypi: Bump the minor group with 3 updates (#5670)
Bumps the minor group with 3 updates: [tomli](https://github.com/hukkin/tomli), [yamllint](https://github.com/adrienverge/yamllint) and [wlc](https://github.com/WeblateOrg/wlc).


Updates `tomli` from 2.3.0 to 2.4.0
- [Changelog](https://github.com/hukkin/tomli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hukkin/tomli/compare/2.3.0...2.4.0)

Updates `yamllint` from 1.37.1 to 1.38.0
- [Release notes](https://github.com/adrienverge/yamllint/releases)
- [Changelog](https://github.com/adrienverge/yamllint/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/adrienverge/yamllint/compare/v1.37.1...v1.38.0)

Updates `wlc` from 1.16.1 to 1.17.1
- [Release notes](https://github.com/WeblateOrg/wlc/releases)
- [Changelog](https://github.com/WeblateOrg/wlc/blob/main/CHANGES.rst)
- [Commits](https://github.com/WeblateOrg/wlc/compare/1.16.1...1.17.1)
2026-01-16 08:36:50 +01:00
github-actions[bot]
697f53ecde [l10n] update translations from Weblate (#5663)
9df66899a - 2026-01-12 - danilo-jlle <danilo-jlle@noreply.codeberg.org>
6152814e4 - 2026-01-10 - Maoyue_OUO <maoyue_ouo@noreply.codeberg.org>

Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2026-01-16 08:24:58 +01:00
47 changed files with 5897 additions and 4954 deletions

View File

@@ -24,17 +24,17 @@ jobs:
runs-on: ubuntu-24.04-arm
steps:
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "${{ env.PYTHON_VERSION }}"
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
- name: Setup cache Python
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-"

View File

@@ -56,13 +56,8 @@ jobs:
# yamllint disable rule:line-length
- name: Setup podman
env:
PODMAN_VERSION: "v5.6.2"
PODMAN_VERSION: "v5.7.1"
run: |
# dpkg man-db trigger is very slow on GHA runners
# https://github.com/actions/runner-images/issues/10977
# https://github.com/actions/runner/issues/4030
sudo rm -f /var/lib/man-db/auto-update
sudo apt-get purge -y podman runc crun conmon
curl -fsSLO "https://github.com/mgoltzsche/podman-static/releases/download/${{ env.PODMAN_VERSION }}/podman-linux-${{ matrix.march }}.tar.gz"
@@ -78,18 +73,18 @@ jobs:
# yamllint enable rule:line-length
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "${{ env.PYTHON_VERSION }}"
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
fetch-depth: "0"
- name: Setup cache Python
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-"
@@ -100,7 +95,7 @@ jobs:
run: echo "date=$(date +'%Y%m%d')" >>$GITHUB_OUTPUT
- name: Setup cache container
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "container-${{ matrix.arch }}-${{ steps.date.outputs.date }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: |
@@ -113,7 +108,7 @@ jobs:
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
- name: Login to GHCR
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
with:
registry: "ghcr.io"
username: "${{ github.repository_owner }}"
@@ -145,7 +140,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
@@ -154,7 +149,7 @@ jobs:
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
- name: Login to GHCR
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
with:
registry: "ghcr.io"
username: "${{ github.repository_owner }}"
@@ -179,19 +174,19 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
- name: Login to GHCR
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
with:
registry: "ghcr.io"
username: "${{ github.repository_owner }}"
password: "${{ secrets.GITHUB_TOKEN }}"
- name: Login to Docker Hub
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
with:
registry: "docker.io"
username: "${{ secrets.DOCKER_USER }}"

View File

@@ -41,17 +41,17 @@ jobs:
steps:
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "${{ env.PYTHON_VERSION }}"
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
- name: Setup cache Python
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-"
@@ -65,7 +65,7 @@ jobs:
- name: Create PR
id: cpr
uses: peter-evans/create-pull-request@98357b18bf14b5342f975ff684046ec3b2a07725 # v8.0.0
uses: peter-evans/create-pull-request@c0f553fe549906ede9cf27b5156039d195d2ece0 # v8.1.0
with:
author: "searxng-bot <searxng-bot@users.noreply.github.com>"
committer: "searxng-bot <searxng-bot@users.noreply.github.com>"

View File

@@ -32,18 +32,18 @@ jobs:
steps:
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "${{ env.PYTHON_VERSION }}"
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
fetch-depth: "0"
- name: Setup cache Python
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-"
@@ -57,7 +57,7 @@ jobs:
- if: github.ref_name == 'master'
name: Release
uses: JamesIves/github-pages-deploy-action@9d877eea73427180ae43cf98e8914934fe157a1a # v4.7.6
uses: JamesIves/github-pages-deploy-action@d92aa235d04922e8f08b40ce78cc5442fcfbfa2f # v4.8.0
with:
folder: "dist/docs"
branch: "gh-pages"

View File

@@ -35,17 +35,17 @@ jobs:
steps:
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "${{ matrix.python-version }}"
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
- name: Setup cache Python
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "python-${{ matrix.python-version }}-${{ runner.arch }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: "python-${{ matrix.python-version }}-${{ runner.arch }}-"
@@ -62,28 +62,28 @@ jobs:
runs-on: ubuntu-24.04-arm
steps:
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "${{ env.PYTHON_VERSION }}"
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
- name: Setup Node.js
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
with:
node-version-file: "./.nvmrc"
- name: Setup cache Node.js
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "nodejs-${{ runner.arch }}-${{ hashFiles('./.nvmrc', './package.json') }}"
path: "./client/simple/node_modules/"
- name: Setup cache Python
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-"

View File

@@ -35,18 +35,18 @@ jobs:
steps:
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "${{ env.PYTHON_VERSION }}"
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
token: "${{ secrets.WEBLATE_GITHUB_TOKEN }}"
fetch-depth: "0"
- name: Setup cache Python
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-"
@@ -82,18 +82,18 @@ jobs:
steps:
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "${{ env.PYTHON_VERSION }}"
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
token: "${{ secrets.WEBLATE_GITHUB_TOKEN }}"
fetch-depth: "0"
- name: Setup cache Python
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
key: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-${{ hashFiles('./requirements*.txt') }}"
restore-keys: "python-${{ env.PYTHON_VERSION }}-${{ runner.arch }}-"
@@ -117,7 +117,7 @@ jobs:
- name: Create PR
id: cpr
uses: peter-evans/create-pull-request@98357b18bf14b5342f975ff684046ec3b2a07725 # v8.0.0
uses: peter-evans/create-pull-request@c0f553fe549906ede9cf27b5156039d195d2ece0 # v8.1.0
with:
author: "searxng-bot <searxng-bot@users.noreply.github.com>"
committer: "searxng-bot <searxng-bot@users.noreply.github.com>"

View File

@@ -24,7 +24,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: "false"
@@ -41,6 +41,6 @@ jobs:
write-comment: "false"
- name: Upload SARIFs
uses: github/codeql-action/upload-sarif@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
uses: github/codeql-action/upload-sarif@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
with:
sarif_file: "./scout.sarif"

View File

@@ -1,5 +1,5 @@
{
"$schema": "https://biomejs.dev/schemas/2.3.11/schema.json",
"$schema": "https://biomejs.dev/schemas/2.3.13/schema.json",
"files": {
"ignoreUnknown": true,
"includes": ["**", "!node_modules"]
@@ -55,6 +55,7 @@
"noUselessCatchBinding": "warn",
"noUselessUndefined": "warn",
"useAwaitThenable": "off",
"useConsistentEnumValueType": "warn",
"useDestructuring": "warn",
"useExhaustiveSwitchCases": "warn",
"useExplicitType": "off",

View File

@@ -15,32 +15,32 @@
"swiped-events": "1.2.0"
},
"devDependencies": {
"@biomejs/biome": "2.3.11",
"@types/node": "^25.0.3",
"@biomejs/biome": "2.3.13",
"@types/node": "^25.1.0",
"browserslist": "^4.28.1",
"browserslist-to-esbuild": "^2.1.1",
"edge.js": "^6.4.0",
"less": "^4.5.1",
"mathjs": "^15.1.0",
"sharp": "~0.34.5",
"sort-package-json": "^3.6.0",
"sort-package-json": "^3.6.1",
"stylelint": "^16.26.0",
"stylelint-config-standard-less": "^4.0.1",
"stylelint-prettier": "^5.0.3",
"svgo": "^4.0.0",
"typescript": "~5.9.3",
"vite": "8.0.0-beta.7",
"vite": "8.0.0-beta.11",
"vite-bundle-analyzer": "^1.3.2"
}
},
"node_modules/@babel/code-frame": {
"version": "7.27.1",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz",
"integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==",
"version": "7.28.6",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.28.6.tgz",
"integrity": "sha512-JYgintcMjRiCvS8mMECzaEn+m3PfoQiyqukOMCCVQtoJGYJw8j/8LBJEiqkHLkfwCcs74E3pbAUFNg7d9VNJ+Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"@babel/helper-validator-identifier": "^7.27.1",
"@babel/helper-validator-identifier": "^7.28.5",
"js-tokens": "^4.0.0",
"picocolors": "^1.1.1"
},
@@ -59,9 +59,9 @@
}
},
"node_modules/@babel/runtime": {
"version": "7.28.4",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.4.tgz",
"integrity": "sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==",
"version": "7.28.6",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz",
"integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==",
"dev": true,
"license": "MIT",
"engines": {
@@ -69,9 +69,9 @@
}
},
"node_modules/@biomejs/biome": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.11.tgz",
"integrity": "sha512-/zt+6qazBWguPG6+eWmiELqO+9jRsMZ/DBU3lfuU2ngtIQYzymocHhKiZRyrbra4aCOoyTg/BmY+6WH5mv9xmQ==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.13.tgz",
"integrity": "sha512-Fw7UsV0UAtWIBIm0M7g5CRerpu1eKyKAXIazzxhbXYUyMkwNrkX/KLkGI7b+uVDQ5cLUMfOC9vR60q9IDYDstA==",
"dev": true,
"license": "MIT OR Apache-2.0",
"bin": {
@@ -85,20 +85,20 @@
"url": "https://opencollective.com/biome"
},
"optionalDependencies": {
"@biomejs/cli-darwin-arm64": "2.3.11",
"@biomejs/cli-darwin-x64": "2.3.11",
"@biomejs/cli-linux-arm64": "2.3.11",
"@biomejs/cli-linux-arm64-musl": "2.3.11",
"@biomejs/cli-linux-x64": "2.3.11",
"@biomejs/cli-linux-x64-musl": "2.3.11",
"@biomejs/cli-win32-arm64": "2.3.11",
"@biomejs/cli-win32-x64": "2.3.11"
"@biomejs/cli-darwin-arm64": "2.3.13",
"@biomejs/cli-darwin-x64": "2.3.13",
"@biomejs/cli-linux-arm64": "2.3.13",
"@biomejs/cli-linux-arm64-musl": "2.3.13",
"@biomejs/cli-linux-x64": "2.3.13",
"@biomejs/cli-linux-x64-musl": "2.3.13",
"@biomejs/cli-win32-arm64": "2.3.13",
"@biomejs/cli-win32-x64": "2.3.13"
}
},
"node_modules/@biomejs/cli-darwin-arm64": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.11.tgz",
"integrity": "sha512-/uXXkBcPKVQY7rc9Ys2CrlirBJYbpESEDme7RKiBD6MmqR2w3j0+ZZXRIL2xiaNPsIMMNhP1YnA+jRRxoOAFrA==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.13.tgz",
"integrity": "sha512-0OCwP0/BoKzyJHnFdaTk/i7hIP9JHH9oJJq6hrSCPmJPo8JWcJhprK4gQlhFzrwdTBAW4Bjt/RmCf3ZZe59gwQ==",
"cpu": [
"arm64"
],
@@ -113,9 +113,9 @@
}
},
"node_modules/@biomejs/cli-darwin-x64": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.11.tgz",
"integrity": "sha512-fh7nnvbweDPm2xEmFjfmq7zSUiox88plgdHF9OIW4i99WnXrAC3o2P3ag9judoUMv8FCSUnlwJCM1B64nO5Fbg==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.13.tgz",
"integrity": "sha512-AGr8OoemT/ejynbIu56qeil2+F2WLkIjn2d8jGK1JkchxnMUhYOfnqc9sVzcRxpG9Ycvw4weQ5sprRvtb7Yhcw==",
"cpu": [
"x64"
],
@@ -130,9 +130,9 @@
}
},
"node_modules/@biomejs/cli-linux-arm64": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.11.tgz",
"integrity": "sha512-l4xkGa9E7Uc0/05qU2lMYfN1H+fzzkHgaJoy98wO+b/7Gl78srbCRRgwYSW+BTLixTBrM6Ede5NSBwt7rd/i6g==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.13.tgz",
"integrity": "sha512-xvOiFkrDNu607MPMBUQ6huHmBG1PZLOrqhtK6pXJW3GjfVqJg0Z/qpTdhXfcqWdSZHcT+Nct2fOgewZvytESkw==",
"cpu": [
"arm64"
],
@@ -147,9 +147,9 @@
}
},
"node_modules/@biomejs/cli-linux-arm64-musl": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.11.tgz",
"integrity": "sha512-XPSQ+XIPZMLaZ6zveQdwNjbX+QdROEd1zPgMwD47zvHV+tCGB88VH+aynyGxAHdzL+Tm/+DtKST5SECs4iwCLg==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.13.tgz",
"integrity": "sha512-TUdDCSY+Eo/EHjhJz7P2GnWwfqet+lFxBZzGHldrvULr59AgahamLs/N85SC4+bdF86EhqDuuw9rYLvLFWWlXA==",
"cpu": [
"arm64"
],
@@ -164,9 +164,9 @@
}
},
"node_modules/@biomejs/cli-linux-x64": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.11.tgz",
"integrity": "sha512-/1s9V/H3cSe0r0Mv/Z8JryF5x9ywRxywomqZVLHAoa/uN0eY7F8gEngWKNS5vbbN/BsfpCG5yeBT5ENh50Frxg==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.13.tgz",
"integrity": "sha512-s+YsZlgiXNq8XkgHs6xdvKDFOj/bwTEevqEY6rC2I3cBHbxXYU1LOZstH3Ffw9hE5tE1sqT7U23C00MzkXztMw==",
"cpu": [
"x64"
],
@@ -181,9 +181,9 @@
}
},
"node_modules/@biomejs/cli-linux-x64-musl": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.11.tgz",
"integrity": "sha512-vU7a8wLs5C9yJ4CB8a44r12aXYb8yYgBn+WeyzbMjaCMklzCv1oXr8x+VEyWodgJt9bDmhiaW/I0RHbn7rsNmw==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.13.tgz",
"integrity": "sha512-0bdwFVSbbM//Sds6OjtnmQGp4eUjOTt6kHvR/1P0ieR9GcTUAlPNvPC3DiavTqq302W34Ae2T6u5VVNGuQtGlQ==",
"cpu": [
"x64"
],
@@ -198,9 +198,9 @@
}
},
"node_modules/@biomejs/cli-win32-arm64": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.11.tgz",
"integrity": "sha512-PZQ6ElCOnkYapSsysiTy0+fYX+agXPlWugh6+eQ6uPKI3vKAqNp6TnMhoM3oY2NltSB89hz59o8xIfOdyhi9Iw==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.13.tgz",
"integrity": "sha512-QweDxY89fq0VvrxME+wS/BXKmqMrOTZlN9SqQ79kQSIc3FrEwvW/PvUegQF6XIVaekncDykB5dzPqjbwSKs9DA==",
"cpu": [
"arm64"
],
@@ -215,9 +215,9 @@
}
},
"node_modules/@biomejs/cli-win32-x64": {
"version": "2.3.11",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.11.tgz",
"integrity": "sha512-43VrG813EW+b5+YbDbz31uUsheX+qFKCpXeY9kfdAx+ww3naKxeVkTD9zLIWxUPfJquANMHrmW3wbe/037G0Qg==",
"version": "2.3.13",
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.13.tgz",
"integrity": "sha512-trDw2ogdM2lyav9WFQsdsfdVy1dvZALymRpgmWsvSez0BJzBjulhOT/t+wyKeh3pZWvwP3VMs1SoOKwO3wecMQ==",
"cpu": [
"x64"
],
@@ -279,9 +279,9 @@
}
},
"node_modules/@csstools/css-syntax-patches-for-csstree": {
"version": "1.0.23",
"resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.23.tgz",
"integrity": "sha512-YEmgyklR6l/oKUltidNVYdjSmLSW88vMsKx0pmiS3r71s8ZZRpd8A0Yf0U+6p/RzElmMnPBv27hNWjDQMSZRtQ==",
"version": "1.0.25",
"resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.25.tgz",
"integrity": "sha512-g0Kw9W3vjx5BEBAF8c5Fm2NcB/Fs8jJXh85aXqwEXiL+tqtOut07TWgyaGzAAfTM+gKckrrncyeGEZPcaRgm2Q==",
"dev": true,
"funding": [
{
@@ -980,9 +980,9 @@
}
},
"node_modules/@oxc-project/runtime": {
"version": "0.107.0",
"resolved": "https://registry.npmjs.org/@oxc-project/runtime/-/runtime-0.107.0.tgz",
"integrity": "sha512-Pkuh11dhnrlJky91CSu1T2v6LX59LMJqNEE0P5tot40DYOeEb1mlrINVYWcUi/bY0JkozCSWukmDxiaqB6wHGg==",
"version": "0.111.0",
"resolved": "https://registry.npmjs.org/@oxc-project/runtime/-/runtime-0.111.0.tgz",
"integrity": "sha512-Hssa3lXfhczG0Qx0XB6NXLQTKrKeWSPDxcHqddCmBVnOQnlgE8Z+omcPHiewvvvZjSw8RgUPQCU5a+rx/vZ1YA==",
"dev": true,
"license": "MIT",
"engines": {
@@ -990,9 +990,9 @@
}
},
"node_modules/@oxc-project/types": {
"version": "0.107.0",
"resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.107.0.tgz",
"integrity": "sha512-QFDRbYfV2LVx8tyqtyiah3jQPUj1mK2+RYwxyFWyGoys6XJnwTdlzO6rdNNHOPorHAu5Uo34oWRKcvNpbJarmQ==",
"version": "0.111.0",
"resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.111.0.tgz",
"integrity": "sha512-bh54LJMafgRGl2cPQ/QM+tI5rWaShm/wK9KywEj/w36MhiPKXYM67H2y3q+9pr4YO7ufwg2AKdBAZkhHBD8ClA==",
"dev": true,
"license": "MIT",
"funding": {
@@ -1060,9 +1060,9 @@
"license": "MIT"
},
"node_modules/@poppinss/utils": {
"version": "7.0.0-next.5",
"resolved": "https://registry.npmjs.org/@poppinss/utils/-/utils-7.0.0-next.5.tgz",
"integrity": "sha512-ykv00LxAvcn9OmkoaAmTSoc6eksHpur6rZrx5fI/CkLNwknNWXO7nsqemhzxZYRdgskSU/2hnMCyZmzkvS653A==",
"version": "7.0.0-next.6",
"resolved": "https://registry.npmjs.org/@poppinss/utils/-/utils-7.0.0-next.6.tgz",
"integrity": "sha512-1OQDbCKmFROvWpmzvkQV/mCzBXSwhED8SJfJ0HiYKiLNEqYM8Kpa4EK0AfmXGQc+DdIj6eqib/vT8i5tJ2fatw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1074,9 +1074,9 @@
}
},
"node_modules/@rolldown/binding-android-arm64": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-beta.59.tgz",
"integrity": "sha512-6yLLgyswYwiCfls9+hoNFY9F8TQdwo15hpXDHzlAR0X/GojeKF+AuNcXjYNbOJ4zjl/5D6lliE8CbpB5t1OWIQ==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.2.tgz",
"integrity": "sha512-AGV80viZ4Hil4C16GFH+PSwq10jclV9oyRFhD+5HdowPOCJ+G+99N5AClQvMkUMIahTY8cX0SQpKEEWcCg6fSA==",
"cpu": [
"arm64"
],
@@ -1091,9 +1091,9 @@
}
},
"node_modules/@rolldown/binding-darwin-arm64": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-beta.59.tgz",
"integrity": "sha512-hqGXRc162qCCIOAcHN2Cw4eXiVTwYsMFLOhAy1IG2CxY+dwc/l4Ga+dLPkLor3Ikqy5WDn+7kxHbbh6EmshEpQ==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.2.tgz",
"integrity": "sha512-PYR+PQu1mMmQiiKHN2JiOctvH32Xc/Mf+Su2RSmWtC9BbIqlqsVWjbulnShk0imjRim0IsbkMMCN5vYQwiuqaA==",
"cpu": [
"arm64"
],
@@ -1108,9 +1108,9 @@
}
},
"node_modules/@rolldown/binding-darwin-x64": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-beta.59.tgz",
"integrity": "sha512-ezvvGuhteE15JmMhJW0wS7BaXmhwLy1YHeEwievYaPC1PgGD86wgBKfOpHr9tSKllAXbCe0BeeMvasscWLhKdA==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-rc.2.tgz",
"integrity": "sha512-X2G36Z6oh5ynoYpE2JAyG+uQ4kO/3N7XydM/I98FNk8VVgDKjajFF+v7TXJ2FMq6xa7Xm0UIUKHW2MRQroqoUA==",
"cpu": [
"x64"
],
@@ -1125,9 +1125,9 @@
}
},
"node_modules/@rolldown/binding-freebsd-x64": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-beta.59.tgz",
"integrity": "sha512-4fhKVJiEYVd5n6no/mrL3LZ9kByfCGwmONOrdtvx8DJGDQhehH/q3RfhG3V/4jGKhpXgbDjpIjkkFdybCTcgew==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-rc.2.tgz",
"integrity": "sha512-XpiFTsl9qjiDfrmJF6CE3dgj1nmSbxUIT+p2HIbXV6WOj/32btO8FKkWSsOphUwVinEt3R8HVkVrcLtFNruMMQ==",
"cpu": [
"x64"
],
@@ -1142,9 +1142,9 @@
}
},
"node_modules/@rolldown/binding-linux-arm-gnueabihf": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-beta.59.tgz",
"integrity": "sha512-T3Y52sW6JAhvIqArBw+wtjNU1Ieaz4g0NBxyjSJoW971nZJBZygNlSYx78G4cwkCmo1dYTciTPDOnQygLV23pA==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-rc.2.tgz",
"integrity": "sha512-zjYZ99e47Wlygs4hW+sQ+kshlO8ake9OoY2ecnJ9cwpDGiiIB9rQ3LgP3kt8j6IeVyMSksu//VEhc8Mrd1lRIw==",
"cpu": [
"arm"
],
@@ -1159,9 +1159,9 @@
}
},
"node_modules/@rolldown/binding-linux-arm64-gnu": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-beta.59.tgz",
"integrity": "sha512-NIW40jQDSQap2KDdmm9z3B/4OzWJ6trf8dwx3FD74kcQb3v34ThsBFTtzE5KjDuxnxgUlV+DkAu+XgSMKrgufw==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-rc.2.tgz",
"integrity": "sha512-Piso04EZ9IHV1aZSsLQVMOPTiCq4Ps2UPL3pchjNXHGJGFiB9U42s22LubPaEBFS+i6tCawS5EarIwex1zC4BA==",
"cpu": [
"arm64"
],
@@ -1176,9 +1176,9 @@
}
},
"node_modules/@rolldown/binding-linux-arm64-musl": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-beta.59.tgz",
"integrity": "sha512-CCKEk+H+8c0WGe/8n1E20n85Tq4Pv+HNAbjP1KfUXW+01aCWSMjU56ChNrM2tvHnXicfm7QRNoZyfY8cWh7jLQ==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-rc.2.tgz",
"integrity": "sha512-OwJCeMZlmjKsN9pfJfTmqYpe3JC+L6RO87+hu9ajRLr1Lh6cM2FRQ8e48DLRyRDww8Ti695XQvqEANEMmsuzLw==",
"cpu": [
"arm64"
],
@@ -1193,9 +1193,9 @@
}
},
"node_modules/@rolldown/binding-linux-x64-gnu": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-beta.59.tgz",
"integrity": "sha512-VlfwJ/HCskPmQi8R0JuAFndySKVFX7yPhE658o27cjSDWWbXVtGkSbwaxstii7Q+3Rz87ZXN+HLnb1kd4R9Img==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-rc.2.tgz",
"integrity": "sha512-uQqBmA8dTWbKvfqbeSsXNUssRGfdgQCc0hkGfhQN7Pf85wG2h0Fd/z2d+ykyT4YbcsjQdgEGxBNsg3v4ekOuEA==",
"cpu": [
"x64"
],
@@ -1210,9 +1210,9 @@
}
},
"node_modules/@rolldown/binding-linux-x64-musl": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-beta.59.tgz",
"integrity": "sha512-kuO92hTRyGy0Ts3Nsqll0rfO8eFsEJe9dGQGktkQnZ2hrJrDVN0y419dMgKy/gB2S2o7F2dpWhpfQOBehZPwVA==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-rc.2.tgz",
"integrity": "sha512-ItZabVsICCYWHbP+jcAgNzjPAYg5GIVQp/NpqT6iOgWctaMYtobClc5m0kNtxwqfNrLXoyt998xUey4AvcxnGQ==",
"cpu": [
"x64"
],
@@ -1227,9 +1227,9 @@
}
},
"node_modules/@rolldown/binding-openharmony-arm64": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-beta.59.tgz",
"integrity": "sha512-PXAebvNL4sYfCqi8LdY4qyFRacrRoiPZLo3NoUmiTxm7MPtYYR8CNtBGNokqDmMuZIQIecRaD/jbmFAIDz7DxQ==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-rc.2.tgz",
"integrity": "sha512-U4UYANwafcMXSUC0VqdrqTAgCo2v8T7SiuTYwVFXgia0KOl8jiv3okwCFqeZNuw/G6EWDiqhT8kK1DLgyLsxow==",
"cpu": [
"arm64"
],
@@ -1244,9 +1244,9 @@
}
},
"node_modules/@rolldown/binding-wasm32-wasi": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-beta.59.tgz",
"integrity": "sha512-yJoklQg7XIZq8nAg0bbkEXcDK6sfpjxQGxpg2Nd6ERNtvg+eOaEBRgPww0BVTrYFQzje1pB5qPwC2VnJHT3koQ==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-rc.2.tgz",
"integrity": "sha512-ZIWCjQsMon4tqRoao0Vzowjwx0cmFT3kublh2nNlgeasIJMWlIGHtr0d4fPypm57Rqx4o1h4L8SweoK2q6sMGA==",
"cpu": [
"wasm32"
],
@@ -1261,9 +1261,9 @@
}
},
"node_modules/@rolldown/binding-win32-arm64-msvc": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-beta.59.tgz",
"integrity": "sha512-ljZ4+McmCbIuZwEBaoGtiG8Rq2nJjaXEnLEIx+usWetXn1ECjXY0LAhkELxOV6ytv4ensEmoJJ8nXg47hRMjlw==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-rc.2.tgz",
"integrity": "sha512-NIo7vwRUPEzZ4MuZGr5YbDdjJ84xdiG+YYf8ZBfTgvIsk9wM0sZamJPEXvaLkzVIHpOw5uqEHXS85Gqqb7aaqQ==",
"cpu": [
"arm64"
],
@@ -1278,9 +1278,9 @@
}
},
"node_modules/@rolldown/binding-win32-x64-msvc": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-beta.59.tgz",
"integrity": "sha512-bMY4tTIwbdZljW+xe/ln1hvs0SRitahQSXfWtvgAtIzgSX9Ar7KqJzU7lRm33YTRFIHLULRi53yNjw9nJGd6uQ==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-rc.2.tgz",
"integrity": "sha512-bLKzyLFbvngeNPZocuLo3LILrKwCrkyMxmRXs6fZYDrvh7cyZRw9v56maDL9ipPas0OOmQK1kAKYwvTs30G21Q==",
"cpu": [
"x64"
],
@@ -1295,9 +1295,9 @@
}
},
"node_modules/@rolldown/pluginutils": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.59.tgz",
"integrity": "sha512-aoh6LAJRyhtazs98ydgpNOYstxUlsOV1KJXcpf/0c0vFcUA8uyd/hwKRhqE/AAPNqAho9RliGsvitCoOzREoVA==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.2.tgz",
"integrity": "sha512-izyXV/v+cHiRfozX62W9htOAvwMo4/bXKDrQ+vom1L1qRuexPock/7VZDAhnpHCLNejd3NJ6hiab+tO0D44Rgw==",
"dev": true,
"license": "MIT"
},
@@ -1440,9 +1440,9 @@
}
},
"node_modules/@types/node": {
"version": "25.0.3",
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.0.3.tgz",
"integrity": "sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA==",
"version": "25.1.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.1.0.tgz",
"integrity": "sha512-t7frlewr6+cbx+9Ohpl0NOTKXZNV9xHRmNOvql47BFJKcEG1CxtxlPEEe+gR9uhVWM4DwhnvTF110mIL4yP9RA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1563,9 +1563,9 @@
"license": "MIT"
},
"node_modules/baseline-browser-mapping": {
"version": "2.9.13",
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.13.tgz",
"integrity": "sha512-WhtvB2NG2wjr04+h77sg3klAIwrgOqnjS49GGudnUPGFFgg7G17y7Qecqp+2Dr5kUDxNRBca0SK7cG8JwzkWDQ==",
"version": "2.9.14",
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.14.tgz",
"integrity": "sha512-B0xUquLkiGLgHhpPBqvl7GWegWBUNuujQ6kXd/r1U38ElPT6Ok8KZ8e+FpUGEc2ZoRQUzq/aUnaKFc/svWUGSg==",
"dev": true,
"license": "Apache-2.0",
"bin": {
@@ -1670,9 +1670,9 @@
}
},
"node_modules/caniuse-lite": {
"version": "1.0.30001763",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001763.tgz",
"integrity": "sha512-mh/dGtq56uN98LlNX9qdbKnzINhX0QzhiWBFEkFfsFO4QyCvL8YegrJAazCwXIeqkIob8BlZPGM3xdnY+sgmvQ==",
"version": "1.0.30001764",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001764.tgz",
"integrity": "sha512-9JGuzl2M+vPL+pz70gtMF9sHdMFbY9FJaQBi186cHKH3pSzDvzoUJUPV6fqiKIMyXbud9ZLg4F3Yza1vJ1+93g==",
"dev": true,
"funding": [
{
@@ -2794,9 +2794,9 @@
}
},
"node_modules/lightningcss": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.2.tgz",
"integrity": "sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.31.1.tgz",
"integrity": "sha512-l51N2r93WmGUye3WuFoN5k10zyvrVs0qfKBhyC5ogUQ6Ew6JUSswh78mbSO+IU3nTWsyOArqPCcShdQSadghBQ==",
"dev": true,
"license": "MPL-2.0",
"dependencies": {
@@ -2810,23 +2810,23 @@
"url": "https://opencollective.com/parcel"
},
"optionalDependencies": {
"lightningcss-android-arm64": "1.30.2",
"lightningcss-darwin-arm64": "1.30.2",
"lightningcss-darwin-x64": "1.30.2",
"lightningcss-freebsd-x64": "1.30.2",
"lightningcss-linux-arm-gnueabihf": "1.30.2",
"lightningcss-linux-arm64-gnu": "1.30.2",
"lightningcss-linux-arm64-musl": "1.30.2",
"lightningcss-linux-x64-gnu": "1.30.2",
"lightningcss-linux-x64-musl": "1.30.2",
"lightningcss-win32-arm64-msvc": "1.30.2",
"lightningcss-win32-x64-msvc": "1.30.2"
"lightningcss-android-arm64": "1.31.1",
"lightningcss-darwin-arm64": "1.31.1",
"lightningcss-darwin-x64": "1.31.1",
"lightningcss-freebsd-x64": "1.31.1",
"lightningcss-linux-arm-gnueabihf": "1.31.1",
"lightningcss-linux-arm64-gnu": "1.31.1",
"lightningcss-linux-arm64-musl": "1.31.1",
"lightningcss-linux-x64-gnu": "1.31.1",
"lightningcss-linux-x64-musl": "1.31.1",
"lightningcss-win32-arm64-msvc": "1.31.1",
"lightningcss-win32-x64-msvc": "1.31.1"
}
},
"node_modules/lightningcss-android-arm64": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.30.2.tgz",
"integrity": "sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.31.1.tgz",
"integrity": "sha512-HXJF3x8w9nQ4jbXRiNppBCqeZPIAfUo8zE/kOEGbW5NZvGc/K7nMxbhIr+YlFlHW5mpbg/YFPdbnCh1wAXCKFg==",
"cpu": [
"arm64"
],
@@ -2845,9 +2845,9 @@
}
},
"node_modules/lightningcss-darwin-arm64": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.2.tgz",
"integrity": "sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.31.1.tgz",
"integrity": "sha512-02uTEqf3vIfNMq3h/z2cJfcOXnQ0GRwQrkmPafhueLb2h7mqEidiCzkE4gBMEH65abHRiQvhdcQ+aP0D0g67sg==",
"cpu": [
"arm64"
],
@@ -2866,9 +2866,9 @@
}
},
"node_modules/lightningcss-darwin-x64": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.2.tgz",
"integrity": "sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.31.1.tgz",
"integrity": "sha512-1ObhyoCY+tGxtsz1lSx5NXCj3nirk0Y0kB/g8B8DT+sSx4G9djitg9ejFnjb3gJNWo7qXH4DIy2SUHvpoFwfTA==",
"cpu": [
"x64"
],
@@ -2887,9 +2887,9 @@
}
},
"node_modules/lightningcss-freebsd-x64": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.2.tgz",
"integrity": "sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.31.1.tgz",
"integrity": "sha512-1RINmQKAItO6ISxYgPwszQE1BrsVU5aB45ho6O42mu96UiZBxEXsuQ7cJW4zs4CEodPUioj/QrXW1r9pLUM74A==",
"cpu": [
"x64"
],
@@ -2908,9 +2908,9 @@
}
},
"node_modules/lightningcss-linux-arm-gnueabihf": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.2.tgz",
"integrity": "sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.31.1.tgz",
"integrity": "sha512-OOCm2//MZJ87CdDK62rZIu+aw9gBv4azMJuA8/KB74wmfS3lnC4yoPHm0uXZ/dvNNHmnZnB8XLAZzObeG0nS1g==",
"cpu": [
"arm"
],
@@ -2929,9 +2929,9 @@
}
},
"node_modules/lightningcss-linux-arm64-gnu": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.2.tgz",
"integrity": "sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.31.1.tgz",
"integrity": "sha512-WKyLWztD71rTnou4xAD5kQT+982wvca7E6QoLpoawZ1gP9JM0GJj4Tp5jMUh9B3AitHbRZ2/H3W5xQmdEOUlLg==",
"cpu": [
"arm64"
],
@@ -2950,9 +2950,9 @@
}
},
"node_modules/lightningcss-linux-arm64-musl": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.2.tgz",
"integrity": "sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.31.1.tgz",
"integrity": "sha512-mVZ7Pg2zIbe3XlNbZJdjs86YViQFoJSpc41CbVmKBPiGmC4YrfeOyz65ms2qpAobVd7WQsbW4PdsSJEMymyIMg==",
"cpu": [
"arm64"
],
@@ -2971,9 +2971,9 @@
}
},
"node_modules/lightningcss-linux-x64-gnu": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.2.tgz",
"integrity": "sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.31.1.tgz",
"integrity": "sha512-xGlFWRMl+0KvUhgySdIaReQdB4FNudfUTARn7q0hh/V67PVGCs3ADFjw+6++kG1RNd0zdGRlEKa+T13/tQjPMA==",
"cpu": [
"x64"
],
@@ -2992,9 +2992,9 @@
}
},
"node_modules/lightningcss-linux-x64-musl": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.2.tgz",
"integrity": "sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.31.1.tgz",
"integrity": "sha512-eowF8PrKHw9LpoZii5tdZwnBcYDxRw2rRCyvAXLi34iyeYfqCQNA9rmUM0ce62NlPhCvof1+9ivRaTY6pSKDaA==",
"cpu": [
"x64"
],
@@ -3013,9 +3013,9 @@
}
},
"node_modules/lightningcss-win32-arm64-msvc": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.2.tgz",
"integrity": "sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.31.1.tgz",
"integrity": "sha512-aJReEbSEQzx1uBlQizAOBSjcmr9dCdL3XuC/6HLXAxmtErsj2ICo5yYggg1qOODQMtnjNQv2UHb9NpOuFtYe4w==",
"cpu": [
"arm64"
],
@@ -3034,9 +3034,9 @@
}
},
"node_modules/lightningcss-win32-x64-msvc": {
"version": "1.30.2",
"resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.2.tgz",
"integrity": "sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==",
"version": "1.31.1",
"resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.31.1.tgz",
"integrity": "sha512-I9aiFrbd7oYHwlnQDqr1Roz+fTz61oDDJX7n9tYF9FJymH1cIN1DtKw3iYt6b8WZgEjoNwVSncwF4wx/ZedMhw==",
"cpu": [
"x64"
],
@@ -3488,9 +3488,9 @@
"license": "MIT"
},
"node_modules/prettier": {
"version": "3.7.4",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.7.4.tgz",
"integrity": "sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==",
"version": "3.8.0",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.8.0.tgz",
"integrity": "sha512-yEPsovQfpxYfgWNhCfECjG5AQaO+K3dp6XERmOepyPDVqcJm+bjyCVO3pmU+nAPe0N5dDvekfGezt/EIiRe1TA==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -3644,14 +3644,14 @@
}
},
"node_modules/rolldown": {
"version": "1.0.0-beta.59",
"resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-beta.59.tgz",
"integrity": "sha512-Slm000Gd8/AO9z4Kxl4r8mp/iakrbAuJ1L+7ddpkNxgQ+Vf37WPvY63l3oeyZcfuPD1DRrUYBsRPIXSOhvOsmw==",
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.2.tgz",
"integrity": "sha512-1g/8Us9J8sgJGn3hZfBecX1z4U3y5KO7V/aV2U1M/9UUzLNqHA8RfFQ/NPT7HLxOIldyIgrcjaYTRvA81KhJIg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@oxc-project/types": "=0.107.0",
"@rolldown/pluginutils": "1.0.0-beta.59"
"@oxc-project/types": "=0.111.0",
"@rolldown/pluginutils": "1.0.0-rc.2"
},
"bin": {
"rolldown": "bin/cli.mjs"
@@ -3660,19 +3660,19 @@
"node": "^20.19.0 || >=22.12.0"
},
"optionalDependencies": {
"@rolldown/binding-android-arm64": "1.0.0-beta.59",
"@rolldown/binding-darwin-arm64": "1.0.0-beta.59",
"@rolldown/binding-darwin-x64": "1.0.0-beta.59",
"@rolldown/binding-freebsd-x64": "1.0.0-beta.59",
"@rolldown/binding-linux-arm-gnueabihf": "1.0.0-beta.59",
"@rolldown/binding-linux-arm64-gnu": "1.0.0-beta.59",
"@rolldown/binding-linux-arm64-musl": "1.0.0-beta.59",
"@rolldown/binding-linux-x64-gnu": "1.0.0-beta.59",
"@rolldown/binding-linux-x64-musl": "1.0.0-beta.59",
"@rolldown/binding-openharmony-arm64": "1.0.0-beta.59",
"@rolldown/binding-wasm32-wasi": "1.0.0-beta.59",
"@rolldown/binding-win32-arm64-msvc": "1.0.0-beta.59",
"@rolldown/binding-win32-x64-msvc": "1.0.0-beta.59"
"@rolldown/binding-android-arm64": "1.0.0-rc.2",
"@rolldown/binding-darwin-arm64": "1.0.0-rc.2",
"@rolldown/binding-darwin-x64": "1.0.0-rc.2",
"@rolldown/binding-freebsd-x64": "1.0.0-rc.2",
"@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.2",
"@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.2",
"@rolldown/binding-linux-arm64-musl": "1.0.0-rc.2",
"@rolldown/binding-linux-x64-gnu": "1.0.0-rc.2",
"@rolldown/binding-linux-x64-musl": "1.0.0-rc.2",
"@rolldown/binding-openharmony-arm64": "1.0.0-rc.2",
"@rolldown/binding-wasm32-wasi": "1.0.0-rc.2",
"@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.2",
"@rolldown/binding-win32-x64-msvc": "1.0.0-rc.2"
}
},
"node_modules/run-parallel": {
@@ -3845,16 +3845,16 @@
}
},
"node_modules/sort-object-keys": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-2.0.1.tgz",
"integrity": "sha512-R89fO+z3x7hiKPXX5P0qim+ge6Y60AjtlW+QQpRozrrNcR1lw9Pkpm5MLB56HoNvdcLHL4wbpq16OcvGpEDJIg==",
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-2.1.0.tgz",
"integrity": "sha512-SOiEnthkJKPv2L6ec6HMwhUcN0/lppkeYuN1x63PbyPRrgSPIuBJCiYxYyvWRTtjMlOi14vQUCGUJqS6PLVm8g==",
"dev": true,
"license": "MIT"
},
"node_modules/sort-package-json": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-3.6.0.tgz",
"integrity": "sha512-fyJsPLhWvY7u2KsKPZn1PixbXp+1m7V8NWqU8CvgFRbMEX41Ffw1kD8n0CfJiGoaSfoAvbrqRRl/DcHO8omQOQ==",
"version": "3.6.1",
"resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-3.6.1.tgz",
"integrity": "sha512-Chgejw1+10p2D0U2tB7au1lHtz6TkFnxmvZktyBCRyV0GgmF6nl1IxXxAsPtJVsUyg/fo+BfCMAVVFUVRkAHrQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4367,18 +4367,18 @@
"license": "MIT"
},
"node_modules/vite": {
"version": "8.0.0-beta.7",
"resolved": "https://registry.npmjs.org/vite/-/vite-8.0.0-beta.7.tgz",
"integrity": "sha512-Q0xCPeahlSj0XMSPARLmycykV2Q7/KjSAkX0DE+EjNVeYgVuzUC2irMk0bNL5Y5zsmAbw1f00VyvsPsPQDCtEA==",
"version": "8.0.0-beta.11",
"resolved": "https://registry.npmjs.org/vite/-/vite-8.0.0-beta.11.tgz",
"integrity": "sha512-WkVbiYlZ5V4fuS2vjrqIC6+T1dzLHAp+horFVt0zm/Rb1KDMandGkTQJlk7Oo3ozeMQdOpE35j45s3NwxUccYQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@oxc-project/runtime": "0.107.0",
"@oxc-project/runtime": "0.111.0",
"fdir": "^6.5.0",
"lightningcss": "^1.30.2",
"lightningcss": "^1.31.1",
"picomatch": "^4.0.3",
"postcss": "^8.5.6",
"rolldown": "1.0.0-beta.59",
"rolldown": "1.0.0-rc.2",
"tinyglobby": "^0.2.15"
},
"bin": {
@@ -4395,7 +4395,7 @@
},
"peerDependencies": {
"@types/node": "^20.19.0 || >=22.12.0",
"esbuild": "^0.25.0",
"esbuild": "^0.27.0",
"jiti": ">=1.21.0",
"less": "^4.0.0",
"sass": "^1.70.0",

View File

@@ -29,21 +29,21 @@
"swiped-events": "1.2.0"
},
"devDependencies": {
"@biomejs/biome": "2.3.11",
"@types/node": "^25.0.3",
"@biomejs/biome": "2.3.13",
"@types/node": "^25.1.0",
"browserslist": "^4.28.1",
"browserslist-to-esbuild": "^2.1.1",
"edge.js": "^6.4.0",
"less": "^4.5.1",
"mathjs": "^15.1.0",
"sharp": "~0.34.5",
"sort-package-json": "^3.6.0",
"sort-package-json": "^3.6.1",
"stylelint": "^16.26.0",
"stylelint-config-standard-less": "^4.0.1",
"stylelint-prettier": "^5.0.3",
"svgo": "^4.0.0",
"typescript": "~5.9.3",
"vite": "8.0.0-beta.7",
"vite": "8.0.0-beta.11",
"vite-bundle-analyzer": "^1.3.2"
}
}

View File

@@ -34,7 +34,7 @@ const svg2svg_favicon_opts: Config = {
};
export default {
base: "/static/themes/simple/",
base: "./",
publicDir: "static/",
build: {

View File

@@ -4,7 +4,7 @@ cov-core==1.15.0
black==25.9.0
pylint==4.0.4
splinter==0.21.0
selenium==4.39.0
selenium==4.40.0
Pallets-Sphinx-Themes==2.3.0
Sphinx==8.2.3 ; python_version >= '3.11'
Sphinx==8.1.3 ; python_version < '3.11'
@@ -18,11 +18,11 @@ sphinx-notfound-page==1.1.0
myst-parser==4.0.1
linuxdoc==20240924
aiounittest==1.5.0
yamllint==1.37.1
wlc==1.16.1
yamllint==1.38.0
wlc==1.17.2
coloredlogs==15.0.1
docutils>=0.21.2
parameterized==0.9.0
granian[reload]==2.6.1
basedpyright==1.37.1
basedpyright==1.37.2
types-lxml==2026.1.1

View File

@@ -13,7 +13,7 @@ sniffio==1.3.1
valkey==6.1.1
markdown-it-py==3.0.0
fasttext-predict==0.9.2.4
tomli==2.3.0; python_version < '3.11'
tomli==2.4.0; python_version < '3.11'
msgspec==0.20.0
typer-slim==0.21.1
isodate==0.7.2

File diff suppressed because it is too large Load Diff

View File

@@ -31,7 +31,7 @@
"nl": "Tsjechische kroon",
"oc": "corona chèca",
"pa": "ਚੈੱਕ ਕੋਰੂਨਾ",
"pl": "Korona czeska",
"pl": "korona czeska",
"pt": "coroa checa",
"ro": "Coroană cehă",
"ru": "чешская крона",
@@ -76,7 +76,7 @@
"nl": "VAE-Dirham",
"oc": "Diram emirati",
"pa": "ਸੰਯੁਕਤ ਅਰਬ ਇਮਰਾਤੀ ਦਿਰਹਾਮ",
"pl": "Dirham",
"pl": "dirham",
"pt": "Dirham dos Emirados Árabes Unidos",
"ro": "Dirham EAU",
"ru": "дирхам ОАЭ",
@@ -374,14 +374,14 @@
"oc": "Dolar australian",
"pa": "ਆਸਟ੍ਰੇਲੀਆਈ ਡਾਲਰ",
"pap": "dollar australiano",
"pl": "Dolar australijski",
"pl": "dolar australijski",
"pt": "Dólar australiano",
"ro": "dolar australian",
"ru": "австралийский доллар",
"sk": "Austrálsky dolár",
"sl": "avstralski dolar",
"sr": "аустралијски долар",
"sv": "Australisk dollar",
"sv": "australisk dollar",
"ta": "அவுத்திரேலிய வெள்ளி",
"th": "ดอลลาร์ออสเตรเลีย",
"tr": "Avustralya doları",
@@ -463,7 +463,7 @@
"pap": "Manat Azerbaijano",
"pl": "Manat azerski",
"pt": "Manat azeri",
"ro": "Manat azer",
"ro": "manat azer",
"ru": "азербайджанский манат",
"sk": "Azerbajdžanský manat",
"sl": "azerbajdžanski manat",
@@ -579,7 +579,7 @@
"nl": "Bengalese taka",
"oc": "Taka",
"pa": "ਬੰਗਲਾਦੇਸ਼ੀ ਟਕਾ",
"pl": "Taka",
"pl": "taka",
"pt": "taka",
"ru": "бангладешская така",
"sk": "Bangladéšská taka",
@@ -591,51 +591,6 @@
"uk": "Бангладеська така",
"vi": "Taka"
},
"BGN": {
"ar": "ليف بلغاري",
"bg": "български лев",
"ca": "lev",
"cs": "bulharský lev",
"da": "Lev",
"de": "Lew",
"en": "Bulgarian lev",
"eo": "bulgara levo",
"es": "lev búlgaro",
"et": "Leev",
"eu": "Bulgariar lev",
"fi": "Bulgarian leva",
"fr": "lev bulgare",
"ga": "lev na Bulgáire",
"gl": "Lev búlgaro",
"he": "לב",
"hr": "Bugarski lev",
"hu": "bolgár leva",
"ia": "lev bulgare",
"id": "Lev Bulgaria",
"it": "lev bulgaro",
"ja": "レフ",
"ko": "불가리아 레프",
"lt": "Bulgarijos levas",
"lv": "Bulgārijas leva",
"ml": "ബൾഗേറിയൻ ലെവ്",
"ms": "Lev Bulgaria",
"nl": "Bulgaarse lev",
"oc": "Lev",
"pa": "ਬੁਲਗਾਰੀਆਈ ਲੇਵ",
"pl": "Lew",
"pt": "lev búlgaro",
"ro": "Leva",
"ru": "болгарский лев",
"sk": "Bulharský lev",
"sl": "bolgarski lev",
"sr": "бугарски лев",
"sv": "Lev",
"ta": "பல்கேரிய லெவ்",
"tr": "Lev",
"tt": "Балгария левы",
"uk": "болгарський лев",
"vi": "Lev Bulgaria"
},
"BHD": {
"ar": "دينار بحريني",
"bg": "Бахрейнски динар",
@@ -685,6 +640,7 @@
"fi": "Burundin frangi",
"fr": "Franc burundais",
"ga": "franc na Burúine",
"gl": "franco burundiano",
"he": "פרנק בורונדי",
"hr": "Burundski franak",
"hu": "burundi frank",
@@ -722,6 +678,7 @@
"fi": "Bermudan dollari",
"fr": "dollar bermudien",
"ga": "dollar Bheirmiúda",
"gl": "dólar bermudano",
"he": "דולר ברמודה ",
"hr": "Bermudski dolar",
"hu": "bermudai dollár",
@@ -814,7 +771,7 @@
"pa": "ਬੋਲੀਵੀਆਨੋ",
"pl": "boliviano",
"pt": "Boliviano",
"ro": "Boliviano",
"ro": "boliviano",
"ru": "боливиано",
"sk": "Bolivijský boliviano",
"sr": "боливијски боливијано",
@@ -858,7 +815,7 @@
"nl": "Braziliaanse real",
"oc": "Real",
"pa": "ਬ੍ਰਾਜ਼ੀਲੀ ਰਿਆਲ",
"pl": "Real brazylijski",
"pl": "real brazylijski",
"pt": "real brasileiro",
"ro": "Real",
"ru": "бразильский реал",
@@ -944,7 +901,7 @@
"nl": "Bhutaanse ngultrum",
"oc": "Ngultrum",
"pa": "ਭੂਟਾਨੀ ਙੁਲਤਰਮ",
"pl": "Ngultrum",
"pl": "ngultrum",
"pt": "ngultrum",
"ro": "ngultrum",
"ru": "нгултрум",
@@ -1115,7 +1072,7 @@
"oc": "dolar canadenc",
"pa": "ਕੈਨੇਡੀਆਈ ਡਾਲਰ",
"pap": "dollar kanadiense",
"pl": "Dolar kanadyjski",
"pl": "dolar kanadyjski",
"pt": "dólar canadense",
"ro": "dolar canadian",
"ru": "канадский доллар",
@@ -1283,40 +1240,40 @@
"es": "yuan offshore"
},
"CNY": {
"af": "Renminbi",
"af": "renminbi",
"ar": "رنمينبي",
"bg": "китайски юан",
"bn": "রেন্মিন্বি",
"bo": "མི་དམངས་ཤོག་དངུལ",
"ca": "renminbi",
"cs": "čínský jüan",
"cy": "Renminbi",
"da": "Renminbi",
"cy": "renminbi",
"da": "renminbi",
"de": "Renminbi",
"dv": "ރެންމިބީ",
"en": "CNY",
"eo": "Renminbio",
"en": "renminbi",
"eo": "renminbio",
"es": "yuan chino",
"et": "Renminbi",
"eu": "Renminbi",
"fi": "Renminbi",
"fi": "renminbi",
"fr": "renminbi",
"ga": "renminbi",
"gl": "Renminbi",
"gl": "renminbi",
"he": "רנמינבי",
"hr": "Renminbi",
"hu": "kínai jüan",
"id": "Renminbi",
"it": "renminbi cinese",
"it": "renminbi",
"ja": "人民幣",
"ko": "런민비",
"lt": "juanis",
"lv": "Juaņs",
"lv": "juaņs",
"ms": "Renminbi",
"nl": "renminbi",
"oc": "Renminbi",
"pa": "ਰਨਮਿਨਬੀ",
"pl": "Renminbi",
"pl": "renminbi",
"pt": "yuan",
"ro": "Yuan renminbi",
"ru": "китайский юань",
@@ -1362,7 +1319,7 @@
"pap": "Peso colombiano",
"pl": "Peso kolumbijskie",
"pt": "peso colombiano",
"ro": "Peso columbian",
"ro": "peso columbian",
"ru": "колумбийское песо",
"sk": "Kolumbijské peso",
"sl": "kolumbijski peso",
@@ -1523,7 +1480,7 @@
"nl": "Tsjechische kroon",
"oc": "corona chèca",
"pa": "ਚੈੱਕ ਕੋਰੂਨਾ",
"pl": "Korona czeska",
"pl": "korona czeska",
"pt": "coroa checa",
"ro": "Coroană cehă",
"ru": "чешская крона",
@@ -1835,7 +1792,7 @@
"hu": "euró",
"ia": "Euro",
"id": "Euro",
"it": "Euro",
"it": "euro",
"ja": "ユーロ",
"ko": "유로",
"lt": "Euras",
@@ -2014,7 +1971,7 @@
"pa": "ਜਾਰਜੀਆਈ ਲਾਰੀ",
"pl": "Lari",
"pt": "lari",
"ro": "Lari",
"ro": "lari",
"ru": "грузинский лари",
"sk": "Gruzínske lari",
"sl": "gruzijski lari",
@@ -2406,7 +2363,7 @@
"pa": "ਹੰਗਰੀਆਈ ਫ਼ੋਰਿੰਟ",
"pl": "forint",
"pt": "florim húngaro",
"ro": "Forint",
"ro": "forint",
"ru": "венгерский форинт",
"sk": "Maďarský forint",
"sl": "madžarski forint",
@@ -3008,6 +2965,7 @@
"eo": "sud-korea vono",
"es": "won surcoreano",
"et": "Lõuna-Korea vonn",
"eu": "Won hegokorear",
"fi": "Etelä-Korean won",
"fr": "won sud-coréen",
"ga": "won na Cóiré Theas",
@@ -3025,7 +2983,7 @@
"nl": "Zuid-Koreaanse won",
"oc": "Won sud-corean",
"pa": "ਦੱਖਣੀ ਕੋਰੀਆਈ ਵੌਨ",
"pl": "Won południowokoreański",
"pl": "won południowokoreański",
"pt": "Won sul-coreano",
"ro": "Won sud-coreean",
"ru": "южнокорейская вона",
@@ -3093,6 +3051,7 @@
"fi": "Caymansaarten dollari",
"fr": "Dollar des îles Caïmans",
"ga": "dollar Oileáin Cayman",
"gl": "dólar das Illas Caimán",
"he": "דולר קיימני",
"hr": "Kajmanski dolar",
"hu": "kajmán-szigeteki dollár",
@@ -3971,6 +3930,7 @@
"af": "Nigeriese naira",
"ar": "نيرة نيجيرية",
"bg": "Нигерийска найра",
"bn": "নাইরা",
"ca": "naira",
"cs": "nigerijská naira",
"cy": "naira",
@@ -4073,7 +4033,7 @@
"nl": "Noorse kroon",
"oc": "corona norvegiana",
"pa": "ਨਾਰਵੇਈ ਕਰੋਨਾ",
"pl": "Korona norweska",
"pl": "korona norweska",
"pt": "coroa norueguesa",
"ro": "Coroană norvegiană",
"ru": "норвежская крона",
@@ -4114,6 +4074,7 @@
"ja": "ネパール・ルピー",
"ko": "네팔 루피",
"lt": "Nepalo rupija",
"lv": "Nepālas rūpija",
"ml": "നേപ്പാളി രൂപ",
"nl": "Nepalese roepie",
"oc": "Ropia nepalesa",
@@ -4162,7 +4123,7 @@
"ms": "Dolar New Zealand",
"nl": "Nieuw-Zeelandse dollar",
"oc": "Dolar neozelandés",
"pl": "Dolar nowozelandzki",
"pl": "dolar nowozelandzki",
"pt": "dólar neozelandês",
"ro": "Dolar neozeelandez",
"ru": "новозеландский доллар",
@@ -4392,6 +4353,7 @@
"ja": "パキスタン・ルピー",
"ko": "파키스탄 루피",
"lt": "Pakistano rupija",
"lv": "Pakistānas rūpija",
"ml": "പാക്കിസ്ഥാനി രൂപ",
"ms": "Rupee Pakistan",
"nl": "Pakistaanse roepie",
@@ -4443,7 +4405,7 @@
"pa": "ਪੋਲੈਂਡੀ ਜ਼ਵੋਤੀ",
"pl": "złoty",
"pt": "złoty",
"ro": "zlot polonez",
"ro": "złoty",
"ru": "польский злотый",
"sk": "Poľský zlotý",
"sl": "poljski zlot",
@@ -4489,7 +4451,7 @@
"pa": "ਪੋਲੈਂਡੀ ਜ਼ਵੋਤੀ",
"pl": "złoty",
"pt": "złoty",
"ro": "zlot polonez",
"ro": "złoty",
"ru": "польский злотый",
"sk": "Poľský zlotý",
"sl": "poljski zlot",
@@ -4927,7 +4889,7 @@
"nl": "Zweedse kroon",
"oc": "Corona",
"pa": "ਸਵੀਡਨੀ ਕਰੋਨਾ",
"pl": "Korona szwedzka",
"pl": "korona szwedzka",
"pt": "coroa sueca",
"ro": "Coroană suedeză",
"ru": "шведская крона",
@@ -4975,6 +4937,7 @@
"pa": "ਸਿੰਘਾਪੁਰੀ ਡਾਲਰ",
"pl": "Dolar singapurski",
"pt": "dólar de Singapura",
"ro": "Dolar singaporez",
"ru": "сингапурский доллар",
"si": "සිංගප්පූරු ඩොලරය",
"sk": "Singapurský dolár",
@@ -5225,7 +5188,7 @@
"ms": "Paun Syria",
"nl": "Syrisch pond",
"pa": "ਸੀਰੀਆਈ ਪਾਊਂਡ",
"pl": "Funt syryjski",
"pl": "funt syryjski",
"pt": "libra síria",
"ru": "сирийский фунт",
"sk": "sýrska libra",
@@ -5386,7 +5349,7 @@
"pa": "ਤੁਰਕਮੇਨਿਸਤਾਨੀ ਮਨਦ",
"pl": "Manat turkmeński",
"pt": "Manate do Turcomenistão",
"ro": "Manat turkmen",
"ro": "manat turkmen",
"ru": "туркменский манат",
"sk": "Turkménsky manat",
"sr": "туркменистански манат",
@@ -5583,7 +5546,7 @@
"nl": "Taiwanese dollar",
"oc": "nòu dolar taiwanés",
"pa": "ਨਵਾਂ ਤਾਇਵਾਨੀ ਡਾਲਰ",
"pl": "Dolar tajwański",
"pl": "dolar tajwański",
"pt": "novo dólar taiwanês",
"ru": "новый тайваньский доллар",
"sk": "tchajvanský dolár",
@@ -5688,6 +5651,7 @@
"fi": "Ugandan šillinki",
"fr": "shilling ougandais",
"ga": "scilling Uganda",
"gl": "xilin ugandés",
"he": "שילינג אוגנדי",
"hr": "Ugandski šiling",
"hu": "ugandai shilling",
@@ -6406,7 +6370,7 @@
"ca": "or de Zimbàbue",
"cs": "zimbabwský zlatý",
"de": "Simbabwe-Gold",
"en": "Zimbabwe Gold",
"en": "Zimbabwe ZiG",
"eo": "Zimbabva Oro",
"es": "Oro de Zimbabue",
"fi": "Zimbabwen kulta",
@@ -7006,10 +6970,6 @@
"bermudský dolar": "BMD",
"bermudský dolár": "BMD",
"běloruský rubl": "BYN",
"bgj": "BGN",
"bgk": "BGN",
"bgl": "BGN",
"bgn": "BGN",
"bhat": "THB",
"bhd": "BHD",
"bhoetanese ngultrum": "BTN",
@@ -7047,8 +7007,6 @@
"bob": "BOB",
"bocvana pulao": "BWP",
"bocvanska pula": "BWP",
"bolgarski lev": "BGN",
"bolgár leva": "BGN",
"bolivar": "VES",
"bolivar digital": "VED",
"bolivar numérique": "VED",
@@ -7059,6 +7017,7 @@
"bolivianas": "BOB",
"bolivianischer boliviano": "BOB",
"boliviano": "BOB",
"boliviano bolivian": "BOB",
"boliviano bolivien": "BOB",
"boliviano con mantenimiento de valor respecto al dolar estadounidense": "BOV",
"boliviano con mantenimiento de valor respecto al dólar estadounidense": "BOV",
@@ -7149,25 +7108,7 @@
"bsd": "BSD",
"btn": "BTN",
"buck": "USD",
"bugarski lev": "BGN",
"buk": "MMK",
"bulgaarse lev": "BGN",
"bulgar levası": "BGN",
"bulgar levi": "BGN",
"bulgara levo": "BGN",
"bulgaria levo": "BGN",
"bulgarian lev": "BGN",
"bulgarian leva": "BGN",
"bulgariar lev": "BGN",
"bulgarijos levas": "BGN",
"bulgarischer lew": "BGN",
"bulgarisk lev": "BGN",
"bulgariska lev": "BGN",
"bulgariska leva": "BGN",
"bulgarsk lev": "BGN",
"bulgarske leva": "BGN",
"bulgārijas leva": "BGN",
"bulharský lev": "BGN",
"burmanski kjat": "MMK",
"burmese kyat": "MMK",
"burmesisk kyat": "MMK",
@@ -7305,7 +7246,6 @@
"clp$": "CLP",
"clps": "CLP",
"cnh": "CNH",
"cny": "CNY",
"co $": "COP",
"co$": "COP",
"code reserved for testing": "XTS",
@@ -8026,6 +7966,7 @@
"dolar nowozelandzki": "NZD",
"dolar salomonense": "SBD",
"dolar selandia baru": "NZD",
"dolar singaporez": "SGD",
"dolar singapura": "SGD",
"dolar singapurski": "SGD",
"dolar singapurtar": "SGD",
@@ -8320,6 +8261,7 @@
"dólar beliceño": "BZD",
"dólar belizenho": "BZD",
"dólar belizense": "BZD",
"dólar bermudano": "BMD",
"dólar bermudeno": "BMD",
"dólar bermudense": "BMD",
"dólar bermudeño": "BMD",
@@ -8338,12 +8280,14 @@
"dólar da nova zelândia": "NZD",
"dólar das baamas": "BSD",
"dólar das bahamas": "BSD",
"dólar das bermudas": "BMD",
"dólar das caraíbas": "XCD",
"dólar das caraíbas orientais": "XCD",
"dólar das fiji": "FJD",
"dólar das ilhas caimã": "KYD",
"dólar das ilhas cayman": "KYD",
"dólar das ilhas salomão": "SBD",
"dólar das illas caimán": "KYD",
"dólar das illas salomón": "SBD",
"dólar de américa": "USD",
"dólar de australia": "AUD",
@@ -8726,6 +8670,7 @@
"forinto húngaro": "HUF",
"forints": "HUF",
"forintti": "HUF",
"forinți": "HUF",
"fòrint": "HUF",
"franak cfp": "XPF",
"franc": [
@@ -9835,7 +9780,6 @@
"EGP"
],
"lebanese pound": "LBP",
"leev": "BGN",
"lei": [
"RON",
"MDL"
@@ -9923,20 +9867,6 @@
"leu rumuński": "RON",
"leul moldovenesc": "MDL",
"leul românesc": "RON",
"lev": "BGN",
"lev bulgar": "BGN",
"lev bulgare": "BGN",
"lev bulgaria": "BGN",
"lev bulgaro": "BGN",
"lev búlgaro": "BGN",
"lev da bulgária": "BGN",
"lev na bulgáire": "BGN",
"leva": "BGN",
"leva bulgară": "BGN",
"leva búlgara": "BGN",
"levă bulgară": "BGN",
"levo": "BGN",
"lew": "BGN",
"lib$": "LRD",
"libana liro": "LBP",
"libana pundo": "LBP",
@@ -10322,7 +10252,6 @@
"mauritanijos ugija": "MRU",
"mauritanijska ouguja": "MRU",
"mauritanijska uguija": "MRU",
"mauritanska ouguja": "MRU",
"mauritániai ouguiya": "MRU",
"mauritánska ukíjá": "MRU",
"mauritánská ukíjá": "MRU",
@@ -10536,6 +10465,7 @@
"nepáli rúpia": "NPR",
"nepálska rupia": "NPR",
"nepálská rupie": "NPR",
"nepālas rūpija": "NPR",
"netherlands antillean guilder": "ANG",
"neue türkische lira": "TRY",
"neuer sol": "PEN",
@@ -10652,7 +10582,6 @@
"nouveau sol": "PEN",
"nouvelle livre turque": "TRY",
"nov zelanda dolaro": "NZD",
"nova bulgara levo": "BGN",
"nova israela siklo": "ILS",
"nova israela ŝekelo": "ILS",
"nova libra turca": "TRY",
@@ -10836,6 +10765,7 @@
"pakistanská rupia": "PKR",
"pakistanske rupee": "PKR",
"pakistanske rupier": "PKR",
"pakistānas rūpija": "PKR",
"pakisztáni rúpia": "PKR",
"paladij kot investicija": "XPD",
"palladium": "XPD",
@@ -11279,6 +11209,7 @@
"réal": "BRL",
"réal brésilien": "BRL",
"réaux brésiliens": "BRL",
"rf": "RWF",
"rf.": "MVR",
"rial": [
"YER",
@@ -11394,7 +11325,6 @@
"riyal yemenita": "YER",
"riyal yéménite": "YER",
"rm": "MYR",
"rmb": "CNY",
"rmb¥": "CNY",
"roemeense leu": "RON",
"roepia": "IDR",
@@ -11642,7 +11572,6 @@
"rūpija": "IDR",
"rwanda frank": "RWF",
"rwandan franc": "RWF",
"rwandan frank": "RWF",
"rwandese frank": "RWF",
"rwandisk franc": "RWF",
"rwandiske franc": "RWF",
@@ -12029,8 +11958,6 @@
"sterliņu mārciņa": "GBP",
"stērliņu mārciņa": "GBP",
"stn": "STN",
"stotinka": "BGN",
"stotinki": "BGN",
"stredoafrický frank": "XAF",
"středoafrický frank": "XAF",
"sucre": "XSU",
@@ -12708,6 +12635,7 @@
"won de la república de corea": "KRW",
"won de la república democràtica popular de corea": "KPW",
"won hàn quốc": "KRW",
"won hegokorear": "KRW",
"won korea selatan": "KRW",
"won korea utara": "KPW",
"won na cóiré theas": "KRW",
@@ -12749,6 +12677,7 @@
"xelim tanzaniano": "TZS",
"xelim ugandês": "UGX",
"xilin kenyano": "KES",
"xilin ugandés": "UGX",
"xíling d'uganda": "UGX",
"xíling de kenya": "KES",
"xíling de somàlia": "SOS",
@@ -12837,7 +12766,9 @@
"zimbabwaanse zig": "ZWG",
"zimbabwe gold": "ZWG",
"zimbabwe goud": "ZWG",
"zimbabwe zig": "ZWG",
"zimbabwean dollar": "ZWL",
"zimbabwean gold": "ZWG",
"zimbabwean zig": "ZWG",
"zimbabwen kulta": "ZWG",
"zimbabwiansky zlatý": "ZWG",
@@ -12876,6 +12807,10 @@
"PLZ",
"PLN"
],
"zlotul polonez": [
"PLZ",
"PLN"
],
"zloty": [
"PLZ",
"PLN"
@@ -13100,7 +13035,6 @@
"багамский доллар": "BSD",
"багамський долар": "BSD",
"балбоа": "PAB",
"балгария левы": "BGN",
"бальбао": "PAB",
"бальбоа": "PAB",
"бангладеська така": "BDT",
@@ -13136,8 +13070,6 @@
"бермудський долар": "BMD",
"бирманский кьят": "MMK",
"бирмут дуллыры": "BMD",
"болгарский лев": "BGN",
"болгарський лев": "BGN",
"боливар": "VES",
"боливар соберано": "VES",
"боливиано": "BOB",
@@ -13174,7 +13106,6 @@
"брунейський долар": "BND",
"брунејски долар": "BND",
"брәзил риялы": "BRL",
"бугарски лев": "BGN",
"бурунди франкы": "BIF",
"бурундийски франк": "BIF",
"бурундийский франк": "BIF",
@@ -13183,8 +13114,6 @@
"бурыч алуларның махсус хокукы": "XDR",
"бутански нгултрум": "BTN",
"бутанский нгултрум": "BTN",
"български лев": "BGN",
"българския лев": "BGN",
"быр": "ETB",
"білоруський рубель": "BYN",
"білоруський рубль": "BYN",
@@ -13210,7 +13139,6 @@
"валюта белиза": "BZD",
"валюта бенина": "XOF",
"валюта бермуд": "BMD",
"валюта болгарии": "BGN",
"валюта боливии": "BOB",
"валюта боснии и герцеговины": "BAM",
"валюта ботсвани": "BWP",
@@ -13409,7 +13337,6 @@
"гватемальський кецаль": "GTQ",
"гвајана долар": "GYD",
"гвајански долар": "GYD",
"гвиански долар": "GYD",
"гвинейски франк": "GNF",
"гвинейский франк": "GNF",
"гвинея франкы": "GNF",
@@ -13750,9 +13677,6 @@
"лаоський кіп": "LAK",
"лари": "GEL",
"ларі": "GEL",
"лв.": "BGN",
"лев": "BGN",
"лев болгарский": "BGN",
"лей": [
"RON",
"MDL"
@@ -14556,8 +14480,6 @@
"לארי גאורגי": "GEL",
"לארי גרוזי": "GEL",
"לארי גרוזיני": "GEL",
"לב": "BGN",
"לב בולגרי": "BGN",
"לוטי": "LSL",
"לוטי לסוטו": "LSL",
"ליאו מולדובני": "MDL",
@@ -15049,8 +14971,6 @@
"ليرة لبنانية": "LBP",
"ليره سوريه": "SYP",
"ليره لبنانيه": "LBP",
"ليف بلغاري": "BGN",
"ليف بلغارية": "BGN",
"ليك ألباني": "ALL",
"ليلانغيني": "SZL",
"ليلانغيني سوازيلندي": "SZL",
@@ -15113,6 +15033,7 @@
"তুর্কি লিরা": "TRY",
"থাই বাত": "THB",
"দক্ষিণ কোরীয় উয়ন": "KRW",
"নাইরা": "NGN",
"নিউজিল্যান্ড ডলার": "NZD",
"নেপালি রুপি": "NPR",
"পাউন্ড স্টার্লিং": "GBP",
@@ -15122,6 +15043,7 @@
"ব্রিটিশ পাউন্ড": "GBP",
"ব্রুনাই ডলার": "BND",
"ভারতীয় টাকা": "INR",
"ভারতীয় রুপি": "INR",
"ভারতীয় রূপি": "INR",
"ভুটানি ঙুলট্রুম": "BTN",
"মার্কিন ডলার": "USD",
@@ -15218,7 +15140,6 @@
"ਬਹਿਰੀਨੀ ਦਿਨਾਰ": "BHD",
"ਬਾਰਬਾਡੋਸੀ ਡਾਲਰ": "BBD",
"ਬੁਰੂੰਡੀ ਫ਼੍ਰੈਂਕ": "BIF",
"ਬੁਲਗਾਰੀਆਈ ਲੇਵ": "BGN",
"ਬੇਲੀਜ਼ੀ ਡਾਲਰ": "BZD",
"ਬੈਲਾਰੂਸੀ ਰੂਬਲ": "BYN",
"ਬੋਲੀਵੀਆਈ ਬੋਲੀਵੀਆਨੋ": "BOB",
@@ -15347,8 +15268,6 @@
"துருக்கிய லிரா": "TRY",
"நார்வே குரோனா": "NOK",
"நேபாள ரூபாய்": "NPR",
"பல்காரிய லெவ்": "BGN",
"பல்கேரிய லெவ்": "BGN",
"பவுண்ட் ஸ்டேர்லிங்": "GBP",
"பவுண்ட் ஸ்ரேர்லிங்": "GBP",
"பஹ்மானிய டாலர்": "BSD",
@@ -15443,7 +15362,6 @@
"ബ്രൂണെയ് ഡോളർ": "BND",
"ബ്രൂണൈ ഡോളർ": "BND",
"ബർമ്മീസ് ക്യാറ്റ്": "MMK",
"ബൾഗേറിയൻ ലെവ്": "BGN",
"മൊറോക്കൻ ദിർഹം": "MAD",
"യുണൈറ്റഡ് അറബ് എമിരേറ്റ്സ് ദിർഹം": "AED",
"യുണൈറ്റഡ് സ്റ്റേറ്റ്സ് ഡോളർ": "USD",
@@ -15609,7 +15527,6 @@
"레바논 파운드": "LBP",
"레소토 로티": "LSL",
"레크": "ALL",
"레프": "BGN",
"렉": "ALL",
"렌민비": "CNY",
"렌민비 위안": "CNY",
@@ -15670,7 +15587,6 @@
"부탄 뉘땀": "BTN",
"부탄눌트럼": "BTN",
"북마케도니아 데나르": "MKD",
"불가리아 레프": "BGN",
"브라질 레알": "BRL",
"브라질 헤알": "BRL",
"브루나이 달러": "BND",
@@ -15927,6 +15843,7 @@
"₾": "GEL",
"⃀": "KGS",
"⃁": "SAR",
"⃂": "MVR",
"〒": "KZT",
"アイスランドクローナ": "ISK",
"アイスランド・クローナ": "ISK",
@@ -16139,7 +16056,6 @@
"ハンガリー・フォリント": "HUF",
"ブリティッシュ・ポンド": "GBP",
"ブル": "ETB",
"ブルガリア・レフ": "BGN",
"ブルネイドル": "BND",
"ブルネイ・ドル": "BND",
"ブルンジ・フラン": "BIF",
@@ -16213,7 +16129,6 @@
"レク": "ALL",
"レソト・ロチ": "LSL",
"レバノン・ポンド": "LBP",
"レフ": "BGN",
"レンピラ": "HNL",
"ロシアの通貨": "RUB",
"ロシアルーブル": "RUB",
@@ -16225,10 +16140,7 @@
"中部アフリカcfaフラン": "XAF",
"人民元": "CNY",
"人民幣": "CNY",
"元": [
"HKD",
"CNY"
],
"元": "HKD",
"兌換マルク": "BAM",
"円": "JPY",
"加ドル": "CAD",

File diff suppressed because one or more lines are too long

View File

@@ -5,7 +5,7 @@
],
"ua": "Mozilla/5.0 ({os}; rv:{version}) Gecko/20100101 Firefox/{version}",
"versions": [
"146.0",
"145.0"
"147.0",
"146.0"
]
}

View File

@@ -1434,11 +1434,6 @@
"symbol": "kg/(m s)",
"to_si_factor": 1.0
},
"Q106653484": {
"si_name": "Q106653452",
"symbol": "kg/(m min)",
"to_si_factor": 0.0166667
},
"Q106680668": {
"si_name": "Q106680668",
"symbol": "s⁻²",
@@ -2145,17 +2140,17 @@
"to_si_factor": 0.5424919
},
"Q107410794": {
"si_name": "Q106653452",
"si_name": "Q21016931",
"symbol": "kg/(m d)",
"to_si_factor": 1.15741e-05
"to_si_factor": 1.1574074074074073e-05
},
"Q107410795": {
"si_name": "Q106653452",
"si_name": "Q21016931",
"symbol": "kg/(m h)",
"to_si_factor": 0.000277778
"to_si_factor": 0.0002777777777777778
},
"Q107410801": {
"si_name": "Q106653452",
"si_name": "Q21016931",
"symbol": "g/(cm s)",
"to_si_factor": 0.1
},
@@ -3469,11 +3464,6 @@
"symbol": "μC",
"to_si_factor": 1e-06
},
"Q162525": {
"si_name": null,
"symbol": "°E",
"to_si_factor": null
},
"Q1628990": {
"si_name": "Q12831618",
"symbol": "hph",
@@ -3721,7 +3711,7 @@
},
"Q191118": {
"si_name": "Q11570",
"symbol": "t",
"symbol": "MT",
"to_si_factor": 1000.0
},
"Q1913097": {
@@ -4544,11 +4534,6 @@
"symbol": "mm²/s",
"to_si_factor": 1e-06
},
"Q26162557": {
"si_name": "Q21016931",
"symbol": "cP",
"to_si_factor": 0.001
},
"Q26162587": {
"si_name": "Q21016931",
"symbol": "μPa s",
@@ -5219,11 +5204,6 @@
"symbol": "Kib",
"to_si_factor": null
},
"Q3833309": {
"si_name": null,
"symbol": "£",
"to_si_factor": null
},
"Q3858002": {
"si_name": "Q25406",
"symbol": "mA⋅h",

View File

@@ -34,6 +34,9 @@ Implementations
===============
"""
import random
import typing as t
from urllib.parse import urlencode
@@ -66,7 +69,9 @@ categories = ["files", "books"]
paging: bool = True
# search-url
base_url: str = "https://annas-archive.org"
base_url: list[str] | str = []
"""List of Anna's archive domains or a single domain (as string)."""
aa_content: str = ""
"""Anan's search form field **Content** / possible values::
@@ -98,6 +103,9 @@ def setup(engine_settings: dict[str, t.Any]) -> bool: # pylint: disable=unused-
"""Check of engine's settings."""
traits = EngineTraits(**ENGINE_TRAITS["annas archive"])
if not base_url:
raise ValueError("missing required config `base_url`")
if aa_content and aa_content not in traits.custom["content"]:
raise ValueError(f"invalid setting content: {aa_content}")
@@ -110,6 +118,13 @@ def setup(engine_settings: dict[str, t.Any]) -> bool: # pylint: disable=unused-
return True
def get_base_url_choice() -> str:
if isinstance(base_url, list):
return random.choice(base_url)
return base_url
def request(query: str, params: "OnlineParams") -> None:
lang = traits.get_language(params["searxng_locale"], traits.all_locale)
args = {
@@ -122,7 +137,9 @@ def request(query: str, params: "OnlineParams") -> None:
}
# filter out None and empty values
filtered_args = dict((k, v) for k, v in args.items() if v)
params["url"] = f"{base_url}/search?{urlencode(filtered_args)}"
params["base_url"] = get_base_url_choice()
params["url"] = f"{params['base_url']}/search?{urlencode(filtered_args)}"
def response(resp: "SXNG_Response") -> EngineResults:
@@ -136,16 +153,16 @@ def response(resp: "SXNG_Response") -> EngineResults:
for item in eval_xpath_list(dom, "//main//div[contains(@class, 'js-aarecord-list-outer')]/div"):
try:
kwargs: dict[str, t.Any] = _get_result(item)
kwargs: dict[str, t.Any] = _get_result(item, resp.search_params["base_url"])
except SearxEngineXPathException:
continue
res.add(res.types.Paper(**kwargs))
return res
def _get_result(item: ElementBase) -> dict[str, t.Any]:
def _get_result(item: ElementBase, base_url_choice) -> dict[str, t.Any]:
return {
"url": base_url + eval_xpath_getindex(item, "./a/@href", 0),
"url": base_url_choice + eval_xpath_getindex(item, "./a/@href", 0),
"title": extract_text(eval_xpath(item, "./div//a[starts-with(@href, '/md5')]")),
"authors": [extract_text(eval_xpath_getindex(item, ".//a[starts-with(@href, '/search')]", 0))],
"publisher": extract_text(
@@ -169,7 +186,7 @@ def fetch_traits(engine_traits: EngineTraits):
engine_traits.custom["ext"] = []
engine_traits.custom["sort"] = []
resp = get(base_url + "/search")
resp = get(get_base_url_choice() + "/search")
if not resp.ok:
raise RuntimeError("Response from Anna's search page is not OK.")
dom = html.fromstring(resp.text)

105
searx/engines/artstation.py Normal file
View File

@@ -0,0 +1,105 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""Artstation (images)"""
import re
import typing as t
from json import dumps
from searx.result_types import EngineResults
from searx.network import post
from searx.enginelib import EngineCache
# Engine metadata
about = {
"website": 'https://www.artstation.com/',
"wikidata_id": 'Q65551500',
"official_api_documentation": None,
"use_official_api": False,
"require_api_key": False,
"results": 'JSON',
}
# Engine configuration
paging = True
categories = ['images']
results_per_page = 20
# Search URL
base_url = "https://www.artstation.com/api/v2/search/projects.json"
# Cache keys & expiration
CSRF_PUBLICKEY_CACHE = "public_csrf_token"
CSRF_PRIVATEKEY_CACHE = "private_csrf_token"
KEY_EXPIRATION_SECONDS = 3600
CACHE: EngineCache
def setup(engine_settings: dict[str, t.Any]) -> bool:
global CACHE # pylint: disable=global-statement
CACHE = EngineCache(engine_settings["name"])
return True
def fetch_csrf_tokens():
public_token: str | None = CACHE.get(CSRF_PUBLICKEY_CACHE)
private_token: str | None = CACHE.get(CSRF_PRIVATEKEY_CACHE)
if public_token and private_token:
return public_token, private_token
resp = post("https://www.artstation.com/api/v2/csrf_protection/token.json")
public_token = resp.json()["public_csrf_token"]
private_token = resp.cookies["PRIVATE-CSRF-TOKEN"]
CACHE.set(key=CSRF_PUBLICKEY_CACHE, value=public_token, expire=KEY_EXPIRATION_SECONDS)
CACHE.set(key=CSRF_PRIVATEKEY_CACHE, value=private_token, expire=KEY_EXPIRATION_SECONDS)
return public_token, private_token
def request(query, params):
public_token, private_token = fetch_csrf_tokens()
form_data = {
"query": query,
"page": params["pageno"],
"per_page": results_per_page,
"sorting": "relevance",
"pro_first": 1,
}
params["url"] = base_url
params["method"] = 'POST'
params['headers']['content-type'] = "application/json"
params['headers']['PUBLIC-CSRF-TOKEN'] = public_token
params["cookies"] = {"PRIVATE-CSRF-TOKEN": private_token}
params['data'] = dumps(form_data)
return params
def response(resp) -> EngineResults:
results = EngineResults()
search_res = resp.json()
for item in search_res["data"]:
thumb = item["smaller_square_cover_url"]
fullsize_image = re.sub(r'/\d{6,}/', '/', thumb).replace("smaller_square", "large")
results.add(
results.types.LegacyResult(
{
"template": 'images.html',
"title": item["title"],
"url": item["url"],
"author": f"{item['user']['username']} ({item['user']['full_name']})",
"img_src": fullsize_image,
"thumbnail_src": thumb,
}
)
)
return results

View File

@@ -338,6 +338,9 @@ def _parse_search(resp: SXNG_Response) -> EngineResults:
item["iframe_src"] = iframe_src
item["template"] = "videos.html"
for suggestion in eval_xpath_list(dom, "//a[contains(@class, 'related-query')]"):
res.append(res.types.LegacyResult({'suggestion': extract_text(suggestion)}))
return res

View File

@@ -17,7 +17,7 @@ import re
import random
import string
import time
from urllib.parse import urlencode
from urllib.parse import urlencode, unquote
from lxml import html
import babel
import babel.core
@@ -373,7 +373,7 @@ def response(resp: "SXNG_Response"):
if raw_url is None:
logger.debug('ignoring item from the result_xpath list: missing url of title "%s"', title)
continue
url = raw_url[7:].split('&sa=U')[0] # remove the google redirector
url = unquote(raw_url[7:].split('&sa=U')[0]) # remove the google redirector
content_nodes = eval_xpath(result, './/div[contains(@data-sncf, "1")]')
for item in content_nodes:

View File

@@ -1,11 +1,12 @@
# SPDX-License-Identifier: AGPL-3.0-or-later
"""iQiyi: A search engine for retrieving videos from iQiyi."""
import typing
from urllib.parse import urlencode
from datetime import datetime
from datetime import datetime, timedelta
from searx.exceptions import SearxEngineAPIException
from searx.utils import parse_duration_string
about = {
"website": "https://www.iqiyi.com/",
@@ -35,6 +36,28 @@ def request(query, params):
return params
def _result(video: dict[str, typing.Any], album_info: dict[str, typing.Any]):
length = timedelta(milliseconds=video.get("duration", 0))
published_date = None
release_time = album_info.get("releaseTime", {}).get("value")
if release_time:
try:
published_date = datetime.strptime(release_time, "%Y-%m-%d")
except (ValueError, TypeError):
pass
return {
'url': video.get("pageUrl", "").replace("http://", "https://"),
'title': video.get("title", ""),
'content': album_info.get("brief", {}).get("value", ""),
'template': 'videos.html',
'length': length,
'publishedDate': published_date,
'thumbnail': album_info.get("img", ""),
}
def response(resp):
try:
data = resp.json()
@@ -47,26 +70,11 @@ def response(resp):
for entry in data["data"]["templates"]:
album_info = entry.get("albumInfo", {})
published_date = None
release_time = album_info.get("releaseTime", {}).get("value")
if release_time:
try:
published_date = datetime.strptime(release_time, "%Y-%m-%d")
except (ValueError, TypeError):
pass
length = parse_duration_string(album_info.get("subscriptionContent"))
results.append(
{
'url': album_info.get("pageUrl", "").replace("http://", "https://"),
'title': album_info.get("title", ""),
'content': album_info.get("brief", {}).get("value", ""),
'template': 'videos.html',
'length': length,
'publishedDate': published_date,
'thumbnail': album_info.get("img", ""),
}
)
if "videos" in album_info:
for video in album_info["videos"]:
results.append(_result(video, album_info))
else:
# album only contains a single video
results.append(_result(album_info, album_info))
return results

View File

@@ -137,7 +137,7 @@ def _get_request_id(query, params):
# performs an IP-based geolocation of the user, we don't want that in
# SearXNG ;-)
if l.territory:
if l and l.territory:
headers['Accept-Language'] = f"{l.language}-{l.territory},{l.language};" "q=0.9,*;" "q=0.5"
resp = get(url, headers=headers, timeout=5)

View File

@@ -403,6 +403,9 @@ engines:
- name: annas archive
engine: annas_archive
base_url:
- https://annas-archive.li
- https://annas-archive.pm
disabled: true
shortcut: aa
timeout: 5
@@ -472,6 +475,12 @@ engines:
shortcut: arc
timeout: 4.0
- name: artstation
engine: artstation
shortcut: as
categories: images
disabled: true
- name: arxiv
engine: arxiv
shortcut: arx
@@ -942,6 +951,26 @@ engines:
shortcut: frk
disabled: true
- name: fynd
engine: xpath
search_url: https://fynd.bot/?search={query}&offset={pageno}
results_xpath: //div[contains(@class, "result-item")]
url_xpath: .//a/@href
title_xpath: .//div[contains(@class, "title-line")]
content_xpath: .//div[contains(@class, "description")]
thumbnail_xpath: .//img[contains(@class, "preview-img")]/@src
paging: true
first_page_num: 0
page_size: 10
categories: general
disabled: true
shortcut: fynd
about:
website: https://fynd.bot
use_official_api: false
require_api_key: false
results: HTML
- name: fyyd
engine: fyyd
shortcut: fy
@@ -1640,7 +1669,7 @@ engines:
- https://pximg.example.org
# A proxy is required to load the images. Hosting an image proxy server
# for Pixiv:
# --> https://pixivfe.pages.dev/hosting-image-proxy-server/
# --> https://pixivfe-docs.pages.dev/hosting/image-proxy-server/
# Proxies from public instances. Ask the public instances owners if they
# agree to receive traffic from SearXNG!
# --> https://codeberg.org/VnPower/PixivFE#instances

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -37,7 +37,7 @@
]
},
"src/js/main/keyboard.ts": {
"file": "chunk/DtYCnLFs.min.js",
"file": "chunk/Cyk8UkF6.min.js",
"name": "keyboard",
"src": "src/js/main/keyboard.ts",
"isDynamicEntry": true,
@@ -77,7 +77,7 @@
]
},
"src/js/plugin/Calculator.ts": {
"file": "chunk/BmuYt_wm.min.js",
"file": "chunk/DO33-10z.min.js",
"name": "calculator",
"src": "src/js/plugin/Calculator.ts",
"isDynamicEntry": true,
@@ -98,7 +98,7 @@
]
},
"src/js/plugin/MapView.ts": {
"file": "chunk/336M4CYc.min.js",
"file": "chunk/Dtr6y4WS.min.js",
"name": "mapview",
"src": "src/js/plugin/MapView.ts",
"isDynamicEntry": true,

View File

@@ -1,3 +1,3 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["chunk/DBO1tjH7.min.js","chunk/13gvpunf.min.js","chunk/gZqIRpW1.min.js","chunk/BmuYt_wm.min.js","chunk/DtYCnLFs.min.js","chunk/Q2W2fJLA.min.js","chunk/KPZlR0ib.min.js","chunk/Dzkb_VTO.min.js","chunk/u0MAGmsp.min.js"])))=>i.map(i=>d[i]);
var e=class{id;constructor(e){this.id=e,this.invoke()}async invoke(){try{console.debug(`[PLUGIN] ${this.id}: Running...`);let e=await this.run();if(!e)return;console.debug(`[PLUGIN] ${this.id}: Running post-exec...`),await this.post(e)}catch(e){console.error(`[PLUGIN] ${this.id}:`,e)}finally{console.debug(`[PLUGIN] ${this.id}: Done.`)}}};const t={index:`index`,results:`results`,preferences:`preferences`,unknown:`unknown`},n={closeDetail:void 0,scrollPageToSelected:void 0,selectImage:void 0,selectNext:void 0,selectPrevious:void 0};var r=()=>{let e=document.querySelector(`meta[name="endpoint"]`)?.getAttribute(`content`);return e&&e in t?e:t.unknown},i=()=>{let e=document.querySelector(`script[client_settings]`)?.getAttribute(`client_settings`);if(!e)return{};try{return JSON.parse(atob(e))}catch(e){return console.error(`Failed to load client_settings:`,e),{}}};const a=async(e,t,n)=>{let r=new AbortController,i=setTimeout(()=>r.abort(),n?.timeout??3e4),a=await fetch(t,{body:n?.body,method:e,signal:r.signal}).finally(()=>clearTimeout(i));if(!a.ok)throw Error(a.statusText);return a},o=(e,t,n,r)=>{if(typeof t!=`string`){t.addEventListener(e,n,r);return}document.addEventListener(e,e=>{for(let r of e.composedPath())if(r instanceof HTMLElement&&r.matches(t)){try{n.call(r,e)}catch(e){console.error(e)}break}},r)},s=(e,t)=>{for(let e of t?.on??[])if(!e)return;document.readyState===`loading`?o(`DOMContentLoaded`,document,e,{once:!0}):e()},c=r(),l=i(),u=(e,t)=>{d(t)&&e()};var d=e=>{switch(e.on){case`global`:return!0;case`endpoint`:return!!e.where.includes(c)}},f=`modulepreload`,p=function(e){return`/static/themes/simple/`+e},m={};const h=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=p(t,n),t in m)return;m[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:f,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};s(()=>{document.documentElement.classList.remove(`no-js`),document.documentElement.classList.add(`js`),o(`click`,`.close`,function(){this.parentNode?.classList.add(`invisible`)}),o(`click`,`.searxng_init_map`,async function(e){e.preventDefault(),this.classList.remove(`searxng_init_map`),u(()=>h(async()=>{let{default:e}=await import(`./chunk/336M4CYc.min.js`);return{default:e}},[]).then(({default:e})=>new e(this)),{on:`endpoint`,where:[t.results]})}),l.plugins?.includes(`infiniteScroll`)&&u(()=>h(async()=>{let{default:e}=await import(`./chunk/DBO1tjH7.min.js`);return{default:e}},__vite__mapDeps([0,1,2])).then(({default:e})=>new e),{on:`endpoint`,where:[t.results]}),l.plugins?.includes(`calculator`)&&u(()=>h(async()=>{let{default:e}=await import(`./chunk/BmuYt_wm.min.js`);return{default:e}},__vite__mapDeps([3,2,1])).then(({default:e})=>new e),{on:`endpoint`,where:[t.results]})}),s(()=>{h(()=>import(`./chunk/DtYCnLFs.min.js`),__vite__mapDeps([4,1])),h(()=>import(`./chunk/Q2W2fJLA.min.js`),__vite__mapDeps([5,2,1])),l.autocomplete&&h(()=>import(`./chunk/KPZlR0ib.min.js`),__vite__mapDeps([6,1]))},{on:[c===t.index]}),s(()=>{h(()=>import(`./chunk/DtYCnLFs.min.js`),__vite__mapDeps([4,1])),h(()=>import(`./chunk/Dzkb_VTO.min.js`),__vite__mapDeps([7,1])),h(()=>import(`./chunk/Q2W2fJLA.min.js`),__vite__mapDeps([5,2,1])),l.autocomplete&&h(()=>import(`./chunk/KPZlR0ib.min.js`),__vite__mapDeps([6,1]))},{on:[c===t.results]}),s(()=>{h(()=>import(`./chunk/u0MAGmsp.min.js`),__vite__mapDeps([8,1]))},{on:[c===t.preferences]});export{e as a,l as i,o as n,n as r,a as t};
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./chunk/DBO1tjH7.min.js","./chunk/13gvpunf.min.js","./chunk/gZqIRpW1.min.js","./chunk/DO33-10z.min.js","./chunk/Cyk8UkF6.min.js","./chunk/Q2W2fJLA.min.js","./chunk/KPZlR0ib.min.js","./chunk/Dzkb_VTO.min.js","./chunk/u0MAGmsp.min.js"])))=>i.map(i=>d[i]);
var e=class{id;constructor(e){this.id=e,this.invoke()}async invoke(){try{console.debug(`[PLUGIN] ${this.id}: Running...`);let e=await this.run();if(!e)return;console.debug(`[PLUGIN] ${this.id}: Running post-exec...`),await this.post(e)}catch(e){console.error(`[PLUGIN] ${this.id}:`,e)}finally{console.debug(`[PLUGIN] ${this.id}: Done.`)}}};const t={index:`index`,results:`results`,preferences:`preferences`,unknown:`unknown`},n={closeDetail:void 0,scrollPageToSelected:void 0,selectImage:void 0,selectNext:void 0,selectPrevious:void 0};var r=()=>{let e=document.querySelector(`meta[name="endpoint"]`)?.getAttribute(`content`);return e&&e in t?e:t.unknown},i=()=>{let e=document.querySelector(`script[client_settings]`)?.getAttribute(`client_settings`);if(!e)return{};try{return JSON.parse(atob(e))}catch(e){return console.error(`Failed to load client_settings:`,e),{}}};const a=async(e,t,n)=>{let r=new AbortController,i=setTimeout(()=>r.abort(),n?.timeout??3e4),a=await fetch(t,{body:n?.body,method:e,signal:r.signal}).finally(()=>clearTimeout(i));if(!a.ok)throw Error(a.statusText);return a},o=(e,t,n,r)=>{if(typeof t!=`string`){t.addEventListener(e,n,r);return}document.addEventListener(e,e=>{for(let r of e.composedPath())if(r instanceof HTMLElement&&r.matches(t)){try{n.call(r,e)}catch(e){console.error(e)}break}},r)},s=(e,t)=>{for(let e of t?.on??[])if(!e)return;document.readyState===`loading`?o(`DOMContentLoaded`,document,e,{once:!0}):e()},c=r(),l=i(),u=(e,t)=>{d(t)&&e()};var d=e=>{switch(e.on){case`global`:return!0;case`endpoint`:return!!e.where.includes(c)}},f=`modulepreload`,p=function(e,t){return new URL(e,t).href},m={};const h=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=p(t,n),t in m)return;m[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:f,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};s(()=>{document.documentElement.classList.remove(`no-js`),document.documentElement.classList.add(`js`),o(`click`,`.close`,function(){this.parentNode?.classList.add(`invisible`)}),o(`click`,`.searxng_init_map`,async function(e){e.preventDefault(),this.classList.remove(`searxng_init_map`),u(()=>h(async()=>{let{default:e}=await import(`./chunk/Dtr6y4WS.min.js`);return{default:e}},[],import.meta.url).then(({default:e})=>new e(this)),{on:`endpoint`,where:[t.results]})}),l.plugins?.includes(`infiniteScroll`)&&u(()=>h(async()=>{let{default:e}=await import(`./chunk/DBO1tjH7.min.js`);return{default:e}},__vite__mapDeps([0,1,2]),import.meta.url).then(({default:e})=>new e),{on:`endpoint`,where:[t.results]}),l.plugins?.includes(`calculator`)&&u(()=>h(async()=>{let{default:e}=await import(`./chunk/DO33-10z.min.js`);return{default:e}},__vite__mapDeps([3,2,1]),import.meta.url).then(({default:e})=>new e),{on:`endpoint`,where:[t.results]})}),s(()=>{h(()=>import(`./chunk/Cyk8UkF6.min.js`),__vite__mapDeps([4,1]),import.meta.url),h(()=>import(`./chunk/Q2W2fJLA.min.js`),__vite__mapDeps([5,2,1]),import.meta.url),l.autocomplete&&h(()=>import(`./chunk/KPZlR0ib.min.js`),__vite__mapDeps([6,1]),import.meta.url)},{on:[c===t.index]}),s(()=>{h(()=>import(`./chunk/Cyk8UkF6.min.js`),__vite__mapDeps([4,1]),import.meta.url),h(()=>import(`./chunk/Dzkb_VTO.min.js`),__vite__mapDeps([7,1]),import.meta.url),h(()=>import(`./chunk/Q2W2fJLA.min.js`),__vite__mapDeps([5,2,1]),import.meta.url),l.autocomplete&&h(()=>import(`./chunk/KPZlR0ib.min.js`),__vite__mapDeps([6,1]),import.meta.url)},{on:[c===t.results]}),s(()=>{h(()=>import(`./chunk/u0MAGmsp.min.js`),__vite__mapDeps([8,1]),import.meta.url)},{on:[c===t.preferences]});export{e as a,l as i,o as n,n as r,a as t};
//# sourceMappingURL=sxng-core.min.js.map

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -32,20 +32,22 @@
# bdcdo <bdcdo@noreply.codeberg.org>, 2025.
# return42 <return42@noreply.codeberg.org>, 2025.
# reis2724 <reis2724@noreply.codeberg.org>, 2025.
# danilo-jlle <danilo-jlle@noreply.codeberg.org>, 2026.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-12-05 10:19+0000\n"
"PO-Revision-Date: 2025-10-22 02:09+0000\n"
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
"PO-Revision-Date: 2026-01-13 18:21+0000\n"
"Last-Translator: danilo-jlle <danilo-jlle@noreply.codeberg.org>\n"
"Language-Team: Portuguese <https://translate.codeberg.org/projects/searxng/"
"searxng/pt/>\n"
"Language: pt\n"
"Language-Team: Portuguese "
"<https://translate.codeberg.org/projects/searxng/searxng/pt/>\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Weblate 5.15.1\n"
"Generated-By: Babel 2.17.0\n"
#. CONSTANT_NAMES['NO_SUBGROUPING']
@@ -678,7 +680,7 @@ msgstr "Canal"
#: searx/engines/radio_browser.py:144
msgid "bitrate"
msgstr "bitrate"
msgstr "taxa de bits"
#: searx/engines/radio_browser.py:145
msgid "votes"
@@ -686,7 +688,7 @@ msgstr "votos"
#: searx/engines/radio_browser.py:146
msgid "clicks"
msgstr "clica"
msgstr "cliques"
#: searx/engines/seekr.py:193 searx/engines/zlibrary.py:78
msgid "Language"
@@ -2434,4 +2436,3 @@ msgstr "esconder vídeo"
#~ "Carregar automaticamente a página seguinte "
#~ "ao descer para o final da página"
#~ " atual"

View File

@@ -30,15 +30,15 @@
# Erico <erico@users.noreply.translate.codeberg.org>, 2025.
# Wexterity <wexterity@users.noreply.translate.codeberg.org>, 2025.
# return42 <return42@noreply.codeberg.org>, 2025.
# AndersNordh <andersnordh@noreply.codeberg.org>, 2025.
# AndersNordh <andersnordh@noreply.codeberg.org>, 2025, 2026.
# Hangry-Studios <hangry-studios@noreply.codeberg.org>, 2025.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-12-05 10:19+0000\n"
"PO-Revision-Date: 2025-12-10 16:10+0000\n"
"Last-Translator: Hangry-Studios <hangry-studios@noreply.codeberg.org>\n"
"PO-Revision-Date: 2026-02-04 15:29+0000\n"
"Last-Translator: AndersNordh <andersnordh@noreply.codeberg.org>\n"
"Language-Team: Swedish <https://translate.codeberg.org/projects/searxng/"
"searxng/sv/>\n"
"Language: sv\n"
@@ -46,7 +46,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.14.3\n"
"X-Generator: Weblate 5.15.2\n"
"Generated-By: Babel 2.17.0\n"
#. CONSTANT_NAMES['NO_SUBGROUPING']
@@ -117,7 +117,7 @@ msgstr "karta"
#. CATEGORY_NAMES['ONIONS']
#: searx/searxng.msg
msgid "onions"
msgstr "lökar"
msgstr "onions"
#. CATEGORY_NAMES['SCIENCE']
#: searx/searxng.msg
@@ -257,7 +257,7 @@ msgstr "Natt"
#. WEATHER_TERMS['NOON']
#: searx/searxng.msg
msgid "Noon"
msgstr "Middag"
msgstr "Mitt på dagen"
#. WEATHER_TERMS['PRESSURE']
#: searx/searxng.msg searx/templates/simple/answer/weather.html:25
@@ -571,7 +571,7 @@ msgstr "Källa"
#: searx/webapp.py:332
msgid "Error loading the next page"
msgstr "Kunde inte ladda nästa sida"
msgstr "Fel vid laddning av nästa sida"
#: searx/webapp.py:481 searx/webapp.py:882
msgid "Invalid settings, please edit your preferences"
@@ -687,7 +687,7 @@ msgstr "röster"
#: searx/engines/radio_browser.py:146
msgid "clicks"
msgstr "klickar"
msgstr "klick"
#: searx/engines/seekr.py:193 searx/engines/zlibrary.py:78
msgid "Language"

View File

@@ -40,20 +40,22 @@
# pochinki <pochinki@noreply.codeberg.org>, 2025.
# ajiou <ajiou@noreply.codeberg.org>, 2025.
# zymurge <zymurge@noreply.codeberg.org>, 2025.
# Maoyue_OUO <maoyue_ouo@noreply.codeberg.org>, 2026.
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2025-12-05 10:19+0000\n"
"PO-Revision-Date: 2025-09-02 04:50+0000\n"
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
"PO-Revision-Date: 2026-01-10 17:50+0000\n"
"Last-Translator: Maoyue_OUO <maoyue_ouo@noreply.codeberg.org>\n"
"Language-Team: Chinese (Traditional Han script, Taiwan) <https://"
"translate.codeberg.org/projects/searxng/searxng/zh_Hant_TW/>\n"
"Language: zh_Hant_TW\n"
"Language-Team: Chinese (Traditional Han script) "
"<https://translate.codeberg.org/projects/searxng/searxng/zh_Hant/>\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 5.15.1\n"
"Generated-By: Babel 2.17.0\n"
#. CONSTANT_NAMES['NO_SUBGROUPING']
@@ -744,11 +746,11 @@ msgstr "過濾掉 Ahmia 黑名單中出現的洋蔥結果。"
#: searx/plugins/calculator.py:25
msgid "Calculator"
msgstr ""
msgstr "計算機"
#: searx/plugins/calculator.py:26
msgid "Parses and solves mathematical expressions."
msgstr ""
msgstr "解析並求解數學表達式。"
#: searx/plugins/hash_plugin.py:33
msgid "Hash plugin"
@@ -780,7 +782,7 @@ msgstr "無限捲動"
msgid ""
"Automatically loads the next page when scrolling to bottom of the current"
" page"
msgstr ""
msgstr "到達目前頁面底部時,自動載入下一頁"
#: searx/plugins/oa_doi_rewrite.py:54
msgid "Open Access DOI rewrite"
@@ -812,11 +814,11 @@ msgstr "您的使用者代理是: "
#: searx/plugins/time_zone.py:33
msgid "Timezones plugin"
msgstr ""
msgstr "時區外掛"
#: searx/plugins/time_zone.py:34
msgid "Display the current time on different time zones."
msgstr ""
msgstr "顯示不同時區的時間。"
#: searx/plugins/tor_check.py:41
msgid "Tor check plugin"
@@ -1005,15 +1007,15 @@ msgstr "錯誤:"
msgid ""
"This is a preview of the settings used by the 'Search URL' you used to "
"get here."
msgstr ""
msgstr "這是您使用「搜尋網址」來到此處所採用設定的預覽。"
#: searx/templates/simple/preferences.html:162
msgid "Press save to copy these preferences to your browser."
msgstr ""
msgstr "按下儲存以將這些設定複製至您的瀏覽器。"
#: searx/templates/simple/preferences.html:163
msgid "Click here to view your browser preferences instead:"
msgstr ""
msgstr "請點擊此處查看您的瀏覽器偏好設定:"
#: searx/templates/simple/preferences.html:173
msgid "General"
@@ -1389,7 +1391,7 @@ msgstr "這是 SearXNG 在您的裝置上儲存的 Cookie 列表及其對應的
#: searx/templates/simple/preferences/cookies.html:3
msgid "With this list, you can assess the transparency of SearXNG."
msgstr ""
msgstr "透過此清單,您可以評估 SearXNG 的透明度。"
#: searx/templates/simple/preferences/cookies.html:9
msgid "Cookie name"
@@ -1523,7 +1525,7 @@ msgstr "圖片代理"
#: searx/templates/simple/preferences/image_proxy.html:14
msgid "Proxy image results through SearXNG"
msgstr ""
msgstr "透過 SearXNG 代理圖片"
#: searx/templates/simple/preferences/language.html:24
msgid "What language do you prefer for search?"
@@ -1662,7 +1664,7 @@ msgstr "分類"
#: searx/templates/simple/result_templates/file.html:67
msgid "Download"
msgstr ""
msgstr "下載"
#: searx/templates/simple/result_templates/images.html:20
msgid "Resolution"
@@ -2319,4 +2321,3 @@ msgstr "隱藏影片"
#~ " scrolling to the bottom of the "
#~ "current page"
#~ msgstr ""