omniroute 1.7.2 → 1.7.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ar.md +4 -0
- package/README.bg.md +4 -0
- package/README.da.md +4 -0
- package/README.de.md +13 -9
- package/README.es.md +13 -9
- package/README.fi.md +4 -0
- package/README.fr.md +13 -9
- package/README.he.md +29 -25
- package/README.hu.md +4 -0
- package/README.id.md +4 -0
- package/README.in.md +4 -0
- package/README.it.md +13 -9
- package/README.ja.md +4 -0
- package/README.ko.md +29 -25
- package/README.md +45 -0
- package/README.ms.md +4 -0
- package/README.nl.md +4 -0
- package/README.no.md +4 -0
- package/README.phi.md +4 -0
- package/README.pl.md +4 -0
- package/README.pt-BR.md +29 -25
- package/README.pt.md +4 -0
- package/README.ro.md +4 -0
- package/README.ru.md +13 -9
- package/README.sk.md +4 -0
- package/README.sv.md +4 -0
- package/README.th.md +16 -12
- package/README.uk-UA.md +4 -0
- package/README.vi.md +4 -0
- package/README.zh-CN.md +26 -22
- package/app/.env +122 -0
- package/app/.next/BUILD_ID +1 -1
- package/app/.next/app-path-routes-manifest.json +30 -28
- package/app/.next/build-manifest.json +3 -3
- package/app/.next/prerender-manifest.json +3 -3
- package/app/.next/required-server-files.json +1 -1
- package/app/.next/routes-manifest.json +12 -0
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/costs/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/costs/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/health/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/health/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/limits/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/logs/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/media/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/settings/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +3 -3
- package/app/.next/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
- package/app/.next/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error/page.js +3 -3
- package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/_global-error.html +2 -2
- package/app/.next/server/app/_global-error.rsc +4 -4
- package/app/.next/server/app/_global-error.segments/_full.segment.rsc +4 -4
- package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
- package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next/server/app/_not-found/page.js +2 -2
- package/app/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/auth/login/route.js +1 -1
- package/app/.next/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/auth/logout/route.js +1 -1
- package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/auth/status/route.js +1 -1
- package/app/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cache/route.js +1 -1
- package/app/.next/server/app/api/cache/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cache/stats/route.js +1 -1
- package/app/.next/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/backups/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/backups/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/cline-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/codex-profiles/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route.js +1 -1
- package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cli-tools/status/route.js +2 -2
- package/app/.next/server/app/api/cli-tools/status/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cloud/auth/route.js +1 -1
- package/app/.next/server/app/api/cloud/auth/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cloud/credentials/update/route.js +1 -1
- package/app/.next/server/app/api/cloud/credentials/update/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cloud/model/resolve/route.js +1 -1
- package/app/.next/server/app/api/cloud/model/resolve/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/cloud/models/alias/route.js +1 -1
- package/app/.next/server/app/api/cloud/models/alias/route.js.nft.json +1 -1
- package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/combos/[id]/route.js +1 -1
- package/app/.next/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/combos/metrics/route.js +1 -1
- package/app/.next/server/app/api/combos/metrics/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/combos/route.js +1 -1
- package/app/.next/server/app/api/combos/route.js.nft.json +1 -1
- package/app/.next/server/app/api/combos/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/combos/test/route.js +1 -1
- package/app/.next/server/app/api/combos/test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/combos/test/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/compliance/audit-log/route.js +1 -1
- package/app/.next/server/app/api/compliance/audit-log/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/db-backups/export/route.js +1 -1
- package/app/.next/server/app/api/db-backups/export/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/db-backups/exportAll/route.js +1 -1
- package/app/.next/server/app/api/db-backups/exportAll/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/db-backups/import/route.js +1 -1
- package/app/.next/server/app/api/db-backups/import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/db-backups/route.js +1 -1
- package/app/.next/server/app/api/db-backups/route.js.nft.json +1 -1
- package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/evals/[suiteId]/route.js +1 -1
- package/app/.next/server/app/api/evals/[suiteId]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/evals/route.js +1 -1
- package/app/.next/server/app/api/evals/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/fallback/chains/route.js +2 -2
- package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/init/route.js +1 -1
- package/app/.next/server/app/api/init/route.js.nft.json +1 -1
- package/app/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/keys/[id]/route.js +1 -1
- package/app/.next/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/keys/route.js +1 -1
- package/app/.next/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/logs/console/route.js +1 -1
- package/app/.next/server/app/api/logs/console/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/alias/route.js +1 -1
- package/app/.next/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/availability/route.js +1 -1
- package/app/.next/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/catalog/route.js +2 -2
- package/app/.next/server/app/api/models/catalog/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/catalog/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/models/route.js +2 -2
- package/app/.next/server/app/api/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/monitoring/health/route.js +2 -2
- package/app/.next/server/app/api/monitoring/health/route.js.nft.json +1 -1
- package/app/.next/server/app/api/monitoring/health/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/[provider]/[action]/route.js +2 -2
- package/app/.next/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/cursor/auto-import/route.js +1 -1
- package/app/.next/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/cursor/import/route.js +1 -1
- package/app/.next/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/policies/route.js +2 -2
- package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/pricing/defaults/route.js +1 -1
- package/app/.next/server/app/api/pricing/defaults/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/pricing/models/route.js +1 -1
- package/app/.next/server/app/api/pricing/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/pricing/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/pricing/route.js +1 -1
- package/app/.next/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next/server/app/api/pricing/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-metrics/route.js +2 -2
- package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-models/route.js +1 -1
- package/app/.next/server/app/api/provider-models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-nodes/route.js +2 -2
- package/app/.next/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/app/.next/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/provider-nodes/validate/route.js +1 -1
- package/app/.next/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/[id]/models/route.js +2 -2
- package/app/.next/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/[id]/route.js +1 -1
- package/app/.next/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/[id]/test/route.js +1 -1
- package/app/.next/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/client/route.js +1 -1
- package/app/.next/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/route.js +2 -2
- package/app/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/test-batch/route.js +1 -1
- package/app/.next/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/providers/validate/route.js +1 -1
- package/app/.next/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/rate-limit/route.js +1 -1
- package/app/.next/server/app/api/rate-limit/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/rate-limits/route.js +1 -1
- package/app/.next/server/app/api/rate-limits/route.js.nft.json +1 -1
- package/app/.next/server/app/api/rate-limits/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/resilience/reset/route.js +1 -1
- package/app/.next/server/app/api/resilience/reset/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/resilience/route.js +1 -1
- package/app/.next/server/app/api/resilience/route.js.nft.json +1 -1
- package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/restart/route.js +1 -1
- package/app/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/sessions/route.js +1 -1
- package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/background-degradation/route.js +1 -0
- package/app/.next/server/app/api/settings/background-degradation/route.js.nft.json +1 -0
- package/app/.next/server/app/api/settings/background-degradation/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/settings/combo-defaults/route.js +1 -1
- package/app/.next/server/app/api/settings/combo-defaults/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/combo-defaults/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/ip-filter/route.js +1 -1
- package/app/.next/server/app/api/settings/ip-filter/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/model-aliases/route.js +1 -0
- package/app/.next/server/app/api/settings/model-aliases/route.js.nft.json +1 -0
- package/app/.next/server/app/api/settings/model-aliases/route_client-reference-manifest.js +1 -0
- package/app/.next/server/app/api/settings/proxy/route.js +1 -1
- package/app/.next/server/app/api/settings/proxy/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/proxy/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/proxy/test/route.js +1 -1
- package/app/.next/server/app/api/settings/proxy/test/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/require-login/route.js +1 -1
- package/app/.next/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/route.js +1 -1
- package/app/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/system-prompt/route.js +1 -1
- package/app/.next/server/app/api/settings/system-prompt/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/system-prompt/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/settings/thinking-budget/route.js +1 -1
- package/app/.next/server/app/api/settings/thinking-budget/route.js.nft.json +1 -1
- package/app/.next/server/app/api/settings/thinking-budget/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/shutdown/route.js +1 -1
- package/app/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/storage/health/route.js +1 -1
- package/app/.next/server/app/api/storage/health/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/sync/cloud/route.js +1 -1
- package/app/.next/server/app/api/sync/cloud/route.js.nft.json +1 -1
- package/app/.next/server/app/api/sync/cloud/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/sync/initialize/route.js +1 -1
- package/app/.next/server/app/api/sync/initialize/route.js.nft.json +1 -1
- package/app/.next/server/app/api/sync/initialize/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/tags/route.js +1 -1
- package/app/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/telemetry/summary/route.js +1 -1
- package/app/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/token-health/route.js +1 -1
- package/app/.next/server/app/api/token-health/route.js.nft.json +1 -1
- package/app/.next/server/app/api/token-health/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/detect/route.js +1 -1
- package/app/.next/server/app/api/translator/detect/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/history/route.js +1 -1
- package/app/.next/server/app/api/translator/history/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/load/route.js +1 -1
- package/app/.next/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/save/route.js +1 -1
- package/app/.next/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/send/route.js +1 -1
- package/app/.next/server/app/api/translator/send/route.js.nft.json +1 -1
- package/app/.next/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/translator/translate/route.js +1 -1
- package/app/.next/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/app/.next/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/[connectionId]/route.js +1 -1
- package/app/.next/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/analytics/route.js +1 -1
- package/app/.next/server/app/api/usage/analytics/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/analytics/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/budget/route.js +2 -2
- package/app/.next/server/app/api/usage/budget/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/call-logs/[id]/route.js +1 -1
- package/app/.next/server/app/api/usage/call-logs/[id]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/call-logs/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/call-logs/route.js +1 -1
- package/app/.next/server/app/api/usage/call-logs/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/call-logs/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/history/route.js +1 -1
- package/app/.next/server/app/api/usage/history/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/logs/route.js +1 -1
- package/app/.next/server/app/api/usage/logs/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/proxy-logs/route.js +1 -1
- package/app/.next/server/app/api/usage/proxy-logs/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/usage/request-logs/route.js +1 -1
- package/app/.next/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/api/chat/route.js +1 -1
- package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/audio/speech/route.js +1 -1
- package/app/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route.js +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route.js +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
- package/app/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/images/generations/route.js +1 -1
- package/app/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
- package/app/.next/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/messages/route.js +1 -1
- package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/models/route.js +2 -2
- package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/moderations/route.js +1 -1
- package/app/.next/server/app/api/v1/moderations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/music/generations/route.js +1 -1
- package/app/.next/server/app/api/v1/music/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/music/generations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/rerank/route.js +1 -1
- package/app/.next/server/app/api/v1/rerank/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/rerank/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/responses/route.js +1 -1
- package/app/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/route.js +1 -1
- package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1/videos/generations/route.js +1 -1
- package/app/.next/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1/videos/generations/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/api/v1beta/models/route.js +2 -2
- package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
- package/app/.next/server/app/callback/page.js +2 -2
- package/app/.next/server/app/callback/page.js.nft.json +1 -1
- package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/docs/page.js +3 -3
- package/app/.next/server/app/docs/page.js.nft.json +1 -1
- package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forbidden/page.js +2 -2
- package/app/.next/server/app/forbidden/page.js.nft.json +1 -1
- package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/forgot-password/page.js +2 -2
- package/app/.next/server/app/forgot-password/page.js.nft.json +1 -1
- package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/landing/page.js +2 -2
- package/app/.next/server/app/landing/page.js.nft.json +1 -1
- package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/login/page.js +2 -2
- package/app/.next/server/app/login/page.js.nft.json +1 -1
- package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/page.js +2 -2
- package/app/.next/server/app/page.js.nft.json +1 -1
- package/app/.next/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/privacy/page.js +2 -2
- package/app/.next/server/app/privacy/page.js.nft.json +1 -1
- package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app/terms/page.js +2 -2
- package/app/.next/server/app/terms/page.js.nft.json +1 -1
- package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
- package/app/.next/server/app-paths-manifest.json +30 -28
- package/app/.next/server/chunks/1248.js +1 -1
- package/app/.next/server/chunks/1308.js +1 -1
- package/app/.next/server/chunks/1526.js +1 -1
- package/app/.next/server/chunks/1584.js +1 -1
- package/app/.next/server/chunks/1623.js +1 -1
- package/app/.next/server/chunks/1880.js +1 -1
- package/app/.next/server/chunks/1960.js +1 -1
- package/app/.next/server/chunks/1990.js +1 -1
- package/app/.next/server/chunks/2180.js +1 -1
- package/app/.next/server/chunks/2214.js +1 -1
- package/app/.next/server/chunks/2372.js +1 -1
- package/app/.next/server/chunks/2594.js +1 -1
- package/app/.next/server/chunks/2767.js +1 -1
- package/app/.next/server/chunks/2901.js +2 -2
- package/app/.next/server/chunks/2910.js +1 -1
- package/app/.next/server/chunks/3371.js +1 -1
- package/app/.next/server/chunks/3447.js +1 -1
- package/app/.next/server/chunks/3498.js +1 -1
- package/app/.next/server/chunks/3596.js +1 -1
- package/app/.next/server/chunks/3801.js +2 -0
- package/app/.next/server/chunks/3911.js +1 -1
- package/app/.next/server/chunks/4488.js +1 -1
- package/app/.next/server/chunks/4568.js +1 -1
- package/app/.next/server/chunks/496.js +1 -1
- package/app/.next/server/chunks/5047.js +1 -1
- package/app/.next/server/chunks/5094.js +1 -1
- package/app/.next/server/chunks/5097.js +1 -1
- package/app/.next/server/chunks/5521.js +1 -1
- package/app/.next/server/chunks/5945.js +1 -1
- package/app/.next/server/chunks/6118.js +1 -1
- package/app/.next/server/chunks/6930.js +1 -1
- package/app/.next/server/chunks/7011.js +1 -1
- package/app/.next/server/chunks/708.js +1 -1
- package/app/.next/server/chunks/7109.js +1 -1
- package/app/.next/server/chunks/7230.js +2 -2
- package/app/.next/server/chunks/7650.js +1 -1
- package/app/.next/server/chunks/8020.js +3 -3
- package/app/.next/server/chunks/8220.js +1 -1
- package/app/.next/server/chunks/8464.js +1 -1
- package/app/.next/server/chunks/8706.js +1 -1
- package/app/.next/server/chunks/8976.js +1 -1
- package/app/.next/server/chunks/9119.js +1 -1
- package/app/.next/server/chunks/944.js +1 -1
- package/app/.next/server/chunks/9548.js +1 -0
- package/app/.next/server/chunks/9679.js +1 -0
- package/app/.next/server/chunks/9824.js +2 -2
- package/app/.next/server/chunks/9837.js +1 -1
- package/app/.next/server/middleware-build-manifest.js +1 -1
- package/app/.next/server/middleware.js +3 -3
- package/app/.next/server/next-font-manifest.js +1 -1
- package/app/.next/server/next-font-manifest.json +1 -1
- package/app/.next/server/pages/500.html +2 -2
- package/app/.next/server/server-reference-manifest.js +1 -1
- package/app/.next/server/server-reference-manifest.json +1 -1
- package/app/.next/static/a624rqqXG_QtNPqv8ZMWa/_buildManifest.js +1 -0
- package/app/.next/static/chunks/5846-1dad4fadf761e0d8.js +2 -0
- package/app/.next/static/chunks/{993-035473765d7d1871.js → 993-9f36b0b069ca090e.js} +2 -2
- package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/loading-ce5214cdf489c9df.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/{page-52f76c7c91444ec2.js → page-20786f2c7fdbab57.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-12d772841a253032.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-c9b98846b8479f3f.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-5e34630a5dc32825.js +15 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/{page-3dce7fccfcf177dd.js → page-85a3e6a423aceded.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/costs/{page-3ed2a7685adf9b91.js → page-cdb8071441476da9.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-588b8bc3c4e631e0.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/health/{page-9a6519bf1468f16e.js → page-b480b3cb318782d7.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-0ae1d6cc5fc4671f.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/logs/{page-833d24f322a20f5a.js → page-ffdc1dcf074c7528.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media/page-72b768421394b42c.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/onboarding/{page-d424641c7e428be9.js → page-5378e9473a20cd6a.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/page-5c87e49261a22fd5.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-b38f2d03bae8166a.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{error-2f0177a2197dd556.js → error-f0730d6d62d02e82.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{loading-99ab4d478260d53b.js → loading-59cbccd6d5185ca9.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-a7fb36872be60fe0.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{page-1f022385b812b987.js → page-40dc5ac82df708e9.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/{error-e844916e39172c8b.js → error-cc85c3ff1f63aea6.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/{loading-bb068659ee679ff4.js → loading-19fc771a287bcb4c.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-1550a2460948273c.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/pricing/{page-f10a8d4bb8236913.js → page-cbe9b21b62bbc2bd.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/{page-83b07523f81d6282.js → page-534e13a69cb60a4f.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/{page-9cc99ab874fc36e7.js → page-86a076d820931a30.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/{layout-00d5d56af65098a9.js → layout-16302e54f9ef3d0e.js} +1 -1
- package/app/.next/static/chunks/app/_global-error/page-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/_not-found/page-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/login/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/logout/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/auth/status/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cache/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cache/stats/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/backups/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cli-tools/status/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/auth/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/metrics/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/combos/test/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/compliance/audit-log/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/export/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/exportAll/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/db-backups/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/evals/[suiteId]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/evals/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/fallback/chains/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/init/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/keys/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/keys/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/logs/console/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/models/alias/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/models/availability/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/models/catalog/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/monitoring/health/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/policies/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/defaults/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/pricing/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-metrics/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/client/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/test-batch/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/providers/validate/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/rate-limit/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/rate-limits/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/resilience/reset/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/resilience/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/restart/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/sessions/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/background-degradation/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/combo-defaults/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/ip-filter/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/model-aliases/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/proxy/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/proxy/test/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/require-login/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/system-prompt/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/settings/thinking-budget/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/shutdown/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/storage/health/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/sync/cloud/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/sync/initialize/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/tags/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/telemetry/summary/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/token-health/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/detect/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/history/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/load/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/save/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/send/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/translator/translate/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/analytics/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/budget/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/call-logs/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/history/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/logs/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/proxy-logs/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/usage/request-logs/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/api/chat/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/embeddings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/images/generations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/messages/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/moderations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/music/generations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/rerank/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/responses/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1/videos/generations/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/api/v1beta/models/route-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/callback/{page-585a53f7dc6a30f1.js → page-0f0ebc0820dd18a5.js} +1 -1
- package/app/.next/static/chunks/app/docs/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
- package/app/.next/static/chunks/app/{error-0d59fc4efafbc38c.js → error-f918d9961a2368d3.js} +1 -1
- package/app/.next/static/chunks/app/forbidden/page-77657dfa95e61cd8.js +1 -0
- package/app/.next/static/chunks/app/forgot-password/page-be3bacc125c30a6b.js +1 -0
- package/app/.next/static/chunks/app/global-error-504ff9093e2a997d.js +1 -0
- package/app/.next/static/chunks/app/landing/page-75b0c988db383cfc.js +1 -0
- package/app/.next/static/chunks/app/{layout-108592eafb959363.js → layout-070972eb026af319.js} +1 -1
- package/app/.next/static/chunks/app/login/{page-121c612ee459e7c2.js → page-6c769465e407368f.js} +1 -1
- package/app/.next/static/chunks/app/not-found-11b712c853d93172.js +1 -0
- package/app/.next/static/chunks/app/page-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/app/privacy/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
- package/app/.next/static/chunks/app/terms/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
- package/app/.next/static/chunks/{main-app-c9da11a8061df107.js → main-app-ae230f6bf51a5edb.js} +1 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-6301a4ed902b878a.js +1 -0
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6301a4ed902b878a.js +1 -0
- package/app/.next/static/css/bcd1741aee9d39ab.css +1 -0
- package/app/package.json +1 -1
- package/app/server.js +1 -1
- package/package.json +1 -1
- package/app/.next/server/chunks/5248.js +0 -1
- package/app/.next/server/chunks/5393.js +0 -2
- package/app/.next/static/chunks/5846-9e0f1f3afcbfb08c.js +0 -2
- package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/loading-6f1750506292c630.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-1dd4d0c348a7b0a6.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-e5bf8955e7b9a4f5.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-77ab26722f5c56c7.js +0 -15
- package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-1420c3ca376f1585.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-f4a2d6d07df5ddc4.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media/page-1d0ca9b5d3eaf7cd.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/page-388840686801f3f5.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-9c8ffb212f855704.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-31cdb6e15134d8c2.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-1393d4935fc087cf.js +0 -1
- package/app/.next/static/chunks/app/_global-error/page-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/_not-found/page-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/auth/login/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/auth/logout/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/auth/status/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cache/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cache/stats/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/backups/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cli-tools/status/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/auth/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/credentials/update/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/model/resolve/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/cloud/models/alias/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/combos/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/combos/metrics/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/combos/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/combos/test/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/compliance/audit-log/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/export/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/exportAll/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/db-backups/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/evals/[suiteId]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/evals/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/fallback/chains/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/init/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/keys/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/keys/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/logs/console/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/models/alias/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/models/availability/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/models/catalog/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/monitoring/health/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/cursor/import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/import/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/policies/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/defaults/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/pricing/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-metrics/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/provider-nodes/validate/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/[id]/test/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/client/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/test-batch/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/providers/validate/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/rate-limit/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/rate-limits/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/resilience/reset/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/resilience/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/restart/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/sessions/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/combo-defaults/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/ip-filter/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/proxy/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/proxy/test/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/require-login/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/system-prompt/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/settings/thinking-budget/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/shutdown/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/storage/health/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/sync/cloud/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/sync/initialize/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/tags/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/telemetry/summary/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/token-health/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/detect/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/history/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/load/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/save/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/send/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/translator/translate/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/[connectionId]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/analytics/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/budget/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/call-logs/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/history/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/logs/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/proxy-logs/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/usage/request-logs/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/api/chat/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/speech/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/chat/completions/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/embeddings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/images/generations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/messages/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/moderations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/music/generations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/rerank/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/responses/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1/videos/generations/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/api/v1beta/models/route-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/app/forbidden/page-df886dfa2d5bd9fa.js +0 -1
- package/app/.next/static/chunks/app/forgot-password/page-2a495f0b0c653ab4.js +0 -1
- package/app/.next/static/chunks/app/global-error-41eef2a698918fc1.js +0 -1
- package/app/.next/static/chunks/app/landing/page-9d540ab1716f8e3e.js +0 -1
- package/app/.next/static/chunks/app/not-found-1dbd8c3e506fe00f.js +0 -1
- package/app/.next/static/chunks/app/page-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-cab2fb7f592d3c36.js +0 -1
- package/app/.next/static/css/b77490a14619ffbb.css +0 -1
- package/app/.next/static/ozfkuTtQLl3_rnlOdkSZi/_buildManifest.js +0 -1
- /package/app/.next/static/{ozfkuTtQLl3_rnlOdkSZi → a624rqqXG_QtNPqv8ZMWa}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=1880,exports.ids=[1880],exports.modules={71880:a=>{a.exports=JSON.parse('{"common":{"save":"Salvați","cancel":"Anulează","delete":"Ștergeți","loading":"Se \xeencarcă...","error":"A apărut o eroare","success":"Succes","confirm":"esti sigur?","refresh":"Re\xeemprospătați","close":"\xcenchide","add":"Adăugați","edit":"Editați","search":"Caută","back":"\xcenapoi","next":"\xcen continuare","submit":"Trimiteți","reset":"Resetați","copy":"Copiere","copied":"Copiat!","enabled":"Activat","disabled":"Dezactivat","active":"Activ","inactive":"Inactiv","noData":"Nu există date disponibile","configure":"Configurați","manage":"Gestionează","name":"Nume","actions":"Acțiuni","status":"Stare","type":"Tip","model":"Model","models":"modele","provider":"Furnizor","account":"Cont","time":"timpul","details":"Detalii","created":"Creat","lastUsed":"Ultima utilizare","loadMore":"\xcencărcați mai multe","noResults":"Nu s-au găsit rezultate","reloadPage":"Re\xeencărcați pagina","connected":"Conectat","disconnected":"Deconectat","notConfigured":"Neconfigurat","testConnection":"Testează conexiunea","enable":"Activați","disable":"Dezactivați","columns":"Coloane","newest":"Cel mai nou","oldest":"Cel mai vechi","all":"Toate","none":"Niciuna","yes":"Da","no":"Nu","warning":"Avertisment","note":"Notă","free":"Gratuit","skipToContent":"Treci la conținut"},"sidebar":{"home":"Acasă","dashboard":"Tabloul de bord","providers":"Furnizorii","combos":"Combo-uri","usage":"Utilizare","analytics":"Analytics","costs":"Costuri","health":"Sănătate","limits":"Limite și cote","cliTools":"Instrumente CLI","settings":"Setări","translator":"Traducător","docs":"Docs","issues":"Probleme","endpoint":"Punct final","apiManager":"Manager API","logs":"Bușteni","auditLog":"Jurnal de audit","shutdown":"\xcenchidere","restart":"Reporniți","shutdownConfirm":"\xcenchideți OmniRoute?","restartConfirm":"Reporniți OmniRoute?","version":"v{version}","debug":"Depanați","system":"Sistem","help":"Ajutor","serverDisconnected":"Server deconectat","serverDisconnectedMsg":"Serverul proxy a fost oprit sau repornește.","expandSidebar":"Extinde bara laterală","collapseSidebar":"Restr\xe2ngeți bara laterală"},"header":{"logout":"Deconectare","language":"Limba","providers":"Furnizorii","providerDescription":"Gestionați-vă conexiunile furnizorului dvs. de AI","combos":"Combo-uri","comboDescription":"Combo de modele cu rezervă","usage":"Utilizare și analiză","usageDescription":"Monitorizați-vă utilizarea API-ului, consumul de token-uri și jurnalele de solicitări","analytics":"Analytics","analyticsDescription":"Diagrame, tendințe și perspective de evaluare","cliTools":"Instrumente CLI","cliToolsDescription":"Configurați instrumentele CLI","home":"Acasă","homeDescription":"Bun venit la OmniRoute","endpoint":"Punct final","endpointDescription":"Configurarea punctului final API","settings":"Setări","settingsDescription":"Gestionați-vă preferințele","openaiCompatible":"Compatibil cu OpenAI","anthropicCompatible":"Compatibil antropic"},"home":{"quickStart":"Pornire rapidă","quickStartDesc":"Pune-te \xeen funcțiune \xeen 4 pași. Conectați furnizorii, modelele de traseu, monitorizați totul.","fullDocs":"Documente complete","step1Title":"1. Creați cheia API","step1Desc":"Accesați <endpoint>Endpoint</endpoint> -> Chei \xeenregistrate. Generați o cheie pentru fiecare mediu.","step2Title":"2. Conectați furnizorii","step2Desc":"Adăugați conturi \xeen <providers>Providers</providers>. Acceptă OAuth, cheie API și niveluri gratuite.","step3Title":"3. Indicați-vă clientul","step3Desc":"Setați adresa URL de bază la {url} \xeen clientul dvs. IDE sau API.","step4Title":"4. Monitorizați și optimizați","step4Desc":"Urmăriți jetoanele, costurile și erorile \xeen <logs>Request Logs</logs> și <analytics>Analytics</analytics>.","providersOverview":"Prezentare generală a furnizorilor","configuredOf":"{configured} configurat din {total} furnizori disponibili","noModelsAvailable":"Nu există modele disponibile pentru acest furnizor.","configureFirst":"Configurați mai \xeent\xe2i o conexiune \xeen {providers}","configureProvider":"Configurați furnizorul","modelAvailable":"{count} model disponibil","modelsAvailable":"{count} modele disponibile","connectionsActive":"{count} conexiune activă","connectionsActivePlural":"{count} conexiuni active","copyModelName":"Copiați numele modelului","documentation":"Documentare","healthMonitor":"Monitor de sănătate","reportIssue":"Raportați problema","activeError":"{active} activ \xb7 {errors} eroare","oauthLabel":"OAuth","apiKeyLabel":"Cheia API","requestsShort":"{count} solicită","providerModelsTitle":"{provider} - Modele","copiedModel":"Copiat: {model}","aliasLabel":"alias"},"analytics":{"title":"Analytics","overviewDescription":"Monitorizați-vă modelele de utilizare a API-ului, consumul de simboluri, costurile și tendințele activității la toți furnizorii și modelele.","evalsDescription":"Rulați suite de evaluare pentru a testa și valida punctele finale LLM. Comparați calitatea modelului, detectați regresiile și evaluați latența.","overview":"Prezentare generală","evals":"Evaluări"},"apiManager":{"title":"Chei API","createKey":"Creați cheia API","key":"cheie","revokeKey":"Revocați cheia","revokeConfirm":"Sigur doriți să revocați această cheie API?","noKeys":"\xcencă nu există chei API","noKeysDesc":"Creați prima cheie API pentru a autentifica solicitările către punctul final","keyLabel":"Eticheta cheii","permissions":"Permisiuni","expiresAt":"Expiră","never":"Niciodată","revoke":"Revocați","showKey":"Afișați cheia","hideKey":"Ascunde cheia","copyKey":"Copiați cheia API","allModels":"Toate modelele","selectedModels":"Modele Selectate","readOnly":"Numai citire","fullAccess":"Acces complet","keyManagement":"Managementul cheilor API","keyManagementDesc":"Creați și gestionați cheile API pentru autentificarea solicitărilor către punctul dvs. final","totalKeys":"Total chei","restricted":"Restricţionat","totalRequests":"Total cereri","modelsAvailable":"Modele disponibile","registeredKeys":"Chei \xeenregistrate","keysRegistered":"{count} chei \xeenregistrate","keyRegistered":"{count} cheie \xeenregistrată","keysSecurityNote":"Fiecare cheie izolează urmărirea utilizării și poate fi revocată independent. Cheile sunt mascate după creare pentru securitate.","createFirstKey":"Creați-vă prima cheie","name":"Nume","usage":"Utilizare","created":"Creat","actions":"Acțiuni","reqs":"solicită","neverUsed":"Nu a fost folosit niciodată","deleteConfirm":"Ștergeți această cheie API?","usageTips":"Sfaturi de utilizare","tipAuth":"Folosiți cheile API \xeen antetul de autorizare ca purtător YOUR_KEY","tipSecure":"Cheile sunt afișate o singură dată \xeen timpul creării - stocați-le \xeen siguranță","tipSeparate":"Creați chei separate pentru diferiți clienți sau medii","tipRestrict":"Limitați cheile la anumite modele pentru o mai bună securitate și control al costurilor","keyName":"Nume cheie","keyNamePlaceholder":"de exemplu, cheie de producție, cheie de dezvoltare","keyNameDesc":"Alegeți un nume descriptiv pentru a identifica scopul acestei chei","keyCreated":"Cheia API creată","keyCreatedSuccess":"Cheie creată cu succes!","keyCreatedNote":"Copiați și stocați această cheie acum - nu va fi afișată din nou.","done":"Gata","savePermissions":"Salvare permisiuni","allowAll":"Permite Toate","restrict":"Restricționați","allowAllInfo":"Această cheie poate accesa toate modelele disponibile.","restrictInfo":"Această cheie poate accesa {selected} din {total} modele.","selected":"{count} selectat","all":"Toate","clear":"Clar","searchModels":"Căutați modele după nume sau furnizor...","noModelsFound":"Nu s-au găsit modele","keyNameRequired":"Numele cheii este obligatoriu","keyNameTooLong":"Numele cheii trebuie să aibă maximum {max} caractere","keyNameInvalid":"Numele cheii poate conține numai litere, cifre, spații, cratime și liniuțe de subliniere","invalidKeyName":"Nume cheie nevalid","failedCreateKey":"Nu s-a putut crea cheia","failedCreateKeyRetry":"Nu s-a putut crea cheia. Vă rugăm să \xeencercați din nou.","invalidKeyId":"ID cheie nevalid","failedDeleteKey":"Cheia nu s-a șters","failedDeleteKeyRetry":"Cheia nu s-a șters. Vă rugăm să \xeencercați din nou.","invalidModelsSelection":"Selecție nevalidă de modele","cannotSelectMoreThanModels":"Nu se pot selecta mai mult de {max} modele","failedUpdatePermissions":"Nu s-au actualizat permisiunile","failedUpdatePermissionsRetry":"Nu s-au actualizat permisiunile. Vă rugăm să \xeencercați din nou.","unknownProvider":"necunoscut","copyMaskedKey":"Copiați cheia mascată","modelsCount":"{count, plural, one {# model} other {# models}}","lastUsedOn":"Ultima: {date}","editPermissions":"Editați permisiunile","deleteKey":"Șterge cheia","model":"{count} model","models":"{count} modele","permissionsTitle":"Permisiuni: {name}","allowAllDesc":"Această cheie poate accesa toate modelele disponibile.","restrictDesc":"Această cheie poate accesa {selectedCount} din {totalModels} modele.","selectedCount":"{count} selectat"},"auditLog":{"title":"Jurnal de audit","searchPlaceholder":"Acțiuni de căutare...","action":"Acțiune","actor":"actor","target":"țintă","ipAddress":"Adresa IP","timestamp":"Marca temporală","noEntries":"Nu au fost găsite intrări de audit","filterByAction":"Filtrați după acțiune...","filterByActor":"Filtrați după actor...","filterEntriesAria":"Filtrați intrările din jurnalul de audit","filterByActionTypeAria":"Filtrați după tipul de acțiune","filterByActorAria":"Filtrați după actor","refreshAuditLogAria":"Actualizează jurnalul de audit","tableAria":"Intrări din jurnalul de audit","failedFetchAuditLog":"Nu s-a putut prelua jurnalul de audit","notAvailable":"—","description":"Acțiuni administrative și evenimente de securitate","showing":"Se afișează {count} intrări (offset {offset})","previous":"Anterior"},"cliTools":{"title":"Instrumente CLI","noActiveProviders":"Nu există furnizori activi","noActiveProvidersDesc":"Vă rugăm să adăugați și conectați mai \xeent\xe2i furnizorii pentru a configura instrumentele CLI.","mapModels":"Modele de hartă","testConnection":"Testează conexiunea","connectionStatus":"Starea conexiunii","configureEndpoint":"Configurați punctul final","instructions":"Instrucțiuni","modelMapping":"Maparea modelului","baseUrl":"Adresa URL de bază","apiKey":"Cheia API","configured":"Configurat","notConfigured":"Neconfigurat","notInstalled":"Neinstalat","custom":"Personalizat","unknown":"Necunoscut","lastSavedAt":"Ultima salvare: {date}","never":"Niciodată","justNow":"tocmai acum","minutesAgoShort":"{count}m \xeen urmă","hoursAgoShort":"acum {count}h","daysAgoShort":"acum {count}d","monthsAgoShort":"{count}lună \xeen urmă","yearsAgoShort":"{count}y \xeen urmă","runtimeCheckFailed":"Verificarea timpului de execuție a eșuat","yourApiKeyPlaceholder":"cheia-api","modelPlaceholder":"provider/model-id","configurationSaved":"Configurația a fost salvată cu succes.","failedToSave":"Nu s-a putut salva configurația.","noApiKeysCreateOne":"Fără chei API - Creați una \xeen pagina Chei","defaultOmnirouteKey":"sk_omniroute (implicit)","selectModel":"Selectați Model","selectModelForAlias":"Selectați modelul pentru {alias}","selectModelForTool":"Selectați modelul pentru {tool}","select":"Selectați","clear":"Clar","comingSoon":"\xcen cur\xe2nd","checkingRuntime":"Se verifică starea de rulare...","guideOnlyIntegration":"Integrare numai cu ghid (nu este necesar un timp de rulare local)","cliRuntimeDetected":"Runtime CLI detectat și gata","cliFoundNotRunnable":"CLI găsit, dar nu poate fi executat{reason}","cliRuntimeNotDetected":"Runtime CLI nu a fost detectat","binary":"Binar","configPath":"Calea de configurare","configPathShort":"Config","failedCheckRuntimeStatus":"Nu s-a putut verifica starea de rulare.","copy":"Copiere","copied":"Copiat","copyConfig":"Copiați config","saveConfig":"Salvați configurația","selectionSaved":"Selecția a fost salvată","guide":"Ghid","detected":"Detectat","notReady":"Nu este gata","active":"Activ","inactive":"Inactiv","startMitm":"Porniți MITM","stopMitm":"Opriți MITM","mitmStarted":"MITM a \xeenceput cu succes!","mitmStopped":"MITM sa oprit cu succes!","failedStart":"Nu s-a pornit MITM","failedStop":"Nu s-a oprit MITM","saveMappings":"Salvați mapările","mappingsSaved":"Mapări salvate!","failedSaveMappings":"Nu s-au salvat mapările","howItWorks":"Cum funcționează:","antigravityHowWorksDesc":"Antigravitația trimite solicitări către punctul final al Google. MITM le interceptează și le redirecționează către OmniRoute.","antigravityStep1":"1. Porniți MITM pentru a direcționa cererile prin OmniRoute.","antigravityStep2Prefix":"2. Adăugați","antigravityStep2Suffix":"\xeen fișierul hosts ca 127.0.0.1.","antigravityStep3":"3. Deschideți Antigravity și cererile vor fi trimise prin proxy.","sudoPasswordRequiredTitle":"Parola Sudo este necesară","sudoPasswordHint":"Parola de administrator este necesară pentru a modifica setările de fișiere gazdă și proxy de sistem.","enterSudoPassword":"Introdu parola sudo","sudoPasswordRequiredError":"Este necesară parola Sudo.","cancel":"Anulează","confirm":"Confirmați","settingsApplied":"Setările aplicate cu succes!","failedApplySettings":"Nu s-au putut aplica setările","settingsReset":"Setările sunt resetate cu succes!","failedResetSettings":"Nu s-au resetat setările","backupRestored":"Backup restaurat!","failedRestore":"Restabilirea eșuată","checkingCli":"Se verifică {tool} CLI...","cliNotRunnable":"{tool} CLI instalat, dar nu poate fi executat","cliNotInstalled":"{tool} CLI nu este instalat","cliNotDetected":"{tool} CLI nu a fost detectat","cliDetectedReady":"{tool} CLI a fost detectat și gata","cliFoundFailedHealthcheck":"{tool} CLI a fost găsit, dar a eșuat verificarea stării de funcționare{reason}.","installCliPrompt":"Instalați {tool} CLI pentru a utiliza această funcție.","installCodexPrompt":"Instalați Codex CLI pentru a utiliza funcția de aplicare automată.","hide":"Ascunde","howToInstall":"Cum se instalează","installationGuide":"Ghid de instalare","platforms":"macOS / Linux / Windows:","afterInstallationRun":"După instalare, rulați","toVerify":"a verifica.","current":"Curent","baseUrlPlaceholder":"https://.../v1","resetToDefault":"Resetați la valoarea implicită","providerModelPlaceholder":"provider/model-id","apply":"Aplicați","reset":"Resetați","manualConfig":"Configurare manuală","backups":"Backup-uri","configBackups":"Backup-uri de configurare","noBackupsYet":"\xcencă nu există copii de rezervă. Backup-urile sunt create automat \xeenainte de fiecare Aplicare sau Resetare.","restore":"Restaurați","backupRestoredReloading":"Backup restaurat! Starea re\xeencărcării...","failedRestoreBackup":"Nu s-a restabilit backupul","applied":"Aplicat!","failed":"A eșuat","resetDone":"Resetați!","omnirouteConfiguredOpenAiCompatible":"OmniRoute este configurat ca furnizor compatibil cu OpenAI","provider":"Furnizor","model":"Model","providers":"Furnizorii","auth":"Auth","noApiKeysAvailable":"Nu există chei API disponibile","usingDefaultOmniroute":"Folosind implicit: sk_omniroute","updateConfig":"Actualizați configurația","applyConfig":"Aplicați Config","noBackupsAvailable":"Nu există copii de rezervă disponibile.","profileSaved":"Profilul „{name}” a fost salvat!","failedSaveProfile":"Nu s-a salvat profilul","profileActivated":"Profil activat!","failedActivateProfile":"Nu s-a activat profilul","profiles":"Profiluri","savedProfiles":"Profiluri salvate","noProfilesYet":"Niciun profil nu a fost salvat \xeencă. Salvați configurația curentă ca profil de mai jos.","activate":"Activați","deleteProfile":"Ștergeți profilul","profileNamePlaceholder":"Numele profilului (de ex., Cont personal)","saveCurrent":"Salvați curent","codexAuthNotePrefix":"Codex folosește","codexAuthNoteMiddle":"cu","codexAuthNoteSuffix":"Faceți clic pe „Aplicați” pentru a configura automat.","claudeManualConfiguration":"Claude CLI - Configurare manuală","codexManualConfiguration":"Codex CLI - Configurare manuală","droidManualConfiguration":"Factory Droid - Configurare manuală","openClawManualConfiguration":"Open Claw - Configurare manuală","clineManualConfiguration":"Configurare manuală a liniei","kiloManualConfiguration":"Configurare manuală a codului Kilo","toolDescriptions":{"antigravity":"Google Antigravity IDE cu MITM","claude":"Codul antropic Claude CLI","codex":"OpenAI Codex CLI","droid":"Factory Droid AI Assistant","openclaw":"Deschideți Asistentul Claw AI","cline":"CLI Cline AI Coding Assistant","kilo":"Kilo Code AI Assistant CLI","cursor":"Cursor AI Code Editor","continue":"Continuați Asistentul AI"},"guides":{"cursor":{"notes":{"0":"Este necesar un cont Cursor Pro pentru a utiliza această funcție.","1":"Cursorul direcționează cererile prin propriul server, astfel \xeenc\xe2t punctul final local nu este acceptat. Vă rugăm să activați Cloud Endpoint \xeen Setări."},"steps":{"1":{"title":"Deschide Setări","desc":"Accesați Setări -> Modele"},"2":{"title":"Activați API-ul OpenAI","desc":"Activați opțiunea „Cheie API OpenAI”."},"3":{"title":"Adresa URL de bază"},"4":{"title":"Cheia API"},"5":{"title":"Adăugați model personalizat","desc":"Faceți clic pe „Vedeți toate modelele” -> „Adăugați modelul personalizat”"},"6":{"title":"Selectați Model"}}},"continue":{"steps":{"1":{"title":"Deschideți Config","desc":"Deschideți Continuați fișierul de configurare"},"2":{"title":"Cheia API"},"3":{"title":"Selectați Model"},"4":{"title":"Adăugați configurația modelului","desc":"Adăugați următoarea configurație la matricea dvs. de modele:"}}}}},"combos":{"title":"Combo-uri","description":"Creați combinații de modele cu rutare ponderată și suport alternativ","createCombo":"Creați Combo","editCombo":"Editează Combo","deleteCombo":"Ștergeți Combo","noModels":"Fara modele","noModelsYet":"Nu au fost adăugate modele \xeencă","addModel":"Adăugați modelul","addModelToCombo":"Adăugați modelul la Combo","routingStrategy":"Strategia de rutare","maxRetries":"Re\xeencercări maxime","timeout":"Timeout (ms)","healthcheck":"Controlul de sănătate","priority":"Prioritate","fallback":"Revenire","roundRobin":"Round Robin","random":"Aleatoriu","leastLatency":"Latență minimă","comboName":"Nume combinat","comboNamePlaceholder":"combo-ul meu","deleteConfirm":"Ștergeți această combinație?","noCombosYet":"Nicio combinație \xeencă","comboCreated":"Combo creat cu succes","comboUpdated":"Combo actualizat cu succes","comboDeleted":"Combo a fost șters","failedCreate":"Nu s-a putut crea combo","failedUpdate":"Nu s-a putut actualiza combo","errorCreating":"Eroare la crearea comboiului","errorUpdating":"Eroare la actualizarea comboiului","errorDeleting":"Eroare la ștergerea combinației","testFailed":"Solicitarea de testare a eșuat","failedToggle":"Combo nu a putut fi comutat","testResults":"Rezultatele testului — {name}","resolvedBy":"Rezolvată de:","more":"+{count} mai mult","reqs":"solicită","success":"succes","proxyConfigured":"Proxy configurat","copyComboName":"Copiați numele combinației","enableCombo":"Activați combo","disableCombo":"Dezactivează combo","testCombo":"Test combo","duplicate":"Duplicat","proxyConfig":"Configurare proxy","nameRequired":"Numele este obligatoriu","nameInvalid":"Doar litere, cifre, -, _, / și . permis","nameHint":"Litere, cifre, -, _, / și . permis","priorityDesc":"Secvenţială alternativă: \xeencearcă mai \xeent\xe2i modelul 1, apoi 2 etc.","weightedDesc":"Distribuie traficul \xeen procente de greutate cu rezervă","roundRobinDesc":"Distribuție circulară: fiecare cerere trece la următorul model \xeen rotație","randomDesc":"Selectare aleatorie uniformă, apoi revenire la modelele rămase","leastUsedDesc":"Alege modelul cu cele mai puține solicitări, echilibr\xe2nd sarcina \xeen timp","costOptimizedDesc":"Rute către cel mai ieftin model mai \xeent\xe2i pe baza prețului","models":"Modele","autoBalance":"Auto-echilibrare","advancedSettings":"Setări avansate","retryDelay":"\xcent\xe2rziere re\xeencercare (ms)","concurrencyPerModel":"Concurență / Model","queueTimeout":"Timp de așteptare la coadă (ms)","advancedHint":"Lăsați gol pentru a utiliza setările implicite globale. Acestea \xeenlocuiesc setările pentru fiecare furnizor.","moveUp":"Mișcă-te \xeen sus","moveDown":"Deplasați-vă \xeen jos","removeModel":"Eliminați","saving":"Se salvează...","weighted":"ponderat","leastUsed":"Cel mai puțin folosit","costOpt":"Cost-Opt"},"costs":{"title":"Costuri","budget":"Buget","totalCost":"Costul total","breakdown":"Defalcarea costurilor","noData":"Fără date de cost","byModel":"După model","byProvider":"Prin Furnizor"},"endpoint":{"title":"API Endpoint","available":"Puncte finale disponibile","cloudProxy":"Cloud Proxy","disableConfirm":"Sigur doriți să dezactivați proxy-ul cloud?","baseUrl":"Adresa URL de bază","apiKeyLabel":"Cheia API","registeredKeys":"Chei \xeenregistrate","chatCompletions":"Finalizări de chat","responses":"Răspunsuri","listModels":"Lista modele","usingCloudProxy":"Folosind Cloud Proxy","usingLocalServer":"Utilizarea serverului local","machineId":"ID mașină: {id}...","disableCloud":"Dezactivați Cloud","enableCloud":"Activați Cloud","modelsAcrossEndpoints":"{models} modele \xeen {endpoints} puncte finale","chatDesc":"Chat \xeen flux și non-stream cu toți furnizorii","embeddings":"\xcenglobări","embeddingsDesc":"\xcencorporare de text pentru conductele de căutare și RAG","imageGeneration":"Generare de imagini","imageDesc":"Generați imagini din solicitări de text","rerank":"Reclasează","rerankDesc":"Reglați documentele \xeen funcție de relevanța pentru o interogare","audioTranscription":"Transcriere audio","audioTranscriptionDesc":"Transcrie fișiere audio \xeen text (Șoaptă)","textToSpeech":"Text to Speech","textToSpeechDesc":"Transformați textul \xeen vorbire cu sunet natural","moderations":"Moderații","moderationsDesc":"Moderarea conținutului și clasificarea siguranței","enableCloudTitle":"Activați Cloud Proxy","whatYouGet":"Ce vei primi","cloudBenefitAccess":"Accesați-vă API-ul de oriunde \xeen lume","cloudBenefitShare":"Partajați cu ușurință punctul final cu echipa dvs","cloudBenefitPorts":"Nu este nevoie să deschideți porturi sau să configurați firewall","cloudBenefitEdge":"Rețea de v\xe2rf globală rapidă","cloudSessionNote":"Cloud vă va păstra sesiunea de autentificare timp de 1 zi. Dacă nu este utilizat, acesta va fi șters automat.","cloudUnstableNote":"Cloud este \xeen prezent instabil cu Claude Code OAuth \xeen unele cazuri.","cloudConnected":"Cloud Proxy conectat!","connectingToCloud":"Se conectează la cloud...","verifyingConnection":"Se verifică conexiunea...","connecting":"Se conectează...","verifying":"Se verifică...","connected":"Conectat!","disableCloudTitle":"Dezactivați Cloud Proxy","disableWarning":"Toate sesiunile de autentificare vor fi șterse din cloud.","syncingData":"Se sincronizează cele mai recente date...","disablingCloud":"Se dezactivează cloud...","syncing":"Se sincronizează...","disabling":"Se dezactivează...","cloudConnectedVerified":"Cloud Proxy conectat și verificat!","connectedVerificationPending":"Conectat — verificare \xeen așteptare","connectedVerificationPendingWithError":"Conectat — verificare \xeen așteptare: {error}","cloudDisabledSuccess":"Cloud a fost dezactivat cu succes","syncedSuccess":"Sincronizat cu succes","failedDisable":"Nu s-a putut dezactiva cloud","failedEnable":"Nu s-a activat cloud","cloudRequestTimeout":"Timeout cerere cloud","cloudRequestFailed":"Solicitarea cloud a eșuat","cloudWorkerUnreachable":"Nu s-a putut contacta lucrătorul cloud. Asigurați-vă că serviciul cloud rulează (npm run dev \xeen /cloud).","connectionFailed":"Conexiunea a eșuat","syncFailed":"Nu s-au putut sincroniza datele din cloud","providerModelsTitle":"{provider} — Modele","noModelsForProvider":"Nu există modele disponibile pentru acest furnizor.","chat":"Chat","embedding":"\xcencorporarea","image":"Imagine","custom":"personalizat","modelsCount":"{count, plural, one {# model} other {# models}}"},"health":{"title":"Sănătatea sistemului","description":"Monitorizarea \xeen timp real a instanței dvs. OmniRoute","healthy":"Sănătos","degraded":"Degradat","down":"Jos","uptime":"Timp de funcționare","memory":"Memorie","memoryRss":"Memorie (RSS)","heap":"grămada","cpu":"CPU","database":"Baza de date","version":"Versiune","lastCheck":"Ultima verificare","providerHealth":"Sanatatea furnizorului","systemMetrics":"Metrici de sistem","tokenHealth":"Token Health","refreshAll":"Re\xeemprospătați toate","checkNow":"Verificați acum","loadingHealth":"Se \xeencarcă datele de sănătate...","failedToLoad":"Nu s-au \xeencărcat datele de sănătate: {error}","retry":"Re\xeencercați","allOperational":"Toate sistemele sunt operaționale","issuesDetected":"Au fost detectate probleme de sistem","updatedAt":"Actualizat {time}","latency":"Latența","latencyP50":"p50","latencyP95":"p95","latencyP99":"p99","millisecondsShort":"{value}ms","notAvailable":"—","totalRequests":"Total cereri","noDataYet":"Nu există date \xeencă","promptCache":"Prompt Cache","entries":"Intrări","hitRate":"Rata de lovituri","hitsMisses":"Hits / Misses","signatureCache":"Cache pentru semnături","signatureDefaults":"Valori implicite","signatureTool":"Instrument","signatureFamily":"Familie","signatureSession":"Sesiune","recovering":"Recuperarea","noCBData":"Nu sunt disponibile date despre \xeentrerupător. Mai \xeent\xe2i faceți niște cereri.","providerHealthStatusAria":"Starea de sănătate a furnizorului","issuesLabel":"Probleme detectate","operational":"Operațional","providers":"Furnizorii","healthyCount":"{count} sănătos","nodeVersion":"Nodul {version}","failures":"{count} eșec","failuresPlural":"{count} eșecuri","lastFailure":"Ultimul","rateLimitStatus":"Starea limitei ratei","activeLimiters":"{count} limitator activ","activeLimitersPlural":"{count} limitatoare active","queued":"\xcen coadă","queuedCount":"{count} pus \xeen coadă","running":"alerg\xe2nd","runningCount":"{count} rulează","ok":"OK","activeLockouts":"Blocări active","resetConfirm":"Resetați toate \xeentreruptoarele la starea sănătoasă? Acest lucru va șterge toate numărul de eșecuri și va restabili toți furnizorii la starea operațională.","resetAllTitle":"Resetați toate \xeentreruptoarele la starea sănătoasă","resetting":"Se resetează...","resetAll":"Resetați toate","until":"P\xe2nă la {time}"},"limits":{"title":"Limite și cote","rateLimit":"Limită de rată","remaining":"Răm\xe2n\xe2nd","requestsPerMinute":"Cereri/min","tokensPerMinute":"Jetoane/min","dailyLimit":"Limită zilnică"},"logs":{"title":"Bușteni","requestLogs":"Cereți jurnalele","proxyLogs":"Jurnalele proxy","auditLog":"Jurnal de audit","console":"Consolă","auditLogDesc":"Acțiuni administrative și evenimente de securitate","loading":"Se \xeencarcă...","refresh":"Re\xeemprospătați","filterByAction":"Filtrați după acțiune...","filterByActor":"Filtrați după actor...","filterEntriesAria":"Filtrați intrările din jurnalul de audit","filterByActionTypeAria":"Filtrați după tipul de acțiune","filterByActorAria":"Filtrați după actor","refreshAuditLogAria":"Actualizează jurnalul de audit","tableAria":"Intrări din jurnalul de audit","failedFetchAuditLog":"Nu s-a putut prelua jurnalul de audit","showing":"Se afișează {count} intrări (offset {offset})","search":"Caută","timestamp":"Marca temporală","action":"Acțiune","actor":"actor","target":"țintă","details":"Detalii","ipAddress":"Adresa IP","notAvailable":"—","noEntries":"Nu au fost găsite intrări \xeen jurnalul de audit","previous":"Anterior","next":"\xcen continuare"},"onboarding":{"welcome":"Bun venit","security":"Securitate","test":"Testează","ready":"Gata!","setPassword":"Setați parola","addProvider":"Adăugați primul dvs. furnizor","getStarted":"\xcencepeți","skip":"Sari peste","skipWizard":"Skip wizard complet","skipPassword":"Omiteți configurarea parolei","skipAndContinue":"Sariți și continuați","passwordLabel":"Parolă","confirmPassword":"Confirmați parola","enterPassword":"Introduceți parola","confirmPasswordPlaceholder":"Confirmați parola","passwordsMismatch":"Parolele nu se potrivesc","setupComplete":"Configurare finalizată!","goToDashboard":"Accesați Tabloul de bord →","welcomeDesc":"OmniRoute este proxy-ul local AI API. Acesta direcționează cererile către mai mulți furnizori de AI cu echilibrare a sarcinii, failover și urmărire a utilizării.","multiProvider":"Multi-furnizor","usageTracking":"Urmărirea utilizării","apiKeyMgmt":"Gestiunea cheii API","securityDesc":"Setați o parolă pentru a vă proteja tabloul de bord sau omiteți pentru moment.","providerDesc":"Conectați-vă primul furnizor de AI. Puteți adăuga mai multe mai t\xe2rziu.","apiKeyRequired":"Cheie API (obligatorie)","customUrlOptional":"Adresă URL personalizată (opțional)","testDesc":"Să verificăm că conexiunea la furnizor funcționează.","runTest":"Rulați Testul de conexiune","testingConnection":"Se testează conexiunea...","connectionSuccessful":"Conexiune reușită! Furnizorul dvs. este pregătit.","noProviderFound":"Nu a fost găsit niciun furnizor. Puteți adăuga unul din tabloul de bord mai t\xe2rziu.","testFailed":"Testul a eșuat, dar \xeel puteți configura mai t\xe2rziu.","couldNotTest":"Nu am putut testa acum. Puteți testa din tabloul de bord.","doneDesc":"Sunteți gata! Instanța dvs. OmniRoute este configurată și pregătită pentru a trimite solicitări AI.","yourEndpoint":"Punctul final:","continue":"Continuă","retry":"Re\xeencercați","failedSetPassword":"Nu s-a putut seta parola. \xcencearcă din nou.","failedAddProvider":"Nu s-a putut adăuga furnizorul. \xcencearcă din nou.","connectionError":"Eroare de conectare. Vă rugăm să \xeencercați din nou.","provider":"Furnizor"},"providers":{"title":"Furnizorii","addProvider":"Adăugați furnizorul","editProvider":"Editați furnizorul","deleteProvider":"Ștergeți furnizorul","noProviders":"Nu au fost configurați furnizori","modelAvailability":"Disponibilitatea modelului","accounts":"Conturi","newAccount":"Cont nou","deleteConfirm":"Sigur doriți să ștergeți acest furnizor?","testing":"Testare...","testConnection":"Testează conexiunea","testSuccess":"Conexiune reușită","testFailed":"Conexiunea a eșuat","available":"Disponibil","cooldown":"Cooldown","unavailable":"Indisponibil","unknown":"Necunoscut","oauthLabel":"OAuth","compatibleLabel":"Compatibil","chat":"Chat","responses":"Răspunsuri","messages":"Mesaje","oauthProviders":"Furnizori OAuth","freeProviders":"Furnizori gratuiti","apiKeyProviders":"Furnizori de chei API","compatibleProviders":"Furnizori compatibili cu cheile API","testAll":"Testează toate","testAllOAuth":"Testați toate conexiunile OAuth","testAllFree":"Testați toate conexiunile gratuite","testAllApiKey":"Testați toate conexiunile API Key","testAllCompatible":"Testați toate conexiunile compatibile","connected":"{count} Conectat","errorCount":"{count} Eroare ({code})","errorCountNoCode":"{count} Eroare","noConnections":"Fără conexiuni","disabled":"Dezactivat","enableProvider":"Activați furnizorul","disableProvider":"Dezactivați furnizorul","testResults":"Rezultatele testelor","noCompatibleYet":"Nu a fost adăugat \xeencă niciun furnizor compatibil","compatibleHint":"Utilizați butoanele de mai sus pentru a adăuga puncte finale compatibile OpenAI sau Anthropic","addOpenAICompatible":"Adăugați compatibil OpenAI","addAnthropicCompatible":"Adăugați compatibil antropic","addNewProvider":"Adăugați un furnizor nou","backToProviders":"\xcenapoi la Furnizori","configureNewProvider":"Configurați un nou furnizor de inteligență artificială pe care să \xeel utilizați cu aplicațiile dvs.","providerLabel":"Furnizor","selectProvider":"Selectați un furnizor","selectedProvider":"Furnizorul selectat","authMethod":"Metoda de autentificare","apiKeyLabel":"Cheia API","apiKeyRequired":"Cheia API este necesară","selectProviderRequired":"Vă rugăm să selectați un furnizor","enterApiKey":"Introduceți cheia dvs. API","apiKeySecure":"Cheia dvs. API va fi criptată și stocată \xeen siguranță.","oauth2Connect":"Conectați-vă cu OAuth2","oauth2Label":"OAuth2","oauth2Desc":"Conectați-vă contul utiliz\xe2nd autentificarea OAuth2.","displayName":"Nume afișat","displayNamePlaceholder":"de exemplu, API de producție, mediu de dezvoltare","displayNameHint":"Opțional. Un nume prietenos pentru a identifica această configurație.","active":"Activ","activeDescription":"Activați acest furnizor pentru utilizare \xeen aplicațiile dvs","cancel":"Anulează","createProvider":"Creați furnizor","failedCreate":"Nu s-a putut crea furnizorul","errorOccurred":"A apărut o eroare. Vă rugăm să \xeencercați din nou.","modelStatus":"Stare model","allModelsOperational":"Toate modelele sunt operaționale","modelsWithIssues":"{count} model(e) cu probleme","allModelsNormal":"Toate modelele răspund normal.","cooldownCleared":"Timpul de răcire a fost eliminat pentru {model}","failedClearCooldown":"Nu s-a șters timpul de răcire","loadingAvailability":"Se \xeencarcă disponibilitatea modelului...","clearCooldown":"Clar","clearing":"Se șterge...","until":"P\xe2nă la {time}","providerTestFailed":"Testul furnizorului a eșuat","modeTest":"{mode} Test","passedCount":"{count} a trecut","failedCount":"{count} a eșuat","testedCount":"{count} testat","millisecondsAbbr":"{value}ms","okShort":"OK","errorShort":"EROARE","noActiveConnectionsInGroup":"Nu s-au găsit conexiuni active pentru acest grup.","allTestsPassed":"Toate testele {total} au trecut","testSummary":"{passed}/{total} a trecut, {failed} a eșuat","nameLabel":"Nume","prefixLabel":"Prefix","baseUrlLabel":"Adresa URL de bază","apiTypeLabel":"Tip API","prefixHint":"Obligatoriu. Prefix unic pentru numele modelelor.","nameHint":"Obligatoriu. O etichetă prietenoasă pentru acest nod.","baseUrlHint":"Obligatoriu. Adresa URL de bază a API-ului furnizorului.","anthropicPrefixPlaceholder":"ac-prod","openaiPrefixPlaceholder":"oc-prod","anthropicBaseUrlPlaceholder":"https://api.anthropic.com/v1","openaiBaseUrlPlaceholder":"https://api.openai.com/v1","validateConnection":"Validați conexiunea","validating":"Se validează...","connectionValid":"Conexiunea este valabilă!","connectionFailed":"Conexiunea a eșuat. Verificați adresa URL și cheia.","testKeyLabel":"Testați cheia API","testKeyPlaceholder":"sk-... (doar pentru validare)","providerNotFound":"Furnizorul nu a fost găsit","deleteConnectionConfirm":"Ștergeți această conexiune?","failedSetAlias":"Nu s-a putut seta aliasul","failedSaveConnection":"Nu s-a putut salva conexiunea","failedSaveConnectionRetry":"Nu s-a putut salva conexiunea. Vă rugăm să \xeencercați din nou.","failedRetestConnection":"Nu s-a retestat conexiunea","deleteCompatibleNodeConfirm":"Ștergeți acest nod {type} compatibil?","anthropicCompatibleDetails":"Detalii compatibile antropice","openaiCompatibleDetails":"Detalii compatibile cu OpenAI","messagesApi":"Messages API","responsesApi":"API de răspunsuri","chatCompletions":"Finalizări de chat","importingModels":"Se importă...","importFromModels":"Import din /modele","addConnectionToImport":"Adăugați o conexiune pentru a activa importul.","noModelsConfigured":"Nu au fost configurate modele","connectionCount":"{count} conexiuni","fetchingModels":"Se preiau modelele disponibile...","failedFetchModels":"Nu s-au putut prelua modelele","noModelsFound":"Nu s-au găsit modele","importFailed":"Importul nu a reușit","noNewModelsAdded":"Nu au fost adăugate modele noi.","adding":"Se adaugă...","importingModelsTitle":"Importul modelelor","copyModel":"Copiați modelul","removeModel":"Eliminați modelul","rateLimitProtected":"Protejat","rateLimitUnprotected":"Neprotejat","enableRateLimitProtection":"Faceți clic pentru a activa protecția limitei ratei","disableRateLimitProtection":"Faceți clic pentru a dezactiva protecția limitei ratei","productionKey":"Cheia de producție","enterNewApiKey":"Introduceți o nouă cheie API","optional":"Opțional","anthropicCompatibleName":"Compatibil antropic","openaiCompatibleName":"Compatibil cu OpenAI","failedImportModels":"Nu s-au putut importa modele","noModelsReturnedFromEndpoint":"Niciun model nu a fost returnat de la punctul final /models.","importingModelsProgress":"Se importă {current} din {total} modele...","foundModelsStartingImport":"S-au găsit {count} modele. Se \xeencepe importul...","importingModelById":"Se importă {modelId}...","importSuccessCount":"Importat cu succes {count, plural, one {# model} other {# models}}!","noNewModelsAddedExisting":"Nu au fost adăugate modele noi (toate există deja).","importDoneCount":"✓ Gata! {count, plural, one {# model imported.} other {# models imported.}}","unexpectedErrorOccurred":"A apărut o eroare neașteptată","connectionCountLabel":"{count, plural, one {# connection} other {# connections}}","messagesPath":"mesaje","responsesPath":"răspunsuri","chatCompletionsPath":"chat/completari","add":"Adăugați","edit":"Editați","delete":"Ștergeți","anthropic":"antropică","openai":"OpenAI","singleConnectionPerCompatible":"Este permisă o singură conexiune pentru fiecare nod compatibil. Adăugați un alt nod dacă aveți nevoie de mai multe conexiuni.","connections":"Conexiuni","providerProxyTitleConfigured":"Proxy furnizor: {host}","configured":"configurat","providerProxyConfigureHint":"Configurați proxy pentru toate conexiunile acestui furnizor","providerProxy":"Proxy de furnizor","noConnectionsYet":"\xcencă nu există conexiuni","addFirstConnectionHint":"Adăugați prima conexiune pentru a \xeencepe","addConnection":"Adăugați o conexiune","availableModels":"Modele disponibile","pageAutoRefresh":"Pagina se va re\xeemprospăta automat...","statusDisabled":"dezactivat","statusConnected":"conectat","statusRuntimeIssue":"problemă de rulare","statusAuthFailed":"auth a eșuat","statusRateLimited":"rata limitată","statusNetworkIssue":"problema rețelei","statusTestUnsupported":"test neacceptat","statusUnavailable":"indisponibil","statusFailed":"a eșuat","statusError":"eroare","oauthAccount":"Cont OAuth","errorTypeRuntime":"Timp de rulare local","errorTypeUpstreamAuth":"Autentificare \xeen amonte","errorTypeMissingCredential":"Lipsește acreditarea","errorTypeRefreshFailed":"Re\xeemprospătarea a eșuat","errorTypeTokenExpired":"Tokenul a expirat","errorTypeRateLimited":"Tarif limitat","errorTypeUpstreamUnavailable":"\xcen amonte indisponibil","errorTypeNetworkError":"Eroare de rețea","errorTypeTestUnsupported":"Testul nu este acceptat","errorTypeUpstreamError":"Eroare \xeen amonte","proxySourceGlobal":"Global","proxySourceProvider":"Furnizor","proxySourceKey":"cheie","proxyConfiguredBySource":"Proxy ({source}): {host}","autoPriority":"Auto: {priority}","proxy":"Proxy","retestAuthentication":"Retestați autentificarea","retest":"Retestați","disableConnection":"Dezactivați conexiunea","enableConnection":"Activați conexiunea","reauthenticateConnection":"Re-autentificați această conexiune","proxyConfig":"Configurare proxy","aliasExistsAlert":"Aliasul „{alias}” există deja. Vă rugăm să utilizați un alt model sau să editați alias-ul existent.","openRouterAnyModelHint":"OpenRouter acceptă orice model. Adăugați modele și creați aliasuri pentru acces rapid.","modelIdFromOpenRouter":"ID model (de la OpenRouter)","openRouterModelPlaceholder":"antropic/claude-3-opus","customModels":"Modele personalizate","customModelsHint":"Adăugați ID-uri de model care nu sunt \xeen lista implicită. Acestea vor fi disponibile pentru rutare.","modelId":"ID model","customModelPlaceholder":"de ex. gpt-4.5-turbo","loading":"Se \xeencarcă...","removeCustomModel":"Eliminați modelul personalizat","noCustomModels":"Nu s-au adăugat \xeencă modele personalizate.","allSuggestedAliasesExist":"Toate pseudonimele sugerate există deja. Vă rugăm să alegeți un alt model sau să eliminați aliasurile aflate \xeen conflict.","failedSaveCustomModel":"Nu s-a salvat modelul personalizat","modelAddedSuccess":"Modelul {modelId} a fost adăugat cu succes","failedAddModelTryAgain":"Nu s-a putut adăuga modelul. Vă rugăm să \xeencercați din nou.","failedSaveImportedModel":"Nu s-a salvat modelul importat \xeen baza de date personalizată","failedImportModelsTryAgain":"Nu s-au putut importa modele. Vă rugăm să \xeencercați din nou.","failedRemoveModelFromDatabase":"Nu s-a putut elimina modelul din baza de date","modelRemovedSuccess":"Modelul a fost eliminat cu succes","failedDeleteModelTryAgain":"Nu s-a șters modelul. Vă rugăm să \xeencercați din nou.","compatibleModelsDescription":"Adăugați manual modele compatibile cu {type} sau importați-le din punctul final /models.","anthropicCompatibleModelPlaceholder":"claude-3-opus-20240229","openaiCompatibleModelPlaceholder":"gpt-4o","apiKeyValidationFailed":"Validarea cheii API nu a reușit. Vă rugăm să vă verificați cheia și să \xeencercați din nou.","addProviderApiKeyTitle":"Adăugați {provider} cheia API","checking":"Se verifică...","check":"Verificați","valid":"Valabil","invalid":"Invalid","creating":"Se creează...","validationChecksAnthropicCompatible":"Validarea verifică {provider} prin verificarea cheii API.","validationChecksOpenAiCompatible":"Verificări de validare {provider} prin /models pe adresa URL de bază.","priorityLabel":"Prioritate","saving":"Se salvează...","save":"Salvați","editConnection":"Editați conexiunea","accountName":"Numele contului","email":"E-mail","healthCheckMinutes":"Verificare de sănătate (min)","healthCheckHint":"Interval proactiv de re\xeemprospătare a simbolului. 0 = dezactivat.","failedTestConnection":"Nu s-a testat conexiunea","failed":"A eșuat","leaveBlankKeepCurrentApiKey":"Lăsați necompletat pentru a păstra cheia API curentă.","editCompatibleTitle":"Editați {type} Compatibil","compatibleBaseUrlHint":"Utilizați adresa URL de bază (se termină \xeen /v1) pentru API-ul dvs. compatibil {type}.","apiKeyForCheck":"Cheie API (pentru verificare)","compatibleProdPlaceholder":"{type} Compatibil (Prod)"},"settings":{"title":"Setări","general":"general","security":"Securitate","appearance":"Aspectul","routing":"Dirijare","cache":"Cache","resilience":"Reziliență","systemPrompt":"Prompt de sistem","thinkingBudget":"G\xe2ndirea bugetului","proxy":"Proxy","pricing":"Prețuri","storage":"Depozitare","policies":"Politici","ipFilter":"Filtru IP","comboDefaults":"Setări implicite combinate","fallbackChains":"Lanțuri de rezervă","changePassword":"Schimbați parola","enablePassword":"Activați parola","darkMode":"Modul \xeentunecat","lightMode":"Modul de lumină","systemTheme":"Tema sistemului","enableCache":"Activați memoria cache","cacheTTL":"Cache TTL","maxCacheSize":"Dimensiunea maximă a memoriei cache","clearCache":"Goliți memoria cache","cacheHits":"Hits \xeen cache","cacheMisses":"Cache Misses","hitRate":"Rata de lovituri","cacheEntries":"Intrări \xeen cache","circuitBreaker":"\xcentrerupător","retryPolicy":"Re\xeencercați Politica","maxRetries":"Re\xeencercări maxime","retryDelay":"Re\xeencercați \xcent\xe2rziere","timeoutMs":"Timeout (ms)","enableSystemPrompt":"Activați promptul de sistem","systemPromptText":"Text prompt de sistem","enableThinking":"Activați g\xe2ndirea","maxThinkingTokens":"Max Thinking Tokens","enableProxy":"Activați proxy","proxyUrl":"Adresa URL proxy","pricingRates":"Formatul tarifelor de preț","currentPricing":"Prezentare generală a prețurilor actuale","loadingPricing":"Se \xeencarcă datele de preț...","noPricing":"Nu sunt disponibile date de preț","input":"Intrare","output":"Ieșire","cached":"\xcen cache","reasoning":"Raționamentul","cacheCreation":"Creare cache","customPricing":"Prețuri personalizate","databaseSize":"Dimensiunea bazei de date","backupDb":"Backup baze de date","restoreDb":"Restaurați baza de date","exportData":"Exportați date","importData":"Importați date","clearData":"Ștergeți toate datele","clearDataConfirm":"Aceasta va șterge definitiv toate datele. esti sigur?","enableRequestLogs":"Activați jurnalele de solicitări","logRetention":"Păstrarea jurnalelor","ipWhitelist":"Lista albă IP","ipBlacklist":"Lista neagră de IP","addIP":"Adăugați IP","savedSuccessfully":"Setările au fost salvate cu succes","ai":"AI","advanced":"Avansat","localMode":"Mod local — Toate datele stocate pe aparat","settingsSectionsAria":"Secțiunile de setări","switchThemes":"Comutați \xeentre temele deschise și cele \xeentunecate","themeSelectionAria":"Selectarea temei","themeLight":"Lumină","themeDark":"\xcentuneric","themeSystem":"Sistem","hideHealthLogs":"Ascundeți jurnalele de verificare a stării de sănătate","hideHealthLogsDesc":"C\xe2nd este ACTIVAT, suprimați mesajele [HealthCheck] din consola serverului","promptCache":"Prompt Cache","flushCache":"Spălați memoria cache","flushing":"Spălare…","size":"Dimensiune","hits":"Hituri","evictions":"Evacuări","loadingCacheStats":"Se \xeencarcă statisticile cache...","globalProxy":"Proxy global","globalProxyDesc":"Configurați un proxy global de ieșire pentru toate apelurile API. Furnizorii individuali, combo-urile și cheile pot suprascrie acest lucru.","noGlobalProxy":"Nu a fost configurat niciun proxy global","globalLabel":"Global","configure":"Configurați","globalSystemPrompt":"Global System Prompt","systemPromptDesc":"Injectat \xeen toate solicitările la nivel de proxy","saved":"Salvat","systemPromptPlaceholder":"Introduceți promptul de sistem pentru a injecta \xeen toate solicitările...","systemPromptHint":"Această solicitare este adăugată mesajului de sistem al fiecărei solicitări. Utilizați pentru instrucțiuni globale, ghiduri de siguranță sau reguli de formatare a răspunsurilor.","chars":"{count} caractere","thinkingBudgetTitle":"G\xe2ndirea bugetului","thinkingBudgetDesc":"Controlați utilizarea simbolurilor de raționament AI pentru toate solicitările","passthrough":"trecere","passthroughDesc":"Fără modificări — clientul controlează bugetul de g\xe2ndire","auto":"Auto","autoDesc":"Eliminați toate configurațiile de g\xe2ndire - lăsați furnizorul să decidă","custom":"Personalizat","customDesc":"Setați un buget fix pentru token pentru toate solicitările","adaptive":"Adaptiv","adaptiveDesc":"Scalați bugetul \xeen funcție de complexitatea cererii","effortNone":"Niciunul (0 jetoane)","effortLow":"Scăzut (1K jetoane)","effortMedium":"Mediu (10.000 jetoane)","effortHigh":"Ridicat (128.000 jetoane)","tokenBudget":"Buget simbol","tokens":"jetoane","baseEffortLevel":"Nivelul de efort de bază","adaptiveHint":"Modul adaptiv crește de la acest nivel de bază \xeen funcție de numărul de mesaje, utilizarea instrumentului și lungimea promptului.","requireLogin":"Necesită autentificare","requireLoginDesc":"C\xe2nd este pornit, tabloul de bord necesită o parolă. C\xe2nd este OFF, accesați fără autentificare.","currentPassword":"Parola curentă","enterCurrentPassword":"Introduceți parola curentă","newPassword":"Parolă nouă","enterNewPassword":"Introduceți o nouă parolă","confirmPassword":"Confirmați parola nouă","confirmPasswordPlaceholder":"Confirmați noua parolă","passwordsNoMatch":"Parolele nu se potrivesc","passwordUpdated":"Parola a fost actualizată cu succes","failedUpdatePassword":"Nu s-a putut actualiza parola","errorOccurred":"A apărut o eroare","updatePassword":"Actualizați parola","setPassword":"Setați parola","apiEndpointProtection":"API Endpoint Protection","requireAuthModels":"Necesită cheia API pentru /models","requireAuthModelsDesc":"C\xe2nd este ACTIVAT, punctul final /v1/models returnează 404 pentru solicitările neautentificate. Previne descoperirea modelului de către utilizatori neautorizați.","blockedProviders":"Furnizori blocați","blockedProvidersDesc":"Ascundeți anumiți furnizori din răspunsul /v1/models. Furnizorii blocați nu vor apărea \xeen listele de modele.","providersBlocked":"{count} furnizor(i) blocat(i) de la /modele","blockProviderTitle":"Blocați {provider}","unblockProviderTitle":"Deblocați {provider}","routingStrategy":"Strategia de rutare","fillFirst":"Umpleți mai \xeent\xe2i","fillFirstDesc":"Utilizați conturile \xeen ordine de prioritate","roundRobin":"Round Robin","roundRobinDesc":"Parcurgeți toate conturile","p2c":"P2C","p2cDesc":"Alegeți 2 la \xeent\xe2mplare, folosiți-l pe cel mai sănătos","random":"Aleatoriu","randomDesc":"Cont aleatoriu pentru fiecare cerere","leastUsed":"Cel mai puțin folosit","leastUsedDesc":"Alegeți contul cel mai puțin utilizat recent","costOpt":"Cost Opt","costOptDesc":"Prefer cel mai ieftin cont disponibil","stickyLimit":"Limită lipicioasă","stickyLimitDesc":"Apeluri pe cont \xeenainte de a comuta","modelAliases":"Aliasuri de model","modelAliasesDesc":"Modele wildcard pentru a remapa numele modelelor • Utilizați * și ?","aliasPatternPlaceholder":"claude-sonet-*","aliasTargetPlaceholder":"claude-sonet-4-20250514","pattern":"Model","targetModel":"Model țintă","add":"+ Adăugați","session":"Sesiune","sessionDetailsAria":"Detalii sesiune","status":"Stare","authenticated":"Autentificat","guest":"Oaspete","loginTime":"Ora de conectare","sessionAge":"V\xe2rsta sesiunii","browser":"Browser","clearLocalData":"Ștergeți datele locale","logout":"Deconectare","clearLocalDataConfirm":"Ștergeți toate datele locale? Aceasta vă va reseta preferințele.","unknown":"Necunoscut","systemActor":"sistem","ipAccessControl":"Control acces IP","ipAccessControlDesc":"Blocați sau permiteți anumite adrese IP","ipModeDisabled":"Dezactivat","ipModeBlacklist":"Lista neagră","ipModeWhitelist":"Lista albă","ipModeWhitelistPriority":"Prioritate WL","addIpAddress":"Adăugați adresa IP","ipAddressPlaceholder":"192.168.1.0/24 sau 10.0.*.*","block":"+ Blocare","allow":"+ Permite","blocked":"Blocat ({count})","allowed":"Permis ({count})","temporaryBans":"Interdicții temporare ({count})","minLeft":"Au mai rămas {min}m","auditLog":"Jurnal de audit","searchAuditLogs":"Căutați jurnalele de audit...","failedLoadAuditLog":"Nu s-a \xeencărcat jurnalul de audit","noAuditEvents":"Nu au fost găsite evenimente de audit","action":"Acțiune","actor":"actor","details":"Detalii","time":"timpul","fallbackChainsTitle":"Lanțuri de rezervă","fallbackChainsDesc":"Definiți ordinea de rezervă a furnizorului pentru fiecare model","addChain":"+ Adăugați lanț","modelName":"Numele modelului","modelNamePlaceholder":"claude-sonet-4-20250514","providersCommaSeparated":"Furnizori (separați prin virgulă, \xeen ordine de prioritate)","providersCommaSeparatedPlaceholder":"antropic, openai, gemeni","createChain":"Creați lanț","noFallbackChains":"Fără lanțuri de rezervă","noFallbackChainsDesc":"Creați un lanț pentru a defini ordinea de rezervă a furnizorului pentru un model.","loadingFallbackChains":"Se \xeencarcă lanțurile alternative...","deleteChainConfirm":"Ștergeți lanțul alternativ pentru „{model}”?","chainCreated":"Lanț creat pentru {model}","chainDeleted":"Lanțul a fost șters pentru {model}","failedCreateChain":"Nu s-a putut crea lanțul","failedDeleteChain":"Lanțul nu a putut fi șters","deleteChain":"Ștergeți lanțul","fillModelAndProviders":"Vă rugăm să completați numele modelului și furnizorii","addAtLeastOneProvider":"Adăugați cel puțin un furnizor","comboDefaultsTitle":"Setări implicite combinate","globalComboConfig":"Configurație globală combo","defaultStrategy":"Strategia implicită","defaultStrategyDesc":"Aplicat combo-urilor noi fără strategie explicită","comboStrategyAria":"Strategie combinată","priority":"Prioritate","weighted":"ponderat","maxRetriesLabel":"Re\xeencercări maxime","retryDelayLabel":"\xcent\xe2rziere re\xeencercare (ms)","timeoutLabel":"Timeout (ms)","healthCheck":"Verificare de sănătate","healthCheckDesc":"Verificați prealabil disponibilitatea furnizorului","trackMetrics":"Urmăriți valorile","trackMetricsDesc":"\xcenregistrați valorile pentru fiecare cerere combinată","providerOverrides":"Suprascrierea furnizorului","providerOverridesDesc":"Suprascrierea timpului de expirare și re\xeencercări pentru fiecare furnizor. Setările furnizorului \xeenlocuiesc valorile prestabilite globale.","providerMaxRetriesAria":"{provider} max. re\xeencercări","providerTimeoutAria":"{provider} timeout ms","removeProviderOverrideAria":"Eliminați anularea {provider}","newProviderNamePlaceholder":"de ex. google, deschide...","newProviderNameAria":"Numele furnizorului nou","retries":"re\xeencercări","ms":"ms","saveComboDefaults":"Salvați setările implicite de combo","maxNestingDepth":"Ad\xe2ncimea maximă de cuibărire","concurrencyPerModel":"Concurență / Model","queueTimeout":"Timp de așteptare la coadă (ms)","providerProfiles":"Profiluri de furnizor","providerProfilesDesc":"Setări separate de rezistență pentru furnizorii OAuth (bazat pe sesiune) și API Key (contorizat). Furnizorii OAuth au praguri mai stricte din cauza limitelor mai mici ale ratei.","oauthProviders":"Furnizori OAuth","apiKeyProviders":"Furnizori de chei API","transientCooldown":"Răcire tranzitorie","rateLimitCooldown":"Rate de răcire limită","maxBackoffLevel":"Nivel maxim de retragere","cbThreshold":"Pragul CB","cbResetTime":"Timp de resetare CB","rateLimiting":"Limitarea ratei","rateLimitingDesc":"Furnizorii de chei API sunt limitate automat la rate cu valori implicite sigure. Limitele sunt \xeenvățate din anteturile de răspuns și se adaptează \xeen timp.","defaultSafetyNet":"Rețea de siguranță implicită","rpm":"RPM","minGap":"Gap min","maxConcurrent":"Concurență maximă","activeLimiters":"Limitatoare active","noActiveLimiters":"\xcencă nu există limitatoare de rată active.","reservoir":"Rezervor","running":"Alergarea","queued":"\xcen coadă","circuitBreakers":"\xcentreruptoare","breakerStateClosed":"\xcenchis","breakerStateOpen":"Deschide","breakerStateHalfOpen":"Pe jumătate deschis","tripped":"{count} sa declanșat","healthy":"{count} sănătos","resetAll":"Resetați toate","noCircuitBreakers":"Niciun \xeentrerupător de circuit activ \xeencă. Acestea sunt create automat atunci c\xe2nd cererile trec prin conducta combinată.","failures":"{count} eșec(e)","policiesLocked":"Politici și identificatori blocați","allOperational":"Toate sistemele sunt operaționale — fără blocaje sau \xeentrerupătoare declanșate","loadingPolicies":"Se \xeencarcă politicile...","lockedIdentifiers":"Identificatori blocați","unlockedIdentifier":"Deblocat: {identifier}","sinceDate":"din {date}","forceUnlock":"Deblocare forțată","unlocking":"Se deblochează...","failedUnlock":"Deblocarea eșuată","failedLoadWithStatus":"Nu s-a \xeencărcat: {status}","failedLoadResilience":"Nu s-a \xeencărcat starea de rezistență","saveFailed":"Salvarea nu a reușit","resetFailed":"Resetarea a eșuat","loadingResilience":"Se \xeencarcă starea rezistenței...","retry":"Re\xeencercați","systemStorage":"Sistem și stocare","allDataLocal":"Toate datele stocate local pe aparatul dvs","databasePath":"Calea bazei de date","exportDatabase":"Exportați baza de date","exportAll":"Exportați toate (.tar.gz)","importDatabase":"Importă baza de date","confirmDbImport":"Confirmați importul bazei de date","confirmDbImportDesc":"Aceasta va \xeenlocui toate datele curente cu conținutul din {file}. O copie de rezervă va fi creată automat \xeenainte de import.","yesImport":"Da, import","lastBackup":"Ultima copie de rezervă","noBackupYet":"Nicio rezervă \xeencă","backupNow":"Faceți backup acum","backupRestore":"Backup și restaurare","viewBackups":"Vizualizați copii de rezervă","hide":"Ascunde","backupRetentionDesc":"Instantaneele bazei de date sunt create automat \xeenainte de restaurare și la fiecare 15 minute c\xe2nd datele se modifică. Reținere: 24 de ore din 24 + 30 de backup-uri zilnice cu rotație inteligentă.","loadingBackups":"Se \xeencarcă copii de rezervă...","noBackupsYet":"Nu există copii de rezervă disponibile \xeencă. Backup-urile vor fi create automat c\xe2nd datele se schimbă.","backupsAvailable":"{count} backup(uri) disponibil(e).","refresh":"Re\xeemprospătați","confirm":"Confirm?","yes":"Da","no":"Nu","restore":"Restaurați","invalidFileType":"Tip de fișier nevalid. Sunt acceptate numai fișierele .sqlite.","exportFailed":"Exportul nu a reușit","exportFailedWithError":"Export eșuat: {error}","fullExportFailedWithError":"Exportul complet eșuat: {error}","backupCreated":"Backup creat: {file}","restoreSuccess":"Restaurat! {connections} conexiuni, {nodes} noduri, {combos} combo, {apiKeys} chei API.","importSuccess":"Baza de date importată! {connections} conexiuni, {nodes} noduri, {combos} combo, {apiKeys} chei API.","justNow":"tocmai acum","minutesAgo":"{count}m \xeen urmă","hoursAgo":"acum {count}h","daysAgo":"acum {count}d","backupReasonManual":"manual","backupReasonPreRestore":"pre-restaurare","connectionsCount":"{count, plural, one {# connection} other {# connections}}","noChangesSinceBackup":"Nicio modificare de la ultima copie de rezervă","backupFailed":"Copierea de rezervă a eșuat","restoreFailed":"Restaurarea a eșuat","importFailed":"Importul nu a reușit","errorDuringRestore":"A apărut o eroare \xeen timpul restaurării","errorDuringImport":"A apărut o eroare \xeen timpul importului","modelPricing":"Prețul modelului","modelPricingDesc":"Configurați tarifele de cost pe model • Toate tarifele \xeen jetoane $/1M","providers":"Furnizorii","registry":"Registrul","priced":"Preț","searchProvidersModels":"Căutați furnizori sau modele...","showAll":"Arată toate","noProvidersMatch":"Niciun furnizor nu corespunde căutării dvs.","howPricingWorks":"Cum funcționează prețurile","cacheWrite":"Scriere \xeen cache","unsaved":"nesalvat","resetDefaults":"Resetează setările implicite","saveProvider":"Salvați furnizorul","saving":"Se salvează...","model":"Model","models":"modele","moreProviders":"{count} mai mulți furnizori","withPricing":"cu prețul configurat","policiesCircuitBreakers":"Politici și \xeentrerupătoare de circuit","activeIssuesDetected":"Au fost detectate probleme active","off":"Oprit","resetPricingConfirm":"Resetați toate prețurile pentru {provider} la valorile prestabilite?","pricingDescInput":"Intrare: jetoane trimise modelului","pricingDescOutput":"Ieșire: jetoane generate","pricingDescCached":"\xcen cache: intrare reutilizată (~50% din rata de intrare)","pricingDescReasoning":"Raționament: jetoane de g\xe2ndire (se \xeentoarce la Ieșire)","pricingDescCacheWrite":"Scriere \xeen cache: crearea de intrări \xeen cache (revine la Intrare)","pricingDescFormula":"Cost = (input \xd7 input_rate) + (output \xd7 output_rate) + (cached \xd7 cached_rate) per milion de jetoane.","pricingSettingsTitle":"Setări de preț","totalModels":"Total Modele","active":"Activ","costCalculation":"Calculul costurilor","costCalculationDesc":"Costurile sunt calculate pe baza utilizării simbolurilor și a tarifelor de preț configurate pentru fiecare model.","pricingFormat":"Format de preț","pricingFormatDesc":"Toate tarifele sunt \xeen jetoane/1 milion USD (dolari per milion de jetoane).","tokenTypes":"Tipuri de jetoane","inputTokenDesc":"Jetoane standard de prompt","outputTokenDesc":"Jetoane de completare/răspuns","cachedTokenDesc":"Jetoane de intrare stocate \xeen cache (de obicei 50% din rata de intrare)","reasoningTokenDesc":"Indicative speciale de raționament/g\xe2ndire (retracție la rata de ieșire)","cacheCreationTokenDesc":"Jetoane utilizate pentru a crea intrări \xeen cache (retur la rata de intrare)","customPricingNote":"Puteți suprascrie prețurile implicite pentru anumite modele. Anulările personalizate au prioritate față de prețurile detectate automat.","editPricing":"Editați prețul","viewFullDetails":"Vezi detalii complete"},"translator":{"title":"Traducător","metaTitle":"Translator Playground | OmniRoute","metaDescription":"Depanați, testați și vizualizați traducerile \xeen format API \xeentre furnizori","playgroundTitle":"Loc de joacă pentru traducător","playground":"Loc de joacă","realtime":"Activitate de traducere \xeen timp real","chatTester":"Tester de chat","testBench":"Banc de testare","liveMonitor":"Monitor live","modeDescriptionPlayground":"Lipiți orice corp de solicitare API și vedeți cum \xeel traduce OmniRoute \xeentre formatele de furnizor (OpenAI ↔ Claude ↔ Gemini ↔ API-ul de răspunsuri)","modeDescriptionChatTester":"Trimiteți cereri reale de chat prin OmniRoute și inspectați \xeentreaga călătorie dus-\xeentors: intrare, cerere tradusă, răspuns furnizor și ieșire tradusă.","modeDescriptionTestBench":"Rulați scenarii predefinite și comparați compatibilitatea \xeentre furnizori și modele.","modeDescriptionLiveMonitor":"Urmărește evenimentele de traducere \xeen timp real, pe măsură ce solicitările circulă prin OmniRoute.","modeDescriptionFallback":"Depanați, testați și vizualizați modul \xeen care OmniRoute traduce cererile API \xeentre furnizori.","recentTranslations":"Traduceri recente","noTranslations":"Nicio traducere \xeencă","source":"Sursa","target":"țintă","time":"timpul","model":"Model","status":"Stare","latency":"Latența","totalTranslations":"Traduceri totale","successful":"De succes","errors":"Erori","avgLatency":"Latență medie","millisecondsShort":"{value}ms","notAvailableSymbol":"—","liveAutoRefreshing":"Live — Auto-\xeemprospătare","paused":"\xcentrerupt","eventsAppearHint":"Evenimentele de traducere apar aici pe măsură ce solicitările circulă prin OmniRoute. Utilizați oricare dintre aceste metode pentru a genera evenimente:","chatTesterTab":"Fila Tester de chat","testBenchTab":"Fila Banc de testare","externalApiCalls":"Apeluri API externe","ideCliIntegrations":"Integrari IDE/CLI","inMemoryNote":"Notă: Evenimentele sunt stocate \xeen memorie și resetate atunci c\xe2nd serverul repornește.","ok":"OK","errorShort":"ERR","formatConverter":"Convertor de format","formatConverterDescription":"Lipiți sau introduceți un corp de solicitare JSON. Traducătorul va detecta automat formatul sursă și \xeel va converti \xeen formatul țintă. Utilizați aceasta pentru a depana modul \xeen care OmniRoute traduce cererile \xeentre formate (OpenAI ↔ Claude ↔ Gemini ↔ Responses API).","input":"Intrare","output":"Ieșire","auto":"Auto","swapFormats":"Schimbați formatele","translateAction":"Traduceți","clear":"Clar","inputPlaceholder":"Lipiți un corp de solicitare aici sau selectați un șablon de mai jos...","exampleTemplates":"Exemple de șabloane","exampleTemplatesHint":"— Faceți clic pentru a \xeencărca","templateLoadHint":"Șablonul \xeencarcă solicitarea \xeen format {format}. Modificați formatul sursă pentru a \xeencărca \xeentr-un alt format.","compatibilityTester":"Tester de compatibilitate","compatibilityReport":"Raport de compatibilitate","testBenchDescription":"Rulați scenarii predefinite (Simple Chat, Tool Calling etc.) pentru a verifica traducerea și compatibilitatea furnizorilor. Selectați un format sursă și un furnizor țintă, apoi rulați toate testele pentru a vedea un procent de compatibilitate. Folosiți acest lucru pentru a afla ce caracteristici funcționează \xeentre furnizori.","targetProvider":"Furnizor țintă","runAllTests":"Rulați toate testele","runTest":"Run Test","reRun":"Reluați","running":"Alergare...","passed":"a trecut","failed":"a eșuat","passedIconLabel":"✅ A trecut","chunks":"bucăți","scenarioSimpleChat":"Chat simplu","scenarioToolCalling":"Apelarea instrumentului","scenarioMultiTurn":"Multi-turn","scenarioThinking":"G\xe2ndirea","scenarioSystemPrompt":"Prompt de sistem","scenarioStreaming":"Streaming","templateNames":{"simple-chat":"Chat simplu","tool-calling":"Apelarea instrumentului","multi-turn":"Multi-turn","thinking":"G\xe2ndirea","system-prompt":"Prompt de sistem","streaming":"Streaming"},"templateDescriptions":{"simple-chat":"Mesaj text de bază","tool-calling":"Invocarea funcției/uneltei","multi-turn":"Conversație cu istoria","thinking":"G\xe2ndire extinsă / raționament","system-prompt":"Instrucțiuni de sistem complexe","streaming":"Solicitare de streaming SSE"},"templatePayloads":{"simpleChat":{"system":"Ești un asistent util.","userGreeting":"Bună ziua! Cum te simți azi?"},"toolCalling":{"userWeather":"Care este vremea \xeen S\xe3o Paulo?","toolDescription":"Obțineți vremea actuală pentru o locație","cityNameDescription":"Numele orașului"},"multiTurn":{"system":"Sunteți un asistent de codare.","userInitial":"Scrieți o funcție pentru a sorta o matrice \xeen Python.","assistantExample":"Iată o funcție simplă de sortare:\\n\\n```python\\ndef sort_array(arr):\\n return sortat(arr)\\n```","userFollowUp":"Acum sortați \xeen ordine descrescătoare."},"thinking":{"question":"Care este suma primelor 100 de numere prime?"},"systemPrompt":{"systemInstruction":"Sunteți un inginer de software senior specializat \xeen sisteme distribuite. Răspundeți concis la \xeentrebări folosind cele mai bune practici din industrie. Furnizați \xeentotdeauna exemple de cod atunci c\xe2nd este relevant. Formatați răspunsurile folosind markdown.","question":"Cum implementez un model de \xeentrerupător?"},"streaming":{"prompt":"Spune-mi o scurtă poveste despre un robot care \xeenvață să picteze."}},"openaiCompatibleLabel":"Compatibil cu OpenAI","anthropicCompatibleLabel":"Compatibil antropic","noTemplateForFormat":"Nu există șablon pentru acest format","translationFailed":"Traducerea a eșuat: {error}","pipelineDebugger":"Pipeline Debugger","translationPipeline":"Conducta de traduceri","pipelineVisualization":"Vizualizarea conductei","pipelineVisualizationHint":"Trimiteți un mesaj pentru a vedea cum decurge cererea dvs. prin detectare → traducere → apel de la furnizor.","chatTesterDescription":"Trimiteți mesaje ca un anumit format de client și inspectați fiecare pas al conductei de traducere.","chatTesterFlow":"Solicitare client → Detectare format → Intermediar OpenAI → Format furnizor → Răspuns","clickStepToInspect":"Faceți clic pe orice pas pentru a inspecta datele \xeen acea etapă.","clientFormat":"Format client","provider":"Furnizor","modelPlaceholder":"Selectați sau introduceți un nume de model...","sendMessageToSeePipeline":"Trimiteți un mesaj pentru a vedea canalul de traducere","chatMessageHintPrefix":"Mesajul dvs. va fi formatat ca a","chatMessageHintSuffix":"cerere, tradusă prin conductă și trimisă furnizorului selectat.","youWithFormat":"Tu ({format})","assistant":"Asistent","typeMessage":"Tastați un mesaj...","send":"Trimite","clientRequest":"Solicitarea clientului","clientRequestDescription":"Corpul solicitării pe care l-ar trimite clientul dvs","formatDetected":"Format detectat","formatDetectedDescription":"OmniRoute detectează automat formatul API din structura cererii","openaiIntermediate":"OpenAI Intermediar","openaiIntermediateDescription":"Toate formatele sunt mai \xeent\xe2i normalizate la formatul OpenAI (puntea universală)","providerFormat":"Format de furnizor","providerFormatDescription":"Formatul OpenAI este tradus \xeen formatul nativ al furnizorului","providerResponse":"Răspunsul furnizorului","providerResponseRawDescription":"Răspunsul brut de la API-ul furnizorului","providerResponseSseDescription":"Fluxul SSE brut de la API-ul furnizorului","unexpectedError":"A apărut o eroare neașteptată","error":"Eroare","errorMessage":"Eroare: {message}","requestFailed":"Solicitarea a eșuat","noTextExtracted":"(Niciun text extras)","liveMonitorDescriptionPrefix":"Afișează evenimentele de traducere pe măsură ce apelurile API circulă prin OmniRoute. Evenimentele provin din buffer-ul din memorie (resetează la repornire). Utilizați","liveMonitorDescriptionSuffix":", sau apeluri API externe pentru a genera evenimente."},"usage":{"title":"Utilizare","loggerTab":"Logger","proxyTab":"Proxy","budgetManagement":"Managementul bugetului","budgetSaved":"Limitele bugetare au fost salvate","budgetSaveFailed":"Nu s-a salvat bugetul","loadingBudgetData":"Se \xeencarcă datele bugetare...","noApiKeysTitle":"Fără chei API","noApiKeysDescription":"Adăugați mai \xeent\xe2i cheile API pentru a configura limite de buget.","apiKey":"Cheia API","todaysSpend":"Cheltuielile de azi","thisMonth":"Luna aceasta","setLimits":"Setați limite","dailyLimitUsd":"Limită zilnică (USD)","monthlyLimitUsd":"Limită lunară (USD)","warningThresholdPercent":"Pragul de avertizare (%)","dailyLimitPlaceholder":"de ex. 5.00","monthlyLimitPlaceholder":"de ex. 50.00","warningThresholdPlaceholder":"80","saveLimits":"Salvați limite","budgetOk":"Buget OK — {remaining} rămas","budgetExceeded":"Buget depășit — solicitările pot fi blocate","totalRequests":"Total cereri","noDataYet":"Nu există date \xeencă","latency":"Latența","latencyP50":"p50","latencyP95":"p95","latencyP99":"p99","promptCache":"Prompt Cache","systemHealth":"Sănătatea sistemului","entries":"Intrări","activeCount":"{count} activ","openCircuitBreakersDetected":"\xcentreruptoare deschise detectate","hitRate":"Rata de lovituri","hitsMisses":"Hits / Misses","circuitBreakers":"\xcentreruptoare","lockedIPs":"IP-uri blocate","lockoutsAutoRefreshHint":"Blocări ale limitei ratei per model • Re\xeemprospătare automată 10 secunde","lockedCount":"{count, plural, one {# locked} other {# locked}}","timeLeft":"{time} a rămas","howItWorks":"Cum funcționează","howItWorksSubtitle":"Aflați cum evaluările vă validează răspunsurile LLM","define":"Definiți","defineStepDescription":"Creați cazuri de testare cu solicitări de intrare și criterii de ieșire așteptate, folosind strategii precum conține, expresii regex sau potrivire exactă.","run":"Fugi","runStepDescription":"Execută cazuri de testare \xeempotriva punctelor finale LLM prin OmniRoute. Fiecare caz este trimis ca o cerere API reală.","evaluate":"Evaluează","evaluateStepDescription":"Răspunsurile sunt comparate cu criteriile așteptate. Vedeți succes/eșec pentru fiecare caz cu valori de latență și feedback detaliat.","evalSuites":"Suite de evaluare","evalSuitesHint":"Faceți clic pe o suită pentru a vedea cazurile de testare, apoi rulați pentru a evalua punctele finale LLM","evalsLoading":"Se \xeencarcă apartamentele de evaluare...","noEvalSuitesFound":"Nu au fost găsite suite Eval","noEvalSuitesDescription":"Suitele de evaluare pot fi definite prin API sau \xeen cod. Ei testează ieșirile modelului \xeen raport cu rezultatele așteptate folosind strategii precum conține, regex, potrivire exactă și funcții personalizate.","columnCase":"Caz","columnStatus":"Stare","columnLatency":"Latența","columnDetails":"Detalii","columnModel":"Model","columnStrategy":"Strategie","columnExpected":"Așteptată","statsSuites":"Suite","statsTestCases":"Cazuri de testare","statsModels":"Modele","statsCoverage":"Acoperire","statsStrategiesCount":"{count} strategii","evaluationStrategies":"Strategii de evaluare","modelsUnderTest":"Modele \xeen curs de testare","searchSuitesPlaceholder":"Căutați apartamente...","passSuffix":"trece","casesCount":"{count, plural, one {# case} other {# cases}}","runEval":"Rulați Eval","runningProgress":"Se rulează {current}/{total}...","passRate":"rata de promovare","summaryBreakdown":"{passed} a trecut \xb7 {failed} a eșuat \xb7 {total} total","passedIconLabel":"✅ A trecut","failedIconLabel":"❌ A eșuat","detailsContains":"Conține: „{term}”","detailsRegex":"Regex: {pattern}","detailsExpected":"Așteptată: „{expected}”","noResultsYet":"Niciun rezultat \xeencă","testCasesCount":"Cazuri de testare ({count})","noTestCasesDefined":"Nu au fost definite cazuri de testare","runEvalHint":"Faceți clic pe „Run Eval” pentru a executa toate cazurile \xeempotriva punctului final LLM. Fiecare test trimite o cerere reală prin OmniRoute.","notifyNoTestCases":"Nu au fost definite cazuri de testare pentru această suită","notifyAllCasesPassed":"Toate {total} cazuri au trecut ✅","notifySomeCasesFailed":"{passed}/{total} a trecut, {failed} a eșuat","notifyEvalRunFailed":"Evaluarea a eșuat","notifyEvalTitle":"Evaluare: {name}","modelEvals":"Evaluări de model","evalsHeroDescription":"Testați și validați punctele finale LLM rul\xe2nd suite de evaluare predefinite. Fiecare suită conține cazuri de testare care trimit solicitări reale prin OmniRoute și compară răspunsurile cu criteriile așteptate - ajut\xe2ndu-vă să detectați regresiile, să comparați modele și să asigurați calitatea răspunsului \xeentre furnizori.","qualityValidation":"Validarea calității","modelComparison":"Comparație de modele","regressionDetection":"Detectarea regresiei","latencyBenchmarks":"Benchmark-uri de latență","modelLockouts":"Blocarea modelelor","noLockouts":"Nu există modele blocate momentan","activeSessions":"Sesiuni active","noSessions":"Fără sesiuni active","sessionsHint":"Sesiunile apar pe măsură ce solicitările circulă prin proxy","sessionsTrackedHint":"Urmărit prin amprenta la cerere • Re\xeemprospătare automată 5s","session":"Sesiune","age":"V\xe2rsta","requests":"Cereri","connection":"Conexiune","durationMillisecondsShort":"{value}ms","durationSecondsShort":"{value}s","durationMinutesShort":"{value}m","durationHoursShort":"{value}h","reasonSeparator":" - ","notAvailableSymbol":"-","providerLimits":"Limitele furnizorului","noProviders":"Niciun furnizor conectat","connectProvidersForQuota":"Conectați-vă la furnizori cu OAuth pentru a urmări limitele și utilizarea cotelor API.","accountsCount":"{count, plural, one {# account} other {# accounts}}","filteredFromCount":"(filtrat din {count})","autoRefresh":"Re\xeemprospătare automată","refreshAll":"Re\xeemprospătați toate","loadingQuotas":"Se \xeencarcă...","account":"Cont","modelQuotas":"Cote model","lastUsed":"Ultima utilizare","actions":"Acțiuni","refreshQuota":"Actualizează cota","today":"Astăzi","tomorrow":"M\xe2ine","dayTimeFormat":"{day}, {time}","inDuration":"\xeen {duration}","notApplicable":"N/A","rawPlanWithValue":"Plan brut: {plan}","noPlanFromProvider":"Niciun plan de la furnizor","noQuotaData":"Fără date de cotă","noQuotaDataAvailable":"Nu sunt disponibile date privind cotele","noAccountsForTierFilter":"Nu s-au găsit conturi pentru filtrul de nivel","tierAll":"Toate","tierEnterprise":"\xcentreprindere","tierTeam":"Echipa","tierBusiness":"Afaceri","tierUltra":"Ultra","tierPro":"Pro","tierPlus":"Plus","tierFree":"Gratuit","tierUnknown":"Necunoscut"},"modals":{"waitingAuth":"\xcen așteptarea autorizației","verificationUrl":"Adresa URL de verificare","yourCode":"Codul dvs","remoteAccess":"Acces de la distanță:","connectedSuccess":"Conectat cu succes!","connectionFailed":"Conexiune a eșuat","chooseAuthMethod":"Alegeți metoda de autentificare:","awsBuilderId":"ID AWS Builder","awsIamIdentity":"Centrul de identitate AWS IAM","googleAccount":"Cont Google","githubAccount":"Cont GitHub","importToken":"Import Token","pasteToken":"Lipiți indicativul de re\xeemprospătare din Kiro IDE.","awsRegion":"Regiunea AWS","autoDetecting":"Se detectează automat jetoanele...","readingFromCache":"Citirea din memoria cache AWS SSO","readingFromCursor":"Citirea din baza de date Cursor IDE","initializing":"Se inițializează...","pricingConfig":"Configurarea prețurilor","loadingPricing":"Se \xeencarcă datele de preț...","pricingRatesFormat":"Formatul tarifelor de preț","noPricingData":"Nu sunt disponibile date de preț","noModelsFound":"Nu s-au găsit modele"},"loggers":{"allProviders":"Toți Furnizorii","allModels":"Toate modelele","allAccounts":"Toate Conturile","allApiKeys":"Toate cheile API","allTypes":"Toate Tipurile","allLevels":"Toate Nivelurile","modelAZ":"Modelul A-Z","modelZA":"Model Z-A","loadingLogs":"Se \xeencarcă jurnalele...","loadingProxyLogs":"Se \xeencarcă jurnalele proxy...","noLogEntries":"Nu au fost găsite intrări de jurnal","noPayloadData":"Nu există date disponibile pentru această intrare \xeen jurnal.","proxyEvent":"Eveniment proxy","proxy":"Proxy","level":"Nivel","directNative":"Direct (nativ)","combo":"Combo","inputTokens":"eu:","outputTokens":"O:"},"stats":{"usageOverview":"Prezentare generală a utilizării","outputTokens":"Jetoane de ieșire","totalCost":"Costul total","usageByModel":"Utilizare după model","usageByAccount":"Utilizare după Cont","failedToLoad":"Nu s-au \xeencărcat statisticile de utilizare.","tokenHealth":"Token Health","totalOAuth":"OAuth totală","healthy":"Sănătos","warning":"Avertisment","errored":"Eroare","lastCheck":"Ultima verificare","noData":"Fără date","share":"Distribuie","unableToLoad":"Nu se pot \xeencărca valorile sistemului","product":"Produs","resources":"Resurse","company":"Compania"},"auth":{"welcome":"Bun venit","signIn":"Conectați-vă","enterPassword":"Introduceți parola pentru a continua","password":"Parolă","unifiedProxy":"Proxy API AI unificat","unifiedAiApiProxy":"Proxy API AI unificat","unifiedAiApiProxyDesc":"Dirijați cererile către mai mulți furnizori de AI printr-un singur punct final. Echilibrarea \xeencărcăturii, failoverul și urmărirea utilizării \xeencorporate.","passwordNotEnabled":"Protecția prin parolă nu este activată","loading":"Se \xeencarcă...","invalidPassword":"Parolă nevalidă","errorOccurredRetry":"A apărut o eroare. Vă rugăm să \xeencercați din nou.","configureInstance":"Haideți să vă configurați instanța OmniRoute","runOnboardingWizard":"Rulați expertul de onboarding pentru a vă configura parola și pentru a vă conecta primul furnizor de AI.","startOnboarding":"\xcencepeți integrarea","secureYourInstance":"Asigurați-vă instanța","setPasswordDescription":"Setați o parolă pentru a vă proteja tabloul de bord și pentru a vă asigura punctele finale API \xeempotriva accesului neautorizat.","configurePassword":"Configurați parola","continue":"Continuă","windowWillClose":"Această fereastră se va \xeenchide automat...","closeTabNow":"Puteți \xeenchide această filă acum.","copyUrlManual":"Vă rugăm să copiați adresa URL din bara de adrese și să o inserați \xeen aplicație.","accessDeniedDescription":"Nu aveți permisiunea de a accesa această resursă. Verificați cheia API sau contactați administratorul.","goToDashboard":"Accesați tabloul de bord","featureMultiProviderTitle":"Multi-furnizor","featureMultiProviderDesc":"OpenAI, Anthropic, Google și multe altele","featureLoadBalancingTitle":"Echilibrarea sarcinii","featureLoadBalancingDesc":"Distribuiți cererile \xeen mod inteligent","featureUsageTrackingTitle":"Urmărirea utilizării","featureUsageTrackingDesc":"Monitorizați costurile și jetoanele","resetPassword":"Resetează parola","resetDescription":"Alegeți o metodă pentru a recupera accesul la tabloul de bord","stopServer":"Opriți serverul OmniRoute","processing":"Se procesează...","pleaseWait":"Vă rugăm să așteptați p\xe2nă c\xe2nd completăm autorizarea.","authSuccess":"Autorizare reușită!","copyUrl":"Copiați această adresă URL","accessDenied":"Acces refuzat","methodCliTitle":"Metoda 1: Resetarea CLI","methodCliDescription":"Rulați următoarea comandă pe serverul pe care rulează OmniRoute:","methodCliHint":"Acest lucru vă va solicita să setați o nouă parolă. Serverul trebuie oprit mai \xeent\xe2i.","methodManualTitle":"Metoda 2: Resetare manuală","methodManualDescription":"Ștergeți parola din baza de date și setați una nouă la pornire:","setPasswordInYour":"Setați o nouă parolă \xeen dvs","fileLabelSuffix":"fisier:","newPasswordPlaceholder":"dvs._noua_parolă","deleteSettingsFile":"Ștergeți","orRemovePasswordHashField":"sau eliminați c\xe2mpul passwordHash","restartServerWithNewPassword":"Reporniți serverul - va folosi noua parolă","backToLogin":"\xcenapoi la Logare","forgotPassword":"Ai uitat parola?"},"landing":{"brandName":"OmniRoute","navigateHome":"Navigați la acasă","toggleMenu":"Comutați meniul","featuresLink":"Caracteristici","docsLink":"Docs","github":"GitHub","versionLive":"v1.0 este acum live","oneEndpoint":"Un punct final pentru","allProviders":"Toți furnizorii de AI","heroDescription":"Proxy AI endpoint cu tablou de bord web - Un port JavaScript al CLIProxyAPI. Funcționează perfect cu Claude Code, OpenAI Codex, Cline, RooCode și alte instrumente CLI.","getStarted":"\xcencepeți","viewOnGithub":"Vizualizați pe GitHub","powerfulFeatures":"Caracteristici puternice","featuresSubtitle":"Tot ce aveți nevoie pentru a vă gestiona infrastructura AI \xeentr-un singur loc, construit pentru scară.","featureUnifiedEndpointTitle":"Punct final unificat","featureUnifiedEndpointDesc":"Accesați toți furnizorii printr-o singură adresă URL API standard.","featureEasySetupTitle":"Configurare ușoară","featureEasySetupDesc":"\xcencepeți să rulați \xeen c\xe2teva minute cu comanda npx.","featureModelFallbackTitle":"Model de rezervă","featureModelFallbackDesc":"Comutați automat furnizorii \xeen caz de eșec sau latență ridicată.","featureUsageTrackingTitle":"Urmărirea utilizării","featureUsageTrackingDesc":"Analiză detaliată și monitorizare a costurilor pentru toate modelele.","featureOAuthApiKeysTitle":"Chei OAuth și API","featureOAuthApiKeysDesc":"Gestionați \xeen siguranță acreditările \xeentr-un singur seif.","featureCloudSyncTitle":"Sincronizare \xeen cloud","featureCloudSyncDesc":"Sincronizați-vă configurațiile pe dispozitive instantaneu.","featureCliSupportTitle":"Suport CLI","featureCliSupportDesc":"Funcționează cu Claude Code, Codex, Cline, Cursor și multe altele.","featureDashboardTitle":"Tabloul de bord","featureDashboardDesc":"Tablou de bord vizual pentru analiza traficului \xeen timp real.","howItWorks":"Cum funcționează OmniRoute","howItWorksDescription":"Datele circulă fără probleme de la aplicația dvs. prin stratul nostru inteligent de rutare către cel mai bun furnizor pentru job.","howItWorksStep1Title":"1. CLI și SDK-uri","howItWorksStep1Description":"Solicitările tale pornesc de la instrumentele tale preferate sau SDK-ul nostru unificat. Doar schimbați adresa URL de bază.","howItWorksStep2Title":"2. OmniRoute Hub","howItWorksStep2Description":"Motorul nostru analizează promptul, verifică starea furnizorului și rutele pentru cea mai mică latență sau cost.","howItWorksStep3Title":"3. Furnizori AI","howItWorksStep3Description":"Solicitarea este \xeendeplinită instantaneu de OpenAI, Anthropic, Gemini sau altele.","getStartedIn30Seconds":"\xcencepeți \xeen 30 de secunde","getStartedDescription":"Instalați OmniRoute, configurați-vă furnizorii prin intermediul tabloului de bord web și \xeencepeți să direcționați cererile AI.","installOmniRoute":"Instalați OmniRoute","installStepDescription":"Rulați comanda npx pentru a porni serverul instantaneu","openDashboard":"Deschideți tabloul de bord","openDashboardStepDescription":"Configurați furnizorii și cheile API prin interfața web","routeRequests":"Cereri de traseu","routeRequestsStepDescription":"\xcendreptați instrumentele CLI către {endpoint}","terminal":"terminal","copy":"Copiere","copied":"✓ Copiat","startingOmniRoute":"Se pornește OmniRoute...","serverRunningOnLabel":"Serverul rulează","dashboardLabel":"Tabloul de bord","readyToRoute":"Gata de traseu! ✓","configureProvidersNote":"\uD83D\uDCDD Configurați furnizorii \xeen tabloul de bord sau utilizați variabile de mediu","dataLocation":"Locația datelor:","dataLocationMacLinux":" macOS/Linux:","dataLocationWindows":" Windows:","product":"Produs","dashboardLink":"Tabloul de bord","changelog":"Jurnalul modificărilor","resources":"Resurse","documentation":"Documentare","npm":"NPM","legal":"Legal","mitLicense":"Licență MIT","footerTagline":"Punctul final unificat pentru generarea AI. Conectați-vă, direcționați și gestionați cu ușurință furnizorii dvs. de AI.","copyright":"\xa9 {year} OmniRoute. Toate drepturile rezervate.","flowToolClaudeCode":"Claude Cod","flowToolOpenAICodex":"OpenAI Codex","flowToolCline":"Cline","flowToolCursor":"Cursorul","flowProviderOpenAI":"OpenAI","flowProviderAnthropic":"antropică","flowProviderGemini":"Gemeni","flowProviderGithubCopilot":"Copilotul GitHub","interactiveDiagram":"Diagrama interactivă vizibilă pe desktop","ctaTitle":"Sunteți gata să vă simplificați infrastructura AI?","ctaDescription":"Alăturați-vă dezvoltatorilor care \xeeși eficientizează integrările AI cu OmniRoute. Open source și liber pentru a \xeencepe.","startFree":"\xcencepe gratuit","readDocumentation":"Citiți documentația"},"docs":{"title":"Documentare","quickStart":"Pornire rapidă","features":"Caracteristici","supportedProviders":"Furnizori acceptați","supportedProvidersToc":"Furnizorii","commonUseCases":"Cazuri comune de utilizare","clientCompatibility":"Compatibilitate client","apiReference":"Referință API","method":"Metoda","path":"Calea","notes":"Note","modelPrefixes":"Prefixe de model","prefix":"Prefix","troubleshooting":"Depanare","supportsChat":"Acceptă at\xe2t punctele finale de chat, c\xe2t și cele de răspuns.","oauthAutoRefresh":"Conexiune OAuth cu re\xeemprospătare automată a simbolului.","fullStreaming":"Suport complet pentru streaming pentru toate modelele.","docsLabel":"Docs","docsHeroDescription":"Gateway AI pentru LLM cu mai mulți furnizori. Un punct final pentru OpenAI, Anthropic, Gemini, GitHub Copilot, Claude Code, Cursor și peste 20 de furnizori.","openDashboard":"Deschideți tabloul de bord","endpointPage":"Pagina finală","github":"GitHub","reportIssue":"Raportați o problemă","onThisPage":"Pe această pagină","documentationVersion":"Documentație - v{version}","quickStartStep1Title":"1. Instalați și rulați","quickStartStep1Prefix":"Fugi","quickStartStep1Middle":"sau clonează din GitHub și rulează","quickStartStep2Title":"2. Creați cheia API","quickStartStep2Text":"Accesați Endpoint -> Chei \xeenregistrate. Generați o cheie pentru fiecare mediu.","quickStartStep3Title":"3. Conectați furnizorii","quickStartStep3Text":"Adăugați conturi de furnizor prin autentificare OAuth, cheie API sau conexiune automată gratuită.","quickStartStep4Title":"4. Setați adresa URL a bazei de clienți","quickStartStep4Prefix":"\xcendreptați-vă clientul IDE sau API către","quickStartStep4Suffix":"Utilizați prefixul furnizorului, de exemplu","featureRoutingTitle":"Rutare cu mai mulți furnizori","featureRoutingText":"Dirijați cererile către peste 30 de furnizori de AI printr-un singur punct final compatibil cu OpenAI. Acceptă API-uri de chat, răspunsuri, audio și imagine.","featureCombosTitle":"Combo și echilibrare","featureCombosText":"Creați combinații de modele cu lanțuri de rezervă și strategii de echilibrare: round-robin, prioritare, aleatorii, cel mai puțin utilizate și optimizate pentru costuri.","featureUsageTitle":"Urmărirea utilizării și a costurilor","featureUsageText":"Numărarea jetonelor \xeen timp real, calculul costurilor pe furnizor/model și detalierea utilizării \xeen funcție de cheie API și cont.","featureAnalyticsTitle":"Tabloul de bord Analytics","featureAnalyticsText":"Analiză vizuală cu diagrame pentru solicitări, jetoane, erori, latență, costuri și popularitatea modelului de-a lungul timpului.","featureHealthTitle":"Monitorizarea sănătății","featureHealthText":"Verificări live ale stării de sănătate, starea furnizorului, stările \xeentrerupătoarelor de circuit și detectarea automată a limitei ratei cu retragere exponențială.","featureCliTitle":"Instrumente CLI","featureCliText":"Gestionați configurațiile IDE, exportați/importați copii de siguranță, descoperiți profiluri de codex și configurați setările din tabloul de bord.","featureSecurityTitle":"Securitate și politici","featureSecurityText":"Autentificare cu cheie API, filtrare IP, protectie pentru injectare promptă, politici de domeniu, gestionare a sesiunilor și \xeenregistrare de audit.","featureCloudSyncTitle":"Sincronizare \xeen cloud","featureCloudSyncText":"Sincronizați-vă configurația cu Cloudflare Workers pentru acces de la distanță cu acreditări criptate și failover automat.","providersAcrossConnectionTypes":"{count} furnizori din trei tipuri de conexiune.","manageProviders":"Gestionați furnizorii","providersCount":"{count} furnizori","providerTypeFree":"Nivel gratuit","providerTypeOAuth":"OAuth","providerTypeApiKey":"Cheia API","useCaseSingleEndpointTitle":"Punct final unic pentru mulți furnizori","useCaseSingleEndpointText":"Indicați clienții către o adresă URL de bază și rutați după prefix de model (de exemplu: gh/, cc/, kr/, openai/).","useCaseFallbackTitle":"Fallback și schimbare de model cu combo","useCaseFallbackText":"Creați modele combinate \xeen Dashboard și mențineți stabilă configurația clientului \xeen timp ce furnizorii se rotesc intern.","useCaseUsageVisibilityTitle":"Utilizare, cost și vizibilitate depanare","useCaseUsageVisibilityText":"Urmăriți jetoanele și costul \xeen funcție de furnizor, cont și cheie API \xeen filele Utilizare și Analytics.","clientCherryStudioTitle":"Studioul Cherry","baseUrlLabel":"Adresa URL de bază","chatEndpointLabel":"Punct final de chat","modelRecommendationLabel":"Recomandare model: prefix explicit","clientCodexTitle":"Modele Codex / GitHub Copilot","clientCodexBullet1":"Utilizați ID-uri de model cu","clientCodexBullet2":"Modelele din familia Codex au traseu automat către","clientCodexBullet3":"Modelele non-Codex continuă","clientCursorTitle":"Cursor IDE","clientCursorBullet1":"Utilizați","clientCursorBullet1Suffix":"prefix pentru modelele Cursor.","clientCursorBullet2":"Conexiune OAuth - conectați-vă din pagina Furnizori.","clientClaudeTitle":"Claude Code / Antigravitație","clientClaudeBullet1Prefix":"Utilizați","clientClaudeBullet1Middle":"(Claude) sau","clientClaudeBullet1Suffix":"(antigravitație) prefix.","endpointChatNote":"Punct final de chat compatibil cu OpenAI (implicit).","endpointResponsesNote":"Punct final API pentru răspunsuri (Codex, serie o).","endpointModelsNote":"Catalog model pentru toți furnizorii conectați.","endpointAudioNote":"Transcriere audio (Deepgram, AssemblyAI).","endpointImagesNote":"Generarea imaginii (NanoBanana).","endpointRewriteChatNote":"Rescrie ajutor pentru clienți fără /v1.","endpointRewriteResponsesNote":"Rescrie ajutor pentru răspunsuri fără /v1.","endpointRewriteModelsNote":"Rescrierea de ajutor pentru descoperirea modelului fără /v1.","modelPrefixesDescriptionStart":"Utilizați prefixul furnizorului \xeenainte de numele modelului pentru a direcționa către un anumit furnizor. Exemplu:","modelPrefixesDescriptionEnd":"rute către GitHub Copilot.","provider":"Furnizor","type":"Tip","troubleshootingModelRouting":"Dacă clientul eșuează cu rutarea modelului, utilizați furnizorul/modelul explicit (de exemplu: gh/gpt-5.1-codex).","troubleshootingAmbiguousModels":"Dacă primiți erori de model ambigue, alegeți un prefix de furnizor \xeen loc de un ID de model simplu.","troubleshootingCodexFamily":"Pentru modelele din familia GitHub Codex, păstrați modelul ca gh/<codex-model>; routerul selectează/răspunde automat.","troubleshootingTestConnection":"Utilizați Tabloul de bord > Furnizori > Testați conexiunea \xeenainte de a testa de la IDE-uri sau clienți externi.","troubleshootingCircuitBreaker":"Dacă un furnizor arată \xeentrerupătorul deschis, așteptați răcirea sau verificați pagina Sănătate pentru detalii.","troubleshootingOAuth":"Pentru furnizorii OAuth, re-autentificați-vă dacă tokenurile expiră. Verificați indicatorul de stare a cardului furnizorului."},"legal":{"privacyPolicy":"Politica de confidențialitate","termsOfService":"Termeni și condiții","providerConfigurations":"Configurațiile furnizorului","apiKeys":"Chei API","usageLogs":"Jurnalele de utilizare","applicationSettings":"Setările aplicației","viewExportAnalytics":"Vizualizați și exportați analizele de utilizare","clearHistory":"Ștergeți istoricul utilizării \xeen orice moment","configureRetention":"Configurați politicile de păstrare a jurnalelor","backupRestore":"Faceți backup și restaurați baza de date","privacyMetadataTitle":"Politica de confidențialitate | OmniRoute","privacyMetadataDescription":"Politica de confidențialitate pentru routerul proxy API OmniRoute AI.","termsMetadataTitle":"Termeni și condiții | OmniRoute","termsMetadataDescription":"Termenii și condițiile pentru routerul proxy API OmniRoute AI.","backToHome":"\xcenapoi acasă","lastUpdated":"Ultima actualizare: {date}","policyLastUpdatedDate":"13 februarie 2026","listSeparator":"-","questionsVisit":"\xcentrebări? Vizitează-ne","githubRepository":"Depozitul GitHub","privacySection1Title":"1. Local-First Architecture","privacySection1Text":"OmniRoute este proiectat ca o aplicație mai \xeent\xe2i locală. Toate procesarea și stocarea datelor au loc \xeen \xeentregime pe mașina dvs. Nu există un server centralizat care să vă colecteze informațiile.","privacySection2Title":"2. Datele pe care le stocăm","privacyDataStoredIn":"Următoarele date sunt stocate local \xeen","privacyDataProviderConfigurationsDesc":"adrese URL de conexiune, tipuri de furnizori și setări de prioritate","privacyDataApiKeysDesc":"criptat și stocat local pentru autentificare cu furnizorii de AI","privacyDataUsageLogsDesc":"numărul de solicitări, utilizarea token-ului, numele modelelor, marcajele de timp și timpii de răspuns","privacyDataApplicationSettingsDesc":"preferințele temei, strategia de rutare și configurațiile combinate","privacySection3Title":"3. Fără telemetrie","privacySection3Text":"OmniRoute nu colectează telemetrie, analize sau rapoarte de blocare. Nicio dată nu ne sunt trimise nouă sau unei terțe părți. Tiparele dvs. de utilizare, apelurile API și configurațiile răm\xe2n \xeen \xeentregime private.","privacySection4Title":"4. Furnizori AI terți","privacySection4Text":"C\xe2nd efectuați apeluri API prin OmniRoute, solicitările dvs. sunt redirecționate către furnizorii de AI pe care i-ați configurat (de exemplu: OpenAI, Anthropic, Google). Acești furnizori au propriile lor politici de confidențialitate care guvernează modul \xeen care vă gestionează datele. Vă rugăm să revizuiți:","privacyOpenAiPolicy":"Politica de confidențialitate OpenAI","privacyAnthropicPolicy":"Politica de confidențialitate antropică","privacyGooglePolicy":"Politica de confidențialitate Google","privacySection5Title":"5. Cloud Sync (Opțional)","privacySection5Text":"Dacă activați caracteristica opțională de sincronizare \xeen cloud, configurațiile furnizorului și cheile API pot fi transmise la un punct final de cloud configurat. Această funcție este dezactivată \xeen mod implicit și necesită \xeenscriere explicită.","privacySection6Title":"6. \xcenregistrare","privacyLoggingIntro":"Jurnalele de solicitări pot fi configurate prin setările tabloului de bord. Puteți:","privacySection7Title":"7. Drepturile tale","privacySection7TextStart":"Deoarece toate datele sunt stocate local, aveți control deplin. Vă puteți șterge datele oric\xe2nd prin eliminarea","privacySection7TextEnd":"director sau folosind funcțiile de backup și restaurare a bazei de date din tabloul de bord.","termsSection1Title":"1. Prezentare generală","termsSection1Text":"OmniRoute este un router proxy API AI care funcționează \xeen \xeentregime pe mașina dumneavoastră. Acesta direcționează cererile către mai mulți furnizori de AI cu echilibrare a sarcinii, failover și urmărire a utilizării.","termsSection2Title":"2. Responsabilitățile utilizatorului","termsResponsibilityApiKeys":"Sunteți singurul responsabil pentru gestionarea propriilor chei și acreditări API pentru furnizorii terți de AI (OpenAI, Anthropic, Google etc.).","termsResponsibilityCompliance":"Trebuie să respectați termenii și condițiile fiecărui furnizor de AI al cărui API \xeel accesați prin OmniRoute.","termsResponsibilitySecurity":"Sunteți responsabil pentru securitatea instalării locale OmniRoute, inclusiv setarea unei parole și restricționarea accesului la rețea.","termsSection3Title":"3. Cum funcționează","termsSection3Text":"OmniRoute acționează ca un proxy intermediar. Apelurile API trimise către OmniRoute sunt traduse și redirecționate către furnizorii dvs. de AI configurați. OmniRoute nu modifică conținutul solicitărilor sau răspunsurilor dumneavoastră dincolo de traducerea protocolului necesară.","termsSection4Title":"4. Manipularea datelor","termsDataStoredLocally":"Toate datele sunt stocate local pe mașina dvs. \xeentr-o bază de date SQLite.","termsNoTransmission":"OmniRoute nu transmite date către servere externe dec\xe2t dacă activați \xeen mod explicit funcțiile de sincronizare \xeen cloud.","termsDataLocationText":"Jurnalele de utilizare, cheile API și configurația sunt stocate \xeen","termsSection5Title":"5. Exonerare de responsabilitate","termsSection5Text":"OmniRoute este furnizat „ca atare”, fără garanții de niciun fel. Nu suntem responsabili pentru costurile suportate prin utilizarea API-ului, \xeentreruperile serviciilor sau pierderea datelor. Păstrați \xeentotdeauna copii de siguranță ale configurației dvs.","termsSection6Title":"6. Open Source","termsSection6Text":"OmniRoute este un software open-source. Sunteți liber să \xeel inspectați, să modificați și să \xeel distribuiți \xeen conformitate cu termenii licenței sale."}}')}};
|
|
1
|
+
"use strict";exports.id=1880,exports.ids=[1880],exports.modules={71880:a=>{a.exports=JSON.parse('{"common":{"save":"Salvați","cancel":"Anulează","delete":"Ștergeți","loading":"Se \xeencarcă...","error":"A apărut o eroare","success":"Succes","confirm":"esti sigur?","refresh":"Re\xeemprospătați","close":"\xcenchide","add":"Adăugați","edit":"Editați","search":"Caută","back":"\xcenapoi","next":"\xcen continuare","submit":"Trimiteți","reset":"Resetați","copy":"Copiere","copied":"Copiat!","enabled":"Activat","disabled":"Dezactivat","active":"Activ","inactive":"Inactiv","noData":"Nu există date disponibile","configure":"Configurați","manage":"Gestionează","name":"Nume","actions":"Acțiuni","status":"Stare","type":"Tip","model":"Model","models":"modele","provider":"Furnizor","account":"Cont","time":"timpul","details":"Detalii","created":"Creat","lastUsed":"Ultima utilizare","loadMore":"\xcencărcați mai multe","noResults":"Nu s-au găsit rezultate","reloadPage":"Re\xeencărcați pagina","connected":"Conectat","disconnected":"Deconectat","notConfigured":"Neconfigurat","testConnection":"Testează conexiunea","enable":"Activați","disable":"Dezactivați","columns":"Coloane","newest":"Cel mai nou","oldest":"Cel mai vechi","all":"Toate","none":"Niciuna","yes":"Da","no":"Nu","warning":"Avertisment","note":"Notă","free":"Gratuit","skipToContent":"Treci la conținut"},"sidebar":{"home":"Acasă","dashboard":"Tabloul de bord","providers":"Furnizorii","combos":"Combo-uri","usage":"Utilizare","analytics":"Analytics","costs":"Costuri","health":"Sănătate","limits":"Limite și cote","cliTools":"Instrumente CLI","settings":"Setări","translator":"Traducător","docs":"Docs","issues":"Probleme","endpoint":"Punct final","apiManager":"Manager API","logs":"Bușteni","auditLog":"Jurnal de audit","shutdown":"\xcenchidere","restart":"Reporniți","shutdownConfirm":"\xcenchideți OmniRoute?","restartConfirm":"Reporniți OmniRoute?","version":"v{version}","debug":"Depanați","system":"Sistem","help":"Ajutor","serverDisconnected":"Server deconectat","serverDisconnectedMsg":"Serverul proxy a fost oprit sau repornește.","expandSidebar":"Extinde bara laterală","collapseSidebar":"Restr\xe2ngeți bara laterală"},"header":{"logout":"Deconectare","language":"Limba","providers":"Furnizorii","providerDescription":"Gestionați-vă conexiunile furnizorului dvs. de AI","combos":"Combo-uri","comboDescription":"Combo de modele cu rezervă","usage":"Utilizare și analiză","usageDescription":"Monitorizați-vă utilizarea API-ului, consumul de token-uri și jurnalele de solicitări","analytics":"Analytics","analyticsDescription":"Diagrame, tendințe și perspective de evaluare","cliTools":"Instrumente CLI","cliToolsDescription":"Configurați instrumentele CLI","home":"Acasă","homeDescription":"Bun venit la OmniRoute","endpoint":"Punct final","endpointDescription":"Configurarea punctului final API","settings":"Setări","settingsDescription":"Gestionați-vă preferințele","openaiCompatible":"Compatibil cu OpenAI","anthropicCompatible":"Compatibil antropic"},"home":{"quickStart":"Pornire rapidă","quickStartDesc":"Pune-te \xeen funcțiune \xeen 4 pași. Conectați furnizorii, modelele de traseu, monitorizați totul.","fullDocs":"Documente complete","step1Title":"1. Creați cheia API","step1Desc":"Accesați <endpoint>Endpoint</endpoint> -> Chei \xeenregistrate. Generați o cheie pentru fiecare mediu.","step2Title":"2. Conectați furnizorii","step2Desc":"Adăugați conturi \xeen <providers>Providers</providers>. Acceptă OAuth, cheie API și niveluri gratuite.","step3Title":"3. Indicați-vă clientul","step3Desc":"Setați adresa URL de bază la {url} \xeen clientul dvs. IDE sau API.","step4Title":"4. Monitorizați și optimizați","step4Desc":"Urmăriți jetoanele, costurile și erorile \xeen <logs>Request Logs</logs> și <analytics>Analytics</analytics>.","providersOverview":"Prezentare generală a furnizorilor","configuredOf":"{configured} configurat din {total} furnizori disponibili","noModelsAvailable":"Nu există modele disponibile pentru acest furnizor.","configureFirst":"Configurați mai \xeent\xe2i o conexiune \xeen {providers}","configureProvider":"Configurați furnizorul","modelAvailable":"{count} model disponibil","modelsAvailable":"{count} modele disponibile","connectionsActive":"{count} conexiune activă","connectionsActivePlural":"{count} conexiuni active","copyModelName":"Copiați numele modelului","documentation":"Documentare","healthMonitor":"Monitor de sănătate","reportIssue":"Raportați problema","activeError":"{active} activ \xb7 {errors} eroare","oauthLabel":"OAuth","apiKeyLabel":"Cheia API","requestsShort":"{count} solicită","providerModelsTitle":"{provider} - Modele","copiedModel":"Copiat: {model}","aliasLabel":"alias"},"analytics":{"title":"Analytics","overviewDescription":"Monitorizați-vă modelele de utilizare a API-ului, consumul de simboluri, costurile și tendințele activității la toți furnizorii și modelele.","evalsDescription":"Rulați suite de evaluare pentru a testa și valida punctele finale LLM. Comparați calitatea modelului, detectați regresiile și evaluați latența.","overview":"Prezentare generală","evals":"Evaluări"},"apiManager":{"title":"Chei API","createKey":"Creați cheia API","key":"cheie","revokeKey":"Revocați cheia","revokeConfirm":"Sigur doriți să revocați această cheie API?","noKeys":"\xcencă nu există chei API","noKeysDesc":"Creați prima cheie API pentru a autentifica solicitările către punctul final","keyLabel":"Eticheta cheii","permissions":"Permisiuni","expiresAt":"Expiră","never":"Niciodată","revoke":"Revocați","showKey":"Afișați cheia","hideKey":"Ascunde cheia","copyKey":"Copiați cheia API","allModels":"Toate modelele","selectedModels":"Modele Selectate","readOnly":"Numai citire","fullAccess":"Acces complet","keyManagement":"Managementul cheilor API","keyManagementDesc":"Creați și gestionați cheile API pentru autentificarea solicitărilor către punctul dvs. final","totalKeys":"Total chei","restricted":"Restricţionat","totalRequests":"Total cereri","modelsAvailable":"Modele disponibile","registeredKeys":"Chei \xeenregistrate","keysRegistered":"{count} chei \xeenregistrate","keyRegistered":"{count} cheie \xeenregistrată","keysSecurityNote":"Fiecare cheie izolează urmărirea utilizării și poate fi revocată independent. Cheile sunt mascate după creare pentru securitate.","createFirstKey":"Creați-vă prima cheie","name":"Nume","usage":"Utilizare","created":"Creat","actions":"Acțiuni","reqs":"solicită","neverUsed":"Nu a fost folosit niciodată","deleteConfirm":"Ștergeți această cheie API?","usageTips":"Sfaturi de utilizare","tipAuth":"Folosiți cheile API \xeen antetul de autorizare ca purtător YOUR_KEY","tipSecure":"Cheile sunt afișate o singură dată \xeen timpul creării - stocați-le \xeen siguranță","tipSeparate":"Creați chei separate pentru diferiți clienți sau medii","tipRestrict":"Limitați cheile la anumite modele pentru o mai bună securitate și control al costurilor","keyName":"Nume cheie","keyNamePlaceholder":"de exemplu, cheie de producție, cheie de dezvoltare","keyNameDesc":"Alegeți un nume descriptiv pentru a identifica scopul acestei chei","keyCreated":"Cheia API creată","keyCreatedSuccess":"Cheie creată cu succes!","keyCreatedNote":"Copiați și stocați această cheie acum - nu va fi afișată din nou.","done":"Gata","savePermissions":"Salvare permisiuni","allowAll":"Permite Toate","restrict":"Restricționați","allowAllInfo":"Această cheie poate accesa toate modelele disponibile.","restrictInfo":"Această cheie poate accesa {selected} din {total} modele.","selected":"{count} selectat","all":"Toate","clear":"Clar","searchModels":"Căutați modele după nume sau furnizor...","noModelsFound":"Nu s-au găsit modele","keyNameRequired":"Numele cheii este obligatoriu","keyNameTooLong":"Numele cheii trebuie să aibă maximum {max} caractere","keyNameInvalid":"Numele cheii poate conține numai litere, cifre, spații, cratime și liniuțe de subliniere","invalidKeyName":"Nume cheie nevalid","failedCreateKey":"Nu s-a putut crea cheia","failedCreateKeyRetry":"Nu s-a putut crea cheia. Vă rugăm să \xeencercați din nou.","invalidKeyId":"ID cheie nevalid","failedDeleteKey":"Cheia nu s-a șters","failedDeleteKeyRetry":"Cheia nu s-a șters. Vă rugăm să \xeencercați din nou.","invalidModelsSelection":"Selecție nevalidă de modele","cannotSelectMoreThanModels":"Nu se pot selecta mai mult de {max} modele","failedUpdatePermissions":"Nu s-au actualizat permisiunile","failedUpdatePermissionsRetry":"Nu s-au actualizat permisiunile. Vă rugăm să \xeencercați din nou.","unknownProvider":"necunoscut","copyMaskedKey":"Copiați cheia mascată","modelsCount":"{count, plural, one {# model} other {# models}}","lastUsedOn":"Ultima: {date}","editPermissions":"Editați permisiunile","deleteKey":"Șterge cheia","model":"{count} model","models":"{count} modele","permissionsTitle":"Permisiuni: {name}","allowAllDesc":"Această cheie poate accesa toate modelele disponibile.","restrictDesc":"Această cheie poate accesa {selectedCount} din {totalModels} modele.","selectedCount":"{count} selectat"},"auditLog":{"title":"Jurnal de audit","searchPlaceholder":"Acțiuni de căutare...","action":"Acțiune","actor":"actor","target":"țintă","ipAddress":"Adresa IP","timestamp":"Marca temporală","noEntries":"Nu au fost găsite intrări de audit","filterByAction":"Filtrați după acțiune...","filterByActor":"Filtrați după actor...","filterEntriesAria":"Filtrați intrările din jurnalul de audit","filterByActionTypeAria":"Filtrați după tipul de acțiune","filterByActorAria":"Filtrați după actor","refreshAuditLogAria":"Actualizează jurnalul de audit","tableAria":"Intrări din jurnalul de audit","failedFetchAuditLog":"Nu s-a putut prelua jurnalul de audit","notAvailable":"—","description":"Acțiuni administrative și evenimente de securitate","showing":"Se afișează {count} intrări (offset {offset})","previous":"Anterior"},"cliTools":{"title":"Instrumente CLI","noActiveProviders":"Nu există furnizori activi","noActiveProvidersDesc":"Vă rugăm să adăugați și conectați mai \xeent\xe2i furnizorii pentru a configura instrumentele CLI.","mapModels":"Modele de hartă","testConnection":"Testează conexiunea","connectionStatus":"Starea conexiunii","configureEndpoint":"Configurați punctul final","instructions":"Instrucțiuni","modelMapping":"Maparea modelului","baseUrl":"Adresa URL de bază","apiKey":"Cheia API","configured":"Configurat","notConfigured":"Neconfigurat","notInstalled":"Neinstalat","custom":"Personalizat","unknown":"Necunoscut","lastSavedAt":"Ultima salvare: {date}","never":"Niciodată","justNow":"tocmai acum","minutesAgoShort":"{count}m \xeen urmă","hoursAgoShort":"acum {count}h","daysAgoShort":"acum {count}d","monthsAgoShort":"{count}lună \xeen urmă","yearsAgoShort":"{count}y \xeen urmă","runtimeCheckFailed":"Verificarea timpului de execuție a eșuat","yourApiKeyPlaceholder":"cheia-api","modelPlaceholder":"provider/model-id","configurationSaved":"Configurația a fost salvată cu succes.","failedToSave":"Nu s-a putut salva configurația.","noApiKeysCreateOne":"Fără chei API - Creați una \xeen pagina Chei","defaultOmnirouteKey":"sk_omniroute (implicit)","selectModel":"Selectați Model","selectModelForAlias":"Selectați modelul pentru {alias}","selectModelForTool":"Selectați modelul pentru {tool}","select":"Selectați","clear":"Clar","comingSoon":"\xcen cur\xe2nd","checkingRuntime":"Se verifică starea de rulare...","guideOnlyIntegration":"Integrare numai cu ghid (nu este necesar un timp de rulare local)","cliRuntimeDetected":"Runtime CLI detectat și gata","cliFoundNotRunnable":"CLI găsit, dar nu poate fi executat{reason}","cliRuntimeNotDetected":"Runtime CLI nu a fost detectat","binary":"Binar","configPath":"Calea de configurare","configPathShort":"Config","failedCheckRuntimeStatus":"Nu s-a putut verifica starea de rulare.","copy":"Copiere","copied":"Copiat","copyConfig":"Copiați config","saveConfig":"Salvați configurația","selectionSaved":"Selecția a fost salvată","guide":"Ghid","detected":"Detectat","notReady":"Nu este gata","active":"Activ","inactive":"Inactiv","startMitm":"Porniți MITM","stopMitm":"Opriți MITM","mitmStarted":"MITM a \xeenceput cu succes!","mitmStopped":"MITM sa oprit cu succes!","failedStart":"Nu s-a pornit MITM","failedStop":"Nu s-a oprit MITM","saveMappings":"Salvați mapările","mappingsSaved":"Mapări salvate!","failedSaveMappings":"Nu s-au salvat mapările","howItWorks":"Cum funcționează:","antigravityHowWorksDesc":"Antigravitația trimite solicitări către punctul final al Google. MITM le interceptează și le redirecționează către OmniRoute.","antigravityStep1":"1. Porniți MITM pentru a direcționa cererile prin OmniRoute.","antigravityStep2Prefix":"2. Adăugați","antigravityStep2Suffix":"\xeen fișierul hosts ca 127.0.0.1.","antigravityStep3":"3. Deschideți Antigravity și cererile vor fi trimise prin proxy.","sudoPasswordRequiredTitle":"Parola Sudo este necesară","sudoPasswordHint":"Parola de administrator este necesară pentru a modifica setările de fișiere gazdă și proxy de sistem.","enterSudoPassword":"Introdu parola sudo","sudoPasswordRequiredError":"Este necesară parola Sudo.","cancel":"Anulează","confirm":"Confirmați","settingsApplied":"Setările aplicate cu succes!","failedApplySettings":"Nu s-au putut aplica setările","settingsReset":"Setările sunt resetate cu succes!","failedResetSettings":"Nu s-au resetat setările","backupRestored":"Backup restaurat!","failedRestore":"Restabilirea eșuată","checkingCli":"Se verifică {tool} CLI...","cliNotRunnable":"{tool} CLI instalat, dar nu poate fi executat","cliNotInstalled":"{tool} CLI nu este instalat","cliNotDetected":"{tool} CLI nu a fost detectat","cliDetectedReady":"{tool} CLI a fost detectat și gata","cliFoundFailedHealthcheck":"{tool} CLI a fost găsit, dar a eșuat verificarea stării de funcționare{reason}.","installCliPrompt":"Instalați {tool} CLI pentru a utiliza această funcție.","installCodexPrompt":"Instalați Codex CLI pentru a utiliza funcția de aplicare automată.","hide":"Ascunde","howToInstall":"Cum se instalează","installationGuide":"Ghid de instalare","platforms":"macOS / Linux / Windows:","afterInstallationRun":"După instalare, rulați","toVerify":"a verifica.","current":"Curent","baseUrlPlaceholder":"https://.../v1","resetToDefault":"Resetați la valoarea implicită","providerModelPlaceholder":"provider/model-id","apply":"Aplicați","reset":"Resetați","manualConfig":"Configurare manuală","backups":"Backup-uri","configBackups":"Backup-uri de configurare","noBackupsYet":"\xcencă nu există copii de rezervă. Backup-urile sunt create automat \xeenainte de fiecare Aplicare sau Resetare.","restore":"Restaurați","backupRestoredReloading":"Backup restaurat! Starea re\xeencărcării...","failedRestoreBackup":"Nu s-a restabilit backupul","applied":"Aplicat!","failed":"A eșuat","resetDone":"Resetați!","omnirouteConfiguredOpenAiCompatible":"OmniRoute este configurat ca furnizor compatibil cu OpenAI","provider":"Furnizor","model":"Model","providers":"Furnizorii","auth":"Auth","noApiKeysAvailable":"Nu există chei API disponibile","usingDefaultOmniroute":"Folosind implicit: sk_omniroute","updateConfig":"Actualizați configurația","applyConfig":"Aplicați Config","noBackupsAvailable":"Nu există copii de rezervă disponibile.","profileSaved":"Profilul „{name}” a fost salvat!","failedSaveProfile":"Nu s-a salvat profilul","profileActivated":"Profil activat!","failedActivateProfile":"Nu s-a activat profilul","profiles":"Profiluri","savedProfiles":"Profiluri salvate","noProfilesYet":"Niciun profil nu a fost salvat \xeencă. Salvați configurația curentă ca profil de mai jos.","activate":"Activați","deleteProfile":"Ștergeți profilul","profileNamePlaceholder":"Numele profilului (de ex., Cont personal)","saveCurrent":"Salvați curent","codexAuthNotePrefix":"Codex folosește","codexAuthNoteMiddle":"cu","codexAuthNoteSuffix":"Faceți clic pe „Aplicați” pentru a configura automat.","claudeManualConfiguration":"Claude CLI - Configurare manuală","codexManualConfiguration":"Codex CLI - Configurare manuală","droidManualConfiguration":"Factory Droid - Configurare manuală","openClawManualConfiguration":"Open Claw - Configurare manuală","clineManualConfiguration":"Configurare manuală a liniei","kiloManualConfiguration":"Configurare manuală a codului Kilo","toolDescriptions":{"antigravity":"Google Antigravity IDE cu MITM","claude":"Codul antropic Claude CLI","codex":"OpenAI Codex CLI","droid":"Factory Droid AI Assistant","openclaw":"Deschideți Asistentul Claw AI","cline":"CLI Cline AI Coding Assistant","kilo":"Kilo Code AI Assistant CLI","cursor":"Cursor AI Code Editor","continue":"Continuați Asistentul AI"},"guides":{"cursor":{"notes":{"0":"Este necesar un cont Cursor Pro pentru a utiliza această funcție.","1":"Cursorul direcționează cererile prin propriul server, astfel \xeenc\xe2t punctul final local nu este acceptat. Vă rugăm să activați Cloud Endpoint \xeen Setări."},"steps":{"1":{"title":"Deschide Setări","desc":"Accesați Setări -> Modele"},"2":{"title":"Activați API-ul OpenAI","desc":"Activați opțiunea „Cheie API OpenAI”."},"3":{"title":"Adresa URL de bază"},"4":{"title":"Cheia API"},"5":{"title":"Adăugați model personalizat","desc":"Faceți clic pe „Vedeți toate modelele” -> „Adăugați modelul personalizat”"},"6":{"title":"Selectați Model"}}},"continue":{"steps":{"1":{"title":"Deschideți Config","desc":"Deschideți Continuați fișierul de configurare"},"2":{"title":"Cheia API"},"3":{"title":"Selectați Model"},"4":{"title":"Adăugați configurația modelului","desc":"Adăugați următoarea configurație la matricea dvs. de modele:"}}}}},"combos":{"title":"Combo-uri","description":"Creați combinații de modele cu rutare ponderată și suport alternativ","createCombo":"Creați Combo","editCombo":"Editează Combo","deleteCombo":"Ștergeți Combo","noModels":"Fara modele","noModelsYet":"Nu au fost adăugate modele \xeencă","addModel":"Adăugați modelul","addModelToCombo":"Adăugați modelul la Combo","routingStrategy":"Strategia de rutare","maxRetries":"Re\xeencercări maxime","timeout":"Timeout (ms)","healthcheck":"Controlul de sănătate","priority":"Prioritate","fallback":"Revenire","roundRobin":"Round Robin","random":"Aleatoriu","leastLatency":"Latență minimă","comboName":"Nume combinat","comboNamePlaceholder":"combo-ul meu","deleteConfirm":"Ștergeți această combinație?","noCombosYet":"Nicio combinație \xeencă","comboCreated":"Combo creat cu succes","comboUpdated":"Combo actualizat cu succes","comboDeleted":"Combo a fost șters","failedCreate":"Nu s-a putut crea combo","failedUpdate":"Nu s-a putut actualiza combo","errorCreating":"Eroare la crearea comboiului","errorUpdating":"Eroare la actualizarea comboiului","errorDeleting":"Eroare la ștergerea combinației","testFailed":"Solicitarea de testare a eșuat","failedToggle":"Combo nu a putut fi comutat","testResults":"Rezultatele testului — {name}","resolvedBy":"Rezolvată de:","more":"+{count} mai mult","reqs":"solicită","success":"succes","proxyConfigured":"Proxy configurat","copyComboName":"Copiați numele combinației","enableCombo":"Activați combo","disableCombo":"Dezactivează combo","testCombo":"Test combo","duplicate":"Duplicat","proxyConfig":"Configurare proxy","nameRequired":"Numele este obligatoriu","nameInvalid":"Doar litere, cifre, -, _, / și . permis","nameHint":"Litere, cifre, -, _, / și . permis","priorityDesc":"Secvenţială alternativă: \xeencearcă mai \xeent\xe2i modelul 1, apoi 2 etc.","weightedDesc":"Distribuie traficul \xeen procente de greutate cu rezervă","roundRobinDesc":"Distribuție circulară: fiecare cerere trece la următorul model \xeen rotație","randomDesc":"Selectare aleatorie uniformă, apoi revenire la modelele rămase","leastUsedDesc":"Alege modelul cu cele mai puține solicitări, echilibr\xe2nd sarcina \xeen timp","costOptimizedDesc":"Rute către cel mai ieftin model mai \xeent\xe2i pe baza prețului","models":"Modele","autoBalance":"Auto-echilibrare","advancedSettings":"Setări avansate","retryDelay":"\xcent\xe2rziere re\xeencercare (ms)","concurrencyPerModel":"Concurență / Model","queueTimeout":"Timp de așteptare la coadă (ms)","advancedHint":"Lăsați gol pentru a utiliza setările implicite globale. Acestea \xeenlocuiesc setările pentru fiecare furnizor.","moveUp":"Mișcă-te \xeen sus","moveDown":"Deplasați-vă \xeen jos","removeModel":"Eliminați","saving":"Se salvează...","weighted":"ponderat","leastUsed":"Cel mai puțin folosit","costOpt":"Cost-Opt"},"costs":{"title":"Costuri","budget":"Buget","totalCost":"Costul total","breakdown":"Defalcarea costurilor","noData":"Fără date de cost","byModel":"După model","byProvider":"Prin Furnizor"},"endpoint":{"title":"API Endpoint","available":"Puncte finale disponibile","cloudProxy":"Cloud Proxy","disableConfirm":"Sigur doriți să dezactivați proxy-ul cloud?","baseUrl":"Adresa URL de bază","apiKeyLabel":"Cheia API","registeredKeys":"Chei \xeenregistrate","chatCompletions":"Finalizări de chat","responses":"Răspunsuri","listModels":"Lista modele","usingCloudProxy":"Folosind Cloud Proxy","usingLocalServer":"Utilizarea serverului local","machineId":"ID mașină: {id}...","disableCloud":"Dezactivați Cloud","enableCloud":"Activați Cloud","modelsAcrossEndpoints":"{models} modele \xeen {endpoints} puncte finale","chatDesc":"Chat \xeen flux și non-stream cu toți furnizorii","embeddings":"\xcenglobări","embeddingsDesc":"\xcencorporare de text pentru conductele de căutare și RAG","imageGeneration":"Generare de imagini","imageDesc":"Generați imagini din solicitări de text","rerank":"Reclasează","rerankDesc":"Reglați documentele \xeen funcție de relevanța pentru o interogare","audioTranscription":"Transcriere audio","audioTranscriptionDesc":"Transcrie fișiere audio \xeen text (Șoaptă)","textToSpeech":"Text to Speech","textToSpeechDesc":"Transformați textul \xeen vorbire cu sunet natural","moderations":"Moderații","moderationsDesc":"Moderarea conținutului și clasificarea siguranței","enableCloudTitle":"Activați Cloud Proxy","whatYouGet":"Ce vei primi","cloudBenefitAccess":"Accesați-vă API-ul de oriunde \xeen lume","cloudBenefitShare":"Partajați cu ușurință punctul final cu echipa dvs","cloudBenefitPorts":"Nu este nevoie să deschideți porturi sau să configurați firewall","cloudBenefitEdge":"Rețea de v\xe2rf globală rapidă","cloudSessionNote":"Cloud vă va păstra sesiunea de autentificare timp de 1 zi. Dacă nu este utilizat, acesta va fi șters automat.","cloudUnstableNote":"Cloud este \xeen prezent instabil cu Claude Code OAuth \xeen unele cazuri.","cloudConnected":"Cloud Proxy conectat!","connectingToCloud":"Se conectează la cloud...","verifyingConnection":"Se verifică conexiunea...","connecting":"Se conectează...","verifying":"Se verifică...","connected":"Conectat!","disableCloudTitle":"Dezactivați Cloud Proxy","disableWarning":"Toate sesiunile de autentificare vor fi șterse din cloud.","syncingData":"Se sincronizează cele mai recente date...","disablingCloud":"Se dezactivează cloud...","syncing":"Se sincronizează...","disabling":"Se dezactivează...","cloudConnectedVerified":"Cloud Proxy conectat și verificat!","connectedVerificationPending":"Conectat — verificare \xeen așteptare","connectedVerificationPendingWithError":"Conectat — verificare \xeen așteptare: {error}","cloudDisabledSuccess":"Cloud a fost dezactivat cu succes","syncedSuccess":"Sincronizat cu succes","failedDisable":"Nu s-a putut dezactiva cloud","failedEnable":"Nu s-a activat cloud","cloudRequestTimeout":"Timeout cerere cloud","cloudRequestFailed":"Solicitarea cloud a eșuat","cloudWorkerUnreachable":"Nu s-a putut contacta lucrătorul cloud. Asigurați-vă că serviciul cloud rulează (npm run dev \xeen /cloud).","connectionFailed":"Conexiunea a eșuat","syncFailed":"Nu s-au putut sincroniza datele din cloud","providerModelsTitle":"{provider} — Modele","noModelsForProvider":"Nu există modele disponibile pentru acest furnizor.","chat":"Chat","embedding":"\xcencorporarea","image":"Imagine","custom":"personalizat","modelsCount":"{count, plural, one {# model} other {# models}}","responsesDesc":"OpenAI Responses API for Codex and advanced agentic workflows","listModelsDesc":"List all available models across all connected providers","settingsApi":"Settings API","settingsApiDesc":"Read and modify OmniRoute configuration via API","categoryCore":"API-uri de Bază","categoryMedia":"Media și Multi-Modal","categoryUtility":"Utilități și Gestionare"},"health":{"title":"Sănătatea sistemului","description":"Monitorizarea \xeen timp real a instanței dvs. OmniRoute","healthy":"Sănătos","degraded":"Degradat","down":"Jos","uptime":"Timp de funcționare","memory":"Memorie","memoryRss":"Memorie (RSS)","heap":"grămada","cpu":"CPU","database":"Baza de date","version":"Versiune","lastCheck":"Ultima verificare","providerHealth":"Sanatatea furnizorului","systemMetrics":"Metrici de sistem","tokenHealth":"Token Health","refreshAll":"Re\xeemprospătați toate","checkNow":"Verificați acum","loadingHealth":"Se \xeencarcă datele de sănătate...","failedToLoad":"Nu s-au \xeencărcat datele de sănătate: {error}","retry":"Re\xeencercați","allOperational":"Toate sistemele sunt operaționale","issuesDetected":"Au fost detectate probleme de sistem","updatedAt":"Actualizat {time}","latency":"Latența","latencyP50":"p50","latencyP95":"p95","latencyP99":"p99","millisecondsShort":"{value}ms","notAvailable":"—","totalRequests":"Total cereri","noDataYet":"Nu există date \xeencă","promptCache":"Prompt Cache","entries":"Intrări","hitRate":"Rata de lovituri","hitsMisses":"Hits / Misses","signatureCache":"Cache pentru semnături","signatureDefaults":"Valori implicite","signatureTool":"Instrument","signatureFamily":"Familie","signatureSession":"Sesiune","recovering":"Recuperarea","noCBData":"Nu sunt disponibile date despre \xeentrerupător. Mai \xeent\xe2i faceți niște cereri.","providerHealthStatusAria":"Starea de sănătate a furnizorului","issuesLabel":"Probleme detectate","operational":"Operațional","providers":"Furnizorii","healthyCount":"{count} sănătos","nodeVersion":"Nodul {version}","failures":"{count} eșec","failuresPlural":"{count} eșecuri","lastFailure":"Ultimul","rateLimitStatus":"Starea limitei ratei","activeLimiters":"{count} limitator activ","activeLimitersPlural":"{count} limitatoare active","queued":"\xcen coadă","queuedCount":"{count} pus \xeen coadă","running":"alerg\xe2nd","runningCount":"{count} rulează","ok":"OK","activeLockouts":"Blocări active","resetConfirm":"Resetați toate \xeentreruptoarele la starea sănătoasă? Acest lucru va șterge toate numărul de eșecuri și va restabili toți furnizorii la starea operațională.","resetAllTitle":"Resetați toate \xeentreruptoarele la starea sănătoasă","resetting":"Se resetează...","resetAll":"Resetați toate","until":"P\xe2nă la {time}"},"limits":{"title":"Limite și cote","rateLimit":"Limită de rată","remaining":"Răm\xe2n\xe2nd","requestsPerMinute":"Cereri/min","tokensPerMinute":"Jetoane/min","dailyLimit":"Limită zilnică"},"logs":{"title":"Bușteni","requestLogs":"Cereți jurnalele","proxyLogs":"Jurnalele proxy","auditLog":"Jurnal de audit","console":"Consolă","auditLogDesc":"Acțiuni administrative și evenimente de securitate","loading":"Se \xeencarcă...","refresh":"Re\xeemprospătați","filterByAction":"Filtrați după acțiune...","filterByActor":"Filtrați după actor...","filterEntriesAria":"Filtrați intrările din jurnalul de audit","filterByActionTypeAria":"Filtrați după tipul de acțiune","filterByActorAria":"Filtrați după actor","refreshAuditLogAria":"Actualizează jurnalul de audit","tableAria":"Intrări din jurnalul de audit","failedFetchAuditLog":"Nu s-a putut prelua jurnalul de audit","showing":"Se afișează {count} intrări (offset {offset})","search":"Caută","timestamp":"Marca temporală","action":"Acțiune","actor":"actor","target":"țintă","details":"Detalii","ipAddress":"Adresa IP","notAvailable":"—","noEntries":"Nu au fost găsite intrări \xeen jurnalul de audit","previous":"Anterior","next":"\xcen continuare"},"onboarding":{"welcome":"Bun venit","security":"Securitate","test":"Testează","ready":"Gata!","setPassword":"Setați parola","addProvider":"Adăugați primul dvs. furnizor","getStarted":"\xcencepeți","skip":"Sari peste","skipWizard":"Skip wizard complet","skipPassword":"Omiteți configurarea parolei","skipAndContinue":"Sariți și continuați","passwordLabel":"Parolă","confirmPassword":"Confirmați parola","enterPassword":"Introduceți parola","confirmPasswordPlaceholder":"Confirmați parola","passwordsMismatch":"Parolele nu se potrivesc","setupComplete":"Configurare finalizată!","goToDashboard":"Accesați Tabloul de bord →","welcomeDesc":"OmniRoute este proxy-ul local AI API. Acesta direcționează cererile către mai mulți furnizori de AI cu echilibrare a sarcinii, failover și urmărire a utilizării.","multiProvider":"Multi-furnizor","usageTracking":"Urmărirea utilizării","apiKeyMgmt":"Gestiunea cheii API","securityDesc":"Setați o parolă pentru a vă proteja tabloul de bord sau omiteți pentru moment.","providerDesc":"Conectați-vă primul furnizor de AI. Puteți adăuga mai multe mai t\xe2rziu.","apiKeyRequired":"Cheie API (obligatorie)","customUrlOptional":"Adresă URL personalizată (opțional)","testDesc":"Să verificăm că conexiunea la furnizor funcționează.","runTest":"Rulați Testul de conexiune","testingConnection":"Se testează conexiunea...","connectionSuccessful":"Conexiune reușită! Furnizorul dvs. este pregătit.","noProviderFound":"Nu a fost găsit niciun furnizor. Puteți adăuga unul din tabloul de bord mai t\xe2rziu.","testFailed":"Testul a eșuat, dar \xeel puteți configura mai t\xe2rziu.","couldNotTest":"Nu am putut testa acum. Puteți testa din tabloul de bord.","doneDesc":"Sunteți gata! Instanța dvs. OmniRoute este configurată și pregătită pentru a trimite solicitări AI.","yourEndpoint":"Punctul final:","continue":"Continuă","retry":"Re\xeencercați","failedSetPassword":"Nu s-a putut seta parola. \xcencearcă din nou.","failedAddProvider":"Nu s-a putut adăuga furnizorul. \xcencearcă din nou.","connectionError":"Eroare de conectare. Vă rugăm să \xeencercați din nou.","provider":"Furnizor"},"providers":{"title":"Furnizorii","addProvider":"Adăugați furnizorul","editProvider":"Editați furnizorul","deleteProvider":"Ștergeți furnizorul","noProviders":"Nu au fost configurați furnizori","modelAvailability":"Disponibilitatea modelului","accounts":"Conturi","newAccount":"Cont nou","deleteConfirm":"Sigur doriți să ștergeți acest furnizor?","testing":"Testare...","testConnection":"Testează conexiunea","testSuccess":"Conexiune reușită","testFailed":"Conexiunea a eșuat","available":"Disponibil","cooldown":"Cooldown","unavailable":"Indisponibil","unknown":"Necunoscut","oauthLabel":"OAuth","compatibleLabel":"Compatibil","chat":"Chat","responses":"Răspunsuri","messages":"Mesaje","oauthProviders":"Furnizori OAuth","freeProviders":"Furnizori gratuiti","apiKeyProviders":"Furnizori de chei API","compatibleProviders":"Furnizori compatibili cu cheile API","testAll":"Testează toate","testAllOAuth":"Testați toate conexiunile OAuth","testAllFree":"Testați toate conexiunile gratuite","testAllApiKey":"Testați toate conexiunile API Key","testAllCompatible":"Testați toate conexiunile compatibile","connected":"{count} Conectat","errorCount":"{count} Eroare ({code})","errorCountNoCode":"{count} Eroare","noConnections":"Fără conexiuni","disabled":"Dezactivat","enableProvider":"Activați furnizorul","disableProvider":"Dezactivați furnizorul","testResults":"Rezultatele testelor","noCompatibleYet":"Nu a fost adăugat \xeencă niciun furnizor compatibil","compatibleHint":"Utilizați butoanele de mai sus pentru a adăuga puncte finale compatibile OpenAI sau Anthropic","addOpenAICompatible":"Adăugați compatibil OpenAI","addAnthropicCompatible":"Adăugați compatibil antropic","addNewProvider":"Adăugați un furnizor nou","backToProviders":"\xcenapoi la Furnizori","configureNewProvider":"Configurați un nou furnizor de inteligență artificială pe care să \xeel utilizați cu aplicațiile dvs.","providerLabel":"Furnizor","selectProvider":"Selectați un furnizor","selectedProvider":"Furnizorul selectat","authMethod":"Metoda de autentificare","apiKeyLabel":"Cheia API","apiKeyRequired":"Cheia API este necesară","selectProviderRequired":"Vă rugăm să selectați un furnizor","enterApiKey":"Introduceți cheia dvs. API","apiKeySecure":"Cheia dvs. API va fi criptată și stocată \xeen siguranță.","oauth2Connect":"Conectați-vă cu OAuth2","oauth2Label":"OAuth2","oauth2Desc":"Conectați-vă contul utiliz\xe2nd autentificarea OAuth2.","displayName":"Nume afișat","displayNamePlaceholder":"de exemplu, API de producție, mediu de dezvoltare","displayNameHint":"Opțional. Un nume prietenos pentru a identifica această configurație.","active":"Activ","activeDescription":"Activați acest furnizor pentru utilizare \xeen aplicațiile dvs","cancel":"Anulează","createProvider":"Creați furnizor","failedCreate":"Nu s-a putut crea furnizorul","errorOccurred":"A apărut o eroare. Vă rugăm să \xeencercați din nou.","modelStatus":"Stare model","allModelsOperational":"Toate modelele sunt operaționale","modelsWithIssues":"{count} model(e) cu probleme","allModelsNormal":"Toate modelele răspund normal.","cooldownCleared":"Timpul de răcire a fost eliminat pentru {model}","failedClearCooldown":"Nu s-a șters timpul de răcire","loadingAvailability":"Se \xeencarcă disponibilitatea modelului...","clearCooldown":"Clar","clearing":"Se șterge...","until":"P\xe2nă la {time}","providerTestFailed":"Testul furnizorului a eșuat","modeTest":"{mode} Test","passedCount":"{count} a trecut","failedCount":"{count} a eșuat","testedCount":"{count} testat","millisecondsAbbr":"{value}ms","okShort":"OK","errorShort":"EROARE","noActiveConnectionsInGroup":"Nu s-au găsit conexiuni active pentru acest grup.","allTestsPassed":"Toate testele {total} au trecut","testSummary":"{passed}/{total} a trecut, {failed} a eșuat","nameLabel":"Nume","prefixLabel":"Prefix","baseUrlLabel":"Adresa URL de bază","apiTypeLabel":"Tip API","prefixHint":"Obligatoriu. Prefix unic pentru numele modelelor.","nameHint":"Obligatoriu. O etichetă prietenoasă pentru acest nod.","baseUrlHint":"Obligatoriu. Adresa URL de bază a API-ului furnizorului.","anthropicPrefixPlaceholder":"ac-prod","openaiPrefixPlaceholder":"oc-prod","anthropicBaseUrlPlaceholder":"https://api.anthropic.com/v1","openaiBaseUrlPlaceholder":"https://api.openai.com/v1","validateConnection":"Validați conexiunea","validating":"Se validează...","connectionValid":"Conexiunea este valabilă!","connectionFailed":"Conexiunea a eșuat. Verificați adresa URL și cheia.","testKeyLabel":"Testați cheia API","testKeyPlaceholder":"sk-... (doar pentru validare)","providerNotFound":"Furnizorul nu a fost găsit","deleteConnectionConfirm":"Ștergeți această conexiune?","failedSetAlias":"Nu s-a putut seta aliasul","failedSaveConnection":"Nu s-a putut salva conexiunea","failedSaveConnectionRetry":"Nu s-a putut salva conexiunea. Vă rugăm să \xeencercați din nou.","failedRetestConnection":"Nu s-a retestat conexiunea","deleteCompatibleNodeConfirm":"Ștergeți acest nod {type} compatibil?","anthropicCompatibleDetails":"Detalii compatibile antropice","openaiCompatibleDetails":"Detalii compatibile cu OpenAI","messagesApi":"Messages API","responsesApi":"API de răspunsuri","chatCompletions":"Finalizări de chat","importingModels":"Se importă...","importFromModels":"Import din /modele","addConnectionToImport":"Adăugați o conexiune pentru a activa importul.","noModelsConfigured":"Nu au fost configurate modele","connectionCount":"{count} conexiuni","fetchingModels":"Se preiau modelele disponibile...","failedFetchModels":"Nu s-au putut prelua modelele","noModelsFound":"Nu s-au găsit modele","importFailed":"Importul nu a reușit","noNewModelsAdded":"Nu au fost adăugate modele noi.","adding":"Se adaugă...","importingModelsTitle":"Importul modelelor","copyModel":"Copiați modelul","removeModel":"Eliminați modelul","rateLimitProtected":"Protejat","rateLimitUnprotected":"Neprotejat","enableRateLimitProtection":"Faceți clic pentru a activa protecția limitei ratei","disableRateLimitProtection":"Faceți clic pentru a dezactiva protecția limitei ratei","productionKey":"Cheia de producție","enterNewApiKey":"Introduceți o nouă cheie API","optional":"Opțional","anthropicCompatibleName":"Compatibil antropic","openaiCompatibleName":"Compatibil cu OpenAI","failedImportModels":"Nu s-au putut importa modele","noModelsReturnedFromEndpoint":"Niciun model nu a fost returnat de la punctul final /models.","importingModelsProgress":"Se importă {current} din {total} modele...","foundModelsStartingImport":"S-au găsit {count} modele. Se \xeencepe importul...","importingModelById":"Se importă {modelId}...","importSuccessCount":"Importat cu succes {count, plural, one {# model} other {# models}}!","noNewModelsAddedExisting":"Nu au fost adăugate modele noi (toate există deja).","importDoneCount":"✓ Gata! {count, plural, one {# model imported.} other {# models imported.}}","unexpectedErrorOccurred":"A apărut o eroare neașteptată","connectionCountLabel":"{count, plural, one {# connection} other {# connections}}","messagesPath":"mesaje","responsesPath":"răspunsuri","chatCompletionsPath":"chat/completari","add":"Adăugați","edit":"Editați","delete":"Ștergeți","anthropic":"antropică","openai":"OpenAI","singleConnectionPerCompatible":"Este permisă o singură conexiune pentru fiecare nod compatibil. Adăugați un alt nod dacă aveți nevoie de mai multe conexiuni.","connections":"Conexiuni","providerProxyTitleConfigured":"Proxy furnizor: {host}","configured":"configurat","providerProxyConfigureHint":"Configurați proxy pentru toate conexiunile acestui furnizor","providerProxy":"Proxy de furnizor","noConnectionsYet":"\xcencă nu există conexiuni","addFirstConnectionHint":"Adăugați prima conexiune pentru a \xeencepe","addConnection":"Adăugați o conexiune","availableModels":"Modele disponibile","pageAutoRefresh":"Pagina se va re\xeemprospăta automat...","statusDisabled":"dezactivat","statusConnected":"conectat","statusRuntimeIssue":"problemă de rulare","statusAuthFailed":"auth a eșuat","statusRateLimited":"rata limitată","statusNetworkIssue":"problema rețelei","statusTestUnsupported":"test neacceptat","statusUnavailable":"indisponibil","statusFailed":"a eșuat","statusError":"eroare","oauthAccount":"Cont OAuth","errorTypeRuntime":"Timp de rulare local","errorTypeUpstreamAuth":"Autentificare \xeen amonte","errorTypeMissingCredential":"Lipsește acreditarea","errorTypeRefreshFailed":"Re\xeemprospătarea a eșuat","errorTypeTokenExpired":"Tokenul a expirat","errorTypeRateLimited":"Tarif limitat","errorTypeUpstreamUnavailable":"\xcen amonte indisponibil","errorTypeNetworkError":"Eroare de rețea","errorTypeTestUnsupported":"Testul nu este acceptat","errorTypeUpstreamError":"Eroare \xeen amonte","proxySourceGlobal":"Global","proxySourceProvider":"Furnizor","proxySourceKey":"cheie","proxyConfiguredBySource":"Proxy ({source}): {host}","autoPriority":"Auto: {priority}","proxy":"Proxy","retestAuthentication":"Retestați autentificarea","retest":"Retestați","disableConnection":"Dezactivați conexiunea","enableConnection":"Activați conexiunea","reauthenticateConnection":"Re-autentificați această conexiune","proxyConfig":"Configurare proxy","aliasExistsAlert":"Aliasul „{alias}” există deja. Vă rugăm să utilizați un alt model sau să editați alias-ul existent.","openRouterAnyModelHint":"OpenRouter acceptă orice model. Adăugați modele și creați aliasuri pentru acces rapid.","modelIdFromOpenRouter":"ID model (de la OpenRouter)","openRouterModelPlaceholder":"antropic/claude-3-opus","customModels":"Modele personalizate","customModelsHint":"Adăugați ID-uri de model care nu sunt \xeen lista implicită. Acestea vor fi disponibile pentru rutare.","modelId":"ID model","customModelPlaceholder":"de ex. gpt-4.5-turbo","loading":"Se \xeencarcă...","removeCustomModel":"Eliminați modelul personalizat","noCustomModels":"Nu s-au adăugat \xeencă modele personalizate.","allSuggestedAliasesExist":"Toate pseudonimele sugerate există deja. Vă rugăm să alegeți un alt model sau să eliminați aliasurile aflate \xeen conflict.","failedSaveCustomModel":"Nu s-a salvat modelul personalizat","modelAddedSuccess":"Modelul {modelId} a fost adăugat cu succes","failedAddModelTryAgain":"Nu s-a putut adăuga modelul. Vă rugăm să \xeencercați din nou.","failedSaveImportedModel":"Nu s-a salvat modelul importat \xeen baza de date personalizată","failedImportModelsTryAgain":"Nu s-au putut importa modele. Vă rugăm să \xeencercați din nou.","failedRemoveModelFromDatabase":"Nu s-a putut elimina modelul din baza de date","modelRemovedSuccess":"Modelul a fost eliminat cu succes","failedDeleteModelTryAgain":"Nu s-a șters modelul. Vă rugăm să \xeencercați din nou.","compatibleModelsDescription":"Adăugați manual modele compatibile cu {type} sau importați-le din punctul final /models.","anthropicCompatibleModelPlaceholder":"claude-3-opus-20240229","openaiCompatibleModelPlaceholder":"gpt-4o","apiKeyValidationFailed":"Validarea cheii API nu a reușit. Vă rugăm să vă verificați cheia și să \xeencercați din nou.","addProviderApiKeyTitle":"Adăugați {provider} cheia API","checking":"Se verifică...","check":"Verificați","valid":"Valabil","invalid":"Invalid","creating":"Se creează...","validationChecksAnthropicCompatible":"Validarea verifică {provider} prin verificarea cheii API.","validationChecksOpenAiCompatible":"Verificări de validare {provider} prin /models pe adresa URL de bază.","priorityLabel":"Prioritate","saving":"Se salvează...","save":"Salvați","editConnection":"Editați conexiunea","accountName":"Numele contului","email":"E-mail","healthCheckMinutes":"Verificare de sănătate (min)","healthCheckHint":"Interval proactiv de re\xeemprospătare a simbolului. 0 = dezactivat.","failedTestConnection":"Nu s-a testat conexiunea","failed":"A eșuat","leaveBlankKeepCurrentApiKey":"Lăsați necompletat pentru a păstra cheia API curentă.","editCompatibleTitle":"Editați {type} Compatibil","compatibleBaseUrlHint":"Utilizați adresa URL de bază (se termină \xeen /v1) pentru API-ul dvs. compatibil {type}.","apiKeyForCheck":"Cheie API (pentru verificare)","compatibleProdPlaceholder":"{type} Compatibil (Prod)"},"settings":{"title":"Setări","general":"general","security":"Securitate","appearance":"Aspectul","routing":"Dirijare","cache":"Cache","resilience":"Reziliență","systemPrompt":"Prompt de sistem","thinkingBudget":"G\xe2ndirea bugetului","proxy":"Proxy","pricing":"Prețuri","storage":"Depozitare","policies":"Politici","ipFilter":"Filtru IP","comboDefaults":"Setări implicite combinate","fallbackChains":"Lanțuri de rezervă","changePassword":"Schimbați parola","enablePassword":"Activați parola","darkMode":"Modul \xeentunecat","lightMode":"Modul de lumină","systemTheme":"Tema sistemului","enableCache":"Activați memoria cache","cacheTTL":"Cache TTL","maxCacheSize":"Dimensiunea maximă a memoriei cache","clearCache":"Goliți memoria cache","cacheHits":"Hits \xeen cache","cacheMisses":"Cache Misses","hitRate":"Rata de lovituri","cacheEntries":"Intrări \xeen cache","circuitBreaker":"\xcentrerupător","retryPolicy":"Re\xeencercați Politica","maxRetries":"Re\xeencercări maxime","retryDelay":"Re\xeencercați \xcent\xe2rziere","timeoutMs":"Timeout (ms)","enableSystemPrompt":"Activați promptul de sistem","systemPromptText":"Text prompt de sistem","enableThinking":"Activați g\xe2ndirea","maxThinkingTokens":"Max Thinking Tokens","enableProxy":"Activați proxy","proxyUrl":"Adresa URL proxy","pricingRates":"Formatul tarifelor de preț","currentPricing":"Prezentare generală a prețurilor actuale","loadingPricing":"Se \xeencarcă datele de preț...","noPricing":"Nu sunt disponibile date de preț","input":"Intrare","output":"Ieșire","cached":"\xcen cache","reasoning":"Raționamentul","cacheCreation":"Creare cache","customPricing":"Prețuri personalizate","databaseSize":"Dimensiunea bazei de date","backupDb":"Backup baze de date","restoreDb":"Restaurați baza de date","exportData":"Exportați date","importData":"Importați date","clearData":"Ștergeți toate datele","clearDataConfirm":"Aceasta va șterge definitiv toate datele. esti sigur?","enableRequestLogs":"Activați jurnalele de solicitări","logRetention":"Păstrarea jurnalelor","ipWhitelist":"Lista albă IP","ipBlacklist":"Lista neagră de IP","addIP":"Adăugați IP","savedSuccessfully":"Setările au fost salvate cu succes","ai":"AI","advanced":"Avansat","localMode":"Mod local — Toate datele stocate pe aparat","settingsSectionsAria":"Secțiunile de setări","switchThemes":"Comutați \xeentre temele deschise și cele \xeentunecate","themeSelectionAria":"Selectarea temei","themeLight":"Lumină","themeDark":"\xcentuneric","themeSystem":"Sistem","hideHealthLogs":"Ascundeți jurnalele de verificare a stării de sănătate","hideHealthLogsDesc":"C\xe2nd este ACTIVAT, suprimați mesajele [HealthCheck] din consola serverului","promptCache":"Prompt Cache","flushCache":"Spălați memoria cache","flushing":"Spălare…","size":"Dimensiune","hits":"Hituri","evictions":"Evacuări","loadingCacheStats":"Se \xeencarcă statisticile cache...","globalProxy":"Proxy global","globalProxyDesc":"Configurați un proxy global de ieșire pentru toate apelurile API. Furnizorii individuali, combo-urile și cheile pot suprascrie acest lucru.","noGlobalProxy":"Nu a fost configurat niciun proxy global","globalLabel":"Global","configure":"Configurați","globalSystemPrompt":"Global System Prompt","systemPromptDesc":"Injectat \xeen toate solicitările la nivel de proxy","saved":"Salvat","systemPromptPlaceholder":"Introduceți promptul de sistem pentru a injecta \xeen toate solicitările...","systemPromptHint":"Această solicitare este adăugată mesajului de sistem al fiecărei solicitări. Utilizați pentru instrucțiuni globale, ghiduri de siguranță sau reguli de formatare a răspunsurilor.","chars":"{count} caractere","thinkingBudgetTitle":"G\xe2ndirea bugetului","thinkingBudgetDesc":"Controlați utilizarea simbolurilor de raționament AI pentru toate solicitările","passthrough":"trecere","passthroughDesc":"Fără modificări — clientul controlează bugetul de g\xe2ndire","auto":"Auto","autoDesc":"Eliminați toate configurațiile de g\xe2ndire - lăsați furnizorul să decidă","custom":"Personalizat","customDesc":"Setați un buget fix pentru token pentru toate solicitările","adaptive":"Adaptiv","adaptiveDesc":"Scalați bugetul \xeen funcție de complexitatea cererii","effortNone":"Niciunul (0 jetoane)","effortLow":"Scăzut (1K jetoane)","effortMedium":"Mediu (10.000 jetoane)","effortHigh":"Ridicat (128.000 jetoane)","tokenBudget":"Buget simbol","tokens":"jetoane","baseEffortLevel":"Nivelul de efort de bază","adaptiveHint":"Modul adaptiv crește de la acest nivel de bază \xeen funcție de numărul de mesaje, utilizarea instrumentului și lungimea promptului.","requireLogin":"Necesită autentificare","requireLoginDesc":"C\xe2nd este pornit, tabloul de bord necesită o parolă. C\xe2nd este OFF, accesați fără autentificare.","currentPassword":"Parola curentă","enterCurrentPassword":"Introduceți parola curentă","newPassword":"Parolă nouă","enterNewPassword":"Introduceți o nouă parolă","confirmPassword":"Confirmați parola nouă","confirmPasswordPlaceholder":"Confirmați noua parolă","passwordsNoMatch":"Parolele nu se potrivesc","passwordUpdated":"Parola a fost actualizată cu succes","failedUpdatePassword":"Nu s-a putut actualiza parola","errorOccurred":"A apărut o eroare","updatePassword":"Actualizați parola","setPassword":"Setați parola","apiEndpointProtection":"API Endpoint Protection","requireAuthModels":"Necesită cheia API pentru /models","requireAuthModelsDesc":"C\xe2nd este ACTIVAT, punctul final /v1/models returnează 404 pentru solicitările neautentificate. Previne descoperirea modelului de către utilizatori neautorizați.","blockedProviders":"Furnizori blocați","blockedProvidersDesc":"Ascundeți anumiți furnizori din răspunsul /v1/models. Furnizorii blocați nu vor apărea \xeen listele de modele.","providersBlocked":"{count} furnizor(i) blocat(i) de la /modele","blockProviderTitle":"Blocați {provider}","unblockProviderTitle":"Deblocați {provider}","routingStrategy":"Strategia de rutare","fillFirst":"Umpleți mai \xeent\xe2i","fillFirstDesc":"Utilizați conturile \xeen ordine de prioritate","roundRobin":"Round Robin","roundRobinDesc":"Parcurgeți toate conturile","p2c":"P2C","p2cDesc":"Alegeți 2 la \xeent\xe2mplare, folosiți-l pe cel mai sănătos","random":"Aleatoriu","randomDesc":"Cont aleatoriu pentru fiecare cerere","leastUsed":"Cel mai puțin folosit","leastUsedDesc":"Alegeți contul cel mai puțin utilizat recent","costOpt":"Cost Opt","costOptDesc":"Prefer cel mai ieftin cont disponibil","stickyLimit":"Limită lipicioasă","stickyLimitDesc":"Apeluri pe cont \xeenainte de a comuta","modelAliases":"Aliasuri de model","modelAliasesDesc":"Modele wildcard pentru a remapa numele modelelor • Utilizați * și ?","aliasPatternPlaceholder":"claude-sonet-*","aliasTargetPlaceholder":"claude-sonet-4-20250514","pattern":"Model","targetModel":"Model țintă","add":"+ Adăugați","session":"Sesiune","sessionDetailsAria":"Detalii sesiune","status":"Stare","authenticated":"Autentificat","guest":"Oaspete","loginTime":"Ora de conectare","sessionAge":"V\xe2rsta sesiunii","browser":"Browser","clearLocalData":"Ștergeți datele locale","logout":"Deconectare","clearLocalDataConfirm":"Ștergeți toate datele locale? Aceasta vă va reseta preferințele.","unknown":"Necunoscut","systemActor":"sistem","ipAccessControl":"Control acces IP","ipAccessControlDesc":"Blocați sau permiteți anumite adrese IP","ipModeDisabled":"Dezactivat","ipModeBlacklist":"Lista neagră","ipModeWhitelist":"Lista albă","ipModeWhitelistPriority":"Prioritate WL","addIpAddress":"Adăugați adresa IP","ipAddressPlaceholder":"192.168.1.0/24 sau 10.0.*.*","block":"+ Blocare","allow":"+ Permite","blocked":"Blocat ({count})","allowed":"Permis ({count})","temporaryBans":"Interdicții temporare ({count})","minLeft":"Au mai rămas {min}m","auditLog":"Jurnal de audit","searchAuditLogs":"Căutați jurnalele de audit...","failedLoadAuditLog":"Nu s-a \xeencărcat jurnalul de audit","noAuditEvents":"Nu au fost găsite evenimente de audit","action":"Acțiune","actor":"actor","details":"Detalii","time":"timpul","fallbackChainsTitle":"Lanțuri de rezervă","fallbackChainsDesc":"Definiți ordinea de rezervă a furnizorului pentru fiecare model","addChain":"+ Adăugați lanț","modelName":"Numele modelului","modelNamePlaceholder":"claude-sonet-4-20250514","providersCommaSeparated":"Furnizori (separați prin virgulă, \xeen ordine de prioritate)","providersCommaSeparatedPlaceholder":"antropic, openai, gemeni","createChain":"Creați lanț","noFallbackChains":"Fără lanțuri de rezervă","noFallbackChainsDesc":"Creați un lanț pentru a defini ordinea de rezervă a furnizorului pentru un model.","loadingFallbackChains":"Se \xeencarcă lanțurile alternative...","deleteChainConfirm":"Ștergeți lanțul alternativ pentru „{model}”?","chainCreated":"Lanț creat pentru {model}","chainDeleted":"Lanțul a fost șters pentru {model}","failedCreateChain":"Nu s-a putut crea lanțul","failedDeleteChain":"Lanțul nu a putut fi șters","deleteChain":"Ștergeți lanțul","fillModelAndProviders":"Vă rugăm să completați numele modelului și furnizorii","addAtLeastOneProvider":"Adăugați cel puțin un furnizor","comboDefaultsTitle":"Setări implicite combinate","globalComboConfig":"Configurație globală combo","defaultStrategy":"Strategia implicită","defaultStrategyDesc":"Aplicat combo-urilor noi fără strategie explicită","comboStrategyAria":"Strategie combinată","priority":"Prioritate","weighted":"ponderat","maxRetriesLabel":"Re\xeencercări maxime","retryDelayLabel":"\xcent\xe2rziere re\xeencercare (ms)","timeoutLabel":"Timeout (ms)","healthCheck":"Verificare de sănătate","healthCheckDesc":"Verificați prealabil disponibilitatea furnizorului","trackMetrics":"Urmăriți valorile","trackMetricsDesc":"\xcenregistrați valorile pentru fiecare cerere combinată","providerOverrides":"Suprascrierea furnizorului","providerOverridesDesc":"Suprascrierea timpului de expirare și re\xeencercări pentru fiecare furnizor. Setările furnizorului \xeenlocuiesc valorile prestabilite globale.","providerMaxRetriesAria":"{provider} max. re\xeencercări","providerTimeoutAria":"{provider} timeout ms","removeProviderOverrideAria":"Eliminați anularea {provider}","newProviderNamePlaceholder":"de ex. google, deschide...","newProviderNameAria":"Numele furnizorului nou","retries":"re\xeencercări","ms":"ms","saveComboDefaults":"Salvați setările implicite de combo","maxNestingDepth":"Ad\xe2ncimea maximă de cuibărire","concurrencyPerModel":"Concurență / Model","queueTimeout":"Timp de așteptare la coadă (ms)","providerProfiles":"Profiluri de furnizor","providerProfilesDesc":"Setări separate de rezistență pentru furnizorii OAuth (bazat pe sesiune) și API Key (contorizat). Furnizorii OAuth au praguri mai stricte din cauza limitelor mai mici ale ratei.","oauthProviders":"Furnizori OAuth","apiKeyProviders":"Furnizori de chei API","transientCooldown":"Răcire tranzitorie","rateLimitCooldown":"Rate de răcire limită","maxBackoffLevel":"Nivel maxim de retragere","cbThreshold":"Pragul CB","cbResetTime":"Timp de resetare CB","rateLimiting":"Limitarea ratei","rateLimitingDesc":"Furnizorii de chei API sunt limitate automat la rate cu valori implicite sigure. Limitele sunt \xeenvățate din anteturile de răspuns și se adaptează \xeen timp.","defaultSafetyNet":"Rețea de siguranță implicită","rpm":"RPM","minGap":"Gap min","maxConcurrent":"Concurență maximă","activeLimiters":"Limitatoare active","noActiveLimiters":"\xcencă nu există limitatoare de rată active.","reservoir":"Rezervor","running":"Alergarea","queued":"\xcen coadă","circuitBreakers":"\xcentreruptoare","breakerStateClosed":"\xcenchis","breakerStateOpen":"Deschide","breakerStateHalfOpen":"Pe jumătate deschis","tripped":"{count} sa declanșat","healthy":"{count} sănătos","resetAll":"Resetați toate","noCircuitBreakers":"Niciun \xeentrerupător de circuit activ \xeencă. Acestea sunt create automat atunci c\xe2nd cererile trec prin conducta combinată.","failures":"{count} eșec(e)","policiesLocked":"Politici și identificatori blocați","allOperational":"Toate sistemele sunt operaționale — fără blocaje sau \xeentrerupătoare declanșate","loadingPolicies":"Se \xeencarcă politicile...","lockedIdentifiers":"Identificatori blocați","unlockedIdentifier":"Deblocat: {identifier}","sinceDate":"din {date}","forceUnlock":"Deblocare forțată","unlocking":"Se deblochează...","failedUnlock":"Deblocarea eșuată","failedLoadWithStatus":"Nu s-a \xeencărcat: {status}","failedLoadResilience":"Nu s-a \xeencărcat starea de rezistență","saveFailed":"Salvarea nu a reușit","resetFailed":"Resetarea a eșuat","loadingResilience":"Se \xeencarcă starea rezistenței...","retry":"Re\xeencercați","systemStorage":"Sistem și stocare","allDataLocal":"Toate datele stocate local pe aparatul dvs","databasePath":"Calea bazei de date","exportDatabase":"Exportați baza de date","exportAll":"Exportați toate (.tar.gz)","importDatabase":"Importă baza de date","confirmDbImport":"Confirmați importul bazei de date","confirmDbImportDesc":"Aceasta va \xeenlocui toate datele curente cu conținutul din {file}. O copie de rezervă va fi creată automat \xeenainte de import.","yesImport":"Da, import","lastBackup":"Ultima copie de rezervă","noBackupYet":"Nicio rezervă \xeencă","backupNow":"Faceți backup acum","backupRestore":"Backup și restaurare","viewBackups":"Vizualizați copii de rezervă","hide":"Ascunde","backupRetentionDesc":"Instantaneele bazei de date sunt create automat \xeenainte de restaurare și la fiecare 15 minute c\xe2nd datele se modifică. Reținere: 24 de ore din 24 + 30 de backup-uri zilnice cu rotație inteligentă.","loadingBackups":"Se \xeencarcă copii de rezervă...","noBackupsYet":"Nu există copii de rezervă disponibile \xeencă. Backup-urile vor fi create automat c\xe2nd datele se schimbă.","backupsAvailable":"{count} backup(uri) disponibil(e).","refresh":"Re\xeemprospătați","confirm":"Confirm?","yes":"Da","no":"Nu","restore":"Restaurați","invalidFileType":"Tip de fișier nevalid. Sunt acceptate numai fișierele .sqlite.","exportFailed":"Exportul nu a reușit","exportFailedWithError":"Export eșuat: {error}","fullExportFailedWithError":"Exportul complet eșuat: {error}","backupCreated":"Backup creat: {file}","restoreSuccess":"Restaurat! {connections} conexiuni, {nodes} noduri, {combos} combo, {apiKeys} chei API.","importSuccess":"Baza de date importată! {connections} conexiuni, {nodes} noduri, {combos} combo, {apiKeys} chei API.","justNow":"tocmai acum","minutesAgo":"{count}m \xeen urmă","hoursAgo":"acum {count}h","daysAgo":"acum {count}d","backupReasonManual":"manual","backupReasonPreRestore":"pre-restaurare","connectionsCount":"{count, plural, one {# connection} other {# connections}}","noChangesSinceBackup":"Nicio modificare de la ultima copie de rezervă","backupFailed":"Copierea de rezervă a eșuat","restoreFailed":"Restaurarea a eșuat","importFailed":"Importul nu a reușit","errorDuringRestore":"A apărut o eroare \xeen timpul restaurării","errorDuringImport":"A apărut o eroare \xeen timpul importului","modelPricing":"Prețul modelului","modelPricingDesc":"Configurați tarifele de cost pe model • Toate tarifele \xeen jetoane $/1M","providers":"Furnizorii","registry":"Registrul","priced":"Preț","searchProvidersModels":"Căutați furnizori sau modele...","showAll":"Arată toate","noProvidersMatch":"Niciun furnizor nu corespunde căutării dvs.","howPricingWorks":"Cum funcționează prețurile","cacheWrite":"Scriere \xeen cache","unsaved":"nesalvat","resetDefaults":"Resetează setările implicite","saveProvider":"Salvați furnizorul","saving":"Se salvează...","model":"Model","models":"modele","moreProviders":"{count} mai mulți furnizori","withPricing":"cu prețul configurat","policiesCircuitBreakers":"Politici și \xeentrerupătoare de circuit","activeIssuesDetected":"Au fost detectate probleme active","off":"Oprit","resetPricingConfirm":"Resetați toate prețurile pentru {provider} la valorile prestabilite?","pricingDescInput":"Intrare: jetoane trimise modelului","pricingDescOutput":"Ieșire: jetoane generate","pricingDescCached":"\xcen cache: intrare reutilizată (~50% din rata de intrare)","pricingDescReasoning":"Raționament: jetoane de g\xe2ndire (se \xeentoarce la Ieșire)","pricingDescCacheWrite":"Scriere \xeen cache: crearea de intrări \xeen cache (revine la Intrare)","pricingDescFormula":"Cost = (input \xd7 input_rate) + (output \xd7 output_rate) + (cached \xd7 cached_rate) per milion de jetoane.","pricingSettingsTitle":"Setări de preț","totalModels":"Total Modele","active":"Activ","costCalculation":"Calculul costurilor","costCalculationDesc":"Costurile sunt calculate pe baza utilizării simbolurilor și a tarifelor de preț configurate pentru fiecare model.","pricingFormat":"Format de preț","pricingFormatDesc":"Toate tarifele sunt \xeen jetoane/1 milion USD (dolari per milion de jetoane).","tokenTypes":"Tipuri de jetoane","inputTokenDesc":"Jetoane standard de prompt","outputTokenDesc":"Jetoane de completare/răspuns","cachedTokenDesc":"Jetoane de intrare stocate \xeen cache (de obicei 50% din rata de intrare)","reasoningTokenDesc":"Indicative speciale de raționament/g\xe2ndire (retracție la rata de ieșire)","cacheCreationTokenDesc":"Jetoane utilizate pentru a crea intrări \xeen cache (retur la rata de intrare)","customPricingNote":"Puteți suprascrie prețurile implicite pentru anumite modele. Anulările personalizate au prioritate față de prețurile detectate automat.","editPricing":"Editați prețul","viewFullDetails":"Vezi detalii complete","modelAliasesTitle":"Aliasuri de model","addCustomAlias":"Adaugă Alias Personalizat","deprecatedModelId":"ID model depreciat","newModelId":"ID model nou","customAliases":"Aliasuri personalizate","builtInAliases":"Aliasuri \xeencorporate","backgroundDegradationTitle":"Degradare sarcini \xeen fundal","backgroundDegradationDesc":"Detectează automat sarcinile \xeen fundal (titluri, rezumate) și redirecționează către modele mai ieftine","enableDegradation":"Activează degradarea sarcinilor \xeen fundal","enableDegradationHint":"C\xe2nd este activat, sarcinile \xeen fundal precum generarea de titluri și rezumate sunt redirecționate automat către modele mai ieftine","tasksDetected":"Sarcini detectate","degradationMap":"Hartă de degradare a modelelor","premiumModel":"Model premium","cheapModel":"Model ieftin","detectionPatterns":"Modele de detecție","newPattern":"ex: \\"generează un titlu\\""},"translator":{"title":"Traducător","metaTitle":"Translator Playground | OmniRoute","metaDescription":"Depanați, testați și vizualizați traducerile \xeen format API \xeentre furnizori","playgroundTitle":"Loc de joacă pentru traducător","playground":"Loc de joacă","realtime":"Activitate de traducere \xeen timp real","chatTester":"Tester de chat","testBench":"Banc de testare","liveMonitor":"Monitor live","modeDescriptionPlayground":"Lipiți orice corp de solicitare API și vedeți cum \xeel traduce OmniRoute \xeentre formatele de furnizor (OpenAI ↔ Claude ↔ Gemini ↔ API-ul de răspunsuri)","modeDescriptionChatTester":"Trimiteți cereri reale de chat prin OmniRoute și inspectați \xeentreaga călătorie dus-\xeentors: intrare, cerere tradusă, răspuns furnizor și ieșire tradusă.","modeDescriptionTestBench":"Rulați scenarii predefinite și comparați compatibilitatea \xeentre furnizori și modele.","modeDescriptionLiveMonitor":"Urmărește evenimentele de traducere \xeen timp real, pe măsură ce solicitările circulă prin OmniRoute.","modeDescriptionFallback":"Depanați, testați și vizualizați modul \xeen care OmniRoute traduce cererile API \xeentre furnizori.","recentTranslations":"Traduceri recente","noTranslations":"Nicio traducere \xeencă","source":"Sursa","target":"țintă","time":"timpul","model":"Model","status":"Stare","latency":"Latența","totalTranslations":"Traduceri totale","successful":"De succes","errors":"Erori","avgLatency":"Latență medie","millisecondsShort":"{value}ms","notAvailableSymbol":"—","liveAutoRefreshing":"Live — Auto-\xeemprospătare","paused":"\xcentrerupt","eventsAppearHint":"Evenimentele de traducere apar aici pe măsură ce solicitările circulă prin OmniRoute. Utilizați oricare dintre aceste metode pentru a genera evenimente:","chatTesterTab":"Fila Tester de chat","testBenchTab":"Fila Banc de testare","externalApiCalls":"Apeluri API externe","ideCliIntegrations":"Integrari IDE/CLI","inMemoryNote":"Notă: Evenimentele sunt stocate \xeen memorie și resetate atunci c\xe2nd serverul repornește.","ok":"OK","errorShort":"ERR","formatConverter":"Convertor de format","formatConverterDescription":"Lipiți sau introduceți un corp de solicitare JSON. Traducătorul va detecta automat formatul sursă și \xeel va converti \xeen formatul țintă. Utilizați aceasta pentru a depana modul \xeen care OmniRoute traduce cererile \xeentre formate (OpenAI ↔ Claude ↔ Gemini ↔ Responses API).","input":"Intrare","output":"Ieșire","auto":"Auto","swapFormats":"Schimbați formatele","translateAction":"Traduceți","clear":"Clar","inputPlaceholder":"Lipiți un corp de solicitare aici sau selectați un șablon de mai jos...","exampleTemplates":"Exemple de șabloane","exampleTemplatesHint":"— Faceți clic pentru a \xeencărca","templateLoadHint":"Șablonul \xeencarcă solicitarea \xeen format {format}. Modificați formatul sursă pentru a \xeencărca \xeentr-un alt format.","compatibilityTester":"Tester de compatibilitate","compatibilityReport":"Raport de compatibilitate","testBenchDescription":"Rulați scenarii predefinite (Simple Chat, Tool Calling etc.) pentru a verifica traducerea și compatibilitatea furnizorilor. Selectați un format sursă și un furnizor țintă, apoi rulați toate testele pentru a vedea un procent de compatibilitate. Folosiți acest lucru pentru a afla ce caracteristici funcționează \xeentre furnizori.","targetProvider":"Furnizor țintă","runAllTests":"Rulați toate testele","runTest":"Run Test","reRun":"Reluați","running":"Alergare...","passed":"a trecut","failed":"a eșuat","passedIconLabel":"✅ A trecut","chunks":"bucăți","scenarioSimpleChat":"Chat simplu","scenarioToolCalling":"Apelarea instrumentului","scenarioMultiTurn":"Multi-turn","scenarioThinking":"G\xe2ndirea","scenarioSystemPrompt":"Prompt de sistem","scenarioStreaming":"Streaming","templateNames":{"simple-chat":"Chat simplu","tool-calling":"Apelarea instrumentului","multi-turn":"Multi-turn","thinking":"G\xe2ndirea","system-prompt":"Prompt de sistem","streaming":"Streaming"},"templateDescriptions":{"simple-chat":"Mesaj text de bază","tool-calling":"Invocarea funcției/uneltei","multi-turn":"Conversație cu istoria","thinking":"G\xe2ndire extinsă / raționament","system-prompt":"Instrucțiuni de sistem complexe","streaming":"Solicitare de streaming SSE"},"templatePayloads":{"simpleChat":{"system":"Ești un asistent util.","userGreeting":"Bună ziua! Cum te simți azi?"},"toolCalling":{"userWeather":"Care este vremea \xeen S\xe3o Paulo?","toolDescription":"Obțineți vremea actuală pentru o locație","cityNameDescription":"Numele orașului"},"multiTurn":{"system":"Sunteți un asistent de codare.","userInitial":"Scrieți o funcție pentru a sorta o matrice \xeen Python.","assistantExample":"Iată o funcție simplă de sortare:\\n\\n```python\\ndef sort_array(arr):\\n return sortat(arr)\\n```","userFollowUp":"Acum sortați \xeen ordine descrescătoare."},"thinking":{"question":"Care este suma primelor 100 de numere prime?"},"systemPrompt":{"systemInstruction":"Sunteți un inginer de software senior specializat \xeen sisteme distribuite. Răspundeți concis la \xeentrebări folosind cele mai bune practici din industrie. Furnizați \xeentotdeauna exemple de cod atunci c\xe2nd este relevant. Formatați răspunsurile folosind markdown.","question":"Cum implementez un model de \xeentrerupător?"},"streaming":{"prompt":"Spune-mi o scurtă poveste despre un robot care \xeenvață să picteze."}},"openaiCompatibleLabel":"Compatibil cu OpenAI","anthropicCompatibleLabel":"Compatibil antropic","noTemplateForFormat":"Nu există șablon pentru acest format","translationFailed":"Traducerea a eșuat: {error}","pipelineDebugger":"Pipeline Debugger","translationPipeline":"Conducta de traduceri","pipelineVisualization":"Vizualizarea conductei","pipelineVisualizationHint":"Trimiteți un mesaj pentru a vedea cum decurge cererea dvs. prin detectare → traducere → apel de la furnizor.","chatTesterDescription":"Trimiteți mesaje ca un anumit format de client și inspectați fiecare pas al conductei de traducere.","chatTesterFlow":"Solicitare client → Detectare format → Intermediar OpenAI → Format furnizor → Răspuns","clickStepToInspect":"Faceți clic pe orice pas pentru a inspecta datele \xeen acea etapă.","clientFormat":"Format client","provider":"Furnizor","modelPlaceholder":"Selectați sau introduceți un nume de model...","sendMessageToSeePipeline":"Trimiteți un mesaj pentru a vedea canalul de traducere","chatMessageHintPrefix":"Mesajul dvs. va fi formatat ca a","chatMessageHintSuffix":"cerere, tradusă prin conductă și trimisă furnizorului selectat.","youWithFormat":"Tu ({format})","assistant":"Asistent","typeMessage":"Tastați un mesaj...","send":"Trimite","clientRequest":"Solicitarea clientului","clientRequestDescription":"Corpul solicitării pe care l-ar trimite clientul dvs","formatDetected":"Format detectat","formatDetectedDescription":"OmniRoute detectează automat formatul API din structura cererii","openaiIntermediate":"OpenAI Intermediar","openaiIntermediateDescription":"Toate formatele sunt mai \xeent\xe2i normalizate la formatul OpenAI (puntea universală)","providerFormat":"Format de furnizor","providerFormatDescription":"Formatul OpenAI este tradus \xeen formatul nativ al furnizorului","providerResponse":"Răspunsul furnizorului","providerResponseRawDescription":"Răspunsul brut de la API-ul furnizorului","providerResponseSseDescription":"Fluxul SSE brut de la API-ul furnizorului","unexpectedError":"A apărut o eroare neașteptată","error":"Eroare","errorMessage":"Eroare: {message}","requestFailed":"Solicitarea a eșuat","noTextExtracted":"(Niciun text extras)","liveMonitorDescriptionPrefix":"Afișează evenimentele de traducere pe măsură ce apelurile API circulă prin OmniRoute. Evenimentele provin din buffer-ul din memorie (resetează la repornire). Utilizați","liveMonitorDescriptionSuffix":", sau apeluri API externe pentru a genera evenimente."},"usage":{"title":"Utilizare","loggerTab":"Logger","proxyTab":"Proxy","budgetManagement":"Managementul bugetului","budgetSaved":"Limitele bugetare au fost salvate","budgetSaveFailed":"Nu s-a salvat bugetul","loadingBudgetData":"Se \xeencarcă datele bugetare...","noApiKeysTitle":"Fără chei API","noApiKeysDescription":"Adăugați mai \xeent\xe2i cheile API pentru a configura limite de buget.","apiKey":"Cheia API","todaysSpend":"Cheltuielile de azi","thisMonth":"Luna aceasta","setLimits":"Setați limite","dailyLimitUsd":"Limită zilnică (USD)","monthlyLimitUsd":"Limită lunară (USD)","warningThresholdPercent":"Pragul de avertizare (%)","dailyLimitPlaceholder":"de ex. 5.00","monthlyLimitPlaceholder":"de ex. 50.00","warningThresholdPlaceholder":"80","saveLimits":"Salvați limite","budgetOk":"Buget OK — {remaining} rămas","budgetExceeded":"Buget depășit — solicitările pot fi blocate","totalRequests":"Total cereri","noDataYet":"Nu există date \xeencă","latency":"Latența","latencyP50":"p50","latencyP95":"p95","latencyP99":"p99","promptCache":"Prompt Cache","systemHealth":"Sănătatea sistemului","entries":"Intrări","activeCount":"{count} activ","openCircuitBreakersDetected":"\xcentreruptoare deschise detectate","hitRate":"Rata de lovituri","hitsMisses":"Hits / Misses","circuitBreakers":"\xcentreruptoare","lockedIPs":"IP-uri blocate","lockoutsAutoRefreshHint":"Blocări ale limitei ratei per model • Re\xeemprospătare automată 10 secunde","lockedCount":"{count, plural, one {# locked} other {# locked}}","timeLeft":"{time} a rămas","howItWorks":"Cum funcționează","howItWorksSubtitle":"Aflați cum evaluările vă validează răspunsurile LLM","define":"Definiți","defineStepDescription":"Creați cazuri de testare cu solicitări de intrare și criterii de ieșire așteptate, folosind strategii precum conține, expresii regex sau potrivire exactă.","run":"Fugi","runStepDescription":"Execută cazuri de testare \xeempotriva punctelor finale LLM prin OmniRoute. Fiecare caz este trimis ca o cerere API reală.","evaluate":"Evaluează","evaluateStepDescription":"Răspunsurile sunt comparate cu criteriile așteptate. Vedeți succes/eșec pentru fiecare caz cu valori de latență și feedback detaliat.","evalSuites":"Suite de evaluare","evalSuitesHint":"Faceți clic pe o suită pentru a vedea cazurile de testare, apoi rulați pentru a evalua punctele finale LLM","evalsLoading":"Se \xeencarcă apartamentele de evaluare...","noEvalSuitesFound":"Nu au fost găsite suite Eval","noEvalSuitesDescription":"Suitele de evaluare pot fi definite prin API sau \xeen cod. Ei testează ieșirile modelului \xeen raport cu rezultatele așteptate folosind strategii precum conține, regex, potrivire exactă și funcții personalizate.","columnCase":"Caz","columnStatus":"Stare","columnLatency":"Latența","columnDetails":"Detalii","columnModel":"Model","columnStrategy":"Strategie","columnExpected":"Așteptată","statsSuites":"Suite","statsTestCases":"Cazuri de testare","statsModels":"Modele","statsCoverage":"Acoperire","statsStrategiesCount":"{count} strategii","evaluationStrategies":"Strategii de evaluare","modelsUnderTest":"Modele \xeen curs de testare","searchSuitesPlaceholder":"Căutați apartamente...","passSuffix":"trece","casesCount":"{count, plural, one {# case} other {# cases}}","runEval":"Rulați Eval","runningProgress":"Se rulează {current}/{total}...","passRate":"rata de promovare","summaryBreakdown":"{passed} a trecut \xb7 {failed} a eșuat \xb7 {total} total","passedIconLabel":"✅ A trecut","failedIconLabel":"❌ A eșuat","detailsContains":"Conține: „{term}”","detailsRegex":"Regex: {pattern}","detailsExpected":"Așteptată: „{expected}”","noResultsYet":"Niciun rezultat \xeencă","testCasesCount":"Cazuri de testare ({count})","noTestCasesDefined":"Nu au fost definite cazuri de testare","runEvalHint":"Faceți clic pe „Run Eval” pentru a executa toate cazurile \xeempotriva punctului final LLM. Fiecare test trimite o cerere reală prin OmniRoute.","notifyNoTestCases":"Nu au fost definite cazuri de testare pentru această suită","notifyAllCasesPassed":"Toate {total} cazuri au trecut ✅","notifySomeCasesFailed":"{passed}/{total} a trecut, {failed} a eșuat","notifyEvalRunFailed":"Evaluarea a eșuat","notifyEvalTitle":"Evaluare: {name}","modelEvals":"Evaluări de model","evalsHeroDescription":"Testați și validați punctele finale LLM rul\xe2nd suite de evaluare predefinite. Fiecare suită conține cazuri de testare care trimit solicitări reale prin OmniRoute și compară răspunsurile cu criteriile așteptate - ajut\xe2ndu-vă să detectați regresiile, să comparați modele și să asigurați calitatea răspunsului \xeentre furnizori.","qualityValidation":"Validarea calității","modelComparison":"Comparație de modele","regressionDetection":"Detectarea regresiei","latencyBenchmarks":"Benchmark-uri de latență","modelLockouts":"Blocarea modelelor","noLockouts":"Nu există modele blocate momentan","activeSessions":"Sesiuni active","noSessions":"Fără sesiuni active","sessionsHint":"Sesiunile apar pe măsură ce solicitările circulă prin proxy","sessionsTrackedHint":"Urmărit prin amprenta la cerere • Re\xeemprospătare automată 5s","session":"Sesiune","age":"V\xe2rsta","requests":"Cereri","connection":"Conexiune","durationMillisecondsShort":"{value}ms","durationSecondsShort":"{value}s","durationMinutesShort":"{value}m","durationHoursShort":"{value}h","reasonSeparator":" - ","notAvailableSymbol":"-","providerLimits":"Limitele furnizorului","noProviders":"Niciun furnizor conectat","connectProvidersForQuota":"Conectați-vă la furnizori cu OAuth pentru a urmări limitele și utilizarea cotelor API.","accountsCount":"{count, plural, one {# account} other {# accounts}}","filteredFromCount":"(filtrat din {count})","autoRefresh":"Re\xeemprospătare automată","refreshAll":"Re\xeemprospătați toate","loadingQuotas":"Se \xeencarcă...","account":"Cont","modelQuotas":"Cote model","lastUsed":"Ultima utilizare","actions":"Acțiuni","refreshQuota":"Actualizează cota","today":"Astăzi","tomorrow":"M\xe2ine","dayTimeFormat":"{day}, {time}","inDuration":"\xeen {duration}","notApplicable":"N/A","rawPlanWithValue":"Plan brut: {plan}","noPlanFromProvider":"Niciun plan de la furnizor","noQuotaData":"Fără date de cotă","noQuotaDataAvailable":"Nu sunt disponibile date privind cotele","noAccountsForTierFilter":"Nu s-au găsit conturi pentru filtrul de nivel","tierAll":"Toate","tierEnterprise":"\xcentreprindere","tierTeam":"Echipa","tierBusiness":"Afaceri","tierUltra":"Ultra","tierPro":"Pro","tierPlus":"Plus","tierFree":"Gratuit","tierUnknown":"Necunoscut"},"modals":{"waitingAuth":"\xcen așteptarea autorizației","verificationUrl":"Adresa URL de verificare","yourCode":"Codul dvs","remoteAccess":"Acces de la distanță:","connectedSuccess":"Conectat cu succes!","connectionFailed":"Conexiune a eșuat","chooseAuthMethod":"Alegeți metoda de autentificare:","awsBuilderId":"ID AWS Builder","awsIamIdentity":"Centrul de identitate AWS IAM","googleAccount":"Cont Google","githubAccount":"Cont GitHub","importToken":"Import Token","pasteToken":"Lipiți indicativul de re\xeemprospătare din Kiro IDE.","awsRegion":"Regiunea AWS","autoDetecting":"Se detectează automat jetoanele...","readingFromCache":"Citirea din memoria cache AWS SSO","readingFromCursor":"Citirea din baza de date Cursor IDE","initializing":"Se inițializează...","pricingConfig":"Configurarea prețurilor","loadingPricing":"Se \xeencarcă datele de preț...","pricingRatesFormat":"Formatul tarifelor de preț","noPricingData":"Nu sunt disponibile date de preț","noModelsFound":"Nu s-au găsit modele"},"loggers":{"allProviders":"Toți Furnizorii","allModels":"Toate modelele","allAccounts":"Toate Conturile","allApiKeys":"Toate cheile API","allTypes":"Toate Tipurile","allLevels":"Toate Nivelurile","modelAZ":"Modelul A-Z","modelZA":"Model Z-A","loadingLogs":"Se \xeencarcă jurnalele...","loadingProxyLogs":"Se \xeencarcă jurnalele proxy...","noLogEntries":"Nu au fost găsite intrări de jurnal","noPayloadData":"Nu există date disponibile pentru această intrare \xeen jurnal.","proxyEvent":"Eveniment proxy","proxy":"Proxy","level":"Nivel","directNative":"Direct (nativ)","combo":"Combo","inputTokens":"eu:","outputTokens":"O:"},"stats":{"usageOverview":"Prezentare generală a utilizării","outputTokens":"Jetoane de ieșire","totalCost":"Costul total","usageByModel":"Utilizare după model","usageByAccount":"Utilizare după Cont","failedToLoad":"Nu s-au \xeencărcat statisticile de utilizare.","tokenHealth":"Token Health","totalOAuth":"OAuth totală","healthy":"Sănătos","warning":"Avertisment","errored":"Eroare","lastCheck":"Ultima verificare","noData":"Fără date","share":"Distribuie","unableToLoad":"Nu se pot \xeencărca valorile sistemului","product":"Produs","resources":"Resurse","company":"Compania"},"auth":{"welcome":"Bun venit","signIn":"Conectați-vă","enterPassword":"Introduceți parola pentru a continua","password":"Parolă","unifiedProxy":"Proxy API AI unificat","unifiedAiApiProxy":"Proxy API AI unificat","unifiedAiApiProxyDesc":"Dirijați cererile către mai mulți furnizori de AI printr-un singur punct final. Echilibrarea \xeencărcăturii, failoverul și urmărirea utilizării \xeencorporate.","passwordNotEnabled":"Protecția prin parolă nu este activată","loading":"Se \xeencarcă...","invalidPassword":"Parolă nevalidă","errorOccurredRetry":"A apărut o eroare. Vă rugăm să \xeencercați din nou.","configureInstance":"Haideți să vă configurați instanța OmniRoute","runOnboardingWizard":"Rulați expertul de onboarding pentru a vă configura parola și pentru a vă conecta primul furnizor de AI.","startOnboarding":"\xcencepeți integrarea","secureYourInstance":"Asigurați-vă instanța","setPasswordDescription":"Setați o parolă pentru a vă proteja tabloul de bord și pentru a vă asigura punctele finale API \xeempotriva accesului neautorizat.","configurePassword":"Configurați parola","continue":"Continuă","windowWillClose":"Această fereastră se va \xeenchide automat...","closeTabNow":"Puteți \xeenchide această filă acum.","copyUrlManual":"Vă rugăm să copiați adresa URL din bara de adrese și să o inserați \xeen aplicație.","accessDeniedDescription":"Nu aveți permisiunea de a accesa această resursă. Verificați cheia API sau contactați administratorul.","goToDashboard":"Accesați tabloul de bord","featureMultiProviderTitle":"Multi-furnizor","featureMultiProviderDesc":"OpenAI, Anthropic, Google și multe altele","featureLoadBalancingTitle":"Echilibrarea sarcinii","featureLoadBalancingDesc":"Distribuiți cererile \xeen mod inteligent","featureUsageTrackingTitle":"Urmărirea utilizării","featureUsageTrackingDesc":"Monitorizați costurile și jetoanele","resetPassword":"Resetează parola","resetDescription":"Alegeți o metodă pentru a recupera accesul la tabloul de bord","stopServer":"Opriți serverul OmniRoute","processing":"Se procesează...","pleaseWait":"Vă rugăm să așteptați p\xe2nă c\xe2nd completăm autorizarea.","authSuccess":"Autorizare reușită!","copyUrl":"Copiați această adresă URL","accessDenied":"Acces refuzat","methodCliTitle":"Metoda 1: Resetarea CLI","methodCliDescription":"Rulați următoarea comandă pe serverul pe care rulează OmniRoute:","methodCliHint":"Acest lucru vă va solicita să setați o nouă parolă. Serverul trebuie oprit mai \xeent\xe2i.","methodManualTitle":"Metoda 2: Resetare manuală","methodManualDescription":"Ștergeți parola din baza de date și setați una nouă la pornire:","setPasswordInYour":"Setați o nouă parolă \xeen dvs","fileLabelSuffix":"fisier:","newPasswordPlaceholder":"dvs._noua_parolă","deleteSettingsFile":"Ștergeți","orRemovePasswordHashField":"sau eliminați c\xe2mpul passwordHash","restartServerWithNewPassword":"Reporniți serverul - va folosi noua parolă","backToLogin":"\xcenapoi la Logare","forgotPassword":"Ai uitat parola?"},"landing":{"brandName":"OmniRoute","navigateHome":"Navigați la acasă","toggleMenu":"Comutați meniul","featuresLink":"Caracteristici","docsLink":"Docs","github":"GitHub","versionLive":"v1.0 este acum live","oneEndpoint":"Un punct final pentru","allProviders":"Toți furnizorii de AI","heroDescription":"Proxy AI endpoint cu tablou de bord web - Un port JavaScript al CLIProxyAPI. Funcționează perfect cu Claude Code, OpenAI Codex, Cline, RooCode și alte instrumente CLI.","getStarted":"\xcencepeți","viewOnGithub":"Vizualizați pe GitHub","powerfulFeatures":"Caracteristici puternice","featuresSubtitle":"Tot ce aveți nevoie pentru a vă gestiona infrastructura AI \xeentr-un singur loc, construit pentru scară.","featureUnifiedEndpointTitle":"Punct final unificat","featureUnifiedEndpointDesc":"Accesați toți furnizorii printr-o singură adresă URL API standard.","featureEasySetupTitle":"Configurare ușoară","featureEasySetupDesc":"\xcencepeți să rulați \xeen c\xe2teva minute cu comanda npx.","featureModelFallbackTitle":"Model de rezervă","featureModelFallbackDesc":"Comutați automat furnizorii \xeen caz de eșec sau latență ridicată.","featureUsageTrackingTitle":"Urmărirea utilizării","featureUsageTrackingDesc":"Analiză detaliată și monitorizare a costurilor pentru toate modelele.","featureOAuthApiKeysTitle":"Chei OAuth și API","featureOAuthApiKeysDesc":"Gestionați \xeen siguranță acreditările \xeentr-un singur seif.","featureCloudSyncTitle":"Sincronizare \xeen cloud","featureCloudSyncDesc":"Sincronizați-vă configurațiile pe dispozitive instantaneu.","featureCliSupportTitle":"Suport CLI","featureCliSupportDesc":"Funcționează cu Claude Code, Codex, Cline, Cursor și multe altele.","featureDashboardTitle":"Tabloul de bord","featureDashboardDesc":"Tablou de bord vizual pentru analiza traficului \xeen timp real.","howItWorks":"Cum funcționează OmniRoute","howItWorksDescription":"Datele circulă fără probleme de la aplicația dvs. prin stratul nostru inteligent de rutare către cel mai bun furnizor pentru job.","howItWorksStep1Title":"1. CLI și SDK-uri","howItWorksStep1Description":"Solicitările tale pornesc de la instrumentele tale preferate sau SDK-ul nostru unificat. Doar schimbați adresa URL de bază.","howItWorksStep2Title":"2. OmniRoute Hub","howItWorksStep2Description":"Motorul nostru analizează promptul, verifică starea furnizorului și rutele pentru cea mai mică latență sau cost.","howItWorksStep3Title":"3. Furnizori AI","howItWorksStep3Description":"Solicitarea este \xeendeplinită instantaneu de OpenAI, Anthropic, Gemini sau altele.","getStartedIn30Seconds":"\xcencepeți \xeen 30 de secunde","getStartedDescription":"Instalați OmniRoute, configurați-vă furnizorii prin intermediul tabloului de bord web și \xeencepeți să direcționați cererile AI.","installOmniRoute":"Instalați OmniRoute","installStepDescription":"Rulați comanda npx pentru a porni serverul instantaneu","openDashboard":"Deschideți tabloul de bord","openDashboardStepDescription":"Configurați furnizorii și cheile API prin interfața web","routeRequests":"Cereri de traseu","routeRequestsStepDescription":"\xcendreptați instrumentele CLI către {endpoint}","terminal":"terminal","copy":"Copiere","copied":"✓ Copiat","startingOmniRoute":"Se pornește OmniRoute...","serverRunningOnLabel":"Serverul rulează","dashboardLabel":"Tabloul de bord","readyToRoute":"Gata de traseu! ✓","configureProvidersNote":"\uD83D\uDCDD Configurați furnizorii \xeen tabloul de bord sau utilizați variabile de mediu","dataLocation":"Locația datelor:","dataLocationMacLinux":" macOS/Linux:","dataLocationWindows":" Windows:","product":"Produs","dashboardLink":"Tabloul de bord","changelog":"Jurnalul modificărilor","resources":"Resurse","documentation":"Documentare","npm":"NPM","legal":"Legal","mitLicense":"Licență MIT","footerTagline":"Punctul final unificat pentru generarea AI. Conectați-vă, direcționați și gestionați cu ușurință furnizorii dvs. de AI.","copyright":"\xa9 {year} OmniRoute. Toate drepturile rezervate.","flowToolClaudeCode":"Claude Cod","flowToolOpenAICodex":"OpenAI Codex","flowToolCline":"Cline","flowToolCursor":"Cursorul","flowProviderOpenAI":"OpenAI","flowProviderAnthropic":"antropică","flowProviderGemini":"Gemeni","flowProviderGithubCopilot":"Copilotul GitHub","interactiveDiagram":"Diagrama interactivă vizibilă pe desktop","ctaTitle":"Sunteți gata să vă simplificați infrastructura AI?","ctaDescription":"Alăturați-vă dezvoltatorilor care \xeeși eficientizează integrările AI cu OmniRoute. Open source și liber pentru a \xeencepe.","startFree":"\xcencepe gratuit","readDocumentation":"Citiți documentația"},"docs":{"title":"Documentare","quickStart":"Pornire rapidă","features":"Caracteristici","supportedProviders":"Furnizori acceptați","supportedProvidersToc":"Furnizorii","commonUseCases":"Cazuri comune de utilizare","clientCompatibility":"Compatibilitate client","apiReference":"Referință API","method":"Metoda","path":"Calea","notes":"Note","modelPrefixes":"Prefixe de model","prefix":"Prefix","troubleshooting":"Depanare","supportsChat":"Acceptă at\xe2t punctele finale de chat, c\xe2t și cele de răspuns.","oauthAutoRefresh":"Conexiune OAuth cu re\xeemprospătare automată a simbolului.","fullStreaming":"Suport complet pentru streaming pentru toate modelele.","docsLabel":"Docs","docsHeroDescription":"Gateway AI pentru LLM cu mai mulți furnizori. Un punct final pentru OpenAI, Anthropic, Gemini, GitHub Copilot, Claude Code, Cursor și peste 20 de furnizori.","openDashboard":"Deschideți tabloul de bord","endpointPage":"Pagina finală","github":"GitHub","reportIssue":"Raportați o problemă","onThisPage":"Pe această pagină","documentationVersion":"Documentație - v{version}","quickStartStep1Title":"1. Instalați și rulați","quickStartStep1Prefix":"Fugi","quickStartStep1Middle":"sau clonează din GitHub și rulează","quickStartStep2Title":"2. Creați cheia API","quickStartStep2Text":"Accesați Endpoint -> Chei \xeenregistrate. Generați o cheie pentru fiecare mediu.","quickStartStep3Title":"3. Conectați furnizorii","quickStartStep3Text":"Adăugați conturi de furnizor prin autentificare OAuth, cheie API sau conexiune automată gratuită.","quickStartStep4Title":"4. Setați adresa URL a bazei de clienți","quickStartStep4Prefix":"\xcendreptați-vă clientul IDE sau API către","quickStartStep4Suffix":"Utilizați prefixul furnizorului, de exemplu","featureRoutingTitle":"Rutare cu mai mulți furnizori","featureRoutingText":"Dirijați cererile către peste 30 de furnizori de AI printr-un singur punct final compatibil cu OpenAI. Acceptă API-uri de chat, răspunsuri, audio și imagine.","featureCombosTitle":"Combo și echilibrare","featureCombosText":"Creați combinații de modele cu lanțuri de rezervă și strategii de echilibrare: round-robin, prioritare, aleatorii, cel mai puțin utilizate și optimizate pentru costuri.","featureUsageTitle":"Urmărirea utilizării și a costurilor","featureUsageText":"Numărarea jetonelor \xeen timp real, calculul costurilor pe furnizor/model și detalierea utilizării \xeen funcție de cheie API și cont.","featureAnalyticsTitle":"Tabloul de bord Analytics","featureAnalyticsText":"Analiză vizuală cu diagrame pentru solicitări, jetoane, erori, latență, costuri și popularitatea modelului de-a lungul timpului.","featureHealthTitle":"Monitorizarea sănătății","featureHealthText":"Verificări live ale stării de sănătate, starea furnizorului, stările \xeentrerupătoarelor de circuit și detectarea automată a limitei ratei cu retragere exponențială.","featureCliTitle":"Instrumente CLI","featureCliText":"Gestionați configurațiile IDE, exportați/importați copii de siguranță, descoperiți profiluri de codex și configurați setările din tabloul de bord.","featureSecurityTitle":"Securitate și politici","featureSecurityText":"Autentificare cu cheie API, filtrare IP, protectie pentru injectare promptă, politici de domeniu, gestionare a sesiunilor și \xeenregistrare de audit.","featureCloudSyncTitle":"Sincronizare \xeen cloud","featureCloudSyncText":"Sincronizați-vă configurația cu Cloudflare Workers pentru acces de la distanță cu acreditări criptate și failover automat.","providersAcrossConnectionTypes":"{count} furnizori din trei tipuri de conexiune.","manageProviders":"Gestionați furnizorii","providersCount":"{count} furnizori","providerTypeFree":"Nivel gratuit","providerTypeOAuth":"OAuth","providerTypeApiKey":"Cheia API","useCaseSingleEndpointTitle":"Punct final unic pentru mulți furnizori","useCaseSingleEndpointText":"Indicați clienții către o adresă URL de bază și rutați după prefix de model (de exemplu: gh/, cc/, kr/, openai/).","useCaseFallbackTitle":"Fallback și schimbare de model cu combo","useCaseFallbackText":"Creați modele combinate \xeen Dashboard și mențineți stabilă configurația clientului \xeen timp ce furnizorii se rotesc intern.","useCaseUsageVisibilityTitle":"Utilizare, cost și vizibilitate depanare","useCaseUsageVisibilityText":"Urmăriți jetoanele și costul \xeen funcție de furnizor, cont și cheie API \xeen filele Utilizare și Analytics.","clientCherryStudioTitle":"Studioul Cherry","baseUrlLabel":"Adresa URL de bază","chatEndpointLabel":"Punct final de chat","modelRecommendationLabel":"Recomandare model: prefix explicit","clientCodexTitle":"Modele Codex / GitHub Copilot","clientCodexBullet1":"Utilizați ID-uri de model cu","clientCodexBullet2":"Modelele din familia Codex au traseu automat către","clientCodexBullet3":"Modelele non-Codex continuă","clientCursorTitle":"Cursor IDE","clientCursorBullet1":"Utilizați","clientCursorBullet1Suffix":"prefix pentru modelele Cursor.","clientCursorBullet2":"Conexiune OAuth - conectați-vă din pagina Furnizori.","clientClaudeTitle":"Claude Code / Antigravitație","clientClaudeBullet1Prefix":"Utilizați","clientClaudeBullet1Middle":"(Claude) sau","clientClaudeBullet1Suffix":"(antigravitație) prefix.","endpointChatNote":"Punct final de chat compatibil cu OpenAI (implicit).","endpointResponsesNote":"Punct final API pentru răspunsuri (Codex, serie o).","endpointModelsNote":"Catalog model pentru toți furnizorii conectați.","endpointAudioNote":"Transcriere audio (Deepgram, AssemblyAI).","endpointImagesNote":"Generarea imaginii (NanoBanana).","endpointRewriteChatNote":"Rescrie ajutor pentru clienți fără /v1.","endpointRewriteResponsesNote":"Rescrie ajutor pentru răspunsuri fără /v1.","endpointRewriteModelsNote":"Rescrierea de ajutor pentru descoperirea modelului fără /v1.","modelPrefixesDescriptionStart":"Utilizați prefixul furnizorului \xeenainte de numele modelului pentru a direcționa către un anumit furnizor. Exemplu:","modelPrefixesDescriptionEnd":"rute către GitHub Copilot.","provider":"Furnizor","type":"Tip","troubleshootingModelRouting":"Dacă clientul eșuează cu rutarea modelului, utilizați furnizorul/modelul explicit (de exemplu: gh/gpt-5.1-codex).","troubleshootingAmbiguousModels":"Dacă primiți erori de model ambigue, alegeți un prefix de furnizor \xeen loc de un ID de model simplu.","troubleshootingCodexFamily":"Pentru modelele din familia GitHub Codex, păstrați modelul ca gh/<codex-model>; routerul selectează/răspunde automat.","troubleshootingTestConnection":"Utilizați Tabloul de bord > Furnizori > Testați conexiunea \xeenainte de a testa de la IDE-uri sau clienți externi.","troubleshootingCircuitBreaker":"Dacă un furnizor arată \xeentrerupătorul deschis, așteptați răcirea sau verificați pagina Sănătate pentru detalii.","troubleshootingOAuth":"Pentru furnizorii OAuth, re-autentificați-vă dacă tokenurile expiră. Verificați indicatorul de stare a cardului furnizorului."},"legal":{"privacyPolicy":"Politica de confidențialitate","termsOfService":"Termeni și condiții","providerConfigurations":"Configurațiile furnizorului","apiKeys":"Chei API","usageLogs":"Jurnalele de utilizare","applicationSettings":"Setările aplicației","viewExportAnalytics":"Vizualizați și exportați analizele de utilizare","clearHistory":"Ștergeți istoricul utilizării \xeen orice moment","configureRetention":"Configurați politicile de păstrare a jurnalelor","backupRestore":"Faceți backup și restaurați baza de date","privacyMetadataTitle":"Politica de confidențialitate | OmniRoute","privacyMetadataDescription":"Politica de confidențialitate pentru routerul proxy API OmniRoute AI.","termsMetadataTitle":"Termeni și condiții | OmniRoute","termsMetadataDescription":"Termenii și condițiile pentru routerul proxy API OmniRoute AI.","backToHome":"\xcenapoi acasă","lastUpdated":"Ultima actualizare: {date}","policyLastUpdatedDate":"13 februarie 2026","listSeparator":"-","questionsVisit":"\xcentrebări? Vizitează-ne","githubRepository":"Depozitul GitHub","privacySection1Title":"1. Local-First Architecture","privacySection1Text":"OmniRoute este proiectat ca o aplicație mai \xeent\xe2i locală. Toate procesarea și stocarea datelor au loc \xeen \xeentregime pe mașina dvs. Nu există un server centralizat care să vă colecteze informațiile.","privacySection2Title":"2. Datele pe care le stocăm","privacyDataStoredIn":"Următoarele date sunt stocate local \xeen","privacyDataProviderConfigurationsDesc":"adrese URL de conexiune, tipuri de furnizori și setări de prioritate","privacyDataApiKeysDesc":"criptat și stocat local pentru autentificare cu furnizorii de AI","privacyDataUsageLogsDesc":"numărul de solicitări, utilizarea token-ului, numele modelelor, marcajele de timp și timpii de răspuns","privacyDataApplicationSettingsDesc":"preferințele temei, strategia de rutare și configurațiile combinate","privacySection3Title":"3. Fără telemetrie","privacySection3Text":"OmniRoute nu colectează telemetrie, analize sau rapoarte de blocare. Nicio dată nu ne sunt trimise nouă sau unei terțe părți. Tiparele dvs. de utilizare, apelurile API și configurațiile răm\xe2n \xeen \xeentregime private.","privacySection4Title":"4. Furnizori AI terți","privacySection4Text":"C\xe2nd efectuați apeluri API prin OmniRoute, solicitările dvs. sunt redirecționate către furnizorii de AI pe care i-ați configurat (de exemplu: OpenAI, Anthropic, Google). Acești furnizori au propriile lor politici de confidențialitate care guvernează modul \xeen care vă gestionează datele. Vă rugăm să revizuiți:","privacyOpenAiPolicy":"Politica de confidențialitate OpenAI","privacyAnthropicPolicy":"Politica de confidențialitate antropică","privacyGooglePolicy":"Politica de confidențialitate Google","privacySection5Title":"5. Cloud Sync (Opțional)","privacySection5Text":"Dacă activați caracteristica opțională de sincronizare \xeen cloud, configurațiile furnizorului și cheile API pot fi transmise la un punct final de cloud configurat. Această funcție este dezactivată \xeen mod implicit și necesită \xeenscriere explicită.","privacySection6Title":"6. \xcenregistrare","privacyLoggingIntro":"Jurnalele de solicitări pot fi configurate prin setările tabloului de bord. Puteți:","privacySection7Title":"7. Drepturile tale","privacySection7TextStart":"Deoarece toate datele sunt stocate local, aveți control deplin. Vă puteți șterge datele oric\xe2nd prin eliminarea","privacySection7TextEnd":"director sau folosind funcțiile de backup și restaurare a bazei de date din tabloul de bord.","termsSection1Title":"1. Prezentare generală","termsSection1Text":"OmniRoute este un router proxy API AI care funcționează \xeen \xeentregime pe mașina dumneavoastră. Acesta direcționează cererile către mai mulți furnizori de AI cu echilibrare a sarcinii, failover și urmărire a utilizării.","termsSection2Title":"2. Responsabilitățile utilizatorului","termsResponsibilityApiKeys":"Sunteți singurul responsabil pentru gestionarea propriilor chei și acreditări API pentru furnizorii terți de AI (OpenAI, Anthropic, Google etc.).","termsResponsibilityCompliance":"Trebuie să respectați termenii și condițiile fiecărui furnizor de AI al cărui API \xeel accesați prin OmniRoute.","termsResponsibilitySecurity":"Sunteți responsabil pentru securitatea instalării locale OmniRoute, inclusiv setarea unei parole și restricționarea accesului la rețea.","termsSection3Title":"3. Cum funcționează","termsSection3Text":"OmniRoute acționează ca un proxy intermediar. Apelurile API trimise către OmniRoute sunt traduse și redirecționate către furnizorii dvs. de AI configurați. OmniRoute nu modifică conținutul solicitărilor sau răspunsurilor dumneavoastră dincolo de traducerea protocolului necesară.","termsSection4Title":"4. Manipularea datelor","termsDataStoredLocally":"Toate datele sunt stocate local pe mașina dvs. \xeentr-o bază de date SQLite.","termsNoTransmission":"OmniRoute nu transmite date către servere externe dec\xe2t dacă activați \xeen mod explicit funcțiile de sincronizare \xeen cloud.","termsDataLocationText":"Jurnalele de utilizare, cheile API și configurația sunt stocate \xeen","termsSection5Title":"5. Exonerare de responsabilitate","termsSection5Text":"OmniRoute este furnizat „ca atare”, fără garanții de niciun fel. Nu suntem responsabili pentru costurile suportate prin utilizarea API-ului, \xeentreruperile serviciilor sau pierderea datelor. Păstrați \xeentotdeauna copii de siguranță ale configurației dvs.","termsSection6Title":"6. Open Source","termsSection6Text":"OmniRoute este un software open-source. Sunteți liber să \xeel inspectați, să modificați și să \xeel distribuiți \xeen conformitate cu termenii licenței sale."}}')}};
|