[WEB-3798]chore: updated language support to estimates (#6900)

This commit is contained in:
Vamsi Krishna 2025-04-09 19:34:01 +05:30 committed by GitHub
parent 993c7899b6
commit b738e39a4a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
24 changed files with 434 additions and 34 deletions

View file

@ -1738,12 +1738,15 @@
"title": "Povolit odhady pro můj projekt", "title": "Povolit odhady pro můj projekt",
"description": "Pomáhají vám komunikovat složitost a pracovní zátěž týmu.", "description": "Pomáhají vám komunikovat složitost a pracovní zátěž týmu.",
"no_estimate": "Bez odhadu", "no_estimate": "Bez odhadu",
"new": "Nový systém odhadů",
"create": { "create": {
"custom": "Vlastní", "custom": "Vlastní",
"start_from_scratch": "Začít od nuly", "start_from_scratch": "Začít od nuly",
"choose_template": "Vybrat šablonu", "choose_template": "Vybrat šablonu",
"choose_estimate_system": "Vybrat systém odhadů", "choose_estimate_system": "Vybrat systém odhadů",
"enter_estimate_point": "Zadat odhad" "enter_estimate_point": "Zadat odhad",
"step": "Krok {step} z {total}",
"label": "Vytvořit odhad"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1792,6 +1795,25 @@
"already_exists": "Hodnota odhadu již existuje.", "already_exists": "Hodnota odhadu již existuje.",
"unsaved_changes": "Máte neuložené změny. Před kliknutím na hotovo je prosím uložte", "unsaved_changes": "Máte neuložené změny. Před kliknutím na hotovo je prosím uložte",
"remove_empty": "Odhad nemůže být prázdný. Zadejte hodnotu do každého pole nebo odstraňte ta, pro která nemáte hodnoty." "remove_empty": "Odhad nemůže být prázdný. Zadejte hodnotu do každého pole nebo odstraňte ta, pro která nemáte hodnoty."
},
"systems": {
"points": {
"label": "Body",
"fibonacci": "Fibonacci",
"linear": "Lineární",
"squares": "Čtverce",
"custom": "Vlastní"
},
"categories": {
"label": "Kategorie",
"t_shirt_sizes": "Velikosti triček",
"easy_to_hard": "Od snadného po těžké",
"custom": "Vlastní"
},
"time": {
"label": "Čas",
"hours": "Hodiny"
}
} }
}, },
"automations": { "automations": {

View file

@ -1714,12 +1714,15 @@
"title": "Schätzungen für mein Projekt aktivieren", "title": "Schätzungen für mein Projekt aktivieren",
"description": "Sie helfen dir, die Komplexität und Arbeitsbelastung des Teams zu kommunizieren.", "description": "Sie helfen dir, die Komplexität und Arbeitsbelastung des Teams zu kommunizieren.",
"no_estimate": "Keine Schätzung", "no_estimate": "Keine Schätzung",
"new": "Neues Schätzungssystem",
"create": { "create": {
"custom": "Benutzerdefiniert", "custom": "Benutzerdefiniert",
"start_from_scratch": "Von Grund auf neu", "start_from_scratch": "Von Grund auf neu",
"choose_template": "Vorlage wählen", "choose_template": "Vorlage wählen",
"choose_estimate_system": "Schätzungssystem wählen", "choose_estimate_system": "Schätzungssystem wählen",
"enter_estimate_point": "Schätzung eingeben" "enter_estimate_point": "Schätzung eingeben",
"step": "Schritt {step} von {total}",
"label": "Schätzung erstellen"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1768,6 +1771,25 @@
"already_exists": "Der Schätzungswert existiert bereits.", "already_exists": "Der Schätzungswert existiert bereits.",
"unsaved_changes": "Du hast ungespeicherte Änderungen. Bitte speichere sie, bevor du auf Fertig klickst", "unsaved_changes": "Du hast ungespeicherte Änderungen. Bitte speichere sie, bevor du auf Fertig klickst",
"remove_empty": "Die Schätzung darf nicht leer sein. Gib einen Wert in jedes Feld ein oder entferne die Felder, für die du keine Werte hast." "remove_empty": "Die Schätzung darf nicht leer sein. Gib einen Wert in jedes Feld ein oder entferne die Felder, für die du keine Werte hast."
},
"systems": {
"points": {
"label": "Punkte",
"fibonacci": "Fibonacci",
"linear": "Linear",
"squares": "Quadrate",
"custom": "Benutzerdefiniert"
},
"categories": {
"label": "Kategorien",
"t_shirt_sizes": "T-Shirt-Größen",
"easy_to_hard": "Einfach bis schwer",
"custom": "Benutzerdefiniert"
},
"time": {
"label": "Zeit",
"hours": "Stunden"
}
} }
}, },
"automations": { "automations": {

View file

@ -1573,12 +1573,15 @@
"title": "Enable estimates for my project", "title": "Enable estimates for my project",
"description": "They help you in communicating complexity and workload of the team.", "description": "They help you in communicating complexity and workload of the team.",
"no_estimate": "No estimate", "no_estimate": "No estimate",
"new": "New estimate system",
"create": { "create": {
"custom": "Custom", "custom": "Custom",
"start_from_scratch": "Start from scratch", "start_from_scratch": "Start from scratch",
"choose_template": "Choose a template", "choose_template": "Choose a template",
"choose_estimate_system": "Choose an estimate system", "choose_estimate_system": "Choose an estimate system",
"enter_estimate_point": "Enter estimate" "enter_estimate_point": "Enter estimate",
"step": "Step {step} of {total}",
"label": "Create estimate"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1627,6 +1630,25 @@
"already_exists": "Estimate value already exists.", "already_exists": "Estimate value already exists.",
"unsaved_changes": "You have some unsaved changes, Please save them before clicking on done", "unsaved_changes": "You have some unsaved changes, Please save them before clicking on done",
"remove_empty": "Estimate can't be empty. Enter a value in each field or remove those you don't have values for." "remove_empty": "Estimate can't be empty. Enter a value in each field or remove those you don't have values for."
},
"systems": {
"points": {
"label": "Points",
"fibonacci": "Fibonacci",
"linear": "Linear",
"squares": "Squares",
"custom": "Custom"
},
"categories": {
"label": "Categories",
"t_shirt_sizes": "T-Shirt Sizes",
"easy_to_hard": "Easy to hard",
"custom": "Custom"
},
"time": {
"label": "Time",
"hours": "Hours"
}
} }
}, },
"automations": { "automations": {

View file

@ -1742,12 +1742,15 @@
"title": "Activar estimaciones para mi proyecto", "title": "Activar estimaciones para mi proyecto",
"description": "Te ayudan a comunicar la complejidad y la carga de trabajo del equipo.", "description": "Te ayudan a comunicar la complejidad y la carga de trabajo del equipo.",
"no_estimate": "Sin estimación", "no_estimate": "Sin estimación",
"new": "Nuevo sistema de estimación",
"create": { "create": {
"custom": "Personalizado", "custom": "Personalizado",
"start_from_scratch": "Comenzar desde cero", "start_from_scratch": "Comenzar desde cero",
"choose_template": "Elegir una plantilla", "choose_template": "Elegir una plantilla",
"choose_estimate_system": "Elegir un sistema de estimación", "choose_estimate_system": "Elegir un sistema de estimación",
"enter_estimate_point": "Ingresar estimación" "enter_estimate_point": "Ingresar estimación",
"step": "Paso {step} de {total}",
"label": "Crear estimación"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1796,6 +1799,25 @@
"already_exists": "El valor de la estimación ya existe.", "already_exists": "El valor de la estimación ya existe.",
"unsaved_changes": "Tienes cambios sin guardar. Por favor guárdalos antes de hacer clic en Hecho", "unsaved_changes": "Tienes cambios sin guardar. Por favor guárdalos antes de hacer clic en Hecho",
"remove_empty": "La estimación no puede estar vacía. Ingresa un valor en cada campo o elimina aquellos para los que no tienes valores." "remove_empty": "La estimación no puede estar vacía. Ingresa un valor en cada campo o elimina aquellos para los que no tienes valores."
},
"systems": {
"points": {
"label": "Puntos",
"fibonacci": "Fibonacci",
"linear": "Lineal",
"squares": "Cuadrados",
"custom": "Personalizado"
},
"categories": {
"label": "Categorías",
"t_shirt_sizes": "Tallas de camiseta",
"easy_to_hard": "Fácil a difícil",
"custom": "Personalizado"
},
"time": {
"label": "Tiempo",
"hours": "Horas"
}
} }
}, },
"automations": { "automations": {

View file

@ -1740,12 +1740,15 @@
"title": "Activer les estimations pour mon projet", "title": "Activer les estimations pour mon projet",
"description": "Elles vous aident à communiquer la complexité et la charge de travail de l'équipe.", "description": "Elles vous aident à communiquer la complexité et la charge de travail de l'équipe.",
"no_estimate": "Sans estimation", "no_estimate": "Sans estimation",
"new": "Nouveau système d'estimation",
"create": { "create": {
"custom": "Personnalisé", "custom": "Personnalisé",
"start_from_scratch": "Commencer depuis zéro", "start_from_scratch": "Commencer depuis zéro",
"choose_template": "Choisir un modèle", "choose_template": "Choisir un modèle",
"choose_estimate_system": "Choisir un système d'estimation", "choose_estimate_system": "Choisir un système d'estimation",
"enter_estimate_point": "Saisir une estimation" "enter_estimate_point": "Saisir une estimation",
"step": "Étape {step} de {total}",
"label": "Créer une estimation"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1794,6 +1797,25 @@
"already_exists": "La valeur de l'estimation existe déjà.", "already_exists": "La valeur de l'estimation existe déjà.",
"unsaved_changes": "Vous avez des modifications non enregistrées. Veuillez les enregistrer avant de cliquer sur Terminé", "unsaved_changes": "Vous avez des modifications non enregistrées. Veuillez les enregistrer avant de cliquer sur Terminé",
"remove_empty": "L'estimation ne peut pas être vide. Saisissez une valeur dans chaque champ ou supprimez ceux pour lesquels vous n'avez pas de valeurs." "remove_empty": "L'estimation ne peut pas être vide. Saisissez une valeur dans chaque champ ou supprimez ceux pour lesquels vous n'avez pas de valeurs."
},
"systems": {
"points": {
"label": "Points",
"fibonacci": "Fibonacci",
"linear": "Linéaire",
"squares": "Carrés",
"custom": "Personnalisé"
},
"categories": {
"label": "Catégories",
"t_shirt_sizes": "Tailles de T-Shirt",
"easy_to_hard": "Facile à difficile",
"custom": "Personnalisé"
},
"time": {
"label": "Temps",
"hours": "Heures"
}
} }
}, },
"automations": { "automations": {

View file

@ -1740,12 +1740,15 @@
"title": "Aktifkan perkiraan untuk proyek saya", "title": "Aktifkan perkiraan untuk proyek saya",
"description": "Ini membantu Anda dalam mengkomunikasikan kompleksitas dan beban kerja tim.", "description": "Ini membantu Anda dalam mengkomunikasikan kompleksitas dan beban kerja tim.",
"no_estimate": "Tidak ada perkiraan", "no_estimate": "Tidak ada perkiraan",
"new": "Sistem perkiraan baru",
"create": { "create": {
"custom": "Kustom", "custom": "Kustom",
"start_from_scratch": "Mulai dari awal", "start_from_scratch": "Mulai dari awal",
"choose_template": "Pilih template", "choose_template": "Pilih template",
"choose_estimate_system": "Pilih sistem perkiraan", "choose_estimate_system": "Pilih sistem perkiraan",
"enter_estimate_point": "Masukkan perkiraan" "enter_estimate_point": "Masukkan perkiraan",
"step": "Langkah {step} dari {total}",
"label": "Buat perkiraan"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1794,6 +1797,25 @@
"already_exists": "Nilai perkiraan sudah ada.", "already_exists": "Nilai perkiraan sudah ada.",
"unsaved_changes": "Anda memiliki beberapa perubahan yang belum disimpan, Harap simpan sebelum mengklik selesai", "unsaved_changes": "Anda memiliki beberapa perubahan yang belum disimpan, Harap simpan sebelum mengklik selesai",
"remove_empty": "Perkiraan tidak boleh kosong. Masukkan nilai di setiap bidang atau hapus yang tidak memiliki nilai." "remove_empty": "Perkiraan tidak boleh kosong. Masukkan nilai di setiap bidang atau hapus yang tidak memiliki nilai."
},
"systems": {
"points": {
"label": "Poin",
"fibonacci": "Fibonacci",
"linear": "Linear",
"squares": "Kuadrat",
"custom": "Kustom"
},
"categories": {
"label": "Kategori",
"t_shirt_sizes": "Ukuran Baju",
"easy_to_hard": "Mudah ke sulit",
"custom": "Kustom"
},
"time": {
"label": "Waktu",
"hours": "Jam"
}
} }
}, },
"automations": { "automations": {

View file

@ -1739,12 +1739,15 @@
"title": "Abilita le stime per il mio progetto", "title": "Abilita le stime per il mio progetto",
"description": "Ti aiutano a comunicare la complessità e il carico di lavoro del team.", "description": "Ti aiutano a comunicare la complessità e il carico di lavoro del team.",
"no_estimate": "Nessuna stima", "no_estimate": "Nessuna stima",
"new": "Nuovo sistema di stima",
"create": { "create": {
"custom": "Personalizzato", "custom": "Personalizzato",
"start_from_scratch": "Inizia da zero", "start_from_scratch": "Inizia da zero",
"choose_template": "Scegli un modello", "choose_template": "Scegli un modello",
"choose_estimate_system": "Scegli un sistema di stima", "choose_estimate_system": "Scegli un sistema di stima",
"enter_estimate_point": "Inserisci stima" "enter_estimate_point": "Inserisci stima",
"step": "Passo {step} di {total}",
"label": "Crea stima"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1793,6 +1796,25 @@
"already_exists": "Il valore della stima esiste già.", "already_exists": "Il valore della stima esiste già.",
"unsaved_changes": "Hai delle modifiche non salvate. Salva prima di cliccare su Fatto", "unsaved_changes": "Hai delle modifiche non salvate. Salva prima di cliccare su Fatto",
"remove_empty": "La stima non può essere vuota. Inserisci un valore in ogni campo o rimuovi quelli per cui non hai valori." "remove_empty": "La stima non può essere vuota. Inserisci un valore in ogni campo o rimuovi quelli per cui non hai valori."
},
"systems": {
"points": {
"label": "Punti",
"fibonacci": "Fibonacci",
"linear": "Lineare",
"squares": "Quadrati",
"custom": "Personalizzato"
},
"categories": {
"label": "Categorie",
"t_shirt_sizes": "Taglie T-Shirt",
"easy_to_hard": "Da facile a difficile",
"custom": "Personalizzato"
},
"time": {
"label": "Tempo",
"hours": "Ore"
}
} }
}, },
"automations": { "automations": {

View file

@ -1740,12 +1740,15 @@
"title": "プロジェクトの見積もりを有効にする", "title": "プロジェクトの見積もりを有効にする",
"description": "チームの複雑さと作業負荷を伝えるのに役立ちます。", "description": "チームの複雑さと作業負荷を伝えるのに役立ちます。",
"no_estimate": "見積もりなし", "no_estimate": "見積もりなし",
"new": "新しい見積もりシステム",
"create": { "create": {
"custom": "カスタム", "custom": "カスタム",
"start_from_scratch": "最初から開始", "start_from_scratch": "最初から開始",
"choose_template": "テンプレートを選択", "choose_template": "テンプレートを選択",
"choose_estimate_system": "見積もりシステムを選択", "choose_estimate_system": "見積もりシステムを選択",
"enter_estimate_point": "見積もりを入力" "enter_estimate_point": "見積もりを入力",
"step": "ステップ {step} の {total}",
"label": "見積もりを作成"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1794,6 +1797,25 @@
"already_exists": "見積もり値は既に存在します。", "already_exists": "見積もり値は既に存在します。",
"unsaved_changes": "未保存の変更があります。完了をクリックする前に保存してください", "unsaved_changes": "未保存の変更があります。完了をクリックする前に保存してください",
"remove_empty": "見積もりは空にできません。各フィールドに値を入力するか、値がないフィールドを削除してください。" "remove_empty": "見積もりは空にできません。各フィールドに値を入力するか、値がないフィールドを削除してください。"
},
"systems": {
"points": {
"label": "ポイント",
"fibonacci": "フィボナッチ",
"linear": "リニア",
"squares": "二乗",
"custom": "カスタム"
},
"categories": {
"label": "カテゴリー",
"t_shirt_sizes": "Tシャツサイズ",
"easy_to_hard": "簡単から難しい",
"custom": "カスタム"
},
"time": {
"label": "時間",
"hours": "時間"
}
} }
}, },
"automations": { "automations": {

View file

@ -1742,12 +1742,15 @@
"title": "프로젝트 추정 활성화", "title": "프로젝트 추정 활성화",
"description": "팀의 복잡성과 작업량을 전달하는 데 도움이 됩니다.", "description": "팀의 복잡성과 작업량을 전달하는 데 도움이 됩니다.",
"no_estimate": "추정 없음", "no_estimate": "추정 없음",
"new": "새 추정 시스템",
"create": { "create": {
"custom": "사용자 지정", "custom": "사용자 지정",
"start_from_scratch": "처음부터 시작", "start_from_scratch": "처음부터 시작",
"choose_template": "템플릿 선택", "choose_template": "템플릿 선택",
"choose_estimate_system": "추정 시스템 선택", "choose_estimate_system": "추정 시스템 선택",
"enter_estimate_point": "추정 입력" "enter_estimate_point": "추정 입력",
"step": "단계 {step}/{total}",
"label": "추정 생성"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1796,6 +1799,25 @@
"already_exists": "추정 값이 이미 존재합니다.", "already_exists": "추정 값이 이미 존재합니다.",
"unsaved_changes": "저장되지 않은 변경 사항이 있습니다. 완료를 클릭하기 전에 저장하세요", "unsaved_changes": "저장되지 않은 변경 사항이 있습니다. 완료를 클릭하기 전에 저장하세요",
"remove_empty": "추정은 비어있을 수 없습니다. 각 필드에 값을 입력하거나 값이 없는 필드를 제거하세요." "remove_empty": "추정은 비어있을 수 없습니다. 각 필드에 값을 입력하거나 값이 없는 필드를 제거하세요."
},
"systems": {
"points": {
"label": "포인트",
"fibonacci": "피보나치",
"linear": "선형",
"squares": "제곱",
"custom": "사용자 정의"
},
"categories": {
"label": "카테고리",
"t_shirt_sizes": "티셔츠 사이즈",
"easy_to_hard": "쉬움에서 어려움",
"custom": "사용자 정의"
},
"time": {
"label": "시간",
"hours": "시간"
}
} }
}, },
"automations": { "automations": {

View file

@ -1717,12 +1717,15 @@
"title": "Włącz szacunki dla mojego projektu", "title": "Włącz szacunki dla mojego projektu",
"description": "Pomagają w komunikacji o złożoności i obciążeniu zespołu.", "description": "Pomagają w komunikacji o złożoności i obciążeniu zespołu.",
"no_estimate": "Bez szacunku", "no_estimate": "Bez szacunku",
"new": "Nowy system szacowania",
"create": { "create": {
"custom": "Niestandardowy", "custom": "Niestandardowy",
"start_from_scratch": "Zacznij od zera", "start_from_scratch": "Zacznij od zera",
"choose_template": "Wybierz szablon", "choose_template": "Wybierz szablon",
"choose_estimate_system": "Wybierz system szacowania", "choose_estimate_system": "Wybierz system szacowania",
"enter_estimate_point": "Wprowadź punkt szacunkowy" "enter_estimate_point": "Wprowadź punkt szacunkowy",
"step": "Krok {step} z {total}",
"label": "Utwórz szacunek"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1771,6 +1774,25 @@
"already_exists": "Wartość szacunku już istnieje.", "already_exists": "Wartość szacunku już istnieje.",
"unsaved_changes": "Masz niezapisane zmiany. Zapisz je przed kliknięciem 'gotowe'", "unsaved_changes": "Masz niezapisane zmiany. Zapisz je przed kliknięciem 'gotowe'",
"remove_empty": "Szacunek nie może być pusty. Wprowadź wartość w każde pole lub usuń te, dla których nie masz wartości." "remove_empty": "Szacunek nie może być pusty. Wprowadź wartość w każde pole lub usuń te, dla których nie masz wartości."
},
"systems": {
"points": {
"label": "Punkty",
"fibonacci": "Fibonacci",
"linear": "Liniowy",
"squares": "Kwadraty",
"custom": "Własny"
},
"categories": {
"label": "Kategorie",
"t_shirt_sizes": "Rozmiary koszulek",
"easy_to_hard": "Od łatwego do trudnego",
"custom": "Własne"
},
"time": {
"label": "Czas",
"hours": "Godziny"
}
} }
}, },
"automations": { "automations": {

View file

@ -1742,12 +1742,15 @@
"title": "Habilitar estimativas para meu projeto", "title": "Habilitar estimativas para meu projeto",
"description": "Elas ajudam você a comunicar a complexidade e a carga de trabalho da equipe.", "description": "Elas ajudam você a comunicar a complexidade e a carga de trabalho da equipe.",
"no_estimate": "Sem estimativa", "no_estimate": "Sem estimativa",
"new": "Novo sistema de estimativa",
"create": { "create": {
"custom": "Personalizado", "custom": "Personalizado",
"start_from_scratch": "Começar do zero", "start_from_scratch": "Começar do zero",
"choose_template": "Escolher um modelo", "choose_template": "Escolher um modelo",
"choose_estimate_system": "Escolher um sistema de estimativa", "choose_estimate_system": "Escolher um sistema de estimativa",
"enter_estimate_point": "Inserir estimativa" "enter_estimate_point": "Inserir estimativa",
"step": "Passo {step} de {total}",
"label": "Criar estimativa"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1796,6 +1799,25 @@
"already_exists": "O valor da estimativa já existe.", "already_exists": "O valor da estimativa já existe.",
"unsaved_changes": "Você tem algumas alterações não salvas. Por favor, salve-as antes de clicar em concluir", "unsaved_changes": "Você tem algumas alterações não salvas. Por favor, salve-as antes de clicar em concluir",
"remove_empty": "A estimativa não pode estar vazia. Insira um valor em cada campo ou remova aqueles para os quais você não tem valores." "remove_empty": "A estimativa não pode estar vazia. Insira um valor em cada campo ou remova aqueles para os quais você não tem valores."
},
"systems": {
"points": {
"label": "Pontos",
"fibonacci": "Fibonacci",
"linear": "Linear",
"squares": "Quadrados",
"custom": "Personalizado"
},
"categories": {
"label": "Categorias",
"t_shirt_sizes": "Tamanhos de Camiseta",
"easy_to_hard": "Fácil a difícil",
"custom": "Personalizado"
},
"time": {
"label": "Tempo",
"hours": "Horas"
}
} }
}, },
"automations": { "automations": {

View file

@ -1740,12 +1740,15 @@
"title": "Activează estimările pentru proiectul meu", "title": "Activează estimările pentru proiectul meu",
"description": "Te ajută să comunici complexitatea și volumul de muncă al echipei.", "description": "Te ajută să comunici complexitatea și volumul de muncă al echipei.",
"no_estimate": "Fără estimare", "no_estimate": "Fără estimare",
"new": "Noul sistem de estimare",
"create": { "create": {
"custom": "Personalizat", "custom": "Personalizat",
"start_from_scratch": "Începe de la zero", "start_from_scratch": "Începe de la zero",
"choose_template": "Alege un șablon", "choose_template": "Alege un șablon",
"choose_estimate_system": "Alege un sistem de estimare", "choose_estimate_system": "Alege un sistem de estimare",
"enter_estimate_point": "Introdu estimarea" "enter_estimate_point": "Introdu estimarea",
"step": "Pasul {step} de {total}",
"label": "Creează estimare"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1794,6 +1797,25 @@
"already_exists": "Valoarea estimării există deja.", "already_exists": "Valoarea estimării există deja.",
"unsaved_changes": "Ai modificări nesalvate, te rugăm să le salvezi înainte de a finaliza", "unsaved_changes": "Ai modificări nesalvate, te rugăm să le salvezi înainte de a finaliza",
"remove_empty": "Estimarea nu poate fi goală. Introdu o valoare în fiecare câmp sau elimină câmpurile pentru care nu ai valori." "remove_empty": "Estimarea nu poate fi goală. Introdu o valoare în fiecare câmp sau elimină câmpurile pentru care nu ai valori."
},
"systems": {
"points": {
"label": "Puncte",
"fibonacci": "Fibonacci",
"linear": "Linear",
"squares": "Pătrate",
"custom": "Personalizat"
},
"categories": {
"label": "Categorii",
"t_shirt_sizes": "Mărimi tricou",
"easy_to_hard": "De la ușor la greu",
"custom": "Personalizat"
},
"time": {
"label": "Timp",
"hours": "Ore"
}
} }
}, },
"automations": { "automations": {

View file

@ -1740,12 +1740,15 @@
"title": "Включить оценки для моего проекта", "title": "Включить оценки для моего проекта",
"description": "Они помогают вам в общении о сложности и рабочей нагрузке команды.", "description": "Они помогают вам в общении о сложности и рабочей нагрузке команды.",
"no_estimate": "Без оценки", "no_estimate": "Без оценки",
"new": "Новая система оценок",
"create": { "create": {
"custom": "Пользовательская", "custom": "Пользовательская",
"start_from_scratch": "Начать с нуля", "start_from_scratch": "Начать с нуля",
"choose_template": "Выбрать шаблон", "choose_template": "Выбрать шаблон",
"choose_estimate_system": "Выбрать систему оценок", "choose_estimate_system": "Выбрать систему оценок",
"enter_estimate_point": "Ввести оценку" "enter_estimate_point": "Ввести оценку",
"step": "Шаг {step} из {total}",
"label": "Создать оценку"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1794,6 +1797,25 @@
"already_exists": "Значение оценки уже существует.", "already_exists": "Значение оценки уже существует.",
"unsaved_changes": "У вас есть несохраненные изменения. Пожалуйста, сохраните их перед нажатием на готово", "unsaved_changes": "У вас есть несохраненные изменения. Пожалуйста, сохраните их перед нажатием на готово",
"remove_empty": "Оценка не может быть пустой. Введите значение в каждое поле или удалите те, для которых у вас нет значений." "remove_empty": "Оценка не может быть пустой. Введите значение в каждое поле или удалите те, для которых у вас нет значений."
},
"systems": {
"points": {
"label": "Баллы",
"fibonacci": "Фибоначчи",
"linear": "Линейная",
"squares": "Квадраты",
"custom": "Пользовательская"
},
"categories": {
"label": "Категории",
"t_shirt_sizes": "Размеры футболок",
"easy_to_hard": "От простого к сложному",
"custom": "Пользовательская"
},
"time": {
"label": "Время",
"hours": "Часы"
}
} }
}, },
"automations": { "automations": {

View file

@ -1739,12 +1739,15 @@
"title": "Povoliť odhady pre môj projekt", "title": "Povoliť odhady pre môj projekt",
"description": "Pomáhajú vám komunikovať zložitosť a pracovné zaťaženie tímu.", "description": "Pomáhajú vám komunikovať zložitosť a pracovné zaťaženie tímu.",
"no_estimate": "Bez odhadu", "no_estimate": "Bez odhadu",
"new": "Nový systém odhadov",
"create": { "create": {
"custom": "Vlastné", "custom": "Vlastné",
"start_from_scratch": "Začať od nuly", "start_from_scratch": "Začať od nuly",
"choose_template": "Vybrať šablónu", "choose_template": "Vybrať šablónu",
"choose_estimate_system": "Vybrať systém odhadov", "choose_estimate_system": "Vybrať systém odhadov",
"enter_estimate_point": "Zadať bod odhadu" "enter_estimate_point": "Zadať bod odhadu",
"step": "Krok {step} z {total}",
"label": "Vytvoriť odhad"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1793,6 +1796,25 @@
"already_exists": "Hodnota odhadu už existuje.", "already_exists": "Hodnota odhadu už existuje.",
"unsaved_changes": "Máte neuložené zmeny. Prosím, uložte ich pred kliknutím na hotovo", "unsaved_changes": "Máte neuložené zmeny. Prosím, uložte ich pred kliknutím na hotovo",
"remove_empty": "Odhad nemôže byť prázdny. Zadajte hodnotu do každého poľa alebo odstráňte prázdne polia." "remove_empty": "Odhad nemôže byť prázdny. Zadajte hodnotu do každého poľa alebo odstráňte prázdne polia."
},
"systems": {
"points": {
"label": "Body",
"fibonacci": "Fibonacci",
"linear": "Lineárne",
"squares": "Štvorce",
"custom": "Vlastné"
},
"categories": {
"label": "Kategórie",
"t_shirt_sizes": "Veľkosti tričiek",
"easy_to_hard": "Od jednoduchého po náročné",
"custom": "Vlastné"
},
"time": {
"label": "Čas",
"hours": "Hodiny"
}
} }
}, },
"automations": { "automations": {

View file

@ -1716,12 +1716,15 @@
"title": "Увімкнути оцінки для мого проєкту", "title": "Увімкнути оцінки для мого проєкту",
"description": "Вони допомагають вам повідомляти про складність та навантаження команди.", "description": "Вони допомагають вам повідомляти про складність та навантаження команди.",
"no_estimate": "Без оцінки", "no_estimate": "Без оцінки",
"new": "Нова система оцінок",
"create": { "create": {
"custom": "Власний", "custom": "Власний",
"start_from_scratch": "Почати з нуля", "start_from_scratch": "Почати з нуля",
"choose_template": "Вибрати шаблон", "choose_template": "Вибрати шаблон",
"choose_estimate_system": "Вибрати систему оцінок", "choose_estimate_system": "Вибрати систему оцінок",
"enter_estimate_point": "Введіть оцінку" "enter_estimate_point": "Введіть оцінку",
"step": "Крок {step} з {total}",
"label": "Створити оцінку"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1770,6 +1773,25 @@
"already_exists": "Таке значення оцінки вже існує.", "already_exists": "Таке значення оцінки вже існує.",
"unsaved_changes": "У вас є незбережені зміни. Збережіть їх перед тим, як натиснути 'готово'", "unsaved_changes": "У вас є незбережені зміни. Збережіть їх перед тим, як натиснути 'готово'",
"remove_empty": "Оцінка не може бути порожньою. Введіть значення в кожне поле або видаліть ті, для яких у вас немає значень." "remove_empty": "Оцінка не може бути порожньою. Введіть значення в кожне поле або видаліть ті, для яких у вас немає значень."
},
"systems": {
"points": {
"label": "Бали",
"fibonacci": "Фібоначчі",
"linear": "Лінійна",
"squares": "Квадрати",
"custom": "Власна"
},
"categories": {
"label": "Категорії",
"t_shirt_sizes": "Розміри футболок",
"easy_to_hard": "Від легкого до складного",
"custom": "Власна"
},
"time": {
"label": "Час",
"hours": "Години"
}
} }
}, },
"automations": { "automations": {

View file

@ -1715,12 +1715,15 @@
"title": "Bật ước tính cho dự án của tôi", "title": "Bật ước tính cho dự án của tôi",
"description": "Chúng giúp bạn truyền đạt độ phức tạp và khối lượng công việc của nhóm.", "description": "Chúng giúp bạn truyền đạt độ phức tạp và khối lượng công việc của nhóm.",
"no_estimate": "Không có ước tính", "no_estimate": "Không có ước tính",
"new": "Hệ thống ước tính mới",
"create": { "create": {
"custom": "Tùy chỉnh", "custom": "Tùy chỉnh",
"start_from_scratch": "Bắt đầu từ đầu", "start_from_scratch": "Bắt đầu từ đầu",
"choose_template": "Chọn mẫu", "choose_template": "Chọn mẫu",
"choose_estimate_system": "Chọn hệ thống ước tính", "choose_estimate_system": "Chọn hệ thống ước tính",
"enter_estimate_point": "Nhập điểm ước tính" "enter_estimate_point": "Nhập điểm ước tính",
"step": "Bước {step} của {total}",
"label": "Tạo ước tính"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1768,6 +1771,25 @@
"empty": "Giá trị ước tính không được để trống", "empty": "Giá trị ước tính không được để trống",
"already_exists": "Giá trị ước tính này đã tồn tại", "already_exists": "Giá trị ước tính này đã tồn tại",
"unsaved_changes": "Bạn có thay đổi chưa lưu. Vui lòng lưu trước khi nhấn 'xong'" "unsaved_changes": "Bạn có thay đổi chưa lưu. Vui lòng lưu trước khi nhấn 'xong'"
},
"systems": {
"points": {
"label": "Điểm",
"fibonacci": "Fibonacci",
"linear": "Tuyến tính",
"squares": "Bình phương",
"custom": "Tùy chỉnh"
},
"categories": {
"label": "Danh mục",
"t_shirt_sizes": "Kích cỡ áo",
"easy_to_hard": "Dễ đến khó",
"custom": "Tùy chỉnh"
},
"time": {
"label": "Thời gian",
"hours": "Giờ"
}
} }
}, },
"automations": { "automations": {

View file

@ -1740,12 +1740,15 @@
"title": "为我的项目启用估算", "title": "为我的项目启用估算",
"description": "它们有助于您传达团队的复杂性和工作量。", "description": "它们有助于您传达团队的复杂性和工作量。",
"no_estimate": "无估算", "no_estimate": "无估算",
"new": "新估算系统",
"create": { "create": {
"custom": "自定义", "custom": "自定义",
"start_from_scratch": "从头开始", "start_from_scratch": "从头开始",
"choose_template": "选择模板", "choose_template": "选择模板",
"choose_estimate_system": "选择估算系统", "choose_estimate_system": "选择估算系统",
"enter_estimate_point": "输入估算点数" "enter_estimate_point": "输入估算点数",
"step": "步骤 {step} 共 {total}",
"label": "创建估算"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1784,6 +1787,16 @@
"message": "无法禁用估算。请重试" "message": "无法禁用估算。请重试"
} }
} }
},
"validation": {
"min_length": "估算需要大于0。",
"unable_to_process": "我们无法处理您的请求,请重试。",
"numeric": "估算需要是数值。",
"character": "估算需要是字符值。",
"empty": "估算值不能为空。",
"already_exists": "估算值已存在。",
"unsaved_changes": "您有未保存的更改,请在点击完成前保存。",
"remove_empty": "估算不能为空。请在每个字段中输入值或删除没有值的字段。"
} }
}, },
"automations": { "automations": {

View file

@ -1742,12 +1742,15 @@
"title": "為我的專案啟用預估", "title": "為我的專案啟用預估",
"description": "幫助你傳達團隊的複雜性和工作負荷。", "description": "幫助你傳達團隊的複雜性和工作負荷。",
"no_estimate": "無預估", "no_estimate": "無預估",
"new": "新估算系統",
"create": { "create": {
"custom": "自訂", "custom": "自訂",
"start_from_scratch": "從頭開始", "start_from_scratch": "從頭開始",
"choose_template": "選擇範本", "choose_template": "選擇範本",
"choose_estimate_system": "選擇預估系統", "choose_estimate_system": "選擇預估系統",
"enter_estimate_point": "輸入預估" "enter_estimate_point": "輸入預估",
"step": "步驟 {step} 共 {total}",
"label": "建立預估"
}, },
"toasts": { "toasts": {
"created": { "created": {
@ -1796,6 +1799,25 @@
"already_exists": "預估值已存在。", "already_exists": "預估值已存在。",
"unsaved_changes": "你有未儲存的變更。請在點擊完成前儲存", "unsaved_changes": "你有未儲存的變更。請在點擊完成前儲存",
"remove_empty": "預估不能為空。在每個欄位中輸入值或移除沒有值的欄位。" "remove_empty": "預估不能為空。在每個欄位中輸入值或移除沒有值的欄位。"
},
"systems": {
"points": {
"label": "點數",
"fibonacci": "費波那契數列",
"linear": "線性",
"squares": "平方數",
"custom": "自訂"
},
"categories": {
"label": "類別",
"t_shirt_sizes": "T恤尺寸",
"easy_to_hard": "簡單到困難",
"custom": "自訂"
},
"time": {
"label": "時間",
"hours": "小時"
}
} }
}, },
"automations": { "automations": {

View file

@ -14,10 +14,7 @@ export interface IEstimatePoint {
updated_by: string | undefined; updated_by: string | undefined;
} }
export type TEstimateSystemKeys = export type TEstimateSystemKeys = EEstimateSystem.POINTS | EEstimateSystem.CATEGORIES | EEstimateSystem.TIME;
| EEstimateSystem.POINTS
| EEstimateSystem.CATEGORIES
| EEstimateSystem.TIME;
export interface IEstimate { export interface IEstimate {
id: string | undefined; id: string | undefined;
@ -55,12 +52,14 @@ export type TEstimatePointsObject = {
export type TTemplateValues = { export type TTemplateValues = {
title: string; title: string;
i18n_title: string;
values: TEstimatePointsObject[]; values: TEstimatePointsObject[];
hide?: boolean; hide?: boolean;
}; };
export type TEstimateSystem = { export type TEstimateSystem = {
name: string; name: string;
i18n_name: string;
templates: Record<string, TTemplateValues>; templates: Record<string, TTemplateValues>;
is_available: boolean; is_available: boolean;
is_ee: boolean; is_ee: boolean;
@ -82,6 +81,4 @@ export type TEstimateTypeErrorObject = {
message: string | undefined; message: string | undefined;
}; };
export type TEstimateTypeError = export type TEstimateTypeError = Record<number, TEstimateTypeErrorObject> | undefined;
| Record<number, TEstimateTypeErrorObject>
| undefined;

View file

@ -42,7 +42,7 @@ export const DropdownOptions: React.FC<IMultiSelectDropdownOptions | ISingleSele
isMobile={isMobile} isMobile={isMobile}
/> />
)} )}
<div className="mt-2 max-h-48 space-y-1 overflow-y-scroll"> <div className={cn("max-h-48 space-y-1 overflow-y-scroll", !disableSearch && "mt-2")}>
<> <>
{options ? ( {options ? (
options.length > 0 ? ( options.length > 0 ? (

View file

@ -23,9 +23,11 @@ export const estimateCount = {
export const ESTIMATE_SYSTEMS: TEstimateSystems = { export const ESTIMATE_SYSTEMS: TEstimateSystems = {
points: { points: {
name: "Points", name: "Points",
i18n_name: "project_settings.estimates.systems.points.label",
templates: { templates: {
fibonacci: { fibonacci: {
title: "Fibonacci", title: "Fibonacci",
i18n_title: "project_settings.estimates.systems.points.fibonacci",
values: [ values: [
{ id: undefined, key: 1, value: "1" }, { id: undefined, key: 1, value: "1" },
{ id: undefined, key: 2, value: "2" }, { id: undefined, key: 2, value: "2" },
@ -37,6 +39,7 @@ export const ESTIMATE_SYSTEMS: TEstimateSystems = {
}, },
linear: { linear: {
title: "Linear", title: "Linear",
i18n_title: "project_settings.estimates.systems.points.linear",
values: [ values: [
{ id: undefined, key: 1, value: "1" }, { id: undefined, key: 1, value: "1" },
{ id: undefined, key: 2, value: "2" }, { id: undefined, key: 2, value: "2" },
@ -48,6 +51,7 @@ export const ESTIMATE_SYSTEMS: TEstimateSystems = {
}, },
squares: { squares: {
title: "Squares", title: "Squares",
i18n_title: "project_settings.estimates.systems.points.squares",
values: [ values: [
{ id: undefined, key: 1, value: "1" }, { id: undefined, key: 1, value: "1" },
{ id: undefined, key: 2, value: "4" }, { id: undefined, key: 2, value: "4" },
@ -59,6 +63,7 @@ export const ESTIMATE_SYSTEMS: TEstimateSystems = {
}, },
custom: { custom: {
title: "Custom", title: "Custom",
i18n_title: "project_settings.estimates.systems.points.custom",
values: [ values: [
{ id: undefined, key: 1, value: "1" }, { id: undefined, key: 1, value: "1" },
{ id: undefined, key: 2, value: "2" }, { id: undefined, key: 2, value: "2" },
@ -71,9 +76,11 @@ export const ESTIMATE_SYSTEMS: TEstimateSystems = {
}, },
categories: { categories: {
name: "Categories", name: "Categories",
i18n_name: "project_settings.estimates.systems.categories.label",
templates: { templates: {
t_shirt_sizes: { t_shirt_sizes: {
title: "T-Shirt Sizes", title: "T-Shirt Sizes",
i18n_title: "project_settings.estimates.systems.categories.t_shirt_sizes",
values: [ values: [
{ id: undefined, key: 1, value: "XS" }, { id: undefined, key: 1, value: "XS" },
{ id: undefined, key: 2, value: "S" }, { id: undefined, key: 2, value: "S" },
@ -85,6 +92,7 @@ export const ESTIMATE_SYSTEMS: TEstimateSystems = {
}, },
easy_to_hard: { easy_to_hard: {
title: "Easy to hard", title: "Easy to hard",
i18n_title: "project_settings.estimates.systems.categories.easy_to_hard",
values: [ values: [
{ id: undefined, key: 1, value: "Easy" }, { id: undefined, key: 1, value: "Easy" },
{ id: undefined, key: 2, value: "Medium" }, { id: undefined, key: 2, value: "Medium" },
@ -94,6 +102,7 @@ export const ESTIMATE_SYSTEMS: TEstimateSystems = {
}, },
custom: { custom: {
title: "Custom", title: "Custom",
i18n_title: "project_settings.estimates.systems.categories.custom",
values: [ values: [
{ id: undefined, key: 1, value: "Easy" }, { id: undefined, key: 1, value: "Easy" },
{ id: undefined, key: 2, value: "Hard" }, { id: undefined, key: 2, value: "Hard" },
@ -106,9 +115,11 @@ export const ESTIMATE_SYSTEMS: TEstimateSystems = {
}, },
time: { time: {
name: "Time", name: "Time",
i18n_name: "project_settings.estimates.systems.time.label",
templates: { templates: {
hours: { hours: {
title: "Hours", title: "Hours",
i18n_title: "project_settings.estimates.systems.time.hours",
values: [ values: [
{ id: undefined, key: 1, value: "1" }, { id: undefined, key: 1, value: "1" },
{ id: undefined, key: 2, value: "2" }, { id: undefined, key: 2, value: "2" },

View file

@ -153,9 +153,14 @@ export const CreateEstimateModal: FC<TCreateEstimateModal> = observer((props) =>
<ChevronLeft className="w-4 h-4" /> <ChevronLeft className="w-4 h-4" />
</div> </div>
)} )}
<div className="text-xl font-medium text-custom-text-100">New estimate system</div> <div className="text-xl font-medium text-custom-text-100">{t("project_settings.estimates.new")}</div>
</div>
<div className="text-xs text-gray-400">
{t("project_settings.estimates.create.step", {
step: renderEstimateStepsCount,
total: 2,
})}
</div> </div>
<div className="text-xs text-gray-400">Step {renderEstimateStepsCount} of 2</div>
</div> </div>
{/* estimate steps */} {/* estimate steps */}
@ -191,11 +196,11 @@ export const CreateEstimateModal: FC<TCreateEstimateModal> = observer((props) =>
<div className="relative flex justify-end items-center gap-3 px-5 pt-5 border-t border-custom-border-200"> <div className="relative flex justify-end items-center gap-3 px-5 pt-5 border-t border-custom-border-200">
<Button variant="neutral-primary" size="sm" onClick={handleClose} disabled={buttonLoader}> <Button variant="neutral-primary" size="sm" onClick={handleClose} disabled={buttonLoader}>
Cancel {t("common.cancel")}
</Button> </Button>
{estimatePoints && ( {estimatePoints && (
<Button variant="primary" size="sm" onClick={handleCreateEstimate} disabled={buttonLoader}> <Button variant="primary" size="sm" onClick={handleCreateEstimate} disabled={buttonLoader}>
{buttonLoader ? `Creating` : `Create estimate`} {buttonLoader ? t("common.creating") : t("project_settings.estimates.create.label")}
</Button> </Button>
)} )}
</div> </div>

View file

@ -38,18 +38,18 @@ export const EstimateCreateStageOne: FC<TEstimateCreateStageOne> = (props) => {
return { return {
label: !ESTIMATE_SYSTEMS[currentSystem]?.is_available ? ( label: !ESTIMATE_SYSTEMS[currentSystem]?.is_available ? (
<div className="relative flex items-center gap-2 cursor-no-drop text-custom-text-300"> <div className="relative flex items-center gap-2 cursor-no-drop text-custom-text-300">
{ESTIMATE_SYSTEMS[currentSystem]?.name} {t(ESTIMATE_SYSTEMS[currentSystem]?.i18n_name)}
<Tooltip tooltipContent={t("common.coming_soon")}> <Tooltip tooltipContent={t("common.coming_soon")}>
<Info size={12} /> <Info size={12} />
</Tooltip> </Tooltip>
</div> </div>
) : !isEnabled ? ( ) : !isEnabled ? (
<div className="relative flex items-center gap-2 cursor-no-drop text-custom-text-300"> <div className="relative flex items-center gap-2 cursor-no-drop text-custom-text-300">
{ESTIMATE_SYSTEMS[currentSystem]?.name} {t(ESTIMATE_SYSTEMS[currentSystem]?.i18n_name)}
<UpgradeBadge /> <UpgradeBadge />
</div> </div>
) : ( ) : (
<div>{ESTIMATE_SYSTEMS[currentSystem]?.name}</div> <div>{t(ESTIMATE_SYSTEMS[currentSystem]?.i18n_name)}</div>
), ),
value: system, value: system,
disabled: !isEnabled, disabled: !isEnabled,

View file

@ -16,7 +16,7 @@ export const EstimateTextInput: FC<TEstimateTextInputProps> = (props) => {
value={value} value={value}
onChange={(e) => handleEstimateInputValue(e.target.value)} onChange={(e) => handleEstimateInputValue(e.target.value)}
className="border-none focus:ring-0 focus:border-0 focus:outline-none px-3 py-2 w-full bg-transparent text-sm" className="border-none focus:ring-0 focus:border-0 focus:outline-none px-3 py-2 w-full bg-transparent text-sm"
placeholder={t("project_settings.estimates.create.enter_estimate_input")} placeholder={t("project_settings.estimates.create.enter_estimate_point")}
autoFocus autoFocus
type="text" type="text"
/> />