mirror of
https://github.com/searxng/searxng.git
synced 2026-09-11 16:56:05 +00:00
Compare commits
17 Commits
bf31fb508b
...
de9cceb4bd
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
de9cceb4bd | ||
|
|
487d7a96e0 | ||
|
|
8d3dd0cd45 | ||
|
|
5ffd32ca2f | ||
|
|
374939b888 | ||
|
|
b2da6b90f2 | ||
|
|
36698aff6b | ||
|
|
094c33d406 | ||
|
|
ef9a188cc8 | ||
|
|
cdfdaa5a88 | ||
|
|
5638231358 | ||
|
|
1c3bb1e88f | ||
|
|
54613defc7 | ||
|
|
e8e710e42a | ||
|
|
7b0c7f0bf8 | ||
|
|
e033be7c7c | ||
|
|
0a118066d8 |
8
.github/workflows/container.yml
vendored
8
.github/workflows/container.yml
vendored
@@ -50,7 +50,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Login to GHCR
|
- name: Login to GHCR
|
||||||
uses: docker/login-action@371161bbe7024a29a25c5e19bfcbc0804fe9ad2c # v4.5.2
|
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
|
||||||
with:
|
with:
|
||||||
registry: "ghcr.io"
|
registry: "ghcr.io"
|
||||||
username: "${{ github.repository_owner }}"
|
username: "${{ github.repository_owner }}"
|
||||||
@@ -110,7 +110,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Login to GHCR
|
- name: Login to GHCR
|
||||||
uses: docker/login-action@371161bbe7024a29a25c5e19bfcbc0804fe9ad2c # v4.5.2
|
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
|
||||||
with:
|
with:
|
||||||
registry: "ghcr.io"
|
registry: "ghcr.io"
|
||||||
username: "${{ github.repository_owner }}"
|
username: "${{ github.repository_owner }}"
|
||||||
@@ -144,14 +144,14 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Login to Docker Hub
|
- name: Login to Docker Hub
|
||||||
uses: docker/login-action@371161bbe7024a29a25c5e19bfcbc0804fe9ad2c # v4.5.2
|
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
|
||||||
with:
|
with:
|
||||||
registry: "docker.io"
|
registry: "docker.io"
|
||||||
username: "${{ secrets.DOCKER_USER }}"
|
username: "${{ secrets.DOCKER_USER }}"
|
||||||
password: "${{ secrets.DOCKER_TOKEN }}"
|
password: "${{ secrets.DOCKER_TOKEN }}"
|
||||||
|
|
||||||
- name: Login to GHCR
|
- name: Login to GHCR
|
||||||
uses: docker/login-action@371161bbe7024a29a25c5e19bfcbc0804fe9ad2c # v4.5.2
|
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4.6.0
|
||||||
with:
|
with:
|
||||||
registry: "ghcr.io"
|
registry: "ghcr.io"
|
||||||
username: "${{ github.repository_owner }}"
|
username: "${{ github.repository_owner }}"
|
||||||
|
|||||||
2
.github/workflows/documentation.yml
vendored
2
.github/workflows/documentation.yml
vendored
@@ -61,7 +61,7 @@ jobs:
|
|||||||
|
|
||||||
- if: github.ref_name == 'master'
|
- if: github.ref_name == 'master'
|
||||||
name: Release
|
name: Release
|
||||||
uses: JamesIves/github-pages-deploy-action@d92aa235d04922e8f08b40ce78cc5442fcfbfa2f # v4.8.0
|
uses: JamesIves/github-pages-deploy-action@fa24774553152dd7873cd16ebd8d959b010c5445 # v4.9.0
|
||||||
with:
|
with:
|
||||||
folder: "dist/docs"
|
folder: "dist/docs"
|
||||||
branch: "gh-pages"
|
branch: "gh-pages"
|
||||||
|
|||||||
550
client/simple/package-lock.json
generated
550
client/simple/package-lock.json
generated
@@ -9,18 +9,18 @@
|
|||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"license": "AGPL-3.0",
|
"license": "AGPL-3.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ionicons": "^8.0.13",
|
"ionicons": "^8.1.0",
|
||||||
"normalize.css": "8.0.1",
|
"normalize.css": "8.0.1",
|
||||||
"ol": "^10.9.0",
|
"ol": "^10.10.0",
|
||||||
"swiped-events": "1.2.0"
|
"swiped-events": "1.2.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@biomejs/biome": "2.5.5",
|
"@biomejs/biome": "2.5.7",
|
||||||
"@types/node": "^26.1.1",
|
"@types/node": "^26.2.0",
|
||||||
"browserslist": "^4.28.7",
|
"browserslist": "^4.28.8",
|
||||||
"browserslist-to-esbuild": "^2.1.1",
|
"browserslist-to-esbuild": "^2.1.1",
|
||||||
"edge.js": "^6.5.1",
|
"edge.js": "^6.5.1",
|
||||||
"less": "^4.8.0",
|
"less": "^4.8.1",
|
||||||
"mathjs": "^15.2.0",
|
"mathjs": "^15.2.0",
|
||||||
"sharp": "~0.35.3",
|
"sharp": "~0.35.3",
|
||||||
"sort-package-json": "^4.0.0",
|
"sort-package-json": "^4.0.0",
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
"stylelint-prettier": "^5.0.3",
|
"stylelint-prettier": "^5.0.3",
|
||||||
"svgo": "^4.0.2",
|
"svgo": "^4.0.2",
|
||||||
"typescript": "~7.0.2",
|
"typescript": "~7.0.2",
|
||||||
"vite": "^8.1.5",
|
"vite": "^8.2.1",
|
||||||
"vite-bundle-analyzer": "^1.3.9"
|
"vite-bundle-analyzer": "^1.3.9"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -69,9 +69,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/biome": {
|
"node_modules/@biomejs/biome": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.7.tgz",
|
||||||
"integrity": "sha512-r1S8nFsAG1MY+vJFZALzIvwXAJv6ejDQ0mxP21Tgr9YK3ZFtjrvbBwDdNhx1rUqvccEIeNg20cYCNzl6Cr69pQ==",
|
"integrity": "sha512-zr8K/DcY5tYsQOQwqMJ0AWElo6QgmgNI7idXgXLhevVszlt8RGVpesEJPqx3ThazLaOwjJ5Y8fz3BtH5fGZNsw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT OR Apache-2.0",
|
"license": "MIT OR Apache-2.0",
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -85,20 +85,20 @@
|
|||||||
"url": "https://opencollective.com/biome"
|
"url": "https://opencollective.com/biome"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"@biomejs/cli-darwin-arm64": "2.5.5",
|
"@biomejs/cli-darwin-arm64": "2.5.7",
|
||||||
"@biomejs/cli-darwin-x64": "2.5.5",
|
"@biomejs/cli-darwin-x64": "2.5.7",
|
||||||
"@biomejs/cli-linux-arm64": "2.5.5",
|
"@biomejs/cli-linux-arm64": "2.5.7",
|
||||||
"@biomejs/cli-linux-arm64-musl": "2.5.5",
|
"@biomejs/cli-linux-arm64-musl": "2.5.7",
|
||||||
"@biomejs/cli-linux-x64": "2.5.5",
|
"@biomejs/cli-linux-x64": "2.5.7",
|
||||||
"@biomejs/cli-linux-x64-musl": "2.5.5",
|
"@biomejs/cli-linux-x64-musl": "2.5.7",
|
||||||
"@biomejs/cli-win32-arm64": "2.5.5",
|
"@biomejs/cli-win32-arm64": "2.5.7",
|
||||||
"@biomejs/cli-win32-x64": "2.5.5"
|
"@biomejs/cli-win32-x64": "2.5.7"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/cli-darwin-arm64": {
|
"node_modules/@biomejs/cli-darwin-arm64": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.7.tgz",
|
||||||
"integrity": "sha512-kUrAhXVWUrwmAUnV2iXSK7umxKFysTwvqK+Ty6ptUcLY/7T3SnCAjUowE4uvwaEej6nXZ7hu/dTtbokKdsPeag==",
|
"integrity": "sha512-vxo/Ls3/PYdQWyLhYYcgMOCzQypAjcY+iihS8M0wW03l16TCLW4zqZzGo75gm1VdCMj38hTVZ31KBWrZ4G9dJw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -113,9 +113,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/cli-darwin-x64": {
|
"node_modules/@biomejs/cli-darwin-x64": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.7.tgz",
|
||||||
"integrity": "sha512-DamiYc5bUYZ2uxlfc+RLEPtz1Abb6PO5eTbOkufLpSGwd/7AMQAdxhFYiXmwwkJL8IsT8S7GvdgwDHqaMFAvKw==",
|
"integrity": "sha512-Cd3Ga61amT/Yl/0x8elP5hhGYaFy4bw6WuysTgf7oo8TA5tJ5A1k+DkVoJ2BHbTVil51gTX9VPzArnrlLJ3Kyg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -130,9 +130,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/cli-linux-arm64": {
|
"node_modules/@biomejs/cli-linux-arm64": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.7.tgz",
|
||||||
"integrity": "sha512-lRKF/pH/1RiYiBKExi3TCZVAtvzEm77aifrvcNiDFrR9WxeAnDUjDnseb6y2XV85mjitLs6SILGm2XG77cHtSQ==",
|
"integrity": "sha512-rR2QE0yF2GYSuYuKIa7pKvODGJqnOH+2eDREAM8wV+mWKSkMQKdAp4zXEZfTaxY8PMoNONnpgSWcBCyLDPDOKg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -150,9 +150,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/cli-linux-arm64-musl": {
|
"node_modules/@biomejs/cli-linux-arm64-musl": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.7.tgz",
|
||||||
"integrity": "sha512-U4WMl/sy/E/Q73vf15VspakLRRs2LDFcCeBxJnQfXzssb88zpV6PJPaQ3ezhQ7H6Ht2/8bvuZeHgJWzmoxllZg==",
|
"integrity": "sha512-xPI5yB6XlpDbNkS+bm1t42olw5c4l3UrlOmLg7KtLJvjvkNF/1V4tnUgfkylGIeb3u/T+BzMGYqgQhzjAoJzuQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -170,9 +170,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/cli-linux-x64": {
|
"node_modules/@biomejs/cli-linux-x64": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.7.tgz",
|
||||||
"integrity": "sha512-H/O39nJEw/2Zm/fm7hrmxxoF8kK/aU1uCoPp70ruXVbomaAdLpJJnCmL11Q2JotT8QVHH06So04Oq53lCSwSwQ==",
|
"integrity": "sha512-FQgqJhscrqJUFptGaRSUJWlXAExwWcDwLuK49dvKfkQ1bB5SEEyFssnsxQY83Xm6jR0EbbX3+8+D5bfvYqUG2Q==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -190,9 +190,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/cli-linux-x64-musl": {
|
"node_modules/@biomejs/cli-linux-x64-musl": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.7.tgz",
|
||||||
"integrity": "sha512-m7wC7tjX5Lrmo69dc4md8FeKpPU1NTCY1v7xUoQQ2vadWwNnBS0KZOG8471otFPHrTHihQJAjQPgMObpLvDe6A==",
|
"integrity": "sha512-rE5VZi+qtmPgQH+l7jVxYoZ18b/TiHEhulhMpjmCZH1PltSbjRcxNWywC3HZ9tYottG7ORkeTtoscBilKSBm0g==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -210,9 +210,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/cli-win32-arm64": {
|
"node_modules/@biomejs/cli-win32-arm64": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.7.tgz",
|
||||||
"integrity": "sha512-7BryINPuYypLUAH3o/o5ZdgomJ4zn3EDR0ChZJst7n32S6ZhKbgHXuYydLu+YAnx59ehGFR0z/MG6qnzQi3Yyw==",
|
"integrity": "sha512-Oq4x0CCwP4jirrcTywXs5kOGZ4v5vuEP+gWrbtjApOA2CL9F3F9GlIdQIci8AKSCa/zURanMRpX/4wQ7Am6hHg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -227,9 +227,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@biomejs/cli-win32-x64": {
|
"node_modules/@biomejs/cli-win32-x64": {
|
||||||
"version": "2.5.5",
|
"version": "2.5.7",
|
||||||
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.7.tgz",
|
||||||
"integrity": "sha512-bIBFo+n6MIxdNcVFy5CrurbKiZQiUciK3bt8+O9I4wjFZNTfXLpi+giq47522eXqW5NBc9ulx7dR1SlZKi2J5g==",
|
"integrity": "sha512-V+0wu/nrj2S+MhP4EQ0uHNolP0IALEsz45pg0WoKkHfDeh0+ItHwP/p7bX5RPoMOl9NkpHYWdYPhIcy2mACHvQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -429,40 +429,6 @@
|
|||||||
"postcss-selector-parser": "^7.1.1"
|
"postcss-selector-parser": "^7.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@emnapi/core": {
|
|
||||||
"version": "1.11.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.11.1.tgz",
|
|
||||||
"integrity": "sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ==",
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"dependencies": {
|
|
||||||
"@emnapi/wasi-threads": "1.2.2",
|
|
||||||
"tslib": "^2.4.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@emnapi/runtime": {
|
|
||||||
"version": "1.11.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.1.tgz",
|
|
||||||
"integrity": "sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==",
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": "^2.4.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@emnapi/wasi-threads": {
|
|
||||||
"version": "1.2.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.2.tgz",
|
|
||||||
"integrity": "sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==",
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": "^2.4.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@img/colour": {
|
"node_modules/@img/colour": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz",
|
||||||
@@ -1073,25 +1039,6 @@
|
|||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/@napi-rs/wasm-runtime": {
|
|
||||||
"version": "1.1.6",
|
|
||||||
"resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.6.tgz",
|
|
||||||
"integrity": "sha512-ZLv/JdUfkvOy9eCnnBaGfiO+XimbjebAeO+MRQqD/B+FR1tnRN0tpKSJHRbE8sFfS6aqsXZ67TQjfwfsxULVbg==",
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"dependencies": {
|
|
||||||
"@tybys/wasm-util": "^0.10.3"
|
|
||||||
},
|
|
||||||
"funding": {
|
|
||||||
"type": "github",
|
|
||||||
"url": "https://github.com/sponsors/Brooooooklyn"
|
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"@emnapi/core": "^1.7.1",
|
|
||||||
"@emnapi/runtime": "^1.7.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@nodelib/fs.scandir": {
|
"node_modules/@nodelib/fs.scandir": {
|
||||||
"version": "2.1.5",
|
"version": "2.1.5",
|
||||||
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
|
||||||
@@ -1131,9 +1078,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@oxc-project/types": {
|
"node_modules/@oxc-project/types": {
|
||||||
"version": "0.139.0",
|
"version": "0.144.0",
|
||||||
"resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.139.0.tgz",
|
"resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.144.0.tgz",
|
||||||
"integrity": "sha512-r9gHphtCs+1M7J0pw6Sn/hh/Wpa/iQrOOkrNAlVLF/gHq+/CJmHIWKKUUhdWjcD6CIa8idarspCsASiXCXvFUw==",
|
"integrity": "sha512-nuhZIOLuI6TFQ32I/WnUx+SCPY7SdSKwgnFHydAuoS1+Z4BRcaP+RRJmGzl9lw+0OFF7UmaESf7KQRXaNLHypg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"funding": {
|
"funding": {
|
||||||
@@ -1215,9 +1162,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-android-arm64": {
|
"node_modules/@rolldown/binding-android-arm64": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.2.4.tgz",
|
||||||
"integrity": "sha512-lZg8fqIv2v7FF237bwMgzGZEJvGL79/s5knJ/i6FmsGF4XXlzccZ4jb+TrFIxtSSxFtIpdsgrPZeMk1I9AFcyQ==",
|
"integrity": "sha512-jHC2cnyKz5xU2fhECtFl8OZ83cYNt13GZQD+0uMJ/X3o+ijmd56okHhTUwxVSHPx1IRVIJEZ1/1pPzeLCU6XKA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -1232,9 +1179,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-darwin-arm64": {
|
"node_modules/@rolldown/binding-darwin-arm64": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.2.4.tgz",
|
||||||
"integrity": "sha512-51Bnx9pNiMRKSUNtBfySkNJ9vMU9Hh3I1ozDd6gyPPYzaXCfnptUcEZxXGYFn+ul2dtcMUiqGR1Yai2K10uoTw==",
|
"integrity": "sha512-Dc5mPD8F5F/FS8i01syd7FTF6yB2fVthH/TRkjwJkzUK6EpoxHtqvZQP5Zwq80/5z19TWYHIg1KOHboCgVx/aQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -1249,9 +1196,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-darwin-x64": {
|
"node_modules/@rolldown/binding-darwin-x64": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.2.4.tgz",
|
||||||
"integrity": "sha512-Tm+gbfC0aHu1tBA/JvKQh32S0K6YgCHkiAF4/W6xX0K0RmNuc94VeK419dJoE65R5aRxmo+noZQSWrAMF6yb6g==",
|
"integrity": "sha512-fpDm4oBo6SqLvWUYCmFhdde3U9KH2fRNNMeAnAPAIwxRL345xutL0EtEUcuoxsoazdJGv/MuDBQHlCDrtbvqOg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -1266,9 +1213,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-freebsd-x64": {
|
"node_modules/@rolldown/binding-freebsd-x64": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.2.4.tgz",
|
||||||
"integrity": "sha512-JMzDKCCXq93YccG5gz3hvOs1oXRKAf0XYpfOS88e+wZrC8Iugj6j68867vrYZkvpDDpKn/KoKORThmchMpF6TA==",
|
"integrity": "sha512-rSJoreDE/HoIzoaib6MTp5jQtCTdMHKIvItAKT/ImS6Y6Ww76oUaeMyp4Vc/fAgd/ehji068IxetHXAnqUwN9A==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -1283,9 +1230,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-linux-arm-gnueabihf": {
|
"node_modules/@rolldown/binding-linux-arm-gnueabihf": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.2.4.tgz",
|
||||||
"integrity": "sha512-uML21j2K5TfPGutKxub+M+nLjZIrWjXQ5Grx4lCe/nimTj9B4L63zHpjXLl4y0L3mcm2htEQIb06oCG/szerNw==",
|
"integrity": "sha512-/jm8OGHgn7oGaJu3i/qZI9spUGcJ+y/lk43ttQ/iO1tOd9NissG6o97bighBCiL+BKRngmcDuR6ikfwYdJmVuQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
@@ -1300,9 +1247,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-linux-arm64-gnu": {
|
"node_modules/@rolldown/binding-linux-arm64-gnu": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.2.4.tgz",
|
||||||
"integrity": "sha512-navSiuTMogvnQoZoM/v+l3ZWo50/NTwSHSzheABx/RCnmUPaKwq9qSo4Br2OYRs21+Fz8uFqITZM3H4opOB0/Q==",
|
"integrity": "sha512-tIP06BeD9EqvECBrPZ+sqdPlYrT+aYaAiu1wYziVx5elRK/ftm33JxVDy2bXGbr6J0CrtirCkR87/X5a2euEng==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -1320,9 +1267,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-linux-arm64-musl": {
|
"node_modules/@rolldown/binding-linux-arm64-musl": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.2.4.tgz",
|
||||||
"integrity": "sha512-lAryqH7IteztmCXQXk0etKj4wBQ7Gx5S6LjKhsgp9zb8I5bsuvU/2llH1hDQcjsFeqIsovMVN339/8pUDDBXxA==",
|
"integrity": "sha512-Ql1Q0EQqVThvn9VAVlwNzsUvbSFtCMGjLpRRi4pk5i7NZZ4n5ISiLMjHYtus4VQ2PvkSw24zyaCVsiS+sXPj1w==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -1340,9 +1287,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-linux-ppc64-gnu": {
|
"node_modules/@rolldown/binding-linux-ppc64-gnu": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.2.4.tgz",
|
||||||
"integrity": "sha512-fsK/sNBnxzBlL4O1JNrZakVQxPspqpED5dLtNsZS9oOKmtSpdNIzxH2kkol5HYTWJN47sE20ztMJPxfZ89qGOg==",
|
"integrity": "sha512-GjbjXD4XXfN19D0LZNbmiCBUoDiRACsYHr0yaIbbn8aFsXjHZifcYqu/W5Er5X2X990WjHXFrxarn5chzItorQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"ppc64"
|
"ppc64"
|
||||||
],
|
],
|
||||||
@@ -1360,9 +1307,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-linux-s390x-gnu": {
|
"node_modules/@rolldown/binding-linux-s390x-gnu": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.2.4.tgz",
|
||||||
"integrity": "sha512-gLYb4BIadlfTOYT5gO503n8zQjXflgzpD0FcyKh0Mzx3rqCZKnHoJWV9xe1KXUJ5lx2JfcSHr/mhzS0PC/McAA==",
|
"integrity": "sha512-p5WR0NOwaRmJ/B1b6IjEFLLivwEsf3PrdBIhRbhTCQisbo2SvHHpG4ELB/+FgQNnB88LTOF86upmJmbvZdQ2lw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"s390x"
|
"s390x"
|
||||||
],
|
],
|
||||||
@@ -1380,9 +1327,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-linux-x64-gnu": {
|
"node_modules/@rolldown/binding-linux-x64-gnu": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.2.4.tgz",
|
||||||
"integrity": "sha512-FjcpEKUyJygHgs1o50VYNvkt5+7Le/VEdYt0AkRpkL33MnyQfwr8l5mXwMmfmTbyMPr5vJLC+8/Gd9gXnwU1QQ==",
|
"integrity": "sha512-4/GyVjmhR+Tc6HLJvwc1sOhPqAZtySiSMesOZyX6JQ5XBxoTDEMKQzvo07NIK6nTon/SivlZqvhzvuVBNQhObQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -1400,9 +1347,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-linux-x64-musl": {
|
"node_modules/@rolldown/binding-linux-x64-musl": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.2.4.tgz",
|
||||||
"integrity": "sha512-Me+PfPI2TMeOQk0gYWfLQZtTktrmzbr8cDboqX83XKc7UrgAi55gF+2dUkWdxd19n55Essp2yeca+O9N5rBxHg==",
|
"integrity": "sha512-l9eeLsCNvPpmSXUej0etw/J1eqV0Jj1D5G/xG6YTijmE6dkv6E2QezgWbTfQk63v952DPqrjOCoiqxq7Bw0YUQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -1420,9 +1367,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-openharmony-arm64": {
|
"node_modules/@rolldown/binding-openharmony-arm64": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.2.4.tgz",
|
||||||
"integrity": "sha512-yc5WrLzXks6zCQfn9Oxr8pORKyl/pF+QjHmW/Qx3qu0oyrrNC+y2JLTU1E2rcWYAmzlnqngWXHQjy51VzW70Vw==",
|
"integrity": "sha512-e0F355MSTMm3+UOqtV3L24gFUp2N5m1f8L/7d56deik6va+AXdrt9F8LbzGpeWGWRbZEDq4m8NVnJDeBtf9DZg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -1436,29 +1383,10 @@
|
|||||||
"node": "^20.19.0 || >=22.12.0"
|
"node": "^20.19.0 || >=22.12.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-wasm32-wasi": {
|
|
||||||
"version": "1.1.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.1.5.tgz",
|
|
||||||
"integrity": "sha512-VbQGPX2b4r48TAMIM2cjgluIM1HYutm4pcTEJsle7iEP7sB1dFqtPLBVbdLAZCxy1txCcPxf4QFf4v8uvltPqA==",
|
|
||||||
"cpu": [
|
|
||||||
"wasm32"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"dependencies": {
|
|
||||||
"@emnapi/core": "1.11.1",
|
|
||||||
"@emnapi/runtime": "1.11.1",
|
|
||||||
"@napi-rs/wasm-runtime": "^1.1.6"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": "^20.19.0 || >=22.12.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@rolldown/binding-win32-arm64-msvc": {
|
"node_modules/@rolldown/binding-win32-arm64-msvc": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.2.4.tgz",
|
||||||
"integrity": "sha512-gHv82k63z4qpV5+Q1y/12KrK0ltWBukVDI8nZcbT7Tt/ZlOIVwppazneq0F93oDxTo3IgAMEDIoQh3E2n6mVsw==",
|
"integrity": "sha512-AWLi0uBRYh6QlE7OKhiz+phZC0qwtij2QZmhmOdsLdFn64m7oMpooE9ICE3lhm9xMb4SpDo2WbHcxX1iFLFtqw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -1473,9 +1401,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rolldown/binding-win32-x64-msvc": {
|
"node_modules/@rolldown/binding-win32-x64-msvc": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.2.4.tgz",
|
||||||
"integrity": "sha512-tTZuDBPw85tEN5PQi1pnEBzDy0Z49HtScLAbD5t6hyeU92A95pRWaSMw1GZZi/RwgSgUIl0xrSlXIT/9QzvYSA==",
|
"integrity": "sha512-UwSDJOg3dqCAejWdxclJjCsh3Qq4vLYMDxmyHqo1btz3stK2VqgwNd3mm5tuIwzSlGIQ/1H9Hr+Zn09mrezNqQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -1529,6 +1457,9 @@
|
|||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
"libc": [
|
||||||
|
"glibc"
|
||||||
|
],
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -1542,6 +1473,9 @@
|
|||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
|
"libc": [
|
||||||
|
"musl"
|
||||||
|
],
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -1555,6 +1489,9 @@
|
|||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
"libc": [
|
||||||
|
"glibc"
|
||||||
|
],
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -1568,6 +1505,9 @@
|
|||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
|
"libc": [
|
||||||
|
"musl"
|
||||||
|
],
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -1614,9 +1554,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@stencil/core": {
|
"node_modules/@stencil/core": {
|
||||||
"version": "4.43.4",
|
"version": "4.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.43.4.tgz",
|
"resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.44.0.tgz",
|
||||||
"integrity": "sha512-QWawMM1XIpSz4k+k+VyHZMr2YSxlCNAPWO/jTdJ+2kdgdN7ZQVEFZpc4WBm3E3mrDPTZ79lLcnIPa399bg4XOg==",
|
"integrity": "sha512-A3kArg+80t9zJdul7FLUcxcjqvYrF76nDavfm2L8R7hGKWPbTTGM/tkOSf7MJqMd1ED0ztYoa9X90UlEXY3nLA==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"bin": {
|
"bin": {
|
||||||
"stencil": "bin/stencil"
|
"stencil": "bin/stencil"
|
||||||
@@ -1636,21 +1576,10 @@
|
|||||||
"@rollup/rollup-win32-x64-msvc": "4.44.0"
|
"@rollup/rollup-win32-x64-msvc": "4.44.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@tybys/wasm-util": {
|
|
||||||
"version": "0.10.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.3.tgz",
|
|
||||||
"integrity": "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==",
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"dependencies": {
|
|
||||||
"tslib": "^2.4.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@types/node": {
|
"node_modules/@types/node": {
|
||||||
"version": "26.1.1",
|
"version": "26.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.2.0.tgz",
|
||||||
"integrity": "sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==",
|
"integrity": "sha512-5IviulTZeRNp2vAJ514cc/HUlY5nZ9fCbq9DMyC52BrhFZACo3nI0R7qBxhQmo/d27NFe96ur/b7Wwxklda+kg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -2107,9 +2036,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/baseline-browser-mapping": {
|
"node_modules/baseline-browser-mapping": {
|
||||||
"version": "2.11.1",
|
"version": "2.11.14",
|
||||||
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.1.tgz",
|
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.14.tgz",
|
||||||
"integrity": "sha512-HYXq73DDpCtNzOmrFsm9eSwCvWCql0RzqjpDzXN9EadiLJ4DNat0nsZ/Bzmy+Ud12mb4/zKDY0cQ805ZzN+i0A==",
|
"integrity": "sha512-JyJ954WzuIR8/FFzX0o5krdSTrBAkcCSRfWSleRsIHSWV+cZe2FI1PKggVkFke1hBldRs+LRxUczzE9iPmgZww==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -2140,9 +2069,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/browserslist": {
|
"node_modules/browserslist": {
|
||||||
"version": "4.28.7",
|
"version": "4.28.8",
|
||||||
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.7.tgz",
|
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.8.tgz",
|
||||||
"integrity": "sha512-JxV13hNrFxqjOc8alRbq9dK1MM79NEXYpma2B2J4wAtpWS5zIEIKqWPGCl7N4o7Uc7B7itylh7SuDujATRyyTw==",
|
"integrity": "sha512-V2NpofLblG64mfOtSgDhOJESZEGogzDMBv/q+W6oc4LXWP/q75eOXoOaaOu1EOadB9U4Bwx/e0yzbvwKH8zalA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@@ -2160,11 +2089,11 @@
|
|||||||
],
|
],
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"baseline-browser-mapping": "^2.10.44",
|
"baseline-browser-mapping": "^2.11.12",
|
||||||
"caniuse-lite": "^1.0.30001806",
|
"caniuse-lite": "^1.0.30001809",
|
||||||
"electron-to-chromium": "^1.5.393",
|
"electron-to-chromium": "^1.5.402",
|
||||||
"node-releases": "^2.0.51",
|
"node-releases": "^2.0.53",
|
||||||
"update-browserslist-db": "^1.2.3"
|
"update-browserslist-db": "^1.3.0"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"browserslist": "cli.js"
|
"browserslist": "cli.js"
|
||||||
@@ -2217,9 +2146,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/caniuse-lite": {
|
"node_modules/caniuse-lite": {
|
||||||
"version": "1.0.30001806",
|
"version": "1.0.30001809",
|
||||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001806.tgz",
|
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001809.tgz",
|
||||||
"integrity": "sha512-72Cuvd95zbSYPKq6Fhg8eDJRlzgWDf7/mtoZv6Qe/DYNCEBdNxoA3+rZAU2ZhGCpZlns3EssFavaZomckT5Uuw==",
|
"integrity": "sha512-xxWVywk6a6Arlk+hymeycyn/VgqEfLDxupvhH/xiY5SJ/18kmi9o6MiO320DCUzypORHLtvh0I4i04tUhCNHNQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@@ -2635,9 +2564,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/electron-to-chromium": {
|
"node_modules/electron-to-chromium": {
|
||||||
"version": "1.5.396",
|
"version": "1.5.406",
|
||||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.396.tgz",
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.406.tgz",
|
||||||
"integrity": "sha512-yHiw2Y3C3H9U6TMbOfoWK/BPreiOPXRfTWPBwQBoZG6/8TB6eOPnsy5oaRYuatR7Fw2SJ4kKforgufeo7fq0EQ==",
|
"integrity": "sha512-hWH5ORBi3d0IipnMh7BN5GDTaAmrSSSWmznwt2zltdiRNEWoEQyTwF0FFSBxzHO7hLSRT6loQu3IQGV0wg/Tvg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "ISC"
|
"license": "ISC"
|
||||||
},
|
},
|
||||||
@@ -2881,9 +2810,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/geotiff": {
|
"node_modules/geotiff": {
|
||||||
"version": "3.0.5",
|
"version": "3.1.0-beta.0",
|
||||||
"resolved": "https://registry.npmjs.org/geotiff/-/geotiff-3.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/geotiff/-/geotiff-3.1.0-beta.0.tgz",
|
||||||
"integrity": "sha512-OWcL9S9+yDZ6iAlXMt32T1iwUApJM8UiD47xbm6ZP1h33d10fqkPs14EG/ttT5EnefpZSx3G15iDFC5FxUNUwA==",
|
"integrity": "sha512-wbVwOaQYuN+ywly5NoMXn37nHslwkQg5EFHqMeUTtjDACrSag0EEVlFsc+2DK3Pzmmp6XzJW2RTZOamPsBM6ng==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@petamoriken/float16": "^3.9.3",
|
"@petamoriken/float16": "^3.9.3",
|
||||||
@@ -3115,12 +3044,12 @@
|
|||||||
"license": "ISC"
|
"license": "ISC"
|
||||||
},
|
},
|
||||||
"node_modules/ionicons": {
|
"node_modules/ionicons": {
|
||||||
"version": "8.0.13",
|
"version": "8.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/ionicons/-/ionicons-8.0.13.tgz",
|
"resolved": "https://registry.npmjs.org/ionicons/-/ionicons-8.1.0.tgz",
|
||||||
"integrity": "sha512-2QQVyG2P4wszne79jemMjWYLp0DBbDhr4/yFroPCxvPP1wtMxgdIV3l5n+XZ5E9mgoXU79w7yTWpm2XzJsISxQ==",
|
"integrity": "sha512-XSM2gYWTXxSYTwjmKWAoy4yR7AbAFDjpc5ZIivAiGXskM0fe5CdMPfs6InQRUcrYtVb2WZ/0HQ1/jeh3JW78SA==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@stencil/core": "^4.35.3"
|
"@stencil/core": "^4.43.5"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/is-arrayish": {
|
"node_modules/is-arrayish": {
|
||||||
@@ -3304,9 +3233,9 @@
|
|||||||
"license": "Apache-2.0"
|
"license": "Apache-2.0"
|
||||||
},
|
},
|
||||||
"node_modules/less": {
|
"node_modules/less": {
|
||||||
"version": "4.8.0",
|
"version": "4.8.1",
|
||||||
"resolved": "https://registry.npmjs.org/less/-/less-4.8.0.tgz",
|
"resolved": "https://registry.npmjs.org/less/-/less-4.8.1.tgz",
|
||||||
"integrity": "sha512-7Y7DJBMbsW29UGjOG6NGvxQEx71AaDcrryBwYCMaFwn0kj8FkSueKN9r9WexVOetKEhXh38kL++WJncfkEpS+g==",
|
"integrity": "sha512-jQ3lRIo1aUtiWVYXZ7mk4+V4BjCGswF3IxTLJ+4RUta8ZiHh8lhkig2G8dya2eCcyR1dYUvzuV46EkJN8PSwww==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -3330,9 +3259,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss": {
|
"node_modules/lightningcss": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.33.0.tgz",
|
||||||
"integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==",
|
"integrity": "sha512-WkUDrojuJs0xkgGf2udWxa3yGBRxPtxUkB79i6aCZLRgc7PM8fZe9TosfPDcvEpQZbuFASnHYmRLBLUbmLOIIA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -3346,23 +3275,23 @@
|
|||||||
"url": "https://opencollective.com/parcel"
|
"url": "https://opencollective.com/parcel"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"lightningcss-android-arm64": "1.32.0",
|
"lightningcss-android-arm64": "1.33.0",
|
||||||
"lightningcss-darwin-arm64": "1.32.0",
|
"lightningcss-darwin-arm64": "1.33.0",
|
||||||
"lightningcss-darwin-x64": "1.32.0",
|
"lightningcss-darwin-x64": "1.33.0",
|
||||||
"lightningcss-freebsd-x64": "1.32.0",
|
"lightningcss-freebsd-x64": "1.33.0",
|
||||||
"lightningcss-linux-arm-gnueabihf": "1.32.0",
|
"lightningcss-linux-arm-gnueabihf": "1.33.0",
|
||||||
"lightningcss-linux-arm64-gnu": "1.32.0",
|
"lightningcss-linux-arm64-gnu": "1.33.0",
|
||||||
"lightningcss-linux-arm64-musl": "1.32.0",
|
"lightningcss-linux-arm64-musl": "1.33.0",
|
||||||
"lightningcss-linux-x64-gnu": "1.32.0",
|
"lightningcss-linux-x64-gnu": "1.33.0",
|
||||||
"lightningcss-linux-x64-musl": "1.32.0",
|
"lightningcss-linux-x64-musl": "1.33.0",
|
||||||
"lightningcss-win32-arm64-msvc": "1.32.0",
|
"lightningcss-win32-arm64-msvc": "1.33.0",
|
||||||
"lightningcss-win32-x64-msvc": "1.32.0"
|
"lightningcss-win32-x64-msvc": "1.33.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-android-arm64": {
|
"node_modules/lightningcss-android-arm64": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.33.0.tgz",
|
||||||
"integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==",
|
"integrity": "sha512-gEpRTalKdosp4Bb8qWtc2iOgE5SeIHlpS1up9bFq2wAyYhl1UdTObYiHe98zEM9SQvSoqQZ1IQD0JNpg3Ml5pg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -3381,9 +3310,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-darwin-arm64": {
|
"node_modules/lightningcss-darwin-arm64": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.33.0.tgz",
|
||||||
"integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==",
|
"integrity": "sha512-Sciaz8eenNTKn9b3t7+xr0ipTp9YxKQY4npwQ3mrRuL0BAVHBLyZxofhaKBAVtzmtRZ/zTyo0/to4B1uWG/Djg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -3402,9 +3331,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-darwin-x64": {
|
"node_modules/lightningcss-darwin-x64": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.33.0.tgz",
|
||||||
"integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==",
|
"integrity": "sha512-Z5UPAxzrjlWNNyGy6i65cJzzvgJ5D3T6wMvs+gWpY9d7qRhANrxqAp6LhxIgZhWEw18RfJTGcRxjuLIBr+m8XQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -3423,9 +3352,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-freebsd-x64": {
|
"node_modules/lightningcss-freebsd-x64": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.33.0.tgz",
|
||||||
"integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==",
|
"integrity": "sha512-QQM/Ti/hQajJwCY+RiWuCZ9sdtI/XQk7nDK5vC8kkdwixezOlDgvDx7+RT+QjK6FcFT4MpsuoBnHIo/O3StRRg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -3444,9 +3373,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-linux-arm-gnueabihf": {
|
"node_modules/lightningcss-linux-arm-gnueabihf": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.33.0.tgz",
|
||||||
"integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==",
|
"integrity": "sha512-N7FVBe6iS24MlM6R/4RBTxGhQheZGs7tiQ9U32UtF75NzP5Q7xWPRqLBCKxlRQRk3rY1jCIPLzx7WzOhuUIRLQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
@@ -3465,13 +3394,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-linux-arm64-gnu": {
|
"node_modules/lightningcss-linux-arm64-gnu": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.33.0.tgz",
|
||||||
"integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==",
|
"integrity": "sha512-j2v/itmy4HlNxlc6voKXYgBqNi0Ng2LShg4z7GufpEgs05P+2suBVyi9I6YHq5uoVFx9ETin3eCEhLVyXGQnKg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"libc": [
|
||||||
|
"glibc"
|
||||||
|
],
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3486,13 +3418,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-linux-arm64-musl": {
|
"node_modules/lightningcss-linux-arm64-musl": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.33.0.tgz",
|
||||||
"integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==",
|
"integrity": "sha512-yiO5ROMuYQgXbC60yjZU5CYSFZGKXL0HFATXt9mHJn1+zW55oCtMI9NfcVhYLMFDL7gV7oBPon/EmMMGg2OvtQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"libc": [
|
||||||
|
"musl"
|
||||||
|
],
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3507,13 +3442,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-linux-x64-gnu": {
|
"node_modules/lightningcss-linux-x64-gnu": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.33.0.tgz",
|
||||||
"integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==",
|
"integrity": "sha512-ar+Ju7LmcN0Jo4FpL4hpFybwNG9/3A/Br5KW2n2jyODg3MEZXaDYADdemoNS+BDNfMgKvylJLj4S5tyRActuAg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"libc": [
|
||||||
|
"glibc"
|
||||||
|
],
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3528,13 +3466,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-linux-x64-musl": {
|
"node_modules/lightningcss-linux-x64-musl": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.33.0.tgz",
|
||||||
"integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==",
|
"integrity": "sha512-RYiYbkokw0trfKqqzfF55lginwEPrD3OJDfTuJzFs1MK6iFnDenaz1fqLLtX4ITG3OktJQXOeTaw1awrBAlZPw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"libc": [
|
||||||
|
"musl"
|
||||||
|
],
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3549,9 +3490,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-win32-arm64-msvc": {
|
"node_modules/lightningcss-win32-arm64-msvc": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.33.0.tgz",
|
||||||
"integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==",
|
"integrity": "sha512-1K+MPfLSFVpphzpdbfkhlWk6wBrTObBzS2T6db10PNOZgR9GoVsAWzwNyuhUYYbTp23j+4RrncfujZ4uAzXvwA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
@@ -3570,9 +3511,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/lightningcss-win32-x64-msvc": {
|
"node_modules/lightningcss-win32-x64-msvc": {
|
||||||
"version": "1.32.0",
|
"version": "1.33.0",
|
||||||
"resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz",
|
"resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.33.0.tgz",
|
||||||
"integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==",
|
"integrity": "sha512-OlEICDx/Xl0FqSp4bry8zFnCvGpig3Gl4gCquvYwHuqJKEC1+n9NgDniFvqHGmMv1ZkqDJrDqKKSykTDX+ehuA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
@@ -3727,9 +3668,9 @@
|
|||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/nanoid": {
|
"node_modules/nanoid": {
|
||||||
"version": "3.3.16",
|
"version": "3.3.18",
|
||||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.16.tgz",
|
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.18.tgz",
|
||||||
"integrity": "sha512-bzlKTyNJ7+LdGIIwy8ijFpIqEQIvafahV7eYykJ8Cvh42EdJeODoJ6gUJXpQJvej1BddH8OqTXZNE/KfbWAu8Q==",
|
"integrity": "sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@@ -3764,9 +3705,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/node-releases": {
|
"node_modules/node-releases": {
|
||||||
"version": "2.0.51",
|
"version": "2.0.53",
|
||||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.51.tgz",
|
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.53.tgz",
|
||||||
"integrity": "sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ==",
|
"integrity": "sha512-D9UOmYG3UH1V+ENW56t5QXBwJw1YEY18ruVeus89Rw+SyIgjPkCO84bRzO3uNIYosJbNwiabWVn48o3uJLjxFQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
@@ -3812,15 +3753,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/ol": {
|
"node_modules/ol": {
|
||||||
"version": "10.9.0",
|
"version": "10.10.0",
|
||||||
"resolved": "https://registry.npmjs.org/ol/-/ol-10.9.0.tgz",
|
"resolved": "https://registry.npmjs.org/ol/-/ol-10.10.0.tgz",
|
||||||
"integrity": "sha512-svbbgVQUmEHaKpLQ8kRySojs59Brvgl2zYIrqG9eQNXGfsbi55rQasZIDpwpQzDL6OlzrUb0H4hQaiX9wDoGmA==",
|
"integrity": "sha512-tLPKn6zl+6uWdPufYlqG/lQzuVUTVmfwahQqVr5+wZNyZecyAtIhMTyOtKpu7ooNDLY2sEjKZNXw9HL+sOjC1A==",
|
||||||
"license": "BSD-2-Clause",
|
"license": "BSD-2-Clause",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/rbush": "4.0.0",
|
"@types/rbush": "4.0.0",
|
||||||
"earcut": "^3.0.0",
|
"earcut": "^3.0.0",
|
||||||
"geotiff": "^3.0.5 || ^3.1.0-beta.0",
|
"geotiff": "^3.1.0-beta.0",
|
||||||
"pbf": "4.0.1",
|
"pbf": "5.1.2",
|
||||||
"rbush": "^4.0.0",
|
"rbush": "^4.0.0",
|
||||||
"zarrita": "^0.7.1"
|
"zarrita": "^0.7.1"
|
||||||
},
|
},
|
||||||
@@ -3830,9 +3771,19 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/pako": {
|
"node_modules/pako": {
|
||||||
"version": "2.1.0",
|
"version": "2.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/pako/-/pako-2.2.0.tgz",
|
||||||
"integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==",
|
"integrity": "sha512-zJq6RP/5q+TO2OpFV3FHzlPnFjmkb7Nc99a5SNjJE+uu/PkpChs+NIZSSzbBoD+6kjiISXjfYdwj1ZRQ81dz/w==",
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/puzrin"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/nodeca"
|
||||||
|
}
|
||||||
|
],
|
||||||
"license": "(MIT AND Zlib)"
|
"license": "(MIT AND Zlib)"
|
||||||
},
|
},
|
||||||
"node_modules/parent-module": {
|
"node_modules/parent-module": {
|
||||||
@@ -3884,9 +3835,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/pbf": {
|
"node_modules/pbf": {
|
||||||
"version": "4.0.1",
|
"version": "5.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/pbf/-/pbf-4.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/pbf/-/pbf-5.1.2.tgz",
|
||||||
"integrity": "sha512-SuLdBvS42z33m8ejRbInMapQe8n0D3vN/Xd5fmWM3tufNgRQFBpaW2YVJxQZV4iPNqb0vEFvssMEo5w9c6BTIA==",
|
"integrity": "sha512-mnvGdvOrIvJOBGUEdGkrVXjN8E/VkIJCkf2eS1DH2yv82ORUlLttmDt0rWY38yYZmVwciZwBUvHM20qxBZf40w==",
|
||||||
"license": "BSD-3-Clause",
|
"license": "BSD-3-Clause",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"resolve-protobuf-schema": "^2.1.0"
|
"resolve-protobuf-schema": "^2.1.0"
|
||||||
@@ -3926,9 +3877,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/postcss": {
|
"node_modules/postcss": {
|
||||||
"version": "8.5.22",
|
"version": "8.5.26",
|
||||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.22.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.26.tgz",
|
||||||
"integrity": "sha512-KBDEIpLrvpv16pp3K0Fw+UCoZfopFjjgeB+0tA/aaThfEE74kKDLrgg603YvOWJyg3+WYtyq3xYsQWsIyZlPqQ==",
|
"integrity": "sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@@ -3946,7 +3897,7 @@
|
|||||||
],
|
],
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"nanoid": "^3.3.16",
|
"nanoid": "^3.3.17",
|
||||||
"picocolors": "^1.1.1",
|
"picocolors": "^1.1.1",
|
||||||
"source-map-js": "^1.2.1"
|
"source-map-js": "^1.2.1"
|
||||||
},
|
},
|
||||||
@@ -4259,13 +4210,13 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/rolldown": {
|
"node_modules/rolldown": {
|
||||||
"version": "1.1.5",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.2.4.tgz",
|
||||||
"integrity": "sha512-t9z29cJjXf/vxQ8dyhCSpt6H6aSwHTk8cT5I3iy6SMXuFpk5mB6PL6XfC8PCwrPTx93udwKUm9HRteAlTGBLiA==",
|
"integrity": "sha512-rSr7irW0K7QRWzjdJXqZowkcRdDtjRduh43rBltnVKd0VFq839l1lJoDvGJb6gl7+4rTTCrPWu+YfujUL8Ug7w==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@oxc-project/types": "=0.139.0",
|
"@oxc-project/types": "=0.144.0",
|
||||||
"@rolldown/pluginutils": "^1.0.0"
|
"@rolldown/pluginutils": "^1.0.0"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -4275,21 +4226,20 @@
|
|||||||
"node": "^20.19.0 || >=22.12.0"
|
"node": "^20.19.0 || >=22.12.0"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"@rolldown/binding-android-arm64": "1.1.5",
|
"@rolldown/binding-android-arm64": "1.2.4",
|
||||||
"@rolldown/binding-darwin-arm64": "1.1.5",
|
"@rolldown/binding-darwin-arm64": "1.2.4",
|
||||||
"@rolldown/binding-darwin-x64": "1.1.5",
|
"@rolldown/binding-darwin-x64": "1.2.4",
|
||||||
"@rolldown/binding-freebsd-x64": "1.1.5",
|
"@rolldown/binding-freebsd-x64": "1.2.4",
|
||||||
"@rolldown/binding-linux-arm-gnueabihf": "1.1.5",
|
"@rolldown/binding-linux-arm-gnueabihf": "1.2.4",
|
||||||
"@rolldown/binding-linux-arm64-gnu": "1.1.5",
|
"@rolldown/binding-linux-arm64-gnu": "1.2.4",
|
||||||
"@rolldown/binding-linux-arm64-musl": "1.1.5",
|
"@rolldown/binding-linux-arm64-musl": "1.2.4",
|
||||||
"@rolldown/binding-linux-ppc64-gnu": "1.1.5",
|
"@rolldown/binding-linux-ppc64-gnu": "1.2.4",
|
||||||
"@rolldown/binding-linux-s390x-gnu": "1.1.5",
|
"@rolldown/binding-linux-s390x-gnu": "1.2.4",
|
||||||
"@rolldown/binding-linux-x64-gnu": "1.1.5",
|
"@rolldown/binding-linux-x64-gnu": "1.2.4",
|
||||||
"@rolldown/binding-linux-x64-musl": "1.1.5",
|
"@rolldown/binding-linux-x64-musl": "1.2.4",
|
||||||
"@rolldown/binding-openharmony-arm64": "1.1.5",
|
"@rolldown/binding-openharmony-arm64": "1.2.4",
|
||||||
"@rolldown/binding-wasm32-wasi": "1.1.5",
|
"@rolldown/binding-win32-arm64-msvc": "1.2.4",
|
||||||
"@rolldown/binding-win32-arm64-msvc": "1.1.5",
|
"@rolldown/binding-win32-x64-msvc": "1.2.4"
|
||||||
"@rolldown/binding-win32-x64-msvc": "1.1.5"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/run-parallel": {
|
"node_modules/run-parallel": {
|
||||||
@@ -5056,9 +5006,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/update-browserslist-db": {
|
"node_modules/update-browserslist-db": {
|
||||||
"version": "1.2.3",
|
"version": "1.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz",
|
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.3.1.tgz",
|
||||||
"integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==",
|
"integrity": "sha512-ZZ61DsRsOnakl74HAmp3oSN4aXUmEWXf+i/yv0h7tIBfICc3VdrFErQKUUKPgu3AMsTUMbcongALEN4l6GSUrQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@@ -5094,16 +5044,16 @@
|
|||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/vite": {
|
"node_modules/vite": {
|
||||||
"version": "8.1.5",
|
"version": "8.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/vite/-/vite-8.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/vite/-/vite-8.2.1.tgz",
|
||||||
"integrity": "sha512-7ULLwsCdYx/nRyrpiEwvqb5TFHrMVZyBt+rg/OAXT7rgj/z+DtTDyKFeLAdDkubDVDKD8jOsndmy7m55XcfUsw==",
|
"integrity": "sha512-EU/eS7BH3XROHh2YnBefjM6DBKA6ZeMZEYQbj7NLWg5wHYlhB8B/Mayd5XsgWq+NFYccDOTemRpdETWR6Ka/lw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"lightningcss": "^1.32.0",
|
"lightningcss": "^1.33.0",
|
||||||
"picomatch": "^4.0.5",
|
"picomatch": "^4.0.5",
|
||||||
"postcss": "^8.5.17",
|
"postcss": "^8.5.25",
|
||||||
"rolldown": "~1.1.5",
|
"rolldown": "~1.2.1",
|
||||||
"tinyglobby": "^0.2.17"
|
"tinyglobby": "^0.2.17"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -5120,7 +5070,7 @@
|
|||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@types/node": "^20.19.0 || >=22.12.0",
|
"@types/node": "^20.19.0 || >=22.12.0",
|
||||||
"@vitejs/devtools": "^0.3.0",
|
"@vitejs/devtools": "^0.4.0",
|
||||||
"esbuild": "^0.27.0 || ^0.28.0",
|
"esbuild": "^0.27.0 || ^0.28.0",
|
||||||
"jiti": ">=1.21.0",
|
"jiti": ">=1.21.0",
|
||||||
"less": "^4.0.0",
|
"less": "^4.0.0",
|
||||||
|
|||||||
@@ -23,18 +23,18 @@
|
|||||||
"not dead"
|
"not dead"
|
||||||
],
|
],
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ionicons": "^8.0.13",
|
"ionicons": "^8.1.0",
|
||||||
"normalize.css": "8.0.1",
|
"normalize.css": "8.0.1",
|
||||||
"ol": "^10.9.0",
|
"ol": "^10.10.0",
|
||||||
"swiped-events": "1.2.0"
|
"swiped-events": "1.2.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@biomejs/biome": "2.5.5",
|
"@biomejs/biome": "2.5.7",
|
||||||
"@types/node": "^26.1.1",
|
"@types/node": "^26.2.0",
|
||||||
"browserslist": "^4.28.7",
|
"browserslist": "^4.28.8",
|
||||||
"browserslist-to-esbuild": "^2.1.1",
|
"browserslist-to-esbuild": "^2.1.1",
|
||||||
"edge.js": "^6.5.1",
|
"edge.js": "^6.5.1",
|
||||||
"less": "^4.8.0",
|
"less": "^4.8.1",
|
||||||
"mathjs": "^15.2.0",
|
"mathjs": "^15.2.0",
|
||||||
"sharp": "~0.35.3",
|
"sharp": "~0.35.3",
|
||||||
"sort-package-json": "^4.0.0",
|
"sort-package-json": "^4.0.0",
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
"stylelint-prettier": "^5.0.3",
|
"stylelint-prettier": "^5.0.3",
|
||||||
"svgo": "^4.0.2",
|
"svgo": "^4.0.2",
|
||||||
"typescript": "~7.0.2",
|
"typescript": "~7.0.2",
|
||||||
"vite": "^8.1.5",
|
"vite": "^8.2.1",
|
||||||
"vite-bundle-analyzer": "^1.3.9"
|
"vite-bundle-analyzer": "^1.3.9"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -80,7 +80,12 @@ export default class Calculator extends Plugin {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
const node = Calculator.math.parse(searchInput.value);
|
const node = Calculator.math.parse(searchInput.value);
|
||||||
return `${node.toString()} = ${node.evaluate()}`;
|
const value = node.evaluate();
|
||||||
|
if (typeof value !== "number") {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
return `${node.toString()} = ${value}`;
|
||||||
} catch {
|
} catch {
|
||||||
// not a compatible math expression
|
// not a compatible math expression
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ export const appendAnswerElement = (element: HTMLElement | string | number): voi
|
|||||||
|
|
||||||
if (!(element instanceof HTMLElement)) {
|
if (!(element instanceof HTMLElement)) {
|
||||||
const span = document.createElement("span");
|
const span = document.createElement("span");
|
||||||
span.innerHTML = element.toString();
|
span.textContent = element.toString();
|
||||||
// biome-ignore lint/style/noParameterAssign: TODO
|
// biome-ignore lint/style/noParameterAssign: TODO
|
||||||
element = span;
|
element = span;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
search:
|
search:
|
||||||
safe_search: 0
|
safe_search: 0
|
||||||
autocomplete: ""
|
autocomplete: "duckduckgo"
|
||||||
favicon_resolver: ""
|
favicon_resolver: ""
|
||||||
default_lang: ""
|
default_lang: ""
|
||||||
ban_time_on_fail: 5
|
ban_time_on_fail: 5
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
- ``2``: Strict
|
- ``2``: Strict
|
||||||
|
|
||||||
``autocomplete``:
|
``autocomplete``:
|
||||||
Existing autocomplete backends, leave blank to turn it off.
|
Existing autocomplete backends, set blank to turn it off.
|
||||||
|
|
||||||
- ``360search``
|
- ``360search``
|
||||||
- ``baidu``
|
- ``baidu``
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
limiter: false
|
limiter: false
|
||||||
public_instance: false
|
public_instance: false
|
||||||
image_proxy: false
|
image_proxy: false
|
||||||
method: "POST"
|
method: "GET"
|
||||||
default_http_headers:
|
default_http_headers:
|
||||||
X-Content-Type-Options : nosniff
|
X-Content-Type-Options : nosniff
|
||||||
X-Download-Options : noopen
|
X-Download-Options : noopen
|
||||||
@@ -58,8 +58,8 @@
|
|||||||
|
|
||||||
``method`` : ``GET`` | ``POST``
|
``method`` : ``GET`` | ``POST``
|
||||||
|
|
||||||
HTTP method. By defaults ``POST`` is used / The ``POST`` method has the
|
HTTP method. By default, ``GET`` is used / The ``POST`` method has the
|
||||||
advantage with some WEB browsers that the history is not easy to read, but
|
advantage with some browsers that the history is not saved, but
|
||||||
there are also various disadvantages that sometimes **severely restrict the
|
there are also various disadvantages that sometimes **severely restrict the
|
||||||
ease of use for the end user** (e.g. back button to jump back to the previous
|
ease of use for the end user** (e.g. back button to jump back to the previous
|
||||||
search page and drag & drop of search term to new tabs do not work as
|
search page and drag & drop of search term to new tabs do not work as
|
||||||
|
|||||||
8
docs/dev/engines/online/jina.rst
Normal file
8
docs/dev/engines/online/jina.rst
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
.. _jina engine:
|
||||||
|
|
||||||
|
===========
|
||||||
|
Jina Engine
|
||||||
|
===========
|
||||||
|
|
||||||
|
.. automodule:: searx.engines.jina
|
||||||
|
:members:
|
||||||
8
docs/dev/engines/online/yandex_api.rst
Normal file
8
docs/dev/engines/online/yandex_api.rst
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
.. _yandex api engine:
|
||||||
|
|
||||||
|
=================
|
||||||
|
Yandex Search API
|
||||||
|
=================
|
||||||
|
|
||||||
|
.. automodule:: searx.engines.yandex_api
|
||||||
|
:members:
|
||||||
@@ -2,9 +2,9 @@ mock==5.2.0
|
|||||||
nose2[coverage_plugin]==0.16.0
|
nose2[coverage_plugin]==0.16.0
|
||||||
cov-core==1.15.0
|
cov-core==1.15.0
|
||||||
black==25.9.0
|
black==25.9.0
|
||||||
pylint==4.0.6
|
pylint==4.0.7
|
||||||
splinter==0.21.0
|
splinter==0.21.0
|
||||||
selenium==4.46.0
|
selenium==4.47.0
|
||||||
Sphinx==8.2.3;python_version <= "3.11"
|
Sphinx==8.2.3;python_version <= "3.11"
|
||||||
Sphinx==9.1.0; python_version > "3.11"
|
Sphinx==9.1.0; python_version > "3.11"
|
||||||
sphinx-issues==6.0.0
|
sphinx-issues==6.0.0
|
||||||
@@ -18,11 +18,11 @@ myst-parser==5.0.0
|
|||||||
linuxdoc==20260504
|
linuxdoc==20260504
|
||||||
aiounittest==1.5.0
|
aiounittest==1.5.0
|
||||||
yamllint==1.38.0
|
yamllint==1.38.0
|
||||||
wlc==2.1.0
|
wlc==2.1.1
|
||||||
coloredlogs==15.0.1
|
coloredlogs==15.0.1
|
||||||
docutils>=0.21.2;python_version <= "3.11"
|
docutils>=0.21.2;python_version <= "3.11"
|
||||||
docutils>=0.22.4; python_version > "3.11"
|
docutils>=0.22.4; python_version > "3.11"
|
||||||
parameterized==0.9.0
|
parameterized==0.9.0
|
||||||
granian[reload]==2.7.9
|
granian[reload]==2.8.1
|
||||||
basedpyright==1.39.9
|
basedpyright==1.39.9
|
||||||
types-lxml==2026.2.16
|
types-lxml==2026.2.16
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
granian==2.7.9
|
granian==2.8.1
|
||||||
granian[pname]==2.7.9
|
granian[pname]==2.8.1
|
||||||
|
|||||||
@@ -8,12 +8,12 @@ pygments==2.20.0
|
|||||||
python-dateutil==2.9.0.post0
|
python-dateutil==2.9.0.post0
|
||||||
pyyaml==6.0.3
|
pyyaml==6.0.3
|
||||||
httpx[http2]==0.28.1
|
httpx[http2]==0.28.1
|
||||||
httpx-socks[asyncio]==0.10.0
|
httpx-socks[asyncio]==0.13.1
|
||||||
sniffio==1.3.1
|
sniffio==1.3.1
|
||||||
valkey==6.1.1
|
valkey==6.1.1
|
||||||
markdown-it-py==4.2.0
|
markdown-it-py==4.2.0
|
||||||
msgspec==0.21.1
|
msgspec==0.21.1
|
||||||
typer==0.27.0
|
typer==0.27.1
|
||||||
isodate==0.7.2
|
isodate==0.7.2
|
||||||
whitenoise==6.12.0
|
whitenoise==6.12.0
|
||||||
typing-extensions==4.16.0
|
typing-extensions==4.16.0
|
||||||
|
|||||||
@@ -63,6 +63,20 @@ class ProxyFix:
|
|||||||
proxy_list: list[str] = cfg.get("botdetection.trusted_proxies", default=[])
|
proxy_list: list[str] = cfg.get("botdetection.trusted_proxies", default=[])
|
||||||
return [ip_network(net, strict=False) for net in proxy_list]
|
return [ip_network(net, strict=False) for net in proxy_list]
|
||||||
|
|
||||||
|
def is_trusted_proxy(
|
||||||
|
self,
|
||||||
|
addr: IPv4Address | IPv6Address | None,
|
||||||
|
trusted_proxies: list[IPv4Network | IPv6Network],
|
||||||
|
) -> bool:
|
||||||
|
if addr is None:
|
||||||
|
return False
|
||||||
|
|
||||||
|
for net in trusted_proxies:
|
||||||
|
if addr.version == net.version and addr in net:
|
||||||
|
return True
|
||||||
|
|
||||||
|
return False
|
||||||
|
|
||||||
def trusted_remote_addr(
|
def trusted_remote_addr(
|
||||||
self,
|
self,
|
||||||
x_forwarded_for: list[IPv4Address | IPv6Address],
|
x_forwarded_for: list[IPv4Address | IPv6Address],
|
||||||
@@ -70,16 +84,8 @@ class ProxyFix:
|
|||||||
) -> str:
|
) -> str:
|
||||||
# always rtl
|
# always rtl
|
||||||
for addr in reversed(x_forwarded_for):
|
for addr in reversed(x_forwarded_for):
|
||||||
trust: bool = False
|
if not self.is_trusted_proxy(addr, trusted_proxies):
|
||||||
|
logger.debug("client address from X-Forwarded-For: %s", addr)
|
||||||
for net in trusted_proxies:
|
|
||||||
if addr.version == net.version and addr in net:
|
|
||||||
logger.debug("trust proxy %s (member of %s)", addr, net)
|
|
||||||
trust = True
|
|
||||||
break
|
|
||||||
|
|
||||||
# client address
|
|
||||||
if not trust:
|
|
||||||
return addr.compressed
|
return addr.compressed
|
||||||
|
|
||||||
# fallback to first address
|
# fallback to first address
|
||||||
@@ -95,19 +101,21 @@ class ProxyFix:
|
|||||||
# in this function!
|
# in this function!
|
||||||
|
|
||||||
orig_remote_addr: str | None = environ.pop("REMOTE_ADDR")
|
orig_remote_addr: str | None = environ.pop("REMOTE_ADDR")
|
||||||
|
orig_remote_ip: IPv4Address | IPv6Address | None = None
|
||||||
|
|
||||||
# Validate the IPs involved in this game and delete all invalid ones
|
# Validate the IPs involved in this game and delete all invalid ones
|
||||||
# from the WSGI environment.
|
# from the WSGI environment.
|
||||||
|
|
||||||
if orig_remote_addr:
|
if orig_remote_addr:
|
||||||
try:
|
try:
|
||||||
addr = ip_address(orig_remote_addr)
|
orig_remote_ip = ip_address(orig_remote_addr)
|
||||||
if addr.version == 6 and addr.ipv4_mapped:
|
if orig_remote_ip.version == 6 and orig_remote_ip.ipv4_mapped:
|
||||||
addr = addr.ipv4_mapped
|
orig_remote_ip = orig_remote_ip.ipv4_mapped
|
||||||
orig_remote_addr = addr.compressed
|
orig_remote_addr = orig_remote_ip.compressed
|
||||||
except ValueError as exc:
|
except ValueError as exc:
|
||||||
logger.error("REMOTE_ADDR: %s / discard REMOTE_ADDR from WSGI environment", exc)
|
logger.error("REMOTE_ADDR: %s / discard REMOTE_ADDR from WSGI environment", exc)
|
||||||
orig_remote_addr = None
|
orig_remote_addr = None
|
||||||
|
orig_remote_ip = None
|
||||||
|
|
||||||
x_real_ip: str | None = environ.get("HTTP_X_REAL_IP")
|
x_real_ip: str | None = environ.get("HTTP_X_REAL_IP")
|
||||||
if x_real_ip:
|
if x_real_ip:
|
||||||
@@ -141,11 +149,13 @@ class ProxyFix:
|
|||||||
if not x_forwarded_for and not x_real_ip:
|
if not x_forwarded_for and not x_real_ip:
|
||||||
log_error_only_once("X-Forwarded-For nor X-Real-IP header is set!")
|
log_error_only_once("X-Forwarded-For nor X-Real-IP header is set!")
|
||||||
|
|
||||||
if x_forwarded_for and not trusted_proxies:
|
if x_forwarded_for or x_real_ip:
|
||||||
log_error_only_once("missing botdetection.trusted_proxies config")
|
if not trusted_proxies:
|
||||||
# without trusted_proxies, this variable is useless for determining
|
log_error_only_once("missing botdetection.trusted_proxies config")
|
||||||
# the real IP
|
|
||||||
x_forwarded_for = []
|
if not self.is_trusted_proxy(orig_remote_ip, trusted_proxies):
|
||||||
|
x_forwarded_for = []
|
||||||
|
x_real_ip = None
|
||||||
|
|
||||||
# securing the WSGI environment variables that are adjusted
|
# securing the WSGI environment variables that are adjusted
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,18 @@
|
|||||||
# SPDX-License-Identifier: AGPL-3.0-or-later
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
||||||
"""Deviantart (Images)"""
|
"""Deviantart (Images)"""
|
||||||
|
|
||||||
|
import typing as t
|
||||||
|
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
from lxml import html
|
from lxml import html
|
||||||
|
|
||||||
|
from searx.result_types import EngineResults
|
||||||
from searx.utils import extract_text, eval_xpath, eval_xpath_list
|
from searx.utils import extract_text, eval_xpath, eval_xpath_list
|
||||||
|
|
||||||
|
if t.TYPE_CHECKING:
|
||||||
|
from searx.extended_types import SXNG_Response
|
||||||
|
from searx.search.processors import OnlineParams
|
||||||
|
|
||||||
# about
|
# about
|
||||||
about = {
|
about = {
|
||||||
"website": 'https://www.deviantart.com/',
|
"website": 'https://www.deviantart.com/',
|
||||||
@@ -23,63 +30,62 @@ paging = True
|
|||||||
# search-url
|
# search-url
|
||||||
base_url = 'https://www.deviantart.com'
|
base_url = 'https://www.deviantart.com'
|
||||||
|
|
||||||
results_xpath = '//div[@class="V_S0t_"]/div/div/a'
|
results_xpath = '//div[@data-testid="content_row"]//a[.//*[@data-testid="thumb"]]'
|
||||||
url_xpath = './@href'
|
img_src_xpath = './/img/@srcset'
|
||||||
thumbnail_src_xpath = './div/img/@src'
|
thumbnail_src_xpath = './/img/@src'
|
||||||
img_src_xpath = './div/img/@srcset'
|
author_xpath = './/*[@property="schema:name"]/@content'
|
||||||
title_xpath = './@aria-label'
|
cursor_xpath = '//a[contains(@href, "cursor=") and contains(., "Next")]/@href'
|
||||||
premium_xpath = '../div/div/div/text()'
|
|
||||||
premium_keytext = 'Watch the artist to view this deviation'
|
|
||||||
cursor_xpath = '(//a[@class="vQ2brP"]/@href)[last()]'
|
|
||||||
|
|
||||||
|
|
||||||
def request(query, params):
|
def request(query: str, params: "OnlineParams"):
|
||||||
|
|
||||||
# https://www.deviantart.com/search?q=foo
|
# https://www.deviantart.com/search?q=foo
|
||||||
|
|
||||||
nextpage_url = params['engine_data'].get('nextpage')
|
args = {'q': query}
|
||||||
# don't use nextpage when user selected to jump back to page 1
|
if params['pageno'] > 1:
|
||||||
if params['pageno'] > 1 and nextpage_url is not None:
|
cursor = params['engine_data'].get('cursor')
|
||||||
params['url'] = nextpage_url
|
if cursor:
|
||||||
else:
|
args['cursor'] = cursor
|
||||||
params['url'] = f"{base_url}/search?{urllib.parse.urlencode({'q': query})}"
|
|
||||||
|
|
||||||
return params
|
params['url'] = f"{base_url}/search?{urllib.parse.urlencode(args)}"
|
||||||
|
|
||||||
|
|
||||||
def response(resp):
|
def response(resp: "SXNG_Response") -> EngineResults:
|
||||||
|
|
||||||
results = []
|
res = EngineResults()
|
||||||
dom = html.fromstring(resp.text)
|
dom = html.fromstring(resp.text)
|
||||||
|
|
||||||
for result in eval_xpath_list(dom, results_xpath):
|
for result in eval_xpath_list(dom, results_xpath):
|
||||||
# skip images that are blurred
|
thumbnail_src = extract_text(eval_xpath(result, thumbnail_src_xpath))
|
||||||
_text = extract_text(eval_xpath(result, premium_xpath))
|
|
||||||
if _text and premium_keytext in _text:
|
|
||||||
continue
|
|
||||||
img_src = extract_text(eval_xpath(result, img_src_xpath))
|
img_src = extract_text(eval_xpath(result, img_src_xpath))
|
||||||
|
# mature locked thumbs have blur transform (blur_15, blur_30 etc..)
|
||||||
|
if ',blur_' in f'{thumbnail_src}{img_src}':
|
||||||
|
continue
|
||||||
if img_src:
|
if img_src:
|
||||||
img_src = img_src.split(' ')[0]
|
img_src = img_src.split(' ')[0]
|
||||||
parsed_url = urllib.parse.urlparse(img_src)
|
parsed_url = urllib.parse.urlparse(img_src)
|
||||||
img_src = parsed_url._replace(path=parsed_url.path.split('/v1')[0]).geturl()
|
img_src = parsed_url._replace(path=parsed_url.path.split('/v1')[0]).geturl()
|
||||||
|
|
||||||
results.append(
|
author = extract_text(eval_xpath(result, author_xpath))
|
||||||
{
|
|
||||||
'template': 'images.html',
|
res.add(
|
||||||
'url': extract_text(eval_xpath(result, url_xpath)),
|
res.types.Image(
|
||||||
'img_src': img_src,
|
template='images.html',
|
||||||
'thumbnail_src': extract_text(eval_xpath(result, thumbnail_src_xpath)),
|
url=result.get('href'),
|
||||||
'title': extract_text(eval_xpath(result, title_xpath)),
|
img_src=img_src or "",
|
||||||
}
|
thumbnail_src=thumbnail_src or "",
|
||||||
|
title=result.get('aria-label'),
|
||||||
|
author=author or "",
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
nextpage_url = extract_text(eval_xpath(dom, cursor_xpath))
|
nextpage_url = extract_text(eval_xpath(dom, cursor_xpath))
|
||||||
if nextpage_url:
|
cursor = urllib.parse.parse_qs(urllib.parse.urlparse(nextpage_url or '').query).get('cursor', [None])[0]
|
||||||
results.append(
|
if cursor:
|
||||||
{
|
res.add(
|
||||||
'engine_data': nextpage_url.replace("http://", "https://"),
|
res.types.LegacyResult(
|
||||||
'key': 'nextpage',
|
engine_data=cursor,
|
||||||
}
|
key='cursor',
|
||||||
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
return results
|
return res
|
||||||
|
|||||||
@@ -43,9 +43,10 @@ def init(_):
|
|||||||
|
|
||||||
def request(query: str, params: "OnlineParams"):
|
def request(query: str, params: "OnlineParams"):
|
||||||
params["url"] = f"{base_url}/api/{dogpile_categ}"
|
params["url"] = f"{base_url}/api/{dogpile_categ}"
|
||||||
|
params["headers"]["Origin"] = base_url
|
||||||
|
|
||||||
params["method"] = "POST"
|
params["method"] = "POST"
|
||||||
params["json"] = {"q": query, "qadf": safe_search_map[params["safesearch"]], "page": params["pageno"]}
|
params["json"] = {"q": query, "qadf": safe_search_map[params["safesearch"]], "page": params["pageno"]}
|
||||||
return params
|
|
||||||
|
|
||||||
|
|
||||||
def response(resp: "SXNG_Response"):
|
def response(resp: "SXNG_Response"):
|
||||||
|
|||||||
89
searx/engines/jina.py
Normal file
89
searx/engines/jina.py
Normal file
@@ -0,0 +1,89 @@
|
|||||||
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
||||||
|
"""Jina is a search AI and part of Elastic, the company behind ElasticSearch.
|
||||||
|
|
||||||
|
The engine requires an API key, you can get one from the
|
||||||
|
`API dashboard <https://jina.ai/api-dashboard/>`_ without signup.
|
||||||
|
|
||||||
|
.. code:: yaml
|
||||||
|
|
||||||
|
- name: jina
|
||||||
|
engine: jina
|
||||||
|
shortcut: ji
|
||||||
|
api_key: "jina_..."
|
||||||
|
jina_engine: reader
|
||||||
|
inactive: false
|
||||||
|
|
||||||
|
By default, Jina's own index is used. You can change that by setting a different :py:obj:`jina_engine`.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import typing as t
|
||||||
|
from urllib.parse import urlencode
|
||||||
|
|
||||||
|
from dateutil import parser
|
||||||
|
from searx.result_types import EngineResults
|
||||||
|
|
||||||
|
if t.TYPE_CHECKING:
|
||||||
|
from searx.extended_types import SXNG_Response
|
||||||
|
from searx.search.processors import OnlineParams
|
||||||
|
|
||||||
|
|
||||||
|
about = {
|
||||||
|
"website": "https://jina.ai",
|
||||||
|
"wikidata_id": None,
|
||||||
|
"official_api_documentation": "https://s.jina.ai/docs",
|
||||||
|
"use_official_api": True,
|
||||||
|
"require_api_key": True,
|
||||||
|
"results": "JSON",
|
||||||
|
}
|
||||||
|
|
||||||
|
categories = ["general"]
|
||||||
|
paging = True
|
||||||
|
|
||||||
|
jina_engine = "reader"
|
||||||
|
"""Search mode. Currently supported values are 'reader', 'google' and 'bing'."""
|
||||||
|
|
||||||
|
base_url = "https://s.jina.ai"
|
||||||
|
api_key: str | None = None
|
||||||
|
|
||||||
|
|
||||||
|
def setup(_):
|
||||||
|
if not api_key:
|
||||||
|
raise ValueError("missing api key")
|
||||||
|
|
||||||
|
|
||||||
|
def request(query: str, params: "OnlineParams"):
|
||||||
|
# setting 'no-content' pushes the response time down to a third
|
||||||
|
args = {"q": query, "page": params["pageno"], "engine": jina_engine, "respondWith": "no-content"}
|
||||||
|
params["url"] = f"{base_url}/?{urlencode(args)}"
|
||||||
|
params["headers"].update(
|
||||||
|
{
|
||||||
|
"Accept": "application/json",
|
||||||
|
"Authorization": f"Bearer {api_key}",
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def response(resp: "SXNG_Response"):
|
||||||
|
res = EngineResults()
|
||||||
|
|
||||||
|
json_resp: dict[str, t.Any] = resp.json()
|
||||||
|
|
||||||
|
result: dict[str, str]
|
||||||
|
for result in json_resp["data"]:
|
||||||
|
published_date = None
|
||||||
|
if result.get("date"):
|
||||||
|
try:
|
||||||
|
published_date = parser.parse(result["date"])
|
||||||
|
except parser.ParserError:
|
||||||
|
pass
|
||||||
|
|
||||||
|
res.add(
|
||||||
|
res.types.MainResult(
|
||||||
|
url=result["url"],
|
||||||
|
title=result["title"],
|
||||||
|
content=result["description"],
|
||||||
|
publishedDate=published_date,
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
return res
|
||||||
@@ -6,6 +6,27 @@ Lofgren .
|
|||||||
.. _Marginalia Search:
|
.. _Marginalia Search:
|
||||||
https://about.marginalia-search.com/
|
https://about.marginalia-search.com/
|
||||||
|
|
||||||
|
|
||||||
|
.. _marginalia filters:
|
||||||
|
|
||||||
|
Marginalia Filters
|
||||||
|
=================
|
||||||
|
|
||||||
|
Custom filters enable server-side customization of Marginalia search results.
|
||||||
|
Filter definitions are written in XML and scoped to an API key. Filters can
|
||||||
|
not be used with the public API key ``public``. The
|
||||||
|
`Marginalia Filter Editor`_ can be used to create custom filters with a GUI.
|
||||||
|
Alternatively, filters can be written manually in XML. To associate a filter
|
||||||
|
definition with an API key, upload the XML data to the ``/filter/<NAME>`` API
|
||||||
|
endpoint, where ``<NAME>`` is the name for the newly created filter. For more
|
||||||
|
information, see the `Marginalia filters announcement blogpost`_ and the
|
||||||
|
official `Marginalia API documentation`_.
|
||||||
|
|
||||||
|
.. _Marginalia Filter Editor: https://marginalia-search.com/filters
|
||||||
|
.. _Marginalia filters announcement blogpost: https://www.marginalia.nu/log/a_127_index_filtering/
|
||||||
|
.. _Marginalia API documentation: https://about.marginalia-search.com/article/api/
|
||||||
|
|
||||||
|
|
||||||
Configuration
|
Configuration
|
||||||
=============
|
=============
|
||||||
|
|
||||||
@@ -13,6 +34,10 @@ The engine has the following required settings:
|
|||||||
|
|
||||||
- :py:obj:`api_key`
|
- :py:obj:`api_key`
|
||||||
|
|
||||||
|
The engine has the following optional settings:
|
||||||
|
|
||||||
|
- :py:obj:`filter_name`
|
||||||
|
|
||||||
You can configure a Marginalia engine by:
|
You can configure a Marginalia engine by:
|
||||||
|
|
||||||
.. code:: yaml
|
.. code:: yaml
|
||||||
@@ -21,6 +46,7 @@ You can configure a Marginalia engine by:
|
|||||||
engine: marginalia
|
engine: marginalia
|
||||||
shortcut: mar
|
shortcut: mar
|
||||||
api_key: ...
|
api_key: ...
|
||||||
|
filter_name: ...
|
||||||
|
|
||||||
Implementations
|
Implementations
|
||||||
===============
|
===============
|
||||||
@@ -29,6 +55,8 @@ Implementations
|
|||||||
|
|
||||||
import typing as t
|
import typing as t
|
||||||
from urllib.parse import urlencode
|
from urllib.parse import urlencode
|
||||||
|
|
||||||
|
from searx.network import get
|
||||||
from searx.utils import searxng_useragent
|
from searx.utils import searxng_useragent
|
||||||
from searx.result_types import EngineResults
|
from searx.result_types import EngineResults
|
||||||
from searx.extended_types import SXNG_Response
|
from searx.extended_types import SXNG_Response
|
||||||
@@ -54,6 +82,8 @@ api_key = None
|
|||||||
https://about.marginalia-search.com/article/api/
|
https://about.marginalia-search.com/article/api/
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
filter_name: str | None = None
|
||||||
|
"""The name of the custom filter to apply to each search."""
|
||||||
|
|
||||||
|
|
||||||
class ApiSearchResult(t.TypedDict):
|
class ApiSearchResult(t.TypedDict):
|
||||||
@@ -83,6 +113,25 @@ class ApiSearchResults(t.TypedDict):
|
|||||||
results: list[ApiSearchResult]
|
results: list[ApiSearchResult]
|
||||||
|
|
||||||
|
|
||||||
|
def _marginalia_headers() -> dict[str, t.Any]:
|
||||||
|
return {
|
||||||
|
"User-Agent": searxng_useragent(),
|
||||||
|
"API-Key": api_key,
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def _get_filter_names() -> list[str]:
|
||||||
|
|
||||||
|
resp = get(f"{base_url}/filter", headers=_marginalia_headers())
|
||||||
|
if resp.ok:
|
||||||
|
filter_names = resp.json()
|
||||||
|
else:
|
||||||
|
filter_names = []
|
||||||
|
if not isinstance(filter_names, list):
|
||||||
|
raise TypeError("marginalia api returned invalid filter list format")
|
||||||
|
return filter_names
|
||||||
|
|
||||||
|
|
||||||
def request(query: str, params: dict[str, t.Any]):
|
def request(query: str, params: dict[str, t.Any]):
|
||||||
|
|
||||||
query_params = {
|
query_params = {
|
||||||
@@ -91,10 +140,11 @@ def request(query: str, params: dict[str, t.Any]):
|
|||||||
"nsfw": min(params["safesearch"], 1),
|
"nsfw": min(params["safesearch"], 1),
|
||||||
"query": query,
|
"query": query,
|
||||||
}
|
}
|
||||||
|
if filter_name:
|
||||||
|
query_params["filter"] = filter_name
|
||||||
|
|
||||||
params["url"] = f"{base_url}/search?{urlencode(query_params)}"
|
params["url"] = f"{base_url}/search?{urlencode(query_params)}"
|
||||||
params["headers"]["User-Agent"] = searxng_useragent()
|
params["headers"].update(_marginalia_headers())
|
||||||
params["headers"]["API-Key"] = api_key
|
|
||||||
|
|
||||||
|
|
||||||
def response(resp: SXNG_Response):
|
def response(resp: SXNG_Response):
|
||||||
@@ -114,14 +164,18 @@ def response(resp: SXNG_Response):
|
|||||||
return res
|
return res
|
||||||
|
|
||||||
|
|
||||||
def init(engine_settings: dict[str, t.Any]):
|
def init(_: dict[str, t.Any]):
|
||||||
|
|
||||||
_api_key = engine_settings.get("api_key")
|
if not api_key:
|
||||||
if not _api_key:
|
|
||||||
logger.error("missing api_key: see https://about.marginalia-search.com/article/api")
|
logger.error("missing api_key: see https://about.marginalia-search.com/article/api")
|
||||||
return False
|
return False
|
||||||
|
|
||||||
if _api_key == "public":
|
if api_key == "public":
|
||||||
logger.error("invalid api_key (%s): see https://about.marginalia-search.com/article/api", api_key)
|
logger.error("invalid api_key (%s): see https://about.marginalia-search.com/article/api", api_key)
|
||||||
|
elif filter_name:
|
||||||
|
filter_names: list[str] = _get_filter_names()
|
||||||
|
if filter_name not in filter_names:
|
||||||
|
logger.error(f"invalid value for filter_name: '{filter_name}'")
|
||||||
|
return False
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
|||||||
217
searx/engines/yandex_api.py
Normal file
217
searx/engines/yandex_api.py
Normal file
@@ -0,0 +1,217 @@
|
|||||||
|
# SPDX-License-Identifier: AGPL-3.0-or-later
|
||||||
|
"""Yandex Search API (the official **paid** `Yandex Search API v2`_).
|
||||||
|
|
||||||
|
Unlike the :origin:`yandex <searx/engines/yandex.py>` engine (which scrapes the
|
||||||
|
public HTML interface and is prone to CAPTCHA blocking), this engine talks to
|
||||||
|
the official, paid Yandex Cloud Search API. It requires a Yandex Cloud account,
|
||||||
|
a *folder id* and an *API key*.
|
||||||
|
|
||||||
|
The API answers with a Base64-encoded XML document, which is decoded and
|
||||||
|
parsed here.
|
||||||
|
|
||||||
|
Configuration
|
||||||
|
=============
|
||||||
|
|
||||||
|
The engine is inactive by default because it needs credentials. To enable it,
|
||||||
|
set ``inactive: false`` and add your ``api_key`` and ``yandex_folder_id`` to
|
||||||
|
:origin:`searx/settings.yml`:
|
||||||
|
|
||||||
|
.. code:: yaml
|
||||||
|
|
||||||
|
- name: yandex api
|
||||||
|
engine: yandex_api
|
||||||
|
shortcut: yda
|
||||||
|
categories: [general, web]
|
||||||
|
inactive: false
|
||||||
|
api_key: "" # Yandex Cloud API key (``Api-Key``)
|
||||||
|
yandex_folder_id: "" # Yandex Cloud folder id
|
||||||
|
# optional, see below:
|
||||||
|
yandex_default_language: en
|
||||||
|
|
||||||
|
.. _Yandex Search API v2:
|
||||||
|
https://aistudio.yandex.ru/docs/en/search-api/api-ref/WebSearch/search.html
|
||||||
|
"""
|
||||||
|
|
||||||
|
import math
|
||||||
|
import typing as t
|
||||||
|
from base64 import b64decode
|
||||||
|
|
||||||
|
from lxml import etree
|
||||||
|
|
||||||
|
from searx.exceptions import SearxEngineAPIException
|
||||||
|
from searx.result_types import EngineResults
|
||||||
|
from searx.utils import extract_text
|
||||||
|
|
||||||
|
if t.TYPE_CHECKING:
|
||||||
|
from searx.extended_types import SXNG_Response
|
||||||
|
from searx.search.processors import OnlineParams
|
||||||
|
|
||||||
|
|
||||||
|
about = {
|
||||||
|
"website": "https://yandex.cloud/en/services/search-api",
|
||||||
|
"wikidata_id": "Q5281",
|
||||||
|
"official_api_documentation": "https://aistudio.yandex.ru/docs/en/search-api/api-ref/WebSearch/search.html",
|
||||||
|
"use_official_api": True,
|
||||||
|
"require_api_key": True,
|
||||||
|
"results": "XML",
|
||||||
|
}
|
||||||
|
|
||||||
|
# Engine configuration
|
||||||
|
categories = ["general", "web"]
|
||||||
|
paging = True
|
||||||
|
safesearch = True
|
||||||
|
|
||||||
|
# Credentials, overwritten via settings.yml
|
||||||
|
api_key: str = ""
|
||||||
|
"""Yandex Cloud API key, passed as ``Authorization: Api-Key <api_key>``."""
|
||||||
|
|
||||||
|
yandex_folder_id: str = ""
|
||||||
|
"""Yandex Cloud folder id the API key belongs to."""
|
||||||
|
|
||||||
|
# Search tuning, overwritten via settings.yml
|
||||||
|
yandex_default_language: str = "en"
|
||||||
|
"""Default query language. It selects the Yandex search domain (e.g. yandex.ru
|
||||||
|
for ``ru``, yandex.com for ``en``) and the language of the search-result
|
||||||
|
notifications, but only as a fallback -- a request whose own locale matches
|
||||||
|
:py:obj:`language_map` overrides it. Must be one of its keys: ``ru``, ``be``,
|
||||||
|
``kk``, ``uk``, ``tr`` or ``en``."""
|
||||||
|
|
||||||
|
region: str = ""
|
||||||
|
"""Optional Yandex `region id`.
|
||||||
|
Only meaningful together with ``SEARCH_TYPE_RU``.
|
||||||
|
|
||||||
|
__ https://aistudio.yandex.ru/docs/en/search-api/reference/regions.html
|
||||||
|
"""
|
||||||
|
|
||||||
|
page_size: int = 10
|
||||||
|
"""Number of results requested per page."""
|
||||||
|
|
||||||
|
base_url = "https://searchapi.api.cloud.yandex.net/v2/web/search"
|
||||||
|
|
||||||
|
# searxng safesearch level -> Yandex familyMode
|
||||||
|
safesearch_map = {
|
||||||
|
0: "FAMILY_MODE_NONE",
|
||||||
|
1: "FAMILY_MODE_MODERATE",
|
||||||
|
2: "FAMILY_MODE_STRICT",
|
||||||
|
}
|
||||||
|
|
||||||
|
# Map a query language to a (search_type, l10n) pair. It drives both the
|
||||||
|
# per-request override (when the query's locale matches) and the
|
||||||
|
# ``yandex_default_language`` default.
|
||||||
|
language_map = {
|
||||||
|
"ru": ("SEARCH_TYPE_RU", "LOCALIZATION_RU"),
|
||||||
|
"be": ("SEARCH_TYPE_BE", "LOCALIZATION_BE"),
|
||||||
|
"kk": ("SEARCH_TYPE_KK", "LOCALIZATION_KK"),
|
||||||
|
"uk": ("SEARCH_TYPE_RU", "LOCALIZATION_UK"),
|
||||||
|
"tr": ("SEARCH_TYPE_TR", "LOCALIZATION_TR"),
|
||||||
|
"en": ("SEARCH_TYPE_COM", "LOCALIZATION_EN"),
|
||||||
|
# Uzbek ('uz') is intentionally omitted: Yandex offers SEARCH_TYPE_UZ but no
|
||||||
|
# matching LOCALIZATION_UZ, so such queries fall back to the defaults above.
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def setup(_):
|
||||||
|
"""Validate credentials and paging limits when the engine is loaded."""
|
||||||
|
if not api_key or not yandex_folder_id:
|
||||||
|
raise SearxEngineAPIException("missing 'api_key' and/or 'yandex_folder_id' in engine settings")
|
||||||
|
if not 1 <= page_size <= 100:
|
||||||
|
raise SearxEngineAPIException("'page_size' must be in the range 1..100 (Yandex 'groupsOnPage')")
|
||||||
|
if yandex_default_language not in language_map:
|
||||||
|
raise SearxEngineAPIException(f"'yandex_default_language' must be one of {sorted(language_map)}")
|
||||||
|
|
||||||
|
|
||||||
|
def request(query: str, params: "OnlineParams"):
|
||||||
|
|
||||||
|
# Yandex returns at most 250 results for a query.
|
||||||
|
max_page = math.ceil(250 / page_size)
|
||||||
|
if params["pageno"] > max_page:
|
||||||
|
params["url"] = None
|
||||||
|
return
|
||||||
|
|
||||||
|
if len(query) > 400:
|
||||||
|
# Yandex rejects a 'queryText' longer than 400 characters; decline the
|
||||||
|
# request gracefully instead of provoking an API error.
|
||||||
|
params["url"] = None
|
||||||
|
return
|
||||||
|
|
||||||
|
lang = params["searxng_locale"].split("-")[0].lower()
|
||||||
|
req_search_type, req_l10n = language_map.get(lang, language_map[yandex_default_language])
|
||||||
|
|
||||||
|
body: dict[str, t.Any] = {
|
||||||
|
"query": {
|
||||||
|
"searchType": req_search_type,
|
||||||
|
"queryText": query,
|
||||||
|
"familyMode": safesearch_map[params["safesearch"]],
|
||||||
|
# the API uses a 0-based page index
|
||||||
|
"page": str(params["pageno"] - 1),
|
||||||
|
},
|
||||||
|
"groupSpec": {
|
||||||
|
"groupMode": "GROUP_MODE_FLAT",
|
||||||
|
"groupsOnPage": str(page_size),
|
||||||
|
"docsInGroup": "1",
|
||||||
|
},
|
||||||
|
"l10n": req_l10n,
|
||||||
|
"folderId": yandex_folder_id,
|
||||||
|
"responseFormat": "FORMAT_XML",
|
||||||
|
}
|
||||||
|
# Yandex accepts a 'region' only together with the Russian search type.
|
||||||
|
if region and req_search_type == "SEARCH_TYPE_RU":
|
||||||
|
body["region"] = region
|
||||||
|
|
||||||
|
params["method"] = "POST"
|
||||||
|
params["url"] = base_url
|
||||||
|
params["headers"]["Authorization"] = f"Api-Key {api_key}"
|
||||||
|
params["headers"]["Content-Type"] = "application/json"
|
||||||
|
params["json"] = body
|
||||||
|
|
||||||
|
|
||||||
|
def _raw_xml(resp: "SXNG_Response") -> bytes:
|
||||||
|
"""Extract and Base64-decode the XML payload out of the JSON envelope.
|
||||||
|
|
||||||
|
The synchronous ``/v2/web/search`` endpoint returns ``{"rawData":
|
||||||
|
"<base64>"}`` on success; HTTP errors are raised upstream via
|
||||||
|
``raise_for_httperror``.
|
||||||
|
"""
|
||||||
|
data: dict[str, t.Any] = resp.json()
|
||||||
|
|
||||||
|
raw_data = data.get("rawData")
|
||||||
|
if raw_data is None:
|
||||||
|
raise SearxEngineAPIException("Yandex Search API: no 'rawData' in response")
|
||||||
|
|
||||||
|
return b64decode(raw_data)
|
||||||
|
|
||||||
|
|
||||||
|
def response(resp: "SXNG_Response") -> EngineResults:
|
||||||
|
res = EngineResults()
|
||||||
|
|
||||||
|
dom = etree.fromstring(_raw_xml(resp)) # pylint: disable=c-extension-no-member
|
||||||
|
|
||||||
|
# An <error> inside <response> signals an application error. Code 15 simply
|
||||||
|
# means "nothing was found" and must not raise.
|
||||||
|
error = dom.find(".//response/error")
|
||||||
|
if error is not None:
|
||||||
|
if error.get("code") == "15":
|
||||||
|
return res
|
||||||
|
raise SearxEngineAPIException(f"Yandex Search API error {error.get('code')}: {error.text}")
|
||||||
|
|
||||||
|
for doc in dom.iterfind(".//doc"):
|
||||||
|
url = extract_text(doc.find("url"), allow_none=True)
|
||||||
|
title = extract_text(doc.find("title"), allow_none=True)
|
||||||
|
if not url or not title:
|
||||||
|
continue
|
||||||
|
|
||||||
|
content = extract_text(doc.find("headline"), allow_none=True)
|
||||||
|
if not content:
|
||||||
|
passages = doc.find("passages")
|
||||||
|
if passages is not None:
|
||||||
|
content = " ".join(extract_text(p) or "" for p in passages.iterfind("passage")).strip()
|
||||||
|
|
||||||
|
res.add(
|
||||||
|
res.types.MainResult(
|
||||||
|
url=url,
|
||||||
|
title=title,
|
||||||
|
content=content or "",
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
return res
|
||||||
@@ -133,7 +133,6 @@ def get_transport_for_socks_proxy(
|
|||||||
username=proxy_username,
|
username=proxy_username,
|
||||||
password=proxy_password,
|
password=proxy_password,
|
||||||
rdns=rdns,
|
rdns=rdns,
|
||||||
loop=get_loop(),
|
|
||||||
verify=_verify, # pyright: ignore[reportArgumentType]
|
verify=_verify, # pyright: ignore[reportArgumentType]
|
||||||
http2=http2,
|
http2=http2,
|
||||||
local_address=local_address,
|
local_address=local_address,
|
||||||
|
|||||||
@@ -41,9 +41,9 @@ search:
|
|||||||
# Filter results. 0: None, 1: Moderate, 2: Strict
|
# Filter results. 0: None, 1: Moderate, 2: Strict
|
||||||
safe_search: 0
|
safe_search: 0
|
||||||
# Existing autocomplete backends: "360search", "baidu", "bing", "brave", "dbpedia", "duckduckgo", "google",
|
# Existing autocomplete backends: "360search", "baidu", "bing", "brave", "dbpedia", "duckduckgo", "google",
|
||||||
# "kagi", "yandex", "privacywall", "mwmbl", "naver", "seznam", "sogou", "startpage", "swisscows", "quark",
|
# "yandex", "privacywall", "mwmbl", "naver", "seznam", "sogou", "startpage", "swisscows", "quark", "qwant",
|
||||||
# "qwant", "wikipedia" - leave blank to turn it off by default.
|
# "wikipedia" - set blank to turn it off by default.
|
||||||
autocomplete: ""
|
autocomplete: "duckduckgo"
|
||||||
# minimun characters to type before autocompleter starts
|
# minimun characters to type before autocompleter starts
|
||||||
autocomplete_min: 4
|
autocomplete_min: 4
|
||||||
# backend for the favicon near URL in search results.
|
# backend for the favicon near URL in search results.
|
||||||
@@ -107,11 +107,10 @@ server:
|
|||||||
image_proxy: false
|
image_proxy: false
|
||||||
# 1.0 and 1.1 are supported
|
# 1.0 and 1.1 are supported
|
||||||
http_protocol_version: "1.0"
|
http_protocol_version: "1.0"
|
||||||
# POST queries are "more secure!" but are also the source of hard-to-locate
|
# POST keeps search queries out of the browsers history, but causes UX issues.
|
||||||
# annoyances, which is why GET may be better for end users and their browsers.
|
|
||||||
# see https://github.com/searxng/searxng/pull/3619
|
# see https://github.com/searxng/searxng/pull/3619
|
||||||
# Is overwritten by ${SEARXNG_METHOD}
|
# Is overwritten by ${SEARXNG_METHOD}
|
||||||
method: "POST"
|
method: "GET"
|
||||||
default_http_headers:
|
default_http_headers:
|
||||||
X-Content-Type-Options: nosniff
|
X-Content-Type-Options: nosniff
|
||||||
X-Download-Options: noopen
|
X-Download-Options: noopen
|
||||||
@@ -762,6 +761,7 @@ engines:
|
|||||||
engine: deviantart
|
engine: deviantart
|
||||||
shortcut: da
|
shortcut: da
|
||||||
timeout: 3.0
|
timeout: 3.0
|
||||||
|
inactive: true
|
||||||
|
|
||||||
- name: devicons
|
- name: devicons
|
||||||
engine: devicons
|
engine: devicons
|
||||||
@@ -853,28 +853,28 @@ engines:
|
|||||||
shortcut: dog
|
shortcut: dog
|
||||||
dogpile_categ: search
|
dogpile_categ: search
|
||||||
categories: general
|
categories: general
|
||||||
disabled: true
|
inactive: true
|
||||||
|
|
||||||
- name: dogpile images
|
- name: dogpile images
|
||||||
engine: dogpile
|
engine: dogpile
|
||||||
shortcut: dogi
|
shortcut: dogi
|
||||||
dogpile_categ: images
|
dogpile_categ: images
|
||||||
categories: images
|
categories: images
|
||||||
disabled: true
|
inactive: true
|
||||||
|
|
||||||
- name: dogpile videos
|
- name: dogpile videos
|
||||||
engine: dogpile
|
engine: dogpile
|
||||||
shortcut: dogv
|
shortcut: dogv
|
||||||
dogpile_categ: videos
|
dogpile_categ: videos
|
||||||
categories: videos
|
categories: videos
|
||||||
disabled: true
|
inactive: true
|
||||||
|
|
||||||
- name: dogpile news
|
- name: dogpile news
|
||||||
engine: dogpile
|
engine: dogpile
|
||||||
shortcut: dogn
|
shortcut: dogn
|
||||||
dogpile_categ: news
|
dogpile_categ: news
|
||||||
categories: news
|
categories: news
|
||||||
disabled: true
|
inactive: true
|
||||||
|
|
||||||
# duckduckgo uses html.duckduckgo.com,
|
# duckduckgo uses html.duckduckgo.com,
|
||||||
# duckduckgo web uses duckduckgo.com
|
# duckduckgo web uses duckduckgo.com
|
||||||
@@ -1411,6 +1411,12 @@ engines:
|
|||||||
shortcut: iq
|
shortcut: iq
|
||||||
disabled: true
|
disabled: true
|
||||||
|
|
||||||
|
- name: jina
|
||||||
|
engine: jina
|
||||||
|
shortcut: ji
|
||||||
|
api_key: ""
|
||||||
|
inactive: true
|
||||||
|
|
||||||
# - name: kagi
|
# - name: kagi
|
||||||
# engine: kagi
|
# engine: kagi
|
||||||
# categories: [general, web]
|
# categories: [general, web]
|
||||||
@@ -2579,6 +2585,16 @@ engines:
|
|||||||
shortcut: ydi
|
shortcut: ydi
|
||||||
disabled: true
|
disabled: true
|
||||||
|
|
||||||
|
- name: yandex api
|
||||||
|
engine: yandex_api
|
||||||
|
categories: [general, web]
|
||||||
|
shortcut: yda
|
||||||
|
inactive: true
|
||||||
|
# api_key: ""
|
||||||
|
# folder_id: ""
|
||||||
|
# search_type: SEARCH_TYPE_COM
|
||||||
|
# l10n: LOCALIZATION_EN
|
||||||
|
|
||||||
- name: yandex music
|
- name: yandex music
|
||||||
engine: yandex_music
|
engine: yandex_music
|
||||||
network: yandex
|
network: yandex
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ SCHEMA: dict[str, t.Any] = {
|
|||||||
'brand': SettingsBrand,
|
'brand': SettingsBrand,
|
||||||
'search': {
|
'search': {
|
||||||
'safe_search': SettingsValue((0, 1, 2), 0),
|
'safe_search': SettingsValue((0, 1, 2), 0),
|
||||||
'autocomplete': SettingsValue(str, ''),
|
'autocomplete': SettingsValue(str, 'duckduckgo'),
|
||||||
'autocomplete_min': SettingsValue(int, 4),
|
'autocomplete_min': SettingsValue(int, 4),
|
||||||
'favicon_resolver': SettingsValue(str, ''),
|
'favicon_resolver': SettingsValue(str, ''),
|
||||||
'default_lang': SettingsValue(tuple(SXNG_LOCALE_TAGS + ['']), ''),
|
'default_lang': SettingsValue(tuple(SXNG_LOCALE_TAGS + ['']), ''),
|
||||||
@@ -219,7 +219,7 @@ SCHEMA: dict[str, t.Any] = {
|
|||||||
'base_url': SettingsValue((False, str), False, 'SEARXNG_BASE_URL'),
|
'base_url': SettingsValue((False, str), False, 'SEARXNG_BASE_URL'),
|
||||||
'image_proxy': SettingsValue(bool, False, 'SEARXNG_IMAGE_PROXY'),
|
'image_proxy': SettingsValue(bool, False, 'SEARXNG_IMAGE_PROXY'),
|
||||||
'http_protocol_version': SettingsValue(('1.0', '1.1'), '1.0'),
|
'http_protocol_version': SettingsValue(('1.0', '1.1'), '1.0'),
|
||||||
'method': SettingsValue(('POST', 'GET'), 'POST', 'SEARXNG_METHOD'),
|
'method': SettingsValue(('POST', 'GET'), 'GET', 'SEARXNG_METHOD'),
|
||||||
'default_http_headers': SettingsValue(dict, {}),
|
'default_http_headers': SettingsValue(dict, {}),
|
||||||
},
|
},
|
||||||
# redis is deprecated ..
|
# redis is deprecated ..
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
15
searx/static/themes/simple/chunk/BfLIj3Of.min.js
vendored
15
searx/static/themes/simple/chunk/BfLIj3Of.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
15
searx/static/themes/simple/chunk/BhYx0_Gb.min.js
vendored
Normal file
15
searx/static/themes/simple/chunk/BhYx0_Gb.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
searx/static/themes/simple/chunk/BhYx0_Gb.min.js.map
Normal file
1
searx/static/themes/simple/chunk/BhYx0_Gb.min.js.map
Normal file
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
|||||||
import{i as e,n as t,t as n}from"../sxng-core.min.js";import{t as r}from"./DK4yUVpy.min.js";var i=async(i,a)=>{try{let o=await(await n(`GET`,`./autocompleter?q=${a}`)).json(),s=document.querySelector(`.autocomplete`);r(s);let c=document.querySelector(`.autocomplete ul`);if(r(c),s.classList.add(`open`),c.replaceChildren(),o?.[1]?.length===0){let t=Object.assign(document.createElement(`li`),{className:`no-item-found`,textContent:e.translations?.no_item_found??`No results found`});c.append(t);return}let l=new DocumentFragment;for(let e of o[1]){let n=Object.assign(document.createElement(`li`),{textContent:e});t(`mousedown`,n,()=>{i.value=e,document.querySelector(`#search`)?.submit()}),l.append(n)}c.append(l)}catch(e){console.error(`Error fetching autocomplete results:`,e)}},a=document.getElementById(`q`);r(a);var o;t(`input`,a,()=>{clearTimeout(o);let t=a.value,n=e.autocomplete_min??2;t.length<n||(o=window.setTimeout(async()=>{t===a.value&&await i(a,t)},300))});var s=document.querySelector(`.autocomplete`),c=document.querySelector(`.autocomplete ul`);c&&(t(`keydown`,a,e=>{e.key===`Escape`&&s?.classList.remove(`open`)}),t(`keyup`,a,e=>{let t=[...c.children],n=t.findIndex(e=>e.classList.contains(`active`)),r=-1;switch(e.key){case`ArrowUp`:{let e=t[n];e&&n>=0&&e.classList.remove(`active`),r=(n-1+t.length)%t.length;break}case`ArrowDown`:{let e=t[n];e&&n>=0&&e.classList.remove(`active`),r=(n+1)%t.length;break}case`Enter`:s&&s.classList.remove(`open`);break;default:break}if(r!==-1){let e=t[r];if(e&&(e.classList.add(`active`),!e.classList.contains(`no-item-found`))){let t=document.getElementById(`q`);t&&(t.value=e.textContent??``)}}}),t(`blur`,a,()=>{s?.classList.remove(`open`)}),t(`focus`,a,()=>{s?.classList.add(`open`)}));
|
import{i as e,n as t,t as n}from"../sxng-core.min.js";import{t as r}from"./DK4yUVpy.min.js";var i=async(i,a)=>{try{let o=await(await n(`GET`,`./autocompleter?q=${a}`)).json(),s=document.querySelector(`.autocomplete`);r(s);let c=document.querySelector(`.autocomplete ul`);if(r(c),s.classList.add(`open`),c.replaceChildren(),o?.[1]?.length===0){let t=Object.assign(document.createElement(`li`),{className:`no-item-found`,textContent:e.translations?.no_item_found??`No results found`});c.append(t);return}let l=new DocumentFragment;for(let e of o[1]){let n=Object.assign(document.createElement(`li`),{textContent:e});t(`mousedown`,n,()=>{i.value=e,document.querySelector(`#search`)?.submit()}),l.append(n)}c.append(l)}catch(e){console.error(`Error fetching autocomplete results:`,e)}},a=document.getElementById(`q`);r(a);var o;t(`input`,a,()=>{clearTimeout(o);let t=a.value,n=e.autocomplete_min??2;t.length<n||(o=window.setTimeout(async()=>{t===a.value&&await i(a,t)},300))});var s=document.querySelector(`.autocomplete`),c=document.querySelector(`.autocomplete ul`);c&&(t(`keydown`,a,e=>{e.key===`Escape`&&s?.classList.remove(`open`)}),t(`keyup`,a,e=>{let t=[...c.children],n=t.findIndex(e=>e.classList.contains(`active`)),r=-1;switch(e.key){case`ArrowUp`:{let e=t[n];e&&n>=0&&e.classList.remove(`active`),r=(n-1+t.length)%t.length;break}case`ArrowDown`:{let e=t[n];e&&n>=0&&e.classList.remove(`active`),r=(n+1)%t.length;break}case`Enter`:s&&s.classList.remove(`open`)}if(r!==-1){let e=t[r];if(e&&(e.classList.add(`active`),!e.classList.contains(`no-item-found`))){let t=document.getElementById(`q`);t&&(t.value=e.textContent??``)}}}),t(`blur`,a,()=>{s?.classList.remove(`open`)}),t(`focus`,a,()=>{s?.classList.add(`open`)}));
|
||||||
//# sourceMappingURL=C21EfLAC.min.js.map
|
//# sourceMappingURL=Bs-FMxfE.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
8
searx/static/themes/simple/chunk/Dms-nhjX.min.js
vendored
Normal file
8
searx/static/themes/simple/chunk/Dms-nhjX.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
searx/static/themes/simple/chunk/Dms-nhjX.min.js.map
Normal file
1
searx/static/themes/simple/chunk/Dms-nhjX.min.js.map
Normal file
File diff suppressed because one or more lines are too long
@@ -31,7 +31,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"src/js/main/autocomplete.ts": {
|
"src/js/main/autocomplete.ts": {
|
||||||
"file": "chunk/C21EfLAC.min.js",
|
"file": "chunk/Bs-FMxfE.min.js",
|
||||||
"name": "autocomplete",
|
"name": "autocomplete",
|
||||||
"src": "src/js/main/autocomplete.ts",
|
"src": "src/js/main/autocomplete.ts",
|
||||||
"isDynamicEntry": true,
|
"isDynamicEntry": true,
|
||||||
@@ -41,7 +41,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"src/js/main/keyboard.ts": {
|
"src/js/main/keyboard.ts": {
|
||||||
"file": "chunk/C93hSkpT.min.js",
|
"file": "chunk/CX4Qzp80.min.js",
|
||||||
"name": "keyboard",
|
"name": "keyboard",
|
||||||
"src": "src/js/main/keyboard.ts",
|
"src": "src/js/main/keyboard.ts",
|
||||||
"isDynamicEntry": true,
|
"isDynamicEntry": true,
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"src/js/plugin/Calculator.ts": {
|
"src/js/plugin/Calculator.ts": {
|
||||||
"file": "chunk/BfLIj3Of.min.js",
|
"file": "chunk/BhYx0_Gb.min.js",
|
||||||
"name": "calculator",
|
"name": "calculator",
|
||||||
"src": "src/js/plugin/Calculator.ts",
|
"src": "src/js/plugin/Calculator.ts",
|
||||||
"isDynamicEntry": true,
|
"isDynamicEntry": true,
|
||||||
@@ -103,7 +103,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"src/js/plugin/MapView.ts": {
|
"src/js/plugin/MapView.ts": {
|
||||||
"file": "chunk/Bc8fcwWx.min.js",
|
"file": "chunk/Dms-nhjX.min.js",
|
||||||
"name": "mapview",
|
"name": "mapview",
|
||||||
"src": "src/js/plugin/MapView.ts",
|
"src": "src/js/plugin/MapView.ts",
|
||||||
"isDynamicEntry": true,
|
"isDynamicEntry": true,
|
||||||
|
|||||||
4
searx/static/themes/simple/sxng-core.min.js
vendored
4
searx/static/themes/simple/sxng-core.min.js
vendored
@@ -1,3 +1,3 @@
|
|||||||
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./chunk/Bc8fcwWx.min.js","./chunk/BuurKv-k.min.js","./sxng-mapview.min.css","./chunk/D3mcqWOe.min.js","./chunk/DK4yUVpy.min.js","./chunk/DcK-mo-Y.min.js","./chunk/BfLIj3Of.min.js","./chunk/C93hSkpT.min.js","./chunk/5Ako-qGW.min.js","./chunk/C21EfLAC.min.js","./chunk/od7pNHfk.min.js","./chunk/e2-9fzwE.min.js"])))=>i.map(i=>d[i]);
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./chunk/Dms-nhjX.min.js","./chunk/BuurKv-k.min.js","./sxng-mapview.min.css","./chunk/D3mcqWOe.min.js","./chunk/DK4yUVpy.min.js","./chunk/DcK-mo-Y.min.js","./chunk/BhYx0_Gb.min.js","./chunk/CX4Qzp80.min.js","./chunk/5Ako-qGW.min.js","./chunk/Bs-FMxfE.min.js","./chunk/od7pNHfk.min.js","./chunk/e2-9fzwE.min.js"])))=>i.map(i=>d[i]);
|
||||||
var e={index:`index`,results:`results`,preferences:`preferences`,unknown:`unknown`},t={closeDetail:void 0,scrollPageToSelected:void 0,selectImage:void 0,selectNext:void 0,selectPrevious:void 0},n=()=>{let t=document.querySelector(`meta[name="endpoint"]`)?.getAttribute(`content`);return t&&t in e?t:e.unknown},r=()=>{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),{}}},i=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},a=(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)},o=(e,t)=>{for(let e of t?.on??[])if(!e)return;document.readyState===`loading`?a(`DOMContentLoaded`,document,e,{once:!0}):e()},s=n(),c=r(),l=(e,t)=>{u(t)&&e()},u=e=>{switch(e.on){case`global`:return!0;case`endpoint`:return!!e.where.includes(s)}},d=`modulepreload`,f=function(e,t){return new URL(e,t).href},p={},m=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}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=f(t,n),t=s(t),t in p)return;p[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:d,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.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)})};o(()=>{document.documentElement.classList.remove(`no-js`),document.documentElement.classList.add(`js`),a(`click`,`.close`,function(){this.parentNode?.classList.add(`invisible`)}),a(`click`,`.searxng_init_map`,async function(t){t.preventDefault(),this.classList.remove(`searxng_init_map`),l(()=>m(async()=>{let{default:e}=await import(`./chunk/Bc8fcwWx.min.js`);return{default:e}},__vite__mapDeps([0,1,2]),import.meta.url).then(({default:e})=>new e(this)),{on:`endpoint`,where:[e.results]})}),c.plugins?.includes(`infiniteScroll`)&&l(()=>m(async()=>{let{default:e}=await import(`./chunk/D3mcqWOe.min.js`);return{default:e}},__vite__mapDeps([3,1,4,5]),import.meta.url).then(({default:e})=>new e),{on:`endpoint`,where:[e.results]}),c.plugins?.includes(`calculator`)&&l(()=>m(async()=>{let{default:e}=await import(`./chunk/BfLIj3Of.min.js`);return{default:e}},__vite__mapDeps([6,1,5,4]),import.meta.url).then(({default:e})=>new e),{on:`endpoint`,where:[e.results]})}),o(()=>{m(()=>import(`./chunk/C93hSkpT.min.js`),__vite__mapDeps([7,4]),import.meta.url),m(()=>import(`./chunk/5Ako-qGW.min.js`),__vite__mapDeps([8,5,4]),import.meta.url),c.autocomplete&&m(()=>import(`./chunk/C21EfLAC.min.js`),__vite__mapDeps([9,4]),import.meta.url)},{on:[s===e.index]}),o(()=>{m(()=>import(`./chunk/C93hSkpT.min.js`),__vite__mapDeps([7,4]),import.meta.url),m(()=>import(`./chunk/od7pNHfk.min.js`),__vite__mapDeps([10,4]),import.meta.url),m(()=>import(`./chunk/5Ako-qGW.min.js`),__vite__mapDeps([8,5,4]),import.meta.url),c.autocomplete&&m(()=>import(`./chunk/C21EfLAC.min.js`),__vite__mapDeps([9,4]),import.meta.url)},{on:[s===e.results]}),o(()=>{m(()=>import(`./chunk/e2-9fzwE.min.js`),__vite__mapDeps([11,4]),import.meta.url)},{on:[s===e.preferences]});export{c as i,a as n,t as r,i as t};
|
var e={index:`index`,results:`results`,preferences:`preferences`,unknown:`unknown`},t={closeDetail:void 0,scrollPageToSelected:void 0,selectImage:void 0,selectNext:void 0,selectPrevious:void 0},n=()=>{let t=document.querySelector(`meta[name="endpoint"]`)?.getAttribute(`content`);return t&&t in e?t:e.unknown},r=()=>{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),{}}},i=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},a=(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)},o=(e,t)=>{for(let e of t?.on??[])if(!e)return;document.readyState===`loading`?a(`DOMContentLoaded`,document,e,{once:!0}):e()},s=n(),c=r(),l=(e,t)=>{u(t)&&e()},u=e=>{switch(e.on){case`global`:return!0;case`endpoint`:return!!e.where.includes(s)}},d=`modulepreload`,f=function(e,t){return new URL(e,t).href},p={},m=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}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=f(t,n),t=s(t),t in p)return;p[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:d,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.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)})};o(()=>{document.documentElement.classList.remove(`no-js`),document.documentElement.classList.add(`js`),a(`click`,`.close`,function(){this.parentNode?.classList.add(`invisible`)}),a(`click`,`.searxng_init_map`,async function(t){t.preventDefault(),this.classList.remove(`searxng_init_map`),l(()=>m(async()=>{let{default:e}=await import(`./chunk/Dms-nhjX.min.js`);return{default:e}},__vite__mapDeps([0,1,2]),import.meta.url).then(({default:e})=>new e(this)),{on:`endpoint`,where:[e.results]})}),c.plugins?.includes(`infiniteScroll`)&&l(()=>m(async()=>{let{default:e}=await import(`./chunk/D3mcqWOe.min.js`);return{default:e}},__vite__mapDeps([3,1,4,5]),import.meta.url).then(({default:e})=>new e),{on:`endpoint`,where:[e.results]}),c.plugins?.includes(`calculator`)&&l(()=>m(async()=>{let{default:e}=await import(`./chunk/BhYx0_Gb.min.js`);return{default:e}},__vite__mapDeps([6,1,5,4]),import.meta.url).then(({default:e})=>new e),{on:`endpoint`,where:[e.results]})}),o(()=>{m(()=>import(`./chunk/CX4Qzp80.min.js`),__vite__mapDeps([7,4]),import.meta.url),m(()=>import(`./chunk/5Ako-qGW.min.js`),__vite__mapDeps([8,5,4]),import.meta.url),c.autocomplete&&m(()=>import(`./chunk/Bs-FMxfE.min.js`),__vite__mapDeps([9,4]),import.meta.url)},{on:[s===e.index]}),o(()=>{m(()=>import(`./chunk/CX4Qzp80.min.js`),__vite__mapDeps([7,4]),import.meta.url),m(()=>import(`./chunk/od7pNHfk.min.js`),__vite__mapDeps([10,4]),import.meta.url),m(()=>import(`./chunk/5Ako-qGW.min.js`),__vite__mapDeps([8,5,4]),import.meta.url),c.autocomplete&&m(()=>import(`./chunk/Bs-FMxfE.min.js`),__vite__mapDeps([9,4]),import.meta.url)},{on:[s===e.results]}),o(()=>{m(()=>import(`./chunk/e2-9fzwE.min.js`),__vite__mapDeps([11,4]),import.meta.url)},{on:[s===e.preferences]});export{c as i,a as n,t as r,i as t};
|
||||||
//# sourceMappingURL=sxng-core.min.js.map
|
//# sourceMappingURL=sxng-core.min.js.map
|
||||||
File diff suppressed because one or more lines are too long
@@ -4,7 +4,7 @@
|
|||||||
<div class="wrapper">
|
<div class="wrapper">
|
||||||
{%- for output_type in search_formats -%}
|
{%- for output_type in search_formats -%}
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<form method="{{ method or 'POST' }}" action="{{ url_for('search') }}">
|
<form method="{{ method }}" action="{{ url_for('search') }}">
|
||||||
<input type="hidden" name="q" value="{{ q|e }}">
|
<input type="hidden" name="q" value="{{ q|e }}">
|
||||||
{%- for category in selected_categories -%}
|
{%- for category in selected_categories -%}
|
||||||
<input type="hidden" name="category_{{ category }}" value="1">
|
<input type="hidden" name="category_{{ category }}" value="1">
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<h4 id="corrections-title">{{ _('Try searching for:') }}</h4>
|
<h4 id="corrections-title">{{ _('Try searching for:') }}</h4>
|
||||||
{% for correction in corrections %}
|
{% for correction in corrections %}
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<form method="{{ method or 'POST' }}" action="{{ url_for('search') }}" role="navigation">
|
<form method="{{ method }}" action="{{ url_for('search') }}" role="navigation">
|
||||||
{% for category in selected_categories %}
|
{% for category in selected_categories %}
|
||||||
<input type="hidden" name="category_{{ category }}" value="1">
|
<input type="hidden" name="category_{{ category }}" value="1">
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
<div>
|
<div>
|
||||||
<h3><bdi>{{ topic.name }}</bdi></h3>
|
<h3><bdi>{{ topic.name }}</bdi></h3>
|
||||||
{%- for suggestion in topic.suggestions -%}
|
{%- for suggestion in topic.suggestions -%}
|
||||||
<form method="{{ method or 'POST' }}" action="{{ url_for('search') }}">
|
<form method="{{ method }}" action="{{ url_for('search') }}">
|
||||||
<input type="hidden" name="q" value="{{ suggestion }}">
|
<input type="hidden" name="q" value="{{ suggestion }}">
|
||||||
<input type="hidden" name="time_range" value="{{ time_range }}">
|
<input type="hidden" name="time_range" value="{{ time_range }}">
|
||||||
<input type="hidden" name="language" value="{{ current_language }}">
|
<input type="hidden" name="language" value="{{ current_language }}">
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<summary class="title" id="suggestions-title">{{ _('Suggestions') }}</summary>
|
<summary class="title" id="suggestions-title">{{ _('Suggestions') }}</summary>
|
||||||
<ul class="wrapper">
|
<ul class="wrapper">
|
||||||
{%- for suggestion in suggestions -%}
|
{%- for suggestion in suggestions -%}
|
||||||
<li><form method="{{ method or 'POST' }}" action="{{ url_for('search') }}">
|
<li><form method="{{ method }}" action="{{ url_for('search') }}">
|
||||||
<input type="hidden" name="q" value="{{ suggestion.url }}">
|
<input type="hidden" name="q" value="{{ suggestion.url }}">
|
||||||
{%- for category in selected_categories -%}
|
{%- for category in selected_categories -%}
|
||||||
<input type="hidden" name="category_{{ category }}" value="1">
|
<input type="hidden" name="category_{{ category }}" value="1">
|
||||||
|
|||||||
@@ -75,7 +75,7 @@
|
|||||||
{% if paging %}
|
{% if paging %}
|
||||||
<nav id="pagination" role="navigation">
|
<nav id="pagination" role="navigation">
|
||||||
{% if pageno > 1 %}
|
{% if pageno > 1 %}
|
||||||
<form method="{{ method or 'POST' }}" action="{{ url_for('search') }}" class="previous_page">
|
<form method="{{ method }}" action="{{ url_for('search') }}" class="previous_page">
|
||||||
<div class="{% if rtl %}right{% else %}left{% endif %}">
|
<div class="{% if rtl %}right{% else %}left{% endif %}">
|
||||||
<input type="hidden" name="q" value="{{ q|e }}" >
|
<input type="hidden" name="q" value="{{ q|e }}" >
|
||||||
{% for category in selected_categories %}
|
{% for category in selected_categories %}
|
||||||
@@ -93,7 +93,7 @@
|
|||||||
</form>
|
</form>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{%- if results | count > 0 -%}
|
{%- if results | count > 0 -%}
|
||||||
<form method="{{ method or 'POST' }}" action="{{ url_for('search') }}" class="next_page">
|
<form method="{{ method }}" action="{{ url_for('search') }}" class="next_page">
|
||||||
<div class="{% if rtl %}left{% else %}right{% endif %}">
|
<div class="{% if rtl %}left{% else %}right{% endif %}">
|
||||||
<input type="hidden" name="q" value="{{ q|e }}" >
|
<input type="hidden" name="q" value="{{ q|e }}" >
|
||||||
{% for category in selected_categories %}
|
{% for category in selected_categories %}
|
||||||
@@ -119,7 +119,7 @@
|
|||||||
|
|
||||||
<div class="numbered_pagination">
|
<div class="numbered_pagination">
|
||||||
{% for x in range(pstart, pend) %}
|
{% for x in range(pstart, pend) %}
|
||||||
<form method="{{ method or 'POST' }}" action="{{ url_for('search') }}" class="page_number">
|
<form method="{{ method }}" action="{{ url_for('search') }}" class="page_number">
|
||||||
<input type="hidden" name="q" value="{{ q|e }}" >
|
<input type="hidden" name="q" value="{{ q|e }}" >
|
||||||
{% for category in selected_categories %}
|
{% for category in selected_categories %}
|
||||||
<input type="hidden" name="category_{{ category }}" value="1" >
|
<input type="hidden" name="category_{{ category }}" value="1" >
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<form id="search" method="{{ method or 'POST' }}" action="{{ url_for('search') }}" role="search">
|
<form id="search" method="{{ method }}" action="{{ url_for('search') }}" role="search">
|
||||||
<div id="search_header">
|
<div id="search_header">
|
||||||
<a id="search_logo" href="{{ url_for('index') }}" tabindex="0" title="{{ _('Display the front page') }}">
|
<a id="search_logo" href="{{ url_for('index') }}" tabindex="0" title="{{ _('Display the front page') }}">
|
||||||
<span hidden>SearXNG</span>
|
<span hidden>SearXNG</span>
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<form id="search" method="{{ method or 'POST' }}" action="{{ url_for('search') }}" role="search">
|
<form id="search" method="{{ method }}" action="{{ url_for('search') }}" role="search">
|
||||||
<div id="search_header">
|
<div id="search_header">
|
||||||
<div id="search_view">
|
<div id="search_view">
|
||||||
<div class="search_box">
|
<div class="search_box">
|
||||||
|
|||||||
Binary file not shown.
@@ -24,7 +24,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: searx\n"
|
"Project-Id-Version: searx\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-07-17 12:20+0000\n"
|
"PO-Revision-Date: 2026-08-21 20:54+0000\n"
|
||||||
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
||||||
"Language-Team: Bulgarian <https://translate.codeberg.org/projects/searxng/"
|
"Language-Team: Bulgarian <https://translate.codeberg.org/projects/searxng/"
|
||||||
"searxng/bg/>\n"
|
"searxng/bg/>\n"
|
||||||
@@ -33,7 +33,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Weblate 2026.6.1\n"
|
"X-Generator: Weblate 2026.8.1\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
@@ -737,7 +737,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: searx/plugins/calculator.py:25
|
#: searx/plugins/calculator.py:25
|
||||||
msgid "Calculator"
|
msgid "Calculator"
|
||||||
msgstr ""
|
msgstr "Калкулатор"
|
||||||
|
|
||||||
#: searx/plugins/calculator.py:26
|
#: searx/plugins/calculator.py:26
|
||||||
msgid "Parses and solves mathematical expressions."
|
msgid "Parses and solves mathematical expressions."
|
||||||
@@ -1653,11 +1653,11 @@ msgstr "Резолюция"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:55
|
#: searx/templates/simple/result_templates/images.html:55
|
||||||
msgid "Image formats"
|
msgid "Image formats"
|
||||||
msgstr ""
|
msgstr "формат на изображението"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:56
|
#: searx/templates/simple/result_templates/images.html:56
|
||||||
msgid "original format"
|
msgid "original format"
|
||||||
msgstr ""
|
msgstr "оригинален формат"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:64
|
#: searx/templates/simple/result_templates/images.html:64
|
||||||
msgid "View source"
|
msgid "View source"
|
||||||
|
|||||||
Binary file not shown.
@@ -25,21 +25,23 @@
|
|||||||
# return42 <return42@noreply.codeberg.org>, 2025, 2026.
|
# return42 <return42@noreply.codeberg.org>, 2025, 2026.
|
||||||
# ehsanrs2 <ehsanrs2@noreply.codeberg.org>, 2025.
|
# ehsanrs2 <ehsanrs2@noreply.codeberg.org>, 2025.
|
||||||
# Artiman <artiman@noreply.codeberg.org>, 2025.
|
# Artiman <artiman@noreply.codeberg.org>, 2025.
|
||||||
|
# mvtbh <mvtbh@noreply.codeberg.org>, 2026.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: searx\n"
|
"Project-Id-Version: searx\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-05-19 12:07+0000\n"
|
"PO-Revision-Date: 2026-08-04 12:25+0000\n"
|
||||||
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
"Last-Translator: mvtbh <mvtbh@noreply.codeberg.org>\n"
|
||||||
"Language: fa_IR\n"
|
"Language: fa_IR\n"
|
||||||
"Language-Team: Persian "
|
"Language-Team: Persian <https://translate.codeberg.org/projects/searxng/"
|
||||||
"<https://translate.codeberg.org/projects/searxng/searxng/fa/>\n"
|
"searxng/fa/>\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n > 1;\n"
|
"Plural-Forms: nplurals=2; plural=n > 1;\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
"X-Generator: Weblate 2026.7.1\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -449,47 +451,47 @@ msgstr ""
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light snow"
|
msgid "Light snow"
|
||||||
msgstr ""
|
msgstr "برف خفیف"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow and thunder"
|
msgid "Snow and thunder"
|
||||||
msgstr ""
|
msgstr "برف و رعد و برق"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow showers and thunder"
|
msgid "Snow showers and thunder"
|
||||||
msgstr ""
|
msgstr "رگبار برف و رعد و برق"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow showers"
|
msgid "Snow showers"
|
||||||
msgstr ""
|
msgstr "رگبار برف"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow"
|
msgid "Snow"
|
||||||
msgstr ""
|
msgstr "برف"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy snow and thunder"
|
msgid "Heavy snow and thunder"
|
||||||
msgstr ""
|
msgstr "برف سنگین و رعد و برق"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy snow showers and thunder"
|
msgid "Heavy snow showers and thunder"
|
||||||
msgstr ""
|
msgstr "رگبار برف سنگین و رعد و برق"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy snow showers"
|
msgid "Heavy snow showers"
|
||||||
msgstr ""
|
msgstr "رگبار شدید برف"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy snow"
|
msgid "Heavy snow"
|
||||||
msgstr ""
|
msgstr "برف سنگین"
|
||||||
|
|
||||||
#. SOCIAL_MEDIA_TERMS['SUBSCRIBERS']
|
#. SOCIAL_MEDIA_TERMS['SUBSCRIBERS']
|
||||||
#: searx/engines/lemmy.py:85 searx/searxng.msg
|
#: searx/engines/lemmy.py:85 searx/searxng.msg
|
||||||
@@ -2406,4 +2408,3 @@ msgstr "پنهانسازی ویدئو"
|
|||||||
|
|
||||||
#~ msgid "Engine"
|
#~ msgid "Engine"
|
||||||
#~ msgstr "موتور"
|
#~ msgstr "موتور"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -11,18 +11,18 @@ msgstr ""
|
|||||||
"Project-Id-Version: PROJECT VERSION\n"
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-05-05 12:37+0000\n"
|
"PO-Revision-Date: 2026-08-04 12:25+0000\n"
|
||||||
"Last-Translator: Aindriú Mac Giolla Eoin <aindriu80@noreply.codeberg.org>"
|
"Last-Translator: Aindriú Mac Giolla Eoin <aindriu80@noreply.codeberg.org>\n"
|
||||||
"\n"
|
|
||||||
"Language: ga\n"
|
"Language: ga\n"
|
||||||
"Language-Team: Irish "
|
"Language-Team: Irish <https://translate.codeberg.org/projects/searxng/"
|
||||||
"<https://translate.codeberg.org/projects/searxng/searxng/ga/>\n"
|
"searxng/ga/>\n"
|
||||||
"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 "
|
"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 :(n>"
|
||||||
":(n>6 && n<11) ? 3 : 4;\n"
|
"6 && n<11) ? 3 : 4;\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
"X-Generator: Weblate 2026.7.1\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -1646,11 +1646,11 @@ msgstr "Réiteach"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:55
|
#: searx/templates/simple/result_templates/images.html:55
|
||||||
msgid "Image formats"
|
msgid "Image formats"
|
||||||
msgstr ""
|
msgstr "Formáidí íomhá"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:56
|
#: searx/templates/simple/result_templates/images.html:56
|
||||||
msgid "original format"
|
msgid "original format"
|
||||||
msgstr ""
|
msgstr "formáid bhunaidh"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:64
|
#: searx/templates/simple/result_templates/images.html:64
|
||||||
msgid "View source"
|
msgid "View source"
|
||||||
@@ -1969,4 +1969,3 @@ msgstr "físeán a cheilt"
|
|||||||
|
|
||||||
#~ msgid "Engine"
|
#~ msgid "Engine"
|
||||||
#~ msgstr "Inneall"
|
#~ msgstr "Inneall"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -24,22 +24,24 @@
|
|||||||
# ngf <ngf@noreply.codeberg.org>, 2025.
|
# ngf <ngf@noreply.codeberg.org>, 2025.
|
||||||
# return42 <return42@noreply.codeberg.org>, 2025, 2026.
|
# return42 <return42@noreply.codeberg.org>, 2025, 2026.
|
||||||
# omeritzics <omeritzics@noreply.codeberg.org>, 2026.
|
# omeritzics <omeritzics@noreply.codeberg.org>, 2026.
|
||||||
|
# ShinyDust <shinydust@noreply.codeberg.org>, 2026.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: searx\n"
|
"Project-Id-Version: searx\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-05-19 12:07+0000\n"
|
"PO-Revision-Date: 2026-08-02 00:25+0000\n"
|
||||||
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
"Last-Translator: ShinyDust <shinydust@noreply.codeberg.org>\n"
|
||||||
"Language: he\n"
|
"Language: he\n"
|
||||||
"Language-Team: Hebrew "
|
"Language-Team: Hebrew <https://translate.codeberg.org/projects/searxng/"
|
||||||
"<https://translate.codeberg.org/projects/searxng/searxng/he/>\n"
|
"searxng/he/>\n"
|
||||||
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 "
|
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && "
|
||||||
"&& n % 10 == 0) ? 2 : 3));\n"
|
"n % 10 == 0) ? 2 : 3));\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
"X-Generator: Weblate 2026.7.1\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -394,17 +396,17 @@ msgstr "שלג קל"
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Sleet and thunder"
|
msgid "Sleet and thunder"
|
||||||
msgstr ""
|
msgstr "שלג ורעמים"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Sleet showers and thunder"
|
msgid "Sleet showers and thunder"
|
||||||
msgstr ""
|
msgstr "ממטרי שלג ורעמים"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Sleet showers"
|
msgid "Sleet showers"
|
||||||
msgstr ""
|
msgstr "ממטרי שלג"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -444,7 +446,7 @@ msgstr "ממטרי שלג קלים ורעמים"
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light snow showers"
|
msgid "Light snow showers"
|
||||||
msgstr ""
|
msgstr "ממטרי שלג קלים"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -454,17 +456,17 @@ msgstr "שלג קל"
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow and thunder"
|
msgid "Snow and thunder"
|
||||||
msgstr ""
|
msgstr "שלג ורעמים"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow showers and thunder"
|
msgid "Snow showers and thunder"
|
||||||
msgstr ""
|
msgstr "ממטרי שלג ורעמים"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow showers"
|
msgid "Snow showers"
|
||||||
msgstr ""
|
msgstr "ממטרי שלג"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -655,7 +657,7 @@ msgstr "חשב {func} של הארגומנטים"
|
|||||||
#: searx/engines/boardreader.py:108
|
#: searx/engines/boardreader.py:108
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "Posted by {author}"
|
msgid "Posted by {author}"
|
||||||
msgstr ""
|
msgstr "פורסם על ידי {author}"
|
||||||
|
|
||||||
#: searx/engines/openstreetmap.py:155
|
#: searx/engines/openstreetmap.py:155
|
||||||
msgid "Show route in map .."
|
msgid "Show route in map .."
|
||||||
@@ -743,7 +745,7 @@ msgstr "מחשבון"
|
|||||||
|
|
||||||
#: searx/plugins/calculator.py:26
|
#: searx/plugins/calculator.py:26
|
||||||
msgid "Parses and solves mathematical expressions."
|
msgid "Parses and solves mathematical expressions."
|
||||||
msgstr ""
|
msgstr "מנתח ופותר ביטויים מתמטיים."
|
||||||
|
|
||||||
#: searx/plugins/hash_plugin.py:33
|
#: searx/plugins/hash_plugin.py:33
|
||||||
msgid "Hash plugin"
|
msgid "Hash plugin"
|
||||||
@@ -754,6 +756,8 @@ msgid ""
|
|||||||
"Converts strings to different hash digests. Available functions: md5, "
|
"Converts strings to different hash digests. Available functions: md5, "
|
||||||
"sha1, sha224, sha256, sha384, sha512."
|
"sha1, sha224, sha256, sha384, sha512."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"ממיר מחרוזות ל- hash digests שונים. פונקציות זמינות: md5, sha1, sha224, "
|
||||||
|
"sha256, sha384, sha512."
|
||||||
|
|
||||||
#: searx/plugins/hash_plugin.py:63
|
#: searx/plugins/hash_plugin.py:63
|
||||||
msgid "hash digest"
|
msgid "hash digest"
|
||||||
@@ -983,14 +987,15 @@ msgid ""
|
|||||||
"This is a preview of the settings used by the 'Search URL' you used to "
|
"This is a preview of the settings used by the 'Search URL' you used to "
|
||||||
"get here."
|
"get here."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"זוהי תצוגה מקדימה של ההגדרות ב- 'כתובת URL לחיפוש' בהן השתמשת כדי להגיע לכאן."
|
||||||
|
|
||||||
#: searx/templates/simple/preferences.html:158
|
#: searx/templates/simple/preferences.html:158
|
||||||
msgid "Press save to copy these preferences to your browser."
|
msgid "Press save to copy these preferences to your browser."
|
||||||
msgstr ""
|
msgstr "לחץ על שמור כדי להעתיק את ההעדפות הללו לדפדפן שלך."
|
||||||
|
|
||||||
#: searx/templates/simple/preferences.html:159
|
#: searx/templates/simple/preferences.html:159
|
||||||
msgid "Click here to view your browser preferences instead:"
|
msgid "Click here to view your browser preferences instead:"
|
||||||
msgstr ""
|
msgstr "לחץ כאן כדי להציג את העדפות הדפדפן שלך במקום:"
|
||||||
|
|
||||||
#: searx/templates/simple/preferences.html:169
|
#: searx/templates/simple/preferences.html:169
|
||||||
msgid "General"
|
msgid "General"
|
||||||
@@ -1333,7 +1338,7 @@ msgstr "השלמה אוטומטית"
|
|||||||
|
|
||||||
#: searx/templates/simple/preferences/autocomplete.html:15
|
#: searx/templates/simple/preferences/autocomplete.html:15
|
||||||
msgid "Show possible queries as you type"
|
msgid "Show possible queries as you type"
|
||||||
msgstr ""
|
msgstr "הצג שאילתות אפשריות תוך כדי הקלדה"
|
||||||
|
|
||||||
#: searx/templates/simple/preferences/center_alignment.html:2
|
#: searx/templates/simple/preferences/center_alignment.html:2
|
||||||
msgid "Center Alignment"
|
msgid "Center Alignment"
|
||||||
@@ -1351,7 +1356,7 @@ msgstr "זוהי רשימת העוגיות וערכיהן אשר SearXNG מאח
|
|||||||
|
|
||||||
#: searx/templates/simple/preferences/cookies.html:3
|
#: searx/templates/simple/preferences/cookies.html:3
|
||||||
msgid "With this list, you can assess the transparency of SearXNG."
|
msgid "With this list, you can assess the transparency of SearXNG."
|
||||||
msgstr ""
|
msgstr "בעזרת רשימה זו, תוכלו להעריך את השקיפות של SearXNG."
|
||||||
|
|
||||||
#: searx/templates/simple/preferences/cookies.html:9
|
#: searx/templates/simple/preferences/cookies.html:9
|
||||||
msgid "Cookie name"
|
msgid "Cookie name"
|
||||||
@@ -1642,11 +1647,11 @@ msgstr "רזולוציה"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:55
|
#: searx/templates/simple/result_templates/images.html:55
|
||||||
msgid "Image formats"
|
msgid "Image formats"
|
||||||
msgstr ""
|
msgstr "פורמטי תמונה"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:56
|
#: searx/templates/simple/result_templates/images.html:56
|
||||||
msgid "original format"
|
msgid "original format"
|
||||||
msgstr ""
|
msgstr "פורמט מקורי"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:64
|
#: searx/templates/simple/result_templates/images.html:64
|
||||||
msgid "View source"
|
msgid "View source"
|
||||||
@@ -2373,4 +2378,3 @@ msgstr "הסתר וידאו"
|
|||||||
|
|
||||||
#~ msgid "Engine"
|
#~ msgid "Engine"
|
||||||
#~ msgstr "מנוע"
|
#~ msgstr "מנוע"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -46,19 +46,20 @@
|
|||||||
# MaiuZ <maiuz@noreply.codeberg.org>, 2025.
|
# MaiuZ <maiuz@noreply.codeberg.org>, 2025.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: searx\n"
|
"Project-Id-Version: searx\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-05-19 12:07+0000\n"
|
"PO-Revision-Date: 2026-08-21 20:54+0000\n"
|
||||||
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
||||||
"Language: it\n"
|
"Language: it\n"
|
||||||
"Language-Team: Italian "
|
"Language-Team: Italian <https://translate.codeberg.org/projects/searxng/"
|
||||||
"<https://translate.codeberg.org/projects/searxng/searxng/it/>\n"
|
"searxng/it/>\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
"X-Generator: Weblate 2026.8.1\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -1677,11 +1678,11 @@ msgstr "Risoluzione"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:55
|
#: searx/templates/simple/result_templates/images.html:55
|
||||||
msgid "Image formats"
|
msgid "Image formats"
|
||||||
msgstr ""
|
msgstr "Formati di immagine"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:56
|
#: searx/templates/simple/result_templates/images.html:56
|
||||||
msgid "original format"
|
msgid "original format"
|
||||||
msgstr ""
|
msgstr "formato originale"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:64
|
#: searx/templates/simple/result_templates/images.html:64
|
||||||
msgid "View source"
|
msgid "View source"
|
||||||
@@ -2456,4 +2457,3 @@ msgstr "nascondi video"
|
|||||||
|
|
||||||
#~ msgid "Engine"
|
#~ msgid "Engine"
|
||||||
#~ msgstr "Motore"
|
#~ msgstr "Motore"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -14,23 +14,25 @@
|
|||||||
# Mooo <mooo@users.noreply.translate.codeberg.org>, 2025.
|
# Mooo <mooo@users.noreply.translate.codeberg.org>, 2025.
|
||||||
# naktinis <naktinis@users.noreply.translate.codeberg.org>, 2025.
|
# naktinis <naktinis@users.noreply.translate.codeberg.org>, 2025.
|
||||||
# return42 <return42@noreply.codeberg.org>, 2025, 2026.
|
# return42 <return42@noreply.codeberg.org>, 2025, 2026.
|
||||||
|
# Mooo <mooo@noreply.codeberg.org>, 2026.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: searx\n"
|
"Project-Id-Version: searx\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-05-19 12:07+0000\n"
|
"PO-Revision-Date: 2026-08-14 19:38+0000\n"
|
||||||
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
"Last-Translator: Mooo <mooo@noreply.codeberg.org>\n"
|
||||||
"Language: lt\n"
|
"Language: lt\n"
|
||||||
"Language-Team: Lithuanian "
|
"Language-Team: Lithuanian <https://translate.codeberg.org/projects/searxng/"
|
||||||
"<https://translate.codeberg.org/projects/searxng/searxng/lt/>\n"
|
"searxng/lt/>\n"
|
||||||
"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100"
|
"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < "
|
||||||
" < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < "
|
"11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 "
|
||||||
"11) ? 1 : n % 1 != 0 ? 2: 3);\n"
|
": n % 1 != 0 ? 2: 3);\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
"X-Generator: Weblate 2026.8.1\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -40,7 +42,7 @@ msgstr "be tolesnio pogrupio"
|
|||||||
#. CONSTANT_NAMES['DEFAULT_CATEGORY']
|
#. CONSTANT_NAMES['DEFAULT_CATEGORY']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "other"
|
msgid "other"
|
||||||
msgstr "kitas"
|
msgstr "kita"
|
||||||
|
|
||||||
#. CATEGORY_NAMES['FILES']
|
#. CATEGORY_NAMES['FILES']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -80,7 +82,7 @@ msgstr "radijas"
|
|||||||
#. CATEGORY_NAMES['TV']
|
#. CATEGORY_NAMES['TV']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "tv"
|
msgid "tv"
|
||||||
msgstr "televizorius"
|
msgstr "televizija"
|
||||||
|
|
||||||
#. CATEGORY_NAMES['IT']
|
#. CATEGORY_NAMES['IT']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -130,7 +132,7 @@ msgstr "paketai"
|
|||||||
#. CATEGORY_GROUPS['Q_A']
|
#. CATEGORY_GROUPS['Q_A']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "q&a"
|
msgid "q&a"
|
||||||
msgstr "Dažnai užduodami klausymai"
|
msgstr "klausimai ir atsakymai"
|
||||||
|
|
||||||
#. CATEGORY_GROUPS['REPOS']
|
#. CATEGORY_GROUPS['REPOS']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -160,17 +162,17 @@ msgstr "automatinis"
|
|||||||
#. STYLE_NAMES['LIGHT']
|
#. STYLE_NAMES['LIGHT']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "light"
|
msgid "light"
|
||||||
msgstr "šviesi"
|
msgstr "šviesus"
|
||||||
|
|
||||||
#. STYLE_NAMES['DARK']
|
#. STYLE_NAMES['DARK']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "dark"
|
msgid "dark"
|
||||||
msgstr "tamsi"
|
msgstr "tamsus"
|
||||||
|
|
||||||
#. STYLE_NAMES['BLACK']
|
#. STYLE_NAMES['BLACK']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "black"
|
msgid "black"
|
||||||
msgstr "juoda"
|
msgstr "juodas"
|
||||||
|
|
||||||
#. BRAND_CUSTOM_LINKS['UPTIME']
|
#. BRAND_CUSTOM_LINKS['UPTIME']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -185,22 +187,22 @@ msgstr "Apie"
|
|||||||
#. WEATHER_TERMS['AVERAGE TEMP.']
|
#. WEATHER_TERMS['AVERAGE TEMP.']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Average temp."
|
msgid "Average temp."
|
||||||
msgstr "Vidutinė temperatura"
|
msgstr "Vidutinė temperatūra"
|
||||||
|
|
||||||
#. WEATHER_TERMS['CLOUD COVER']
|
#. WEATHER_TERMS['CLOUD COVER']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Cloud cover"
|
msgid "Cloud cover"
|
||||||
msgstr "Debesio serveris"
|
msgstr "Debesų padengimas"
|
||||||
|
|
||||||
#. WEATHER_TERMS['CONDITION']
|
#. WEATHER_TERMS['CONDITION']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Condition"
|
msgid "Condition"
|
||||||
msgstr "Sąlyga"
|
msgstr "Sąlygos"
|
||||||
|
|
||||||
#. WEATHER_TERMS['CURRENT CONDITION']
|
#. WEATHER_TERMS['CURRENT CONDITION']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Current condition"
|
msgid "Current condition"
|
||||||
msgstr "Esamos sąlygos"
|
msgstr "Dabartinės sąlygos"
|
||||||
|
|
||||||
#. WEATHER_TERMS['EVENING']
|
#. WEATHER_TERMS['EVENING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -220,12 +222,12 @@ msgstr "Dregmė"
|
|||||||
#. WEATHER_TERMS['MAX TEMP.']
|
#. WEATHER_TERMS['MAX TEMP.']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Max temp."
|
msgid "Max temp."
|
||||||
msgstr "Aukščiausia temperatura"
|
msgstr "Aukščiausia temperatūra"
|
||||||
|
|
||||||
#. WEATHER_TERMS['MIN TEMP.']
|
#. WEATHER_TERMS['MIN TEMP.']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Min temp."
|
msgid "Min temp."
|
||||||
msgstr "Mažiausia temperatura"
|
msgstr "Mažiausia temperatūra"
|
||||||
|
|
||||||
#. WEATHER_TERMS['MORNING']
|
#. WEATHER_TERMS['MORNING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -260,7 +262,7 @@ msgstr "Saulėlydis"
|
|||||||
#. WEATHER_TERMS['TEMPERATURE']
|
#. WEATHER_TERMS['TEMPERATURE']
|
||||||
#: searx/searxng.msg searx/templates/simple/answer/weather.html:17
|
#: searx/searxng.msg searx/templates/simple/answer/weather.html:17
|
||||||
msgid "Temperature"
|
msgid "Temperature"
|
||||||
msgstr "Temperatura"
|
msgstr "Temperatūra"
|
||||||
|
|
||||||
#. WEATHER_TERMS['UV INDEX']
|
#. WEATHER_TERMS['UV INDEX']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -280,207 +282,207 @@ msgstr "Vėjas"
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Clear sky"
|
msgid "Clear sky"
|
||||||
msgstr ""
|
msgstr "Giedra"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Partly cloudy"
|
msgid "Partly cloudy"
|
||||||
msgstr ""
|
msgstr "Šiek tiek debesuota"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Cloudy"
|
msgid "Cloudy"
|
||||||
msgstr ""
|
msgstr "Debesuota"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Fair"
|
msgid "Fair"
|
||||||
msgstr ""
|
msgstr "Nedebesuota"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Fog"
|
msgid "Fog"
|
||||||
msgstr ""
|
msgstr "Rūkas"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light rain and thunder"
|
msgid "Light rain and thunder"
|
||||||
msgstr ""
|
msgstr "Silpnas lietus su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light rain showers and thunder"
|
msgid "Light rain showers and thunder"
|
||||||
msgstr ""
|
msgstr "Silpnas liūtinis lietus su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light rain showers"
|
msgid "Light rain showers"
|
||||||
msgstr ""
|
msgstr "Silpnas liūtinis lietus"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light rain"
|
msgid "Light rain"
|
||||||
msgstr ""
|
msgstr "Silpnas lietus"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Rain and thunder"
|
msgid "Rain and thunder"
|
||||||
msgstr ""
|
msgstr "Lietus su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Rain showers and thunder"
|
msgid "Rain showers and thunder"
|
||||||
msgstr ""
|
msgstr "Liūtinis lietus su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Rain showers"
|
msgid "Rain showers"
|
||||||
msgstr ""
|
msgstr "Liūtinis lietus"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Rain"
|
msgid "Rain"
|
||||||
msgstr ""
|
msgstr "Lietus"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy rain and thunder"
|
msgid "Heavy rain and thunder"
|
||||||
msgstr ""
|
msgstr "Stiprus lietus su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy rain showers and thunder"
|
msgid "Heavy rain showers and thunder"
|
||||||
msgstr ""
|
msgstr "Stiprus liūtinis lietus su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy rain showers"
|
msgid "Heavy rain showers"
|
||||||
msgstr ""
|
msgstr "Stiprus liūtinis lietus"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy rain"
|
msgid "Heavy rain"
|
||||||
msgstr ""
|
msgstr "Stiprus lietus"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light sleet and thunder"
|
msgid "Light sleet and thunder"
|
||||||
msgstr ""
|
msgstr "Silpna šlapdriba su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light sleet showers and thunder"
|
msgid "Light sleet showers and thunder"
|
||||||
msgstr ""
|
msgstr "Silpna šlapdriba, liūtis su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light sleet showers"
|
msgid "Light sleet showers"
|
||||||
msgstr ""
|
msgstr "Silpna šlapdriba, liūtis"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light sleet"
|
msgid "Light sleet"
|
||||||
msgstr ""
|
msgstr "Silpna šlapdriba"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Sleet and thunder"
|
msgid "Sleet and thunder"
|
||||||
msgstr ""
|
msgstr "Šlapdriba su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Sleet showers and thunder"
|
msgid "Sleet showers and thunder"
|
||||||
msgstr ""
|
msgstr "Šlapdriba, liūtis su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Sleet showers"
|
msgid "Sleet showers"
|
||||||
msgstr ""
|
msgstr "Šlapdriba, liūtis"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Sleet"
|
msgid "Sleet"
|
||||||
msgstr ""
|
msgstr "Šlapdriba"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy sleet and thunder"
|
msgid "Heavy sleet and thunder"
|
||||||
msgstr ""
|
msgstr "Stipri šlapdriba su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy sleet showers and thunder"
|
msgid "Heavy sleet showers and thunder"
|
||||||
msgstr ""
|
msgstr "Stipri šlapdriba, liūtis su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy sleet showers"
|
msgid "Heavy sleet showers"
|
||||||
msgstr ""
|
msgstr "Stipri šlapdriba, liūtis"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy sleet"
|
msgid "Heavy sleet"
|
||||||
msgstr ""
|
msgstr "Stipri šlapdriba"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light snow and thunder"
|
msgid "Light snow and thunder"
|
||||||
msgstr ""
|
msgstr "Silpnas sniegas su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light snow showers and thunder"
|
msgid "Light snow showers and thunder"
|
||||||
msgstr ""
|
msgstr "Silpnas liūtinis sniegas su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light snow showers"
|
msgid "Light snow showers"
|
||||||
msgstr ""
|
msgstr "Silpnas liūtinis sniegas"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Light snow"
|
msgid "Light snow"
|
||||||
msgstr ""
|
msgstr "Silpnas sniegas"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow and thunder"
|
msgid "Snow and thunder"
|
||||||
msgstr ""
|
msgstr "Sniegas su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow showers and thunder"
|
msgid "Snow showers and thunder"
|
||||||
msgstr ""
|
msgstr "Liūtinis sniegas su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow showers"
|
msgid "Snow showers"
|
||||||
msgstr ""
|
msgstr "Liūtinis sniegas"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Snow"
|
msgid "Snow"
|
||||||
msgstr ""
|
msgstr "Sniegas"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy snow and thunder"
|
msgid "Heavy snow and thunder"
|
||||||
msgstr ""
|
msgstr "Stiprus sniegas su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy snow showers and thunder"
|
msgid "Heavy snow showers and thunder"
|
||||||
msgstr ""
|
msgstr "Stiprus liūtinis sniegas su perkūnija"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy snow showers"
|
msgid "Heavy snow showers"
|
||||||
msgstr ""
|
msgstr "Stiprus liūtinis sniegas"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy snow"
|
msgid "Heavy snow"
|
||||||
msgstr ""
|
msgstr "Stiprus sniegas"
|
||||||
|
|
||||||
#. SOCIAL_MEDIA_TERMS['SUBSCRIBERS']
|
#. SOCIAL_MEDIA_TERMS['SUBSCRIBERS']
|
||||||
#: searx/engines/lemmy.py:85 searx/searxng.msg
|
#: searx/engines/lemmy.py:85 searx/searxng.msg
|
||||||
@@ -495,7 +497,7 @@ msgstr "Įrašai"
|
|||||||
#. SOCIAL_MEDIA_TERMS['ACTIVE USERS']
|
#. SOCIAL_MEDIA_TERMS['ACTIVE USERS']
|
||||||
#: searx/engines/lemmy.py:87 searx/searxng.msg
|
#: searx/engines/lemmy.py:87 searx/searxng.msg
|
||||||
msgid "active users"
|
msgid "active users"
|
||||||
msgstr "Aktyvus naudotojai"
|
msgstr "Aktyvūs naudotojai"
|
||||||
|
|
||||||
#. SOCIAL_MEDIA_TERMS['COMMENTS']
|
#. SOCIAL_MEDIA_TERMS['COMMENTS']
|
||||||
#: searx/engines/discourse.py:157 searx/engines/hackernews.py:83
|
#: searx/engines/discourse.py:157 searx/engines/hackernews.py:83
|
||||||
@@ -506,12 +508,12 @@ msgstr "Komentarai"
|
|||||||
#. SOCIAL_MEDIA_TERMS['USER']
|
#. SOCIAL_MEDIA_TERMS['USER']
|
||||||
#: searx/engines/lemmy.py:129 searx/engines/lemmy.py:164 searx/searxng.msg
|
#: searx/engines/lemmy.py:129 searx/engines/lemmy.py:164 searx/searxng.msg
|
||||||
msgid "user"
|
msgid "user"
|
||||||
msgstr "Naudotojai"
|
msgstr "Naudotojas"
|
||||||
|
|
||||||
#. SOCIAL_MEDIA_TERMS['COMMUNITY']
|
#. SOCIAL_MEDIA_TERMS['COMMUNITY']
|
||||||
#: searx/engines/lemmy.py:131 searx/engines/lemmy.py:165 searx/searxng.msg
|
#: searx/engines/lemmy.py:131 searx/engines/lemmy.py:165 searx/searxng.msg
|
||||||
msgid "community"
|
msgid "community"
|
||||||
msgstr "Bendruomene"
|
msgstr "bendruomenė"
|
||||||
|
|
||||||
#. SOCIAL_MEDIA_TERMS['POINTS']
|
#. SOCIAL_MEDIA_TERMS['POINTS']
|
||||||
#: searx/engines/hackernews.py:83 searx/searxng.msg
|
#: searx/engines/hackernews.py:83 searx/searxng.msg
|
||||||
@@ -554,11 +556,11 @@ msgstr "Šaltinis"
|
|||||||
|
|
||||||
#: searx/webapp.py:330
|
#: searx/webapp.py:330
|
||||||
msgid "Error loading the next page"
|
msgid "Error loading the next page"
|
||||||
msgstr "Klaida keliant kitą puslapį"
|
msgstr "Klaida įkeliant kitą puslapį"
|
||||||
|
|
||||||
#: searx/webapp.py:478 searx/webapp.py:876
|
#: searx/webapp.py:478 searx/webapp.py:876
|
||||||
msgid "Invalid settings, please edit your preferences"
|
msgid "Invalid settings, please edit your preferences"
|
||||||
msgstr "Neteisingi nustatymai, pakeiskite savo nuostatas"
|
msgstr "Neteisingi nustatymai, pataisykite nuostatas"
|
||||||
|
|
||||||
#: searx/webapp.py:494
|
#: searx/webapp.py:494
|
||||||
msgid "Invalid settings"
|
msgid "Invalid settings"
|
||||||
@@ -574,7 +576,7 @@ msgstr "laikas baigėsi"
|
|||||||
|
|
||||||
#: searx/webutils.py:37
|
#: searx/webutils.py:37
|
||||||
msgid "parsing error"
|
msgid "parsing error"
|
||||||
msgstr "parsavymo klaida"
|
msgstr "nagrinėjimo klaida"
|
||||||
|
|
||||||
#: searx/webutils.py:38
|
#: searx/webutils.py:38
|
||||||
msgid "HTTP protocol error"
|
msgid "HTTP protocol error"
|
||||||
@@ -590,7 +592,7 @@ msgstr "SSL klaida: liudijimo tikrinimas patyrė nesėkmę"
|
|||||||
|
|
||||||
#: searx/webutils.py:42
|
#: searx/webutils.py:42
|
||||||
msgid "unexpected crash"
|
msgid "unexpected crash"
|
||||||
msgstr "netikėta klaida"
|
msgstr "netikėta strigtis"
|
||||||
|
|
||||||
#: searx/webutils.py:49
|
#: searx/webutils.py:49
|
||||||
msgid "HTTP error"
|
msgid "HTTP error"
|
||||||
@@ -602,11 +604,11 @@ msgstr "HTTP ryšio klaida"
|
|||||||
|
|
||||||
#: searx/webutils.py:56
|
#: searx/webutils.py:56
|
||||||
msgid "proxy error"
|
msgid "proxy error"
|
||||||
msgstr "persiuntimų serverio klaida"
|
msgstr "įgaliotojo serverio klaida"
|
||||||
|
|
||||||
#: searx/webutils.py:57
|
#: searx/webutils.py:57
|
||||||
msgid "CAPTCHA"
|
msgid "CAPTCHA"
|
||||||
msgstr "CAPTCHA"
|
msgstr "saugos kodas"
|
||||||
|
|
||||||
#: searx/webutils.py:58
|
#: searx/webutils.py:58
|
||||||
msgid "too many requests"
|
msgid "too many requests"
|
||||||
@@ -622,31 +624,31 @@ msgstr "serverio API klaida"
|
|||||||
|
|
||||||
#: searx/webutils.py:79
|
#: searx/webutils.py:79
|
||||||
msgid "Suspended"
|
msgid "Suspended"
|
||||||
msgstr "Sustabdytas"
|
msgstr "Pristabdyta"
|
||||||
|
|
||||||
#: searx/webutils.py:307
|
#: searx/webutils.py:307
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "{minutes} minute(s) ago"
|
msgid "{minutes} minute(s) ago"
|
||||||
msgstr "prieš {minutes} min"
|
msgstr "prieš {minutes} min."
|
||||||
|
|
||||||
#: searx/webutils.py:308
|
#: searx/webutils.py:308
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||||
msgstr "prieš {hours} val., {minutes} min"
|
msgstr "prieš {hours} val., {minutes} min."
|
||||||
|
|
||||||
#: searx/answerers/random.py:68
|
#: searx/answerers/random.py:68
|
||||||
msgid "Generate different random values"
|
msgid "Generate different random values"
|
||||||
msgstr "Generuoja įvairias atsitiktinius skaičius"
|
msgstr "Generuoja įvairias atsitiktines reikšmes"
|
||||||
|
|
||||||
#: searx/answerers/statistics.py:37
|
#: searx/answerers/statistics.py:37
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "Compute {func} of the arguments"
|
msgid "Compute {func} of the arguments"
|
||||||
msgstr "Apskaičiuoti {func} iš argumentų"
|
msgstr "Apskaičiuoti argumentų {func}"
|
||||||
|
|
||||||
#: searx/engines/boardreader.py:108
|
#: searx/engines/boardreader.py:108
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
msgid "Posted by {author}"
|
msgid "Posted by {author}"
|
||||||
msgstr ""
|
msgstr "Paskelbė {author}"
|
||||||
|
|
||||||
#: searx/engines/openstreetmap.py:155
|
#: searx/engines/openstreetmap.py:155
|
||||||
msgid "Show route in map .."
|
msgid "Show route in map .."
|
||||||
@@ -675,7 +677,7 @@ msgstr "balsai"
|
|||||||
|
|
||||||
#: searx/engines/radio_browser.py:164
|
#: searx/engines/radio_browser.py:164
|
||||||
msgid "clicks"
|
msgid "clicks"
|
||||||
msgstr "paspaudimai"
|
msgstr "spustelėjimai"
|
||||||
|
|
||||||
#: searx/engines/semantic_scholar.py:141
|
#: searx/engines/semantic_scholar.py:141
|
||||||
#, python-brace-format
|
#, python-brace-format
|
||||||
@@ -683,8 +685,8 @@ msgid ""
|
|||||||
"{numCitations} citations from the year {firstCitationVelocityYear} to "
|
"{numCitations} citations from the year {firstCitationVelocityYear} to "
|
||||||
"{lastCitationVelocityYear}"
|
"{lastCitationVelocityYear}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"{numCitations} citatos iš metų{firstCitationVelocityYear} to "
|
"{numCitations} citatos nuo {firstCitationVelocityYear} metų iki "
|
||||||
"{lastCitationVelocityYear}"
|
"{lastCitationVelocityYear} metų"
|
||||||
|
|
||||||
#: searx/engines/tineye.py:42
|
#: searx/engines/tineye.py:42
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -692,21 +694,22 @@ msgid ""
|
|||||||
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
|
"format. TinEye only supports images that are JPEG, PNG, GIF, BMP, TIFF or"
|
||||||
" WebP."
|
" WebP."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Nepavyko perskaityti šio vaizdo URL. Taip gali būti dėl nepalaikomo failo"
|
"Nepavyko perskaityti tos nuotraukos URL. Taip gali būti dėl nepalaikomo "
|
||||||
" formato. TinEye palaiko tik JPEG, PNG, GIF, BMP, TIFF arba WebP vaizdus."
|
"failo formato. TinEye palaiko tik JPEG, PNG, GIF, BMP, TIFF arba WebP "
|
||||||
|
"nuotraukas."
|
||||||
|
|
||||||
#: searx/engines/tineye.py:48
|
#: searx/engines/tineye.py:48
|
||||||
msgid ""
|
msgid ""
|
||||||
"The image is too simple to find matches. TinEye requires a basic level of"
|
"The image is too simple to find matches. TinEye requires a basic level of"
|
||||||
" visual detail to successfully identify matches."
|
" visual detail to successfully identify matches."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Vaizdas per paprastas, kad būtų galima rasti atitikmenų. Norint sėkmingai"
|
"Nuotrauka pernelyg paprasta, kad galima būtų rasti atitikčių. Norint "
|
||||||
" nustatyti atitikmenis, „TinEye“ reikalingas pagrindinis vizualinių "
|
"sėkmingai nustatyti atitiktis, TinEye reikia bazinio vizualinių detalių "
|
||||||
"detalių lygis."
|
"lygio."
|
||||||
|
|
||||||
#: searx/engines/tineye.py:53
|
#: searx/engines/tineye.py:53
|
||||||
msgid "The image could not be downloaded."
|
msgid "The image could not be downloaded."
|
||||||
msgstr "Nepavyko atsisiųsti vaizdo."
|
msgstr "Nepavyko atsisiųsti nuotraukos."
|
||||||
|
|
||||||
#: searx/engines/zlibrary.py:80
|
#: searx/engines/zlibrary.py:80
|
||||||
msgid "Language"
|
msgid "Language"
|
||||||
@@ -730,11 +733,11 @@ msgstr "Išfiltruoti onion rezultatus esančius Ahmia juodajame sąraše."
|
|||||||
|
|
||||||
#: searx/plugins/calculator.py:25
|
#: searx/plugins/calculator.py:25
|
||||||
msgid "Calculator"
|
msgid "Calculator"
|
||||||
msgstr ""
|
msgstr "Skaičiuotuvas"
|
||||||
|
|
||||||
#: searx/plugins/calculator.py:26
|
#: searx/plugins/calculator.py:26
|
||||||
msgid "Parses and solves mathematical expressions."
|
msgid "Parses and solves mathematical expressions."
|
||||||
msgstr ""
|
msgstr "Nagrinėja ir sprendžia matematinius reiškinius."
|
||||||
|
|
||||||
#: searx/plugins/hash_plugin.py:33
|
#: searx/plugins/hash_plugin.py:33
|
||||||
msgid "Hash plugin"
|
msgid "Hash plugin"
|
||||||
@@ -745,10 +748,12 @@ msgid ""
|
|||||||
"Converts strings to different hash digests. Available functions: md5, "
|
"Converts strings to different hash digests. Available functions: md5, "
|
||||||
"sha1, sha224, sha256, sha384, sha512."
|
"sha1, sha224, sha256, sha384, sha512."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Konvertuoja eilutes į skirtingas maišos reikšmes. Prieinamos funkcijos: md5, "
|
||||||
|
"sha1, sha224, sha256, sha384, sha512."
|
||||||
|
|
||||||
#: searx/plugins/hash_plugin.py:63
|
#: searx/plugins/hash_plugin.py:63
|
||||||
msgid "hash digest"
|
msgid "hash digest"
|
||||||
msgstr "maišos santrauka"
|
msgstr "maišos reikšmė"
|
||||||
|
|
||||||
#: searx/plugins/hostnames.py:119
|
#: searx/plugins/hostnames.py:119
|
||||||
msgid "Hostnames plugin"
|
msgid "Hostnames plugin"
|
||||||
@@ -766,7 +771,7 @@ msgstr "Begalinis slinkimas"
|
|||||||
msgid ""
|
msgid ""
|
||||||
"Automatically loads the next page when scrolling to bottom of the current"
|
"Automatically loads the next page when scrolling to bottom of the current"
|
||||||
" page"
|
" page"
|
||||||
msgstr "Automatiškai įkelti kitą puslapį, kai nuslenkama į esamo puslapio apačią"
|
msgstr "Automatiškai įkelia kitą puslapį, kai slenkama į esamo puslapio apačią"
|
||||||
|
|
||||||
#: searx/plugins/oa_doi_rewrite.py:54
|
#: searx/plugins/oa_doi_rewrite.py:54
|
||||||
msgid "Open Access DOI rewrite"
|
msgid "Open Access DOI rewrite"
|
||||||
@@ -802,7 +807,7 @@ msgstr "Tavo naudotojo agentas (user-agent) yra: "
|
|||||||
|
|
||||||
#: searx/plugins/time_zone.py:33
|
#: searx/plugins/time_zone.py:33
|
||||||
msgid "Timezones plugin"
|
msgid "Timezones plugin"
|
||||||
msgstr ""
|
msgstr "Laiko juostų įskiepis"
|
||||||
|
|
||||||
#: searx/plugins/time_zone.py:34
|
#: searx/plugins/time_zone.py:34
|
||||||
msgid "Display the current time on different time zones."
|
msgid "Display the current time on different time zones."
|
||||||
@@ -1544,7 +1549,7 @@ msgstr "Tema"
|
|||||||
|
|
||||||
#: searx/templates/simple/preferences/theme.html:14
|
#: searx/templates/simple/preferences/theme.html:14
|
||||||
msgid "Change the layout of SearXNG"
|
msgid "Change the layout of SearXNG"
|
||||||
msgstr ""
|
msgstr "Keisti SearXNG išdėstymą"
|
||||||
|
|
||||||
#: searx/templates/simple/preferences/theme.html:19
|
#: searx/templates/simple/preferences/theme.html:19
|
||||||
msgid "Theme style"
|
msgid "Theme style"
|
||||||
@@ -1572,15 +1577,15 @@ msgstr "Keisti išdėstymo kalbą"
|
|||||||
|
|
||||||
#: searx/templates/simple/preferences/urlformatting.html:2
|
#: searx/templates/simple/preferences/urlformatting.html:2
|
||||||
msgid "URL formatting"
|
msgid "URL formatting"
|
||||||
msgstr ""
|
msgstr "URL formatavimas"
|
||||||
|
|
||||||
#: searx/templates/simple/preferences/urlformatting.html:8
|
#: searx/templates/simple/preferences/urlformatting.html:8
|
||||||
msgid "Pretty"
|
msgid "Pretty"
|
||||||
msgstr ""
|
msgstr "Gražus"
|
||||||
|
|
||||||
#: searx/templates/simple/preferences/urlformatting.html:13
|
#: searx/templates/simple/preferences/urlformatting.html:13
|
||||||
msgid "Full"
|
msgid "Full"
|
||||||
msgstr ""
|
msgstr "Visas"
|
||||||
|
|
||||||
#: searx/templates/simple/preferences/urlformatting.html:18
|
#: searx/templates/simple/preferences/urlformatting.html:18
|
||||||
msgid "Host"
|
msgid "Host"
|
||||||
@@ -1627,7 +1632,7 @@ msgstr "Tipas"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/file.html:67
|
#: searx/templates/simple/result_templates/file.html:67
|
||||||
msgid "Download"
|
msgid "Download"
|
||||||
msgstr ""
|
msgstr "Atsisiųsti"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:53
|
#: searx/templates/simple/result_templates/images.html:53
|
||||||
msgid "Resolution"
|
msgid "Resolution"
|
||||||
@@ -1639,7 +1644,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:56
|
#: searx/templates/simple/result_templates/images.html:56
|
||||||
msgid "original format"
|
msgid "original format"
|
||||||
msgstr ""
|
msgstr "pradinis formatas"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:64
|
#: searx/templates/simple/result_templates/images.html:64
|
||||||
msgid "View source"
|
msgid "View source"
|
||||||
@@ -1663,7 +1668,7 @@ msgstr "Versija"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/packages.html:18
|
#: searx/templates/simple/result_templates/packages.html:18
|
||||||
msgid "Maintainer"
|
msgid "Maintainer"
|
||||||
msgstr ""
|
msgstr "Prižiūrėtojas"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/packages.html:24
|
#: searx/templates/simple/result_templates/packages.html:24
|
||||||
msgid "Updated at"
|
msgid "Updated at"
|
||||||
@@ -1688,7 +1693,7 @@ msgstr "Projektas"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/packages.html:55
|
#: searx/templates/simple/result_templates/packages.html:55
|
||||||
msgid "Project homepage"
|
msgid "Project homepage"
|
||||||
msgstr ""
|
msgstr "Projekto internetinė svetainė"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/paper.html:8
|
#: searx/templates/simple/result_templates/paper.html:8
|
||||||
msgid "Published date"
|
msgid "Published date"
|
||||||
@@ -2372,4 +2377,3 @@ msgstr "slėpti vaizdo įrašą"
|
|||||||
|
|
||||||
#~ msgid "Engine"
|
#~ msgid "Engine"
|
||||||
#~ msgstr "Sistema"
|
#~ msgstr "Sistema"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -24,16 +24,17 @@ msgstr ""
|
|||||||
"Project-Id-Version: PROJECT VERSION\n"
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-05-19 12:08+0000\n"
|
"PO-Revision-Date: 2026-08-21 20:54+0000\n"
|
||||||
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
||||||
"Language: nb_NO\n"
|
"Language: nb_NO\n"
|
||||||
"Language-Team: Norwegian Bokmål "
|
"Language-Team: Norwegian Bokmål <https://translate.codeberg.org/projects/"
|
||||||
"<https://translate.codeberg.org/projects/searxng/searxng/nb_NO/>\n"
|
"searxng/searxng/nb_NO/>\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
"X-Generator: Weblate 2026.8.1\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -1645,7 +1646,7 @@ msgstr "Oppløsning"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:55
|
#: searx/templates/simple/result_templates/images.html:55
|
||||||
msgid "Image formats"
|
msgid "Image formats"
|
||||||
msgstr ""
|
msgstr "Bildeformater"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/images.html:56
|
#: searx/templates/simple/result_templates/images.html:56
|
||||||
msgid "original format"
|
msgid "original format"
|
||||||
@@ -2318,4 +2319,3 @@ msgstr "skjul video"
|
|||||||
|
|
||||||
#~ msgid "Engine"
|
#~ msgid "Engine"
|
||||||
#~ msgstr "Søkemotor"
|
#~ msgstr "Søkemotor"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -19,20 +19,21 @@
|
|||||||
# lukisko <lukisko@noreply.codeberg.org>, 2026.
|
# lukisko <lukisko@noreply.codeberg.org>, 2026.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: searx\n"
|
"Project-Id-Version: searx\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-07-08 00:07+0000\n"
|
"PO-Revision-Date: 2026-08-21 20:55+0000\n"
|
||||||
"Last-Translator: lukisko <lukisko@noreply.codeberg.org>\n"
|
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
||||||
"Language: sk\n"
|
"Language: sk\n"
|
||||||
"Language-Team: Slovak "
|
"Language-Team: Slovak <https://translate.codeberg.org/projects/searxng/"
|
||||||
"<https://translate.codeberg.org/projects/searxng/searxng/sk/>\n"
|
"searxng/sk/>\n"
|
||||||
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 "
|
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && "
|
||||||
"&& n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"
|
"n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
"X-Generator: Weblate 2026.8.1\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -407,7 +408,7 @@ msgstr "Dážď so snehom"
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy sleet and thunder"
|
msgid "Heavy sleet and thunder"
|
||||||
msgstr ""
|
msgstr "Silný dážď so snehom a hromy"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -422,7 +423,7 @@ msgstr ""
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy sleet"
|
msgid "Heavy sleet"
|
||||||
msgstr ""
|
msgstr "Silný dážď so snehom"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -2401,4 +2402,3 @@ msgstr "skryť video"
|
|||||||
|
|
||||||
#~ msgid "Engine"
|
#~ msgid "Engine"
|
||||||
#~ msgstr "Vyhľadávač"
|
#~ msgstr "Vyhľadávač"
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -39,7 +39,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: searx\n"
|
"Project-Id-Version: searx\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
"POT-Creation-Date: 2026-07-15 15:45+0000\n"
|
||||||
"PO-Revision-Date: 2026-07-17 12:20+0000\n"
|
"PO-Revision-Date: 2026-08-21 20:55+0000\n"
|
||||||
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
"Last-Translator: return42 <return42@noreply.codeberg.org>\n"
|
||||||
"Language-Team: Turkish <https://translate.codeberg.org/projects/searxng/"
|
"Language-Team: Turkish <https://translate.codeberg.org/projects/searxng/"
|
||||||
"searxng/tr/>\n"
|
"searxng/tr/>\n"
|
||||||
@@ -48,7 +48,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=utf-8\n"
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
"X-Generator: Weblate 2026.6.1\n"
|
"X-Generator: Weblate 2026.8.1\n"
|
||||||
"Generated-By: Babel 2.18.0\n"
|
"Generated-By: Babel 2.18.0\n"
|
||||||
|
|
||||||
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
#. CONSTANT_NAMES['NO_SUBGROUPING']
|
||||||
@@ -89,7 +89,7 @@ msgstr "görseller"
|
|||||||
#. CATEGORY_NAMES['VIDEOS']
|
#. CATEGORY_NAMES['VIDEOS']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "videos"
|
msgid "videos"
|
||||||
msgstr "görüntüler"
|
msgstr "videolar"
|
||||||
|
|
||||||
#. CATEGORY_NAMES['RADIO']
|
#. CATEGORY_NAMES['RADIO']
|
||||||
#: searx/engines/radio_browser.py:160 searx/searxng.msg
|
#: searx/engines/radio_browser.py:160 searx/searxng.msg
|
||||||
@@ -119,7 +119,7 @@ msgstr "harita"
|
|||||||
#. CATEGORY_NAMES['ONIONS']
|
#. CATEGORY_NAMES['ONIONS']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "onions"
|
msgid "onions"
|
||||||
msgstr "soğanlar"
|
msgstr "onionlar (tor)"
|
||||||
|
|
||||||
#. CATEGORY_NAMES['SCIENCE']
|
#. CATEGORY_NAMES['SCIENCE']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -239,12 +239,12 @@ msgstr "Rutubet"
|
|||||||
#. WEATHER_TERMS['MAX TEMP.']
|
#. WEATHER_TERMS['MAX TEMP.']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Max temp."
|
msgid "Max temp."
|
||||||
msgstr "Maks Sıcaklık.."
|
msgstr "Maks. Sıcaklık"
|
||||||
|
|
||||||
#. WEATHER_TERMS['MIN TEMP.']
|
#. WEATHER_TERMS['MIN TEMP.']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Min temp."
|
msgid "Min temp."
|
||||||
msgstr "Min Sıcaklık"
|
msgstr "Min. Sıcaklık"
|
||||||
|
|
||||||
#. WEATHER_TERMS['MORNING']
|
#. WEATHER_TERMS['MORNING']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -269,7 +269,7 @@ msgstr "Basınç"
|
|||||||
#. WEATHER_TERMS['SUNRISE']
|
#. WEATHER_TERMS['SUNRISE']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Sunrise"
|
msgid "Sunrise"
|
||||||
msgstr "gündoğumu"
|
msgstr "Gün doğumu"
|
||||||
|
|
||||||
#. WEATHER_TERMS['SUNSET']
|
#. WEATHER_TERMS['SUNSET']
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -364,7 +364,7 @@ msgstr "Yağmur"
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy rain and thunder"
|
msgid "Heavy rain and thunder"
|
||||||
msgstr "Sağanak yağmur ve fırtına"
|
msgstr "Şiddetli yağmur ve gök gürültüsü"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -379,7 +379,7 @@ msgstr "Şiddetli sağanak yağış"
|
|||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
msgid "Heavy rain"
|
msgid "Heavy rain"
|
||||||
msgstr "Sağanak Yağmur"
|
msgstr "Şiddetli Yağmur"
|
||||||
|
|
||||||
#. WEATHER_CONDITIONS
|
#. WEATHER_CONDITIONS
|
||||||
#: searx/searxng.msg
|
#: searx/searxng.msg
|
||||||
@@ -1778,11 +1778,11 @@ msgstr "Dosya Sayısı"
|
|||||||
|
|
||||||
#: searx/templates/simple/result_templates/videos.html:6
|
#: searx/templates/simple/result_templates/videos.html:6
|
||||||
msgid "show video"
|
msgid "show video"
|
||||||
msgstr "görüntüyü göster"
|
msgstr "videoyu göster"
|
||||||
|
|
||||||
#: searx/templates/simple/result_templates/videos.html:6
|
#: searx/templates/simple/result_templates/videos.html:6
|
||||||
msgid "hide video"
|
msgid "hide video"
|
||||||
msgstr "görüntüyü gizle"
|
msgstr "videoyu gizle"
|
||||||
|
|
||||||
#~ msgid "Engine time (sec)"
|
#~ msgid "Engine time (sec)"
|
||||||
#~ msgstr "Motor süresi (san)"
|
#~ msgstr "Motor süresi (san)"
|
||||||
|
|||||||
@@ -1195,7 +1195,7 @@ def opensearch():
|
|||||||
method = 'GET'
|
method = 'GET'
|
||||||
|
|
||||||
if method not in ('POST', 'GET'):
|
if method not in ('POST', 'GET'):
|
||||||
method = 'POST'
|
method = 'GET'
|
||||||
|
|
||||||
ret = render('opensearch.xml', opensearch_method=method, autocomplete=autocomplete)
|
ret = render('opensearch.xml', opensearch_method=method, autocomplete=autocomplete)
|
||||||
resp = Response(response=ret, status=200, mimetype="application/opensearchdescription+xml")
|
resp = Response(response=ret, status=200, mimetype="application/opensearchdescription+xml")
|
||||||
|
|||||||
Reference in New Issue
Block a user