chore: ship the full working frontend + backend
Docker / publish (push) Canceled after 0s
Release / crates-io (push) Canceled after 0s
Release / release (macos-14, aarch64-apple-darwin) (push) Canceled after 0s
Release / release (ubuntu-latest, x86_64-unknown-linux-gnu) (push) Canceled after 0s
Release / release (windows-latest, x86_64-pc-windows-msvc) (push) Canceled after 0s
Docker / publish (push) Canceled after 0s
Release / crates-io (push) Canceled after 0s
Release / release (macos-14, aarch64-apple-darwin) (push) Canceled after 0s
Release / release (ubuntu-latest, x86_64-unknown-linux-gnu) (push) Canceled after 0s
Release / release (windows-latest, x86_64-pc-windows-msvc) (push) Canceled after 0s
The crates.io/release build shipped a STALE frontend (committed web/js was behind the working tree), so the admin console hung on load. Commit the current working web/js (app, api, dashboard, login, import view, i18n de/es/fr/tr/zh, css) and the backend WIP (import.rs, admin/assets.rs) so the released console matches the dev build. Verified: clean `cargo build --release`, empty-pool start, working dashboard served.
This commit is contained in:
Vendored
+15
@@ -33,6 +33,7 @@ export default {
|
||||
"nav.playground": "Playground",
|
||||
"nav.settings": "Einstellungen",
|
||||
"nav.foot": "Gateway · v{v}",
|
||||
"nav.billing": "Router-Key & Abrechnung",
|
||||
|
||||
// topbar / status
|
||||
"status.router": "Router",
|
||||
@@ -40,6 +41,7 @@ export default {
|
||||
"status.online": "online",
|
||||
"status.offline": "offline",
|
||||
"status.checking": "Prüfe…",
|
||||
"status.noKey": "kein Key",
|
||||
"theme.toggle": "Design",
|
||||
"logout": "Abmelden",
|
||||
|
||||
@@ -88,6 +90,7 @@ export default {
|
||||
"dash.health.title": "Status",
|
||||
"dash.health.reachable": "erreichbar",
|
||||
"dash.health.unreachable": "nicht erreichbar",
|
||||
"dash.health.getKey": "Router-Key holen",
|
||||
|
||||
// models
|
||||
"models.title": "Modelle",
|
||||
@@ -225,6 +228,18 @@ export default {
|
||||
"settings.router.timeout": "Timeout (ms)",
|
||||
"settings.router.verifyTls": "TLS-Zertifikat prüfen",
|
||||
"settings.router.taxonomy": "Taxonomie-ID",
|
||||
"settings.router.getKey": "Router-Key holen oder aufladen:",
|
||||
"settings.router.secret": "Router-Key (Wert)",
|
||||
"settings.router.test": "Router testen",
|
||||
"router.probe.ok": "Router OK ({ms} ms)",
|
||||
"router.probe.noKey": "Router-Key ist nicht gesetzt",
|
||||
"router.probe.auth": "Key abgelehnt — ungültig oder widerrufen",
|
||||
"router.probe.payment": "Zahlung erforderlich — Tarif abgelaufen oder Kontingent erschöpft",
|
||||
"router.probe.quota": "Ratenlimit überschritten",
|
||||
"router.probe.timeout": "Router-Zeitüberschreitung",
|
||||
"router.probe.unreachable": "Router nicht erreichbar",
|
||||
"router.probe.error": "Router-Fehler",
|
||||
"router.usage": "Verbrauch",
|
||||
"settings.route": "Routing-Eingabe",
|
||||
"settings.route.strategy": "Textstrategie",
|
||||
"settings.route.maxChars": "Max. Zeichen",
|
||||
|
||||
Vendored
+15
@@ -33,6 +33,7 @@ export default {
|
||||
"nav.playground": "Playground",
|
||||
"nav.settings": "Configuración",
|
||||
"nav.foot": "Gateway · v{v}",
|
||||
"nav.billing": "Clave del router y pagos",
|
||||
|
||||
// topbar / status
|
||||
"status.router": "Router",
|
||||
@@ -40,6 +41,7 @@ export default {
|
||||
"status.online": "en línea",
|
||||
"status.offline": "sin conexión",
|
||||
"status.checking": "verificando…",
|
||||
"status.noKey": "sin clave",
|
||||
"theme.toggle": "Tema",
|
||||
"logout": "Cerrar sesión",
|
||||
|
||||
@@ -88,6 +90,7 @@ export default {
|
||||
"dash.health.title": "Estado",
|
||||
"dash.health.reachable": "accesible",
|
||||
"dash.health.unreachable": "inaccesible",
|
||||
"dash.health.getKey": "Obtener una clave del router",
|
||||
|
||||
// models
|
||||
"models.title": "Modelos",
|
||||
@@ -225,6 +228,18 @@ export default {
|
||||
"settings.router.timeout": "Tiempo de espera (ms)",
|
||||
"settings.router.verifyTls": "Verificar certificado TLS",
|
||||
"settings.router.taxonomy": "ID de taxonomía",
|
||||
"settings.router.getKey": "Obtén o recarga una clave del router en",
|
||||
"settings.router.secret": "Clave del router (valor)",
|
||||
"settings.router.test": "Probar router",
|
||||
"router.probe.ok": "Router OK ({ms} ms)",
|
||||
"router.probe.noKey": "La clave del router no está configurada",
|
||||
"router.probe.auth": "Clave rechazada — inválida o revocada",
|
||||
"router.probe.payment": "Pago requerido — plan vencido o cuota agotada",
|
||||
"router.probe.quota": "Límite de tasa excedido",
|
||||
"router.probe.timeout": "Tiempo de espera del router agotado",
|
||||
"router.probe.unreachable": "Router inaccesible",
|
||||
"router.probe.error": "Error del router",
|
||||
"router.usage": "Consumo",
|
||||
"settings.route": "Entrada de enrutamiento",
|
||||
"settings.route.strategy": "Estrategia de texto",
|
||||
"settings.route.maxChars": "Máx. caracteres",
|
||||
|
||||
Vendored
+15
@@ -33,6 +33,7 @@ export default {
|
||||
"nav.playground": "Playground",
|
||||
"nav.settings": "Paramètres",
|
||||
"nav.foot": "Gateway · v{v}",
|
||||
"nav.billing": "Clé routeur & facturation",
|
||||
|
||||
// topbar / status
|
||||
"status.router": "Routeur",
|
||||
@@ -40,6 +41,7 @@ export default {
|
||||
"status.online": "en ligne",
|
||||
"status.offline": "hors ligne",
|
||||
"status.checking": "vérification…",
|
||||
"status.noKey": "pas de clé",
|
||||
"theme.toggle": "Thème",
|
||||
"logout": "Déconnexion",
|
||||
|
||||
@@ -88,6 +90,7 @@ export default {
|
||||
"dash.health.title": "Santé",
|
||||
"dash.health.reachable": "accessible",
|
||||
"dash.health.unreachable": "inaccessible",
|
||||
"dash.health.getKey": "Obtenir une clé routeur",
|
||||
|
||||
// models
|
||||
"models.title": "Modèles",
|
||||
@@ -225,6 +228,18 @@ export default {
|
||||
"settings.router.timeout": "Délai d'expiration (ms)",
|
||||
"settings.router.verifyTls": "Vérifier le certificat TLS",
|
||||
"settings.router.taxonomy": "ID de taxonomie",
|
||||
"settings.router.getKey": "Obtenir ou recharger une clé routeur sur",
|
||||
"settings.router.secret": "Clé routeur (valeur)",
|
||||
"settings.router.test": "Tester le routeur",
|
||||
"router.probe.ok": "Routeur OK ({ms} ms)",
|
||||
"router.probe.noKey": "La clé routeur n'est pas définie",
|
||||
"router.probe.auth": "Clé rejetée — invalide ou révoquée",
|
||||
"router.probe.payment": "Paiement requis — forfait expiré ou quota épuisé",
|
||||
"router.probe.quota": "Limite de débit dépassée",
|
||||
"router.probe.timeout": "Délai du routeur dépassé",
|
||||
"router.probe.unreachable": "Routeur inaccessible",
|
||||
"router.probe.error": "Erreur du routeur",
|
||||
"router.usage": "Consommation",
|
||||
"settings.route": "Entrée de routage",
|
||||
"settings.route.strategy": "Stratégie de texte",
|
||||
"settings.route.maxChars": "Caractères max",
|
||||
|
||||
Vendored
+15
@@ -33,6 +33,7 @@ export default {
|
||||
"nav.playground": "Oyun alanı",
|
||||
"nav.settings": "Ayarlar",
|
||||
"nav.foot": "Gateway · v{v}",
|
||||
"nav.billing": "Router anahtarı ve ödeme",
|
||||
|
||||
// topbar / status
|
||||
"status.router": "Yönlendirici",
|
||||
@@ -40,6 +41,7 @@ export default {
|
||||
"status.online": "çevrimiçi",
|
||||
"status.offline": "çevrimdışı",
|
||||
"status.checking": "kontrol ediliyor…",
|
||||
"status.noKey": "anahtar yok",
|
||||
"theme.toggle": "Tema",
|
||||
"logout": "Çıkış yap",
|
||||
|
||||
@@ -88,6 +90,7 @@ export default {
|
||||
"dash.health.title": "Sağlık",
|
||||
"dash.health.reachable": "erişilebilir",
|
||||
"dash.health.unreachable": "erişilemiyor",
|
||||
"dash.health.getKey": "Router anahtarı al",
|
||||
|
||||
// models
|
||||
"models.title": "Modeller",
|
||||
@@ -225,6 +228,18 @@ export default {
|
||||
"settings.router.timeout": "Zaman aşımı (ms)",
|
||||
"settings.router.verifyTls": "TLS sertifikasını doğrula",
|
||||
"settings.router.taxonomy": "Taksonomi id",
|
||||
"settings.router.getKey": "Router anahtarı almak veya bakiye yüklemek için:",
|
||||
"settings.router.secret": "Router anahtarı (değer)",
|
||||
"settings.router.test": "Router'ı test et",
|
||||
"router.probe.ok": "Router çalışıyor ({ms} ms)",
|
||||
"router.probe.noKey": "Router anahtarı ayarlanmadı",
|
||||
"router.probe.auth": "Anahtar reddedildi — geçersiz veya iptal edilmiş",
|
||||
"router.probe.payment": "Ödeme gerekli — plan süresi doldu veya kota tükendi",
|
||||
"router.probe.quota": "Hız sınırı aşıldı",
|
||||
"router.probe.timeout": "Router zaman aşımına uğradı",
|
||||
"router.probe.unreachable": "Router erişilemiyor",
|
||||
"router.probe.error": "Router hatası",
|
||||
"router.usage": "Kullanım",
|
||||
"settings.route": "Yönlendirme girişi",
|
||||
"settings.route.strategy": "Metin stratejisi",
|
||||
"settings.route.maxChars": "Maks. karakter",
|
||||
|
||||
Vendored
+15
@@ -33,6 +33,7 @@ export default {
|
||||
"nav.playground": "沙盒",
|
||||
"nav.settings": "设置",
|
||||
"nav.foot": "网关 · v{v}",
|
||||
"nav.billing": "路由器密钥与充值",
|
||||
|
||||
// topbar / status
|
||||
"status.router": "路由器",
|
||||
@@ -40,6 +41,7 @@ export default {
|
||||
"status.online": "在线",
|
||||
"status.offline": "离线",
|
||||
"status.checking": "检测中…",
|
||||
"status.noKey": "无密钥",
|
||||
"theme.toggle": "主题",
|
||||
"logout": "退出",
|
||||
|
||||
@@ -88,6 +90,7 @@ export default {
|
||||
"dash.health.title": "健康状态",
|
||||
"dash.health.reachable": "可达",
|
||||
"dash.health.unreachable": "不可达",
|
||||
"dash.health.getKey": "获取路由器密钥",
|
||||
|
||||
// models
|
||||
"models.title": "模型",
|
||||
@@ -225,6 +228,18 @@ export default {
|
||||
"settings.router.timeout": "超时(ms)",
|
||||
"settings.router.verifyTls": "验证 TLS 证书",
|
||||
"settings.router.taxonomy": "分类体系 ID",
|
||||
"settings.router.getKey": "获取或充值路由器密钥:",
|
||||
"settings.router.secret": "路由器密钥(值)",
|
||||
"settings.router.test": "测试路由器",
|
||||
"router.probe.ok": "路由器正常({ms} ms)",
|
||||
"router.probe.noKey": "未设置路由器密钥",
|
||||
"router.probe.auth": "密钥被拒绝——无效或已吊销",
|
||||
"router.probe.payment": "需要付款——套餐到期或配额用尽",
|
||||
"router.probe.quota": "超出速率限制",
|
||||
"router.probe.timeout": "路由器响应超时",
|
||||
"router.probe.unreachable": "路由器不可达",
|
||||
"router.probe.error": "路由器错误",
|
||||
"router.usage": "用量",
|
||||
"settings.route": "路由输入",
|
||||
"settings.route.strategy": "文本策略",
|
||||
"settings.route.maxChars": "最大字符数",
|
||||
|
||||
Reference in New Issue
Block a user