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.
Files changed (843) hide show
  1. package/README.ar.md +4 -0
  2. package/README.bg.md +4 -0
  3. package/README.da.md +4 -0
  4. package/README.de.md +13 -9
  5. package/README.es.md +13 -9
  6. package/README.fi.md +4 -0
  7. package/README.fr.md +13 -9
  8. package/README.he.md +29 -25
  9. package/README.hu.md +4 -0
  10. package/README.id.md +4 -0
  11. package/README.in.md +4 -0
  12. package/README.it.md +13 -9
  13. package/README.ja.md +4 -0
  14. package/README.ko.md +29 -25
  15. package/README.md +45 -0
  16. package/README.ms.md +4 -0
  17. package/README.nl.md +4 -0
  18. package/README.no.md +4 -0
  19. package/README.phi.md +4 -0
  20. package/README.pl.md +4 -0
  21. package/README.pt-BR.md +29 -25
  22. package/README.pt.md +4 -0
  23. package/README.ro.md +4 -0
  24. package/README.ru.md +13 -9
  25. package/README.sk.md +4 -0
  26. package/README.sv.md +4 -0
  27. package/README.th.md +16 -12
  28. package/README.uk-UA.md +4 -0
  29. package/README.vi.md +4 -0
  30. package/README.zh-CN.md +26 -22
  31. package/app/.env +122 -0
  32. package/app/.next/BUILD_ID +1 -1
  33. package/app/.next/app-path-routes-manifest.json +30 -28
  34. package/app/.next/build-manifest.json +3 -3
  35. package/app/.next/prerender-manifest.json +3 -3
  36. package/app/.next/required-server-files.json +1 -1
  37. package/app/.next/routes-manifest.json +12 -0
  38. package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js +2 -2
  39. package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
  40. package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  41. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js +2 -2
  42. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page.js.nft.json +1 -1
  43. package/app/.next/server/app/(dashboard)/dashboard/api-manager/page_client-reference-manifest.js +1 -1
  44. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js +2 -2
  45. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page.js.nft.json +1 -1
  46. package/app/.next/server/app/(dashboard)/dashboard/audit-log/page_client-reference-manifest.js +1 -1
  47. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +3 -3
  48. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  49. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  50. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  51. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  52. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  53. package/app/.next/server/app/(dashboard)/dashboard/costs/page.js +2 -2
  54. package/app/.next/server/app/(dashboard)/dashboard/costs/page.js.nft.json +1 -1
  55. package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
  56. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  57. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  58. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  59. package/app/.next/server/app/(dashboard)/dashboard/health/page.js +2 -2
  60. package/app/.next/server/app/(dashboard)/dashboard/health/page.js.nft.json +1 -1
  61. package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  62. package/app/.next/server/app/(dashboard)/dashboard/limits/page.js +2 -2
  63. package/app/.next/server/app/(dashboard)/dashboard/limits/page.js.nft.json +1 -1
  64. package/app/.next/server/app/(dashboard)/dashboard/limits/page_client-reference-manifest.js +1 -1
  65. package/app/.next/server/app/(dashboard)/dashboard/logs/page.js +2 -2
  66. package/app/.next/server/app/(dashboard)/dashboard/logs/page.js.nft.json +1 -1
  67. package/app/.next/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +1 -1
  68. package/app/.next/server/app/(dashboard)/dashboard/media/page.js +2 -2
  69. package/app/.next/server/app/(dashboard)/dashboard/media/page.js.nft.json +1 -1
  70. package/app/.next/server/app/(dashboard)/dashboard/media/page_client-reference-manifest.js +1 -1
  71. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js +2 -2
  72. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js.nft.json +1 -1
  73. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
  74. package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
  75. package/app/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  76. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  77. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  78. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  79. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  80. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
  81. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  82. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  83. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  84. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  85. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  86. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  87. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  88. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  89. package/app/.next/server/app/(dashboard)/dashboard/settings/page.js +2 -2
  90. package/app/.next/server/app/(dashboard)/dashboard/settings/page.js.nft.json +1 -1
  91. package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  92. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js +2 -2
  93. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
  94. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  95. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +3 -3
  96. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  97. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  98. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  99. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  100. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  101. package/app/.next/server/app/_global-error/page.js +3 -3
  102. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  103. package/app/.next/server/app/_global-error.html +2 -2
  104. package/app/.next/server/app/_global-error.rsc +4 -4
  105. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +4 -4
  106. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  107. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  108. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  109. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
  110. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  111. package/app/.next/server/app/_not-found/page.js +2 -2
  112. package/app/.next/server/app/_not-found/page.js.nft.json +1 -1
  113. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  114. package/app/.next/server/app/api/auth/login/route.js +1 -1
  115. package/app/.next/server/app/api/auth/login/route.js.nft.json +1 -1
  116. package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  117. package/app/.next/server/app/api/auth/logout/route.js +1 -1
  118. package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  119. package/app/.next/server/app/api/auth/status/route.js +1 -1
  120. package/app/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  121. package/app/.next/server/app/api/cache/route.js +1 -1
  122. package/app/.next/server/app/api/cache/route_client-reference-manifest.js +1 -1
  123. package/app/.next/server/app/api/cache/stats/route.js +1 -1
  124. package/app/.next/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
  125. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  126. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  127. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  128. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +2 -2
  129. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  130. package/app/.next/server/app/api/cli-tools/backups/route.js +2 -2
  131. package/app/.next/server/app/api/cli-tools/backups/route_client-reference-manifest.js +1 -1
  132. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
  133. package/app/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  134. package/app/.next/server/app/api/cli-tools/cline-settings/route.js +2 -2
  135. package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  136. package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +2 -2
  137. package/app/.next/server/app/api/cli-tools/codex-profiles/route_client-reference-manifest.js +1 -1
  138. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
  139. package/app/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  140. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +2 -2
  141. package/app/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  142. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route.js +1 -1
  143. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route_client-reference-manifest.js +1 -1
  144. package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  145. package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  146. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  147. package/app/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  148. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +2 -2
  149. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route_client-reference-manifest.js +1 -1
  150. package/app/.next/server/app/api/cli-tools/status/route.js +2 -2
  151. package/app/.next/server/app/api/cli-tools/status/route_client-reference-manifest.js +1 -1
  152. package/app/.next/server/app/api/cloud/auth/route.js +1 -1
  153. package/app/.next/server/app/api/cloud/auth/route.js.nft.json +1 -1
  154. package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +1 -1
  155. package/app/.next/server/app/api/cloud/credentials/update/route.js +1 -1
  156. package/app/.next/server/app/api/cloud/credentials/update/route.js.nft.json +1 -1
  157. package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +1 -1
  158. package/app/.next/server/app/api/cloud/model/resolve/route.js +1 -1
  159. package/app/.next/server/app/api/cloud/model/resolve/route.js.nft.json +1 -1
  160. package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +1 -1
  161. package/app/.next/server/app/api/cloud/models/alias/route.js +1 -1
  162. package/app/.next/server/app/api/cloud/models/alias/route.js.nft.json +1 -1
  163. package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +1 -1
  164. package/app/.next/server/app/api/combos/[id]/route.js +1 -1
  165. package/app/.next/server/app/api/combos/[id]/route.js.nft.json +1 -1
  166. package/app/.next/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  167. package/app/.next/server/app/api/combos/metrics/route.js +1 -1
  168. package/app/.next/server/app/api/combos/metrics/route_client-reference-manifest.js +1 -1
  169. package/app/.next/server/app/api/combos/route.js +1 -1
  170. package/app/.next/server/app/api/combos/route.js.nft.json +1 -1
  171. package/app/.next/server/app/api/combos/route_client-reference-manifest.js +1 -1
  172. package/app/.next/server/app/api/combos/test/route.js +1 -1
  173. package/app/.next/server/app/api/combos/test/route.js.nft.json +1 -1
  174. package/app/.next/server/app/api/combos/test/route_client-reference-manifest.js +1 -1
  175. package/app/.next/server/app/api/compliance/audit-log/route.js +1 -1
  176. package/app/.next/server/app/api/compliance/audit-log/route_client-reference-manifest.js +1 -1
  177. package/app/.next/server/app/api/db-backups/export/route.js +1 -1
  178. package/app/.next/server/app/api/db-backups/export/route_client-reference-manifest.js +1 -1
  179. package/app/.next/server/app/api/db-backups/exportAll/route.js +1 -1
  180. package/app/.next/server/app/api/db-backups/exportAll/route_client-reference-manifest.js +1 -1
  181. package/app/.next/server/app/api/db-backups/import/route.js +1 -1
  182. package/app/.next/server/app/api/db-backups/import/route_client-reference-manifest.js +1 -1
  183. package/app/.next/server/app/api/db-backups/route.js +1 -1
  184. package/app/.next/server/app/api/db-backups/route.js.nft.json +1 -1
  185. package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
  186. package/app/.next/server/app/api/evals/[suiteId]/route.js +1 -1
  187. package/app/.next/server/app/api/evals/[suiteId]/route_client-reference-manifest.js +1 -1
  188. package/app/.next/server/app/api/evals/route.js +1 -1
  189. package/app/.next/server/app/api/evals/route_client-reference-manifest.js +1 -1
  190. package/app/.next/server/app/api/fallback/chains/route.js +2 -2
  191. package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
  192. package/app/.next/server/app/api/init/route.js +1 -1
  193. package/app/.next/server/app/api/init/route.js.nft.json +1 -1
  194. package/app/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  195. package/app/.next/server/app/api/keys/[id]/route.js +1 -1
  196. package/app/.next/server/app/api/keys/[id]/route.js.nft.json +1 -1
  197. package/app/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  198. package/app/.next/server/app/api/keys/route.js +1 -1
  199. package/app/.next/server/app/api/keys/route.js.nft.json +1 -1
  200. package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
  201. package/app/.next/server/app/api/logs/console/route.js +1 -1
  202. package/app/.next/server/app/api/logs/console/route_client-reference-manifest.js +1 -1
  203. package/app/.next/server/app/api/models/alias/route.js +1 -1
  204. package/app/.next/server/app/api/models/alias/route.js.nft.json +1 -1
  205. package/app/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  206. package/app/.next/server/app/api/models/availability/route.js +1 -1
  207. package/app/.next/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  208. package/app/.next/server/app/api/models/catalog/route.js +2 -2
  209. package/app/.next/server/app/api/models/catalog/route.js.nft.json +1 -1
  210. package/app/.next/server/app/api/models/catalog/route_client-reference-manifest.js +1 -1
  211. package/app/.next/server/app/api/models/route.js +2 -2
  212. package/app/.next/server/app/api/models/route.js.nft.json +1 -1
  213. package/app/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  214. package/app/.next/server/app/api/monitoring/health/route.js +2 -2
  215. package/app/.next/server/app/api/monitoring/health/route.js.nft.json +1 -1
  216. package/app/.next/server/app/api/monitoring/health/route_client-reference-manifest.js +1 -1
  217. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js +2 -2
  218. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  219. package/app/.next/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  220. package/app/.next/server/app/api/oauth/cursor/auto-import/route.js +1 -1
  221. package/app/.next/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  222. package/app/.next/server/app/api/oauth/cursor/import/route.js +1 -1
  223. package/app/.next/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  224. package/app/.next/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  225. package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  226. package/app/.next/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  227. package/app/.next/server/app/api/oauth/kiro/import/route.js +1 -1
  228. package/app/.next/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  229. package/app/.next/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  230. package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  231. package/app/.next/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  232. package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  233. package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  234. package/app/.next/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  235. package/app/.next/server/app/api/policies/route.js +2 -2
  236. package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
  237. package/app/.next/server/app/api/pricing/defaults/route.js +1 -1
  238. package/app/.next/server/app/api/pricing/defaults/route_client-reference-manifest.js +1 -1
  239. package/app/.next/server/app/api/pricing/models/route.js +1 -1
  240. package/app/.next/server/app/api/pricing/models/route.js.nft.json +1 -1
  241. package/app/.next/server/app/api/pricing/models/route_client-reference-manifest.js +1 -1
  242. package/app/.next/server/app/api/pricing/route.js +1 -1
  243. package/app/.next/server/app/api/pricing/route.js.nft.json +1 -1
  244. package/app/.next/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  245. package/app/.next/server/app/api/provider-metrics/route.js +2 -2
  246. package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
  247. package/app/.next/server/app/api/provider-models/route.js +1 -1
  248. package/app/.next/server/app/api/provider-models/route.js.nft.json +1 -1
  249. package/app/.next/server/app/api/provider-models/route_client-reference-manifest.js +1 -1
  250. package/app/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
  251. package/app/.next/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  252. package/app/.next/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  253. package/app/.next/server/app/api/provider-nodes/route.js +2 -2
  254. package/app/.next/server/app/api/provider-nodes/route.js.nft.json +1 -1
  255. package/app/.next/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  256. package/app/.next/server/app/api/provider-nodes/validate/route.js +1 -1
  257. package/app/.next/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  258. package/app/.next/server/app/api/providers/[id]/models/route.js +2 -2
  259. package/app/.next/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  260. package/app/.next/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  261. package/app/.next/server/app/api/providers/[id]/route.js +1 -1
  262. package/app/.next/server/app/api/providers/[id]/route.js.nft.json +1 -1
  263. package/app/.next/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  264. package/app/.next/server/app/api/providers/[id]/test/route.js +1 -1
  265. package/app/.next/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  266. package/app/.next/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  267. package/app/.next/server/app/api/providers/client/route.js +1 -1
  268. package/app/.next/server/app/api/providers/client/route.js.nft.json +1 -1
  269. package/app/.next/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  270. package/app/.next/server/app/api/providers/route.js +2 -2
  271. package/app/.next/server/app/api/providers/route.js.nft.json +1 -1
  272. package/app/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  273. package/app/.next/server/app/api/providers/test-batch/route.js +1 -1
  274. package/app/.next/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  275. package/app/.next/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  276. package/app/.next/server/app/api/providers/validate/route.js +1 -1
  277. package/app/.next/server/app/api/providers/validate/route.js.nft.json +1 -1
  278. package/app/.next/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  279. package/app/.next/server/app/api/rate-limit/route.js +1 -1
  280. package/app/.next/server/app/api/rate-limit/route_client-reference-manifest.js +1 -1
  281. package/app/.next/server/app/api/rate-limits/route.js +1 -1
  282. package/app/.next/server/app/api/rate-limits/route.js.nft.json +1 -1
  283. package/app/.next/server/app/api/rate-limits/route_client-reference-manifest.js +1 -1
  284. package/app/.next/server/app/api/resilience/reset/route.js +1 -1
  285. package/app/.next/server/app/api/resilience/reset/route_client-reference-manifest.js +1 -1
  286. package/app/.next/server/app/api/resilience/route.js +1 -1
  287. package/app/.next/server/app/api/resilience/route.js.nft.json +1 -1
  288. package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
  289. package/app/.next/server/app/api/restart/route.js +1 -1
  290. package/app/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  291. package/app/.next/server/app/api/sessions/route.js +1 -1
  292. package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  293. package/app/.next/server/app/api/settings/background-degradation/route.js +1 -0
  294. package/app/.next/server/app/api/settings/background-degradation/route.js.nft.json +1 -0
  295. package/app/.next/server/app/api/settings/background-degradation/route_client-reference-manifest.js +1 -0
  296. package/app/.next/server/app/api/settings/combo-defaults/route.js +1 -1
  297. package/app/.next/server/app/api/settings/combo-defaults/route.js.nft.json +1 -1
  298. package/app/.next/server/app/api/settings/combo-defaults/route_client-reference-manifest.js +1 -1
  299. package/app/.next/server/app/api/settings/ip-filter/route.js +1 -1
  300. package/app/.next/server/app/api/settings/ip-filter/route_client-reference-manifest.js +1 -1
  301. package/app/.next/server/app/api/settings/model-aliases/route.js +1 -0
  302. package/app/.next/server/app/api/settings/model-aliases/route.js.nft.json +1 -0
  303. package/app/.next/server/app/api/settings/model-aliases/route_client-reference-manifest.js +1 -0
  304. package/app/.next/server/app/api/settings/proxy/route.js +1 -1
  305. package/app/.next/server/app/api/settings/proxy/route.js.nft.json +1 -1
  306. package/app/.next/server/app/api/settings/proxy/route_client-reference-manifest.js +1 -1
  307. package/app/.next/server/app/api/settings/proxy/test/route.js +1 -1
  308. package/app/.next/server/app/api/settings/proxy/test/route_client-reference-manifest.js +1 -1
  309. package/app/.next/server/app/api/settings/require-login/route.js +1 -1
  310. package/app/.next/server/app/api/settings/require-login/route.js.nft.json +1 -1
  311. package/app/.next/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  312. package/app/.next/server/app/api/settings/route.js +1 -1
  313. package/app/.next/server/app/api/settings/route.js.nft.json +1 -1
  314. package/app/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  315. package/app/.next/server/app/api/settings/system-prompt/route.js +1 -1
  316. package/app/.next/server/app/api/settings/system-prompt/route.js.nft.json +1 -1
  317. package/app/.next/server/app/api/settings/system-prompt/route_client-reference-manifest.js +1 -1
  318. package/app/.next/server/app/api/settings/thinking-budget/route.js +1 -1
  319. package/app/.next/server/app/api/settings/thinking-budget/route.js.nft.json +1 -1
  320. package/app/.next/server/app/api/settings/thinking-budget/route_client-reference-manifest.js +1 -1
  321. package/app/.next/server/app/api/shutdown/route.js +1 -1
  322. package/app/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  323. package/app/.next/server/app/api/storage/health/route.js +1 -1
  324. package/app/.next/server/app/api/storage/health/route_client-reference-manifest.js +1 -1
  325. package/app/.next/server/app/api/sync/cloud/route.js +1 -1
  326. package/app/.next/server/app/api/sync/cloud/route.js.nft.json +1 -1
  327. package/app/.next/server/app/api/sync/cloud/route_client-reference-manifest.js +1 -1
  328. package/app/.next/server/app/api/sync/initialize/route.js +1 -1
  329. package/app/.next/server/app/api/sync/initialize/route.js.nft.json +1 -1
  330. package/app/.next/server/app/api/sync/initialize/route_client-reference-manifest.js +1 -1
  331. package/app/.next/server/app/api/tags/route.js +1 -1
  332. package/app/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
  333. package/app/.next/server/app/api/telemetry/summary/route.js +1 -1
  334. package/app/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
  335. package/app/.next/server/app/api/token-health/route.js +1 -1
  336. package/app/.next/server/app/api/token-health/route.js.nft.json +1 -1
  337. package/app/.next/server/app/api/token-health/route_client-reference-manifest.js +1 -1
  338. package/app/.next/server/app/api/translator/detect/route.js +1 -1
  339. package/app/.next/server/app/api/translator/detect/route_client-reference-manifest.js +1 -1
  340. package/app/.next/server/app/api/translator/history/route.js +1 -1
  341. package/app/.next/server/app/api/translator/history/route_client-reference-manifest.js +1 -1
  342. package/app/.next/server/app/api/translator/load/route.js +1 -1
  343. package/app/.next/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  344. package/app/.next/server/app/api/translator/save/route.js +1 -1
  345. package/app/.next/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  346. package/app/.next/server/app/api/translator/send/route.js +1 -1
  347. package/app/.next/server/app/api/translator/send/route.js.nft.json +1 -1
  348. package/app/.next/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  349. package/app/.next/server/app/api/translator/translate/route.js +1 -1
  350. package/app/.next/server/app/api/translator/translate/route.js.nft.json +1 -1
  351. package/app/.next/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  352. package/app/.next/server/app/api/usage/[connectionId]/route.js +1 -1
  353. package/app/.next/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  354. package/app/.next/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  355. package/app/.next/server/app/api/usage/analytics/route.js +1 -1
  356. package/app/.next/server/app/api/usage/analytics/route.js.nft.json +1 -1
  357. package/app/.next/server/app/api/usage/analytics/route_client-reference-manifest.js +1 -1
  358. package/app/.next/server/app/api/usage/budget/route.js +2 -2
  359. package/app/.next/server/app/api/usage/budget/route_client-reference-manifest.js +1 -1
  360. package/app/.next/server/app/api/usage/call-logs/[id]/route.js +1 -1
  361. package/app/.next/server/app/api/usage/call-logs/[id]/route.js.nft.json +1 -1
  362. package/app/.next/server/app/api/usage/call-logs/[id]/route_client-reference-manifest.js +1 -1
  363. package/app/.next/server/app/api/usage/call-logs/route.js +1 -1
  364. package/app/.next/server/app/api/usage/call-logs/route.js.nft.json +1 -1
  365. package/app/.next/server/app/api/usage/call-logs/route_client-reference-manifest.js +1 -1
  366. package/app/.next/server/app/api/usage/history/route.js +1 -1
  367. package/app/.next/server/app/api/usage/history/route.js.nft.json +1 -1
  368. package/app/.next/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  369. package/app/.next/server/app/api/usage/logs/route.js +1 -1
  370. package/app/.next/server/app/api/usage/logs/route.js.nft.json +1 -1
  371. package/app/.next/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
  372. package/app/.next/server/app/api/usage/proxy-logs/route.js +1 -1
  373. package/app/.next/server/app/api/usage/proxy-logs/route_client-reference-manifest.js +1 -1
  374. package/app/.next/server/app/api/usage/request-logs/route.js +1 -1
  375. package/app/.next/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  376. package/app/.next/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  377. package/app/.next/server/app/api/v1/api/chat/route.js +1 -1
  378. package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  379. package/app/.next/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  380. package/app/.next/server/app/api/v1/audio/speech/route.js +1 -1
  381. package/app/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  382. package/app/.next/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  383. package/app/.next/server/app/api/v1/audio/transcriptions/route.js +1 -1
  384. package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  385. package/app/.next/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  386. package/app/.next/server/app/api/v1/chat/completions/route.js +1 -1
  387. package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  388. package/app/.next/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  389. package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
  390. package/app/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  391. package/app/.next/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  392. package/app/.next/server/app/api/v1/images/generations/route.js +1 -1
  393. package/app/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  394. package/app/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  395. package/app/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
  396. package/app/.next/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  397. package/app/.next/server/app/api/v1/messages/route.js +1 -1
  398. package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
  399. package/app/.next/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  400. package/app/.next/server/app/api/v1/models/route.js +2 -2
  401. package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
  402. package/app/.next/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  403. package/app/.next/server/app/api/v1/moderations/route.js +1 -1
  404. package/app/.next/server/app/api/v1/moderations/route.js.nft.json +1 -1
  405. package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
  406. package/app/.next/server/app/api/v1/music/generations/route.js +1 -1
  407. package/app/.next/server/app/api/v1/music/generations/route.js.nft.json +1 -1
  408. package/app/.next/server/app/api/v1/music/generations/route_client-reference-manifest.js +1 -1
  409. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js +1 -1
  410. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js.nft.json +1 -1
  411. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route_client-reference-manifest.js +1 -1
  412. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js +1 -1
  413. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js.nft.json +1 -1
  414. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route_client-reference-manifest.js +1 -1
  415. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js +1 -1
  416. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js.nft.json +1 -1
  417. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route_client-reference-manifest.js +1 -1
  418. package/app/.next/server/app/api/v1/rerank/route.js +1 -1
  419. package/app/.next/server/app/api/v1/rerank/route.js.nft.json +1 -1
  420. package/app/.next/server/app/api/v1/rerank/route_client-reference-manifest.js +1 -1
  421. package/app/.next/server/app/api/v1/responses/route.js +1 -1
  422. package/app/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
  423. package/app/.next/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  424. package/app/.next/server/app/api/v1/route.js +1 -1
  425. package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
  426. package/app/.next/server/app/api/v1/videos/generations/route.js +1 -1
  427. package/app/.next/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
  428. package/app/.next/server/app/api/v1/videos/generations/route_client-reference-manifest.js +1 -1
  429. package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
  430. package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  431. package/app/.next/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  432. package/app/.next/server/app/api/v1beta/models/route.js +2 -2
  433. package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  434. package/app/.next/server/app/callback/page.js +2 -2
  435. package/app/.next/server/app/callback/page.js.nft.json +1 -1
  436. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  437. package/app/.next/server/app/docs/page.js +3 -3
  438. package/app/.next/server/app/docs/page.js.nft.json +1 -1
  439. package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  440. package/app/.next/server/app/forbidden/page.js +2 -2
  441. package/app/.next/server/app/forbidden/page.js.nft.json +1 -1
  442. package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
  443. package/app/.next/server/app/forgot-password/page.js +2 -2
  444. package/app/.next/server/app/forgot-password/page.js.nft.json +1 -1
  445. package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
  446. package/app/.next/server/app/landing/page.js +2 -2
  447. package/app/.next/server/app/landing/page.js.nft.json +1 -1
  448. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  449. package/app/.next/server/app/login/page.js +2 -2
  450. package/app/.next/server/app/login/page.js.nft.json +1 -1
  451. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  452. package/app/.next/server/app/page.js +2 -2
  453. package/app/.next/server/app/page.js.nft.json +1 -1
  454. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  455. package/app/.next/server/app/privacy/page.js +2 -2
  456. package/app/.next/server/app/privacy/page.js.nft.json +1 -1
  457. package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  458. package/app/.next/server/app/terms/page.js +2 -2
  459. package/app/.next/server/app/terms/page.js.nft.json +1 -1
  460. package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  461. package/app/.next/server/app-paths-manifest.json +30 -28
  462. package/app/.next/server/chunks/1248.js +1 -1
  463. package/app/.next/server/chunks/1308.js +1 -1
  464. package/app/.next/server/chunks/1526.js +1 -1
  465. package/app/.next/server/chunks/1584.js +1 -1
  466. package/app/.next/server/chunks/1623.js +1 -1
  467. package/app/.next/server/chunks/1880.js +1 -1
  468. package/app/.next/server/chunks/1960.js +1 -1
  469. package/app/.next/server/chunks/1990.js +1 -1
  470. package/app/.next/server/chunks/2180.js +1 -1
  471. package/app/.next/server/chunks/2214.js +1 -1
  472. package/app/.next/server/chunks/2372.js +1 -1
  473. package/app/.next/server/chunks/2594.js +1 -1
  474. package/app/.next/server/chunks/2767.js +1 -1
  475. package/app/.next/server/chunks/2901.js +2 -2
  476. package/app/.next/server/chunks/2910.js +1 -1
  477. package/app/.next/server/chunks/3371.js +1 -1
  478. package/app/.next/server/chunks/3447.js +1 -1
  479. package/app/.next/server/chunks/3498.js +1 -1
  480. package/app/.next/server/chunks/3596.js +1 -1
  481. package/app/.next/server/chunks/3801.js +2 -0
  482. package/app/.next/server/chunks/3911.js +1 -1
  483. package/app/.next/server/chunks/4488.js +1 -1
  484. package/app/.next/server/chunks/4568.js +1 -1
  485. package/app/.next/server/chunks/496.js +1 -1
  486. package/app/.next/server/chunks/5047.js +1 -1
  487. package/app/.next/server/chunks/5094.js +1 -1
  488. package/app/.next/server/chunks/5097.js +1 -1
  489. package/app/.next/server/chunks/5521.js +1 -1
  490. package/app/.next/server/chunks/5945.js +1 -1
  491. package/app/.next/server/chunks/6118.js +1 -1
  492. package/app/.next/server/chunks/6930.js +1 -1
  493. package/app/.next/server/chunks/7011.js +1 -1
  494. package/app/.next/server/chunks/708.js +1 -1
  495. package/app/.next/server/chunks/7109.js +1 -1
  496. package/app/.next/server/chunks/7230.js +2 -2
  497. package/app/.next/server/chunks/7650.js +1 -1
  498. package/app/.next/server/chunks/8020.js +3 -3
  499. package/app/.next/server/chunks/8220.js +1 -1
  500. package/app/.next/server/chunks/8464.js +1 -1
  501. package/app/.next/server/chunks/8706.js +1 -1
  502. package/app/.next/server/chunks/8976.js +1 -1
  503. package/app/.next/server/chunks/9119.js +1 -1
  504. package/app/.next/server/chunks/944.js +1 -1
  505. package/app/.next/server/chunks/9548.js +1 -0
  506. package/app/.next/server/chunks/9679.js +1 -0
  507. package/app/.next/server/chunks/9824.js +2 -2
  508. package/app/.next/server/chunks/9837.js +1 -1
  509. package/app/.next/server/middleware-build-manifest.js +1 -1
  510. package/app/.next/server/middleware.js +3 -3
  511. package/app/.next/server/next-font-manifest.js +1 -1
  512. package/app/.next/server/next-font-manifest.json +1 -1
  513. package/app/.next/server/pages/500.html +2 -2
  514. package/app/.next/server/server-reference-manifest.js +1 -1
  515. package/app/.next/server/server-reference-manifest.json +1 -1
  516. package/app/.next/static/a624rqqXG_QtNPqv8ZMWa/_buildManifest.js +1 -0
  517. package/app/.next/static/chunks/5846-1dad4fadf761e0d8.js +2 -0
  518. package/app/.next/static/chunks/{993-035473765d7d1871.js → 993-9f36b0b069ca090e.js} +2 -2
  519. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/loading-ce5214cdf489c9df.js +1 -0
  520. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/{page-52f76c7c91444ec2.js → page-20786f2c7fdbab57.js} +1 -1
  521. package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-12d772841a253032.js +1 -0
  522. package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-c9b98846b8479f3f.js +1 -0
  523. package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-5e34630a5dc32825.js +15 -0
  524. package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/{page-3dce7fccfcf177dd.js → page-85a3e6a423aceded.js} +1 -1
  525. package/app/.next/static/chunks/app/(dashboard)/dashboard/costs/{page-3ed2a7685adf9b91.js → page-cdb8071441476da9.js} +1 -1
  526. package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-588b8bc3c4e631e0.js +1 -0
  527. package/app/.next/static/chunks/app/(dashboard)/dashboard/health/{page-9a6519bf1468f16e.js → page-b480b3cb318782d7.js} +1 -1
  528. package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-0ae1d6cc5fc4671f.js +1 -0
  529. package/app/.next/static/chunks/app/(dashboard)/dashboard/logs/{page-833d24f322a20f5a.js → page-ffdc1dcf074c7528.js} +1 -1
  530. package/app/.next/static/chunks/app/(dashboard)/dashboard/media/page-72b768421394b42c.js +1 -0
  531. package/app/.next/static/chunks/app/(dashboard)/dashboard/onboarding/{page-d424641c7e428be9.js → page-5378e9473a20cd6a.js} +1 -1
  532. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-5c87e49261a22fd5.js +1 -0
  533. package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-6301a4ed902b878a.js +1 -0
  534. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-b38f2d03bae8166a.js +1 -0
  535. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{error-2f0177a2197dd556.js → error-f0730d6d62d02e82.js} +1 -1
  536. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{loading-99ab4d478260d53b.js → loading-59cbccd6d5185ca9.js} +1 -1
  537. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-a7fb36872be60fe0.js +1 -0
  538. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/{page-1f022385b812b987.js → page-40dc5ac82df708e9.js} +1 -1
  539. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/{error-e844916e39172c8b.js → error-cc85c3ff1f63aea6.js} +1 -1
  540. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/{loading-bb068659ee679ff4.js → loading-19fc771a287bcb4c.js} +1 -1
  541. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-1550a2460948273c.js +1 -0
  542. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/pricing/{page-f10a8d4bb8236913.js → page-cbe9b21b62bbc2bd.js} +1 -1
  543. package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/{page-83b07523f81d6282.js → page-534e13a69cb60a4f.js} +1 -1
  544. package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/{page-9cc99ab874fc36e7.js → page-86a076d820931a30.js} +1 -1
  545. package/app/.next/static/chunks/app/(dashboard)/{layout-00d5d56af65098a9.js → layout-16302e54f9ef3d0e.js} +1 -1
  546. package/app/.next/static/chunks/app/_global-error/page-6301a4ed902b878a.js +1 -0
  547. package/app/.next/static/chunks/app/_not-found/page-6301a4ed902b878a.js +1 -0
  548. package/app/.next/static/chunks/app/api/auth/login/route-6301a4ed902b878a.js +1 -0
  549. package/app/.next/static/chunks/app/api/auth/logout/route-6301a4ed902b878a.js +1 -0
  550. package/app/.next/static/chunks/app/api/auth/status/route-6301a4ed902b878a.js +1 -0
  551. package/app/.next/static/chunks/app/api/cache/route-6301a4ed902b878a.js +1 -0
  552. package/app/.next/static/chunks/app/api/cache/stats/route-6301a4ed902b878a.js +1 -0
  553. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-6301a4ed902b878a.js +1 -0
  554. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-6301a4ed902b878a.js +1 -0
  555. package/app/.next/static/chunks/app/api/cli-tools/backups/route-6301a4ed902b878a.js +1 -0
  556. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-6301a4ed902b878a.js +1 -0
  557. package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-6301a4ed902b878a.js +1 -0
  558. package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-6301a4ed902b878a.js +1 -0
  559. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-6301a4ed902b878a.js +1 -0
  560. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-6301a4ed902b878a.js +1 -0
  561. package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-6301a4ed902b878a.js +1 -0
  562. package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-6301a4ed902b878a.js +1 -0
  563. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-6301a4ed902b878a.js +1 -0
  564. package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-6301a4ed902b878a.js +1 -0
  565. package/app/.next/static/chunks/app/api/cli-tools/status/route-6301a4ed902b878a.js +1 -0
  566. package/app/.next/static/chunks/app/api/cloud/auth/route-6301a4ed902b878a.js +1 -0
  567. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-6301a4ed902b878a.js +1 -0
  568. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-6301a4ed902b878a.js +1 -0
  569. package/app/.next/static/chunks/app/api/cloud/models/alias/route-6301a4ed902b878a.js +1 -0
  570. package/app/.next/static/chunks/app/api/combos/[id]/route-6301a4ed902b878a.js +1 -0
  571. package/app/.next/static/chunks/app/api/combos/metrics/route-6301a4ed902b878a.js +1 -0
  572. package/app/.next/static/chunks/app/api/combos/route-6301a4ed902b878a.js +1 -0
  573. package/app/.next/static/chunks/app/api/combos/test/route-6301a4ed902b878a.js +1 -0
  574. package/app/.next/static/chunks/app/api/compliance/audit-log/route-6301a4ed902b878a.js +1 -0
  575. package/app/.next/static/chunks/app/api/db-backups/export/route-6301a4ed902b878a.js +1 -0
  576. package/app/.next/static/chunks/app/api/db-backups/exportAll/route-6301a4ed902b878a.js +1 -0
  577. package/app/.next/static/chunks/app/api/db-backups/import/route-6301a4ed902b878a.js +1 -0
  578. package/app/.next/static/chunks/app/api/db-backups/route-6301a4ed902b878a.js +1 -0
  579. package/app/.next/static/chunks/app/api/evals/[suiteId]/route-6301a4ed902b878a.js +1 -0
  580. package/app/.next/static/chunks/app/api/evals/route-6301a4ed902b878a.js +1 -0
  581. package/app/.next/static/chunks/app/api/fallback/chains/route-6301a4ed902b878a.js +1 -0
  582. package/app/.next/static/chunks/app/api/init/route-6301a4ed902b878a.js +1 -0
  583. package/app/.next/static/chunks/app/api/keys/[id]/route-6301a4ed902b878a.js +1 -0
  584. package/app/.next/static/chunks/app/api/keys/route-6301a4ed902b878a.js +1 -0
  585. package/app/.next/static/chunks/app/api/logs/console/route-6301a4ed902b878a.js +1 -0
  586. package/app/.next/static/chunks/app/api/models/alias/route-6301a4ed902b878a.js +1 -0
  587. package/app/.next/static/chunks/app/api/models/availability/route-6301a4ed902b878a.js +1 -0
  588. package/app/.next/static/chunks/app/api/models/catalog/route-6301a4ed902b878a.js +1 -0
  589. package/app/.next/static/chunks/app/api/models/route-6301a4ed902b878a.js +1 -0
  590. package/app/.next/static/chunks/app/api/monitoring/health/route-6301a4ed902b878a.js +1 -0
  591. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-6301a4ed902b878a.js +1 -0
  592. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-6301a4ed902b878a.js +1 -0
  593. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-6301a4ed902b878a.js +1 -0
  594. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-6301a4ed902b878a.js +1 -0
  595. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-6301a4ed902b878a.js +1 -0
  596. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-6301a4ed902b878a.js +1 -0
  597. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-6301a4ed902b878a.js +1 -0
  598. package/app/.next/static/chunks/app/api/policies/route-6301a4ed902b878a.js +1 -0
  599. package/app/.next/static/chunks/app/api/pricing/defaults/route-6301a4ed902b878a.js +1 -0
  600. package/app/.next/static/chunks/app/api/pricing/models/route-6301a4ed902b878a.js +1 -0
  601. package/app/.next/static/chunks/app/api/pricing/route-6301a4ed902b878a.js +1 -0
  602. package/app/.next/static/chunks/app/api/provider-metrics/route-6301a4ed902b878a.js +1 -0
  603. package/app/.next/static/chunks/app/api/provider-models/route-6301a4ed902b878a.js +1 -0
  604. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-6301a4ed902b878a.js +1 -0
  605. package/app/.next/static/chunks/app/api/provider-nodes/route-6301a4ed902b878a.js +1 -0
  606. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-6301a4ed902b878a.js +1 -0
  607. package/app/.next/static/chunks/app/api/providers/[id]/models/route-6301a4ed902b878a.js +1 -0
  608. package/app/.next/static/chunks/app/api/providers/[id]/route-6301a4ed902b878a.js +1 -0
  609. package/app/.next/static/chunks/app/api/providers/[id]/test/route-6301a4ed902b878a.js +1 -0
  610. package/app/.next/static/chunks/app/api/providers/client/route-6301a4ed902b878a.js +1 -0
  611. package/app/.next/static/chunks/app/api/providers/route-6301a4ed902b878a.js +1 -0
  612. package/app/.next/static/chunks/app/api/providers/test-batch/route-6301a4ed902b878a.js +1 -0
  613. package/app/.next/static/chunks/app/api/providers/validate/route-6301a4ed902b878a.js +1 -0
  614. package/app/.next/static/chunks/app/api/rate-limit/route-6301a4ed902b878a.js +1 -0
  615. package/app/.next/static/chunks/app/api/rate-limits/route-6301a4ed902b878a.js +1 -0
  616. package/app/.next/static/chunks/app/api/resilience/reset/route-6301a4ed902b878a.js +1 -0
  617. package/app/.next/static/chunks/app/api/resilience/route-6301a4ed902b878a.js +1 -0
  618. package/app/.next/static/chunks/app/api/restart/route-6301a4ed902b878a.js +1 -0
  619. package/app/.next/static/chunks/app/api/sessions/route-6301a4ed902b878a.js +1 -0
  620. package/app/.next/static/chunks/app/api/settings/background-degradation/route-6301a4ed902b878a.js +1 -0
  621. package/app/.next/static/chunks/app/api/settings/combo-defaults/route-6301a4ed902b878a.js +1 -0
  622. package/app/.next/static/chunks/app/api/settings/ip-filter/route-6301a4ed902b878a.js +1 -0
  623. package/app/.next/static/chunks/app/api/settings/model-aliases/route-6301a4ed902b878a.js +1 -0
  624. package/app/.next/static/chunks/app/api/settings/proxy/route-6301a4ed902b878a.js +1 -0
  625. package/app/.next/static/chunks/app/api/settings/proxy/test/route-6301a4ed902b878a.js +1 -0
  626. package/app/.next/static/chunks/app/api/settings/require-login/route-6301a4ed902b878a.js +1 -0
  627. package/app/.next/static/chunks/app/api/settings/route-6301a4ed902b878a.js +1 -0
  628. package/app/.next/static/chunks/app/api/settings/system-prompt/route-6301a4ed902b878a.js +1 -0
  629. package/app/.next/static/chunks/app/api/settings/thinking-budget/route-6301a4ed902b878a.js +1 -0
  630. package/app/.next/static/chunks/app/api/shutdown/route-6301a4ed902b878a.js +1 -0
  631. package/app/.next/static/chunks/app/api/storage/health/route-6301a4ed902b878a.js +1 -0
  632. package/app/.next/static/chunks/app/api/sync/cloud/route-6301a4ed902b878a.js +1 -0
  633. package/app/.next/static/chunks/app/api/sync/initialize/route-6301a4ed902b878a.js +1 -0
  634. package/app/.next/static/chunks/app/api/tags/route-6301a4ed902b878a.js +1 -0
  635. package/app/.next/static/chunks/app/api/telemetry/summary/route-6301a4ed902b878a.js +1 -0
  636. package/app/.next/static/chunks/app/api/token-health/route-6301a4ed902b878a.js +1 -0
  637. package/app/.next/static/chunks/app/api/translator/detect/route-6301a4ed902b878a.js +1 -0
  638. package/app/.next/static/chunks/app/api/translator/history/route-6301a4ed902b878a.js +1 -0
  639. package/app/.next/static/chunks/app/api/translator/load/route-6301a4ed902b878a.js +1 -0
  640. package/app/.next/static/chunks/app/api/translator/save/route-6301a4ed902b878a.js +1 -0
  641. package/app/.next/static/chunks/app/api/translator/send/route-6301a4ed902b878a.js +1 -0
  642. package/app/.next/static/chunks/app/api/translator/translate/route-6301a4ed902b878a.js +1 -0
  643. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-6301a4ed902b878a.js +1 -0
  644. package/app/.next/static/chunks/app/api/usage/analytics/route-6301a4ed902b878a.js +1 -0
  645. package/app/.next/static/chunks/app/api/usage/budget/route-6301a4ed902b878a.js +1 -0
  646. package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-6301a4ed902b878a.js +1 -0
  647. package/app/.next/static/chunks/app/api/usage/call-logs/route-6301a4ed902b878a.js +1 -0
  648. package/app/.next/static/chunks/app/api/usage/history/route-6301a4ed902b878a.js +1 -0
  649. package/app/.next/static/chunks/app/api/usage/logs/route-6301a4ed902b878a.js +1 -0
  650. package/app/.next/static/chunks/app/api/usage/proxy-logs/route-6301a4ed902b878a.js +1 -0
  651. package/app/.next/static/chunks/app/api/usage/request-logs/route-6301a4ed902b878a.js +1 -0
  652. package/app/.next/static/chunks/app/api/v1/api/chat/route-6301a4ed902b878a.js +1 -0
  653. package/app/.next/static/chunks/app/api/v1/audio/speech/route-6301a4ed902b878a.js +1 -0
  654. package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-6301a4ed902b878a.js +1 -0
  655. package/app/.next/static/chunks/app/api/v1/chat/completions/route-6301a4ed902b878a.js +1 -0
  656. package/app/.next/static/chunks/app/api/v1/embeddings/route-6301a4ed902b878a.js +1 -0
  657. package/app/.next/static/chunks/app/api/v1/images/generations/route-6301a4ed902b878a.js +1 -0
  658. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-6301a4ed902b878a.js +1 -0
  659. package/app/.next/static/chunks/app/api/v1/messages/route-6301a4ed902b878a.js +1 -0
  660. package/app/.next/static/chunks/app/api/v1/models/route-6301a4ed902b878a.js +1 -0
  661. package/app/.next/static/chunks/app/api/v1/moderations/route-6301a4ed902b878a.js +1 -0
  662. package/app/.next/static/chunks/app/api/v1/music/generations/route-6301a4ed902b878a.js +1 -0
  663. package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-6301a4ed902b878a.js +1 -0
  664. package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-6301a4ed902b878a.js +1 -0
  665. package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-6301a4ed902b878a.js +1 -0
  666. package/app/.next/static/chunks/app/api/v1/rerank/route-6301a4ed902b878a.js +1 -0
  667. package/app/.next/static/chunks/app/api/v1/responses/route-6301a4ed902b878a.js +1 -0
  668. package/app/.next/static/chunks/app/api/v1/route-6301a4ed902b878a.js +1 -0
  669. package/app/.next/static/chunks/app/api/v1/videos/generations/route-6301a4ed902b878a.js +1 -0
  670. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-6301a4ed902b878a.js +1 -0
  671. package/app/.next/static/chunks/app/api/v1beta/models/route-6301a4ed902b878a.js +1 -0
  672. package/app/.next/static/chunks/app/callback/{page-585a53f7dc6a30f1.js → page-0f0ebc0820dd18a5.js} +1 -1
  673. package/app/.next/static/chunks/app/docs/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
  674. package/app/.next/static/chunks/app/{error-0d59fc4efafbc38c.js → error-f918d9961a2368d3.js} +1 -1
  675. package/app/.next/static/chunks/app/forbidden/page-77657dfa95e61cd8.js +1 -0
  676. package/app/.next/static/chunks/app/forgot-password/page-be3bacc125c30a6b.js +1 -0
  677. package/app/.next/static/chunks/app/global-error-504ff9093e2a997d.js +1 -0
  678. package/app/.next/static/chunks/app/landing/page-75b0c988db383cfc.js +1 -0
  679. package/app/.next/static/chunks/app/{layout-108592eafb959363.js → layout-070972eb026af319.js} +1 -1
  680. package/app/.next/static/chunks/app/login/{page-121c612ee459e7c2.js → page-6c769465e407368f.js} +1 -1
  681. package/app/.next/static/chunks/app/not-found-11b712c853d93172.js +1 -0
  682. package/app/.next/static/chunks/app/page-6301a4ed902b878a.js +1 -0
  683. package/app/.next/static/chunks/app/privacy/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
  684. package/app/.next/static/chunks/app/terms/{page-2fe9dcbeb3f738c0.js → page-3658b3f15df3a19e.js} +1 -1
  685. package/app/.next/static/chunks/{main-app-c9da11a8061df107.js → main-app-ae230f6bf51a5edb.js} +1 -1
  686. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-6301a4ed902b878a.js +1 -0
  687. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-6301a4ed902b878a.js +1 -0
  688. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6301a4ed902b878a.js +1 -0
  689. package/app/.next/static/css/bcd1741aee9d39ab.css +1 -0
  690. package/app/package.json +1 -1
  691. package/app/server.js +1 -1
  692. package/package.json +1 -1
  693. package/app/.next/server/chunks/5248.js +0 -1
  694. package/app/.next/server/chunks/5393.js +0 -2
  695. package/app/.next/static/chunks/5846-9e0f1f3afcbfb08c.js +0 -2
  696. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/loading-6f1750506292c630.js +0 -1
  697. package/app/.next/static/chunks/app/(dashboard)/dashboard/api-manager/page-1dd4d0c348a7b0a6.js +0 -1
  698. package/app/.next/static/chunks/app/(dashboard)/dashboard/audit-log/page-e5bf8955e7b9a4f5.js +0 -1
  699. package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-77ab26722f5c56c7.js +0 -15
  700. package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-1420c3ca376f1585.js +0 -1
  701. package/app/.next/static/chunks/app/(dashboard)/dashboard/limits/page-f4a2d6d07df5ddc4.js +0 -1
  702. package/app/.next/static/chunks/app/(dashboard)/dashboard/media/page-1d0ca9b5d3eaf7cd.js +0 -1
  703. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-388840686801f3f5.js +0 -1
  704. package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/page-cab2fb7f592d3c36.js +0 -1
  705. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-9c8ffb212f855704.js +0 -1
  706. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-31cdb6e15134d8c2.js +0 -1
  707. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-1393d4935fc087cf.js +0 -1
  708. package/app/.next/static/chunks/app/_global-error/page-cab2fb7f592d3c36.js +0 -1
  709. package/app/.next/static/chunks/app/_not-found/page-cab2fb7f592d3c36.js +0 -1
  710. package/app/.next/static/chunks/app/api/auth/login/route-cab2fb7f592d3c36.js +0 -1
  711. package/app/.next/static/chunks/app/api/auth/logout/route-cab2fb7f592d3c36.js +0 -1
  712. package/app/.next/static/chunks/app/api/auth/status/route-cab2fb7f592d3c36.js +0 -1
  713. package/app/.next/static/chunks/app/api/cache/route-cab2fb7f592d3c36.js +0 -1
  714. package/app/.next/static/chunks/app/api/cache/stats/route-cab2fb7f592d3c36.js +0 -1
  715. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-cab2fb7f592d3c36.js +0 -1
  716. package/app/.next/static/chunks/app/api/cli-tools/antigravity-mitm/route-cab2fb7f592d3c36.js +0 -1
  717. package/app/.next/static/chunks/app/api/cli-tools/backups/route-cab2fb7f592d3c36.js +0 -1
  718. package/app/.next/static/chunks/app/api/cli-tools/claude-settings/route-cab2fb7f592d3c36.js +0 -1
  719. package/app/.next/static/chunks/app/api/cli-tools/cline-settings/route-cab2fb7f592d3c36.js +0 -1
  720. package/app/.next/static/chunks/app/api/cli-tools/codex-profiles/route-cab2fb7f592d3c36.js +0 -1
  721. package/app/.next/static/chunks/app/api/cli-tools/codex-settings/route-cab2fb7f592d3c36.js +0 -1
  722. package/app/.next/static/chunks/app/api/cli-tools/droid-settings/route-cab2fb7f592d3c36.js +0 -1
  723. package/app/.next/static/chunks/app/api/cli-tools/guide-settings/[toolId]/route-cab2fb7f592d3c36.js +0 -1
  724. package/app/.next/static/chunks/app/api/cli-tools/kilo-settings/route-cab2fb7f592d3c36.js +0 -1
  725. package/app/.next/static/chunks/app/api/cli-tools/openclaw-settings/route-cab2fb7f592d3c36.js +0 -1
  726. package/app/.next/static/chunks/app/api/cli-tools/runtime/[toolId]/route-cab2fb7f592d3c36.js +0 -1
  727. package/app/.next/static/chunks/app/api/cli-tools/status/route-cab2fb7f592d3c36.js +0 -1
  728. package/app/.next/static/chunks/app/api/cloud/auth/route-cab2fb7f592d3c36.js +0 -1
  729. package/app/.next/static/chunks/app/api/cloud/credentials/update/route-cab2fb7f592d3c36.js +0 -1
  730. package/app/.next/static/chunks/app/api/cloud/model/resolve/route-cab2fb7f592d3c36.js +0 -1
  731. package/app/.next/static/chunks/app/api/cloud/models/alias/route-cab2fb7f592d3c36.js +0 -1
  732. package/app/.next/static/chunks/app/api/combos/[id]/route-cab2fb7f592d3c36.js +0 -1
  733. package/app/.next/static/chunks/app/api/combos/metrics/route-cab2fb7f592d3c36.js +0 -1
  734. package/app/.next/static/chunks/app/api/combos/route-cab2fb7f592d3c36.js +0 -1
  735. package/app/.next/static/chunks/app/api/combos/test/route-cab2fb7f592d3c36.js +0 -1
  736. package/app/.next/static/chunks/app/api/compliance/audit-log/route-cab2fb7f592d3c36.js +0 -1
  737. package/app/.next/static/chunks/app/api/db-backups/export/route-cab2fb7f592d3c36.js +0 -1
  738. package/app/.next/static/chunks/app/api/db-backups/exportAll/route-cab2fb7f592d3c36.js +0 -1
  739. package/app/.next/static/chunks/app/api/db-backups/import/route-cab2fb7f592d3c36.js +0 -1
  740. package/app/.next/static/chunks/app/api/db-backups/route-cab2fb7f592d3c36.js +0 -1
  741. package/app/.next/static/chunks/app/api/evals/[suiteId]/route-cab2fb7f592d3c36.js +0 -1
  742. package/app/.next/static/chunks/app/api/evals/route-cab2fb7f592d3c36.js +0 -1
  743. package/app/.next/static/chunks/app/api/fallback/chains/route-cab2fb7f592d3c36.js +0 -1
  744. package/app/.next/static/chunks/app/api/init/route-cab2fb7f592d3c36.js +0 -1
  745. package/app/.next/static/chunks/app/api/keys/[id]/route-cab2fb7f592d3c36.js +0 -1
  746. package/app/.next/static/chunks/app/api/keys/route-cab2fb7f592d3c36.js +0 -1
  747. package/app/.next/static/chunks/app/api/logs/console/route-cab2fb7f592d3c36.js +0 -1
  748. package/app/.next/static/chunks/app/api/models/alias/route-cab2fb7f592d3c36.js +0 -1
  749. package/app/.next/static/chunks/app/api/models/availability/route-cab2fb7f592d3c36.js +0 -1
  750. package/app/.next/static/chunks/app/api/models/catalog/route-cab2fb7f592d3c36.js +0 -1
  751. package/app/.next/static/chunks/app/api/models/route-cab2fb7f592d3c36.js +0 -1
  752. package/app/.next/static/chunks/app/api/monitoring/health/route-cab2fb7f592d3c36.js +0 -1
  753. package/app/.next/static/chunks/app/api/oauth/[provider]/[action]/route-cab2fb7f592d3c36.js +0 -1
  754. package/app/.next/static/chunks/app/api/oauth/cursor/auto-import/route-cab2fb7f592d3c36.js +0 -1
  755. package/app/.next/static/chunks/app/api/oauth/cursor/import/route-cab2fb7f592d3c36.js +0 -1
  756. package/app/.next/static/chunks/app/api/oauth/kiro/auto-import/route-cab2fb7f592d3c36.js +0 -1
  757. package/app/.next/static/chunks/app/api/oauth/kiro/import/route-cab2fb7f592d3c36.js +0 -1
  758. package/app/.next/static/chunks/app/api/oauth/kiro/social-authorize/route-cab2fb7f592d3c36.js +0 -1
  759. package/app/.next/static/chunks/app/api/oauth/kiro/social-exchange/route-cab2fb7f592d3c36.js +0 -1
  760. package/app/.next/static/chunks/app/api/policies/route-cab2fb7f592d3c36.js +0 -1
  761. package/app/.next/static/chunks/app/api/pricing/defaults/route-cab2fb7f592d3c36.js +0 -1
  762. package/app/.next/static/chunks/app/api/pricing/models/route-cab2fb7f592d3c36.js +0 -1
  763. package/app/.next/static/chunks/app/api/pricing/route-cab2fb7f592d3c36.js +0 -1
  764. package/app/.next/static/chunks/app/api/provider-metrics/route-cab2fb7f592d3c36.js +0 -1
  765. package/app/.next/static/chunks/app/api/provider-models/route-cab2fb7f592d3c36.js +0 -1
  766. package/app/.next/static/chunks/app/api/provider-nodes/[id]/route-cab2fb7f592d3c36.js +0 -1
  767. package/app/.next/static/chunks/app/api/provider-nodes/route-cab2fb7f592d3c36.js +0 -1
  768. package/app/.next/static/chunks/app/api/provider-nodes/validate/route-cab2fb7f592d3c36.js +0 -1
  769. package/app/.next/static/chunks/app/api/providers/[id]/models/route-cab2fb7f592d3c36.js +0 -1
  770. package/app/.next/static/chunks/app/api/providers/[id]/route-cab2fb7f592d3c36.js +0 -1
  771. package/app/.next/static/chunks/app/api/providers/[id]/test/route-cab2fb7f592d3c36.js +0 -1
  772. package/app/.next/static/chunks/app/api/providers/client/route-cab2fb7f592d3c36.js +0 -1
  773. package/app/.next/static/chunks/app/api/providers/route-cab2fb7f592d3c36.js +0 -1
  774. package/app/.next/static/chunks/app/api/providers/test-batch/route-cab2fb7f592d3c36.js +0 -1
  775. package/app/.next/static/chunks/app/api/providers/validate/route-cab2fb7f592d3c36.js +0 -1
  776. package/app/.next/static/chunks/app/api/rate-limit/route-cab2fb7f592d3c36.js +0 -1
  777. package/app/.next/static/chunks/app/api/rate-limits/route-cab2fb7f592d3c36.js +0 -1
  778. package/app/.next/static/chunks/app/api/resilience/reset/route-cab2fb7f592d3c36.js +0 -1
  779. package/app/.next/static/chunks/app/api/resilience/route-cab2fb7f592d3c36.js +0 -1
  780. package/app/.next/static/chunks/app/api/restart/route-cab2fb7f592d3c36.js +0 -1
  781. package/app/.next/static/chunks/app/api/sessions/route-cab2fb7f592d3c36.js +0 -1
  782. package/app/.next/static/chunks/app/api/settings/combo-defaults/route-cab2fb7f592d3c36.js +0 -1
  783. package/app/.next/static/chunks/app/api/settings/ip-filter/route-cab2fb7f592d3c36.js +0 -1
  784. package/app/.next/static/chunks/app/api/settings/proxy/route-cab2fb7f592d3c36.js +0 -1
  785. package/app/.next/static/chunks/app/api/settings/proxy/test/route-cab2fb7f592d3c36.js +0 -1
  786. package/app/.next/static/chunks/app/api/settings/require-login/route-cab2fb7f592d3c36.js +0 -1
  787. package/app/.next/static/chunks/app/api/settings/route-cab2fb7f592d3c36.js +0 -1
  788. package/app/.next/static/chunks/app/api/settings/system-prompt/route-cab2fb7f592d3c36.js +0 -1
  789. package/app/.next/static/chunks/app/api/settings/thinking-budget/route-cab2fb7f592d3c36.js +0 -1
  790. package/app/.next/static/chunks/app/api/shutdown/route-cab2fb7f592d3c36.js +0 -1
  791. package/app/.next/static/chunks/app/api/storage/health/route-cab2fb7f592d3c36.js +0 -1
  792. package/app/.next/static/chunks/app/api/sync/cloud/route-cab2fb7f592d3c36.js +0 -1
  793. package/app/.next/static/chunks/app/api/sync/initialize/route-cab2fb7f592d3c36.js +0 -1
  794. package/app/.next/static/chunks/app/api/tags/route-cab2fb7f592d3c36.js +0 -1
  795. package/app/.next/static/chunks/app/api/telemetry/summary/route-cab2fb7f592d3c36.js +0 -1
  796. package/app/.next/static/chunks/app/api/token-health/route-cab2fb7f592d3c36.js +0 -1
  797. package/app/.next/static/chunks/app/api/translator/detect/route-cab2fb7f592d3c36.js +0 -1
  798. package/app/.next/static/chunks/app/api/translator/history/route-cab2fb7f592d3c36.js +0 -1
  799. package/app/.next/static/chunks/app/api/translator/load/route-cab2fb7f592d3c36.js +0 -1
  800. package/app/.next/static/chunks/app/api/translator/save/route-cab2fb7f592d3c36.js +0 -1
  801. package/app/.next/static/chunks/app/api/translator/send/route-cab2fb7f592d3c36.js +0 -1
  802. package/app/.next/static/chunks/app/api/translator/translate/route-cab2fb7f592d3c36.js +0 -1
  803. package/app/.next/static/chunks/app/api/usage/[connectionId]/route-cab2fb7f592d3c36.js +0 -1
  804. package/app/.next/static/chunks/app/api/usage/analytics/route-cab2fb7f592d3c36.js +0 -1
  805. package/app/.next/static/chunks/app/api/usage/budget/route-cab2fb7f592d3c36.js +0 -1
  806. package/app/.next/static/chunks/app/api/usage/call-logs/[id]/route-cab2fb7f592d3c36.js +0 -1
  807. package/app/.next/static/chunks/app/api/usage/call-logs/route-cab2fb7f592d3c36.js +0 -1
  808. package/app/.next/static/chunks/app/api/usage/history/route-cab2fb7f592d3c36.js +0 -1
  809. package/app/.next/static/chunks/app/api/usage/logs/route-cab2fb7f592d3c36.js +0 -1
  810. package/app/.next/static/chunks/app/api/usage/proxy-logs/route-cab2fb7f592d3c36.js +0 -1
  811. package/app/.next/static/chunks/app/api/usage/request-logs/route-cab2fb7f592d3c36.js +0 -1
  812. package/app/.next/static/chunks/app/api/v1/api/chat/route-cab2fb7f592d3c36.js +0 -1
  813. package/app/.next/static/chunks/app/api/v1/audio/speech/route-cab2fb7f592d3c36.js +0 -1
  814. package/app/.next/static/chunks/app/api/v1/audio/transcriptions/route-cab2fb7f592d3c36.js +0 -1
  815. package/app/.next/static/chunks/app/api/v1/chat/completions/route-cab2fb7f592d3c36.js +0 -1
  816. package/app/.next/static/chunks/app/api/v1/embeddings/route-cab2fb7f592d3c36.js +0 -1
  817. package/app/.next/static/chunks/app/api/v1/images/generations/route-cab2fb7f592d3c36.js +0 -1
  818. package/app/.next/static/chunks/app/api/v1/messages/count_tokens/route-cab2fb7f592d3c36.js +0 -1
  819. package/app/.next/static/chunks/app/api/v1/messages/route-cab2fb7f592d3c36.js +0 -1
  820. package/app/.next/static/chunks/app/api/v1/models/route-cab2fb7f592d3c36.js +0 -1
  821. package/app/.next/static/chunks/app/api/v1/moderations/route-cab2fb7f592d3c36.js +0 -1
  822. package/app/.next/static/chunks/app/api/v1/music/generations/route-cab2fb7f592d3c36.js +0 -1
  823. package/app/.next/static/chunks/app/api/v1/providers/[provider]/chat/completions/route-cab2fb7f592d3c36.js +0 -1
  824. package/app/.next/static/chunks/app/api/v1/providers/[provider]/embeddings/route-cab2fb7f592d3c36.js +0 -1
  825. package/app/.next/static/chunks/app/api/v1/providers/[provider]/images/generations/route-cab2fb7f592d3c36.js +0 -1
  826. package/app/.next/static/chunks/app/api/v1/rerank/route-cab2fb7f592d3c36.js +0 -1
  827. package/app/.next/static/chunks/app/api/v1/responses/route-cab2fb7f592d3c36.js +0 -1
  828. package/app/.next/static/chunks/app/api/v1/route-cab2fb7f592d3c36.js +0 -1
  829. package/app/.next/static/chunks/app/api/v1/videos/generations/route-cab2fb7f592d3c36.js +0 -1
  830. package/app/.next/static/chunks/app/api/v1beta/models/[...path]/route-cab2fb7f592d3c36.js +0 -1
  831. package/app/.next/static/chunks/app/api/v1beta/models/route-cab2fb7f592d3c36.js +0 -1
  832. package/app/.next/static/chunks/app/forbidden/page-df886dfa2d5bd9fa.js +0 -1
  833. package/app/.next/static/chunks/app/forgot-password/page-2a495f0b0c653ab4.js +0 -1
  834. package/app/.next/static/chunks/app/global-error-41eef2a698918fc1.js +0 -1
  835. package/app/.next/static/chunks/app/landing/page-9d540ab1716f8e3e.js +0 -1
  836. package/app/.next/static/chunks/app/not-found-1dbd8c3e506fe00f.js +0 -1
  837. package/app/.next/static/chunks/app/page-cab2fb7f592d3c36.js +0 -1
  838. package/app/.next/static/chunks/next/dist/client/components/builtin/app-error-cab2fb7f592d3c36.js +0 -1
  839. package/app/.next/static/chunks/next/dist/client/components/builtin/forbidden-cab2fb7f592d3c36.js +0 -1
  840. package/app/.next/static/chunks/next/dist/client/components/builtin/unauthorized-cab2fb7f592d3c36.js +0 -1
  841. package/app/.next/static/css/b77490a14619ffbb.css +0 -1
  842. package/app/.next/static/ozfkuTtQLl3_rnlOdkSZi/_buildManifest.js +0 -1
  843. /package/app/.next/static/{ozfkuTtQLl3_rnlOdkSZi → a624rqqXG_QtNPqv8ZMWa}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";exports.id=8464,exports.ids=[8464],exports.modules={48464:a=>{a.exports=JSON.parse('{"common":{"save":"حفظ","cancel":"إلغاء","delete":"حذف","loading":"جار التحميل...","error":"حدث خطأ","success":"النجاح","confirm":"هل أنت متأكد؟","refresh":"تحديث","close":"إغلاق","add":"أضف","edit":"تحرير","search":"بحث","back":"العودة","next":"التالي","submit":"إرسال","reset":"إعادة تعيين","copy":"نسخ","copied":"منسوخ!","enabled":"ممكّن","disabled":"غير مفعّل","active":"نشط","inactive":"غير نشط","noData":"لا توجد بيانات متاحة","configure":"تكوين","manage":"إدارة","name":"الاسم","actions":"الإجراءات","status":"الحالة","type":"اكتب","model":"نموذج","models":"نماذج","provider":"مزود","account":"الحساب","time":"الوقت","details":"التفاصيل","created":"تم إنشاؤها","lastUsed":"آخر استخدام","loadMore":"تحميل المزيد","noResults":"لم يتم العثور على نتائج","reloadPage":"إعادة تحميل الصفحة","connected":"متصل","disconnected":"غير متصل","notConfigured":"لم يتم تكوينه","testConnection":"اتصال الاختبار","enable":"تمكين","disable":"تعطيل","columns":"أعمدة","newest":"الأحدث","oldest":"الأقدم","all":"الكل","none":"لا شيء","yes":"نعم","no":"لا","warning":"تحذير","note":"ملاحظة","free":"مجاني","skipToContent":"انتقل إلى المحتوى"},"sidebar":{"home":"الصفحة الرئيسية","dashboard":"لوحة القيادة","providers":"المزوّدون","combos":"المجموعات","usage":"الاستخدام","analytics":"التحليلات","costs":"التكاليف","health":"الصحة","limits":"الحدود والحصص","cliTools":"أدوات سطر الأوامر","settings":"الإعدادات","translator":"مترجم","docs":"المستندات","issues":"القضايا","endpoint":"نقطة النهاية","apiManager":"مدير API","logs":"سجلات","auditLog":"سجل التدقيق","shutdown":"إيقاف التشغيل","restart":"إعادة التشغيل","shutdownConfirm":"هل تريد إيقاف OmniRoute؟","restartConfirm":"هل تريد إعادة تشغيل OmniRoute؟","version":"v{version}","debug":"تصحيح","system":"النظام","help":"مساعدة","serverDisconnected":"تم قطع اتصال الخادم","serverDisconnectedMsg":"تم إيقاف الخادم الوكيل أو يتم إعادة تشغيله.","expandSidebar":"قم بتوسيع الشريط الجانبي","collapseSidebar":"طي الشريط الجانبي"},"header":{"logout":"تسجيل الخروج","language":"اللغة","providers":"المزوّدون","providerDescription":"إدارة اتصالات مزوّدي الذكاء الاصطناعي","combos":"المجموعات","comboDescription":"مجموعات نماذج مع التبديل الاحتياطي","usage":"الاستخدام والتحليلات","usageDescription":"مراقبة استخدام واجهة برمجة التطبيقات (API) واستهلاك الرمز المميز وسجلات الطلبات","analytics":"التحليلات","analyticsDescription":"الرسوم البيانية والاتجاهات ورؤى التقييم","cliTools":"أدوات سطر الأوامر","cliToolsDescription":"تكوين أدوات CLI","home":"الصفحة الرئيسية","homeDescription":"مرحبًا بك في OmniRoute","endpoint":"نقطة النهاية","endpointDescription":"تكوين نقطة النهاية API","settings":"الإعدادات","settingsDescription":"إدارة تفضيلاتك","openaiCompatible":"متوافق مع OpenAI","anthropicCompatible":"متوافق مع Anthropic"},"home":{"quickStart":"بداية سريعة","quickStartDesc":"ابدأ خلال 4 خطوات: وصّل المزوّدين، فعّل توجيه النماذج، وراقب كل شيء.","fullDocs":"التوثيق الكامل","step1Title":"1. إنشاء مفتاح API","step1Desc":"انتقل إلى <endpoint>Endpoint</endpoint> -> Registered Keys. أنشئ مفتاحًا واحدًا لكل بيئة.","step2Title":"2. ربط مقدمي الخدمات","step2Desc":"أضف الحسابات في <providers>Providers</providers>. يدعم OAuth وAPI Key والخطط المجانية.","step3Title":"3. اضبط عميلك","step3Desc":"عيّن عنوان Base URL إلى {url} في IDE أو عميل API لديك.","step4Title":"4. المراقبة والتحسين","step4Desc":"تتبّع الرموز والتكلفة والأخطاء في <logs>سجلات الطلبات</logs> و<analytics>التحليلات</analytics>.","providersOverview":"نظرة عامة على مقدمي الخدمة","configuredOf":"تم تكوين {configured} من بين {total} الموفرين المتاحين","noModelsAvailable":"لا توجد نماذج متاحة لهذا المزود.","configureFirst":"قم بتكوين الاتصال أولاً في {providers}","configureProvider":"تكوين الموفر","modelAvailable":"يتوفر طراز {count}","modelsAvailable":"{count} النماذج المتوفرة","connectionsActive":"{count} الاتصال نشط","connectionsActivePlural":"{count} الاتصالات نشطة","copyModelName":"انسخ اسم الموديل","documentation":"التوثيق","healthMonitor":"مراقب الصحة","reportIssue":"الإبلاغ عن مشكلة","activeError":"{active} نشط \xb7 {errors} خطأ","oauthLabel":"OAuth","apiKeyLabel":"مفتاح واجهة برمجة التطبيقات","requestsShort":"{count} طلب","providerModelsTitle":"{provider} - النماذج","copiedModel":"تم النسخ: {model}","aliasLabel":"الاسم المستعار"},"analytics":{"title":"التحليلات","overviewDescription":"راقب أنماط استخدام واجهة برمجة التطبيقات (API) واستهلاك الرمز المميز والتكاليف واتجاهات النشاط عبر جميع مقدمي الخدمات والنماذج.","evalsDescription":"قم بتشغيل مجموعات التقييم لاختبار نقاط نهاية LLM الخاصة بك والتحقق من صحتها. مقارنة جودة النموذج، واكتشاف الانحدارات، وقياس وقت الاستجابة.","overview":"نظرة عامة","evals":"التقييمات"},"apiManager":{"title":"مفاتيح واجهة برمجة التطبيقات","createKey":"إنشاء مفتاح API","key":"مفتاح","revokeKey":"إبطال المفتاح","revokeConfirm":"هل أنت متأكد أنك تريد إلغاء مفتاح API هذا؟","noKeys":"لا توجد مفاتيح API حتى الآن","noKeysDesc":"قم بإنشاء مفتاح API الأول الخاص بك لمصادقة الطلبات إلى نقطة النهاية الخاصة بك","keyLabel":"تسمية المفتاح","permissions":"الأذونات","expiresAt":"تنتهي","never":"أبدا","revoke":"إبطال","showKey":"إظهار المفتاح","hideKey":"إخفاء المفتاح","copyKey":"انسخ مفتاح واجهة برمجة التطبيقات","allModels":"جميع الموديلات","selectedModels":"نماذج مختارة","readOnly":"قراءة فقط","fullAccess":"الوصول الكامل","keyManagement":"إدارة مفاتيح API","keyManagementDesc":"قم بإنشاء وإدارة مفاتيح API لمصادقة الطلبات إلى نقطة النهاية الخاصة بك","totalKeys":"مجموع المفاتيح","restricted":"مقيد","totalRequests":"إجمالي الطلبات","modelsAvailable":"النماذج المتاحة","registeredKeys":"المفاتيح المسجلة","keysRegistered":"{count} مفاتيح مسجلة","keyRegistered":"تم تسجيل المفتاح {count}","keysSecurityNote":"يعزل كل مفتاح تتبع الاستخدام ويمكن إبطاله بشكل مستقل. يتم إخفاء المفاتيح بعد إنشائها لأسباب أمنية.","createFirstKey":"قم بإنشاء مفتاحك الأول","name":"الاسم","usage":"الاستخدام","created":"تم إنشاؤها","actions":"الإجراءات","reqs":"طلبات","neverUsed":"لم تستخدم قط","deleteConfirm":"هل تريد حذف مفتاح واجهة برمجة التطبيقات هذا؟","usageTips":"نصائح الاستخدام","tipAuth":"استخدم مفاتيح API في رأس التفويض كحامل YOUR_KEY","tipSecure":"يتم عرض المفاتيح مرة واحدة فقط أثناء الإنشاء — قم بتخزينها بشكل آمن","tipSeparate":"قم بإنشاء مفاتيح منفصلة لعملاء أو بيئات مختلفة","tipRestrict":"قم بتقييد المفاتيح لنماذج محددة لتحسين الأمان والتحكم في التكلفة","keyName":"اسم المفتاح","keyNamePlaceholder":"على سبيل المثال، مفتاح الإنتاج، مفتاح التطوير","keyNameDesc":"اختر اسمًا وصفيًا لتحديد غرض هذا المفتاح","keyCreated":"تم إنشاء مفتاح API","keyCreatedSuccess":"تم إنشاء المفتاح بنجاح!","keyCreatedNote":"انسخ هذا المفتاح وقم بتخزينه الآن - لن يتم عرضه مرة أخرى.","done":"تم","savePermissions":"حفظ الأذونات","allowAll":"السماح للكل","restrict":"تقييد","allowAllInfo":"يمكن لهذا المفتاح الوصول إلى كافة الموديلات المتاحة.","restrictInfo":"يمكن لهذا المفتاح الوصول إلى {selected} من طرازات {total}.","selected":"تم تحديد {count}","all":"الكل","clear":"واضح","searchModels":"نماذج البحث بالاسم أو المزود...","noModelsFound":"لم يتم العثور على نماذج","keyNameRequired":"اسم المفتاح مطلوب","keyNameTooLong":"يجب أن يتكون اسم المفتاح من {max} حرفًا أو أقل","keyNameInvalid":"يمكن أن يحتوي اسم المفتاح فقط على أحرف وأرقام ومسافات وواصلات وشرطات سفلية","invalidKeyName":"اسم المفتاح غير صالح","failedCreateKey":"فشل في إنشاء المفتاح","failedCreateKeyRetry":"فشل في إنشاء المفتاح. يرجى المحاولة مرة أخرى.","invalidKeyId":"معرف المفتاح غير صالح","failedDeleteKey":"فشل في حذف المفتاح","failedDeleteKeyRetry":"فشل في حذف المفتاح. يرجى المحاولة مرة أخرى.","invalidModelsSelection":"تحديد النماذج غير صالح","cannotSelectMoreThanModels":"لا يمكن تحديد أكثر من {max} من النماذج","failedUpdatePermissions":"فشل تحديث الأذونات","failedUpdatePermissionsRetry":"فشل تحديث الأذونات. يرجى المحاولة مرة أخرى.","unknownProvider":"غير معروف","copyMaskedKey":"انسخ المفتاح المقنع","modelsCount":"{count, plural, one {# model} other {# models}}","lastUsedOn":"الأخير: {date}","editPermissions":"تحرير الأذونات","deleteKey":"حذف المفتاح","model":"{count} النموذج","models":"{count} النماذج","permissionsTitle":"الأذونات: {name}","allowAllDesc":"يمكن لهذا المفتاح الوصول إلى كافة الموديلات المتاحة.","restrictDesc":"يمكن لهذا المفتاح الوصول إلى {selectedCount} من طرازات {totalModels}.","selectedCount":"تم تحديد {count}"},"auditLog":{"title":"سجل التدقيق","searchPlaceholder":"إجراءات البحث...","action":"العمل","actor":"ممثل","target":"الهدف","ipAddress":"عنوان IP","timestamp":"الطابع الزمني","noEntries":"لم يتم العثور على إدخالات التدقيق","filterByAction":"التصفية حسب الإجراء...","filterByActor":"تصفية حسب الممثل...","filterEntriesAria":"تصفية إدخالات سجل التدقيق","filterByActionTypeAria":"التصفية حسب نوع الإجراء","filterByActorAria":"تصفية حسب الممثل","refreshAuditLogAria":"تحديث سجل التدقيق","tableAria":"إدخالات سجل التدقيق","failedFetchAuditLog":"فشل جلب سجل التدقيق","notAvailable":"—","description":"الإجراءات الإدارية والأحداث الأمنية","showing":"عرض {count} إدخالات (الإزاحة {offset})","previous":"السابق"},"cliTools":{"title":"أدوات سطر الأوامر","noActiveProviders":"لا يوجد مقدمي خدمات نشطين","noActiveProvidersDesc":"الرجاء إضافة موفري الخدمة والاتصال بهم أولاً لتكوين أدوات واجهة سطر الأوامر (CLI).","mapModels":"نماذج الخرائط","testConnection":"اتصال الاختبار","connectionStatus":"حالة الاتصال","configureEndpoint":"تكوين نقطة النهاية","instructions":"تعليمات","modelMapping":"رسم الخرائط النموذجية","baseUrl":"عنوان URL الأساسي","apiKey":"مفتاح واجهة برمجة التطبيقات","configured":"تم تكوينه","notConfigured":"لم يتم تكوينه","notInstalled":"غير مثبت","custom":"مخصص","unknown":"غير معروف","lastSavedAt":"آخر حفظ: {date}","never":"أبدا","justNow":"الآن فقط","minutesAgoShort":"{count} منذ","hoursAgoShort":"{count}h منذ","daysAgoShort":"{count}d منذ","monthsAgoShort":"{count}قبل شهر","yearsAgoShort":"{count}قبل عام","runtimeCheckFailed":"فشل التحقق من وقت التشغيل","yourApiKeyPlaceholder":"مفتاح API الخاص بك","modelPlaceholder":"معرف الموفر/النموذج","configurationSaved":"تم حفظ التكوين بنجاح.","failedToSave":"فشل حفظ التكوين.","noApiKeysCreateOne":"لا توجد مفاتيح API - قم بإنشاء واحد في صفحة المفاتيح","defaultOmnirouteKey":"sk_omniroute (افتراضي)","selectModel":"حدد النموذج","selectModelForAlias":"تحديد نموذج لـ {alias}","selectModelForTool":"حدد نموذجًا لـ {tool}","select":"اختر","clear":"واضح","comingSoon":"قريبا","checkingRuntime":"التحقق من حالة وقت التشغيل...","guideOnlyIntegration":"تكامل الدليل فقط (لا يتطلب وقت تشغيل محلي)","cliRuntimeDetected":"تم اكتشاف وقت تشغيل CLI وأصبح جاهزًا","cliFoundNotRunnable":"تم العثور على واجهة سطر الأوامر (CLI) ولكنها غير قابلة للتشغيل{reason}","cliRuntimeNotDetected":"لم يتم الكشف عن وقت تشغيل CLI","binary":"ثنائي","configPath":"مسار التكوين","configPathShort":"التكوين","failedCheckRuntimeStatus":"فشل في التحقق من حالة وقت التشغيل.","copy":"نسخ","copied":"منقول","copyConfig":"نسخ التكوين","saveConfig":"حفظ التكوين","selectionSaved":"تم حفظ التحديد","guide":"دليل","detected":"تم الكشف عنها","notReady":"غير جاهز","active":"نشط","inactive":"غير نشط","startMitm":"ابدأ تشغيل MITM","stopMitm":"وقف ميتم","mitmStarted":"بدأ MITM بنجاح!","mitmStopped":"توقف MITM بنجاح!","failedStart":"فشل بدء تشغيل MITM","failedStop":"فشل في إيقاف MITM","saveMappings":"حفظ التعيينات","mappingsSaved":"تم حفظ التعيينات!","failedSaveMappings":"فشل حفظ التعيينات","howItWorks":"كيف يعمل:","antigravityHowWorksDesc":"تقوم Antigravity بإرسال الطلبات إلى نقطة نهاية Google. يقوم MITM باعتراضهم وإعادة توجيههم إلى OmniRoute.","antigravityStep1":"1. ابدأ تشغيل MITM لتوجيه الطلبات عبر OmniRoute.","antigravityStep2Prefix":"2. أضف","antigravityStep2Suffix":"إلى ملف المضيفين الخاص بك كـ 127.0.0.1.","antigravityStep3":"3. سيتم فتح Antigravity والطلبات بالوكالة.","sudoPasswordRequiredTitle":"كلمة مرور سودو مطلوبة","sudoPasswordHint":"كلمة مرور المسؤول مطلوبة لتعديل ملف المضيفين وإعدادات وكيل النظام.","enterSudoPassword":"أدخل كلمة مرور سودو","sudoPasswordRequiredError":"كلمة مرور سودو مطلوبة.","cancel":"إلغاء","confirm":"تأكيد","settingsApplied":"تم تطبيق الإعدادات بنجاح!","failedApplySettings":"فشل في تطبيق الإعدادات","settingsReset":"تمت إعادة ضبط الإعدادات بنجاح!","failedResetSettings":"فشل في إعادة ضبط الإعدادات","backupRestored":"تمت استعادة النسخة الاحتياطية!","failedRestore":"فشل في الاستعادة","checkingCli":"جارٍ التحقق من {tool} CLI...","cliNotRunnable":"{tool} تم تثبيت واجهة سطر الأوامر (CLI) ولكنها غير قابلة للتشغيل","cliNotInstalled":"{tool} واجهة سطر الأوامر غير مثبتة","cliNotDetected":"{tool} لم يتم اكتشاف واجهة سطر الأوامر","cliDetectedReady":"{tool} تم اكتشاف واجهة سطر الأوامر (CLI) وهي جاهزة","cliFoundFailedHealthcheck":"{tool} تم العثور على واجهة سطر الأوامر (CLI) ولكن فشل التحقق من سلامة وقت التشغيل{reason}.","installCliPrompt":"الرجاء تثبيت {tool} CLI لاستخدام هذه الميزة.","installCodexPrompt":"الرجاء تثبيت Codex CLI لاستخدام ميزة التطبيق التلقائي.","hide":"إخفاء","howToInstall":"كيفية التثبيت","installationGuide":"دليل التثبيت","platforms":"ماك / لينكس / ويندوز:","afterInstallationRun":"بعد التثبيت، قم بتشغيل","toVerify":"للتحقق.","current":"الحالي","baseUrlPlaceholder":"https://.../v1","resetToDefault":"إعادة التعيين إلى الوضع الافتراضي","providerModelPlaceholder":"معرف الموفر/النموذج","apply":"تطبيق","reset":"إعادة تعيين","manualConfig":"التكوين اليدوي","backups":"النسخ الاحتياطية","configBackups":"النسخ الاحتياطية التكوين","noBackupsYet":"لا توجد نسخ احتياطية حتى الآن. يتم إنشاء النسخ الاحتياطية تلقائيًا قبل كل تطبيق أو إعادة تعيين.","restore":"استعادة","backupRestoredReloading":"تمت استعادة النسخة الاحتياطية! جارٍ إعادة تحميل الحالة...","failedRestoreBackup":"فشل في استعادة النسخة الاحتياطية","applied":"تم التطبيق!","failed":"فشل","resetDone":"إعادة تعيين!","omnirouteConfiguredOpenAiCompatible":"تم تكوين OmniRoute كموفر متوافق مع OpenAI","provider":"مزود","model":"نموذج","providers":"مقدمي الخدمات","auth":"مصادقة","noApiKeysAvailable":"لا توجد مفاتيح API متاحة","usingDefaultOmniroute":"باستخدام الافتراضي: sk_omniroute","updateConfig":"تحديث التكوين","applyConfig":"تطبيق التكوين","noBackupsAvailable":"لا توجد نسخ احتياطية متاحة.","profileSaved":"تم حفظ الملف الشخصي \\"{name}\\"!","failedSaveProfile":"فشل حفظ الملف الشخصي","profileActivated":"تم تفعيل الملف الشخصي!","failedActivateProfile":"فشل في تفعيل الملف الشخصي","profiles":"الملفات الشخصية","savedProfiles":"الملفات الشخصية المحفوظة","noProfilesYet":"لم يتم حفظ أي ملفات شخصية حتى الآن. احفظ التكوين الحالي كملف تعريف أدناه.","activate":"تفعيل","deleteProfile":"حذف الملف الشخصي","profileNamePlaceholder":"اسم الملف الشخصي (مثل الحساب الشخصي)","saveCurrent":"حفظ الحالي","codexAuthNotePrefix":"يستخدم الدستور الغذائي","codexAuthNoteMiddle":"مع","codexAuthNoteSuffix":"انقر فوق \\"تطبيق\\" للتكوين التلقائي.","claudeManualConfiguration":"كلود CLI - التكوين اليدوي","codexManualConfiguration":"Codex CLI - التكوين اليدوي","droidManualConfiguration":"Factory Droid - التكوين اليدوي","openClawManualConfiguration":"فتح المخلب - التكوين اليدوي","clineManualConfiguration":"التكوين اليدوي لكلين","kiloManualConfiguration":"التكوين اليدوي للكيلو كود","toolDescriptions":{"antigravity":"جوجل مكافحة الجاذبية IDE مع MITM","claude":"الأنثروبي كلود كود CLI","codex":"OpenAI Codex CLI","droid":"مساعد مصنع الروبوت AI","openclaw":"افتح مساعد Claw AI","cline":"Cline AI Coding Assistant CLI","kilo":"كيلو كود AI مساعد CLI","cursor":"محرر كود المؤشر AI","continue":"تابع مساعد الذكاء الاصطناعي"},"guides":{"cursor":{"notes":{"0":"يتطلب حساب Cursor Pro لاستخدام هذه الميزة.","1":"يقوم المؤشر بتوجيه الطلبات من خلال الخادم الخاص به، لذلك لا يتم دعم نقطة النهاية المحلية. يرجى تمكين Cloud Endpoint في الإعدادات."},"steps":{"1":{"title":"افتح الإعدادات","desc":"انتقل إلى الإعدادات -> النماذج"},"2":{"title":"تمكين OpenAI API","desc":"تمكين خيار \\"مفتاح OpenAI API\\"."},"3":{"title":"عنوان URL الأساسي"},"4":{"title":"مفتاح واجهة برمجة التطبيقات"},"5":{"title":"إضافة نموذج مخصص","desc":"انقر فوق \\"عرض كافة النماذج\\" -> \\"إضافة نموذج مخصص\\""},"6":{"title":"حدد النموذج"}}},"continue":{"steps":{"1":{"title":"افتح التكوين","desc":"افتح متابعة ملف التكوين"},"2":{"title":"مفتاح واجهة برمجة التطبيقات"},"3":{"title":"حدد النموذج"},"4":{"title":"إضافة تكوين النموذج","desc":"أضف التكوين التالي إلى مجموعة النماذج الخاصة بك:"}}}}},"combos":{"title":"المجموعات","description":"قم بإنشاء مجموعات نماذج باستخدام التوجيه المرجح والدعم الاحتياطي","createCombo":"إنشاء التحرير والسرد","editCombo":"تحرير التحرير والسرد","deleteCombo":"حذف التحرير والسرد","noModels":"لا نماذج","noModelsYet":"لم تتم إضافة أي نماذج حتى الآن","addModel":"إضافة نموذج","addModelToCombo":"إضافة نموذج إلى التحرير والسرد","routingStrategy":"استراتيجية التوجيه","maxRetries":"ماكس إعادة المحاولة","timeout":"المهلة (مللي ثانية)","healthcheck":"فحص الصحة","priority":"الأولوية","fallback":"احتياطي","roundRobin":"جولة روبن","random":"عشوائي","leastLatency":"الكمون الأقل","comboName":"اسم التحرير والسرد","comboNamePlaceholder":"بلدي التحرير والسرد","deleteConfirm":"هل تريد حذف هذا التحرير والسرد؟","noCombosYet":"لا المجموعات بعد","comboCreated":"تم إنشاء التحرير والسرد بنجاح","comboUpdated":"تم تحديث التحرير والسرد بنجاح","comboDeleted":"تم حذف التحرير والسرد","failedCreate":"فشل إنشاء التحرير والسرد","failedUpdate":"فشل تحديث التحرير والسرد","errorCreating":"حدث خطأ أثناء إنشاء التحرير والسرد","errorUpdating":"حدث خطأ أثناء تحديث التحرير والسرد","errorDeleting":"حدث خطأ أثناء حذف التحرير والسرد","testFailed":"فشل طلب الاختبار","failedToggle":"فشل تبديل التحرير والسرد","testResults":"نتائج الاختبار — {name}","resolvedBy":"تم الحل بواسطة:","more":"+{count} المزيد","reqs":"طلبات","success":"النجاح","proxyConfigured":"تم تكوين الوكيل","copyComboName":"انسخ اسم التحرير والسرد","enableCombo":"تمكين التحرير والسرد","disableCombo":"تعطيل التحرير والسرد","testCombo":"التحرير والسرد الاختبار","duplicate":"مكررة","proxyConfig":"تكوين الوكيل","nameRequired":"الاسم مطلوب","nameInvalid":"فقط الحروف والأرقام، -، _، / و . مسموح به","nameHint":"الحروف والأرقام، -، _، / و . مسموح به","priorityDesc":"التراجع المتسلسل: تجربة النموذج 1 أولاً، ثم 2، وما إلى ذلك.","weightedDesc":"يوزع حركة المرور حسب نسبة الوزن مع التراجع","roundRobinDesc":"التوزيع الدائري: ينتقل كل طلب إلى النموذج التالي بالتناوب","randomDesc":"اختيار عشوائي موحد، ثم الرجوع إلى النماذج المتبقية","leastUsedDesc":"يختار النموذج الذي يحتوي على أقل عدد من الطلبات، مع موازنة الحمل مع مرور الوقت","costOptimizedDesc":"الطرق إلى النموذج الأرخص تعتمد أولاً على التسعير","models":"نماذج","autoBalance":"التوازن التلقائي","advancedSettings":"الإعدادات المتقدمة","retryDelay":"تأخير إعادة المحاولة (ملي ثانية)","concurrencyPerModel":"التزامن/النموذج","queueTimeout":"مهلة قائمة الانتظار (مللي ثانية)","advancedHint":"اتركه فارغًا لاستخدام الإعدادات الافتراضية العامة. تتجاوز هذه الإعدادات لكل موفر.","moveUp":"تحرك للأعلى","moveDown":"تحرك للأسفل","removeModel":"إزالة","saving":"جارٍ الحفظ...","weighted":"مرجح","leastUsed":"الأقل استخدامًا","costOpt":"تكلفة الاختيار"},"costs":{"title":"التكاليف","budget":"الميزانية","totalCost":"التكلفة الإجمالية","breakdown":"تقسيم التكلفة","noData":"لا توجد بيانات التكلفة","byModel":"حسب الموديل","byProvider":"بواسطة المزود"},"endpoint":{"title":"نقطة نهاية واجهة برمجة التطبيقات","available":"نقاط النهاية المتاحة","cloudProxy":"الوكيل السحابي","disableConfirm":"هل أنت متأكد أنك تريد تعطيل الوكيل السحابي؟","baseUrl":"عنوان URL الأساسي","apiKeyLabel":"مفتاح واجهة برمجة التطبيقات","registeredKeys":"المفاتيح المسجلة","chatCompletions":"استكمالات الدردشة","responses":"الردود","listModels":"نماذج القائمة","usingCloudProxy":"باستخدام وكيل السحابة","usingLocalServer":"باستخدام الخادم المحلي","machineId":"معرف الجهاز: {id}...","disableCloud":"تعطيل السحابة","enableCloud":"تمكين السحابة","modelsAcrossEndpoints":"نماذج {models} عبر نقاط النهاية {endpoints}","chatDesc":"الدردشة المتدفقة وغير المتدفقة مع جميع مقدمي الخدمة","embeddings":"التضمين","embeddingsDesc":"تضمينات نصية للبحث وخطوط أنابيب RAG","imageGeneration":"توليد الصور","imageDesc":"توليد الصور من المطالبات النصية","rerank":"إعادة الترتيب","rerankDesc":"إعادة ترتيب المستندات حسب صلتها بالاستعلام","audioTranscription":"النسخ الصوتي","audioTranscriptionDesc":"نسخ الملفات الصوتية إلى نص (Whisper)","textToSpeech":"تحويل النص إلى كلام","textToSpeechDesc":"تحويل النص إلى كلام يبدو طبيعيا","moderations":"الاعتدالات","moderationsDesc":"الإشراف على المحتوى وتصنيف السلامة","enableCloudTitle":"تمكين الوكيل السحابي","whatYouGet":"ما سوف تحصل عليه","cloudBenefitAccess":"الوصول إلى API الخاص بك من أي مكان في العالم","cloudBenefitShare":"مشاركة نقطة النهاية مع فريقك بسهولة","cloudBenefitPorts":"لا حاجة لفتح المنافذ أو تكوين جدار الحماية","cloudBenefitEdge":"شبكة حافة عالمية سريعة","cloudSessionNote":"ستحتفظ السحابة بجلسة المصادقة الخاصة بك لمدة يوم واحد. إذا لم يتم استخدامه، سيتم حذفه تلقائيا.","cloudUnstableNote":"السحابة غير مستقرة حاليًا مع Claude Code OAuth في بعض الحالات.","cloudConnected":"الوكيل السحابي متصل!","connectingToCloud":"جارٍ الاتصال بالسحابة...","verifyingConnection":"جارٍ التحقق من الاتصال...","connecting":"جارٍ الاتصال...","verifying":"جارٍ التحقق...","connected":"متصل!","disableCloudTitle":"تعطيل الوكيل السحابي","disableWarning":"سيتم حذف جميع جلسات المصادقة من السحابة.","syncingData":"جارٍ مزامنة أحدث البيانات...","disablingCloud":"جارٍ تعطيل السحابة...","syncing":"جارٍ المزامنة...","disabling":"جارٍ التعطيل...","cloudConnectedVerified":"تم توصيل Cloud Proxy والتحقق منه!","connectedVerificationPending":"متصل - التحقق معلق","connectedVerificationPendingWithError":"متصل — التحقق معلق: {error}","cloudDisabledSuccess":"تم تعطيل السحابة بنجاح","syncedSuccess":"تمت المزامنة بنجاح","failedDisable":"فشل في تعطيل السحابة","failedEnable":"فشل في تمكين السحابة","cloudRequestTimeout":"انتهت مهلة الطلب السحابي","cloudRequestFailed":"فشل طلب السحابة","cloudWorkerUnreachable":"لا يمكن الوصول إلى عامل السحابة. تأكد من تشغيل الخدمة السحابية (npm run dev in /cloud).","connectionFailed":"فشل الاتصال","syncFailed":"فشلت مزامنة البيانات السحابية","providerModelsTitle":"{provider} — النماذج","noModelsForProvider":"لا توجد نماذج متاحة لهذا المزود.","chat":"الدردشة","embedding":"التضمين","image":"صورة","custom":"مخصص","modelsCount":"{count, plural, one {# model} other {# models}}"},"health":{"title":"صحة النظام","description":"المراقبة في الوقت الحقيقي لمثيل OmniRoute الخاص بك","healthy":"صحي","degraded":"متدهورة","down":"أسفل","uptime":"الجهوزية","memory":"الذاكرة","memoryRss":"الذاكرة (آر إس إس)","heap":"كومة","cpu":"وحدة المعالجة المركزية","database":"قاعدة البيانات","version":"الإصدار","lastCheck":"الفحص الأخير","providerHealth":"صحة المزود","systemMetrics":"مقاييس النظام","tokenHealth":"صحة الرمز","refreshAll":"تحديث الكل","checkNow":"تحقق الآن","loadingHealth":"جارٍ تحميل البيانات الصحية...","failedToLoad":"فشل تحميل البيانات الصحية: {error}","retry":"أعد المحاولة","allOperational":"جميع الأنظمة قيد التشغيل","issuesDetected":"تم اكتشاف مشاكل في النظام","updatedAt":"تم التحديث {time}","latency":"الكمون","latencyP50":"ص50","latencyP95":"ص95","latencyP99":"ص99","millisecondsShort":"{value}ms","notAvailable":"—","totalRequests":"إجمالي الطلبات","noDataYet":"لا توجد بيانات حتى الآن","promptCache":"ذاكرة التخزين المؤقت الفوري","entries":"إدخالات","hitRate":"معدل الإصابة","hitsMisses":"الزيارات / الأخطاء","signatureCache":"ذاكرة التخزين المؤقت للتوقيع","signatureDefaults":"الافتراضيات","signatureTool":"أداة","signatureFamily":"العائلة","signatureSession":"جلسة","recovering":"يتعافى","noCBData":"لا تتوفر بيانات قاطع الدائرة. تقديم بعض الطلبات أولا.","providerHealthStatusAria":"الحالة الصحية للمزود","issuesLabel":"تم اكتشاف المشكلات","operational":"التشغيلية","providers":"مقدمي الخدمات","healthyCount":"{count} صحي","nodeVersion":"العقدة {version}","failures":"{count} فشل","failuresPlural":"{count} حالات الفشل","lastFailure":"الاخير","rateLimitStatus":"حالة حد السعر","activeLimiters":"{count} المحدد النشط","activeLimitersPlural":"{count} المحددات النشطة","queued":"في قائمة الانتظار","queuedCount":"{count} في قائمة الانتظار","running":"تشغيل","runningCount":"{count} قيد التشغيل","ok":"حسنًا","activeLockouts":"عمليات الإغلاق النشطة","resetConfirm":"إعادة ضبط كافة قواطع الدائرة إلى الحالة الصحية؟ سيؤدي هذا إلى مسح جميع أعداد الفشل واستعادة كافة الموفرين إلى الحالة التشغيلية.","resetAllTitle":"إعادة ضبط كافة قواطع الدائرة إلى الحالة الصحية","resetting":"إعادة الضبط...","resetAll":"إعادة ضبط الكل","until":"حتى {time}"},"limits":{"title":"الحدود والحصص","rateLimit":"حد السعر","remaining":"المتبقي","requestsPerMinute":"طلبات/دقيقة","tokensPerMinute":"الرموز / دقيقة","dailyLimit":"الحد اليومي"},"logs":{"title":"سجلات","requestLogs":"سجلات الطلب","proxyLogs":"سجلات الوكيل","auditLog":"سجل التدقيق","console":"وحدة التحكم","auditLogDesc":"الإجراءات الإدارية والأحداث الأمنية","loading":"جار التحميل...","refresh":"تحديث","filterByAction":"التصفية حسب الإجراء...","filterByActor":"تصفية حسب الممثل...","filterEntriesAria":"تصفية إدخالات سجل التدقيق","filterByActionTypeAria":"التصفية حسب نوع الإجراء","filterByActorAria":"تصفية حسب الممثل","refreshAuditLogAria":"تحديث سجل التدقيق","tableAria":"إدخالات سجل التدقيق","failedFetchAuditLog":"فشل جلب سجل التدقيق","showing":"عرض {count} إدخالات (الإزاحة {offset})","search":"بحث","timestamp":"الطابع الزمني","action":"العمل","actor":"ممثل","target":"الهدف","details":"التفاصيل","ipAddress":"عنوان IP","notAvailable":"—","noEntries":"لم يتم العثور على إدخالات سجل التدقيق","previous":"السابق","next":"التالي"},"onboarding":{"welcome":"مرحبًا","security":"الأمن","test":"اختبار","ready":"جاهز!","setPassword":"تعيين كلمة المرور","addProvider":"أضف مزودك الأول","getStarted":"ابدأ","skip":"تخطي","skipWizard":"تخطي المعالج بالكامل","skipPassword":"تخطي إعداد كلمة المرور","skipAndContinue":"تخطي ومتابعة","passwordLabel":"كلمة المرور","confirmPassword":"تأكيد كلمة المرور","enterPassword":"أدخل كلمة المرور","confirmPasswordPlaceholder":"تأكيد كلمة المرور","passwordsMismatch":"كلمات المرور غير متطابقة","setupComplete":"اكتمل الإعداد!","goToDashboard":"انتقل إلى لوحة المعلومات →","welcomeDesc":"OmniRoute هو وكيل AI API المحلي الخاص بك. يقوم بتوجيه الطلبات إلى العديد من موفري الذكاء الاصطناعي مع موازنة التحميل وتجاوز الفشل وتتبع الاستخدام.","multiProvider":"متعدد الموفر","usageTracking":"تتبع الاستخدام","apiKeyMgmt":"إدارة مفتاح واجهة برمجة التطبيقات (API)","securityDesc":"قم بتعيين كلمة مرور لحماية لوحة المعلومات الخاصة بك، أو قم بالتخطي الآن.","providerDesc":"قم بتوصيل مزود الذكاء الاصطناعي الأول الخاص بك. يمكنك إضافة المزيد لاحقا.","apiKeyRequired":"مفتاح واجهة برمجة التطبيقات (مطلوب)","customUrlOptional":"عنوان URL المخصص (اختياري)","testDesc":"دعونا نتحقق من أن اتصال المزود الخاص بك يعمل.","runTest":"قم بتشغيل اختبار الاتصال","testingConnection":"اختبار الاتصال...","connectionSuccessful":"تم الاتصال بنجاح! المزود الخاص بك جاهز.","noProviderFound":"لم يتم العثور على مزود. يمكنك إضافة واحدة من لوحة التحكم لاحقًا.","testFailed":"فشل الاختبار، ولكن يمكنك تكوين ذلك لاحقًا.","couldNotTest":"لا يمكن الاختبار الآن. يمكنك الاختبار من لوحة القيادة.","doneDesc":"أنت جاهز تمامًا! تم تكوين مثيل OmniRoute الخاص بك وأصبح جاهزًا لتوكيل طلبات الذكاء الاصطناعي.","yourEndpoint":"نقطة النهاية الخاصة بك:","continue":"متابعة","retry":"أعد المحاولة","failedSetPassword":"فشل في تعيين كلمة المرور. حاول ثانية.","failedAddProvider":"فشلت إضافة الموفر. حاول ثانية.","connectionError":"خطأ في الاتصال. يرجى المحاولة مرة أخرى.","provider":"مزود"},"providers":{"title":"مقدمي الخدمات","addProvider":"إضافة موفر","editProvider":"تحرير الموفر","deleteProvider":"حذف الموفر","noProviders":"لم يتم تكوين أي مقدمي خدمات","modelAvailability":"توفر النموذج","accounts":"الحسابات","newAccount":"حساب جديد","deleteConfirm":"هل أنت متأكد أنك تريد حذف هذا الموفر؟","testing":"اختبار...","testConnection":"اتصال الاختبار","testSuccess":"تم الاتصال بنجاح","testFailed":"فشل الاتصال","available":"متاح","cooldown":"فترة التهدئة","unavailable":"غير متاح","unknown":"غير معروف","oauthLabel":"OAuth","compatibleLabel":"متوافق","chat":"الدردشة","responses":"الردود","messages":"الرسائل","oauthProviders":"موفري OAuth","freeProviders":"مقدمي الخدمة المجانية","apiKeyProviders":"موفري مفاتيح API","compatibleProviders":"مقدمو خدمات API المتوافقون","testAll":"اختبار الكل","testAllOAuth":"اختبار كافة اتصالات OAuth","testAllFree":"اختبار كافة الاتصالات المجانية","testAllApiKey":"اختبار جميع اتصالات مفتاح API","testAllCompatible":"اختبار كافة الاتصالات المتوافقة","connected":"{count} متصل","errorCount":"{count} خطأ ({code})","errorCountNoCode":"{count} خطأ","noConnections":"لا اتصالات","disabled":"معطل","enableProvider":"تمكين المزود","disableProvider":"تعطيل المزود","testResults":"نتائج الاختبار","noCompatibleYet":"لم تتم إضافة أي مقدمي خدمات متوافقين حتى الآن","compatibleHint":"استخدم الأزرار أعلاه لإضافة نقاط نهاية متوافقة مع OpenAI أو Anthropic","addOpenAICompatible":"إضافة متوافق مع OpenAI","addAnthropicCompatible":"أضف متوافقًا مع الأنثروبولوجيا","addNewProvider":"إضافة مزود جديد","backToProviders":"العودة إلى مقدمي الخدمة","configureNewProvider":"قم بتكوين موفر AI جديد لاستخدامه مع تطبيقاتك.","providerLabel":"مزود","selectProvider":"حدد مزودًا","selectedProvider":"المزود المختار","authMethod":"طريقة المصادقة","apiKeyLabel":"مفتاح واجهة برمجة التطبيقات","apiKeyRequired":"مطلوب مفتاح API","selectProviderRequired":"الرجاء اختيار مزود","enterApiKey":"أدخل مفتاح API الخاص بك","apiKeySecure":"سيتم تشفير مفتاح API الخاص بك وتخزينه بشكل آمن.","oauth2Connect":"تواصل مع OAuth2","oauth2Label":"OAuth2","oauth2Desc":"قم بتوصيل حسابك باستخدام مصادقة OAuth2.","displayName":"اسم العرض","displayNamePlaceholder":"على سبيل المثال، واجهة برمجة تطبيقات الإنتاج، وبيئة التطوير","displayNameHint":"اختياري. اسم مألوف لتعريف هذا التكوين.","active":"نشط","activeDescription":"قم بتمكين هذا الموفر للاستخدام في تطبيقاتك","cancel":"إلغاء","createProvider":"إنشاء موفر","failedCreate":"فشل في إنشاء الموفر","errorOccurred":"حدث خطأ. يرجى المحاولة مرة أخرى.","modelStatus":"حالة النموذج","allModelsOperational":"جميع الموديلات شغالة","modelsWithIssues":"{count} الطراز (النماذج) الذي به مشكلات","allModelsNormal":"جميع النماذج تستجيب بشكل طبيعي.","cooldownCleared":"تم مسح فترة التهدئة لـ {model}","failedClearCooldown":"فشل في مسح فترة التهدئة","loadingAvailability":"جارٍ تحميل مدى توفر الطراز...","clearCooldown":"واضح","clearing":"المقاصة...","until":"حتى {time}","providerTestFailed":"فشل اختبار الموفر","modeTest":"{mode} اختبار","passedCount":"تم {count}","failedCount":"فشل {count}","testedCount":"تم اختبار {count}","millisecondsAbbr":"{value}ms","okShort":"حسنًا","errorShort":"خطأ","noActiveConnectionsInGroup":"لم يتم العثور على اتصالات نشطة لهذه المجموعة.","allTestsPassed":"تم اجتياز جميع اختبارات {total}","testSummary":"تم اجتياز {passed}/{total}، وفشل {failed}","nameLabel":"الاسم","prefixLabel":"بادئة","baseUrlLabel":"عنوان URL الأساسي","apiTypeLabel":"نوع واجهة برمجة التطبيقات","prefixHint":"مطلوب. بادئة فريدة لأسماء النماذج.","nameHint":"مطلوب. تسمية ودية لهذه العقدة.","baseUrlHint":"مطلوب.  عنوان URL الأساسي لواجهة برمجة تطبيقات الموفر.","anthropicPrefixPlaceholder":"ac-منتج","openaiPrefixPlaceholder":"oc-منتج","anthropicBaseUrlPlaceholder":"https://api.anthropic.com/v1","openaiBaseUrlPlaceholder":"https://api.openai.com/v1","validateConnection":"التحقق من صحة الاتصال","validating":"جارٍ التحقق...","connectionValid":"الاتصال صالح!","connectionFailed":"فشل الاتصال. تحقق من عنوان URL والمفتاح.","testKeyLabel":"اختبار مفتاح API","testKeyPlaceholder":"sk-... (للتحقق فقط)","providerNotFound":"لم يتم العثور على الموفر","deleteConnectionConfirm":"هل تريد حذف هذا الاتصال؟","failedSetAlias":"فشل في تعيين الاسم المستعار","failedSaveConnection":"فشل حفظ الاتصال","failedSaveConnectionRetry":"فشل حفظ الاتصال. يرجى المحاولة مرة أخرى.","failedRetestConnection":"فشل في إعادة اختبار الاتصال","deleteCompatibleNodeConfirm":"هل تريد حذف العقدة المتوافقة {type} هذه؟","anthropicCompatibleDetails":"تفاصيل متوافقة الأنثروبي","openaiCompatibleDetails":"تفاصيل متوافقة مع OpenAI","messagesApi":"واجهة برمجة تطبيقات الرسائل","responsesApi":"واجهة برمجة التطبيقات للردود","chatCompletions":"استكمالات الدردشة","importingModels":"جارٍ الاستيراد...","importFromModels":"الاستيراد من / النماذج","addConnectionToImport":"أضف اتصالاً لتمكين الاستيراد.","noModelsConfigured":"لم يتم تكوين أي نماذج","connectionCount":"{count} الاتصال (الاتصالات)","fetchingModels":"جارٍ جلب النماذج المتوفرة...","failedFetchModels":"فشل جلب النماذج","noModelsFound":"لم يتم العثور على نماذج","importFailed":"فشل الاستيراد","noNewModelsAdded":"لم تتم إضافة نماذج جديدة.","adding":"جارٍ الإضافة...","importingModelsTitle":"استيراد النماذج","copyModel":"نموذج النسخ","removeModel":"إزالة النموذج","rateLimitProtected":"محمي","rateLimitUnprotected":"غير محمية","enableRateLimitProtection":"انقر لتمكين حماية حدود المعدل","disableRateLimitProtection":"انقر لتعطيل حماية حد المعدل","productionKey":"مفتاح الإنتاج","enterNewApiKey":"أدخل مفتاح API الجديد","optional":"اختياري","anthropicCompatibleName":"متوافق مع الأنثروبولوجيا","openaiCompatibleName":"متوافق مع OpenAI","failedImportModels":"فشل استيراد النماذج","noModelsReturnedFromEndpoint":"لم يتم إرجاع أي نماذج من نقطة النهاية /models.","importingModelsProgress":"جارٍ استيراد {current} من طرازات {total}...","foundModelsStartingImport":"تم العثور على نماذج {count}. جارٍ بدء الاستيراد...","importingModelById":"جارٍ استيراد {modelId}...","importSuccessCount":"تم استيراد {count, plural, one {# model} other {# models}} بنجاح!","noNewModelsAddedExisting":"لم تتم إضافة أي نماذج جديدة (كلها موجودة بالفعل).","importDoneCount":"✓ تم! {count, plural, one {# model imported.} other {# models imported.}}","unexpectedErrorOccurred":"حدث خطأ غير متوقع","connectionCountLabel":"{count, plural, one {# connection} other {# connections}}","messagesPath":"الرسائل","responsesPath":"الردود","chatCompletionsPath":"الدردشة/الإكمال","add":"أضف","edit":"تحرير","delete":"حذف","anthropic":"أنثروبي","openai":"OpenAI","singleConnectionPerCompatible":"يُسمح باتصال واحد فقط لكل عقدة متوافقة. أضف عقدة أخرى إذا كنت بحاجة إلى المزيد من الاتصالات.","connections":"اتصالات","providerProxyTitleConfigured":"وكيل الموفر: {host}","configured":"تم تكوينه","providerProxyConfigureHint":"قم بتكوين الوكيل لجميع اتصالات هذا الموفر","providerProxy":"وكيل الموفر","noConnectionsYet":"لا توجد اتصالات حتى الآن","addFirstConnectionHint":"أضف اتصالك الأول للبدء","addConnection":"إضافة اتصال","availableModels":"النماذج المتاحة","pageAutoRefresh":"سيتم تحديث الصفحة تلقائيا...","statusDisabled":"معطل","statusConnected":"متصل","statusRuntimeIssue":"مشكلة وقت التشغيل","statusAuthFailed":"فشلت المصادقة","statusRateLimited":"معدل محدود","statusNetworkIssue":"مشكلة الشبكة","statusTestUnsupported":"اختبار غير معتمد","statusUnavailable":"غير متاح","statusFailed":"فشل","statusError":"خطأ","oauthAccount":"حساب أووث","errorTypeRuntime":"وقت التشغيل المحلي","errorTypeUpstreamAuth":"مصادقة المنبع","errorTypeMissingCredential":"بيانات الاعتماد مفقودة","errorTypeRefreshFailed":"فشل التحديث","errorTypeTokenExpired":"انتهت صلاحية الرمز المميز","errorTypeRateLimited":"معدل محدود","errorTypeUpstreamUnavailable":"المنبع غير متاح","errorTypeNetworkError":"خطأ في الشبكة","errorTypeTestUnsupported":"اختبار غير معتمد","errorTypeUpstreamError":"خطأ المنبع","proxySourceGlobal":"عالمي","proxySourceProvider":"مزود","proxySourceKey":"مفتاح","proxyConfiguredBySource":"الوكيل ({source}): {host}","autoPriority":"تلقائي: {priority}","proxy":"وكيل","retestAuthentication":"إعادة اختبار المصادقة","retest":"إعادة الاختبار","disableConnection":"تعطيل الاتصال","enableConnection":"تمكين الاتصال","reauthenticateConnection":"إعادة مصادقة هذا الاتصال","proxyConfig":"تكوين الوكيل","aliasExistsAlert":"الاسم المستعار \\"{alias}\\" موجود بالفعل. الرجاء استخدام نموذج مختلف أو تعديل الاسم المستعار الموجود.","openRouterAnyModelHint":"يدعم OpenRouter أي طراز. إضافة نماذج وإنشاء أسماء مستعارة للوصول السريع.","modelIdFromOpenRouter":"معرف النموذج (من OpenRouter)","openRouterModelPlaceholder":"أنثروبي/كلود-3-أوبوس","customModels":"نماذج مخصصة","customModelsHint":"قم بإضافة معرفات النماذج غير الموجودة في القائمة الافتراضية. ستكون هذه متاحة للتوجيه.","modelId":"معرف النموذج","customModelPlaceholder":"على سبيل المثال جي بي تي-4.5-توربو","loading":"جار التحميل...","removeCustomModel":"إزالة النموذج المخصص","noCustomModels":"لم تتم إضافة نماذج مخصصة بعد.","allSuggestedAliasesExist":"كافة الأسماء المستعارة المقترحة موجودة بالفعل. الرجاء اختيار نموذج مختلف أو إزالة الأسماء المستعارة المتضاربة.","failedSaveCustomModel":"فشل حفظ النموذج المخصص","modelAddedSuccess":"تمت إضافة النموذج {modelId} بنجاح","failedAddModelTryAgain":"فشلت إضافة النموذج. يرجى المحاولة مرة أخرى.","failedSaveImportedModel":"فشل حفظ النموذج المستورد في قاعدة البيانات المخصصة","failedImportModelsTryAgain":"فشل استيراد النماذج. يرجى المحاولة مرة أخرى.","failedRemoveModelFromDatabase":"فشل في إزالة النموذج من قاعدة البيانات","modelRemovedSuccess":"تمت إزالة النموذج بنجاح","failedDeleteModelTryAgain":"فشل في حذف النموذج. يرجى المحاولة مرة أخرى.","compatibleModelsDescription":"قم بإضافة نماذج متوافقة مع {type} يدويًا أو قم باستيرادها من نقطة النهاية /models.","anthropicCompatibleModelPlaceholder":"كلود-3-أوبوس-20240229","openaiCompatibleModelPlaceholder":"gpt-4o","apiKeyValidationFailed":"فشل التحقق من صحة مفتاح API. يرجى التحقق من المفتاح الخاص بك والمحاولة مرة أخرى.","addProviderApiKeyTitle":"أضف {provider} مفتاح واجهة برمجة التطبيقات","checking":"جارٍ التحقق...","check":"تحقق","valid":"صالح","invalid":"غير صالح","creating":"جارٍ الإنشاء...","validationChecksAnthropicCompatible":"يتحقق التحقق من الصحة {provider} من خلال التحقق من مفتاح API.","validationChecksOpenAiCompatible":"عمليات التحقق من الصحة {provider} عبر /models على عنوان URL الأساسي الخاص بك.","priorityLabel":"الأولوية","saving":"جارٍ الحفظ...","save":"حفظ","editConnection":"تحرير الاتصال","accountName":"اسم الحساب","email":"البريد الإلكتروني","healthCheckMinutes":"فحص الصحة (دقيقة)","healthCheckHint":"الفاصل الزمني لتحديث الرمز المميز. 0 = معطل.","failedTestConnection":"فشل في اختبار الاتصال","failed":"فشل","leaveBlankKeepCurrentApiKey":"اتركه فارغًا للاحتفاظ بمفتاح API الحالي.","editCompatibleTitle":"تحرير {type} متوافق","compatibleBaseUrlHint":"استخدم عنوان URL الأساسي (الذي ينتهي بـ /v1) لواجهة برمجة التطبيقات المتوافقة مع {type}.","apiKeyForCheck":"مفتاح API (للفحص)","compatibleProdPlaceholder":"{type} متوافق (المنتج)"},"settings":{"title":"الإعدادات","general":"عام","security":"الأمن","appearance":"المظهر","routing":"التوجيه","cache":"ذاكرة التخزين المؤقت","resilience":"المرونة","systemPrompt":"موجه النظام","thinkingBudget":"ميزانية التفكير","proxy":"وكيل","pricing":"التسعير","storage":"التخزين","policies":"السياسات","ipFilter":"مرشح IP","comboDefaults":"افتراضيات التحرير والسرد","fallbackChains":"سلاسل احتياطية","changePassword":"تغيير كلمة المرور","enablePassword":"تمكين كلمة المرور","darkMode":"الوضع المظلم","lightMode":"وضع الضوء","systemTheme":"موضوع النظام","enableCache":"تمكين ذاكرة التخزين المؤقت","cacheTTL":"ذاكرة التخزين المؤقت TTL","maxCacheSize":"الحد الأقصى لحجم ذاكرة التخزين المؤقت","clearCache":"مسح ذاكرة التخزين المؤقت","cacheHits":"زيارات ذاكرة التخزين المؤقت","cacheMisses":"يفتقد ذاكرة التخزين المؤقت","hitRate":"معدل الإصابة","cacheEntries":"إدخالات ذاكرة التخزين المؤقت","circuitBreaker":"قواطع دوائر","retryPolicy":"إعادة محاولة السياسة","maxRetries":"ماكس إعادة المحاولة","retryDelay":"إعادة المحاولة تأخير","timeoutMs":"المهلة (مللي ثانية)","enableSystemPrompt":"تمكين موجه النظام","systemPromptText":"نص موجه النظام","enableThinking":"تمكين التفكير","maxThinkingTokens":"رموز التفكير ماكس","enableProxy":"تمكين الوكيل","proxyUrl":"عنوان URL الوكيل","pricingRates":"تنسيق أسعار التسعير","currentPricing":"نظرة عامة على الأسعار الحالية","loadingPricing":"جارٍ تحميل بيانات الأسعار...","noPricing":"لا توجد بيانات التسعير المتاحة","input":"الإدخال","output":"الإخراج","cached":"مخبأة","reasoning":"المنطق","cacheCreation":"إنشاء ذاكرة التخزين المؤقت","customPricing":"التسعير المخصص","databaseSize":"حجم قاعدة البيانات","backupDb":"قاعدة بيانات النسخ الاحتياطي","restoreDb":"استعادة قاعدة البيانات","exportData":"تصدير البيانات","importData":"استيراد البيانات","clearData":"مسح كافة البيانات","clearDataConfirm":"سيؤدي هذا إلى حذف جميع البيانات بشكل دائم. هل أنت متأكد؟","enableRequestLogs":"تمكين سجلات الطلب","logRetention":"الاحتفاظ بالسجل","ipWhitelist":"القائمة البيضاء للملكية الفكرية","ipBlacklist":"القائمة السوداء للملكية الفكرية","addIP":"أضف IP","savedSuccessfully":"تم حفظ الإعدادات بنجاح","ai":"منظمة العفو الدولية","advanced":"متقدم","localMode":"الوضع المحلي — كافة البيانات المخزنة على جهازك","settingsSectionsAria":"أقسام الإعدادات","switchThemes":"التبديل بين السمات الفاتحة والداكنة","themeSelectionAria":"اختيار الموضوع","themeLight":"ضوء","themeDark":"الظلام","themeSystem":"النظام","hideHealthLogs":"إخفاء سجلات التحقق من الصحة","hideHealthLogsDesc":"عند التشغيل، قم بمنع رسائل [HealthCheck] في وحدة تحكم الخادم","promptCache":"ذاكرة التخزين المؤقت الفوري","flushCache":"مسح ذاكرة التخزين المؤقت","flushing":"فلاشينغ…","size":"الحجم","hits":"الزيارات","evictions":"عمليات الإخلاء","loadingCacheStats":"جارٍ تحميل إحصائيات ذاكرة التخزين المؤقت…","globalProxy":"الوكيل العالمي","globalProxyDesc":"قم بتكوين وكيل خارجي عالمي لجميع مكالمات API. يمكن للموفرين الفرديين والمجموعات والمفاتيح تجاوز هذا.","noGlobalProxy":"لم يتم تكوين وكيل عالمي","globalLabel":"عالمي","configure":"تكوين","globalSystemPrompt":"موجه النظام العالمي","systemPromptDesc":"تم إدراجه في جميع الطلبات على مستوى الوكيل","saved":"تم الحفظ","systemPromptPlaceholder":"أدخل موجه النظام لإدخاله في كافة الطلبات...","systemPromptHint":"يتم إضافة هذه المطالبة مسبقًا إلى رسالة النظام الخاصة بكل طلب. يُستخدم للحصول على الإرشادات العامة أو إرشادات السلامة أو قواعد تنسيق الاستجابة.","chars":"{count} حرف","thinkingBudgetTitle":"ميزانية التفكير","thinkingBudgetDesc":"التحكم في استخدام الرمز المميز لاستدلال الذكاء الاصطناعي عبر جميع الطلبات","passthrough":"العبور","passthroughDesc":"لا توجد تغييرات - يتحكم العميل في ميزانية التفكير","auto":"تلقائي","autoDesc":"قم بتجريد كل تكوينات التفكير - دع مقدم الخدمة يقرر","custom":"مخصص","customDesc":"قم بتعيين ميزانية رمزية ثابتة لجميع الطلبات","adaptive":"التكيف","adaptiveDesc":"مقياس الميزانية على أساس تعقيد الطلب","effortNone":"لا شيء (0 الرموز)","effortLow":"منخفض (1 ألف رمز)","effortMedium":"متوسط (10 آلاف رمز)","effortHigh":"عالية (128 ألف رمز)","tokenBudget":"ميزانية الرمز المميز","tokens":"الرموز","baseEffortLevel":"مستوى الجهد الأساسي","adaptiveHint":"يتغير الوضع التكيفي من هذا المستوى الأساسي استنادًا إلى عدد الرسائل واستخدام الأداة وطول المطالبة.","requireLogin":"تتطلب تسجيل الدخول","requireLoginDesc":"عند التشغيل، تتطلب لوحة القيادة كلمة المرور. عند إيقاف التشغيل، قم بالوصول دون تسجيل الدخول.","currentPassword":"كلمة المرور الحالية","enterCurrentPassword":"أدخل كلمة المرور الحالية","newPassword":"كلمة المرور الجديدة","enterNewPassword":"أدخل كلمة المرور الجديدة","confirmPassword":"تأكيد كلمة المرور الجديدة","confirmPasswordPlaceholder":"تأكيد كلمة المرور الجديدة","passwordsNoMatch":"كلمات المرور غير متطابقة","passwordUpdated":"تم تحديث كلمة المرور بنجاح","failedUpdatePassword":"فشل تحديث كلمة المرور","errorOccurred":"حدث خطأ","updatePassword":"تحديث كلمة المرور","setPassword":"تعيين كلمة المرور","apiEndpointProtection":"حماية نقطة النهاية لواجهة برمجة التطبيقات (API).","requireAuthModels":"يتطلب مفتاح API لـ /models","requireAuthModelsDesc":"عند التشغيل، تقوم نقطة النهاية /v1/models بإرجاع 404 للطلبات التي لم تتم مصادقتها. يمنع اكتشاف النموذج بواسطة مستخدمين غير مصرح لهم.","blockedProviders":"مقدمي الخدمات المحظورين","blockedProvidersDesc":"إخفاء موفري خدمات محددين من استجابة /v1/models. لن يظهر مقدمو الخدمات المحظورون في قوائم النماذج.","providersBlocked":"{count} تم حظر الموفر (المزودين) من /models","blockProviderTitle":"كتلة {provider}","unblockProviderTitle":"قم بإلغاء حظر {provider}","routingStrategy":"استراتيجية التوجيه","fillFirst":"املأ أولاً","fillFirstDesc":"استخدم الحسابات بترتيب الأولوية","roundRobin":"جولة روبن","roundRobinDesc":"التنقل بين جميع الحسابات","p2c":"P2C","p2cDesc":"اختر 2 عشوائيًا، واستخدم الأكثر صحة","random":"عشوائي","randomDesc":"حساب عشوائي لكل طلب","leastUsed":"الأقل استخدامًا","leastUsedDesc":"اختر الحساب الأقل استخدامًا مؤخرًا","costOpt":"خيار التكلفة","costOptDesc":"تفضل أرخص حساب متاح","stickyLimit":"الحد اللزج","stickyLimitDesc":"المكالمات لكل حساب قبل التبديل","modelAliases":"الأسماء المستعارة النموذجية","modelAliasesDesc":"أنماط أحرف البدل لإعادة تعيين أسماء النماذج • استخدم * و؟","aliasPatternPlaceholder":"كلود السوناتة-*","aliasTargetPlaceholder":"كلود السوناتة-4-20250514","pattern":"نمط","targetModel":"نموذج الهدف","add":"+ أضف","session":"جلسة","sessionDetailsAria":"تفاصيل الجلسة","status":"الحالة","authenticated":"مصادقة","guest":"ضيف","loginTime":"وقت تسجيل الدخول","sessionAge":"عمر الجلسة","browser":"المتصفح","clearLocalData":"مسح البيانات المحلية","logout":"تسجيل الخروج","clearLocalDataConfirm":"هل تريد مسح كافة البيانات المحلية؟ سيؤدي هذا إلى إعادة ضبط تفضيلاتك.","unknown":"غير معروف","systemActor":"نظام","ipAccessControl":"التحكم في الوصول إلى IP","ipAccessControlDesc":"حظر أو السماح بعناوين IP محددة","ipModeDisabled":"معطل","ipModeBlacklist":"القائمة السوداء","ipModeWhitelist":"القائمة البيضاء","ipModeWhitelistPriority":"أولوية WL","addIpAddress":"أضف عنوان IP","ipAddressPlaceholder":"192.168.1.0/24 أو 10.0.*.*","block":"+ بلوك","allow":"+ السماح","blocked":"محظور ({count})","allowed":"مسموح به ({count})","temporaryBans":"الحظر المؤقت ({count})","minLeft":"{min} دقيقة متبقية","auditLog":"سجل التدقيق","searchAuditLogs":"البحث في سجلات التدقيق...","failedLoadAuditLog":"فشل تحميل سجل التدقيق","noAuditEvents":"لم يتم العثور على أحداث التدقيق","action":"العمل","actor":"ممثل","details":"التفاصيل","time":"الوقت","fallbackChainsTitle":"سلاسل احتياطية","fallbackChainsDesc":"تحديد الترتيب الاحتياطي للموفر لكل نموذج","addChain":"+ إضافة سلسلة","modelName":"اسم النموذج","modelNamePlaceholder":"كلود السوناتة-4-20250514","providersCommaSeparated":"مقدمو الخدمة (مفصولون بفواصل، حسب ترتيب الأولوية)","providersCommaSeparatedPlaceholder":"أنثروبي، أوبيناي، الجوزاء","createChain":"إنشاء سلسلة","noFallbackChains":"لا سلاسل احتياطية","noFallbackChainsDesc":"قم بإنشاء سلسلة لتحديد الترتيب الاحتياطي للموفر للنموذج.","loadingFallbackChains":"جارٍ تحميل السلاسل الاحتياطية...","deleteChainConfirm":"هل تريد حذف السلسلة الاحتياطية لـ \\"{model}\\"؟","chainCreated":"تم إنشاء السلسلة لـ {model}","chainDeleted":"تم حذف السلسلة لـ {model}","failedCreateChain":"فشل في إنشاء السلسلة","failedDeleteChain":"فشل في حذف السلسلة","deleteChain":"حذف السلسلة","fillModelAndProviders":"يرجى ملء اسم النموذج ومقدمي الخدمات","addAtLeastOneProvider":"قم بإضافة مزود واحد على الأقل","comboDefaultsTitle":"افتراضيات التحرير والسرد","globalComboConfig":"تكوين التحرير والسرد العالمي","defaultStrategy":"الإستراتيجية الافتراضية","defaultStrategyDesc":"يتم تطبيقه على المجموعات الجديدة بدون استراتيجية واضحة","comboStrategyAria":"استراتيجية التحرير والسرد","priority":"الأولوية","weighted":"مرجح","maxRetriesLabel":"ماكس إعادة المحاولة","retryDelayLabel":"تأخير إعادة المحاولة (ملي ثانية)","timeoutLabel":"المهلة (مللي ثانية)","healthCheck":"فحص الصحة","healthCheckDesc":"التحقق المسبق من توفر الموفر","trackMetrics":"تتبع المقاييس","trackMetricsDesc":"تسجيل مقاييس الطلب لكل مجموعة","providerOverrides":"تجاوزات الموفر","providerOverridesDesc":"تجاوز المهلة وإعادة المحاولة لكل مزود. تتجاوز إعدادات الموفر الإعدادات الافتراضية العامة.","providerMaxRetriesAria":"{provider} الحد الأقصى لعدد مرات إعادة المحاولة","providerTimeoutAria":"{provider} المهلة مللي ثانية","removeProviderOverrideAria":"قم بإزالة تجاوز {provider}","newProviderNamePlaceholder":"على سبيل المثال جوجل، افتحي...","newProviderNameAria":"اسم المزود الجديد","retries":"إعادة المحاولة","ms":"مللي","saveComboDefaults":"حفظ إعدادات التحرير والسرد الافتراضية","maxNestingDepth":"أقصى عمق التعشيش","concurrencyPerModel":"التزامن/النموذج","queueTimeout":"مهلة قائمة الانتظار (مللي ثانية)","providerProfiles":"ملفات تعريف المزود","providerProfilesDesc":"إعدادات مرونة منفصلة لموفري OAuth (القائم على الجلسة) ومفتاح API (المقيّد). لدى موفري OAuth حدود أكثر صرامة بسبب انخفاض حدود الأسعار.","oauthProviders":"موفري OAuth","apiKeyProviders":"موفري مفاتيح API","transientCooldown":"فترة التهدئة العابرة","rateLimitCooldown":"حد معدل التهدئة","maxBackoffLevel":"الحد الأقصى لمستوى التراجع","cbThreshold":"عتبة CB","cbResetTime":"وقت إعادة ضبط CB","rateLimiting":"الحد من المعدل","rateLimitingDesc":"يتم تحديد معدل موفري API Key تلقائيًا باستخدام الإعدادات الافتراضية الآمنة. يتم تعلم الحدود من رؤوس الاستجابة وتكييفها بمرور الوقت.","defaultSafetyNet":"شبكة الأمان الافتراضية","rpm":"دورة في الدقيقة","minGap":"مين جاب","maxConcurrent":"ماكس المتزامنة","activeLimiters":"المحددات النشطة","noActiveLimiters":"لا توجد محددات معدل نشطة حتى الآن.","reservoir":"الخزان","running":"الجري","queued":"في قائمة الانتظار","circuitBreakers":"قواطع الدائرة","breakerStateClosed":"مغلق","breakerStateOpen":"مفتوح","breakerStateHalfOpen":"نصف مفتوح","tripped":"{count} تعثرت","healthy":"{count} صحي","resetAll":"إعادة ضبط الكل","noCircuitBreakers":"لا توجد قواطع دوائر نشطة حتى الآن. يتم إنشاؤها تلقائيًا عندما تتدفق الطلبات عبر مسار التحرير والسرد.","failures":"{count} الفشل (الإخفاقات)","policiesLocked":"السياسات والمعرفات المقفلة","allOperational":"جميع الأنظمة جاهزة للعمل - لا توجد عمليات إغلاق أو قواطع متعثرة","loadingPolicies":"جارٍ تحميل السياسات...","lockedIdentifiers":"معرفات مقفلة","unlockedIdentifier":"مفتوح: {identifier}","sinceDate":"منذ {date}","forceUnlock":"فتح القوة","unlocking":"جارٍ الفتح...","failedUnlock":"فشل في فتح القفل","failedLoadWithStatus":"فشل التحميل: {status}","failedLoadResilience":"فشل تحميل حالة المرونة","saveFailed":"فشل الحفظ","resetFailed":"فشلت إعادة التعيين","loadingResilience":"جارٍ تحميل حالة المرونة...","retry":"أعد المحاولة","systemStorage":"النظام والتخزين","allDataLocal":"جميع البيانات المخزنة محليا على جهازك","databasePath":"مسار قاعدة البيانات","exportDatabase":"تصدير قاعدة البيانات","exportAll":"تصدير الكل (.tar.gz)","importDatabase":"استيراد قاعدة البيانات","confirmDbImport":"تأكيد استيراد قاعدة البيانات","confirmDbImportDesc":"سيؤدي هذا إلى استبدال كافة البيانات الحالية بالمحتوى من {file}. سيتم إنشاء نسخة احتياطية تلقائيًا قبل الاستيراد.","yesImport":"نعم استيراد","lastBackup":"النسخ الاحتياطي الأخير","noBackupYet":"لا يوجد نسخة احتياطية حتى الآن","backupNow":"النسخ الاحتياطي الآن","backupRestore":"النسخ الاحتياطي والاستعادة","viewBackups":"عرض النسخ الاحتياطية","hide":"إخفاء","backupRetentionDesc":"يتم إنشاء لقطات قاعدة البيانات تلقائيًا قبل الاستعادة وكل 15 دقيقة عند تغيير البيانات. الاحتفاظ: 24 ساعة + 30 نسخة احتياطية يومية مع التدوير الذكي.","loadingBackups":"جارٍ تحميل النسخ الاحتياطية...","noBackupsYet":"لا توجد نسخ احتياطية متاحة حتى الآن. سيتم إنشاء النسخ الاحتياطية تلقائيًا عند تغيير البيانات.","backupsAvailable":"{count} النسخ الاحتياطية متاحة","refresh":"تحديث","confirm":"تأكيد؟","yes":"نعم","no":"لا","restore":"استعادة","invalidFileType":"نوع الملف غير صالح. يتم قبول ملفات .sqlite فقط.","exportFailed":"فشل التصدير","exportFailedWithError":"فشل التصدير: {error}","fullExportFailedWithError":"فشل التصدير الكامل: {error}","backupCreated":"تم إنشاء النسخة الاحتياطية: {file}","restoreSuccess":"المستعادة! {connections} اتصالات، {nodes} عقد، {combos} مجموعات، {apiKeys} مفاتيح API.","importSuccess":"تم استيراد قاعدة البيانات! {connections} اتصالات، {nodes} عقد، {combos} مجموعات، {apiKeys} مفاتيح API.","justNow":"الآن فقط","minutesAgo":"{count} منذ","hoursAgo":"{count}h منذ","daysAgo":"{count}d منذ","backupReasonManual":"دليل","backupReasonPreRestore":"استعادة مسبقة","connectionsCount":"{count, plural, one {# connection} other {# connections}}","noChangesSinceBackup":"لا توجد تغييرات منذ النسخ الاحتياطي الأخير","backupFailed":"فشل النسخ الاحتياطي","restoreFailed":"فشلت عملية الاستعادة","importFailed":"فشل الاستيراد","errorDuringRestore":"حدث خطأ أثناء الاستعادة","errorDuringImport":"حدث خطأ أثناء الاستيراد","modelPricing":"تسعير النموذج","modelPricingDesc":"تكوين معدلات التكلفة لكل نموذج • جميع الأسعار بالرموز المميزة $/1M","providers":"مقدمي الخدمات","registry":"التسجيل","priced":"مسعر","searchProvidersModels":"البحث عن موفري الخدمة أو النماذج...","showAll":"إظهار الكل","noProvidersMatch":"لا يوجد مقدمي خدمات مطابقين لبحثك.","howPricingWorks":"كيف يعمل التسعير","cacheWrite":"كتابة ذاكرة التخزين المؤقت","unsaved":"غير محفوظ","resetDefaults":"إعادة تعيين الإعدادات الافتراضية","saveProvider":"حفظ المزود","saving":"جارٍ الحفظ...","model":"نموذج","models":"نماذج","moreProviders":"{count} المزيد من مقدمي الخدمة","withPricing":"مع تكوين التسعير","policiesCircuitBreakers":"السياسات وقواطع الدائرة","activeIssuesDetected":"تم اكتشاف مشكلات نشطة","off":"إيقاف","resetPricingConfirm":"هل تريد إعادة تعيين جميع أسعار {provider} إلى الإعدادات الافتراضية؟","pricingDescInput":"الإدخال: الرموز المرسلة إلى النموذج","pricingDescOutput":"الإخراج: الرموز التي تم إنشاؤها","pricingDescCached":"ذاكرة التخزين المؤقت: الإدخال المعاد استخدامه (~50% من معدل الإدخال)","pricingDescReasoning":"المنطق: رموز التفكير (يعود إلى الإخراج)","pricingDescCacheWrite":"كتابة ذاكرة التخزين المؤقت: إنشاء إدخالات ذاكرة التخزين المؤقت (يعود إلى الإدخال)","pricingDescFormula":"التكلفة = (الإدخال \xd7 معدل الإدخال) + (الإخراج \xd7 معدل الإخراج) + (التخزين المؤقت \xd7 معدل_التخزين المؤقت) لكل مليون رمز مميز.","pricingSettingsTitle":"إعدادات التسعير","totalModels":"نماذج إجمالية","active":"نشط","costCalculation":"حساب التكلفة","costCalculationDesc":"يتم حساب التكاليف بناءً على استخدام الرمز المميز ومعدلات التسعير التي تم تكوينها لكل نموذج.","pricingFormat":"تنسيق التسعير","pricingFormatDesc":"جميع الأسعار برموز $/1M (دولار لكل مليون رمز).","tokenTypes":"أنواع الرموز","inputTokenDesc":"الرموز السريعة القياسية","outputTokenDesc":"رموز الإكمال/الاستجابة","cachedTokenDesc":"رموز الإدخال المخزنة مؤقتًا (عادةً 50% من معدل الإدخال)","reasoningTokenDesc":"رموز الاستدلال/التفكير الخاصة (الرجوع إلى معدل الإنتاج)","cacheCreationTokenDesc":"الرموز المميزة المستخدمة لإنشاء إدخالات ذاكرة التخزين المؤقت (الرجوع إلى معدل الإدخال)","customPricingNote":"يمكنك تجاوز التسعير الافتراضي لنماذج محددة. تحظى التجاوزات المخصصة بالأولوية على الأسعار التي يتم اكتشافها تلقائيًا.","editPricing":"تحرير التسعير","viewFullDetails":"عرض التفاصيل الكاملة"},"translator":{"title":"مترجم","metaTitle":"ملعب المترجم | OmniRoute","metaDescription":"تصحيح واختبار وتصور ترجمات تنسيق واجهة برمجة التطبيقات (API) بين مقدمي الخدمة","playgroundTitle":"ملعب المترجم","playground":"ملعب","realtime":"نشاط الترجمة في الوقت الحقيقي","chatTester":"اختبار الدردشة","testBench":"مقعد الاختبار","liveMonitor":"مراقب مباشر","modeDescriptionPlayground":"الصق أي نص طلب واجهة برمجة التطبيقات (API) وشاهد كيف يقوم OmniRoute بترجمته بين تنسيقات الموفر (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)","modeDescriptionChatTester":"أرسل طلبات دردشة حقيقية من خلال OmniRoute وافحص الرحلة الكاملة ذهابًا وإيابًا: الإدخال، والطلب المترجم، واستجابة الموفر، والمخرجات المترجمة.","modeDescriptionTestBench":"قم بتشغيل السيناريوهات المحددة مسبقًا وقارن التوافق عبر الموفرين والنماذج.","modeDescriptionLiveMonitor":"شاهد أحداث الترجمة في الوقت الفعلي أثناء تدفق الطلبات عبر OmniRoute.","modeDescriptionFallback":"تصحيح الأخطاء واختبارها وتصور كيفية قيام OmniRoute بترجمة طلبات واجهة برمجة التطبيقات (API) بين مقدمي الخدمة.","recentTranslations":"الترجمات الأخيرة","noTranslations":"لا توجد ترجمات بعد","source":"المصدر","target":"الهدف","time":"الوقت","model":"نموذج","status":"الحالة","latency":"الكمون","totalTranslations":"إجمالي الترجمات","successful":"ناجح","errors":"أخطاء","avgLatency":"متوسط الكمون","millisecondsShort":"{value}ms","notAvailableSymbol":"—","liveAutoRefreshing":"مباشر - التحديث التلقائي","paused":"متوقف مؤقتًا","eventsAppearHint":"تظهر أحداث الترجمة هنا أثناء تدفق الطلبات عبر OmniRoute. استخدم أيًا من هذه الطرق لإنشاء الأحداث:","chatTesterTab":"علامة تبويب اختبار الدردشة","testBenchTab":"علامة التبويب اختبار البدلاء","externalApiCalls":"مكالمات API الخارجية","ideCliIntegrations":"تكاملات IDE/CLI","inMemoryNote":"ملاحظة: يتم تخزين الأحداث في الذاكرة وإعادة تعيينها عند إعادة تشغيل الخادم.","ok":"حسنًا","errorShort":"خطأ","formatConverter":"محول التنسيق","formatConverterDescription":"الصق أو اكتب نص طلب JSON. سيقوم المترجم بالكشف التلقائي عن التنسيق المصدر وتحويله إلى التنسيق الهدف. استخدم هذا لتصحيح كيفية ترجمة OmniRoute للطلبات بين التنسيقات (OpenAI ↔ Claude ↔ Gemini ↔ Responses API).","input":"الإدخال","output":"الإخراج","auto":"تلقائي","swapFormats":"تبادل الصيغ","translateAction":"ترجمة","clear":"واضح","inputPlaceholder":"الصق نص الطلب هنا أو حدد القالب أدناه...","exampleTemplates":"قوالب سبيل المثال","exampleTemplatesHint":"- انقر للتحميل","templateLoadHint":"يقوم القالب بتحميل الطلب بتنسيق {format}. قم بتغيير تنسيق المصدر للتحميل بتنسيق مختلف.","compatibilityTester":"اختبار التوافق","compatibilityReport":"تقرير التوافق","testBenchDescription":"قم بتشغيل سيناريوهات محددة مسبقًا (الدردشة البسيطة، واستدعاء الأدوات، وما إلى ذلك) للتحقق من توافق الترجمة وموفر الخدمة. حدد تنسيق المصدر والموفر المستهدف، ثم قم بإجراء جميع الاختبارات لمعرفة نسبة التوافق. استخدم هذا للعثور على الميزات التي تعمل عبر مقدمي الخدمة.","targetProvider":"مقدم الهدف","runAllTests":"تشغيل كافة الاختبارات","runTest":"تشغيل الاختبار","reRun":"إعادة تشغيل","running":"جارٍ...","passed":"مرت","failed":"فشل","passedIconLabel":"✅ نجح","chunks":"قطع","scenarioSimpleChat":"دردشة بسيطة","scenarioToolCalling":"استدعاء الأداة","scenarioMultiTurn":"متعدد المنعطفات","scenarioThinking":"التفكير","scenarioSystemPrompt":"موجه النظام","scenarioStreaming":"الجري","templateNames":{"simple-chat":"دردشة بسيطة","tool-calling":"استدعاء الأداة","multi-turn":"متعدد المنعطفات","thinking":"التفكير","system-prompt":"موجه النظام","streaming":"الجري"},"templateDescriptions":{"simple-chat":"رسالة نصية أساسية","tool-calling":"استدعاء الوظيفة/الأداة","multi-turn":"حوار مع التاريخ","thinking":"التفكير الموسع / الاستدلال","system-prompt":"تعليمات النظام المعقدة","streaming":"طلب تدفق SSE"},"templatePayloads":{"simpleChat":{"system":"أنت مساعد مفيد.","userGreeting":"مرحبا! كيف حالك اليوم؟"},"toolCalling":{"userWeather":"ما هو الطقس في ساو باولو ؟","toolDescription":"الحصول على الطقس الحالي لموقع ما","cityNameDescription":"اسم المدينة"},"multiTurn":{"system":"أنت مساعد الترميز.","userInitial":"اكتب دالة لفرز مصفوفة في بايثون.","assistantExample":"إليك وظيفة فرز بسيطة:\\n\\n```بيثون\\nتعريفsort_array(arr):\\n العودة مرتبة (arr)\\n```","userFollowUp":"الآن قم بفرزها بترتيب تنازلي."},"thinking":{"question":"ما هو مجموع أول 100 عدد أولي؟"},"systemPrompt":{"systemInstruction":"أنت مهندس برمجيات كبير متخصص في الأنظمة الموزعة. أجب عن الأسئلة بإيجاز باستخدام أفضل ممارسات الصناعة. قم دائمًا بتقديم أمثلة التعليمات البرمجية عندما يكون ذلك مناسبًا. قم بتنسيق ردودك باستخدام تخفيض السعر.","question":"كيف يمكنني تنفيذ نمط قاطع الدائرة؟"},"streaming":{"prompt":"أخبرني قصة قصيرة عن روبوت يتعلم الرسم."}},"openaiCompatibleLabel":"متوافق مع OpenAI","anthropicCompatibleLabel":"متوافق مع الأنثروبولوجيا","noTemplateForFormat":"لا يوجد قالب لهذا التنسيق","translationFailed":"فشلت الترجمة: {error}","pipelineDebugger":"مصحح أخطاء خطوط الأنابيب","translationPipeline":"خط أنابيب الترجمة","pipelineVisualization":"تصور خطوط الأنابيب","pipelineVisualizationHint":"أرسل رسالة لترى كيف يتدفق طلبك من خلال الكشف → الترجمة → الاتصال بالمزود.","chatTesterDescription":"أرسل الرسائل بتنسيق عميل محدد وافحص كل خطوة من خطوات الترجمة.","chatTesterFlow":"طلب العميل ← اكتشاف التنسيق ← OpenAI Intermediate ← تنسيق الموفر ← الاستجابة","clickStepToInspect":"انقر فوق أي خطوة لفحص البيانات في تلك المرحلة.","clientFormat":"تنسيق العميل","provider":"مزود","modelPlaceholder":"حدد أو اكتب اسم الطراز...","sendMessageToSeePipeline":"أرسل رسالة لرؤية مسار الترجمة","chatMessageHintPrefix":"سيتم تنسيق رسالتك كـ","chatMessageHintSuffix":"الطلب، وترجمته عبر المسار، وإرساله إلى الموفر المحدد.","youWithFormat":"أنت ({format})","assistant":"مساعد","typeMessage":"اكتب رسالة...","send":"أرسل","clientRequest":"طلب العميل","clientRequestDescription":"نص الطلب كما سيرسله عميلك","formatDetected":"تم الكشف عن التنسيق","formatDetectedDescription":"يقوم OmniRoute بالكشف التلقائي عن تنسيق واجهة برمجة التطبيقات (API) من بنية الطلب","openaiIntermediate":"OpenAI المتوسطة","openaiIntermediateDescription":"يتم أولاً تطبيع جميع التنسيقات إلى تنسيق OpenAI (الجسر العالمي)","providerFormat":"تنسيق الموفر","providerFormatDescription":"تتم ترجمة تنسيق OpenAI إلى التنسيق الأصلي للموفر","providerResponse":"استجابة المزود","providerResponseRawDescription":"الاستجابة الأولية من واجهة برمجة تطبيقات الموفر","providerResponseSseDescription":"دفق SSE الخام من واجهة برمجة تطبيقات الموفر","unexpectedError":"حدث خطأ غير متوقع","error":"خطأ","errorMessage":"خطأ: {message}","requestFailed":"فشل الطلب","noTextExtracted":"(لم يتم استخراج النص)","liveMonitorDescriptionPrefix":"يعرض أحداث الترجمة أثناء تدفق مكالمات API عبر OmniRoute. تأتي الأحداث من المخزن المؤقت في الذاكرة (يتم إعادة التعيين عند إعادة التشغيل). استخدم","liveMonitorDescriptionSuffix":"أو مكالمات API الخارجية لإنشاء الأحداث."},"usage":{"title":"الاستخدام","loggerTab":"المسجل","proxyTab":"وكيل","budgetManagement":"إدارة الميزانية","budgetSaved":"تم حفظ حدود الميزانية","budgetSaveFailed":"فشل في حفظ الميزانية","loadingBudgetData":"جارٍ تحميل بيانات الميزانية...","noApiKeysTitle":"لا توجد مفاتيح API","noApiKeysDescription":"أضف مفاتيح واجهة برمجة التطبيقات (API) أولاً لإعداد حدود الميزانية.","apiKey":"مفتاح واجهة برمجة التطبيقات","todaysSpend":"إنفاق اليوم","thisMonth":"هذا الشهر","setLimits":"تعيين الحدود","dailyLimitUsd":"الحد اليومي (دولار أمريكي)","monthlyLimitUsd":"الحد الشهري (دولار أمريكي)","warningThresholdPercent":"عتبة التحذير (%)","dailyLimitPlaceholder":"على سبيل المثال 5.00","monthlyLimitPlaceholder":"على سبيل المثال 50.00","warningThresholdPlaceholder":"80","saveLimits":"حفظ الحدود","budgetOk":"الميزانية جيدة — {remaining} متبقية","budgetExceeded":"تم تجاوز الميزانية — قد يتم حظر الطلبات","totalRequests":"إجمالي الطلبات","noDataYet":"لا توجد بيانات حتى الآن","latency":"الكمون","latencyP50":"ص50","latencyP95":"ص95","latencyP99":"ص99","promptCache":"ذاكرة التخزين المؤقت الفوري","systemHealth":"صحة النظام","entries":"إدخالات","activeCount":"{count} نشط","openCircuitBreakersDetected":"تم اكتشاف قواطع الدائرة المفتوحة","hitRate":"معدل الإصابة","hitsMisses":"الزيارات / الأخطاء","circuitBreakers":"قواطع الدائرة","lockedIPs":"عناوين IP المقفلة","lockoutsAutoRefreshHint":"أقفال حد المعدل لكل طراز • التحديث التلقائي لمدة 10 ثوانٍ","lockedCount":"{count, plural, one {# locked} other {# locked}}","timeLeft":"{time} اليسار","howItWorks":"كيف يعمل","howItWorksSubtitle":"تعرف على كيفية التحقق من صحة التقييمات من استجابات LLM الخاصة بك","define":"تحديد","defineStepDescription":"أنشئ حالات اختبار باستخدام مطالبات الإدخال ومعايير الإخراج المتوقعة باستخدام إستراتيجيات مثل الاحتواء أو التعبير العادي أو المطابقة التامة.","run":"تشغيل","runStepDescription":"قم بتنفيذ حالات الاختبار على نقاط نهاية LLM الخاصة بك من خلال OmniRoute. يتم إرسال كل حالة كطلب API حقيقي.","evaluate":"تقييم","evaluateStepDescription":"تتم مقارنة الاستجابات بالمعايير المتوقعة. راجع النجاح/الفشل لكل حالة باستخدام مقاييس زمن الاستجابة والتعليقات التفصيلية.","evalSuites":"أجنحة التقييم","evalSuitesHint":"انقر فوق مجموعة لعرض حالات الاختبار، ثم قم بالتشغيل لتقييم نقاط نهاية LLM الخاصة بك","evalsLoading":"جارٍ تحميل مجموعات التقييم...","noEvalSuitesFound":"لم يتم العثور على أجنحة Eval","noEvalSuitesDescription":"يمكن تعريف مجموعات Eval عبر واجهة برمجة التطبيقات (API) أو في التعليمات البرمجية. يقومون باختبار مخرجات النموذج مقابل النتائج المتوقعة باستخدام إستراتيجيات مثل الاحتواء والتعبير العادي والمطابقة التامة والوظائف المخصصة.","columnCase":"القضية","columnStatus":"الحالة","columnLatency":"الكمون","columnDetails":"التفاصيل","columnModel":"نموذج","columnStrategy":"استراتيجية","columnExpected":"متوقع","statsSuites":"أجنحة","statsTestCases":"حالات الاختبار","statsModels":"نماذج","statsCoverage":"التغطية","statsStrategiesCount":"إستراتيجيات {count}","evaluationStrategies":"استراتيجيات التقييم","modelsUnderTest":"نماذج تحت الاختبار","searchSuitesPlaceholder":"أجنحة البحث...","passSuffix":"تمرير","casesCount":"{count, plural, one {# case} other {# cases}}","runEval":"تشغيل التقييم","runningProgress":"جارٍ تشغيل {current}/{total}...","passRate":"معدل النجاح","summaryBreakdown":"تم اجتياز {passed} \xb7 فشل {failed} \xb7 {total} الإجمالي","passedIconLabel":"✅ نجح","failedIconLabel":"❌فشل","detailsContains":"يحتوي على: \\"{term}\\"","detailsRegex":"التعبير العادي: {pattern}","detailsExpected":"المتوقع: \\"{expected}\\"","noResultsYet":"لا توجد نتائج حتى الآن","testCasesCount":"حالات الاختبار ({count})","noTestCasesDefined":"لم يتم تحديد حالات الاختبار","runEvalHint":"انقر فوق \\"Run Eval\\" لتنفيذ جميع الحالات ضد نقطة نهاية LLM الخاصة بك. يرسل كل اختبار طلبًا حقيقيًا عبر OmniRoute.","notifyNoTestCases":"لم يتم تحديد حالات اختبار لهذه المجموعة","notifyAllCasesPassed":"تم اجتياز جميع حالات {total} ✅","notifySomeCasesFailed":"تم اجتياز {passed}/{total}، وفشل {failed}","notifyEvalRunFailed":"فشل تشغيل التقييم","notifyEvalTitle":"التقييم: {name}","modelEvals":"التقييمات النموذجية","evalsHeroDescription":"قم باختبار نقاط نهاية LLM الخاصة بك والتحقق من صحتها عن طريق تشغيل مجموعات التقييم المحددة مسبقًا. تحتوي كل مجموعة على حالات اختبار ترسل مطالبات حقيقية من خلال OmniRoute وتقارن الاستجابات بالمعايير المتوقعة - مما يساعدك على اكتشاف التراجعات ومقارنة النماذج وضمان جودة الاستجابة عبر مقدمي الخدمة.","qualityValidation":"التحقق من الجودة","modelComparison":"مقارنة النماذج","regressionDetection":"كشف الانحدار","latencyBenchmarks":"مقاييس الكمون","modelLockouts":"عمليات الإغلاق النموذجية","noLockouts":"لا توجد نماذج مقفلة حاليا","activeSessions":"الجلسات النشطة","noSessions":"لا توجد جلسات نشطة","sessionsHint":"تظهر الجلسات أثناء تدفق الطلبات عبر الوكيل","sessionsTrackedHint":"تتبع عن طريق طلب البصمات • التحديث التلقائي 5S","session":"جلسة","age":"العمر","requests":"الطلبات","connection":"اتصال","durationMillisecondsShort":"{value}ms","durationSecondsShort":"{value}s","durationMinutesShort":"{value}م","durationHoursShort":"{value}h","reasonSeparator":" - ","notAvailableSymbol":"-","providerLimits":"حدود المزود","noProviders":"لا يوجد مقدمي خدمات متصلين","connectProvidersForQuota":"اتصل بموفري خدمة OAuth لتتبع حدود حصص واجهة برمجة التطبيقات (API) واستخدامها.","accountsCount":"{count, plural, one {# account} other {# accounts}}","filteredFromCount":"(تمت التصفية من {count})","autoRefresh":"التحديث التلقائي","refreshAll":"تحديث الكل","loadingQuotas":"جار التحميل...","account":"الحساب","modelQuotas":"الحصص النموذجية","lastUsed":"آخر استخدام","actions":"الإجراءات","refreshQuota":"تحديث الحصة","today":"اليوم","tomorrow":"غدا","dayTimeFormat":"{day}، {time}","inDuration":"في {duration}","notApplicable":"لا يوجد","rawPlanWithValue":"الخطة الأولية: {plan}","noPlanFromProvider":"لا توجد خطة من المزود","noQuotaData":"لا توجد بيانات الحصص","noQuotaDataAvailable":"لا توجد بيانات الحصص المتاحة","noAccountsForTierFilter":"لم يتم العثور على حسابات لمرشح الطبقة","tierAll":"الكل","tierEnterprise":"المؤسسة","tierTeam":"فريق","tierBusiness":"الأعمال","tierUltra":"الترا","tierPro":"برو","tierPlus":"زائد","tierFree":"مجاني","tierUnknown":"غير معروف"},"modals":{"waitingAuth":"في انتظار التصريح","verificationUrl":"عنوان URL للتحقق","yourCode":"الرمز الخاص بك","remoteAccess":"الوصول عن بعد:","connectedSuccess":"تم الاتصال بنجاح!","connectionFailed":"فشل الاتصال","chooseAuthMethod":"اختر طريقة المصادقة الخاصة بك:","awsBuilderId":"معرف منشئ AWS","awsIamIdentity":"مركز هوية AWS IAM","googleAccount":"حساب جوجل","githubAccount":"حساب جيثب","importToken":"رمز الاستيراد","pasteToken":"قم بلصق رمز التحديث من Kiro IDE.","awsRegion":"منطقة أوس","autoDetecting":"الكشف التلقائي عن الرموز...","readingFromCache":"القراءة من ذاكرة التخزين المؤقت لـ AWS SSO","readingFromCursor":"القراءة من قاعدة بيانات المؤشر IDE","initializing":"جارٍ التهيئة...","pricingConfig":"تكوين التسعير","loadingPricing":"جارٍ تحميل بيانات الأسعار...","pricingRatesFormat":"تنسيق أسعار التسعير","noPricingData":"لا توجد بيانات التسعير المتاحة","noModelsFound":"لم يتم العثور على نماذج"},"loggers":{"allProviders":"جميع مقدمي الخدمات","allModels":"جميع الموديلات","allAccounts":"جميع الحسابات","allApiKeys":"جميع مفاتيح API","allTypes":"جميع الأنواع","allLevels":"جميع المستويات","modelAZ":"الموديل أ-ي","modelZA":"الموديل Z-A","loadingLogs":"جارٍ تحميل السجلات...","loadingProxyLogs":"جارٍ تحميل سجلات الوكيل...","noLogEntries":"لم يتم العثور على إدخالات السجل","noPayloadData":"لا توجد بيانات حمولة متاحة لإدخال السجل هذا.","proxyEvent":"حدث الوكيل","proxy":"وكيل","level":"المستوى","directNative":"مباشر (وطني)","combo":"كومبو","inputTokens":"أنا:","outputTokens":"يا:"},"stats":{"usageOverview":"نظرة عامة على الاستخدام","outputTokens":"رموز الإخراج","totalCost":"التكلفة الإجمالية","usageByModel":"الاستخدام حسب الموديل","usageByAccount":"الاستخدام عن طريق الحساب","failedToLoad":"فشل تحميل إحصائيات الاستخدام.","tokenHealth":"صحة الرمز","totalOAuth":"إجمالي OAuth","healthy":"صحي","warning":"تحذير","errored":"خطأ","lastCheck":"الاختيار الأخير","noData":"لا توجد بيانات","share":"شارك","unableToLoad":"غير قادر على تحميل مقاييس النظام","product":"المنتج","resources":"الموارد","company":"الشركة"},"auth":{"welcome":"مرحبًا","signIn":"تسجيل الدخول","enterPassword":"أدخل كلمة المرور الخاصة بك للمتابعة","password":"كلمة المرور","unifiedProxy":"وكيل API موحّد للذكاء الاصطناعي","unifiedAiApiProxy":"وكيل API موحّد للذكاء الاصطناعي","unifiedAiApiProxyDesc":"توجيه الطلبات إلى موفري الذكاء الاصطناعي المتعددين من خلال نقطة نهاية واحدة. موازنة التحميل وتجاوز الفشل وتتبع الاستخدام المدمج.","passwordNotEnabled":"لم يتم تمكين الحماية بكلمة المرور","loading":"جار التحميل...","invalidPassword":"كلمة المرور غير صالحة","errorOccurredRetry":"حدث خطأ. يرجى المحاولة مرة أخرى.","configureInstance":"دعنا نقوم بتكوين مثيل OmniRoute الخاص بك","runOnboardingWizard":"قم بتشغيل معالج الإعداد لإعداد كلمة المرور الخاصة بك وتوصيل أول مزود للذكاء الاصطناعي.","startOnboarding":"ابدأ الإعداد","secureYourInstance":"تأمين المثيل الخاص بك","setPasswordDescription":"قم بتعيين كلمة مرور لحماية لوحة المعلومات الخاصة بك وتأمين نقاط نهاية API الخاصة بك من الوصول غير المصرح به.","configurePassword":"تكوين كلمة المرور","continue":"متابعة","windowWillClose":"ستغلق هذه النافذة تلقائيا...","closeTabNow":"يمكنك إغلاق علامة التبويب هذه الآن.","copyUrlManual":"انسخ عنوان URL من شريط العنوان والصقه داخل التطبيق.","accessDeniedDescription":"ليس لديك إذن للوصول إلى هذا المورد. تحقق من مفتاح API الخاص بك أو اتصل بالمسؤول.","goToDashboard":"انتقل إلى لوحة المعلومات","featureMultiProviderTitle":"متعدد الموفر","featureMultiProviderDesc":"OpenAI، وAnthropic، وGoogle، والمزيد","featureLoadBalancingTitle":"موازنة التحميل","featureLoadBalancingDesc":"توزيع الطلبات بذكاء","featureUsageTrackingTitle":"تتبع الاستخدام","featureUsageTrackingDesc":"مراقبة التكاليف والرموز","resetPassword":"إعادة تعيين كلمة المرور","resetDescription":"اختر طريقة لاستعادة الوصول إلى لوحة المعلومات الخاصة بك","stopServer":"أوقف خادم OmniRoute","processing":"جارٍ المعالجة...","pleaseWait":"يرجى الانتظار حتى نكمل التفويض.","authSuccess":"تم التفويض بنجاح!","copyUrl":"انسخ عنوان URL هذا","accessDenied":"تم رفض الوصول","methodCliTitle":"الطريقة الأولى: إعادة تعيين CLI","methodCliDescription":"قم بتشغيل الأمر التالي على الخادم الذي يعمل عليه OmniRoute:","methodCliHint":"سيطالبك هذا بتعيين كلمة مرور جديدة. يجب إيقاف الخادم أولاً.","methodManualTitle":"الطريقة الثانية: إعادة الضبط اليدوي","methodManualDescription":"احذف كلمة المرور من قاعدة البيانات وقم بتعيين كلمة مرور جديدة عند بدء التشغيل:","setPasswordInYour":"عيّن كلمة مرور جديدة في ملف","fileLabelSuffix":"ملف:","newPasswordPlaceholder":"كلمة_مرور_جديدة","deleteSettingsFile":"حذف","orRemovePasswordHashField":"أو قم بإزالة حقل كلمة المرور","restartServerWithNewPassword":"أعد تشغيل الخادم وسيتم استخدام كلمة المرور الجديدة","backToLogin":"العودة إلى تسجيل الدخول","forgotPassword":"هل نسيت كلمة المرور؟"},"landing":{"brandName":"OmniRoute","navigateHome":"انتقل إلى المنزل","toggleMenu":"تبديل القائمة","featuresLink":"الميزات","docsLink":"المستندات","github":"جيثب","versionLive":"الإصدار 1.0 أصبح الآن مباشرًا","oneEndpoint":"نقطة نهاية واحدة ل","allProviders":"جميع مقدمي الذكاء الاصطناعي","heroDescription":"وكيل نقطة النهاية AI مع لوحة تحكم الويب - منفذ JavaScript لـ CLIProxyAPI. يعمل بسلاسة مع Claude Code وOpenAI Codex وCline وRooCode وأدوات CLI الأخرى.","getStarted":"ابدأ","viewOnGithub":"عرض على جيثب","powerfulFeatures":"ميزات قوية","featuresSubtitle":"كل ما تحتاجه لإدارة البنية الأساسية للذكاء الاصطناعي لديك في مكان واحد، مصمم خصيصًا للتوسع.","featureUnifiedEndpointTitle":"نقطة النهاية الموحدة","featureUnifiedEndpointDesc":"الوصول إلى جميع مقدمي الخدمة عبر عنوان URL قياسي واحد لواجهة برمجة التطبيقات (API).","featureEasySetupTitle":"إعداد سهل","featureEasySetupDesc":"ابدأ العمل في دقائق معدودة باستخدام أمر npx.","featureModelFallbackTitle":"نموذج احتياطي","featureModelFallbackDesc":"تبديل مقدمي الخدمة تلقائيًا في حالة الفشل أو زمن الوصول العالي.","featureUsageTrackingTitle":"تتبع الاستخدام","featureUsageTrackingDesc":"تحليلات مفصلة ومراقبة التكاليف عبر جميع النماذج.","featureOAuthApiKeysTitle":"مفاتيح OAuth وAPI","featureOAuthApiKeysDesc":"إدارة بيانات الاعتماد بشكل آمن في قبو واحد.","featureCloudSyncTitle":"مزامنة السحابة","featureCloudSyncDesc":"مزامنة التكوينات الخاصة بك عبر الأجهزة على الفور.","featureCliSupportTitle":"دعم سطر الأوامر","featureCliSupportDesc":"يعمل مع Claude Code وCodex وCline وCursor والمزيد.","featureDashboardTitle":"لوحة القيادة","featureDashboardDesc":"لوحة تحكم مرئية لتحليل حركة المرور في الوقت الحقيقي.","howItWorks":"كيف يعمل OmniRoute","howItWorksDescription":"تتدفق البيانات بسلاسة من تطبيقك عبر طبقة التوجيه الذكية الخاصة بنا إلى أفضل مزود لهذه المهمة.","howItWorksStep1Title":"1. واجهة سطر الأوامر (CLI) ومجموعات SDK","howItWorksStep1Description":"تبدأ طلباتك من أدواتك المفضلة أو SDK الموحد الخاص بنا. فقط قم بتغيير عنوان URL الأساسي.","howItWorksStep2Title":"2. مركز OmniRoute","howItWorksStep2Description":"يقوم محركنا بتحليل الموجه، والتحقق من صحة مقدم الخدمة، والمسارات للحصول على أقل زمن وصول أو تكلفة.","howItWorksStep3Title":"3. مقدمو الذكاء الاصطناعي","howItWorksStep3Description":"يتم تنفيذ الطلب بواسطة OpenAI أو Anthropic أو Gemini أو غيرهم على الفور.","getStartedIn30Seconds":"ابدأ في 30 ثانية","getStartedDescription":"قم بتثبيت OmniRoute، وقم بتكوين موفري الخدمة عبر لوحة تحكم الويب، وابدأ في توجيه طلبات الذكاء الاصطناعي.","installOmniRoute":"قم بتثبيت OmniRoute","installStepDescription":"قم بتشغيل الأمر npx لبدء الخادم على الفور","openDashboard":"افتح لوحة المعلومات","openDashboardStepDescription":"تكوين مقدمي الخدمات ومفاتيح API عبر واجهة الويب","routeRequests":"طلبات الطريق","routeRequestsStepDescription":"قم بتوجيه أدوات CLI الخاصة بك إلى {endpoint}","terminal":"محطة","copy":"نسخ","copied":"✓ منقول","startingOmniRoute":"بدء تشغيل OmniRoute...","serverRunningOnLabel":"الخادم قيد التشغيل","dashboardLabel":"لوحة القيادة","readyToRoute":"جاهز للتوجيه! ✓","configureProvidersNote":"\uD83D\uDCDD تكوين مقدمي الخدمات في لوحة القيادة أو استخدام متغيرات البيئة","dataLocation":"موقع البيانات:","dataLocationMacLinux":" ماك/لينكس:","dataLocationWindows":" ويندوز:","product":"المنتج","dashboardLink":"لوحة القيادة","changelog":"سجل التغيير","resources":"الموارد","documentation":"التوثيق","npm":"الآلية الوقائية الوطنية","legal":"قانوني","mitLicense":"رخصة معهد ماساتشوستس للتكنولوجيا","footerTagline":"نقطة النهاية الموحدة لتوليد الذكاء الاصطناعي. يمكنك الاتصال بموفري خدمات الذكاء الاصطناعي وتوجيههم وإدارتهم بسهولة.","copyright":"\xa9 {year} أومنيروتي. جميع الحقوق محفوظة.","flowToolClaudeCode":"كلود كود","flowToolOpenAICodex":"مخطوطة OpenAI","flowToolCline":"كلاين","flowToolCursor":"المؤشر","flowProviderOpenAI":"OpenAI","flowProviderAnthropic":"أنثروبي","flowProviderGemini":"الجوزاء","flowProviderGithubCopilot":"جيثب مساعد الطيار","interactiveDiagram":"رسم تخطيطي تفاعلي مرئي على سطح المكتب","ctaTitle":"هل أنت مستعد لتبسيط البنية الأساسية للذكاء الاصطناعي لديك؟","ctaDescription":"انضم إلى المطورين الذين يقومون بتبسيط عمليات تكامل الذكاء الاصطناعي الخاصة بهم مع OmniRoute. مفتوح المصدر ومجاني للبدء.","startFree":"ابدأ مجانًا","readDocumentation":"قراءة الوثائق"},"docs":{"title":"التوثيق","quickStart":"بداية سريعة","features":"الميزات","supportedProviders":"مقدمي الخدمات المدعومة","supportedProvidersToc":"مقدمي الخدمات","commonUseCases":"حالات الاستخدام الشائعة","clientCompatibility":"توافق العميل","apiReference":"مرجع واجهة برمجة التطبيقات","method":"الطريقة","path":"المسار","notes":"ملاحظات","modelPrefixes":"البادئات النموذجية","prefix":"بادئة","troubleshooting":"استكشاف الأخطاء وإصلاحها","supportsChat":"يدعم كلاً من نقاط نهاية الدردشة والردود.","oauthAutoRefresh":"اتصال OAuth مع التحديث التلقائي للرمز المميز.","fullStreaming":"دعم البث الكامل لجميع الموديلات.","docsLabel":"المستندات","docsHeroDescription":"بوابة الذكاء الاصطناعي لبرامج LLM متعددة الموفرين. نقطة نهاية واحدة لـ OpenAI وAnthropic وGemini وGitHub Copilot وClaude Code وCursor وأكثر من 20 مزودًا آخر.","openDashboard":"افتح لوحة المعلومات","endpointPage":"صفحة نقطة النهاية","github":"جيثب","reportIssue":"تقرير المشكلة","onThisPage":"في هذه الصفحة","documentationVersion":"التوثيق - v{version}","quickStartStep1Title":"1. التثبيت والتشغيل","quickStartStep1Prefix":"تشغيل","quickStartStep1Middle":"أو استنساخ من GitHub وتشغيله","quickStartStep2Title":"2. إنشاء مفتاح API","quickStartStep2Text":"انتقل إلى نقطة النهاية -> المفاتيح المسجلة. إنشاء مفتاح واحد لكل بيئة.","quickStartStep3Title":"3. ربط مقدمي الخدمات","quickStartStep3Text":"أضف حسابات الموفر عبر تسجيل الدخول إلى OAuth، أو مفتاح API، أو الاتصال التلقائي للطبقة المجانية.","quickStartStep4Title":"4. قم بتعيين عنوان URL لقاعدة العميل","quickStartStep4Prefix":"قم بتوجيه عميل IDE أو API الخاص بك إلى","quickStartStep4Suffix":"استخدم بادئة الموفر، على سبيل المثال","featureRoutingTitle":"التوجيه متعدد الموفرين","featureRoutingText":"توجيه الطلبات إلى أكثر من 30 من موفري خدمات الذكاء الاصطناعي من خلال نقطة نهاية واحدة متوافقة مع OpenAI. يدعم واجهات برمجة التطبيقات للدردشة والاستجابات والصوت والصورة.","featureCombosTitle":"المجموعات والموازنة","featureCombosText":"أنشئ مجموعات نماذج باستخدام سلاسل احتياطية واستراتيجيات موازنة: دورة روبن، والأولوية، والعشوائية، والأقل استخدامًا، والمُحسَّنة من حيث التكلفة.","featureUsageTitle":"تتبع الاستخدام والتكلفة","featureUsageText":"عد الرموز المميزة في الوقت الفعلي، وحساب التكلفة لكل مزود/نموذج، وتوزيع تفصيلي للاستخدام حسب مفتاح واجهة برمجة التطبيقات والحساب.","featureAnalyticsTitle":"لوحة تحكم التحليلات","featureAnalyticsText":"التحليلات المرئية مع الرسوم البيانية للطلبات والرموز المميزة والأخطاء ووقت الاستجابة والتكاليف وشعبية النموذج بمرور الوقت.","featureHealthTitle":"مراقبة الصحة","featureHealthText":"فحوصات صحية حية، وحالة المزود، وحالات قاطع الدائرة، والكشف التلقائي عن حد المعدل مع التراجع الأسي.","featureCliTitle":"أدوات سطر الأوامر","featureCliText":"إدارة تكوينات IDE، وتصدير/استيراد النسخ الاحتياطية، واكتشاف ملفات تعريف المخطوطة، وتكوين الإعدادات من لوحة المعلومات.","featureSecurityTitle":"الأمن والسياسات","featureSecurityText":"مصادقة مفتاح واجهة برمجة التطبيقات (API)، وتصفية IP، وحارس الحقن الفوري، وسياسات المجال، وإدارة الجلسة، وتسجيل التدقيق.","featureCloudSyncTitle":"مزامنة السحابة","featureCloudSyncText":"قم بمزامنة التكوين الخاص بك مع Cloudflare Workers للوصول عن بعد باستخدام بيانات الاعتماد المشفرة وتجاوز الفشل التلقائي.","providersAcrossConnectionTypes":"موفرو {count} عبر ثلاثة أنواع من الاتصال.","manageProviders":"إدارة مقدمي الخدمة","providersCount":"{count} مقدمو الخدمة","providerTypeFree":"الطبقة الحرة","providerTypeOAuth":"OAuth","providerTypeApiKey":"مفتاح واجهة برمجة التطبيقات","useCaseSingleEndpointTitle":"نقطة نهاية واحدة للعديد من مقدمي الخدمة","useCaseSingleEndpointText":"قم بتوجيه العملاء إلى عنوان URL أساسي واحد وتوجيههم حسب بادئة النموذج (على سبيل المثال: gh/، cc/، kr/، openai/).","useCaseFallbackTitle":"الاحتياطي وتبديل النموذج مع المجموعات","useCaseFallbackText":"قم بإنشاء نماذج مجمعة في Dashboard وحافظ على استقرار تكوين العميل أثناء تدوير مقدمي الخدمة داخليًا.","useCaseUsageVisibilityTitle":"الاستخدام والتكلفة ورؤية التصحيح","useCaseUsageVisibilityText":"تتبع الرموز المميزة والتكلفة حسب الموفر والحساب ومفتاح واجهة برمجة التطبيقات في علامتي التبويب \\"الاستخدام\\" و\\"التحليلات\\".","clientCherryStudioTitle":"ستوديو الكرز","baseUrlLabel":"عنوان URL الأساسي","chatEndpointLabel":"نقطة نهاية الدردشة","modelRecommendationLabel":"توصية النموذج: بادئة صريحة","clientCodexTitle":"نماذج Codex / GitHub Copilot","clientCodexBullet1":"استخدم معرفات النماذج مع","clientCodexBullet2":"نماذج عائلة Codex تتجه تلقائيًا إلى","clientCodexBullet3":"وتستمر النماذج غير التابعة للدستور الغذائي","clientCursorTitle":"بيئة تطوير متكاملة للمؤشر","clientCursorBullet1":"استخدم","clientCursorBullet1Suffix":"بادئة لنماذج المؤشر.","clientCursorBullet2":"اتصال OAuth - قم بتسجيل الدخول من صفحة مقدمي الخدمة.","clientClaudeTitle":"كلود كود / مضاد الجاذبية","clientClaudeBullet1Prefix":"استخدم","clientClaudeBullet1Middle":"(كلود) أو","clientClaudeBullet1Suffix":"(مضاد الجاذبية) البادئة.","endpointChatNote":"نقطة نهاية الدردشة المتوافقة مع OpenAI (افتراضي).","endpointResponsesNote":"نقطة نهاية واجهة برمجة التطبيقات للاستجابات (Codex، o-series).","endpointModelsNote":"كتالوج نموذجي لجميع مقدمي الخدمات المتصلين.","endpointAudioNote":"النسخ الصوتي (Deepgram، AssemblyAI).","endpointImagesNote":"توليد الصور (NanoBanana).","endpointRewriteChatNote":"إعادة كتابة المساعد للعملاء بدون /v1.","endpointRewriteResponsesNote":"أعد كتابة المساعد للاستجابات بدون /v1.","endpointRewriteModelsNote":"أعد كتابة المساعد لاكتشاف النموذج بدون /v1.","modelPrefixesDescriptionStart":"استخدم بادئة الموفر قبل اسم الطراز للتوجيه إلى موفر محدد. مثال:","modelPrefixesDescriptionEnd":"طرق إلى GitHub Copilot.","provider":"مزود","type":"اكتب","troubleshootingModelRouting":"إذا فشل العميل في توجيه النموذج، فاستخدم الموفر/النموذج الصريح (على سبيل المثال: gh/gpt-5.1-codex).","troubleshootingAmbiguousModels":"إذا تلقيت أخطاء نموذجية غامضة، فاختر بادئة الموفر بدلاً من معرف النموذج المجرد.","troubleshootingCodexFamily":"بالنسبة لنماذج عائلة GitHub Codex، احتفظ بالنموذج كـ gh/<codex-model>; يقوم جهاز التوجيه بتحديد/الاستجابات تلقائيًا.","troubleshootingTestConnection":"استخدم لوحة المعلومات > الموفرون > اختبار الاتصال قبل الاختبار من بيئات تطوير متكاملة أو عملاء خارجيين.","troubleshootingCircuitBreaker":"إذا أظهر مقدم الخدمة أن قاطع الدائرة مفتوح، فانتظر حتى فترة التهدئة أو راجع صفحة الصحة للحصول على التفاصيل.","troubleshootingOAuth":"بالنسبة لموفري OAuth، قم بإعادة المصادقة إذا انتهت صلاحية الرموز المميزة. تحقق من مؤشر حالة بطاقة المزود."},"legal":{"privacyPolicy":"سياسة الخصوصية","termsOfService":"شروط الخدمة","providerConfigurations":"تكوينات الموفر","apiKeys":"مفاتيح واجهة برمجة التطبيقات","usageLogs":"سجلات الاستخدام","applicationSettings":"إعدادات التطبيق","viewExportAnalytics":"عرض وتصدير تحليلات الاستخدام","clearHistory":"مسح سجل الاستخدام في أي وقت","configureRetention":"تكوين سياسات الاحتفاظ بالسجل","backupRestore":"النسخ الاحتياطي واستعادة قاعدة البيانات الخاصة بك","privacyMetadataTitle":"سياسة الخصوصية | OmniRoute","privacyMetadataDescription":"سياسة الخصوصية لجهاز التوجيه الوكيل OmniRoute AI API.","termsMetadataTitle":"شروط الخدمة | OmniRoute","termsMetadataDescription":"شروط الخدمة لجهاز التوجيه الوكيل OmniRoute AI API.","backToHome":"العودة إلى المنزل","lastUpdated":"آخر تحديث: {date}","policyLastUpdatedDate":"13 فبراير 2026","listSeparator":"-","questionsVisit":"أسئلة؟ قم بزيارة موقعنا","githubRepository":"مستودع جيثب","privacySection1Title":"1. العمارة المحلية الأولى","privacySection1Text":"تم تصميم OmniRoute كتطبيق محلي أولاً. تتم جميع عمليات معالجة البيانات وتخزينها بالكامل على جهازك. لا يوجد خادم مركزي يجمع معلوماتك.","privacySection2Title":"2. البيانات التي نقوم بتخزينها","privacyDataStoredIn":"يتم تخزين البيانات التالية محليًا في","privacyDataProviderConfigurationsDesc":"عناوين URL للاتصال وأنواع الموفرين وإعدادات الأولوية","privacyDataApiKeysDesc":"مشفرة ومخزنة محليًا للمصادقة مع موفري الذكاء الاصطناعي","privacyDataUsageLogsDesc":"عدد الطلبات واستخدام الرمز المميز وأسماء النماذج والطوابع الزمنية وأوقات الاستجابة","privacyDataApplicationSettingsDesc":"تفضيلات السمة، وإستراتيجية التوجيه، وتكوينات التحرير والسرد","privacySection3Title":"3. لا يوجد قياس عن بعد","privacySection3Text":"لا يقوم OmniRoute بجمع بيانات القياس عن بعد أو التحليلات أو تقارير الأعطال. لا يتم إرسال أي بيانات إلينا أو إلى أي طرف ثالث. تظل أنماط الاستخدام واستدعاءات API والتكوينات خاصة تمامًا.","privacySection4Title":"4. موفرو الذكاء الاصطناعي التابعون لجهات خارجية","privacySection4Text":"عند إجراء استدعاءات واجهة برمجة التطبيقات من خلال OmniRoute، تتم إعادة توجيه طلباتك إلى موفري الذكاء الاصطناعي الذين قمت بتكوينهم (على سبيل المثال: OpenAI، وAnthropic، وGoogle). لدى هؤلاء المزودين سياسات خصوصية خاصة بهم تحكم كيفية تعاملهم مع بياناتك. يرجى مراجعة:","privacyOpenAiPolicy":"سياسة خصوصية OpenAI","privacyAnthropicPolicy":"سياسة الخصوصية الإنسانية","privacyGooglePolicy":"سياسة خصوصية جوجل","privacySection5Title":"5. المزامنة السحابية (اختياري)","privacySection5Text":"إذا قمت بتمكين ميزة المزامنة السحابية الاختيارية، فقد يتم نقل تكوينات الموفر ومفاتيح API إلى نقطة نهاية سحابية تم تكوينها. يتم تعطيل هذه الميزة افتراضيًا وتتطلب الاشتراك الصريح.","privacySection6Title":"6. التسجيل","privacyLoggingIntro":"يمكن تكوين سجلات الطلب من خلال إعدادات لوحة المعلومات. يمكنك:","privacySection7Title":"7. حقوقك","privacySection7TextStart":"وبما أن جميع البيانات مخزنة محليًا، فلديك السيطرة الكاملة. يمكنك حذف بياناتك في أي وقت عن طريق إزالة","privacySection7TextEnd":"الدليل أو استخدام ميزات النسخ الاحتياطي واستعادة قاعدة البيانات في لوحة المعلومات.","termsSection1Title":"1. نظرة عامة","termsSection1Text":"OmniRoute هو أول جهاز توجيه وكيل محلي لواجهة برمجة التطبيقات (AI API) يعمل بالكامل على جهازك. يقوم بتوجيه الطلبات إلى العديد من موفري الذكاء الاصطناعي مع موازنة التحميل وتجاوز الفشل وتتبع الاستخدام.","termsSection2Title":"2. مسؤوليات المستخدم","termsResponsibilityApiKeys":"أنت وحدك المسؤول عن إدارة مفاتيح واجهة برمجة التطبيقات وبيانات الاعتماد الخاصة بك لموفري الذكاء الاصطناعي التابعين لجهات خارجية (OpenAI وAnthropic وGoogle وما إلى ذلك).","termsResponsibilityCompliance":"يجب عليك الالتزام بشروط الخدمة الخاصة بكل مزود للذكاء الاصطناعي الذي يمكنك الوصول إلى واجهة برمجة التطبيقات (API) الخاصة به من خلال OmniRoute.","termsResponsibilitySecurity":"أنت مسؤول عن أمان تثبيت OmniRoute المحلي لديك، بما في ذلك تعيين كلمة مرور وتقييد الوصول إلى الشبكة.","termsSection3Title":"3. كيف يعمل","termsSection3Text":"يعمل OmniRoute كوكيل وسيط. تتم ترجمة مكالمات API المرسلة إلى OmniRoute وإعادة توجيهها إلى موفري الذكاء الاصطناعي الذين تم تكوينهم. لا يقوم OmniRoute بتعديل محتوى طلباتك أو استجاباتك بما يتجاوز ترجمة البروتوكول الضرورية.","termsSection4Title":"4. التعامل مع البيانات","termsDataStoredLocally":"يتم تخزين جميع البيانات محليًا على جهازك في قاعدة بيانات SQLite.","termsNoTransmission":"لا يقوم OmniRoute بنقل أي بيانات إلى خوادم خارجية إلا إذا قمت بتمكين ميزات المزامنة السحابية بشكل صريح.","termsDataLocationText":"يتم تخزين سجلات الاستخدام ومفاتيح API والتكوين في","termsSection5Title":"5. إخلاء المسؤولية","termsSection5Text":"يتم توفير OmniRoute \\"كما هو\\" دون أي ضمان من أي نوع. نحن لسنا مسؤولين عن أي تكاليف يتم تكبدها من خلال استخدام واجهة برمجة التطبيقات (API)، أو انقطاع الخدمة، أو فقدان البيانات. احتفظ دائمًا بنسخ احتياطية من التكوين الخاص بك.","termsSection6Title":"6. المصدر المفتوح","termsSection6Text":"OmniRoute هو برنامج مفتوح المصدر. ولك الحرية في فحصه وتعديله وتوزيعه بموجب شروط ترخيصه."}}')}};
1
+ "use strict";exports.id=8464,exports.ids=[8464],exports.modules={48464:a=>{a.exports=JSON.parse('{"common":{"save":"حفظ","cancel":"إلغاء","delete":"حذف","loading":"جار التحميل...","error":"حدث خطأ","success":"النجاح","confirm":"هل أنت متأكد؟","refresh":"تحديث","close":"إغلاق","add":"أضف","edit":"تحرير","search":"بحث","back":"العودة","next":"التالي","submit":"إرسال","reset":"إعادة تعيين","copy":"نسخ","copied":"منسوخ!","enabled":"ممكّن","disabled":"غير مفعّل","active":"نشط","inactive":"غير نشط","noData":"لا توجد بيانات متاحة","configure":"تكوين","manage":"إدارة","name":"الاسم","actions":"الإجراءات","status":"الحالة","type":"اكتب","model":"نموذج","models":"نماذج","provider":"مزود","account":"الحساب","time":"الوقت","details":"التفاصيل","created":"تم إنشاؤها","lastUsed":"آخر استخدام","loadMore":"تحميل المزيد","noResults":"لم يتم العثور على نتائج","reloadPage":"إعادة تحميل الصفحة","connected":"متصل","disconnected":"غير متصل","notConfigured":"لم يتم تكوينه","testConnection":"اتصال الاختبار","enable":"تمكين","disable":"تعطيل","columns":"أعمدة","newest":"الأحدث","oldest":"الأقدم","all":"الكل","none":"لا شيء","yes":"نعم","no":"لا","warning":"تحذير","note":"ملاحظة","free":"مجاني","skipToContent":"انتقل إلى المحتوى"},"sidebar":{"home":"الصفحة الرئيسية","dashboard":"لوحة القيادة","providers":"المزوّدون","combos":"المجموعات","usage":"الاستخدام","analytics":"التحليلات","costs":"التكاليف","health":"الصحة","limits":"الحدود والحصص","cliTools":"أدوات سطر الأوامر","settings":"الإعدادات","translator":"مترجم","docs":"المستندات","issues":"القضايا","endpoint":"نقطة النهاية","apiManager":"مدير API","logs":"سجلات","auditLog":"سجل التدقيق","shutdown":"إيقاف التشغيل","restart":"إعادة التشغيل","shutdownConfirm":"هل تريد إيقاف OmniRoute؟","restartConfirm":"هل تريد إعادة تشغيل OmniRoute؟","version":"v{version}","debug":"تصحيح","system":"النظام","help":"مساعدة","serverDisconnected":"تم قطع اتصال الخادم","serverDisconnectedMsg":"تم إيقاف الخادم الوكيل أو يتم إعادة تشغيله.","expandSidebar":"قم بتوسيع الشريط الجانبي","collapseSidebar":"طي الشريط الجانبي"},"header":{"logout":"تسجيل الخروج","language":"اللغة","providers":"المزوّدون","providerDescription":"إدارة اتصالات مزوّدي الذكاء الاصطناعي","combos":"المجموعات","comboDescription":"مجموعات نماذج مع التبديل الاحتياطي","usage":"الاستخدام والتحليلات","usageDescription":"مراقبة استخدام واجهة برمجة التطبيقات (API) واستهلاك الرمز المميز وسجلات الطلبات","analytics":"التحليلات","analyticsDescription":"الرسوم البيانية والاتجاهات ورؤى التقييم","cliTools":"أدوات سطر الأوامر","cliToolsDescription":"تكوين أدوات CLI","home":"الصفحة الرئيسية","homeDescription":"مرحبًا بك في OmniRoute","endpoint":"نقطة النهاية","endpointDescription":"تكوين نقطة النهاية API","settings":"الإعدادات","settingsDescription":"إدارة تفضيلاتك","openaiCompatible":"متوافق مع OpenAI","anthropicCompatible":"متوافق مع Anthropic"},"home":{"quickStart":"بداية سريعة","quickStartDesc":"ابدأ خلال 4 خطوات: وصّل المزوّدين، فعّل توجيه النماذج، وراقب كل شيء.","fullDocs":"التوثيق الكامل","step1Title":"1. إنشاء مفتاح API","step1Desc":"انتقل إلى <endpoint>Endpoint</endpoint> -> Registered Keys. أنشئ مفتاحًا واحدًا لكل بيئة.","step2Title":"2. ربط مقدمي الخدمات","step2Desc":"أضف الحسابات في <providers>Providers</providers>. يدعم OAuth وAPI Key والخطط المجانية.","step3Title":"3. اضبط عميلك","step3Desc":"عيّن عنوان Base URL إلى {url} في IDE أو عميل API لديك.","step4Title":"4. المراقبة والتحسين","step4Desc":"تتبّع الرموز والتكلفة والأخطاء في <logs>سجلات الطلبات</logs> و<analytics>التحليلات</analytics>.","providersOverview":"نظرة عامة على مقدمي الخدمة","configuredOf":"تم تكوين {configured} من بين {total} الموفرين المتاحين","noModelsAvailable":"لا توجد نماذج متاحة لهذا المزود.","configureFirst":"قم بتكوين الاتصال أولاً في {providers}","configureProvider":"تكوين الموفر","modelAvailable":"يتوفر طراز {count}","modelsAvailable":"{count} النماذج المتوفرة","connectionsActive":"{count} الاتصال نشط","connectionsActivePlural":"{count} الاتصالات نشطة","copyModelName":"انسخ اسم الموديل","documentation":"التوثيق","healthMonitor":"مراقب الصحة","reportIssue":"الإبلاغ عن مشكلة","activeError":"{active} نشط \xb7 {errors} خطأ","oauthLabel":"OAuth","apiKeyLabel":"مفتاح واجهة برمجة التطبيقات","requestsShort":"{count} طلب","providerModelsTitle":"{provider} - النماذج","copiedModel":"تم النسخ: {model}","aliasLabel":"الاسم المستعار"},"analytics":{"title":"التحليلات","overviewDescription":"راقب أنماط استخدام واجهة برمجة التطبيقات (API) واستهلاك الرمز المميز والتكاليف واتجاهات النشاط عبر جميع مقدمي الخدمات والنماذج.","evalsDescription":"قم بتشغيل مجموعات التقييم لاختبار نقاط نهاية LLM الخاصة بك والتحقق من صحتها. مقارنة جودة النموذج، واكتشاف الانحدارات، وقياس وقت الاستجابة.","overview":"نظرة عامة","evals":"التقييمات"},"apiManager":{"title":"مفاتيح واجهة برمجة التطبيقات","createKey":"إنشاء مفتاح API","key":"مفتاح","revokeKey":"إبطال المفتاح","revokeConfirm":"هل أنت متأكد أنك تريد إلغاء مفتاح API هذا؟","noKeys":"لا توجد مفاتيح API حتى الآن","noKeysDesc":"قم بإنشاء مفتاح API الأول الخاص بك لمصادقة الطلبات إلى نقطة النهاية الخاصة بك","keyLabel":"تسمية المفتاح","permissions":"الأذونات","expiresAt":"تنتهي","never":"أبدا","revoke":"إبطال","showKey":"إظهار المفتاح","hideKey":"إخفاء المفتاح","copyKey":"انسخ مفتاح واجهة برمجة التطبيقات","allModels":"جميع الموديلات","selectedModels":"نماذج مختارة","readOnly":"قراءة فقط","fullAccess":"الوصول الكامل","keyManagement":"إدارة مفاتيح API","keyManagementDesc":"قم بإنشاء وإدارة مفاتيح API لمصادقة الطلبات إلى نقطة النهاية الخاصة بك","totalKeys":"مجموع المفاتيح","restricted":"مقيد","totalRequests":"إجمالي الطلبات","modelsAvailable":"النماذج المتاحة","registeredKeys":"المفاتيح المسجلة","keysRegistered":"{count} مفاتيح مسجلة","keyRegistered":"تم تسجيل المفتاح {count}","keysSecurityNote":"يعزل كل مفتاح تتبع الاستخدام ويمكن إبطاله بشكل مستقل. يتم إخفاء المفاتيح بعد إنشائها لأسباب أمنية.","createFirstKey":"قم بإنشاء مفتاحك الأول","name":"الاسم","usage":"الاستخدام","created":"تم إنشاؤها","actions":"الإجراءات","reqs":"طلبات","neverUsed":"لم تستخدم قط","deleteConfirm":"هل تريد حذف مفتاح واجهة برمجة التطبيقات هذا؟","usageTips":"نصائح الاستخدام","tipAuth":"استخدم مفاتيح API في رأس التفويض كحامل YOUR_KEY","tipSecure":"يتم عرض المفاتيح مرة واحدة فقط أثناء الإنشاء — قم بتخزينها بشكل آمن","tipSeparate":"قم بإنشاء مفاتيح منفصلة لعملاء أو بيئات مختلفة","tipRestrict":"قم بتقييد المفاتيح لنماذج محددة لتحسين الأمان والتحكم في التكلفة","keyName":"اسم المفتاح","keyNamePlaceholder":"على سبيل المثال، مفتاح الإنتاج، مفتاح التطوير","keyNameDesc":"اختر اسمًا وصفيًا لتحديد غرض هذا المفتاح","keyCreated":"تم إنشاء مفتاح API","keyCreatedSuccess":"تم إنشاء المفتاح بنجاح!","keyCreatedNote":"انسخ هذا المفتاح وقم بتخزينه الآن - لن يتم عرضه مرة أخرى.","done":"تم","savePermissions":"حفظ الأذونات","allowAll":"السماح للكل","restrict":"تقييد","allowAllInfo":"يمكن لهذا المفتاح الوصول إلى كافة الموديلات المتاحة.","restrictInfo":"يمكن لهذا المفتاح الوصول إلى {selected} من طرازات {total}.","selected":"تم تحديد {count}","all":"الكل","clear":"واضح","searchModels":"نماذج البحث بالاسم أو المزود...","noModelsFound":"لم يتم العثور على نماذج","keyNameRequired":"اسم المفتاح مطلوب","keyNameTooLong":"يجب أن يتكون اسم المفتاح من {max} حرفًا أو أقل","keyNameInvalid":"يمكن أن يحتوي اسم المفتاح فقط على أحرف وأرقام ومسافات وواصلات وشرطات سفلية","invalidKeyName":"اسم المفتاح غير صالح","failedCreateKey":"فشل في إنشاء المفتاح","failedCreateKeyRetry":"فشل في إنشاء المفتاح. يرجى المحاولة مرة أخرى.","invalidKeyId":"معرف المفتاح غير صالح","failedDeleteKey":"فشل في حذف المفتاح","failedDeleteKeyRetry":"فشل في حذف المفتاح. يرجى المحاولة مرة أخرى.","invalidModelsSelection":"تحديد النماذج غير صالح","cannotSelectMoreThanModels":"لا يمكن تحديد أكثر من {max} من النماذج","failedUpdatePermissions":"فشل تحديث الأذونات","failedUpdatePermissionsRetry":"فشل تحديث الأذونات. يرجى المحاولة مرة أخرى.","unknownProvider":"غير معروف","copyMaskedKey":"انسخ المفتاح المقنع","modelsCount":"{count, plural, one {# model} other {# models}}","lastUsedOn":"الأخير: {date}","editPermissions":"تحرير الأذونات","deleteKey":"حذف المفتاح","model":"{count} النموذج","models":"{count} النماذج","permissionsTitle":"الأذونات: {name}","allowAllDesc":"يمكن لهذا المفتاح الوصول إلى كافة الموديلات المتاحة.","restrictDesc":"يمكن لهذا المفتاح الوصول إلى {selectedCount} من طرازات {totalModels}.","selectedCount":"تم تحديد {count}"},"auditLog":{"title":"سجل التدقيق","searchPlaceholder":"إجراءات البحث...","action":"العمل","actor":"ممثل","target":"الهدف","ipAddress":"عنوان IP","timestamp":"الطابع الزمني","noEntries":"لم يتم العثور على إدخالات التدقيق","filterByAction":"التصفية حسب الإجراء...","filterByActor":"تصفية حسب الممثل...","filterEntriesAria":"تصفية إدخالات سجل التدقيق","filterByActionTypeAria":"التصفية حسب نوع الإجراء","filterByActorAria":"تصفية حسب الممثل","refreshAuditLogAria":"تحديث سجل التدقيق","tableAria":"إدخالات سجل التدقيق","failedFetchAuditLog":"فشل جلب سجل التدقيق","notAvailable":"—","description":"الإجراءات الإدارية والأحداث الأمنية","showing":"عرض {count} إدخالات (الإزاحة {offset})","previous":"السابق"},"cliTools":{"title":"أدوات سطر الأوامر","noActiveProviders":"لا يوجد مقدمي خدمات نشطين","noActiveProvidersDesc":"الرجاء إضافة موفري الخدمة والاتصال بهم أولاً لتكوين أدوات واجهة سطر الأوامر (CLI).","mapModels":"نماذج الخرائط","testConnection":"اتصال الاختبار","connectionStatus":"حالة الاتصال","configureEndpoint":"تكوين نقطة النهاية","instructions":"تعليمات","modelMapping":"رسم الخرائط النموذجية","baseUrl":"عنوان URL الأساسي","apiKey":"مفتاح واجهة برمجة التطبيقات","configured":"تم تكوينه","notConfigured":"لم يتم تكوينه","notInstalled":"غير مثبت","custom":"مخصص","unknown":"غير معروف","lastSavedAt":"آخر حفظ: {date}","never":"أبدا","justNow":"الآن فقط","minutesAgoShort":"{count} منذ","hoursAgoShort":"{count}h منذ","daysAgoShort":"{count}d منذ","monthsAgoShort":"{count}قبل شهر","yearsAgoShort":"{count}قبل عام","runtimeCheckFailed":"فشل التحقق من وقت التشغيل","yourApiKeyPlaceholder":"مفتاح API الخاص بك","modelPlaceholder":"معرف الموفر/النموذج","configurationSaved":"تم حفظ التكوين بنجاح.","failedToSave":"فشل حفظ التكوين.","noApiKeysCreateOne":"لا توجد مفاتيح API - قم بإنشاء واحد في صفحة المفاتيح","defaultOmnirouteKey":"sk_omniroute (افتراضي)","selectModel":"حدد النموذج","selectModelForAlias":"تحديد نموذج لـ {alias}","selectModelForTool":"حدد نموذجًا لـ {tool}","select":"اختر","clear":"واضح","comingSoon":"قريبا","checkingRuntime":"التحقق من حالة وقت التشغيل...","guideOnlyIntegration":"تكامل الدليل فقط (لا يتطلب وقت تشغيل محلي)","cliRuntimeDetected":"تم اكتشاف وقت تشغيل CLI وأصبح جاهزًا","cliFoundNotRunnable":"تم العثور على واجهة سطر الأوامر (CLI) ولكنها غير قابلة للتشغيل{reason}","cliRuntimeNotDetected":"لم يتم الكشف عن وقت تشغيل CLI","binary":"ثنائي","configPath":"مسار التكوين","configPathShort":"التكوين","failedCheckRuntimeStatus":"فشل في التحقق من حالة وقت التشغيل.","copy":"نسخ","copied":"منقول","copyConfig":"نسخ التكوين","saveConfig":"حفظ التكوين","selectionSaved":"تم حفظ التحديد","guide":"دليل","detected":"تم الكشف عنها","notReady":"غير جاهز","active":"نشط","inactive":"غير نشط","startMitm":"ابدأ تشغيل MITM","stopMitm":"وقف ميتم","mitmStarted":"بدأ MITM بنجاح!","mitmStopped":"توقف MITM بنجاح!","failedStart":"فشل بدء تشغيل MITM","failedStop":"فشل في إيقاف MITM","saveMappings":"حفظ التعيينات","mappingsSaved":"تم حفظ التعيينات!","failedSaveMappings":"فشل حفظ التعيينات","howItWorks":"كيف يعمل:","antigravityHowWorksDesc":"تقوم Antigravity بإرسال الطلبات إلى نقطة نهاية Google. يقوم MITM باعتراضهم وإعادة توجيههم إلى OmniRoute.","antigravityStep1":"1. ابدأ تشغيل MITM لتوجيه الطلبات عبر OmniRoute.","antigravityStep2Prefix":"2. أضف","antigravityStep2Suffix":"إلى ملف المضيفين الخاص بك كـ 127.0.0.1.","antigravityStep3":"3. سيتم فتح Antigravity والطلبات بالوكالة.","sudoPasswordRequiredTitle":"كلمة مرور سودو مطلوبة","sudoPasswordHint":"كلمة مرور المسؤول مطلوبة لتعديل ملف المضيفين وإعدادات وكيل النظام.","enterSudoPassword":"أدخل كلمة مرور سودو","sudoPasswordRequiredError":"كلمة مرور سودو مطلوبة.","cancel":"إلغاء","confirm":"تأكيد","settingsApplied":"تم تطبيق الإعدادات بنجاح!","failedApplySettings":"فشل في تطبيق الإعدادات","settingsReset":"تمت إعادة ضبط الإعدادات بنجاح!","failedResetSettings":"فشل في إعادة ضبط الإعدادات","backupRestored":"تمت استعادة النسخة الاحتياطية!","failedRestore":"فشل في الاستعادة","checkingCli":"جارٍ التحقق من {tool} CLI...","cliNotRunnable":"{tool} تم تثبيت واجهة سطر الأوامر (CLI) ولكنها غير قابلة للتشغيل","cliNotInstalled":"{tool} واجهة سطر الأوامر غير مثبتة","cliNotDetected":"{tool} لم يتم اكتشاف واجهة سطر الأوامر","cliDetectedReady":"{tool} تم اكتشاف واجهة سطر الأوامر (CLI) وهي جاهزة","cliFoundFailedHealthcheck":"{tool} تم العثور على واجهة سطر الأوامر (CLI) ولكن فشل التحقق من سلامة وقت التشغيل{reason}.","installCliPrompt":"الرجاء تثبيت {tool} CLI لاستخدام هذه الميزة.","installCodexPrompt":"الرجاء تثبيت Codex CLI لاستخدام ميزة التطبيق التلقائي.","hide":"إخفاء","howToInstall":"كيفية التثبيت","installationGuide":"دليل التثبيت","platforms":"ماك / لينكس / ويندوز:","afterInstallationRun":"بعد التثبيت، قم بتشغيل","toVerify":"للتحقق.","current":"الحالي","baseUrlPlaceholder":"https://.../v1","resetToDefault":"إعادة التعيين إلى الوضع الافتراضي","providerModelPlaceholder":"معرف الموفر/النموذج","apply":"تطبيق","reset":"إعادة تعيين","manualConfig":"التكوين اليدوي","backups":"النسخ الاحتياطية","configBackups":"النسخ الاحتياطية التكوين","noBackupsYet":"لا توجد نسخ احتياطية حتى الآن. يتم إنشاء النسخ الاحتياطية تلقائيًا قبل كل تطبيق أو إعادة تعيين.","restore":"استعادة","backupRestoredReloading":"تمت استعادة النسخة الاحتياطية! جارٍ إعادة تحميل الحالة...","failedRestoreBackup":"فشل في استعادة النسخة الاحتياطية","applied":"تم التطبيق!","failed":"فشل","resetDone":"إعادة تعيين!","omnirouteConfiguredOpenAiCompatible":"تم تكوين OmniRoute كموفر متوافق مع OpenAI","provider":"مزود","model":"نموذج","providers":"مقدمي الخدمات","auth":"مصادقة","noApiKeysAvailable":"لا توجد مفاتيح API متاحة","usingDefaultOmniroute":"باستخدام الافتراضي: sk_omniroute","updateConfig":"تحديث التكوين","applyConfig":"تطبيق التكوين","noBackupsAvailable":"لا توجد نسخ احتياطية متاحة.","profileSaved":"تم حفظ الملف الشخصي \\"{name}\\"!","failedSaveProfile":"فشل حفظ الملف الشخصي","profileActivated":"تم تفعيل الملف الشخصي!","failedActivateProfile":"فشل في تفعيل الملف الشخصي","profiles":"الملفات الشخصية","savedProfiles":"الملفات الشخصية المحفوظة","noProfilesYet":"لم يتم حفظ أي ملفات شخصية حتى الآن. احفظ التكوين الحالي كملف تعريف أدناه.","activate":"تفعيل","deleteProfile":"حذف الملف الشخصي","profileNamePlaceholder":"اسم الملف الشخصي (مثل الحساب الشخصي)","saveCurrent":"حفظ الحالي","codexAuthNotePrefix":"يستخدم الدستور الغذائي","codexAuthNoteMiddle":"مع","codexAuthNoteSuffix":"انقر فوق \\"تطبيق\\" للتكوين التلقائي.","claudeManualConfiguration":"كلود CLI - التكوين اليدوي","codexManualConfiguration":"Codex CLI - التكوين اليدوي","droidManualConfiguration":"Factory Droid - التكوين اليدوي","openClawManualConfiguration":"فتح المخلب - التكوين اليدوي","clineManualConfiguration":"التكوين اليدوي لكلين","kiloManualConfiguration":"التكوين اليدوي للكيلو كود","toolDescriptions":{"antigravity":"جوجل مكافحة الجاذبية IDE مع MITM","claude":"الأنثروبي كلود كود CLI","codex":"OpenAI Codex CLI","droid":"مساعد مصنع الروبوت AI","openclaw":"افتح مساعد Claw AI","cline":"Cline AI Coding Assistant CLI","kilo":"كيلو كود AI مساعد CLI","cursor":"محرر كود المؤشر AI","continue":"تابع مساعد الذكاء الاصطناعي"},"guides":{"cursor":{"notes":{"0":"يتطلب حساب Cursor Pro لاستخدام هذه الميزة.","1":"يقوم المؤشر بتوجيه الطلبات من خلال الخادم الخاص به، لذلك لا يتم دعم نقطة النهاية المحلية. يرجى تمكين Cloud Endpoint في الإعدادات."},"steps":{"1":{"title":"افتح الإعدادات","desc":"انتقل إلى الإعدادات -> النماذج"},"2":{"title":"تمكين OpenAI API","desc":"تمكين خيار \\"مفتاح OpenAI API\\"."},"3":{"title":"عنوان URL الأساسي"},"4":{"title":"مفتاح واجهة برمجة التطبيقات"},"5":{"title":"إضافة نموذج مخصص","desc":"انقر فوق \\"عرض كافة النماذج\\" -> \\"إضافة نموذج مخصص\\""},"6":{"title":"حدد النموذج"}}},"continue":{"steps":{"1":{"title":"افتح التكوين","desc":"افتح متابعة ملف التكوين"},"2":{"title":"مفتاح واجهة برمجة التطبيقات"},"3":{"title":"حدد النموذج"},"4":{"title":"إضافة تكوين النموذج","desc":"أضف التكوين التالي إلى مجموعة النماذج الخاصة بك:"}}}}},"combos":{"title":"المجموعات","description":"قم بإنشاء مجموعات نماذج باستخدام التوجيه المرجح والدعم الاحتياطي","createCombo":"إنشاء التحرير والسرد","editCombo":"تحرير التحرير والسرد","deleteCombo":"حذف التحرير والسرد","noModels":"لا نماذج","noModelsYet":"لم تتم إضافة أي نماذج حتى الآن","addModel":"إضافة نموذج","addModelToCombo":"إضافة نموذج إلى التحرير والسرد","routingStrategy":"استراتيجية التوجيه","maxRetries":"ماكس إعادة المحاولة","timeout":"المهلة (مللي ثانية)","healthcheck":"فحص الصحة","priority":"الأولوية","fallback":"احتياطي","roundRobin":"جولة روبن","random":"عشوائي","leastLatency":"الكمون الأقل","comboName":"اسم التحرير والسرد","comboNamePlaceholder":"بلدي التحرير والسرد","deleteConfirm":"هل تريد حذف هذا التحرير والسرد؟","noCombosYet":"لا المجموعات بعد","comboCreated":"تم إنشاء التحرير والسرد بنجاح","comboUpdated":"تم تحديث التحرير والسرد بنجاح","comboDeleted":"تم حذف التحرير والسرد","failedCreate":"فشل إنشاء التحرير والسرد","failedUpdate":"فشل تحديث التحرير والسرد","errorCreating":"حدث خطأ أثناء إنشاء التحرير والسرد","errorUpdating":"حدث خطأ أثناء تحديث التحرير والسرد","errorDeleting":"حدث خطأ أثناء حذف التحرير والسرد","testFailed":"فشل طلب الاختبار","failedToggle":"فشل تبديل التحرير والسرد","testResults":"نتائج الاختبار — {name}","resolvedBy":"تم الحل بواسطة:","more":"+{count} المزيد","reqs":"طلبات","success":"النجاح","proxyConfigured":"تم تكوين الوكيل","copyComboName":"انسخ اسم التحرير والسرد","enableCombo":"تمكين التحرير والسرد","disableCombo":"تعطيل التحرير والسرد","testCombo":"التحرير والسرد الاختبار","duplicate":"مكررة","proxyConfig":"تكوين الوكيل","nameRequired":"الاسم مطلوب","nameInvalid":"فقط الحروف والأرقام، -، _، / و . مسموح به","nameHint":"الحروف والأرقام، -، _، / و . مسموح به","priorityDesc":"التراجع المتسلسل: تجربة النموذج 1 أولاً، ثم 2، وما إلى ذلك.","weightedDesc":"يوزع حركة المرور حسب نسبة الوزن مع التراجع","roundRobinDesc":"التوزيع الدائري: ينتقل كل طلب إلى النموذج التالي بالتناوب","randomDesc":"اختيار عشوائي موحد، ثم الرجوع إلى النماذج المتبقية","leastUsedDesc":"يختار النموذج الذي يحتوي على أقل عدد من الطلبات، مع موازنة الحمل مع مرور الوقت","costOptimizedDesc":"الطرق إلى النموذج الأرخص تعتمد أولاً على التسعير","models":"نماذج","autoBalance":"التوازن التلقائي","advancedSettings":"الإعدادات المتقدمة","retryDelay":"تأخير إعادة المحاولة (ملي ثانية)","concurrencyPerModel":"التزامن/النموذج","queueTimeout":"مهلة قائمة الانتظار (مللي ثانية)","advancedHint":"اتركه فارغًا لاستخدام الإعدادات الافتراضية العامة. تتجاوز هذه الإعدادات لكل موفر.","moveUp":"تحرك للأعلى","moveDown":"تحرك للأسفل","removeModel":"إزالة","saving":"جارٍ الحفظ...","weighted":"مرجح","leastUsed":"الأقل استخدامًا","costOpt":"تكلفة الاختيار"},"costs":{"title":"التكاليف","budget":"الميزانية","totalCost":"التكلفة الإجمالية","breakdown":"تقسيم التكلفة","noData":"لا توجد بيانات التكلفة","byModel":"حسب الموديل","byProvider":"بواسطة المزود"},"endpoint":{"title":"نقطة نهاية واجهة برمجة التطبيقات","available":"نقاط النهاية المتاحة","cloudProxy":"الوكيل السحابي","disableConfirm":"هل أنت متأكد أنك تريد تعطيل الوكيل السحابي؟","baseUrl":"عنوان URL الأساسي","apiKeyLabel":"مفتاح واجهة برمجة التطبيقات","registeredKeys":"المفاتيح المسجلة","chatCompletions":"استكمالات الدردشة","responses":"الردود","listModels":"نماذج القائمة","usingCloudProxy":"باستخدام وكيل السحابة","usingLocalServer":"باستخدام الخادم المحلي","machineId":"معرف الجهاز: {id}...","disableCloud":"تعطيل السحابة","enableCloud":"تمكين السحابة","modelsAcrossEndpoints":"نماذج {models} عبر نقاط النهاية {endpoints}","chatDesc":"الدردشة المتدفقة وغير المتدفقة مع جميع مقدمي الخدمة","embeddings":"التضمين","embeddingsDesc":"تضمينات نصية للبحث وخطوط أنابيب RAG","imageGeneration":"توليد الصور","imageDesc":"توليد الصور من المطالبات النصية","rerank":"إعادة الترتيب","rerankDesc":"إعادة ترتيب المستندات حسب صلتها بالاستعلام","audioTranscription":"النسخ الصوتي","audioTranscriptionDesc":"نسخ الملفات الصوتية إلى نص (Whisper)","textToSpeech":"تحويل النص إلى كلام","textToSpeechDesc":"تحويل النص إلى كلام يبدو طبيعيا","moderations":"الاعتدالات","moderationsDesc":"الإشراف على المحتوى وتصنيف السلامة","enableCloudTitle":"تمكين الوكيل السحابي","whatYouGet":"ما سوف تحصل عليه","cloudBenefitAccess":"الوصول إلى API الخاص بك من أي مكان في العالم","cloudBenefitShare":"مشاركة نقطة النهاية مع فريقك بسهولة","cloudBenefitPorts":"لا حاجة لفتح المنافذ أو تكوين جدار الحماية","cloudBenefitEdge":"شبكة حافة عالمية سريعة","cloudSessionNote":"ستحتفظ السحابة بجلسة المصادقة الخاصة بك لمدة يوم واحد. إذا لم يتم استخدامه، سيتم حذفه تلقائيا.","cloudUnstableNote":"السحابة غير مستقرة حاليًا مع Claude Code OAuth في بعض الحالات.","cloudConnected":"الوكيل السحابي متصل!","connectingToCloud":"جارٍ الاتصال بالسحابة...","verifyingConnection":"جارٍ التحقق من الاتصال...","connecting":"جارٍ الاتصال...","verifying":"جارٍ التحقق...","connected":"متصل!","disableCloudTitle":"تعطيل الوكيل السحابي","disableWarning":"سيتم حذف جميع جلسات المصادقة من السحابة.","syncingData":"جارٍ مزامنة أحدث البيانات...","disablingCloud":"جارٍ تعطيل السحابة...","syncing":"جارٍ المزامنة...","disabling":"جارٍ التعطيل...","cloudConnectedVerified":"تم توصيل Cloud Proxy والتحقق منه!","connectedVerificationPending":"متصل - التحقق معلق","connectedVerificationPendingWithError":"متصل — التحقق معلق: {error}","cloudDisabledSuccess":"تم تعطيل السحابة بنجاح","syncedSuccess":"تمت المزامنة بنجاح","failedDisable":"فشل في تعطيل السحابة","failedEnable":"فشل في تمكين السحابة","cloudRequestTimeout":"انتهت مهلة الطلب السحابي","cloudRequestFailed":"فشل طلب السحابة","cloudWorkerUnreachable":"لا يمكن الوصول إلى عامل السحابة. تأكد من تشغيل الخدمة السحابية (npm run dev in /cloud).","connectionFailed":"فشل الاتصال","syncFailed":"فشلت مزامنة البيانات السحابية","providerModelsTitle":"{provider} — النماذج","noModelsForProvider":"لا توجد نماذج متاحة لهذا المزود.","chat":"الدردشة","embedding":"التضمين","image":"صورة","custom":"مخصص","modelsCount":"{count, plural, one {# model} other {# models}}","responsesDesc":"واجهة Responses من OpenAI لـ Codex وسير العمل الوكيلية المتقدمة","listModelsDesc":"قائمة جميع النماذج المتاحة عبر جميع المزودين المتصلين","settingsApi":"Settings API","settingsApiDesc":"قراءة وتعديل إعدادات OmniRoute عبر API","categoryCore":"واجهات API الأساسية","categoryMedia":"الوسائط والمتعدد الوسائط","categoryUtility":"أدوات فرعية وإدارة"},"health":{"title":"صحة النظام","description":"المراقبة في الوقت الحقيقي لمثيل OmniRoute الخاص بك","healthy":"صحي","degraded":"متدهورة","down":"أسفل","uptime":"الجهوزية","memory":"الذاكرة","memoryRss":"الذاكرة (آر إس إس)","heap":"كومة","cpu":"وحدة المعالجة المركزية","database":"قاعدة البيانات","version":"الإصدار","lastCheck":"الفحص الأخير","providerHealth":"صحة المزود","systemMetrics":"مقاييس النظام","tokenHealth":"صحة الرمز","refreshAll":"تحديث الكل","checkNow":"تحقق الآن","loadingHealth":"جارٍ تحميل البيانات الصحية...","failedToLoad":"فشل تحميل البيانات الصحية: {error}","retry":"أعد المحاولة","allOperational":"جميع الأنظمة قيد التشغيل","issuesDetected":"تم اكتشاف مشاكل في النظام","updatedAt":"تم التحديث {time}","latency":"الكمون","latencyP50":"ص50","latencyP95":"ص95","latencyP99":"ص99","millisecondsShort":"{value}ms","notAvailable":"—","totalRequests":"إجمالي الطلبات","noDataYet":"لا توجد بيانات حتى الآن","promptCache":"ذاكرة التخزين المؤقت الفوري","entries":"إدخالات","hitRate":"معدل الإصابة","hitsMisses":"الزيارات / الأخطاء","signatureCache":"ذاكرة التخزين المؤقت للتوقيع","signatureDefaults":"الافتراضيات","signatureTool":"أداة","signatureFamily":"العائلة","signatureSession":"جلسة","recovering":"يتعافى","noCBData":"لا تتوفر بيانات قاطع الدائرة. تقديم بعض الطلبات أولا.","providerHealthStatusAria":"الحالة الصحية للمزود","issuesLabel":"تم اكتشاف المشكلات","operational":"التشغيلية","providers":"مقدمي الخدمات","healthyCount":"{count} صحي","nodeVersion":"العقدة {version}","failures":"{count} فشل","failuresPlural":"{count} حالات الفشل","lastFailure":"الاخير","rateLimitStatus":"حالة حد السعر","activeLimiters":"{count} المحدد النشط","activeLimitersPlural":"{count} المحددات النشطة","queued":"في قائمة الانتظار","queuedCount":"{count} في قائمة الانتظار","running":"تشغيل","runningCount":"{count} قيد التشغيل","ok":"حسنًا","activeLockouts":"عمليات الإغلاق النشطة","resetConfirm":"إعادة ضبط كافة قواطع الدائرة إلى الحالة الصحية؟ سيؤدي هذا إلى مسح جميع أعداد الفشل واستعادة كافة الموفرين إلى الحالة التشغيلية.","resetAllTitle":"إعادة ضبط كافة قواطع الدائرة إلى الحالة الصحية","resetting":"إعادة الضبط...","resetAll":"إعادة ضبط الكل","until":"حتى {time}"},"limits":{"title":"الحدود والحصص","rateLimit":"حد السعر","remaining":"المتبقي","requestsPerMinute":"طلبات/دقيقة","tokensPerMinute":"الرموز / دقيقة","dailyLimit":"الحد اليومي"},"logs":{"title":"سجلات","requestLogs":"سجلات الطلب","proxyLogs":"سجلات الوكيل","auditLog":"سجل التدقيق","console":"وحدة التحكم","auditLogDesc":"الإجراءات الإدارية والأحداث الأمنية","loading":"جار التحميل...","refresh":"تحديث","filterByAction":"التصفية حسب الإجراء...","filterByActor":"تصفية حسب الممثل...","filterEntriesAria":"تصفية إدخالات سجل التدقيق","filterByActionTypeAria":"التصفية حسب نوع الإجراء","filterByActorAria":"تصفية حسب الممثل","refreshAuditLogAria":"تحديث سجل التدقيق","tableAria":"إدخالات سجل التدقيق","failedFetchAuditLog":"فشل جلب سجل التدقيق","showing":"عرض {count} إدخالات (الإزاحة {offset})","search":"بحث","timestamp":"الطابع الزمني","action":"العمل","actor":"ممثل","target":"الهدف","details":"التفاصيل","ipAddress":"عنوان IP","notAvailable":"—","noEntries":"لم يتم العثور على إدخالات سجل التدقيق","previous":"السابق","next":"التالي"},"onboarding":{"welcome":"مرحبًا","security":"الأمن","test":"اختبار","ready":"جاهز!","setPassword":"تعيين كلمة المرور","addProvider":"أضف مزودك الأول","getStarted":"ابدأ","skip":"تخطي","skipWizard":"تخطي المعالج بالكامل","skipPassword":"تخطي إعداد كلمة المرور","skipAndContinue":"تخطي ومتابعة","passwordLabel":"كلمة المرور","confirmPassword":"تأكيد كلمة المرور","enterPassword":"أدخل كلمة المرور","confirmPasswordPlaceholder":"تأكيد كلمة المرور","passwordsMismatch":"كلمات المرور غير متطابقة","setupComplete":"اكتمل الإعداد!","goToDashboard":"انتقل إلى لوحة المعلومات →","welcomeDesc":"OmniRoute هو وكيل AI API المحلي الخاص بك. يقوم بتوجيه الطلبات إلى العديد من موفري الذكاء الاصطناعي مع موازنة التحميل وتجاوز الفشل وتتبع الاستخدام.","multiProvider":"متعدد الموفر","usageTracking":"تتبع الاستخدام","apiKeyMgmt":"إدارة مفتاح واجهة برمجة التطبيقات (API)","securityDesc":"قم بتعيين كلمة مرور لحماية لوحة المعلومات الخاصة بك، أو قم بالتخطي الآن.","providerDesc":"قم بتوصيل مزود الذكاء الاصطناعي الأول الخاص بك. يمكنك إضافة المزيد لاحقا.","apiKeyRequired":"مفتاح واجهة برمجة التطبيقات (مطلوب)","customUrlOptional":"عنوان URL المخصص (اختياري)","testDesc":"دعونا نتحقق من أن اتصال المزود الخاص بك يعمل.","runTest":"قم بتشغيل اختبار الاتصال","testingConnection":"اختبار الاتصال...","connectionSuccessful":"تم الاتصال بنجاح! المزود الخاص بك جاهز.","noProviderFound":"لم يتم العثور على مزود. يمكنك إضافة واحدة من لوحة التحكم لاحقًا.","testFailed":"فشل الاختبار، ولكن يمكنك تكوين ذلك لاحقًا.","couldNotTest":"لا يمكن الاختبار الآن. يمكنك الاختبار من لوحة القيادة.","doneDesc":"أنت جاهز تمامًا! تم تكوين مثيل OmniRoute الخاص بك وأصبح جاهزًا لتوكيل طلبات الذكاء الاصطناعي.","yourEndpoint":"نقطة النهاية الخاصة بك:","continue":"متابعة","retry":"أعد المحاولة","failedSetPassword":"فشل في تعيين كلمة المرور. حاول ثانية.","failedAddProvider":"فشلت إضافة الموفر. حاول ثانية.","connectionError":"خطأ في الاتصال. يرجى المحاولة مرة أخرى.","provider":"مزود"},"providers":{"title":"مقدمي الخدمات","addProvider":"إضافة موفر","editProvider":"تحرير الموفر","deleteProvider":"حذف الموفر","noProviders":"لم يتم تكوين أي مقدمي خدمات","modelAvailability":"توفر النموذج","accounts":"الحسابات","newAccount":"حساب جديد","deleteConfirm":"هل أنت متأكد أنك تريد حذف هذا الموفر؟","testing":"اختبار...","testConnection":"اتصال الاختبار","testSuccess":"تم الاتصال بنجاح","testFailed":"فشل الاتصال","available":"متاح","cooldown":"فترة التهدئة","unavailable":"غير متاح","unknown":"غير معروف","oauthLabel":"OAuth","compatibleLabel":"متوافق","chat":"الدردشة","responses":"الردود","messages":"الرسائل","oauthProviders":"موفري OAuth","freeProviders":"مقدمي الخدمة المجانية","apiKeyProviders":"موفري مفاتيح API","compatibleProviders":"مقدمو خدمات API المتوافقون","testAll":"اختبار الكل","testAllOAuth":"اختبار كافة اتصالات OAuth","testAllFree":"اختبار كافة الاتصالات المجانية","testAllApiKey":"اختبار جميع اتصالات مفتاح API","testAllCompatible":"اختبار كافة الاتصالات المتوافقة","connected":"{count} متصل","errorCount":"{count} خطأ ({code})","errorCountNoCode":"{count} خطأ","noConnections":"لا اتصالات","disabled":"معطل","enableProvider":"تمكين المزود","disableProvider":"تعطيل المزود","testResults":"نتائج الاختبار","noCompatibleYet":"لم تتم إضافة أي مقدمي خدمات متوافقين حتى الآن","compatibleHint":"استخدم الأزرار أعلاه لإضافة نقاط نهاية متوافقة مع OpenAI أو Anthropic","addOpenAICompatible":"إضافة متوافق مع OpenAI","addAnthropicCompatible":"أضف متوافقًا مع الأنثروبولوجيا","addNewProvider":"إضافة مزود جديد","backToProviders":"العودة إلى مقدمي الخدمة","configureNewProvider":"قم بتكوين موفر AI جديد لاستخدامه مع تطبيقاتك.","providerLabel":"مزود","selectProvider":"حدد مزودًا","selectedProvider":"المزود المختار","authMethod":"طريقة المصادقة","apiKeyLabel":"مفتاح واجهة برمجة التطبيقات","apiKeyRequired":"مطلوب مفتاح API","selectProviderRequired":"الرجاء اختيار مزود","enterApiKey":"أدخل مفتاح API الخاص بك","apiKeySecure":"سيتم تشفير مفتاح API الخاص بك وتخزينه بشكل آمن.","oauth2Connect":"تواصل مع OAuth2","oauth2Label":"OAuth2","oauth2Desc":"قم بتوصيل حسابك باستخدام مصادقة OAuth2.","displayName":"اسم العرض","displayNamePlaceholder":"على سبيل المثال، واجهة برمجة تطبيقات الإنتاج، وبيئة التطوير","displayNameHint":"اختياري. اسم مألوف لتعريف هذا التكوين.","active":"نشط","activeDescription":"قم بتمكين هذا الموفر للاستخدام في تطبيقاتك","cancel":"إلغاء","createProvider":"إنشاء موفر","failedCreate":"فشل في إنشاء الموفر","errorOccurred":"حدث خطأ. يرجى المحاولة مرة أخرى.","modelStatus":"حالة النموذج","allModelsOperational":"جميع الموديلات شغالة","modelsWithIssues":"{count} الطراز (النماذج) الذي به مشكلات","allModelsNormal":"جميع النماذج تستجيب بشكل طبيعي.","cooldownCleared":"تم مسح فترة التهدئة لـ {model}","failedClearCooldown":"فشل في مسح فترة التهدئة","loadingAvailability":"جارٍ تحميل مدى توفر الطراز...","clearCooldown":"واضح","clearing":"المقاصة...","until":"حتى {time}","providerTestFailed":"فشل اختبار الموفر","modeTest":"{mode} اختبار","passedCount":"تم {count}","failedCount":"فشل {count}","testedCount":"تم اختبار {count}","millisecondsAbbr":"{value}ms","okShort":"حسنًا","errorShort":"خطأ","noActiveConnectionsInGroup":"لم يتم العثور على اتصالات نشطة لهذه المجموعة.","allTestsPassed":"تم اجتياز جميع اختبارات {total}","testSummary":"تم اجتياز {passed}/{total}، وفشل {failed}","nameLabel":"الاسم","prefixLabel":"بادئة","baseUrlLabel":"عنوان URL الأساسي","apiTypeLabel":"نوع واجهة برمجة التطبيقات","prefixHint":"مطلوب. بادئة فريدة لأسماء النماذج.","nameHint":"مطلوب. تسمية ودية لهذه العقدة.","baseUrlHint":"مطلوب.  عنوان URL الأساسي لواجهة برمجة تطبيقات الموفر.","anthropicPrefixPlaceholder":"ac-منتج","openaiPrefixPlaceholder":"oc-منتج","anthropicBaseUrlPlaceholder":"https://api.anthropic.com/v1","openaiBaseUrlPlaceholder":"https://api.openai.com/v1","validateConnection":"التحقق من صحة الاتصال","validating":"جارٍ التحقق...","connectionValid":"الاتصال صالح!","connectionFailed":"فشل الاتصال. تحقق من عنوان URL والمفتاح.","testKeyLabel":"اختبار مفتاح API","testKeyPlaceholder":"sk-... (للتحقق فقط)","providerNotFound":"لم يتم العثور على الموفر","deleteConnectionConfirm":"هل تريد حذف هذا الاتصال؟","failedSetAlias":"فشل في تعيين الاسم المستعار","failedSaveConnection":"فشل حفظ الاتصال","failedSaveConnectionRetry":"فشل حفظ الاتصال. يرجى المحاولة مرة أخرى.","failedRetestConnection":"فشل في إعادة اختبار الاتصال","deleteCompatibleNodeConfirm":"هل تريد حذف العقدة المتوافقة {type} هذه؟","anthropicCompatibleDetails":"تفاصيل متوافقة الأنثروبي","openaiCompatibleDetails":"تفاصيل متوافقة مع OpenAI","messagesApi":"واجهة برمجة تطبيقات الرسائل","responsesApi":"واجهة برمجة التطبيقات للردود","chatCompletions":"استكمالات الدردشة","importingModels":"جارٍ الاستيراد...","importFromModels":"الاستيراد من / النماذج","addConnectionToImport":"أضف اتصالاً لتمكين الاستيراد.","noModelsConfigured":"لم يتم تكوين أي نماذج","connectionCount":"{count} الاتصال (الاتصالات)","fetchingModels":"جارٍ جلب النماذج المتوفرة...","failedFetchModels":"فشل جلب النماذج","noModelsFound":"لم يتم العثور على نماذج","importFailed":"فشل الاستيراد","noNewModelsAdded":"لم تتم إضافة نماذج جديدة.","adding":"جارٍ الإضافة...","importingModelsTitle":"استيراد النماذج","copyModel":"نموذج النسخ","removeModel":"إزالة النموذج","rateLimitProtected":"محمي","rateLimitUnprotected":"غير محمية","enableRateLimitProtection":"انقر لتمكين حماية حدود المعدل","disableRateLimitProtection":"انقر لتعطيل حماية حد المعدل","productionKey":"مفتاح الإنتاج","enterNewApiKey":"أدخل مفتاح API الجديد","optional":"اختياري","anthropicCompatibleName":"متوافق مع الأنثروبولوجيا","openaiCompatibleName":"متوافق مع OpenAI","failedImportModels":"فشل استيراد النماذج","noModelsReturnedFromEndpoint":"لم يتم إرجاع أي نماذج من نقطة النهاية /models.","importingModelsProgress":"جارٍ استيراد {current} من طرازات {total}...","foundModelsStartingImport":"تم العثور على نماذج {count}. جارٍ بدء الاستيراد...","importingModelById":"جارٍ استيراد {modelId}...","importSuccessCount":"تم استيراد {count, plural, one {# model} other {# models}} بنجاح!","noNewModelsAddedExisting":"لم تتم إضافة أي نماذج جديدة (كلها موجودة بالفعل).","importDoneCount":"✓ تم! {count, plural, one {# model imported.} other {# models imported.}}","unexpectedErrorOccurred":"حدث خطأ غير متوقع","connectionCountLabel":"{count, plural, one {# connection} other {# connections}}","messagesPath":"الرسائل","responsesPath":"الردود","chatCompletionsPath":"الدردشة/الإكمال","add":"أضف","edit":"تحرير","delete":"حذف","anthropic":"أنثروبي","openai":"OpenAI","singleConnectionPerCompatible":"يُسمح باتصال واحد فقط لكل عقدة متوافقة. أضف عقدة أخرى إذا كنت بحاجة إلى المزيد من الاتصالات.","connections":"اتصالات","providerProxyTitleConfigured":"وكيل الموفر: {host}","configured":"تم تكوينه","providerProxyConfigureHint":"قم بتكوين الوكيل لجميع اتصالات هذا الموفر","providerProxy":"وكيل الموفر","noConnectionsYet":"لا توجد اتصالات حتى الآن","addFirstConnectionHint":"أضف اتصالك الأول للبدء","addConnection":"إضافة اتصال","availableModels":"النماذج المتاحة","pageAutoRefresh":"سيتم تحديث الصفحة تلقائيا...","statusDisabled":"معطل","statusConnected":"متصل","statusRuntimeIssue":"مشكلة وقت التشغيل","statusAuthFailed":"فشلت المصادقة","statusRateLimited":"معدل محدود","statusNetworkIssue":"مشكلة الشبكة","statusTestUnsupported":"اختبار غير معتمد","statusUnavailable":"غير متاح","statusFailed":"فشل","statusError":"خطأ","oauthAccount":"حساب أووث","errorTypeRuntime":"وقت التشغيل المحلي","errorTypeUpstreamAuth":"مصادقة المنبع","errorTypeMissingCredential":"بيانات الاعتماد مفقودة","errorTypeRefreshFailed":"فشل التحديث","errorTypeTokenExpired":"انتهت صلاحية الرمز المميز","errorTypeRateLimited":"معدل محدود","errorTypeUpstreamUnavailable":"المنبع غير متاح","errorTypeNetworkError":"خطأ في الشبكة","errorTypeTestUnsupported":"اختبار غير معتمد","errorTypeUpstreamError":"خطأ المنبع","proxySourceGlobal":"عالمي","proxySourceProvider":"مزود","proxySourceKey":"مفتاح","proxyConfiguredBySource":"الوكيل ({source}): {host}","autoPriority":"تلقائي: {priority}","proxy":"وكيل","retestAuthentication":"إعادة اختبار المصادقة","retest":"إعادة الاختبار","disableConnection":"تعطيل الاتصال","enableConnection":"تمكين الاتصال","reauthenticateConnection":"إعادة مصادقة هذا الاتصال","proxyConfig":"تكوين الوكيل","aliasExistsAlert":"الاسم المستعار \\"{alias}\\" موجود بالفعل. الرجاء استخدام نموذج مختلف أو تعديل الاسم المستعار الموجود.","openRouterAnyModelHint":"يدعم OpenRouter أي طراز. إضافة نماذج وإنشاء أسماء مستعارة للوصول السريع.","modelIdFromOpenRouter":"معرف النموذج (من OpenRouter)","openRouterModelPlaceholder":"أنثروبي/كلود-3-أوبوس","customModels":"نماذج مخصصة","customModelsHint":"قم بإضافة معرفات النماذج غير الموجودة في القائمة الافتراضية. ستكون هذه متاحة للتوجيه.","modelId":"معرف النموذج","customModelPlaceholder":"على سبيل المثال جي بي تي-4.5-توربو","loading":"جار التحميل...","removeCustomModel":"إزالة النموذج المخصص","noCustomModels":"لم تتم إضافة نماذج مخصصة بعد.","allSuggestedAliasesExist":"كافة الأسماء المستعارة المقترحة موجودة بالفعل. الرجاء اختيار نموذج مختلف أو إزالة الأسماء المستعارة المتضاربة.","failedSaveCustomModel":"فشل حفظ النموذج المخصص","modelAddedSuccess":"تمت إضافة النموذج {modelId} بنجاح","failedAddModelTryAgain":"فشلت إضافة النموذج. يرجى المحاولة مرة أخرى.","failedSaveImportedModel":"فشل حفظ النموذج المستورد في قاعدة البيانات المخصصة","failedImportModelsTryAgain":"فشل استيراد النماذج. يرجى المحاولة مرة أخرى.","failedRemoveModelFromDatabase":"فشل في إزالة النموذج من قاعدة البيانات","modelRemovedSuccess":"تمت إزالة النموذج بنجاح","failedDeleteModelTryAgain":"فشل في حذف النموذج. يرجى المحاولة مرة أخرى.","compatibleModelsDescription":"قم بإضافة نماذج متوافقة مع {type} يدويًا أو قم باستيرادها من نقطة النهاية /models.","anthropicCompatibleModelPlaceholder":"كلود-3-أوبوس-20240229","openaiCompatibleModelPlaceholder":"gpt-4o","apiKeyValidationFailed":"فشل التحقق من صحة مفتاح API. يرجى التحقق من المفتاح الخاص بك والمحاولة مرة أخرى.","addProviderApiKeyTitle":"أضف {provider} مفتاح واجهة برمجة التطبيقات","checking":"جارٍ التحقق...","check":"تحقق","valid":"صالح","invalid":"غير صالح","creating":"جارٍ الإنشاء...","validationChecksAnthropicCompatible":"يتحقق التحقق من الصحة {provider} من خلال التحقق من مفتاح API.","validationChecksOpenAiCompatible":"عمليات التحقق من الصحة {provider} عبر /models على عنوان URL الأساسي الخاص بك.","priorityLabel":"الأولوية","saving":"جارٍ الحفظ...","save":"حفظ","editConnection":"تحرير الاتصال","accountName":"اسم الحساب","email":"البريد الإلكتروني","healthCheckMinutes":"فحص الصحة (دقيقة)","healthCheckHint":"الفاصل الزمني لتحديث الرمز المميز. 0 = معطل.","failedTestConnection":"فشل في اختبار الاتصال","failed":"فشل","leaveBlankKeepCurrentApiKey":"اتركه فارغًا للاحتفاظ بمفتاح API الحالي.","editCompatibleTitle":"تحرير {type} متوافق","compatibleBaseUrlHint":"استخدم عنوان URL الأساسي (الذي ينتهي بـ /v1) لواجهة برمجة التطبيقات المتوافقة مع {type}.","apiKeyForCheck":"مفتاح API (للفحص)","compatibleProdPlaceholder":"{type} متوافق (المنتج)"},"settings":{"title":"الإعدادات","general":"عام","security":"الأمن","appearance":"المظهر","routing":"التوجيه","cache":"ذاكرة التخزين المؤقت","resilience":"المرونة","systemPrompt":"موجه النظام","thinkingBudget":"ميزانية التفكير","proxy":"وكيل","pricing":"التسعير","storage":"التخزين","policies":"السياسات","ipFilter":"مرشح IP","comboDefaults":"افتراضيات التحرير والسرد","fallbackChains":"سلاسل احتياطية","changePassword":"تغيير كلمة المرور","enablePassword":"تمكين كلمة المرور","darkMode":"الوضع المظلم","lightMode":"وضع الضوء","systemTheme":"موضوع النظام","enableCache":"تمكين ذاكرة التخزين المؤقت","cacheTTL":"ذاكرة التخزين المؤقت TTL","maxCacheSize":"الحد الأقصى لحجم ذاكرة التخزين المؤقت","clearCache":"مسح ذاكرة التخزين المؤقت","cacheHits":"زيارات ذاكرة التخزين المؤقت","cacheMisses":"يفتقد ذاكرة التخزين المؤقت","hitRate":"معدل الإصابة","cacheEntries":"إدخالات ذاكرة التخزين المؤقت","circuitBreaker":"قواطع دوائر","retryPolicy":"إعادة محاولة السياسة","maxRetries":"ماكس إعادة المحاولة","retryDelay":"إعادة المحاولة تأخير","timeoutMs":"المهلة (مللي ثانية)","enableSystemPrompt":"تمكين موجه النظام","systemPromptText":"نص موجه النظام","enableThinking":"تمكين التفكير","maxThinkingTokens":"رموز التفكير ماكس","enableProxy":"تمكين الوكيل","proxyUrl":"عنوان URL الوكيل","pricingRates":"تنسيق أسعار التسعير","currentPricing":"نظرة عامة على الأسعار الحالية","loadingPricing":"جارٍ تحميل بيانات الأسعار...","noPricing":"لا توجد بيانات التسعير المتاحة","input":"الإدخال","output":"الإخراج","cached":"مخبأة","reasoning":"المنطق","cacheCreation":"إنشاء ذاكرة التخزين المؤقت","customPricing":"التسعير المخصص","databaseSize":"حجم قاعدة البيانات","backupDb":"قاعدة بيانات النسخ الاحتياطي","restoreDb":"استعادة قاعدة البيانات","exportData":"تصدير البيانات","importData":"استيراد البيانات","clearData":"مسح كافة البيانات","clearDataConfirm":"سيؤدي هذا إلى حذف جميع البيانات بشكل دائم. هل أنت متأكد؟","enableRequestLogs":"تمكين سجلات الطلب","logRetention":"الاحتفاظ بالسجل","ipWhitelist":"القائمة البيضاء للملكية الفكرية","ipBlacklist":"القائمة السوداء للملكية الفكرية","addIP":"أضف IP","savedSuccessfully":"تم حفظ الإعدادات بنجاح","ai":"منظمة العفو الدولية","advanced":"متقدم","localMode":"الوضع المحلي — كافة البيانات المخزنة على جهازك","settingsSectionsAria":"أقسام الإعدادات","switchThemes":"التبديل بين السمات الفاتحة والداكنة","themeSelectionAria":"اختيار الموضوع","themeLight":"ضوء","themeDark":"الظلام","themeSystem":"النظام","hideHealthLogs":"إخفاء سجلات التحقق من الصحة","hideHealthLogsDesc":"عند التشغيل، قم بمنع رسائل [HealthCheck] في وحدة تحكم الخادم","promptCache":"ذاكرة التخزين المؤقت الفوري","flushCache":"مسح ذاكرة التخزين المؤقت","flushing":"فلاشينغ…","size":"الحجم","hits":"الزيارات","evictions":"عمليات الإخلاء","loadingCacheStats":"جارٍ تحميل إحصائيات ذاكرة التخزين المؤقت…","globalProxy":"الوكيل العالمي","globalProxyDesc":"قم بتكوين وكيل خارجي عالمي لجميع مكالمات API. يمكن للموفرين الفرديين والمجموعات والمفاتيح تجاوز هذا.","noGlobalProxy":"لم يتم تكوين وكيل عالمي","globalLabel":"عالمي","configure":"تكوين","globalSystemPrompt":"موجه النظام العالمي","systemPromptDesc":"تم إدراجه في جميع الطلبات على مستوى الوكيل","saved":"تم الحفظ","systemPromptPlaceholder":"أدخل موجه النظام لإدخاله في كافة الطلبات...","systemPromptHint":"يتم إضافة هذه المطالبة مسبقًا إلى رسالة النظام الخاصة بكل طلب. يُستخدم للحصول على الإرشادات العامة أو إرشادات السلامة أو قواعد تنسيق الاستجابة.","chars":"{count} حرف","thinkingBudgetTitle":"ميزانية التفكير","thinkingBudgetDesc":"التحكم في استخدام الرمز المميز لاستدلال الذكاء الاصطناعي عبر جميع الطلبات","passthrough":"العبور","passthroughDesc":"لا توجد تغييرات - يتحكم العميل في ميزانية التفكير","auto":"تلقائي","autoDesc":"قم بتجريد كل تكوينات التفكير - دع مقدم الخدمة يقرر","custom":"مخصص","customDesc":"قم بتعيين ميزانية رمزية ثابتة لجميع الطلبات","adaptive":"التكيف","adaptiveDesc":"مقياس الميزانية على أساس تعقيد الطلب","effortNone":"لا شيء (0 الرموز)","effortLow":"منخفض (1 ألف رمز)","effortMedium":"متوسط (10 آلاف رمز)","effortHigh":"عالية (128 ألف رمز)","tokenBudget":"ميزانية الرمز المميز","tokens":"الرموز","baseEffortLevel":"مستوى الجهد الأساسي","adaptiveHint":"يتغير الوضع التكيفي من هذا المستوى الأساسي استنادًا إلى عدد الرسائل واستخدام الأداة وطول المطالبة.","requireLogin":"تتطلب تسجيل الدخول","requireLoginDesc":"عند التشغيل، تتطلب لوحة القيادة كلمة المرور. عند إيقاف التشغيل، قم بالوصول دون تسجيل الدخول.","currentPassword":"كلمة المرور الحالية","enterCurrentPassword":"أدخل كلمة المرور الحالية","newPassword":"كلمة المرور الجديدة","enterNewPassword":"أدخل كلمة المرور الجديدة","confirmPassword":"تأكيد كلمة المرور الجديدة","confirmPasswordPlaceholder":"تأكيد كلمة المرور الجديدة","passwordsNoMatch":"كلمات المرور غير متطابقة","passwordUpdated":"تم تحديث كلمة المرور بنجاح","failedUpdatePassword":"فشل تحديث كلمة المرور","errorOccurred":"حدث خطأ","updatePassword":"تحديث كلمة المرور","setPassword":"تعيين كلمة المرور","apiEndpointProtection":"حماية نقطة النهاية لواجهة برمجة التطبيقات (API).","requireAuthModels":"يتطلب مفتاح API لـ /models","requireAuthModelsDesc":"عند التشغيل، تقوم نقطة النهاية /v1/models بإرجاع 404 للطلبات التي لم تتم مصادقتها. يمنع اكتشاف النموذج بواسطة مستخدمين غير مصرح لهم.","blockedProviders":"مقدمي الخدمات المحظورين","blockedProvidersDesc":"إخفاء موفري خدمات محددين من استجابة /v1/models. لن يظهر مقدمو الخدمات المحظورون في قوائم النماذج.","providersBlocked":"{count} تم حظر الموفر (المزودين) من /models","blockProviderTitle":"كتلة {provider}","unblockProviderTitle":"قم بإلغاء حظر {provider}","routingStrategy":"استراتيجية التوجيه","fillFirst":"املأ أولاً","fillFirstDesc":"استخدم الحسابات بترتيب الأولوية","roundRobin":"جولة روبن","roundRobinDesc":"التنقل بين جميع الحسابات","p2c":"P2C","p2cDesc":"اختر 2 عشوائيًا، واستخدم الأكثر صحة","random":"عشوائي","randomDesc":"حساب عشوائي لكل طلب","leastUsed":"الأقل استخدامًا","leastUsedDesc":"اختر الحساب الأقل استخدامًا مؤخرًا","costOpt":"خيار التكلفة","costOptDesc":"تفضل أرخص حساب متاح","stickyLimit":"الحد اللزج","stickyLimitDesc":"المكالمات لكل حساب قبل التبديل","modelAliases":"الأسماء المستعارة النموذجية","modelAliasesDesc":"أنماط أحرف البدل لإعادة تعيين أسماء النماذج • استخدم * و؟","aliasPatternPlaceholder":"كلود السوناتة-*","aliasTargetPlaceholder":"كلود السوناتة-4-20250514","pattern":"نمط","targetModel":"نموذج الهدف","add":"+ أضف","session":"جلسة","sessionDetailsAria":"تفاصيل الجلسة","status":"الحالة","authenticated":"مصادقة","guest":"ضيف","loginTime":"وقت تسجيل الدخول","sessionAge":"عمر الجلسة","browser":"المتصفح","clearLocalData":"مسح البيانات المحلية","logout":"تسجيل الخروج","clearLocalDataConfirm":"هل تريد مسح كافة البيانات المحلية؟ سيؤدي هذا إلى إعادة ضبط تفضيلاتك.","unknown":"غير معروف","systemActor":"نظام","ipAccessControl":"التحكم في الوصول إلى IP","ipAccessControlDesc":"حظر أو السماح بعناوين IP محددة","ipModeDisabled":"معطل","ipModeBlacklist":"القائمة السوداء","ipModeWhitelist":"القائمة البيضاء","ipModeWhitelistPriority":"أولوية WL","addIpAddress":"أضف عنوان IP","ipAddressPlaceholder":"192.168.1.0/24 أو 10.0.*.*","block":"+ بلوك","allow":"+ السماح","blocked":"محظور ({count})","allowed":"مسموح به ({count})","temporaryBans":"الحظر المؤقت ({count})","minLeft":"{min} دقيقة متبقية","auditLog":"سجل التدقيق","searchAuditLogs":"البحث في سجلات التدقيق...","failedLoadAuditLog":"فشل تحميل سجل التدقيق","noAuditEvents":"لم يتم العثور على أحداث التدقيق","action":"العمل","actor":"ممثل","details":"التفاصيل","time":"الوقت","fallbackChainsTitle":"سلاسل احتياطية","fallbackChainsDesc":"تحديد الترتيب الاحتياطي للموفر لكل نموذج","addChain":"+ إضافة سلسلة","modelName":"اسم النموذج","modelNamePlaceholder":"كلود السوناتة-4-20250514","providersCommaSeparated":"مقدمو الخدمة (مفصولون بفواصل، حسب ترتيب الأولوية)","providersCommaSeparatedPlaceholder":"أنثروبي، أوبيناي، الجوزاء","createChain":"إنشاء سلسلة","noFallbackChains":"لا سلاسل احتياطية","noFallbackChainsDesc":"قم بإنشاء سلسلة لتحديد الترتيب الاحتياطي للموفر للنموذج.","loadingFallbackChains":"جارٍ تحميل السلاسل الاحتياطية...","deleteChainConfirm":"هل تريد حذف السلسلة الاحتياطية لـ \\"{model}\\"؟","chainCreated":"تم إنشاء السلسلة لـ {model}","chainDeleted":"تم حذف السلسلة لـ {model}","failedCreateChain":"فشل في إنشاء السلسلة","failedDeleteChain":"فشل في حذف السلسلة","deleteChain":"حذف السلسلة","fillModelAndProviders":"يرجى ملء اسم النموذج ومقدمي الخدمات","addAtLeastOneProvider":"قم بإضافة مزود واحد على الأقل","comboDefaultsTitle":"افتراضيات التحرير والسرد","globalComboConfig":"تكوين التحرير والسرد العالمي","defaultStrategy":"الإستراتيجية الافتراضية","defaultStrategyDesc":"يتم تطبيقه على المجموعات الجديدة بدون استراتيجية واضحة","comboStrategyAria":"استراتيجية التحرير والسرد","priority":"الأولوية","weighted":"مرجح","maxRetriesLabel":"ماكس إعادة المحاولة","retryDelayLabel":"تأخير إعادة المحاولة (ملي ثانية)","timeoutLabel":"المهلة (مللي ثانية)","healthCheck":"فحص الصحة","healthCheckDesc":"التحقق المسبق من توفر الموفر","trackMetrics":"تتبع المقاييس","trackMetricsDesc":"تسجيل مقاييس الطلب لكل مجموعة","providerOverrides":"تجاوزات الموفر","providerOverridesDesc":"تجاوز المهلة وإعادة المحاولة لكل مزود. تتجاوز إعدادات الموفر الإعدادات الافتراضية العامة.","providerMaxRetriesAria":"{provider} الحد الأقصى لعدد مرات إعادة المحاولة","providerTimeoutAria":"{provider} المهلة مللي ثانية","removeProviderOverrideAria":"قم بإزالة تجاوز {provider}","newProviderNamePlaceholder":"على سبيل المثال جوجل، افتحي...","newProviderNameAria":"اسم المزود الجديد","retries":"إعادة المحاولة","ms":"مللي","saveComboDefaults":"حفظ إعدادات التحرير والسرد الافتراضية","maxNestingDepth":"أقصى عمق التعشيش","concurrencyPerModel":"التزامن/النموذج","queueTimeout":"مهلة قائمة الانتظار (مللي ثانية)","providerProfiles":"ملفات تعريف المزود","providerProfilesDesc":"إعدادات مرونة منفصلة لموفري OAuth (القائم على الجلسة) ومفتاح API (المقيّد). لدى موفري OAuth حدود أكثر صرامة بسبب انخفاض حدود الأسعار.","oauthProviders":"موفري OAuth","apiKeyProviders":"موفري مفاتيح API","transientCooldown":"فترة التهدئة العابرة","rateLimitCooldown":"حد معدل التهدئة","maxBackoffLevel":"الحد الأقصى لمستوى التراجع","cbThreshold":"عتبة CB","cbResetTime":"وقت إعادة ضبط CB","rateLimiting":"الحد من المعدل","rateLimitingDesc":"يتم تحديد معدل موفري API Key تلقائيًا باستخدام الإعدادات الافتراضية الآمنة. يتم تعلم الحدود من رؤوس الاستجابة وتكييفها بمرور الوقت.","defaultSafetyNet":"شبكة الأمان الافتراضية","rpm":"دورة في الدقيقة","minGap":"مين جاب","maxConcurrent":"ماكس المتزامنة","activeLimiters":"المحددات النشطة","noActiveLimiters":"لا توجد محددات معدل نشطة حتى الآن.","reservoir":"الخزان","running":"الجري","queued":"في قائمة الانتظار","circuitBreakers":"قواطع الدائرة","breakerStateClosed":"مغلق","breakerStateOpen":"مفتوح","breakerStateHalfOpen":"نصف مفتوح","tripped":"{count} تعثرت","healthy":"{count} صحي","resetAll":"إعادة ضبط الكل","noCircuitBreakers":"لا توجد قواطع دوائر نشطة حتى الآن. يتم إنشاؤها تلقائيًا عندما تتدفق الطلبات عبر مسار التحرير والسرد.","failures":"{count} الفشل (الإخفاقات)","policiesLocked":"السياسات والمعرفات المقفلة","allOperational":"جميع الأنظمة جاهزة للعمل - لا توجد عمليات إغلاق أو قواطع متعثرة","loadingPolicies":"جارٍ تحميل السياسات...","lockedIdentifiers":"معرفات مقفلة","unlockedIdentifier":"مفتوح: {identifier}","sinceDate":"منذ {date}","forceUnlock":"فتح القوة","unlocking":"جارٍ الفتح...","failedUnlock":"فشل في فتح القفل","failedLoadWithStatus":"فشل التحميل: {status}","failedLoadResilience":"فشل تحميل حالة المرونة","saveFailed":"فشل الحفظ","resetFailed":"فشلت إعادة التعيين","loadingResilience":"جارٍ تحميل حالة المرونة...","retry":"أعد المحاولة","systemStorage":"النظام والتخزين","allDataLocal":"جميع البيانات المخزنة محليا على جهازك","databasePath":"مسار قاعدة البيانات","exportDatabase":"تصدير قاعدة البيانات","exportAll":"تصدير الكل (.tar.gz)","importDatabase":"استيراد قاعدة البيانات","confirmDbImport":"تأكيد استيراد قاعدة البيانات","confirmDbImportDesc":"سيؤدي هذا إلى استبدال كافة البيانات الحالية بالمحتوى من {file}. سيتم إنشاء نسخة احتياطية تلقائيًا قبل الاستيراد.","yesImport":"نعم استيراد","lastBackup":"النسخ الاحتياطي الأخير","noBackupYet":"لا يوجد نسخة احتياطية حتى الآن","backupNow":"النسخ الاحتياطي الآن","backupRestore":"النسخ الاحتياطي والاستعادة","viewBackups":"عرض النسخ الاحتياطية","hide":"إخفاء","backupRetentionDesc":"يتم إنشاء لقطات قاعدة البيانات تلقائيًا قبل الاستعادة وكل 15 دقيقة عند تغيير البيانات. الاحتفاظ: 24 ساعة + 30 نسخة احتياطية يومية مع التدوير الذكي.","loadingBackups":"جارٍ تحميل النسخ الاحتياطية...","noBackupsYet":"لا توجد نسخ احتياطية متاحة حتى الآن. سيتم إنشاء النسخ الاحتياطية تلقائيًا عند تغيير البيانات.","backupsAvailable":"{count} النسخ الاحتياطية متاحة","refresh":"تحديث","confirm":"تأكيد؟","yes":"نعم","no":"لا","restore":"استعادة","invalidFileType":"نوع الملف غير صالح. يتم قبول ملفات .sqlite فقط.","exportFailed":"فشل التصدير","exportFailedWithError":"فشل التصدير: {error}","fullExportFailedWithError":"فشل التصدير الكامل: {error}","backupCreated":"تم إنشاء النسخة الاحتياطية: {file}","restoreSuccess":"المستعادة! {connections} اتصالات، {nodes} عقد، {combos} مجموعات، {apiKeys} مفاتيح API.","importSuccess":"تم استيراد قاعدة البيانات! {connections} اتصالات، {nodes} عقد، {combos} مجموعات، {apiKeys} مفاتيح API.","justNow":"الآن فقط","minutesAgo":"{count} منذ","hoursAgo":"{count}h منذ","daysAgo":"{count}d منذ","backupReasonManual":"دليل","backupReasonPreRestore":"استعادة مسبقة","connectionsCount":"{count, plural, one {# connection} other {# connections}}","noChangesSinceBackup":"لا توجد تغييرات منذ النسخ الاحتياطي الأخير","backupFailed":"فشل النسخ الاحتياطي","restoreFailed":"فشلت عملية الاستعادة","importFailed":"فشل الاستيراد","errorDuringRestore":"حدث خطأ أثناء الاستعادة","errorDuringImport":"حدث خطأ أثناء الاستيراد","modelPricing":"تسعير النموذج","modelPricingDesc":"تكوين معدلات التكلفة لكل نموذج • جميع الأسعار بالرموز المميزة $/1M","providers":"مقدمي الخدمات","registry":"التسجيل","priced":"مسعر","searchProvidersModels":"البحث عن موفري الخدمة أو النماذج...","showAll":"إظهار الكل","noProvidersMatch":"لا يوجد مقدمي خدمات مطابقين لبحثك.","howPricingWorks":"كيف يعمل التسعير","cacheWrite":"كتابة ذاكرة التخزين المؤقت","unsaved":"غير محفوظ","resetDefaults":"إعادة تعيين الإعدادات الافتراضية","saveProvider":"حفظ المزود","saving":"جارٍ الحفظ...","model":"نموذج","models":"نماذج","moreProviders":"{count} المزيد من مقدمي الخدمة","withPricing":"مع تكوين التسعير","policiesCircuitBreakers":"السياسات وقواطع الدائرة","activeIssuesDetected":"تم اكتشاف مشكلات نشطة","off":"إيقاف","resetPricingConfirm":"هل تريد إعادة تعيين جميع أسعار {provider} إلى الإعدادات الافتراضية؟","pricingDescInput":"الإدخال: الرموز المرسلة إلى النموذج","pricingDescOutput":"الإخراج: الرموز التي تم إنشاؤها","pricingDescCached":"ذاكرة التخزين المؤقت: الإدخال المعاد استخدامه (~50% من معدل الإدخال)","pricingDescReasoning":"المنطق: رموز التفكير (يعود إلى الإخراج)","pricingDescCacheWrite":"كتابة ذاكرة التخزين المؤقت: إنشاء إدخالات ذاكرة التخزين المؤقت (يعود إلى الإدخال)","pricingDescFormula":"التكلفة = (الإدخال \xd7 معدل الإدخال) + (الإخراج \xd7 معدل الإخراج) + (التخزين المؤقت \xd7 معدل_التخزين المؤقت) لكل مليون رمز مميز.","pricingSettingsTitle":"إعدادات التسعير","totalModels":"نماذج إجمالية","active":"نشط","costCalculation":"حساب التكلفة","costCalculationDesc":"يتم حساب التكاليف بناءً على استخدام الرمز المميز ومعدلات التسعير التي تم تكوينها لكل نموذج.","pricingFormat":"تنسيق التسعير","pricingFormatDesc":"جميع الأسعار برموز $/1M (دولار لكل مليون رمز).","tokenTypes":"أنواع الرموز","inputTokenDesc":"الرموز السريعة القياسية","outputTokenDesc":"رموز الإكمال/الاستجابة","cachedTokenDesc":"رموز الإدخال المخزنة مؤقتًا (عادةً 50% من معدل الإدخال)","reasoningTokenDesc":"رموز الاستدلال/التفكير الخاصة (الرجوع إلى معدل الإنتاج)","cacheCreationTokenDesc":"الرموز المميزة المستخدمة لإنشاء إدخالات ذاكرة التخزين المؤقت (الرجوع إلى معدل الإدخال)","customPricingNote":"يمكنك تجاوز التسعير الافتراضي لنماذج محددة. تحظى التجاوزات المخصصة بالأولوية على الأسعار التي يتم اكتشافها تلقائيًا.","editPricing":"تحرير التسعير","viewFullDetails":"عرض التفاصيل الكاملة","modelAliasesTitle":"أسماء بديلة للنماذج","addCustomAlias":"إضافة اسم بديل مخصص","deprecatedModelId":"معرف النموذج المهمل","newModelId":"معرف النموذج الجديد","customAliases":"أسماء بديلة مخصصة","builtInAliases":"أسماء بديلة مدمجة","backgroundDegradationTitle":"تقليل المهام في الخلفية","backgroundDegradationDesc":"اكتشاف المهام في الخلفية تلقائيًا (العناوين والملخصات) وتوجيهها إلى نماذج أرخص","enableDegradation":"تفعيل تقليل المهام في الخلفية","enableDegradationHint":"عند التفعيل، يتم توجيه المهام في الخلفية مثل توليد العناوين والملخصات تلقائيًا إلى نماذج أرخص","tasksDetected":"المهام المكتشفة","degradationMap":"خريطة تقليل النماذج","premiumModel":"نموذج متميز","cheapModel":"نموذج رخيص","detectionPatterns":"أنماط الكشف","newPattern":"مثال: \\"أنشئ عنوانًا\\""},"translator":{"title":"مترجم","metaTitle":"ملعب المترجم | OmniRoute","metaDescription":"تصحيح واختبار وتصور ترجمات تنسيق واجهة برمجة التطبيقات (API) بين مقدمي الخدمة","playgroundTitle":"ملعب المترجم","playground":"ملعب","realtime":"نشاط الترجمة في الوقت الحقيقي","chatTester":"اختبار الدردشة","testBench":"مقعد الاختبار","liveMonitor":"مراقب مباشر","modeDescriptionPlayground":"الصق أي نص طلب واجهة برمجة التطبيقات (API) وشاهد كيف يقوم OmniRoute بترجمته بين تنسيقات الموفر (OpenAI ↔ Claude ↔ Gemini ↔ Responses API)","modeDescriptionChatTester":"أرسل طلبات دردشة حقيقية من خلال OmniRoute وافحص الرحلة الكاملة ذهابًا وإيابًا: الإدخال، والطلب المترجم، واستجابة الموفر، والمخرجات المترجمة.","modeDescriptionTestBench":"قم بتشغيل السيناريوهات المحددة مسبقًا وقارن التوافق عبر الموفرين والنماذج.","modeDescriptionLiveMonitor":"شاهد أحداث الترجمة في الوقت الفعلي أثناء تدفق الطلبات عبر OmniRoute.","modeDescriptionFallback":"تصحيح الأخطاء واختبارها وتصور كيفية قيام OmniRoute بترجمة طلبات واجهة برمجة التطبيقات (API) بين مقدمي الخدمة.","recentTranslations":"الترجمات الأخيرة","noTranslations":"لا توجد ترجمات بعد","source":"المصدر","target":"الهدف","time":"الوقت","model":"نموذج","status":"الحالة","latency":"الكمون","totalTranslations":"إجمالي الترجمات","successful":"ناجح","errors":"أخطاء","avgLatency":"متوسط الكمون","millisecondsShort":"{value}ms","notAvailableSymbol":"—","liveAutoRefreshing":"مباشر - التحديث التلقائي","paused":"متوقف مؤقتًا","eventsAppearHint":"تظهر أحداث الترجمة هنا أثناء تدفق الطلبات عبر OmniRoute. استخدم أيًا من هذه الطرق لإنشاء الأحداث:","chatTesterTab":"علامة تبويب اختبار الدردشة","testBenchTab":"علامة التبويب اختبار البدلاء","externalApiCalls":"مكالمات API الخارجية","ideCliIntegrations":"تكاملات IDE/CLI","inMemoryNote":"ملاحظة: يتم تخزين الأحداث في الذاكرة وإعادة تعيينها عند إعادة تشغيل الخادم.","ok":"حسنًا","errorShort":"خطأ","formatConverter":"محول التنسيق","formatConverterDescription":"الصق أو اكتب نص طلب JSON. سيقوم المترجم بالكشف التلقائي عن التنسيق المصدر وتحويله إلى التنسيق الهدف. استخدم هذا لتصحيح كيفية ترجمة OmniRoute للطلبات بين التنسيقات (OpenAI ↔ Claude ↔ Gemini ↔ Responses API).","input":"الإدخال","output":"الإخراج","auto":"تلقائي","swapFormats":"تبادل الصيغ","translateAction":"ترجمة","clear":"واضح","inputPlaceholder":"الصق نص الطلب هنا أو حدد القالب أدناه...","exampleTemplates":"قوالب سبيل المثال","exampleTemplatesHint":"- انقر للتحميل","templateLoadHint":"يقوم القالب بتحميل الطلب بتنسيق {format}. قم بتغيير تنسيق المصدر للتحميل بتنسيق مختلف.","compatibilityTester":"اختبار التوافق","compatibilityReport":"تقرير التوافق","testBenchDescription":"قم بتشغيل سيناريوهات محددة مسبقًا (الدردشة البسيطة، واستدعاء الأدوات، وما إلى ذلك) للتحقق من توافق الترجمة وموفر الخدمة. حدد تنسيق المصدر والموفر المستهدف، ثم قم بإجراء جميع الاختبارات لمعرفة نسبة التوافق. استخدم هذا للعثور على الميزات التي تعمل عبر مقدمي الخدمة.","targetProvider":"مقدم الهدف","runAllTests":"تشغيل كافة الاختبارات","runTest":"تشغيل الاختبار","reRun":"إعادة تشغيل","running":"جارٍ...","passed":"مرت","failed":"فشل","passedIconLabel":"✅ نجح","chunks":"قطع","scenarioSimpleChat":"دردشة بسيطة","scenarioToolCalling":"استدعاء الأداة","scenarioMultiTurn":"متعدد المنعطفات","scenarioThinking":"التفكير","scenarioSystemPrompt":"موجه النظام","scenarioStreaming":"الجري","templateNames":{"simple-chat":"دردشة بسيطة","tool-calling":"استدعاء الأداة","multi-turn":"متعدد المنعطفات","thinking":"التفكير","system-prompt":"موجه النظام","streaming":"الجري"},"templateDescriptions":{"simple-chat":"رسالة نصية أساسية","tool-calling":"استدعاء الوظيفة/الأداة","multi-turn":"حوار مع التاريخ","thinking":"التفكير الموسع / الاستدلال","system-prompt":"تعليمات النظام المعقدة","streaming":"طلب تدفق SSE"},"templatePayloads":{"simpleChat":{"system":"أنت مساعد مفيد.","userGreeting":"مرحبا! كيف حالك اليوم؟"},"toolCalling":{"userWeather":"ما هو الطقس في ساو باولو ؟","toolDescription":"الحصول على الطقس الحالي لموقع ما","cityNameDescription":"اسم المدينة"},"multiTurn":{"system":"أنت مساعد الترميز.","userInitial":"اكتب دالة لفرز مصفوفة في بايثون.","assistantExample":"إليك وظيفة فرز بسيطة:\\n\\n```بيثون\\nتعريفsort_array(arr):\\n العودة مرتبة (arr)\\n```","userFollowUp":"الآن قم بفرزها بترتيب تنازلي."},"thinking":{"question":"ما هو مجموع أول 100 عدد أولي؟"},"systemPrompt":{"systemInstruction":"أنت مهندس برمجيات كبير متخصص في الأنظمة الموزعة. أجب عن الأسئلة بإيجاز باستخدام أفضل ممارسات الصناعة. قم دائمًا بتقديم أمثلة التعليمات البرمجية عندما يكون ذلك مناسبًا. قم بتنسيق ردودك باستخدام تخفيض السعر.","question":"كيف يمكنني تنفيذ نمط قاطع الدائرة؟"},"streaming":{"prompt":"أخبرني قصة قصيرة عن روبوت يتعلم الرسم."}},"openaiCompatibleLabel":"متوافق مع OpenAI","anthropicCompatibleLabel":"متوافق مع الأنثروبولوجيا","noTemplateForFormat":"لا يوجد قالب لهذا التنسيق","translationFailed":"فشلت الترجمة: {error}","pipelineDebugger":"مصحح أخطاء خطوط الأنابيب","translationPipeline":"خط أنابيب الترجمة","pipelineVisualization":"تصور خطوط الأنابيب","pipelineVisualizationHint":"أرسل رسالة لترى كيف يتدفق طلبك من خلال الكشف → الترجمة → الاتصال بالمزود.","chatTesterDescription":"أرسل الرسائل بتنسيق عميل محدد وافحص كل خطوة من خطوات الترجمة.","chatTesterFlow":"طلب العميل ← اكتشاف التنسيق ← OpenAI Intermediate ← تنسيق الموفر ← الاستجابة","clickStepToInspect":"انقر فوق أي خطوة لفحص البيانات في تلك المرحلة.","clientFormat":"تنسيق العميل","provider":"مزود","modelPlaceholder":"حدد أو اكتب اسم الطراز...","sendMessageToSeePipeline":"أرسل رسالة لرؤية مسار الترجمة","chatMessageHintPrefix":"سيتم تنسيق رسالتك كـ","chatMessageHintSuffix":"الطلب، وترجمته عبر المسار، وإرساله إلى الموفر المحدد.","youWithFormat":"أنت ({format})","assistant":"مساعد","typeMessage":"اكتب رسالة...","send":"أرسل","clientRequest":"طلب العميل","clientRequestDescription":"نص الطلب كما سيرسله عميلك","formatDetected":"تم الكشف عن التنسيق","formatDetectedDescription":"يقوم OmniRoute بالكشف التلقائي عن تنسيق واجهة برمجة التطبيقات (API) من بنية الطلب","openaiIntermediate":"OpenAI المتوسطة","openaiIntermediateDescription":"يتم أولاً تطبيع جميع التنسيقات إلى تنسيق OpenAI (الجسر العالمي)","providerFormat":"تنسيق الموفر","providerFormatDescription":"تتم ترجمة تنسيق OpenAI إلى التنسيق الأصلي للموفر","providerResponse":"استجابة المزود","providerResponseRawDescription":"الاستجابة الأولية من واجهة برمجة تطبيقات الموفر","providerResponseSseDescription":"دفق SSE الخام من واجهة برمجة تطبيقات الموفر","unexpectedError":"حدث خطأ غير متوقع","error":"خطأ","errorMessage":"خطأ: {message}","requestFailed":"فشل الطلب","noTextExtracted":"(لم يتم استخراج النص)","liveMonitorDescriptionPrefix":"يعرض أحداث الترجمة أثناء تدفق مكالمات API عبر OmniRoute. تأتي الأحداث من المخزن المؤقت في الذاكرة (يتم إعادة التعيين عند إعادة التشغيل). استخدم","liveMonitorDescriptionSuffix":"أو مكالمات API الخارجية لإنشاء الأحداث."},"usage":{"title":"الاستخدام","loggerTab":"المسجل","proxyTab":"وكيل","budgetManagement":"إدارة الميزانية","budgetSaved":"تم حفظ حدود الميزانية","budgetSaveFailed":"فشل في حفظ الميزانية","loadingBudgetData":"جارٍ تحميل بيانات الميزانية...","noApiKeysTitle":"لا توجد مفاتيح API","noApiKeysDescription":"أضف مفاتيح واجهة برمجة التطبيقات (API) أولاً لإعداد حدود الميزانية.","apiKey":"مفتاح واجهة برمجة التطبيقات","todaysSpend":"إنفاق اليوم","thisMonth":"هذا الشهر","setLimits":"تعيين الحدود","dailyLimitUsd":"الحد اليومي (دولار أمريكي)","monthlyLimitUsd":"الحد الشهري (دولار أمريكي)","warningThresholdPercent":"عتبة التحذير (%)","dailyLimitPlaceholder":"على سبيل المثال 5.00","monthlyLimitPlaceholder":"على سبيل المثال 50.00","warningThresholdPlaceholder":"80","saveLimits":"حفظ الحدود","budgetOk":"الميزانية جيدة — {remaining} متبقية","budgetExceeded":"تم تجاوز الميزانية — قد يتم حظر الطلبات","totalRequests":"إجمالي الطلبات","noDataYet":"لا توجد بيانات حتى الآن","latency":"الكمون","latencyP50":"ص50","latencyP95":"ص95","latencyP99":"ص99","promptCache":"ذاكرة التخزين المؤقت الفوري","systemHealth":"صحة النظام","entries":"إدخالات","activeCount":"{count} نشط","openCircuitBreakersDetected":"تم اكتشاف قواطع الدائرة المفتوحة","hitRate":"معدل الإصابة","hitsMisses":"الزيارات / الأخطاء","circuitBreakers":"قواطع الدائرة","lockedIPs":"عناوين IP المقفلة","lockoutsAutoRefreshHint":"أقفال حد المعدل لكل طراز • التحديث التلقائي لمدة 10 ثوانٍ","lockedCount":"{count, plural, one {# locked} other {# locked}}","timeLeft":"{time} اليسار","howItWorks":"كيف يعمل","howItWorksSubtitle":"تعرف على كيفية التحقق من صحة التقييمات من استجابات LLM الخاصة بك","define":"تحديد","defineStepDescription":"أنشئ حالات اختبار باستخدام مطالبات الإدخال ومعايير الإخراج المتوقعة باستخدام إستراتيجيات مثل الاحتواء أو التعبير العادي أو المطابقة التامة.","run":"تشغيل","runStepDescription":"قم بتنفيذ حالات الاختبار على نقاط نهاية LLM الخاصة بك من خلال OmniRoute. يتم إرسال كل حالة كطلب API حقيقي.","evaluate":"تقييم","evaluateStepDescription":"تتم مقارنة الاستجابات بالمعايير المتوقعة. راجع النجاح/الفشل لكل حالة باستخدام مقاييس زمن الاستجابة والتعليقات التفصيلية.","evalSuites":"أجنحة التقييم","evalSuitesHint":"انقر فوق مجموعة لعرض حالات الاختبار، ثم قم بالتشغيل لتقييم نقاط نهاية LLM الخاصة بك","evalsLoading":"جارٍ تحميل مجموعات التقييم...","noEvalSuitesFound":"لم يتم العثور على أجنحة Eval","noEvalSuitesDescription":"يمكن تعريف مجموعات Eval عبر واجهة برمجة التطبيقات (API) أو في التعليمات البرمجية. يقومون باختبار مخرجات النموذج مقابل النتائج المتوقعة باستخدام إستراتيجيات مثل الاحتواء والتعبير العادي والمطابقة التامة والوظائف المخصصة.","columnCase":"القضية","columnStatus":"الحالة","columnLatency":"الكمون","columnDetails":"التفاصيل","columnModel":"نموذج","columnStrategy":"استراتيجية","columnExpected":"متوقع","statsSuites":"أجنحة","statsTestCases":"حالات الاختبار","statsModels":"نماذج","statsCoverage":"التغطية","statsStrategiesCount":"إستراتيجيات {count}","evaluationStrategies":"استراتيجيات التقييم","modelsUnderTest":"نماذج تحت الاختبار","searchSuitesPlaceholder":"أجنحة البحث...","passSuffix":"تمرير","casesCount":"{count, plural, one {# case} other {# cases}}","runEval":"تشغيل التقييم","runningProgress":"جارٍ تشغيل {current}/{total}...","passRate":"معدل النجاح","summaryBreakdown":"تم اجتياز {passed} \xb7 فشل {failed} \xb7 {total} الإجمالي","passedIconLabel":"✅ نجح","failedIconLabel":"❌فشل","detailsContains":"يحتوي على: \\"{term}\\"","detailsRegex":"التعبير العادي: {pattern}","detailsExpected":"المتوقع: \\"{expected}\\"","noResultsYet":"لا توجد نتائج حتى الآن","testCasesCount":"حالات الاختبار ({count})","noTestCasesDefined":"لم يتم تحديد حالات الاختبار","runEvalHint":"انقر فوق \\"Run Eval\\" لتنفيذ جميع الحالات ضد نقطة نهاية LLM الخاصة بك. يرسل كل اختبار طلبًا حقيقيًا عبر OmniRoute.","notifyNoTestCases":"لم يتم تحديد حالات اختبار لهذه المجموعة","notifyAllCasesPassed":"تم اجتياز جميع حالات {total} ✅","notifySomeCasesFailed":"تم اجتياز {passed}/{total}، وفشل {failed}","notifyEvalRunFailed":"فشل تشغيل التقييم","notifyEvalTitle":"التقييم: {name}","modelEvals":"التقييمات النموذجية","evalsHeroDescription":"قم باختبار نقاط نهاية LLM الخاصة بك والتحقق من صحتها عن طريق تشغيل مجموعات التقييم المحددة مسبقًا. تحتوي كل مجموعة على حالات اختبار ترسل مطالبات حقيقية من خلال OmniRoute وتقارن الاستجابات بالمعايير المتوقعة - مما يساعدك على اكتشاف التراجعات ومقارنة النماذج وضمان جودة الاستجابة عبر مقدمي الخدمة.","qualityValidation":"التحقق من الجودة","modelComparison":"مقارنة النماذج","regressionDetection":"كشف الانحدار","latencyBenchmarks":"مقاييس الكمون","modelLockouts":"عمليات الإغلاق النموذجية","noLockouts":"لا توجد نماذج مقفلة حاليا","activeSessions":"الجلسات النشطة","noSessions":"لا توجد جلسات نشطة","sessionsHint":"تظهر الجلسات أثناء تدفق الطلبات عبر الوكيل","sessionsTrackedHint":"تتبع عن طريق طلب البصمات • التحديث التلقائي 5S","session":"جلسة","age":"العمر","requests":"الطلبات","connection":"اتصال","durationMillisecondsShort":"{value}ms","durationSecondsShort":"{value}s","durationMinutesShort":"{value}م","durationHoursShort":"{value}h","reasonSeparator":" - ","notAvailableSymbol":"-","providerLimits":"حدود المزود","noProviders":"لا يوجد مقدمي خدمات متصلين","connectProvidersForQuota":"اتصل بموفري خدمة OAuth لتتبع حدود حصص واجهة برمجة التطبيقات (API) واستخدامها.","accountsCount":"{count, plural, one {# account} other {# accounts}}","filteredFromCount":"(تمت التصفية من {count})","autoRefresh":"التحديث التلقائي","refreshAll":"تحديث الكل","loadingQuotas":"جار التحميل...","account":"الحساب","modelQuotas":"الحصص النموذجية","lastUsed":"آخر استخدام","actions":"الإجراءات","refreshQuota":"تحديث الحصة","today":"اليوم","tomorrow":"غدا","dayTimeFormat":"{day}، {time}","inDuration":"في {duration}","notApplicable":"لا يوجد","rawPlanWithValue":"الخطة الأولية: {plan}","noPlanFromProvider":"لا توجد خطة من المزود","noQuotaData":"لا توجد بيانات الحصص","noQuotaDataAvailable":"لا توجد بيانات الحصص المتاحة","noAccountsForTierFilter":"لم يتم العثور على حسابات لمرشح الطبقة","tierAll":"الكل","tierEnterprise":"المؤسسة","tierTeam":"فريق","tierBusiness":"الأعمال","tierUltra":"الترا","tierPro":"برو","tierPlus":"زائد","tierFree":"مجاني","tierUnknown":"غير معروف"},"modals":{"waitingAuth":"في انتظار التصريح","verificationUrl":"عنوان URL للتحقق","yourCode":"الرمز الخاص بك","remoteAccess":"الوصول عن بعد:","connectedSuccess":"تم الاتصال بنجاح!","connectionFailed":"فشل الاتصال","chooseAuthMethod":"اختر طريقة المصادقة الخاصة بك:","awsBuilderId":"معرف منشئ AWS","awsIamIdentity":"مركز هوية AWS IAM","googleAccount":"حساب جوجل","githubAccount":"حساب جيثب","importToken":"رمز الاستيراد","pasteToken":"قم بلصق رمز التحديث من Kiro IDE.","awsRegion":"منطقة أوس","autoDetecting":"الكشف التلقائي عن الرموز...","readingFromCache":"القراءة من ذاكرة التخزين المؤقت لـ AWS SSO","readingFromCursor":"القراءة من قاعدة بيانات المؤشر IDE","initializing":"جارٍ التهيئة...","pricingConfig":"تكوين التسعير","loadingPricing":"جارٍ تحميل بيانات الأسعار...","pricingRatesFormat":"تنسيق أسعار التسعير","noPricingData":"لا توجد بيانات التسعير المتاحة","noModelsFound":"لم يتم العثور على نماذج"},"loggers":{"allProviders":"جميع مقدمي الخدمات","allModels":"جميع الموديلات","allAccounts":"جميع الحسابات","allApiKeys":"جميع مفاتيح API","allTypes":"جميع الأنواع","allLevels":"جميع المستويات","modelAZ":"الموديل أ-ي","modelZA":"الموديل Z-A","loadingLogs":"جارٍ تحميل السجلات...","loadingProxyLogs":"جارٍ تحميل سجلات الوكيل...","noLogEntries":"لم يتم العثور على إدخالات السجل","noPayloadData":"لا توجد بيانات حمولة متاحة لإدخال السجل هذا.","proxyEvent":"حدث الوكيل","proxy":"وكيل","level":"المستوى","directNative":"مباشر (وطني)","combo":"كومبو","inputTokens":"أنا:","outputTokens":"يا:"},"stats":{"usageOverview":"نظرة عامة على الاستخدام","outputTokens":"رموز الإخراج","totalCost":"التكلفة الإجمالية","usageByModel":"الاستخدام حسب الموديل","usageByAccount":"الاستخدام عن طريق الحساب","failedToLoad":"فشل تحميل إحصائيات الاستخدام.","tokenHealth":"صحة الرمز","totalOAuth":"إجمالي OAuth","healthy":"صحي","warning":"تحذير","errored":"خطأ","lastCheck":"الاختيار الأخير","noData":"لا توجد بيانات","share":"شارك","unableToLoad":"غير قادر على تحميل مقاييس النظام","product":"المنتج","resources":"الموارد","company":"الشركة"},"auth":{"welcome":"مرحبًا","signIn":"تسجيل الدخول","enterPassword":"أدخل كلمة المرور الخاصة بك للمتابعة","password":"كلمة المرور","unifiedProxy":"وكيل API موحّد للذكاء الاصطناعي","unifiedAiApiProxy":"وكيل API موحّد للذكاء الاصطناعي","unifiedAiApiProxyDesc":"توجيه الطلبات إلى موفري الذكاء الاصطناعي المتعددين من خلال نقطة نهاية واحدة. موازنة التحميل وتجاوز الفشل وتتبع الاستخدام المدمج.","passwordNotEnabled":"لم يتم تمكين الحماية بكلمة المرور","loading":"جار التحميل...","invalidPassword":"كلمة المرور غير صالحة","errorOccurredRetry":"حدث خطأ. يرجى المحاولة مرة أخرى.","configureInstance":"دعنا نقوم بتكوين مثيل OmniRoute الخاص بك","runOnboardingWizard":"قم بتشغيل معالج الإعداد لإعداد كلمة المرور الخاصة بك وتوصيل أول مزود للذكاء الاصطناعي.","startOnboarding":"ابدأ الإعداد","secureYourInstance":"تأمين المثيل الخاص بك","setPasswordDescription":"قم بتعيين كلمة مرور لحماية لوحة المعلومات الخاصة بك وتأمين نقاط نهاية API الخاصة بك من الوصول غير المصرح به.","configurePassword":"تكوين كلمة المرور","continue":"متابعة","windowWillClose":"ستغلق هذه النافذة تلقائيا...","closeTabNow":"يمكنك إغلاق علامة التبويب هذه الآن.","copyUrlManual":"انسخ عنوان URL من شريط العنوان والصقه داخل التطبيق.","accessDeniedDescription":"ليس لديك إذن للوصول إلى هذا المورد. تحقق من مفتاح API الخاص بك أو اتصل بالمسؤول.","goToDashboard":"انتقل إلى لوحة المعلومات","featureMultiProviderTitle":"متعدد الموفر","featureMultiProviderDesc":"OpenAI، وAnthropic، وGoogle، والمزيد","featureLoadBalancingTitle":"موازنة التحميل","featureLoadBalancingDesc":"توزيع الطلبات بذكاء","featureUsageTrackingTitle":"تتبع الاستخدام","featureUsageTrackingDesc":"مراقبة التكاليف والرموز","resetPassword":"إعادة تعيين كلمة المرور","resetDescription":"اختر طريقة لاستعادة الوصول إلى لوحة المعلومات الخاصة بك","stopServer":"أوقف خادم OmniRoute","processing":"جارٍ المعالجة...","pleaseWait":"يرجى الانتظار حتى نكمل التفويض.","authSuccess":"تم التفويض بنجاح!","copyUrl":"انسخ عنوان URL هذا","accessDenied":"تم رفض الوصول","methodCliTitle":"الطريقة الأولى: إعادة تعيين CLI","methodCliDescription":"قم بتشغيل الأمر التالي على الخادم الذي يعمل عليه OmniRoute:","methodCliHint":"سيطالبك هذا بتعيين كلمة مرور جديدة. يجب إيقاف الخادم أولاً.","methodManualTitle":"الطريقة الثانية: إعادة الضبط اليدوي","methodManualDescription":"احذف كلمة المرور من قاعدة البيانات وقم بتعيين كلمة مرور جديدة عند بدء التشغيل:","setPasswordInYour":"عيّن كلمة مرور جديدة في ملف","fileLabelSuffix":"ملف:","newPasswordPlaceholder":"كلمة_مرور_جديدة","deleteSettingsFile":"حذف","orRemovePasswordHashField":"أو قم بإزالة حقل كلمة المرور","restartServerWithNewPassword":"أعد تشغيل الخادم وسيتم استخدام كلمة المرور الجديدة","backToLogin":"العودة إلى تسجيل الدخول","forgotPassword":"هل نسيت كلمة المرور؟"},"landing":{"brandName":"OmniRoute","navigateHome":"انتقل إلى المنزل","toggleMenu":"تبديل القائمة","featuresLink":"الميزات","docsLink":"المستندات","github":"جيثب","versionLive":"الإصدار 1.0 أصبح الآن مباشرًا","oneEndpoint":"نقطة نهاية واحدة ل","allProviders":"جميع مقدمي الذكاء الاصطناعي","heroDescription":"وكيل نقطة النهاية AI مع لوحة تحكم الويب - منفذ JavaScript لـ CLIProxyAPI. يعمل بسلاسة مع Claude Code وOpenAI Codex وCline وRooCode وأدوات CLI الأخرى.","getStarted":"ابدأ","viewOnGithub":"عرض على جيثب","powerfulFeatures":"ميزات قوية","featuresSubtitle":"كل ما تحتاجه لإدارة البنية الأساسية للذكاء الاصطناعي لديك في مكان واحد، مصمم خصيصًا للتوسع.","featureUnifiedEndpointTitle":"نقطة النهاية الموحدة","featureUnifiedEndpointDesc":"الوصول إلى جميع مقدمي الخدمة عبر عنوان URL قياسي واحد لواجهة برمجة التطبيقات (API).","featureEasySetupTitle":"إعداد سهل","featureEasySetupDesc":"ابدأ العمل في دقائق معدودة باستخدام أمر npx.","featureModelFallbackTitle":"نموذج احتياطي","featureModelFallbackDesc":"تبديل مقدمي الخدمة تلقائيًا في حالة الفشل أو زمن الوصول العالي.","featureUsageTrackingTitle":"تتبع الاستخدام","featureUsageTrackingDesc":"تحليلات مفصلة ومراقبة التكاليف عبر جميع النماذج.","featureOAuthApiKeysTitle":"مفاتيح OAuth وAPI","featureOAuthApiKeysDesc":"إدارة بيانات الاعتماد بشكل آمن في قبو واحد.","featureCloudSyncTitle":"مزامنة السحابة","featureCloudSyncDesc":"مزامنة التكوينات الخاصة بك عبر الأجهزة على الفور.","featureCliSupportTitle":"دعم سطر الأوامر","featureCliSupportDesc":"يعمل مع Claude Code وCodex وCline وCursor والمزيد.","featureDashboardTitle":"لوحة القيادة","featureDashboardDesc":"لوحة تحكم مرئية لتحليل حركة المرور في الوقت الحقيقي.","howItWorks":"كيف يعمل OmniRoute","howItWorksDescription":"تتدفق البيانات بسلاسة من تطبيقك عبر طبقة التوجيه الذكية الخاصة بنا إلى أفضل مزود لهذه المهمة.","howItWorksStep1Title":"1. واجهة سطر الأوامر (CLI) ومجموعات SDK","howItWorksStep1Description":"تبدأ طلباتك من أدواتك المفضلة أو SDK الموحد الخاص بنا. فقط قم بتغيير عنوان URL الأساسي.","howItWorksStep2Title":"2. مركز OmniRoute","howItWorksStep2Description":"يقوم محركنا بتحليل الموجه، والتحقق من صحة مقدم الخدمة، والمسارات للحصول على أقل زمن وصول أو تكلفة.","howItWorksStep3Title":"3. مقدمو الذكاء الاصطناعي","howItWorksStep3Description":"يتم تنفيذ الطلب بواسطة OpenAI أو Anthropic أو Gemini أو غيرهم على الفور.","getStartedIn30Seconds":"ابدأ في 30 ثانية","getStartedDescription":"قم بتثبيت OmniRoute، وقم بتكوين موفري الخدمة عبر لوحة تحكم الويب، وابدأ في توجيه طلبات الذكاء الاصطناعي.","installOmniRoute":"قم بتثبيت OmniRoute","installStepDescription":"قم بتشغيل الأمر npx لبدء الخادم على الفور","openDashboard":"افتح لوحة المعلومات","openDashboardStepDescription":"تكوين مقدمي الخدمات ومفاتيح API عبر واجهة الويب","routeRequests":"طلبات الطريق","routeRequestsStepDescription":"قم بتوجيه أدوات CLI الخاصة بك إلى {endpoint}","terminal":"محطة","copy":"نسخ","copied":"✓ منقول","startingOmniRoute":"بدء تشغيل OmniRoute...","serverRunningOnLabel":"الخادم قيد التشغيل","dashboardLabel":"لوحة القيادة","readyToRoute":"جاهز للتوجيه! ✓","configureProvidersNote":"\uD83D\uDCDD تكوين مقدمي الخدمات في لوحة القيادة أو استخدام متغيرات البيئة","dataLocation":"موقع البيانات:","dataLocationMacLinux":" ماك/لينكس:","dataLocationWindows":" ويندوز:","product":"المنتج","dashboardLink":"لوحة القيادة","changelog":"سجل التغيير","resources":"الموارد","documentation":"التوثيق","npm":"الآلية الوقائية الوطنية","legal":"قانوني","mitLicense":"رخصة معهد ماساتشوستس للتكنولوجيا","footerTagline":"نقطة النهاية الموحدة لتوليد الذكاء الاصطناعي. يمكنك الاتصال بموفري خدمات الذكاء الاصطناعي وتوجيههم وإدارتهم بسهولة.","copyright":"\xa9 {year} أومنيروتي. جميع الحقوق محفوظة.","flowToolClaudeCode":"كلود كود","flowToolOpenAICodex":"مخطوطة OpenAI","flowToolCline":"كلاين","flowToolCursor":"المؤشر","flowProviderOpenAI":"OpenAI","flowProviderAnthropic":"أنثروبي","flowProviderGemini":"الجوزاء","flowProviderGithubCopilot":"جيثب مساعد الطيار","interactiveDiagram":"رسم تخطيطي تفاعلي مرئي على سطح المكتب","ctaTitle":"هل أنت مستعد لتبسيط البنية الأساسية للذكاء الاصطناعي لديك؟","ctaDescription":"انضم إلى المطورين الذين يقومون بتبسيط عمليات تكامل الذكاء الاصطناعي الخاصة بهم مع OmniRoute. مفتوح المصدر ومجاني للبدء.","startFree":"ابدأ مجانًا","readDocumentation":"قراءة الوثائق"},"docs":{"title":"التوثيق","quickStart":"بداية سريعة","features":"الميزات","supportedProviders":"مقدمي الخدمات المدعومة","supportedProvidersToc":"مقدمي الخدمات","commonUseCases":"حالات الاستخدام الشائعة","clientCompatibility":"توافق العميل","apiReference":"مرجع واجهة برمجة التطبيقات","method":"الطريقة","path":"المسار","notes":"ملاحظات","modelPrefixes":"البادئات النموذجية","prefix":"بادئة","troubleshooting":"استكشاف الأخطاء وإصلاحها","supportsChat":"يدعم كلاً من نقاط نهاية الدردشة والردود.","oauthAutoRefresh":"اتصال OAuth مع التحديث التلقائي للرمز المميز.","fullStreaming":"دعم البث الكامل لجميع الموديلات.","docsLabel":"المستندات","docsHeroDescription":"بوابة الذكاء الاصطناعي لبرامج LLM متعددة الموفرين. نقطة نهاية واحدة لـ OpenAI وAnthropic وGemini وGitHub Copilot وClaude Code وCursor وأكثر من 20 مزودًا آخر.","openDashboard":"افتح لوحة المعلومات","endpointPage":"صفحة نقطة النهاية","github":"جيثب","reportIssue":"تقرير المشكلة","onThisPage":"في هذه الصفحة","documentationVersion":"التوثيق - v{version}","quickStartStep1Title":"1. التثبيت والتشغيل","quickStartStep1Prefix":"تشغيل","quickStartStep1Middle":"أو استنساخ من GitHub وتشغيله","quickStartStep2Title":"2. إنشاء مفتاح API","quickStartStep2Text":"انتقل إلى نقطة النهاية -> المفاتيح المسجلة. إنشاء مفتاح واحد لكل بيئة.","quickStartStep3Title":"3. ربط مقدمي الخدمات","quickStartStep3Text":"أضف حسابات الموفر عبر تسجيل الدخول إلى OAuth، أو مفتاح API، أو الاتصال التلقائي للطبقة المجانية.","quickStartStep4Title":"4. قم بتعيين عنوان URL لقاعدة العميل","quickStartStep4Prefix":"قم بتوجيه عميل IDE أو API الخاص بك إلى","quickStartStep4Suffix":"استخدم بادئة الموفر، على سبيل المثال","featureRoutingTitle":"التوجيه متعدد الموفرين","featureRoutingText":"توجيه الطلبات إلى أكثر من 30 من موفري خدمات الذكاء الاصطناعي من خلال نقطة نهاية واحدة متوافقة مع OpenAI. يدعم واجهات برمجة التطبيقات للدردشة والاستجابات والصوت والصورة.","featureCombosTitle":"المجموعات والموازنة","featureCombosText":"أنشئ مجموعات نماذج باستخدام سلاسل احتياطية واستراتيجيات موازنة: دورة روبن، والأولوية، والعشوائية، والأقل استخدامًا، والمُحسَّنة من حيث التكلفة.","featureUsageTitle":"تتبع الاستخدام والتكلفة","featureUsageText":"عد الرموز المميزة في الوقت الفعلي، وحساب التكلفة لكل مزود/نموذج، وتوزيع تفصيلي للاستخدام حسب مفتاح واجهة برمجة التطبيقات والحساب.","featureAnalyticsTitle":"لوحة تحكم التحليلات","featureAnalyticsText":"التحليلات المرئية مع الرسوم البيانية للطلبات والرموز المميزة والأخطاء ووقت الاستجابة والتكاليف وشعبية النموذج بمرور الوقت.","featureHealthTitle":"مراقبة الصحة","featureHealthText":"فحوصات صحية حية، وحالة المزود، وحالات قاطع الدائرة، والكشف التلقائي عن حد المعدل مع التراجع الأسي.","featureCliTitle":"أدوات سطر الأوامر","featureCliText":"إدارة تكوينات IDE، وتصدير/استيراد النسخ الاحتياطية، واكتشاف ملفات تعريف المخطوطة، وتكوين الإعدادات من لوحة المعلومات.","featureSecurityTitle":"الأمن والسياسات","featureSecurityText":"مصادقة مفتاح واجهة برمجة التطبيقات (API)، وتصفية IP، وحارس الحقن الفوري، وسياسات المجال، وإدارة الجلسة، وتسجيل التدقيق.","featureCloudSyncTitle":"مزامنة السحابة","featureCloudSyncText":"قم بمزامنة التكوين الخاص بك مع Cloudflare Workers للوصول عن بعد باستخدام بيانات الاعتماد المشفرة وتجاوز الفشل التلقائي.","providersAcrossConnectionTypes":"موفرو {count} عبر ثلاثة أنواع من الاتصال.","manageProviders":"إدارة مقدمي الخدمة","providersCount":"{count} مقدمو الخدمة","providerTypeFree":"الطبقة الحرة","providerTypeOAuth":"OAuth","providerTypeApiKey":"مفتاح واجهة برمجة التطبيقات","useCaseSingleEndpointTitle":"نقطة نهاية واحدة للعديد من مقدمي الخدمة","useCaseSingleEndpointText":"قم بتوجيه العملاء إلى عنوان URL أساسي واحد وتوجيههم حسب بادئة النموذج (على سبيل المثال: gh/، cc/، kr/، openai/).","useCaseFallbackTitle":"الاحتياطي وتبديل النموذج مع المجموعات","useCaseFallbackText":"قم بإنشاء نماذج مجمعة في Dashboard وحافظ على استقرار تكوين العميل أثناء تدوير مقدمي الخدمة داخليًا.","useCaseUsageVisibilityTitle":"الاستخدام والتكلفة ورؤية التصحيح","useCaseUsageVisibilityText":"تتبع الرموز المميزة والتكلفة حسب الموفر والحساب ومفتاح واجهة برمجة التطبيقات في علامتي التبويب \\"الاستخدام\\" و\\"التحليلات\\".","clientCherryStudioTitle":"ستوديو الكرز","baseUrlLabel":"عنوان URL الأساسي","chatEndpointLabel":"نقطة نهاية الدردشة","modelRecommendationLabel":"توصية النموذج: بادئة صريحة","clientCodexTitle":"نماذج Codex / GitHub Copilot","clientCodexBullet1":"استخدم معرفات النماذج مع","clientCodexBullet2":"نماذج عائلة Codex تتجه تلقائيًا إلى","clientCodexBullet3":"وتستمر النماذج غير التابعة للدستور الغذائي","clientCursorTitle":"بيئة تطوير متكاملة للمؤشر","clientCursorBullet1":"استخدم","clientCursorBullet1Suffix":"بادئة لنماذج المؤشر.","clientCursorBullet2":"اتصال OAuth - قم بتسجيل الدخول من صفحة مقدمي الخدمة.","clientClaudeTitle":"كلود كود / مضاد الجاذبية","clientClaudeBullet1Prefix":"استخدم","clientClaudeBullet1Middle":"(كلود) أو","clientClaudeBullet1Suffix":"(مضاد الجاذبية) البادئة.","endpointChatNote":"نقطة نهاية الدردشة المتوافقة مع OpenAI (افتراضي).","endpointResponsesNote":"نقطة نهاية واجهة برمجة التطبيقات للاستجابات (Codex، o-series).","endpointModelsNote":"كتالوج نموذجي لجميع مقدمي الخدمات المتصلين.","endpointAudioNote":"النسخ الصوتي (Deepgram، AssemblyAI).","endpointImagesNote":"توليد الصور (NanoBanana).","endpointRewriteChatNote":"إعادة كتابة المساعد للعملاء بدون /v1.","endpointRewriteResponsesNote":"أعد كتابة المساعد للاستجابات بدون /v1.","endpointRewriteModelsNote":"أعد كتابة المساعد لاكتشاف النموذج بدون /v1.","modelPrefixesDescriptionStart":"استخدم بادئة الموفر قبل اسم الطراز للتوجيه إلى موفر محدد. مثال:","modelPrefixesDescriptionEnd":"طرق إلى GitHub Copilot.","provider":"مزود","type":"اكتب","troubleshootingModelRouting":"إذا فشل العميل في توجيه النموذج، فاستخدم الموفر/النموذج الصريح (على سبيل المثال: gh/gpt-5.1-codex).","troubleshootingAmbiguousModels":"إذا تلقيت أخطاء نموذجية غامضة، فاختر بادئة الموفر بدلاً من معرف النموذج المجرد.","troubleshootingCodexFamily":"بالنسبة لنماذج عائلة GitHub Codex، احتفظ بالنموذج كـ gh/<codex-model>; يقوم جهاز التوجيه بتحديد/الاستجابات تلقائيًا.","troubleshootingTestConnection":"استخدم لوحة المعلومات > الموفرون > اختبار الاتصال قبل الاختبار من بيئات تطوير متكاملة أو عملاء خارجيين.","troubleshootingCircuitBreaker":"إذا أظهر مقدم الخدمة أن قاطع الدائرة مفتوح، فانتظر حتى فترة التهدئة أو راجع صفحة الصحة للحصول على التفاصيل.","troubleshootingOAuth":"بالنسبة لموفري OAuth، قم بإعادة المصادقة إذا انتهت صلاحية الرموز المميزة. تحقق من مؤشر حالة بطاقة المزود."},"legal":{"privacyPolicy":"سياسة الخصوصية","termsOfService":"شروط الخدمة","providerConfigurations":"تكوينات الموفر","apiKeys":"مفاتيح واجهة برمجة التطبيقات","usageLogs":"سجلات الاستخدام","applicationSettings":"إعدادات التطبيق","viewExportAnalytics":"عرض وتصدير تحليلات الاستخدام","clearHistory":"مسح سجل الاستخدام في أي وقت","configureRetention":"تكوين سياسات الاحتفاظ بالسجل","backupRestore":"النسخ الاحتياطي واستعادة قاعدة البيانات الخاصة بك","privacyMetadataTitle":"سياسة الخصوصية | OmniRoute","privacyMetadataDescription":"سياسة الخصوصية لجهاز التوجيه الوكيل OmniRoute AI API.","termsMetadataTitle":"شروط الخدمة | OmniRoute","termsMetadataDescription":"شروط الخدمة لجهاز التوجيه الوكيل OmniRoute AI API.","backToHome":"العودة إلى المنزل","lastUpdated":"آخر تحديث: {date}","policyLastUpdatedDate":"13 فبراير 2026","listSeparator":"-","questionsVisit":"أسئلة؟ قم بزيارة موقعنا","githubRepository":"مستودع جيثب","privacySection1Title":"1. العمارة المحلية الأولى","privacySection1Text":"تم تصميم OmniRoute كتطبيق محلي أولاً. تتم جميع عمليات معالجة البيانات وتخزينها بالكامل على جهازك. لا يوجد خادم مركزي يجمع معلوماتك.","privacySection2Title":"2. البيانات التي نقوم بتخزينها","privacyDataStoredIn":"يتم تخزين البيانات التالية محليًا في","privacyDataProviderConfigurationsDesc":"عناوين URL للاتصال وأنواع الموفرين وإعدادات الأولوية","privacyDataApiKeysDesc":"مشفرة ومخزنة محليًا للمصادقة مع موفري الذكاء الاصطناعي","privacyDataUsageLogsDesc":"عدد الطلبات واستخدام الرمز المميز وأسماء النماذج والطوابع الزمنية وأوقات الاستجابة","privacyDataApplicationSettingsDesc":"تفضيلات السمة، وإستراتيجية التوجيه، وتكوينات التحرير والسرد","privacySection3Title":"3. لا يوجد قياس عن بعد","privacySection3Text":"لا يقوم OmniRoute بجمع بيانات القياس عن بعد أو التحليلات أو تقارير الأعطال. لا يتم إرسال أي بيانات إلينا أو إلى أي طرف ثالث. تظل أنماط الاستخدام واستدعاءات API والتكوينات خاصة تمامًا.","privacySection4Title":"4. موفرو الذكاء الاصطناعي التابعون لجهات خارجية","privacySection4Text":"عند إجراء استدعاءات واجهة برمجة التطبيقات من خلال OmniRoute، تتم إعادة توجيه طلباتك إلى موفري الذكاء الاصطناعي الذين قمت بتكوينهم (على سبيل المثال: OpenAI، وAnthropic، وGoogle). لدى هؤلاء المزودين سياسات خصوصية خاصة بهم تحكم كيفية تعاملهم مع بياناتك. يرجى مراجعة:","privacyOpenAiPolicy":"سياسة خصوصية OpenAI","privacyAnthropicPolicy":"سياسة الخصوصية الإنسانية","privacyGooglePolicy":"سياسة خصوصية جوجل","privacySection5Title":"5. المزامنة السحابية (اختياري)","privacySection5Text":"إذا قمت بتمكين ميزة المزامنة السحابية الاختيارية، فقد يتم نقل تكوينات الموفر ومفاتيح API إلى نقطة نهاية سحابية تم تكوينها. يتم تعطيل هذه الميزة افتراضيًا وتتطلب الاشتراك الصريح.","privacySection6Title":"6. التسجيل","privacyLoggingIntro":"يمكن تكوين سجلات الطلب من خلال إعدادات لوحة المعلومات. يمكنك:","privacySection7Title":"7. حقوقك","privacySection7TextStart":"وبما أن جميع البيانات مخزنة محليًا، فلديك السيطرة الكاملة. يمكنك حذف بياناتك في أي وقت عن طريق إزالة","privacySection7TextEnd":"الدليل أو استخدام ميزات النسخ الاحتياطي واستعادة قاعدة البيانات في لوحة المعلومات.","termsSection1Title":"1. نظرة عامة","termsSection1Text":"OmniRoute هو أول جهاز توجيه وكيل محلي لواجهة برمجة التطبيقات (AI API) يعمل بالكامل على جهازك. يقوم بتوجيه الطلبات إلى العديد من موفري الذكاء الاصطناعي مع موازنة التحميل وتجاوز الفشل وتتبع الاستخدام.","termsSection2Title":"2. مسؤوليات المستخدم","termsResponsibilityApiKeys":"أنت وحدك المسؤول عن إدارة مفاتيح واجهة برمجة التطبيقات وبيانات الاعتماد الخاصة بك لموفري الذكاء الاصطناعي التابعين لجهات خارجية (OpenAI وAnthropic وGoogle وما إلى ذلك).","termsResponsibilityCompliance":"يجب عليك الالتزام بشروط الخدمة الخاصة بكل مزود للذكاء الاصطناعي الذي يمكنك الوصول إلى واجهة برمجة التطبيقات (API) الخاصة به من خلال OmniRoute.","termsResponsibilitySecurity":"أنت مسؤول عن أمان تثبيت OmniRoute المحلي لديك، بما في ذلك تعيين كلمة مرور وتقييد الوصول إلى الشبكة.","termsSection3Title":"3. كيف يعمل","termsSection3Text":"يعمل OmniRoute كوكيل وسيط. تتم ترجمة مكالمات API المرسلة إلى OmniRoute وإعادة توجيهها إلى موفري الذكاء الاصطناعي الذين تم تكوينهم. لا يقوم OmniRoute بتعديل محتوى طلباتك أو استجاباتك بما يتجاوز ترجمة البروتوكول الضرورية.","termsSection4Title":"4. التعامل مع البيانات","termsDataStoredLocally":"يتم تخزين جميع البيانات محليًا على جهازك في قاعدة بيانات SQLite.","termsNoTransmission":"لا يقوم OmniRoute بنقل أي بيانات إلى خوادم خارجية إلا إذا قمت بتمكين ميزات المزامنة السحابية بشكل صريح.","termsDataLocationText":"يتم تخزين سجلات الاستخدام ومفاتيح API والتكوين في","termsSection5Title":"5. إخلاء المسؤولية","termsSection5Text":"يتم توفير OmniRoute \\"كما هو\\" دون أي ضمان من أي نوع. نحن لسنا مسؤولين عن أي تكاليف يتم تكبدها من خلال استخدام واجهة برمجة التطبيقات (API)، أو انقطاع الخدمة، أو فقدان البيانات. احتفظ دائمًا بنسخ احتياطية من التكوين الخاص بك.","termsSection6Title":"6. المصدر المفتوح","termsSection6Text":"OmniRoute هو برنامج مفتوح المصدر. ولك الحرية في فحصه وتعديله وتوزيعه بموجب شروط ترخيصه."}}')}};