diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index b9e6e3de..e35d2a0a 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,6 +1,6 @@ --- name: Bug report -about: Create a report to help us improve +about: Create a report to help us improve the project! title: '' labels: bug assignees: '' @@ -11,6 +11,7 @@ assignees: '' A clear and concise description of what the bug is. **Expected Error / Traceback** + ``` Please provide the error traceback here ``` @@ -20,9 +21,22 @@ Please provide how you run the dashboard **OS Information:** - OS: [e.g. Ubuntu 18.02] - - Python Version: [e.g v3.7] + - Docker: [e.g. Yes or No] + - Python Version: [e.g v37] + +**Docker Details** +If using docker, provide the following: + - Image used: [e.g. ghcr.io/wgdashboard/wgdashboard:latest] + - Compose: [e.g. Yes or No] +If Docker Compose is used: + +```yaml +**Your Docker Compose** +``` **Sample of your `.conf` file** -``` -Please provide a sample of your configuration file that you are having problem with. You can replace your public key and private key to ABCD... + +```ini +Please provide a sample of your configuration file that you are having problem with. +You should replace your public key and private key to ABCD... ``` diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..1df4b30d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,14 @@ +blank_issues_enabled: false +contact_links: + - name: WGDashboard Community Support (Github) + url: https://github.com/orgs/WGDashboard/discussions + about: Please ask and answer questions here. + + - name: WGDashboard Community Support (Discord) + url: https://discord.gg/72TwzjeuWm + about: Discord Server about WGDashboard + + - name: WGDashboard Issue reporting (Bugs and Feature Requests (FR)) + url: https://github.com/WGDashboard/WGDashboard/issues + about: Please report bugs or feature requests here so they can be tracked + diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index 6665601b..18508344 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -1,6 +1,6 @@ --- -name: Feature request -about: Suggest an idea for this project +name: Feature Request (FR) +about: Suggest an idea to extend or improve the usage of the project title: '' labels: enhancement assignees: '' @@ -10,5 +10,11 @@ assignees: '' **Is your feature request related to a problem? Please describe.** A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] +**Related/Adjacent Issues** +Paste a Github link to possible issues that could be solved if they exist. + +**What have you done yourself?** +What have you already tried to do or considered to fix this issue? + **Describe the solution you'd like** A clear and concise description of what you want to happen. diff --git a/.github/workflows/docker-debug.yml b/.github/workflows/docker-debug.yml index 17821422..743d6ee5 100644 --- a/.github/workflows/docker-debug.yml +++ b/.github/workflows/docker-debug.yml @@ -1,4 +1,4 @@ -name: MANUAL Docker workflow for debugging +name: Clone of Docker Build and Push on: workflow_dispatch: @@ -9,7 +9,7 @@ env: DOCKER_IMAGE: WGDashboard jobs: - docker_build: + docker_build_debug: runs-on: ubuntu-latest permissions: contents: read @@ -64,10 +64,10 @@ jobs: labels: ${{ steps.meta.outputs.labels }} platforms: linux/amd64 - docker_scan: + docker_scan_debug: if: ${{ github.event_name != 'pull_request' }} runs-on: ubuntu-latest - needs: docker_build + needs: docker_build_debug steps: - name: Log in to Docker Hub uses: docker/login-action@v3 diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 29dd3d5b..8d09c180 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -5,6 +5,7 @@ on: push: branches: - 'main' + - '**dev' tags: - '*' paths: diff --git a/src/static/app/package-lock.json b/src/static/app/package-lock.json index a60e6169..66f3627e 100644 --- a/src/static/app/package-lock.json +++ b/src/static/app/package-lock.json @@ -8,18 +8,18 @@ "name": "app", "version": "4.3.2", "dependencies": { - "@volar/language-server": "2.4.27", + "@volar/language-server": "2.4.28", "@vue/language-server": "3.2.4", "@vuepic/vue-datepicker": "^12.1.0", - "@vueuse/core": "^14.0.0", + "@vueuse/core": "^14.2.0", "@vueuse/shared": "^14.1.0", "animate.css": "^4.1.1", "bootstrap": "^5.3.2", "bootstrap-icons": "^1.11.3", - "cidr-tools": "^11.0.3", + "cidr-tools": "^11.0.6", "css-color-converter": "^2.0.0", "dayjs": "^1.11.19", - "electron-builder": "^26.4.0", + "electron-builder": "^26.7.0", "fuse.js": "^7.0.0", "i": "^0.3.7", "is-cidr": "^6.0.2", @@ -167,6 +167,68 @@ "node": ">=10" } }, + "node_modules/@electron/get": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-3.1.0.tgz", + "integrity": "sha512-F+nKc0xW+kVbBRhFzaMgPy3KwmuNTYX1fx6+FxxoSnNgwYX6LD7AKBTWkU0MQ6IBoe7dz069CNkR673sPAgkCQ==", + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=14" + }, + "optionalDependencies": { + "global-agent": "^3.0.0" + } + }, + "node_modules/@electron/get/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/@electron/get/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "license": "MIT", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/get/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@electron/get/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/@electron/notarize": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/@electron/notarize/-/notarize-2.5.0.tgz", @@ -230,13 +292,12 @@ } }, "node_modules/@electron/rebuild": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-4.0.1.tgz", - "integrity": "sha512-iMGXb6Ib7H/Q3v+BKZJoETgF9g6KMNZVbsO4b7Dmpgb5qTFqyFTzqW9F3TOSHdybv2vKYKzSS9OiZL+dcJb+1Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-4.0.3.tgz", + "integrity": "sha512-u9vpTHRMkOYCs/1FLiSVAFZ7FbjsXK+bQuzviJZa+lG7BHZl1nz52/IcGvwa3sk80/fc3llutBkbCq10Vh8WQA==", "license": "MIT", "dependencies": { "@malept/cross-spawn-promise": "^2.0.0", - "chalk": "^4.0.0", "debug": "^4.1.1", "detect-libc": "^2.0.1", "got": "^11.7.0", @@ -247,7 +308,7 @@ "ora": "^5.1.0", "read-binary-file-arch": "^1.0.6", "semver": "^7.3.5", - "tar": "^6.0.5", + "tar": "^7.5.6", "yargs": "^17.0.1" }, "bin": { @@ -319,6 +380,7 @@ "integrity": "sha512-dfZeox66AvdPtb2lD8OsIIQh12Tp0GNCRUDfBHIKGpbmopZto2/A8nSpYYLoedPIHpqkeblZ/k8OV0Gy7PYuyQ==", "license": "BSD-2-Clause", "optional": true, + "peer": true, "dependencies": { "cross-dirname": "^0.1.0", "debug": "^4.3.4", @@ -339,6 +401,7 @@ "integrity": "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==", "license": "MIT", "optional": true, + "peer": true, "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -1052,7 +1115,8 @@ "version": "0.3.4", "resolved": "https://registry.npmmirror.com/@kurkle/color/-/color-0.3.4.tgz", "integrity": "sha512-M5UknZPHRu3DEDWoipU6sE8PdkZ6Z/S+v4dD+Ke8IaNlpdSQah50lz1KtcFBa2vsdOnwbbnxJwVM4wty6udA5w==", - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@malept/cross-spawn-promise": { "version": "2.0.0", @@ -1530,9 +1594,9 @@ } }, "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", - "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-L3LgimLHXtGkWikKnsPg0/VFx9OGZaC+eN1u4r+OB1XRqH3meBIAVC2zr1WdMH+RHmnRkqliQAOHNJ/E0j/e0Q==", "license": "MIT" }, "node_modules/@types/keyv": { @@ -1625,14 +1689,14 @@ } }, "node_modules/@volar/language-server": { - "version": "2.4.27", - "resolved": "https://registry.npmjs.org/@volar/language-server/-/language-server-2.4.27.tgz", - "integrity": "sha512-SymGNkErcHg8GjiG65iQN8sLkhqu1pwKhFySmxeBuYq5xFYagKBW36eiNITXQTdvT0tutI1GXcXdq/FdE/IyjA==", + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-server/-/language-server-2.4.28.tgz", + "integrity": "sha512-NqcLnE5gERKuS4PUFwlhMxf6vqYo7hXtbMFbViXcbVkbZ905AIVWhnSo0ZNBC2V127H1/2zP7RvVOVnyITFfBw==", "license": "MIT", "dependencies": { - "@volar/language-core": "2.4.27", - "@volar/language-service": "2.4.27", - "@volar/typescript": "2.4.27", + "@volar/language-core": "2.4.28", + "@volar/language-service": "2.4.28", + "@volar/typescript": "2.4.28", "path-browserify": "^1.0.1", "request-light": "^0.7.0", "vscode-languageserver": "^9.0.1", @@ -1641,6 +1705,44 @@ "vscode-uri": "^3.0.8" } }, + "node_modules/@volar/language-server/node_modules/@volar/language-core": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.28.tgz", + "integrity": "sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==", + "license": "MIT", + "dependencies": { + "@volar/source-map": "2.4.28" + } + }, + "node_modules/@volar/language-server/node_modules/@volar/language-service": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-service/-/language-service-2.4.28.tgz", + "integrity": "sha512-Rh/wYCZJrI5vCwMk9xyw/Z+MsWxlJY1rmMZPsxUoJKfzIRjS/NF1NmnuEcrMbEVGja00aVpCsInJfixQTMdvLw==", + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "vscode-languageserver-protocol": "^3.17.5", + "vscode-languageserver-textdocument": "^1.0.11", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@volar/language-server/node_modules/@volar/source-map": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.28.tgz", + "integrity": "sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==", + "license": "MIT" + }, + "node_modules/@volar/language-server/node_modules/@volar/typescript": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.28.tgz", + "integrity": "sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==", + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, "node_modules/@volar/language-service": { "version": "2.4.27", "resolved": "https://registry.npmjs.org/@volar/language-service/-/language-service-2.4.27.tgz", @@ -1806,6 +1908,23 @@ "typescript": "*" } }, + "node_modules/@vue/language-server/node_modules/@volar/language-server": { + "version": "2.4.27", + "resolved": "https://registry.npmjs.org/@volar/language-server/-/language-server-2.4.27.tgz", + "integrity": "sha512-SymGNkErcHg8GjiG65iQN8sLkhqu1pwKhFySmxeBuYq5xFYagKBW36eiNITXQTdvT0tutI1GXcXdq/FdE/IyjA==", + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.27", + "@volar/language-service": "2.4.27", + "@volar/typescript": "2.4.27", + "path-browserify": "^1.0.1", + "request-light": "^0.7.0", + "vscode-languageserver": "^9.0.1", + "vscode-languageserver-protocol": "^3.17.5", + "vscode-languageserver-textdocument": "^1.0.11", + "vscode-uri": "^3.0.8" + } + }, "node_modules/@vue/language-service": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/@vue/language-service/-/language-service-3.2.4.tgz", @@ -1909,14 +2028,14 @@ } }, "node_modules/@vueuse/core": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-14.1.0.tgz", - "integrity": "sha512-rgBinKs07hAYyPF834mDTigH7BtPqvZ3Pryuzt1SD/lg5wEcWqvwzXXYGEDb2/cP0Sj5zSvHl3WkmMELr5kfWw==", + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-14.2.0.tgz", + "integrity": "sha512-tpjzVl7KCQNVd/qcaCE9XbejL38V6KJAEq/tVXj7mDPtl6JtzmUdnXelSS+ULRkkrDgzYVK7EerQJvd2jR794Q==", "license": "MIT", "dependencies": { "@types/web-bluetooth": "^0.0.21", - "@vueuse/metadata": "14.1.0", - "@vueuse/shared": "14.1.0" + "@vueuse/metadata": "14.2.0", + "@vueuse/shared": "14.2.0" }, "funding": { "url": "https://github.com/sponsors/antfu" @@ -1926,18 +2045,18 @@ } }, "node_modules/@vueuse/metadata": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-14.1.0.tgz", - "integrity": "sha512-7hK4g015rWn2PhKcZ99NyT+ZD9sbwm7SGvp7k+k+rKGWnLjS/oQozoIZzWfCewSUeBmnJkIb+CNr7Zc/EyRnnA==", + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-14.2.0.tgz", + "integrity": "sha512-i3axTGjU8b13FtyR4Keeama+43iD+BwX9C2TmzBVKqjSHArF03hjkp2SBZ1m72Jk2UtrX0aYCugBq2R1fhkuAQ==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/antfu" } }, "node_modules/@vueuse/shared": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-14.1.0.tgz", - "integrity": "sha512-EcKxtYvn6gx1F8z9J5/rsg3+lTQnvOruQd8fUecW99DCK04BkWD7z5KQ/wTAx+DazyoEE9dJt/zV8OIEQbM6kw==", + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-14.2.0.tgz", + "integrity": "sha512-Z0bmluZTlAXgUcJ4uAFaML16JcD8V0QG00Db3quR642I99JXIDRa2MI2LGxiLVhcBjVnL1jOzIvT5TT2lqJlkA==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/antfu" @@ -1996,7 +2115,6 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "license": "MIT", - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -2072,17 +2190,18 @@ "license": "MIT" }, "node_modules/app-builder-lib": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-26.5.0.tgz", - "integrity": "sha512-iRRiJhM0uFMauDeIuv8ESHZSn+LESbdDEuHi7rKdeETjrvBObecXnWJx1f3vs3KtoGcd3hCk1zURKypyvZOtFQ==", + "version": "26.7.0", + "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-26.7.0.tgz", + "integrity": "sha512-/UgCD8VrO79Wv8aBNpjMfsS1pIUfIPURoRn0Ik6tMe5avdZF+vQgl/juJgipcMmH3YS0BD573lCdCHyoi84USg==", "license": "MIT", "dependencies": { "@develar/schema-utils": "~2.6.5", "@electron/asar": "3.4.1", "@electron/fuses": "^1.8.0", + "@electron/get": "^3.0.0", "@electron/notarize": "2.5.0", "@electron/osx-sign": "1.3.3", - "@electron/rebuild": "4.0.1", + "@electron/rebuild": "^4.0.3", "@electron/universal": "2.0.3", "@malept/flatpak-bundler": "^0.4.0", "@types/fs-extra": "9.0.13", @@ -2095,7 +2214,7 @@ "dotenv": "^16.4.5", "dotenv-expand": "^11.0.6", "ejs": "^3.1.8", - "electron-publish": "26.4.1", + "electron-publish": "26.6.0", "fs-extra": "^10.1.0", "hosted-git-info": "^4.1.0", "isbinaryfile": "^5.0.0", @@ -2105,9 +2224,10 @@ "lazy-val": "^1.0.5", "minimatch": "^10.0.3", "plist": "3.1.0", + "proper-lockfile": "^4.1.2", "resedit": "^1.7.0", "semver": "~7.7.3", - "tar": "7.5.3", + "tar": "^7.5.7", "temp-file": "^3.4.0", "tiny-async-pool": "1.3.0", "which": "^5.0.0" @@ -2116,8 +2236,23 @@ "node": ">=14.0.0" }, "peerDependencies": { - "dmg-builder": "26.5.0", - "electron-builder-squirrel-windows": "26.5.0" + "dmg-builder": "26.7.0", + "electron-builder-squirrel-windows": "26.7.0" + } + }, + "node_modules/app-builder-lib/node_modules/ci-info": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.3.1.tgz", + "integrity": "sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" } }, "node_modules/argparse": { @@ -2222,6 +2357,14 @@ "readable-stream": "^3.4.0" } }, + "node_modules/boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT", + "optional": true + }, "node_modules/bootstrap": { "version": "5.3.8", "resolved": "https://registry.npmmirror.com/bootstrap/-/bootstrap-5.3.8.tgz", @@ -2526,9 +2669,9 @@ "license": "MIT" }, "node_modules/ci-info": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.3.1.tgz", - "integrity": "sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.4.0.tgz", + "integrity": "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==", "funding": [ { "type": "github", @@ -2553,12 +2696,12 @@ } }, "node_modules/cidr-tools": { - "version": "11.0.3", - "resolved": "https://registry.npmmirror.com/cidr-tools/-/cidr-tools-11.0.3.tgz", - "integrity": "sha512-7p0rp7B2P+nZfBkJlrQzUMDyUHeYK2h/XCJY80VUl1v5oxwLxQjZMy39BXVOXugwAX67l0oJ/QQ6OhANgUtUbw==", + "version": "11.0.6", + "resolved": "https://registry.npmjs.org/cidr-tools/-/cidr-tools-11.0.6.tgz", + "integrity": "sha512-RV6FaTXxvf3fzS7xkQ2sJXTwM/Q0YWA97+aUOKZ3RcB4jbV34ThcVo+mnMfBnkLbGOVl0sSt/Z9MJDYm8a3bwA==", "license": "BSD-2-Clause", "dependencies": { - "ip-bigint": "^8.2.1" + "ip-bigint": "^8.2.4" }, "engines": { "node": ">=18" @@ -2724,7 +2867,8 @@ "resolved": "https://registry.npmjs.org/cross-dirname/-/cross-dirname-0.1.0.tgz", "integrity": "sha512-+R08/oI0nl3vfPcqftZRpytksBXDzOUveBq/NBVx0sUp1axwzPQrKinNx5yd5sxPu8j1wIy8AfnVQ+5eFdha6Q==", "license": "MIT", - "optional": true + "optional": true, + "peer": true }, "node_modules/cross-spawn": { "version": "7.0.6", @@ -2874,6 +3018,42 @@ "node": ">=10" } }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "license": "MIT", + "optional": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/defu": { "version": "6.1.4", "resolved": "https://registry.npmmirror.com/defu/-/defu-6.1.4.tgz", @@ -2898,6 +3078,13 @@ "node": ">=8" } }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "license": "MIT", + "optional": true + }, "node_modules/dijkstrajs": { "version": "1.0.3", "resolved": "https://registry.npmmirror.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz", @@ -2927,13 +3114,12 @@ } }, "node_modules/dmg-builder": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.5.0.tgz", - "integrity": "sha512-AyOCzpS1TCxDkSWxAzpfw5l7jBX4C8jKCucmT/6y6/24H5VKSHpjcVJD0W8o5BrFi+skC7Z7+F4aNyHmvn4AAw==", + "version": "26.7.0", + "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.7.0.tgz", + "integrity": "sha512-uOOBA3f+kW3o4KpSoMQ6SNpdXU7WtxlJRb9vCZgOvqhTz4b3GjcoWKstdisizNZLsylhTMv8TLHFPFW0Uxsj/g==", "license": "MIT", - "peer": true, "dependencies": { - "app-builder-lib": "26.5.0", + "app-builder-lib": "26.7.0", "builder-util": "26.4.1", "fs-extra": "^10.1.0", "iconv-lite": "^0.6.2", @@ -3038,17 +3224,17 @@ } }, "node_modules/electron-builder": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-26.5.0.tgz", - "integrity": "sha512-DHvMBUmDscyvI/JvcJ1ZjrPqikzANbnX83MxUX5Daaeu2I8c2SxFM8LyKEepEZr1uomV1sw7yrLtKhKAT82OdA==", + "version": "26.7.0", + "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-26.7.0.tgz", + "integrity": "sha512-LoXbCvSFxLesPneQ/fM7FB4OheIDA2tjqCdUkKlObV5ZKGhYgi5VHPHO/6UUOUodAlg7SrkPx7BZJPby+Vrtbg==", "license": "MIT", "dependencies": { - "app-builder-lib": "26.5.0", + "app-builder-lib": "26.7.0", "builder-util": "26.4.1", "builder-util-runtime": "9.5.1", "chalk": "^4.1.2", "ci-info": "^4.2.0", - "dmg-builder": "26.5.0", + "dmg-builder": "26.7.0", "fs-extra": "^10.1.0", "lazy-val": "^1.0.5", "simple-update-notifier": "2.0.0", @@ -3063,28 +3249,28 @@ } }, "node_modules/electron-builder-squirrel-windows": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-26.5.0.tgz", - "integrity": "sha512-pMXUzwHFIz3S6/jtzg4tB6LBqOM4buEChYCz73JGuV/cWoWhB4xTVVfFuXwrsu0uqhZw8zyhbpyWIEPTE76Dcg==", + "version": "26.7.0", + "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-26.7.0.tgz", + "integrity": "sha512-3EqkQK+q0kGshdPSKEPb2p5F75TENMKu6Fe5aTdeaPfdzFK4Yjp5L0d6S7K8iyvqIsGQ/ei4bnpyX9wt+kVCKQ==", "license": "MIT", "peer": true, "dependencies": { - "app-builder-lib": "26.5.0", + "app-builder-lib": "26.7.0", "builder-util": "26.4.1", "electron-winstaller": "5.4.0" } }, "node_modules/electron-publish": { - "version": "26.4.1", - "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-26.4.1.tgz", - "integrity": "sha512-nByal9K5Ar3BNJUfCSglXltpKUhJqpwivNpKVHnkwxTET9LKl+NxoojpGF1dSXVFcoBKVm+OhsVa28ZsoshEPA==", + "version": "26.6.0", + "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-26.6.0.tgz", + "integrity": "sha512-LsyHMMqbvJ2vsOvuWJ19OezgF2ANdCiHpIucDHNiLhuI+/F3eW98ouzWSRmXXi82ZOPZXC07jnIravY4YYwCLQ==", "license": "MIT", "dependencies": { "@types/fs-extra": "^9.0.11", "builder-util": "26.4.1", "builder-util-runtime": "9.5.1", "chalk": "^4.1.2", - "form-data": "^4.0.0", + "form-data": "^4.0.5", "fs-extra": "^10.1.0", "lazy-val": "^1.0.5", "mime": "^2.5.2" @@ -3096,6 +3282,7 @@ "integrity": "sha512-bO3y10YikuUwUuDUQRM4KfwNkKhnpVO7IPdbsrejwN9/AABJzzTQ4GeHwyzNSrVO+tEH3/Np255a3sVZpZDjvg==", "hasInstallScript": true, "license": "MIT", + "peer": true, "dependencies": { "@electron/asar": "^3.2.1", "debug": "^4.1.1", @@ -3115,6 +3302,7 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", "license": "MIT", + "peer": true, "dependencies": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -3129,6 +3317,7 @@ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "license": "MIT", + "peer": true, "optionalDependencies": { "graceful-fs": "^4.1.6" } @@ -3138,6 +3327,7 @@ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "license": "MIT", + "peer": true, "engines": { "node": ">= 4.0.0" } @@ -3255,6 +3445,13 @@ "node": ">= 0.4" } }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "license": "MIT", + "optional": true + }, "node_modules/esbuild": { "version": "0.27.2", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.2.tgz", @@ -3306,6 +3503,19 @@ "node": ">=6" } }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/estree-walker": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", @@ -3634,6 +3844,41 @@ "node": "*" } }, + "node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/gopd": { "version": "1.2.0", "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz", @@ -3686,6 +3931,19 @@ "node": ">=8" } }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-symbols": { "version": "1.1.0", "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz", @@ -3890,9 +4148,9 @@ } }, "node_modules/ip-bigint": { - "version": "8.2.2", - "resolved": "https://registry.npmmirror.com/ip-bigint/-/ip-bigint-8.2.2.tgz", - "integrity": "sha512-wPoOpHigOtoY29UCFA0L82cJVFcT7M+TsrgipUVpFw7HV9LpLEuNXCymt3623jzHPlIZzFaCyaVf9VACssFYew==", + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/ip-bigint/-/ip-bigint-8.2.4.tgz", + "integrity": "sha512-uLnCfRdjiqRSX36+sKW3PBsotx58qEXSfbRWqdy1N5w6LtlIDCQnxuVce5OIBD50WA9VX2DWixtiBVtalWb1fA==", "license": "BSD-2-Clause", "engines": { "node": ">=18" @@ -4078,6 +4336,13 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "license": "MIT" }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "license": "ISC", + "optional": true + }, "node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", @@ -4215,6 +4480,19 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "license": "MIT", + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/math-intrinsics": { "version": "1.1.0", "resolved": "https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz", @@ -4427,6 +4705,19 @@ "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", "license": "MIT" }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "license": "MIT", + "peer": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -6365,7 +6656,6 @@ "version": "4.0.3", "inBundle": true, "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -6495,6 +6785,16 @@ "node": ">=0.10.0" } }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/ol": { "version": "10.7.0", "resolved": "https://registry.npmjs.org/ol/-/ol-10.7.0.tgz", @@ -6759,7 +7059,6 @@ "resolved": "https://registry.npmjs.org/pinia/-/pinia-3.0.4.tgz", "integrity": "sha512-l7pqLUFTI/+ESXn6k3nu30ZIzW5E2WZF/LaHJEpoq6ElcLD+wduZoB2kBN19du6K/4FDpPMazY2wJr+IndBtQw==", "license": "MIT", - "peer": true, "dependencies": { "@vue/devtools-api": "^7.7.7" }, @@ -6858,6 +7157,7 @@ "integrity": "sha512-b9Eb8h2eVqNE8edvKdwqkrY6O7kAwmI8kcnBv1NScolYJbo59XUF0noFq+lxbC1yN20bmC0WBEbDC5H/7ASb0A==", "license": "MIT", "optional": true, + "peer": true, "dependencies": { "commander": "^9.4.0" }, @@ -6874,6 +7174,7 @@ "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", "license": "MIT", "optional": true, + "peer": true, "engines": { "node": "^12.20.0 || >=14" } @@ -6887,6 +7188,15 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/promise-retry": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", @@ -6900,6 +7210,17 @@ "node": ">=10" } }, + "node_modules/proper-lockfile": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz", + "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "retry": "^0.12.0", + "signal-exit": "^3.0.2" + } + }, "node_modules/protocol-buffers-schema": { "version": "3.6.0", "resolved": "https://registry.npmmirror.com/protocol-buffers-schema/-/protocol-buffers-schema-3.6.0.tgz", @@ -7186,6 +7507,38 @@ "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", "license": "MIT" }, + "node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "license": "ISC", + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, "node_modules/rollup": { "version": "4.50.2", "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.50.2.tgz", @@ -7283,6 +7636,29 @@ "node": ">=10" } }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "license": "MIT", + "optional": true + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "license": "MIT", + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz", @@ -7427,6 +7803,13 @@ "node": ">=0.10.0" } }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "license": "BSD-3-Clause", + "optional": true + }, "node_modules/ssri": { "version": "12.0.0", "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", @@ -7511,6 +7894,18 @@ "node": ">=8" } }, + "node_modules/sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "license": "Apache-2.0", + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, "node_modules/superjson": { "version": "2.2.2", "resolved": "https://registry.npmmirror.com/superjson/-/superjson-2.2.2.tgz", @@ -7536,9 +7931,9 @@ } }, "node_modules/tar": { - "version": "7.5.6", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.6.tgz", - "integrity": "sha512-xqUeu2JAIJpXyvskvU3uvQW8PAmHrtXp2KDuMJwQqW8Sqq0CaZBAQ+dKS3RBXVhU4wC5NjAdKrmh84241gO9cA==", + "version": "7.5.7", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.7.tgz", + "integrity": "sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ==", "license": "BlueOak-1.0.0", "dependencies": { "@isaacs/fs-minipass": "^4.0.0", @@ -7565,6 +7960,7 @@ "resolved": "https://registry.npmjs.org/temp/-/temp-0.9.4.tgz", "integrity": "sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==", "license": "MIT", + "peer": true, "dependencies": { "mkdirp": "^0.5.1", "rimraf": "~2.6.2" @@ -7650,6 +8046,19 @@ "utf8-byte-length": "^1.0.1" } }, + "node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "license": "(MIT OR CC0-1.0)", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/typescript": { "version": "5.9.2", "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.2.tgz", @@ -7767,7 +8176,6 @@ "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "esbuild": "^0.27.0", "fdir": "^6.5.0", @@ -8070,7 +8478,6 @@ "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.27.tgz", "integrity": "sha512-aJ/UtoEyFySPBGarREmN4z6qNKpbEguYHMmXSiOGk69czc+zhs0NF6tEFrY8TZKAl8N/LYAkd4JHVd5E/AsSmw==", "license": "MIT", - "peer": true, "dependencies": { "@vue/compiler-dom": "3.5.27", "@vue/compiler-sfc": "3.5.27", diff --git a/src/static/app/package.json b/src/static/app/package.json index b278a28a..5b33a362 100644 --- a/src/static/app/package.json +++ b/src/static/app/package.json @@ -12,18 +12,18 @@ "preview": "vite preview" }, "dependencies": { - "@volar/language-server": "2.4.27", + "@volar/language-server": "2.4.28", "@vue/language-server": "3.2.4", "@vuepic/vue-datepicker": "^12.1.0", - "@vueuse/core": "^14.0.0", + "@vueuse/core": "^14.2.0", "@vueuse/shared": "^14.1.0", "animate.css": "^4.1.1", "bootstrap": "^5.3.2", "bootstrap-icons": "^1.11.3", - "cidr-tools": "^11.0.3", + "cidr-tools": "^11.0.6", "css-color-converter": "^2.0.0", "dayjs": "^1.11.19", - "electron-builder": "^26.4.0", + "electron-builder": "^26.7.0", "fuse.js": "^7.0.0", "i": "^0.3.7", "is-cidr": "^6.0.2", diff --git a/src/static/locales/bg-BG.json b/src/static/locales/bg-BG.json new file mode 100644 index 00000000..c8c30538 --- /dev/null +++ b/src/static/locales/bg-BG.json @@ -0,0 +1,442 @@ +{ + " file": " файла", + "(.*) Available IP Address": "$1 налични IP адреса", + "(.*) Minutes": "$1 минути", + "(.*) Seconds": "$1 секунди", + "(.*) Used": "$1 използвани", + "(.*) in group (.*)\\?": "$1 в група $2?", + "(.*) is off": "$1 е изключен", + "(.*) is on": "$1 е включен", + "([0-9].*) Backups?": "$1 архива", + "([0-9].*) Clients*": "$1 клиента", + "([0-9].*) Peers?": "$1 пиъра", + "([0-9]{1,}) Interfaces": "$1 интерфейса", + "([0-9]{1,}) Partitions": "$1 дяла", + "(v[0-9.]{1,}) is now available for update!": "$1 е налична за актуализация!", + "1\\. Please scan the following QR Code to generate TOTP with your choice of authenticator": "1. Моля, сканирайте следния QR код, за да генерирате TOTP с избрания от вас удостоверител", + "2\\. Enter the TOTP generated by your authenticator to verify": "2. Въведете генерирания от удостоверителя TOTP за потвърждение", + "API Key": "API ключ", + "API Key created": "API ключът е създаден", + "API Key deleted": "API ключът е изтрит", + "API Keys": "API ключове", + "API Keys function is failed to disable": "Неуспешно деактивиране на функцията за API ключове", + "API Keys function is failed to enable": "Неуспешно активиране на функцията за API ключове", + "API Keys function is successfully disabled": "Функцията за API ключове е успешно деактивирана", + "API Keys function is successfully enabled": "Функцията за API ключове е успешно активирана", + "Access Remote Server": "Достъп до отдалечен сървър", + "Access Restricted": "Достъпът е ограничен", + "Account Settings": "Настройки на акаунта", + "Active Jobs": "Активни задачи", + "Add": "Добави", + "Add Peers": "Добави пиъри", + "Add Template": "Добави шаблон", + "Add Webhook": "Добави Webhook", + "Adding\\.\\.\\.": "Добавяне...", + "Address": "Адрес", + "Advanced Options": "Разширени настройки", + "All": "Всички", + "All Active Jobs": "Всички активни задачи", + "All connected peers will get disconnected": "Всички свързани пиъри ще бъдат прекъснати", + "Allow Access": "Разреши достъп", + "Allow access successfully": "Достъпът е разрешен успешно", + "Allowed IP already taken by another peer": "Разрешеният IP вече се използва от друг пиър", + "Allowed IPs": "Разрешени IP адреси", + "Allowed IPs Validation": "Валидация на разрешени IP адреси", + "Allowed IPs already taken by another peer": "Разрешените IP адреси вече се използват от друг пиър", + "Allowed IPs is invalid": "Разрешените IP адреси са невалидни", + "Allowing Access\\.\\.\\.": "Разрешаване на достъпа...", + "AmneziaWG Peer Setting": "Настройка на AmneziaWG пиър", + "Appearance": "Външен вид", + "Are you sure to delete": "Сигурни ли сте, че искате да изтриете", + "Are you sure to delete assignment for": "Сигурни ли сте, че искате да изтриете присвояването за", + "Are you sure to delete this API key\\?": "Сигурни ли сте, че искате да изтриете този API ключ?", + "Are you sure to delete this backup\\?": "Сигурни ли сте, че искате да изтриете този архив?", + "Are you sure to delete this client\\?": "Сигурни ли сте, че искате да изтриете този клиент?", + "Are you sure to delete this configuration\\?": "Сигурни ли сте, че искате да изтриете тази конфигурация?", + "Are you sure to delete this peer\\?": "Сигурни ли сте, че искате да изтриете този пиър?", + "Are you sure to restore this backup\\?": "Сигурни ли сте, че искате да възстановите този архив?", + "Assign Peer": "Присвои пиър", + "Assign Peer to Client": "Присвои пиър на клиент", + "Assign successfully!": "Успешно присвояване!", + "Assign to Clients": "Присвои на клиенти", + "Assigned Clients": "Присвоени клиенти", + "Assigned Peers": "Присвоени пиъри", + "Available Peers": "Налични пиъри", + "Average / Min / Max Round Trip Time": "Средно / Мин. / Макс. време за обратен път", + "Average RTT \\(ms\\)": "Средно RTT (мс)", + "Back": "Назад", + "Backup": "Архив", + "Backup & Restore": "Архив и възстановяване", + "Backup Date": "Дата на архива", + "Backup not selected": "Не е избран архив", + "Both configuration file \\(\\.conf\\) and database table related to this configuration will get deleted": "Както конфигурационният файл (.conf), така и таблицата в базата данни, свързана с тази конфигурация, ще бъдат изтрити", + "Bulk Add": "Масово добавяне", + "By adding peers by bulk, each peer's name will be auto generated, and Allowed IP will be assign to the next available IP\\.": "При масово добавяне името на всеки пиър ще бъде генерирано автоматично, а разрешеният IP ще бъде следващият свободен.", + "CPU": "Процесор", + "CPU Usage": "Използване на процесора", + "Cancel": "Отказ", + "Checking backups...": "Проверка на архивите...", + "Checking for update...": "Проверка за актуализация...", + "Clear Selection": "Изчисти избора", + "Click": "Щракнете", + "Click to change a backup": "Щракнете за смяна на архива", + "Client ID": "ID на клиент", + "Client Name": "Име на клиент", + "Client Side App": "Клиентско приложение", + "Clients": "Клиенти", + "Clients Settings": "Настройки на клиенти", + "Close": "Затвори", + "Complete": "Завърши", + "Configuration": "Конфигурация", + "Configuration File": "Конфигурационен файл", + "Configuration Name": "Име на конфигурацията", + "Configuration Settings": "Настройки на конфигурацията", + "Configuration deleted": "Конфигурацията е изтрита", + "Configuration does not exist": "Конфигурацията не съществува", + "Configuration name already exist\\.": "Името на конфигурацията вече съществува.", + "Configuration name can only contain 15 lower/uppercase alphabet, numbers, underscore, equal sign, plus sign, period and hyphen\\.": "Името на конфигурацията може да съдържа само 15 малки/големи букви, цифри, долна черта, знак за равенство, знак плюс, точка и тире.", + "Configuration name is invalid. Possible reasons:": "Името на конфигурацията е невалидно. Възможни причини:", + "Configuration restored": "Конфигурацията е възстановена", + "Configuration saved": "Конфигурацията е запазена", + "Configurations": "Конфигурации", + "Configurations Directory": "Директория с конфигурации", + "Confirm \\& edit restore information": "Потвърдете и редактирайте информацията за възстановяване", + "Confirm password": "Потвърдете паролата", + "Connected": "Свързан", + "Connected Peers": "Свързани пиъри", + "Contain": "Съдържа", + "Content Type": "Тип съдържание", + "Count": "Брой", + "Create": "Създай", + "Create API Key": "Създай API ключ", + "Create Backup": "Създай архив", + "Create an account": "Създай акаунт", + "Create templates to keep track a list of available Subnets \\& Listen Ports\n": "Създайте шаблони за списък с налични подмрежи и портове", + "Creating\\.\\.\\.": "Създаване...", + "Current Password": "Текуща парола", + "Current Version:": "Текуща версия:", + "Currently the peer is not sharing": "В момента пиърът не се споделя", + "Custom Headers": "Персонализирани хедъри", + "DNS": "DNS", + "DNS format is incorrect": "Форматът на DNS е грешен", + "Danger Zone": "Опасна зона", + "Dark": "Тъмна", + "Dashboard IP Address \\& Listen Port": "IP адрес и порт на таблото", + "Dashboard Language": "Език на таблото", + "Dashboard Theme": "Тема на таблото", + "Dashboard language update failed": "Неуспешна промяна на езика на таблото", + "Data": "Данни", + "Database File": "Файл на базата данни", + "Date": "Дата", + "Datetime": "Дата и час", + "Delete": "Изтрий", + "Delete Client": "Изтрий клиент", + "Delete Configuration": "Изтрий конфигурацията", + "Delete Peer": "Изтрий пиъра", + "Delete current configuration's database table and \\.conf file": "Изтриване на таблицата в базата данни и .conf файла на текущата конфигурация", + "Deleted ([0-9]{1,}) peer\\(s\\)": "Изтрити $1 пиъра", + "Deleted ([0-9]{1,}) peer\\(s\\) successfully. Failed to delete ([0-9]{1,}) peer\\(s\\)": "Успешно изтрити $1 пиъра. Неуспешно изтриване на $2 пиъра", + "Deleting...": "Изтриване...", + "Details": "Детайли", + "Disabled": "Деактивирано", + "Disconnected": "Прекъснат", + "Discord Server": "Discord сървър", + "Display": "Изглед", + "Display As": "Покажи като", + "Don't think that's a good idea": "Не мисля, че това е добра идея", + "Done": "Готово", + "Download": "Изтегли", + "Download All": "Изтегли всички", + "Download Finished": "Изтеглянето завърши", + "Download \\& QR Code is not available due to no private key set for this peer": "Изтеглянето и QR кодът не са достъпни, тъй като няма зададен частен ключ за този пиър", + "Downloading": "Изтегляне", + "Duplicate current configuration's database table and \\.conf file with the new name": "Дублиране на таблицата в базата данни и .conf файла на текущата конфигурация с новото име", + "Duration:": "Продължителност:", + "Edit": "Редактирай", + "Edit Raw Configuration File": "Редактирай суров конфигурационен файл", + "Email": "Имейл", + "Email Account": "Имейл акаунт", + "Email Body Template": "Шаблон на тялото на имейла", + "Email sent successfully!": "Имейлът е изпратен успешно!", + "Enable Webhook": "Активирай Webhook", + "Enabled": "Активирано", + "Encryption": "Криптиране", + "Ended At": "Завършена на", + "Endpoint Allowed IPs": "Разрешени IP адреси на крайна точка", + "Endpoint Allowed IPs format is incorrect": "Форматът на разрешените IP адреси на крайна точка е грешен", + "Enter Email or Name to Search": "Въведете имейл или име за търсене", + "Enter IP Address / Hostname": "Въведете IP адрес / Име на хост", + "Enter IP Address/CIDR": "Въведете IP адрес/CIDR", + "Enter a password": "Въведете парола", + "Enter an username you like": "Въведете желаното потребителско име", + "Expire At": "Изтича на", + "FROM ": "ОТ ", + "Failed": "Неуспешни", + "Failed to add peers in bulk": "Неуспешно масово добавяне на пиъри", + "Failed to allow access of peer (.*)": "Неуспешно разрешаване на достъпа на пиър $1", + "Failed to check available update": "Неуспешна проверка за актуализация", + "Failed to save configuration through WireGuard": "Неуспешно запазване на конфигурацията чрез WireGuard", + "File": "Файл", + "Filter": "Филтър", + "Generating key pairs by bulk failed": "Неуспешно масово генериране на двойки ключове", + "Geolocation": "Геолокация", + "Grid": "Мрежа", + "Groups": "Групи", + "Header": "Хедър", + "Help": "Помощ", + "Home": "Начало", + "Hop": "Скок", + "How many peers you want to add\\?": "Колко пиъра искате да добавите?", + "I don't need MFA": "Не ми трябва MFA", + "IP Address": "IP адрес", + "IP Address / Hostname": "IP адрес / Име на хост", + "IP Address/CIDR": "IP адрес/CIDR", + "IP Address/CIDR is invalid": "IP адресът/CIDR е невалиден", + "If you're sure, please type in the configuration name below and click Delete": "Ако сте сигурни, моля въведете името на конфигурацията по-долу и щракнете Изтрий", + "Include configuration file as an attachment": "Включи конфигурационния файл като прикачен", + "Invalid Port": "Невалиден порт", + "Is Alive": "Активен", + "Job": "Задача", + "Job ID": "ID на задача", + "Jobs Logs": "Логове на задачи", + "Key": "Ключ", + "Language": "Език", + "Latest Handshake Time": "Последно ръкостискане", + "Latest Session": "Последна сесия", + "Light": "Светла", + "Link expire date failed to update. Reason: (.*)": "Неуспешно актуализиране на датата на изтичане на връзката. Причина: $1", + "Link expire date updated": "Датата на изтичане на връзката е актуализирана", + "List": "Списък", + "Listen Port": "Порт за слушане", + "Live Preview": "Преглед на живо", + "Local": "Локален", + "Log ID": "ID на лог", + "Logs": "Логове", + "MTU": "MTU", + "MTU format is not correct": "Форматът на MTU е грешен", + "Manage": "Управление", + "Manual restart of WGDashboard is needed to apply changes on IP Address and Listen Port": "Необходим е ръчен рестарт на WGDashboard за прилагане на промените в IP адреса и порта", + "Max RTT \\(ms\\)": "Макс. RTT (мс)", + "Memory": "Памет", + "Memory Usage": "Използване на паметта", + "Message": "Съобщение", + "Min RTT \\(ms\\)": "Мин. RTT (мс)", + "Multi-Factor Authentication \\(MFA\\)": "Многофакторно удостоверяване (MFA)", + "Name": "Име", + "Network": "Мрежа", + "Never Expire": "Без изтичане", + "New Configuration": "Нова конфигурация", + "New Password": "Нова парола", + "Next": "Напред", + "Nice to meet you!": "Приятно ми е да се запознаем!", + "No": "Не", + "No Encryption": "Без криптиране", + "No Templates": "Няма шаблони", + "No WGDashboard API Key": "Няма WGDashboard API ключ", + "No active job at the moment\\.": "В момента няма активни задачи.", + "No available IP containing": "Няма свободен IP съдържащ", + "No backup yet, click the button above to create backup\\.": "Все още няма архив, щракнете бутона по-горе за създаване.", + "No more available IP can assign": "Няма повече свободни IP адреси за задаване", + "No peer assigned to this client": "Няма пиър присвоен на този клиент", + "No result": "Няма резултат", + "Notes": "Бележки", + "OTP from your authenticator": "OTP код от удостоверителя", + "Off": "Изкл.", + "Official Documentation": "Официална документация", + "Oh no\\.\\.\\. This link is either expired or invalid\\.": "О, не... Тази връзка е изтекла или невалидна.", + "On": "Вкл.", + "Once you deleted this configuration\\:": "След като изтриете тази конфигурация:", + "Only apply to peers in this configuration": "Прилага се само за пиъри в тази конфигурация", + "Open File": "Отвори файл", + "Optional Settings": "Допълнителни настройки", + "Or you can click the link below:": "Или можете да щракнете върху връзката по-долу:", + "Other Settings": "Други настройки", + "Override Peer Settings": "Презаписване на настройките за пиър", + "Password": "Парола", + "Path": "Път", + "Payload URL": "URL за данни", + "Peer": "Пиър", + "Peer Configuration File": "Конфигурационен файл на пиър", + "Peer Created": "Пиър създаден", + "Peer Default Settings": "Настройки по подразбиране за пиър", + "Peer Deleted": "Пиър изтрит", + "Peer Details": "Детайли за пиъра", + "Peer Historical Endpoints": "Исторически крайни точки на пиъра", + "Peer Historical Sessions": "Исторически сесии на пиъра", + "Peer Jobs": "Задачи за пиъри", + "Peer Remote Endpoint": "Отдалечена крайна точка на пиъра", + "Peer Settings": "Настройки на пиъра", + "Peer Updated": "Пиър обновен", + "Peer created successfully": "Пиърът е създаден успешно", + "Peer data usage reset successfully": "Използваните данни на пиъра са нулирани успешно", + "Peer does not exist": "Пиърът не съществува", + "Peer download started": "Изтеглянето на пиъра започна", + "Peer job deleted": "Задачата за пиъра е изтрита", + "Peer job saved": "Задачата за пиъра е запазена", + "Peer saved": "Пиърът е запазен", + "Peers": "Пиъри", + "Peers Data Usage": "Използване на данни от пиъри", + "Peers Default Settings": "Настройки по подразбиране за пиъри", + "Peers Settings": "Настройки на пиъри", + "Persistent Keepalive": "Постоянен Keepalive", + "Persistent Keepalive format is not correct": "Форматът на Persistent Keepalive е грешен", + "Pick Available IP": "Избери свободен IP", + "Pinging...": "Пингване...", + "Please fill in all required box": "Моля, попълнете всички задължителни полета", + "Please fill in the following fields to finish setup": "Моля, попълнете следните полета за завършване на настройката", + "Please provide a valid configuration name": "Моля, въведете валидно име на конфигурация", + "Please provide ipAddress": "Моля, въведете IP адрес", + "Please provide ipAddress and count": "Моля, въведете IP адрес и брой", + "Please specify amount of peers you want to add": "Моля, посочете броя на пиърите, които искате да добавите", + "Please specify an IP Address (v4/v6)": "Моля, посочете IP адрес (v4/v6)", + "Please specify job": "Моля, посочете задача", + "Please specify one or more peers": "Моля, посочете един или повече пиъри", + "Please specify peer and configuration": "Моля, посочете пиър и конфигурация", + "Port": "Порт", + "Pre-Shared Key": "Предварително споделен ключ", + "Previous Sessions": "Предишни сесии", + "Private Key": "Частен ключ", + "Private key does not match with the public key": "Частният ключ не съответства на публичния", + "Processes": "Процеси", + "Protocol": "Протокол", + "Public Key": "Публичен ключ", + "QR Code": "QR код", + "Ready": "Готово", + "Real Time Received Data Usage": "Получени данни в реално време", + "Real Time Sent Data Usage": "Изпратени данни в реално време", + "Received": "Получени", + "Refresh": "Обнови", + "Refresh Interval": "Интервал на обновяване", + "Remember to remove / at the end of your path. e.g /etc/wireguard": "Не забравяйте да премахнете / в края на пътя. Пример: /etc/wireguard", + "Remove Icon": "Премахни икона", + "Repeat New Password": "Повторете новата парола", + "Reset": "Нулиране", + "Reset Data Usage": "Нулиране на използваните данни", + "Restore": "Възстанови", + "Restore Configuration": "Възстанови конфигурация", + "Restoring": "Възстановяване", + "Restrict Access": "Ограничи достъпа", + "Restrict Peer": "Ограничи пиъра", + "Restricted": "Ограничен", + "Restricted ([0-9]{1,}) peer\\(s\\)": "Ограничени $1 пиъра", + "Restricted ([0-9]{1,}) peer\\(s\\) successfully. Failed to restrict ([0-9]{1,}) peer\\(s\\)": "Успешно ограничени $1 пиъра. Неуспешно ограничаване на $2 пиъра", + "Restricted Peers?": "Ограничени пиъри", + "Restricting\\.\\.\\.": "Ограничаване...", + "Revert": "Отмени", + "Save": "Запази", + "Save Configuration": "Запази конфигурацията", + "Save Peer": "Запази пиъра", + "Saving\\.\\.\\.": "Запазване...", + "Scan QR Code with the WireGuard App to add peer": "Сканирайте QR кода с приложението WireGuard, за да добавите пиъра", + "Schedule Jobs": "Планирани задачи", + "Search": "Търсене", + "Search Clients\\.\\.\\.": "Търсене на клиенти...", + "Search Icon": "Икона за търсене", + "Search Peers\\.\\.\\.": "Търсене на пиъри...", + "Select All": "Избери всички", + "Select Peers": "Избери пиъри", + "Select a backup you want to restore": "Изберете архив за възстановяване", + "Selected Backup": "Избран архив", + "Send": "Изпрати", + "Send From": "Изпрати от", + "Send Test Email": "Изпрати тестов имейл", + "Sending\\.\\.\\.": "Изпращане...", + "Sent": "Изпратени", + "Sent / Received / Lost Package": "Изпратени / Получени / Загубени пакети", + "Server": "Сървър", + "Server List": "Списък със сървъри", + "Sessions": "Сесии", + "Settings": "Настройки", + "Setup": "Настройка", + "Share Peer": "Сподели пиъра", + "Share link failed to create. Reason: (.*)": "Неуспешно създаване на връзка за споделяне. Причина: $1", + "Share with Email": "Сподели по имейл", + "Sharing\\.\\.\\.": "Споделяне...", + "Show All Peers": "Покажи всички пиъри", + "Sign In": "Вход", + "Sign Out": "Изход", + "Sign in session ended, please sign in again": "Сесията е изтекла, моля влезте отново", + "Signing In\\.\\.\\.": "Влизане...", + "Sorry, your username or password is incorrect.": "За съжаление потребителското име или паролата са грешни.", + "Sort By": "Сортирай по", + "Start Sharing": "Започни споделяне", + "Started At": "Започната на", + "Status": "Статус", + "Step (.*)": "Стъпка $1", + "Stop Sharing": "Спри споделянето", + "Stop Sharing\\.\\.\\.": "Спиране на споделянето...", + "Storage": "Съхранение", + "Subnets \\& Listen Ports Templates": "Шаблони за подмрежи и портове", + "Subscribed Actions": "Абонирани действия", + "Success": "Успех", + "Swap Memory": "Swap памет", + "Swap Memory Usage": "Използване на Swap паметта", + "System Status": "Състояние на системата", + "TOTP verified!": "TOTP е потвърден!", + "Table": "Таблица", + "Tag": "Етикет", + "Tag Peer": "Етикетирай пиър", + "Tags": "Етикети", + "The maximum number of peers can add is (.*)": "Максималният брой пиъри за добавяне е $1", + "Theme": "Тема", + "This IP is not available: (.*)": "Този IP не е наличен: $1", + "This configuration have ([0-9].*) backups": "Тази конфигурация има $1 архива", + "This configuration have no backup": "Тази конфигурация няма архив", + "This peer already exist": "Този пиър вече съществува", + "This peer does not have any job yet\\.": "Този пиър все още няма задачи.", + "This will be changed globally, and will be apply to all peer's QR code and configuration file.": "Това ще бъде променено глобално и ще се приложи към всички QR кодове и конфигурационни файлове на пиърите.", + "To update this configuration's name, WGDashboard will execute the following operations:": "За да промените името на тази конфигурация, WGDashboard ще изпълни следните операции:", + "Toggle When Start Up": "Превключване при стартиране", + "Tools": "Инструменти", + "Total": "Общо", + "Total Received": "Общо получени", + "Total Sent": "Общо изпратени", + "Total Usage": "Общо използване", + "Turning Off\\.\\.\\.": "Изключване...", + "Turning On\\.\\.\\.": "Включване...", + "Unsaved Job": "Незапазена задача", + "Untitled Peer": "Пиър без име", + "Update Name": "Промени името", + "Update Password": "Актуализирай паролата", + "Update peer failed when saving the configuration": "Неуспешно обновяване на пиъра при запазване на конфигурацията", + "Update peer failed when updating Allowed IPs": "Неуспешно обновяване на пиъра при актуализиране на разрешените IP адреси", + "Update peer failed when updating Pre-Shared Key": "Неуспешно обновяване на пиъра при актуализиране на предварително споделения ключ", + "Updated at": "Актуализирано на", + "Use your own Private and Public Key": "Използвайте собствен частен и публичен ключ", + "Username": "Потребител", + "Value": "Стойност", + "Verify SSL": "Верификация на SSL", + "WGDashboard API Keys function is disabled": "Функцията за WGDashboard API ключове е деактивирана", + "WGDashboard Account Settings": "Настройки на WGDashboard акаунта", + "WGDashboard Settings": "Настройки на WGDashboard", + "WGDashboard language update failed": "Неуспешна промяна на езика на WGDashboard", + "WGDashboard will sent a POST Request to the URL below with details of any subscribed events\\.": "WGDashboard ще изпрати POST заявка към URL адреса по-долу с детайли за всички абонирани събития.", + "We highly suggest to enable SSL verification": "Силно препоръчваме да активирате SSL верификацията", + "Webhooks*": "Webhook-ове", + "Welcome to": "Добре дошли в", + "What\\'s the body\\?": "Какво е съдържанието?", + "What\\'s the subject\\?": "Каква е темата?", + "When should this API Key expire\\?": "Кога трябва да изтече този API ключ?", + "Who are you sending to\\?": "До кого изпращате?", + "WireGuard Configuration Settings": "Настройки на WireGuard конфигурация", + "WireGuard Configurations": "WireGuard конфигурации", + "WireGuard Configurations Settings": "Настройки на WireGuard конфигурациите", + "WireGuard configuration path saved": "Пътят до WireGuard конфигурацията е запазен", + "Yes": "Да", + "You can add up to (.*) peers": "Можете да добавите до $1 пиъра", + "You can visit our: ": "Можете да посетите нашите: ", + "You don't have any WireGuard configurations yet. Please check the configuration folder or change it in Settings. By default the folder is /etc/wireguard.": "Все още нямате WireGuard конфигурации. Моля, проверете конфигурационната папка или я променете в Настройки. По подразбиране папката е /etc/wireguard.", + "You don't have any configuration to restore": "Нямате конфигурация за възстановяване", + "You're on the latest version": "Използвате последната версия", + "\\(At least 8 characters and make sure is strong enough!\\)": "(Поне 8 символа и се уверете, че е достатъчно силна!)", + "\\(Required for QR Code and Download\\)": "(Изисква се за QR код и изтегляне)", + "\\(Required\\)": "(Задължително)", + "^([0-9].*) Sessions*$": "$1 сесии", + "if": "ако", + "is": "е", + "larger than": "по-голямо от", + "or": "или", + "or click the button below to download the ": "или щракнете бутона по-долу, за да изтеглите ", + "then": "тогава", + "to add your server": "за да добавите сървъра си" +} \ No newline at end of file diff --git a/src/static/locales/supported_locales.json b/src/static/locales/supported_locales.json index aefaa0a0..59cd9a90 100644 --- a/src/static/locales/supported_locales.json +++ b/src/static/locales/supported_locales.json @@ -14,6 +14,11 @@ "lang_name": "Belarusian (Belarus)", "lang_name_localized": "Беларуская (Беларусь)" }, + { + "lang_id": "bg-BG", + "lang_name": "Bulgarian (Bulgaria)", + "lang_name_localized": "Български (България)" + }, { "lang_id": "ca-ES", "lang_name": "Catalan (Spain)",